9router: Rotear Claude, Code, Codex & Cursor para 40+ Provedores de IA Gratuitos

Se você usa mais de uma ferramenta de IA para programar, já conhece o atrito: cada uma precisa do seu próprio endpoint, sua própria chave de API, sua própria configuração de modelo. Depois você fica sem quota no meio de um refactor e tem que mudar tudo manualmente. 9router resolve isso.

decolua/9router é um roteador local que intercepta requisições de suas ferramentas de programação com IA — Claude Code, Codex, Cursor, Cline, Copilot, OpenCode, OpenClaw — e as reencaminha através de um único endpoint compatível com OpenAI em http://localhost:20128/v1. Você configura os provedores e a lógica de fallback uma única vez. Cada ferramenta fala com o mesmo endereço local.

Que Problema Resolve

Sem uma camada de roteamento, os setups multi-ferramenta são um desastre por design. Você acaba com:

  • Modelo de assinatura no Claude Code
  • Endpoint customizado do OpenAI no Cursor ou Codex
  • Outra chave de API diferente no Cline ou RooCode
  • Provedores gratuitos dispersos em configs separadas sem nenhum plano de fallback

9router centraliza tudo isso em um único gateway local. Você configura a ferramenta uma vez, e o roteamento, a seleção de modelo e o fallback ocorrem na camada do proxy — invisível para a ferramenta.

RTK Token Compression

Uma das features mais interessantes de 9router é RTK Token Saver, que comprime o output das ferramentas antes de chegar ao modelo. Comandos como git diff, grep, ls, tree e dumps de logs são os maiores consumidores de tokens em uma sessão de programação. Dependendo do projeto, RTK pode reduzir os tokens de entrada entre 20% e 40% em muitos requests.

Aviso importante: A compressão atua sobre padrões no output das ferramentas, não sobre conteúdo semântico. Para logs críticos, leituras completas de arquivos, ou qualquer coisa onde importa a fidelidade total do output, teste antes de depender disso em produção. A qualidade das respostas pode variar.

Fallback Automático

9router permite empilhar provedores em ordem de prioridade:

  1. Modelo de assinatura (ex. cc/claude-opus-4-7)
  2. API econômica (ex. glm/glm-5.1)
  3. Tier gratuito (ex. kr/claude-sonnet-4-5)

Quando o primeiro tier atinge um rate limit ou fica sem quota, o roteador cai para o próximo. Sem switching manual, sem sessões interrompidas.

Importante: Fallback implica modelos diferentes. Claude Opus e um tier gratuito de GLM não são equivalentes. Para trabalho onde a consistência importa — refactors grandes, migrações, design de protocolos — mantenha um modelo fixo e mude manualmente quando necessário. O fallback automático é mais útil para trabalho exploratório ou de menor criticidade.

Provedores Gratuitos: Leia a Letra Miúda

O README destaca Kiro, OpenCode Free e Google Vertex como opções atualmente gratuitas. Mas os tiers gratuitos mudam. Antes de rotear cargas de trabalho reais através de qualquer provedor gratuito, verifique:

  • A quota gratuita ainda está vigente?
  • Tem restrições regionais? (Relevante para devs da América Latina — Vertex e outros têm limitações geográficas)
  • Permite acesso automatizado/programático, ou é pensado apenas para uso direto?
  • O volume alto pode gerar banimentos de conta?

9router cuida do roteamento. Não o protege de violações de políticas upstream.

Rotação Multi-Conta e Logging de Requisições

Além do fallback, 9router suporta rotação de chaves multi-conta — útil se você gerencia várias contas de API para se manter abaixo dos rate limits por conta. Todas as requisições são registradas no dashboard local em http://localhost:20128/dashboard, onde você pode ver qual provedor tratou cada requisição, o uso de tokens e os erros.

A atualização de 10 de maio incluiu um adapter bun:sqlite e importação em massa de chaves de API, o que torna o gerenciamento de grandes conjuntos de credenciais bem menos tedioso.

Instalação Rápida

npm install -g 9router
9router

Requer Node.js >=18.0.0. Depois configure sua ferramenta para apontar para http://localhost:20128/v1 com a chave de API que o dashboard gera.

Para Codex CLI:

export OPENAI_BASE_URL="http://localhost:20128"
export OPENAI_API_KEY="sua-chave-9router"
codex "seu prompt"

Para deployment em VPS ou LAN, os valores padrão não são seguros. Você precisa configurar JWT_SECRET, INITIAL_PASSWORD, API_KEY_SECRET e colocar autenticação na frente do dashboard antes de expô-lo fora de localhost. Não pule isso.

O Projeto Complementar: OmniRoute

Vale a pena conhecer também diegosouzapw/OmniRoute: cobre 160+ provedores e combina RTK com uma técnica de compressão adicional chamada Caveman para chegar a ~95% de compressão de contexto. É uma filosofia diferente — OmniRoute sacrifica algo de previsibilidade no output em troca de máxima amplitude de provedores. Vale avaliar se os 40+ provedores de 9router não são suficientes para seu setup.

Para Quem É

9router é uma boa opção se você já usa múltiplas ferramentas de programação com IA, gerencia várias contas de provedores, ou queima quotas pagas mais rápido do que gostaria. O valor se multiplica quando você tem Claude Code para raciocínio complexo, uma API mais econômica para código repetitivo, e um tier gratuito para consultas rápidas — tudo roteando através do mesmo endpoint local sem switching manual.

Se você usa uma única ferramenta com uma única assinatura, isso adiciona complexidade sem muito benefício.

O projeto é MIT e está em desenvolvimento ativo.