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/nodeaus). - tour — fünf Szenarien steigender Komplexität (
hello→multifile→fixtest→debug→refactor), jedes selbstverifiziert mit einer PASS/FAIL-Zusammenfassung. - multiturn — ein Agent/Runner/Session entwickelt eine Python
todoCLI ü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
coding_agent(tour) — siehe, wie das harness Aufgaben steigender Komplexität löst.coding_agent(multiturn) — beobachte, wie es ein Programm über eine Session hinweg erstellt.coding_goal— autonomer, verifier-gesteuerter, dauerhafter Zielmodus.coding_graph— parallele Ultra-Review-Orchestrierung.
Die CLI (code / goal / ultracode) verpackt diese Muster als erstklassige Befehle.
← Zurück zur Coding Agent Übersicht