前言¶
在 Windows 上用 DeepSeek Harness 做智能體開發,常見做法是開兩個世界:DSH 跑在 Windows 側,工具鏈和項目代碼放在 WSL 裏。要讓 agent 真正在 Linux 環境裏執行命令、讀寫文件,以往往往需要在 WSL 內再裝一套 DSH,或者手動切換路徑與終端,步驟多、上下文也容易斷。
dsh-wsl-workspace 走另一條路:從 DSH Web 界面添加 WSL 工作區後,整段 agent 會話的 bash 與文件工具都落在所選 WSL 發行版內,路徑統一爲 Linux 形式,WSL 裏無需再安裝 DSH。下面介紹這個插件的定位、能力與用法。
這是什麼¶
dsh-wsl-workspace 是社區維護的 DSH 客戶端插件,維護者爲 6Mikao9,當前版本 0.3.1,採用 MIT 許可證。它在 SkillHub 社區目錄的分類爲「客戶端」,GitHub 倉庫約 35 stars。
一句話定位:在 DeepSeek Harness Web GUI 中「添加 WSL 工作區」,讓 agent 會話的 bash 命令與 read/write/edit 文件操作運行在本機 WSL 發行版裏,體驗接近 VS Code Remote-WSL,但 WSL 內不需要安裝任何 DSH 組件或工具鏈。
核心功能¶
從 GUI 添加 WSL 工作區¶
安裝並重啓 dsh web 後,側欄底部 Settings 旁會出現 W 按鈕。點擊後打開「添加 WSL 工作區」對話框:選擇發行版、瀏覽目錄樹或輸入 Linux 絕對路徑(如 /home/me/proj),可用「檢查」確認路徑存在,再點「創建並打開」啓動新會話。
整段會話運行在 WSL 內¶
新會話中:
- bash 工具在所選 WSL 發行版內執行命令,模型看到的路徑均爲 Linux 形式。
- 文件工具(
read/write/edit)讀寫 WSL 文件系統內的文件。 - 模式選擇器照常可用:標準、PTC、極簡、創造等模式會自動落到對應的 WSL 變體(選擇器條目爲中英雙語,如
WSL · Standard mode(標準模式))。
同時訪問 WSL 與 Windows¶
bash 在 WSL 發行版內執行;Windows 文件仍可通過 /mnt/<盤符> 訪問,例如 /mnt/c/Users/...。兩個系統的文件可以在同一會話裏按需切換。
可選 Linux 用戶名¶
對話框中的「用戶名」爲可選項:留空則以發行版默認用戶運行;填寫某個 Linux 用戶名則等價於 wsl.exe -u <用戶名>,僅影響 bash 的運行身份。每個工作區的用戶名保存在 <dshHome>/wsl-workspaces.json。
安裝與啓用¶
任選以下一種方式安裝,然後重啓 dsh web:
# 1) npm 包
dsh plugin --profile web add dsh-wsl-workspace
# 2) GitHub 倉庫(倉庫內已含預構建 lib/,無需本地構建)
dsh plugin --profile web add https://github.com/6Mikao9/dsh-wsl-workspace
# 3) 本地目錄(開發/自用)
dsh plugin --profile web add D:\path\to\dsh-wsl-workspace
重啓後,側欄底部 Settings 旁應出現 W 按鈕。
典型用法¶
經過上面的安裝步驟,按以下流程添加並打開一個 WSL 工作區:
- 點擊側欄底部的 W 按鈕,打開「添加 WSL 工作區」對話框。
- 從下拉框選擇 WSL 發行版(如 Ubuntu)。
- 瀏覽目錄樹,或直接輸入 Linux 絕對路徑,例如
/home/me/proj;點「檢查」確認路徑存在。 - (可選)填寫 Linux 用戶名;留空則使用發行版默認用戶。
- 點「創建並打開」,新會話即在 WSL 內啓動。
會話啓動後,可以讓 agent 在 WSL 路徑下執行常規開發操作,例如查看項目結構、運行構建命令、編輯源碼文件。需要訪問 Windows 側文件時,使用 /mnt/c/... 形式的路徑即可。
行爲與權限說明¶
安裝前建議瞭解 bash 與文件工具的兩套執行路徑,避免對權限邊界產生誤解。
bash 工具
- 以配置的用戶名在 WSL 發行版內運行(留空時通常爲
root),可對發行版內任意路徑讀寫。 - Windows ACL 沙箱無法包裹
wsl.exe(子進程運行在 Linux 內核側),WSL 自身即隔離邊界,DSH 文件策略不作用於 bash。
文件工具(read/write/edit)
- 經 Windows 側的 WSL 9P 共享訪問,受 DSH 文件策略約束。
workspace-write策略下:讀可到任意位置,寫僅限會話工作區;改爲danger-full-access後工作區外也可寫入。- 用戶名設置不影響文件工具。
其他
- 發行版尚未啓動時,
wsl.exe向 stderr 打印的 localhost 端口轉發提示(可能顯示爲亂碼)可忽略,不影響使用。
適用場景與注意¶
適合誰
- 在 Windows 上用 DSH 開發,但項目代碼、構建工具、運行時環境都在 WSL 裏的開發者。
- 希望 agent 直接在 Linux 路徑下工作,又不想在 WSL 內重複安裝 DSH 的用戶。
- 需要在同一會話裏同時操作 WSL 項目目錄和 Windows 側文件的場景。
安裝前注意
- 插件以當前
dsh進程的權限運行,安裝前應閱讀 GitHub 倉庫 源碼與 MIT 許可證(含 NOTICE 中的出處說明)。 - 需要已安裝並配置好 WSL,且目標發行版可正常通過
wsl.exe啓動。 - 本插件面向 DSH Web 客戶端(
--profile web),安裝後需重啓dsh web才能生效。
SkillHub 是 DSH 社區插件目錄,與 DeepSeek / 幻方無官方從屬關係;插件均遵循 DSH「一切皆插件」的生態理念,由社區獨立維護。