Models and Providers
Captain Who does not include a ready-to-use model account. You must provide a compatible API URL, token, and model identifier.
Current compatibility modes
The current runtime supports three types of model connection:
- OpenAI Chat Completions-compatible APIs.
- Anthropic Messages-compatible APIs.
- A dedicated DeepSeek V4 Chat configuration.
“Compatible” means that an interface must satisfy the messaging, streaming, and tool-calling conventions Captain Who uses. It does not guarantee that every third-party proxy or self-hosted gateway will work. The first real task validates the server response.
The general compatibility mode selects the request format from the complete API URL. It uses the OpenAI-compatible format when the URL contains /chat/completions, the Anthropic-compatible format when the URL contains anthropic or ends in /messages, and the OpenAI-compatible format by default for other URLs.
Configure the default connection
- Open “Settings → Configuration.”
- Enter the default API URL and API token under “Model configuration.”
- Confirm that the URL uses
httporhttpsand that the URL and token are provided together. - Under “Available models,” enable the models you want to appear in the task selector.
Models that inherit the default connection share this URL and token. Changing the default URL affects only models that still use the default connection.
Create or edit a model
Select “Manage models” to create, edit, delete, enable, or disable models. The main fields are:
- Model ID: Sent unchanged to the provider; it must match a value the API actually accepts.
- Display name: Changes only the interface label, not routing.
- Total context window: Stored as 128,000 tokens when left empty. Enter the value the provider actually supports.
- Supports image input: Declares whether the model accepts images. Turning this on does not give a text-only API vision capabilities.
- Input, cached-input, and output prices: Used for local estimates, priced per 1,000 tokens.
Under “More,” you can give an individual model its own URL and token. Both must be present. Captain Who will not combine a per-model URL with the global token or a per-model token with the global URL.
“API provider” uses the general compatibility configuration by default. You can also select DeepSeek V4 Chat and configure Thinking mode and reasoning effort. Provider-specific options apply only to their corresponding configuration.
Select a model for a task
When creating a conversation or automation, choose an enabled model from the model selector. A model without connection information is not available as an option.
When switching models in an existing conversation:
- You can switch directly within the same compatibility boundary.
- When changing API provider or compatibility rules, the app requires history compaction before switching.
- You cannot switch while the current run is generating or waiting for approval.
Compaction preserves a task summary and necessary references but does not send the new model a verbatim copy of the entire history. Before switching, write important facts to a project file or restate them in the prompt.
Usage and cost estimates
Under “Settings → Usage and cost estimates,” you can review request counts, input, cached input, output, and thinking tokens by period and model. After enabling “Conversation token details,” each model response can display its usage.
Costs are local estimates based on the per-1,000-token prices you enter:
- They are not the provider's final bill.
- They do not distinguish between currencies.
- Messages without valid pricing are omitted from estimates.
- Clearing statistics does not delete token details from historical conversations.
Data and credentials
Model requests send prompts, necessary history, and tool results to the configured API URL. Signed macOS releases store the model Token in the system keychain, while the database retains only an opaque reference. A stored value is not displayed again in the interface; enter it again when replacing the credential or restoring a connection after importing configuration. Continue to protect the local account, keychain, backups, and disk access.
Do not put tokens in conversations, project files, terminal commands, MCP arguments, or screenshots.
Common problems
- Authentication failed: Confirm that the token belongs to the URL and contains no extra spaces.
- Model not found: The model ID does not match the name used by the server.
- Invalid response: The interface claims compatibility, but its tool-calling or streaming format does not meet the requirements.
- Cannot send image: Image capability is not enabled for the selected model, or the server does not actually support it.
- Context limit exceeded: The configured window is larger than the provider's actual limit, or the current history needs compaction.