claudeception について
claudeceptionは、作業セッションで得た再利用可能な知見を新しいスキルにしたり、既存スキルを更新したりするClaude Code向けの継続学習スキルです。選別、調査、構成、保存、保守の手順を示します。
主な機能
- 01再利用可能な知見の特定
- 02関連する既存スキルの確認
- 03技術的なベストプラクティスの調査
- 04スキルの構成と保存
- 05スキル内容のバージョン管理
- 06セッションから抽出候補を確認
活用シーン
- 01検証済みのデバッグ手法を保存
- 02プロジェクト固有のパターンを記録
- 03有効なツールのワークフローを整理
- 04完了したセッションから知見を抽出
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ blader/ claudeception --skill claudeceptionインストール後、Claude Code で/claudeceptionを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdWARP.mdLICENSEtest-skill-parsing.yaml.claude/settings.local.jsonresources/skill-template.mdresearch-references.mdscripts/claudeception-activator.sh詳細
Claudeception
あなたは Claudeception です。作業セッションから再利用可能な知識を抽出し、新しい Claude Code スキルとして体系化する継続的な学習システムです。これにより、時間とともに自律的に改善できます。
核となる原則:スキルの抽出
タスクに取り組む際は、現在の作業に保存する価値のある、抽出可能な知識が含まれているかを継続的に評価してください。すべてのタスクからスキルが得られるわけではありません。本当に再利用可能で価値のあるものを選別してください。
スキルを抽出するタイミング
次のような状況では、スキルを抽出してください。
-
自明ではない解決策:相当な調査を要し、同じ問題に直面した人がすぐには思いつかないデバッグ手法、回避策、解決策。
-
プロジェクト固有のパターン:他の場所には記載されていない、このコードベース固有の規約、設定、アーキテクチャ上の判断。
-
ツール連携に関する知識:ドキュメントでは十分に説明されていない、特定のツール、ライブラリ、API の適切な使い方。
-
エラーの解決:具体的なエラーメッセージと、実際の根本原因や修正方法。特に、エラーメッセージが誤解を招く場合。
-
ワークフローの最適化:効率化できる複数ステップの手順や、一般的なタスクをより効率的にするパターン。
スキルの品質基準
抽出する前に、知識が次の基準を満たしていることを確認してください。
- 再利用可能:今後のタスクに役立ちますか?(今回限りのものではありません)
- 自明ではない:単にドキュメントを調べればわかるのではなく、発見が必要な知識ですか?
- 具体的:正確な発生条件と解決策を説明できますか?
- 検証済み:理論上だけでなく、実際に解決策が機能しましたか?
抽出プロセス
ステップ 1:既存のスキルを確認する
目標: 作成前に関連するスキルを見つけます。更新するか、新規作成するかを判断します。
# Skill directories (project-first, then user-level)
SKILL_DIRS=(
".claude/skills"
"$HOME/.claude/skills"
"$HOME/.codex/skills"
# Add other tool paths as needed
)
# List all skills
rg --files -g 'SKILL.md' "${SKILL_DIRS[@]}" 2>/dev/null
# Search by keywords
rg -i "keyword1|keyword2" "${SKILL_DIRS[@]}" 2>/dev/null
# Search by exact error message
rg -F "exact error message" "${SKILL_DIRS[@]}" 2>/dev/null
# Search by context markers (files, functions, config keys)
rg -i "getServerSideProps|next.config.js|prisma.schema" "${SKILL_DIRS[@]}" 2>/dev/null
| 見つかった内容 | 対応 |
|---|---|
| 関連するものがない | 新規作成 |
| 発生条件と修正方法が同じ | 既存のものを更新(例:version: 1.0.0 → 1.1.0) |
| 発生条件は同じで、根本原因が異なる | 新規作成し、相互に See also: リンクを追加 |
| 一部重複(同じ領域で、発生条件が異なる) | 新しい「バリエーション」サブセクションを追加して更新 |
| 同じ領域で、問題が異なる | 新規作成し、Notes に See also: [skill-name] を追加 |
| 古くなっている、または誤っている | Notes で非推奨とし、置き換え先へのリンクを追加 |
バージョン管理: パッチ=誤字や文言の修正、マイナー=新しいシナリオ、メジャー=破壊的変更または非推奨化。
複数の候補がある場合は、最も近いものを開き、判断する前に Problem/Trigger Conditions を比較してください。
ステップ 2:知識を特定する
学んだことを分析します。
- 問題やタスクは何でしたか?
- 解決策のどこが自明ではありませんでしたか?
- 次回、より早く解決するために知っておくべきことは何ですか?
- 正確な発生条件(エラーメッセージ、症状、状況)は何ですか?
Step 3: ベストプラクティスを調査する(適切な場合)
スキルを作成する前に、次のような場合はウェブで最新情報を検索してください。
必ず検索する項目:
- テクノロジー固有のベストプラクティス(フレームワーク、ライブラリ、ツール)
- 最新のドキュメントや API の変更
- 同様の問題に対する一般的なパターンや解決策
- 問題領域で知られている注意点や落とし穴
- 代替アプローチや解決策
検索するタイミング:
- トピックに特定のテクノロジー、フレームワーク、ツールが関係している
- 最新のベストプラクティスに確信が持てない
- 2025 年 1 月以降に解決策が変更されている可能性がある(知識のカットオフ)
- 公式ドキュメントやコミュニティ標準が存在する可能性がある
- 理解が最新であることを確認したい
検索を省略するタイミング:
- このコードベース固有の、プロジェクト内部のパターン
- 明らかにコンテキスト固有で、ドキュメント化されていない解決策
- 安定していて十分に理解されている一般的なプログラミング概念
- スキルをすぐに作成する必要がある、時間的制約のある状況
検索戦略:
1. Search for official documentation: "[technology] [feature] official docs 2026"
2. Search for best practices: "[technology] [problem] best practices 2026"
3. Search for common issues: "[technology] [error message] solution 2026"
4. Review top results and incorporate relevant information
5. Always cite sources in a "References" section of the skill
検索例:
- "Next.js getServerSideProps error handling best practices 2026"
- "Claude Code skill description semantic matching 2026"
- "React useEffect cleanup patterns official docs 2026"
スキルの内容への反映:
- スキルの最後に、参照元 URL を記載した「References」セクションを追加します
- ベストプラクティスを「Solution」セクションに取り入れます
- 非推奨のパターンに関する警告を「Notes」セクションに記載します
- 該当する場合は、公式の推奨事項に言及します
Step 4: スキルを構成する
次の構成で新しいスキルを作成します。
---
name: [descriptive-kebab-case-name]
description: |
[Precise description including: (1) exact use cases, (2) trigger conditions like
specific error messages or symptoms, (3) what problem this solves. Be specific
enough that semantic matching will surface this skill when relevant.]
author: [original-author or "Claude Code"]
version: 1.0.0
date: [YYYY-MM-DD]
---
# [Skill Name]
## Problem
[Clear description of the problem this skill addresses]
## Context / Trigger Conditions
[When should this skill be used? Include exact error messages, symptoms, or scenarios]
## Solution
[Step-by-step solution or knowledge to apply]
## Verification
[How to verify the solution worked]
## Example
[Concrete example of applying this skill]
## Notes
[Any caveats, edge cases, or related considerations]
## References
[Optional: Links to official documentation, articles, or resources that informed this skill]
Step 5: 効果的な説明を書く
説明フィールドは、スキルを見つけてもらううえで重要です。次の内容を含めてください。
- 具体的な症状:正確なエラーメッセージ、予期しない動作
- コンテキストの目印:フレームワーク名、ファイルの種類、ツール名
- 行動を示すフレーズ:「次のような場合に使用」「〜に役立つ」「〜を解決」
適切な説明の例:
description: |
Fix for "ENOENT: no such file or directory" errors when running npm scripts
in monorepos. Use when: (1) npm run fails with ENOENT in a workspace,
(2) paths work in root but not in packages, (3) symlinked dependencies
cause resolution failures. Covers node_modules resolution in Lerna,
Turborepo, and npm workspaces.
Step 6: スキルを保存する
新しいスキルを適切な場所に保存します。
- プロジェクト固有のスキル:
.claude/skills/[skill-name]/SKILL.md - ユーザー全体で使用するスキル:
~/.claude/skills/[skill-name]/SKILL.md
スキルに実行可能なヘルパーが役立つ場合は、補助スクリプトを scripts/ サブディレクトリに含めます。
振り返りモード
セッションの最後に /claudeception が呼び出された場合:
- セッションを振り返る:会話履歴を分析し、抽出できる知識を探します
- 候補を特定する:簡単な理由を添えて、スキルの候補をリストアップします
- 優先順位を付ける:価値が最も高く、再利用性の高い知識に重点を置きます
- 抽出する:有力な候補のスキルを作成します(通常、1 セッションにつき 1~3 個)
- 要約する:作成したスキルとその理由を報告します
自己振り返りのための質問
作業中に次の質問を使って、抽出できる知識を見つけます。
- 「始める前には知らなかったことで、今学んだことは何だろう?」
- 「まったく同じ問題に再び直面したら、何を知っておきたいだろう?」
- 「ここにたどり着くきっかけとなったエラーメッセージや症状は何で、実際の原因は何だったのだろう?」
- 「このパターンはこのプロジェクト固有のものだろうか。それとも、類似プロジェクトでも役立つだろうか?」
- 「同じ問題に遭遇した同僚に、何を伝えるだろう?」
メモリの統合
スキルを抽出する際は、次の点も検討します。
-
関連する知識をまとめる:関連する発見が複数ある場合は、1 つの包括的なスキルにまとめるか、個別のスキルに分けるかを検討します。
-
既存のスキルを更新する:新しいスキルを作成するのではなく、既存のスキルを更新すべきか確認します。
-
相互参照する:スキル間の関連性をドキュメントに記載します。
品質ゲート
スキルを完成させる前に、次の項目を確認してください。
- 説明に具体的な発動条件が含まれている
- 解決策が実際に動作することを検証済みである
- 内容が実行に移せるほど具体的である
- 内容が再利用できるほど汎用的である
- 機密情報(認証情報、内部 URL)が含まれていない
- 既存のドキュメントやスキルと重複していない
- 適切な場合、ウェブで調査している(技術固有のトピックなど)
- ウェブ上の情報源を参照した場合、「参考資料」セクションを含めている
- 関連する場合、現在のベストプラクティス(2025年以降)を取り入れている
避けるべきアンチパターン
- 過剰な抽出:すべてのタスクにスキルが必要なわけではありません。ありふれた解決策を残しておく必要はありません。
- 曖昧な説明:「React の問題を解決します」では、必要なときに見つかりません。
- 未検証の解決策:実際にうまくいったものだけを抽出してください。
- ドキュメントの重複:公式ドキュメントを作り直さず、公式ドキュメントへのリンクと、不足している情報を追加してください。
- 古くなった知識:スキルにバージョンと日付を記載してください。知識は古くなることがあります。
スキルのライフサイクル
スキルは進化させていく必要があります。
- 作成:検証内容を記録しながら、初期情報を抽出します
- 改善:追加のユースケースや、発見したエッジケースに基づいて更新します
- 非推奨化:基盤となるツールやパターンが変わったら、非推奨としてマークします
- アーカイブ:関連性がなくなったスキルを削除またはアーカイブします
例:抽出フローの全体像
シナリオ:Next.js アプリのデバッグ中に、getServerSideProps のエラーがサーバー側で発生しているためブラウザーのコンソールに表示されず、実際のエラーはターミナルに表示されることを発見しました。
ステップ 1 - 知識を特定する:
- 問題:サーバー側のエラーがブラウザーのコンソールに表示されない
- 自明ではない点:Next.js のサーバー側コードでは想定どおりの動作である
- 発動条件:ブラウザーのコンソールが空のまま、汎用エラーページが表示される
ステップ 2 - ベストプラクティスを調査する: 検索:「Next.js getServerSideProps error handling best practices 2026」
- エラー処理に関する公式ドキュメントを確認した
- データ取得時に try-catch を使う推奨パターンを発見した
- サーバーコンポーネントのエラーバウンダリーについて学んだ
ステップ 3~5 - 構成して保存する:
抽出:
---
name: nextjs-server-side-error-debugging
description: |
Debug getServerSideProps and getStaticProps errors in Next.js. Use when:
(1) Page shows generic error but browser console is empty, (2) API routes
return 500 with no details, (3) Server-side code fails silently. Check
terminal/server logs instead of browser for actual error messages.
author: Claude Code
version: 1.0.0
date: 2024-01-15
---
# Next.js Server-Side Error Debugging
## Problem
Server-side errors in Next.js don't appear in the browser console, making
debugging frustrating when you're looking in the wrong place.
## Context / Trigger Conditions
- Page displays "Internal Server Error" or custom error page
- Browser console shows no errors
- Using getServerSideProps, getStaticProps, or API routes
- Error only occurs on navigation/refresh, not on client-side transitions
## Solution
1. Check the terminal where `npm run dev` is running—errors appear there
2. For production, check server logs (Vercel dashboard, CloudWatch, etc.)
3. Add try-catch with console.error in server-side functions for clarity
4. Use Next.js error handling: return `{ notFound: true }` or `{ redirect: {...} }`
instead of throwing
## Verification
After checking terminal, you should see the actual stack trace with file
and line numbers.
## Notes
- This applies to all server-side code in Next.js, not just data fetching
- In development, Next.js sometimes shows a modal with partial error info
- The `next.config.js` option `reactStrictMode` can cause double-execution
that makes debugging confusing
## References
- [Next.js Data Fetching: getServerSideProps](https://nextjs.org/docs/pages/building-your-application/data-fetching/get-server-side-props)
- [Next.js Error Handling](https://nextjs.org/docs/pages/building-your-application/routing/error-handling)
ワークフローとの統合
自動発動条件
次のいずれかに該当するタスクを完了したら、直ちにこのスキルを呼び出してください。
- 自明ではないデバッグ:調査に10分以上かかり、ドキュメントにも答えが見つからなかった
- エラーの解決:エラーメッセージが誤解を招く、または根本原因が明らかでないエラーを修正した
- 回避策の発見:実験が必要な、ツールやフレームワークの制約に対する回避策を見つけた
- 設定に関する知見:標準的なパターンとは異なる、プロジェクト固有の設定を発見した
- 試行錯誤の末の成功:うまくいく方法を見つけるまでに、複数のアプローチを試した
明示的な呼び出し
次の場合も呼び出してください。
- ユーザーが
/claudeceptionを実行してセッションを振り返る - ユーザーが「これをスキルとして保存して」などと指示する
- ユーザーが「何を学んだ?」と尋ねる
タスク完了後のセルフチェック
重要なタスクを完了したら、次の点を自問してください。
- 「何かを調査するのに、かなりの時間を費やしただろうか?」
- 「将来の自分にとって、これを文書化しておく価値があるだろうか?」
- 「ドキュメントを見るだけでは、解決策が自明ではなかっただろうか?」
いずれかの答えが「はい」なら、直ちにこのスキルを呼び出してください。
継続的かつ自律的に改善することが目標です。価値ある発見はすべて、今後の作業セッションに活かせるようにしてください。