每轮回复结束时用独立审查模型审核输出,判定不合格则引导 agent 修复,每轮最多追问 2 次;可注入 SOP 文件夹标准作为额外审核维度。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:CAI-MH/dsh-quality-review
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
English | 中文
DeepSeek Harness(DSH)的 AI 回复质量审查插件:每轮助手回复结束时,用独立的审查模型审核该回复,发现不合理输出时引导 agent 修复(最多 2 轮追问)。
工作原理
在 agent/turn-stopping 事件(一轮对话即将关闭的时刻),插件取出助手最新一条可见回复,交给审查模型审核;当判定为 fail 时,生成具体的修复请求并 steer agent,让这轮对话保持打开、由模型修订输出。每轮对话最多允许 maxRounds 次引导追问(默认 2),这是硬性防死循环保护。
审查维度(均可单独开关):
- 事实准确性 —— 检查明显事实错误与编造信息
- 回答完整性 —— 检查是否遗漏用户问题的任何部分
- 逻辑一致性 —— 检查推理矛盾与站不住脚的结论
- 指令遵循 —— 检查是否违反用户明确提出的格式、语言与约束要求
安装
dsh plugin --profile web add dsh-quality-review
或将它加入 profile 的 package.json dependencies,并列入 dsh.profile.bundles,然后重启 dsh web。
配置
所有字段都有安全默认值,bundle 行可以不带任何 config 直接插入。如需覆盖,在 profile 的 cordis.patch.yml 中配置:
- id: quality-review
config:
enabled: true # 总开关;关闭后插件保持加载但不做任何审核
reviewer:
provider: '' # 审查模型 provider id;留空复用 agent 自身 provider
model: '' # 审查模型 id;留空复用 agent 自身模型
maxRounds: 2 # 每个回答最多追问修改的轮数上限(防死循环,最大 5)
aspects:
factualAccuracy: true
completeness: true
logicalConsistency: true
instructionFollowing: true
minReplyChars: 200 # 低于该字符数的简短回复不审核
sop:
enabled: true # SOP 标准参照开关(默认开启)
dir: '' # SOP 文件夹路径;留空用默认目录 DSH_HOME/quality-review/sop
exemptPatterns: # 额外静态关键词:命中即跳过审核(可选)
- 代码 review
常见任务 SOP 标准参照(sop)
对固定 SOP 的例行任务,与其用笼统的通用维度审核,不如对照该任务自己的质量标准。插件会读取一个 SOP 文件夹,把里面每个文件名(去掉扩展名)当作相关任务的匹配关键词:当用户提问命中任一文件名(大小写不敏感、子串匹配)时,即判定为相关任务,并读取文件夹内全部标准文件的内容作为「该任务的质量标准」注入审核 prompt——因为 SOP 可能是多个文件共同构成一份标准。审核员据此新增一个「是否符合 SOP 规范」维度来核对回答是否合规;未命中的任务仍走通用四维度审核。
默认文件夹是 DSH_HOME/quality-review/sop(DSH_HOME 通常是 ~/Library/Application Support/dsh-desktop/harness)。你只需往里放好内容即可生效,无需改配置、无需重启:
quality-review/sop/
├── 周报.md # 命中 "帮我写周报" 等提问 → 用此文件内容作为周报质量标准
├── 会议纪要.md # 命中 "整理一下会议纪要" → 用此文件内容作为纪要质量标准
└── 日报.txt # 命中 "今天的日报" → 用此文件内容作为日报质量标准
- 文件名(去掉扩展名)即匹配关键词;支持的扩展名:
.md/.txt/.markdown。 - 文件内容才是质量标准:请把该任务「合格产出长什么样 / 必须包含哪些要点 / 不能犯哪些错」写进去;文件名只负责匹配任务。
- 命中即读全部:只要命中任意一个文件名,就会把文件夹里所有标准文件的内容一起注入审核(不是只读命中的那一个),方便你把一份 SOP 拆成多个文件(如格式、要点、禁忌各一份)。
- 支持子文件夹,会递归遍历整个目录树;可按类别建子目录归类,例如
工作/周报.md、生活/旅行计划.md。 - 新增/删除/重命名/修改文件后,下一轮对话立即生效(每轮重新扫描)。
- 想换个位置,把
sop.dir配成该目录绝对路径;想整体关闭,设sop.enabled: false。
静态关键词豁免(exemptPatterns)
除了 SOP 标准参照,也可以用 exemptPatterns 写死一小批关键词(数组,大小写不敏感、子串匹配),命中即跳过审核(这是「豁免」,与 SOP 的「参照标准」是两回事)。
开发
npm install
npm run build # tsc —— 将 src/ 编译到 lib/
发布的包携带编译后的 lib/ 产物;src/ 为 TypeScript 源码。
许可证
链接
同类插件
Clearailhc/clearai-dsh★ 664
以证据为准的研究用智能体预设:每一步只能靠系统核验过的观测推进,L3 以上的结论交给独立评估者,整场会话折成一份可重放的账本,并长成可浏览的领域本体。需要 DSH >=0.1.7-alpha.1。
FuRongJun-1999/dsh-memory★ 446
白箱AGI架构探索:元认知(自我认知循环)、持续学习(知识飞轮)、世界模型(条件空间+语义时空图)、自我改进(自举纪律)、零LLM白箱管线与可审计信任护栏。
pk14742952-AD/dsh-host-rsi★ 35
面向本地 Qwen3.8 27B/3.8 Flash 及线上 API 的反思进化插件:编码循环收敛器针对 Qwen3.8 27B/Flash 的重复验证大思考加速收敛、减少思考时间;五态交付护栏检测并纠正卡住/死循环;model-agnostic 宿主逻辑,线上 API 多数可通用;每次使用持续自进化,带反问式自检、批评升级、倒排索引记忆检索、编码循环收敛提示与五态交付护栏。
MichengAI/dsh-pua★ 32
提供 /pua,在 Agent 失败后促使其换方法,并在宣称完成前核验收据;含 15 种公司风格、角色模式、全局与会话设置,以及可选验收循环(直到验收命令通过、达到迭代上限或用户取消)。
kenz1117/dsh-engram★ 30
跨会话长期记忆插件,以「记忆宫殿」隐喻重构 agent 长期记忆:双层 SQLite 分库(用户级 + 按 git origin 隔离的项目级)、FTS5 + 本地向量 RRF 融合与新鲜度/命中排序 boost、从会话日志自动摄取(含末轮)、来源审计链、巩固蒸馏与衰减遗忘,以及设置页「记忆库」面板(走廊拓扑、导览管家、翻新清单)。
Kanadego/dsh-heartbeat★ 16
心跳循环:默认每 20 分钟自己醒一次——维护一份关于你兴趣与偏好的本地画像,按你设的兴趣范围上网搜新东西并存下来。攒到值得分享的内容,就向你绑定的会话送一份简短的素材包。能不能开口由代码里的规则决定(静默时段、忙时窗口、每日上限、冷却),说不说由那个会话里的 agent 自己判断。仅支持 Windows。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。