Von Cha zu Ch

GitHub-Repo des Projekts

Große Ankündigung

Ich stelle Cha ein und konzentriere mich auf Ch. Am 23. August 2025 habe ich Cha als veraltet markiert und alle zukünftigen Entwicklungsbemühungen auf Ch gelenkt. Die Philosophie ist jetzt einfach: ein Werkzeug behalten, das einfach, leicht und schnell ist, es pflegen und Fehler beheben. Kein Feature-Jagen.

Warum ich Cha ursprünglich gebaut habe

Als LLMs und ChatGPT neu waren, tauchten die CLI-Tools, die ich wollte, einfach nicht auf. ChatGPT kam im November 2022 heraus und wurde Anfang 2023 mit der Veröffentlichung von GPT-4 richtig populär. Ich wartete darauf, dass solide Kommandozeilen-Tools erscheinen, aber keines funktionierte wirklich so, wie ich es wollte. Also baute ich Cha und benutzte es täglich. Tatsächlich sagte ich es in meinem ersten Blog-Beitrag ganz offen: Projekte wie dieses waren verbreitet, aber keines entsprach meinen Bedürfnissen, also schrieb ich mein eigenes.

Cha war mein Baby. Ich benutzte es täglich und liebte es, daran zu arbeiten. Und innerhalb eines Jahres wuchs es ein wenig und sammelte +60 Sterne auf GitHub. In dieser Zeit bekam es Web-Scraping, das Ziehen von YouTube-Transkripten, Bildgenerierung, mehrzeilige Eingabe, sowohl interaktiven als auch nicht-interaktiven Chat, STT-Prompt-Eingaben, Unterstützung für benutzerdefinierte Tools, Unterstützung für verschiedene andere Plattformen neben OpenAI, eine eigene Antwort-Suchmaschine, fortgeschrittene Verzeichnisnavigation & Dateibearbeitung, die Möglichkeit, Inhalte in die Zwischenablage zu kopieren, TTS für Antworten usw. Es konnte viel, es funktionierte und es war als Kommandozeilen-Tool wirklich nützlich und mächtig.

Warum ich zu Ch gewechselt bin (Python zu Go)

Mit der Zeit wurde Cha schwerfällig. Tolle Feature-Palette, aber zu viel Oberfläche für das, was ich im Alltag brauchte. Das führte dazu, dass Cha wirklich aufgebläht wurde. Es half auch nicht, dass es in Python geschrieben war, was zwei kritische Probleme mit sich brachte. Eines war die Geschwindigkeit — allein die Initial-Ladezeit betrug immer noch 0,8 Sekunden und das trotz vieler Optimierungen und Engineering-Tricks, um Pythons langsame Paket-Importzeit und den Einsatz von Multiprocessing zu umgehen. Und Python ist sehr herausfordernd zu installieren. Da Cha auf verschiedenen Open-Source-Drittanbieter-Tools basierte, war die Installation sehr schwierig. Mein Wendepunkt war, als ich mit nur einem Android-Tablet unterwegs war, auf dem iTermux lief, und es einfach überhaupt nicht funktionierte — es halbwegs zum Laufen zu bringen war sehr schmerzhaft und sinnlos.

Also entschied ich mich für ein neues Experiment namens Ch. Ch sollte wie Cha sein, ABER in GoLang statt in Python geschrieben und nur die wesentlichen Funktionen von Cha enthalten, mit dem Ziel, leicht, schnell, auf den meisten Systemen einfach zu installieren zu sein und nicht so feature-schwer zu werden. Dadurch würde es für mich als Alleinmaintainer einfacher, das Projekt zu pflegen.

Nach ein paar Monaten Arbeit an und Nutzung von Ch wurde mir klar, dass die Zukunft von Cha über Ch und nicht über die ursprüngliche Cha-Codebasis läuft. Ich hatte zu viel Zeit in Cha investiert, die Wartung beider Codebasen war als einzelner Entwickler zeitaufwändig, und Ch erledigte die Kernarbeit, während es viel leichter, schneller und einfacher zu installieren war. Das machte die Entscheidung klar…

Das Go-Rewrite verschafft mir schnellen Start, eine einzelne Binärdatei und ein kleineres mentales Modell. Das Ch-README bringt es gut auf den Punkt: Ch ist der Nachfolger mit über 10x schnellerem Start und deutlich besserer Leistung.

Die Entscheidung

Ich habe Cha am 23. August 2025 offiziell veraltet erklärt und die Leute über Ch in Chas README verwiesen. Das Cha-Repo bleibt als historische Referenz bestehen und ich halte Ch im Wartungsmodus mit Fokus auf Stabilität und Fehlerbehebungen, mit wenig Interesse, neue Funktionen hinzuzufügen, es sei denn, es lohnt sich und/oder es ist kritisch (was auch immer das im Laufe der Zeit bedeuten mag).

Welche Funktionen Ch heute enthält

Ch deckt den täglichen Workflow ohne Ballast ab:

  • Hochleistungsstart mit einer leichtgewichtigen CLI, geschrieben in GoLang
  • Multi-Provider-Unterstützung (OpenAI, Groq, DeepSeek, Anthropic, XAI, Together, Gemini, Mistral, Ollama)
  • Interaktiver und direkter Modus, Piping von jedem Befehl, Laden von Dateien und Verzeichnissen, Token-Zählung, Export von Code-Blöcken, Chat-Verlaufsanzeige, Modell/Plattform-Wechsel, Backtracking, Code-Dumps, Shell-Sitzungsaufzeichnung, Zwischenablage-Integration
  • Eingebautes Web-Scraping und Suche, einschließlich YouTube-Link-Verarbeitung, integriert auf eine geradlinige Weise

Was in Ch im Vergleich zu Cha fehlt (und warum)

Ch versucht, nur die wesentlichen Funktionen von Cha zu behalten, und hat dabei die folgenden Cha-Funktionen aus Ch herausgeschnitten:

  • Die fortgeschrittene “Editor”-Benutzeroberfläche und die “Answer Search” kommen nicht mit
  • Audio-, Video- und Bildaufnahme, Sprache-zu-Text und Text-zu-Sprache sowie einige der zusätzlichen Export- und Codedump-Feinheiten sind keine Prioritäten
  • Einige Navigationshilfen und “Root-Verzeichnis ändern”-Verhalten aus Cha sind nicht in Ch
  • Lokale “Profile mit gespeicherten Chats” sind absichtlich nicht der Standardweg

Ich habe viele dieser Dinge entweder als Ballast oder als “nice to have” bezeichnet. Was ich für kritisch hielt, war Web-Browsing und Web-Scraping, das in Ch fehlte, das ich aber inzwischen in Ch integriert habe, sodass die Kernschleife ohne den Rest vollständig ist. Nicht nur das, Ch hat eine neue Funktion namens !x, die eine Shell-Sitzung aufzeichnet, während du dich noch in einer Ch-Sitzung befindest, und diese dem Chat-Verlauf hinzufügt, sodass du andere CLI-Tools verwenden und deren Ausgabe für das Modell speichern kannst, wenn du möchtest. Diese Funktion erlaubt es dir, viele der ursprünglich fehlenden Cha-Funktionen in Ch zu erhalten, ohne dass Ch alles alleine stemmen und aufgebläht werden muss. Du kannst mehr über Ch in diesem neuen Blog Beitrag erfahren.

Ch/Cha im Vergleich zu Claude Code

Im Juli 2025 schrieb ich einen Vergleich von Cha mit den neuesten KI-gestützten CLI-Tools, um zu erklären, welchen Mehrwert Cha bot, den diese Tools nicht boten. Vor diesem Hintergrund wollte ich das trotzdem in diesem Blog aufnehmen, weil Ch im Kern denselben Wert bietet und der Vergleich auch Monate nach diesem Wechsel noch Bestand hat. Dieselbe Philosophie gilt für Ch.

Wesentliche Unterschiede

  • Der Ch/Cha-Ansatz betont vollständige Benutzerkontrolle in jedem Schritt, ohne dass im Hintergrund autonome KI-Arbeiter Entscheidungen treffen. Du erhältst explizites, benutzerkontrolliertes Kontextmanagement mit Kosten, die bei täglicher aktiver Nutzung typischerweise zwischen 1 und 20 USD pro Monat liegen. Es gibt keine überraschenden Änderungen; alles ist benutzergeführt, was es ideal für tiefes Eingreifen und strikte Kostenkontrolle macht.
  • Agentische CLIs wie Claude Code und Gemini verfolgen einen anderen Weg mit automatisierten Workflow-Entscheidungen und intelligenten Agenten, die autonome Entscheidungen treffen. Sie übernehmen KI-gemanagtes Kontext- und Dateimanagement mit Kosten, die bei ähnlichen Nutzungsniveaus typischerweise zwischen 10 und 200+ USD pro Monat liegen. Sie glänzen bei autonomen Code-Modifikationen und sind somit perfekt für schnelles Prototyping und Delegation.

Wann man den Ch/Cha-Stil wählen sollte

  • Minimale Kosten bei voller Transparenz
  • Volle Kontrolle über jede Interaktion
  • Tiefes Engagement in deinem Entwicklungsprozess
  • Explizites Kontextmanagement für sensible Projekte

Wann man agentische Tools wählen sollte

  • Schnelles Prototyping und schnelle Iteration
  • Präferenz für KI-Automatisierung und Delegation
  • Geschwindigkeit vor Kostengesichtspunkten

Empfehlung

Es gibt keine Patentlösung. Kein Tool deckt jeden Fall ab. Ch ist großartig für kosteneffiziente tägliche Aufgaben und präzise Kontrolle. Agentische Tools wie Claude Code oder Gemini CLI glänzen bei komplexer, mehrdateiiger, mehrumgebungsbezogener Codierung mit Fokus auf Geschwindigkeit und Automatisierung. Nutze Ch, wenn du Kosten reduzieren und die Kontrolle behalten willst. Nutze agentische Tools, wenn du schnelle Iteration brauchst und keine Probleme damit hast, Kontrolle zu delegieren. Viele Leute beginnen mit Ch, um gute Interaktionsmuster zu erlernen, und fügen dann agentische Tools hinzu, wenn sich die Bedürfnisse weiterentwickeln.

Die Zukunft von Cha und Ch

Die Zukunft von Cha und Ch sieht so aus: Cha ist veraltet und archiviert und dient nur noch als eine Art historische Referenz. Ch ist jetzt das neue Cha. Es wird weiterhin gewartet, bei Bedarf verbessert und genutzt. Ich werde mich stark gegen Feature Creep für Ch wehren. Und künftig, wenn ich von Cha spreche oder Cha erwähne, meine ich Ch und das alte, python-basierte Cha werde ich als “Cha v0” oder “altes Cha” bezeichnen. Vor diesem Hintergrund

Danke

Wenn du die Cha-Reise von Anfang an verfolgt hast, danke. Dieses Projekt hat mich viel gelehrt und mich zu einer Version geführt, die besser zu meiner Arbeitsweise passt und gleichzeitig besser für die Gemeinschaft insgesamt ist. Wenn du neu bist, fang an, Ch zu benutzen und halte es einfach!