De Cha a Ch
Repositorio de GitHub del proyecto
Gran anuncio
Estoy retirando Cha y centrándome en Ch. El 23 de agosto de 2025 marqué Cha como obsoleto y dirigí todos los esfuerzos de desarrollo futuros a Ch. La filosofía ahora es simple: mantener una sola herramienta que sea simple, ligera y rápida, mantenerla y corregir errores. Sin perseguir funciones.
Por qué originalmente construí Cha
Cuando los LLM y ChatGPT eran nuevos, las herramientas de CLI que quería nunca aparecían. ChatGPT salió en noviembre de 2022 y realmente despegó a principios de 2023 con el lanzamiento de GPT-4. Estaba esperando que aparecieran herramientas sólidas de línea de comandos, pero ninguna realmente funcionaba como yo quería. Así que construí Cha y lo usé a diario. De hecho, en mi primer artículo del blog lo dije claramente: proyectos como este eran comunes, pero ninguno se ajustaba a mis necesidades, así que escribí el mío.
Cha era mi bebé. Lo usé a diario y me encantaba trabajar en él. Y en el plazo de un año, creció un poco al acumular +60 estrellas en GitHub. Durante este tiempo, incorporó raspado web, obtención de transcripciones de YouTube, generación de imágenes, entrada multilínea, chat tanto interactivo como no interactivo, entrada de indicaciones STT, compatibilidad con herramientas personalizadas, compatibilidad con varias otras plataformas fuera de OpenAI, su propio motor Answer Search, navegación avanzada de directorios y edición de archivos, capacidad de copiar contenido al portapapeles, TTS para respuestas, etc. Hacía mucho, funcionaba y realmente era útil y potente como herramienta de línea de comandos.
Por qué migrar a Ch (de Python a Go)
Con el tiempo Cha se volvió pesado. Un gran conjunto de funciones, pero demasiada superficie para lo que necesitaba en el día a día. Esto hizo que Cha se volviera realmente hinchado. Tampoco ayudó que estuviera escrito en Python, lo que introdujo dos problemas críticos. Uno era la velocidad; solo el tiempo de carga inicial seguía tomando 0,8 segundos, y eso después de hacer mucha optimización e ingeniería para evitar el lento tiempo inicial de importación de paquetes de Python y el uso de multiprocesamiento. Y Python es muy difícil de instalar. Debido a que Cha dependía de varias herramientas de código abierto de terceros, fue muy difícil de instalar. Mi punto de quiebre fue cuando viajaba solo con una tableta Android ejecutando iTermux y simplemente no funcionaba en absoluto, y lograr que funcionara de alguna manera fue muy doloroso e inútil.
Así que decidí comenzar un nuevo experimento llamado Ch. Ch sería como Cha, PERO escrito en GoLang en lugar de Python y conteniendo SOLO las funciones esenciales de Cha con la idea de ser ligero, rápido, fácil de instalar en la mayoría de los sistemas y no tan cargado de funciones. Al hacerlo, facilitará el mantenimiento del proyecto como mantenedor único.
Después de unos meses trabajando y usando Ch, vi que el futuro de Cha pasaba por Ch y no por la base de código original de Cha. Había pasado demasiado tiempo en Cha, mantener ambas bases de código consumía mucho tiempo para un solo desarrollador en esos proyectos, y Ch hacía el trabajo principal siendo mucho más ligero, rápido y fácil de instalar. Eso dejó clara la decisión…
La reescritura en Go me da arranque rápido, un binario único y un modelo mental más pequeño. El README de Ch lo resume bien: Ch es el sucesor con un arranque más de 10x más rápido y un rendimiento significativamente mejor.
La decisión
Oficialmente deprecié Cha el 23 de agosto de 2025 y dirigí a la gente a Ch a través del README de Cha. El repositorio de Cha permanece como referencia histórica y mantengo Ch en modo de mantenimiento con un enfoque en la estabilidad y la corrección de errores, con poco interés en añadir nuevas funciones a menos que valga la pena y/o sea crítico añadirlas (lo que eso pueda significar con el paso del tiempo).
Qué funciones incluye Ch hoy
Ch cubre el flujo de trabajo diario sin el exceso:
- Inicio de alta capacidad de respuesta con una CLI ligera escrita en GoLang
- Compatibilidad con múltiples proveedores (OpenAI, Groq, DeepSeek, Anthropic, XAI, Together, Gemini, Mistral, Ollama)
- Modos interactivo y directo, canalización desde cualquier comando, carga de archivos y directorios, conteo de tokens, exportación de bloques de código, visor del historial del chat, cambio de modelo/plataforma, retroceso, volcados de código, grabación de sesiones de shell, integración con el portapapeles
- Raspado web y búsqueda integrados, incluido el manejo de enlaces de YouTube, integrados de una manera sencilla
Qué falta en Ch en comparación con Cha (y por qué)
Ch intenta mantener solo las funciones esenciales de Cha, pero al hacerlo recorté las siguientes funciones de Cha de Ch:
- La interfaz avanzada de “Editor” y “Answer Search” no se trasladan
- La ingestión de audio, video e imágenes, voz a texto y texto a voz, y algunas de las ventajas extra de exportación y volcados de código no son prioridades
- Algunos ayudantes de navegación y comportamientos de “cambiar directorio raíz” de Cha no están en Ch
- Los “perfiles con chats guardados” locales no son intencionalmente la ruta predeterminada
Etiqueté muchas de estas cosas como hinchazón o como “agradables de tener”. Lo que consideré crítico fue la navegación web y el raspado web, que faltaban en Ch, pero desde entonces lo he integrado en Ch para que el ciclo principal esté completo sin el resto. No solo eso, sino que Ch tiene una nueva función llamada !x que registra una sesión de shell mientras todavía estás en una sesión de Ch y la añade al historial del chat, permitiéndote usar otras herramientas de CLI y guardar su salida para el modelo si quieres. Esta función te permite llevar muchas de las funciones originalmente faltantes de Cha a Ch sin que Ch tenga que hacer todo el trabajo ni volverse hinchado. Puedes obtener más información sobre Ch en esta nueva entrada del blog.
Ch/Cha frente a Claude Code
En julio de 2025, escribí una comparación de Cha con las últimas herramientas de CLI impulsadas por IA para explicar qué valor aporta Cha que esas herramientas no aportaban. Sabiendo esto, aun así quise incluir esto en este blog porque Ch, en esencia, proporciona el mismo valor y la comparación sigue vigente meses después incluso tras este cambio. La misma filosofía se aplica a Ch.
Diferencias clave
- El enfoque de Ch/Cha enfatiza el control total del usuario en cada paso, sin trabajadores de IA en segundo plano tomando decisiones autónomas. Obtienes una gestión de contexto explícita y controlada por el usuario con costes que suelen oscilar entre 1 y 20 dólares al mes para un uso diario activo. No hay ediciones sorpresa; todo está guiado por el usuario, lo que lo hace ideal para una implicación profunda y un control estricto de costes.
- Las CLI agénticas como Claude Code y Gemini toman un camino diferente con decisiones de flujo de trabajo automatizadas y agentes inteligentes tomando decisiones autónomas. Manejan el contexto y la gestión de archivos con IA con costes que suelen oscilar entre 10 y 200 dólares o más al mes para niveles de uso similares. Destacan en modificaciones autónomas de código, lo que las hace perfectas para la creación rápida de prototipos y la delegación.
Cuándo elegir el estilo Ch/Cha
- Coste mínimo con transparencia total
- Control completo sobre cada interacción
- Implicación profunda en tu proceso de desarrollo
- Gestión explícita del contexto para proyectos sensibles
Cuándo elegir herramientas agénticas
- Creación rápida de prototipos e iteración veloz
- Preferencia por la automatización y la delegación a la IA
- Velocidad por encima de las consideraciones de coste
Recomendación
No existe una bala de plata. Ninguna herramienta cubre todos los casos. Ch es excelente para tareas diarias rentables y control preciso. Herramientas agénticas como Claude Code o Gemini CLI brillan para programación compleja, multarchivo y multientorno, con un enfoque en la velocidad y la automatización. Usa Ch cuando quieras reducir costes y mantener el control. Usa herramientas agénticas cuando necesites iteración rápida y no te importe delegar el control. Muchas personas empiezan con Ch para aprender buenos patrones de interacción y luego añaden herramientas agénticas a medida que evolucionan sus necesidades.
El futuro de Cha y Ch
El futuro de Cha y Ch es este. Cha está depreciado y archivado, sirviendo solo como una especie de referencia histórica. Ch es ahora el nuevo Cha. Seguirá siendo mantenido, mejorado (si es necesario) y usado. Voy a resistirme fuertemente a la inflación de funciones para Ch. Y de ahora en adelante, cuando diga/me refiera a Cha, me estaré refiriendo a Ch y el antiguo Cha basado en Python será referido como “Cha v0” o “Cha antiguo”. Con eso en mente
Gracias
Si seguiste el recorrido de Cha desde el principio, gracias. Ese proyecto me enseñó mucho y me empujó hacia una versión que se ajusta mejor a cómo realmente trabajo, al mismo tiempo que también es mejor para la comunidad en su conjunto. Si eres nuevo, empieza a usar Ch y ¡manténlo simple!