← На главную

Statewright переводит AI-агентов на Rust и вырывает у них 100% успеха на SWE-bench

12.05.2026 14:24 · hackernews

AI-агенты часто бывают хрупкими: даешь модели больше чем 40 инструментов и сложную задачу, и она почти сразу застревает. Увеличивать размер модели или делать промпты длиннее — лишь временное решение. Проблема кроется в отсутствии контроля за процессом. Технология Statewright решает это, превращая хаос в строгую схему состояний. Инструмент на языке Rust работает как машина состояний, диктуя агенту, какие действия разрешены на каждом шаге. В фазе планирования доступны только инструменты для чтения, вроде «Read», «Grep» и «Glob». Переход к реализации разблокирует редактирование кода, но запрещает опасные операции, вроде удаления файлов или записи в неучтенные места. Тестирование ограничено только специфическими командами запуска тестов. Попытка вызова несанкционированного инструмента вызывает отказ системы с подсказкой, что сейчас доступно и как перейти к нужному этапу.

Это решение эффективно работает как для передовых моделей, экономя токены, так и для локальных моделей. Результаты тестов на бенчмарке SWE-bench убедительны: модели размером 13,8 и 19,9 ГБ, которые раньше проваливали все задачи, получили满分, перейдя от двух до десяти успешных решений без смены железа. Эффект ниже 13 ГБ памяти объясняется не Statewright, а недостатком оперативки у самой модели удерживать содержимое файлов. Технология блокирует так называемые «смертельные закручивания», когда модель бесконечно перечитывает файл, но не редактирует его. Также она фильтрует катастрофические ошибки, вроде утечки ключей доступа или удаления баз данных.

Интеграция происходит через MCP-клубы или плагины для редакторов вроде Claude Code, Codex и Cursor. Ядро Statewright детерминировано и не использует LLM для принятия решений внутри цикла. Оно проверяет условия перехода по предикатам, блокирует скрипты-интерпретаторы вне фазы записи и ограничивает размер изменений файлом. Разработчики могут настраивать свои рабочие процессы вручную или генерировать их с помощью агента. Система поддерживает уровни доступа от бесплатного плана для личных разработчиков до Enterprise-тиров. Лицензия ядра — Apache 2.0, что позволяет самостоятельно размещать стек в продакшене. Если правила работают слишком строго и блокируют прогресс, в системе есть кнопка сброса для деактивации ограничений.

Читать оригинал →