用途
AgentHub 是一个多智能体协作插件,核心思路是让 N 个并行 AI 智能体在同一任务上竞争。每个智能体在独立的 git worktree 中工作,彼此隔离、互不可见、互不通信,由协调者(主 Claude Code 会话)统一评估结果并合并胜出分支。它适合需要“尝试多种方案”“让智能体竞争”“并行优化”“生成内容变体”“A/B 测试文案”“探索多种策略”等场景。
主要能力
斜杠命令
| 命令 | 说明 |
|---|---|
| /hub:hub-init | 创建新的协作会话——任务、智能体数量、评估标准 |
| /hub:spawn | 在隔离的 worktree 中启动 N 个并行子智能体 |
| /hub:hub-status | 显示 DAG 状态、智能体进度、分支状态 |
| /hub:eval | 按指标或 LLM 评判对智能体结果排名 |
| /hub:merge | 合并胜出分支,归档失败分支 |
| /hub:board | 读写智能体留言板 |
| /hub:run | 一次性生命周期:init → baseline → spawn → eval → merge |
智能体模板
使用 --template 启动时,智能体遵循预定义的迭代模式:
| 模板 | 模式 | 适用场景 |
|---|---|---|
| optimizer | 编辑 → 评估 → 保留/丢弃 → 重复 x10 | 性能、延迟、体积 |
| refactorer | 重构 → 测试 → 迭代直到通过 | 代码质量、技术债 |
| test-writer | 编写测试 → 测量覆盖率 → 重复 | 测试覆盖缺口 |
| bug-fixer | 复现 → 诊断 → 修复 → 验证 | Bug 修复方案 |
模板定义在 references/agent-templates.md 中。
协调者协议
主 Claude Code 会话作为协调者,遵循生命周期:INIT → DISPATCH → MONITOR → EVALUATE → MERGE。
- Init:运行 /hub:hub-init 创建会话,生成 .agenthub/sessions/{session-id}/config.yaml(任务配置)、state.json(状态机)、.agenthub/board/(留言板频道)。
- Dispatch:运行 /hub:spawn 启动智能体。对每个智能体 1..N:向 .agenthub/board/dispatch/ 发布任务分配;通过 Agent 工具以 isolation: "worktree" 启动;所有智能体在单条消息中并行启动。
- Monitor:运行 /hub:hub-status 检查进度。dag_analyzer.py --status --session {id} 显示分支状态;board 的 progress/ 频道有智能体更新。
- Evaluate:运行 /hub:eval 对结果排名。指标模式:在每个 worktree 中运行评估命令,解析数值结果;评判模式:读取 diff,协调者按质量排名;混合模式:先指标,平局时用 LLM 评判。
- Merge:运行 /hub:merge 完成收尾。git merge --no-ff winner 到基础分支;给失败者打标签 git tag hub/archive/{session}/agent-{i};清理 worktree;向留言板发布合并摘要。
智能体协议
每个子智能体收到如下提示模式:
You are agent-{i} in hub session {session-id}.
Your task: {task description}
Instructions:
1. Read your assignment at .agenthub/board/dispatch/{seq}-agent-{i}.md
2. Work in your worktree — make changes, run tests, iterate
3. Commit all changes with descriptive messages
4. Write your result summary to .agenthub/board/results/agent-{i}-result.md
5. Exit when done
智能体看不到彼此的工作,也不互相通信,只写入留言板供协调者读取。
DAG 模型
分支命名:hub/{session-id}/agent-{N}/attempt-{M}
- Session ID:基于时间戳(YYYYMMDD-HHMMSS)
- Agent N:顺序编号(1 到 agent-count)
- Attempt M:重试时递增(通常为 1)
前沿检测:Frontier = 没有子分支的分支末端,等价于 AgentHub 的 "leaves" 查询。
python scripts/dag_analyzer.py --frontier --session {id}
不可变性:DAG 是仅追加的。绝不 rebase 或 force-push 智能体分支;绝不删除提交(归档后只删除分支引用);每种方案都通过 git 标签保留。
留言板
位置:.agenthub/board/
| 频道 | 写入者 | 读取者 | 用途 |
|---|---|---|---|
| dispatch/ | 协调者 | 智能体 | 任务分配 |
| progress/ | 智能体 | 协调者 | 状态更新 |
| results/ | 智能体 + 协调者 | 所有人 | 最终结果 + 合并摘要 |
帖子格式:
---
author: agent-1
timestamp: 2026-03-17T14:30:22Z
channel: results
parent: null
---
## Result Summary
- **Approach**: Replaced O(n²) sort with hash map
- **Files changed**: 3
- **Metric**: 142ms (baseline: 180ms, delta: -38ms)
- **Confidence**: High — all tests pass
留言板规则:仅追加,绝不编辑或删除帖子;文件名唯一:{seq:03d}-{author}-{timestamp}.md;所有帖子必须包含 YAML frontmatter。
评估模式
基于指标:适合基准测试、测试通过率、文件大小、响应时间。
python scripts/result_ranker.py --session {id} \
--eval-cmd "pytest bench.py --json" \
--metric p50_ms --direction lower
排名器在每个智能体的 worktree 目录中运行评估命令,并从 stdout 解析指标。
LLM 评判:适合代码质量、可读性、架构决策。协调者读取每个智能体的 diff(git diff base...agent-branch),按以下标准排名:正确性(是否解决任务)、简洁性(偏好更少改动行数)、质量(执行干净、结构良好)。
混合:先运行指标。如果排名靠前的智能体彼此差距在 10% 以内,使用 LLM 评判打破平局。
会话生命周期
init → running → evaluating → merged(若无胜者则 → archived)
状态转换由 session_manager.py 管理:
| 从 | 到 | 触发条件 |
|---|---|---|
| init | running | /hub:spawn 完成 |
| running | evaluating | 所有智能体返回 |
| evaluating | merged | /hub:merge 完成 |
| evaluating | archived | 无胜者 / 全部失败 |
主动触发
协调者应在以下情况采取行动:
| 信号 | 动作 |
|---|---|
| 所有智能体崩溃 | 发布失败摘要,建议用不同约束重试 |
| 相比基线无改进 | 归档会话,建议不同方案 |
| 检测到孤立 worktree | 运行 session_manager.py --cleanup {id} |
| 会话卡在 running | 检查留言板进度,考虑超时 |
使用方式
安装
# Copy to your Claude Code skills directory
cp -r engineering/agenthub ~/.claude/skills/agenthub
# Or install via ClawHub
clawhub install agenthub
脚本
| 脚本 | 用途 |
|---|---|
| hub_init.py | 初始化 .agenthub/ 结构和会话 |
| dag_analyzer.py | 前沿检测、DAG 图、分支状态 |
| board_manager.py | 留言板 CRUD(频道、帖子、线程) |
| result_ranker.py | 按指标或 diff 质量对智能体排名 |
| session_manager.py | 会话状态机和清理 |
适用场景
- 需要尝试多种实现方案并比较结果
- 并行优化性能、延迟、体积
- 代码重构、技术债清理
- 补充测试覆盖缺口
- 探索多种 Bug 修复方案
- 生成内容变体、比较不同草稿、A/B 测试文案
限制
- 智能体之间不通信、不可见彼此工作,仅通过留言板向协调者汇报
- DAG 为仅追加,不允许 rebase 或 force-push 智能体分支
- 评估依赖指标命令或 LLM 评判,具体效果取决于任务与评估标准
- 关于收费、价格、平台支持范围等信息暂未提供
相关技能
- autoresearch-agent — 单智能体优化循环(想要 N 个智能体竞争时使用 AgentHub)
- self-improving-agent — 自我修改智能体(想要外部竞争时使用 AgentHub)
- git-worktree-manager — Git worktree 工具(AgentHub 内部使用 worktree)