Skip to content

Commit af90a0f

Browse files
committed
feat: add Antigravity Proxy – Unified AI Gateway feature:
- Visual dashboard with provider cards, status badges, and actions - OAuth providers: Antigravity, Codex, GitHub Copilot - API Key providers: Claude, Gemini, Z.AI, Vertex, Kiro - Multi-account support for managing multiple auth tokens - API Keys management (generate, enable/disable, delete) - Proxy control (start/stop/restart) with status bar indicator - Auto-installation of cliproxy binary from GitHub Releases - Configuration: port, auto-start, upstream proxy, custom binary path - Port conflict detection with option to kill blocking process - Auth file watcher for automatic dashboard refresh
1 parent 4f1ac0c commit af90a0f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+6024
-48
lines changed

CHANGELOG.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,61 @@ All notable changes to the **Antigravity Storage Manager** extension will be doc
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.13.0] - 2026-02-04
9+
### Antigravity Proxy – Unified AI Gateway
10+
Introducing the **Antigravity Proxy**, a powerful local proxy server that unifies access to multiple AI providers (Antigravity, GitHub Copilot, Claude, Codex, Gemini, Z.AI, Kiro, Vertex, and more) through a single OpenAI-compatible endpoint.
11+
12+
#### Dashboard & Management
13+
- **Visual Dashboard**: Modern, interactive dashboard (`Antigravity Proxy Dashboard` command) with glassmorphism design, provider cards, and status indicators.
14+
- **Provider Cards**: Each AI provider is displayed as a card with:
15+
- **Status Badge**: Connected (🟢), Not Configured (⚪), or Error (🔴)
16+
- **Actions**: Sign In, Configure, Test Connection, Delete Auth
17+
- **Multi-Account Support**: Manage multiple authentication tokens per provider (e.g., multiple Antigravity or Codex accounts)
18+
- **API Keys Management**: Generate, view, enable/disable, and delete local API keys directly from the dashboard.
19+
- **Management Secret Key**: Securely manage the proxy's Web UI password with reveal, change, and reset options.
20+
21+
#### Provider Support
22+
- **OAuth Providers**: One-click Sign In via OAuth for:
23+
- **Antigravity** (Google AI Studio)
24+
- **Codex** (OpenAI Codex CLI)
25+
- **GitHub Copilot** (using VS Code's built-in GitHub authentication)
26+
- **API Key Providers**: Configure by entering an API key for:
27+
- **Claude** (Anthropic)
28+
- **Gemini** (Google AI)
29+
- **Z.AI** (GLM-4 Plus, GLM-4.7, GLM-4.6)
30+
- **Vertex** (Google Cloud)
31+
- **Kiro** (AWS)
32+
- **Model Selection**: Choose the active model for Z.AI directly from the dashboard.
33+
- **Test Connection**: Quickly test any configured provider with a single click.
34+
35+
#### Proxy Control
36+
- **Start/Stop/Restart**: Control the proxy lifecycle directly from the dashboard or via commands (`Antigravity Proxy: Start`, `Stop`, `Install`).
37+
- **Status Bar**: Real-time status indicator (`AG Proxy: ON/OFF/Starting/Error`) in the VS Code status bar.
38+
- **Auto-Start**: Optionally auto-start the proxy when VS Code launches (`proxy.enabled` setting).
39+
- **Output Channel**: Dedicated "Antigravity Proxy" output channel for logs and debugging.
40+
41+
#### Auto-Installation
42+
- **One-Click Install**: Automatically downloads and installs the correct `cliproxy` binary for your platform (Windows, macOS, Linux) from GitHub Releases.
43+
- **Update Support**: Easily update to the latest version by re-running the install command.
44+
45+
#### Configuration
46+
- **Auto-Config**: Automatically generates `config.yaml` with sensible defaults and random API keys on first run.
47+
- **Upstream Proxy**: Configure an upstream proxy URL (`proxy.upstreamUrl` setting) for corporate environments.
48+
- **Custom Binary Path**: Override the default binary location via `proxy.binaryPath` setting.
49+
- **Port**: Configurable port (default: 8317) via `proxy.port` setting.
50+
51+
#### Port Conflict Handling
52+
- **Smart Detection**: Automatically detects "address already in use" errors when starting the proxy.
53+
- **Kill Process**: Offers a one-click option to kill the process occupying the port and retry.
54+
55+
#### Integration & UX
56+
- **Auth File Watcher**: The dashboard automatically refreshes when auth files are added, removed, or modified in the `auth-dir`.
57+
- **Open Config**: Direct access to `config.yaml` from the dashboard for advanced users.
58+
- **Show Logs**: View proxy logs in the Output panel from the dashboard.
59+
- **Localization**: Full localization of all dashboard elements across all 16 supported languages.
60+
61+
---
62+
863
## [0.12.6] - 2026-02-02
964
### Fixes & Improvements
1065
- **Startup Stability**: Fixed an issue where the "Failed to get/decrypt manifest" error could appear on startup if the user was not authenticated.

README.md

Lines changed: 58 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
</p>
66

77
<p align="center">
8-
<strong>Securely sync Antigravity Conversations with Google Drive. Features Telegram Bot notifications, Multi-Account Profile Switching, Real-time Quota Monitoring, MCP Server Status validation, and advanced backup tools.</strong><br>
8+
<strong>Unified AI Gateway with visual dashboard, secure Google Drive sync, Telegram notifications, multi-account profiles, real-time quota monitoring, MCP server validation, and advanced backup tools.</strong><br>
99
</p>
1010

1111
<p align="center">
@@ -43,6 +43,7 @@ If you find this extension useful, consider supporting the development:
4343

4444
![Status Bar Menu](https://raw.githubusercontent.com/unchase/antigravity-storage-manager/master/screenshots/status-menu.png)
4545

46+
- 🚀 **Antigravity Proxy** — Unified AI Gateway with visual dashboard to manage multiple AI providers (Antigravity, Copilot, Claude, Codex, Gemini, Z.AI, and more) through a single endpoint.
4647
- 🤖 **Telegram Bot Integration** — Real-time quota alerts, system stats, and remote sync control via interactive bot.
4748
- 👤 **Multi-Account Profiles** — Seamlessly switch between different Antigravity accounts (e.g., Personal vs Work) with separate quotas and settings.
4849
- 📊 **Advanced Quota Dashboard** — Comprehensive real-time tracking of consumption speed, reset cycles, and remaining time estimates with visual indicators.
@@ -51,7 +52,7 @@ If you find this extension useful, consider supporting the development:
5152
- 🌍 **Global Localization** — Native support for **16 languages** (English, Russian, Chinese, Japanese, Korean, German, French, Spanish, Italian, Portuguese, Polish, Vietnamese, Arabic, Czech, Turkish).
5253
- 🔄 **Live Updates** — Seamlessly syncs data between the status bar and dashboard every minute for up-to-the-second accuracy.
5354
- 🔍 **Account Insights** — Monitor your Plan/Tier, specific feature availability (Web Search, Browser Tool), and raw Google API responses.
54-
- **Proxy Support** — Full support for corporate proxies with authentication and strict SSL configuration.
55+
- 🛡**Proxy Support** — Full support for corporate proxies with authentication and strict SSL configuration.
5556
- 📦 **Export/Import** — Backup conversations to ZIP archives individually or in bulk with conflict detection.
5657
- 🛑 **Cancellation Support** — Abort long-running operations (Sync, Export, Backup) safely at any time.
5758
- 🛠️ **Smart Configuration** — Auto-detects missing sync setup and prompts for configuration on startup.
@@ -162,7 +163,61 @@ MCP servers are configured in `~/.gemini/antigravity/mcp/mcp_config.json`. The p
162163

163164
---
164165

165-
## Proxy Configuration (New!)
166+
## Antigravity Proxy – Unified AI Gateway (New!)
167+
168+
![Antigravity Proxy Dashboard](https://raw.githubusercontent.com/unchase/antigravity-storage-manager/master/images/proxy-dashboard.png)
169+
170+
*(Fig. 5: Antigravity Proxy Dashboard)*
171+
172+
The **Antigravity Proxy** is a local proxy server that unifies access to multiple AI providers through a single OpenAI-compatible endpoint. Manage all your AI providers from a beautiful visual dashboard without leaving VS Code.
173+
174+
### Supported Providers
175+
- **OAuth Providers** (one-click Sign In):
176+
- **Antigravity** (Google AI Studio)
177+
- **Codex** (OpenAI Codex CLI)
178+
- **GitHub Copilot** (using VS Code's built-in authentication)
179+
- **API Key Providers**:
180+
- **Claude** (Anthropic)
181+
- **Gemini** (Google AI)
182+
- **Z.AI** (GLM-4 Plus, GLM-4.7, GLM-4.6)
183+
- **Vertex** (Google Cloud)
184+
- **Kiro** (AWS)
185+
186+
### Dashboard Features
187+
- **Provider Cards**: Each provider is displayed as an interactive card with:
188+
- **Status Badge**: Connected (🟢), Not Configured (⚪), or Error (🔴)
189+
- **Actions**: Sign In, Configure, Test Connection, Delete Auth
190+
- **Multi-Account Support**: Manage multiple authentication tokens per provider
191+
- **API Keys Management**: Generate, view, enable/disable, and delete local API keys.
192+
- **Management Secret Key**: Securely manage the proxy's Web UI password.
193+
- **Proxy Control**: Start, Stop, and Restart the proxy directly from the dashboard.
194+
- **Status Bar**: Real-time indicator (`AG Proxy: ON/OFF`) in the VS Code status bar.
195+
196+
### Quick Start
197+
1. Open Command Palette (`Ctrl+Shift+P`).
198+
2. Run `Antigravity Proxy: Dashboard`.
199+
3. If the proxy binary is not installed, click **Install Proxy** to download it automatically.
200+
4. Click **Start Proxy** to launch the server.
201+
5. Configure your providers by clicking **Sign In** or **Configure** on their cards.
202+
6. Use the generated API Key in your applications with endpoint `http://127.0.0.1:8317/v1`.
203+
204+
### Configuration
205+
- **Port**: `antigravity.proxy.port` (default: `8317`)
206+
- **Auto-Start**: `antigravity.proxy.enabled` — Start proxy automatically when VS Code launches.
207+
- **Upstream Proxy**: `antigravity.proxy.upstreamUrl` — Route proxy traffic through corporate proxy.
208+
- **Binary Path**: `antigravity.proxy.binaryPath` — Custom path to `cliproxy` executable.
209+
210+
### Commands
211+
- `Antigravity Proxy: Dashboard` — Open the visual dashboard.
212+
- `Antigravity Proxy: Start` — Start the proxy server.
213+
- `Antigravity Proxy: Stop` — Stop the proxy server.
214+
- `Antigravity Proxy: Install` — Download and install the proxy binary.
215+
- `Antigravity Proxy: Show Log` — Open the proxy output channel for debugging.
216+
- `Antigravity Proxy: Open Config` — Edit `config.yaml` directly.
217+
218+
---
219+
220+
## Corporate Proxy Configuration
166221

167222
If you are behind a corporate proxy, you can configure Antigravity to route its internal requests through your proxy server.
168223

images/proxy-dashboard.png

122 KB
Loading

l10n/bundle.l10n.ar.json

Lines changed: 109 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -610,5 +610,113 @@
610610
"Update file {0}": "تحديث الملف {0}",
611611
"Create file {0}": "إنشاء الملف {0}",
612612
"Reindex Conversations": "إعادة فهرسة المحادثات",
613-
"Fix missing conversations from other devices": "إصلاح المحادثات المفقودة من أجهزة أخرى"
613+
"Fix missing conversations from other devices": "إصلاح المحادثات المفقودة من أجهزة أخرى",
614+
"Show": "عرض",
615+
"Hide": "إخفاء",
616+
"No API keys found": "لم يتم العثور على مفاتيح API",
617+
"Server Information": "معلومات الخادم",
618+
"Extension Settings": "إعدادات الإضافة",
619+
"Re-install Proxy": "إعادة تثبيت الوكيل",
620+
"Edit Config": "تعديل التكوين",
621+
"View Logs": "عرض السجلات",
622+
"Auto-Config": "تكوين تلقائي",
623+
"Binary Path": "مسار الملف الثنائي",
624+
"Management Key": "مفتاح الإدارة",
625+
"API Keys": "مفاتيح API",
626+
"Providers Configuration": "تكوين المزودين",
627+
"Test selected model": "اختبار النموذج المختار",
628+
"Run Test": "تشغيل الاختبار",
629+
"Z.AI GLM-4": "Z.AI GLM-4",
630+
"OAuth": "OAuth",
631+
"Client ID": "معرف العميل",
632+
"Client Secret": "سر العميل",
633+
"Kiro (AWS)": "Kiro (AWS)",
634+
"AWS CodeWhisperer via OAuth.": "AWS CodeWhisperer عبر OAuth.",
635+
"Claude": "Claude",
636+
"Codex": "Codex",
637+
"Vertex": "Vertex",
638+
"Are you sure you want to delete this API key?": "هل أنت متأكد من رغبتك في حذف مفتاح API هذا؟",
639+
"API Key copied to clipboard": "تم نسخ مفتاح API إلى الحافظة",
640+
"Test failed: 401 Unauthorized. Ensure your local API keys are correct.": "فشل الاختبار: 401 غير مصرح به. تأكد من صحة مفاتيح API المحلية الخاصة بك.",
641+
"Test failed: {0} {1}. {2}": "فشل الاختبار: {0} {1}. {2}",
642+
"Test request failed: {0}": "فشل طلب الاختبار: {0}",
643+
"API Key test failed: {0} {1}": "فشل اختبار مفتاح API: {0} {1}",
644+
"API Key test error: {0}": "خطأ في اختبار مفتاح API: {0}",
645+
"Failed to remove API key: {0}": "فشل في إزالة مفتاح API: {0}",
646+
"Enter new API Key": "أدخل مفتاح API الجديد",
647+
"Failed to update API key: {0}": "فشل في تحديث مفتاح API: {0}",
648+
"API Key updated successfully.": "تم تحديث مفتاح API بنجاح.",
649+
"API Key removed successfully.": "تم إزالة مفتاح API بنجاح.",
650+
"API Key not found in config.": "مفتاح API غير موجود في التكوين.",
651+
"API Key is valid and working! {0} models available.": "مفتاح API صالح ويعمل! يتوفر {0} نموذج.",
652+
"Get Key": "الحصول على المفتاح",
653+
"Login with Antigravity OAuth.": "تسجيل الدخول عبر Antigravity OAuth.",
654+
"Use your GitHub Copilot subscription via Antigravity Proxy.": "استخدم اشتراك GitHub Copilot الخاص بك عبر Antigravity Proxy.",
655+
"Sign in with GitHub": "تسجيل الدخول عبر GitHub",
656+
"Sign in with Google": "تسجيل الدخول عبر Google",
657+
"Login via OAuth": "تسجيل الدخول عبر OAuth",
658+
"Management Key copied to clipboard!": "تم نسخ مفتاح الإدارة إلى الحافظة!",
659+
"Copy Management Key": "نسخ مفتاح الإدارة",
660+
"Copy API Key": "نسخ مفتاح API",
661+
"Test API Key": "اختبار مفتاح API",
662+
"Edit API Key": "تعديل مفتاح API",
663+
"Delete API Key": "حذف مفتاح API",
664+
"Antigravity Proxy Dashboard": "Antigravity Proxy Dashboard",
665+
"About Antigravity Proxy": "About Antigravity Proxy",
666+
"High-performance local AI proxy supporting multiple providers.": "High-performance local AI proxy supporting multiple providers.",
667+
"One API key for all providers": "One API key for all providers",
668+
"Secure local handling": "Secure local handling",
669+
"Unified OpenAI-compatible API": "Unified OpenAI-compatible API",
670+
"Base URL": "Base URL",
671+
"Documentation": "Documentation",
672+
"Check Connection": "Check Connection",
673+
"Gemini 3 Pro (High)": "Gemini 3 Pro (High)",
674+
"Gemini 3 Pro (Low)": "Gemini 3 Pro (Low)",
675+
"Gemini 3 Flash": "Gemini 3 Flash",
676+
"Claude Sonnet 4.5": "Claude Sonnet 4.5",
677+
"Claude Sonnet 4.5 (Thinking)": "Claude Sonnet 4.5 (Thinking)",
678+
"Claude Opus 4.5 (Thinking)": "Claude Opus 4.5 (Thinking)",
679+
"GPT-OSS 120B (Medium)": "GPT-OSS 120B (Medium)",
680+
"GLM-4.7 - Premium coding model": "GLM-4.7 - Premium coding model",
681+
"GLM-4-Plus (GLM-4.7)": "GLM-4-Plus (GLM-4.7)",
682+
"GLM-4.6 - High performance": "GLM-4.6 - High performance",
683+
"GLM-4-0520": "GLM-4-0520",
684+
"Cost effective": "Cost effective",
685+
"GLM-4-Air": "GLM-4-Air",
686+
"Fast speed": "Fast speed",
687+
"GLM-4-AirX": "GLM-4-AirX",
688+
"Long context": "Long context",
689+
"GLM-4-Long": "GLM-4-Long",
690+
"Lowest latency": "Lowest latency",
691+
"GLM-4-Flash": "GLM-4-Flash",
692+
"Gemini 2.0 Flash (Preview)": "Gemini 2.0 Flash (Preview)",
693+
"Gemini 1.5 Pro": "Gemini 1.5 Pro",
694+
"Gemini 1.5 Flash": "Gemini 1.5 Flash",
695+
"Config file not found.": "Config file not found.",
696+
"Antigravity Proxy Error: {0}": "Antigravity Proxy Error: {0}",
697+
"Config file not found. Please start proxy once to generate it.": "Config file not found. Please start proxy once to generate it.",
698+
"Provider {0} already configured. Opening config...": "Provider {0} already configured. Opening config...",
699+
"Z.AI configured. Restarting proxy...": "Z.AI configured. Restarting proxy...",
700+
"Kiro configured. Restarting proxy...": "Kiro configured. Restarting proxy...",
701+
"Claude configured. Restarting proxy...": "Claude configured. Restarting proxy...",
702+
"Codex configured. Restarting proxy...": "Codex configured. Restarting proxy...",
703+
"Vertex configured. Restarting proxy...": "Vertex configured. Restarting proxy...",
704+
"GitHub Copilot configured. Restarting proxy...": "GitHub Copilot configured. Restarting proxy...",
705+
"GitHub Copilot update. Restarting proxy...": "GitHub Copilot update. Restarting proxy...",
706+
"GitHub Copilot already configured.": "GitHub Copilot already configured.",
707+
"Antigravity model {0} configured. Restarting proxy...": "Antigravity model {0} configured. Restarting proxy...",
708+
"Gemini API Key configured. Restarting proxy...": "Gemini API Key configured. Restarting proxy...",
709+
"Provider {0} added. Restarting proxy...": "Provider {0} added. Restarting proxy...",
710+
"Could not find providers section even after ensuring it exists.": "Could not find providers section even after ensuring it exists.",
711+
"Failed to add provider: {0}": "Failed to add provider: {0}",
712+
"Test connection to {0} successful! Model: {1}. Response: \"{2}\"": "Test connection to {0} successful! Model: {1}. Response: \"{2}\"",
713+
"Could not find secret-key in config.yaml": "Could not find secret-key in config.yaml",
714+
"Received unexpected response from auth endpoint.": "Received unexpected response from auth endpoint.",
715+
"Failed to get OAuth URL: {0} {1}": "Failed to get OAuth URL: {0} {1}",
716+
"OAuth Error: {0}": "OAuth Error: {0}",
717+
"Could not update config.yaml: secret-key pattern not found.": "Could not update config.yaml: secret-key pattern not found.",
718+
"Antigravity Proxy reachable but returned status: {0} {1}": "Antigravity Proxy reachable but returned status: {0} {1}",
719+
"Are you sure you want to delete this account?": "هل أنت متأكد من أنك تريد حذف هذا الحساب؟",
720+
"Auth file not found: {0}": "لم يتم العثور على ملف المصادقة: {0}",
721+
"API Key": "مفتاح API"
614722
}

0 commit comments

Comments
 (0)