关于 swarm
Swarm 是一项 Agent 技能,通过任务规划、并行执行、结果汇总和报告来协调多工作者任务。它规定了工作者选择、任务说明、结果验证及缺口处理方式。
主要功能
- 01定义群体任务的四个阶段
- 02依据设置选择工作者模型
- 03并行启动工作者
- 04验证结果并报告缺口
适用场景
- 01将任务拆分为独立部分
- 02让多个工作者竞速完成同一简报
- 03汇集并验证工作者结果
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ backnotprop/ pstack --skill swarm安装后在 Claude Code 中输入/swarm确认已加载。
详细介绍
Swarm
开始
启动任何操作之前,先创建一份待办清单,每个阶段对应一项。
- 界定
- 分派
- 汇总
- 报告
阶段 A:界定
- 说明完成条件,以及 Swarm 必须返回的产物或报告。
- 选择工作形态。可以将任务划分为多个切片,让 N 个工作者根据相同的任务说明展开竞速,或混合使用两种方式。对于竞速或混合形态,启动工作者之前先声明采用
first pass、rank all还是best-of。 - 从 pstack 设置文件的
swarm workers行选择工作者模型(Cursor 中为~/.cursor/rules/pstack-models.mdc,Claude Code 中为~/.claude/rules/pstack-models.md,其他运行环境中为~/.agents/pstack-models.md)。如果文件或该行不存在,则使用grok-4.7-xhigh-fast。如果设置为auto或inherit-parent,请省略model,让工作者使用父级模型。如果子 Agent 工具不接受某个模型标识符,则使用默认模型并说明这一点。如果它不接受默认模型,则根据错误信息或运行环境的模型列表,使用同一系列中最接近的有效标识符。对于模型竞速,应提前指定每个分支使用的模型。根据 poteto-mode 技能的 Subagents 部分,针对任务选择每个子 Agent 的推理级别,以及快速或标准速度。 - 工作者需要写入内容时,为每个工作者提供独立的可写输出位置。工作者验证或测量提交时,每份任务说明都必须列出确切的 SHA。测量任务说明还必须列明方法(样本数量、单个样本的定义、顺序)。工作者应在结果中记录这两项信息。
阶段 B:分派
在一条消息中启动全部 N 个工作者,并设置 subagent_type: generalPurpose、environment: "cloud"、run_in_background: true,以及第 3 步指定的模型;如果模型为 auto 或 inherit-parent,则留空。只有在工作者需要访问用户电脑上的内容时,才使用 environment: "local"。
工作者需要从非默认的已推送分支开始时,传入 cloud_base_branch。
其他运行环境。 这些参数属于 Cursor 的 Task 工具,且 environment: "cloud" 会启动 Cursor 云端 Agent。在其他运行环境中,使用其子 Agent 工具:Claude Code 中的 Agent(subagent_type: general-purpose)、OpenCode 中的 task(subagent_type: general)、Codex 中的 spawn_agent。这些环境中的工作者在本地运行,因此请为每个工作者提供独立的工作树或输出路径。保留任务说明和模型设置。省略工具不支持的参数。如果运行环境没有子 Agent 工具(例如未安装扩展的 Pi),则自行逐个运行工作者。
每份任务说明都必须完整独立。说明目标、范围、确切的切片或竞速分支、验证方式以及需要报告的内容。报告使用 PASS、ISSUES 或 BLOCKED,并附上证据。能够证明存在缺陷的工作者应报告 ISSUES,并列出它能证明的每个问题,而不只是第一个问题。
如果某个工作者退出,则继续使用 N-1 个工作者,并注明此情况。
阶段 C:汇总
阅读终端结果。若结果未记录任务说明中要求的 SHA 和方法,则丢弃该结果,并重新启动该工作者一次。第二次仍未达标,则记录为缺口。缺口不算通过。覆盖范围方面,每个必需的切片都必须有结果。竞速方面,按事先声明的选择规则处理。使用 first pass、rank all 或 best-of。不要粘贴工作者的原始输出。
阶段 D:报告
在聊天中返回一份汇总报告,其中包含结果表、问题简述、缺口或退出情况,以及使用竞速时所采用的规则。