Free-tier provider auto-rotation for piclaw. Select cheapskate/auto as your model and requests are transparently routed to whichever free-tier backend is available, rotating on rate-limit errors.
Open Settings → Add-Ons and install cheapskate from the catalog.
The addon registers a cheapskate provider with an auto model. When selected, it tries each enabled backend in order, skipping any that are rate-limited or have exhausted their free quota. If one backend fails, it rotates to the next.
Context-length errors also trigger rotation, so long conversations don't get stuck on a backend with a small context window. The registered model metadata always reflects the currently active backend's real limits — context window, max tokens, and reasoning support are not merged across all configured backends.
| Provider | Model | Context | Reasoning | Keychain entry |
|---|---|---|---|---|
| Google Gemini | Gemini 2.5 Flash | 1M | ✅ | google/generative-ai-api-key |
| Cerebras | Qwen 3 235B | 131K | ✅ | cerebras/api-key |
| Groq | QwQ 32B | 131K | ✅ | groq/api-key |
| SambaNova | DeepSeek R1 | 65K | ✅ | sambanova/api-key |
| OpenRouter | DeepSeek R1 (free) | 163K | ✅ | openrouter/api-key |
| OpenCode Zen | GPT OSS 120B | 128K | ✅ | opencode/api-key |
| NVIDIA NIM | Llama 3.3 70B | 131K | ❌ | nvidia/api-key |
| Cloudflare Workers AI | Llama 3.3 70B | 131K | ❌ | cloudflare/api-token |
Open Settings → Cheapskate to:
The pane reads/writes non-secret config through the direct backend add-on config API (/agent/addons/api/cheapskate/config) and uses /agent/keychain for secrets.

A restart is needed after adding or changing a key for the runtime to pick it up.
| What | Where |
|---|---|
| API keys | Keychain — each backend has a named entry (see table above). Keys are auto-injected as environment variables at runtime. |
| Backend enabled/disabled | Runtime database — extension KV store (SQLite, global scope, extension ID cheapskate) |
| Safety cap toggles | Runtime database — same KV store as above |
No config files are written to disk. Legacy .pi/cheapskate.json is auto-migrated to the runtime database on first load.
Outside piclaw, the extension still imports and runs in a vanilla Pi/Bun environment: piclaw-specific config hooks are optional, and KV storage falls back to an in-memory store.