NieuwKoppel elke agent aan UberLLM: één sleutel, elk model, voor de catalogusprijs of minder.
UberLLM

Claude Code

Claude Code praat met UberLLM via zijn Anthropic-compatibele adres, https://api.uberllm.dev. Met het adres en uw key ingesteld, werken de commando's en tools van Claude Code zoals voorheen, en aanvragen worden gefactureerd aan uw UberLLM-saldo.

Handmatig instellen

Niets anders dan Claude Code zelf hoeft te draaien. Maak een key aan op je keys pagina, en dan:

export ANTHROPIC_BASE_URL=https://api.uberllm.dev
export ANTHROPIC_AUTH_TOKEN=ull_your_key
claude

Windows PowerShell:

$env:ANTHROPIC_BASE_URL = "https://api.uberllm.dev"
$env:ANTHROPIC_AUTH_TOKEN = "ull_your_key"
claude

Dat blijft geldig voor de huidige terminal. Om het in je shell profile te bewaren, zonder de key erin te plaatsen, sla de key op in een bestand dat alleen jij kunt lezen:

mkdir -p ~/.uberllm && chmod 700 ~/.uberllm
printf '%s\n' 'ull_your_key' > ~/.uberllm/key && chmod 600 ~/.uberllm/key

en zet dit in ~/.claude/settings.json (elk project) of in <project>/.claude/settings.local.json (één project):

{
  "apiKeyHelper": "cat ~/.uberllm/key",
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.uberllm.dev"
  }
}

Of gebruik de installer

De installer doet hetzelfde voor jou en haalt de sleutel op via je browser. Lees het eerst als je wilt: het is platte tekst op uberllm.dev/install/claude-code.sh.

  • SHA-256 van claude-code.sh: f5aa1c4610992d8f4ecc1b1cd777bc731c5fad9da6a38cac46989834b194d66c
  • SHA-256 van claude-code.ps1: 60d631b48e60a2e3f17e5eee19136d47a255f143627986e86b6ceb379858a3b9

Om het te controleren voordat je het uitvoert:

curl -fsSL https://uberllm.dev/install/claude-code.sh -o claude-code.sh
shasum -a 256 claude-code.sh   # compare with the hash above
sh claude-code.sh

Elk project op deze computer:

curl -fsSL https://uberllm.dev/install/claude-code.sh | sh

Eén project alleen (voer het uit binnen het project; andere projecten blijven op je Anthropic-abonnement):

curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --project

Voeg een map toe na --project om een ander project dan het huidige in te stellen.

Windows PowerShell (elk project):

irm https://uberllm.dev/install/claude-code.ps1 | iex

Je hebt niet eerst een API key nodig, en je hoeft niet ingelogd te zijn wanneer je de opdracht plakt. De installer opent een link in je browser (https://uberllm.dev/cli/link?code=XXXX-XXXX) en print dezelfde bevestigingscode in de terminal. Log in, controleer of de code overeenkomt, en druk op Approve.

Goedkeuren creëert een API key op je account en geeft deze aan de wachtende installer. De code in je terminal is niet het geheim: alleen de installer die de aanvraag heeft gestart, kan de sleutel ophalen, de sleutel wordt precies één keer uitgereikt, en de aanvraag verloopt na 15 minuten.

Als Claude Code nog nooit is ingesteld op deze computer, gebruik dan eerst de 'elk project'-installatie. Claude Code leest de eigen instellingen van een project pas nadat je die map vertrouwt, dus een gloednieuwe installatie kan je nog steeds vragen om in te loggen.

Om het instellingenblok voor je computer te printen zonder iets te schrijven:

curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --print

Wat het installatieprogramma schrijft

De sleutel komt in een bestand dat alleen jij kunt lezen (mapmodus 700, bestandsmodus 600):

Installatie Sleutelbestand Instellingenbestand
Elk project ~/.uberllm/key ~/.claude/settings.json (of $CLAUDE_CONFIG_DIR/settings.json)
Eén project ~/.uberllm/key-<folder>-<number> <project>/.claude/settings.local.json

Het instellingenbestand krijgt het adres en een apiKeyHelper dat het sleutelbestand leest. De sleutel zelf wordt nooit in een instellingenbestand geschreven, zodat deze niet in een back-up, een dotfiles repository of een schermdeling terechtkomt.

{
  "apiKeyHelper": "cat \"/Users/you/.uberllm/key\"",
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.uberllm.dev",
    "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
  }
}

Claude Code draait apiKeyHelper om de sleutel te verkrijgen en stuurt deze als zowel Authorization: Bearer als x-api-key, zodat het werkt met een gateway zoals UberLLM. Het bewaart het antwoord vijf minuten (CLAUDE_CODE_API_KEY_HELPER_TTL_MS verandert dat).

Het installatieprogramma voegt samen met je bestaande bestand in plaats van het te vervangen, zodat hooks, permissies en MCP servers behouden blijven, en het kopieert eerst het oude bestand naar <file>.bak-<timestamp>. Het verwijdert een platte-tekst ANTHROPIC_AUTH_TOKEN achtergelaten door een oudere installatie. Het doet vervolgens één echte aanvraag via de gateway, dus een succesbericht betekent dat een aanvraag is doorgegaan.

Het Windows installatieprogramma schrijft de sleutel nog steeds naar settings.json als ANTHROPIC_AUTH_TOKEN.

Welke instelling wint

Claude Code leest instellingen in deze volgorde, de eerste wint:

  1. Beheerde instellingen (ingesteld door uw bedrijf, indien van toepassing)
  2. claude --settings <file>
  3. <project>/.claude/settings.local.json
  4. <project>/.claude/settings.json
  5. ~/.claude/settings.json

Een variabele in het env blok van een instellingenbestand wint van dezelfde variabele in uw shell in de meeste sessies. Twee uitzonderingen zijn hier van belang:

  • De key. Claude Code gebruikt eerst ANTHROPIC_AUTH_TOKEN, dan ANTHROPIC_API_KEY, dan apiKeyHelper. Een token dat in uw shell is geëxporteerd, vervangt de opgeslagen key.
  • Het model. /model in de sessie wint, dan claude --model, dan ANTHROPIC_MODEL, dan de model setting. Een shell ANTHROPIC_MODEL verslaat de model setting.

Verwijder dus elke ANTHROPIC_* variabele uit uw shell en uw shell-profiel (~/.zshrc, ~/.bashrc) en bewaar ze in het instellingenbestand. De installer waarschuwt u wanneer hij er een vindt.

Andere modellen gebruiken

Standaard is niets vastgezet: Claude Code vraagt om zijn eigen modelnamen (opus, sonnet, haiku, claude-opus-5-5…) en UberLLM levert dezelfde Claude-modellen. Om Claude Code aan te sturen met DeepSeek, GLM, Qwen, GPT of een ander model, wijs je elke modelslot van Claude Code toe aan een UberLLM model-id in het env blok:

Variabele Wat het instelt
ANTHROPIC_MODEL Het model waarmee de sessie start.
ANTHROPIC_DEFAULT_OPUS_MODEL Wat opus betekent.
ANTHROPIC_DEFAULT_SONNET_MODEL Wat sonnet betekent.
ANTHROPIC_DEFAULT_HAIKU_MODEL Wat haiku betekent. Claude Code gebruikt het ook voor achtergrondtaken zoals titels en samenvattingen.
CLAUDE_CODE_SUBAGENT_MODEL Het model waarop subagents draaien.
{
  "apiKeyHelper": "cat \"/Users/you/.uberllm/key\"",
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.uberllm.dev",
    "ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek/deepseek-v4-pro",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek/deepseek-v4-pro",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek/deepseek-v4-flash",
    "CLAUDE_CODE_SUBAGENT_MODEL": "deepseek/deepseek-v4-pro"
  }
}

Wijs elke slot toe. Een oningevulde slot blijft vragen om een Claude-model, en je betaalt Claude-prijzen ervoor.

De installer doet dit voor je met een profiel:

curl -fsSL 'https://uberllm.dev/install/claude-code.sh?profile=glm' | sh

Profielen zijn claude-native (de standaard, zet niets vast), glm, deepseek en gpt. Elke model-id uit de modellen tabel werkt als je de variabelen handmatig instelt; GET https://api.uberllm.dev/v1/models geeft ze weer.

Context en compactie

Claude Code kent alleen de contextgrootte van Claude-modellen. Voor elk ander model gaat het uit van 200,000 tokens en compacteert het de conversatie daarvoor.

  • Als het model een 1-miljoen-token context heeft (de pagina op uberllm.dev toont de context), voeg dan [1m] toe aan het einde van zijn ID, bijvoorbeeld "ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro[1m]" of claude --model 'deepseek/deepseek-v4-pro[1m]'. Claude Code plant dan voor 1M.
  • Voor elke andere grootte, stel CLAUDE_CODE_MAX_CONTEXT_TOKENS in op de context van het model, bijvoorbeeld "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "400000".
  • Om te kiezen wanneer het compacteert: de autoCompactWindow instelling (of de CLAUDE_CODE_AUTO_COMPACT_WINDOW variabele) neemt een aantal tokens van 100,000 tot 1,000,000. CLAUDE_AUTOCOMPACT_PCT_OVERRIDE (1–100) compacteert eerder, bij dat aandeel van het venster. autoCompactEnabled: false schakelt het uit.

Het instellen van een context die groter is dan het model heeft, laat verzoeken mislukken zodra de conversatie het model ontgroeit.

Wat verandert

  • Je claude.ai login wordt niet gebruikt. Functies die dit nodig hebben, zoals claude.ai connectors, /schedule en Remote Control, zijn niet beschikbaar in een sessie die op UberLLM draait.
  • De kosten die Claude Code toont, zijn niet je factuur. Claude Code berekent dit op je computer op basis van de catalogusprijzen van Anthropic, en toont niets nuttigs voor andere modellen. Wat je betaalt, vind je in Dashboard → Activity. Voeg je saldo toe aan de statusbalk (hieronder) om het te zien terwijl je werkt.
  • Je code gaat naar externe modelproviders. Alles wat de sessie leest, wordt naar het model gestuurd, dat wordt beheerd door externe modelproviders op de UberLLM- markt. Gebruik het niet in een repository die geheimen, inloggegevens of klantgegevens bevat.

Saldo in de statusbalk

curl -fsSL https://uberllm.dev/install/statusline.sh | sh -s -- --install

Dit slaat een klein script op naar ~/.uberllm/statusline.sh en voegt het toe als Claude Code's statusLine in ~/.claude/settings.json (voeg --project toe na --install om het in plaats daarvan in de .claude/settings.local.json van dit project te plaatsen). Onder de prompt zie je dan:

UberLLM $12.40 · $0.35 held · Opus

Dat is je beschikbare saldo, het bedrag dat is gereserveerd voor nog lopende verzoeken, en het model. Het leest GET /v1/balance met dezelfde key die Claude Code gebruikt, maximaal één keer per minuut. Het heeft alleen sh, curl en sed nodig. Lees het eerst op uberllm.dev/install/statusline.sh.

Verifiëren

Start Claude Code en voer /status uit: het API-adres is https://api.uberllm.dev. Vraag het dan iets; de aanvraag verschijnt binnen een minuut in Dashboard → Activity.

Dezelfde sleutel werkt ook via de Messages API:

curl https://api.uberllm.dev/v1/messages \
  -H "Authorization: Bearer $(cat ~/.uberllm/key)" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-haiku-4-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'

Als een aanvraag mislukt met Your apiKeyHelper script is failing, is het sleutelbestand zoek of onleesbaar: voer de installer opnieuw uit.

Verwijderen en intrekken

curl -fsSL https://uberllm.dev/install/claude-code.sh | sh -s -- --uninstall

Voor een installatie voor één project, voer het uit binnen het project met sh -s -- --project --uninstall. Het maakt eerst een back-up van het instellingenbestand, verwijdert alleen wat het heeft toegevoegd, en verwijdert het opgeslagen sleutelbestand. Claude Code keert terug naar je Anthropic-login bij de volgende start.

Het verwijderen trekt de sleutel niet in; het stopt alleen met het gebruik ervan. Verwijder de sleutel op je sleutels-pagina om ervoor te zorgen dat deze nooit meer uitgegeven kan worden. Doe dat voor elke computer die je niet langer vertrouwt, of als je een verzoek hebt goedgekeurd dat je niet zelf hebt gestart.