Der KI-Coding-Assistent, der sich erinnert: Dirge im Praxischeck
Dirge: Ein KI-Coding-Agent, der nicht alles vergisst
Mal ehrlich: Die meisten KI-Coding-Agenten fühlen sich an, als müsstest du bei jeder Sitzung einen neuen Entwickler einarbeiten. Sie tauchen auf, erledigen irgendwas, und sobald das Gespräch vorbei ist, ist alles weg. Kontext, Vorlieben, Muster – alles wieder von vorn erklären. Ermüdend. Und ziemlich sinnlos.
Genau da setzt Dirge an. Dieser native Rust-Agent ist nicht einfach ein weiterer Wrapper um ein LLM. Es ist ein durchdachtes System, das Context als etwas behandelt, das es zu bewahren gilt.
Leichtgewichtig und schnell
Was sofort auffällt: der minimale Fußabdruck. Etwa 8 MB RAM im Leerlauf, ein 36 MB großes Binary, keine Runtime-Abhängigkeiten. Das war's. Electron-basierte Alternativen schlucken dagegen fröhlich Gigabytes, bevor du auch nur eine Zeile Code geschrieben hast.
Das ist kein Zufall. KI-Tools sollten keine Diven sein. Leise, effizient, einsatzbereit – nicht hungrige Biester, die deine Maschine lahmlegen, sobald du ein Terminal öffnest.
Das Terminal-First-TUI (gebaut mit ratatui und crossterm) bleibt schlank und tastaturgetrieben. Live-Token-Streaming, ein verzweigter Session-Baum für die Konversationshistorie, konfigurierbare Info-Bereiche – alles da. Genau die Oberfläche, die Entwickler wollen: schnell, informationsdicht, mausfrei.
Ein Agent, der nicht in Panik gerät
Hier wird Dirge richtig interessant. Der Agent-Loop ist nicht einfach „Prompt senden, Antwort empfangen, Tools ausführen". Er ist darauf ausgelegt, mit der Realität umzugehen.
Modelle halluzinieren Tool-Aufrufe. Sie produzieren kaputtes JSON. Sie interpretieren Pfade falsch. Standard-Agenten zerbrechen daran – sie stürzen ab, loopen unendlich oder spucken Müll aus, den du hinterher aufräumen darfst. Dirge repariert malformed Tool Calls, validiert jeden Dateischreibvorgang durch tree-sitter, bevor er auf die Disk zugreift, und hat Circuit Breaker für wiederholende Loops.
Aber das Killer-Feature? Wenn ein Modell immer wieder scheitert, gibt Dirge nicht einfach auf. Es injiziert einen Recovery-Checkpoint, schlägt vor, was das Modell vermutlich meinte (das Tool oder den Pfad), und wenn das nicht funktioniert, eskaliert es automatisch zu einem stärkeren Modell. Der Unterschied zwischen einem Agenten, der sich sinnlos gegen die Wand wirft, und einem, der die Arbeit tatsächlich erledigt.
Memory, das bleibt
Der Name „Dirge" ist treffend. Falls du's nicht kennst: Eine Totenklage ist ein Lied, das die Verstorbenen leitet – damit sie nicht den Weg verlieren. Im Kontext von KI-Agenten tut Dirge genau das mit dem Kontext deines Projekts.
Dirge implementiert ein Zwei-Ebenen-Memory-System. Die Hot-Tier hält Fakten inline bereit, wo das Modell sofort darauf zugreifen kann. Der Rest landet in einem durchsuchbaren Breadcrumb-Index. Und es gibt eine globale, projektübergreifende Ebene für deine persönlichen Vorlieben – wie du deinen Code formatierst, welche Patterns du bevorzugst, was dich nervt. Das bleibt über Sessions und Projekte hinweg erhalten.
Zwischen den Sessions extrahiert ein Post-Session-Orchestrator Learnings und kuratiert Memory und Skills. Wenn du also 20 Minuten damit verbracht hast, ein kniffliges Rust-Lifetime-Problem mit einem bestimmten Pattern zu debuggen, merkt Dirge sich das. Beim nächsten ähnlichen Problem hat es den Kontext.
Langfristige Sessions nutzen durable, inkrementell aufgefrischte Checkpoints, verankert an einer stabilen Identität. Eine komprimierte Session wiederherzustellen, recuperiert ihren Live-Zustand – keine veraltete Momentaufnahme. Falls du schon mal versucht hast, eine Woche alte Coding-Aufgabe wieder aufzunehmen und 30 Minuten damit verbracht hast, dich wieder zu orientieren, verstehst du, warum das wichtig ist.
Smart Routing und Multi-Provider-Support
Dirge sperrt dich nicht in einen einzelnen KI-Provider ein. Es unterstützt OpenAI, Anthropic, DeepSeek, Gemini, Ollama, OpenRouter und GLM – plus jeden OpenAI-kompatiblen Endpoint. OpenRouter ist der Default, was bedeutet, dass es out of the box für die meisten Nutzer funktioniert.
Aber hier wird's raffiniert: Du kannst verschiedene Tasks an verschiedene Modelle routing. Die Main Loop, Review, Escalation, Summarization und Subagent-Roles können jeweils auf unterschiedliche Modelle zeigen. Willst du ein günstiges, schnelles Modell für Routine-Änderungen nutzen, aber für komplexes Refactoring auf etwas Stärkeres eskalieren? Bei Dirge ist das eine triviale Konfiguration.
Security ohne Kompromisse
Dirge nimmt Security ernst mit einer unified Permission Engine – ein Policy Decision Point mit vier Modi, operation-based Rules und Session Allowlists. Der /why-Befehl tracet genau, welche Policy eine Entscheidung getroffen hat und warum. Keine Black Boxes.
Für die Paranoiden (und paranoid solltest du sein): Es gibt Sandbox Mode. Bash-Commands isoliert mit bubblewrap ausführen für einen Namespace-Jail, oder Hardware-isolierte libkrun MicroVMs nutzen. Defense in depth on top of the Permission Engine.
Für ernsthafte Entwicklung gebaut
Jenseits des Core Agent Loops packt Dirge Features ein, die ernsthafte Entwickler brauchen:
Der phasenbasierte Planning Workflow führt explore → plan → implement → review als kontextisolierte Phasen durch. Ein Read-Only-Agent mapped den Code, ein zweiter erstellt den Plan, dann läuft ein Write-Disabled Reviewer durch den Code und speist Lücken für einen bounded Retry zurück. Wie eine Architektur-Review, direkt in deinen Workflow eingebaut.
Der Spec-Driven Workflow trackt Änderungen als SQLite-Rows (keine fragilem Markdown-Dateien). Proposals, Requirement Deltas und Task-Checklisten mit echtem Status – die aktive Änderung wird immer in den Kontext injiziert, und Archivierung bildet ein durables Memory.
Code Intelligence kommt von tree-sitter Integration, mit Inline LSP Diagnostics für über 10 Sprachen, direkt in der Tool-Output surface, sodass der Agent Compile-Fehler in derselben Turn fixxed. Keine "probier's nochmal... Build schlägt fehl... nochmal versuchen"-Loops mehr.
Und wenn du debuggen musst? Dirge hat einen eingebauten Debug Adapter Protocol Client, der echte Debugger ansteuert – Breakpoints setzen, durch Code steppen, Stacks und Variablen inspizieren – direkt aus dem Agent Loop heraus.
Extensible by Design
Das Janet Plugin-System hakt den full Lifecycle ein: Tools intercepten, Prompts umschreiben, Commands registrieren. Es gibt auch Claude-kompatible Skills, die on demand geladen werden. Und MCP/ACP Support bedeutet, dass Dirge sowohl Tool-Provider als auch Consumer sein kann – du könntest zum Beispiel Claude Code haben, das Implementierungs-Tasks an Dirge delegiert und sie reviewt.
Fazit
Dirge versucht nicht, das schillerndste KI-Coding-Tool zu sein. Es versucht, das zuverlässigste zu sein. Die Memory-Persistenz, die Error Recovery, die token-effiziente I/O (Dateien werden wenn möglich als Skeletons gelesen, überdimensionierte Outputs werden mit Summaries auf Disk relayed), die Multi-Provider-Flexibilität – das alles summiert sich zu einem Agenten, der tatsächlich mit dir über die Zeit zusammenarbeitet, statt bei jeder Session wieder bei Null anzufangen.
Für Entwickler, die es leid sind, immer wieder von vorn anzufangen. Für Startups, die konsistente KI-Unterstützung ohne Vendor Lock-in brauchen. Und für alle, die schon mal von einer KI genervt wurden, die alles Wichtige vergessen hat – Dirge ist einen Blick wert.
Installieren in einer Zeile von crates.io (cargo install dirge-agent), API Key setzen, und loscoden. So einfach geht's.
Die Totenklage war ein Lied, um der Toten zu gedenken. Dirge, der Coding-Agent, ist ein System, das sicherstellt, dass deine KI nie vergisst, was ihr zusammen aufgebaut habt.