Antigravity Tools とは:「アカウント + プロトコル」でローカル AI ゲートウェイを作る
多くの AI クライアント/SDK の導入の敷居は、「API を呼び出せるかどうか」ではなく、「どのプロトコルに接続するか、複数のアカウントをどう管理するか、失敗をどう自動回復させるか」にあります。Antigravity Tools はこの 3 つをローカルゲートウェイに収束しようとします。
Antigravity Tools とは?
Antigravity Tools はデスクトップアプリケーションです。GUI でアカウントと設定を管理し、ローカルマシンで HTTP リバースプロキシサービスを起動し、異なるベンダー/プロトコルのリクエストを統一的に上流に転送し、応答をクライアントが慣れ親しんだ形式に変換して戻します。
学習後にできること
- Antigravity Tools がどのような問題を解決するか(また、何を解決しないか)を明確に言える
- コア構成を認識する:GUI、アカウントプール、HTTP リバースプロキシゲートウェイ、プロトコルアダプタ
- デフォルトのセキュリティ境界(127.0.0.1、ポート、認証モード)と、いつ変更する必要があるかを理解する
- 次にどの章に行くべきかを知る:インストール、アカウント追加、リバースプロキシ起動、クライアント接続
現在の課題
次のトラブルに遭遇したかもしれません:
- 同じクライアントで OpenAI/Anthropic/Gemini の 3 種類のプロトコルをサポートする必要があり、設定が頻繁に乱れる
- 複数のアカウントがあるが、切り替え、ローテーション、レート制限リトライはすべて手動
- リクエストが失敗した場合、「アカウント無効」か「上流レート制限/容量枯渇」かはログを見て推測するしかない
Antigravity Tools の目標は、これらの「雑多な作業」をローカルゲートウェイに入れ、クライアント/SDK をできるだけ 1 つのことだけ気にさせる:リクエストをローカルに送ること。
コアアイデア
これをローカルの「AI スケジューリングゲートウェイ」と理解でき、3 層で構成されています:
- GUI(デスクトップアプリケーション)
- アカウント、設定、監視、統計を管理する責任があります。
- メインページには:Dashboard、Accounts、API Proxy、Monitor、Token Stats、Settings が含まれます。
- HTTP リバースプロキシサービス(Axum Server)
- 複数のプロトコルエンドポイントを外部に公開し、リクエストを対応するハンドラに転送する責任があります。
- リバースプロキシサービスは認証、ミドルウェア監視、CORS、Trace などのレイヤをマウントします。
- アカウントプールとスケジューリング(TokenManager など)
- ローカルアカウントプールから使用可能なアカウントを選択し、必要に応じて token を更新し、ローテーションと自己回復を行う責任があります。
「ローカルゲートウェイ」とはどういう意味ですか?
ここでの「ローカル」は文字通りです:サービスはあなたのマシンで実行され、クライアント(Claude Code、OpenAI SDK、各種サードパーティクライアント)は Base URL を http://127.0.0.1:<port> にポイントし、リクエストは最初にローカルマシンに到着し、Antigravity Tools によって上流に転送されます。
どのようなエンドポイントを提供するか
リバースプロキシサービスは Router で複数のプロトコルエンドポイントを登録し、まずこれらの「入口」を覚えてください:
- OpenAI 互換:
/v1/chat/completions、/v1/completions、/v1/responses、/v1/models - Anthropic 互換:
/v1/messages、/v1/messages/count_tokens - Gemini ネイティブ:
/v1beta/models、/v1beta/models/:model、/v1beta/models/:model/countTokens - ヘルスチェック:
GET /healthz
クライアントがこれらのいずれかのプロトコルに接続できる場合、理論的には「Base URL を変更」することで、リクエストをこのローカルゲートウェイに導くことができます。
デフォルトのセキュリティ境界(スキップしないでください)
この種の「ローカルリバースプロキシ」の最大の落とし穴は、機能が不足しているのではなく、誤って外部に公開してしまうことです。
まずデフォルト値を覚えてください(すべてデフォルト設定から来ています):
- デフォルトポート:
8045 - デフォルトローカルアクセスのみ:
allow_lan_access=false、監視アドレスは127.0.0.1 - デフォルト認証モード:
auth_mode=off(クライアントに key を要求しない) - デフォルトで
sk-...形式のapi_keyを生成(認証が必要な場合に使用)
いつ認証を有効にする必要がありますか?
LAN アクセスを有効にしたら(allow_lan_access=true、監視アドレスが 0.0.0.0 になる)、同時に認証を有効にし、API Key をパスワードとして管理する必要があります。
いつ Antigravity Tools を使用するか
このようなシナリオに適しています:
- 複数の AI クライアント/SDK があり、1 つの Base URL で統一したい
- 異なるプロトコル(OpenAI/Anthropic/Gemini)を同じ「ローカル出口」に収束させたい
- 複数のアカウントがあり、システムにローテーションと安定性処理を担当させたい
「2 行のコードで公式 API を直接呼び出す」だけの場合、アカウント/プロトコルが固定されている場合、少し重いかもしれません。
手順に従って進める:正しい使用順序を最初に確立する
このレッスンは詳細な設定を教えませんが、まずメインの順序を合わせ、スキップして使用して詰まらないようにします:
ステップ 1:まずインストールして起動する
なぜ デスクトップ版はアカウント管理とリバースプロキシサービスの起動を担当し、これがなければ、後続の OAuth/リバースプロキシは始まりません。
次の章で README のインストール方法に従ってインストールを完了してください。
次のように表示されます:Antigravity Tools を開き、Dashboard ページが表示されます。
ステップ 2:少なくとも 1 つのアカウントを追加する
なぜ リバースプロキシサービスはアカウントプールから使用可能な ID を取得して上流にリクエストを送信する必要があります。アカウントがない場合、ゲートウェイも「あなたに代わって呼び出し」できません。
「アカウント追加」の章に行き、OAuth または Refresh Token フローに従ってアカウントを追加してください。
次のように表示されます:Accounts ページにアカウントが表示され、クォータ/ステータス情報が表示されます。
ステップ 3:API Proxy を起動し、/healthz で最小限の検証を行う
なぜ 最初に GET /healthz で「ローカルサービスが実行中」を検証し、その後クライアントを接続すると、トラブルシューティングがはるかに簡単になります。
「ローカルリバースプロキシを起動し、最初のクライアントを接続する」の章に行ってクローズを完了してください。
次のように表示されます:クライアント/SDK がローカル Base URL を通じて応答を正常に取得できます。
トラブルシューティング
| シナリオ | 間違ったやり方(❌) | 推奨されるやり方(✓) |
|---|---|---|
| 携帯電話/別のコンピュータにアクセスさせたい | 直接 allow_lan_access=true を開くが認証を設定しない | 同時に認証を有効にし、まず LAN 内で GET /healthz を検証する |
| クライアントが 404 を返す | host/port のみ変更し、クライアントが /v1 をどう連結するかを気にしない | 最初にクライアントの base_url 連結戦略を確認し、/v1 接頭辞が必要かどうかを判断する |
| 最初から Claude Code をトラブルシューティングする | 複雑なクライアントに直接接続し、失敗後どこから調べればいいかわからない | 最初に最小クローズを実行:Proxy 起動 -> GET /healthz -> その後クライアント接続 |
このレッスンのまとめ
- Antigravity Tools のポジショニングは「デスクトップ版 + ローカル HTTP リバースプロキシゲートウェイ」:GUI 管理、Axum が複数のプロトコルエンドポイントを提供
- ローカルインフラとして扱う必要があります:まずインストール、次にアカウント追加、次に Proxy 起動、最後にクライアント接続
- デフォルトで
127.0.0.1:8045のみを監視します。LAN に公開する場合、必ず認証を有効にしてください
次のレッスン予告
次のレッスンではインストールのステップを完了します:インストールとアップグレード:デスクトップ版最適インストールパス。
学びます:
- README に記載されている複数のインストール方法(および優先度)
- アップグレード入口と一般的なシステムブロックの処理方法
付録:ソースコード参照
クリックしてソースコードの場所を表示
更新日時:2026-01-23
| 機能 | ファイルパス | 行番号 |
|---|---|---|
| 製品ポジショニング(ローカル AI 中継局/プロトコル溝) | README.md | 35-77 |
| Router エンドポイント概要(OpenAI/Claude/Gemini/healthz) | src-tauri/src/proxy/server.rs | 120-194 |
| デフォルトポート/デフォルトローカルのみ/デフォルト key と bind address ロジック | src-tauri/src/proxy/config.rs | 174-291 |
| --- | --- | --- |
| GUI ページルーティング構造(Dashboard/Accounts/API Proxy/Monitor/Token Stats/Settings) | src/App.tsx | 19-48 |
重要なデフォルト値:
ProxyConfig.port = 8045:リバースプロキシサービスデフォルトポートProxyConfig.allow_lan_access = false:デフォルトローカルアクセスのみProxyAuthMode::default() = off:デフォルト認証不要