dsh-subagent-acp-ui:在 DSH 里用配置页接入多个 ACP 子智能体

前言

DeepSeek Harness(DSH)支持通过子智能体把任务委派给外部 Agent Client Protocol(ACP)客户端。官方提供 @deepseek-ai/dsh-subagent-acp 作为 provider,但多目标时往往要手改 YAML、核对各 CLI 的启动参数与模型传法,连通性也要自己试。

下面介绍社区插件 dsh-subagent-acp-ui(维护者 NewSpringWei,分类:工作流)。它在官方 provider 之上增加配置页、握手检测和路由 skill,不自行实现 ACP 客户端;每个目标仍挂载一个官方 provider 与一个官方 dsh-tool-subagent 实例,协议行为与官方一致。

这是什么

一句话:dsh-subagent-acp-ui 是 DSH 的 ACP 子智能体体验层——基于官方 @deepseek-ai/dsh-subagent-acp 接入多个 ACP agent,提供配置页、连通性检测和路由 skill。

DSH 生态主张「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

核心功能

配置与 UI

安装并重启实例后,在「插件 → ACP 子智能体」里添加目标。选择 README 中「已验证的 agent」时,插件会自动填好启动命令与模型传法;也可直接写 YAML 配置。

插件还提供入口放置卡片:左侧栏、设置导航、插件页等界面各有一个实时开关,可配置插件出现在哪些位置,无需额外保存按钮(见仓库英文 README)。

每个启用目标产生的产物

产物 名称
子代理 provider acp_<目标>
委派工具 subagent_acp_<目标>
精确命令 /acp-<目标> <任务>

对话内工具与 skill

  • acp_targets:在对话里增删改查目标;test 做免费握手,test mode="verify" 会消耗少量 token 做真实验证。
  • acp-subagent-routing skill:说明何时委派、如何拆分任务、失败时如何分析。

已验证的 agent

OpenCode、Qoder CLI、MiMo Code、CodeBuddy Code、Kimi Code、MiniMax Code。适配说明见仓库 adapters/README.md,预设数据在 adapters/agents.json。

适配清单在线更新

加或改 agent 不必等插件发版:

  1. 插件启动时从 adaptersUrl 拉取清单(默认 jsDelivr 镜像),按 id 合并到内置预设。
  2. 缓存:~/.dsh/subagent-acp-ui/adapters-cache.json,升级插件不会清除。
  3. 手动刷新:POST /acp-ui-refresh。
  4. 需要即时生效时,将 adaptersUrl 换成带 commit 的地址以绕过 jsDelivr 缓存。

只有源码改动才需要 bump 插件版本。

安装与启用

插件以当前 DSH 进程权限运行;安装前应自行查看仓库源码与 MIT 许可证,确认可接受后再加入 profile。

推荐锁定版本安装:

dsh plugin --profile <profile> add github:NewSpringWei/dsh-subagent-acp-ui#v0.1.0

或跟随 main 分支:

dsh plugin --profile <profile> add github:NewSpringWei/dsh-subagent-acp-ui

装好后重启实例,再到「插件 → ACP 子智能体」配置目标。

本地开发可将 file: 指向 checkout 下的 code 目录:

dsh plugin --profile <profile> add file:<path-to-plugin>/code

典型用法

在 UI 或 YAML 里添加目标

每个目标需要:可执行文件、ACP 启动参数,且对应 CLI 已完成登录。args / env 中可写 {model} 占位符,保存时用 model 字段展开;model 留空则省略该参数。

示例(来自 README):

- id: subagent-acp-ui
  name: dsh-subagent-acp-ui
  config:
    targets:
      - name: opencode
        command: opencode
        args: ['acp']
        model: opencode/glm-5.3-flash-free
        env:
          OPENCODE_CONFIG_CONTENT: '{"model":"{model}"}'

委派任务

对名为 opencode 的目标,可用精确命令:

/acp-opencode <任务描述>

或在主会话中通过工具 subagent_acp_opencode 委派。具体何时委派、如何切分任务,可参考插件注册的 acp-subagent-routing skill。

检测连通性

通过 acp_targets 的 test 做握手;需要确认端到端可用时使用 test mode="verify"(会花少量 token)。

适用场景与限制

适合谁: 已在 DSH 中使用官方 ACP subagent provider,希望同时挂多个 ACP CLI(如 OpenCode、Kimi Code 等),并希望通过页面管理目标、做握手/验证、减少手改 YAML 的开发者。

限制(官方 provider 既定行为,本插件不绕过):

  • 不能在单次调用时选模型:模型按目标全局固定。
  • 不能续跑:每次委派都是一次性运行。
  • 没有进程池:每次委派都要承担进程启动与握手成本。

结尾

dsh-subagent-acp-ui 把「多 ACP 目标 + 官方协议栈」落到可操作的配置页、检测工具和路由 skill 上;若你已在 DSH 里用子智能体委派,可先锁定 v0.1.0 安装,在「插件 → ACP 子智能体」里从已验证 agent 起步。

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

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

小夜