前言¶
DeepSeek Harness (DSH) 在處理智能體任務時,需要用戶對特定操作進行審批。當前的審批卡片詳情區域僅支持顯示 command 類型的工具參數(如 bash、pwsh)。對於 write、edit 等使用 file_path 或 path 參數的工具,該區域始終爲空。這導致用戶在點擊“允許”或“拒絕”前,無法直觀瞭解具體操作的內容和潛在風險。
dsh-approval-explain 插件通過在審批卡片中增加“Explain”按鈕,利用一次 LLM 調用生成操作摘要(包含操作內容、涉及文件、安全性評估),解決詳情區域爲空的問題。
核心功能¶
- Explain 按鈕:在審批卡片詳情區域增加一個解釋按鈕,點擊後生成操作摘要。
- 全參數支持:支持
command、file_path、path三種參數形狀,不再侷限於特定工具。 - 視覺複用:複用原生按鈕樣式(輪廓、36px 膠囊形狀),並使用 DeepSeek 家族配色方案。
- 命令行支持:除按鈕外,也支持在編輯器中直接使用
/explain <content>命令。 - 無需構建授權:插件直接提交構建產物,無需觸發 pnpm 的構建提示。
- 非侵入式:作爲增量插件,不會禁用 DSH 的其他功能。
安裝與啓用¶
該插件需要 DSH 版本 0.1.5-rc.1 或更高版本,且僅支持 Web GUI。
- 確保已安裝 pnpm:
corepack enable pnpm
- 執行安裝命令:
dsh plugin --profile web add github:Martlet-Tech/dsh-approval-explain
- 安裝後需重啓 DSH 進程,配置文件纔會重新加載。
如果安裝後未生效,檢查 $DSH_HOME/profiles/web/package.json,確認 dsh.profile.bundles 中是否包含 dsh-approval-explain。
使用方式¶
安裝並重啓 DSH 後,在審批卡片中會出現“Explain”按鈕。點擊按鈕,系統會調用 LLM 分析當前待審批操作,並返回三行摘要:
* What: 操作的具體內容
* Touches: 涉及的文件路徑
* Safety: 安全性評估
也可以直接在消息編輯器中使用以下命令:
/explain <content>
注意事項¶
- Web GUI 限制:該插件目前僅支持 Web 界面。
- 日誌留痕:每次點擊解釋都會在會話日誌中留下
command/run和command/done的記錄,便於審計,但也意味着每次操作都有痕跡。 - Token 消耗:解釋功能會產生 LLM 調用,輸出長度被限制在約 700 個 token。
- 卡片覆蓋:該插件會接管整個審批卡片的顯示,而非僅增加一個按鈕。
- 底層耦合:插件內部邏輯依賴於 DSH 的
StreamChunk字段名(text-delta、block-end、finish),如果 DSH 更新這些字段,插件可能需要適配。 - 不影響結果:解釋功能僅提供參考,不會改變審批的實際結果,也不會緩存判斷。