dsh-paste-files:在 DSH Composer 中粘贴文件并插入相对路径

前言

在 DeepSeek Harness (DSH) 的开发流程中,将本地文件传递给模型通常需要手动复制文件路径。本插件解决了这一痛点,允许用户通过粘贴、拖放或选择的方式将文件保存到当前 workspace,并自动插入相对路径到输入框。

插件介绍

该插件由 lhh666-6 维护,是一个 MIT 许可的开源插件。它通过在 DSH 的 composer 界面增加交互入口,实现文件的上传与路径注入。

核心功能

插件在 Host 面和 Client 面各承担职责:

  • Client 面交互:注册到 conversation.input.left slot,在 composer 左侧增加“粘贴文件”按钮,支持多选文件。同时监听输入框的粘贴、拖放和选择文件事件。
  • Host 面处理:注册 /_dsh-paste-files/upload 路由。接收到上传请求后,根据 sessionId 从 SessionStore 读取当前会话的 cwd,将文件保存到当前 workspace 的 pasted-files 目录下。
  • 路径插入:文件保存成功后,将相对路径以行内代码形式插入到输入框草稿中。

安装与启用

使用 DSH 的 CLI 安装:

dsh plugin --profile web add dsh-paste-files
dsh plugin --profile desktop add dsh-paste-files

安装后重启 DSH 或切换一次 profile 即可生效。

典型用法

  • 点击 composer 左侧的“粘贴文件”按钮,选择或粘贴文件。
  • 在输入框内直接粘贴文件或拖入文件。
  • 插件会自动处理文件上传,并在输入框中插入类似 `pasted-files/1724320000000-report.pdf` 的路径代码。

注意事项

  • 浏览器限制:出于安全考虑,浏览器无法获取文件的绝对路径,因此插件采用“上传到 workspace 再插入相对路径”的方案。
  • 文件大小限制:当前默认单文件上限为 64 MiB。
  • 图片处理:若只包含图片,保留 DSH 原生行为;若包含非图片文件,则拦截并上传所有文件。
  • 协议限制:该插件仅用于生成模型可读的路径,不新增通用的二进制附件协议。

结尾

经过上面的步骤,插件即可生效。该插件通过简化的交互流程,将文件上传与路径注入自动化,适合需要频繁引用本地文件与 DSH 交互的开发场景。

插件目录
GitHub 仓库

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜