-
-
Notifications
You must be signed in to change notification settings - Fork 7
Providers and onboarding
| Provider | Authentication | Notes |
|---|---|---|
| OpenAI / ChatGPT | Browser callback or device OAuth | Uses ChatGPT/Codex account tokens, automatic refresh, model discovery, and quota-aware rotation |
| OpenAI-compatible | Base URL plus API key | Works with hosted or local compatible servers; location can be inferred or set to local/cloud
|
| OpenCode Zen / Go | Console API key or official device OAuth | Discovers the account API root; Go usage can expose rolling 5-hour, weekly, and monthly windows |
| Mistral | API key | Manual account entry with Responses or compatibility bridging |
| z.ai | Coding Plan API key | Uses the Coding Plan chat-completions endpoint and exposes discovered z.ai models |
| Grok Build | xAI device OAuth or official CLI auth.json import |
Uses the subscription contract and CLI headers rather than pay-per-token XAI_API_KEY billing |
For browser OAuth, MultiVibe opens the authorization page and asks you to paste the full callback URL after login. Device OAuth is usually simpler on a remote or headless host: approve the one-time code and the dashboard completes the flow automatically.
The bundled OpenAI client ID is registered for this browser callback:
http://localhost:1455/auth/callback
Keep this localhost callback for the copy-and-paste flow even when MultiVibe is
remote, or use device OAuth. A different OAUTH_REDIRECT_URI also requires an
OAUTH_CLIENT_ID whose provider registration includes that exact URI.
Choose More cloud providers to connect Anthropic, Google Gemini, OpenRouter,
DeepSeek, Groq, Together AI, Cerebras, or Perplexity with an API key. These use AI
SDK adapters and a bundled models.dev catalog. Models appear as
provider/model-id, and you can optionally enter specific model IDs during setup.
The native Rust edge keeps public routing and uses an authenticated internal Node adapter for these providers. Existing provider integrations keep their current paths. Model metadata does not imply account entitlement or subscription quotas. See AI SDK provider integration for architecture, supported features, and catalog refresh instructions.
Choose OpenCode Zen / Go to enter an API key, or use Connect OpenCode
account for the official opencode-cli device flow. OpenCode Go API keys expose
5-hour, weekly, and monthly usage through /zen/go/v1/usage. Monthly resets
follow the subscription period, so MultiVibe uses the provider's reset timestamp.
Console device connections using /inference/openai do not expose this Go usage
endpoint. MultiVibe shows N/A with an explanation for those connections; connect
a Go API key separately to monitor Go quotas. An explicit missing Go subscription
also shows N/A. Authentication, workspace, endpoint, and malformed-response
errors stay visible as failed quota refreshes without disabling inference.
Console credentials and workspace headers are resolved for each request, including after token refresh. Reauthentication preserves the previously selected workspace. See OpenCode integration notes for the verified contracts and validation limits.
Grok Build device OAuth is the preferred option. Existing official CLI
credentials can be imported from XAI_AUTH_PATH; xai::api_key and deprecated
pre-OIDC web_login entries are ignored. If the CLI and MultiVibe run
concurrently, prefer separate device authorization because refresh tokens
rotate.
To import a host file into Docker, mount it read-only:
services:
multivibe:
environment:
- XAI_AUTH_PATH=/run/secrets/grok-auth.json
volumes:
- /absolute/path/to/.grok/auth.json:/run/secrets/grok-auth.json:roGrok Build subscription access is intended for the account owner or another trusted operator. Review current provider terms before offering it to other users.