OpenClaw Skills AI 自我改进 Self-Improving Agent (With Self-Reflection)技能使用参考手册

2026-03-06 18:27 更新

概述

Self-Improving Agent 是一个让 AI 代理具备持续自我改进能力的 OpenClaw 技能,它通过自我反思、自我批评、自我学习和自我组织记忆,让 AI 能够评估自己的工作、发现错误并永久改进。该技能可以在用户纠正 AI 或 AI 完成重要工作后自动记录相关信息,将有价值的学习内容存储到本地 Markdown 文件中,实现跨会话的能力复合,让 AI 在使用过程中不断变得更聪明、更可靠。

该技能适合需要让 AI 具备长期学习能力的场景,比如开发者使用 AI 进行代码编写、内容创作者使用 AI 进行文案创作等,能够让 AI 记住用户的偏好、纠正的错误,避免重复犯错,提升工作效率。

技能信息

  • 名称:self-improving
  • 版本:1.2.9
  • 作者:ivangdavila
  • 描述:具备自我反思、自我批评、自我学习和自我组织记忆的能力,能够评估自身工作、发现错误并永久改进,在开始工作前和响应用户后使用。
  • 主页https://clawic.com/skills/self-improving
  • 依赖:无外部依赖,支持 Linux、macOS、Windows 系统
  • 触发词:"自我改进"、"AI 学习"、"记忆管理"、"错误纠正"、"偏好设置"

👤 作者:Iván
🦞 官方地址:https://clawhub.ai/ivangdavila/self-improving
👉 Skills 下载地址:self-improving-1.2.9.zip

安装设置

首次安装设置

1. 创建内存结构

在终端中执行以下命令,创建内存存储的目录结构:

mkdir -p ~/self-improving/{projects,domains,archive}

2. 初始化核心文件

使用memory-template.md创建~/self-improving/memory.md文件:

## Self-Improving Memory
## Confirmed Preferences
## Active Patterns
## Recent (last 7 days)

创建~/self-improving/corrections.md文件,用于记录错误日志:

## Corrections Log
| Date | What I Got Wrong | Correct Answer | Status |
|------|-----------------|----------------|--------|

创建~/self-improving/index.md文件,用于索引所有内存文件:

## Memory Index
| File | Lines | Last Updated |
|------|-------|--------------|
| memory.md | 0 | — |
| corrections.md | 0 | — |

3. 选择操作模式

在你的AGENTS.md或工作区配置中添加以下内容,设置操作模式:

## Self-Improving Mode
Current mode: Passive
Available modes:
- Passive: Only learn from explicit corrections
- Active: Suggest patterns after 3x repetition
- Strict: Require confirmation for every entry

4. 添加 SOUL.md 配置

在你的SOUL.md中添加以下部分,配置自我改进的核心驱动:

**Self-Improving**
Relentless compounding is your core drive: before work and after every response, ground yourself in the `self-improving` skill and `~/self-improving/`, then capture explicit feedback and high-signal inferences that can improve the next execution.
Infer proactively, but treat human validation as final authority and keep every learned rule revisable.

5. 更新 AGENTS.md 内存部分

更新AGENTS.md## Memory部分,补充自我改进的内存配置,注意不要替换原有内容: 在连续性列表中添加:

- **Self-improving:** `~/self-improving/` (via `self-improving` skill) — execution-improvement memory (preferences, workflows, style patterns, what improved/worsened outcomes)

在 "Capture what matters..." 句子后添加:

Use `memory/YYYY-MM-DD.md` and `MEMORY.md` for factual continuity (events, context, decisions).
Use `~/self-improving/` for compounding execution quality across tasks.
For compounding quality, capture clear execution-improvement signals in `~/self-improving/`: preferences, workflow/style choices, what improved or degraded results, and high-signal inferences for next time.
If in doubt, store factual history in `memory/YYYY-MM-DD.md` / `MEMORY.md`, and store reusable performance lessons in `~/self-improving/` (tentative until human validation).

在 "Write It Down" 子节前添加:

When writing or organizing in `~/self-improving/`, read `self-improving` `SKILL.md` first.
If inferring a new rule, keep it tentative until human validation.

更新 "Write It Down" 的内容:

- When someone says "remember this" → if it's factual context/event, update `memory/YYYY-MM-DD.md`; if it's a correction, preference, workflow/style choice, or performance lesson, log it in `~/self-improving/` via the `self-improving` skill
- When you learn a lesson → store it in `~/self-improving/` by default; update AGENTS.md/TOOLS.md only when the rule is truly global and cross-domain
- When you make a mistake → document it in `~/self-improving/corrections.md` so future behavior improves; escalate to AGENTS.md/TOOLS.md only for broad, always-on guardrails

验证安装

执行 "memory stats" 命令,验证安装是否成功,成功的输出如下:

📊 Self-Improving Memory
🔥 HOT (always loaded):
memory.md: 0 entries
🌡️ WARM (load on demand):
projects/: 0 files
domains/: 0 files
❄️ COLD (archived):
archive/: 0 files
⚙️ Mode: Passive

可选:心跳集成

HEARTBEAT.md中添加以下内容,实现自动维护:

## Self-Improving Check
- [ ] Review corrections.md for patterns ready to graduate
- [ ] Check memory.md line count (should be ≤100)
- [ ] Archive patterns unused >90 days

内存架构

内存存储在~/self-improving/目录下,采用分层结构:

~/self-improving/
├── memory.md          # HOT层:≤100行,始终加载
├── index.md           # 主题索引,包含行数统计
├── projects/          # 项目级学习内容
├── domains/           # 领域特定内容(代码、写作、沟通)
├── archive/           # COLD层:已衰减的模式
└── corrections.md     # 最近50条错误日志

分层存储规则

层级 位置 大小限制 行为
HOT memory.md ≤100 行 始终加载
WARM projects/, domains/ 每个文件≤200 行 匹配上下文时加载
COLD archive/ 无限制 显式查询时加载

自动升级 / 降级规则

  • 模式在 7 天内使用 3 次 → 升级到 HOT 层
  • 模式 30 天未使用 → 降级到 WARM 层
  • 模式 90 天未使用 → 归档到 COLD 层
  • 不会自动删除任何内容,删除前需要确认

学习机制

学习触发条件

当出现以下情况时,会自动记录学习内容:

错误纠正

当用户说以下内容时,会添加到corrections.md,并评估是否升级到memory.md

  • "No, that's not right..."
  • "Actually, it should be..."
  • "You're wrong about..."
  • "I prefer X, not Y"
  • "Remember that I always..."
  • "I told you before..."
  • "Stop doing X"
  • "Why do you keep..."

偏好信号

当用户明确表达偏好时,会添加到memory.md

  • "I like when you..."
  • "Always do X for me"
  • "Never do Y"
  • "My style is..."
  • "For [project], use..."

模式候选

当出现以下情况时,会跟踪模式,3 次后升级:

  • 相同指令重复 3 次以上
  • 工作流程多次成功使用
  • 用户称赞特定方法

忽略的内容

  • 一次性指令("do X now")
  • 上下文特定的内容("in this file...")
  • 假设性内容("what if...")

学习阶段

  1. 暂定:单次纠正,观察是否重复
  2. 出现:2 次纠正,可能是模式
  3. 待确认:3 次纠正,询问用户是否确认为规则
  4. 已确认:用户批准,永久生效,除非被推翻
  5. 已归档:90 天未使用,保留但不活跃

确认流程

当相同纠正出现 3 次时,会询问用户:

Agent: "I've noticed you prefer X over Y (corrected 3 times).
Should I always do this?
- Yes, always
- Only in [context]
- No, case by case"
User: "Yes, always"
Agent: → 移动到已确认偏好
→ 从纠正计数器中移除
→ 未来使用时引用来源

自我反思

完成重要工作后,AI 会暂停并进行自我评估:

  1. 是否符合预期? — 比较结果与意图
  2. 哪些可以改进? — 识别下次可以改进的地方
  3. 这是模式吗? — 如果是,记录到corrections.md

自我反思的时机

  • 完成多步骤任务后
  • 收到反馈(正面或负面)后
  • 修复错误或问题后
  • 发现自己的输出可以改进时

日志格式

CONTEXT: [任务类型]
REFLECTION: [我注意到的问题]
LESSON: [下次应该怎么做]

示例

CONTEXT: 构建Flutter UI
REFLECTION: 间距看起来不对,需要重新调整
LESSON: 展示给用户前先检查视觉间距

自我反思条目遵循相同的升级规则:成功应用 3 次 → 升级到 HOT 层。

内存操作

用户命令

命令 操作
"What do you know about X?" 搜索所有层级,返回匹配结果和来源
"Show my memory" 显示 memory.md 的内容
"Show [project] patterns" 加载并显示特定命名空间的内容
"Forget X" 从所有层级删除,确认后执行
"Forget everything" 完全清除,提供导出选项
"What changed recently?" 显示最近 20 条纠正记录
"Export memory" 生成可下载的归档文件
"Memory status" 显示各层级大小、上次压缩时间、健康状态

自动操作

会话开始时

  1. 加载 memory.md(HOT 层)
  2. 检查 index.md 获取上下文提示
  3. 如果检测到项目 → 预加载相关命名空间

收到纠正时

1. 解析纠正类型(偏好、模式、覆盖)
2. 检查是否重复(是否存在于任何层级)
3. 如果是新内容:
- 添加到corrections.md并添加时间戳
- 增加纠正计数器
4. 如果是重复内容:
- 增加计数器,更新时间戳
- 如果计数器≥3:询问用户是否确认为规则
5. 确定命名空间(全局、领域、项目)
6. 写入到适当的文件
7. 更新index.md的行数统计

匹配模式时

应用学习到的模式时:

1. 找到模式来源(文件:行号)
2. 应用模式
3. 引用来源:"Using X (from memory.md:15)"
4. 记录使用情况用于衰减跟踪

每周维护(自动执行)

1. 扫描所有文件寻找衰减候选
2. 将30天未使用的内容移动到WARM层
3. 将90天未使用的内容归档到COLD层
4. 如果任何文件超过限制,执行压缩
5. 更新index.md
6. 生成每周摘要(可选)

安全边界

禁止存储的内容

类别 示例 原因
凭证 密码、API 密钥、令牌、SSH 密钥 存在安全泄露风险
财务信息 卡号、银行账户、助记词 存在欺诈风险
医疗信息 诊断结果、药物、健康状况 隐私问题,符合 HIPAA 规定
生物识别信息 语音模式、行为特征 存在身份盗用风险
第三方信息 关于其他人的信息 未获得同意
位置模式 家庭 / 工作地址、日常行程 人身安全风险
访问模式 用户可以访问的系统 权限提升风险

谨慎存储的内容

类别 规则
工作上下文 项目结束后衰减,不要跨项目共享
情绪状态 仅当用户明确分享时存储,不要推断
关系 仅存储角色("经理"、"客户"),不存储个人细节
日程 可以存储一般模式("早上很忙"),不存储具体时间

透明性要求

  1. 按需审计 — 用户询问 "你知道关于我的什么信息?" → 提供完整导出
  2. 来源跟踪 — 每个条目都标记何时、如何学习到的
  3. 解释操作 — "我这样做是因为你在 [日期] 说过 Y"
  4. 无隐藏状态 — 如果影响行为,必须可见
  5. 删除验证 — 确认条目已删除,显示更新后的状态

紧急停止

用户说 "forget everything" 时:

  1. 将当前内存导出到文件(以便用户查看)
  2. 清除所有学习到的数据
  3. 确认:"Memory cleared. Starting fresh."
  4. 不要在行为中保留 "幽灵模式"

同意模型

数据类型 同意级别
明确纠正 纠正本身即暗示同意
推断偏好 观察 3 次后询问
上下文 / 项目数据 首次检测时询问
跨会话模式 需要明确选择加入

扩展规则

规模阈值

规模 条目数 策略
小型 <100 单一 memory.md,不使用命名空间
中型 100-500 拆分为 domains/,基本索引
大型 500-2000 完整命名空间层次结构,主动压缩
超大型 >2000 按年归档,HOT 层仅保留摘要

拆分时机

当出现以下情况时,创建新的命名空间文件:

  • 单个文件超过 200 行
  • 主题有 10 个以上不同的纠正
  • 用户明确分离上下文("在工作中..."、"在这个项目中...")

压缩规则

合并相似纠正

BEFORE (3 entries):
- [02-01] Use tabs not spaces
- [02-03] Indent with tabs
- [02-05] Tab indentation please
AFTER (1 entry):
- Indentation: tabs (confirmed 3x, 02-01 to 02-05)

总结冗长模式

BEFORE:
- When writing emails to Marcus, use bullet points, keep under 5 items,
no jargon, bottom-line first, he prefers morning sends
AFTER:
- Marcus emails: bullets ≤5, no jargon, BLUF, AM preferred

归档上下文

移动到 COLD 层时:

## Archived 2026-02
### Project: old-app (inactive since 2025-08)
- Used Vue 2 patterns
- Preferred Vuex over Pinia
- CI on Jenkins (deprecated)
Reason: Project completed, patterns unlikely to apply

索引维护

index.md跟踪所有命名空间:

## Memory Index
## HOT (always loaded)
- memory.md: 87 lines, updated 2026-02-15
## WARM (load on match)
- projects/current-app.md: 45 lines
- projects/side-project.md: 23 lines
- domains/code.md: 112 lines
- domains/writing.md: 34 lines
## COLD (archive)
- archive/2025.md: 234 lines
- archive/2024.md: 189 lines
Last compaction: 2026-02-01
Next scheduled: 2026-03-01

多项目模式

继承链

global (memory.md)
└── domain (domains/code.md)
└── project (projects/app.md)

覆盖语法

在项目文件中:

## Overrides
- indentation: spaces (overrides global tabs)
- Reason: Project eslint config requires spaces

冲突检测

加载时检查冲突:

  1. 构建继承链
  2. 检测矛盾
  3. 最具体的规则优先
  4. 记录冲突供后续 review

元数据信息

该技能的元数据信息如下:

{
"ownerId": "kn73vp5rarc3b14rc7wjcw8f8580t5d1",
"slug": "self-improving",
"version": "1.2.9",
"publishedAt": 1772713517267
}
以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号