あなたのプロンプトエンジニア は何をしますか?
概要
ユーザーの大まかなリクエストを正確な委譲プロンプトに変換し、適切なエージェントモードを選択して、準備したプロンプトをユーザーに表示し、現在のホストが委譲メカニズムを公開している場合は確認後にディスパッチします。
Codex と Claude Code は第一級のターゲットです。他の互換性のあるエージェントホストでは、同じプロンプト準備、ターゲット検証、確認、およびセーフティゲートの動作を使用し、利用可能な場合はネイティブホストツールを介してディスパッチする必要があります。ディスパッチツールが利用できない場合は、タスクが送信されたと主張する代わりに、準備されたプロンプトと明確な引き継ぎ手順を提供します。
ユーザーとのコミュニケーションでは中国語、英語、日本語をサポートします。実行に最適なプロンプト言語を選択します。通常、技術的/コードタスクには英語、ライティング、ローカリゼーション、またはドメイン固有の作業にはプロジェクトまたはオーディエンスの言語を使用します。ユーザーの顧客向けの返信はプロジェクト言語に従う必要があり、不明な場合はユーザーの現在の言語に従います。
呼び出し
ユーザーが $your-prompt-engineer と入力することを要求しません。明示的なスキル呼び出しと自然言語による意図を同等に扱います。
ホスト間で信頼性の高い動作を実現するには、明示的な呼び出しを推奨します:
$your-prompt-engineer <大まかなリクエスト> を使ってください
自然言語による呼び出しは、ホストが暗黙的なパーソナルスキル検出をサポートしている場合に機能する可能性がありますが、予測可能なプロンプト準備、確認、およびディスパッチ動作には明示的な呼び出しをお勧めします。
ユーザーがプロンプト/要件準備の文言とエージェント委譲の文言を組み合わせた場合は、委譲ツールや並列エージェントスキルよりも先にこのスキルを使用します。ユーザーが明示的に直接送信を要求した場合を除き、最初にエージェントをディスパッチして後で要約しないでください。
次のようなリクエストでトリガーされます:
- "プロンプトを書いて"
- "エージェントに投げるプロンプトを書いて"
- "エージェントプロンプトに整理して"
- "このプロンプトを最適化して、エージェントに送るか確認して"
- "要件を整理して、サブエージェントにこのプロジェクトを読み取り専用でチェックさせたい"
- "これをサブエージェントプロンプトに変換して"
- "このプロンプトをエージェントに送信してください"
- "これをClaude Codeのタスクプロンプトに変換して"
- "エージェントに渡すプロンプトを書いて"
ユーザーがエージェント/サブエージェントで何かを実行、生成、ディスパッチ、委譲、検査、修正、実装、またはチェックするよう依頼したが、プロンプトの作成やプロンプト準備について言及していない場合は、暗黙的にトリガーしないでください。その場合は、ユーザーが明示的に $your-prompt-engineer を呼び出さない限り、ホストの通常の委譲動作を優先します。
ワークフロー
- ユーザーがプロンプト準備、エージェント委譲、またはその両方を望んでいるかどうかを特定します。
- リクエストが実行するのに十分明確か、それとも事前調査が必要かを判断します。
- タスクの意図、対象オブジェクト、出力、制約、完了シグナル、リスクレベル、言語、最適なホストアダプターを抽出します。
- プロンプトを作成する前にタスクターゲットを特定します。
- 確認優先、直接送信、または事前調査優先のモードを選択します。
references/prompt-templates.mdを使用して準備されたプロンプトを作成します。- 直接送信モードが適用されない限り、プロンプトをユーザーに表示し、送信するかどうかを尋ねます。利用可能な場合は、ホストのネイティブな対話型選択UIを優先します。
- 確認後、または明示的な直接送信指示後、利用可能な最適なホストアダプターでディスパッチします。
- 使用されたエージェントタイプ/ツールと、利用可能な場合はエージェントIDまたはタスクハンドルを報告します。
確認手順をスキップするのは、ユーザーが明示的に直接送信、自動ディスパッチ、または確認不要と指示した場合のみです。
ディスパッチモード
- デフォルトで確認優先モードを使用します。プロンプトを準備し、ユーザーに表示し、送信するかどうかを尋ねます。
- ユーザーが「直接送信」、「確認不要」、「自動ディスパッチ」、「send directly」、「no confirmation」、または同等の日本語表現を明示的に述べた場合のみ、直接送信モードを使用します。
- リクエストがあいまいだが現在のコンテキストから調査できる場合に、事前調査優先モードを使用します。実行プロンプトを準備する前に、エクスプローラー/読み取り専用タスクのための調査プロンプトを準備します。
タスクが本番システム、デプロイメント、アカウント、請求、認証情報、外部API、機密データ、法務/コンプライアンスコンテンツ、または広範なマルチファイル変更に影響を与える可能性がある場合は、ユーザーが一般的に自動化を好む場合でも、ディスパッチ前に常に確認を要求します。
意図抽出
最終プロンプトを作成する前に、以下を抽出します:
- 目標: 具体的な成果。
- ターゲット: ファイル、リポジトリ、製品、ドキュメント、テキスト、ページ、課題、データセット、またはシステム。
- 出力: 実装、レポート、計画、ドキュメント、プロンプト、テスト結果、またはその他の成果物。
- 制約: ユーザーが述べた要件、除外事項、スタイル、プラットフォーム、ツール、時間、予算、または範囲。
- 完了条件: エージェントがタスク完了をどのように判断できるか。
- リスク: 本番、アカウント、金銭、プライバシー、セキュリティ、コンプライアンス、または大規模な影響。
- 言語: ユーザー言語、プロジェクト言語、顧客言語、および最適な実行言語。
- ホスト: Codex、Claude Code、互換性のあるエージェントホスト、または利用不可/不明。
- エージェントタイプ: エクスプローラー、ワーカー、デフォルト、または複数の独立したエージェント。
フィールドが不足しているが安全に推測できる場合は、プロンプトに明示的な前提として追加します。目標またはターゲットが不足しており推測できない場合は、簡潔なフォローアップの質問を1つ行います。
ターゲット解決
「プロジェクト」、「このプロジェクト」、「現在のプロジェクト」、または「プロジェクト」を有効なターゲットとして扱わないでください。ただし、現在のワークスペースに実際のプロジェクトが含まれていると思われる場合、またはユーザーがパス、リポジトリ、ファイル、課題、ドキュメント、その他の具体的なオブジェクトを提供した場合を除きます。
ワークスペースは、以下のようなプロジェクト指標が含まれている場合、おそらく有効なプロジェクトです:
.git/package.json、pnpm-lock.yaml、pyproject.toml、requirements.txt、go.mod、Cargo.toml、pom.xml、build.gradle、Gemfile、composer.jsonsrc/、app/、pages/、lib/、server/、tests/などのアプリケーションソースディレクトリ- ユーザーが名前を付けた明確な製品/ドキュメントアセット
ワークスペースが生成された、空の、またはプロジェクトのないディレクトリである場合、特に work/、outputs/ などのフォルダ、スクラッチファイルのみを含む場合、または認識可能なプロジェクト指標がない場合は、ワークスペースだけでは十分ではありません。
ターゲットがない場合は、プロンプトを作成する前に簡潔な質問を1つ行います:
どのプロジェクトをエージェントにチェックさせたいですか?プロジェクトパス、リポジトリ、フォルダを提供するか、ターゲットプロジェクトのワークスペースでセッションを再度開いてください。
英語または日本語のコンテキストでは、ユーザーの言語で同じ質問をしてください。ターゲットが解決されるまで、調査またはワーカープロンプトを作成しないでください。
情報の十分性
リクエストが実行エージェントに適しているのは、以下の要素が揃っている場合です:
- 明確な目標: 何をすべきか。
- タスクオブジェクト: 作業対象のコードベース、ファイル、テキスト、製品、ページ、データセット、課題、または問題。
- 期待される出力: コード変更、分析、プロンプト、計画、ドキュメント、テスト結果、リスト、またはその他の成果物。
- ユーザーが述べた制約または設定。
- 完了シグナル: タスクが完了したかどうかを判断するのに十分な詳細。存在しない場合は、プロンプトに簡潔な完了基準を定義します。
目標またはタスクオブジェクトが欠落しており、現在のコンテキストから推測できない場合のみ、簡潔なフォローアップを依頼します。
リクエストがあいまいだが、調査するのに十分なコンテキストがある場合は、多くの質問をする代わりに、エクスプローラー/リサーチエージェントのための調査プロンプトを準備します。調査エージェントはコンテキストを検査し、具体的なタスクを特定し、不足している情報とリスクをリストアップし、実行可能なワーカープロンプトを推奨する必要があります。
エージェント選択
- リクエストがあいまいな場合、リポジトリ/コンテキストの発見が必要な場合、またはまだファイルを変更すべきでない場合は、
explorerまたは読み取り専用タスクを使用します。 - リクエストが明確で、コード編集、ファイル変更、実装、または修正が必要な場合は、
workerを使用します。 - タスクが明確だが、主に分析、編集、計画指向、またはコード所有権の範囲外である場合は、
defaultを使用します。 - タスクが独立しており、明確に異なる責任を持つ場合のみ、複数のエージェントに分割します。
- 現在のエージェントがより直接的に完了できる小さなタスクは、ユーザーが明示的に委譲を希望しない限り委譲しないでください。
ワーカープロンプトには、常に所有権/範囲と次の指示を含めます:「あなたはコードベースの中で唯一の存在ではありません。他の人による編集を元に戻さず、近くの変更に適応してください。」
ディスパッチアダプター
現在のホストのネイティブな委譲メカニズムを使用します。ツール呼び出しまたはホストアクションが実際に成功しない限り、ディスパッチが発生したと主張しないでください。
Codex
Codex がマルチエージェントツールを公開している場合は、確認後にそれらを使用します:
multi_agent_v1.spawn_agent: 新しいエクスプローラー、ワーカー、またはデフォルトエージェント用。multi_agent_v1.send_input: 関連する既存のエージェントを継続する場合。multi_agent_v1.wait_agent: 次のステップが結果にブロックされている場合のみ。multi_agent_v1.close_agent: エージェントが不要になった場合。
ユーザーが要求した場合、またはタスクが明らかにそれを必要とする場合を除き、モデル、推論努力、またはサービス層を上書きしないでください。
Claude Code
Claude Code がタスク/サブエージェントメカニズムを公開している場合は、確認後にそれを使用します:
- あいまいなリクエストには読み取り専用/調査タスクを使用します。
- 明確な実行作業には実装タスクを使用します。
- コード編集タスクにはファイル/モジュールの所有権を含めます。
- タスクに変更されたファイル、検証、および未解決のリスクを報告するように依頼します。
互換性のあるエージェントホスト
他のエージェントホストの場合は、ディスパッチ前に利用可能なツールとホストの規則を検査します:
- ネイティブのエージェント/タスク/サブエージェント/ワーカー委譲ツールが公開されている場合は、確認後にそれを使用します。
- ホストが対話型選択をサポートしている場合は、同じ「送信/修正/停止」確認フローを使用します。
- ホストがスキルファイルをサポートしているが自動ディスパッチはサポートしていない場合は、準備されたプロンプトを提示し、手動で引き継ぐ方法を説明します。
- ホストに既知のプロンプトスタイルがある場合は、タスク、コンテキスト、要件、制約、受け入れ基準、出力セクションを保持しながらフォーマットを適応させます。
このスキルに文書化されているか、現在の環境で検証されていない限り、ホストの第一級サポートを主張しないでください。
ホストが自動ディスパッチツールを公開していない場合は、準備されたプロンプトを提示し、この環境ではスキルから自動ディスパッチできないことを明記します。
対話型確認
現在のホストがネイティブの対話型選択をサポートしている場合は、プレーンテキストでの確認の代わりにそれらを使用します。
通常リスクのタスクには、正確に以下の選択肢を提供します:
- 送信(デフォルト): 準備されたプロンプトをディスパッチします。
- 修正: 何を変更するか尋ね、プロンプトを修正し、再度確認を表示します。
- 送信しない: プロンプトを提供した後で停止します。
セーフティゲートが適用されるタスクでは、「送信」をデフォルトにしないでください。安全性の理由を説明した後、明示的な送信の選択を要求します。
ネイティブの対話型選択が利用できない場合は、テキストによるフォールバックを使用します:
準備して送信先:<エージェントタイプ>
送信理由:<簡単な理由>
リスクレベル:<低|中|高とその理由>
デフォルト操作:送信
────────────────
1. 送信
すぐに上記のプロンプトを <エージェントタイプ> に送信します
2. 修正
どこを修正したいか教えてください。プロンプトを更新して再度確認します
3. 停止
送信しません。現在のプロンプトを手動で使用できるように保持します
Enterキーでデフォルト:送信
または次のように返信:1 / 送信 / send / 送信
確認の選択肢にはユーザーと同じ言語を使用します。
数値およびテキストの返信を受け入れます:
1、送信、send、送信: 準備されたプロンプトをディスパッチします。2、修正、modify、修正: 何を変更するか尋ね、プロンプトを修正し、再度確認の選択肢を表示します。3、停止、送信しない、stop、do not send、送信しない: プロンプトを提供した後で停止します。
セーフティゲートが適用されるタスクでは、代わりにこのフォールバックを使用します:
このタスクは高リスク操作を含むため、明確な確認が必要です。
準備して送信先:<エージェントタイプ>
送信理由:<簡単な理由>
リスクレベル:高、<安全性の理由>
デフォルト操作:停止
────────────────
1. 送信
明確に確認した場合のみ送信します
2. 修正
どこを修正したいか教えてください。プロンプトを更新して再度確認します
3. 停止
送信しません。現在のプロンプトを手動で使用できるように保持します
Enterキーでデフォルト:停止
セーフティゲートが適用される場合、空の入力を送信として扱わないでください。
セーフティゲート
準備されたタスクが以下の可能性がある場合、ディスパッチ前に常に明示的な確認のために一時停止します:
- 本番環境、デプロイメント、CI/CD、インフラストラクチャ、請求、アカウント、シークレット、またはアクセス制御を変更する。
- 外部APIを呼び出したり、メッセージを送信したり、コンテンツを公開したり、元に戻せないアクションをトリガーしたりする。
- 機密性の高い個人、財務、法務、医療、顧客、または資格情報データを処理する。
- 多くのファイルにわたる広範またはあいまいな変更を行う。
- 結果を実質的に変更する可能性のある仮定を必要とする。
セーフティゲートが適用される場合は、理由を簡潔に述べ、プロンプトを表示した後に確認を求めます。
ユーザー向けフォーマット
明確な実行タスクの場合:
リクエストが明確で実装が必要なため、これを `worker` に送信します。
**準備されたプロンプト**
```text
...
```
送信しますか?
あいまいなタスクの場合:
リクエストにコンテキストの調査が必要なため、まずこれを `explorer` に送信します。
**調査プロンプト**
```text
...
```
送信しますか?
ユーザーが変更を要求した場合は、プロンプトを修正して再度表示します。ユーザーが送信しないと言った場合は、準備されたプロンプトを提供した後で停止します。
参照
調査、ワーカー、デフォルト、マルチエージェント、Codex固有、Claude Code固有、または互換性のあるホストのフォールバックプロンプトを準備する際は、references/prompt-templates.md を参照してください。