,我把源码拉下来,从 Agent Loop、Cordis 运行层,一路拆到了插件系统,文中推荐了 dsh-TUI、dsh-web-ui、ModLens、ModSearch、Agent Teams、Automation 这几个插件
本文再推荐几个,其中一个是我做的,其实就是 Skills 的迁移,主要是演示:如何开发一个 DSH 插件
我把它们分成三层
第一层是输入和反馈:@文件、逐段批注、任务通知
第二层是执行和回退:自定义工具、按轮次恢复、操控真实 Chrome
第三层是输出和创作:交互式 UI、可编辑设计画布、王虹手写风格 PPT
这套组合装完,DeepSeek Harness 从「能跑 Agent」向「能按自己的工作流跑 Agent」更进一步
1、dsh-at-file:让 @文件 回到输入框
我最先建议装的,就是它
DeepSeek Harness 选了工作区以后,Agent 理论上能自己找文件,但大型项目里让它从根目录一路搜,既慢,又容易把无关内容卷进上下文
dsh-at-file 在输入框里补上了 @ 文件选择
你输入 @,搜索一个文件或目录,消息里只附相对路径,Agent 真要用时再读取
这个细节很符合我现在喜欢的上下文纪律
先告诉 Agent 去哪里找,读取多少由任务决定,别一上来把整份代码、整篇报告全部塞进提示词
安装:
dsh plugin --profile web add https://github·com/omdsh-dev/dsh-at-file/archive/refs/tags/v0.4.0.tar.gz
重启 dsh web 后,在输入框里敲 @ 即可
当前版本路径里不能带空格或第二个 @,PDF 能不能继续解析,也取决于会话里有没有对应读取工具
2、dsh-annotation:别再复制整段回答重写意见
模型写了 2000 字,第三段语气太硬,第五段事实要核对,第八段结论又太虚
以前需要复制三段文字,再分别写修改意见
dsh-annotation 把这件事做成了网页里的批注
选中模型回答里的文字,点一下批注,写下意见,还能跨多条消息继续收集,最后一次发送,Agent 会按 Annotation 1、2、3 逐条处理
它最适合三个场景
改长文章
审方案
看大段 Diff 或代码解释
安装:
dsh plugin --profile web add git+https://github·com/omdsh-dev/dsh-annotation.git
重启 Web,选中文字就能用
它只增强 Web 界面,模型能否严格逐条回复,还跟模型遵守编号的能力有关
不过用批注把「原文」和「反馈」绑在一起,沟通成本确实低很多
3、dsh-notification:任务跑完了,让电脑叫你
Agent 跑长任务最尴尬的状态,是你不知道它还要 20 秒,还是还要 20 分钟
盯着浪费时间,切走又容易忘
dsh-notification 做的事非常单纯:任务完成、报错、中止、阻塞、达到 Token 上限时,发一条桌面通知
它还能按会话标题、回复内容、工具名称设置包含或排除关键词
比如带「部署」的任务完成一定提醒,带「测试」的后台任务可以安静一点
安装:
dsh plugin --profile web add https://github·com/omdsh-dev/dsh-notification/archive/refs/heads/main.tar.gz
重启后进入「设置 → 通知」,先授权浏览器通知,再点一次测试
这个插件不会调用模型,也不会改会话日志,额外 Token 消耗为 0
缺点是网页标签页需要保持打开,断线时完成的任务也不会补发,适合把 DSH Web 当常驻工作台的人
4、dsh-custom-tool:在设置页里造自己的工具
这是最有 DeepSeek Harness 特色的插件
装好以后,设置页会多出一个类似 VS Code 的编辑器,你可以直接写 JavaScript 工具,保存后马上交给 Agent 使用
更狠一点,还能让模型自己创建、列出和删除工具
举几个真实一点的用法
把公司内部接口包成一个查询工具
固定清洗某类 CSV
批量改文件名
把常用数据源变成 Agent 可调用的函数
安装:
dsh plugin --profile web add https://github·com/omdsh-dev/dsh-custom-tool/archive/refs/heads/main.tar.gz
重启后去设置里的 Custom Tool 页面创建工具
这个插件自由度高,风险也更高
网络访问默认开启,文件隔离还要留意符号链接,内部接口密钥更别直接写进代码
我的建议是先拿无敏感数据的小工具练手,确认权限边界以后,再把它接进正式工作流
5、dsh-turn-rewind:按对话轮次把文件退回去
Agent 连改十几个文件,聊到第六轮时方向跑偏了
Git 能回退,但你还得自己找是哪一轮、改了哪些文件、有没有漏掉未提交内容
dsh-turn-rewind 给每条用户消息加了一颗回退按钮
点开以后,先预览受影响文件,再选择只恢复文件,或者恢复后从那一轮开一条新对话
它还会校验文件状态,恢复前留一个救援点,尽量避免一次回退又制造新的事故
目前作者给的安装方式偏开发者:
git clone https://github·com/Anionex/dsh-turn-rewind.git
cd dsh-turn-rewind
pnpm install --frozen-lockfile
pnpm run check
dsh plugin --profile web add "$PWD"
0.1 版只支持普通 Git 工作树,非 Git 目录、子模块、稀疏检出、ignored 文件和 worktree 都不在支持范围里
6、dsh-browser:直接操作你正在登录的 Chrome
浏览器自动化最麻烦的地方,通常都在登录态
重新登录、扫码、验证码、Cookie 隔离,一套流程走下来,人已经不想自动化了
dsh-browser 通过 Chrome 扩展,把你正在使用的真实浏览器连接给 DeepSeek Harness
Agent 可以读取当前标签页、点击、输入、按键、滚动和跳转,还能继续沿用已有 Cookie 和登录状态
这类插件适合后台录入、登录后的网页操作、资料整理和重复点击
作者提供了安装脚本:
curl -fsSL https://raw.githubusercontent.com/Lum1104/dsh-browser/refs/heads/main/scripts/install.sh | bash
cd ~/.dsh/dsh-browser && pnpm start
然后打开 chrome://extensions,开启开发者模式,加载:
~/.dsh/browser-extension
它需要 Chrome、Node.js 22.19 以上和 pnpm
Chrome 内置页面、Chrome Web Store、跨域 iframe 也无法操作,同时只保留一个扩展连接
这里再提醒一句,curl | bash 会直接执行网上的脚本,先打开脚本看一遍,最好固定提交版本,再运行
7、dsh-genui:让回答直接长出一个小应用
普通 Agent 回答你一张表、一段 Markdown、几行代码
dsh-genui 会把回答直接渲染成交互界面
统计卡、图表、表格、表单、测验、时间线、文件树、Mermaid,甚至 3D 场景,都能嵌在消息里
更有意思的是,你点击界面以后,操作还能继续反馈给模型,形成下一轮对话
这就适合做数据分析、教学小测、产品演示、交互报告
安装:
dsh plugin --profile web add git+https://github·com/omdsh-dev/dsh-genui.git
重启并硬刷新页面,新建会话后可以直接说:
用 dsh-ui 做一个项目进度看板,包含统计卡、风险表和可点击筛选
这个插件有前端依赖,安装和兼容性都会比纯工具插件复杂,目前也更适合愿意折腾的用户
但从 Agent 的输出形态看,它很有想象力
以后很多「做个网页给我看」的需求,可能连单独打开一个网页都省了
8、dsh-openpencil:让 Agent 直接改可编辑设计稿
生成一张 PNG 很容易,生成完还能继续编辑,难度就上去了
dsh-openpencil 把 OpenPencil 设计画布接进 DeepSeek Harness
Agent 可以新建设计、修改画布、调整元素,再把结果保存在可编辑的 .op 文件里
它适合海报、流程图、界面草图和需要继续手调的视觉稿
当前安装要求 DeepSeek Harness 0.1.0-rc.6,还要准备 OpenPencil 运行环境:
npx --yes -p @deepseek-ai/dsh@latest \
dsh plugin --profile web add @zseven-w/dsh-openpencil@latest
这是 9 个插件里环境要求最高的一个
如果你只想快速出图,先用普通图片工具更轻松
如果你在意设计稿能继续改、元素能继续移动,它值得单独折腾
9、王虹手写风格 PPT:这个是我开发的
前段时间我参考王虹 ICM 2026 报告的视觉语言,做了一套手写风格 PPT Skill
暖白纸张、深蓝手写字、蓝色推导线、玫红结论框、绿色成立条件,再用少量荧光黄压关键词
你给它一篇文章、讲稿或技术主题,它会拆成 12 到 24 页 16:9 HTML 幻灯片,支持翻页、全屏、演讲备注、逐页 PNG 和总览图
我原来把它做成了 Skill,这次按 DeepSeek Harness 的插件方式重新封装,已经公开到 GitHub
安装:
dsh plugin --profile web add github:tjxj/dsh-wanghong-handwritten-ppt
重启 dsh web,新建任务,输入 /wanghong-handwritten-ppt,或者直接说:
把这篇文章做成王虹手写风格 PPT,输出 16:9 HTML,并逐页导出 PNG
我用一个全新的 DSH 配置实际装了一遍,插件能被发现,Skill 能被搜索,网页服务也能正常启动
DeepSeek Harness 的插件比单独一份 SKILL.md 多了三层东西
第一层是插件声明
package.json 里的 dsh.bundle 告诉 Harness 从哪里启动,cordis.patch.yml 告诉它怎么挂进现有配置
第二层是运行入口
我写了一个很薄的注册层,启动时把王虹手写风格 Skill、模板、参考文件、字体和渲染脚本交给 ctx.skills
第三层是可分发和可验证
资源要随包一起带上,安装后能在全新配置里发现,示例要能跑,19 页输出要能完整渲染
我这次把仓库里的 19 页演示稿重新跑了一遍,Python 测试 5 项全过,Node 测试 2 项全过,19 张 PNG 都是 1920×1080,最后再用一个全新的 DSH Profile 从 GitHub 安装
你也想开发插件,最短路径是什么
如果你已经有一套 Skill、脚本或工具,最短路径可以压成 5 步
先定义插件解决的一个明确问题
加入 DSH 能识别的插件声明和 Cordis 配置
把工具、Skill 或界面注册到运行时
用全新的 Profile 安装,别只在开发目录里自测
把安装、使用、前提和限制写进 README
开发时还有一个非常实用的命令:
dsh --profile web --dump-config
它会把当前真正启动的插件树打印出来
插件明明装了,页面却没出现时,先看这一棵树,比对着界面猜快得多
怎么加入 dsh-plugin 聚合页
DeepSeek Harness 的「社区插件」入口,当前指向 GitHub 的 dsh-plugin Topic
它是社区发现页,仓库带上对应 Topic 后由 GitHub 自动聚合,不需要往 DeepSeek 主仓库交一份目录 PR
步骤也很短
把插件放进公开 GitHub 仓库
写清安装命令、使用方式、环境要求和风险
在仓库 About 区域加入
dsh-pluginTopic等 GitHub 完成索引,再去 Topic 页搜索仓库名
用 GitHub CLI 也可以:
gh repo edit 你的用户名/你的仓库 --add-topic dsh-plugin
我给自己的仓库加了 deepseek-harness、dsh-plugin、agent-skill、ppt 和 handwritten 这 5 个 Topic
如果你嫌 Topic 页面太乱找插件不方便,还可以装个 Nagi-ovo/dsh-find-plugins ,它会从带 dsh-plugin 标签的公开仓库里继续判断项目究竟是插件、Skill 还是旧格式,它本身是一份 Skill,拿来当搜索助手很合适
装社区插件前,再多看一眼
DeepSeek Harness 的插件可以接触文件、网络、浏览器、终端和会话
能力越深,权限也越深
我的习惯是先看 README,再看安装脚本和最近提交,优先固定 tag 或 commit,最后拿一个单独 Profile 试装
尤其是浏览器和自定义工具类插件,别直接拿主力工作区当试验场
社区插件现在更新很快,今天能用的安装方式,过几个版本也可能调整
总结
DeepSeek Harness 目前最有意思的地方,已经从一个干净的 Web 界面,转向它允许你替换和组合多少东西
插件生态还很早,甚至有点野
可也正因为早,现在进去做一个真正解决问题的小插件,很容易被人看见
如果你最近还挖到哪个好用的 DSH 插件,评论区告诉我,我继续做第三弹
制作不易,烦请一键三连,感谢支持!
热门跟贴