ANTIGRAVITY LABEN
記事一覧/連携・プラグイン
連携・プラグイン/2026-07-18上級

黙って通していた確認ツールを、ソフト拒否から allow ルールに起こす

Antigravity CLI 1.1.3 で、ヘッドレスの -p は確認の要るツールを黙って自動承認する代わりに、ソフト拒否して必要な allow ルール名を stderr に示すようになりました。この出力を「発見」に使い、全許可からではなく空許可から最小権限を組み上げる逆向きのループを、動くハーネスと個人運用の実測でまとめます。

Antigravity CLI30headless2least-privilege2権限設計9自動化37security17

プレミアム記事

夜間に走らせている記事push用の自動化ジョブが、三ヶ月ずっと「成功しました」を返し続けていました。終了コードは 0、翌朝ログを見れば差分も入っている。何も問題はない、と思っていました。

ところが 1.1.3 の変更点を読んで、手が止まりました。「ヘッドレス実行(-p)が、確認の必要なツールで固まる、あるいは黙って自動承認してしまう問題を修正した」。つまり、あの三ヶ月のあいだ、私のジョブは確認が要るはずのツール呼び出しを、私に代わって黙って通していた可能性があります。成功していたのではなく、何を承認したのか私自身が把握できていなかった、という話でした。

その 1.1.3 の挙動変更を、ここでは逆手に取ります。個人開発で夜間に回している自動化を対象に、ソフト拒否が stderr に残す「必要な allow ルール名」を発見の材料として使い、全許可から絞り込むのではなく、空許可から最小の許可だけを積み上げます。手順とハーネスを、実際に回した数字とともに書きます。

「成功しました」としか言えなかった三ヶ月

無人ジョブの怖さは、失敗ではなく、成功の中身が見えないことにあります。

対話でエージェントを動かしているとき、確認ダイアログは邪魔に見えます。けれど、あの一瞬の「これを実行しますか」は、権限の境界を目で見て確かめる機会でもありました。ヘッドレスにした瞬間、その機会は消えます。1.1.3 より前の -p は、確認の要るツールを黙って通していました。ジョブは止まらない代わりに、境界の記録もどこにも残らない。

私が使っていたのは always-proceed に近い運用でした。深夜に人はいないのだから、全部通してくれ、と。動くことは動きます。ただ、「今夜このジョブは、どのツールを、どのパスに対して実行したのか」を後から一覧にできませんでした。できないという自覚すらありませんでした。

1.1.3 で、黙認からソフト拒否へ

1.1.3 の変更は、この前提を静かに、しかし決定的にひっくり返します。

これからのヘッドレス実行は、確認の要るツールに出くわしたとき、黙って通す代わりにソフト拒否します。そして、その操作を許可するために必要な allow ルール名を stderr に示します。加えて、always-proceed モードがワークスペースの外へのファイル書き込みを誤って自動承認していた問題も塞がれました。

ここで大事なのは、ソフト拒否が「エラー」ではなく「対話」だという点です。ジョブは停止しますが、なぜ止まったのか、何を許せば進むのかが、機械可読なかたちで stderr に出てくる。従来のダイアログが人間に対して口頭で尋ねていたことを、いまは自動化に対してテキストで返してくれます。

観点1.1.3 より前1.1.3 以降
確認の要るツール黙って自動承認ソフト拒否 + allow ルール名を stderr へ
ジョブの挙動止まらない(が中身は不明)足りない許可で止まる(理由が残る)
ワークスペース外書き込みalways-proceed で誤って承認され得た塞がれた
後からの監査困難(記録がない)stderr が発見源になる

多くの人はこの変更を「厳しくなった」と受け取ると思います。実際、昨夜まで通っていたジョブが今夜から止まる可能性があります。けれど私は、これは締め付けというより、見えなかったものが見えるようになった変更だと捉えています。止まったこと自体が、これまで黙って承認されていた操作の輪郭です。

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

この記事の続きを読む

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

この記事で得られること
1.1.3 のソフト拒否 stderr を発見源にして、全許可ではなく空許可から最小の allow ルールを組み上げる逆向きの手順
always-proceed が黙って通していたワークスペース外書き込みを、過去にさかのぼって洗い出す監査ハーネス
allow 設定が静かに広がっていないかを CI で見張るドリフトゲートの実装
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

連携・プラグイン2026-06-13
Antigravity CLI を非対話で回す — CI と cron に載せる前の設計
Gemini CLI の提供終了を機に移行した Antigravity CLI を、CI と cron に載せる前の設計です。対話前提のまま置くと固まる理由、二重起動に耐える冪等性、終了コードと JSON での成否判定、認証情報の安全な渡し方までを扱います。
Antigravity 基本2026-07-27
&& の右側は誰が承認していたのか — コマンドを分解してから allow ルールに当てる
承認画面に出ていたのは、実行されるコマンドの一部でした。&& や ; で連結したコマンドを引用符とコマンド置換を越えずに分解し、セグメント単位で allow ルールに当てるハーネスを、自分の運用コマンド45本での実測とともにまとめます。
連携・プラグイン2026-08-22
stream-json 入力で Antigravity CLI を外部から回すとき、会話をどこで切るか
print モードに加わった --input-format stream-json は、外部のドライバがセッションを開いたまま一件ずつ流せる仕組みです。24 件のジョブで会話が抱える量を計測し、バイト予算だけで切ると仕事の途中で文脈が切れることを確かめ、切る単位の決め方を整理します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →