How to

Choose a model

Your accomplice thinks with an AI model you bring. Mandala includes none: connect a sign-in, an API key or a model running on your own machine. You can connect several and route different kinds of work to each.

Options

OptionHowWhere your conversations go
Sign in with ChatGPTUses your ChatGPT plan.OpenAI
Sign in with GrokUses your xAI plan.xAI
Paste an API keyOpenAI, Anthropic (Claude), Google Gemini, xAI, DeepSeek, Kimi, Z.ai, Meta.That provider
Use a model on this computerOllama, found automatically.Nowhere: it stays on your machine

Claude is available with an API key only: Anthropic does not allow Claude subscriptions to power other apps.

At the first run

The setup assistant offers these options right after Face ID (The first run). Pick one; Mandala tries it live, the model greets you by name, and Mandala sets sensible routing (what conversations and quick things will use). Nothing is saved until the test passes. If you skip it, a banner offers Choose one later.

Sign in with ChatGPT

  1. Press Sign in with ChatGPT. OpenAI's sign-in page opens.
  2. Sign in and accept.
  3. Your browser then lands on a page that may not load (http://localhost:1455/auth/callback?code=…). Copy that page's whole address, paste it into Mandala, and press Finish.

The sign-in renews itself. Settings → Models → OpenAI / ChatGPT shows it (Signed in — With your ChatGPT account, and when the token renews); Disconnect removes it, and an API key pasted there replaces it.

Sign in with Grok

Press Sign in with Grok, then enter the code Mandala shows on xAI's page. From Settings later: Settings → Models → xAI Grok → Authorize (or Sign in again).

Later, from Settings

  1. Open Settings → Models and choose the provider.
  2. Paste the key and press Connect (or Authorize for Grok).
  3. The provider shows Connected. Keys are stored encrypted on your server and never shown again.

You can also put keys in the environment file before starting: ALMA_OPENAI_API_KEY, ALMA_ANTHROPIC_API_KEY, ALMA_GEMINI_API_KEY, ALMA_XAI_API_KEY, ALMA_DEEPSEEK_API_KEY, ALMA_KIMI_API_KEY, ALMA_ZAI_API_KEY, ALMA_META_API_KEY. They are copied into the encrypted store at each start.

Choose which model does what

Open Settings → Models → Workload routing. Each kind of work has its own connection, model and reasoning effort:

WorkloadUsed for
ConversationTalking with you, on every channel. Required.
TriageMail, messages and events arriving in the background.
Follow-upsScheduled wakeups, routines and the morning plan.
Sensitive conversationsSensitive mode (adult content), if you use it.
Simple requests / Complex requestsLighter or stronger models, when routing by complexity is on.

Leave a workload on Same as Conversation until you have a reason to change it. A good start: your best general model for Conversation, a small fast one for Triage. Changes apply from the next turn.

The model list comes from the provider when it can be asked; otherwise Mandala shows suggestions, and Other… lets you type any model id.

Local models with Ollama

Install Ollama, pull a model (ollama pull qwen3), and choose Ollama (local) in Workload routing. Mandala expects it at http://127.0.0.1:11434; set ALMA_OLLAMA_BASE_URL if it runs elsewhere. Local models keep everything on your machine but are slower and less capable with tools.

Next

Models and workload routing covers reasoning effort, routing with Jev, and costs.