前言¶
在 DSH(DeepSeek Harness)裏做本地編碼輔助時,一個常見訴求是:改完代碼後,只希望 agent 清理剛改過的部分,而不是順手重寫無關文件。
dsh-simplify 就是圍繞這個場景做的插件。它先通過 git diff 定位最近改動的文件和行號範圍,再讓 agent 在這個範圍內就清晰度、一致性與可維護性提出改進。
DSH 的插件生態強調「一切皆插件」,社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。下面介紹 dsh-simplify 的定位、安裝和用法。
這是什麼¶
dsh-simplify 是一個 DeepSeek Harness 插件,由 GongYuanCaiJi 維護,許可證爲 MIT。
它移植自 pi-simplify。上游的提示詞與 git diff 解析邏輯逐字保留,只適配 DeepSeek Harness 的 API 差異。
它解決的核心問題是:改完代碼後,讓 agent 只審查最近改動的代碼,並在改動行範圍內做簡化或清理,不擴展到無關代碼。
核心功能¶
下面幾個能力決定了它的使用邊界。
1、只審查改動行。通過 git diff 定位改動的文件與行號範圍;agent 可以讀周圍代碼當背景,但編輯嚴格限制在改動行內。
2、支持四種範圍。未提交改動、已 staged、與任意 ref 比較、指定文件。
3、改後驗證。審查結束前會運行既有測試,確認沒有改壞。
4、遵循項目約定。自動遵循項目裏的 CLAUDE.md / AGENTS.md。
5、路徑參數安全。參數逐個 POSIX 單引號轉義,空白與引號文件名安全。
安裝與啓用¶
先確認你要安裝到的 DSH profile。安裝命令如下:
dsh plugin --profile <你的 profile> add github:GongYuanCaiJi/dsh-simplify
安裝時會通過 prepare 腳本自動構建 dist/。如果你的環境裏 pnpm 攔下構建步驟,需要在 profile 的 pnpm-workspace.yaml 裏把本包加進 allowBuilds。
運行環境要求:
engines要求node >=20peerDependencies要求@deepseek-ai/cordis ^4.0.1peerDependencies要求@deepseek-ai/dsh-llm ^0.1.0-rc.6
如果你從本地目錄安裝,需要先自行構建,再按 DSH 插件安裝流程添加該目錄。
典型用法¶
插件提供 /simplify 命令。下面按範圍說明:
/simplify # 審查所有未提交的改動
/simplify --staged # 只審查已 staged 的改動
/simplify --ref=<ref> # 與指定 ref 比較,例如 --ref=main、--ref=HEAD~3
/simplify <file...> # 只審查指定文件
例如,審查與 main 的差異時,可以使用:
/simplify --ref=main
適用場景與注意¶
它比較適合本地改完代碼後做一輪受限審查:只看本次改動、只改本次改動行、審查結束前運行既有測試。
注意以下限制:
- agent 收到的提示詞是英文的,這是上游原文,逐字保留未做翻譯。
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
- 審查結束前會運行既有測試,確認沒有改壞。
上游 pi-simplify 的版權爲 Copyright (c) 2026 Matt Devy,本移植的版權爲 Copyright (c) 2026 GongYuanCaiJi。
獲取鏈接¶
- GitHub:https://github.com/GongYuanCaiJi/dsh-simplify
- 社區目錄頁:https://www.skillhub.cn/plugins/GongYuanCaiJi/dsh-simplify
經過上面的安裝和配置,dsh-simplify 可以作爲一個局部、可驗證的改後審查入口,用在需要控制 agent 修改範圍的日常開發流程裏。