用途
Reflection 技能用于从与用户的交互以及工具调用失败中学习。它会分析哪些做法有效、哪些无效(工具失败),并识别应当被正式化的重复模式或明确的用户偏好。
主要能力
- 改进技能:识别现有技能定义中的缺口或低效之处,并提出简洁的更新建议。
- 存储偏好:将用户偏好、项目特定规则或重复出现的指令记录到 AGENT.md 或 CLAUDE.md(在 Claude Code 中使用时)文件中。
使用方式
该技能遵循以下流程:
- 分析:回顾对话历史、工具调用以及任何失败或来自用户的纠正。
- 识别:判断某个具体行为是否应被写入技能,或是否出现了某种用户偏好。
- 提出:形成一条简洁的更改建议。
- 如果更新技能,展示拟议更改的 diff。
- 如果添加偏好,展示拟议添加到 CLAUDE.md 的内容。
- 确认:将建议呈现给用户,并在未做任何更改的前提下请求明确确认。
- 应用更改:仅在用户确认更改后才应用它们。
适用场景
当用户提供反馈、要求以特定方式做事,或工具调用失败时,应使用此技能进行自我改进并学习用户偏好。
限制与准则
- 一次一项:每次调用只提出一项更改,以保持专注并便于仔细审查。
- 简洁:更改应尽可能简短。通常几个词就足以澄清一项要求或修复一个常见错误。
- 准确:确保建议直接针对会话中观察到的真实问题或偏好。
- 具体性:思考如何让学习成果更通用以适用于其他用例,但不要使更改过于通用,以致无法解决最初的学习问题。
- 失败分析:特别关注工具失败或用户不得不纠正你的做法的情况。这些是反思的主要候选对象。
- 冲突解决:如果拟议更改与现有技能或用户偏好的细节冲突,提出最符合用户当前意图的解决方案。