| name | learn |
| description | 開発セッションで発見した再利用可能な問題解決パターンを文書化・保存する。エラー解決、デバッグテクニック、ライブラリの癖への対処法などを抽出。 |
| allowed-tools | Read, Write, Glob |
| argument-hint | [pattern-name] |
再利用可能パターンの抽出
セッション中に発見した価値ある問題解決アプローチを文書化する。
抽出対象
| 種別 | 例 |
|---|
| エラー解決 | 根本原因の特定と類似状況への適用可能な修正 |
| デバッグ | ツールの効果的な組み合わせ方 |
| ワークアラウンド | ライブラリの癖やAPI制約への対処法 |
品質基準
抽出すべき:
- 複数プロジェクトで役立つパターン
- 発見に時間がかかったワークアラウンド
- 本当に再利用可能な洞察
抽出しない:
- タイポ、構文エラー等の自明な修正
- サービス障害など一時的な問題
- プロジェクト固有すぎる解決策
実行手順
Step 1: セッションレビュー
会話履歴から価値ある洞察を特定:
- 解決に複数ステップを要した問題
- 試行錯誤の末に見つけた解決策
- 「これは他でも使える」と感じたもの
Step 2: パターン抽出
引数 $ARGUMENTS があれば、そのパターン名で保存。なければ提案する。
Step 3: ファイル保存
保存先: ~/.claude/learned/[pattern-name].md
# [パターン名]
## 問題定義
[対処した具体的な問題]
## 解決方法
[解決のアプローチ]
## コード例
\`\`\`[language]
// 関連するコード例
\`\`\`
## 適用条件
[このパターンを使用すべき状況]
Step 4: 確認
ドラフトを提示し、保存前に確認をリクエスト。
使用例
User: /learn
Claude: セッションをレビューしました。以下のパターンを抽出しました:
### Supabase RLSポリシーのデバッグ
- **問題**: ユーザーが自分のデータにアクセスできない
- **原因**: JWTのclaimとポリシーの条件不一致
- **解決**: auth.uid()の代わりにauth.jwt()->>'sub'を使用
このパターンを保存しますか?