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 分支」。

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

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

小夜