前言¶
DeepSeek 官方的 dsh-superagent 原型主要在 POSIX 環境下驗證:路徑校驗、sh -c 啓動 worker、tmux 等假設在 Windows 上並不成立。若你希望在 DeepSeek Harness Desktop(Electron 託管 profile)裏使用同一套 Superagent 能力,並可選接入 飛書 Source,通常需要 WSL 或自行打補丁。社區倉庫 deepsleepzzz0211/dsh-superagent-windows 在上游 v0.1.0、討論區 windows-compat 補丁 與本倉庫 worker TLS 修復之上,提供面向 Windows 10/11 x64 的適配發行版:安裝後無需 POSIX 環境(無 WSL/tmux 依賴)。下文介紹其定位、相對上游的改動、安裝與配置要點。
這是什麼¶
dsh-superagent-windows(包名 dsh-superagent,當前資料中版本 0.2.0)是 DeepSeek 官方 Superagent 原型的 Windows 適配發行版,由維護者 deepsleepzzz0211 發佈,在 SkillHub 分類爲 客戶端。與上游一致,這是 研究原型,非官方產品;完整免責聲明見倉庫內 docs/UPSTREAM-README.md。
定位可以概括爲:開箱支持 DSH Desktop 與飛書 Source,把 stateDir、worker 啓動、shell 工具掛載、prepare 命令以及 worker 內 git 的 TLS 行爲改到能在 win32 上穩定運行。
相對上游做了哪些 Windows 修復¶
資料中列出的主要修復如下(其中 1–4、6 來自社區 windows-compat;第 5 條爲本倉庫補充):
| # | 問題 | 修復 |
|---|---|---|
| 1 | stateDir 校驗只接受 / 開頭路徑 |
接受盤符/UNC 絕對路徑 |
| 2 | worker probe 以 env/sh 前綴 spawn |
win32 直接傳 argv |
| 3 | orchestrator preset 限制 shell 工具名,Windows 下靜默丟失掛載 | 按平臺/實際暴露取名 |
| 4 | prepare 命令寫死 sh -c |
win32 直接傳 argv |
| 5 | worker git 在 GIT_CONFIG_NOSYSTEM=1 下丟 http.sslBackend=schannel,TLS 報 CRYPT_E_NO_REVOCATION_CHECK |
worker-gitconfig 在 win32 追加 sslBackend = schannel 與 schannelCheckRevoke = false |
| 6 | 測試套件無 Windows 覆蓋 | Windows CI 維度 + 平臺分支斷言 |
上游 README 寫明:win32 上測試 1172 passed / 36 skipped。
核心能力(已覈實)¶
結合 README 與 package.json,可確認的能力包括:
- DSH Web 客戶端注入:通過
dsh.client配置注入 locale、settings、renderer、layout、sidebar、workspace 等 UI 模塊(platform: web)。 - Cordis 補丁包:隨插件提供
cordis.patch.yml,用於在 profile 中掛載dsh-superagent及可選的dsh-superagent-feishu。 - GitHub / 飛書觀察入口:
exports中包含./github-watch、./feishu-watch等子路徑(具體面板配置在啓動後按提示完成)。 - 飛書 Source(可選):Windows 上通過本倉庫
wrappers/lark-bot/提供可 spawn 的 exe wrapper(含預編譯 Release,無需 MinGW 即可使用預編譯件)。
依賴環境(資料原文):Node.js ^22.19.0 或 >=24.0.0,DSH ^0.2.1-alpha.2;安裝前置還要求 git 2.32+、GitHub CLI 2.48+、已安裝 DeepSeek Harness(Desktop 或 CLI)。
安裝與啓用¶
安裝分兩步。README 強調:必須先用 web 模板創建 profile;直接 dsh plugin add 會得到最小 profile(無 web 應用/webserver),Superagent 會一直等待服務不激活。
第 1 步:從 web 模板創建 profile
dsh superagent --from-default-profile web --dump-config > /dev/null
第 2 步:安裝插件(二選一)
dsh plugin --profile superagent add "github:https://github.com/deepsleepzzz0211/dsh-superagent-windows"
或從 Releases 下載 dsh-superagent-windows.tgz 後:
dsh plugin --profile superagent add <path-to>\dsh-superagent-windows.tgz
在 profile 的 cordis.patch.yml 中追加配置(stateDir 必須是盤符絕對路徑):
- id: dsh-superagent
config:
stateDir: C:/Users/<you>/.dsh/state/superagent
# 飛書 Source 可選:
- id: dsh-superagent-feishu
disabled: false
啓動 DSH 後,按面板提示完成 Source、Policy、Executor 配置。agent 專用 GitHub 賬號、GH_CONFIG_DIR 隔離、飛書應用創建與 lark-bot wrapper、排障速查等完整步驟見倉庫 docs/WINDOWS-SETUP.md。
飛書 Source 環境變量(可選)¶
在 dsh-superagent 進程啓動前設置(可寫入 profile 的 .env):
LARK_BOT_CLI=C:/path/to/lark-cli.exe # 必填
LARK_BOT_CONFIG_DIR=C:/Users/<you>/.lark-cli-dsh-superagent # 默認即此
LARK_MSYS_ROOT=D:/Git/ # 可選;DSH 經 Git Bash 啓動命令時必填
lark-bot wrapper 用於隔離 bot 身份、修 MSYS 路徑轉換、自持 stdin 管道與命令行引號;亦可從源碼 larkbot.c 用 gcc 一行編譯。
典型用法與實測參考¶
README 給出在 Windows 11 / DSH Desktop 0.2.2-rc.1 下的端到端結果(僅供參考,非保證):
| 通道 | 觸發 → 確認 | Ticket → 交付 |
|---|---|---|
| GitHub(issue 評論 @bot) | < 1 min | ~1 min |
| 飛書(羣內 @bot) | 首條輪詢即命中(~12 s) | ~3 min |
更詳細的踩坑與討論見 deepseek-harness #11769 與 #12524。
適用場景與注意¶
適合誰:在 Windows 10/11 x64 上使用 DSH Desktop 或 CLI,希望試用 Superagent 原型(GitHub issue 互動、可選飛書羣 @bot),且不願依賴 WSL/tmux 的開發者。
務必注意:
- 插件以 當前 dsh 進程權限 運行;安裝前應閱讀源碼與 MIT 許可證(與上游一致),並理解這是研究原型而非官方產品。
stateDir必須使用 Windows 盤符絕對路徑(如C:/Users/...),否則無法通過校驗。- 社區目錄 SkillHub 插件頁 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;插件信息以 GitHub README 與 Release 爲準。
結尾¶
經過上面的步驟,你可以在原生 Windows 環境中把 Superagent 掛進 DSH profile,並按需打開飛書 Source。進一步配置與排障請以倉庫文檔爲準。