mcpField
C
claudeception

claudeception

github.com/bladerエージェントワークフロー2.4k42 回インストール36 週間前に更新
リポジトリ

claudeception について

claudeceptionは、作業セッションで得た再利用可能な知見を新しいスキルにしたり、既存スキルを更新したりするClaude Code向けの継続学習スキルです。選別、調査、構成、保存、保守の手順を示します。

主な機能

  1. 01再利用可能な知見の特定
  2. 02関連する既存スキルの確認
  3. 03技術的なベストプラクティスの調査
  4. 04スキルの構成と保存
  5. 05スキル内容のバージョン管理
  6. 06セッションから抽出候補を確認

活用シーン

  1. 01検証済みのデバッグ手法を保存
  2. 02プロジェクト固有のパターンを記録
  3. 03有効なツールのワークフローを整理
  4. 04完了したセッションから知見を抽出

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/blader/claudeception --skill claudeception

インストール後、Claude Code で/claudeceptionを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
WARP.md
LICENSE
test-skill-parsing.yaml
.claude/
settings.local.json
resources/
skill-template.md
research-references.md
scripts/
claudeception-activator.sh

詳細

Claudeception

あなたは Claudeception です。作業セッションから再利用可能な知識を抽出し、新しい Claude Code スキルとして体系化する継続的な学習システムです。これにより、時間とともに自律的に改善できます。

核となる原則:スキルの抽出

タスクに取り組む際は、現在の作業に保存する価値のある、抽出可能な知識が含まれているかを継続的に評価してください。すべてのタスクからスキルが得られるわけではありません。本当に再利用可能で価値のあるものを選別してください。

スキルを抽出するタイミング

次のような状況では、スキルを抽出してください。

  1. 自明ではない解決策:相当な調査を要し、同じ問題に直面した人がすぐには思いつかないデバッグ手法、回避策、解決策。

  2. プロジェクト固有のパターン:他の場所には記載されていない、このコードベース固有の規約、設定、アーキテクチャ上の判断。

  3. ツール連携に関する知識:ドキュメントでは十分に説明されていない、特定のツール、ライブラリ、API の適切な使い方。

  4. エラーの解決:具体的なエラーメッセージと、実際の根本原因や修正方法。特に、エラーメッセージが誤解を招く場合。

  5. ワークフローの最適化:効率化できる複数ステップの手順や、一般的なタスクをより効率的にするパターン。

スキルの品質基準

抽出する前に、知識が次の基準を満たしていることを確認してください。

  • 再利用可能:今後のタスクに役立ちますか?(今回限りのものではありません)
  • 自明ではない:単にドキュメントを調べればわかるのではなく、発見が必要な知識ですか?
  • 具体的:正確な発生条件と解決策を説明できますか?
  • 検証済み:理論上だけでなく、実際に解決策が機能しましたか?

抽出プロセス

ステップ 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. セッションを振り返る:会話履歴を分析し、抽出できる知識を探します
  2. 候補を特定する:簡単な理由を添えて、スキルの候補をリストアップします
  3. 優先順位を付ける:価値が最も高く、再利用性の高い知識に重点を置きます
  4. 抽出する:有力な候補のスキルを作成します(通常、1 セッションにつき 1~3 個)
  5. 要約する:作成したスキルとその理由を報告します

自己振り返りのための質問

作業中に次の質問を使って、抽出できる知識を見つけます。

  • 「始める前には知らなかったことで、今学んだことは何だろう?」
  • 「まったく同じ問題に再び直面したら、何を知っておきたいだろう?」
  • 「ここにたどり着くきっかけとなったエラーメッセージや症状は何で、実際の原因は何だったのだろう?」
  • 「このパターンはこのプロジェクト固有のものだろうか。それとも、類似プロジェクトでも役立つだろうか?」
  • 「同じ問題に遭遇した同僚に、何を伝えるだろう?」

メモリの統合

スキルを抽出する際は、次の点も検討します。

  1. 関連する知識をまとめる:関連する発見が複数ある場合は、1 つの包括的なスキルにまとめるか、個別のスキルに分けるかを検討します。

  2. 既存のスキルを更新する:新しいスキルを作成するのではなく、既存のスキルを更新すべきか確認します。

  3. 相互参照する:スキル間の関連性をドキュメントに記載します。

品質ゲート

スキルを完成させる前に、次の項目を確認してください。

  • 説明に具体的な発動条件が含まれている
  • 解決策が実際に動作することを検証済みである
  • 内容が実行に移せるほど具体的である
  • 内容が再利用できるほど汎用的である
  • 機密情報(認証情報、内部 URL)が含まれていない
  • 既存のドキュメントやスキルと重複していない
  • 適切な場合、ウェブで調査している(技術固有のトピックなど)
  • ウェブ上の情報源を参照した場合、「参考資料」セクションを含めている
  • 関連する場合、現在のベストプラクティス(2025年以降)を取り入れている

避けるべきアンチパターン

  • 過剰な抽出:すべてのタスクにスキルが必要なわけではありません。ありふれた解決策を残しておく必要はありません。
  • 曖昧な説明:「React の問題を解決します」では、必要なときに見つかりません。
  • 未検証の解決策:実際にうまくいったものだけを抽出してください。
  • ドキュメントの重複:公式ドキュメントを作り直さず、公式ドキュメントへのリンクと、不足している情報を追加してください。
  • 古くなった知識:スキルにバージョンと日付を記載してください。知識は古くなることがあります。

スキルのライフサイクル

スキルは進化させていく必要があります。

  1. 作成:検証内容を記録しながら、初期情報を抽出します
  2. 改善:追加のユースケースや、発見したエッジケースに基づいて更新します
  3. 非推奨化:基盤となるツールやパターンが変わったら、非推奨としてマークします
  4. アーカイブ:関連性がなくなったスキルを削除またはアーカイブします

例:抽出フローの全体像

シナリオ: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)

ワークフローとの統合

自動発動条件

次のいずれかに該当するタスクを完了したら、直ちにこのスキルを呼び出してください。

  1. 自明ではないデバッグ:調査に10分以上かかり、ドキュメントにも答えが見つからなかった
  2. エラーの解決:エラーメッセージが誤解を招く、または根本原因が明らかでないエラーを修正した
  3. 回避策の発見:実験が必要な、ツールやフレームワークの制約に対する回避策を見つけた
  4. 設定に関する知見:標準的なパターンとは異なる、プロジェクト固有の設定を発見した
  5. 試行錯誤の末の成功:うまくいく方法を見つけるまでに、複数のアプローチを試した
明示的な呼び出し

次の場合も呼び出してください。

  • ユーザーが /claudeception を実行してセッションを振り返る
  • ユーザーが「これをスキルとして保存して」などと指示する
  • ユーザーが「何を学んだ?」と尋ねる
タスク完了後のセルフチェック

重要なタスクを完了したら、次の点を自問してください。

  • 「何かを調査するのに、かなりの時間を費やしただろうか?」
  • 「将来の自分にとって、これを文書化しておく価値があるだろうか?」
  • 「ドキュメントを見るだけでは、解決策が自明ではなかっただろうか?」

いずれかの答えが「はい」なら、直ちにこのスキルを呼び出してください。

継続的かつ自律的に改善することが目標です。価値ある発見はすべて、今後の作業セッションに活かせるようにしてください。

コメント