skill-context-detection について
skill-context-detectionは、作業が開発向けかナレッジ向けかを判定するCodex CLIの内部スキルです。プロンプトとプロジェクトの情報を組み合わせ、明示的なモード設定を尊重しながら、ワークフローの重点や出力、提案を調整します。
主な機能
- 01開発向けかナレッジ向けかを判定
- 02プロンプトとプロジェクト情報を利用
- 03明示的なモード設定を尊重
- 04ワークフローの重点と出力を調整
- 05関連するワークフロースキルを提案
活用シーン
- 01タスクに合った調査方法の選択
- 02プロジェクトに応じた成果物の調整
- 03手動で選んだ作業モードの適用
- 04デバッグや調査向けスキルの提案
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nyldn/ claude-octopus --skill skill-context-detectionインストール後、Claude Code で/skill-context-detectionを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
ホスト:Codex CLI — このスキルは Claude Code 向けに設計され、Codex 用に適応されています。 相互参照コマンドでは、
/octo:*スラッシュコマンドではなく、Codex にインストールされたスキル名を使用します。 アクティブな Codex シェルとサブエージェントツールを使用してください。現在のセッションで利用可能であることが確認されるまでは、プロバイダー、モデル、ホストのサブエージェントが利用可能だと主張しないでください。 ホストツールの同等機能については、skills/blocks/codex-host-adapter.mdを参照してください。
コンテキスト検出 - 内部スキル
目的
このスキルは、ユーザーが開発コンテキスト(コード中心)またはナレッジコンテキスト(調査・戦略中心)のどちらで作業しているかを判断するための自動コンテキスト検出機能を提供します。これは、手動での /octo:km 切り替えを、インテリジェントな自動検出に置き換えるものです。
検出アルゴリズム
ワークフロースキルが有効になったら、次のシグナルを使ってコンテキストを検出します。
ステップ 1:明示的な上書きの確認
ユーザーが /octo:km on または /octo:km off でモードを明示的に設定している場合は、その設定に従います。
# Check if knowledge mode is explicitly set
if [[ -f ~/.claude-octopus/config/knowledge-mode ]]; then
EXPLICIT_MODE=$(cat ~/.claude-octopus/config/knowledge-mode)
if [[ "$EXPLICIT_MODE" == "on" ]]; then
echo "knowledge"
exit 0
elif [[ "$EXPLICIT_MODE" == "off" ]]; then
echo "dev"
exit 0
fi
fi
# If "auto" or not set, proceed with auto-detection
ステップ 2:プロンプト内容の分析(最も強いシグナル)
ナレッジコンテキストの指標(プロンプトに次の用語が含まれているか確認します):
- ビジネス/戦略:「市場」、「ROI」、「ステークホルダー」、「戦略」、「ビジネスケース」、「競合」
- 調査:「文献」、「統合」、「学術」、「論文」、「研究課題」
- UX:「ペルソナ」、「ユーザー調査」、「ジャーニーマップ」、「ペインポイント」、「インタビュー」
- 成果物:「プレゼンテーション」、「レポート」、「PRD」、「提案書」、「エグゼクティブサマリー」
開発コンテキストの指標(プロンプトに次の用語が含まれているか確認します):
- 技術:「API」、「エンドポイント」、「データベース」、「関数」、「クラス」、「モジュール」
- アクション:「実装」、「デバッグ」、「リファクタリング」、「テスト」、「デプロイ」、「ビルド」
- 成果物:「コード」、「テスト」、「マイグレーション」、「スキーマ」、「コントローラー」
スコアリング:
- プロンプト内のナレッジ指標を数えます
- プロンプト内の開発指標を数えます
- 数の多い方を採用します
- 同数の場合は、プロジェクトのコンテキストを確認します(ステップ 3)
ステップ 3:プロジェクトコンテキストの分析(二次シグナル)
開発プロジェクトの指標:
package.json、Cargo.toml、go.mod、pyproject.toml、pom.xmlがある- コードファイルを含む
src/、lib/、app/ディレクトリがある - 最近のファイルが
.ts、.js、.py、.go、.rs、.java
ナレッジプロジェクトの指標:
docs/、research/、strategy/、reports/ディレクトリがある- ファイルの大半が
.md、.docx、.pdf、.pptx - コード用パッケージマネージャーが検出されない
ステップ 4:デフォルトのフォールバック
シグナルが曖昧、または同数の場合:
- コードファイルのある Git リポジトリ → デフォルトで開発コンテキスト
- コードファイルが検出されない → デフォルトでナレッジコンテキスト
コンテキスト出力形式
ワークフロースキルで使用できるよう、検出したコンテキストを構造化オブジェクトとして返します。
{
"context": "dev" | "knowledge",
"confidence": "high" | "medium" | "low",
"signals": {
"prompt_indicators": ["API", "endpoint", "database"],
"project_type": "node_typescript",
"explicit_override": false
}
}
ワークフロースキルでのコンテキストの使い方
flow-discover(調査)
| 項目 | 開発コンテキスト | ナレッジコンテキスト |
|---|---|---|
| 調査の焦点 | 技術的な実装、ライブラリの比較、コードパターン | 市場分析、学術的な統合、競合調査 |
| 主なエージェント | Codex(実装)、Antigravity(エコシステム) | Antigravity(分析)、research-synthesizer |
| 出力形式 | コード例、API の比較、技術的な推奨事項 | レポート、フレームワーク、戦略的な推奨事項 |
| ビジュアルバナー | 🔍 [Dev] Discover Phase: Technical research | 🔍 [Knowledge] Discover Phase: Strategic research |
flow-develop(構築)
| 項目 | 開発コンテキスト | ナレッジコンテキスト |
|---|---|---|
| 構築の焦点 | コード生成、実装、アーキテクチャ | PRD、戦略文書、プレゼンテーション |
| 主なエージェント | Codex(コード)、backend-architect、tdd-orchestrator | product-writer、strategy-analyst、exec-communicator |
| 出力形式 | ソースファイル、テスト、マイグレーション | ドキュメント、フレームワーク、アクションプラン |
| ビジュアルバナー | 🛠️ [Dev] Develop Phase: Building code | 🛠️ [Knowledge] Develop Phase: Building deliverables |
flow-deliver(レビュー)
| 項目 | 開発コンテキスト | ナレッジコンテキスト |
|---|---|---|
| レビューの焦点 | コード品質、セキュリティ、パフォーマンス | ドキュメントの品質、論拠の強さ、網羅性 |
| 主なエージェント | code-reviewer, security-auditor | exec-communicator, strategy-analyst |
| 品質ゲート | OWASP、テストカバレッジ、保守性 | エビデンスの品質、明確さ、実行可能性 |
| ビジュアルバナー | ✅ [Dev] Deliver Phase: Code review | ✅ [Knowledge] Deliver Phase: Document review |
ビジュアルインジケーターの更新
コンテキストが検出されたら、コンテキストが表示されるようビジュアルバナーを更新します。
開発コンテキスト:
🐙 **CLAUDE OCTOPUS ACTIVATED** - Multi-provider research mode
🔍 [Dev] Discover Phase: Researching OAuth implementation patterns
Providers:
🔴 Codex CLI - Technical implementation analysis
🟡 Antigravity CLI - Ecosystem and library comparison
🔵 Claude - Strategic synthesis
ナレッジコンテキスト:
🐙 **CLAUDE OCTOPUS ACTIVATED** - Multi-provider research mode
🔍 [Knowledge] Discover Phase: Researching market entry strategies
Providers:
🔴 Codex CLI - Data analysis and modeling
🟡 Antigravity CLI - Market and competitive research
🔵 Claude - Strategic synthesis
ワークフロースキルへの実装
各フロースキルでは、次のことを行う必要があります。
- ワークフローの実行前に、コンテキスト検出を実行する
- ビジュアルバナーに検出されたコンテキストを表示する
- コンテキストに応じて動作を調整する:
- エージェントの選択
- 外部 CLI 向けのプロンプトの組み立て
- 出力形式の期待値
- 品質ゲートの基準
統合例(擬似コード)
When this skill activates:
1. **Detect context**
- Analyze user's prompt for knowledge vs dev indicators
- Check project type (code repo vs doc-heavy)
- Check for explicit override (~/.claude-octopus/config/knowledge-mode)
- Determine: "dev" or "knowledge" with confidence level
2. **Show context-aware banner**
🐙 CLAUDE OCTOPUS ACTIVATED - Multi-provider [research|implementation|validation] mode [Phase Emoji] [Context] [Phase Name]: [Description]
Detected Context: [Dev|Knowledge] (confidence: [high|medium|low])
3. **Execute workflow with context-appropriate behavior**
- Frame prompts for external providers based on context
- Select appropriate synthesis approach
- Apply context-specific quality gates
オーバーライドの仕組み
自動検出が正しくない場合、ユーザーは引き続きコンテキストを明示的に設定できます。
# Force knowledge mode
/octo:km on
# Force dev mode
/octo:km off
# Return to auto-detection
/octo:km auto
明示的なオーバーライドが設定されると、ユーザーが「auto」にリセットするまで、コンテキスト検出はその設定に従います。
信頼度レベル
- 高:プロンプトとプロジェクトのコンテキストの両方で強いシグナルが一致する
- 中:プロンプトまたはプロジェクトのコンテキストのどちらかにシグナルがある(両方ではない)
- 低:シグナルが曖昧なため、フォールバックのデフォルトを使用する
信頼度が「低」の場合は、検出されたコンテキストをユーザーに簡潔に伝えることを検討してください。
「これは[開発/ナレッジ]タスクとして検出されました。異なる場合は、
/octo:kmを使ってオーバーライドできます。」
コンテキスト検出のテスト
コンテキスト検出が機能していることを確認するには、次の手順を実行します。
- コードリポジトリで「octo research caching patterns」と尋ねる → 開発コンテキストが検出されるはずです
- 同じリポジトリで「octo research market opportunities」と尋ねる → ナレッジコンテキストが検出されるはずです
/octo:km onを設定した状態で「octo research API patterns」と尋ねる → ナレッジコンテキストが使用されるはずです(明示的なオーバーライド)
スキルの積極的な提案
ユーザーの作業段階を検出したら、関連するコマンドを提案します。
| 検出されたコンテキスト | 提案 |
|---|---|
| ブレインストーミング/アイデアの検討 | 構造化されたアイデア出しには /octo:brainstorm を検討してください |
| 計画や戦略のレビュー | 戦略的な計画には /octo:plan を検討してください |
| エラーや失敗のデバッグ | 体系的な調査には /octo:debug を検討してください |
| テストの作成または実行 | テスト駆動開発には /octo:tdd を検討してください |
| マージ前のコードレビュー | 通常のレビューには Claude ネイティブの /review を使用し、複数の AI によるエスカレーションには /octo:review を提案してください |
| デプロイまたはリリースの準備完了 | 品質ゲートを通過するデリバリーには /octo:deliver を検討してください |
| トピックの調査 | 複数の情報源を統合するには /octo:research を検討してください |
| セキュリティ関連の作業 | 通常のセキュリティレビューには Claude ネイティブの /security-review を使用し、OWASP の詳細な監査や敵対的監査へのエスカレーションには /octo:security を提案してください |
提案形式
提案は押しつけがましくならないよう、短い注記として末尾に追加してください。
💡 Tip: You appear to be debugging — `/octo:debug` provides systematic investigation with multi-AI support.
継続的なオプトアウト
- ユーザーが「提案はやめて」または「ヒントはもういらない」と言った場合は、
.claude-octopus/preferences.jsonのOCTO_PROACTIVE_SUGGESTIONS=offを設定します - ユーザーが「積極的に提案して」または「ヒントをオンにして」と言った場合は、
OCTO_PROACTIVE_SUGGESTIONS=onを設定します - 提案時に設定を確認し、オプトアウトされている場合は決して提案しません
- 現在のモードを尊重します。開発モードとナレッジ作業モードでは、提案内容が異なります
提案の再有効化
以前に無効にしたユーザーは、いつでも提案を再有効化できます:
- 「be proactive」、「turn on tips」、または「enable suggestions」と伝えます
~/.claude-octopus/preferences.jsonを手動で編集し、OCTO_PROACTIVE_SUGGESTIONSをonに設定します- デフォルトの状態(設定がない場合)では、提案は有効です
検出シグナル
以下の情報から作業段階を検出します:
- 最近のツール使用状況(Bash の呼び出しが多い場合は、実装またはデバッグ中である可能性が高いです)
- 編集中のファイルの種類(.test.ts はテスト、.md はドキュメントです)
- 最近の出力に含まれるエラーパターン(スタックトレースはデバッグを示します)
- Git の状態(未コミットの変更がある場合は実装中、作業ツリーがクリーンな場合はレビューまたはリリースの準備ができています)