Das Problem mit Code
Heute verlangt fast jedes AI agent Framework, dass du Code schreibst. Python, TypeScript oder etwas anderes: Du definierst Verhalten imperativ. Das bedeutet:
- Schwer zu reviewen. Du kannst kein 200-Zeilen-Python-Script überfliegen und sofort wissen, was der agent tut.
- Schwer zu teilen. Einen agent zu teilen bedeutet oft dependency tree, virtualenv und Hoffnung.
- Nicht wirklich portabel. Code ist an eine runtime gebunden. Ein LangChain agent läuft nicht gleich im Browser oder auf dem Telefon.
- Schwer zu auditieren. Ein Diff zwischen zwei Versionen zeigt nicht klar, wie sich das Verhalten des agents geändert hat.
Warum TOML
Eine TOML-Datei ist eine Absichtserklärung. Sie sagt was der agent tun soll, nicht wie. Um das Wie kümmert sich das Framework.
# Das ist ein vollständiger agent [agent] provider = "anthropic" model = "claude-sonnet-4-5-20250929" tools = ["shell", "knowledge_ingest", "knowledge_query"] [agent.execution] max_steps = 30 [[middleware]] type = "limits" max_turns = 15
Was du bekommst
- Reviewbar: Öffne die Datei. Lies sie. Du weißt genau, was der agent tut.
- Teilbar: Haenge die TOML an eine Slack-Nachricht. Das ist alles.
- Portabel: Dieselbe config läuft in CLI, dashboard, VS Code, iOS und Android.
- Auditierbar:
git diffzeigt genau, was sich am Verhalten des agents geändert hat. - Versionierbar: Configs leben in git neben deinem Code. Rollback ist trivial.
Der Tradeoff
Config-driven bedeutet, dass du keine beliebige Logik ausdrücken kannst. Wenn du einen custom routing algorithmus oder ein bespoke tool brauchst, musst du Rust-Code schreiben und ihn ins Framework einbinden. Das config system deckt 90% der Use Cases ab. Die Rust API deckt den Rest ab.
Das ist Absicht. Config ist das Produkt. Code ist die Plattform.