Dynamic Agent Teams Extension for Antfarm
基于 antfarm 的动态团队协作扩展。
bees/
├── antfarm/ # Antfarm upstream (git submodule)
│ └── ... (antfarm 原始代码)
│
├── extensions/ # 我们的扩展
│ ├── dynamic-teams/ # 动态团队 API
│ │ ├── src/
│ │ │ ├── team.ts # team create/dissolve
│ │ │ ├── mailbox.ts # 直接通信
│ │ │ └── api.ts # CLI 命令扩展
│ │ └── package.json
│ │
│ └── teammate-poller/ # Teammate 轮询技能
│ ├── src/
│ └── package.json
│
├── workflows/ # 示例 workflows
│ └── dynamic-team.yml # 动态团队 workflow 示例
│
└── docs/ # 文档
├── EXTENSIONS.md # 扩展说明
└── API.md # API 文档
antfarm 方式(预定义):
# workflow.yml(安装时固定)
id: feature-dev
agents:
- id: planner
- id: developer我们的扩展(运行时动态):
// 运行时创建团队(无需预定义 YAML)
import { createTeam } from '@bees/dynamic-teams'
const team = await createTeam({
teamId: 'review-pr-142',
members: [
{ agentId: 'researcher', role: 'researcher_bot' },
{ agentId: 'reviewer', role: 'reviewer_bot' }
]
})antfarm 方式(单向传递):
planner → developer → tester → reviewer
我们的扩展(直接通信):
// Teammate 可以直接通信(不经过 workflow steps)
import { sendDirectMessage } from '@bees/dynamic-teams'
await sendDirectMessage({
teamId: 'review-pr-142',
from: 'researcher',
to: 'reviewer',
body: 'Found bug at line 45'
})antfarm 方式(预定义 steps):
steps:
- id: plan
agent: planner
- id: implement
agent: developer我们的扩展(运行时创建):
// 运行时动态添加任务
import { addTask } from '@bees/dynamic-teams'
await addTask({
teamId: 'review-pr-142',
task: 'Review authentication module',
owner: 'reviewer'
})- antfarm: 提供基础设施(SQLite, CLI, Agent provisioning)
- bees/extensions: 提供动态扩展(团队 API, Mailbox, Poller)
- ✅ 完全兼容 antfarm workflows
- ✅ 可以同时使用预定义 workflow 和动态团队
- ✅ 复用 antfarm 的 dashboard 和监控
- 短期:在 bees repo 中开发和验证
- 中期:与 antfarm 作者讨论合并可能性
- 长期:贡献回 antfarm upstream
# Clone bees repo
git clone https://github.com/zer4tul/bees.git
cd bees
# 初始化 antfarm submodule
git submodule init
git submodule update
# 安装依赖
cd extensions/dynamic-teams
npm install
npm run build# 创建动态团队
antfarm team create --id review-team \
--members researcher,reviewer,builder
# 派发任务
antfarm task add --team review-team \
--task "Review PR #142" \
--assign reviewer
# 查看团队状态
antfarm team status review-team
# 直接消息
antfarm dm --team review-team \
--from researcher \
--to reviewer \
"Found bug at line 45"
# 解散团队
antfarm team dissolve review-teamimport { createTeam, addTask, sendDirectMessage } from '@bees/dynamic-teams'
// 1. 创建团队
const team = await createTeam({
teamId: 'ad-hoc-review',
members: [
{ agentId: 'researcher', role: 'researcher_bot' },
{ agentId: 'reviewer', role: 'reviewer_bot' }
]
})
// 2. 派发任务
await addTask({
teamId: 'ad-hoc-review',
task: 'Review PR #142',
owner: 'reviewer'
})
// 3. 监控进度
const status = await getTeamStatus('ad-hoc-review')
// 4. 解散团队
await dissolveTeam('ad-hoc-review')- Team API (create, dissolve, status)
- Mailbox system (JSONL)
- Task management (SQLite)
- Teammate poller skill
- 扩展 antfarm CLI 命令
-
antfarm team create/dissolve/status -
antfarm task add/list/update -
antfarm dm
- 显示动态团队
- 实时 mailbox 监控
- 任务进度可视化
- 与 antfarm 作者讨论
- 准备 PR
- 合并到 upstream
- antfarm: SQLite, YAML workflows, CLI
- bees extensions: TypeScript, Node.js 22+
- mailbox: JSONL format
- locks: proper-lockfile
MIT(与 antfarm 一致)
Created: 2026-03-03 Status: 🚧 Restructuring to antfarm-based extension