Apresentando Verboo Code 0.13.3: logout revogado de verdade, erro de rede sem confusão e login blindado contra CLI externo
Voltar para o Blog
Artigo

Apresentando Verboo Code 0.13.3: logout revogado de verdade, erro de rede sem confusão e login blindado contra CLI externo

Mafra
04/08/2026
6 min de leitura

Você roda verboo /login, o terminal confirma sucesso, e mesmo assim a próxima chamada pro modelo autentica com a sessão errada. Não é falha de rede nem de servidor. É uma variável de ambiente de outra ferramenta de linha de comando, esquecida no seu shell, decidindo por você qual token vale. Entre as versões 0.13.1 e 0.13.3 do Verboo Code, essa falha e outras duas de precedência de autenticação foram fechadas, uma de cada vez.

O que muda entre a 0.13.0 e a 0.13.3?

Três patches, três commits, um fio condutor só: sessão do Verboo Code perdendo prioridade pra alguma coisa herdada do ambiente, ou falha de rede sendo lida como "você não tem plano".

PatchO que acontecia até a 0.13.0O que muda
0.13.1Logout apagava toda a secure storage (inclusive credenciais de MCP, Codex e plugins) e nunca confirmava se o servidor revogou a sessãoRevoga o refresh token no servidor, avisa se a revogação não foi confirmada, preserva chaves de outras ferramentas e sinaliza token externo ainda ativo
0.13.2Falha de rede ao buscar modelos ou planos virava silenciosamente "0 resultados" = "sem plano contratado"Resposta separada em disponível, vazio de verdade ou indisponível por falha; erro de rede preserva a sessão em vez de empurrar pro fluxo de compra
0.13.3CLAUDE_CODE_OAUTH_TOKEN ou OPENAI_AUTH_HEADER de outra CLI podiam sobrescrever a sessão Verboo já autenticadaSessão Verboo salva localmente tem prioridade sobre token ou header herdado do shell, no OAuth e no shim OpenAI-compatible

Logout que revoga no servidor, não só apaga local

Até a 0.13.0, verboo logout fazia uma coisa só: limpava a secure storage inteira do disco e encerrava. Sem chamada de revogação, sem diferenciar credencial do Verboo de credencial de outra integração. Isso incluía apagar chaves que você tinha configurado pra MCP, Codex ou plugins, mesmo elas não tendo nada a ver com sua conta Verboo.

A 0.13.1 muda o fluxo pra chamar revokeVerbooRefreshToken de fato, confirmar se o servidor aceitou a revogação e só então reportar sucesso. Se a chave for de outra ferramenta, ela é preservada, não apagada. E se sobrar um token injetado externamente no shell, o CLI avisa:

"A credential from CLAUDE_CODE_OAUTH_TOKEN is still active in this shell. Remove it before starting Verboo again." — mensagem de authLogout(), commit 462d98f

A lista de fontes checadas cobre CLAUDE_CODE_OAUTH_TOKEN, CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR, CCR_OAUTH_TOKEN_FILE e ANTHROPIC_AUTH_TOKEN. Quatro jeitos diferentes de uma outra CLI deixar rastro no seu ambiente sem você perceber.

Erro de rede não é mais "você não tem plano"

Antes da 0.13.2, checkVerbooModels devolvia sempre um array. Zero itens no array significava, pro resto do código, "essa conta não tem modelo liberado, manda pro fluxo de compra". Só que zero itens também é exatamente o que acontece quando a chamada pra API falha por timeout, instabilidade de rede ou qualquer erro temporário. As duas situações eram indistinguíveis.

A partir da 0.13.2, o retorno vira um dos três estados: available (modelos carregados), empty (conta sem modelo contratado de verdade) ou unavailable (falha ao consultar, sessão local preservada). O mesmo raciocínio foi aplicado à busca de planos no verbooMarketplace.ts: cancelamento de tecla Esc não vira erro reportado, e um cache vazio não é mais usado pra mascarar indisponibilidade temporária como "não tem plano nenhum".

Na prática: se sua internet cair no meio de um verboo /login, você recebe um aviso pra tentar de novo, não um empurrão pro checkout.

Seu login Verboo agora manda mais que token de outra CLI

A 0.13.3 fecha o ponto mais sutil dos três. getClaudeAIOAuthTokens() e getAuthTokenSource() checavam CLAUDE_CODE_OAUTH_TOKEN do ambiente antes de olhar pra sessão salva do Verboo. Se você tivesse essa variável configurada por qualquer outro motivo (testando outra ferramenta, resquício de um .zshrc antigo), o verboo /login podia terminar com "sucesso" na tela e a inferência seguinte ainda ia embora com o token velho.

"A completed interactive login writes a renewable session to secure storage. It must take precedence over credentials inherited from the parent shell: otherwise /login can succeed while inference still sends an old CLAUDE_CODE_OAUTH_TOKEN." — comentário em src/utils/auth.ts

A mesma lógica foi replicada no shim OpenAI-compatible usado pela Growth API: se a chamada é pro roteador do Verboo, variáveis como OPENAI_AUTH_HEADER e OPENAI_AUTH_HEADER_VALUE herdadas de outra configuração de gateway deixam de sobrescrever o header de autenticação. Sem esse ajuste, um login correto podia falhar silenciosamente só na primeira chamada de chat, deixando o dev procurando bug no lugar errado.

Ângulo contrário: por que não saiu tudo de uma vez

Vale ser direta: dava pra fechar essas três brechas num commit só. Não foi assim porque o Verboo Code herda a base de um CLI mais amplo, com vários pontos de entrada de autenticação (OAuth, headers, variáveis de ambiente, arquivo de secure storage) espalhados por comandos diferentes. Cada patch veio com sua própria suíte de teste isolada (logoutState.test.ts, verbooStartupAuth.test.ts, auth.verbooPrecedence.test.ts), fechando uma superfície por vez em vez de arriscar uma reescrita ampla que quebra alguma outra integração no processo.

Como conferir se você já está protegido

  1. Atualize com npm install -g @verboo/code@latest (ou bun install -g @verboo/code@latest).
  2. Rode verboo --version e confirme 0.13.3.
  3. Rode verboo logout uma vez. Se aparecer aviso de credencial externa ativa no shell, remova a variável antes de logar de novo.
  4. Se você usa a Growth API (endpoint OpenAI-compatible), confira se não sobrou OPENAI_AUTH_HEADER ou OPENAI_AUTH_HEADER_VALUE de outra integração no seu .env.

A operação segue em ritmo de crescimento: MRR de R$ 32.781,90 (+53% no mês), com 172 assinantes ativos (+35%). A 0.13.0 trouxe marketplace de plugins própria; a 0.13.3 garante que a sessão que acessa esse marketplace é, sem ambiguidade, a sua.

Como atualizar

npm install -g @verboo/code@latest

Quem prefere Bun: bun install -g @verboo/code@latest. Veja o diff completo entre a 0.13.0 e a 0.13.3 no GitHub.

Autenticação sólida não aparece em screenshot, mas é a diferença entre confiar no agente e ficar debugando por que o login "funcionou" e o modelo não respondeu. Rode o Verboo Code com sessão que é sua de verdade e tokens ilimitados.

Gostou deste artigo?
Compartilhe conhecimento com sua rede.
Leia também

Artigos relacionados