Model profiles
Model profiles control which LLM your assistant uses, and how that call behaves (tokens, effort, thinking). You pick one profile as the workspace default. Conversations, memory work, and scheduled tasks follow it unless you override a conversation or a single action.
Cadence does not sell metered cloud inference in 0.1. You bring the
model: a local OpenAI-compatible endpoint (Hive is the house example)
or a provider API key you store in the credential vault. Live truth
for this hatch is cadence config get llm (or
assistant config get llm in the assistant shell), not
this page.
Built-in profiles
Every hatch starts with four named intents. You can edit or duplicate them. The keys are stable even if the on-screen labels change.
| Label | Key | Best for |
|---|---|---|
| Balanced | balanced |
Everyday chat. Default for a new hatch. |
| Quality | quality-optimized |
Harder reasoning when your provider has a stronger model |
| Cost | cost-optimized |
Short, structural, high-volume jobs (titles, routing) |
| Speed | latency-optimized |
Fast replies with reasoning off (voice and similar) |
Balanced is active by default. Which concrete model
that resolves to depends on llm.defaultProvider and the
keys you added. It is not a Cadence-hosted GPT pin, and it is not a
WorkOS-provisioned cloud model.
Where the model actually runs
- Hive / OpenAI-compat local. Point the profile at an OpenAI-compatible base URL on your network. Inference stays on hardware you control.
- Bring your own key. Store the provider key through the credential prompt. The assistant calls that provider. Conversation context leaves your machine for that inference hop. See Privacy and data.
Custom profiles exist if you want a provider or model the four intents do not cover. The picker is Settings → Inference Profiles.
Switching the workspace default
Open Settings → Inference Profiles and choose a
different active profile. The change applies workspace-wide without a
restart. You can also set it in chat or via
cadence config.
Per-conversation override
The profile picker in the chat header pins a different profile to one conversation. The workspace default stays put. Use this for a one-off heavy session without changing memory filing or heartbeats.
Action overrides (call sites)
Each kind of model call has a stable call-site id (main agent, subagent spawn, memory extraction, conversation title, and so on). Settings → Inference Profiles → Action Overrides lets you assign a profile to one site. Off means “use the active profile.” On means “use this profile for that job.”
A practical split: keep chat on Balanced or Quality, and leave structural jobs (titles, empty-state greetings, classifiers) on Cost or Speed if your provider is expensive. Do not treat the vendor catalog’s hosted model names as Cadence’s bill.
Recommendation
Leave Balanced as the active profile. Override the few actions that need more (or less) horsepower. For a single deep session, pin Quality on that conversation instead of changing the hatch default.
See also
Local hosting
and
The workspace
(config.json holds the LLM config).