> ## Documentation Index
> Fetch the complete documentation index at: https://soulforge.proxysoul.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Use multiple models

> Cheap model for exploration, strong model for code. Cut cost without losing quality.

Assign different models to different tasks. Haiku searches your codebase, Sonnet writes the code, Flash compacts context.

## Open the router

```
/router
```

Or edit `~/.soulforge/config.json`:

```json theme={null}
{
  "taskRouter": {
    "spark":      "anthropic/claude-haiku-4-5",
    "ember":      "anthropic/claude-sonnet-4-5",
    "webSearch":  "anthropic/claude-haiku-4-5",
    "desloppify": "anthropic/claude-haiku-4-5",
    "verify":     "anthropic/claude-haiku-4-5",
    "compact":    "google/gemini-2.5-flash",
    "semantic":   "anthropic/claude-haiku-4-5",
    "default":    null
  }
}
```

## What each slot does

| Slot         | Runs when                           | Good choice                        |
| ------------ | ----------------------------------- | ---------------------------------- |
| `spark`      | Read-only agents explore your code  | Fast/cheap (Haiku, Flash)          |
| `ember`      | Agents that edit files              | Strong coding model (Sonnet, Opus) |
| `webSearch`  | Web search agents                   | Fast/cheap                         |
| `desloppify` | Cleanup pass after code edits       | Fast/cheap                         |
| `verify`     | Adversarial review after code edits | Medium strength                    |
| `compact`    | Context compaction                  | Fast/cheap (Flash is ideal)        |
| `semantic`   | Repo map one-line symbol summaries  | Fast/cheap                         |
| `default`    | Fallback when no slot matches       | —                                  |

## Recommended setups

<Tabs>
  <Tab title="Balanced">
    Strong code, cheap everything else.

    ```json theme={null}
    "spark": "anthropic/claude-haiku-4-5",
    "ember": "anthropic/claude-sonnet-4-5",
    "compact": "google/gemini-2.5-flash"
    ```
  </Tab>

  <Tab title="Budget">
    Haiku everywhere. Still very capable for most tasks.

    ```json theme={null}
    "spark": "anthropic/claude-haiku-4-5",
    "ember": "anthropic/claude-haiku-4-5",
    "compact": "google/gemini-2.5-flash"
    ```
  </Tab>

  <Tab title="Max quality">
    Sonnet for code, Sonnet for exploration too.

    ```json theme={null}
    "spark": "anthropic/claude-sonnet-4-5",
    "ember": "anthropic/claude-sonnet-4-5",
    "compact": "google/gemini-2.5-flash"
    ```
  </Tab>

  <Tab title="One gateway">
    Same models, one key via LLM Gateway.

    ```json theme={null}
    "spark": "llmgateway/claude-haiku-4-5",
    "ember": "llmgateway/claude-sonnet-4-5"
    ```
  </Tab>
</Tabs>

## Why this saves money

Agents spend \~70% of their tokens on exploration (reading files, running greps, navigating the Soul Map). That work doesn't need an expensive model. Reserve your strong model for the \~30% that's actually writing code.
