[OpenClaw][Skills]Self-Improving-with-Reflection 的技能分析

Self-Improving with Reflection - 技术分析文档

概述

self-improving-with-reflection 是一个零依赖的自改进 Agent 技能,通过本地文件系统实现持久化记忆和自我反思机制。该技能允许 Agent 从用户修正和自身反思中学习,持续优化执行质量。

版本 : 1.2.11
核心特性: 零依赖、分层记忆、自动学习、自我反思


架构设计

1. 三层记忆架构

复制代码
./self-improving/
├── memory.md          # HOT Tier: ≤100 行,启动时始终加载
├── index.md           # 记忆索引,记录各文件状态
├── corrections.md     # 修正日志,记录最近 50 次修正
├── projects/          # WARM Tier: 项目特定知识
├── domains/           # WARM Tier: 领域特定知识
└── archive/           # COLD Tier: 归档的旧知识
HOT Tier (memory.md)
  • 容量限制: ≤100 行
  • 加载策略: 每次启动自动加载
  • 内容类型: 已确认的偏好、活跃模式、近期修正
  • 更新频率: 高(每次修正后)
WARM Tier (projects/, domains/)
  • 容量限制: ≤200 行/文件
  • 加载策略: 按需加载(上下文匹配时)
  • 内容类型: 领域知识、项目规则
  • 更新频率: 中(模式确认 3 次后)
COLD Tier (archive/)
  • 容量限制: 无限制
  • 加载策略: 显式查询时加载
  • 内容类型: 过时模式、历史修正
  • 更新频率: 低(90 天未用自动归档)

2. 命名空间继承机制

复制代码
global (memory.md)
    ↓
domain (domains/*.md)
    ↓
project (projects/*.md)

优先级规则:

  1. 最具体命名空间优先 (project > domain > global)
  2. 同级别时最近修改优先
  3. 冲突时向用户确认

核心机制

1. 修正检测 (Correction Detection)

触发信号:

regex 复制代码
"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..."

处理流程:

  1. 检测到修正信号 → 记录到 corrections.md
  2. 评估是否为可复用模式
  3. 3 次相同模式 → 确认并提升到 HOT
  4. 写入对应命名空间文件

2. 自我反思 (Self-Reflection)

触发时机:

  • 完成多步骤任务后
  • 收到反馈(正面或负面)
  • 修复 bug 或错误后
  • 发现输出可优化时

反思模板:

markdown 复制代码
CONTEXT: [任务类型]
REFLECTION: [观察到的问题]
LESSON: [下次改进方法]

示例:

markdown 复制代码
CONTEXT: Building Flutter UI
REFLECTION: Spacing looked off, had to redo
LESSON: Check visual spacing before showing user

3. 生命周期管理

状态 触发条件 操作
HOT 确认 3 次 + 7 天内重复使用 始终加载
WARM 30 天未使用 按需加载
COLD 90 天未使用 归档

自动维护:

  • 每周压缩:合并相似修正、总结冗长条目
  • 自动归档:检测未使用模式
  • 索引更新:维护 index.md

实现细节

1. 文件存储格式

memory.md 结构
markdown 复制代码
# Self-Improving Memory

## Confirmed Preferences
<!-- 用户确认的偏好,永不衰减 -->

## Active Patterns
<!-- 观察 3+ 次的模式,可能衰减 -->

## Recent (last 7 days)
<!-- 待确认的新修正 -->
corrections.md 结构
markdown 复制代码
# Corrections Log

## YYYY-MM-DD
- [HH:MM] Changed X → Y
  Type: format|technical|communication|project
  Context: 修正发生的位置
  Confirmed: pending (N/3) | yes | no
index.md 结构
markdown 复制代码
# Memory Index

## HOT
- memory.md: X lines

## WARM
- projects/: X files
- domains/: X files

## COLD
- archive/: X files

Last compaction: YYYY-MM-DD

2. 记忆统计 (Memory Stats)

命令 : memory stats
输出格式:

复制代码
📊 Self-Improving Memory

🔥 HOT (always loaded):
   memory.md: X entries

🌡️ WARM (load on demand):
   projects/: X files
   domains/: X files

❄️ COLD (archived):
   archive/: X files

⚙️ Mode: Passive

3. 快速查询 (Quick Queries)

用户指令 执行操作
"What do you know about X?" 搜索所有层级
"What have you learned?" 显示 corrections.md 最近 10 条
"Show my patterns" 显示 memory.md (HOT)
"Show [project] patterns" 加载 projects/{name}.md
"What's in warm storage?" 列出 projects/ + domains/
"Memory stats" 显示各层级统计
"Forget X" 从所有层级删除 X(需确认)
"Export memory" ZIP 所有文件

集成指南

1. SOUL.md 集成

SOUL.md 中添加:

markdown 复制代码
## Self-Improving

Compounding execution quality is part of the job.

Before non-trivial work, load `./self-improving/memory.md` and only the smallest relevant domain or project files.

After corrections, failed attempts, or reusable lessons, write one concise entry to the correct self-improving file immediately.

Prefer learned rules when relevant, but keep self-inferred rules revisable.

Do not skip retrieval just because the task feels familiar.

2. AGENTS.md 集成

AGENTS.md## Memory 部分添加:

markdown 复制代码
- **Self-improving:** `./self-improving/` (via `self-improving` skill) --- execution-improvement memory (preferences, workflows, style patterns, what improved/worsened outcomes)

Use `memory/YYYY-MM-DD.md` and `MEMORY.md` for factual continuity (events, context, decisions).
Use `./self-improving/` for compounding execution quality across tasks.

### 📝 Write It Down 部分添加:

markdown 复制代码
- 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/`
- Explicit user correction → append to `./self-improving/corrections.md` immediately
- Reusable global rule or preference → append to `./self-improving/memory.md`
- Domain-specific lesson → append to `./self-improving/domains/<domain>.md`
- Project-only override → append to `./self-improving/projects/<project>.md`

3. HEARTBEAT.md 集成

HEARTBEAT.md 中添加:

markdown 复制代码
## Self-Improving Check

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

安全边界

禁止存储的内容

  • 🔒 凭证和 API 密钥
  • 🔒 财务信息
  • 🔒 医疗数据
  • 🔒 第三方个人信息
  • 🔒 位置模式

透明性要求

  • 每项记忆标注来源
  • 支持审计和导出
  • Kill Switch: forget everything 完整清除

与竞品对比

特性 self-improving-with-reflection openclaw-memory
依赖 零依赖(纯文件系统) 可能有外部依赖
架构 三层记忆(HOT/WARM/COLD) 架构不清晰
学习 显式修正 + 自我反思 仅显式修正
透明性 人类可读 Markdown 可能二进制格式
可维护性 手动编辑 + 自动维护 依赖工具
命名空间 global → domain → project 单一命名空间

实际使用建议

1. 启动流程

bash 复制代码
# 1. 检查目录结构
ls -la ./self-improving/

# 2. 查看记忆索引
cat ./self-improving/index.md

# 3. 加载 HOT 记忆
cat ./self-improving/memory.md

# 4. 列出可用文件
for d in ./self-improving/domains ./self-improving/projects; do
  [ -d "$d" ] && find "$d" -maxdepth 1 -type f -name "*.md"
done | sort

2. 工作流

非 trivial 任务前:

  1. 读取 memory.md
  2. 列出相关领域/项目文件
  3. 读取最多 3 个匹配文件
  4. 执行任务
  5. 记录修正到 corrections.md
  6. 评估是否提升到 HOT

收到修正后:

  1. 立即记录到 corrections.md
  2. 判断是否为可复用模式
  3. 3 次确认后提升到 HOT
  4. 更新 index.md

定期维护:

  1. 检查 memory.md 行数(≤100)
  2. 合并相似修正
  3. 归档 90 天未用模式
  4. 压缩冗余条目

技术优势

1. 零依赖架构

  • 无需数据库
  • 无需网络请求
  • 无需外部运行时
  • 纯 Markdown 文件,人类可读可编辑

2. 分层记忆

  • HOT: 启动时始终加载(≤100 行)
  • WARM: 按需加载(≤200 行/文件)
  • COLD: 显式查询加载(无限制)

3. 自动维护

  • 每周压缩
  • 自动归档
  • 索引更新
  • 生命周期管理

4. 高透明性

  • 每项数据标注来源
  • 支持审计和导出
  • 人类可编辑
  • Kill Switch 完整清除

扩展方向

1. 相关技能

  • memory - Agent 长期记忆模式
  • learning - 自适应教学和解释
  • decide - 自动学习决策模式
  • escalate - 何时询问 vs 自主行动

2. 未来改进

  • 支持更多文件格式(JSON, YAML)
  • 增量更新机制
  • 冲突解决自动化
  • 记忆推荐系统

总结

self-improving-with-reflection 通过零依赖的分层记忆架构,实现了 Agent 的持续自我改进。其核心优势在于:

  1. 零依赖: 纯文件系统,无需外部组件
  2. 分层记忆: HOT/WARM/COLD 三级架构
  3. 自动学习: 显式修正 + 自我反思
  4. 高透明: 人类可读,支持审计
  5. 生命周期管理: 自动归档和压缩

该技能适合需要长期记忆和自我改进的 Agent 系统,特别适用于个人助手、开发辅助等场景。


文档版本 : 1.0
最后更新 : 2026-04-26
维护者: TeddyBear

相关推荐
jinanwuhuaguo5 小时前
生态融合与基座成型——OpenClaw v2026.4.24 的功能完备性跃迁与基础设施化拐点(第七篇)
人工智能·安全·架构·kotlin·openclaw
无心水5 小时前
【Hermes:安装部署】11、Docker 部署 Hermes:干净隔离、数据持久化完整教程 —— 从零搭建你的专属智能体服务
人工智能·openclaw·养龙虾·hermes agent·hermes·本地智能体·养马
好运的阿财5 小时前
OpenClaw工具拆解之 image+pdf
人工智能·python·程序人生·pdf·ai编程·openclaw·openclaw工具
搬砖魁首6 小时前
基础能力系列 - 如何安全养虾? - 容器化部署龙虾
docker·qwen·openclaw·龙虾
AC赳赳老秦18 小时前
OpenClaw进阶技巧:批量修改文件内容、替换关键词,解放双手
java·linux·人工智能·python·算法·测试用例·openclaw
AC赳赳老秦20 小时前
OpenClaw权限管理实操:团队共享Agent,设置操作权限,保障数据安全
服务器·开发语言·前端·javascript·excel·deepseek·openclaw
想ai抽21 小时前
Harness模式下的Agent记忆架构设计剖析:原理、权衡与场景适配(openclaw设计原理)
agent·openclaw·harness
Swift社区1 天前
并行容错:OpenClaw的多智能体协作革命
人工智能·agent·openclaw
好运的阿财1 天前
OpenClaw工具拆解之 web_fetch+image_generate
前端·python·机器学习·ai·ai编程·openclaw·openclaw工具