dsh-plugin-file-attach:向 DSH 上下文添加本地文件

在 DeepSeek Harness Web 环境中,将本地文件内容注入模型上下文通常需要手动复制粘贴文本或通过脚本处理。本文介绍的插件提供了一种直接的 UI 入口,允许用户添加文件,文件内容会被注入到模型上下文中。

这是什么

TestTheBoy 开发的 DSH Web 插件,属于“记忆”类别。核心功能是 Add files to context。

安装与启用

执行以下命令即可完成一键安装:

dsh plugin --profile web add dsh-client-ui-file-attach

bundle 的 cordis.patch.yml 会自动注册 UI 行,无需手改任何配置文件。重启 dsh web 后刷新浏览器即可生效。

核心功能

UI 变化

插件在输入框底部工具条新增了「📎 添加文件」胶囊按钮,与「访问模式 / Plan / 模型」等控件位于同一行(conversation.input.left 座位)。

添加文件后,输入框上方会出现芯片条(conversation.input.dock 座位),内容居中并左对齐输入框。每个胶囊左侧有 ✕,点击即可删除。当文件累积超过输入框宽度时,会出现横向滚动条。

内容注入机制

文本/代码/Markdown/JSON/日志(UTF-8)添加后,内容由宿主端在 agent/pre-step 注入模型上下文。这意味着每次发送消息时,模型都能看到附加文件的内容,无需手动粘贴或额外调用 read 命令。

图片(PNG/JPG/WebP/GIF)走 DSH 内置图片附件管线,会以图片芯片栏和真实图片消息块的形式展示。

文件过滤

二进制/超大/不可读文件不会被添加,系统会通过 Toast 提示原因。

限制与注意事项

文件格式与大小

  • 文本文件需为 UTF-8。UTF-16 或含 NUL 字节的文件按二进制处理,不添加。
  • 单文件内容上限 256 KB,总上限 1 MiB,同时最多 10 个文件。

会话与历史

  • 附件列表为浏览器会话级(与未发送的草稿图片一致)。页面刷新或服务重启后需重新添加。
  • 文件内容只在每次发送时注入模型上下文,不会写入聊天历史,避免污染记录。

总结

该插件通过 UI 层的改动,解决了本地文件快速进入上下文的问题,适合需要在对话中频繁引用代码或文档片段的场景。

GitHub 仓库
社区目录

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

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

小夜