DocsProviders

Connect a provider

Everything here lives in Settings → Providers, and everything here has a terminal equivalent.

An API key

The common case — Anthropic, OpenAI, Mistral, Cohere, MiniMax, Z.ai, NVIDIA, Fireworks, OpenRouter.

  1. Settings → Providers, pick the provider, paste the key, save.
  2. The key is validated on save, then written to the encrypted credential store.
  3. Its models appear in the model picker.

From the terminal:

Shell
podcode auth login anthropic

podcode auth list shows what's connected, podcode auth status <provider> checks one, and podcode auth logout <provider> removes it.

OAuth

GitHub Copilot uses a device-code flow; Google and OpenRouter sign in through the browser.

  1. Start the flow from Settings → Providers.
  2. For Copilot, a code is shown — enter it on GitHub's device page.
  3. The token is persisted to the credential store, and injected on every request from then on.

Copilot's model list is account-specific: it's fetched from your account, cached on disk for 24 hours, and published as a live overlay that supersedes the bundled entries. Two people connecting Copilot will not necessarily see the same models, which is correct.

A local server

Ollama and LM Studio are detected on their default ports with no configuration. Start the server, pull or load a model, and it appears in the picker.

Shell
ollama serve
ollama pull qwen3:32b

If you've moved the port, set the base URL in Settings → Providers. Local providers publish a live overlay, so a model's context window comes from the running server rather than a bundled guess.

A self-hosted endpoint

vLLM and llama.cpp want a base URL, and vLLM optionally a key:

Shell
vllm serve Qwen/Qwen3-32B --port 8000

Point Podcode at http://localhost:8000/v1 in Settings → Providers. Any OpenAI-compatible server works the same way — the endpoint is the contract, not the software behind it.

Google, three ways

Google is one provider with three connection modes, picked when you connect it in Settings → Providers:

ModeWhat you supplyUse when
AI StudioAn API keyThe quickest path to Gemini models
Vertex AIA GCP project and region, plus service-account credentials — or nothing, to fall back to Application Default CredentialsThe models have to run inside your own GCP project
OAuthA browser sign-inYou want to use the entitlement attached to your Google account

Vertex is the one to pick for an organisation that already has GCP: inference stays in your project and region, and billing goes through the account you already have. If you leave the service-account field blank, whatever ADC resolves to on that machine is used instead.

AWS Bedrock

Bedrock needs a region plus either SigV4 credentials (access key and secret) or a Bedrock API key. Models are then addressed within that region; switching regions switches which models are available.

Per-model overrides

The registry can be patched from config when a provider under-reports:

~/.config/podcode/config.json
{
  "provider": {
    "vllm": {
      "models": {
        "Qwen/Qwen3-32B": { "name": "Qwen3 32B", "limit": { "context": 131072 } }
      }
    }
  }
}

Only the models patch survives from a workspace config — api_key, base_url, env, and npm are stripped from the project layer. Set those globally.

Picking a model

Shell
podcode models

Or the model picker in the composer. A session's model can change mid-session, and a harness stage can pin its own — which is how you keep the expensive model for the stages that need judgement.

Next

  • RunPod — when you want a private endpoint but not the ops.