DeepSeek Harness Hub
← 返回列表

ttxs66666/dsh-review-gate

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

把数学推导、科研代码与论文草稿交给独立审查子代理审查,并把结论回注给主模型。

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/11 · 已提供中文文档

DeepSeek Harness 的独立审查关卡:将已完成的推导和代码交给审查者子代理,并将其裁决反馈给主模型。

综合分
30.2
GitHub 分
30.2
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add ttxs66666/dsh-review-gate
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-llm@deepseek-ai/dsh-tools@deepseek-ai/schemastery
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-review-gate

把数学推导、科研代码与论文草稿交给独立审查子代理审查,并把结论回注给主模型。

触发权归模型自己:插件不做自动送审、不做关键词猜测,只注入两条可编辑提醒,外加一个显式工具。

- A —— 周期性提醒。 每 N 条真实用户消息注入一次(每个会话的第一条消息必注入;N=0 表示每条都注入),提醒模型把数学推导、科研代码、论文草稿交给子智能体独立审查,并按它的结论修正。
- B —— 科研纪律。 派发审查时追加到送审提示词里的文案:所有参数都必须有理由——不允许无理由地出现、取值或赋值,要能说清来源、量纲与取值范围。
- review_gate_check —— 模型(或人)显式请求一次审查。插件派一个子智能体,把结构化裁决(pass / needs_fixes / fail + 发现 + 修复要求)渲染回对话。

安装

dsh plugin --profile web add github:ttxs66666/dsh-review-gate

装完重启 dsh web。要求 DSH 在 @deepseek-ai/dsh-* 的 0.1.x 线上、不低于 0.1.5-rc.1
(^0.1.5-rc.1 || ^0.1.6-rc.1;带显式预发布分支是因为不带预发布标签的范围会静默排除所有预发布版本,详见 peerDependencies)。

你会得到什么

三个落点,读写同一个设置命名空间,改哪一处都即时生效、彼此同步:

| 位置 | slot | 内容 |
|---|---|---|
| 设置 → 审查门 | settings.section(id review-gate,order 60) | 完整页面:总开关、A/B 开关与文案、注入频率、审查者配置(provider / persona / 工具白名单 / 送审字符上限 / 日志开关 / 日志路径)、命令菜单开关显隐、本进程运行状态(5s 轮询) |
| 输入框 + 菜单 | conversation.input.left | A/B 快捷开关,由页面里的「+ 菜单开关」控制显隐 |
| 设置 → 插件 | settings.plugin.item(key review-gate) | 精简卡:状态 + 总开关 + 指向独立页 |

截图(可选,供插件市场展示):把 assets/screenshot-1.png 等放进仓库,并在 package.json 旁边放一个 screenshots.json——["assets/screenshot-1.png"],1~8 张,路径相对于该文件。

设置

命名空间 review-gate(applies: live,改完即时生效,无需重启)。

| 组 | 字段 |
|---|---|
| A/B | enabled injectA injectB promptA promptB promptAEvery showComposerToggles |
| 审查者 | provider reviewerPersona reviewerTools maxArtifactChars verboseLog logFile |

审查者组的解析顺序是 schema 默认值 → 插件 entry config(base 层)→ 用户层:
profile 里配的值依旧是有效默认,设置页里的改动覆盖它,清空字段则回落到那份 config。

host 路由:GET /review-gate/api/status(仅回环、无需鉴权)返回生效设置、可用 subagent provider、
B 的真实投递面、本进程统计。路由不通时页面显示「宿主未连接」;通了但缺新字段(host 半没重启)时
显示「宿主版本较旧」。

几个行为约定(都是踩过坑才写进去的)

- 工具白名单按发起审查的 agent 作用域判定。 Web 面的工具挂在 agent preset 的 standing scope 上,
全局层是空的——只查全局层会把 read/grep/glob/pwsh 这些明明看得见的工具全判成不存在。
看不见的名字会被跳过并记日志;但配置非空却一个都看不见时直接拒绝本次送审,
而不是静默退化成「不限制全部工具」。派发本身还带一层能力递减重试,
白名单最终没被运行时接受也不会让整次审查白跑。
- provider 能力先门控再发请求。 persona / toolFilter / outputSchema 只发给声明支持它们的
provider;不支持 persona 时角色说明改为随 prompt 下发,并在裁决里注明。
- B 的投递面如实回报,不靠假设。 0.1.5-rc.1 起内核移除了 subagents.registerContinuableSetup,
所以 B 目前只随审查子代理生效(状态 API 报 review-only);将来内核把该 API 加回来,
插件会自动回到 continuable+review。
- 统计只在进程内存里,重载插件即归零。

开发

npm install
npm run check      # typecheck + 构建 + 冒烟探针
npm run build      # host(tsc)→ lib/index.js,client(tsdown)→ lib/client.js
npm run probe      # 零依赖冒烟探针,跑的是编译后的产物

lib/ 是刻意提交进仓库的:DSH 从 git 安装插件时不会跑构建,产物必须在仓库里。
改完 src/ 要 npm run build 并把 lib/ 一起提交。

对着本地 checkout 开发时用 npm run build:sh(DSH_CHECKOUT= bash scripts/build.sh):
它先从已安装的 DSH 里 junction 出 peer 依赖,再编译两半。

test/ 下是两个普通 node 脚本:probe-review-gate.mjs 用假 ctx 驱动编译后的 host 半
(白名单收敛、配置错误分流、能力降级、畸形裁决、统计口径);probe-client.mjs 用迷你 React +
假 window/fetch 渲染编译后的 client 半(三个落点 + 宿主状态的两种路径)。
test/fixtures/quota-design.ts 不是插件的一部分——那是一份故意留下缺陷的推导,用来试审查门本身。

许可证

BSD-3-Clause。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群