
swarm-forge
几个 AI 代理分工协作,复杂任务一次搞定
swarm-forge 是一个用 Clojure 编写的轻量级多智能体协作工具,目标是让开发者用简单的方式把多个 AI 代理组织起来,共同完成单个代理难以处理的复杂任务。它解决的核心问题是:当任务需要分工、并行探索或相互校验时,单独调用一个大模型往往不够可靠,而自己从零搭建调度、消息传递和结果汇总逻辑又很繁琐。swarm-forge 提供了一套简洁的协调原语,让代理之间可以互相通信、分配子任务并汇总产出,开发者只需关注每个代理的职责定义,而不必操心底层编排。它适合需要多角色协作、任务分解或投票式决策的 AI 工作流,语言选择 Clojure 也让它在函数式数据处理和并发协调上有天然优势。项目目前处于成长阶段,星标约 3800,说明社区对其简洁思路有认可,但生态和文档仍在完善中。
项目数据
使用教程
环境要求
- 具备 git 与 tmux 环境(SwarmForge 依赖 git worktree 与 tmux 会话隔离代理)
- 一个可写入的 PATH 目录(README 示例使用 ~/cmds)
- 至少安装一个受支持的后端:codex、grok、claude、copilot
- 准备一个已有的项目目录(固定 pack 会安装到当前项目中)
安装与启动步骤
-
1创建命令目录
在用户主目录下新建 ~/cmds,用于存放 get-swarm-forge 辅助脚本。
mkdir -p ~/cmds -
2下载辅助脚本
从 main 分支下载 get-swarm-forge 到 ~/cmds。该辅助脚本是官方支持的入口,会跨分支组合文件。
curl -L -o ~/cmds/get-swarm-forge https://raw.githubusercontent.com/unclebob/swarm-forge/main/get-swarm-forge -
3赋予执行权限
给下载下来的脚本加上可执行权限,否则无法直接调用。
chmod +x ~/cmds/get-swarm-forge -
4把目录加入 PATH
将 ~/cmds 加入 PATH 后,才能直接输入 get-swarm-forge 调用。建议写入 shell 配置文件。
export PATH="$HOME/cmds:$PATH" -
5安装产品包
进入你的项目目录后,用 get-swarm-forge 安装所选产品。可选 two-pack、four-pack、six-pack、project-manager。
cd /your/project get-swarm-forge two-pack -
6编写配置文件
编辑 swarmforge/swarmforge.conf,按窗口/角色/后端/工作树的结构逐行声明角色,文件顺序即默认流水线。
$EDITOR swarmforge/swarmforge.conf
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
swarmforge/swarmforge.conf | 是 | 每个运行中项目的配置文件,逐行定义窗口、角色、后端与工作树 | window coder claude master |
window / window-invisible | 是 | window 打开终端界面;window-invisible 只在 tmux 中运行,由 dashboard 按需打开 | window-invisible cleaner codex clean |
| 是 | 角色名;恰好一个角色必须使用 master 工作树作为哨兵 | coder |
| 是 | 代理后端,支持 codex、grok、claude、copilot,其余 token 透传给该后端 | claude |
| 是 | master 表示项目主检出当前分支,其他名字对应 .worktrees/ | master |
[task|batch] | 否 | 接收模式,默认 task;batch 允许角色一次接收一组兼容的排队交接 | batch |
如何确认成功
启动后应生成 .swarmforge/ 运行时状态与 .worktrees/ 角色检出目录,tmux 会话、本地 dashboard、交接守护进程均已创建。
常见问题
Q:这个仓库能直接跑起来吗?
A:不能。main 分支只是落地页、安装器源码、共享运行时和工程规范,本身不是可运行的 SwarmForge 产品,需要用 get-swarm-forge 安装具体 pack。
Q:提示找不到 get-swarm-forge 命令?
A:确认 ~/cmds 已加入 PATH 并已 chmod +x。注意 helper 变更后需要重新复制;辅助脚本会从多个分支组合文件,所以必须用它作为入口。
Q:配置里的 master 是指 git 分支 main 吗?
A:不是。master 是工作树哨兵,表示项目主检出所在的当前分支,并不是要求仓库存在名为 master 的 git 分支。
Q:支持哪些代理后端?
A:内置支持 codex、grok、claude、copilot 四种后端,行内剩余 token 会作为参数透传给对应后端。
Q:.swarmforge/ 目录可以手动修改吗?
A:不可以。它存放角色/会话映射、tmux socket、交接收件箱、看板与审批等运行时状态,不属于产品源码,代理不得直接编辑。
注意事项
- 官方明确提示:不要在任何 bankrbot SWARM 代币上花钱。
- get-swarm-forge 是唯一受支持的入口,因为它需要从多个分支组合文件。
- 选定分支的 README 及其解析器是扩展配置语法的权威依据。
- simple-windows 标签是 dashboard cockpit 之前的 main 历史快照,不属于任何 get-swarm-forge 产品。
核心亮点
- 用 Clojure 实现,代码简洁,协调逻辑清晰易读
- 提供代理间通信与任务分配原语,减少从零搭建编排的成本
- 轻量级设计,不绑定特定模型或框架,接入灵活
不足之处
- Clojure 生态相对小众,非函数式背景的开发者上手门槛较高
- 文档和示例可能不够丰富,社区规模仍在成长中
适用场景
- 多个代理分别调研不同方案后汇总成一份报告
- 让代理互相审查代码或文案,投票选出最佳版本
- 把大任务拆成子任务,由多个代理并行执行再合并结果
替代项目
AutoGen、CrewAI
项目介绍
上一篇:openhanako
下一篇:gaia
同类项目推荐
xinchao-dynamic-mind
开源
给 AI 装上疲惫和欲望,让交互更真实
独立、可自托管的 AI 动态心智状态引擎:驱动力、念头池、疲惫、睡眠与意图。
deepseek-harness
开源
把 AI 能力拆成乐高积木,拼出你的专属智能体。
DeepSeek Harness: Everything is a Plugin.
AutoGPT
开源
开箱即用的 AI 员工,交代任务就自己干完
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mis···
agent-manager
开源
一站式管理企业 AI 代理,部署治理全搞定
WSO2 AI Agent Manager is an open control plane designed for enterprises to deploy, m···