前言¶
在 DeepSeek Harness(DSH)中,有些任务可以拆成多个互不依赖的子任务。如果逐条串行处理,批量派发和状态观察会比较不直观。
dsh-kimicode-swarm 针对这个场景,把 Kimi Code Swarm 模式移植到 DSH,提供 swarm_batch 工具、/swarm 命令和聊天内实时进度条。它由 hongyue0721 维护,许可证为 MIT。
下面介绍它的核心能力、安装方式、典型用法和已知限制。
这是什么¶
dsh-kimicode-swarm 是 DSH 插件,用于批量并行子 Agent 调度。
它的核心链路是:Agent 判断任务是否值得拆分,使用 swarm_batch 批量生成子任务,子 Agent 并行执行,聊天内展示运行状态。/swarm 命令则用于一次性进入 Swarm 模式,完成探索边界、拆解子任务、批量派发、汇总结果后自动退出。
核心能力¶
swarm_batch 工具¶
swarm_batch 使用 prompt_template + items 批量生成子任务,最多 128 项。
items 中的每一项可以带 model 或 type。如果之前已有任务启动过,可以使用 resume_agent_ids 做断点续做。
swarm_batch 参数包括:
descriptionsubagent_typemodelprompt_templateitemsresume_agent_ids
按任务指定模型时,可以给某一项写:
{
"item": "...",
"model": "deepseek-v4-pro"
}
也可以给整批传 model 字段。
模型分配顺序如下:
item级或整批显式model优先。- 其次按
type命中设置映射表。 - 最后继承调用者模型。
自适应调度¶
调度先以 5 个并发开始,每 700ms 爬坡 1 个。
遇到限流时执行指数退避,例如 3s、6s、12s。调度容量可以收缩,也可以恢复。
取消行为如下:
- 用户取消时保留已完成结果。
- 单个任务超时只失败该任务。
/swarm 命令¶
/swarm <任务> 是一次性 Swarm 模式,用于:
- 探索边界。
- 拆解子任务。
- 批量派发。
- 汇总结果。
- 自动退出模式。
示例:
/swarm 审查这三个模块的代码并给出修复建议
聊天内实时进度条¶
host 端通过 SSE /swarm-events 广播全量快照,浏览器端用 EventSource 订阅,并渲染运行中、排队、完成状态。
进度只用于展示,不写入会话日志。
安装与启用¶
先安装插件:
dsh plugin --profile web add dsh-kimicode-swarm
安装后重启 dsh web:
dsh web
新会话中可以看到 swarm_batch 工具和 /swarm 命令。
由于插件会接入当前 dsh 环境并注册工具与命令,安装前应检查源码与许可证。
典型用法¶
1、直接描述任务,让 Agent 自行判断是否值得批量并行;或明确要求「用 swarm 批量派发」。
2、使用快捷命令发起一次性 Swarm 模式:
/swarm 审查这三个模块的代码并给出修复建议
3、按任务指定模型:给 items 的某项写:
{
"item": "...",
"model": "deepseek-v4-pro"
}
也可以整批传 model 字段。
配置¶
配置可走 profile patch 的 entry config,或 ~/.dsh/settings.yaml 的 swarm: 段。
已给出的配置项包括:
enabledannounceToAgentmodelMappingEnabledmodelMapping
示例结构如下:
swarm:
enabled: true
announceToAgent: true
modelMappingEnabled: false
modelMapping:
- type: <type>
model: <model>
其中 modelMapping 用于按 type 命中映射表。未显式指定模型时,最后会继承调用者模型。
已知限制¶
- 设置页卡片受宿主白名单限制:
dsh-host-apiproxy的WEB_SETTINGS_NAMESPACES硬编码白名单会导致插件自注册设置命名空间返回settings-not-exposed;GUI 编辑待宿主放开后启用。 - 子 Agent 执行期间不回报中间 token,进度条只展示启动/完成状态,不是 token 级流式。
- 无文件锁:多子 Agent 写冲突靠任务拆分规避。
- 进度仅用于展示,不写入会话日志。
小结¶
dsh-kimicode-swarm 适合在 DSH 中处理可拆分、可并行、需要批量派发子 Agent 的任务。它提供 swarm_batch 批量工具、/swarm 一次性命令,以及聊天内进度展示,适合希望并行派发子 Agent 并观察状态的开发者。
相关链接:
- GitHub:https://github.com/hongyue0721/dsh-kimicode-swarm
- 目录页(来自插件线索,未独立核实):https://www.skillhub.cn/plugins/hongyue0721/dsh-kimicode-swarm