# Providers and models

> API keys, local servers, installed tools and subscription connections.

Open **Settings → AI → Providers** to manage where your requests go. Each connection has an enable switch and a model list. Disabling one keeps its configuration but removes its models from the pickers.

## Choose a connection type

| Route | What you need | Where it fits |
| --- | --- | --- |
| Apple Intelligence | A supported Mac with Apple Intelligence enabled | Local text tasks |
| OpenAI, Anthropic, Gemini, OpenRouter | Your provider's API key | Chat, Quick Actions and supported tools |
| OpenAI Compatible | A compatible endpoint and any required credentials | Local servers or your own gateway |
| Codex (ChatGPT) | [Sign in with ChatGPT](/docs/ai/chatgpt) | Plan-backed models without installing the CLI |
| Installed Codex, Claude, Grok, OpenCode or Cursor | The installed command and its own sign-in | Chat through an existing tool |
| ACP agent | An [ACP-compatible agent command](/docs/agents/acp) | An agent with its own tools and permissions |

## Add an API connection

1. Add a connection using the preset for your provider, or **OpenAI Compatible**.
2. Enter its base URL and key. A key belongs to the address it was saved for; changing the address asks for credentials again.
3. Load or refresh the provider's model list. If the gateway cannot list models, enter the model ID yourself.
4. Select the models you want in the picker and choose a default.
5. Send a short test message before using files or tools.

Remote endpoints require HTTPS. Plain HTTP is accepted for `localhost`, `127.0.0.1` and `::1`, where a key can be omitted. An HTTP server on another machine's LAN address does not qualify as loopback; use an HTTPS endpoint.

For a gateway requiring extra headers, use **Request Headers**. Header values and API keys stay in your login Keychain. With headers configured, the API key is optional. [Encrypted backup](/docs/reference/backup) can include supported secrets only when you explicitly choose it.

## Models and reasoning

The provider's **Models** tab controls which models appear in pickers. Until you customize that list, newly available models can appear automatically; the default model remains visible. Refresh the catalog when your provider adds models.

Reasoning options depend on the model and connection. Redcast preserves provider-specific reasoning between tool rounds where the route supports it. Changing a model does not pass the old model's private reasoning state to the new one.

**Agent effort** is a separate setting: Quick, Balanced and Thorough limit how much work an agent may do. The model's reasoning effort controls the model request. [Agent tools and limits](/docs/agents/tools) explains both.

## Installed tools

Installed providers find `codex`, `claude`, `grok`, `opencode` or Cursor's `agent` command. Their **Advanced** tab can specify a command path and environment variables. An invalid explicit path reports an error instead of silently running another executable. Variable values are stored in Keychain.

These providers are configured for chat. Claude, Grok and OpenCode do not receive unrestricted file or shell access through the chat route. Redcast can expose its configured MCP servers to installed Codex and Claude. Cursor uses Ask mode in a private workspace; MCP servers already approved in Cursor can still apply.

For project work using a coding agent's own tools, create an **ACP agent** instead. [ACP setup](/docs/agents/acp) describes how its sessions differ from installed chat providers.

## Local models

Choose OpenAI Compatible and use the base URL supplied by your local server. Keep the server running while chatting. Model names, vision, tool calling and audio support come from that server; sharing an OpenAI-shaped API does not give every model the same capabilities.

A local connection can avoid sending inference traffic to a cloud provider. Enabling web search or networked MCP tools still makes their own requests.

## Troubleshooting

| Symptom | Next step |
| --- | --- |
| A model is missing | Check the provider switch, Models checkboxes and Refresh Models. |
| Unauthorized | Re-enter the key for this endpoint, or sign in again for a subscription route. |
| Text works but tools fail | Confirm that this model and gateway implement tool calling. |
| An attachment is refused | Follow the route-specific message; use text extraction or a suitable vision/document model. |
| The wrong installed tool starts | Set its Command path explicitly and check Advanced variables. |
| A local endpoint is unreachable | Check the server process, port and base URL from the same Mac. |
