De Cha para Ch

Repositório GitHub do Projeto

Grande Anúncio

Estou descontinuando Cha e concentrando-me em Ch. Em 23 de agosto de 2025 marquei o Cha como descontinuado e direcionei todos os esforços de desenvolvimento futuros para o Ch. A filosofia agora é simples: manter uma ferramenta que seja simples, leve e rápida, mantê-la e corrigir bugs. Sem perseguição por recursos novos.

Por que originalmente construí o Cha

Quando LLMs e o ChatGPT eram novos, as ferramentas de CLI que eu queria nunca apareceram. O ChatGPT saiu em novembro de 2022 e realmente explodiu no início de 2023 com o lançamento do GPT-4. Eu estava esperando que ferramentas sólidas de linha de comando surgissem, mas nenhuma delas realmente funcionava do jeito que eu queria. Então eu construí o Cha e o usei diariamente. Na verdade, no meu primeiro post no blog eu disse claramente: projetos como esse eram comuns, mas nenhum atendia às minhas necessidades, então eu escrevi o meu próprio.

Cha foi meu projeto querido. Eu o usei diariamente e adorei trabalhar nele. E dentro de um ano, ele cresceu um pouco acumulando +60 estrelas no GitHub. Durante esse tempo, ele ganhou web scraping, extração de transcrições do YouTube, geração de imagens, entrada multilinha, chat interativo/não interativo, entrada de prompt por STT, suporte para ferramentas personalizadas, suporte para várias outras plataformas além da OpenAI, seu próprio mecanismo de Busca por Respostas, navegação avançada de diretórios e edição de arquivos, capacidade de copiar conteúdo para a área de transferência, TTS para respostas, etc. Ele fazia muita coisa, funcionava, e era realmente útil e poderoso como ferramenta de linha de comando.

Por que migrar para o Ch (Python para Go)

Com o tempo o Cha ficou pesado. Ótimo conjunto de funcionalidades, mas área de superfície demais para o que eu precisava no dia a dia. Isso resultou em o Cha ficar realmente inchado. Também não ajudou o fato de ter sido escrito em Python, o que introduziu dois problemas críticos. Um foi a velocidade; apenas o tempo inicial de carregamento levava 0,8 segundos e isso depois de muita otimização e engenharia para contornar o lento tempo inicial de importação de pacotes do Python e o uso de multiprocessamento. E o Python é muito desafiador de instalar. Devido ao Cha depender de várias ferramentas open-source de terceiros, era muito difícil de instalar. Meu ponto de ruptura foi quando eu estava viajando com apenas um tablet Android rodando iTermux e simplesmente não funcionou de jeito nenhum e fazê-lo funcionar minimamente foi muito doloroso e sem sentido.

Então decidi começar um novo experimento chamado Ch. O Ch seria como o Cha, MAS escrito em GoLang em vez de Python e contendo APENAS as funcionalidades essenciais do Cha com a ideia de ser leve, rápido, fácil de instalar na maioria dos sistemas, e não tão pesado em recursos. Ao fazer isso, tornará mais fácil manter o projeto como mantenedor solo.

Depois de alguns meses trabalhando e usando o Ch, percebi que o futuro do Cha passava pelo Ch e não pelo código original do Cha. Eu tinha gasto tempo demais no Cha; manter ambas bases de código consumia muito tempo como único desenvolvedor nesses projetos, e o Ch fazia o trabalho central sendo muito mais leve, mais rápido e mais fácil de instalar. Isso tornou a decisão clara…

A reescrita em Go me dá inicialização rápida, um único binário e um modelo mental menor. O README do Ch resume bem: Ch é o sucessor com mais de 10x de inicialização mais rápida e desempenho significativamente melhor.

A decisão

Eu oficialmente descontinuei o Cha em 23 de agosto de 2025 e direcionei as pessoas para o Ch através do README do Cha. O repositório do Cha permanece como referência histórica e estou mantendo o Ch em modo de manutenção com foco em estabilidade e correções de bugs, com pouco interesse em adicionar novos recursos a menos que valha a pena e/ou seja crítico adicionar (seja lá o que isso possa significar com o passar do tempo).

Quais recursos o Ch inclui hoje

O Ch cobre o fluxo de trabalho diário sem o peso:

  • Inicialização de alto desempenho com uma CLI leve escrita em GoLang
  • Suporte a múltiplos provedores (OpenAI, Groq, DeepSeek, Anthropic, XAI, Together, Gemini, Mistral, Ollama)
  • Modos interativo e direto, encadeamento a partir de qualquer comando, carregamento de arquivos e diretórios, contagem de tokens, exportação de blocos de código, visualizador de histórico de chat, troca de modelo/plataforma, retroceder, despejos de código, gravação de sessão de shell, integração com a área de transferência
  • Web scraping e busca integrados, incluindo tratamento de links do YouTube, integrados de forma simples

O que falta no Ch comparado ao Cha (e por quê)

O Ch tenta manter apenas as funcionalidades essenciais do Cha, mas ao fazer isso cortei as seguintes funcionalidades do Cha do Ch:

  • A interface avançada de “Editor” e a “Busca por Respostas” não serão trazidas
  • Ingestão de áudio, vídeo e imagem, voz para texto e texto para fala, e algumas das exportações extras e conveniências de codedump não são prioridades
  • Alguns ajudantes de navegação e comportamentos de “alterar diretório raiz” do Cha não estão no Ch
  • “Perfis locais com chats salvos” intencionalmente não são o caminho padrão

Classifiquei muitas dessas como inchaço ou “agradável de ter”. O que considerei crítico foi navegação na web e web scraping, que estava faltando no Ch mas que eu desde então integrei ao Ch para que o loop central esteja completo sem o resto. Não só isso, mas o Ch tem uma nova funcionalidade chamada !x que grava uma sessão de shell enquanto você ainda está em uma sessão do Ch e adiciona isso ao histórico de chat, permitindo que você use outras ferramentas de CLI e salve suas saídas para o modelo se quiser. Esse recurso permite trazer muitas das funcionalidades originalmente ausentes no Cha para o Ch sem que o Ch faça todo o trabalho e fique inchado. Você pode saber mais sobre o Ch neste novo post do blog.

Ch/Cha vs Claude Code

Em julho de 2025, escrevi uma comparação do Cha com as mais recentes ferramentas de CLI com IA para explicar qual valor o Cha fornece que aquelas ferramentas não forneciam. Sabendo disso, ainda quis incluir isso neste post porque o Ch, em sua essência, fornece o mesmo valor e a comparação ainda se mantém meses depois, mesmo após essa mudança. A mesma filosofia se aplica ao Ch.

Principais diferenças

  • A abordagem Ch/Cha enfatiza controle total do usuário em cada etapa sem trabalhadores de IA em segundo plano tomando decisões autônomas. Você obtém gerenciamento de contexto explícito e controlado pelo usuário com custos tipicamente entre $1 e $20 por mês para uso diário ativo. Não há edições surpresa, tudo é guiado pelo usuário, tornando-o ideal para envolvimento profundo e controle rigoroso de custos.
  • CLIs agentivos como Claude Code e Gemini seguem um caminho diferente com decisões automatizadas de fluxo de trabalho e agentes inteligentes tomando escolhas autônomas. Eles lidam com contexto gerenciado por IA e manipulação de arquivos com custos tipicamente entre $10 e $200+ por mês para níveis de uso semelhantes. Eles se destacam em modificações autônomas de código, tornando-os perfeitos para prototipagem rápida e delegação.

Quando escolher o estilo Ch/Cha

  • Custo mínimo com total transparência
  • Controle completo sobre cada interação
  • Envolvimento profundo no seu processo de desenvolvimento
  • Gerenciamento explícito de contexto para projetos sensíveis

Quando escolher ferramentas agentivas

  • Prototipagem rápida e iteração acelerada
  • Preferência por automação e delegação com IA
  • Velocidade em vez de considerações de custo

Recomendação

Não existe bala de prata. Nenhuma ferramenta cobre todos os casos. Ch é ótimo para tarefas diárias econômicas e controle preciso. Ferramentas agentivas como Claude Code ou Gemini CLI brilham para codificação complexa, com múltiplos arquivos e múltiplos ambientes, com foco em velocidade e automação. Use o Ch quando quiser reduzir custos e manter controle. Use ferramentas agentivas quando precisar de iteração rápida e não se importar em delegar controle. Muitas pessoas começam com o Ch para aprender bons padrões de interação e depois adicionam ferramentas agentivas conforme as necessidades evoluem.

O futuro do Cha e do Ch

O futuro do Cha e do Ch é este. Cha está descontinuado e arquivado, servindo apenas como uma espécie de referência histórica. Ch agora é o novo Cha. Ele continuará a ser mantido, aprimorado (se necessário) e usado. Vou resistir fortemente ao acréscimo de funcionalidades para o Ch. E daqui para frente, quando eu disser/me referir ao Cha estarei me referindo ao Ch e o antigo Cha baseado em Python será referido como “Cha v0” ou “Cha antiga”. Com isso em mente

Obrigado

Se você acompanhou a jornada do Cha desde o início, obrigado. Esse projeto me ensinou muito e me impulsionou para uma versão que se ajusta melhor à maneira como eu realmente trabalho, além de ser melhor para a comunidade como um todo. Se você é novo, comece a usar Ch e mantenha a simplicidade!