Cremind
Setup & Configuration

Assigning Model Groups

Map providers and models to the high and low model groups so the agent reasons with a strong model and runs tool calls with a cheaper one.

Cremind never hard-codes a single model. Instead it reaches for a model group — a named slot that points at whichever provider/model you assigned to it. There are two groups:

  • high — the reasoning and planning model. This is the heavyweight, more expensive model the agent uses to think through a task and decide what to do next.
  • low — the per-tool-call model. This is the cheaper, lighter model used for routine work like the skill classifier and individual tool calls.

Splitting work this way means you do not pay frontier-model rates for every small step — the expensive model plans, the cheap model executes — which gives you lower token cost for the same end-to-end task. For the architectural reasoning behind the split, see Model Groups.

You configure the providers first (paste keys, discover models), then point each group at one of the discovered models. If you have not added a provider yet, start with Configuring LLM providers.

Reading the current assignments

In the web UI, the Model groups section sits at the top of Settings -> LLM Providers. From the CLI:

cremind llm model-groups get
{
  "default_provider": "anthropic",
  "model_groups": {
    "high": "anthropic/claude-opus-4-7",
    "low":  "anthropic/claude-haiku-4-5-20251001"
  }
}

Each assignment is a provider/model pair, where provider matches a NAME from cremind llm providers list and model matches an ID from cremind llm providers models <provider>. The default_provider is the provider used when no explicit provider is requested.

Setting the groups

Set any combination of the three fields; omitted fields keep their current value, and at least one must be supplied.

# Bump the high group to a stronger reasoning model
cremind llm model-groups set --high anthropic/claude-opus-4-7

# Use a fast, cheap model for the low group
cremind llm model-groups set --low anthropic/claude-haiku-4-5-20251001

# Switch the default provider and the high model in one call
cremind llm model-groups set --default-provider openai --high openai/gpt-5
FlagGroupUsed for
--highhighHeavyweight reasoning and planning.
--lowlowPer-tool-call work, e.g. the skill classifier.
--default-providerThe provider chosen when none is requested.

How to choose models for each group

A good starting point:

  • Put your strongest available reasoning model in high. This is where quality of planning matters most.
  • Put a fast, inexpensive model in low. Routine tool calls and the skill classifier do not need a frontier model, and using a cheap one here is the main source of the lower token cost.

You can mix providers — for example, a high group on one provider and a low group on another — as long as both providers are configured and their models have been discovered.

Where the assignments are stored, and precedence

Model-group assignments are stored in SQLite on the server. These stored values override the corresponding settings in the TOML settings.toml file. In other words, TOML provides the baseline a fresh server starts from, but once you set a group through the CLI or the web UI, the database value wins.

SQLite overrides TOML

Anything you set via cremind llm model-groups set or the Model groups UI is persisted in SQLite and takes precedence over settings.toml. If a setting "won't stick" to a TOML value you edited, it is almost certainly because a database override is shadowing it — update it through the CLI/UI instead.

Per-tool overrides

The two groups are the default the agent reaches for, but an individual tool can pin which group it should use through its default_model_group configuration. This lets a specific tool always run on the high group (or always on low) regardless of the agent's normal choice for that step — useful when one tool needs more reasoning headroom than the rest.

Next steps

On this page