continuous-learning について
コーディングセッションでの修正点、成功した手法、アンチパターンを、確信度付きで記録するスキルです。開発者やコーディングエージェントが、繰り返し使える知見をプロジェクトのメモリファイルや分野別ファイルに整理できます。
主な機能
- 01学習項目の分類記録
- 02確信度の評価と更新
- 03修正点の追跡と一般化
- 04分野別ファイルでの知識整理
- 05パターンの頻度と状態の追跡
- 06メモリファイルへの統合指針
活用シーン
- 01コーディングセッション後の知見記録
- 02ユーザーの修正を再利用可能な指針に変換
- 03パターン適用前の確認
- 04プロジェクトの知見の保守と整理
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ rohitg00/ awesome-claude-code-toolkit --skill continuous-learningインストール後、Claude Code で/continuous-learningを入力して読み込まれたか確認します。
詳細
継続的な学習
パターン抽出フレームワーク
重要なコーディングセッションの後は毎回、学びを抽出し、次の3つの分類に分けます。
- 修正点 - レビュー中またはユーザーによって指摘された誤り
- 成功したアプローチ - 効果があり、今後も繰り返すべきパターン
- アンチパターン - 問題を引き起こし、避けるべきアプローチ
学習エントリーの形式
pattern:
id: "LEARN-2025-0042"
category: "error-handling"
type: "correction" # correction | success | anti-pattern
confidence: 0.85 # 0.0 to 1.0
language: "typescript"
context: "API error responses"
observation: "Returning raw error messages from database exceptions exposes internals"
lesson: "Always map database errors to application-level error codes before returning"
example:
before: "catch (e) { res.status(500).json({ error: e.message }) }"
after: "catch (e) { logger.error(e); res.status(500).json({ error: 'INTERNAL_ERROR' }) }"
frequency: 3 # times this pattern has been observed
last_seen: "2025-06-15"
信頼度スコア
| スコア | 意味 | アクション |
|---|---|---|
| 0.95+ | 複数のプロジェクトで検証済み | 自動的に適用 |
| 0.80-0.94 | このコードベースで確認済み | 適用し、その旨を伝える |
| 0.60-0.79 | 観察されたが、十分に検証されていない | 注意事項を添えて提案 |
| 0.40-0.59 | 限られたデータに基づく仮説 | 適用前に確認する |
| <0.40 | 推測的で、検証が必要 | 記録するが、適用しない |
信頼度の更新基準:
- パターンが正しいとユーザーが確認した場合、+0.10
- 別の状況でパターンが再度確認された場合、+0.05
- パターンが修正につながった場合、-0.15
- ユーザーが明確にパターンを拒否した場合、-0.20
セッション終了時の手順
各セッションの終了時、またはコンテキストを圧縮する前に、次の作業を行います。
- 変更内容を確認する - 差分を確認し、パターンを探す
- 修正点を特定する - 初回の実装後に何が変更されたかを確認する
- 初回で成功した点を記録する - 修正なしでうまくいったことを記録する
- 環境の詳細を記録する - フレームワークのバージョンや設定の詳細
- 信頼度スコアを更新する - セッションの結果に基づいて調整する
- ナレッジベースに書き込む - CLAUDE.md または LEARNED.md に新しいエントリーを追加する
## Session Learnings (2025-06-15)
### Corrections Applied
- [0.85] TypeScript: Use `satisfies` instead of `as` for type narrowing with object literals
- [0.90] Next.js: Server Actions must be async functions, even for synchronous operations
### Successful Patterns
- [0.80] PostgreSQL: Partial indexes on status columns reduced query time by 60%
- [0.75] React: Extracting data fetching into Server Components eliminated 3 useEffect hooks
### Anti-Patterns Identified
- [0.70] Avoid: Nesting more than 2 levels of Suspense boundaries (causes waterfall)
- [0.65] Avoid: Using `any` to suppress TypeScript errors in catch blocks (use `unknown`)
ナレッジベースの整理
ナレッジベースをドメインごとに整理します。
knowledge/
error-handling.md # Error patterns across languages
testing.md # Test patterns and anti-patterns
performance.md # Optimization learnings
api-design.md # API design decisions
deployment.md # Infrastructure learnings
project-specific.md # Current project conventions
各ファイルでは、同じエントリー形式を使用します。observation フィールドが一致するエントリーは重複を避け、frequency を増やして confidence を更新します。
修正の追跡
ユーザーがコードやアプローチを修正した場合:
- 最初に作成した内容を記録する
- 修正内容を記録する
- 根本原因(誤った前提、コンテキスト不足、古くなったパターン)を特定する
- 学習エントリーを作成または更新する
- 同じ修正が必要と思われる類似パターンを検索する
### Correction Log
- **Original**: Used `useEffect` to fetch data on mount
- **Correction**: Moved data fetching to Server Component
- **Root cause**: Applied client-side SPA pattern in Server Component context
- **Generalization**: In Next.js App Router, prefer server-side data fetching for initial page data
- **Confidence**: 0.90 (confirmed across 4 components)
パターンの強化
パターンが適用された頻度と、その有効性を追跡します。
Pattern: "Use zod for API input validation"
Applied: 12 times
Confirmed: 11 times
Corrected: 1 time (edge case with file uploads)
Confidence: 0.92
Status: ESTABLISHED
ステータス:
- EMERGING(frequency < 3) - 新しいパターンで、検証が必要
- GROWING(frequency 3-7) - 根拠が蓄積されており、適用時にその旨を伝える
- ESTABLISHED(frequency 8+、confidence > 0.85) - 自動的に適用
- DEPRECATED - 以前は有効だったが、現在はより優れたアプローチに置き換えられた
メモリファイルとの統合
学びはプロジェクトのメモリファイル(CLAUDE.md または同等のファイル)に保存します。
- 信頼度の高い学び(>0.85)は、メインの指示セクションに記載する
- 信頼度が中程度の学び(0.60-0.84)は、専用の「Learnings」セクションに記載する
- 信頼度の低い学び(<0.60)は、検証されるまでセッションノートに残す
- 非推奨のパターンは、非推奨の理由を添えてアーカイブセクションに移動する
ナレッジベースは毎月確認し、整理してください。90日間参照されておらず、信頼度が0.70未満のエントリーを削除します。
コメント
Markdown 対応