self-improving-agent
# Self-Improving Agent
让AI从错误中学习,越用越聪明。
## 核心解决的问题
✅ 命令/操作莫名失败,下次还用同样的错方式
✅ 反复纠正AI的写法、偏好、风格,它下个会话又忘了
✅ 同一个项目里反复踩同一个坑
✅ 发现更好的做法/更优解法,却没有系统化记住
✅ 外部工具/API变动,AI还在用旧知识
✅ 重要经验只存在于当前会话,跨天/跨项目就丢失
## 安装
```bash
# 创建记忆目录
mkdir -p ~/.openclaw/memory/self-improving
# 使用本skill
cat ~/.openclaw/skills/self-improving-agent/SKILL.md
```
## 使用方法
### 1. 记录错误(自动)
当命令失败时,自动记录到错误库:
```bash
# 脚本会自动捕获并记录
python3 ~/.openclaw/skills/self-improving-agent/log_error.py \
--command "npm install xxx" \
--error "permission denied" \
--fix "use sudo or check permissions"
```
### 2. 记录用户纠正
当用户说:
- "不对,应该..."
- "错了,要用..."
- "不对,我之前说过..."
自动记录:
```bash
python3 ~/.openclaw/skills/self-improving-agent/log_correction.py \
--topic "代码风格" \
--wrong "用了双引号" \
--correct "项目要求单引号" \
--context "AGENTS.md 第23行"
```
### 3. 记录最佳实践
发现更好的做法时:
```bash
python3 ~/.openclaw/skills/self-improving-agent/log_best_practice.py \
--category "security" \
--practice "安装skill前必须审计代码" \
--reason "防止供应链投毒"
```
### 4. 查看记忆(执行前自动检查)
```bash
# 执行命令前,先检查是否有相关记忆
python3 ~/.openclaw/skills/self-improving-agent/check_memory.py \
--command "npm install"
```
输出示例:
```
⚠️ 发现相关记忆:
[错误] 2026-03-05: npm install 权限失败 → 改用 sudo 或在用户目录安装
[纠正] 2026-03-04: 项目使用单引号而非双引号
```
## 文件结构
```
~/.openclaw/memory/self-improving/
├── errors.jsonl # 错误记录
├── corrections.jsonl # 用户纠正
├── best_practices.jsonl # 最佳实践
├── knowledge_gaps.jsonl # 知识盲区
└── index.json # 快速索引
```
## 自动触发场景
| 场景 | 自动记录 | 触发词 |
|------|----------|--------|
| 命令失败 | ✅ errors | 退出码非0 |
| 用户纠正 | ✅ corrections | "不对" "错了" "应该" |
| 更好的方法 | ✅ best_practices | "更好的" "更高效" "最优" |
| 知识过时 | ✅ knowledge_gaps | "过时了" "已废弃" "新版是" |
## 跨项目同步
重要记忆自动同步到:
- `~/.openclaw/memory/self-improving/` (全局)
- 当前项目 `.learnings/` (项目级)
- `AGENTS.md` (用户偏好)
- `MEMORY.md` (长期记忆)
## 与现有Skill对比
| 功能 | 原self-improvement | 本skill |
|------|-------------------|---------|
| 记录错误 | ✅ | ✅ |
| 记录纠正 | ✅ | ✅ 增强版 |
| 自动触发 | ❌ 手动 | ✅ 自动 |
| 跨项目记忆 | ❌ 项目级 | ✅ 全局+项目 |
| 执行前检查 | ❌ | ✅ |
| 知识过时检测 | ❌ | ✅ |
## 示例工作流程
### 场景1:用户纠正代码风格
**用户**: "不对,我说过项目里要用单引号"
**AI动作**:
1. 自动记录纠正到 `corrections.jsonl`
2. 更新 `AGENTS.md` 添加代码风格规则
3. 回复: "已记录,下次会使用单引号"
### 场景2:命令反复失败
**AI**: 执行 `npm install -g xxx`
**结果**: 权限失败
**AI动作**:
1. 记录错误到 `errors.jsonl`
2. 下次执行前检查记忆
3. 自动改用: `sudo npm install -g xxx` 或本地安装
### 场景3:发现更好做法
**用户**: "其实用 pip install -e . 更高效"
**AI动作**:
1. 记录最佳实践到 `best_practices.jsonl`
2. 后续安装Python包时优先使用 editable 模式
## 注意事项
- 记忆文件定期备份到git
- 敏感信息脱敏后记录
- 定期review并清理过时记忆
---
Created: 2026-03-05 by 老二
标签
skill
ai