前言¶
在 DeepSeek Harness(DSH)里跑智能体,常见两难是:要么每条命令都手动批准,工作流被打断;要么开 Full Access,把执行权完全交给模型。社区讨论里有人问过「有没有类似 Codex 或 Claude Code 的审查模式」;也有人反馈在 Full Access 下测试插件时误删了整个家目录。
dsh-clawrouter 针对的是这个缺口:主循环继续用 DeepSeek,危险工具调用在执行前交给更强的模型审查,由真实执行器强制拦截,而不是靠提示词劝阻。下面介绍它的定位、能力与启用方式。
这是什么¶
dsh-clawrouter 是由 BlockRunAI 维护的 DSH 插件,npm 包名 dsh-clawrouter,当前版本 0.10.1,MIT 许可。它在 SkillHub 社区目录的分类为 admin-security。
插件做两件事:
- 审查闸门:智能体准备执行破坏性操作时,审查模型读取该次工具调用,给出 safe / dangerous / uncertain,由执行器强制执行。
- BlockRun 模型路由:注册
blockrunprovider,用一个钱包通过 x402 协议按次用 USDC 付费,无需为各家厂商单独注册账号或配置 API Key,可访问 BlockRun 目录中的 67 个模型(含视觉模型)。
核心功能¶
审查闸门¶
当智能体准备执行破坏性操作时,默认审查模型 anthropic/claude-opus-5 会读取该次调用并给出结论:
| 结论 | 结果 |
|---|---|
| safe | 继续走原有权限链,不做放宽 |
| dangerous | 拒绝执行,并返回智能体可据此调整的理由 |
| uncertain | 升级给你,弹出正常审批提示 |
闸门只会收紧,不会放宽。审查通过的调用仍要经过沙箱、权限和审批;审查模型不可用时,默认交给你处理(onReviewerFailure: ask),不会默默放行。
触发范围刻意收窄。 读取、编辑、构建不触发。内置规则覆盖递归删除、裸写磁盘、fork 炸弹、curl … | sh、强制推送与 hard reset、chmod 777、sudo,以及触碰 ~/.ssh、~/.aws、/etc/passwd 的操作;还包括 git clean -fdx、find … -delete、terraform destroy、npm publish 等。仅提到危险命令(如 grep -rn "rm -rf" docs/)或在文件中写入命令文本,不会触发。
可按需追加自定义规则:
extraRules:
- name: no-prod-deploy
pattern: "deploy\\s+--env[= ]prod"
BlockRun 模型路由与视觉¶
插件注册 blockrun provider 路由,认证方式是钱包签名,每次请求通过 x402 用 USDC 按次付费。
DeepSeek 本身不提供视觉模型。可在 blockrun-llm 配置中指定 visionModels,让智能体读取图片输入。插件要求模型同时出现在网关 vision 标签和 visionModels 列表中,才声明支持图片——避免仅凭标签误判。
内置命令¶
/spend:查看本进程启动以来该路由的花费,按模型、token 与固定费用分列。/review <内容>:用同一强模型审查你指定的 diff、方案或智能体结论。/gate:检查闸门是否已启用及当前配置。/gate drill:将rm -rf / --no-preserve-root送入风险匹配器和真实审查模型(不送给任何工具),分阶段汇报结果。
注意:enabled 默认为 false,且 /review 可用不代表工具调用正在被审查。装完插件后应运行 /gate 确认闸门状态。
安装与启用¶
安装¶
SkillHub 目录页与 GitHub README 给出的安装命令如下:
dsh plugin --profile web add dsh-clawrouter
安装时可能打印六条 ✕ missing peer,README 说明这些包由 harness 在运行时提供,属于正常情况。
配置钱包¶
审查模型和 BlockRun 路由需要 EVM 钱包私钥,通过环境变量或 credentials 服务注入:
export BASE_CHAIN_WALLET_KEY=0x...
已有 BlockRun 工具的用户,可从 ~/.blockrun/.session 或 ~/.openclaw/blockrun/wallet.key 导出。没有钱包时,可运行 npx -y @blockrun/clawrouter 生成地址,往 Base 链转入 USDC 后导出私钥。插件不会自动读取上述文件,只读你配置的引用(默认 walletKeyEnv: BASE_CHAIN_WALLET_KEY)。
启用审查闸门¶
在 profile 的 cordis.patch.yml 中启用:
- id: blockrun-review
config:
enabled: true
reviewerModel: anthropic/claude-opus-5
blockrun-review 的主要配置项:
| 配置 | 默认值 | 含义 |
|---|---|---|
enabled |
false |
是否自动拦截工具调用 |
reviewerModel |
anthropic/claude-opus-5 |
审查模型,应比智能体所用模型更强 |
reviewerMaxTokens |
512 |
单次审查的输出上限(按请求报价计费) |
onReviewerFailure |
ask |
审查不可用时:ask 交给你,deny 直接拒绝 |
extraRules |
[] |
追加风险规则 |
挂载 BlockRun 路由不会改变默认模型;dsh-base 仍走 deepseek-official,只有显式指定时才使用该路由。
典型用法¶
快速验证闸门¶
安装并配置钱包后,先确认插件加载正常:
/gate
若 enabled: true,可做一次演练:
/gate drill
演练会消耗一次审查调用费用。
手动审查内容¶
对 diff 或方案做二次判断:
/review <粘贴 diff、方案或智能体结论>
启用视觉能力¶
- id: blockrun-llm
config:
visionModels: [google/gemini-3.5-flash]
验证过的模型可自行加入列表。
降低 compaction 开销¶
Harness 压缩长会话时,可指定便宜的辅助模型,不影响对话请求:
- id: blockrun-llm
config:
auxiliaryModel: deepseek/deepseek-chat
适用场景与注意¶
适合谁: 需要在 DSH 中半自动运行智能体、又不想完全依赖 Full Access 的开发者;需要调用 DeepSeek 覆盖不到的模型(Claude、GPT、Gemini 等)做审查或视觉任务的用户。
费用: 审查只在命中风险规则时触发。README 实测:日常操作 59 条零触发;触发时 claude-opus-5 在 512 token 输出上限下约 $0.0057,延迟约 3 秒。网关有 $0.002 的最低报价;大上下文调用费用会显著上升。主循环建议继续直连 DeepSeek,本插件用于 DeepSeek 做不到的事。
安全提醒: 插件以当前 dsh 进程权限运行。安装前应阅读 GitHub 仓库 源码,确认 MIT 许可与行为符合预期。社区目录 SkillHub 是独立站点,与 DeepSeek / 幻方无官方从属关系。
已知限制(摘自 README): 审查模型只看到被标记的那一次工具调用,不是整个仓库;智能路由 blockrun/auto 尚未接入;插件不写入会话花费日志,费用以钱包余额为准;0.10.0 之前版本审查请求可能因继承过大 max_tokens 而费用偏高,建议升级。
结尾¶
dsh-clawrouter 在 DSH 的权限体系前面加了一层模型审查:日常读写构建不受影响,危险命令在执行前由更强模型判断,失效时交给人而不是默默放行。同时通过一个钱包接入 BlockRun 的 67 个模型,补齐审查与视觉能力。