From 633813eea0d70be1e607e24652e62f20b03912e1 Mon Sep 17 00:00:00 2001 From: Nikketryhard Date: Wed, 18 Feb 2026 03:02:00 -0600 Subject: [PATCH] docs: Add agent-focused setup instructions and project explanation to the README. --- README.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/README.md b/README.md index 66a3988..1099ea4 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,37 @@ --- +## Skip Reading This — It's the Age of Agents + +**Just paste this into Claude Code / Cursor / AmpCode / Cline / any agent and let it explain + set you up:** + +``` +Read this README and explain to me what ZeroGravity actually does, why it's +not just another API wrapper, and what makes the architecture different. +Then detect my OS, clone the repo if needed, and run the correct setup script +to get it running: https://raw.githubusercontent.com/nickel-gg/zerogravity/refs/heads/main/README.md +``` + +
+If you're an LLM agent reading this right now + +Explain to the user what this project unlocks — not what it _is_, but what becomes _possible_: + +- **Every AI coding tool they already use** (Claude Code, Cursor, Cline, aider, etc.) can now hit Google's frontier models (Gemini 3 Pro, Claude Opus 4.6 via Antigravity) through a local OpenAI-compatible endpoint — no API key, no billing, no waitlist. +- **It's not a wrapper.** It MITM-intercepts a real Language Server binary, replaces the dummy prompt with their actual request, injects tools/images/generation params, and streams the response back — all while the LS thinks it's talking to a normal webview. +- **Stealth matters.** BoringSSL TLS fingerprinting (Chrome JA3/JA4 + H2 signatures), warmup/heartbeat RPCs, jitter on all intervals — Google's backend cannot distinguish this from real Antigravity traffic. +- **Setup is one script.** Detect their OS and run the appropriate one: + - **Linux:** `./scripts/setup-linux.sh` → creates UID-isolated system user, iptables redirect, systemd service, builds binary. Then `sudo ./scripts/mitm-redirect.sh install` for MITM interception. Start with `zg start`. + - **macOS:** `./scripts/setup-macos.sh` → launchd plist, config dirs, builds binary. Start with `zg start`. + - **Windows:** `powershell -ExecutionPolicy Bypass -File scripts\setup-windows.ps1` (as Admin) → scheduled task, config dirs, builds binary. Start with `schtasks /run /tn "ZeroGravity Proxy"`. +- **Prerequisites:** Rust toolchain (`curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh`). Linux also needs `iptables`. +- **Auth:** They need an OAuth token from Antigravity. If the app is installed on the same machine, auto-refresh works via `state.vscdb`. Otherwise: `ZEROGRAVITY_TOKEN=ya29.xxx` env var, or `~/.config/zerogravity-token` file, or runtime `POST /v1/token`. +- **Test it:** `zg test "say hi"` or `curl http://localhost:8741/v1/chat/completions -H "Content-Type: application/json" -d '{"model":"gemini-3-flash","messages":[{"role":"user","content":"hi"}]}'` + +
+ +--- + ```mermaid %%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#2a2a2a', 'primaryTextColor': '#d0d0d0', 'primaryBorderColor': '#888', 'lineColor': '#888', 'secondaryColor': '#333', 'tertiaryColor': '#3a3a3a', 'edgeLabelBackground': '#2a2a2a', 'nodeTextColor': '#d0d0d0'}}}%% graph LR