Models and Auth¶
The reviewer runs on a separate AI model that you choose. Zwischen supports models from Anthropic, Google, OpenAI, and DeepSeek.
Choosing a model¶
Set the reviewer model in your defaults or in a profile:
Different models behave differently as reviewers. Zwischen Labs runs continuous test suites across providers and models to understand these differences, and applies provider-specific and model-specific prompt adjustments automatically. You can disable these adjustments with model_tuning: false if you want the base reviewer prompt only.
See Supported Models for the full list.
API key authentication¶
The default authentication method is API key. The recommended way to set up provider credentials is zwischen auth:
This walks you through selecting a provider, entering your API key with hidden input, and persisting it as an OS environment variable. The key is stored in the Windows registry (on Windows) or in managed shell startup files (on macOS/Linux). Keys are not stored in settings.yaml.
You can also configure credentials manually by setting the provider's standard environment variable: OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, or DEEPSEEK_API_KEY.
Resolution order: When Zwischen needs a provider API key, it checks in this order:
api_keyin the effective profile config (${ENV_VAR}reference)- If
api_keyis unset, the provider's standard environment variable inferred from the model name (e.g.GEMINI_API_KEYforgemini-2.5-pro)
This means you can often omit api_key entirely – just set the right environment variable and Zwischen will find it automatically.
The API key is never sent to the Zwischen server. It is held in process memory on your machine only and passed directly to the model provider.
To check which providers have usable credentials:
OAuth authentication¶
OpenAI also supports OAuth authentication, which authenticates via your ChatGPT account instead of an API key.
To set up OAuth:
Then set auth_mode in your settings:
OAuth is currently supported for OpenAI only. Other providers require API key authentication.
You can also re-authenticate or check OAuth status mid-session:
Model tuning¶
When model_tuning is true (the default), Zwischen applies provider-specific and model-specific prompt adjustments tuned by Zwischen Labs. These adjustments account for behavioral differences between models – an OpenAI model reviewing code may react very differently to the same event stream than a Gemini model.
Set model_tuning: false to disable these adjustments and use the base reviewer prompt only.
Switching models mid-session¶
You can change the reviewer's model without restarting your Claude Code session:
Switching models always cycles the reviewer's session – the reviewer writes a handoff summary, then a new session starts on the target model with that summary plus a tail of recent events. Your cycle settings (tail_depth, etc.) govern how much context carries over. The reviewer's behavioral profile stays the same; only the model changes.
If you omit the model ID, the skill shows a model picker filtered to providers with usable credentials. See Slash Commands for details.
Configuration reference¶
| Key | Type | Default | Description |
|---|---|---|---|
model |
string | – | Model ID for the reviewer |
api_key |
string | – | Provider API key as ${ENV_VAR} reference |
auth_mode |
string | "api_key" |
"api_key" or "oauth" (OpenAI only) |
model_tuning |
boolean | true |
Apply provider-specific prompt adjustments |