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

# Choose a provider and model

Haarness works with most model providers. Connect at least one, then pick a model in the terminal
UI, Desktop or on the command line. This page helps you choose; the pages after it show how.

## Pick a way to connect

| You have | Connect with | Guide |
| --- | --- | --- |
| ChatGPT Plus or Pro, GitHub Copilot or SuperGrok | Sign in | [Sign-ins and keys](https://haarness.ai/docs/providers/native-providers.md) |
| A key from OpenAI, Anthropic, Google or another provider | API key | [Sign-ins and keys](https://haarness.ai/docs/providers/native-providers.md) |
| Azure OpenAI, Google Vertex AI or Amazon Bedrock | Your cloud credentials | [Cloud platforms](https://haarness.ai/docs/providers/native-providers.md#use-azure-openai-google-vertex-ai-or-amazon-bedrock) |
| Ollama or LM Studio running locally | Nothing; found automatically | [Local and custom](https://haarness.ai/docs/providers/custom-providers.md) |
| Another model server or gateway | A custom endpoint | [Local and custom](https://haarness.ai/docs/providers/custom-providers.md) |
| A self-hosted Haarness Router | Its address | [Haarness Router](https://haarness.ai/docs/providers/router.md) |
| No provider account | A Haarness Cloud account | [Cloud models](https://haarness.ai/docs/cloud/models-and-routers.md) |

You can connect several at once and switch between their models at any time.

## Connect from the app

- **Terminal UI:** type `/connect` and pick a provider.
- **Desktop:** open **Settings → Providers → Connect a provider**.
- **Command line:** `haarness auth login PROVIDER`.

Each one either opens a sign-in in your browser or asks for a key. When it worked, the provider
shows as connected and its models appear in the model picker.

A key you paste in the terminal UI or Desktop is checked with the provider before it is saved, so
a mistyped key is caught at once instead of in your first chat.

## Use a specific model

Every model has an id of the form `provider/model`. List the ones you can use:

```sh
haarness models               # every model you can use
haarness models anthropic     # one provider
haarness providers            # which providers are connected
```

Then choose one:

| Where | How |
| --- | --- |
| Terminal UI | `/models`, then pick |
| Desktop | The model picker in the composer |
| One prompt | `haarness run -m anthropic/claude-sonnet-4-6 "…"` |
| Default for new chats | `"model": "anthropic/claude-sonnet-4-6"` in `haarness.json` |

See [Configuration](https://haarness.ai/docs/cli/configuration.md) for where `haarness.json` lives.

## Which models do I see?

The list comes from the provider, using your credentials, so it shows what your key or
subscription can actually run. With a ChatGPT sign-in, for example, you see the models your plan
includes. For most providers, new models appear without a Haarness update.

- **Refresh it:** the list is fetched again at most every five minutes while you use Haarness.
  `/models` in the terminal UI and **Refresh models** in Desktop's provider settings refresh it at
  once.
- **Before you connect,** each provider shows a short built-in list so you can see what it offers.
- **With a ChatGPT sign-in,** a model your plan does not include fails before anything is sent,
  and the error lists the models you can use instead.
- **Provider errors** are shown with the provider's own message, not just an HTTP status.

## What every request contains

Each request carries the chat so far, the tools the agent may use, and a short description of the
environment: the provider and model id, the working directory, whether it is a Git repository,
the operating system and CPU type, and the date the chat started. Your global and project
`AGENTS.md` instructions are included, each marked with where it came from.

What else leaves your computer, and what never does, is in
[Data and storage](https://haarness.ai/docs/security/data-and-storage.md).

## Next

- [Sign-ins and keys](https://haarness.ai/docs/providers/native-providers.md)
- [Local models and custom endpoints](https://haarness.ai/docs/providers/custom-providers.md)
- [Haarness Router](https://haarness.ai/docs/providers/router.md)
- [Attachments and size limits](https://haarness.ai/docs/providers/media-and-limits.md)
