Recued ships no model, so setup means telling it which sources to route AI calls to. Everything lives on one page: Settings → AI/Models. You can start free and add paid keys only if you want them.
#Option 1 — free-tier API keys
Add your own free-tier keys — Groq, OpenRouter, Gemini, Cerebras, GitHub Models, Mistral — and Recued spreads calls across them within each provider's quota. This is the usual workhorse: structured output, works headless, costs nothing until a quota is exhausted.
#Option 2 — your own keys
Two slots cover paid or self-hosted models:
- Slot 1 (fast) — the routine-work model.
- Slot 2 (quality) — the harder-question model, also used for extended thinking.
Each slot takes Anthropic, OpenAI, Google Vertex, or any OpenAI-compatible endpoint — which includes a local Ollama or vLLM server, if you want AI that never leaves your machines.
#Optional — an embeddings slot
Configure the Embeddings slot under Providers → Embeddings only when a recipe or producer explicitly needs vector embeddings. One example is the housekeeping producer that embeds mail so semantic clustering can compare it. The slot takes its own provider, embedding model, API key, and optional base URL.
Recipes reach the slot through the read-only core.ai.embed kernel op:
{
"id": "embed",
"op": "core.ai.embed",
"args": {
"llm.data": "{{step.source.text}}"
}
}The step returns vector, dimensions, and model. Add an optional
llm.dimensions argument only when the selected embedding model supports an
explicit dimension hint. Embeddings do not support llm.pii_fields; protect
sensitive input upstream before passing it as llm.data.
This slot is separate from normal AI routing. Built-in chat and ordinary generative recipe steps never use it; embedding calls never fall back to the free pool or the fast and quality slots.
#How calls are routed
Normal generative recipes ask for a capability hint — fast, quality, or
thinking — never a provider name. Resolution prefers free sources before
paid keys, checks availability before a recipe starts so unresolvable steps
fail up front, and treats one call as one billing event: paid calls are never
silently re-issued. See AI and models for the full
model.
#Background AI stays opt-in
Enrichment topics that use AI run at the trust level you set per topic — off, manual, or automatic — with a pool policy per topic (free sources only, paid only, or free-then-paid) and a global Pause-AI switch. Nothing promotes itself to automatic; Recued suggests, you decide.
#Next
Try it in chat — AI chat and MCP.