前言¶
DeepSeek Harness(DSH)的设计理念是「一切皆插件」。在开发智能体或进行自动化代码维护时,代码审查是一个高频且重要的环节。手动审查容易遗漏细节,而 dsh-review 插件通过标准化的命令工作流,将审查过程直接集成到对话流中,解决了智能体缺乏结构化审查能力的问题。
它是什么¶
dsh-review 是 DeepSeek Harness 的一个插件,由开发者 apcamargo 维护。它通过新增 /review 和 /end-review 两个命令,为智能体提供了完整的代码审查工作流。
核心功能¶
该插件主要提供以下能力:
- 多模式审查:支持审查未提交的变更、特定提交、GitHub Pull Request(需配合
gh工具)、指定文件夹快照。 - 自定义指令:支持通过
/review instructions存储全局或临时的审查指令。 - 分级反馈:支持将发现的问题按优先级
[P0]到[P3]排序,并附带置信度标签。 - 命令行增强:支持
--extra和--aggressive两个标志位,用于在审查时附加特定指令或开启激进审查模式。 - 状态查询:通过
/review status查看当前审查会话的状态和已存储的指令。
安装¶
安装该插件需要执行以下命令。插件会自动声明 dsh.bundle manifest,因此执行 dsh plugin add 后通常会自动启用。
dsh plugin --profile web add https://github.com/apcamargo/dsh-review.git
安装后需要重启 Harness 才能加载插件。
典型用法¶
插件提供了丰富的子命令和标志位,以下列出主要的操作方式。
基础审查¶
执行未提交的变更审查(默认行为):
/review
查看审查状态:
/review status
指定审查范围¶
- 基于分支:对比当前分支与指定基分支的差异:
/review branch [name]
默认为 main 或 master。
- 基于提交:审查指定 SHA 的提交:
/review commit abc123
- 基于 Pull Request:审查 GitHub PR(需要本地安装并登录
gh):
/review pr 123
/review pr https://github.com/owner/repo/pull/123
- 基于文件夹:将指定路径作为快照进行审查,不依赖 Git 仓库:
/review folder src docs
自定义审查重点¶
直接输入文本作为审查重点:
/review check the error handling
设置或清除自定义指令(指令会附加到该会话的后续所有审查中):
/review instructions "prefer fail-fast error handling"
/review instructions clear
使用标志位¶
- 附加指令:在任何模式下附加一条额外的指令:
/review --extra "check for SQL injection"
- 激进模式:开启激进审查,模型以怀疑态度寻找问题:
/review --aggressive
结束审查¶
使用 /end-review 结束当前审查会话,并选择输出模式:
- summarize(默认):生成结构化的审查报告,包含范围、结论、发现和修复队列。
- fix:生成并执行修复操作。
- done:仅清除会话状态,恢复普通编码工作。
/end-review
/end-review summarize
/end-review fix
/end-review done
适用场景与注意¶
该插件适合需要将代码审查逻辑嵌入智能体工作流的开发者。
在使用前,请确认以下环境要求:
1. Node.js 版本:需安装 Node.js >= 22。
2. Git 仓库:大部分命令(如 uncommitted, branch, commit, pr)依赖 Git 仓库。
3. GitHub CLI:使用 /review pr 时,必须安装 gh 并完成登录。
已知限制:
- 无模式强制:插件通过标志位管理审查状态,智能体本身不会读取该状态来限制其工具使用,这取决于提示词的设计。
- 会话隔离:状态存储在会话 ID 下,分叉或恢复会话时状态会重置。
- 会话清理:已删除会话的记录不会被自动清理。
结语¶
dsh-review 通过标准化的命令接口,让智能体能够独立完成从代码差异提取到分级反馈的全过程。对于使用 DeepSeek Harness 构建自动化代码审查流的项目,这是一个实用的工具。插件目录与源码详见下方链接。