前言¶
DeepSeek Harness (DSH) 的核心是工作流编排,智能体在执行过程中会调用工具。如果缺乏干预,智能体可能执行破坏性操作或偏离用户意图。dsh-advisor 旨在解决这一问题,它引入了一个独立的审查模型,在智能体的每一步操作后进行审计,并在必要时注入指导信息,帮助智能体自我纠正。
插件简介¶
slhssb/dsh-advisor 是一个为 DeepSeek Harness 设计的独立模型咨询审查插件。
- 维护者:
slhssb - 定位:工作流插件
- 解决的问题:在智能体执行工具步骤后,通过独立的审查模型介入,检测破坏性操作、逻辑错误或偏离指令的情况,并将反馈注入到下一步的模型调用中。
核心功能¶
该插件提供以下核心能力:
- 独立模型审查:在每一步工具执行后,由一个独立的模型(Reviewer Model)审查最新的操作记录。
- 注入指导:当审查模型发现真实关切(如破坏性删除、逻辑错误)时,会生成
[advisor]指导消息,插入到下一次模型调用的消息流中。 - 零成本规则检查:通过
rules配置项,使用正则表达式进行确定性检查。这些规则不消耗 Token,且永远不会失败,适合用于拦截特定模式的命令。 - 标准注入通道:使用 DSH 的标准
agent/pre-step瀑布注入通道,与dsh-agent-instructions和dsh-compaction-basic使用相同的机制。
安装与启用¶
安装插件需要执行以下步骤:
1、安装插件
dsh plugin add @slhssb/dsh-advisor
2、依赖处理
安装完成后,进入你的 DSH Profile 目录(通常是项目根目录),执行包管理器安装依赖并重启 DSH:
npm install # 或 pnpm install
配置与典型用法¶
插件默认配置目标为 DeepSeek 官方 API,使用较便宜的 deepseek-v4-flash 模型。API 密钥由 deepseek-official 适配器处理,无需在此插件中配置。
若需自定义审查模型或提供者,可在 Profile 的 cordis.patch.yml 中覆盖配置(配置行以最后写入为准)。
基础配置示例¶
- id: advisor
config:
provider: deepseek-official
model: deepseek-v4-flash
maxTokens: 512
maxHistoryMessages: 40
interval: 1
timeoutMs: 30000
provider:审查模型的提供商路由,默认为deepseek-official。model:审查模型名称,默认为deepseek-v4-flash。interval:每隔 N 个包含工具结果的步骤执行一次审查,1表示每步都审查。timeoutMs:单次审查的超时时间。
禁用插件¶
若需完全禁用,可在配置行添加 disabled: true。
规则配置(确定性检查)¶
除了 LLM 审查,可以通过 rules 定义正则表达式规则。这些规则匹配工具名称和原始参数 JSON,不消耗 Token,也不会导致审查失败。
- id: advisor
config:
provider: deepseek-official
rules:
- id: no-recursive-delete
pattern: 'Remove-Item|rm\s+(-rf|-r\s*-f)|del\s+/[sq]'
message: '检测到破坏性删除命令,请确认目标路径与用户授权。'
action: warn # 或 block
tools: ['pwsh', 'bash'] # 可选:仅针对特定工具生效
enabled: true
action:设置为warn时,注入提示信息;设置为block时,拒绝该步骤执行(此时不进行 LLM 审查)。
注意事项¶
- 权限与安全性:插件以当前 DSH 进程的权限运行。安装前请务必检查源码与许可证(MIT)。
- API 密钥:此插件不处理 API 密钥,密钥由
deepseek-official适配器从环境变量或凭证存储中解析。 - 审查失败处理:审查过程如果发生错误(如超时、空输出),插件会记录警告但不会中断智能体的主流程,只会跳过该步骤的审查。
- 递归限制:注入的消息是普通的用户消息,不会触发
tool/result事件,因此不会导致审查流程递归执行。
结语¶
dsh-advisor 为 DeepSeek Harness 的工作流提供了低成本、高可配置的审计层。通过 LLM 审查与确定性规则相结合,可以在不改变智能体核心架构的前提下,显著提升操作的安全性。