Проблемът с кода
Днес почти всеки AI agent framework изисква да пишеш код. Python, TypeScript или нещо друго: дефинираш поведението императивно. Това означава:
- Трудно за review. Не можеш да погледнеш Python script от 200 реда и веднага да разбереш какво прави agent-ът.
- Трудно за споделяне. Споделянето на agent често означава dependency tree, virtualenv и надежда.
- Не е наистина преносимо. Кодът е вързан за runtime. LangChain agent не работи еднакво в browser или на телефон.
- Трудно за audit. Diff между две версии не показва ясно как се е променило поведението на agent-а.
Защо TOML
TOML файлът е декларация за намерение. Казва какво трябва да направи agent-ът, не как. За как се грижи framework-ът.
# Това е пълен 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
Какво получаваш
- Лесно за преглед: Отвори файла. Прочети го. Знаеш точно какво прави agent-ът.
- Споделимо: Прикачи TOML към Slack съобщение. Това е всичко.
- Преносимо: Същият config работи в CLI, dashboard, VS Code, iOS и Android.
- Лесно за одит:
git diffпоказва точно какво се е променило в поведението на agent-а. - Версионирано: Config-и живеят в git до твоя код. Rollback е тривиален.
Компромисът
Config-driven подходът означава, че не можеш да изразиш произволна логика. Ако ти трябва custom routing алгоритъм или bespoke tool, трябва да напишеш Rust код и да го включиш във framework-а. Config системата покрива 90% от случаите на употреба. Rust API покрива останалото.
Това е умишлено. Config е продуктът. Кодът е платформата.