◉ANTIGRAVITY LABEN
記事一覧/Agents & Manager
◈ Agents & Manager/2026-07-01上級

対話では動いたのに夜間だけ黙る——Antigravity のエージェント定義を対話と無人で同じ挙動にする

デスクトップの Antigravity では正しく動くのに、スケジュールした CLI 実行だと黙って何もしないエージェント。承認・文脈・秘密情報・実行環境の4点で経路差を吸収し、1つの定義を対話でも無人でも同じ挙動にする設計を、動くコードとプリフライト検査つきでまとめます。

antigravity458agents99cli7automation53

✦ プレミアム記事

金曜の夜、手元のデスクトップでは完璧に動いていたエージェントを、そのままスケジュール実行に載せました。翌朝ログを開くと、コミットもプッシュも何も起きていません。エラーすら出ていません。ただ、承認待ちの画面がどこにも表示されないまま、静かにタイムアウトしていたのです。

これは Antigravity 2.0 が IDE とチャット型エージェントの2アプリに分かれ、さらに Antigravity CLI(agy)や Gemini Enterprise Agent Platform 経由のクラウド実行まで経路が増えたことで、より起きやすくなった問題です。同じエージェント定義が、対話実行を前提にした瞬間に、無人実行では成立しなくなります。私自身、個人開発で複数のブログとアプリの更新を、日中は対話で、夜間はスケジュールした CLI で回しているので、この「経路差」に何度もつまずいてきました。

経路ごとに定義をフォークしてしまうと、片方を直してももう片方が古いまま腐っていきます。ここでは定義を1つに保ったまま、対話と無人の差を4点で吸収する設計を、動くコードとともに整理します。

経路差は「速さ」ではなく「前提」の違いで壊れる

無人実行が失敗するとき、原因はモデルの賢さでも速度でもありません。ほとんどが、対話実行なら人間が無意識に埋めていた前提が、無人経路では欠落することです。私の経験では、経路差は次の4か所にほぼ集約されます。

破綻点対話(デスクトップ)無人(CLI・スケジュール・クラウド)
承認人が承認ダイアログで最終判断するダイアログが出せず、黙って待って落ちる
文脈@ 参照や選択範囲、開いているフォルダが暗黙に渡るそれらは存在せず、渡した文字列だけが文脈
秘密情報キーチェーンから対話的に取り出せるキーチェーンは開けず、環境変数か秘密ファイルのみ
実行環境対話シェルの PATH と作業フォルダが効く最小の PATH・作業ディレクトリ不定

大切なのは、これらを「無人実行でも動くように定義を書き換える」のではなく、「経路を1か所で判定し、経路ごとの差を吸収する層を挟む」ことです。定義本体はどちらの経路でも同じものを読みます。

まず経路を1か所で判定する

判定を各所に散らすと、対話用の分岐がコードのあちこちに増えて破綻します。エントリポイントで一度だけ判定し、以降は環境変数で引き回します。

# surface.sh — 実行経路を1か所で判定して引き回す
# 標準入出力が端末に繋がっていれば対話、そうでなければ無人とみなす
if [ -t 0 ] && [ -t 1 ] && [ -z "${AGY_SCHEDULED:-}" ]; then
  export AGY_SURFACE="interactive"
else
  export AGY_SURFACE="unattended"
fi
echo "surface=$AGY_SURFACE"

スケジューラや CLI から起動する場合は、確実に無人と分かるよう AGY_SCHEDULED=1 も併せて渡しておきます。端末判定だけに頼ると、パイプで繋いだ対話ケースを取りこぼすことがあるためです。この一行の保険が、後述の承認ポリシーを安全側に倒します。

✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦デスクトップでは動いたのに CLI やスケジュール実行では黙って止まるエージェントの原因を、承認・文脈・秘密情報・実行環境の4点に切り分けて特定できるようになります
✦1つのエージェント定義を対話実行と無人実行の両方で同じ挙動にする、経路判定・承認ポリシー・秘密情報解決の実装パターンを自分のリポジトリへ導入できます
✦スケジュール登録の前に経路差を洗い出すプリフライト検査を組み込み、夜間の無人実行が翌朝に事故として顕在化するのを防げます
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

◈ Agents & Manager2026-04-20
Antigravity × Google Workspace API のビジネス自動化エージェント — Gmail・Drive・Sheets・Docs 連携の実装と運用
Antigravity と Google Workspace API(Gmail・Drive・Sheets・Docs)を組み合わせ、メール自動応答・文書生成・データ集計を担うAIエージェントの設計から本番運用までを、クォータ設計と失敗時の挙動まで含めてまとめました。
◈ Agents & Manager2026-09-04
エージェントの実効スコープを書き出しておくと、既定が変わった日に気づけます
Antigravity 1.1.25 で、Markdown 定義のカスタムエージェントが既定で周囲のスキル・ルール・サブエージェントを継承するようになりました。絞ったつもりのエージェントが更新後に広がっていないかを、実効スコープの JSON スナップショットと差分で確かめる手順を書き残します。
◈ Agents & Manager2026-08-21
Antigravity CLI の継承設定は description の重なりを見てから決めています
CLI 1.1.14 で markdown 定義エージェントの継承が inheritCustomizations 一本にまとまりました。手元の 47 本のスキルを実際に棚卸しして、継承を有効にするかどうかをコンテキスト量ではなく description の重なりで決めるまでの記録です。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます