前言¶
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。
- 仓库:https://github.com/NewSpringWei/dsh-subagent-acp-ui
- 社区目录:https://www.skillhub.cn/plugins/NewSpringWei/dsh-subagent-acp-ui
- 当前 package 版本:
0.1.0(资料中的推荐安装 tag 为v0.1.0) - 许可证:MIT
- 运行环境:
engines.dsh为>=0.2.0-rc.2 <0.3.0
DSH 生态主张「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。
核心功能¶
配置与 UI¶
安装并重启实例后,在「插件 → ACP 子智能体」里添加目标。选择 README 中「已验证的 agent」时,插件会自动填好启动命令与模型传法;也可直接写 YAML 配置。
插件还提供入口放置卡片:左侧栏、设置导航、插件页等界面各有一个实时开关,可配置插件出现在哪些位置,无需额外保存按钮(见仓库英文 README)。
每个启用目标产生的产物¶
| 产物 | 名称 |
|---|---|
| 子代理 provider | acp_<目标> |
| 委派工具 | subagent_acp_<目标> |
| 精确命令 | /acp-<目标> <任务> |
对话内工具与 skill¶
acp_targets:在对话里增删改查目标;test做免费握手,test mode="verify"会消耗少量 token 做真实验证。acp-subagent-routingskill:说明何时委派、如何拆分任务、失败时如何分析。
已验证的 agent¶
OpenCode、Qoder CLI、MiMo Code、CodeBuddy Code、Kimi Code、MiniMax Code。适配说明见仓库 adapters/README.md,预设数据在 adapters/agents.json。
适配清单在线更新¶
加或改 agent 不必等插件发版:
- 插件启动时从
adaptersUrl拉取清单(默认 jsDelivr 镜像),按id合并到内置预设。 - 缓存:
~/.dsh/subagent-acp-ui/adapters-cache.json,升级插件不会清除。 - 手动刷新:
POST /acp-ui-refresh。 - 需要即时生效时,将
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 起步。