Как обучить ИИ-агентов работать круглосуточно без потери прогресса / Хабр

Команда Anthropic представила детальное исследование о том, как обучить ИИ-агентов работать непрерывно, не теряя прогресс между сессиями. Проблема, с которой сталкиваются многие, заключается в том, что каждая новая сессия — это пустое полотно без памяти о предыдущем контексте. В рамках Claude Agent SDK инженеры разработали метод, позволяющий агентам действовать как единый непрерывный процесс.

Почему агенты «забывают» проекты

Современные модели функционируют в рамках ограниченных контекстных окон. Когда задача выходит за их пределы — например, разработка веб-приложения — агент теряет значительное количество информации. Хотя упрощение контекста помогает, оно все равно не устраняет проблемы полностью.

В экспериментах Claude проявлял два основных недостатка:

  1. Пытался сделать все сразу, начав реализацию крупной функции, от чего заканчивая окно токенов, передавал управление следующей сессии в незавершенном состоянии.

  2. Преждевременно объявлял завершение, увидев части готовых функций, и считал работу оконченной.

Двухкомпонентное решение

Anthropic разделила задачу на две роли, что значительно повысило надежность:

1. Инициализирующий агент.

Создает структуру проекта при первом запуске:

  • init.sh;

  • claude-progress.txt с логом работы;

  • первоначальный git-коммит;

  • файл со списком всех требований к проекту (чаще всего сотни функций), каждая из которых помечена как не реализованная.

{
    "category": "functional",
    "description": "New chat button creates a fresh conversation",
    "steps": [
      "Navigate to main interface",
      "Click the 'New Chat' button",
      "Verify a new conversation is created",
      "Check that chat area shows welcome state",
      "Verify conversation appears in sidebar"
    ],
    "passes": false
  }

2. Кодирующий агент.

Каждая последующая сессия:

  • выбирает одну функцию;

  • вносит инкрементальные изменения;

  • поддерживает репозиторий в чистом, рабочем состоянии;

  • создает git-коммит и обновляет claude-progress.txt.

Такой рабочий процесс позволяет следующему агенту «прийти на смену» и сразу понимать, что сделано, что сломано и что делать дальше.

Особое внимание уделили файлу с функциями в формате JSON. Агенту строго запрещено изменять или удалять тесты: он может только переключать поле passes после успешного тестирования. Такой подход оказался гораздо надежнее использования Markdown — модель реже нарушает структуру.

Тестирование: как заставить ИИ проверять себя как человек

Без жесткого запроса на end-to-end тестирование агенты отмечали задачи как завершенные, даже если функция не работала полностью. Anthropic интегрировала автоматизацию браузера через Puppeteer MCP: Claude запускает локальный сервер, открывает страницу, нажимает кнопки, отправляет сообщения и получает ответы — как настоящий пользователь.

Это значительно снизило количество скрытых багов.

Как проходит типичная сессия

Запуск Кодирующего Агента начинается с рутины, знакомой каждом разработчику:

  • pwd;

  • чтение git-лога;

  • чтение claude-progress.txt;

  • просмотр списка функций;

  • запуск init.sh и dev-сервера;

  • основная проверка чата, загрузка диалогов, переключение темы и т. д.

Если базовые функции нарушены, агент сначала исправляет их, а не продолжает разработку поверх ошибок.

Чего удалось добиться

Anthropic выделила четыре типичных сбоя и продемонстрировала, как новый подход их решает:

Проблема

Решение Инициализатора

Решение Кодирующего Агента

Агент считает проект завершённым

Создание списка всех функций

Выбор одной функции и работа только над ней

Среда разрушается между сессиями

Начальный git-репозиторий + прогресс-файл

Каждый запуск: чтение логов, базовое тестирование

Функции отмечаются как готовые преждевременно

Жесткая спецификация в JSON

Проверка через автоматизацию браузера

Агент не знает, как запустить проект

init.sh

Использование скрипта при старте

Anthropic утверждает, что такой подход значительно повышает надёжность и помогает моделям работать над крупными задачами практически бесконечно — пока остаются функции, которые необходимо реализовать.

Русскоязычное сообщество про AI в разработке

Друзья! Эту новость подготовила команда ТГК «AI for Devs» — канала, где мы делимся информацией об AI-ассистентах, плагинах для IDE, практическими примерами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе новых событий!

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь

Основатель более 10 стартапов в области ИТ и ИИ. Серийный предприниматель. Профессиональный управленец.