Сервис развивается: тестируем формат, собираем идеи, улучшаем сервис. Есть идеи?

Написать
Войти
Дайджесты
Иллюстрация к статье об агентной инженерии

Эра агентной инженерии: почему «vibe coding» не масштабируется

Переход от спонтанного написания промптов к системному проектированию окружения ИИ-моделей становится главным вектором развития разработки в 2026 году. Анализ нового 50-страничного руководства Google показывает, как концепция «модель плюс обвязка» меняет экономику токенов и перераспределяет роли инженеров.

Эра агентной инженерии: почему «vibe coding» не масштабируется

Разработка ПО меняется: написание кода стремительно автоматизируется ИИ. Однако те, кто ожидал десятикратного роста эффективности бизнеса, столкнулись с реальностью: скорость выпуска продуктов упирается в прежние ограничения. Секрет кроется в жизненном цикле разработки ПО — SDLC (Software Development Lifecycle). Это полный путь от сбора требований (спецификации) и проектирования архитектуры до написания кода, тестирования, ревью, деплоя (развертывания) и поддержки. ИИ сжал только написание кода, но не отменил интеллектуальную работу до и после него. В результате команды получают лавину сгенерированного кода, которая разбивается о медленные ручные проверки. Для преодоления этого разрыва индустрия переходит к строгой агентной инженерии.

Спектр автоматизации: от хаоса к инженерной дисциплине

В руководстве Google «The New SDLC With Vibe Coding» (авторы: Адди Османи, Шубхам Сабу, Сократис Картакис) на Kaggle эволюция ИИ-разработки представлена как спектр из трех этапов:

ПараметрVibe Coding (Кодинг на вайбе)Structured AI-AssistedAgentic Engineering (Агентная инженерия)
СпецификацияНеформальный короткий промптКраткие требованияФормальная спецификация как код
ТестированиеРучная проверка «вроде работает»Выборочные проверкиАвтоматические тесты, evals и LLM-судьи
АрхитектураПишется спонтанноДисциплина файловРазделение ролей и модулей
ИнтеграцияЛокальная ручная сборкаРучной переносАвтоматические CI/CD-ворота и песочницы

«Vibe coding» хорош для быстрых экспериментов. Но когда код влияет на реальных клиентов, безопасность или финансы, этот подход опасен. Бизнесу требуется предсказуемость агентной инженерии.

Формула «Агент = Модель + Обвязка»

Сама языковая модель (LLM) составляет не более 10% успеха готовой системы. Остальные 90% приходятся на Harness (обвязку или каркас) — защитную и функциональную инфраструктуру вокруг ИИ-модели. Зрелая обвязка включает в себя:

  1. Глобальные правила проекта (стандарты оформления кода и архитектурные гайдлайны).
  2. Инструменты и MCP-серверы (протокол Model Context Protocol, дающий агенту доступ к файлам, базам данных и внешним API).
  3. Безопасные песочницы (Sandboxes) для изолированного выполнения кода.
  4. Системы наблюдаемости (Observability) для мониторинга действий агента.
  5. Автоматические сценарии оценки (Evals), проверяющие результат на соответствие критериям.
  6. Механизмы управления памятью и сессиями, позволяющие сохранять контекст при длительной работе.

Благодаря обвязке разработчик переходит из роли «дирижера» (conductor), пошагово диктующего ИИ каждую строчку кода, в роль «оркестратора» (orchestrator), который проектирует фабрику автономных агентов и настраивает автоматические обратные связи.

Контекст-инжиниринг и токеномика: CapEx против OpEx

Управление контекстом — ключевой навык инженера. Контекст делится на два типа:

  • Статический контекст: правила, системные промпты и стандарты, загружаемые при каждом запуске. Они надежны, но занимают много места в контекстном окне.
  • Динамический контекст: информация, подгружаемая по запросу с помощью RAG (Retrieval-Augmented Generation — метода дополнения ответов ИИ данными из внешних баз через семантический поиск) или контекстной маршрутизации.

Здесь вступает в силу экономика токенов, которую можно описать через метафору капитальных затрат (CapEx) и операционных расходов (OpEx). Проектирование сложной обвязки, написание тестов и настройка CI/CD — это CapEx (капитальные вложения на старте). Они требуют времени инженера. Однако эти вложения окупаются за счет снижения OpEx (операционных расходов) при эксплуатации. Агент с надежной обвязкой совершает меньше холостых запросов, не блуждает в галлюцинациях и реже ошибается. Каждая ошибка агента должна приводить к улучшению всей обвязки.

Практический разбор: архитектура минималистичного агента Tau

Для глубокого понимания обвязок полезно разобрать проект с открытым кодом Tau от Alejandro AO. Это консольный ИИ-ассистент на Python, демонстрирующий правильное разделение ответственности в агентных системах. Архитектура Tau состоит из трех слоев:

  1. Tau AI: адаптер моделей, объединяющий работу с различными API и отвечающий за передачу мыслей.
  2. Tau Agent: ядро системы, содержащее stateless-петлю (cycle выполнения задач, который принимает историю сообщений, вызывает модель, выполняет инструменты и возвращает результаты, не сохраняя состояние после завершения) и stateful-сессию (слой управления сессиями, который сохраняет историю диалога и контекст).
  3. Tau Coding: консольное приложение, которое определяет промпты, подключает локальные инструменты для работы с файлами и отрисовывает интерактивный текстовый интерфейс (TUI) на базе библиотеки Textual.

Интерфейс Tau визуализирует работу обвязки: на экране отображаются выбранный провайдер, режим рассуждений, доступные инструменты, размер контекстного окна, а также подробный лог выполнения системных команд (tool output) и токенов рассуждения (thinking tokens).

Пошаговое руководство: как развернуть и настроить Tau

Ниже описан процесс настройки и тестирования окружения на базе Tau в терминале.

Шаг 1. Установка окружения и утилиты Установите Tau через менеджер пакетов uv:

uv tool install git+https://github.com/alejandro-ao/tau.git

Для проверки успешности установки запросите версию утилиты:

tau --version

Шаг 2. Настройка провайдера и авторизация Запустите интерфейс командой tau и настройте провайдер через /login openai. Введите API-ключ (сохраняется в ~/.tau/credentials.json). Метаданные пишутся в ~/.tau/providers.json. Для выхода введите /logout.

Шаг 3. Запуск локальной модели (альтернативный вариант) Для полной приватности можно настроить работу с локальным сервером (например, Ollama):

tau --provider local --base-url http://localhost:11434/v1 --api-key-env LOCAL_API_KEY --model qwen setup

Установите переменную окружения с фиктивным ключом и запустите агента:

export LOCAL_API_KEY="local-bypass"
tau --provider local

Шаг 4. Управление сессией и командами в TUI В процессе работы доступны горячие клавиши для управления обвязкой:

  • Shift+Tab — переключение режима отображения рассуждений модели (thinking mode);
  • Ctrl+T — статистика расхода токенов;
  • Ctrl+O — лог выполнения инструментов;
  • Ctrl+R — переключение между сохраненными сессиями.

Для управления контекстом используйте slash-команды:

  • /resume [session-id] — восстановление сессии из каталога ~/.tau/sessions/;
  • /compact — принудительное сжатие истории сообщений для очистки контекстного окна;
  • /export --format html /path/to/destination — экспорт лога работы в HTML.

Шаг 5. Запуск тестов и верификация При изменении кода агента или создании новых навыков в ~/.tau/skills/ запустите проверку качества:

uv run pytest
uv run ruff check .
uv run ruff format --check .
uv run mypy

!IMPORTANTПравило безопасности при работе с терминальными агентами: Предоставляя агенту доступ к инструментам запуска bash-команд, всегда ограничивайте его рабочую директорию с помощью флага --cwd (например, tau --cwd /home/user/project/sandbox). Никогда не демонстрируйте агенту в процессе записи сессий реальные пароли, приватные ключи или токены доступа. Помните, что запуск непроверенных скриптов в вашей системе может привести к потере данных.

Лимиты автономии и контроль рисков

Развитие агентных систем открывает ошеломляющие перспективы. В индустрии уже зафиксированы эксперименты с длинным горизонтом планирования, когда агенты работали автономно в течение многих дней. Например, в одном из тестов агент, получивший простую задачу по созданию полнофункционального клона табличного процессора Excel с нуля, непрерывно анализировал ошибки, переписывал код и тестировал интерфейс на протяжении более 12 дней, пока не был остановлен вручную. Итоговое приложение получило работающие формулы, сортировку и форматирование колонок.

Однако этот пример иллюстрирует и главную опасность бесконтрольной автономии. Чем дольше агент работает без участия человека, тем выше риск накопления ошибок (drift), бесконечных циклов отладки и лавинообразного сжигания бюджета на API-токены.

Решением является не отказ от автоматизации, а проектирование жестких внешних рамок. Каждая автономная сессия должна иметь строгие лимиты по стоимости токенов, максимальному числу шагов и времени выполнения. Агентная инженерия доказывает: свобода действий искусственного интеллекта эффективна только тогда, когда она ограничена безупречно спроектированной человеческой дисциплиной.