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

Antigravity 長時間実行エージェントの監視設計 — watchdog と段階的リカバリ

長時間実行エージェントの3つの停止モードに対し、heartbeat プロトコルと watchdog タイマー、段階的リカバリで備える監視設計を解説します。8週間・142件の運用で得た段階別リカバリの成績と、実際にハマったポイントも包み隠さず公開しています。

agents100antigravity466watchdogobservability17production59

✦ プレミアム記事

廣川政樹(@dolice)です。2014 年から個人開発を続けてきて、累計 5,000 万 DL の壁紙・癒し系アプリ群を運用しています。直近 8 週間、AdMob の eCPM 最適化と Crashlytics トリアージを Antigravity のバックグラウンドエージェントに任せきりにしてみました。最初の 3 週間で気づいたのは、「エージェントは壊れたまま静かに走り続ける」という事実です。プロセスは生きている、ターミナルにも何も出ない、けれど中身は何も進んでいない。

ここでは、その 8 週間で観測した 3 種の停止モードと、最終的に落ち着いた watchdog + heartbeat + 段階的リカバリの設計を残しておきます。一晩中エージェントを走らせるタイプの個人開発者に向けたメモです。

観測された 3 つの停止モード

長時間実行のエージェントが「静かに止まる」とき、内訳はだいたい次の 3 種類に収れんしました。8 週間で合計 142 件の異常終了をカウントし、内訳は次の通りです。

  1. 無応答型(41%) — LLM 呼び出しのあと応答が来ず、SDK 側でタイムアウトもリトライも発火しない。プロセス的には alive、CPU 使用率 0% で固まる。
  2. セッション枯渇型(34%) — Antigravity の workspace セッションが内部的に切れ、新しい tool 呼び出しが全て無音で失敗する。エラーは握りつぶされ、エージェントは「次の計画」を考え続ける。
  3. コンテキスト溢れ型(25%) — 投入コンテキストが上限を超えてエージェントが省略モードに入り、過去の決定を「思い出せない」まま同じステップをループする。

どれも共通して、外形監視だけでは検知できません。プロセスは生きているし、メモリも CPU も平穏です。中の論理状態を見ないと判らない。これが、外形監視に頼ってきた個人開発者がハマる最大の落とし穴でした。

アーキテクチャ全体像

最終的に落ち着いた構成はこうです。

  ┌────────────────────────────────┐
  │ Agent Process (Antigravity)    │
  │  - business logic              │
  │  - heartbeat(stage, progress)  │──┐
  └────────────────────────────────┘  │ writes
                                       ▼
                            ┌───────────────────┐
                            │ heartbeat.json    │ (atomic write)
                            └───────────────────┘
                                       ▲
                                       │ reads (5s interval)
  ┌────────────────────────────────┐  │
  │ Supervisor Process             │──┘
  │  - watchdog timer              │
  │  - tiered recovery             │
  │  - escalation log              │
  └────────────────────────────────┘

エージェント本体は自分の進捗を heartbeat.json に書き込むだけ。判断は全て supervisor 側に寄せます。エージェントが壊れたとき、自分で自分を救えるとは限らない、という前提です。

なぜ自己監視ではなく外部 supervisor か

AI エージェントに「もし自分が止まっていたら復旧してください」と頼むパターンを最初に試したのですが、3 つの停止モードのうち 2 つで失敗しました。無応答型では復旧コードまで辿り着かないし、コンテキスト溢れ型では「自分が止まっている」という事実そのものを忘れます。supervisor は独立した別プロセスで持つ、というのが結論です。

✦

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

この記事の続きを読む

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

この記事で得られること
✦AdMob 8週間運用で観測した3種の停止モード(無応答 / セッション枯渇 / コンテキスト溢れ)とそれぞれの検出条件
✦TypeScript 約 90 行で実装する watchdog + heartbeat プロトコルの完全コード
✦段階的リカバリ(soft retry / context reset / agent rotation)の判定フローと、6 サイト並行運用で計測した recovery ratio 87%
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

◈ Agents & Manager2026-05-27
Antigravity Agent の Record & Replay — 失敗を3分で再現する本番運用パターン
Antigravity の自律エージェントが本番で失敗した瞬間を、後からオフラインで決定的に再生する Record & Replay の設計と実装。実際に運用してきた経験から、ストレージ設計・PII マスク・ハーネスのコードまで具体的に解説します。
◈ Agents & Manager2026-05-12
Antigravity エージェントの判断を追跡する — 意思決定ログと説明可能性の実装設計
AIエージェントが「なぜその判断をしたか」を記録・分析する意思決定ログの設計を、動作するPythonコード例とともに解説します。本番環境での予期しない動作を根本から追跡し、品質改善サイクルを実装します。
◈ Agents & Manager2026-05-11
AI エージェントのカナリアデプロイと自動ロールバック — Antigravity と Burn-Rate SLO で本番を守る
AI エージェントの新バージョンを Antigravity 上でカナリアデプロイし、Burn-Rate SLO で自動ロールバックする実装パターン。個人開発でも回せる軽量運用のコード例付きで詳しく書きました。