Жизненный цикл
Запустить, остановить, восстановить агента и увидеть, что сервер жив: и на устройстве, и на удалённой машине.
- процессы
y83 code / контроль агента
Чем глубже агент входит в работу, тем важнее не мешать ему и при этом не терять управление. Здесь собраны слои контроля: от жизненного цикла процесса и approvals на удалённых серверах до приёмки диффа и отката релиза.
Контроль агента
Каждый слой работает без правки конфигов руками: либо тумблер в интерфейсе, либо параметр хода.
Запустить, остановить, восстановить агента и увидеть, что сервер жив: и на устройстве, и на удалённой машине.
Модель, усилие рассуждения, режим (план или работа), цель и бюджет токенов выбираются до старта.
Остановить ход, передать уточнение на полуслове, поставить сообщение в очередь и поднять его приоритет.
Бюджет токенов, лимит вывода инструмента, отключённые инструменты, политики разрешений и песочница.
Что агент делает сейчас, сколько это стоит и заняло, что изменилось и что требует решения человека.
Изменяющие команды на удалённых серверах проходят через approvals: точная команда, purpose, привязка к треду и TTL. Read-only команды выполняются сразу, а grant на сервер живёт десять минут и снимается вручную.
Дифф, история ходов, git, фоновые процессы и отдельное действие «принять» — результат не становится релизом сам.
Контроль агента
Наблюдение сделано так, чтобы не читать ленту целиком: состояние хода и цена видны на одном экране.
Этап, таймер и план хода: видно, что агент делает и что собирается делать дальше.
Token bar показывает расход хода относительно заданного лимита — до того, как он исчерпан. Цена хода считается в долларах, включая ступени контекста и ставки чтения и записи кэша.
Лейн кэша привязан к треду (prompt_cache_key = client_metadata.thread_id), поэтому родитель и сабагенты не вытесняют префиксы друг у друга: на живых ходах чтение из кэша — 99,2 % входа. Экран Cache watch показывает режим сброса, пороги сторожа и счётчики ротаций, а сам сторож лечит залипшую сессию авто-ротацией и не шумит, когда ротации нет.
После четырёх минут тишины сторож сверяет ход с сервером лёгким запросом списка ходов, не прерывая ни долгие команды, ни ожидание плана или вопроса. Если ход на сервере потерян, диалог переходит в блокировку: очередь и новые сообщения не уходят, пока человек не нажмёт Unlock.
О завершении хода, деплоя или обновления: можно свернуть приложение и вернуться к результату.
Настройки MCP, скиллов и флагов пишутся в конфиг агента, а не в внутреннее состояние приложения: перезапуск ничего не теряет.
Контроль агента
Три вещи, которые обычно теряются между агентом, сервером и счётом: кто разрешил команду, сколько стоил ход и что вообще сейчас выполняется.
Заявка сохраняет точную команду и purpose, а приложение привязывает её к конкретному Codex-треду: в уведомлении и карточке видно имя треда, тап ведёт ровно в него. Заявки без привязки честно уходят в общий экран Approvals.
Пайпы, ;, && и read-only циклы разбираются синтаксическим анализатором и выполняются сразу. Всё остальное — запись, sudo, rm, restart, curl — уходит на подтверждение; секреты, SSH-ключи и критические операции подтверждаются отдельно.
Явное «разрешить сервер на 10 минут» ускоряет серию изменяющих команд и видно в интерфейсе как временное право, а не как навсегда выданный доступ. Отзыв не требует перезапуска.
Цена хода считается по реестру ставок, а не по нулевому cost у кастомных провайдеров. Exact, fallback, free и unknown различаются; история лежит в turn_costs, а экран «Тарифы» показывает модели без цены.
Один снимок по Codex, opencode, планировщику и сервисам: что идёт, что ждёт ответа и что упало. Недоступный источник виден как degraded, а Stop работает из уведомления и из строки.
Контроль агента
Качество описано скриптом, а не договорённостью: стадии идут подряд, и результат читается по вердикту.
Гигиена репозитория, форматирование и vet, тесты, компиляция, юнит-тесты, проверка скиллов — каждая стадия со своим временем и хвостом лога.
Красная стадия останавливает коммит. Агент не может «договориться» с проверкой: правило одинаково для него и для человека.
Через инструмент агент получает вердикт и список упавших стадий — и исправляет причину, а не перезапускает проверку вслепую.
Решение «принять» остаётся за человеком: дифф и отчёт ворот — входные данные для этого решения.
Контроль агента
Выкладка сделана обратимой: система предпочитает вернуться к рабочей версии, а не стоять наполовину обновлённой.
Сборка приложения и бэкенда запускается из того же интерфейса: агент собирает то, что сам же и написал.
Перед подменой файлов снимается копия, а на ошибку ставится откат — вплоть до возврата прежнего бинаря.
Быстрый smoke-тест и health-check: если новая версия не отвечает, откат срабатывает автоматически.
Для Codex и opencode — сверка версий, проверка после обновления и откат: неудачное обновление не оставляет систему в промежуточном состоянии.
проверяемое