前言¶
在 DSH 會話裏,智能體會持續編輯、寫入或刪除文件。對開發者來說,關鍵不只是“有沒有生成結果”,而是要看到這一輪到底改了哪些文件、行級差異是什麼,以及是否能快速撤銷或重新應用。
dsh-file-review-tab 解決的是這個環節:它把 left0ver/dsh-file-review 的改動審查能力接入 dsh-better-sidebar 側邊欄,同時保留對話尾部的審查行。
這是什麼¶
Lzh3070/dsh-file-review-tab 是一個 DSH web 插件,許可證爲 MIT。
它提供兩個入口:
- 對話尾部審查行:在回合結束後快速查看本輪文件改動。
dsh-better-sidebar側邊欄「文件審查」Tab:按輪次展開文件改動、行級 diff 和撤銷操作。
核心功能¶
對話尾部審查行¶
回合結束後,對話尾部會出現“已編輯 N 個文件 +M −K / 撤銷 / 審查”的審查行。
點擊「審查」或單個文件名,可以深鏈打開側邊欄「文件審查」Tab,並自動展開對應文件的 diff、定位到該輪分組頂部。
側邊欄「文件審查」Tab¶
側邊欄 Tab 按輪次分組列出本會話改動文件。
點擊條目後,可以展開行級紅綠 diff。插件支持:
- 撤銷本輪
- 單文件撤銷
- 重新應用
Tab 角標會即時顯示改動文件數。
刪除文件可見¶
插件會解析 rm、rmdir、unlink、Remove-Item、del、rd 等命令的字面路徑參數。
被刪除的文件會以「已刪除」標記顯示。這類文件沒有行級 diff,也不提供撤銷。
帶通配符或命令替換的刪除不會被識別。
自動歸檔¶
主列表只保留最近 5 輪。
更早的已完成輪次會沉入「已歸檔 N 輪」摺疊區。展開後每頁加載 10 輪。深鏈可以自動展開並定位到目標輪次。
PTC / Code Mode 支持¶
插件會捕獲 run_code 內部的 edit / write 子調用。
Host 端會保存 before/after 快照,瀏覽器端會重建帶行號的行級 hunks,用於該輪審查。標準模式行爲不變;對話尾部審查行仍只覆蓋標準模式輪次。
會話隔離與界面適配¶
每個會話只查看自己的改動。Tab 不可見時暫停狀態巡檢。
在工作臺分屏半寬或浮動窗口下,輪次頭部會自動換行,次要信息讓位,保留撤銷操作和文件名。
樣式使用 CSS Module 和宿主 --dsw-alias-* 主題令牌。
安裝與啓用¶
前置依賴:
- DeepSeek Harness web
≥ 0.1.0-rc.5,兼容0.1.2-alpha系列。 dsh-better-sidebar≥ 0.12.0。
執行安裝命令:
dsh plugin --profile web add dsh-file-review-tab
安裝後重啓 dsh web,然後在 dsh-better-sidebar 側邊欄的「+」菜單中打開「文件審查」。
典型用法¶
1、對話結束時,在尾部審查行點擊「審查」或某個文件名。側邊欄 Tab 打開後,會展開對應文件的 diff,並定位到該輪分組頂部。
2、在 Tab 中按輪次展開文件 diff,檢查改動。需要回退時,可以執行撤銷本輪、單文件撤銷或重新應用。
3、如果文件被刪除,條目會顯示「已刪除」標記。這裏只能確認哪些文件被刪除,不提供行級 diff 或撤銷。
4、長會話中,較早已完成的輪次會進入「已歸檔 N 輪」摺疊區。展開後每頁加載 10 輪,也可以通過深鏈自動打開並定位目標輪次。
適用場景與注意¶
適合在 DSH web 工作流中頻繁審查智能體文件改動的開發者,尤其是已經使用 dsh-better-sidebar 的項目。它把查看 diff、撤銷、定位輪次等操作集中到側邊欄,並與對話尾部入口配合使用。
使用前需要注意:
- 插件會以當前
dsh進程權限運行,安裝前應檢查源碼與許可證。 - 許可證爲 MIT。核心 diff 渲染器與撤銷服務移植自
left0ver/dsh-file-review(MIT License, © ZhangWenChao)。 - 側邊欄集成基於
dsh-better-sidebar開放的ctx.betterSidebar註冊 API。 - 帶通配符或命令替換的刪除不會被識別。
package.json的peerDependencies內容在資料中被截斷,無法完整確認;依賴解析以實際安裝環境爲準。
結尾¶
dsh-file-review-tab 的價值在於把文件改動審查從分散的對話反饋中收攏到一個可展開、可撤銷、可定位的側邊欄視圖中,同時保留對話尾部的快捷入口。
可在 DSH 插件目錄中查找 dsh-file-review-tab 頁面;GitHub 倉庫爲:
https://github.com/Lzh3070/dsh-file-review-tab