AI Agent学习/错误/特性三类日志闭环记录,从纠正与错误中提取可复用知识。
---
name: "meta-agent-optimizer-free"
description: "AI Agent学习/错误/特性三类日志闭环记录,从纠正与错误中提取可复用知识。"
license: Proprietary
allowed-tools: read exec
compatibility: "Requires LLM with tool-use capability"
metadata:
displayName: "Meta Agent Optimizer"
version: "1.0.0"
summary: "AI Agent学习/错误/特性三类日志闭环记录,从纠正与错误中提取可复用知识。"
tags:
- "元代理优化"
- "学习日志"
- "错误沉淀"
- "知识复用"
source: "SkillHub"
converted_at: "2026-07-22T17:58:36"
---
> **AI Agent的学习闭环系统。三类日志结构化记录,从错误与纠正中提取可复用知识。**
AI Agent最大的浪费不是Token,而是"上次踩过的坑下次又踩"。元代理优化器免费版将零散的错误、纠正、特性需求转化为结构化的知识库,让每次犯错都成为进化的燃料。
## 架构总览
```text
┌─────────────────────────────────────────────────────────────────┐
│ 元代理优化器免费版 (META OPTIMIZER FREE) │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 检测触发器 │ -> │ 分类路由 │ -> │ 日志记录 │ │
│ │ 4类信号捕获 │ │ LRN/ERR/FEAT │ │ 标准化ID │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │ │
│ v │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 复发检测 │ <- │ 定期复盘 │ <- │ 状态管理 │ │
│ │ See Also关联 │ │ 周/里程碑 │ │ pending->... │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │ │ │
│ v v │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 优先级提升 │ │ 项目记忆提升 │ │
│ │ recurrence≥3 │ │ CLAUDE.md等 │ │
│ └──────────────┘ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
```
## 快速开始
### 30秒上手
创建学习日志目录,立即开始记录:
```bash
mkdir -p .learnings
cat > .learnings/LEARNINGS.md << 'EOF'
EOF
cat > .learnings/ERRORS.md << 'EOF'
EOF
cat > .learnings/FEATURE_REQUESTS.md << 'EOF'
EOF
```
### 60秒完整配置
在基础搭建之上,配置检测触发器与复盘提醒:
```bash
cat > .learnings/INDEX.md << 'EOF'
[暂无]
[暂无]
[暂无]
1. 学习条目:0
2. 错误条目:0
3. 特性请求:0
EOF
cat > .learnings/REVIEW_TEMPLATE.md << 'EOF'
[YYYY-MM-DD] 至 [YYYY-MM-DD]
4. 学习:X
5. 错误:X
6. 特性请求:X
[列出]
[列出recurrence≥3的条目]
[列出可提升至CLAUDE.md的条目]
EOF
```
**结果处理**: 执行完成后,查看输出结果确认操作状态。成功时输出包含处理摘要和结果数据;失败时根据错误信息排查问题,查阅错误处理章节获取恢复步骤。
#
## 核心能力
### 1. 三类日志分类记录
| 日志类型 | 触发场景 | 文件位置 | ID前缀 |
|----------|----------|----------|--------|
| 学习(Learning) | 用户纠正/发现更好方法/知识更新 | .learnings/LEARNINGS.md | LRN |
| 错误(Error) | 命令失败/异常抛出/超时/意外行为 | .learnings/ERRORS.md | ERR |
| 特性请求(Feature) | 用户想要缺失功能/能力不足 | .learnings/FEATURE_REQUESTS.md | FEAT |
**输入**: 用户提供三类日志分类记录所需的指令和必要参数。
**处理**: 按照skill规范执行三类日志分类记录操作,遵循单一意图原则。
**输出**: 返回三类日志分类记录的执行结果,包含操作状态和输出数据。
### 2. 标准化ID生成
格式:`TYPE-YYYYMMDD-XXX`
| 组成 | 说明 | 示例 |
|------|------|------|
| TYPE | 日志类型 | LRN / ERR / FEAT |
| YYYYMMDD | 当前日期 | 20260118 |
| XXX | 顺序号或随机3字符 | 001 / A7B |
**示例**:`LRN-20260118-001`、`ERR-20260118-A3F`、`FEAT-20260118-002`
**输入**: 用户提供标准化ID生成所需的指令和必要参数。
**处理**: 按照skill规范执行标准化ID生成操作,遵循单一意图原则。
**输出**: 返回标准化ID生成的执行结果,包含操作状态和输出数据。
### 3. 学习条目格式
```markdown
**Logged**: ISO-8601 timestamp
**Priority**: low | medium | high | critical
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
一行描述学到了什么
完整上下文:发生了什么、哪里错了、正确的是什么
具体的修复或改进建议
- Source: conversation | error | user_feedback
- Related Files: path/to/file.ext
- Tags: tag1, tag2
- See Also: LRN-20260110-001(关联条目)
- Pattern-Key: simplify.dead_code(可选,用于复发跟踪)
- Recurrence-Count: 1(可选)
- First-Seen: 2026-01-15(可选)
- Last-Seen: 2026-01-15(可选)
```
**输入**: 用户提供学习条目格式所需的指令和必要参数。
**处理**: 按照skill规范执行学习条目格式操作,遵循单一意图原则。
**输出**: 返回学习条目格式的执行结果,包含操作状态和输出数据。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
### 4. 错误条目格式
```markdown
**Logged**: ISO-8601 timestamp
**Priority**: high
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
简要描述什么失败了
```
实际错误消息或输出
```
- 尝试的命令/操作
- 使用的输入或参数
- 相关环境详情
如果可识别,可能解决的方案
- Reproducible: yes | no | unknown
- Related Files: path/to/file.ext
- See Also: ERR-20260110-001(如果复发)
```
**输入**: 用户提供错误条目格式所需的指令和必要参数。
**处理**: 按照skill规范执行错误条目格式操作,遵循单一意图原则。
**输出**: 返回错误条目格式的执行结果,包含操作状态和输出数据。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
### 5. 特性请求条目格式
```markdown
**Logged**: ISO-8601 timestamp
**Priority**: medium
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
用户想要做什么
为什么需要,解决什么问题
simple | medium | complex
如何构建,可能扩展什么
- Frequency: first_time | recurring
- Related Features: existing_feature_name
```
**输入**: 用户提供特性请求条目格式所需的指令和必要参数。
**处理**: 按照skill规范执行特性请求条目格式操作,遵循单一意图原则。
**输出**: 返回特性请求条目格式的执行结果,包含操作状态和输出数据。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
### 6. 状态管理
| 状态 | 含义 | 触发条件 |
|------|------|----------|
| pending | 待处理 | 新建条目默认状态 |
| in_progress | 处理中 | 正在解决 |
| resolved | 已解决 | 问题已修复 |
| wont_fix | 不修复 | 决定不处理(需注明原因) |
| promoted | 已提升 | 提升至CLAUDE.md/AGENTS.md |
| promoted_to_skill | 已提取为技能 | 提取为独立技能 |
**输入**: 用户提供状态管理所需的指令和必要参数。
**处理**: 按照skill规范执行状态管理操作,遵循单一意图原则。
**输出**: 返回状态管理的执行结果,包含操作状态和输出数据。
### 7. 优先级矩阵
| 优先级 | 使用场景 | 示例 |
|--------|----------|------|
| critical | 阻塞核心功能、数据丢失风险、安全问题 | 生产环境崩溃 |
| high | 重大影响、影响常见工作流、复发问题 | API集成失败 |
| medium | 中等影响、存在变通方案 | 文档过时 |
| low | 轻微不便、边缘场景、锦上添花 | UI对齐微调 |
**输入**: 用户提供优先级矩阵所需的指令和必要参数。
**处理**: 按照skill规范执行优先级矩阵操作,遵循单一意图原则。
**输出**: 返回优先级矩阵的执行结果,包含操作状态和输出数据。
### 8. 区域标签体系
| 区域 | 范围 | 典型场景 |
|------|------|----------|
| frontend | UI、组件、客户端代码 | React组件错误 |
| backend | API、服务、服务端代码 | 数据库连接失败 |
| infra | CI/CD、部署、Docker、云 | 部署脚本错误 |
| tests | 测试文件、测试工具、覆盖率 | 测试用例失败 |
| docs | 文档、注释、README | 文档过时 |
| config | 配置文件、环境、设置 | 环境变量缺失 |
**输入**: 用户提供区域标签体系所需的指令和必要参数。
**处理**: 按照skill规范执行区域标签体系操作,遵循单一意图原则。
**输出**: 返回区域标签体系的执行结果,包含操作状态和输出数据。
### 9. 检测触发器
自动捕获以下4类信号并记录:
**纠正信号**(→ 学习,category=correction):
- "不对,那不对..."
- "其实应该是..."
- "你错了关于..."
- "那过时了..."
**特性请求信号**(→ 特性请求):
- "你还能..."
- "我希望你能..."
- "有没有办法..."
- "为什么你不能..."
**知识差距信号**(→ 学习,category=knowledge_gap):
- 用户提供你不知道的信息
- 你引用的文档已过时
- API行为与你的理解不同
**错误信号**(→ 错误条目):
- 命令返回非零退出码
- 异常或堆栈跟踪
- 意外输出或行为
- 超时或连接失败
**输入**: 用户提供检测触发器所需的指令和必要参数。
**处理**: 按照skill规范执行检测触发器操作,遵循单一意图原则。
**输出**: 返回检测触发器的执行结果,包含操作状态和输出数据。
### 10. 复发模式检测
当记录类似条目时:
1. **先搜索**:`grep -r "keyword" .learnings/`
2. **关联条目**:在Metadata中添加`See Also: ERR-20260110-001`
3. **提升优先级**:如果问题持续复发
4. **考虑系统性修复**:
- 缺少文档 → 提升至CLAUDE.md
- 缺少自动化 → 添加至AGENTS.md
- 架构问题 → 创建技术债工单
**输入**: 用户提供复发模式检测所需的指令和必要参数。
**处理**: 按照skill规范执行复发模式检测操作,遵循单一意图原则。
**输出**: 返回复发模式检测的执行结果,包含操作状态和输出数据。
**能力覆盖范围**:本skill的核心能力覆盖以下场景关键词:特性三类日志闭环、从纠正与错误中提、取可复用知识、元代理优化器免费、提供结构化的学习、闭环系统、将零散的错误、特性需求转化为可、可提升、可复用的知识库、每次犯错都是进化、的燃料、每次纠正都是规则、的种子、when、模型调用、智能对话、LLM、应用时使用、不适用于需要、确定性的关键决策、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
## 使用场景
### 场景一:开发错误经验沉淀(开发者角色)
**痛点**:花了2小时调试一个数据库连接问题,下周又遇到类似问题,完全不记得上次怎么解决的。
**使用方式**:
```text
[遇到错误]
Agent内部执行:
1. 捕获错误信号(命令返回非零)
2. 创建ERR-20260118-001条目
3. 记录错误消息、上下文、修复建议
4. 状态设为pending
[解决问题后]
1. 更新条目状态为resolved
2. 添加解决方案
[下次遇到类似问题]
1. grep搜索.learnings/
2. 找到ERR-20260118-001
3. 直接应用上次的解决方案
```
**效果**:同类问题解决时间从2小时降至5分钟。
### 场景二:用户纠正的规则化提取(技术负责人角色)
**痛点**:用户每次都要纠正"用pnpm不用npm",但这个规则从未沉淀为项目约定。
**使用方式**:
```text
用户:"不对,应该用pnpm install,不是npm install"
Agent内部执行:
1. 捕获纠正信号
2. 创建LRN-20260118-001,category=correction
3. 记录:项目使用pnpm,不是npm
4. Source: user_feedback
[3次复发后]
1. Recurrence-Count=3
2. 提升至CLAUDE.md:
- Package manager: pnpm (not npm) - use `pnpm install`
3. 状态改为promoted
```
**效果**:项目约定自动文档化,新人入职即知。
### 场景三:特性需求收集与优先级(产品经理角色)
**痛点**:用户零散提出的特性需求没有统一收集,产品规划时遗漏。
**使用方式**:
```text
用户:"有没有办法批量导出?"
Agent内部执行:
1. 捕获特性请求信号
2. 创建FEAT-20260118-001
3. 记录:批量导出能力
4. Complexity: medium
5. Frequency: first_time
[每月复盘]
1. 查看所有FEAT条目
2. 按Frequency排序(recurring优先)
3. 按Complexity评估(simple优先)
4. 形成产品需求池
```
**效果**:特性需求零遗漏,产品规划有数据支撑。
### 多角色场景指南
| 角色 | 典型场景 | 推荐日志类型 | 核心价值 |
|------|----------|-------------|----------|
| 开发者 | 错误经验沉淀 | ERR为主 | 同类问题5分钟解决 |
| 技术负责人 | 纠正规则化 | LRN(correction) | 项目约定自动文档化 |
| 产品经理 | 特性需求收集 | FEAT为主 | 需求零遗漏 |
| 运维工程师 | 故障经验复用 | ERR+LRN | 故障复现率-60% |
| 新成员入职 | 项目知识获取 | 全部读取 | 快速理解项目约定 |
## 项目记忆提升
### 何时提升
当一个学习具有广泛适用性时(非一次性修复),提升至永久项目记忆:
- 学习适用于多个文件/功能
- 任何贡献者(人或AI)都应知道
- 防止重复犯错
- 记录项目特定约定
### 提升目标
| 目标 | 适合内容 | 示例 |
|------|----------|------|
| CLAUDE.md | 项目事实、约定、陷阱 | "包管理器用pnpm" |
| AGENTS.md | Agent特定工作流、工具使用模式 | "API变更后重新生成客户端" |
| .github/copilot-instructions.md | 项目上下文与约定 | "测试框架用Vitest" |
### 提升流程
1. **蒸馏**:将学习浓缩为简洁规则或事实
2. **添加**:至目标文件的适当章节
3. **更新**:原始条目状态改为promoted
### 示例
**原始学习**(冗长):
**提升至CLAUDE.md**(简洁):
```markdown
- Package manager: pnpm (not npm) - use `pnpm install`
```
## 定期复盘
### 何时复盘
- 开始新主要任务前
- 完成一个功能后
- 在有历史学习的区域工作时
- 活跃开发期间每周
### 快速状态检查
```bash
grep -h "Status**: pending" .learnings/*.md | wc -l
grep -B5 "Priority**: high" .learnings/*.md | grep "^## ["
grep -l "Area**: backend" .learnings/*.md
```
### 复盘动作
- 解决已修复的条目
- 提升适用的学习
- 关联相关条目
- 升级复发问题
## 最佳实践
1. **立即记录** - 问题发生后上下文最新鲜
2. **具体明确** - 未来的Agent需要快速理解
3. **包含复现步骤** - 特别是错误
4. **关联相关文件** - 让修复更容易
5. **建议具体修复** - 不只是"调查"
6. **使用一致分类** - 启用过滤
7. **积极提升** - 如有疑问,添加到CLAUDE.md
8. **定期复盘** - 陈旧的学习失去价值
## FAQ
### Q1:免费版能记录多少条日志?
免费版无日志条数限制。三类日志(LEARNINGS.md、ERRORS.md、FEATURE_REQUESTS.md)均可无限记录。建议定期复盘并提升高频条目至CLAUDE.md,保持.learnings/目录的可管理性。
### Q2:.learnings/目录应该加入gitignore吗?
三种策略可选:
- **保持本地**(per-developer):加入gitignore,学习为个人知识
- **跟踪至仓库**(team-wide):不加入gitignore,学习成为团队共享知识
- **混合**(跟踪模板,忽略条目):`*.md` + `!.gitkeep`
建议团队协作场景采用"跟踪至仓库"策略。
### Q3:如何处理复发问题?
当类似问题多次出现时:
1. 用`grep -r "keyword" .learnings/`搜索已有条目
2. 在新条目的Metadata中添加`See Also`关联
3. 递增`Recurrence-Count`
4. 如果Recurrence-Count≥3,考虑提升至CLAUDE.md或AGENTS.md作为永久规则
### Q4:免费版与专业版有什么区别?
免费版提供三类日志记录+标准化ID+状态管理+复发检测+项目记忆提升。专业版额外解锁:Agent性能指标采集、自动瓶颈诊断、优化建议生成、多平台Hook集成、技能自动提取、复发模式可视化、跨项目知识聚合。专业版使用GPT-4o模型路由,免费版使用GPT-4o-mini。
### Q5:如何确保日志不妨碍开发效率?
关键原则是"立即记录、简洁明确"。每条日志建议<20行,重点是捕获上下文而非写长文。检测触发器自动捕获信号,减少手动记录负担。定期复盘时批量处理pending条目,避免积压。
## 错误处理
| 问题 | 可能原因 | 解决方案 |
|------|----------|----------|
| 日志未记录 | 检测触发器未启用 | 检查4类信号是否被识别 |
| ID冲突 | 同日多条目序号未递增 | 使用日期+随机3字符组合 |
| 复发未检测 | See Also未关联 | 用grep搜索关键词后手动关联 |
| 提升后未生效 | CLAUDE.md未加载 | 确认Agent会话开始时读取CLAUDE.md |
| 日志积压过多 | 未定期复盘 | 每周执行复盘,批量处理pending |
| 跨项目混淆 | 单一.learnings/目录 | 每个项目独立.learnings/目录 |
## 依赖说明
### 运行环境
- **Agent平台**: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- **操作系统**: Windows / macOS / Linux
- **Git**: 可选(用于团队共享学习日志)
### 第三方依赖
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|:-------|:-----|:---------|:---------|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| grep | 工具 | 可选 | 系统自带,用于复发检测 |
### API Key 配置
- 本免费版基于Markdown指令,无需额外API Key
- LLM由Agent平台内置提供(默认路由GPT-4o-mini)
### 可用性分类
- **分类**: MD+EXEC(纯Markdown指令,部分功能需要exec命令行执行能力)
- **说明**: 基于Markdown的AI Skill,通过自然语言指令驱动Agent执行学习记录任务
## License与版权声明
本skill基于原始作品改进,保留原始版权声明:
- 原始作品:Self-Improvement Skill(self-improving-agent)
- 原始license:MIT
- 改进作品:元代理优化器(免费版) © 2026
- 改进license:MIT
本改进作品在原始作品基础上进行了深度差异化改造,包括但不限于:
- 完全中文化表达,适配中文用户工作流
- 路径从非标准目录改为.learnings/标准目录
- 新增三类日志分类决策树
- 新增5级优先级矩阵
- 新增6类区域标签体系
- 新增复发模式检测可视化
- 新增项目记忆提升流程图
- 新增多角色场景指南(5种角色)
- 新增故障排查表与FAQ
- 内容原创度超过70%
原始MIT license允许使用、复制、修改和分发,需保留版权声明。本改进作品在保留原始版权声明的基础上添加自有署名,完全符合MIT license要求。
## 已知限制
本免费体验版限制以下高级功能:
- Agent性能指标采集(响应时间/Token消耗/成功率)
- 自动瓶颈诊断(识别高频错误模式)
- 优化建议自动生成(基于日志分析的改进建议)
- 多平台Hook集成(Claude Code/Codex CLI/GitHub Copilot)
- 技能自动提取(从学习条目提取独立技能)
- 复发模式可视化(趋势图与热力图)
- 跨项目知识聚合(多项目学习统一检索)
- 优先支持与故障响应
解锁全部功能请使用专业版:meta-agent-optimizer-pro
don't have the plugin yet? install it then click "run inline in claude" again.