在 DSH 智能體開發中,當會話處於 danger-full-access 模式時,模型常發送空的 justification 或重申當前模式。這會導致校驗報錯。該插件修復了 pwsh、bash、fs 和 dsh-sandbox 中相關的兩個 bug。
核心功能¶
該插件通過雙層防禦機制解決上述問題:
- Schema 描述更新:優化字段說明,減少模型發送空值或冗餘請求的傾向。
- 運行時規範化:在工具執行或策略解析入口添加邏輯,當請求的模式未嚴格寬於當前模式時,自動清理無效的升級參數。
插件會自動檢測並修改 DSH_HOME 和桌面安裝目錄,確保補丁生效。
安裝¶
使用官方命令安裝插件:
dsh plugin --profile web add dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix@latest
安裝後,插件會在首次加載時自動應用補丁。
卸載與恢復¶
若需卸載該插件,需先恢復原始文件,再移除插件:
Step 1:進入插件目錄並執行恢復腳本:
cd $env:DSH_HOME\profiles\web\node_modules\dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix
node scripts/patch.js restore
此命令會調用備份文件,將 dsh-sandbox、dsh-tool-pwsh、dsh-tool-bash 和 dsh-tool-fs 恢復至原始狀態。備份存儲在 $env:DSH_HOME\backups\dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix\,不受插件移除影響。
Step 2:移除插件:
dsh plugin --profile web remove dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix
適用場景與注意¶
- 適用場景:所有使用非默認模型,且會話可能進入
danger-full-access模式的場景。 - 注意事項:插件以當前 DSH 進程的權限運行,修改的是工具實現文件。安裝前建議檢查源碼與許可證(MIT)。
該插件兼容最新的 dsh-std 插件元協議,不會與其他插件產生衝突。