ghost-exo について
ghost-exoは、exoエージェントワークフロープラットフォーム向けのルーティングスキルです。対象のexo MCPワークスペースを確認してから、デバッグ、改善、構築の手順を選び、誤った接続での操作を防ぎます。
主な機能
- 01デバッグ・改善・構築の手順へ振り分け
- 02利用可能なexo MCPサーバーを列挙
- 03whoamiで選択したワークスペースを確認
- 04MCPとRESTで同じワークスペースを使用
- 05承認段階で明示的な回答を要求
活用シーン
- 01特定のワークフロー実行の原因調査
- 02最近の実行結果に基づく既存ワークフローの改善
- 03新しいワークフローの作成やひな形構築
MCP 対応
各意図の実行にexo MCPサーバーを使用し、利用可能な接続を列挙してwhoamiで選択したワークスペースを確認します。RESTスクリプトも選択したMCPサーバーと同じワークスペースを参照するよう設定します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ghostsecurity/ skills --skill ghost-exoインストール後、Claude Code で/ghost-exoを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlintents/build.mddebug.mdimprove.mdresources/blueprint.template.mdbootstrap.mdcommon.mdworkflow-assessment.mdscripts/exo-skill.py詳細
exo
exo ワークフローのライフサイクルへの一元的な入り口です。このスキルはルーターです。リクエストを3つのインテントのいずれかに分類し、共有基盤を読み込んでから、該当するインテントの手順を読み込み、それに従います。
前提条件
Exo はエージェントワークフローのプラットフォームです。すべてのインテントは、exo MCP サーバーを介して Exo を操作します。
接続先を選択する
通常、複数の exo 接続が共存します。ワークスペースごとに1つの場合もあれば、1つのデプロイに複数ある場合もあります。何かをする前に、このセッションの exo MCP サーバーを列挙してください。
接続先が1つだけなら、それを使用してください。複数ある場合は、構造化質問ツールを使ってどれを使うか尋ね、ユーザーの回答があるまで停止してください。誤った接続先を選ぶと、間違ったワークスペースに書き込んでしまうためです。インテントの実行中に接続先を切り替えないでください。対象を変更する場合は、最初からやり直してください。
選択したサーバーで whoami を呼び出してください。接続先を確認し、ワークスペース ID を返します。ユーザーが変更しようとしているワークスペースを確認できるよう、その ID を伝えてください。exo MCP ツールが存在しない場合、または whoami が失敗した場合は、resources/bootstrap.md を読み、その手順に従ってから、再度 whoami を呼び出してください。成功するまでインテントを分類しないでください。
scripts/exo-skill.py は REST 経由で同じワークスペースにアクセスします。必ず同じワークスペースにアクセスする必要があります。このスクリプトはプロセス環境から EXO_API_URL、EXO_API_KEY、EXO_WORKSPACE_ID を読み取り、設定されていない場合は --profile で指定されたプロファイルにフォールバックします。プロファイルは ${XDG_CONFIG_HOME:-~/.config}/exo/<name>.env ファイルです。MCP サーバーの選択時に使用した名前を --profile に指定して、毎回呼び出してください。これにより、2つが別々のワークスペースを指すことを防げます。
最初に必ず読む
resources/common.md を読んでください。ここには、すべてのインテントが使用する共有基盤が記載されています。実行をたどる読み取りプリミティブ、スキルが使用できるツールとその宣言方法を決めるワーカー機能ルール、DTO の探索手順、各ステップが従う出力・メトリクス・完了・メモリに関するランタイム契約、プローブできないノード、そして improve インテントが debug の手順を呼び出すのではなくインラインで読む理由についての注記が含まれています。
インテントを分類する
| リクエストの内容 | インテント | 読むもの |
|---|---|---|
| 特定の実行が失敗した理由、run_id の実行で何が起きたか、1つの実行の診断 | debug | intents/debug.md |
| 直近の実行をもとに、既存のワークフローを改善、反復、調整、高速化すること | improve | intents/improve.md |
| アイデアを新しいワークフローにすること、ワークフローの構築・作成・ひな形作成、エージェントテンプレートのスラッグをもとに構築すること | build | intents/build.md |
必ず1つだけ選んでください。リクエストが複数のインテントにまたがり、本当に曖昧な場合は、推測せず、1つの質問でユーザーにどれを希望するか尋ねてください。
ユーザーとのやり取り
ユーザーへの質問はすべて、ハーネスの構造化質問ツール(ここでの名称は問いません)を通じて行ってください。箇条書きや「Q1/Q2/Q3」の形式を使った自由記述の質問は禁止です。質問が自由回答形式に思える場合も同様です。自由回答が必要な項目は具体的な選択肢に分け、ユーザーが独自の回答を入力できるようにしてください。関連する質問は1回の呼び出しにまとめ、ユーザーが返信を何度も繰り返すのではなく、構造化されたフォームに回答できるようにしてください。利用可能なツールの現在の制限を守り、構造化ツールが利用できない場合、または名前、指標、パスなど本質的に自由回答となる内容の場合に限り、文章で直接質問してください。これは、意図の判別、intents/build.md のビルドに関する質問、intents/improve.md の提案および再実行の承認確認、intents/debug.md の候補を判別するための質問すべてに適用されます。
承認、本番環境への書き込み、認証情報、再実行に関する確認では、必ず明示的な回答を求めてください。これらの質問に自動解決を設定してはいけません。
各インテントの境界は意図的に設けられたゲートであり、取り除くべき手間ではありません。最初の実行で終わるビルドが、そのまま自動的に improve に進むことはありません。構築から反復へ移るタイミングはユーザーが決定します。実行に失敗した improve の処理では、インテントを切り替えず、debug の手順をその場で読み進めてください。診断はループのサブ手順であり、別の依頼ではありません。
パス
インテントファイル内のすべてのパスは、このスキルのルートディレクトリからの相対パスです。実行ファイルは scripts/、共有ドキュメントとテンプレートは resources/、3つのレシピは intents/ にあります。agents/ にはハーネスごとのインターフェースメタデータが格納されていますが、どのレシピからも参照されません。