一句话概括

自动记录运行中的错误、用户的纠正和发现的最佳实践到 .learnings/ 目录,让 agent 不断进化而非每次从头再来。

解决的问题

  • AI agent 每次会话都是"失忆"状态,不会从上次的错误中学习
  • 用户反复纠正同样的错误,agent 永远不长记性
  • 最佳实践只停留在对话中,没有沉淀为可复用知识
  • 项目经验和教训没有系统化记录

核心机制与工作流

三文件体系

文件 内容 触发条件
.learnings/ERRORS.md 命令失败、集成错误 agent 操作失败时
.learnings/LEARNINGS.md 纠正、洞察、知识盲区、最佳实践 用户纠正 agent / 发现更好的做法
.learnings/FEATURE_REQUESTS.md 用户提出的但 agent 不具备的能力 用户要求缺失功能时

记录分类体系(LEARNINGS.md)

分类 含义
correction 用户纠正了 agent 的错误
insight 深入理解或新发现
knowledge_gap agent 知识过时或不全面
best_practice 发现更好的做法,模式化可复用

知识晋升路径

graph LR
    A[会话中的纠正/发现] --> B[写入 .learnings/ 原始记录]
    B --> C{是否通用适用?}
    C -->|是| D[提升到 AGENTS.md / TOOLS.md]
    C -->|否| E[保留在 .learnings/]
    D --> F[agent 每次启动都加载]
    E --> G[作为上下文参考]

安装方式

clawhub install pskoett/self-improving-agent

首次初始化

mkdir -p .learnings

OpenClaw 的 self-improving-agent skill 会自动检查并创建以下文件:

  • .learnings/LEARNINGS.md
  • .learnings/ERRORS.md
  • .learnings/FEATURE_REQUESTS.md

仅新项目需要手动初始化,已有文件不会被覆盖。

适用人群

  • 所有使用 AI agent 的开发者
  • 管理长期项目的团队(agent 需要记住项目上下文)
  • 希望减少重复纠正的 AI 重度用户

应用场景

场景 说明
日常开发 agent 记住你偏好的代码风格和项目约定
项目交接 积累的 learnings 比文档更真实
新成员 onboarding 沉淀的 best_practice 加速上手
工作流优化 重复的任务流程自动记录并优化

优缺点

优点 缺点
零配置即可使用 需要 agent 有良好的 self-improvement skill 支持
自动记录,不增加负担 记录质量依赖 agent 的判断力
知识可晋升到项目级记忆 不自动清理,可能需要手动维护
轻量,纯 Markdown 文件

类似项目对比

项目 差异
OpenSpec 归档 OpenSpec 归档变更记录,This 记录 agent 的 learnings 和改进
Superpowers 的 spec Superpowers 的 spec 是开发计划,This 是事后复盘和沉淀
GitNexus code graph GitNexus 分析代码结构,This 分析 agent 行为

注意事项 / 坑

  • 不应记录敏感信息(密钥、密码、完整配置文件)
  • 记录建议使用简短的摘要或节选片段,而非原始输出
  • 定期清理不再适用的旧记录
  • 需要确保 agent 的 SKILL.md 或 AGENTS.md 正确引用了 self-improving-agent 技能

相关 Skills

  • Skill Vetter — 在安装新 skill 前做好安全审查
  • GitNexus — 代码理解层面的上下文
  • OpenSpec — 开发流程层面的归档

来源