Андрей Карпати сформулировал четыре поведенческих правила против типичных ошибок LLM-агента при написании кода:
Думать, прежде чем писать код. Простота прежде всего. Хирургическая правка. Выполнение через цель — до проверяемого критерия.
Диагноз точный. Но все четыре правила адресованы тому же процессу, который пишет код: ему же предлагается следить за собой. В «Форме» это как раз запрещено первым пунктом: узел не проверяет сам себя.
Одна забота — один узел
Протокол не заменяет эти правила. Он берёт те же четыре заботы и поручает каждую отдельному узлу, у которого перед глазами чужой результат:
| Правило | Узел | Как |
|---|---|---|
| Простота прежде всего | Spec | исполнитель получает уже нарезанную форму, а не ограничивает себя сам |
| Думать, прежде чем писать | Kit | думает тот, кто снаряжает исполнителя заранее: роль, умение, инструмент, доступ, данные, модель |
| Хирургическая правка | Run | делает по признаку, а работа сверх заданного — такой же отказ, как недоделанная |
| Цель и проверка до конца | Intent | держит образ и сверяет чужой результат, а не свой |
Пятой строки у Карпати нет. Core читает тренд по кругам и балансирует нагрузку всей цепи.
Кем проверено?
Правило «loop until verified» не говорит, кем проверено. В одном агенте «verified» неизбежно значит «я сам решил, что дошёл». В «Форме» проверяет узел, который не исполнял.
Не только роли, но и инструменты
У каждого узла свой, буквально прописанный набор инструментов. У Spec и Core нет ни Bash, ни MCP — только чтение и запись файлов. Инструмент, который меняет продукт, получает только Run, и только на время своей задачи. Правило «не трогай лишнее» здесь держится не решением агента, а тем, что у трёх узлов из пяти физически нет средства его нарушить.




Комментарии