Provider setup

Switch the default model

Three levels: global default / per-vault / per-task.

Three resolution layers

Model selection cascades: global defaultper-vaultper-task, with later layers winning. You can keep Sonnet globally, switch a research vault to Opus, and momentarily flip a single task to a mini model — none of these bleed into each other.

All layers are local; syncing a vault lets teammates share the vault-level pick while each keeps their own global preference.

Global default

Open Settings → Agent → Default model — the dropdown lists every model available across attached providers. Whatever you pick becomes the starting model for any new vault.

Per-vault override

.kition/agent.json at the vault root is plain JSON you can version-control. Set defaultModel there and the vault locks to that model; remove the field to fall back to the global default.

{
  "defaultModel": "claude-opus-4-7",
  "subagents": {
    "researcher": { "model": "gpt-5.1" },
    "summarizer": { "model": "claude-haiku-4-5" }
  }
}

Per-task quick switch

  • Top-of-panel dropdown — switches the current chat instantly
  • Type use opus / use gpt-5.1 / use haiku in the prompt — natural-language switch applies on the next turn
  • Right-click a message → Retry with... — rerun the same prompt with a different model to compare
  • Hotkey Cmd Shift M (macOS) / Ctrl Shift M (Windows) opens the model picker

Smart routing (Pro)

Pro adds routing rules in .kition/agent.json: pick a model based on task type, context length, or tool-call count. Light chat to Haiku, long-context research auto-upgrades to Opus, code edits always go through gpt-5.1.

{
  "defaultModel": "claude-sonnet-4-6",
  "routing": [
    { "if": "context.tokens > 100000", "use": "claude-opus-4-7" },
    { "if": "task.kind == 'code'",      "use": "gpt-5.1" },
    { "if": "task.kind == 'summary'",   "use": "claude-haiku-4-5" }
  ]
}

Troubleshooting and gotchas

  • Model missing from dropdown — provider not attached or key invalid; hit Test on Providers
  • Switched to a model the provider does not host — Kition falls back to that provider default and logs a warning
  • Free tier attaches one provider at a time — cross-provider routing requires Pro
  • per-task switches do not write back to agent.json — they only affect the current chat
  • For team vaults that must pin a model, set lockModel: true in .kition/agent.json

Related articles

Ready when you are.

Kition is a local-first AI workspace. Markdown documents, structured tables, and an AI agent — running on your own machine, against the model provider you choose.