Skip to main content

Models

By default you have access to Symbiotic’s models through the Symbiotic provider. List and switch between models with the /models command (or press Ctrl+X then M). To use a different model, add or connect another provider with the /connect command. In the /models dialog, press Ctrl+F to mark a model as a favorite and Ctrl+A to open the provider list. Press F2 / Shift+F2 to cycle through recently used models, and Ctrl+T to cycle through the model’s variants (for example reasoning effort levels), when available. Models are identified as provider/model, for example anthropic/claude-sonnet-4-5. To list the available model IDs, run:

Set a default model

Set model in your configuration file. You can also set small_model, used for lightweight tasks like title generation. When small_model is not set, a cheaper model from the same provider is picked automatically.
symbiotic.json
When starting, Symbiotic Code picks the model in this order:
  1. The --model / -m flag, e.g. symbiotic -m anthropic/claude-sonnet-4-5
  2. The model key in your configuration
  3. The default model of the Symbiotic provider (or of the first available provider)
  4. Your most recently used model
The model you pick in /models applies to the current agent. You can also assign a model to a specific agent with its model option. See Custom agents.

Providers

Symbiotic Code supports 75+ LLM providers and it supports running local models. To add a provider, run the /connect command and enter the API key (or sign in) for the provider of your choice. You can also do it from the command line:
Credentials are stored in ~/.local/share/symbiotic/auth.json. Providers are also enabled automatically when their API key environment variable is set (for example ANTHROPIC_API_KEY or OPENAI_API_KEY). Most popular providers are preloaded by default. If you’ve added the credentials for a provider through the /connect command, they’ll be available when you start Symbiotic Code.

Restrict providers

Use enabled_providers to allow only specific providers, or disabled_providers to hide providers that would otherwise be loaded automatically:
symbiotic.json

Configure a provider

Each entry under provider can set options (such as apiKey, baseURL, timeout, chunkTimeout, and setCacheKey), and restrict its models with whitelist or blacklist:
symbiotic.json
{env:VAR} and {file:path} are replaced with the value of an environment variable or the content of a file. See Provider options for details.

Create a custom provider

If you want to use a local model or a model hosted in your own infrastructure, you can create a custom provider by adding a “provider” section to your symbiotic.json configuration file.
symbiotic.json
  • npm: the AI SDK package used to talk to the provider. Use @ai-sdk/openai-compatible for any OpenAI-compatible API (Ollama, LM Studio, vLLM, llama.cpp…).
  • options.baseURL: the API endpoint, for example http://localhost:11434/v1 for a local Ollama server.
  • models: the models to expose. The key is the model ID sent to the API.
The model is then available as myprovider/my-model-name. If the provider requires an API key, set options.apiKey or store it with symbiotic providers login (select Other and enter myprovider as the provider ID).