22 Punkte von GN⁺ 2025-11-06 | 3 Kommentare | Auf WhatsApp teilen
  • Windsurf Codemaps ist ein neues Tool zur Code-Erkundung, bei dem die KI eine strukturierte Code-Map mit Anmerkungen versieht, damit Entwickler eine Codebasis schnell und präzise verstehen können
  • Während sich bestehende AI-Coding-Tools auf die Automatisierung der Code-Erstellung konzentrieren, zielt Codemaps auf verständnisorientiertes Engineering ab und basiert auf den Modellen SWE‑1.5 und Claude Sonnet 4.5
  • Es visualisiert den Funktionsfluss innerhalb der Codebasis und ermöglicht es, sofort zu exakten Code-Stellen zu springen oder über den „trace guide“ Erklärungen zu zusammengehörigen Code-Gruppen einzusehen
  • Gegenüber bestehenden chatbasierten Agenten wie Cascade bietet es bessere Kontextverknüpfung und höhere Navigationseffizienz; zudem verbessert die Referenzfunktion @{codemap} die Arbeitsleistung des Agenten
  • KI positioniert sich nicht als bloßer Ersatz, sondern als kollaboratives Werkzeug, das das Verständnis und die Verantwortlichkeit von Ingenieuren stärkt

Die Bedeutung des Code-Verständnisses und das Aufkommen von Codemaps

  • Softwareentwicklung beginnt nicht mit bloßem Codieren, sondern mit dem Verständnis des Problems
    • Tools, bei denen KI den Code anstelle des Menschen schreibt, steigern zwar die Produktivität, führen aber zu einer Entkopplung des Verständnisses zwischen Entwicklern und Code
    • Bei anspruchsvollen und hochwertigen Aufgaben führt diese Trennung zu kritischer Ineffizienz
  • Cognition betont, dass nicht eine „das Gehirn ausschaltende KI“, sondern eine „das Gehirn einschaltende KI“ gebraucht wird
  • Codemaps ist eine KI-kommentierte Code-Map auf Basis von SWE‑1.5 und Claude Sonnet 4.5 und erweitert die Technologien von DeepWiki und Ask Devin

Warum Codemaps?

  • Jede Engineering-Aufgabe beginnt mit dem Verständnis des Codes, und große Codebasen verschlingen viel Zeit für Navigation und Erinnerung
    • Neue Ingenieure benötigen 3 bis 9 Monate bis zur vollen Einarbeitung, Senior-Ingenieure verwenden mehr als 5 Stunden pro Woche für Onboarding
    • Laut einer Stripe-Umfrage ist die Wartung von Legacy-Systemen ein Hauptgrund für sinkende Produktivität
  • Bestehende AI-Coding-Tools sind auf allgemeine Frage-und-Antwort-Nutzung ausgelegt und unterstützen fokussiertes Onboarding und präzise Navigation nicht ausreichend
  • Codemaps wurde als präzises codebasiertes Mapping-Tool entwickelt, um diese Grenzen zu überwinden

Echtzeit-Mapping rund um konkrete Probleme

  • In Windsurf wird es mit Cmd + Shift + C gestartet; anschließend gibt man ein Arbeitsziel ein oder wählt einen automatischen Vorschlag
    • Es stehen die Modi Fast (SWE‑1.5) und Smart (Sonnet 4.5) zur Auswahl
    • Jede Codemap basiert auf einem Code-Snapshot und erfüllt das ZDR-Prinzip
  • Über eine visuelle Node-Map lässt sich die Codestruktur erkunden; per Klick springt man direkt zur exakten Code-Position
  • Öffnet man über die Option „See more“ den trace guide, lassen sich Erklärungen zu Code-Gruppen detailliert einsehen
  • Wird in Cascade @{codemap} aufgerufen, um auf einen bestimmten Abschnitt zu verweisen, verbessert das das Kontextverständnis und die Leistung des Agenten

Ein Ansatz gegen „Vibeslop“

  • „Vibe coding“ ist zu ungezügelter KI-Codegenerierung verkommen, wobei Code-Wartung ohne Verständnis als Problem benannt wird
  • Codemaps hilft Menschen und KI, Systemstruktur, Datenfluss und Abhängigkeiten zu teilen, und schließt so die Verständnislücke
  • Die Rolle des Ingenieurs verschiebt sich vom Verfasser zum Verantwortlichen (accountability), der über Verständnis Qualität sicherstellt
  • Ziel ist nicht nur Geschwindigkeit, sondern auch, Ingenieuren dabei zu helfen, im Flow zu bleiben und komplexe Probleme selbstbewusst zu lösen
  • KI wird nicht als bloßer Ersatz, sondern als Kooperationsmittel zur Stärkung hochwertiger Arbeit und Entlastung von geringwertiger Arbeit dargestellt

Ausblick

  • Codemaps ist ein erster Schritt, bei dem Indexierungs- und Analyseergebnisse interner Agenten für Menschen visualisiert werden
    • Derzeit kann es teamübergreifend zum Teilen und Lernen genutzt werden
    • Künftig soll per Benchmark gemessen werden, wie stark es die Problemlösungsfähigkeit von Agenten wie Devin und Cascade verbessert
  • Geprüft werden Verbindungs- und Kommentarfunktionen zwischen Codemaps sowie die Definition eines offenen .codemap-Protokolls
  • In Kombination mit Fast Context soll sich automatisches Context Engineering zu einer für Menschen lesbaren Form weiterentwickeln
  • Codemaps ist in den neuesten Versionen von Windsurf und DeepWiki verfügbar

3 Kommentare

 
galadbran 2025-11-07

Jedes Mal, wenn ich deepwiki verwende, bin ich beeindruckt, deshalb freue ich mich auch auf diese Funktion!

 
tested 2025-11-06

Wäre schön, wenn es das auch für VS Code gäbe.

 
GN⁺ 2025-11-06
Hacker-News-Kommentare
  • Nachdem ich den Beitrag gelesen habe, sind mir ein paar Punkte aufgefallen
    Das wirkt wie noch ein AI-Produkt für Fortune-500-Unternehmen. Für kleinere bis mittelgroße Teams passt es vielleicht nicht besonders gut.
    Solche diagrammbasierten Tools auf Basis statischer Analyse gibt es tatsächlich schon seit Langem, und abgesehen davon, dass ein LLM sie nun für einen zeichnet, ist daran nicht allzu viel neu.
    Beim Onboarding geht es nicht einfach darum, ein Flussdiagramm zu zeigen, sondern vor allem darum, den Problemkontext des Teams zu vermitteln. Wichtiger als Boilerplate wie CRUD oder MVC ist es, die besonderen Muster und Einschränkungen des eigenen Teams zu erklären.

    • Wenn man nur mit statischer Analyse visualisiert, fehlt es an Flexibilität bei der Entscheidung, was überhaupt gezeigt werden soll.
      Der Vorteil von Visualisierungen, die ein LLM erzeugt, ist, dass genau dieses Urteilsvermögen und Alltagsverständnis einfließt und sie dadurch intuitiver werden.
    • Ich habe heute auch das Gefühl, einer der „Lucky 10,000“ von xkcd zu sein.
      Kann jemand solche Tools für statische Analyse empfehlen? Wenn möglich Open Source, und Unterstützung für Python, Java und JavaScript, besonders Angular, wäre ideal.
  • Ich habe Windsurf nach langer Zeit mal wieder geöffnet und auf „Upgrade Available“ geklickt, worauf ich auf diese Seite weitergeleitet wurde.
    Der dort empfohlene Befehl sudo apt-get upgrade windsurf ist in der Praxis ein riskanter Befehl, der das komplette Paket-Set des Systems aktualisiert.
    Zum Glück konnte ich das stattdessen direkt mit sudo apt-get install --only-upgrade windsurf lösen.
    Wie auch immer, die neu hinzugefügte Codemaps-Funktion ist ziemlich cool und einen Versuch wert.

    • Die unintuitive Syntax von apt-get upgrade $PACKAGE ist wirklich seltsam. Die tatsächlich korrekte Form steht nicht einmal im Handbuch.
    • Das Team hat dieses Feedback offenbar gesehen und sofort korrigiert.
      - sudo apt-get upgrade windsurf
      + sudo apt-get install windsurf
      
    • Ich verstehe immer noch nicht, was der Vorteil dieser Syntax sein soll. Sie ist wirklich verwirrend.
  • Ich wünschte, mehr Leute würden Windsurf ausprobieren.
    Ich arbeite als Senior Engineer sowohl mit agentischem Coding als auch mit normalem Coding, und Windsurf ist ein unterschätztes Tool.
    Als die Codemaps-Funktion zum ersten Mal erschien, habe ich mich wirklich darüber gefreut.

    • Sehe ich ähnlich. Ich nutze Windsurf bei der Arbeit, und die UX ist wirklich die große Stärke.
      Ich verwende Codemaps seit ein paar Wochen und finde es hervorragend. Wenn die Code-Änderungen zunehmen, könnte die Pflege lästig werden, aber das scheint lösbar.
    • Ich bevorzuge IDEs wie Zed, ohne Login-Zwang oder Abhängigkeit von einem Ökosystem.
    • Wegen dieses Beitrags denke ich auch darüber nach, es einmal auszuprobieren. Ich habe verschiedene Tools wie die abacus.ai IDE oder die claude CLI genutzt, aber noch keinen wirklich perfekten Workflow gefunden.
    • Ich frage mich, warum noch niemand über den integrierten Copilot in VSCode spricht.
      Ich habe mit einer Kombination aus Sonnet 4, Sequential Thinking und einem Tavily-MCP-Server schnell einen SaaS-Prototyp gebaut. Auch preislich ist das vernünftig.
    • Ich bin Windsurf-Fan, aber in letzter Zeit komplett zu Codex gewechselt. Die Cloud-Umgebung ist einfach zu komfortabel.
      Windsurf ist zwar gut, aber wegen des Preismodells haben wir auf eine unternehmensweite Einführung verzichtet.
  • Das ist zwar eine interessante Idee, aber wenn das erzeugte Diagramm nicht korrekt ist, kann es eher Missverständnisse erzeugen.
    Wenn am Ende doch wieder ein Mensch alles verifizieren muss, verfehlt das Tool seinen Zweck.

    • Wenn jemand eigentlich gar nicht „den Code wirklich verstehen“ will, dann ist so ein Diagramm womöglich nur ein formales Artefakt, das man dem Vorgesetzten zeigt.
  • Solche Funktionen sind wenig praktisch, weil sie nur eine Verbindungsübersicht des Codes ohne Geschäftskontext zeigen.
    AI versteht das „Warum“ einer Architektur nicht. Am Ende ist es meiner Meinung nach besser, Designdokumente zu lesen und den Code selbst zu studieren.

    • Außerdem steckt viel Geschäftskontext in den Köpfen der Menschen. Damit AI wirklich das Niveau eines Engineers erreicht, müsste sie den Menschen direkt Fragen stellen.
    • Wenn man den Kontext aber explizit bereitstellt, wird die Qualität der LLM-Ausgabe definitiv besser.
    • In Zukunft wird AI dieses „Warum“ wohl ebenfalls verstehen, wenn der Geschäftskontext im Prompt enthalten ist.
    • Tatsächlich steckt auch im Code selbst ziemlich viel fachlicher Kontext.
      Das sieht man schon am deepwiki-Beispiel oder an diesem Codemap-Link.
      Zum Debuggen reicht diese Art von Information eigentlich schon aus.
    • Ich weiß nicht, seit wann Coding so stark auf Geschäftskontext ausgerichtet ist. Auch rein technisches Verständnis hat völlig ausreichend Wert.
  • Ich denke, dieser Ansatz ist die richtige Richtung für die Problemlösung.
    Statt halb funktionierende AI-Produkte zu bauen, ist es wichtiger, eine Codebase für Menschen und LLMs leichter verständlich zu machen.
    Solche selbstdokumentierenden Systeme könnten die Entwicklungsmüdigkeit in großen Unternehmen verringern.

    • Ich verfolge ebenfalls beide Ansätze parallel. Wenn ich eine neue Codebase verstehen will, sind Visualisierungen nützlich, aber danach zählt letztlich die Produktivität.
  • (Mitautor) Fragen sind willkommen!
    Hier ist ein 1-minütiges Demo-Video.
    Das war eine Idee von Cognition-CTO Steven. Er steht ungern im Rampenlicht, aber diesmal hat er wirklich großartige Arbeit geleistet.
    Siehe auch seinen Tweet.

    • Ich würde gern ein Beispiel sehen, ob das auch bei sehr großen Codebases gut funktioniert. Kleine Projekte gehen mit LLMs meist noch, aber komplexer Code ist der eigentliche Härtetest.
    • Ein Vorschlag: Es wäre gut, wenn man Codemaps nicht nur in der Seitenleiste, sondern auch im Hauptbereich sehen könnte. Der aktuelle Bereich ist zu schmal.
  • Ich habe vor drei Jahren mit einer ähnlichen Idee ein Side-Project gebaut.
    Das war noch vor dem LLM-Hype, also habe ich selbst einen AST-Parser gebaut, um Beziehungen in Go- und Java-Code zu extrahieren und mit Graphviz zu visualisieren.
    Ich habe außerdem regexbasierte Filter ergänzt, und das war wirklich nützlich, um sich in einer unbekannten Codebase zurechtzufinden.
    Es existiert noch unter packagemap.co, ist aber ziemlich veraltet.

    • Ich habe auch etwas Ähnliches gemacht, allerdings eine 3D-Visualisierung für die Go-Sprache.
      Das Ziel war, dass Entwickler die Codestruktur räumlich erfassen und in einer VR-Umgebung mit Kontext arbeiten können.
      Ein passender Artikel ist hier.
  • Feature-Vorschlag: Es wäre gut, wenn per Github Action automatisch eine Codemap des Repositories erzeugt, ins README eingebunden und bei wichtigen PRs automatisch aktualisiert würde.

  • Die Idee der Code-Visualisierung ist cool, birgt aber oft die Gefahr, dass man sich in „schlechten Ideen“ verfängt.
    Die meisten Diagramme vermitteln die beabsichtigte Bedeutung nicht besonders gut und kosten eher zusätzliche Interpretationszeit.
    Menschen lesen in Wirklichkeit Code oder Mathematik und bauen sich dabei ihr eigenes Visualisierungsmodell im Kopf auf.
    Wenn ich zum Beispiel eine Flutter-App visualisiert sehe, aber die Widget-Tree-Struktur nicht erkennbar ist, kollidiert das mit meinem mentalen Modell.
    Letztlich ähneln solche Visualisierungen dem inneren Bild, das beim Lesen eines Romans entsteht.
    Ich bin noch nicht überzeugt, dass LLMs wirklich die Technologie sind, die den „Code-Film, den man sehen möchte“, erzeugen kann.