KI-getriebene Code-Editoren und -IDEs, Teil 2 Aide by CodeStory – intelligenter VSC-Mod

Von Mirco Lang 5 min Lesedauer

Anbieter zum Thema

Die Zeit der nativen KI-Editoren bricht gerade erst an. Die Unterschiede zum Ansatz „um KI-Assistenten erweiterte Old-School-IDE“ sind dabei allerdings eher klein und fein, wie auch Aide zeigt.

Erster Start der IDE „Aide by CodeStory“.(Bild:  CodeStory)
Erster Start der IDE „Aide by CodeStory“.
(Bild: CodeStory)

Kürzlich haben wir über den AI-First-Editor Cursor berichtet, der gewissermaßen OpenAI in Microsofts Visual Studio Code (VSC) einbindet. Aide sieht auf den ersten Blick aus wie ein Klon – was allerdings nur oberflächlich stimmt.

Der Ansatz ist jedoch fast gleich: Auch Aide ist ein angepasstes VSC, im Wesentlichen das Standard-VSC mit vorinstalliertem Plug-in. Ein großer Vorteil: Einstellungen und Plug-ins vom normalen VSC können einfach übernommen werden. Und da auch Oberfläche und lieb gewonnene Workflows bleiben, ist der Umstieg für VSC-Nutzer völlig problemlos.

Hier kommt aber auch schon ein gewaltiger Unterschied zu Cursor ins Spiel, denn ausnahmsweise geht es hier mal nicht um OpenAI. Aide kann völlig offline arbeiten. Der Editor setzt dazu auf Ollama und alle davon unterstützten Sprachmodelle, etwa das allgemeine LLM Llama2 oder das Code-spezifische Code Llama – sowie mehrere Dutzend weiterer Modelle.

Dank dieser Integration werden keine Telemetriedaten gesammelt und es fallen keine Kosten an. Insbesondere der erste Punkt dürfte in vielen Fällen relevant sein, schließlich lässt sich das Einspeisen von vertraulichen Daten – etwa geschütztem Code – nicht gut mit Informationssicherheit und Datenschutz vereinbaren.

Bevor es nun ein wenig mehr ins Detail und die Praxis geht: Aide stammt von CodeStory, einem erst 2023 in London gegründetem Startup mit derzeit gerade mal zwei Entwicklern. Diese Rahmenbedingungen sollte man bei einer etwaigen Bewertung durchaus berücksichtigen.

Aide-Features

Die Leistungsbeschreibung ist schnell umrissen. Aide bietet Editing über alle Projektdateien hinweg sowie KI-unterstütztes Suchen, Debugging und Refactoring – zumindest laut CodeStory selbst. Die ersichtlichen Features spiegeln diesen Anspruch zunächst durchaus wider.

Die beiden Hauptfunktionen finden sich nahezu identisch auch bei Cursor: Ein kleiner Prompt mitten im Code, um beispielsweise Code-Zeilen hinzuzufügen oder zu ändern, sowie das allseits bekannte Chat-Fenster auf der rechten Seite. Dem Chat-Fenster lässt sich auch über Tastenkürzel jederzeit Kontext mitgeben, sprich markierter Code, den Aide erklären, durchsuchen und verändern kann. Aktuell werden die Sprachen TypeScript, JavaScript, Go und Python unterstützt.

Über die Prompts ist dann auch die beworbene Suche in natürlicher Sprache möglich. Wollen wir etwa wissen, wo eine Funktion genau Daten herbekommt, können wir die Frage auch so formulieren – zumindest laut Konzept.

Ebenfalls interessant sind die gruppierten Git-Diffs: Alle Änderungen sollen in der Seitenleiste landen, übersichtlich gruppiert und zusammengefasst, um mehr Übersicht zu bieten als VSCs Standardansichten. Und wenn schon Git, dann auch richtig, denn Aide hilft beim Verfassen ordentlicher Commit-Texte.

Aide in der Praxis

Cursor konnte hier sehr schnell überzeugen – und unterscheidet sich in dem Punkt ganz beträchtlich von Aide. Das CodeStory-Produkt befindet sich doch sehr merklich in einem sehr, sehr frühen Stadium und auch der dürftige Personalstand macht sich bemerkbar.

Das beginnt mit einer sehr rudimentären Dokumentation, die man Stand heute kaum so nennen kann. Die Features werden kurz angerissen, so dass man zumindest von ihnen weiß und sie bestenfalls auch starten kann. Auch der Rest der Webseite scheint noch nicht ganz durchdacht. Auf der Startseite wird zwar populär ein Windows-Download präsentiert, allerdings gibt es darüber nur die ARM-Version. Schön, dass es eine solche gibt, aber nicht als Standard. In der Dokumentation wird dann zu Beginn lediglich die macOS-Version für Apple Silicon angeboten.

Weitere Binaries gibt es dann im Release-Bereich von CodeStorys GitHub-Kanal – beziehungsweise „CodeStoryAI“, denn CodeStory gibt es bereits. Hinzu kommt ein eigenes Repository namens „binaries“, was zumindest etwas gewöhnungsbedürftig ist. All das ist nicht weiter tragisch, aber durchaus verwirrend und bereitet schlicht keinen guten Einstieg.

Aide fasst ein Skript zusammen.(Bild:  Lang / CodeStory)
Aide fasst ein Skript zusammen.
(Bild: Lang / CodeStory)

Einmal installiert, zeigt Aide Stärken und Schwächen. Aide bietet im Chat beispielsweise eine Vorgabe „Explain“ – gedacht, um größere Code-Blöcke oder auch ganze Projekte zu erklären. Ein beispielhaftes Python-Skript für die Steuerung von Philips-Hue-Geräten hat Aide tatsächlich sehr gut verstanden, zusammengefasst und in logische Blöcke unterteilt. Für den Einstieg in ein Projekt ist das äußerst nützlich.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Cloud Computing

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Aide übersieht Code.(Bild:  Lang / CodeStory)
Aide übersieht Code.
(Bild: Lang / CodeStory)

Nun, die Explain-Funktion ist grundsätzlich wirklich schön umgesetzt, zumal sich per @-Zeichen auch Vorschläge aus der Projektbasis holen lassen, also zum Beispiel einzelne Funktionen. In der Praxis sieht es dann aber leider häufiger so aus, wie im vorangestellten Bild. Aide hat hier die Funktion über den eigenen Vorschlagsmechanismus bekommen, verlangt aber nach markiertem Code und versagt den Dienst. Wesentlich häufiger präsentiert Aide sogar schlicht einen sich drehenden Kreis mit dem Hinweis „Thinking …“ und bleibt dann auch dabei.

Hinzu kamen beim Testen gleich mehrmals unverständliche Fehlermeldungen, etwa „Cannot use ‚in‘ operator to search for ‚Code‘“. Auch die Firewall hat reichlich häufig angeschlagen und Verbindungsanfragen an zum Beispiel Google-APIs und Posthog mokiert – und Posthog kann schon eine Menge Daten erfassen, teils komplette Workflows im Bild.

Ein weiteres Bug-Beispiel gefällig? Beim Versuch, einen Commit zu erstellen, hat sich der Editor aufgehängt und musste manuell beendet werden – wodurch weitere Git-Operationen auf der Kommandozeile in dem Repository nicht mehr möglich waren, ohne manuell zu entsperren. Ebenfalls unschön, abermals erst durch die Firewall bemerkt: Nach dem Beenden des Editors sind Hintergrundprozesse verblieben, die fleißig Internetverbindungen aufbauen wollten – nicht die feine Art.

Einige der Probleme mögen speziell mit der Windows-X64-Version zusammenhängen, letztlich muss man aber zum jetzigen Zeitpunkt ganz klar empfehlen, Aide in einer expliziten Testumgebung auszuprobieren. Auch andere (Offline-)Sprachmodelle dürften zu anderen Ergebnissen führen.

Aber natürlich funktioniert Aide meistens durchaus und ist dann wirklich hilfreich! Allenfalls im direkten Vergleich mit Cursor heißt es dann doch eher „Punkt für die Konkurrenz“. Ein Beispiel: Die simple Aufforderung, eine Variable umzubenennen.

Aide hat dafür die komplette Funktion als neuen Textblock verfasst und gefragt, ob dieser akzeptiert oder verworfen werden soll. Hier muss man sich also mit relativ viel Text für nur ein paar winzige Änderungen befassen. Cursor hingegen löst es im bekannten Diff-Style: Geändert werden nur die betroffenen Zeilen, die rot unterlegt den alten, grün unterlegten Zeilen gegenüberstehen und ebenfalls akzeptiert oder verworfen werden können. Funktional kein großer Unterschied, bezüglich des Workflows aber sehr wohl.

Fazit

Aides Konzept ist durchaus überzeugend und die grundsätzliche Integration der KI in VSC funktioniert schon recht gut. Einige Details, etwa explizite Befehle wie „explain“, sind sogar sehr vielversprechend. Doch hapert es noch an Reife – denn was nützen praktische Befehle, wenn die Liste mit Befehlsvorschlägen leer bleibt?

Man sollte aber nicht zu hart mit Aide ins Gericht gehen, das Projekt ist jung und personell sicherlich unterbesetzt. Und zumindest einige der aufgetretenen Probleme könnten durchaus auf anderen Plattformen oder mit anderen LLMs nicht so auftreten.

Wer sich mittelfristig für den produktiven Einsatz eines AI-First-Editors interessiert, sollte Aide definitiv mit auf die Liste setzen – von den Bugs abgesehen macht das Programm durchaus Spaß. Soll sofort losgelegt werden, wäre Cursor noch die bessere Wahl. Allerdings kann die Verwendung von Offline-Open-Source-LLMs freilich ein entscheidender Faktor sein, selbst wenn diese möglicherweise nicht ganz mit den GPT-Modellen mithalten.

(ID:49878609)