代码修复教训捕获Skill phx:learn

该技能用于在软件开发中捕获代码修复后的教训,更新知识库以防止未来错误。它帮助识别根本原因、检查现有知识、决定保存位置并编写简洁规则,适用于测试、DevOps和开发实践。关键词:代码修复、知识管理、错误预防、软件开发、测试、Elixir、最佳实践、自动化记忆。

测试 0 次安装 0 次浏览 更新于 3/11/2026

name: phx:learn description: 修复错误或收到纠正后捕获所学教训。更新知识库以防止未来错误。 argument-hint: <修复内容的描述>

从修复中学习

在修复错误或收到纠正后,捕获教训以防止未来错误。

使用方式

/phx:learn 修复了用户列表中的N+1查询 - 缺少预加载
/phx:learn 参数处理中的字符串与原子键不匹配
/phx:learn LiveView的assign_async在测试中需要render_async

工作流程

步骤 1: 识别模式

查看最近的对话上下文。自问:

  • 根本原因是什么?(不是症状)
  • 这是其他人可能犯的常见错误吗?
  • 可以通过简单规则预防吗?

步骤 2: 检查现有知识

检查是否已记录:

  • Grep 项目 CLAUDE.md 中的模式关键字
  • 检查自动记忆文件中的类似教训
  • 读取 references/common-mistakes.md(只读插件参考 — 不要编辑此文件)

如果已记录,告知用户并停止。

步骤 3: 决定保存位置

关键:永远不要编辑插件文件。 位于 ~/.claude/plugins/ 下的文件会被缓存并在更新时被覆盖。 始终写入项目或内存位置。

范围 写入到 示例
仅此项目 项目 CLAUDE.md “在此应用中永远不要使用原始SQL”
所有 Elixir 项目 自动记忆 MEMORY.md “jsonb总是使用字符串键”
有上下文的详细修复 .claude/solutions/ 通过 /phx:compound 复杂的调试故事

步骤 4: 编写教训

对于项目 CLAUDE.md — 添加简洁规则:

### [类别] 铁律(继续)

N. **[简短规则名称]** — 不要 [不良模式]。相反 [良好模式]

对于自动记忆 — 追加到 ~/.claude/projects/{project-hash}/memory/MEMORY.md

### 教训:[标题]
- **模式**:不要 [不良] — 相反 [良好]
- **为什么**:[根本原因解释]

步骤 5: 考虑更广泛的更新

如果教训足够重要成为铁律:

  • 建议添加到项目 CLAUDE.md 铁律部分
  • 如果它是通用的(适用于所有 Elixir 项目),建议更新插件本身(用户可以提交 PR)

输出

捕获后,确认:

教训已捕获在 [位置]

模式:不要 [不良模式] — 相反 [良好模式]
类别:[Ecto/LiveView/OTP/Testing/等]

参考(只读 — 不要编辑)

  • references/common-mistakes.md — 常见 Elixir 错误参考。检查重复时参考。随插件附带 — 永远不要修改。