deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
独立的 DSH Web 插件:在 DSH 内置的“产物”文件行下面显示本轮生成/修改文件的绝对路径,并提供:
DSH 的远程 Web 界面会把本轮生成或修改的文件显示为可点击的文件项,但这些文件项本质上是由前端 JavaScript 处理的按钮,并不是带有 href 的普通链接。因此在远程访问时会遇到几个实际问题:
这个插件不试图把远程 Host 文件伪装成浏览器 URL,也不新增文件下载服务。它直接复用 DSH 已经识别出的本轮产物文件列表,在界面中显示对应的绝对路径,并提供复制按钮。这样既保留 DSH 原有的文件打开行为,也为远程 Web 场景补上“看得到、复制得到文件路径”的能力。
下面是插件在 DSH 远程 Web 界面中的实际效果:

dsh-sticky-notes。0.1.0-rc.6、0.1.0-rc.8、0.1.1-rc.2、0.1.2-alpha.2 及更高版本。dsh-client-runtime。conversation.chat.turnTail 注入,与内置产物行共存。直接通过 DSH 插件管理命令从 GitHub 安装:
dsh plugin --profile web add github:flyhigao/dsh-produced-file-paths
安装完成后重启 dsh web,然后硬刷新远程 Web 页面(Ctrl+Shift+R)。
如果要使用本地源码开发,可以改用本地目录安装:
dsh plugin --profile web add file:/path/to/dsh-produced-file-paths
修改客户端代码后刷新页面;修改服务端入口或插件组合后重启 dsh web。
插件复制的是 DSH 当前 Session 工作区下的绝对文件系统路径,不是浏览器 URL,也不是 file:// 链接。例如:
/home/gao/dsh/reports/summary.md
路径来自 DSH 的 produced-file 数据,并由当前 Session 的工作区目录解析相对路径。插件只读取和展示这些路径,不接受用户输入的路径,不扫描工作区,也不读取文件内容。
因此,复制路径本身不会增加新的文件访问权限;能否访问文件仍由 SSH、终端、编辑器或其他实际使用该路径的工具决定。
如果安装后没有看到复制入口,按下面顺序检查:
确认插件安装在 Web profile,而不是其他 profile:
dsh plugin --profile web add github:flyhigao/dsh-produced-file-paths
重启 dsh web,因为 cordis.patch.yml 和浏览器插件清单在启动时组合。
在浏览器执行硬刷新(Ctrl+Shift+R),清除旧的 client bundle 缓存。
先确认 DSH 内置的“产物”文件行正常出现。插件只显示 DSH 已识别的 produced-file;如果该行没有文件,插件也不会凭空猜测路径。
如果只修改了本地源码,删除 profile 中旧的插件副本后重新安装:
cd ~/.dsh/profiles/web
rm -rf node_modules/dsh-produced-file-paths
pnpm install
远程 Web 页面没有桌面文件打开器并不影响路径复制;该功能只依赖浏览器剪贴板和当前 Session 的路径数据。
这是一个手工维护的轻量插件,不需要额外构建工具。浏览器 bundle 位于 client/client.js,服务端入口位于 lib/index.js。
提交前可以执行:
node --check client/client.js
node --check lib/index.js
npm pack --dry-run
tar -tzf dsh-produced-file-paths-*.tgz
发布包必须包含 lib/、lib/types/、client/、assets/、cordis.patch.yml 和双语 README。插件的 dsh.bundle 声明与根目录的 cordis.patch.yml 是通过 DSH 插件管理命令安装和提交插件市场所必需的组合入口。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。