Skip to content
DocsModels & providers
On this page

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
A key from OpenAI, Anthropic, Google or another provider API key Sign-ins and keys
Azure OpenAI, Google Vertex AI or Amazon Bedrock Your cloud credentials Cloud platforms
Ollama or LM Studio running locally Nothing; found automatically Local and custom
Another model server or gateway A custom endpoint Local and custom
A self-hosted Haarness Router Its address Haarness Router
No provider account A Haarness Cloud account Cloud models

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:

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 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.

Next