前言¶
在 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 行之間導航
- 添加、編輯或刪除
issue、suggestion、question、praise批註 - 通過
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¶
在審查界面中,可以添加、編輯或刪除與某一行相關的批註。批註類型包括:
issuesuggestionquestionpraise
提交後,dsh-revdiff 會通過 agent.followup() 把結構化批註發給當前 Agent,並攜帶 dsh-revdiff 消息來源,使審查結果進入同一 Agent 的後續處理流程,而不是依賴外部側信道。
適用場景與注意¶
這個插件適合需要在 Harness 內完成 diff 審查、並把批註直接交還給當前 Agent 的開發者。
需要注意版本邊界:Version 0.1 只審查已由 git diff 表示的文本變更。以下內容尚未包含:
- 未跟蹤文件
- 二進制補丁
- 並排渲染
- 鼠標輸入
- 瀏覽器託管審查界面
此外,插件會以當前 dsh 進程權限運行。安裝前建議先檢查源碼、許可證和倉庫歷史,確認符合自己的使用環境。
鏈接¶
- GitHub:
https://github.com/BrambleXu/dsh-revdiff