API Keys
Configure your LLM provider: Claude, ChatGPT, or Gemini.
Supported providers
getbot supports three LLM providers out of the box. Your API key is stored locally in ~/.getbot/config.yaml and injected into the bot's container as an environment variable — it never leaves your server.
| Provider | Get your key | Key prefix |
|---|---|---|
| Claude (Anthropic) | console.anthropic.com | sk-ant- |
| ChatGPT (OpenAI) | platform.openai.com | sk- |
| Gemini (Google) | aistudio.google.com | (none) |
Setting your key
The setup wizard prompts for your provider and key. If you want to configure credentials separately before deploying, use getbot init:
$ getbot init
Select your AI provider:
1) Claude (Anthropic)
2) ChatGPT (OpenAI)
3) Gemini (Google)
Choice [1]:
Your Claude (Anthropic) API key
Get yours at: https://console.anthropic.com/settings/keys
Key: **** You can also set keys directly:
getbot config set llm_provider anthropic
getbot config set llm_api_key sk-ant-... Key validation
getbot validates API key prefixes to catch common mistakes. If you paste an Anthropic key (sk-ant-...) while OpenAI is selected, getbot detects the mismatch and tells you which provider the key actually belongs to. This saves a failed deploy and a confusing error from the LLM API.
Switching providers
To switch providers after initial setup:
getbot config set llm_provider openai
getbot config set llm_api_key sk-proj-... Then redeploy your bot with getbot install to pick up the new provider. A dedicated AI Providers doc covering multi-provider support in detail is coming in the operations docs batch.
Where keys are stored
Your API key lives in ~/.getbot/config.yaml on your local machine. During deployment, getbot injects it into the bot's Docker Compose environment inside the Incus container. The key is never sent to getbot's servers, never logged, and never displayed in full — confirmation screens show only the first 8 characters.