auth.status
Get the current authentication status for all providers.Request
Parameters
No parameters required.Response
Array of enabled providers:
["openai", "openrouter", "antigravity"]Whether OpenAI OAuth token is configured
Whether OpenRouter API key is configured
Whether Antigravity OAuth token is configured
Antigravity user profile object (if authenticated)
Example
auth.connect.openai
Initiate OpenAI OAuth login flow. In RPC mode, auth URLs/device codes are emitted as events.Request
Parameters
Login mode:
"auto", "browser", or "device_code". Defaults to "auto"."auto"- Automatic browser launch (non-RPC mode)"browser"- Browser-based OAuth flow"device_code"- Device code flow (recommended for RPC mode)
Optional originator identifier for tracking
Response
Always returns
"openai"The login method used:
"browser" or "device_code"OpenAI account ID
Events Emitted
During the authentication flow, the server emits:auth.flow.started- Flow initiatedauth.flow.url- Browser URL (for browser mode)auth.flow.device_code- Device code details (for device code mode)auth.flow.completed- Authentication succeededauth.flow.failed- Authentication failedstate.changed- Runtime state updated
Example
In RPC mode, listen for
auth.flow.device_code events:auth.connect.antigravity
Initiate Antigravity OAuth login flow.Request
Parameters
No parameters required.Response
Always returns
"antigravity"Antigravity user profile object
Events Emitted
auth.flow.startedauth.flow.url- Browser URL for OAuthauth.flow.completedauth.flow.failedstate.changed
Example
auth.set.openrouter_key
Configure OpenRouter API key. This will fetch and cache the model catalog.Request
Parameters
OpenRouter API key (must be non-empty)
Response
Always returns
true if key was setNumber of models discovered from OpenRouter
Source of model catalog:
"api" or "fallback"Example
auth.set.exa_key
Configure Exa API key for the built-in search tool, or disable it by passing"skip".
Request
Parameters
Exa API key, or the literal string
"skip" to disable Exa searchResponse
true if key was set, false if skippedtrue if the user passed "skip"