午後3時にクォータが尽きるという問題
Antigravity 2.0 を本格的に使い始めて最初にぶつかったのは、性能でも精度でもなく「午後になると急にエージェントが動かなくなる」という壁でした。朝のうちに複数のエージェントへ調査・リファクタ・テスト生成をまとめて投げると、気持ちよく進むのですが、肝心の本実装に取りかかる午後には上限に達していて、一番大事な作業が翌日に持ち越しになってしまう。
クォータ(利用上限)の表示が 2.0 では明示されていないため、自分が今どれだけ使ったのかが見えません。これは複数のアプリと4つのブログを個人開発で並行運用している私自身にとって、想像以上に運用設計の問題でした。ここでは、エージェント1本あたりの消費を実測し、上限に当たらないための予算配分を「設計」として組み立てていきます。私自身が App Store と Google Play で個人開発を続けるなかで較正してきた運用です。
まず「重いタスク」と「軽いタスク」を分けて数える
クォータ管理の第一歩は、すべてのエージェント実行を一律に数えないことです。Antigravity のエージェント実行は、内部で何度もモデルを呼び、ツールを使い、長いコンテキストを読み込みます。同じ「1回の実行」でも、消費量は10倍以上ばらつきます。
私は実行を3階層に分けて管理しています。
消費階層の分類
重量級(heavy) : コードベース全体を読んで設計判断するタスク、マルチファイルのリファクタ、長い調査。1本で大きく消費します。
中量級(medium) : 単一機能の実装、テスト生成、限定的なデバッグ。
軽量級(light) : 1ファイルの修正、コミットメッセージ生成、短い質問。
この分類をエージェントに投げる前に自分で付けておくだけで、「今日はもう重量級を2本走らせたから、午後は中量級までに抑えよう」という判断ができるようになります。感覚ではなく数えることが、上限管理の出発点です。
エージェント1本あたりの消費を見積もる
正確なトークン数は 2.0 では取りづらいのですが、概算は立てられます。私が使っている見積もり式は次のようなものです。
# estimate_cost.py — エージェント1実行の概算消費ユニットを見積もる
# 正確な課金単位ではなく「相対的な重さ」を揃えるための内部指標
def estimate_units (task):
# 読み込むファイル数 × 平均行数で入力規模を概算
input_scale = task[ "files_read" ] * task[ "avg_lines" ]
# ツール呼び出し1回ごとにモデルが再度走るため重みを掛ける
tool_overhead = task[ "tool_calls" ] * 1.4
# 出力(生成コード・説明)の規模
output_scale = task[ "output_lines" ] * 1.2
units = (input_scale / 100 ) + tool_overhead + (output_scale / 50 )
return round (units, 1 )
heavy = estimate_units({ "files_read" : 40 , "avg_lines" : 180 ,
"tool_calls" : 25 , "output_lines" : 300 })
light = estimate_units({ "files_read" : 2 , "avg_lines" : 60 ,
"tool_calls" : 3 , "output_lines" : 40 })
print ( f "heavy= { heavy } light= { light } " )
# heavy=114.4 light=6.4 → 重量級は軽量級の約18倍
この式は厳密な課金額を当てるものではありません。狙いは「重量級1本は軽量級18本ぶん」という相対感覚を数字で固定することです。一度この比率を掴むと、1日の予算を「ユニット」という共通単位で配分できるようになります。
実際に私が運用している1日のバジェット表は、おおむね次のような配分です。
時間帯別バジェットの考え方
午前(集中作業): その日の総予算の 40% まで。重量級はここに寄せる。
昼すぎ(実装本番): 40% を温存する。一番削ってはいけない枠。
夕方(仕上げ・軽作業): 残り 20% 。軽量級中心。
朝に気持ちよく重量級を3本走らせると、この40%枠を簡単に超えます。「午前は重量級2本まで」という上限を先に決めておくことが、午後の枯渇を防ぐ最大のレバーでした。
AI Pro と AI Ultra の損益分岐をタスク本数から逆算する
2026年6月時点で、Antigravity の利用上限は AI Pro(月20ドル)と AI Ultra(月100ドル・Pro 比およそ5倍上限)で大きく変わります。どちらを選ぶかは「金額」ではなく「1日に走らせる重量級タスクの本数」から逆算するのが実用的です。
# plan_breakeven.py — 1日の重量級本数から適正プランを判定
PRO_DAILY_HEAVY = 4 # Pro で安定して走らせられる重量級の目安本数
ULTRA_MULTIPLIER = 5 # Ultra は約5倍上限
def recommend_plan (daily_heavy_tasks):
ultra_daily = PRO_DAILY_HEAVY * ULTRA_MULTIPLIER
if daily_heavy_tasks <= PRO_DAILY_HEAVY :
return "Pro(月20ドル)で十分。上限に当たる頻度は低い"
elif daily_heavy_tasks <= ultra_daily:
return "Ultra(月100ドル)を推奨。Pro だと午後に枯渇する"
else :
return "Ultra でも足りない。タスクの分割・軽量化を先に見直す"
for n in ( 3 , 8 , 25 ):
print ( f "重量級 { n } 本/日 → { recommend_plan(n) } " )
ここで強調したいのは、Ultra にすれば解決するわけではないという点です。重量級を1日25本も投げているなら、それはプランの問題ではなく「タスクを細かく割りすぎている」「コンテキストを毎回フルで読ませている」という設計の問題です。私は Ultra に上げる前に、まず重量級タスクを中量級2本に割れないかを検討することをお勧めします。プラン変更は最後の手段です。
クォータが見えないなら、自前で数え続ける
2.0 で残量が表示されない以上、推定するしかありません。私はエージェントを起動するたびに、見積もりユニットをローカルのカウンタへ加算する薄いラッパーを挟んでいます。
# quota_tracker.py — その日の累積消費を JST 基準でローカル管理
import json, datetime, pathlib
LOG = pathlib.Path.home() / ".antigravity_quota.json"
DAILY_BUDGET = 400 # ユニット。自分の上限到達経験から較正した値
def today_key ():
jst = datetime.timezone(datetime.timedelta( hours = 9 ))
return datetime.datetime.now(jst).strftime( "%Y-%m- %d " )
def add (units):
data = json.loads( LOG .read_text()) if LOG .exists() else {}
key = today_key()
data[key] = round (data.get(key, 0 ) + units, 1 )
LOG .write_text(json.dumps(data))
remaining = DAILY_BUDGET - data[key]
status = "⚠️ 残量わずか" if remaining < 80 else "ok"
print ( f "used= { data[key] } / { DAILY_BUDGET } remaining= { remaining } { status } " )
return remaining
add( 114.4 ) # 重量級を1本走らせた直後に呼ぶ
DAILY_BUDGET の値は最初は当てずっぽうで構いません。実際に上限に当たった日の累積ユニットを記録し、その手前に閾値を寄せていくと、2〜3週間で「だいたいこのあたりで危ない」という線が見えてきます。本番運用で大事なのは精度ではなく、枯渇する前に警告が出ることです。
落とし穴として、date をそのまま使うと UTC で集計され、日本時間の深夜に前日ぶんへ加算されてしまいます。必ず JST で日付キーを作ること。これは自動運用の集計でも繰り返し踏んだ罠なので、最初から timezone を明示しておくことを強く推奨します。
予算設計は「我慢」ではなく「優先順位の固定」
クォータ管理というと「使う量を減らす」話に聞こえますが、実際にやっているのは優先順位を朝のうちに固定してしまうことです。午後に本実装ぶんを必ず残す、重量級は午前2本まで、迷ったら軽量級に割る——この3つを守るだけで、上限に当たって作業が止まる日はほとんどなくなりました。
並列エージェントは魔法のように速い反面、無計画に走らせると一番大事な時間に手札が尽きます。見積もり・カウンタ・損益分岐の3点を自分の運用に合わせて較正していくことが、2.0 を毎日使い倒すための地味で確実な土台になると考えています。同じように午後の枯渇に悩んでいる方の参考になれば幸いです。