Loadouts
A loadout is a named preset: a provider connection, a model, and the params you want it launched with. Loadouts replace the old /profile command.
Three Concepts
Provider Profile
The connection: endpoint and credentials. Created once with /setup (or /login for OAuth). Owns the API key.
Model
A catalog entry: the bundled registry plus whatever live catalog the provider exposes.
Loadout
Provider profile plus model plus params, under one name. The only layer you interact with day to day.
Implicit Loadouts
For every configured provider profile, every registry model that provider serves is automatically a usable loadout. With an OpenAI key configured, gpt-5.6-terra is already a loadout name. Nothing to set up, nothing stored.
You only create a loadout to override something:
// ~/.kollab/config.json -> kollabor.llm.loadouts
{
"fable-slim": {
"provider_profile": "anthropic",
"model": "claude-fable-5",
"temperature": 0.3,
"effort": "high",
"max_tokens": 32000,
"description": "Fable with a small output budget"
}
} Only provider_profile and model are required. An explicit loadout may shadow an implicit name; the explicit one wins.
The /llm Command
/llm (aliases /loadout, /ld) opens a fullscreen picker: saved loadouts first, then the implicit models grouped per provider, with context window and pricing notes from the registry. The active one is marked [*].
Picker Keys
- Type to filter. Esc clears an active filter first, closes second.
- Enter activates the highlighted loadout.
- N creates a new loadout, pre-filled from the highlighted row.
- E edits an explicit loadout; on an implicit row it branches a new one.
- D deletes an explicit loadout (press twice to confirm).
The create and edit form arrives pre-filled: name suggested, provider and model locked from the row you picked, defaults for temperature and effort, and a 16,384-token interactive output reserve validated against the model's ceiling. Ctrl+S saves and activates.
Direct Activation
/llm fable-slim # exact name
/llm terra # unique substring works tooA miss lists suggestions instead of guessing.
Launching With A Loadout
kollab --llm fable-slim # explicit loadout
kollab --llm terra # implicit (unique match against the catalog)--llm resolves in order: existing profile name, then loadout (exact, then unique substring). A launch flag applies the loadout's fields in memory only; it never rewrites your saved config. Activating from inside the app does persist.
--model and --effort override individual fields on top of whatever --llm resolved to, and work on their own against the active profile:
kollab --llm fable-slim --effort ultra # loadout's model, ultra effort
kollab --llm openrouter --model x-ai/grok-4.5 # profile's connection, this model
kollab --model gpt-5.6-terra # active profile, this modelPrecedence: explicit flag, then loadout field, then provider profile value.
Reasoning Effort
/model effort shows the current level; /model effort high sets one. The levels are low, medium, high, xhigh, max and ultra. Providers reject anything else, so the CLI rejects it first.
Relation To /setup
/setup owns provider connections (keys, endpoints, OAuth); /llm owns everything after that. The old /profile command is gone. Provider profiles still exist under the hood (kollabor.llm.profiles holds the connections); Azure or fully custom endpoints are added there by hand.