dsh-revdiff:DeepSeek Harness 交互式 diff 审查插件

前言

在 DeepSeek Harness(DSH)工作流里,开发者经常会先让当前 Agent 修改代码,再检查它改了什么,最后把审查意见交还给同一个 Agent 继续处理。dsh-revdiff 是为这个流程准备的原生交互式 diff 审查插件:它面向 Harness 内的 Git diff 审查场景,并把提交的批注作为当前 Agent 的后续 follow-up。

这是什么

dsh-revdiff 的 GitHub 仓库路径为 BrambleXu/dsh-revdiff,定位为 DeepSeek Harness 的原生交互式 diff 审查插件。

已核实的运行要求如下:

  • 许可证:MIT
  • Node.js:^22.19.0>=24.0.0
  • 唯一外部运行时要求:Git 与 Harness 位于同一执行世界

核心功能

dsh-revdiff 当前支持以下能力:

  • 审查跟踪的工作树、暂存、未暂存或基础版本变更,并支持可选路径过滤
  • 在交互式终端中在文件、hunk 和 diff 行之间导航
  • 添加、编辑或删除 issuesuggestionquestionpraise 批注
  • 通过 agent.followup() 向当前 Agent 提交结构化批注,并携带 dsh-revdiff 消息来源
  • 配置 Git 执行、diff 上下文、大小与时间限制、终端宽限期和注释长度

安装与启用

将本地 checkout 添加到 Harness profile:

dsh plugin --profile demo add ./dsh-revdiff

这里的 demo 对应示例中的 profile 名称。启用前仍建议先查看仓库源码和许可证。

典型用法

README 中给出的用法示例如下:

/revdiff
/revdiff --staged
/revdiff --unstaged
/revdiff main
/revdiff --base main -- src/index.ts README.md

先使用不带过滤条件的命令做整体审查,再用 --staged--unstaged 或基础版本限定审查范围。路径过滤放在 -- 后面,例如只看指定文件:

/revdiff --base main -- src/index.ts README.md

批注如何回到 Agent

在审查界面中,可以添加、编辑或删除与某一行相关的批注。批注类型包括:

  • issue
  • suggestion
  • question
  • praise

提交后,dsh-revdiff 会通过 agent.followup() 把结构化批注发给当前 Agent,并携带 dsh-revdiff 消息来源,使审查结果进入同一 Agent 的后续处理流程,而不是依赖外部侧信道。

适用场景与注意

这个插件适合需要在 Harness 内完成 diff 审查、并把批注直接交还给当前 Agent 的开发者。

需要注意版本边界:Version 0.1 只审查已由 git diff 表示的文本变更。以下内容尚未包含:

  • 未跟踪文件
  • 二进制补丁
  • 并排渲染
  • 鼠标输入
  • 浏览器托管审查界面

此外,插件会以当前 dsh 进程权限运行。安装前建议先检查源码、许可证和仓库历史,确认符合自己的使用环境。

链接

  • GitHub:https://github.com/BrambleXu/dsh-revdiff
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜