DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

lhh666-6 /

lhh666-6/dsh-paste-file

Verified

Paste/drop files into the DSH composer, save them under the current workspace, and insert relative paths.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@e351bd5e

dsh-paste-files

GitHub: https://github.com/lhh666-6/dsh-paste-file

npm: dsh-paste-files

把文件通过「粘贴 / 拖放 / 选择文件」保存到当前 DSH workspace,并在输入框中插入对应的 workspace 相对路径,方便模型用 DSH 自带的文件读取工具继续处理。

行为

  • 在 composer 左侧增加一个 粘贴文件 按钮,可以多选文件。

  • 在输入框内粘贴文件、或把文件拖进窗口时:

    • 如果只有图片,保留 DSH 原生图片附件行为,不拦截。
    • 只要包含非图片文件,就拦截该次粘贴/拖放,把所有文件上传并保存到当前会话 workspace。
  • 保存位置:<当前 workspace>/pasted-files/<时间戳>-<短随机>-<文件名>。

  • 保存完成后,把 workspace 相对路径以行内代码形式插入当前输入框草稿,例如:

    `pasted-files/1724320000000-report.pdf`
    

架构

  • Host 面:注册 /_dsh-paste-files/upload 路由,根据 sessionId 从 DSH SessionStore 读取当前会话 cwd,把上传的原始字节写入该 workspace。
  • Client 面:注册到 conversation.input.left slot,提供按钮、文件选择器,以及 document 级 capture 阶段 paste/drop 监听。

开发

npm install
npm run typecheck
npm run build

安装

# npm 安装(推荐,预构建)
dsh plugin --profile web add dsh-paste-files
dsh plugin --profile desktop add dsh-paste-files

# 或直接从 GitHub 安装
dsh plugin --profile web add github:lhh666-6/dsh-paste-file
dsh plugin --profile desktop add github:lhh666-6/dsh-paste-file

安装后重启 DSH(或切换一次 profile)生效。

限制

  • 浏览器无法从剪贴板拿到文件的绝对路径,因此插件采用「上传到 workspace 再插入相对路径」的方案。
  • 当前默认单文件上限 64 MiB。
  • 只是为了把文件变成模型可读的路径,不是向模型协议新增通用二进制附件。
—/ 5

No ratings yet

Verified DSH bundle

Commit e351bd5e86dd

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout