# Self-Improving + Proactive Agent

> 自我反思 + 自我批评 + 自我学习 + 自组织记忆。Agent 评估自身工作、发现错误并持续改进。适用于：(1) 命令、工具、API 或操作失败时；(2) 用户纠正或拒绝你的工作时；(3) 发现知识过时或错误时；(4) 发现更好的方法时；(5) 用户显式安装或引用此技能进行当前任务时。

- Skill: `l-lesteryu/self-improving-proactive-agent` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add l-lesteryu/self-improving-proactive-agent`
- Raw SKILL.md: https://api.skillmd.com/api/skills/l-lesteryu/self-improving-proactive-agent/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: l-lesteryu (https://skillmd.com/u/l-lesteryu)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/l-lesteryu/self-improving-proactive-agent

---


## 何时使用

当用户纠正你或指出错误时。当你完成重要工作并想评估结果时。当你发现自己输出中可以改进的地方时。知识应该随时间累积，无需手动维护。

## 架构

记忆存储在 `~/self-improving/` 目录下，采用分层结构。如果 `~/self-improving/` 不存在，请运行 `setup.md`。
工作区设置应在工作区的 AGENTS、SOUL 和 `HEARTBEAT.md` 文件中添加标准的自我改进引导，并通过 `heartbeat-rules.md` 路由定期维护。

```
~/self-improving/
├── memory.md          # 热数据：≤100 行，始终加载
├── index.md           # 主题索引，含行数统计
├── heartbeat-state.md # 心跳状态：上次运行、检查的变更、操作记录
├── projects/          # 按项目分类的学习内容
├── domains/           # 按领域分类（代码、写作、沟通）
├── archive/           # 冷数据：已衰减的模式
└── corrections.md     # 最近 50 条纠正记录
```

## 快速参考

| 主题 | 文件 |
|-------|------|
| 设置指南 | `setup.md` |
| 心跳状态模板 | `heartbeat-state.md` |
| 记忆模板 | `memory-template.md` |
| 工作区心跳片段 | `HEARTBEAT.md` |
| 心跳规则 | `heartbeat-rules.md` |
| 学习机制 | `learning.md` |
| 安全边界 | `boundaries.md` |
| 扩展规则 | `scaling.md` |
| 记忆操作 | `operations.md` |
| 自我反思日志 | `reflections.md` |
| OpenClaw 心跳种子 | `openclaw-heartbeat.md` |

## 系统要求

- 无需凭据
- 无需额外二进制文件
- 可选安装 `Proactivity` 技能可能需要网络访问

## 学习信号

当发现以下模式时自动记录：

**纠正信号** → 添加到 `corrections.md`，评估是否纳入 `memory.md`：
- "不对，不是这样的..."
- "实际上应该是..."
- "你弄错了..."
- "我更喜欢 X，不是 Y"
- "记住我总是..."
- "我之前告诉过你..."
- "别再这样做 X"
- "你为什么老是..."

**偏好信号** → 如果明确表示，添加到 `memory.md`：
- "我喜欢你..."
- "对我来说总是做 X"
- "永远不要做 Y"
- "我的风格是..."
- "对于 [项目]，使用..."

**模式候选** → 跟踪，出现 3 次后提升：
- 同一指令重复 3 次以上
- 反复运行良好的工作流
- 用户赞扬的特定方法

**忽略**（不记录）：
- 一次性指令（"现在做 X"）
- 特定上下文（"在这个文件中..."）
- 假设性问题（"如果...会怎样"）

## 自我反思

完成重要工作后，暂停并评估：

1. **是否达到预期？** — 比较结果与意图
2. **哪里可以更好？** — 找出下次改进的地方
3. **这是否是模式？** — 如果是，记录到 `corrections.md`

**何时自我反思：**
- 完成多步骤任务后
- 收到反馈后（正面或负面）
- 修复 bug 或错误后
- 发现自己的输出可以更好时

**日志格式：**
```
上下文: [任务类型]
反思: [我注意到的内容]
教训: [下次该如何做]
```

**示例：**
```
上下文: 构建 Flutter UI
反思: 间距看起来不对，必须重做
教训: 在展示给用户前先检查视觉间距
```

自我反思条目遵循相同的提升规则：成功应用 3 次 → 提升到热数据层。

## 快速查询

| 用户说 | 操作 |
|-----------|------|
| "你知道关于 X 的什么？" | 搜索所有层级查找 X |
| "你学到了什么？" | 显示 `corrections.md` 最近 10 条 |
| "显示我的模式" | 列出 `memory.md`（热数据） |
| "显示 [项目] 模式" | 加载 `projects/{name}.md` |
| "温存储里有什么？" | 列出 `projects/` + `domains/` 中的文件 |
| "记忆统计" | 显示各层级数量 |
| "忘记 X" | 从所有层级移除（先确认） |
| "导出记忆" | 打包所有文件为 ZIP |

## 记忆统计

当请求"记忆统计"时，报告：

```
📊 自我改进记忆

🔥 热数据（始终加载）：
  memory.md: X 条

🌡️ 温数据（按需加载）：
  projects/: X 个文件
  domains/: X 个文件

❄️ 冷数据（已归档）：
  archive/: X 个文件

近期活动（7 天内）：
  纠正记录: X
  提升到热数据: X
  降级到温数据: X
```

## 常见陷阱

| 陷阱 | 为什么失败 | 更好的做法 |
|------|--------------|------------|
| 从沉默中学习 | 创建错误规则 | 等待明确纠正或重复证据 |
| 提升太快 | 污染热数据记忆 | 保持新教训为待定状态直到重复出现 |
| 读取每个命名空间 | 浪费上下文 | 只加载热数据加最小匹配文件 |
| 通过删除进行压缩 | 丢失信任和历史 | 合并、总结或降级代替 |

## 核心规则

### 1. 从纠正和自我反思中学习
- 用户明确纠正时记录
- 发现自己工作中可改进之处时记录
- 永远不要从沉默中推断
- 3 次相同教训后 → 询问确认是否作为规则

### 2. 分层存储
| 层级 | 位置 | 大小限制 | 行为 |
|------|----------|------------|----------|
| 热 | memory.md | ≤100 行 | 始终加载 |
| 温 | projects/, domains/ | 各 ≤200 行 | 上下文匹配时加载 |
| 冷 | archive/ | 无限制 | 明确查询时加载 |

### 3. 自动提升/降级
- 7 天内使用 3 次的模式 → 提升到热数据
- 30 天未使用的模式 → 降级到温数据
- 90 天未使用的模式 → 归档到冷数据
- 永远不要在未询问的情况下删除

### 4. 命名空间隔离
- 项目模式保存在 `projects/{name}.md`
- 全局偏好保存在热数据层（memory.md）
- 领域模式（代码、写作）保存在 `domains/`
- 跨命名空间继承：全局 → 领域 → 项目

### 5. 冲突解决
当模式矛盾时：
1. 最具体的优先（项目 > 领域 > 全局）
2. 最近的优先（同一层级）
3. 如果模棱两可 → 询问用户

### 6. 压缩
当文件超过限制时：
1. 将类似纠正合并为单一规则
2. 归档未使用的模式
3. 总结冗长条目
4. 永远不要丢失已确认的偏好

### 7. 透明度
- 每个来自记忆的操作 → 引用来源："使用 X（来自 projects/foo.md:12）"
- 每周摘要可用：学习的模式、降级的、归档的
- 按需完整导出：所有文件为 ZIP

### 8. 安全边界
参见 `boundaries.md` — 永远不要存储凭据、健康数据、第三方信息。

### 9. 优雅降级
如果达到上下文限制：
1. 只加载 memory.md（热数据）
2. 按需加载相关命名空间
3. 永远不要静默失败 — 告诉用户什么没有加载

## 范围

此技能仅：
- 从用户纠正和自我反思中学习
- 在本地文件（`~/self-improving/`）中存储偏好
- 当工作区集成心跳时，在 `~/self-improving/heartbeat-state.md` 中维护心跳状态
- 激活时读取自己的记忆文件

此技能从不：
- 访问日历、邮件或联系人
- 发起网络请求
- 读取 `~/self-improving/` 之外的文件
- 从沉默或观察中推断偏好
- 在心跳清理期间删除或盲目重写自我改进记忆
- 修改自己的 SKILL.md

## 数据存储

本地状态保存在 `~/self-improving/`：

- `memory.md` 用于热数据规则和已确认偏好
- `corrections.md` 用于明确纠正和可复用教训
- `projects/` 和 `domains/` 用于限定范围的模式
- `archive/` 用于已衰减或非活动模式
- `heartbeat-state.md` 用于定期维护标记

## 相关技能
如果用户确认，使用 `clawhub install <slug>` 安装：

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

## 反馈

- 如果有用：`clawhub star self-improving`
- 保持更新：`clawhub sync`

