Founder da MeuPortfolio (vendida para a Warren) e co-founder de uma empresa adquirida pela Britech. Hoje CPTO da Warren. Há mais de 20 anos construindo produtos, plataformas e times de alta performance, com foco em engenharia sólida, decisões difíceis e IA como alavanca estratégica.
by Felipe Bossolani
Este é um guia completo para configurar o Claude Code para funcionar com qualquer modelo do OpenRouter (incluindo modelos gratuitos) através do Claude Code Router (CCR).
O Claude Code é hoje um dos melhores agentes de programação interativos. No entanto, por padrão, ele é limitado aos modelos da Anthropic (Sonnet, Opus, Haiku).
O Claude Code Router (CCR) — um projeto open source — resolve isso permitindo:
/model provider,model.Neste tutorial, você aprenderá passo a passo como ativar o Claude Code + OpenRouter, incluindo onde obter sua API key, como ajustar o config.json e como trocar modelos dentro do Claude Code.
Nota: Screenshot da interface do Claude Code antes da configuração (menu de modelos Anthropic) seria inserida aqui.
Antes de começar, certifique-se de ter:
Comandos úteis de verificação:
claude --version
node -v
brew --version
O CCR pode ser instalado facilmente via Homebrew:
brew install claude-code-router
Verifique se o binário está disponível e instalado corretamente:
which ccr
ccr --help
Nota: Screenshot do terminal mostrando
ccr --versionseria inserida aqui.
sk-or-...).Nota: Screenshot da página de criação de API Keys no OpenRouter seria inserida aqui.
O CCR lê suas configurações do arquivo ~/.claude-code-router/config.json.
Crie a pasta caso ela não exista e abra o arquivo para edição:
mkdir -p ~/.claude-code-router
nano ~/.claude-code-router/config.json
Abaixo, um exemplo de configuração minimalista usando OpenRouter e o modelo Kat Coder Pro Free:
{
"LOG": true,
"API_TIMEOUT_MS": 600000,
"Providers": [
{
"name": "openrouter",
"api_base_url": "https://openrouter.ai/api/v1/chat/completions",
"api_key": "${OPENROUTER_API_KEY}",
"models": [
"kwaipilot/kat-coder-pro:free"
],
"transformer": {
"use": ["openrouter"]
}
}
],
"Router": {
"default": "openrouter,kwaipilot/kat-coder-pro:free",
"longContextThreshold": 60000
}
}
Arquivo de configuração do CCR aberto no editor.
Para segurança, não colocamos a chave diretamente no JSON. Exporte-a em seu ~/.zshrc ou ~/.bashrc:
export OPENROUTER_API_KEY="sk-or-sua-chave-aqui"
Carregue as alterações no terminal atual:
source ~/.zshrc
echo $OPENROUTER_API_KEY
Reinicie o CCR para que ele leia a nova variável de ambiente e configurações:
ccr restart
Teste se o modelo está acessível diretamente pelo CCR:
ccr model run openrouter,kwaipilot/kat-coder-pro:free "hello"
Se receber uma resposta, tudo está configurado corretamente!
Nota: Capture da resposta “hello” retornando do modelo via CCR seria inserida aqui.
Existem duas formas de integrar o CCR ao Claude Code.
Este método redireciona o Claude Code para usar o CCR como backend.
Rode:
ccr start
eval "$(ccr activate)"
Isso ajusta variáveis de ambiente como ANTHROPIC_BASE_URL=http://127.0.0.1:3456.
Agora, use o Claude Code naturalmente:
claude code
O backend agora será o OpenRouter com seus modelos configurados.
ccr codeVocê também pode rodar diretamente:
ccr code
Esse método ignora o backend da Anthropic completamente.
O menu /model do Claude Code continuará mostrando apenas Sonnet/Opus/Haiku. Para usar os modelos do OpenRouter, você deve usar o comando manual:
/model openrouter,kwaipilot/kat-coder-pro:free
Outros exemplos de uso:
/model openrouter,anthropic/claude-3.5-sonnet
/model openrouter,deepseek/deepseek-reasoner
/model openrouter,google/gemini-2.5-pro
Nota: Screenshot da linha de comando do Claude Code mostrando o comando
/modelseria inserida aqui.

*Menu de seleção de modelos mostrando o modelo customizado do OpenRouter.*
---
## 10. Logs & Debug
Para verificar o que está acontecendo "por baixo dos panos":
```bash
ls ~/.claude-code-router/logs
tail -f ~/.claude-code-router/logs/ccr-*.log
Isso mostrará os requests enviados ao OpenRouter, qual modelo foi usado, erros de autenticação e tokens consumidos. É muito útil para validar se o modelo correto está sendo acionado.
Exemplo de logs de uso no OpenRouter.
O CCR é poderoso e pode agregar vários provedores simultaneamente. Exemplo de configuração avançada:
"Providers": [
{ "name": "openrouter", ... },
{ "name": "ollama", ... },
{ "name": "azure", ... }
]
E no roteamento:
"Router": {
"default": "openrouter,claude-3.5-sonnet",
"think": "openrouter,claude-3.7-sonnet:thinking",
"cheap": "ollama,qwen2.5:latest"
}
Isso transforma o Claude Code em uma ferramenta multi-LLM unificada.
Antes de adotar essa solução em produção, vale a pena pontuar alguns detalhes:
export KEY=...) ao invés de hardcode no config.json.O Claude Code é excepcional como ambiente de desenvolvimento assistido. Ao conectar o OpenRouter via CCR, ele se torna agnóstico, permitindo o uso de dezenas de modelos diferentes, mantendo seu histórico e fluxo de trabalho.
Convite: Teste modelos alternativos via OpenRouter e compartilhe seus resultados comparando Sonnet, Kat, Gemini e DeepSeek dentro da mesma sessão de coding!
Você não precisa gastar nada para começar! O OpenRouter possui uma excelente seleção de modelos gratuitos (Free Tier) que funcionam perfeitamente com o CCR.
Exemplo de modelos gratuitos disponíveis (como DeepSeek R1 e KAT Coder).
Clique aqui para ver a lista de modelos gratuitos filtrada
O modelo utilizado nos testes deste tutorial foi o KAT Coder PRO V1.
tags: ai - coding - llm - open source