Claude Gateway

macOS · local control plane

Own the wire between Claude and your models.

Native app on the boundary: clients to loopback; you keep routes, provider secrets, and logs on disk.

Claude Desktop / Code → loopback → your Anthropic-compatible upstream

Product screenshot: Claude Gateway macOS application showing status, routes, and request metrics.

Local first. Precise by design.

Gateway is a single choke point: it preserves the Anthropic client experience while you swap upstreams and model aliases without touching every machine twice.

  • 01

    Any upstream that speaks the shape

    Point at Anthropic-compatible message APIs. Keep per-provider URLs, headers, and auth modes in one importable config.

  • 02

    Model names you control

    Expose stable client-visible IDs; translate each alias to the provider and upstream model in your route table.

  • 03

    Secrets stay out of Claude config

    Clients authenticate with a local bearer key. Provider keys never get copied into Claude Desktop or Claude Code config files.

Traffic shape

One hop. No mystery.

Every request is authorized locally, matched to a route, then forwarded over HTTPS to the upstream you picked.

Claude clients

Desktop · Code

Gateway

Keys · routes · logs

127.0.0.1:4000

Upstream

Your API

Single hop · local auth · TLS upstream

Install

Four beats. Running service.

  1. 01

    Download

    Grab the latest macOS DMG from Releases.

  2. 02

    Install

    Drag into Applications and open once to seed prefs.

  3. 03

    Wire providers

    Paste credentials and confirm model aliases in the app.

  4. 04

    Sync & run

    Save, let the LaunchAgent come up, point clients at loopback.

zsh — claude-gateway
$ export ANTHROPIC_BASE_URL=http://127.0.0.1:4000$ export ANTHROPIC_AUTH_TOKEN=local-gateway-key$ claude# point clients here, then ship.
bash · zsh

Ship traffic you can explain.

Install, route once, and keep Claude on the tools you already pay for and audit.

Download latest

macOS 14.4+ · Apple Silicon & Intel

Browse source →

Questions

Do I need an Anthropic API key in Claude?+

No. Clients use a local gateway token. Only the upstream call carries your provider credential.

Which providers qualify?+

Anything that correctly implements an Anthropic-compatible messages endpoint—you set base URL, headers, and auth mode per provider.

Is this a replacement for Claude Desktop?+

It sits beside Desktop and Code: they stay as-is while their traffic exits through your gateway instead of directly to a vendor URL.

How do model aliases work?+

Clients send familiar model IDs; the gateway rewrites each to the provider + model string you configured for that alias.

Where do I start debugging?+

Use the in-app log stream and the bundled doctor script; deeper notes live in the repo docs.