引言:打开技能的'黑盒'
你是否好奇过,OpenClaw 的技能究竟是如何工作的?为什么一个 self-improving 技能能让 AI 拥有跨会话的记忆,甚至能从错误中自我反思?答案并不在神秘的代码深处,而是藏在每个技能目录下那个看似普通的 Markdown 文件——SKILL.md 中。
SKILL.md 是技能的'基因组'。它用一套清晰、结构化的语法,定义了技能的触发条件、行为逻辑、学习规则,甚至自我更新的方式。今天,我们就以 self-improving 技能为样本,打开它的 SKILL.md,逐行解析其中的设计智慧,带你理解 AI '自我进化'背后的底层逻辑。
一、SKILL.md 概览:技能的'身份证'与'操作手册'
一个典型的 self-improving 技能目录结构如下:
self-improving/
├── SKILL.md # 核心定义文件
├── memory/ # 记忆存储目录
│ ├── memory.md # HOT 层(常驻记忆)
│ ├── projects/ # WARM 层(项目级记忆)
│ └── archive/ # COLD 层(归档记忆)
├── hooks/ # 钩子脚本(可选)
└── README.md # 技能说明
而 SKILL.md 本身由几个关键区块组成,我们可以通过一张结构图来认识它们:
| 区块 | 内容 |
|---|---|
| 元数据区 | 技能名称、版本、作者 |
| BEHAVIOR | 触发器列表、依赖项、行为定义 |
| LEARNING | 记忆捕获规则、分层存储策略 |
| SELF-EVOLUTION | 自我反思流程、人类确认机制、元学习指令 |
接下来,我们将逐一深入这些区块,揭示 self-improving 技能的底层逻辑。
二、提示词原理:BEHAVIOR 区块的指令逻辑
BEHAVIOR 区块是技能的核心,它用近乎伪代码的清晰语言,定义了 AI 在特定事件下该如何行动。这其实就是 '提示词原理' 的具体体现——通过结构化的指令,让 AI 执行复杂的认知任务。
1. 记忆捕获规则:从纠正中学习
### 1. 记忆捕获规则
当触发器 `on_user_correction` 被激活时,执行以下流程:
a. 解析用户消息,识别纠正类型:
- 偏好纠正(如'我更喜欢 X')
- 事实纠正(如'这个命令应该是 Y')
- 流程纠正(如'你应该先做 A 再做 B')
b. 生成候选记忆条目,格式为:
`[<context>] <pattern> -> <preference>`
例如:`[coding:python] "use print instead of logger" -> "avoid logger"`
c. 将候选条目写入 `~/self-improving/memory/pending/` 目录,并记录首次出现时间。


