1 Punkte von dybala21 2026-04-18 | Noch keine Kommentare. | Auf WhatsApp teilen

LLM-Agenten melden mitunter: „Datei gelesen“ oder „Tests ausgeführt“, obwohl sie diesen Schritt tatsächlich übersprungen haben. Agent-Frameworks wie LangGraph oder Google ADK führen Ausführungen zwar zuverlässig durch, prüfen aber nicht, ob die erforderlichen Schritte wirklich durchlaufen wurden.

Bracket ist eine kleine Python-Bibliothek, die genau diese Lücke schließt. Während der Ausführung sammelt sie Belege (Dateilesen, Dateiänderungen, Befehlsausführung, LLM-Aufrufe usw.) und gleicht diese mit vorab definierten Vertragsbedingungen ab, um maschinell über pass/fail zu entscheiden. Nicht ein LLM trifft die Entscheidung, sondern in Code definierte Regeln.

Probleme, die gelöst werden

  • Erkennt Fälle, in denen ein Agent vorgibt, eine Datei geändert zu haben, ohne sie überhaupt gelesen zu haben (read-before-write)
  • Erzwingt die Einbindung von Verifizierungsschritten wie „Testlauf bestanden“ in die Pipeline
  • Speichert Ausführungslogs, sodass vergangene Ausführungen neu bewertet werden können (replay), wenn sich die Bewertungsregeln ändern
  • Vereinheitlicht die Verifizierungslogik, wenn mehrere Frameworks gemischt eingesetzt werden

Integrierte Profile

  • code_change - read-before-write, file changed, verification command erforderlich
  • research - file read, web fetch, grounding evidence
  • file_task - file changed, artifact emitted
  • text_answer - grounding evidence

Alle Profile enthalten die Bedingungen „intent resolved“ und „keine hard failures“.

Zielgruppe und Nutzen

  • Entwickler, die Agent-Pipelines in Produktion bringen müssen: Bedingungen wie „tests pass“ werden als explizite Verträge definiert, um Regressionen zu verhindern
  • Teams, die mehrere Agent-Frameworks vergleichen und evaluieren: Durch Adapter für LangChain/LangGraph/Google ADK bleiben dieselben Bewertungskriterien auch bei einem Framework-Wechsel erhalten
  • Betreiber von Eval-/Regression-Pipelines: Frühere Ausführungen lassen sich über JSON-Logs in .bracket/runs/* gesammelt neu bewerten

Installation und Beispiel pip install bracket

from bracket import Harness, ExecutionContract

contract = ExecutionContract.code_change(goal="Fix failing test")
harness = Harness(app_name="my-agent", artifact_dir=".bracket")
run = harness.start_run(contract)

run.record_file_read("app.py", byte_count=1842)
run.record_file_changed("app.py")
run.record_command("pytest tests/", exit_code=0, kind="verification")

result = harness.finish_run_sync(run, final_output="Fixed the bug.")
print(result.verdict.outcome)  # VERIFIED / BLOCKED / PARTIAL

Python 3.12+, der Kern hat keine externen Abhängigkeiten. Adapter für LangChain/LangGraph/Google ADK sind optional per extras installierbar.

Worauf Bracket bewusst verzichtet

  • Kein Ersatz für ein Agent-Framework (wird zusammen mit LangGraph usw. verwendet)
  • Keine Guardrails (keine Ein-/Ausgabefilterung, sondern Verifikation des Ausführungsprozesses)
  • Kein Observability-Tool (kein Log-Viewer, sondern ein pass/fail-Bewerter)
  • Keine Eval-Plattform (keine Bewertung der Antwortqualität, sondern Verifikation der Ausführungsintegrität)

Noch keine Kommentare.

Noch keine Kommentare.