9b395f5cc3
E2E Headed Chrome / e2e-headed (macos-15) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (ubuntu-latest) (push) Has been cancelled
E2E Headed Chrome / e2e-headed (windows-latest) (push) Has been cancelled
CI / build (macos-latest) (push) Has been cancelled
CI / build (ubuntu-latest) (push) Has been cancelled
CI / build (windows-latest) (push) Has been cancelled
CI / unit-test (push) Has been cancelled
CI / bun-test (push) Has been cancelled
CI / adapter-test (push) Has been cancelled
CI / smoke-test (macos-latest) (push) Has been cancelled
CI / smoke-test (ubuntu-latest) (push) Has been cancelled
Security Audit / audit (push) Has been cancelled
Build Chrome Extension / build (push) Has been cancelled
Trigger Website Rebuild (Docs Updated) / dispatch (push) Has been cancelled
68 lines
2.7 KiB
Markdown
68 lines
2.7 KiB
Markdown
# Antigravity
|
|
|
|
🔥 **CLI All Electron Apps! The Most Powerful Update Has Arrived!** 🔥
|
|
|
|
Turn your local Antigravity desktop application into a programmable AI node via Chrome DevTools Protocol (CDP). This allows you to compose complex LLM workflows entirely through the terminal by manipulating the actual UI natively, bypassing any API restrictions.
|
|
|
|
## Prerequisites
|
|
|
|
Start the Antigravity desktop app with the Chrome DevTools `remote-debugging-port` flag:
|
|
|
|
```bash
|
|
# Start Antigravity in the background
|
|
/Applications/Antigravity.app/Contents/MacOS/Electron \
|
|
--remote-debugging-port=9224
|
|
```
|
|
|
|
> Depending on your installation, the executable might be named differently, e.g., `Antigravity` instead of `Electron`.
|
|
|
|
Then set the target port:
|
|
|
|
```bash
|
|
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9224"
|
|
```
|
|
|
|
## Commands
|
|
|
|
### `opencli antigravity status`
|
|
Check the Chromium CDP connection. Returns the current window title and active internal URL.
|
|
|
|
### `opencli antigravity send <message>`
|
|
Send a text prompt to the AI. Automatically locates the Lexical editor input box, types the prompt securely, and hits Enter.
|
|
|
|
### `opencli antigravity read`
|
|
Scrape the entire current conversation history block as pure text.
|
|
|
|
### `opencli antigravity new`
|
|
Click the "New Conversation" button to instantly clear the UI state and start fresh.
|
|
|
|
### `opencli antigravity dump`
|
|
Dump the current DOM and snapshot artifacts to `/tmp` for reverse-engineering and selector debugging.
|
|
|
|
### `opencli antigravity extract-code`
|
|
Extract any multi-line code blocks from the current conversation view. Ideal for automated script extraction (e.g. `opencli antigravity extract-code > script.sh`).
|
|
|
|
### `opencli antigravity model <name>`
|
|
Quickly target and switch the active LLM engine. Example: `opencli antigravity model claude` or `opencli antigravity model gemini`.
|
|
|
|
### `opencli antigravity watch`
|
|
A long-running, streaming process that continuously polls the Antigravity UI for chat updates and outputs them in real-time to standard output.
|
|
|
|
### `opencli antigravity serve`
|
|
Start an Anthropic-compatible `/v1/messages` proxy server backed by the local Antigravity desktop app.
|
|
|
|
```bash
|
|
opencli antigravity serve --port 8082
|
|
opencli antigravity serve --timeout 300
|
|
OPENCLI_ANTIGRAVITY_TIMEOUT=300 opencli antigravity serve
|
|
```
|
|
|
|
- `--port <port>`: HTTP listen port, default `8082`
|
|
- `--timeout <seconds>`: maximum time to wait for one reply before returning a timeout error, default `120`
|
|
- `OPENCLI_ANTIGRAVITY_TIMEOUT`: default timeout in seconds when `--timeout` is not provided
|
|
|
|
Runtime notes:
|
|
|
|
- reply polling only reconnects on session-loss style CDP errors such as closed/lost websocket connections
|
|
- reconnect attempts are bounded; DOM/logic errors are surfaced directly instead of being retried as reconnects
|