بنقرة واحدة
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 "缓存失效"