Skip to main content
The Models view is where you tell Comis which AI providers it can use, which specific models are available, what shorthand aliases point to them, and which model is the default for each agent. Who it’s for: anyone deciding which models their agents call — from “swap Claude Sonnet for GPT-4o” to “configure a self-hosted Ollama endpoint.”

Route

  • /models — opens the Models view

What You See

The view is organized into four tabs:

Providers tab

Lists every custom provider entry from the providers.entries config block — these are OpenAI-compatible proxies, self-hosted gateways, and other endpoints not covered by the pi-ai built-in catalog. Most users will see this tab empty, because the pi-ai catalog covers all common providers natively (see the Catalog tab below). Each card shows:
  • Type — any pi-ai catalog provider name, or openai for an OpenAI-compatible custom proxy
  • Name — a friendly label
  • Base URL — the endpoint the SDK calls
  • API key env name — which environment variable holds the key (e.g., ANTHROPIC_API_KEY)
  • Status — the provider’s catalog and configuration status
  • Timeout / Max retries — per-provider transport tuning
  • Enable toggle — soft-disable a provider without removing it
A Check action calls models.test to inspect local catalog/configuration state and list which agents use the provider. It does not send a request to the provider.
The daemon includes a guard that rejects redundant custom entries for built-in providers — if you try to create providers.entries.openrouter with the catalog’s default baseUrl, the daemon returns an actionable error directing you to use gateway env_set OPENROUTER_API_KEY=<key> + agents_manage update --provider openrouter instead. Custom entries are only needed for proxies (different baseUrl) or non-catalog providers.

Catalog tab

Lists every model from the pi-ai SDK catalog — sourced live from the models.list RPC, which itself wraps getModels(provider) from @earendil-works/pi-ai. Each row shows: A search input filters the list. Use this tab to check whether a specific model id is available before assigning it.

Aliases tab

Aliases are shorthand names you can use in agent config (e.g., model: fast) instead of the full vendor id. Each row shows:
  • Alias — the shorthand
  • Provider + Model ID — what it resolves to
Add, edit, or delete aliases here; changes are saved via config.patch.

Defaults tab

Shows each agent’s effective model resolution. For every agent you’ll see:
  • Agent ID
  • Provider the agent is currently configured to use
  • Model ID — either explicit, or resolved from an alias
  • Override controls if you want a per-agent model that differs from the global default
Use this tab when you want to swap one agent to a faster/cheaper model without touching the others.

Common Tasks

1

Add a new provider

Click Add Provider on the Providers tab. Custom entries are for proxies or non-catalog OpenAI-compatible endpoints; configure their base URL and secret reference, then save the entry.
2

Find which agents use Claude Sonnet

Run the provider check for Anthropic. The result lists every agent currently configured with that provider.
3

Create a 'fast' alias

On the Aliases tab, click Add Alias. Enter fast as the alias, pick groq as provider, and llama-3.3-70b-versatile as the model id. Save. Now any agent with model: fast resolves to that combination.
4

Override one agent's model

On the Defaults tab, find the agent you want to change. Set its provider and model. Save — the change writes to agents.<id>.provider and agents.<id>.model and triggers the daemon to reload.
This view shows the user-facing slice of model configuration. The full set of provider options (rate limits, fallback chain, cost tracking) lives in the models section of config.yaml — see the Config Editor for raw YAML access, or the models reference for the schema.

Models Reference

Full provider catalog, default models, and pricing.

Agent Editor

Set per-agent model overrides from each agent’s editor page.

Config Editor

Edit the raw models section of your YAML.