mcpField
A
agy-delegate

agy-delegate

github.com/amelnagdyエージェントワークフロー2.5k6.0k 回インストール2 週間前に更新
リポジトリ

agy-delegate について

agy-delegateは、範囲を限定したコーディングタスクをGoogle Antigravity CLIに委任し、オーケストレーターがレビューとコミットを行うためのスキルです。中継ヘルパーが構造化された結果を保存し、モデルや権限の設定にも対応します。

主な機能

  1. 01Antigravityへの限定タスクの委任
  2. 02背景情報とゲートを含む依頼文の作成
  3. 03中継ヘルパーによる構造化 result.json の生成
  4. 04読み取り専用とサンドボックスの設定
  5. 05オーケストレーターによるレビューとコミット

活用シーン

  1. 01範囲を限定した実装タスクの委任
  2. 02コミット前の生成コードのレビューと検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/amelnagdy/delegate-skills --skill agy-delegate

インストール後、Claude Code で/agy-delegateを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
dispatch-and-poll.md
multi-task-queues.md
review-and-land.md
writing-the-brief.md
scripts/
relay.mjs

詳細

Antigravity Delegate

あなたはオーケストレーターです。このスキルを使うと、範囲を限定したコーディングタスクを別の実装担当者である Google Antigravity CLI(agy)に任せ、その成果を確認して自分で取り込めます。依頼内容を作成し、判断の責任を負います。Antigravity は独自の会話でコードを記述し、あなたが検証してコミットします。

ここでの内容は、特定のオーケストレーションエージェントに限定されません。この手順に必要なのは、シェルコマンドを実行してファイルを読み取る機能だけなので、同等の機能を持つ任意のエージェントで実行できます。Claude Code 向けに設計され、Claude Code で実行されています。他のオーケストレーターは、設計上は対応していますが、まだ実証されていないものとして扱ってください。

使用しない場合

  • タスクがインラインで実行できるほど小さい場合。委任のオーバーヘッドに見合いません。
  • agy CLI がインストールされていない、または認証されていない場合。Antigravity の CLI ドキュメントに従ってインストールし、初回起動時のセットアップを行ってください。
  • 自分でコードを書きたい場合、または自分が書いたコードに対する Antigravity の意見だけが必要な場合。--read-only を指定すれば、編集を行わずにレビューを依頼できますが、通常のレビューであれば、そもそも委任が不要な場合もあります。

前提条件(一度だけ確認)

  1. agy help が成功すること。成功しない場合は、Antigravity CLI をインストールし、初回起動時のセットアップを完了してください。
  2. agy models が成功すること。これにより、CLI が認証され、利用可能なモデルラベルを一覧表示できることが確認できます。
  3. 対象の git リポジトリ内にいること(または --cd で対象を指定すること)。

これらの確認だけでは、ヘッドレスモードでの書き込みが許可されるとは限りません。--print モードでは、Antigravity は書き込み権限を求めるプロンプトを表示できず、自動的に拒否する場合があります。リレーはこの拒否を検出し、完了したと報告しないようにします。

実装担当モデルを選ぶ

agy には設定済みのデフォルトモデルがあるため、--model は任意です。タスクに適した Antigravity のモデルラベルを人間が指定している場合は、--model を使用してください。それ以外の場合は、推測せずに Antigravity の現在のデフォルトを使ってください。

手順

タスクごとに、次の5つのステップを実行します。ステップ1、4、5では判断が必要ですが、2と3は機械的な処理です。

1. 依頼内容を作成する

Antigravity が確認できるのは、送信したテキストとワークスペース内で調査できる内容だけです。チャット履歴や共有コンテキストはありません。タスクに必要な情報はすべて依頼内容に含めます。目標、現状、変更する内容、変更せずに残す内容、プロジェクトで実際に使用するゲートコマンド、報告の要件を記載してください。Antigravity はコミットを行わないこと(あなたが行うこと)も伝えてください。依頼1件につきタスクは1つにしてください。詳しいガイダンスとテンプレートについては、references/writing-the-brief.md を参照してください。

2. 実行を依頼する

Codex によるバックグラウンド作業のオーケストレーションでは、まず別のサポートユーティリティである codex-background をインストールして設定してください。MCP ツールまたはレジストリが見つからない場合は、そこで停止してセットアップが必要であることを報告してください。モデル主導のポーリングに暗黙的にフォールバックしてはいけません。その後、以下のシェルの例の代わりに、登録済みの delegate_run MCP ツールを1回呼び出してください。 構造化された共通引数、変更しないプロバイダーフラグ、runId を使った再接続については、そのスキルに従ってください。完了するまでリクエストを保留し、その後、このスキルのレビューと取り込みの手順を続けてください。その他のオーケストレーターは、以下のシェルワークフローを使用してください。

同梱のヘルパーを使って、依頼内容を Antigravity に送信します。ヘルパーは agy --print をラップし、実行内容を記録して、構造化された result.json を書き出します。つまり、必要なのは「コマンドを実行し、ファイルを読む」ことだけです。以下の <skill-dir> は、このスキルがインストールされているディレクトリ、つまりこの SKILL.md を含むフォルダーです。

node "<skill-dir>/scripts/relay.mjs" --brief brief.txt --cd /path/to/repo
# choose a model label:                 add --model "<label from agy models>"
# reasoning effort (low, medium, high): add --effort high
# read-only (sandbox — no edits):       add --read-only
# enable Antigravity terminal sandbox:  add --sandbox
# resume the most recent conversation:  add --resume-last  (delta brief only)
# see all options:                      node .../relay.mjs --help

このヘルパーはデフォルトで新しい Antigravity プロジェクトを開始し、agy に明示的なワークスペースを指定するため、--add-dir <repo>(絶対パスの --cd パス)を渡します。デフォルトでは --dangerously-skip-permissions を渡しません。 仕組み、フラグ、result.json の形式については、references/dispatch-and-poll.md を参照してください。

3. 完了を待つ

codex-background を使用する Codex は、元の MCP リクエストを保留したままにします。モデルによるスリープ、ステータスの確認、ログのポーリングは行いません。中断されたリクエストに再接続する場合にのみ delegate_wait を使用します。

このヘルパーは Antigravity が完了するまでブロックするため、利用可能なオーケストレーターの機能で実行し、戻ってきたら再開してください。

  • Claude Code: run_in_background: true を指定して Bash 呼び出しを実行します。完了すると通知されます。
  • 通常のシェル/その他のエージェント: 短いタスクはフォアグラウンドで実行し、長いタスクはバックグラウンドで実行して結果ファイルをポーリングします。

進捗トラッカーよりも実際の状態を信頼してください。result.json が書き込まれ、プロセスが終了した時点で実行は完了です。ステータス行ではなく、作業ツリーを確認してください。実装者の完全なレポートは result.json の finalMessage フィールドにあります(レポートマーカーで囲まれた部分にも、標準出力に全文が出力されます)。

4. レビュー — 自己申告を鵜呑みにしない

Antigravity の result.json には、最終メッセージと各種チェックの合格申告が含まれます。そのまま受け入れず、必ず再確認してください。

  • プロジェクトのチェックを自分で再実行します(手順 1 のテスト/lint/ビルドコマンド)。
  • 依頼内容に照らして差分を確認します。 Antigravity は依頼どおりに、余計なことも不足もなく実装しましたか? touchedFiles を確認の起点にしてください。
  • インストール済みの場合は、差分に関連するガードスキルを実行します。
  • スキーマ/マイグレーションの変更は往復検証し、削除の場合は参照が残っていないか grep で確認します。

完全なチェックリスト:references/review-and-land.md。

5. 取り込む

実装者が作業ツリーを編集し、オーケストレーターがコミットします。 チェックがすべて通り、差分に問題がないことを確認した後にのみ、次の作業を行ってください。

  • 検証済みの変更を自分で、明確なメッセージを付けてコミットします。
  • 修正が必要な場合は、--resume-last を付けて差分の依頼を送り、再度レビューします。

権限モデル

Antigravity は独自の権限ポリシーを管理します。リレーはデフォルトではそのポリシーを回避しません。人間が Antigravity にツールの権限リクエストを自動承認させることを明示的に了承した場合に限り、--dangerously-skip-permissions を使用してください。--read-only は --sandbox と --dangerously-skip-permissions を組み合わせます。強制適用を担うのはサンドボックスです。ワークスペース内の書き込みはオーバーレイされて破棄され、ワークスペース外のパスは EPERM で失敗します。一方、自動承認によって可能になるのは、サンドボックス内でツールを実行することだけです。ユーザー向けフラグとしては --read-only は --dangerously-skip-permissions と相互排他的です。サンドボックスなしの --dangerously-skip-permissions だけの場合は、フルアクセスになります。書き込みを行う実行でターミナルのサンドボックスを有効にしたい場合は、--sandbox を単独で使用してください。 ヘッドレスの --print が書き込みを自動拒否した場合、リレーは status: "failed" を報告し、ゼロ以外の終了コードで終了します。リレーは --read-only の実行前後で作業ツリーのフィンガープリントを取得し、result.json の readOnlyViolation で違反を報告します。設定の許可ルールはヘッドレスの --print 実行にも適用されますが、ルールの照合方法と設定ファイルの場所は agy のバージョンやプラットフォームによって異なります。そのため、拒否されるかどうかは決めつけず、使用環境で確認してください。これまでに確認された注意点は2つあります。1つ目は完全一致の動作です。Windows の agy 1.2.5 では、command(<name>) は引数のないコマンド単体にしか一致しませんでした。command(git) では実際の git status は許可されず、command(regex:git .+) が必要でした(issue #614 comment)。一方、macOS の agy 1.2.0 では、同じ command(git) ルールで git status が許可されました。つまり、この完全一致の注意点はバージョンを問わず一定ではありません。2つ目は Windows での問題です。Antigravity の権限エンジンには未解決の上流不具合(issue #614)があり、解決済みのパスが空白で分割されます。そのため、C:\Program Files\... 配下のバイナリは最初の断片として照合され、どの command(<name>) ルールにも一致しません。git 自体が置かれている場所も一般的にはここであり、これは node/npm に限らず、委任されたコーディングタスクで最もよく発生する原因です。agy が読み込むファイルについては、Windows の agy 1.2.5 で実環境で確認したところ、有効なルールは ~/.gemini/config/config.json の userSettings.globalPermissionGrants.allow であり、agy 自身の拒否メッセージが示す ~/.gemini/antigravity-cli/settings.json の permissions.allow ではありませんでした。macOS の agy 1.2.0 では、antigravity-cli/settings.json のルールが適用されることを実環境で確認しました。どちらのファイルも頼りにする前に、お使いのバージョンで両方を再確認してください。詳細は references/dispatch-and-poll.md を参照してください。人間の明示的な承認なしに、バイパスフラグを追加しないでください。

認可モデル

委任するかどうかは人間が決めます。「このキューを実行して」「進めて」などの指示があれば、検証済みでゲートを通過した作業をコミットすることが合意された契約です。この委任には2つの制限があります。隠さずに報告する(Antigravity の設計上の判断、妥当ではあるものの依頼されていない変更、ブロッキング要因ではない細かな指摘は、黙ってそのまま受け入れずに報告します)、そしてスコープの変更が必要な場合は停止する(正しく完了するために依頼の範囲を超える必要がある場合は、自分で権限を広げずに確認を求めます)。詳細は references/review-and-land.md を参照してください。

参考資料

  • references/writing-the-brief.md - Antigravity が指示を確認できない状態でも実行できる簡潔なブリーフの書き方です。構成、XML ブロック、レポートの契約、実際のゲートコマンドについて説明します。
  • references/dispatch-and-poll.md - relay.mjs のフラグ、result.json の契約、オーケストレーターごとのバックグラウンド実行、実行に問題が起きた場合の復旧方法について説明します。
  • references/review-and-land.md - レビューチェックリスト、コミットの境界、--resume-last を使った手直しサイクルについて説明します。
  • references/multi-task-queues.md - 順次キューの実行方法について説明します。制約の引き継ぎ、進捗の追跡、実行終了時の整合性チェックが含まれます。

コメント