openclaw自我提升技能接入保姆级教程

技能.md

自我提升技能

将学习成果和错误记录到 Markdown 文件中,以便持续改进。编码代理随后可以将这些记录处理成修复程序,而重要的学习成果将被提升到项目记忆中。

快速参考

情况 行动
命令/操作失败 记录到.learnings/ERRORS.md
用户纠正了你 .learnings/LEARNINGS.md使用类别登录correction
用户希望获得缺失的功能 记录到.learnings/FEATURE_REQUESTS.md
API/外部工具故障 登录.learnings/ERRORS.md以查看集成详情
知识已经过时了。 .learnings/LEARNINGS.md使用类别登录knowledge_gap
找到了更好的方法 .learnings/LEARNINGS.md使用类别登录best_practice
简化/强化重复模式 日志/更新.learnings/LEARNINGS.mdSource: simplify-and-harden稳定运行Pattern-Key
与现有条目类似 链接**See Also**,考虑优先级提升
广泛适用的学习 晋升至CLAUDE.md、、AGENTS.md和/或.github/copilot-instructions.md
工作流程改进 提升至AGENTS.md(OpenClaw 工作区)
工具陷阱 提升至TOOLS.md(OpenClaw 工作区)
行为模式 提升至SOUL.md(OpenClaw 工作区)

OpenClaw 设置(推荐)

OpenClaw 是该技能的主要平台。它采用基于工作区的提示注入方式,并支持技能自动加载。

安装

通过 ClawdHub(推荐):

clawdhub install self-improving-agent

手动的:

git clone https://github.com/peterskoett/self-improving-agent.git ~/.openclaw/skills/self-improving-agent

基于原仓库ithub.com/pskoett/pskoett-ai-skills- github.com/pskoett/pskoett-ai-skills/tree/main/skills/self-improvement为 OpenClaw 重新制作

工作区结构

OpenClaw 会将这些文件注入到每个会话中:

~/.openclaw/workspace/
├── AGENTS.md          # Multi-agent workflows, delegation patterns
├── SOUL.md            # Behavioral guidelines, personality, principles
├── TOOLS.md           # Tool capabilities, integration gotchas
├── MEMORY.md          # Long-term memory (main session only)
├── memory/            # Daily memory files
│   └── YYYY-MM-DD.md
└── .learnings/        # This skill's log files
    ├── LEARNINGS.md
    ├── ERRORS.md
    └── FEATURE_REQUESTS.md

创建学习文件

mkdir -p ~/.openclaw/workspace/.learnings

然后创建日志文件(或从以下位置复制assets/):

  • LEARNINGS.md— 更正、知识缺口、最佳实践

  • ERRORS.md— 命令失败、异常

  • FEATURE_REQUESTS.md— 用户请求的功能

促销目标

当学习成果被证明具有广泛的适用性时,将其提升到工作区文件中:

学习类型 晋升 例子
行为模式 SOUL.md “言简意赅,避免免责声明”
工作流程改进 AGENTS.md “生成子代理以执行长时间任务”
工具陷阱 TOOLS.md “Git推送需要先配置身份验证”

会间交流

OpenClaw 提供工具,用于在不同会议之间共享学习成果:

  • sessions_list — 查看当前/最近的会话

  • sessions_history — 阅读另一次会议的记录

  • sessions_send — 将学习内容发送到另一个会话

  • sessions_spawn — 生成一个子代理以执行后台任务

可选:启用钩子

为在会话开始时自动提醒:

# Copy hook to OpenClaw hooks directory
cp -r hooks/openclaw ~/.openclaw/hooks/self-improvement

# Enable it
openclaw hooks enable self-improvement

references/openclaw-integration.md详情请见此处。


通用设置(其他代理)

对于 Claude Code、Codex、Copilot 或其他代理,请.learnings/在您的项目中创建:

mkdir -p .learnings

从文件中复制模板assets/或创建带有标题的文件。

添加对代理文件 AGENTS.md、CLAUDE.md 或 .github/copilot-instructions.md 的引用,以提醒自己记录学习心得。(这是基于钩子的提醒的替代方案)

自我提升工作流程

当出现错误或需要更正时:

  1. 登录到.learnings/ERRORS.mdLEARNINGS.mdFEATURE_REQUESTS.md

  2. 回顾并推广具有广泛适用性的知识,以:

    • CLAUDE.md项目事实和惯例

    • AGENTS.md工作流程和自动化

    • .github/copilot-instructions.md副驾驶语境

日志格式

学习入门

添加到.learnings/LEARNINGS.md

## [LRN-YYYYMMDD-XXX] category

**Logged**: ISO-8601 timestamp
**Priority**: low | medium | high | critical
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config

### Summary
One-line description of what was learned

### Details
Full context: what happened, what was wrong, what's correct

### Suggested Action
Specific fix or improvement to make

### Metadata
- Source: conversation | error | user_feedback
- Related Files: path/to/file.ext
- Tags: tag1, tag2
- See Also: LRN-20250110-001 (if related to existing entry)
- Pattern-Key: simplify.dead_code | harden.input_validation (optional, for recurring-pattern tracking)
- Recurrence-Count: 1 (optional)
- First-Seen: 2025-01-15 (optional)
- Last-Seen: 2025-01-15 (optional)

---

错误条目

添加到.learnings/ERRORS.md

## [ERR-YYYYMMDD-XXX] skill_or_command_name

**Logged**: ISO-8601 timestamp
**Priority**: high
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config

### Summary
Brief description of what failed

### Error

实际错误信息或输出


### Context
- Command/operation attempted
- Input or parameters used
- Environment details if relevant

### Suggested Fix
If identifiable, what might resolve this

### Metadata
- Reproducible: yes | no | unknown
- Related Files: path/to/file.ext
- See Also: ERR-20250110-001 (if recurring)

---

功能请求条目

添加到.learnings/FEATURE_REQUESTS.md

## [FEAT-YYYYMMDD-XXX] capability_name

**Logged**: ISO-8601 timestamp
**Priority**: medium
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config

### Requested Capability
What the user wanted to do

### User Context
Why they needed it, what problem they're solving

### Complexity Estimate
simple | medium | complex

### Suggested Implementation
How this could be built, what it might extend

### Metadata
- Frequency: first_time | recurring
- Related Features: existing_feature_name

---

ID生成

格式:TYPE-YYYYMMDD-XXX

  • 类型:(LRN学习),ERR(误差),FEAT(特征)

  • YYYYMMDD:当前日期

  • XXX:连续数字或随机 3 个字符(例如001,,A7B

例如:LRN-20250115-001,,ERR-20250115-A3FFEAT-20250115-002

解析条目

问题解决后,请更新条目:

  1. 更改**Status**: pending**Status**: resolved

  2. 在元数据后添加解析块:

### Resolution
- **Resolved**: 2025-01-16T09:00:00Z
- **Commit/PR**: abc123 or #42
- **Notes**: Brief description of what was done

其他状态值:

  • in_progress- 正在积极开展

  • wont_fix- 决定不予处理(请在决议备注中添加原因)

  • promoted- 已提升至 CLAUDE.md、AGENTS.md 或 .github/copilot-instructions.md

晋升为记忆项目

当学习内容具有广泛适用性(而非一次性解决方案)时,应将其提升为永久项目记忆。

何时晋升

  • 学习适用于多个文件/功能

  • 任何贡献者(人类或人工智能)都应该知道的知识

  • 防止再次出错

  • 文档项目特定约定

促销目标

目标 那里应该放什么?
CLAUDE.md 项目概况、惯例、注意事项,适用于所有与克劳德的互动
AGENTS.md 代理特定的工作流程、工具使用模式、自动化规则
.github/copilot-instructions.md GitHub Copilot 的项目背景和约定
SOUL.md 行为准则、沟通风格、原则(OpenClaw 工作区)
TOOLS.md 工具功能、使用模式、集成注意事项(OpenClaw 工作区)

如何推广

  1. 所学知识提炼成简洁的规则或事实

  2. 添加到目标文件的相应部分(如果需要,请创建文件)

  3. 更新原文:

    • 更改**Status**: pending**Status**: promoted

    • 添加**Promoted**: CLAUDE.mdAGENTS.md.github/copilot-instructions.md

促销示例

学习(详细):

项目使用了 pnpm 工作区。尝试npm install失败。锁定文件为pnpm-lock.yaml。必须使用pnpm install

在 CLAUDE.md(简明版)中:

## Build & Dependencies
- Package manager: pnpm (not npm) - use `pnpm install`

学习(详细):

修改 API 端点时,必须重新生成 TypeScript 客户端。否则,运行时会出现类型不匹配的问题。

在 AGENTS.md(可操作)中:

## After API Changes
1. Regenerate client: `pnpm run generate:api`
2. Check for type errors: `pnpm tsc --noEmit`

重复模式检测

如果要记录与现有条目类似的内容:

  1. 首先搜索grep -r "keyword" .learnings/

  2. 链接条目**See Also**: ERR-20250110-001在元数据中添加

  3. 如果问题反复出现,请提高优先级。

  4. 考虑系统性解决方案:反复出现的问题通常表明:

    • 缺少文档(→ 升级为 CLAUDE.md 或 .github/copilot-instructions.md)

    • 缺少自动化功能(→ 添加到 AGENTS.md)

    • 架构问题(→ 创建技术债务工单)

简化和强化进料

使用此工作流程从技能中提取重复出现的模式simplify-and-harden ,并将其转化为持久的提示指导。

摄取工作流程

  1. 阅读simplify_and_harden.learning_loop.candidates任务概要。

  2. 对于每个候选密钥,使用其pattern_key作为稳定的去重密钥。

  3. 查找.learnings/LEARNINGS.md具有该键的现有条目:

    • grep -n "Pattern-Key: <pattern_key>" .learnings/LEARNINGS.md
  4. 如果找到:

    • 增量Recurrence-Count

    • 更新Last-Seen

    • 添加See Also指向相关条目/任务的链接

  5. 如果未找到:

    • 创建新LRN-...条目

    • Source: simplify-and-harden

    • 设置Pattern-Key,,Recurrence-Count: 1First-Seen/Last-Seen

晋升规则(系统提示反馈)

当所有条件都为真时,将重复出现的模式提升到代理上下文/系统提示文件中:

  • Recurrence-Count >= 3

  • 至少在 2 项不同的任务中观察到

  • 发生在30天期限内

推广目标:

  • CLAUDE.md

  • AGENTS.md

  • .github/copilot-instructions.md

  • SOUL.md/TOOLS.md用于 OpenClaw 工作区级别的指导(如适用)

编写提升规则时,应采用简短的预防规则(编码前/编码时应采取的措施),而不是冗长的事件报告。

定期审查

.learnings/在自然断点处进行回顾:

何时进行复习

  • 在开始一项新的主要任务之前

  • 完成一项功能后

  • 在拥有过往经验的领域工作时

  • 活跃发展期间每周

快速状态检查

# Count pending items
grep -h "Status\*\*: pending" .learnings/*.md | wc -l

# List pending high-priority items
grep -B5 "Priority\*\*: high" .learnings/*.md | grep "^## \["

# Find learnings for a specific area
grep -l "Area\*\*: backend" .learnings/*.md

审查操作

  • 解决固定项目

  • 推广可应用的知识

  • 相关条目链接

  • 将反复出现的问题上报。

检测触发器

自动记录以下情况:

更正(→按类别学习correction):

  • “不,那不对……”

  • “实际上,应该是……”

  • “你错了……”

  • “那已经过时了……”

功能请求(→ 功能请求):

  • “你也能……”

  • “我希望你能……”

  • “有没有办法……”

  • 你为什么不能……

知识差距(→按knowledge_gap类别学习):

  • 用户提供了你不知道的信息

  • 您引用的文档已过时

  • API 的行为与您的理解有所不同。

错误(→ 错误条目):

  • 命令返回非零退出代码

  • 异常或堆栈跟踪

  • 意外的输出或行为

  • 超时或连接失败

优先指南

优先事项 何时使用
critical 阻塞核心功能、数据丢失风险、安全问题
high 影响重大,影响常见工作流程,反复出现的问题
medium 影响中等,有应对方法
low 轻微的不便,特殊情况,锦上添花

区域标签

用于按代码库区域筛选学习内容:

区域 范围
frontend UI、组件、客户端代码
backend API、服务、服务器端代码
infra CI/CD、部署、Docker、云
tests 测试文件、测试工具、覆盖率
docs 文档、注释、README 文件
config 配置文件、环境、设置

最佳实践

  1. 立即记录日志——问题发生后立即记录的上下文信息最准确。

  2. 要具体——未来的代理人需要快速理解。

  3. 提供重现步骤——尤其是对于错误。

  4. 链接相关文件——使修复更容易

  5. 提出具体的解决方案,而不仅仅是“调查”。

  6. 使用一致的类别——便于筛选

  7. 积极推广——如有疑问,请添加到 CLAUDE.md 或 .github/copilot-instructions.md 中。

  8. 定期回顾——过时的知识会失去价值。

忽略选项

将学习成果本地化(每个开发者):

.learnings/

在代码库中跟踪学习成果(团队范围内):不要添加到 .gitignore 中 - 学习成果将成为共享知识。

混合(跟踪模板,忽略条目):

.learnings/*.md
!.learnings/.gitkeep

钩子集成

通过代理钩子启用自动提醒。此功能为可选功能,您必须显式配置钩子。

快速设置(Claude Code / Codex)

.claude/settings.json在您的项目中创建:

{
  "hooks": {
    "UserPromptSubmit": [{
      "matcher": "",
      "hooks": [{
        "type": "command",
        "command": "./skills/self-improvement/scripts/activator.sh"
      }]
    }]
  }
}

这会在每个提示后注入一个学习评估提醒(大约 50-100 个令牌开销)。

完整设置(含错误检测)

{
  "hooks": {
    "UserPromptSubmit": [{
      "matcher": "",
      "hooks": [{
        "type": "command",
        "command": "./skills/self-improvement/scripts/activator.sh"
      }]
    }],
    "PostToolUse": [{
      "matcher": "Bash",
      "hooks": [{
        "type": "command",
        "command": "./skills/self-improvement/scripts/error-detector.sh"
      }]
    }]
  }
}

可用的钩子脚本

脚本 钩型 目的
scripts/activator.sh 用户提示提交 提醒在任务完成后评估学习成果
scripts/error-detector.sh PostToolUse(Bash) 因命令错误而触发

请参阅references/hooks-setup.md详细配置和故障排除信息。

自动技能提取

当学习内容足够有价值,可以成为可重用的技能时,使用提供的辅助函数将其提取出来。

技能提取标准

当符合以下任何一项条件时,学习成果即可提取技能:

标准 描述
再次发生的 链接See Also到 2 个以上类似问题
已验证 状态:resolved修复工作已完成
不明显的 需要进行实际调试/调查才能发现
适用范围广 不局限于特定项目;适用于多个代码库。
用户标记 用户说“将此保存为技能”或类似内容

提取工作流程

  1. 识别候选对象:学习符合提取标准

  2. 运行辅助程序(或手动创建):

    ./skills/self-improvement/scripts/extract-skill.sh skill-name --dry-run
    ./skills/self-improvement/scripts/extract-skill.sh skill-name
    
    
  3. 自定义 SKILL.md:填写包含学习内容的模板

  4. 更新学习:将状态设置为promoted_to_skill,添加Skill-Path

  5. 验证:在新会话中阅读技能,确保其内容完整独立。

手工提取

如果您更喜欢手动创建:

  1. 创造skills/<skill-name>/SKILL.md

  2. 使用模板assets/SKILL-TEMPLATE.md

  3. 遵循特工技能规范

    • YAML frontmatter 包含namedescription

    • 名称必须与文件夹名称匹配

    • 技能文件夹中没有 README.md 文件

提取检测触发器

注意观察以下信号,表明学习应该转化为一项技能:

对话中:

  • “将此技能保存下来”

  • “我总是遇到这种情况”

  • “这对其他项目也很有用。”

  • 记住这个模式

学习条目:

  • 多个See Also链接(反复出现的问题)

  • 高优先级 + 已解决状态

  • 类别:best_practice适用范围广泛

  • 用户反馈称赞该解决方案

技能质量门槛

提取前,请核实:

  • 解决方案已测试并运行正常。

  • 即使没有原文,描述也很清晰。

  • 代码示例是独立的。

  • 没有项目特定的硬编码值

  • 遵循技能命名规则(小写,连字符)

多智能体支持

该技能适用于不同的AI编码代理,并可针对特定代理进行激活。

克劳德·科德

激活方式:钩子(UserPromptSubmit、PostToolUse) 设置方式.claude/settings.json通过钩子配置 检测方式:通过钩子脚本自动检测

Codex CLI

激活方式:钩子(与 Claude Code 模式相同) 设置方式.codex/settings.json通过钩子配置 检测方式:通过钩子脚本自动检测

GitHub Copilot

激活方式:手动(不支持挂钩) 设置方式:添加到.github/copilot-instructions.md

## Self-Improvement

After solving non-obvious issues, consider logging to `.learnings/`:
1. Use format from self-improvement skill
2. Link related entries with See Also
3. Promote high-value learnings to skills

Ask in chat: "Should I log this as a learning?"

检测方法:会话结束时进行人工审核

OpenClaw

激活:工作区注入 + 代理间消息传递 ;设置:参见上文“OpenClaw 设置”部分; 检测:通过会话工具和工作区文件。

与代理无关的指导

无论你使用什么工具,在以下情况下都要进行自我提升:

  1. 发现了一些不为人知的秘密——解决方案并非立竿见影。

  2. 更正一下——最初的方法错了。

  3. 学习项目规范——发现未记录的模式

  4. 遭遇意外错误——尤其是在诊断困难的情况下。

  5. 寻找更好的方法——改进你原来的解决方案

Copilot聊天集成

对于 Copilot 用户,请在相关情况下将以下内容添加到您的提示中:

.learnings/完成此任务后,评估是否应该使用自我提升技能格式记录任何学习成果。

或者使用快速提示:

  • “将此记录到学习中”

  • “利用这个解决方案创造一项技能”

  • “请查看 .learnings/ 目录以了解相关问题”

self-improving-agent-3.0.5.zip (23.7 KB)

6 个赞

自我提升技能太牛了

1 个赞

AI能自己学习进步

错误日志自动记录很实用

1 个赞

持续改进这个理念好

装上试试效果

1 个赞

学习成果能沉淀不错

2 个赞

自我提升技能太牛了

教程步骤很详细

自我提升功能测了一下,效果一般

本质是让AI修改自己的prompt

自我提升技能接入挺简单的

保姆级教程赞一个

这个Skill日常用得上

这个skill的效果稳定吗?怕装了之后出问题

buildx跨平台构建一步到位