ワンクリックで
harness-swarm
Multi-agent swarm 系统,带向量记忆持久化。从历史任务中持续学习团队偏好,协调多个 Claude Code subagent 并行工作,支持语义检索已积累的经验。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Multi-agent swarm 系统,带向量记忆持久化。从历史任务中持续学习团队偏好,协调多个 Claude Code subagent 并行工作,支持语义检索已积累的经验。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
模块开发主循环。轻量协调者:加载上下文后调用 harness-onboard(需求分类+影响面+流程确认),再调用 harness-roles(帽子系统多角色执行),最后沉淀上下文。通常由 .harness/AGENTS.md 自动激活,也可通过 /harness-dev 显式调用。
在当前模块目录下初始化 Harness 框架。扫描代码结构、预填上下文文件、引导开发者逐节审核确认,最终写入 .harness/ 目录。适用于 cmd/、apps/、pkg/ 下的任意模块。
升级当前模块 .harness/framework/ 到最新版本。三层分离设计保证 context/(开发者托管)和 overrides/ 永不被覆盖。可在 harness-dev 提示有新版本时调用,也可直接执行 /harness-upgrade。
Team-level AI spend visibility. Tracks token usage per PR, attribute costs to author/reviewer, generates exportable cost reports. Built on top of harness-roles budget tracking.
CI failure auto-fix. Reads failure logs, identifies root cause, applies fix, commits and creates PR. Triggered by workflow_run or called directly via /fix-ci.
需求分类 + 影响面分析 + 动态流程确认。从用户描述推断工作类型,fetch-first 扫描代码,输出影响面报告,解析 workflow/dev.md 的 rules 动态调整插槽列表,展示流程供用户确认调整,最终输出 resolved_slots JSON 交给 harness-roles 执行。
| name | harness-swarm |
| description | Multi-agent swarm 系统,带向量记忆持久化。从历史任务中持续学习团队偏好,协调多个 Claude Code subagent 并行工作,支持语义检索已积累的经验。 |
借鉴 Ruflo(多 agent swarm 部署 + 自学习 + 向量记忆)和 Claude Swarm 的设计。 核心能力:记忆持久化 + 语义检索 + agent 协调 + 持续学习。
| 能力 | harness-loop | harness-swarm |
|---|---|---|
| 执行模型 | 串行 story 迭代 | 并行 agent swarm |
| 记忆 | 无 | 向量语义记忆 |
| 学习 | 无 | 从历史中持续改进 |
| 协调 | 无 | agent 间通信 |
| 适用场景 | 长时间无人值守 | 复杂多角色并行任务 |
简单关键词匹配 + confidence × usage_count 综合排序。 无外部依赖,纯本地计算。
存储位置:.harness/swarm/memory/(每条记忆一个 JSON 文件)
{
"id": "mem-001",
"type": "pattern",
"content": "处理 auth 接口时,先检查 session token 再访问 DB",
"keywords": ["auth", "token", "validation", "order", "security", "session", "database"],
"source": "harness-review@2026-04-01",
"confidence": 0.85,
"usage_count": 3
}
检索逻辑:
.harness/swarm/memory/*.json记忆更新规则:
{
"if": "review PASS with usage_count >= 3 → confidence += 0.1 (上限 1.0)"
},
{
"if": "review ITERATE → confidence -= 0.2"
},
{
"if": "PIVOT → confidence -= 0.5,记录失败教训到 memory"
},
{
"if": "confidence < 0.3 → 移入 archive/"
}
不同于 harness-loop 的单 agent 串行,swarm 同时启动多个 agent:
Orchestrator(协调者)
├── Agent-1:代码生成
├── Agent-2:测试编写
├── Agent-3:文档更新
└── Agent-4:Review 协调
每个 agent 有独立上下文,通过共享 memory 协作。
每次任务完成后,更新记忆库:
用户:「让 swarm 跑这个需求」
用户:「多 agent 并行处理这个重构」
用户:「记得上次我们怎么处理 auth 的吗」
读取 .harness/swarm/memory/ 下所有记忆,按相关性检索:
查询向量(从需求描述提取)
↓
与每条记忆的 embedding_hint 计算相似度
↓
返回 top-N 相关记忆(用于本次任务)
如果没有记忆库:初始化 .harness/swarm/memory/ 目录。
mkdir -p .harness/swarm/memory
mkdir -p .harness/swarm/archive
分析需求,将任务分解为独立子任务:
原始需求:重构用户模块并添加测试
分解:
Agent-1(Builder):重构用户模块代码
Agent-2(Tester):为用户模块编写集成测试
Agent-3(Reviewer):review 重构结果
每个子任务派发为独立 subagent,共用:
同时派发所有 subagent,不等待一个完成再启动另一个:
Agent tool → Agent-1(重构)
Agent tool → Agent-2(测试)
Agent tool → Agent-3(review)
共享上下文:
.harness/swarm/memory/ 中相关记忆.harness/swarm/workspace/agent-N/所有 agent 完成后:
1. 合并各 agent 产出
2. 运行 harness-review(如有代码变更)
3. 从本次任务中学习:
- 新 pattern → 写入新记忆
- 高频 solution → confidence++
- 低频/失败 → confidence-- 或归档
记忆更新规则:
{
"if": "review 通过且使用次数 >= 3",
"then": "confidence += 0.1(上限 1.0)"
}
{
"if": "review 未通过或 3 次迭代失败",
"then": "confidence -= 0.2,移入 archive/"
}
用户可以问:
「上次我们怎么处理缓存失效的?」
「关于订单模块的重构有什么记忆?」
检索脚本(.harness/swarm/retrieve.sh):
#!/bin/bash
# 关键词召回:命中数 × confidence × log(usage_count + 1)
QUERY="$*"
QUERY_TOKENS=$(echo "$QUERY" | tr ' ' '\n' | sort -u)
echo "查询:$QUERY"
echo "---"
for mem in .harness/swarm/memory/mem-*.json; do
[ -f "$mem" ] || continue
CONTENT=$(cat "$mem" | grep -o '"content":"[^"]*"' | cut -d'"' -f4)
KEYWORDS=$(cat "$mem" | grep -o '"keywords":\[[^]]*\]' | grep -o '"[^"]*"' | tr -d '"')
CONF=$(cat "$mem" | grep -o '"confidence":[0-9.]*' | cut -d: -f2)
USAGE=$(cat "$mem" | grep -o '"usage_count":[0-9]*' | cut -d: -f2)
# 计算命中数
HITS=0
for tok in $QUERY_TOKENS; do
if echo "$CONTENT $KEYWORDS" | grep -qi "$tok"; then
HITS=$((HITS + 1))
fi
done
# 综合分数 = 命中数 × confidence × log(usage + 1)
SCORE=$(echo "$HITS $CONF $USAGE" | awk '{print $1 * $2 * log($3 + 1)}')
if [ "$HITS" -gt 0 ]; then
echo "[$SCORE] $(basename $mem): ${CONTENT:0:80}..."
fi
done | sort -t'[' -k2 -rn | head -5
输出示例:
[2.31] mem-003: 使用 Redis SETEX 处理缓存失效...
[1.58] mem-007: 缓存击穿用 singleflight...
[0.85] mem-001: 分布式锁处理并发缓存...
.harness/swarm/
├── memory/ # 向量记忆库
│ ├── mem-001.json # 一条记忆
│ └── mem-002.json
├── workspace/ # 各 agent 的工作目录
│ ├── agent-1/
│ ├── agent-2/
│ └── ...
├── archive/ # 低置信度记忆归档
└── state.json # swarm 运行状态
{
"version": "1.0",
"last_run": "2026-04-07T14:00:00Z",
"total_runs": 12,
"agents": ["builder", "tester", "reviewer", "documenter"],
"memory_count": 47,
"avg_confidence": 0.78,
"last_patterns": [
"auth 接口先验 token",
"DB 操作加事务",
"外部服务调用加 retry"
]
}
需要长时间无人值守(人类睡觉时)→ harness-loop
需要多角色并行 + 从历史学习 → harness-swarm
两者可以结合:loop 的 story 内可以用 swarm 并行处理
# 启动 swarm
/harness-swarm
# 查看记忆库
/harness-swarm --memory
# 查询相关记忆
/harness-swarm "缓存失效"