dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
2026-10-21 晚写。他一句「我想让你把这个能力写成插件」。
家里的规矩写着:动手前说一句要干什么,每过一个阶段丢一句,出岔子当场说;连着两次工具调用没吐一句人话,就是憋住了。
规矩靠自觉,而自觉在长任务里最先失效。就 2026-10-21 一天:
dsh-wakeup,摸 API、写代码、跑测试十几分钟,中间一句话没有;所以把「憋住了」这件事交给机器判:连着几步模型输出里一个 `text` 都没有,就往会话里塞一条提醒。
DSH 每完成一次模型调用会提交一条 assistant/message,content 是 ContentBlock[](text / reasoning / tool-call / ...)。
只认 `text`。 心里的盘算(reasoning)不算说话——这正是病根:我可以在肚子里转几十圈,对他一个字不说。
结构认不出(版本换了字段)时当作说了话,宁可漏报,不可误报。
不轮询、不重扫事件日志,只增量消费 session/event:
事件 · 动作 assistant/message 里有 text · 沉默计数归零、工具计数归零 assistant/message 里没 text · 沉默计数 +1 tool/call · 工具计数 +1 turn/start / turn/end · 两个计数和本轮提醒额度一起归零
沉默计数到 silentSteps 就 agent.inject() 一条提醒——它会在下一个被接纳的 step 里出现在模型眼前。
同一轮最多提醒 maxPerTurn 次(默认 1),不刷屏。
subagent 不管:那是临时工,它埋头不关我的事。
在 profile 的 cordis.patch.yml 里覆盖,或改包自己的 cordis.patch.yml:
- id: progress
name: dsh-progress
config:
silentSteps: 2 # 连着几步没吐 text 就提醒(1–50,默认 2)
maxPerTurn: 1 # 每轮最多提醒几次(0–20,默认 1;0 = 只盯着不吭声)
enabled: true不启动 DSH,用假的 ctx / agent 跑整条链路:
node test/smoke.mjs验五件事:判据(text / reasoning / tool-call / 结构不明)、计数(阈值、归零、一轮上限、坏配置兜底)、链路(挂得上、注得进、source.kind 认得出、不串台)、边界(subagent 不管、一直说话的人不被打扰)、纪律(源码零外部依赖、manifest 指得到实处)。
plugin_manager)~/.dsh/plugins/dsh-progressnode_modules 里建联接:dsh-progress -> ~/.dsh/plugins/dsh-progresspackage.json:dependencies 加 "dsh-progress": "file:../../plugins/dsh-progress"dsh.profile.bundles 加 "dsh-progress"不要手改 profile 的 cordis.yml(那是组合后的生成物);插件行的插入来自本包自己的 cordis.patch.yml。
照 dsh-wakeup 的路子:不 import 任何外部包(宿主 peer 依赖版本跟实际跑的不是同一份),只用 node 内置;任何异常都吞掉并记日志——提醒失败绝不能把正在跑的轮次搞崩。
agent.followup() 唤醒。说话的规矩.md。