fast-context について
fast-contextは、変更、デバッグ、テスト、プロジェクト固有の説明に必要な情報を探す開発者向けのコードベース検索スキルです。関連ファイルや定義を見つけ、ローカルでの詳細確認につなげます。Fast Context MCPサーバーは不要です。
主な機能
- 01自然言語クエリでコードベースを検索
- 02実装箇所、処理フロー、テストを特定
- 03ファイル範囲と検索キーワードを提示
- 04反復検索で不足した情報を補完
活用シーン
- 01変更前に不慣れなコードを特定
- 02複数モジュールにまたがる処理を追跡
- 03機能に関する定義とテストを検索
MCP 対応
インストール先の検索スクリプトを直接実行するため、Fast Context MCPサーバーは不要です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ oulkurt/ fast-context-skill --skill fast-contextインストール後、Claude Code で/fast-contextを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSENOTICE.mdREADME.mdpackage-lock.jsonpackage.json.gitignore.github/workflows/npm-publish.ymlagents/openai.yamlreferences/script-contract.mdscripts/fast-context-search.mjsscripts/lib/LICENSE.fast-context-mcpcore.mjsprotobuf.mjsextract-key.mjsexecutor.mjsdirectory-scorer.mjstest/cli.mjs詳細
Fast Context
概要
コードベースに沿った作業では、まず Fast Context を使ってください。実装箇所の特定、処理の流れの追跡、テストの検索、コードの作成やプロジェクト固有のアドバイスを行う前に必要な定義をすべて収集できます。
このスキルは、インストール済みのスキルディレクトリから scripts/fast-context-search.mjs を直接実行します。このスクリプトは、上流の v1.3.0-beta.2 ソースに含まれる Fast Context のコアロジックと Windsurf Devstral をベンダー化して使用しますが、Fast Context MCP サーバーのインストールや有効化は必要ありません。正確なローカル調査に代わるものではありません。返されたファイルパスと grep キーワードを使って、対象を絞り込んだ rg、sed、ファイルの読み取りを行ってください。
使用するタイミング
- コードの変更、アーキテクチャの提案、バグ修正、テスト計画、プロジェクト固有の動作に依存する説明を行う前。
- 関連ファイルが不明な場合、または機能が複数のモジュールにまたがる場合。
- 定義全体、シグネチャ、呼び出し箇所、設定、ルート、スキーマ、テストが必要な場合。
会話のみのタスク、対象が明らかな小規模なファイル編集、サードパーティーライブラリのドキュメント検索には、このスキルを使わないでください。最新の外部 API ドキュメントには、Context7 などのドキュメント取得スキルを使ってください。
ワークフロー
- ユーザーの目的を明示し、必要なコンテキストを正確に尋ねる自然言語のクエリを 1 つ作成します。「Where」「What」「How」で始まる質問を優先してください。
- インストール済みのスキルディレクトリを特定し、
--projectに絶対パスのプロジェクトルートを、--queryに自然言語の検索クエリを指定して、node <skill-directory>/scripts/fast-context-search.mjsを実行します。 - 返されたファイル範囲を読み、提案された grep キーワードをローカルツールで使って、正確な定義を調査します。
- 完全性を確認します。関連するクラス、関数、変数、型、設定、ルート、呼び出し箇所、テストをすべて特定し、完全なシグネチャを確認してください。
- 不足している情報があれば、不足している概念、シンボル、または処理の流れを使って Fast Context に再度問い合わせます。
- 検索後も曖昧な点が残る場合は、動作を変更する前にユーザーに確認の質問をします。
デフォルトのコマンド
node /path/to/installed/fast-context/scripts/fast-context-search.mjs \
--project "/absolute/path/to/project" \
--query "Where is <feature or behavior> implemented, and what full definitions, signatures, call sites, config, and tests are relevant to <user goal>?" \
--max-results 10 \
--max-turns 3 \
--tree-depth 0 \
--exclude ".git,node_modules,dist,build,coverage"
絞り込んだシンボル検索には max_results を 3~5、機能の処理追跡には 10~20、広範な調査には 20~30 に設定します。簡単な検索には max_turns を 1、複数モジュールにまたがる複雑な処理の追跡には 4~5 に設定します。
クエリのパターン
- 実装箇所を特定する:
Where is <feature> implemented? Include entry points, core functions/classes, data types, config, and tests. - 処理の流れを追跡する:
How does <user action or API call> flow through the codebase from entry point to persistence/output? Include full definitions and call sites. - 変更に備える:
What code must change to <requirement>? Find current behavior, extension points, validation, tests, and adjacent risks. - テストを探す:
What tests cover <behavior>, and where should new coverage be added? Include fixtures and helpers.
調整とフォールバック
- 結果が浅すぎる場合は、
max_turnsまたはmax_resultsを増やすか、対象を絞ったシンボルや処理の流れで問い合わせます。 - リポジトリマップが大きすぎる場合は、
tree_depthを減らすか、exclude_pathsを追加するか、repo_map_mode: "bootstrap_hotspot"を使います。 - 認証に失敗した場合は、同じスクリプトを
--check-key付きで実行して、ローカルで Windsurf キーが検出されるか確認します。その後、Windsurf にログインするか、WINDSURF_API_KEYを設定して再試行します。 - ユーザーが明示的にキーを求めている場合は、
--print-keyを使ってローカルで表示するか、--key-envを使って現在のシェル用のexport WINDSURF_API_KEY=...コマンドを表示します。出力は秘密情報として扱ってください。 - Node の依存関係が不足している場合は、インストール済みの Fast Context スキルディレクトリで
npm installを実行します。 - スクリプトが見つからない、または引き続き失敗する場合は、その旨を簡潔に伝え、ローカルで
rg --files、rg、対象を絞ったファイルの読み取りを行います。
リファレンス
スクリプトのパラメーター仕様、レスポンス形式、調整方法を正確に確認する必要がある場合に限り、references/script-contract.md を読んでください。