NovitàCollega qualsiasi agente a UberLLM: una chiave, tutti i modelli, a prezzo di listino o meno.
UberLLM

Claude Code

Claude Code comunica con UberLLM tramite il suo indirizzo compatibile con Anthropic, https://api.uberllm.dev. Con l'indirizzo e la tua chiave impostati, i comandi e gli strumenti di Claude Code funzionano come prima, e le richieste vengono addebitate al tuo saldo UberLLM.

Configuralo a mano

Niente da eseguire tranne Claude Code stesso. Crea una chiave sulla tua pagina delle chiavi, poi:

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

Questo dura per il terminale attuale. Per mantenerlo senza una chiave nel tuo shell profile, salva la chiave in un file che solo tu puoi leggere:

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

e inserisci questo in ~/.claude/settings.json (ogni progetto) o in <project>/.claude/settings.local.json (un progetto):

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

Oppure usa l'installer

L'installer fa la stessa cosa per te e ottiene la chiave tramite il tuo browser. Leggilo prima se vuoi: è testo semplice su uberllm.dev/install/claude-code.sh.

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

Per controllarlo prima di eseguirlo:

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

Ogni progetto su questo computer:

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

Un solo progetto (eseguilo all'interno del progetto; gli altri progetti rimangono sul tuo piano Anthropic):

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

Aggiungi una cartella dopo --project per configurare un progetto diverso da quello attuale.

Windows PowerShell (ogni progetto):

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

Non hai bisogno di una API key prima, e non devi essere loggato quando incolli il comando. L'installer apre un link nel tuo browser (https://uberllm.dev/cli/link?code=XXXX-XXXX) e stampa lo stesso codice di conferma nel terminale. Accedi, verifica che il codice corrisponda e premi Approve.

L'approvazione crea una API key sul tuo account e la consegna all'installer in attesa. Il codice nel tuo terminale non è il segreto: solo l'installer che ha avviato la richiesta può raccogliere la chiave, la chiave viene consegnata esattamente una volta, e la richiesta scade dopo 15 minuti.

Se Claude Code non è mai stato configurato su questo computer, usa prima l'installazione per ogni progetto. Claude Code legge le impostazioni di un progetto solo dopo che ti fidi di quella cartella, quindi una nuova installazione potrebbe comunque chiederti di accedere.

Per stampare il blocco delle impostazioni per il tuo computer senza scrivere nulla:

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

Cosa scrive l'installer

La chiave va in un file che solo tu puoi leggere (modalità cartella 700, modalità file 600):

Installazione File chiave File di impostazioni
Ogni progetto ~/.uberllm/key ~/.claude/settings.json (o $CLAUDE_CONFIG_DIR/settings.json)
Un progetto ~/.uberllm/key-<folder>-<number> <project>/.claude/settings.local.json

Il file di impostazioni ottiene l'indirizzo e un apiKeyHelper che legge il file chiave. La chiave stessa non viene mai scritta in un file di impostazioni, quindi non finisce in un backup, un repository di dotfiles o una condivisione schermo.

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

Claude Code esegue apiKeyHelper per ottenere la chiave e la invia sia come Authorization: Bearer che come x-api-key, in modo che funzioni con un gateway come UberLLM. Mantiene la risposta per cinque minuti (CLAUDE_CODE_API_KEY_HELPER_TTL_MS lo cambia).

L'installer si fonde con il tuo file esistente anziché sostituirlo, quindi hook, permessi e server MCP vengono mantenuti, e copia prima il vecchio file in <file>.bak-<timestamp>. Rimuove un ANTHROPIC_AUTH_TOKEN in testo semplice lasciato da un'installazione precedente. Effettua quindi una richiesta reale tramite il gateway, quindi un messaggio di successo significa che una richiesta è andata a buon fine.

L'installer di Windows scrive ancora la chiave in settings.json come ANTHROPIC_AUTH_TOKEN.

Quale impostazione vince

Claude Code legge le impostazioni in quest'ordine, la prima vince:

  1. Impostazioni gestite (impostate dalla tua azienda, se presenti)
  2. claude --settings <file>
  3. <project>/.claude/settings.local.json
  4. <project>/.claude/settings.json
  5. ~/.claude/settings.json

Una variabile nel blocco env di un file di impostazioni vince sulla stessa variabile nella tua shell nella maggior parte delle sessioni. Due eccezioni sono importanti qui:

  • La chiave. Claude Code usa ANTHROPIC_AUTH_TOKEN per prima, poi ANTHROPIC_API_KEY, poi apiKeyHelper. Un token esportato nella tua shell sostituisce la chiave salvata.
  • Il modello. /model nella sessione vince, poi claude --model, poi ANTHROPIC_MODEL, poi l'impostazione model. Una shell ANTHROPIC_MODEL batte l'impostazione model.

Quindi rimuovi ogni variabile ANTHROPIC_* dalla tua shell e dal tuo profilo shell (~/.zshrc, ~/.bashrc) e conservale nel file delle impostazioni. L'installer ti avvisa quando ne trova una.

Usa altri modelli

Per impostazione predefinita non è bloccato nulla: Claude Code richiede i propri nomi di modello (opus, sonnet, haiku, claude-opus-5-5…) e UberLLM serve gli stessi modelli Claude. Per pilotare Claude Code con DeepSeek, GLM, Qwen, GPT o qualsiasi altro modello, mappa ogni slot di modello di Claude Code a un ID modello UberLLM nel blocco env:

Variabile Cosa imposta
ANTHROPIC_MODEL Il modello con cui inizia la sessione.
ANTHROPIC_DEFAULT_OPUS_MODEL Cosa significa opus.
ANTHROPIC_DEFAULT_SONNET_MODEL Cosa significa sonnet.
ANTHROPIC_DEFAULT_HAIKU_MODEL Cosa significa haiku. Claude Code lo usa anche per lavori in background come titoli e riassunti.
CLAUDE_CODE_SUBAGENT_MODEL Il modello su cui girano i subagenti.
{
  "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"
  }
}

Mappa ogni slot. Uno slot lasciato non impostato continua a richiedere un modello Claude, e paghi i prezzi di Claude per esso.

L'installatore lo fa per te con un profilo:

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

I profili sono claude-native (il predefinito, non blocca nulla), glm, deepseek e gpt. Qualsiasi ID modello da la tabella dei modelli funziona se imposti le variabili manualmente; GET https://api.uberllm.dev/v1/models li elenca.

Contesto e compattazione

Claude Code conosce la dimensione del contesto solo dei modelli Claude. Per qualsiasi altro modello, assume 200,000 token e compatta la conversazione prima di tale limite.

  • Se il modello ha un contesto di 1 milioni di token (la sua pagina su uberllm.dev mostra il contesto), aggiungi [1m] alla fine del suo ID, per esempio "ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro[1m]" o claude --model 'deepseek/deepseek-v4-pro[1m]'. Claude Code pianifica quindi per 1M.
  • Per qualsiasi altra dimensione, imposta CLAUDE_CODE_MAX_CONTEXT_TOKENS al contesto del modello, per esempio "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "400000".
  • Per scegliere quando compatta: l'impostazione autoCompactWindow (o la variabile CLAUDE_CODE_AUTO_COMPACT_WINDOW) accetta un numero di token da 100,000 a 1,000,000. CLAUDE_AUTOCOMPACT_PCT_OVERRIDE (1–100) compatta prima, a quella percentuale della finestra. autoCompactEnabled: false lo disattiva.

Impostare un contesto più grande di quello che il modello ha a disposizione fa fallire le richieste non appena la conversazione supera la capacità del modello.

Cosa cambia

  • Il tuo login di claude.ai non viene usato. Funzionalità che lo richiedono, come i connettori di claude.ai, /schedule e il Controllo Remoto, non sono disponibili in una sessione che gira su UberLLM.
  • Il costo mostrato da Claude Code non è il tuo conto. Claude Code lo calcola sul tuo computer dai prezzi di listino di Anthropic e non mostra nulla di utile per altri modelli. Quello che paghi è in Dashboard → Attività. Aggiungi il tuo saldo alla riga di stato (sotto) per vederlo mentre lavori.
  • Il tuo codice va a fornitori di modelli di terze parti. Tutto ciò che la sessione legge viene inviato al modello, che è gestito da fornitori di modelli di terze parti sul mercato UberLLM. Non usarlo in un repository che contiene segreti, credenziali o dati dei clienti.

Saldo nella riga di stato

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

Questo salva un piccolo script in ~/.uberllm/statusline.sh e lo aggiunge come statusLine di Claude Code in ~/.claude/settings.json (aggiungi --project dopo --install per metterlo invece nel .claude/settings.local.json di questo progetto). Sotto il prompt vedrai quindi:

UberLLM $12.40 · $0.35 held · Opus

Questo è il tuo saldo disponibile, l'importo trattenuto per le richieste ancora in corso e il modello. Legge GET /v1/balance con la stessa key che usa Claude Code, al massimo una volta al minuto. Ha bisogno solo di sh, curl e sed. Leggilo prima su uberllm.dev/install/statusline.sh.

Verifica

Avvia Claude Code e esegui /status: l'indirizzo API è https://api.uberllm.dev. Poi chiedigli qualsiasi cosa; la richiesta appare in Cruscotto → Attività entro un minuto.

La stessa chiave risponde tramite l'API Messages:

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"}]}'

Se una richiesta fallisce con Your apiKeyHelper script is failing, il file della chiave è mancante o illeggibile: esegui di nuovo l'installer.

Disinstallazione e revoca

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

Per un'installazione per un singolo progetto, eseguilo all'interno del progetto con sh -s -- --project --uninstall. Esegue prima il backup del file delle impostazioni, rimuove solo ciò che ha aggiunto e cancella il file chiave salvato. Claude Code tornerà al tuo login Anthropic al prossimo avvio.

La disinstallazione non revoca la chiave; si limita a smettere di usarla. Elimina la chiave sulla tua pagina delle chiavi per assicurarti che non possa mai più essere utilizzata. Fallo per qualsiasi computer di cui non ti fidi più, o se hai approvato una richiesta che non hai avviato.