evolution
SuperClaw 三触发自进化引擎 — 全自动 FIX/DERIVED/CAPTURED 进化
SKILL.mdskills/evolution/SKILL.md
GitHubSuperClaw 自进化系统
架构
进化引擎 (evolution-engine.py) 作为后台 daemon 运行,自动监听 session 变化并触发进化。
session 结束 → 引擎检测 → LLM 分析执行历史 → 触发进化 → 写入 skills/
三种进化触发
| 触发 | 条件 | 结果 |
|---|---|---|
| FIX | skill 被使用但任务失败/出错 | 原地修复 SKILL.md,旧版本存入版本 DAG |
| DERIVED | skill 有效但 LLM 发现可优化模式 | 创建增强版 skill(新目录),父 skill 保持活跃 |
| CAPTURED | 任务成功但无匹配 skill | 从执行历史捕获全新 skill |
数据存储
- 进化数据库:
/root/openclaw-fusion/data/evolution.db(SQLite)skill_records— 所有 skill 记录(含版本 DAG)skill_lineage— 父子关系skill_metrics— 使用次数、成功/失败计数execution_analyses— 每次 session 的 LLM 分析结果
- 日志:
/root/.openclaw/logs/evolution-engine.log
版本 DAG
每次 FIX/DERIVED 进化创建新版本节点:
- FIX: 新 ID =
{name}__v{gen}_{hash},父节点标记is_active=0 - DERIVED: 新 ID =
{name}__v{gen}_{hash},父节点保持is_active=1 - CAPTURED: 新 ID =
{name}__cap_{hash},无父节点
健康检查
每 10 次 session 后自动扫描所有 skill 指标:
- 失败率 > 40% → 触发 FIX
- 成功率 < 60% → 触发 DERIVED
- 需要 LLM 二次确认才执行
Agent 无需手动操作
进化引擎完全自动运行。Agent 只需:
- 执行任务前查阅
skills/目录(进化生成的新 skill 自动出现) - 正常执行任务
管理命令
# 查看服务状态
systemctl status evolution-engine
# 查看日志
tail -f /root/.openclaw/logs/evolution-engine.log
# 查看数据库
sqlite3 /root/openclaw-fusion/data/evolution.db "SELECT skill_id, name, origin, generation, is_active FROM skill_records ORDER BY created_at DESC LIMIT 20;"
# 查看进化历史
sqlite3 /root/openclaw-fusion/data/evolution.db "SELECT session_id, task_summary, suggestions FROM execution_analyses ORDER BY timestamp DESC LIMIT 10;"
旧模块(保留但非必需)
以下旧模块仍可手动调用,但进化引擎已覆盖其功能:
memory-manager.py— 经验记忆(被 execution_analyses 表替代)skill-generator.py— 技能生成(被 CAPTURED 触发替代)prompt-optimizer.py— Prompt 优化(被 FIX 触发替代)review-learner.py— 审查学习(保留为辅助工具)