Beispiele für Coding Agents

Drei ausführbare Beispiel-Crates in examples/, jeder ein echter Agent (keine Mocks), der die Arbeit erledigt und dann das Ergebnis durch Ausführen des erzeugten Codes unabhängig verifiziert. Alle verwenden standardmäßig ein Gemini 3 model; legen Sie zuerst einen Schlüssel fest:

export GOOGLE_API_KEY=…          # or GEMINI_API_KEY
# or: CODING_PROVIDER=openai OPENAI_API_KEY=…

coding_agent

Das Harness in Aktion, mit vier Modi:

# Multi-language demo (Rust, Python, JavaScript) in a temp workspace:
cargo run --manifest-path examples/coding_agent/Cargo.toml

# Build a medium program over a persistent multi-turn session:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- multiturn

# Scenario tour — increasing complexity, each independently verified:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- tour

# A single task in your own directory:
cargo run --manifest-path examples/coding_agent/Cargo.toml -- ./some/dir "make tests pass"
  • demo — einmalige Aufgaben über verschiedene Sprachen hinweg (schreibt & führt rustc/python3/node aus).
  • tour — fünf Szenarien steigender Komplexität (hellomultifilefixtestdebugrefactor), jedes selbstverifiziert mit einer PASS/FAIL-Zusammenfassung.
  • multiturn — ein Agent/Runner/Session entwickelt eine Python todo CLI über fünf Runden (add/list → done → rm → robuste Fehler → tests), aufbauend auf seiner eigenen vorherigen Arbeit; verifiziert durch Ausführen seiner Testsuite.

Lesen Sie es für: das CodingAgent Harness, die Plan-Handeln-Beobachten-Schleife, die Beibehaltung des Kontexts über mehrere Runden.


coding_graph

Der Ultra-Review Workflow als ein adk-graph StateGraph: implementieren → parallele Korrektheits-/Grenzfall-/Stil-Reviewer → synthetisieren (verzögertes Fan-in) → Revisionsschleife → finalisieren.

cargo run --manifest-path examples/coding_graph/Cargo.toml

Lesen Sie es für: parallele Agents in einem Super-Schritt, add_deferred_node_fn Fan-in, bedingtes zyklisches Routing. Verifiziert durch den Import der erzeugten Funktion und das Asserting der Spezifikation + Grenzfälle.


coding_goal

Autonomer /goal-Modus mit dauerhaftem Checkpointing: initialisiert ein fehlerhaftes Modul + einen fehlschlagenden Test, durchläuft Plan→Handeln→Verifizieren, bis python3 test_stats.py bestanden ist, druckt den persistenten Checkpoint, demonstriert dann Wiederaufnahme (ein abgeschlossenes Ziel ist ein No-Op).

cargo run --manifest-path examples/coding_goal/Cargo.toml

Lies es für: den verifier-gesteuerten goal loop, atomares goal-state Checkpointing und Wiederaufnahme nach Neustart.


streaming_bash

Eine Web-UI (Axum + WebSocket), die die tool activity eines LlmAgent live von einer einzelnen EventStream rendert: Streaming von bash stdout/stderr plus einmalige read_file / grep / glob Ergebnisse, jeweils als eigene Karte.

cargo run --manifest-path examples/streaming_bash/Cargo.toml      # web UI
cargo run --manifest-path examples/streaming_bash/Cargo.toml -- cli

Lies es für: ToolContext::emit_progress Streaming und die erstklassigen Event::tool_calls() / Event::tool_results() / event.tool_progress_stream() Accessoren, die es einer UI ermöglichen, die Ausgabe jedes tools generisch zu rendern. Siehe Streaming Tool Progress.


Ein vorgeschlagener Pfad

  1. coding_agent (tour) — siehe, wie das harness Aufgaben steigender Komplexität löst.
  2. coding_agent (multiturn) — beobachte, wie es ein Programm über eine Session hinweg erstellt.
  3. coding_goal — autonomer, verifier-gesteuerter, dauerhafter Zielmodus.
  4. coding_graph — parallele Ultra-Review-Orchestrierung.

Die CLI (code / goal / ultracode) verpackt diese Muster als erstklassige Befehle.

← Zurück zur Coding Agent Übersicht

Beispiele für Coding Agents - ADK-Rust Dokumentation | ADK-Rust