前言¶
在 Windows 上使用 DeepSeek Harness(dsh)時,bash 工具可能出現啓動失敗,常見報錯包括:
PTY shell exited during startup
terminal inspection unsupported
工具不可用會影響任務執行,也可能讓思維鏈中出現較多 let me。Jyleaves/dsh-win-bash-fix 用於修復 Windows 上 dsh bash 工具的啓動問題,並附帶 minimal-win 與 anchored-win 兩套思維鏈預設。下面介紹它的定位、功能、安裝方式和注意事項。
這是什麼¶
- 插件名:
Jyleaves/dsh-win-bash-fix - 維護者:
Jyleaves - 許可證:
MIT - 定位:讓 dsh 在 Windows 上的 Git Bash 真正可用,並附帶兩套健康思維鏈預設(
minimal-win/anchored-win) - 平臺:僅 Windows(win32);Linux/macOS 上插件自動 no-op
- 驗證版本:DSH 版本在
0.1.0-rc.6(npm 最新)上開發並驗證(2026-08-15)
核心功能¶
修復 Windows 上 dsh bash 工具啓動失敗¶
插件處理以下問題:
- Windows 上 dsh bash 工具啓動失敗:
PTY shell exited during startup / terminal inspection unsupported - 在 win32 掛載 no-op 終端檢查器,繞過
createProcessInspector限制 - 注入 MSYS 環境變量以啓動 Git Bash
- 繞過 restricted-token 文件沙箱與 MSYS2 的衝突
涉及的環境變量如下:
MSYSTEM
CHERE_INVOKING
MSYS2_PATH_TYPE
PATH
純運行時補丁¶
插件以 cordis 插件方式工作:
- 不修改 dsh 安裝文件
- dsh 升級後自動重新生效
- 非 win32 平臺自動 no-op
- 支持通過
install.mjs選擇 profile/home 安裝
兩套思維鏈預設¶
插件附帶兩套預設:
minimal-winanchored-win
兩套預設都面向 we / let's 的集體思維風格。
anchored-win 有額外的首輪行爲:
- 首輪僅暴露
bash和edit兩個工具 - 首個工具調用後恢復全量 Standard 目錄
安裝與啓用¶
方式一:官方命令安裝¶
執行下面的命令:
dsh plugin --profile web add github:Jyleaves/dsh-win-bash-fix
這條命令將插件加入 web profile。
方式二:一鍵複製安裝¶
克隆倉庫後運行安裝腳本:
git clone https://github.com/Jyleaves/dsh-win-bash-fix.git
cd dsh-win-bash-fix
node install.mjs
install.mjs 支持選擇 profile/home 安裝。
方式三:手動安裝¶
1、複製 lib/index.js 與 preset-files/ 到:
~/.dsh/profiles/web/win-bash-fix/
2、在 cordis.patch.yml 追加 win-bash-fix 掛載塊。
啓用¶
安裝完成後:
1、重啓 dsh web
2、硬刷新瀏覽器
典型用法¶
經過上面的步驟後,可以按下面方式使用。
1、新建會話時選擇 minimal-win 或 anchored-win 預設。
2、發送一個可驗證 bash 工具的任務,例如:
先運行 pwd 和 ls 看看當前目錄內容
3、根據任務類型選擇 effort:
- 開放探索任務建議
effort=high - 具體任務可用
high或max
4、如果 Git 不是默認安裝路徑,在啓動 dsh 前設置 GIT_ROOT 環境變量。默認路徑爲:
C:/Program Files/Git
非默認安裝時,可以按實際路徑設置,例如:
GIT_ROOT=D:/Tools/Git
dsh web
適用場景與注意¶
適合在 Windows 上使用 dsh、需要 bash 工具可用、並希望思維鏈保持 we / let's 風格的場景。
使用前注意以下幾點:
- 插件僅適用於 Windows(win32);Linux/macOS 上自動 no-op
- 插件依賴 Git for Windows
- 插件在 dsh 運行時加載,會以 dsh 進程權限運行;安裝前應檢查源碼與許可證
- Windows 上 shell 工具(
bash/pwsh)不再走 restricted-token 文件沙箱 fs工具(如str_replace_editor)的沙箱獨立、不受影響- 運行不可信代碼時,請先卸載本插件
- 插件僅修改
process.env與~/.dsh/.agent-presets/ - 插件不讀取用戶數據、不發起網絡請求、不持有憑據
- 插件依賴 dsh 內部 API(prototype patch);若 dsh 重構相關服務內部形狀,插件可能靜默失效
persistent bash超時/PTY 偶發重置爲 win32 已知問題;超時是正常護欄- 併發 PTY 未做壓力測試
max+ 開放探索任務下,殘留let me爲行動句,約2/3全綠;high下100%全綠v4-flash思維鏈爲中文,無英文代詞,無let_me
卸載¶
如果通過官方命令方式安裝,可以執行:
dsh plugin --profile web remove @jyleaves/dsh-win-bash-fix
如果通過複製或手動方式安裝,需要:
1、刪除:
~/.dsh/profiles/web/win-bash-fix/
2、從 cordis.patch.yml 移除 win-bash-fix 掛載塊。
卸載後重啓 dsh。