Loading…
Loading…
Bring your own keys
Bring your own API keys to AGI Desktop, CLI, and VS Code. Each runtime holds the key in its own platform credential store, then calls the provider’s endpoint directly, so the usage lands on your provider account.
Key custody
There is no shared vault behind these surfaces. A key added on Desktop is unknown to the CLI, and a key added to the CLI is unknown to VS Code, because each one writes to the credential store its own platform provides.
| Surface | Where the key is held |
|---|---|
| Desktop | The key is encrypted before it reaches local application storage, and saving it activates a direct-provider route in the running app without a restart. |
| CLI | One OS-keyring entry per provider, under the service com.agiworkforce.cli.auth. The on-disk index keeps provider names because keyrings cannot be enumerated, and it holds no key material. |
| VS Code | The extension hands the key to the editor’s own SecretStorage and reads it back from there. |
| Self-hosted | An operator sets one environment variable per provider on their own deployment. The settings screen reports whether a variable is present and never the value behind it. |
The env-var contract
These are the names a self-hosted deployment reads, and the CLI prompts for the key by the same name while it collects one. Presence is all that is ever reported back to a settings screen; the value stays server-side.
Surface boundary
Web, Mobile, Chrome, and the managed-only Electron shell do not accept provider keys. Those surfaces have nowhere private to put a key, so they do not ask for one. Carrying an existing thread across Local, BYOK, and managed Cloud is a separate question, and the FAQ answers it.
BYOK
The catalog lists each provider AGI can address, how many models it exposes, how it authenticates, and the per-million-token price it publishes.
Availability varies by surface