End-to-end wiring: Claude Code and Cursor call your local (or LAN) Auxot instead of hitting Anthropic/OpenAI APIs directly. Requests still go through Auxot’s normal routing (GPU → CLI → cloud per provider order).

Note — Port in the examples. Examples below use 8420. If your instance listens on 8080 (e.g. get.auxot.com docker-compose), substitute accordingly—match whatever host/port serves the Auxot UI.


Prerequisites

  1. Auxot Server reachable from the machine where you run Claude Code / Cursor (Quickstart if you are bootstrapping).
  2. Web UI loads; use that host:port in the URLs below (localhost → hostname/IP when Auxot is on another host).
  3. At least one inference provider online (CLI, GPU, or cloud)—otherwise calls authenticate but fail upstream.
  4. A personal or team API key from Settings → API Keys in Auxot Server (Part 1); plaintext shown once at creation.

Paths (no trailing slash on origin):

UsePath
OpenAI-compatible (Cursor, openai SDK)http://<host>:<port>/api/openai
Anthropic-compatible (Claude Code, anthropic SDK)http://<host>:<port>/api/anthropic/v1

Part 1: API key

Auxot Server accepts two kinds of API keys: personal and team. Both are created in the settings UI and presented as a Bearer token on each request.

Settings → API Keys

  1. Sign in to Auxot Server.
  2. Go to Settings → API Keys.
  3. Under Personal API Keys, click New Key, give it a name, and copy the plaintext value. It is shown once and not stored in full — keep it somewhere safe.

Team API keys appear on the same page on Business and Enterprise plans. Pick a team, create a key, copy it once. Use a team key when the request should be attributed to a team (shared CI pipelines, integrations) rather than to a specific user.

Do not ask an agent in chat to generate a key — the key would appear in the conversation history.

REST API (optional)

Keys can also be created programmatically. See API overview → Authentication for endpoints and headers.


Part 2: Claude Code (Terminal)

Claude Code speaks the Anthropic Messages API. Auxot exposes a compatible endpoint; you only change base URL and API key so the CLI talks to Auxot first.

Step 1 — Install Claude Code

On the machine where you run claude:

npm install -g @anthropic-ai/claude-code

Step 2 — Choose your Auxot base URL

Examples:

Where Auxot runsTypical Anthropic base URL for env vars
Same machine, default porthttp://localhost:8420/api/anthropic/v1
Another computer on your LANhttp://192.168.1.50:8420/api/anthropic/v1

The path must end with /api/anthropic/v1 (Auxot implements the Messages API under that prefix).

Step 3 — Set environment variables

In the same terminal session where you will run claude:

export ANTHROPIC_BASE_URL=http://localhost:8420/api/anthropic/v1
export ANTHROPIC_API_KEY=<user.xxx or team.xxx>
  • ANTHROPIC_API_KEY is your Auxot key, not your personal Anthropic console key. Auxot’s router may still call Anthropic (or other providers) on the backend depending on your setup.
  • Use x-api-key style clients only if your wrapper requires it; the CLI uses the variables above. See Anthropic-compatible API for header options.

Step 4 — Persist env vars

Shell profile, direnv, or whatever you use for local secrets; new shell session to pick up changes.

Step 5 — Verify

claude

Smoke-test with a short prompt. Typical failures: connection refused (bind/firewall/host), 401 (key), upstream/model errors (no provider). Reference: Anthropic-compatible API. Server-side Claude as a provider (not this client setup): CLI Workers.


Part 3: Cursor (Editor)

Cursor can use an OpenAI-compatible endpoint. Auxot implements chat completions at /api/openai/chat/completions, so you point Cursor’s OpenAI integration at Auxot.

Step 1 — Cursor settings

Settings → Models → OpenAI: set OpenAI API Key (your Auxot key—the same Bearer token as in curl) and Override OpenAI Base URL (labels vary slightly by Cursor version, e.g. “when using key”).

Step 2 — Override base URL

http://localhost:8420/api/openai

Host/port as appropriate. Do not append /chat/completions to the base URL.

Step 3 — Model

Pick a model id your stack exposes, or auto (OpenAI-compatible API).

Step 4 — Debug

If Cursor fails but Auxot is up: check server logs, try HTTP/1.1 under network/HTTP compatibility settings for local TLS quirks, and bisect with curl:

curl (from a host that can reach Auxot):

curl http://localhost:8420/api/openai/chat/completions \
  -H "Authorization: Bearer <user.xxx or team.xxx>" \
  -H "Content-Type: application/json" \
  -d '{"model":"auto","messages":[{"role":"user","content":"Say hello in one sentence."}]}'

curl succeeding while Cursor fails usually points at Cursor config or HTTP/2/TLS behavior, not Auxot routing.


Part 4: Security (local / LAN)

Bearer key + reachable port ⇒ anyone on the network path can spend your quota. Don’t commit secrets. Production: TLS (Configuration), network policy—Security.