Plan Gate
計画を行動の前に可視化します。計画は承認ではありません。
運用権限、委任、復旧、報告についてはAGENTS.mdに従ってください。このスキルは計画ゲートのみを定義します。ワーカーのSOPやタスクボードアプリケーションは必要ありません。
読み取り専用プレフライト
正確なターゲット、既存の状態、リスクを特定するために必要なものを検査します。プレフライト中は状態を変更したり、機密情報を公開したりしないでください。
実行承認を要求する前に、重要な不明点を解決してください。利用可能な事実をユーザーに繰り返し尋ねることは避けてください。
ゲートを適用するタイミング
ファイル変更、状態変更コマンド、実装、リファクタリング、設定、インストール、永続的なワークフロー変更に対してゲートを適用します。
些細で境界が明確な単一の変更には、ゲートなしではなくショートゲートを使用します。会話内で提示される質問、分析、ドラフトには実行ゲートは必要ありません。
フルゲート
プランゲート — · リビジョン <番号>
理解したタスク / 目標
- <要求された成果>
前提条件
- [インプット] <ユーザー提供の前提>
- [実行] <ツールまたは環境の前提>
- [スコープ] <含まれる/除外される前提>
スコープ内
- <境界のあるアクション>
スコープ外
- <明示的な除外事項>
影響を受けるファイル/システム
- <正確なターゲットと意図された変更>
実行
- <手順>
検証
- <観測可能な合格基準>
ロールバック
- <タスクが所有する変更を元に戻す方法、または復旧の限界>
承認範囲
- <この承認が許可するもの>
- <新しい決定が必要なもの>
未解決の決定事項
- <重要な未解決の決定事項、またはなし>
ゲートステータス
- 承認待ち
- または ブロック中 — 決定が必要
該当しない前提条件カテゴリは省略してください。テンプレートを埋めるためだけに前提条件をでっち上げないでください。
ショートゲート
プランゲート — · リビジョン <番号>
- タスク: <要求された成果>
- ターゲット: <正確なファイル/システム>
- 変更: <境界のある変更>
- 前提条件: <タグ付けされた前提条件、ある場合>
- 検証: <確認>
- ロールバック: <元に戻す、または復旧の限界>
- ステータス: 承認待ち
タスクが些細でなくなった場合は、フルゲートに切り替えてください。
承認
可視化されたスコープに対する明示的な承認を待ちます。「承認」、「Go(実行)」、「Proceed(続行)」、または直接的な確認により、現在特定されているリビジョンが承認されます。
承認は、スコープが変更されない限り有効です。繰り返し要求したり、ワーカーに再度取得させたりしないでください。
ターゲット、アクション、要件、検証、ロールバック、または権限に重要な変更があった場合は、改訂されたゲートが必要です。その改訂が承認されるまで、影響を受ける作業を停止してください。
未解決の重要な決定は、「承認待ち」ではなく「ブロック中 — 決定が必要」を意味します。未知のターゲットを「関連ファイル」と呼ぶことで承認されたことにはなりません。
機密性の高い境界
以下を変更する前に、常に具体的なスコープを公開し、明示的な承認を取得してください。
- 認証情報、認証、または権限。
- サーバー、ネットワーキング、リモートアクセス(SSH、VPN)、またはパブリックポート。
- エージェントランタイム設定:チャネル、ルーティング、またはモデル設定。
- 永続的なIDまたは運用指示。
- 外部への送信、公開、アカウント、または支出。
- 破壊的操作またはクライアントデータ。
現在の会話におけるユーザーへの日常的な返信は、第三者への送信にはなりません。通常の会話の下書きは、永続的な指示の変更にはなりません。
認証情報を追加、置換、または修正する場合、読み取り専用プレフライト中に、ターゲットが実際にどのように認証情報を消費するか(独自の認証情報ストア、所有するファイル、環境変数、または転送中にシークレットを注入するプロキシなど)を、推測ではなく統合のスキーマ、ドキュメント、またはコードを使用して確認してください。ターゲットが自身で認証情報を読み取る必要がある場合、転送中に値を置換するプロキシを経由させないでください。統合がサポートする認証情報ストアまたは独自のファイルを使用してください。シークレットを要求する前に、シークレットの名前、保存場所、使用を許可される正確なホスト、統合が必要とするランタイム設定または再起動をゲートしてください。統合が所有する認証情報ファイルの場合、人間によるマスク入力、既存ファイルの上書き拒否、正確な所有者と制限的な権限、値を決して出力しない検証、ロールバックとしてそのファイルのみの削除をゲートしてください。統合が必要とする場合にのみ再起動を含めてください。シークレットは、マスクされたプロンプトまたはツール独自のシークレットストアを介してのみ収集してください。チャット、ログ、コマンドライン引数、チャットに貼り付けられたマルチラインシェルを介して収集したり、既存のシークレットをコピーまたはエイリアスしたりしないでください。必要な名前で新しいエントリを要求してください。マスクされたプロンプトまたはシークレットストアが利用できない場合、またはマスクされた要求がユーザーに届かない場合は、停止して、ユーザーに正確なシークレット名、保存先、使用を許可されるホストを伝え、ユーザーが自分でそこに入力できるようにしてください。新しい認証情報が検証されるまで古い認証情報を保持し、その削除が承認されたスコープ内にある場合にのみ古い認証情報を削除してください。
プレーンテキスト設定からシークレットストアへの移行の場合、各シークレットの所有者の完全なセットをゲートし、プレーンテキストの削除を検証後は一方通行として扱ってください。非シークレットの構造とハッシュのみをスナップショットし、プレーンテキストのロールバックコピーを決して作成しないでください。現在の各値をマスク入力で収集し、ツールがサポートする監査または移行プランナーを使用して、各保存値が正確なプレーンテキストソースと一致することを、どちらも表示せずに証明してください。承認されたパスに限定された計画をレビューおよびドライランし、適用直前に設定と計画の両方のハッシュを再確認し、一度だけ適用してください。正確なシークレット参照、残存するプレーンテキストのゼロ、未解決またはシャドウされた値、ツールが保持する他のストア(キャッシュ、セッションストア、認証ストア、バックアップ、一時ファイル、移行ファイル)にシークレットの残留物がないこと、および再起動前に有効な設定を検証してください。それを必要とする所有者のみを再起動し、新しいプロセスが実行中であることを(スケジュールされたレポートを信頼するのではなく)証明し、各認証情報の所有者をエンドツーエンドでテストしてください。すべての再起動後のチェックが合格するまで非シークレット移行計画を保持し、その後その計画のみを削除してください。漏洩または別のローテーション決定がない限り、認証情報をローテーションしないでください。
継続性と復旧
複数ステップの作業の場合、合意されたタスク記録の場所を書き込みスコープに含めてください。承認されたリビジョン、承認参照、実行証拠をそこに保存してください。特定の追跡アプリケーションは必要ありません。
記録識別子は1つのワークストリームに範囲を限定してください。作業が実質的に異なる目的またはアーティファクトファミリに移った場合、以前の証拠を統合したり履歴をまとめたりする代わりに、新しい記録シリーズを開始し、以前の証拠を相互参照してください。誤ったスコープのゲートが承認されておらず、アーティファクトを作成していない場合は、提案された識別子を破棄し、変更されていないスコープを正しいシリーズの下で再発行してください。移行作業を作成しないでください。
バージョンに敏感なインベントリの場合、観測されたランタイム/カタログバージョンを記録し、そのスナップショットを保存してください。アップグレードが保留中の場合は、許可リストまたは依存関係ターゲットを固定する前にアップグレードを完了して検証し、比較可能なアップグレード後のリビジョンを作成してください。決してアップグレード前の状態を黙って書き換えないでください。
中断後、再開する前に実際の状態を検査してください。結果が不確かなアクションを繰り返さないでください。
AGENTS.md の復旧制限を適用してください。設定されていない場合、ブロッカーに対して、リードエージェントと任意のワーカーで共有される、安全で論理的かつスコープ内の試行を最大1回許可します。再試行は必須ではなく、権限を拡大することはできません。再ゲートまたは新しいワーカーの開始は、許容回数をリセットしません。
復旧成功と復旧失敗の両方を報告してください。何が失敗したか、何を試みたか、その理由、観測された結果を保存してください。
正しく報告されたブロッカーは有効な結果であり、完了を即興で行う許可ではありません。要求された成果物が未完成であることを明確に述べてください。