Which provider should I start with?
Short answer: Gemini, unless you’re building tiny single-turn edits. GridOS’s agent prompt plus a grid snapshot is typically 3,000–5,000 tokens of input, and multi-intent builds (3-statement, DCF, full operating model) emit 4,000–8,000 tokens of structured JSON output in a single call. Your provider’s free-tier tokens-per-minute (TPM) budget has to fit that envelope or the request 413s.| Provider | Free-tier TPM | Fits a multi-intent 3-statement? | Good for |
|---|---|---|---|
| Gemini Flash Lite | ~250,000 | ✅ comfortably | First-time setup, daily use, multi-intent builds |
| Anthropic Claude Haiku | paid only | ✅ (with credits) | Strict JSON reliability on large models |
| Groq GPT-OSS 120B | ~8,000 | ❌ 413s on multi-intent | Single-turn edits, chain mode (one step per call) |
| OpenRouter free Llama | varies per model | ⚠️ sometimes | Fallback when other providers are down |
The four supported providers
Google Gemini
Free tier at Google AI Studio — ~250K TPM on Flash Lite. No credit card required. Recommended default.
Anthropic Claude
$5 in starter credits at the Anthropic Console. Best JSON reliability on complex multi-section models; Haiku is cheap and fast.
Groq
Free tier at console.groq.com, no card required. Fastest inference (~1000 tps on some models) but tight TPM on free tier — pair with chain mode or upgrade to Dev Tier.
OpenRouter
Free models at openrouter.ai. Catalog includes Hermes 3 Llama 3.1 405B and Llama 3.3 70B (free). The
openrouter/free meta-router auto-picks a working free model.Two ways to configure keys
Option 1: In-app settings panel (recommended)
Paste your API key
Find the provider you want to configure, paste your key into the input field, and click Save.
data/api_keys.json, which is .gitignore-d. They persist across server restarts and never leave your machine.
Option 2: .env file
Create a .env file in the repository root before starting the server:
.env file acts as a fallback: GridOS reads it at startup for any provider that does not already have a key saved in data/api_keys.json. If a key exists in both places, the in-app value takes precedence.
You only need to provide keys for the providers you intend to use. Leave the rest blank or omit them entirely.
Using multiple providers at once
You can configure all four providers simultaneously. GridOS initialises a client for each key and makes them all available at the same time. Use the model picker in the chat composer to choose a specific model — or switch mid-session without restarting the server. A common setup: Gemini for the agent call (large TPM budget, reliable JSON) and Groq 20B as the router (fastest classifier, so routing adds negligible latency). GridOS picks the router model automatically from whichever fast small model has a key; you don’t configure this explicitly.What happens when a key is invalid
If the provider rejects your API key, GridOS returns a401 error and surfaces the message “The API key for this model was rejected.” Open Settings, update the key for that provider, and retry.
Provider errors are isolated: a bad key for one provider does not block the others. If your Groq key is invalid but your Gemini key is valid, Gemini models continue to work normally.
See the full error reference in Troubleshooting: common errors.