NovoConecte qualquer agente ao UberLLM: uma chave, todos os modelos, pelo preço de tabela ou menos.
UberLLM

Claude Code

Claude Code interage com o UberLLM através do seu endereço compatível com Anthropic, https://api.uberllm.dev. Com o endereço e sua chave configurados, os comandos e ferramentas do Claude Code funcionam como antes, e as solicitações são cobradas do seu saldo do UberLLM.

Configurar manualmente

Não há nada para executar além do próprio Claude Code. Crie uma chave na sua página de chaves e, em seguida:

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

Isso é válido apenas para o terminal atual. Para mantê-lo sem uma chave no seu perfil de shell, salve a chave em um arquivo que só você possa ler:

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

e coloque isso em ~/.claude/settings.json (todos os projetos) ou em <project>/.claude/settings.local.json (um projeto):

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

Ou use o instalador

O instalador faz a mesma coisa por você e obtém a chave através do seu navegador. Leia-o primeiro se quiser: é texto simples em uberllm.dev/install/claude-code.sh.

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

Para verificá-lo antes de executá-lo:

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

Todos os projetos neste computador:

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

Apenas um projeto (execute-o dentro do projeto; outros projetos permanecem no seu plano Anthropic):

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

Adicione uma pasta depois de --project para configurar um projeto diferente do atual.

Windows PowerShell (todos os projetos):

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

Você não precisa de uma API key primeiro, e não precisa estar logado ao colar o comando. O instalador abre um link no seu navegador (https://uberllm.dev/cli/link?code=XXXX-XXXX) e imprime o mesmo código de confirmação no terminal. Faça login, verifique se o código corresponde e pressione Approve.

A aprovação cria uma API key na sua conta e a entrega ao instalador que está esperando. O código no seu terminal não é o segredo: apenas o instalador que iniciou a solicitação pode coletar a chave, a chave é entregue exatamente uma vez, e a solicitação expira após 15 minutos.

Se o Claude Code nunca foi configurado neste computador, use a instalação para todos os projetos primeiro. O Claude Code lê as configurações de um projeto apenas depois que você confia nessa pasta, então uma instalação totalmente nova ainda pode pedir para você fazer login.

Para imprimir o bloco de configurações do seu computador sem escrever nada:

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

O que o instalador escreve

A chave vai para um arquivo que só você pode ler (modo de pasta 700, modo de arquivo 600):

Instalação Arquivo de chave Arquivo de configurações
Todo projeto ~/.uberllm/key ~/.claude/settings.json (ou $CLAUDE_CONFIG_DIR/settings.json)
Um projeto ~/.uberllm/key-<folder>-<number> <project>/.claude/settings.local.json

O arquivo de configurações recebe o endereço e um apiKeyHelper que lê o arquivo de chave. A chave em si nunca é escrita em um arquivo de configurações, para que não vá parar em um backup, um repositório de dotfiles ou um compartilhamento de tela.

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

Claude Code executa apiKeyHelper para obter a chave e a envia como Authorization: Bearer e x-api-key, para que funcione com um gateway como o UberLLM. Ele mantém a resposta por cinco minutos (CLAUDE_CODE_API_KEY_HELPER_TTL_MS muda isso).

O instalador se mescla ao seu arquivo existente em vez de substituí-lo, então hooks, permissões e servidores MCP são mantidos, e ele copia o arquivo antigo para <file>.bak-<timestamp> primeiro. Ele remove um ANTHROPIC_AUTH_TOKEN em texto simples deixado por uma instalação antiga. Ele então faz uma requisição real através do gateway, então uma mensagem de sucesso significa que uma requisição foi processada.

O instalador do Windows ainda escreve a chave em settings.json como ANTHROPIC_AUTH_TOKEN.

Qual configuração vence

Claude Code lê as configurações nesta ordem, a primeira vence:

  1. Configurações gerenciadas (definidas pela sua empresa, se houver)
  2. claude --settings <file>
  3. <project>/.claude/settings.local.json
  4. <project>/.claude/settings.json
  5. ~/.claude/settings.json

Uma variável no bloco env de um arquivo de configurações prevalece sobre a mesma variável no seu shell na maioria das sessões. Duas exceções importam aqui:

  • A chave. Claude Code usa ANTHROPIC_AUTH_TOKEN primeiro, depois ANTHROPIC_API_KEY, depois apiKeyHelper. Um token exportado no seu shell substitui a chave salva.
  • O modelo. /model na sessão vence, depois claude --model, depois ANTHROPIC_MODEL, depois a configuração model. Um ANTHROPIC_MODEL do shell supera a configuração model.

Então, remova todas as variáveis ANTHROPIC_* do seu shell e do seu perfil de shell (~/.zshrc, ~/.bashrc) e mantenha-as no arquivo de configurações. O instalador avisará você quando encontrar uma.

Usar outros modelos

Por padrão, nada é fixado: Claude Code pede pelos seus próprios nomes de modelo (opus, sonnet, haiku, claude-opus-5-5…) e UberLLM serve os mesmos modelos Claude. Para usar o Claude Code com DeepSeek, GLM, Qwen, GPT ou qualquer outro modelo, mapeie cada um dos slots de modelo do Claude Code para um ID de modelo UberLLM no bloco env:

Variável O que define
ANTHROPIC_MODEL O modelo com o qual a sessão começa.
ANTHROPIC_DEFAULT_OPUS_MODEL O que opus significa.
ANTHROPIC_DEFAULT_SONNET_MODEL O que sonnet significa.
ANTHROPIC_DEFAULT_HAIKU_MODEL O que haiku significa. O Claude Code também o usa para trabalho em segundo plano, como títulos e resumos.
CLAUDE_CODE_SUBAGENT_MODEL O modelo em que os subagentes são executados.
{
  "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"
  }
}

Mapeie todos os slots. Um slot não definido continua pedindo um modelo Claude, e você paga preços Claude por ele.

O instalador faz isso por você com um perfil:

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

Os perfis são claude-native (o padrão, não fixa nada), glm, deepseek e gpt. Qualquer ID de modelo da tabela de modelos funciona se você definir as variáveis manualmente; GET https://api.uberllm.dev/v1/models os lista.

Contexto e compactação

Claude Code conhece o tamanho do contexto apenas dos modelos Claude. Para qualquer outro modelo, ele assume 200,000 tokens e compacta a conversa antes disso.

  • Se o modelo tiver um contexto de 1 milhões de tokens (sua página em uberllm.dev mostra o contexto), adicione [1m] ao final do seu ID, por exemplo "ANTHROPIC_MODEL": "deepseek/deepseek-v4-pro[1m]" ou claude --model 'deepseek/deepseek-v4-pro[1m]'. Claude Code então planeja para 1M.
  • Para qualquer outro tamanho, defina CLAUDE_CODE_MAX_CONTEXT_TOKENS para o contexto do modelo, por exemplo "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "400000".
  • Para escolher quando compacta: a configuração autoCompactWindow (ou a variável CLAUDE_CODE_AUTO_COMPACT_WINDOW) aceita um número de tokens de 100,000 a 1,000,000. CLAUDE_AUTOCOMPACT_PCT_OVERRIDE (1–100) compacta mais cedo, naquela proporção da janela. autoCompactEnabled: false desativa isso.

Definir um contexto maior do que o modelo possui faz com que as requisições falhem assim que a conversa excede o modelo.

O que muda

  • Seu login do claude.ai não é usado. Recursos que precisam dele, como conectores do claude.ai, /schedule e Controle Remoto, não estão disponíveis em uma sessão que roda no UberLLM.
  • O custo que o Claude Code mostra não é sua fatura. O Claude Code calcula isso no seu computador a partir dos preços de tabela da Anthropic e não mostra nada útil para outros modelos. O que você paga está em Dashboard → Activity. Adicione seu saldo à linha de status (abaixo) para vê-lo enquanto trabalha.
  • Seu código vai para provedores de modelo de terceiros. Tudo o que a sessão lê é enviado para o modelo, que é executado por provedores de modelo de terceiros no mercado UberLLM. Não o use em um repositório que contenha segredos, credenciais ou dados de clientes.

Saldo na linha de status

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

Isso salva um pequeno script em ~/.uberllm/statusline.sh e o adiciona como statusLine do Claude Code em ~/.claude/settings.json (adicione --project depois de --install para colocá-lo no .claude/settings.local.json deste projeto, em vez disso). Sob o prompt, você verá:

UberLLM $12.40 · $0.35 held · Opus

Esse é o seu saldo disponível, o valor retido para solicitações ainda em execução e o modelo. Ele lê GET /v1/balance com a mesma API key que o Claude Code usa, no máximo uma vez por minuto. Ele precisa apenas de sh, curl e sed. Leia-o primeiro em uberllm.dev/install/statusline.sh.

Verificar

Inicie o Claude Code e execute /status: o endereço da API é https://api.uberllm.dev. Depois, pergunte qualquer coisa a ele; a requisição aparece em Painel → Atividade em menos de um minuto.

A mesma chave responde pela 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"}]}'

Se uma requisição falhar com Your apiKeyHelper script is failing, o arquivo da chave está faltando ou ilegível: execute o instalador novamente.

Desinstalar e revogar

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

Para uma instalação de projeto único, execute-o dentro do projeto com sh -s -- --project --uninstall. Ele faz backup do arquivo de configurações primeiro, remove apenas o que adicionou e exclui o arquivo de chave salvo. Claude Code volta ao seu login da Anthropic na próxima inicialização.

A desinstalação não revoga a chave; ela apenas para de usá-la. Exclua a chave na sua página de chaves para garantir que ela nunca mais possa gastar. Faça isso para qualquer computador em que você não confia mais, ou se você aprovou uma solicitação que não iniciou.