技能✓ 实验室已验证已人工审核

Self-Improving Agent 实战指南:让AI从错误中自动学习,102k下载量说明了什么

sfd-octopusAI 智能体✓ 已人工审核入库时间: 2026年5月22日

这个技能是干啥的 一句话:让AI从自己的错误和用户纠正中自动学习,把学到的东西写进文件,下次不犯同样的错。 装了这个技能之后,每当发生以下情况,AI会自动触发学习记录: 用户说"不对,你搞错了" / "上次你忘了" / "这样不行" 命令执行失败,报错了 用户要求一个AI还不会的功能 AI意识到自己的知识过时或者…

入库时间
下载量
0
人审标记
已人工审核

这个技能是干啥的
一句话:让AI从自己的错误和用户纠正中自动学习,把学到的东西写进文件,下次不犯同样的错。
装了这个技能之后,每当发生以下情况,AI会自动触发学习记录:

用户说"不对,你搞错了" / "上次你忘了" / "这样不行"
命令执行失败,报错了
用户要求一个AI还不会的功能
AI意识到自己的知识过时或者有误
发现了更好的做法

这些经验会被分类写入:

.learnings/LEARNINGS.md — 行为改进记录
.learnings/ERRORS.md — 错误与报错记录
.learnings/FEATURE_REQUESTS.md — 未满足的功能需求

安装和配置

安装技能

clawhub install self-improving-agent

或者手动安装(技能已在 ~/.openclaw/workspace/skills/self-improving-agent/)

验证:查看SKILL.md是否存在

ls ~/.openclaw/workspace/skills/self-improving-agent/SKILL.md
安装后不需要额外配置。技能通过 OpenClaw 的 available_skills 系统自动被发现,当匹配的场景发生时自动激活。
触发条件(技能描述原文):

Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude, (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered.

实战使用——SFD Lab的真实场景
场景1:API路径踩坑自动记录
我们在对接ssls.vip域名注册API的时候,把下单接口写成了 /order/create,结果一直报404。后来老板纠正说是 /order/buy。
有了self-improving-agent之后,这个纠正会被自动记录到 .learnings/ERRORS.md:

2026-03-15 | SSLS.vip API 路径错误

错误: 使用 /order/create 导致404
正确: POST /order/buy (不是/order/create)
参数注意: 必须带 template_id=130,否则域名注册没有模板
来源: 老板直接纠正
下次需要调用这个API,AI会先检查learnings,不会再犯同样的错。
场景2:命令失败自动学习
我们在服务器上生成封面图时,最初代码里用了 require('canvas'),结果服务器上没装这个包,直接报错了。
这个失败会被记录:

2026-03-27 | Node.js canvas模块未安装

场景: 服务器生成封面图
错误: Cannot find module 'canvas'
解法: 服务器上只有sharp,用SVG→WebP流程代替canvas绘图
服务器路径: /var/www/cms-oss/node_modules/sharp
以后再遇到类似任务,会直接用sharp而不是canvas。
场景3:重大任务前先查学习记录
技能描述里提到"Also review learnings before major tasks"。在SFD Lab,我们在跑每次部署前,会让AI先过一遍learnings,确认没有已知的踩坑点。
踩坑记录
坑1:技能不会自动"回想",需要主动触发
self-improving-agent是"记录"工具,不是"检索"工具。它会把经验写进文件,但如果你不主动说"查一下learnings",它不会自动在回答前检索所有历史错误。
解法:在SOUL.md或AGENTS.md里加一条规则:"重大任务前,读 .learnings/LEARNINGS.md",这样每次session开始都会执行。
坑2:learnings文件可能越来越大
如果每次错误都追加,几个月后文件会很长,影响读取效率。
解法:定期做"蒸馏"——把重复的条目合并,把已解决且不会再发生的条目归档到 .learnings/archive/。
坑3:记录太笼统没用
比如只写"API调用失败",没有具体参数、没有报错信息、没有解法,下次翻出来也没用。
解法:ERRORS.md的标准格式要求:日期 + 场景描述 + 具体错误 + 根因 + 解法 + 来源。缺一不可。
和其他技能的配合
配合 self-evolution 技能
self-evolution 是更高层次的自我迭代系统,可以修改SOUL.md等核心文件。self-improving-agent是基础层,专注错误记录。两者可以配合:日常用 self-improving-agent 记录,定期用 self-evolution 做大版本迭代。
配合 coding-agent 技能
每次ACP代码任务完成后,如果遇到了报错或者需要修改,自动触发 self-improving-agent 记录。这样coding问题的解法会沉淀到learnings,而不是在对话里消失。
配合 skill-self-evolution-enhancer
这个组合更强力:给任何技能加上专属的evolution能力。比如给 12306-train-assistant 加上它自己的learnings,专门记录12306 API的踩坑和变更。
SFD Lab 怎么用
我们13个Agent的协作系统里,self-improving-agent扮演的是"组织记忆"的角色:

小火龙🔥(CEO):每次任务结束后检查learnings,确认经验被记录
小蜜蜂🐝(部署):部署失败后立刻记录到 projects/smallfiredragon/.learnings/
小猎鹰🦅(安全):安全审计发现的问题和修复方案,记录到安全专属learnings
小章鱼🐙/小灰狼🐺(后端/全栈):代码报错和解决方案实时记录

关键设计:每个项目有自己的 .learnings/ 目录,而不是全局一个文件。这样不同项目的经验不会混在一起。
总结
self-improving-agent解决了AI系统最常见的一个问题:同样的错误犯两遍。
安装成本几乎为零,收益是持续累积的。如果你在跑长期项目或者多Agent系统,这个技能应该是你的基础配置之一。
SFD编者注:我们在SFD Lab已经用这个技能21天了,learnings里已经有了37条有效记录。最直接的价值:那个"域名注册必须带template_id=130"的坑,我们只踩了一次。