dsh-thincoder-suite:DeepSeek Harness 的四条自我纪律插件

前言

DeepSeek Harness (DSH) 的核心设计是“一切皆插件”。当你在 DSH 中开发智能体时,模型往往缺乏对代码质量和开发流程的主动约束。shenhuanageshei/dsh-thincoder-suite 是一个移植自开源项目 thincoder 的插件,它将“AI 写代码时的四条自我纪律”封装为四个独立工具。它不依赖 DSH 本体代码,直接在插件层实现功能。

这套机制通过强制输出可机械核对的痕迹(对账表、令牌、纪要),将原本依赖信任的流程转变为可审计的流程。

核心功能

插件提供四个核心工具,分别解决评审循环、代码方向、能力溢出和卡点问题。

  • advisor:解决评审无限循环问题。它会强制输出“逐条对账表”,并通过“引用验真”机制核对行号,确保评审有界且可追溯。
  • eng / eng_coder:解决代码方向错误问题。进入工程模式后,模型必须先拿到“设计评审通过令牌”才能执行写代码操作,否则会被拦截。
  • escalate:解决模型能力不足问题。当任务超出当前模型能力时,将写权限连同任务一起交给池中的更强模型,并返回术后报告供验收。
  • consult_start:解决卡点问题。支持多模型并行独立会诊,会诊结果落盘并通知,只有消化了旧会诊结果才能发起新会诊。

安装与启用

依赖要求

  • DSH (DeepSeek Harness): 版本需满足 >= 0.2.0-rc.1。
  • Jobs 插件: 想要支持超过 10 分钟的长任务,必须安装 dsh-jobs-local 和 dsh-tool-jobs 两个插件。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/shenhuanageshei/dsh-thincoder-suite.git
  1. 在你的 web profile 目录(通常为 ~/.dsh/profiles/web)执行:
    pnpm add link:<克隆路径>/dsh-thincoder-suite
  1. 编辑 profile 的 package.json,将包加入 bundles:
    {
      "dsh": {
        "profile": {
          "bundles": [
            "@dsh-external/dsh-thincoder-suite"
          ]
        }
      }
    }
  1. 重启 DSH。日志中出现 [thincoder-suite] active: advisor/eng/eng_coder ... 即表示安装成功。

使用说明

advisor:评审收敛与对账

advisor 将“无限找茬”的评审模式改为“有界对账”模式。它要求被评审方每轮必须输出 | # | Action | Detail | 格式的对账表,且 Action 只能是 Fixed / Dispatched / Not an issue / Deferred 四种之一。

  • 引用验真:评审报告中的每个 文件:行号 都会去磁盘验证,伪造引用会被标出。
  • 轮次控制:代码评审有 5 轮硬上限;设计评审豁免轮次上限,但若连续三次跑不出可用结论,将拒绝再发起(不可自解除)。

eng / eng_coder:工程模式与令牌机制

  • eng:开启工程模式,模型此时只能写文档(docs/** 和根级 .md),无法修改产品代码。设计评审必须由用户发起,模型不能自己审自己给自己发令牌。
  • eng_coder:负责实际的产品代码编写。它支持结构化阶段任务书(stages),每段有目标、可动文件和验收标准。
  • 令牌:设计评审通过后发放令牌。令牌默认 7 天有效,存放在 $DSH_HOME/.thincoder/design-tokens.json。设计文档未变时自动续期。

escalate:能力升级

当任务超出当前模型能力时,使用 escalate 工具。它将任务连同写权限一并移交给 consultModels 池中的更强模型。子代理内不再允许递归飞刀,且在工程模式下直接拒绝(只能走 eng_coder)。

consult_start:并行会诊

consult_start 发起多模型并行独立分析(只读)。会诊在后台运行,完成后通知用户。纪要默认先落盘到 docs/consult-minutes/,再发送通知。为了防止重复会诊,未消化的会诊会拦截新的发起。

长任务后台化

  • 默认后台:eng_coder 和 escalate 默认使用后台执行(批 21 起省略 background 即后台)。任务完成后会通知用户,报告全文首选读取落盘文件 $DSH_HOME/.thincoder/jobs/<jobId>.txt。
  • 前提条件:后台化依赖 dsh-jobs-local + dsh-tool-jobs。未安装这两个插件时,任务会告警并回落为同步执行(此时仍受平台 10 分钟墙钟限制)。

注意事项

  1. 版本兼容:本插件仅支持 DSH >= 0.2.0-rc.1。低版本 DSH 无法安装,平台会在安装期拦截。
  2. 本地开发:开发调试时请务必使用 link: 而非 file:。link: 会在 node_modules 建立源码目录链接,修改代码即刻生效;file: 仅仅是硬链接复制,修改源码不会反映到插件中。
  3. 安全模型:授权依赖记录全等匹配 + 设计文档集指纹 + 流程纪律(令牌格式为 uuid:过期时间)。
羽毛球分组比赛记分
小程序二维码

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

小夜