Ch CLI
GitHub-repository van het project
Over
Een jaar geleden creëerde ik Cha, lees mijn oorspronkelijke blogbericht erover, mijn Python CLI-tool voor het koppelen met modellen van OpenAI. Sindsdien heb ik het AI-landschap drastisch zien evolueren. Nieuwe spelers zijn de markt betreden en bieden aantrekkelijke alternatieven voor OpenAI. Dit bracht mij ertoe opnieuw na te denken over wat Cha zou kunnen zijn. Het resultaat is Ch, een experimentele Go-implementatie die alles belichaamt wat ik heb geleerd over het bouwen van ontwikkelaarstools.
Ch is niet zomaar een port van Cha. Hoewel het nog in de vroege fase zit, richt het zich op wat voor mij en andere ontwikkelaars het belangrijkst is: snelheid, efficiëntie en ondersteuning voor meerdere AI-platforms. Terwijl het de kernfilosofie van eenvoud en terminal-eerst-interactie behoudt die Cha nuttig maakte, levert Ch een indrukwekkende prestatieverbetering van 2,55x ten opzichte van zijn Python-voorganger. Dit betekent minder tijd wachten en meer tijd om daadwerkelijk problemen op te lossen.
De Evolutie
Het AI-landschap is aanzienlijk veranderd sinds ik Cha voor het eerst uitbracht. Ik heb verschillende grote verschuivingen gezien die van invloed waren op hoe ik Ch ben gaan bouwen:
-
De opkomst van nieuwe AI-aanbieders is ongelooflijk geweest. Bedrijven zoals Groq hebben de grenzen van inferentiesnelheid verlegd. Anthropic’s Claude heeft indrukwekkende redeneervaardigheden getoond. DeepSeek en anderen hebben frisse benaderingen van taalmodellen gebracht. Deze diversificatie betekende dat alleen aan OpenAI gebonden zijn niet langer genoeg was.
-
Reponsnelheid is steeds kritischer geworden. Naarmate AI-tools onderdeel worden van onze dagelijkse workflow, tellen die extra seconden wachten op antwoorden op. Dit was een van mijn belangrijkste motivaties om in Go te herschrijven. De prestatieverbeteringen zijn niet zomaar cijfers op een benchmark. Ze vertalen zich in een merkbaar soepelere ervaring wanneer je diep in een coderingssessie zit.
-
Ook de behoefte aan platformflexibiliteit is gegroeid. Verschillende modellen blinken uit in verschillende taken, en de vrijheid hebben om gemakkelijk tussen hen te schakelen is waardevol. Ik wilde dat Ch dit naadloos zou maken, zodat je je kunt concentreren op je werk in plaats van op het beheren van API-eindpunten.
Belangrijkste Kenmerken
Ondersteuning voor meerdere platforms: Ch werkt naadloos met OpenAI, Groq, DeepSeek, Anthropic en xAI. Ik heb schakelen tussen platforms zo eenvoudig mogelijk gemaakt omdat ik geloof dat opties de tool waardevoller maken.
Razendsnelle prestaties: De snelheidsverbetering van 2,55x ten opzichte van Cha is niet zomaar marketing. Het is het resultaat van zorgvuldige optimalisatie en de uitstekende prestatiekenmerken van Go. Elke interactie voelt vlotter aan, wat echt een verschil maakt wanneer je het de hele dag gebruikt.
Interactieve & directe modi: Soms wil je een snel antwoord, andere keren heb je een uitgebreid gesprek nodig. Ch ondersteunt beide werkstromen op natuurlijke wijze. Je kunt snelle vragen afvuren of deelnemen aan gedetailleerde technische discussies.
Webzoekintegratie: Ik heb SearXNG geïntegreerd met IEEE-citaatindeling. Dit betekent dat wanneer Ch webinhoud gebruikt om je vragen te beantwoorden, je correct geciteerde antwoorden krijgt van onderzoekskwaliteit. Het is vooral nuttig wanneer je actuele informatie nodig hebt of claims wilt verifiëren.
Slimme bestandsafhandeling: Bestanden laden in je chatcontext is iets wat ik constant gebruik, dus ik heb het beter gemaakt. De functionaliteit voor meerdere selecties maakt het eenvoudig om precies op te nemen wat je nodig hebt in je gesprek.
Professionele hulpmiddelen: Of je nu gesprekken exporteert voor documentatie, je favoriete teksteditor gebruikt voor complexe prompts, of schakelt tussen AI-modellen, Ch maakt het eenvoudig. Dit zijn niet zomaar functies waarvan ik dacht dat ze aardig zouden zijn. Het zijn hulpmiddelen die ik elke dag gebruik in mijn eigen werk.
Beheer van chatgeschiedenis: Door terug te kunnen bladeren door de gespreksgeschiedenis heb ik ontelbare keren hulp gehad wanneer ik eerdere delen van een discussie moest raadplegen of chats moest exporteren voor toekomstig gebruik.
Waarom Go?
De beslissing om Cha in Go te herschrijven ging niet alleen over prestaties. Na een jaar Cha te hebben onderhouden, had ik een duidelijk beeld van wat werkte en wat beter kon. Go’s sterke typesysteem ving fouten eerder in de ontwikkeling op. De uitstekende ondersteuning voor gelijktijdigheid maakte het afhandelen van meerdere API-aanroepen soepeler. De snelle uitvoering maakte elke interactie responsiever.
Maar misschien nog belangrijker: Go hielp me een robuuster en beter onderhoudbaar hulpmiddel te bouwen. De code is schoner, de foutafhandeling is betrouwbaarder en de algehele architectuur is solider. Deze verbeteringen zijn misschien niet direct zichtbaar voor gebruikers, maar ze maken Ch betrouwbaarder en gemakkelijker uit te breiden met nieuwe functies.
De Kracht van AI-ondersteunde Ontwikkeling
Wat mij werkelijk verbaasde aan het bouwen van Ch waren niet alleen de prestatieverbeteringen of de nieuwe functies. Het was hoe ik het bouwde. Door tools zoals Claude Code CLI en Gemini CLI te gebruiken, gecombineerd met de Cursor IDE, was ik in staat om deze MVP in minder dan een dag te ontwikkelen. Deze ervaring heeft mijn kijk op wat mogelijk is in softwareontwikkeling volledig veranderd.
Deze snelle ontwikkelcyclus ging niet over het nemen van shortcuts. In plaats daarvan liet het zien hoe AI-tools de manier transformeren waarop we softwareprojecten kunnen benaderen. Wat weken van planning, coderen en debuggen had kunnen kosten, werd teruggebracht tot uren van gerichte ontwikkeling. Dit gaat niet alleen over sneller code schrijven; het gaat erom te kunnen experimenteren, itereren en innoveren in een tempo dat voorheen niet mogelijk was.
Vooruitkijkend
Hoewel Ch momenteel de meeste kernfuncties van Cha implementeert, is het zeer zeker een experimenteel project. Ik ben enthousiast over het potentieel, maar er is nog werk aan de winkel. De prestatieverbeteringen en ondersteuning voor meerdere platforms plaatsen Ch in een positie om mee te groeien met het snel evoluerende AI-landschap.
Ik gebruik Ch dagelijks, net als ik met Cha deed, maar nu met de voldoening te weten dat het sneller is. Voor degenen die het willen uitproberen: bekijk de GitHub-repository van het project die bovenaan deze post is gelinkt. Het installatieproces is eenvoudig, vooral als je bekend bent met Go-tools.
De reis van Cha naar Ch ging over meer dan alleen het herschrijven van een tool in een snellere taal. Het ging erom alles wat ik leerde van het bouwen en gebruiken van Cha mee te nemen, en iets te creëren dat beter aansluit bij de behoeften van ontwikkelaars in het AI-landschap van vandaag. Ik ben benieuwd om te zien hoe mensen Ch gebruiken en hoe het kan evolueren om aan toekomstige behoeften te voldoen.