Voltar aos guias
Comparar·21 de setembro de 2026·Atualizado em 24 de setembro de 2026·9 min de leitura

Nanocoder vs OpenCode: fluxo de trabalho, modelos e custo total

OpenCode é a opção padrão e Nanocoder uma escolha deliberada da minoria; esta comparação mostra o que cada um consegue alcançar, o que cada um restringe e quanto custam os tokens subjacentes.

Última revisão em .

OpenCode é a resposta padrão, e Nanocoder é a opção deliberadamente minoritária: em 19 de setembro de 2026, o OpenCode tinha 208.444 estrelas no GitHub contra 2.487 do Nanocoder, e seu pacote npm havia sido baixado 9.436.914 vezes nos 30 dias até 16 de setembro, contra 6.614 do Nanocoder. Ambos são agentes de programação de terminal gratuitos, licenciados sob MIT, que permitem apontar para um endpoint de API personalizado. Escolher entre eles não é uma classificação de qualidade — é escolher entre a superfície mais ampla, com dois produtos de primeira parte competindo pelo seu gasto com tokens, e uma superfície mais restrita mantida por um coletivo que não vende nada.

Considere esses números de downloads como ordens de grandeza, não como contagens de usuários. O OpenCode também é instalado por um script curl e pelo Homebrew, e os runners de CI inflacionam qualquer número do npm, enquanto o Nanocoder também é distribuído pelo Homebrew e pelo Nix fora do npm. A proporção é sólida direcionalmente; as contagens absolutas não são.

Primeiro, certifique-se de que está comparando os dois projetos corretos

Três colisões de nomes aparecem diretamente nos resultados de busca dessa comparação, e duas delas vão interromper uma configuração, não apenas causar confusão.

Nome que você pode ter encontradoO que ele realmente éEle está incluído nesta comparação?
anomalyco/opencodeO OpenCode de TypeScript em opencode.ai. Não arquivado, MIT, branch padrão devSim — este é o OpenCode considerado aqui
opencode-ai/opencodeA CLI original de Go. Arquivada, 13.752 estrelas, último push em 18 de setembro de 2025; seu README direciona os leitores ao CrushNão. Consulte a entrada do diretório
OpenCoderUma família de modelos de linguagem de grande porte de código aberto, não uma CLI. Sem arquivo de configuração, configuração de provedor ou suporte a BYOKNão. As pontuações de benchmark não dizem nada sobre o agente
Nano-Collective/nanocoderNanocoder, npm @nanocollective/nanocoder, documentação em docs.nanocollective.orgSim — este é o Nanocoder considerado aqui
nanocode-project/nanocodeUm projeto Python separado e quase inativo, criado em 1º de abril de 2026, com mais um push no dia seguinteNão. Consulte a entrada do diretório

Mais uma mudança que vale conhecer antes de seguir um tutorial antigo. O repositório que muitos guias ainda chamam de sst/opencode agora redireciona com 301 para anomalyco/opencode, e a organização sst no GitHub está vazia, com uma descrição informando que foi transferida para anomalyco (API do GitHub, 19 de setembro de 2026). A própria documentação do OpenCode confirma isso nos comandos de instalação — brew install anomalyco/tap/opencode, ghcr.io/anomalyco/opencode — e todas as páginas da documentação exibem copyright da Anomaly no rodapé. O nome do produto não mudou, apenas a organização. Uma data de renomeação circula nas redes sociais; não foi possível verificá-la aqui, portanto nenhuma é publicada nesta página.

Quem deve escolher qual

Comece pelo seu modelo padrão, não pela lista de recursos. Se o seu dia já funciona com um modelo de fronteira hospedado e a inferência local é um experimento ocasional, a abordagem do OpenCode combina com a sua. Se o seu dia funciona com Ollama, llama.cpp, LM Studio, vLLM ou MLX e uma API hospedada é a exceção, a do Nanocoder combina — embora essa seja uma diferença de padrão, não de capacidade, porque o OpenCode também documenta URLs base para Ollama, LM Studio e llama.cpp.

Se isto for verdade para vocêEscolhaPorque
Você quer o agente em uma TUI, um aplicativo desktop e uma extensão de IDE, além de um servidor e pluginsOpenCodeO Nanocoder oferece uma TUI de terminal com --vscode e um servidor ACP para o Zed; essa é toda a sua superfície
Você precisa de permissões declarativas e auditáveis por ferramenta e por agenteOpenCodeAs regras são dados: allow/ask/deny por ferramenta, com curingas do bash, versionadas no repositório
Você quer comandos do shell confinados pelo sistema operacional, não por um promptNanocodernanocoder.sandbox encapsula execute_bash em sandbox-exec ou bwrap; o OpenCode não tem uma flag equivalente em sua documentação de permissões
Seu gateway oferece /v1/responses e você quer esse formato de transmissãoOpenCodeA união de provedores do Nanocoder não tem uma opção genérica de Responses
Você quer que o mantenedor do seu agente não tenha interesse em quais tokens você compraNanocoderNão existe conta, nível ou gateway do Nanocoder. O OpenCode oferece dois
Você está padronizando uma equipe e precisa de SSO e configuração imposta para toda a organizaçãoOpenCodeÉ exatamente isso que o OpenCode Enterprise controla, por assento, a um preço não publicado
Você quer um único modelo de extensões em vez de vários subsistemasNanocoderSkills são o guarda-chuva único para comandos, subagentes, ferramentas e gatilhos
Você quer o conjunto maior de issues, exemplos e integrações de terceirosOpenCodeA diferença de adoção acima é todo o argumento, e ela é real

O custo de migração é simétrico e pequeno na camada do provedor, e assimétrico acima dela. Um endpoint personalizado é um bloco JSON em qualquer cliente, portanto mover um gateway leva minutos. O que não é transferido é o que você construiu acima: os pacotes de Skills do Nanocoder em .nanocoder/skills/ e seus hooks de ciclo de vida — nos quais um hook pre-tool-use que termina com código diferente de zero nega a chamada e informa ao modelo o motivo — não têm equivalente no OpenCode para onde possam ser colados, e os blocos de permissão por agente, plugins e configuração de LSP do OpenCode não têm equivalente no Nanocoder. Conte esse trabalho antes de contar as linhas de configuração.

Como os dois clientes realmente diferem

DimensãoNanocoderOpenCode
Repositório e licençaNano-Collective/nanocoder, MIT segundo package.json, e o texto da licença MIT está em LICENSE.md. O próprio detector do GitHub ainda informa NOASSERTION para o repositórioanomalyco/opencode, MIT segundo a API do GitHub
Versão atualv1.30.0, 26 de agosto de 2026; npm @nanocollective/nanocoder 1.30.0 no mesmo diav1.18.31, 14 de setembro de 2026; npm opencode-ai 1.18.31 no mesmo dia
Ambiente de execuçãoNode >= 22 segundo package.jsonInstalação por script curl, npm, Homebrew, mise ou Docker, segundo a documentação de instalação
InterfacesTUI de terminal, --vscode, --acp para o ZedTUI de terminal, aplicativo desktop, extensão de IDE, além de CLI, web, servidor, SDK e plugins
Arquivo de configuraçãoagents.config.json — diretório do projeto ou diretório de configuração por sistema operacional; NANOCODER_CONFIG_DIR ignora todas as outras buscasopencode.json ou ~/.config/opencode/opencode.json, JSON ou JSONC, com interpolação de {env:VAR} e {file:path}
Precedência da configuraçãoResolvido bloco a bloco: o arquivo de maior precedência que define um bloco fornece o bloco inteiro, e os campos omitidos recorrem aos padrões integrados, não a um arquivo inferiorOito camadas mescladas, não substituídas — as configurações posteriores substituem as anteriores apenas para chaves conflitantes
Controle de execuçãoQuatro modos globais alternados com Shift+Tab: Normal, Auto-Accept (bash e git destrutivo ainda solicitam confirmação), Yolo, PlanRegras declarativas por ferramenta para read, edit, bash, webfetch, task, skill, lsp e outras, cada uma com allow/ask/deny, curingas e substituições por agente
Sandbox no nível do sistema operacionalnanocoder.sandbox, desativado por padrão: sandbox-exec no macOS, bwrap no Linux, sem suporte no Windows. A documentação afirma explicitamente que não é uma barreira para secrets — as leituras não são bloqueadasNão oferecido como flag na documentação de permissões; doom_loop e external_directory usam ask por padrão, e as leituras de .env são negadas
Sem interfacenanocoder run "..." aceita automaticamente e encerra; --plain --json emite um objeto JSON com a resposta, o log das ferramentas e os arquivos modificados. O limite de turnos nanocoder.maxTurns é 200 por padrão, e NANOCODER_MAX_TURNS o substituiopencode run "..." é o equivalente não interativo documentado, com --format json para saída legível por máquina — eventos JSON brutos, em vez de um único objeto de resumo. As superfícies de servidor, SDK, GitHub e GitLab são documentadas junto com ele
ExtensõesSkills como um único guarda-chuva para comandos, subagentes, ferramentas e gatilhos, além de hooks de ciclo de vida e MCPSubsistemas separados: plugins, agent skills, servidores LSP, servidores MCP, ACP
Produtos pagos de primeira parteNenhum. Sem conta, sem nível, sem gatewayZen (pagamento conforme o uso), Go ($10 por mês), Enterprise (por assento, não publicado)

Fontes desta tabela, todas consultadas em 19 de setembro de 2026, salvo indicação: a API do GitHub, o registro npm, a documentação de configuração e recursos do Nanocoder, e as páginas de configuração, permissões e CLI do OpenCode.

Apontando qualquer um deles para seu próprio endpoint de API

Ambos documentam um endpoint personalizado, portanto um gateway é uma configuração compatível em qualquer um. A diferença é quantos formatos de transmissão você consegue acessar.

O OpenCode nomeia um pacote npm no bloco do provedor, e essa escolha seleciona o protocolo: @ai-sdk/openai-compatible fala /v1/chat/completions, e @ai-sdk/openai fala /v1/responses. O Kunavo oferece ambos, então esta é uma escolha real, não uma formalidade.

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "kunavo": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Kunavo",
      "options": {
        "baseURL": "https://api.kunavo.com/v1",
        "apiKey": "{env:KUNAVO_API_KEY}"
      },
      "models": {
        "claude-sonnet-4-6": {
          "name": "Claude Sonnet 4.6",
          "limit": { "context": 200000, "output": 64000 }
        }
      }
    }
  }
}

Dois detalhes que a página de provedores deixa explícitos e que importam para qualquer endpoint que ele ainda não conheça. Primeiro, registre a chave com /connect, role até Other e use o mesmo ID de provedor usado no arquivo; as credenciais ficam em ~/.local/share/opencode/auth.json. Segundo, vale definir o bloco limit aqui — a documentação informa que os provedores padrão obtêm automaticamente os limites de contexto e saída de models.dev, e o Kunavo não está entre eles. Os valores no bloco acima são os números do próprio exemplo da documentação, não os limites publicados deste modelo; defina-os com base na página do próprio modelo antes de confiar no medidor de contexto.

O equivalente do Nanocoder fica em nanocoder.providers. Observe o baseUrl em minúsculas, que difere do baseURL do OpenCode, e a substituição de ${VAR} aplicada recursivamente aos campos de string.

agents.config.json
{
  "nanocoder": {
    "providers": [
      {
        "name": "Kunavo",
        "sdkProvider": "openai-compatible",
        "baseUrl": "https://api.kunavo.com/v1",
        "apiKey": "${KUNAVO_API_KEY}",
        "models": ["claude-sonnet-4-6"],
        "contextWindow": 200000
      }
    ]
  }
}

Vale ler três armadilhas específicas do Nanocoder antes de colar isso. A união sdkProvider é fechada em cinco valores em source/types/config.ts — openai-compatible, google, anthropic, chatgpt-codex e github-copilot — e a quarta está ligada a um login pelo navegador no próprio endpoint Codex do ChatGPT, em vez de uma URL base arbitrária; portanto, não há uma opção genérica de Responses a declarar. Se, em vez disso, você apontar sdkProvider: "anthropic" para um endpoint compatível com Anthropic, a própria documentação de provedores do Nanocoder alerta que @ai-sdk/anthropic deriva o limite de saída do ID do modelo e recorre a 4096 tokens para qualquer modelo que não reconheça como Claude, truncando respostas longas no meio da frase sem erro; a correção é um maxOutputTokens explícito na entrada do provedor. E, como as configurações são resolvidas bloco a bloco, um arquivo no nível do projeto que defina nanocoder.providers fornece o bloco inteiro — as entradas irmãs da sua configuração global não são mescladas. nanocoder config diff é a forma documentada de ver o que foi efetivamente resolvido.

Nenhum dos dois trechos foi testado em tempo de execução contra o endpoint do Kunavo. O Kunavo publica um guia de configuração para o OpenCode, que é uma referência de configuração, não um teste de compatibilidade, e não publica nenhum para o Nanocoder. Trate ambos os blocos como pontos de partida, execute uma tarefa limitada e leia o que sua conta realmente registrou.

Uma lacuna compartilhada: nenhum dos clientes conhece os metadados dos modelos do seu gateway

Ambos os clientes dependem de models.dev para limites de contexto, tetos de saída e custo por token. Esse arquivo listava 222 provedores quando verificado em 19 de setembro de 2026, e o Kunavo não estava entre eles — esta página não pode estabelecer o motivo da ausência. A consequência difere ligeiramente entre os clientes, mas se aplica igualmente aos dois; portanto, não é motivo para preferir um deles.

No OpenCode, declare limit.context e limit.output por modelo, ou o indicador de contexto restante calculará com base em um padrão que não corresponde ao seu modelo. No Nanocoder, defina contextWindow ou contextWindows por modelo; o rodapé de cada resposta exibe uma contagem de tokens e um custo estimado calculado a partir de models.dev, e a documentação faz questão de dizer que o segmento de custo é omitido quando não há preços disponíveis; portanto, um número ausente significa desconhecido, não zero. De qualquer forma, o valor do cliente é sua própria aritmética sobre os tokens informados — reconcilie com o registro contábil do seu provedor, não com o rodapé.

Quanto cada um custa para você

Ambos os clientes são gratuitos. A assimetria está no que existe por trás deles.

O Nanocoder não tem conta, nível, serviço hospedado nem algo para o qual fazer upgrade — seu README declara que não há níveis pagos bloqueando as partes úteis, e o projeto se descreve como financiado por patrocinadores, não por usuários. Uma divulgação cabe aqui: Atlas Cloud é um patrocinador listado e também aparece na própria lista de provedores compatíveis do Nanocoder e vende um plano de programação. Esse é um incentivo não neutro em um projeto que, de resto, não tem fornecedor; você deve saber disso, não ficar sem saber.

O OpenCode também é gratuito, mas o mesmo fornecedor vende dois produtos que competem exatamente pelo gasto que um gateway pretende receber. Nenhum é obrigatório: a documentação descreve ambos como opcionais, e a página de objetivos do Zen se compromete a permitir o uso de qualquer outro provedor com o OpenCode.

ProdutoPreço publicadoO que você realmente deve orçar
NanocoderUS$ 0, MITTokens do modelo no provedor que você configurar, ou hardware e energia para modelos locais
OpenCodeUS$ 0, MITO mesmo — o próprio cliente não cobra nada
OpenCode GoUS$10 por mêsA prateleira fixa que a documentação chama de modelos de programação abertos, o que não significa apenas pesos abertos — Grok 4.6 e GPT 5.6 Luna estão listados nela. Cada modelo tem um limite mensal de $15 a $60, com o período de 5 horas a 20% desse limite e o semanal a 50%. Apenas um membro por workspace pode assinar
OpenCode ZenPagamento conforme o uso, por 1M de tokensClaude Opus 5 a $5.00 de entrada / $25.00 de saída; Claude Sonnet 5 a $2.00 / $10.00; Claude Haiku 4.5 a $1.00 / $5.00. O recarregamento automático adiciona $20 sempre que o saldo cai abaixo de $5
OpenCode EnterprisePor assento, sem valor publicadoSSO, configuração para toda a organização e direcionamento do tráfego por um único gateway interno. A página afirma que, se você tiver seu próprio gateway, os tokens não serão cobrados

Consultado em 19 de setembro de 2026. Há duas coisas que esta tabela trata com cuidado. A página de objetivos do Zen declara a intenção de repassar reduções de preço, vendendo a preço de custo, com margem apenas para cobrir taxas de processamento. As três tarifas de Claude que publica correspondem às próprias tarifas publicadas pela Anthropic para esses modelos — Opus 5 a $5 / $25, Sonnet 5 a $2 / $10, Haiku 4.5 a $1 / $5 — portanto, para esses três, comparar com o Zen é comparar com a tabela de preços do fornecedor do modelo. Essa verificação foi feita apenas para esses três modelos, em 19 de setembro de 2026, e não diz nada sobre o restante da prateleira do Zen. E os modelos gratuitos do Zen trazem textos sobre uso de dados impressos na mesma página, variando desde dados usados para melhorar o modelo durante um período gratuito até endpoints somente de teste que dizem para não enviar dados confidenciais. Um nível gratuito com direitos de treinamento vinculados é um produto diferente de um nível gratuito sem eles.

Uma estimativa calculada da cobrança de tokens por trás de qualquer um dos clientes

Isto é uma aritmética ilustrativa de tokens, não um custo medido de tarefa nem um teto de cobrança. Suponha uma sessão que envie 200,000 tokens de entrada não armazenados em cache e receba 15,000 tokens de saída. As tarifas vêm do catálogo ativo do Kunavo por milhão de tokens; suas sessões reais variarão conforme o tamanho do repositório, a saída das ferramentas e a frequência com que o agente relê os arquivos.

ModeloEntrada / saída por 1MCusto estimado, uma sessãoSessões modeladas por $10 de crédito
Claude Haiku 4.5$0.70 / $3.50$0.19251
GPT-5.6 Terra$0.70 / $4.20$0.20349
Claude Sonnet 4.6$2.10 / $10.50$0.57817
Claude Opus 5$3.50 / $17.50$0.96310

A comparação que as pessoas realmente querem aqui é com os $10 mensais do OpenCode Go, e ela não é equivalente. O Go oferece uma prateleira fixa com limites mensais por modelo de $15 a $60: sua própria tabela de limites de uso não lista nenhum modelo Claude nem Gemini, sua única entrada GPT é GPT 5.6 Luna, e Grok 4.6 também está nela — portanto, a expressão "modelos de programação abertos" da documentação não significa apenas pesos abertos (verificado em 19 de setembro de 2026). Os modelos acima pertencem a uma prateleira completamente diferente. Nessas premissas, $10 de crédito pré-pago do Kunavo correspondem aproximadamente a 51 sessões desse formato em Claude Haiku 4.5 a $0.192 cada, e a cerca de 10 em Claude Opus 5. Isso dimensiona um orçamento; não informa qual produz um trabalho melhor no seu repositório, e a tarifa listada mais barata não é a mesma pergunta que o menor custo para concluir a tarefa — um modelo mais barato que precise de três tentativas pode custar mais do que um que precise de uma.

A linha equivalente é a prateleira de pagamento conforme o uso do Zen, onde o mesmo modelo aparece nos dois lados. O Zen publica Claude Opus 5 a $5.00 por milhão de tokens de entrada e $25.00 por milhão de saída; o catálogo do Kunavo atualmente informa $3.50 e $17.50 para o mesmo modelo. Essa é a comparação que vale fazer, e vale lê-la com cuidado: os $5.00 / $25.00 do Zen são a tarifa publicada pela própria Anthropic para este modelo, portanto são dois catálogos atribuindo preços diferentes ao mesmo modelo, e não um revendedor inflacionado sendo subcotado. Confirme ambos no checkout antes de transferir um orçamento, porque qualquer um dos catálogos pode alterar os preços.

O valor do catálogo da Kunavo é um piso de cobrança, não um teto: quando o upstream informa sua cobrança, a fatura é o maior valor entre o custo do catálogo e o custo do upstream multiplicado pelo markup aplicável. As cobranças de cache e as ferramentas externas ficam fora deste exemplo. O recarregamento mínimo é de $10 em crédito pré-pago, o que representa um mínimo de financiamento, não uma taxa por tarefa ou uma assinatura.

Configurando a opção escolhida

Se você optou pelo OpenCode, o bloco de configuração acima é toda a integração, e o guia de integração do OpenCode aborda os dois formatos de transmissão em detalhes; crie uma conta na Kunavo quando estiver pronto para financiar uma chave. Se optou pelo Nanocoder, use a mesma URL base por meio do provedor openai-compatible e mantenha uma rota funcional disponível enquanto o experimenta — nenhum teste de execução do Nanocoder com a Kunavo foi realizado aqui.

Ainda está decidindo? Alternativas ao OpenCode amplia o campo para além dessas duas opções, melhor API para OpenCode compara rotas de provedores especificamente para esse cliente, preços do OpenCode aprofunda as opções Zen e Go, e o diretório de APIs de agentes registra como cada cliente deste espaço lida com uma URL base personalizada. Se um bloco de provedor já estiver falhando, provedor do OpenCode não encontrado aborda a causa habitual, e API compatível com OpenAI explica o que essa expressão garante e o que não garante.

Perguntas frequentes

Nanocoder ou OpenCode: qual é melhor?

Nenhum é melhor em termos abstratos, e eles não têm o mesmo nível de adoção. O OpenCode é a escolha predominante: 208.444 estrelas no GitHub e 9.436.914 downloads do npm para opencode-ai nos 30 dias até 16 de setembro de 2026, contra 2.487 estrelas e 6.614 downloads de @nanocollective/nanocoder no mesmo período. Escolha o OpenCode quando quiser uma superfície mais ampla — TUI, desktop, extensão de IDE, servidor, plugins, integrações com GitHub e GitLab e um sistema de configuração criado para controle em toda a organização. Escolha o Nanocoder quando modelos locais forem seu padrão, e não uma alternativa; quando quiser um ambiente isolado do sistema operacional em torno dos comandos shell; ou quando preferir que o mantenedor do seu agente não esteja também vendendo tokens. As contagens de downloads são infladas por CI e por canais de instalação paralelos, portanto leia-as como ordens de grandeza, não como contagens de usuários.

Nanocoder é o mesmo projeto que nanocode?

Não, e confundi-los quebrará sua configuração. Nanocoder é Nano-Collective/nanocoder, publicado no npm como @nanocollective/nanocoder e documentado em docs.nanocollective.org. nanocode é nanocode-project/nanocode, um projeto Python separado e quase inativo, criado em 1º de abril de 2026, com seu último push no dia seguinte. Os comandos de instalação, arquivos de configuração e definições de URL base são mutuamente incompatíveis, e a compatibilidade anunciada do nanocode com a OpenAI não existe em seu código — ele encapsula o SDK da Anthropic, portanto um endpoint simples de chat-completions não funcionará com ele.

Qual OpenCode é este — o de Go ou o de TypeScript?

O de TypeScript. O repositório que antes ficava em sst/opencode agora redireciona com 301 para anomalyco/opencode, e a organização sst no GitHub está vazia, com um aviso informando que foi transferida para anomalyco. O nome do produto continua sendo OpenCode; a documentação em opencode.ai usa caminhos de instalação da anomalyco e exibe copyright da Anomaly no rodapé. Um projeto diferente, opencode-ai/opencode, é uma CLI de Go arquivada cujo último push foi em 18 de setembro de 2025 e cujo README direciona os usuários ao Crush. O formato de configuração e a lista de provedores desse projeto não se aplicam ao OpenCode atual.

Nanocoder e OpenCode podem usar um gateway de API de terceiros?

Sim, ambos documentam um endpoint personalizado, mas a superfície de protocolo acessível é diferente. O OpenCode escolhe o formato de transmissão nomeando um pacote npm no bloco do provedor: @ai-sdk/openai-compatible para /v1/chat/completions, @ai-sdk/openai para /v1/responses, conforme a documentação de provedores. A união sdkProvider do Nanocoder é fechada em cinco valores em source/types/config.ts — openai-compatible, google, anthropic, chatgpt-codex e github-copilot — e chatgpt-codex está vinculado a um login pelo navegador no próprio endpoint Codex do ChatGPT, em vez de uma URL base arbitrária; portanto, não há uma opção genérica de Responses. Um gateway que ofereça /v1/responses precisa ser acessado por sua interface de chat completions no Nanocoder.

O OpenCode obriga você a comprar OpenCode Zen ou OpenCode Go?

Não. A própria documentação do OpenCode descreve Zen e Go como opcionais, e a página de objetivos do Zen se compromete a permitir o uso de qualquer outro provedor com o OpenCode. A barreira comercial é o OpenCode Enterprise, cobrado por assento sem valor publicado, e o que ele controla é a gestão centralizada — SSO, configuração para toda a organização e o direcionamento do tráfego por um único gateway interno — e não a capacidade de configurar um endpoint personalizado. A página de objetivos do Zen também declara a intenção de repassar reduções de preço, vendendo a preço de custo, com margem apenas para cobrir taxas de processamento; as três tarifas de Claude que publica correspondem às próprias tarifas publicadas pela Anthropic para esses modelos, verificadas em 19 de setembro de 2026.

Por que meu modelo não mostra custo ou exibe o limite de contexto incorreto em nenhum dos clientes?

Porque ambos os clientes leem os metadados dos modelos em models.dev, cujo api.json listava 222 provedores quando verificado em 19 de setembro de 2026 e não inclui o Kunavo. No OpenCode, você declara manualmente models.<id>.limit.context e .limit.output, porque a documentação informa que apenas provedores padrão obtêm esses valores automaticamente de models.dev; se você os omitir, o cliente calcula o contexto restante com base em um padrão que não corresponde ao seu modelo. No Nanocoder, você define contextWindow ou contextWindows por modelo, e o rodapé de custo por resposta simplesmente não exibe nada quando não há preços disponíveis — a documentação é explícita: um número ausente significa desconhecido, nunca zero.

Quanto custa mudar de um para o outro?

O bloco do provedor é a parte fácil; as instruções do agente e as extensões não são. Ambos usam uma configuração JSON com URL base, chave e lista de modelos, então redefinir um gateway leva dez minutos em qualquer direção. O que não é transferido é tudo o que foi construído acima disso: os pacotes de Skills do Nanocoder em .nanocoder/skills/ e seus hooks de ciclo de vida não têm um equivalente no OpenCode para onde possam ser copiados, e as regras de permissão por ferramenta, definições de agentes, plugins e configuração de LSP do OpenCode também não têm equivalente no Nanocoder. Estime a migração pela quantidade que você escreveu nessa camada, não pelo bloco do provedor.

Os números de repositório, versão e downloads foram obtidos da API do GitHub e do registro npm em 19 de setembro de 2026; as afirmações sobre comportamento e preços foram obtidas da documentação dos próprios projetos na mesma data, e a lista de provedores do models.dev também foi verificada nessa ocasião. Nenhum dos dois clientes foi testado em execução com o endpoint da Kunavo, não foram realizados testes de desempenho ou compatibilidade, e todos os valores em dólares da Kunavo nesta página são cálculos ilustrativos de tokens com base no catálogo ativo, não o custo medido de uma tarefa.