dsh-qoder-cloud-agents:在 Qoder 雲端沙箱裏跑 DSH 會話與委派任務

前言

在 DeepSeek Harness(DSH)裏做代碼類任務,常見做法是本地開 shell、讀倉庫、改文件。任務一重或需要隔離環境時,本機資源、依賴和權限都會成爲瓶頸。把整段會話或單個子任務放到遠端沙箱執行,再在對話裏看實時進度、把改動推回 Git,是另一條路——前提是 Harness 側有穩定的掛載、分支策略和多輪追問能力。

下面介紹社區插件 dsh-qoder-cloud-agents(維護者 QoderAI,分類:工作流)。它把 DSH 接到 Qoder Cloud Agents,提供雲端模式、子代理委派和斜槓命令三種入口,並在工作區爲 git 倉庫時按 Qoder 控制台方式掛載 origin,要求雲端 Agent 把改動推到 qoder-cloud-agents/<隨機8位> 分支。

這是什麼

dsh-qoder-cloud-agents 是 DeepSeek Harness 插件,在 Qoder Cloud Agents 的沙箱裏運行會話或一次性委派任務。當前 package 版本爲 0.1.0,許可證 MIT,依賴 Qoder Cloud Agents TypeScript SDK。

DSH 生態強調「一切皆插件」;SkillHub 等目錄是社區站點,與 DeepSeek / 幻方無官方從屬關係。安裝前請自行查看源碼與許可證,插件以當前 dsh 宿主進程權限運行,只從可信來源安裝。

核心功能

插件提供三個入口,用途不同:

入口 用法 適合
雲端模式 新會話輸入框上方最右側的「雲端模式」開關 整段會話在雲端執行,回覆實時顯示,同一沙箱內可連續追問
子代理工具 subagent_qoder_cloud_agents 普通會話裏由 DeepSeek 調用 把某個子任務委派到雲端,完成後結果交回 DeepSeek
斜槓命令 /qoder-cloud-agents 在對話框輸入 查看和切換 Qoder 環境、Agent

工作區爲 git 倉庫時,插件會把 origin 掛載到雲端 /data/workspace/<倉庫名>。雲端只能使用已推送到遠端的提交;本地須配置好 origin,且相關改動已 push。私有倉庫或需要雲端 git push 時,除 Qoder PAT 外還要配置 Git 平臺令牌(見下文)。

前置條件

  1. Node.js 22+ 與 npm(構建安裝包時使用)。
  2. DeepSeek Harness 0.2.x(dsh --version),或內置 dsh 0.2.x 的 Mac / Windows 客戶端。
  3. Qoder 個人訪問令牌:登錄 qoder.com,在 Settings → Personal Access Tokens 創建,形如 pt-…,只顯示一次。
  4. 可選 QODER_GIT_TOKEN:私有倉庫或需要雲端推送時使用(GitHub fine-grained / classic repo,GitLab 需 read_repository 與 write_repository 等;非 GitHub 時在配置裏寫 gitUsername)。

安裝與配置

官方流程是先在本機構建 .tgz,再用絕對路徑裝進 profile。以下命令來自項目 README。

  1. 獲取源碼並打包(npm pack 會先執行構建):
git clone https://github.com/QoderAI/dsh-qoder-cloud-agents.git
cd dsh-qoder-cloud-agents
npm ci
npm pack

得到 dsh-qoder-cloud-agents-0.1.0.tgz,放到固定目錄(例如 ~/dsh-plugins/),profile 裏記錄的是該路徑。

  1. 安裝到 dsh 的 web profile(其他 profile 換成對應名字),路徑必須是絕對路徑:
dsh plugin --profile web add ~/dsh-plugins/dsh-qoder-cloud-agents-0.1.0.tgz

Mac / Windows 客戶端可在側邊欄「插件」→ 安裝插件,填寫 tgz 絕對路徑。安裝時 dsh 會用 pnpm 從 npm 源拉取插件運行時依賴,需能訪問 npm 或其鏡像。

  1. 令牌寫入 ~/.dsh/.env,不要寫進倉庫或 yml:
echo 'QODER_PAT=pt-<your-qoder-pat>' >> ~/.dsh/.env
echo 'QODER_GIT_TOKEN=<your-git-token>' >> ~/.dsh/.env   # 公開倉庫、只讀可不配
chmod 600 ~/.dsh/.env
  1. 非 GitHub 的通用 Git:編輯 ~/.dsh/profiles/web/cordis.patch.yml,在 id: qoder-cloud-agents 的 config 下補 gitUsername。若文件僅有一行 [],先刪掉再寫完整條目。

  2. 可選配置寫在同一段 config 下(patch 會整體替換 config,已有字段需一併保留),例如:

- id: qoder-cloud-agents
  name: dsh-qoder-cloud-agents
  config:
    baseURL: https://api.qoder.com/api/v1/cloud
    environmentId: env_xxx
    agentId: agent_xxx
    repository: auto
    branchPrefix: qoder-cloud-agents/
    archiveOnFinish: false
    timeoutMs: 7200000

字段含義與默認值以 src/index.ts 中 Config 爲準。

  1. 重啓 dsh:dsh web 終端 Ctrl+C 後再運行 dsh web;客戶端需完全退出後重開。dsh 僅在啓動時讀取插件與令牌。

典型用法

雲端模式

  1. 在 dsh web 左側工作區選擇本地 git 倉庫,點擊「新會話」。
  2. 打開輸入框上方最右側「雲端模式」開關,左側模式標籤變爲「雲端模式」。
  3. 發送任務,例如:「把 README 的問候語改成中英雙語,提交併推送到新分支」。首次使用會彈窗選擇 Qoder 環境(常選託管 cloud 環境),選擇會寫入 profile。
  4. 繼續輸入即爲追問,仍在同一雲端沙箱。
  5. 在本地拉取雲端推送的分支(分支名在回覆中給出):
git fetch origin && git checkout qoder-cloud-agents/xxxxxxxx

子代理工具

在普通會話中明確要求調用工具,例如:

用 subagent_qoder_cloud_agents 把這個任務交給雲端:給 src/utils/date.ts 補單元測試,跑通後推送到新分支。

工具調用會立即返回;雲端跑完後結果(含 session id、結果分支、交付文件等)回到對話。一次委派對應獨立雲端 session,不能在該委派內追問;需要多輪交流時用雲端模式。

斜槓命令

命令 作用
/qoder-cloud-agents 查看當前環境、Agent 和網關
/qoder-cloud-agents env 列出環境(* 爲當前)
/qoder-cloud-agents env <id或名稱> 切換環境並保存
/qoder-cloud-agents agent 列出 Agent
/qoder-cloud-agents agent <id或名稱或 new> 切換 Agent;new 使用插件管理的 Agent
/qoder-cloud-agents reset 清除已保存選擇,下次重新選擇

適用場景與注意

適合誰: 已在用 DSH 0.2.x、有 Qoder 賬號與 PAT,希望整會話在雲端跑通改碼與 git push,或偶爾把重活委派到沙箱而不佔本機資源的開發者。

成本: 每次雲端執行消耗 Qoder 額度;README 作者實測一個只讀小任務加一次追問約 5.8 credits,實際取決於任務與模型。

安全:

  • QODER_PAT 可代表你調用 Qoder Cloud Agents API;QODER_GIT_TOKEN 會隨 session 發到 Qoder Cloud 供推送。應使用最小權限、可吊銷的令牌,僅放在 ~/.dsh/.env(chmod 600)或環境變量。
  • 雲端 Agent 在新分支提交推送,不直接改你當前分支;合併前請像審查 PR 一樣看 diff。
  • 雲端模式只發送你輸入的文字(及首輪倉庫/分支說明),不發送 dsh 系統提示詞;本地附加的圖片和文件不會上傳。

卸載與清理: dsh plugin --profile web remove dsh-qoder-cloud-agents 後重啓 dsh;遠端結果分支不需要時用 git push origin --delete qoder-cloud-agents/xxxxxxxx;令牌從 .env 刪除並在平臺吊銷。

結尾

dsh-qoder-cloud-agents 把 DSH 的三種使用方式(整會話雲端、子代理委派、環境與 Agent 管理)對齊到 Qoder Cloud Agents 的沙箱與倉庫掛載約定,適合把工作流從「全在本機」擴展到「對話在 Harness、執行在雲端、改動回 Git 分支」。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜