Zum Hauptinhalt springen

Ein Blick in Grok Build: Ein offenes Agenten-Harness lesen

Experte

Am 14.–16. Juli 2026 veröffentlichte xAI Grok Build — den Coding-Agenten hinter seiner CLI — als öffentliches Apache-2.0-Repository unter xai-org/grok-build. Nicht die Gewichte. Das Harness: die Agentenschleife, die Werkzeugimplementierungen, die Terminal-UI, das Erweiterungssystem. Es landete innerhalb von Stunden auf der Startseite von Hacker News.

Das ist ein seltenes Artefakt. Fast jeder ernsthafte Coding-Agent — Claude Code, Cursor, Codex — wird als Binärdatei oder Bundle ausgeliefert. Hier liegen rund 800.000 Zeilen produktiven Rust-Codes in einem Repo, das du lesen kannst. Das ist mehr wert als Lehrbuch denn als Produkt.

Diese Seite ist die praktische Lektüre: was tatsächlich drin ist, was die Struktur über den Bau von Agenten lehrt und zwei Dinge zu dieser Veröffentlichung, die die meiste Berichterstattung verkehrt herum verstanden hat.

What you'll learn
  • Verstehen, was veröffentlicht wurde und was nicht — Harness ja, Gewichte nein, Entwicklungshistorie nein
  • Die Crate-Karte als Checkliste dessen lesen, was ein produktiver Coding-Agent tatsächlich braucht
  • Lernen, warum Apache 2.0 hier quelloffen-verfügbar bedeutet, nicht offen-entwickelt — und warum diese Unterscheidung tragend ist
  • Den Datensammler-Code sehen, der noch im veröffentlichten Baum vorhanden ist, und was seine Konstanten über den Exfiltrations-Vorfall im Juli bestätigen
  • Wissen, was aus diesem Repo wirklich wiederverwendbar ist und was eine Sackgasse ist

Was tatsächlich veröffentlicht wurde

Das Repository besteht zu über 99 % aus Rust, ist unter Apache 2.0 lizenziert und bezeichnet sich selbst als Coding-Agenten-Harness und TUI — Vollbild, mausinteraktiv, erweiterbar. Es baut unter macOS und Linux mit einer festgelegten Rust-Toolchain.

Drei Dinge ist es nicht:

  • Nicht das Modell. Die Gewichte von Grok 4.5 sind nicht hier und nicht offen. Das Harness spricht mit einem gehosteten Endpunkt. Du kannst jede Zeile davon lesen, wie der Agent über deine Codebasis nachdenkt, und ihn trotzdem ohne xAIs API nicht ausführen.
  • Keine Entwicklungshistorie. Das Repo hat zwei Commits: Publish harness and TUI open-source, dann Synced from monorepo. Es gibt eine SOURCE_REV-Datei im Wurzelverzeichnis, die einen einzigen internen Revisions-Hash enthält. Das ist ein Export eines privaten Monorepos, periodisch neu synchronisiert — kein Repository, das öffentlich entwickelt wurde, und keines, das du auf Designentscheidungen hin archäologisch untersuchen kannst.
  • Nicht offen für dich. CONTRIBUTING.md stellt unmissverständlich fest, dass das Repository keine externen Pull Requests oder unaufgeforderten Patches annimmt, dass xAI die Software intern entwickelt und dass der Baum "zur Quelltransparenz und für lokale Builds" veröffentlicht wird. GitHub-Issues sind auf Repo-Ebene deaktiviert.

Die entscheidende Unterscheidung: Apache 2.0 ist eine Lizenz und gewährt dir echte Rechte — lesen, forken, modifizieren, Derivate ausliefern. Sie sagt nichts über Governance. Grok Build ist quelloffen-verfügbar unter einer Open-Source-Lizenz mit einem geschlossenen Entwicklungsmodell. Du darfst es forken; du darfst es nicht beeinflussen. Lies "Open Source" in den Schlagzeilen als "du kannst den Quellcode lesen", denn genau und nur das wird angeboten.

Die Crate-Karte ist die eigentliche Lektion

Ignoriere das Marketing. Die Verzeichnisauflistung unter crates/codegen/ ist das Nützlichste im Repo, weil sie ein ehrliches Inventar dessen ist, was ein auslieferungsreifer Coding-Agent braucht. Eine Auswahl:

CrateWas es dir verrät
xai-grok-agent, xai-grok-shellDie Agentenlaufzeit und ihre Einstiegspunkte — interaktiv, stdio, headless
xai-grok-tools, xai-grok-tools-apiWerkzeugimplementierungen, getrennt vom Werkzeug-Interface — eine echte Grenze
xai-grok-workspace, xai-fast-worktreeDateisystem, Versionskontrolle, Ausführung, Checkpoints — und schnelle Git-Worktrees
xai-codebase-graphStrukturelles Verständnis eines Repos, nicht nur grep
xai-grok-memoryGedächtnis ist ein Subsystem, kein Prompt-Trick
xai-grok-mcpMCP ist eine erstklassige Integrationsfläche
xai-grok-hooks, xai-hooks-plugins-typesHooks und Plugins haben ihre eigene Typschicht
xai-grok-subagent-resolutionAufzulösen, welcher Subagent was übernimmt, ist schwer genug, um eine eigene Crate zu brauchen
xai-token-estimationToken zählen, bevor du sie ausgibst
xai-hunk-trackerDiff-Hunks über eine Editing-Sitzung hinweg verfolgen
xai-grok-pager, xai-ratatui-inlineDie TUI — Scrollback, Prompts, Modale, Inline-Rendering
xai-acp-libAgent Client Protocol — Editoren betten den Agenten ein
xai-grok-telemetry, xai-mixpanelTelemetrie und Produktanalyse als erstklassige Crates
ptyctl, xai-tty-utils, xai-grok-crash-handlerTerminals sind feindselig und Prozesse stürzen ab

Lies diese Liste noch einmal als Bauplan. Das naive mentale Modell eines Coding-Agenten ist "eine Schleife, die ein Modell aufruft und Werkzeuge ausführt". Die tatsächliche Zerlegung umfasst einen Codebasis-Graphen, ein Gedächtnis-Subsystem, Checkpointing, Worktree-Verwaltung, Hunk-Tracking, Subagenten-Auflösung, Token-Schätzung, Crash-Handling und eine PTY-Steuerungsschicht — bevor du einen einzigen Prompt schreibst.

Der Maßstabscheck. Simon Willison zählte 844.530 Zeilen Rust im Baum, nur ~3 % davon eingebundene Abhängigkeiten, und merkte an, dass OpenAIs Codex bei etwa 950.933 Zeilen liegt. Zwei unabhängige Teams, die sich nahe an einer Million Zeilen annähern, für "eine Schleife um ein LLM". Wenn sich dein Agentenprojekt anfühlt, als würde es aus dem Ruder laufen, ist das die Kalibrierung: es liegt nicht an dir, und der schwere Teil war nie die Schleife.

Es gibt auch eine xai-grok-mermaid-Crate — einen Terminal-Renderer, der Mermaid-Diagramme mit Unicode-Rahmenzeichen zeichnet. Sie ist nicht wichtig. Sie ist eine nette Erinnerung daran, dass Auslieferungspolitur ein großer Bruchteil jedes echten Agenten ist.

Der Datensammler-Code ist noch im Baum

Hier hört das Repo auf, ein Lehrbuch zu sein, und wird zu Beweismaterial.

Im Juli 2026 zeigte die Netzwerkaufzeichnung eines Forschers, dass Grok Build ganze Repositories hochlud — die vollständige Git-Historie, nie gelesene Dateien, .env-Inhalte — in einen Google-Cloud-Storage-Bucket, über einen Kanal, der nichts mit dem zu tun hatte, was das Modell las. AILmanac behandelt diesen Vorfall und den allgemeinen Fehlermodus in Was dein Agent hochlädt. xAI deaktivierte das Verhalten serverseitig und sagte, die aufbewahrten Daten würden gelöscht.

Der veröffentlichte Quellcode enthält diese Maschinerie. Direkt aus dem Repo verifizierbar:

  • crates/codegen/xai-grok-shell/src/upload/gcs.rs existiert.
  • crates/codegen/xai-file-utils/src/upload_config.rs definiert DEDUP_GCS_PREFIX = "repo_changes_dedup".

Diese Konstante ist die interessante. Der abgefangene Upload des Forschers ging an Objektpfade der Form gs://grok-code-session-traces/repo_changes_dedup/v2/…. Das im Netzwerkverkehr erfasste Pfadpräfix ist eine benannte Konstante in xAIs eigenem veröffentlichtem Quellcode. Dieselbe Datei definiert sowohl ARCHIVE_SCHEMA_VERSION (v2) als auch ARCHIVE_SCHEMA_VERSION_V3 — was bedeutet, dass das Archivformat auf eine dritte Version weiterentwickelt worden war. Das war gewartete Infrastruktur, kein verirrter Debug-Pfad.

Die Moduldokumentation in gcs.rs ist deutlicher als jede Presseerklärung. Sie bezeichnet die Upload-Helfer als "die Datensammler-Helfer", und der ganze Existenzgrund der Datei ist ein technischer Fix: Refresh-fähige Anmeldedaten so durchzureichen, dass veraltete Token keine POST /v1/storage-401er mehr verursachen. Jemand debuggte die Zuverlässigkeit des Repository-Upload-Pfads als Produktionsarbeit.

Simon Willison berichtet, dass der Upload-Pfad im veröffentlichten Baum jetzt deaktiviert ist und einen fest codierten Fehler zurückgibt. Das ist konsistent mit xAIs erklärter Position, und wir konnten den konkreten Mechanismus per Codesuche nicht unabhängig bestätigen — behandle es als berichtet, nicht als hier verifiziert.

Was man daraus mitnehmen sollte. Nicht "xAI ist einzigartig schlecht" — die weitergehende Lektion von der Sicherheitsseite gilt: Diese Art von Kanal existiert in irgendeiner Form in vielen Agenten, und den Quellcode zu lesen ist die einzige Möglichkeit, es zu wissen. Nimm stattdessen den Meta-Punkt mit: genau dafür ist Quelltransparenz da. Du kannst die Datenflüsse einer Binärdatei nicht an einem Nachmittag prüfen. Du kannst einen veröffentlichten Baum in etwa zehn Sekunden nach bucket_url durchsuchen. Die Veröffentlichung ist genau deshalb wirklich wertvoll, weil sie die unbequemen Teile durchsuchbar macht.

Check yourself

0/4
  1. xai-org/grok-build ist unter Apache 2.0 lizenziert. Was sagt dir das über das Beitragen eines Fixes stromaufwärts?
  2. Das Repo hat zwei Commits und eine SOURCE_REV-Datei im Wurzelverzeichnis mit einem Hash. Was bedeutet das?
  3. Wie groß ist das Grok-Build-Harness ungefähr, und was ist die vergleichbare Zahl für OpenAIs Codex?
  4. Was bestätigt die DEDUP_GCS_PREFIX-Konstante in upload_config.rs?

Was tatsächlich wiederverwendbar ist

Sei ehrlich über die Einschränkungen, bevor du forkst:

Guided walkthrough1 of 4
  1. Die Crate-Grenzen sind das Ergebnis eines gut finanzierten Teams, das an echte Nutzer ausliefert. Diese Zerlegung — tools getrennt von tools-api, workspace von agent, Subagenten-Auflösung als eigenes Anliegen — ist der übertragbare Wert. Rust daraus zu kopieren bringt dir weit weniger als die Form zu kopieren.

Wenn du den Baum erkunden willst, ohne ihn zu bauen:

Klonen und die Crate-Struktur kartieren

git clone --depth 1 https://github.com/xai-org/grok-build
cd grok-build

# The inventory of what a production coding agent needs
ls crates/codegen/

# Where does data leave the machine? Start here, not with the README.
grep -rn "bucket_url\|/v1/storage\|upload_bytes" crates/ --include=*.rs | head -30

# Which internal revision was this cut from?
cat SOURCE_REV

Wo es neben dem steht, was du kennst

Wenn du Claude Code steuerst, ist Grok Build dieselbe Kategorie von Werkzeug mit offengelegtem Innenleben — lies es als zweite Meinung zu Problemen, die du bereits hast. Coding-Agenten-CLIs im Vergleich stellt es dem Feld gegenüber, und Grok für Claude-Nutzer behandelt das xAI-Ökosystem drumherum.

Für die Architekturideen, auf die die Crate-Karte hindeutet, siehe langlaufende Agenten-Harnesses und Agenten-Gedächtnisarchitekturenxai-grok-memory und xai-grok-subagent-resolution sind die Antworten eines Teams auf genau diese Probleme.

Und lies Was dein Agent hochlädt neben dieser Seite. Jene zeigt dir, wie man einen solchen Kanal im Netzwerkverkehr mit mitmproxy und einem Köder-Repo abfängt. Diese zeigt dir, wie es im Quellcode aussieht. Die beiden Techniken zusammen sind die ganze Prüfung.

Quellen & weiterführende Literatur