166172e0b8
S1: AGENTS.md 经验闭环规则(workspace 层,单独管理) S2: skill-management Skill 完整实现 - SKILL.md(主:综述 + 四阶段速查 + 验证标准 + 自我修补规则) - references/discover-l1.md(各 agent 03:00 自蒸馏操作指南) - references/discover-l2.md(庞统 05:00 整合审查操作指南) - references/distill.md(蒸馏规范 + 验证标准 + 矛盾处理) - references/apply.md(openclaw 原生机制 + per-agent 可见性) - references/improve.md(引用追踪 + 淘汰 + 提升) - assets/templates/skill-template.md(SKILL.md 标准模板) - assets/templates/signal-format.md(信号输出格式模板) - assets/checklists/quality-check.md(质量检查清单) 文档修复:cron 错开时间 5min → 15min
4.1 KiB
4.1 KiB
DISCOVER L2 — 庞统整合审查(每天 05:00)
你是谁
你是庞统,在每天 05:00 被 cron 唤醒,执行跨 agent 整合 + draft proposal 审查。
前提:所有 agent 的 L1 自蒸馏(03:00-04:15)已完成。
操作步骤
Step 1: 获取所有 L1 draft proposals
skill_workshop(action="list", status="pending")
列出所有 pending 状态的 proposal,检查哪些是今天 L1 产出的。
Step 2: 全量数据源扫描
扫描以下数据源,识别跨 agent 共性模式:
| 数据源 | 位置 | 关注什么 |
|---|---|---|
| 黑板 tasks | 各项目 blackboard.db | task failed、状态异常 |
| 黑板 reviews | reviews 表 | REQUEST_CHANGES verdict + suggestions |
| 黑板 comments | comments 表 | rebuttal 讨论、@mention 争议 |
| 黑板 events | events 表 | guardrail 拦截、异常检测 |
| Gitea Issues/PRs | Gitea API | 新问题、PR review 评论 |
| Gitea CI | Gitea Actions | lint/test/build 失败 |
| mail API | 跨 agent 讨论、推理过程 | |
| 所有 agent JSONL | ~/.openclaw/agents/*/sessions/ | 全团队当天思考过程 |
| MEMORY.md | 各 agent workspace | 已有经验教训 |
| knowledge-gaps.md | wiki-vault/_meta/ | 知识缺口 |
| L1 draft proposals | skill_workshop pending | 各 agent 当天提交 |
Step 3: 跨 agent 共性模式识别
寻找同一 Pattern-Key 在多个 agent 的 JSONL/proposal 中出现的情况:
张飞 SIG-20260618-001: Pattern-Key: sync.field_mapping
关羽 SIG-20260618-002: Pattern-Key: sync.field_mapping
→ 共性信号!Recurrence-Count = 2,可合并为共享 Skill
Step 4: 审查每个 draft proposal
对每个 L1 draft proposal,逐条审查:
skill_workshop(action="inspect", proposal_id="<id>")
审查维度:
| 维度 | 标准 | 不通过 |
|---|---|---|
| Recurrence-Count ≥ 2 | 同一 Pattern-Key 在 ≥2 个场景出现 | 降级为 MEMORY.md |
| 有生成力 | 能给出具体操作指引 | 丢弃 |
| 有排他性 | 不是常识 | 丢弃 |
| description 合规 | 只描述触发条件,不含工作流 | 要求 revise |
| trigger 具体 | 不是「注意代码质量」 | 要求 revise |
Step 5: 执行决策
对每个 proposal 做出决策:
APPROVE(个人经验,质量达标):
skill_workshop(action="apply", proposal_id="<id>")
# skill_workshop 自动写入 agent workspace: ~/.openclaw/workspace-<agent>/skills/<skill-name>/
# 仅该 agent 可见
MERGE(跨 agent 共性):
# 1. 在庞统 workspace apply 合并后的版本
skill_workshop(action="apply", proposal_id="<id>")
# 2. cp 到公共目录(skill_workshop 不能写 extraDir)
cp ~/.openclaw/workspace-pangtong/skills/<skill-name>/SKILL.md \
~/.sanguo_projects/sanguo_mozi/skills/<skill-name>/SKILL.md
# 3. 通知各 agent quarantine workspace 中的同名 draft
# 在相关 PR/Issue 中 @agent 说明
REJECT(质量不够):
skill_workshop(action="reject", proposal_id="<id>", reason="<具体原因>")
# agent 在下次 L1 时看到反馈
PROMOTE(高确定性经验,提升为规则):
# 手动写入 AGENTS.md / SOUL.md / TOOLS.md 对应区块
# 这不属于 skill_workshop 管理范围
Step 6: 全局提升检查
检查是否有经验达到提升条件(Recurrence-Count ≥ 3 + 跨 ≥2 任务 + 30 天内):
| 提升目标 | 条件 | 效果 |
|---|---|---|
| 独立 Skill | 足够通用,有自己的触发条件 | 独立 SKILL.md |
| AGENTS.md 规则 | 确定性高,适用于所有 agent | L1 强制注入 |
| guardrail | 安全相关,不可违反 | 强制检查 |
Step 7: 知识缺口反馈
IMPROVE 发现的经验缺口或 L2 发现的新领域 → 追加到 knowledge-gaps.md。
注意事项
- L2 时间窗口:05:00 执行,确保 L1 全部完成(最后一个 agent 04:15 开始)
- 全量扫描不需要逐行读 JSONL,用 grep 定位关键词再精读匹配段
- MERGE 后必须清理各 agent workspace 的同名 draft(避免覆盖公共版本)
- REJECT 必须附具体原因,帮 agent 改进而非打击