33 Punkte von GN⁺ 2026-03-18 | 2 Kommentare | Auf WhatsApp teilen
  • Interne Coding-Agenten, die von führenden Engineering-Organisationen wie Stripe, Ramp und Coinbase unabhängig aufgebaut wurden, konvergieren auf ähnliche Architekturpatterns; Open SWE ist das Open-Source-Framework, das diese umsetzt
  • Aufbauend auf Deep Agents und LangGraph bietet es Kernkomponenten wie isolierte Cloud-Sandboxes, kuratierte Toolsets, Subagent-Orchestrierung und die Integration in Entwickler-Workflows
  • Es wird per Komposition aufgebaut, ohne bestehende Agenten zu forken, sodass Upgrades des zugrunde liegenden Frameworks und organisationsspezifische Anpassungen gleichzeitig erhalten bleiben
  • Alle zentralen Komponenten sind austauschbar als Plug-ins: Sandbox-Anbieter, Modelle, Tools, Trigger, System-Prompts, Middleware usw.
  • Für Teams, die den Einsatz interner Coding-Agenten prüfen, bietet es einen auf produktionsbewährten Patterns basierenden Ausgangspunkt unter MIT-Lizenz

Gemeinsame Patterns aus produktiven Deployments

  • Coding-Agenten wie Stripes Minions, Ramps Inspect und Coinbases Cloudbot wurden zwar unabhängig entwickelt, konvergierten aber auf ähnliche architektonische Entscheidungen
  • Isolierte Ausführungsumgebungen: Jede Aufgabe läuft in einer dedizierten Cloud-Sandbox mit vollständigen Rechten innerhalb klarer Grenzen. So wird der Wirkungsbereich von Fehlern auf Produktionssysteme isoliert, während Befehle ohne Freigabe-Prompt für jede einzelne Aktion ausgeführt werden können
  • Kuratierte Toolsets: Laut dem Stripe-Engineering-Team hat der Agent Zugriff auf rund 500 Tools; diese sind jedoch nicht über die Zeit einfach angesammelt worden, sondern wurden sorgfältig ausgewählt und gepflegt. Wichtiger als die Anzahl der Tools ist die Kuratierung
  • Slack-first-Aufruf: Alle drei Systeme integrieren Slack als primäre Oberfläche, sodass Entwickler ohne Kontextwechsel in eine neue Anwendung innerhalb ihrer bestehenden Kommunikations-Workflows darauf zugreifen können
  • Reicher Kontext beim Start: Vollständiger Kontext aus Linear-Issues, Slack-Threads und GitHub-PRs wird vor Start der Arbeit eingebracht, wodurch der Overhead für die Anforderungsermittlung per Tool-Aufruf sinkt
  • Subagent-Orchestrierung: Komplexe Aufgaben werden zerlegt und an spezialisierte Child-Agenten delegiert, die jeweils isolierten Kontext und einen fokussierten Verantwortungsbereich haben

Open-SWE-Architektur

  • 1. Agent Harness: auf Komposition mit Deep Agents basierend

    • Statt bestehende Agenten zu forken oder von Grund auf neu zu bauen, setzt der Ansatz auf Komposition auf dem Deep-Agents-Framework. Das ähnelt dem Ansatz des Ramp-Teams, Inspect auf OpenCode aufzubauen
    • Zwei Vorteile der Komposition:
      • Upgrade-Pfad: Wenn Deep Agents verbessert wird – etwa bei Kontextmanagement, effizienterer Planung oder optimierter Token-Nutzung – lassen sich diese Verbesserungen übernehmen, ohne die Anpassungen neu aufzubauen
      • Anpassung ohne Fork: Organisationsspezifische Tools, Prompts und Workflows können als Konfiguration erhalten bleiben, statt die Kernlogik des Agenten zu verändern
    • Von Deep Agents bereitgestellte Infrastruktur: integrierte Planung über write_todos, dateibasiertes Kontextmanagement, natives Spawnen von Subagenten über das Tool task sowie Middleware-Hooks für deterministische Orchestrierung
  • 2. Sandbox: isolierte Cloud-Umgebung

    • Jede Aufgabe läuft in ihrer eigenen isolierten Cloud-Sandbox, einer entfernten Linux-Umgebung mit vollem Shell-Zugriff
    • Das Repository wird geklont und dem Agenten werden volle Rechte gegeben; Fehler bleiben auf diese Umgebung beschränkt
    • Standardmäßig unterstützte Sandbox-Anbieter: Modal, Daytona, Runloop, LangSmith. Ein eigenes Sandbox-Backend kann ebenfalls implementiert werden
    • Zentrale Funktionen:
      • Pro Gesprächsthread wird eine persistente Sandbox zugewiesen, die in Folgemeldungen wiederverwendet wird
      • Wenn eine Sandbox nicht mehr erreichbar ist, wird sie automatisch neu erzeugt
      • Mehrere Aufgaben laufen parallel, jeweils in ihrer eigenen Sandbox
  • 3. Tools: Kuratierung statt Anhäufung

    • Open SWE bietet ein fokussiertes Toolset zusammen mit den eingebauten Deep-Agents-Tools (read_file, write_file, edit_file, ls, glob, grep, write_todos, task)
    • Ein kleines, kuratiertes Toolset ist einfacher zu testen, zu warten und für Inferenz zu nutzen. Zusätzliche organisationsinterne Tools – interne APIs, benutzerdefinierte Deployment-Systeme, spezialisierte Test-Frameworks – können explizit ergänzt werden
  • 4. Context Engineering: AGENTS.md + Source Context

    • Kontext wird aus zwei Quellen gesammelt:
      • Datei AGENTS.md: Liegt sie im Root des Repositorys, wird sie aus der Sandbox gelesen und in den System-Prompt injiziert. Darin lassen sich Konventionen, Testanforderungen, Architekturentscheidungen und teamspezifische Patterns kodieren
      • Source Context: Ein vollständiges Linear-Issue (Titel, Beschreibung, Kommentare) oder die Historie eines Slack-Threads wird kombiniert und vor dem Start des Agenten übergeben, um aufgabenspezifischen Kontext ohne zusätzliche Tool-Aufrufe bereitzustellen
    • Ein zweischichtiger Ansatz, der Wissen über das gesamte Repository mit aufgabenspezifischen Informationen ausgewogen verbindet
  • 5. Orchestrierung: Subagenten + Middleware

    • Es werden zwei Mechanismen kombiniert:
      • Subagenten: Über das Tool task werden Child-Agenten gespawnt. Der Hauptagent delegiert unabhängige Teilaufgaben an isolierte Subagenten mit eigenem Middleware-Stack, eigener Todo-Liste und eigenen Dateioperationen
      • Middleware: deterministische Hooks, die um den Agent-Loop herum ausgeführt werden
        • check_message_queue_before_model: Injiziert Folgemeldungen, die während der Ausführung des Agenten eintreffen (Linear-Kommentare, Slack-Nachrichten), vor dem nächsten Modellaufruf. So kann der Nutzer zusätzliche Eingaben machen, während der Agent arbeitet
        • open_pr_if_needed: Sicherheitsnetz, das automatisch Commits erstellt und einen PR erzeugt, wenn der Agent das Öffnen eines PR nicht selbst abschließt
        • ToolErrorMiddleware: fängt Tool-Fehler sauber ab und verarbeitet sie
    • Durch die Trennung zwischen agentischer (modellgetriebener) und deterministischer (middlewaregesteuerter) Orchestrierung wird ein Gleichgewicht zwischen Zuverlässigkeit und Flexibilität erreicht
  • 6. Aufruf: Slack, Linear, GitHub

    • Slack: Bot-Erwähnung in einem Thread. Mit der Syntax repo:owner/name wird das zu bearbeitende Repository angegeben. Der Agent antwortet im Thread mit Status-Updates und PR-Links
    • Linear: Kommentar mit @openswe in einem Issue. Der Agent liest den vollständigen Issue-Kontext, bestätigt mit 👀 und veröffentlicht das Ergebnis als Kommentar
    • GitHub: In Kommentaren zu vom Agenten erstellten PRs wird Feedback zur Review mit @openswe verarbeitet und Korrekturen auf denselben Branch gepusht
    • Jeder Aufruf erzeugt eine deterministische Thread-ID, sodass Folgemeldungen zum selben Issue oder Thread an denselben laufenden Agenten geroutet werden
  • 7. Validierung: promptbasiert + Sicherheitsnetz

    • Der Agent wird angewiesen, vor dem Commit Linter, Formatter und Tests auszuführen
    • Die Middleware open_pr_if_needed fungiert als Backstop: Beendet der Agent seine Arbeit ohne einen PR zu öffnen, übernimmt die Middleware dies automatisch
    • Deterministische CI-Checks, visuelle Validierung und Review-Gates lassen sich über zusätzliche Middleware erweitern

Warum Deep Agents verwenden

  • Kontextmanagement: Die große Menge an Zwischendaten, die langlaufende Coding-Aufgaben erzeugen – Dateiinhalte, Befehlsausgaben, Suchergebnisse –, wird in dateibasierte Speicher ausgelagert, statt alles im Gesprächsverlauf zu halten. Das ist in großen Codebasen wirksam, um Kontextüberlauf zu verhindern
  • Planungsbaustein: Mit dem eingebauten Tool write_todos lassen sich komplexe Aufgaben strukturiert zerlegen, Fortschritt verfolgen und Pläne an neue Informationen anpassen. Besonders nützlich für mehrstufige Aufgaben über längere Zeiträume
  • Subagent-Isolation: Wenn der Hauptagent über das Tool task Child-Agenten spawnt, erhalten diese isolierten Kontext. Die Gesprächsverläufe verschiedener Teilaufgaben vermischen sich nicht, was bei komplexen Aufgaben klareres Reasoning ermöglicht
  • Middleware-Hooks: An bestimmten Stellen des Agent-Loops lässt sich deterministische Logik injizieren. Das wird für zuverlässig auszuführende Abläufe wie Message Injection und automatische PR-Erstellung genutzt
  • Upgrade-Pfad: Da Deep Agents als eigenständige Bibliothek aktiv weiterentwickelt wird, können Verbesserungen bei Kontextkompression, Prompt-Caching, Planungseffizienz und Subagent-Orchestrierung in Open SWE übernommen werden, ohne Anpassungen neu aufzubauen

Organisationsspezifische Anpassung

  • Open SWE ist nicht als fertiges Produkt gedacht, sondern als anpassbare Grundlage. Alle wichtigen Komponenten sind als Plug-ins austauschbar:
    • Sandbox-Anbieter: Wechsel zwischen Modal, Daytona, Runloop, LangSmith. Ein eigenes Sandbox-Backend passend zu internen Infrastrukturanforderungen kann implementiert werden
    • Modelle: Alle LLM-Anbieter können verwendet werden. Standard ist Claude Opus 4, und je Subtask können unterschiedliche Modelle konfiguriert werden
    • Tools: Tools für interne APIs, Deployment-Systeme, Test-Frameworks und Monitoring-Plattformen lassen sich ergänzen. Nicht benötigte Tools können entfernt werden
    • Trigger: Die Integrationslogik für Slack, Linear und GitHub kann angepasst werden. Neue Trigger-Oberflächen wie E-Mail, Webhooks oder Custom UI lassen sich hinzufügen
    • System-Prompt: Der Standard-Prompt und die Logik zur Einbindung von AGENTS.md lassen sich anpassen. Organisationsspezifische Richtlinien, Einschränkungen und Konventionen können ergänzt werden
    • Middleware: Eigene Middleware-Hooks für Validierung, Freigabe-Gates, Logging und Sicherheitsprüfungen können hinzugefügt werden

Vergleich mit internen Implementierungen

  • Im Vergleich mit den internen Systemen von Stripe, Ramp und Coinbase auf Basis öffentlich verfügbarer Informationen sind die Kernpatterns ähnlich
  • Unterschiede liegen in Implementierungsdetails, internen Integrationen und organisationsspezifischen Tools – genau die Art von Unterschieden, die bei der Anpassung eines Frameworks an andere Umgebungen zu erwarten ist

Erste Schritte

  • Open SWE ist unter MIT-Lizenz auf GitHub verfügbar: https://github.com/langchain-ai/open-swe
  • Der Installation Guide beschreibt das Erstellen einer GitHub App, die Einrichtung von LangSmith, Linear/Slack/GitHub-Trigger sowie das produktive Deployment
  • Der Customization Guide erklärt, wie sich Sandbox, Modelle, Tools, Trigger, System-Prompt und Middleware austauschen lassen
  • Forks, Anpassungen und internes Deployment sind alle möglich

2 Kommentare

 
sea715 2026-03-18

Die Gedanken der Leute ähneln sich wohl alle ziemlich ... das ist wirklich ein echtes Zeitalter der streitenden Reiche.

 
xguru 2026-03-18

Jetzt bauen offenbar alle interne Coding-Agenten, also hat man gleich ein Framework dafür gemacht. Alle sind wirklich schnell.

Man muss das nicht unbedingt nutzen; es dürfte aber trotzdem sinnvoll sein, sich die Muster anzusehen, an denen sich intern verschiedene Unternehmen orientiert haben.