De Cha à Ch
Grande annonce
Je mets fin à Cha et me concentre sur Ch. Le 23 août 2025, j’ai marqué Cha comme déprécié et orienté tous les futurs efforts de développement vers Ch. La philosophie est maintenant simple : garder un seul outil qui soit simple, léger et rapide, le maintenir et corriger les bugs. Pas de course aux fonctionnalités.
Pourquoi j’ai initialement construit Cha
Quand les LLM et ChatGPT sont apparus, les outils en ligne de commande que je voulais n’étaient jamais arrivés. ChatGPT est sorti en novembre 2022 et a vraiment explosé début 2023 avec la sortie de GPT-4. J’attendais que des outils en ligne de commande solides apparaissent, mais aucun d’eux ne fonctionnait vraiment comme je le voulais. Alors j’ai construit Cha et je l’ai utilisé quotidiennement. En fait, dans mon premier article de blog j’ai dit clairement : des projets comme celui-ci étaient courants, mais aucun ne correspondait à mes besoins, alors j’ai écrit le mien.
Cha était mon bébé. Je l’utilisais tous les jours et j’aimais travailler dessus. Et en moins d’un an, il a un peu grandi en accumulant plus de 60 étoiles sur GitHub. Pendant ce temps, il a récupéré du web scraping, l’extraction de transcriptions YouTube, la génération d’images, l’entrée multi-lignes, le chat interactif/non interactif, la saisie d’invite STT, le support pour des outils personnalisés, le support pour diverses autres plateformes en dehors d’OpenAI, son propre moteur de recherche de réponses, une navigation avancée dans les répertoires et l’édition de fichiers, la capacité de copier du contenu dans le presse-papiers, la TTS pour les réponses, etc. Il faisait beaucoup, il fonctionnait, et il était vraiment utile et puissant comme outil en ligne de commande.
Pourquoi migrer vers Ch (de Python à Go)
Avec le temps Cha est devenu lourd. Super jeu de fonctionnalités, mais trop de surface pour ce dont j’avais besoin au quotidien. Cela a abouti à une véritable surcharge de Cha. Le fait qu’il soit écrit en Python n’a pas aidé et a introduit deux problèmes critiques. L’un était la vitesse, le temps de chargement initial prenait encore 0,8 seconde malgré de nombreuses optimisations et ingénieries pour contourner le temps d’importation lent des paquets Python et l’utilisation du multi-processing. Et Python est très difficile à installer. En raison des dépendances de Cha à divers outils open-source tiers, l’installation était très compliquée. Mon point de rupture a été lorsque je voyageais avec seulement une tablette Android fonctionnant iTermux et que cela ne fonctionnait tout simplement pas du tout et que le rendre à peu près opérationnel était très douloureux et sans intérêt.
J’ai donc décidé de lancer une nouvelle expérience appelée Ch. Ch serait comme Cha MAIS écrit en GoLang au lieu de Python et contenant SEULEMENT les fonctionnalités essentielles de Cha avec l’idée d’être léger, rapide, facile à installer sur la plupart des systèmes et de ne pas être aussi chargé en fonctionnalités. Ce faisant, il sera plus facile de maintenir le projet en tant que mainteneur solo.
Après quelques mois de travail et d’utilisation de Ch, j’ai vu que l’avenir de Cha passait par Ch et non par la base de code Cha d’origine. J’avais passé beaucoup trop de temps sur Cha, maintenir les deux bases de code prenait du temps en tant que développeur unique sur ces projets, et Ch faisait le travail de base tout en étant beaucoup plus léger, plus rapide et plus facile à installer. Cela a rendu la décision claire…
La réécriture en Go m’apporte un démarrage rapide, un binaire unique et un modèle mental plus petit. Le README de Ch le résume bien : Ch est le successeur avec un démarrage plus de 10x plus rapide et des performances nettement meilleures.
La décision
J’ai officiellement déprécié Cha le 23 août 2025 et orienté les gens vers Ch via le README de Cha. Le dépôt Cha reste comme référence historique et je maintiens Ch en mode maintenance avec un accent sur la stabilité et la correction des bugs, avec peu d’intérêt pour ajouter de nouvelles fonctionnalités sauf si cela en vaut la peine et/ou est critique à ajouter (quoi que cela puisse signifier au fil du temps).
Quelles fonctionnalités Ch inclut aujourd’hui
Ch couvre le flux de travail quotidien sans le poids :
- Démarrage haute performance avec une CLI légère écrite en GoLang
- Prise en charge de plusieurs fournisseurs (OpenAI, Groq, DeepSeek, Anthropic, XAI, Together, Gemini, Mistral, Ollama)
- Modes interactif et direct, piping depuis n’importe quelle commande, chargement de fichiers et de répertoires, comptage de tokens, export de blocs de code, visionneuse d’historique de chat, changement de modèle/plateforme, retour en arrière, dumps de code, enregistrement de session shell, intégration du presse-papiers
- Web scraping et recherche intégrés, y compris la gestion des liens YouTube, intégrés de manière simple
Ce qui manque dans Ch par rapport à Cha (et pourquoi)
Ch essaie de ne conserver que les fonctionnalités essentielles de Cha mais ce faisant j’ai supprimé les fonctionnalités Cha suivantes de Ch :
- L’interface avancée “Éditeur” et la “Recherche de réponses” ne sont pas transférées
- L’ingestion audio, vidéo et d’images, la conversion voix-texte et texte-voix, et certaines des extra exportations et commodités de codedump ne sont pas des priorités
- Certains aides à la navigation et comportements de “changement de répertoire racine” de Cha ne sont pas dans Ch
- Les “profils locaux avec chats enregistrés” ne sont volontairement pas la voie par défaut
J’ai étiqueté beaucoup de ces éléments comme du gonflement ou des “agréments”. Ce que je considérais critique était la navigation web et le web scraping, qui manquaient dans Ch mais que j’ai depuis intégrés à Ch pour que la boucle principale soit complète sans le reste. De plus, Ch a une nouvelle fonctionnalité appelée !x qui enregistre une session shell pendant que vous êtes toujours dans une session Ch et l’ajoute à l’historique du chat, vous permettant d’utiliser d’autres outils CLI et d’enregistrer leurs sorties pour le modèle si vous le souhaitez. Cette fonctionnalité vous permet d’obtenir beaucoup des fonctionnalités manquantes d’origine de Cha dans Ch sans que Ch ne fasse tout le travail et ne devienne gonflé. Vous pouvez en apprendre davantage sur Ch dans ce nouveau blog post.
Ch/Cha contre Claude Code
En juillet 2025, j’ai écrit une comparaison de Cha avec les derniers outils CLI alimentés par l’IA pour expliquer quelle valeur Cha apportait que ces outils n’avaient pas. Sachant cela, je voulais quand même inclure ceci dans ce blog parce que Ch, dans son noyau, fournit la même valeur et la comparaison tient toujours des mois plus tard même après ce changement. La même philosophie s’applique à Ch.
Principales différences
- L’approche Ch/Cha met l’accent sur le contrôle total de l’utilisateur à chaque étape sans travailleurs IA en arrière-plan prenant des décisions autonomes. Vous obtenez une gestion explicite et contrôlée par l’utilisateur du contexte avec des coûts généralement compris entre 1 $ et 20 $ par mois pour une utilisation active quotidienne. Il n’y a pas d’éditions surprises, tout est guidé par l’utilisateur, ce qui en fait l’idéal pour une implication approfondie et un contrôle strict des coûts.
- Les CLI basés sur des agents comme Claude Code et Gemini prennent une voie différente avec des décisions de flux de travail automatisées et des agents intelligents prenant des choix autonomes. Ils gèrent le contexte et la gestion des fichiers pilotés par l’IA avec des coûts généralement compris entre 10 $ et 200 $+ par mois pour des niveaux d’utilisation similaires. Ils excellent dans les modifications de code autonomes, ce qui les rend parfaits pour le prototypage rapide et la délégation.
Quand choisir le style Ch/Cha
- Coût minimal avec transparence totale
- Contrôle complet sur chaque interaction
- Implication profonde dans votre processus de développement
- Gestion explicite du contexte pour des projets sensibles
Quand choisir des outils basés sur des agents
- Prototypage rapide et itération rapide
- Préférence pour l’automatisation et la délégation par l’IA
- Priorité à la vitesse plutôt qu’au coût
Recommandation
Il n’y a pas de solution miracle. Aucun outil ne couvre tous les cas. Ch est excellent pour les tâches quotidiennes économiques et le contrôle précis. Les outils basés sur des agents comme Claude Code ou Gemini CLI brillent pour le codage complexe, multi-fichiers et multi-environnements avec un accent sur la vitesse et l’automatisation. Utilisez Ch lorsque vous souhaitez réduire les coûts et garder le contrôle. Utilisez des outils basés sur des agents lorsque vous avez besoin d’itérations rapides et que vous n’avez pas de problème à déléguer le contrôle. Beaucoup de gens commencent avec Ch pour apprendre de bonnes pratiques d’interaction, puis ajoutent des outils basés sur des agents au fur et à mesure de l’évolution de leurs besoins.
L’avenir de Cha et Ch
L’avenir de Cha et Ch est le suivant. Cha est déprécié et archivé, servant uniquement de référence historique en quelque sorte. Ch est maintenant le nouveau Cha. Il continuera d’être maintenu, amélioré (si nécessaire) et utilisé. Je vais fortement résister à la dérive des fonctionnalités pour Ch. Et à l’avenir, quand je dirai/ferrerai Cha je ferai référence à Ch et l’ancien Cha basé sur Python sera désigné comme “Cha v0” ou “ancien Cha”. Avec cela en tête
Merci
Si vous avez suivi le parcours de Cha depuis le début, merci. Ce projet m’a beaucoup appris et m’a poussé vers une version qui correspond mieux à ma manière de travailler tout en étant meilleure pour la communauté dans son ensemble. Si vous êtes nouveau, commencez à utiliser Ch et restez simple !