~/.mutual-dissent/config.toml
Full Example
[providers]
| Key | Description |
|---|---|
openrouter_api_key | OpenRouter API key |
anthropic_api_key | Anthropic direct API key |
openai_api_key | OpenAI API key |
google_api_key | Google API key |
xai_api_key | xAI API key |
groq_api_key | Groq API key |
[routing]
| Key | Values | Default | Description |
|---|---|---|---|
default_mode | auto, direct, openrouter | auto | Routing mode applied to all models unless overridden |
<alias> | auto, direct, openrouter | — | Per-model override (e.g. claude = "direct") |
[model_aliases]
Each alias is a subtable withopenrouter (required) and direct (optional) keys.
| Key | Description |
|---|---|
openrouter | OpenRouter model ID used when routing via OpenRouter |
direct | Vendor-native model ID used when calling the provider directly |
[defaults]
| Key | Default | Description |
|---|---|---|
panel | ["claude-opus", "gpt", "gemini", "grok", "nemotron"] | Default debate panel |
synthesizer | "claude-opus" | Default synthesizer alias |
rounds | 1 | Default reflection rounds (1–3) |
Notes
config.tomlis created automatically on first use ofdissent config showor when saving from the web UI config panel- The file is not created by
pip install— you only need it if you want to persist settings beyond environment variables - Omit any section you don’t need; defaults are applied for missing values