Теперь Claude Managed Agents может написать программу рабочего процесса, которая распределяет части большой задачи между несколькими агентами, собирает их выводы и объединяет их. Функция находится в бета-версии. Ниже описана документированная настройка для разработчика ПО, который хочет проверить папку с документами и создать проверенный файл с выводами.

Для этого используются API Claude Platform и CLI от Anthropic. BIG CHANGE изучила актуальную документацию; мы не выполняли настройку и не тестировали рабочий процесс.

Что делает рабочий процесс

Один динамический рабочий процесс — это программа для одного запуска. Она может разбивать работу на этапы, параллельно запускать потоки агентов, передавать их результаты между этапами, повторять попытку или обрабатывать сбойную ветвь и объединять результаты. Например, на первом этапе можно изучить отдельные файлы, а на следующем — свести выводы. Основной агент запускает процесс, а сервер выполняет его в фоновом режиме.

Это отличается от просьбы к основному агенту создать отдельные запуски. Запуск рабочего процесса координирует дочерние потоки в рамках одного запуска и возвращает результат агенту, который его начал. Обычное сообщение в сеансе само по себе не запускает процесс: агент решает, когда это сделать, исходя из задачи и системного промпта. По словам Anthropic, в одном сеансе может быть открыто несколько запусков, но у каждого свои этапы и результат.

Перед началом

Вам понадобятся аккаунт Claude Console, API-ключ и доступ к Claude Managed Agents; Anthropic сообщает, что для API-аккаунтов эта функция включена по умолчанию. Для конечных точек агента и рабочего процесса требуется managed-agents-2026-04-01 beta-заголовок. SDK Anthropic устанавливает его автоматически; при вызове API без SDK добавьте его самостоятельно.

В актуальной документации Managed Agents по-прежнему помечен как бета-версия. В примечаниях к выпуску Anthropic указаны даты: публичная бета — 9 апреля 2026 года, оркестрация нескольких агентов — 11 мая, динамические рабочие процессы — 9 октября. Динамические рабочие процессы также находятся в бета-версии. Дата важна: показатель «1 000 агентов» — это действующий лимит для одного запуска рабочего процесса, а не новая возможность одновременно запустить 1 000 агентов.

Платформа хранит историю беседы сеанса, состояние песочницы и результаты на сервере. По данным Anthropic, на Managed Agents сейчас не распространяются Zero Data Retention и покрытие по соглашению HIPAA Business Associate Agreement. Не помещайте в сеанс регулируемые или конфиденциальные материалы, пока ваша организация не подтвердит применимые правила обработки данных и конфигурацию.

1. Установите CLI и SDK

Установите ant CLI Anthropic способом для вашей операционной системы, указанным в кратком руководстве по Managed Agents. Например, документированная команда для macOS:

Terminal
brew install anthropics/tap/ant

Для Python установите SDK и передавайте API-ключ через окружение, а не помещайте его в исходный файл:

Terminal
pip install anthropic
export ANTHROPIC_API_KEY="your-api-key"

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

2. Определите агента, который может использовать рабочие процессы

Создайте document-reviewer.md. Блок multiagent включает тип рабочего процесса, представленный в октябре. Отключение субагентов явно задаёт способ делегирования: этот агент использует динамические рабочие процессы, а не разовое делегирование субагенту.

YAML
---
name: document-reviewer
model: claude-sonnet-5-5
tools:
  - type: agent_toolset_20260401
multiagent:
  type: multiagent_20261001
  subagents:
    type: disabled
  workflows:
    type: enabled
---

You review documents for a user-defined checklist.

When a request contains more than 20 independent files, use a dynamic workflow.
Make one phase that checks the files independently and a later phase that
reconciles duplicate findings. Do not infer missing facts. Save the final
machine-readable results to report.json and a concise explanation to summary.md.
Include the source filename and a short evidence excerpt for every finding.
If a file cannot be read or a worker fails, record that file as unresolved;
do not silently omit it. The final response must report the number of files
reviewed, unresolved files, and whether every output file was written.

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

Создайте агента и сохраните возвращённый идентификатор:

Terminal
ant apply document-reviewer.md

CLI выводит идентификатор агента и записывает его в claude-lock.json. Managed Agents отделяет повторно используемое определение агента (модель, инструкции и инструменты) от среды, в которой работает сеанс.

3. Настройте песочницу

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

YAML
# environment.yaml
name: document-review
config:
  type: cloud
  networking:
    type: limited
    allow_package_managers: true

Примените её с помощью ant apply environment.yaml; её идентификатор также сохраняется в claude-lock.json. Если агенту нужен доступ к сети, укажите в allowed_hostsтолько необходимые хосты. При ограниченном доступе к сети этот список хостов также ограничивает инструменты веб-поиска и загрузки Managed Agents. Разрешение на использование менеджеров пакетов не добавляет сайты в список разрешённых.

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

4. Создайте сеанс и отправьте ограниченную задачу

Используйте идентификаторы агента и среды, чтобы создать сеанс через Python SDK:

Python
import anthropic

client = anthropic.Anthropic()
session = client.beta.sessions.create(
    agent="AGENT_ID_FROM_CLAUDE_LOCK",
    environment_id="ENVIRONMENT_ID_FROM_CLAUDE_LOCK",
    title="Small document review",
)
print(session.id)

Замените два заполнителя идентификаторов значениями из claude-lock.json. Затем отправьте конкретную задачу через поток событий сеанса. Запустите поток до отправки события, чтобы видеть запуск и его ход по мере поступления:

Python
with client.beta.sessions.events.stream(session.id) as stream:
    client.beta.sessions.events.send(
        session.id,
        events=[{
            "type": "user.message",
            "content": [{
                "type": "text",
                "text": (
                    "Review each Markdown file in /review-set for a missing "
                    "owner, deadline, or acceptance criterion. Quote evidence; "
                    "do not infer missing details. Reconcile duplicate findings "
                    "and write /mnt/session/outputs/report.json plus "
                    "/mnt/session/outputs/summary.md. In report.json, use "
                    "a files array with one record per input: path, status "
                    "(reviewed or unresolved), and findings; each finding has "
                    "a check, evidence excerpt, and source location. Include "
                    "input, reviewed, and unresolved counts."
                ),
            }],
        }],
    )
    open_runs = {}
    run_results = {}
    for event in stream:
        if event.type == "workflow_run.created":
            open_runs[event.workflow_run_id] = event.name
            print(f"Run started: {event.name}")
        elif event.type == "workflow_run.status_ended":
            run_results[event.workflow_run_id] = event.result.type
            open_runs.pop(event.workflow_run_id, None)
            print(f"Run ended: {event.result.type}")
        elif event.type == "workflow_run.error":
            print(f"Run error: {event.error}")
        elif event.type == "agent.message":
            for block in event.content:
                if block.type == "text":
                    print(block.text)
        elif event.type == "session.status_idle":
            if event.stop_reason.type == "end_turn" and not open_runs:
                break

    # Inspect the child threads associated with completed workflow runs.
    for thread in client.beta.sessions.threads.list(session.id):
        if thread.workflow_run_id in run_results:
            print(f"Thread {thread.id}: {thread.status}")
            for thread_event in client.beta.sessions.threads.events.list(
                thread.id, session_id=session.id
            ):
                if thread_event.type == "session.error":
                    print(f"Thread error: {thread_event}")

В этом примере предполагается, что настроенный метод ввода сеанса предоставляет файлы в /review-set. Прежде чем просить агента проверить файлы, поместите их в песочницу сеанса документированным способом. Попросите агента записывать результаты в /mnt/session/outputs/; в документации по файлам Managed Agents описано, как перечислять файлы сеанса и скачивать их. В Python SDK документирован следующий формат чтения результата:

Python
files = client.beta.files.list(
    scope_id=session.id,
    betas=["managed-agents-2026-04-01"],
)
for report in files:
    if report.filename == "report.json":
        content = client.files.download(report.id)
        content.write_to_file("report.json")
        break

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

Контракт выходных данных должен быть достаточно строгим для аудита. Например:

JSON
{
  "files": [
    {
      "path": "requirements.md",
      "status": "reviewed",
      "findings": [
        {
          "check": "deadline",
          "evidence_excerpt": "...",
          "source_location": "requirements.md, section 2"
        }
      ]
    }
  ],
  "input_count": 1,
  "reviewed_count": 1,
  "unresolved_count": 0
}

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

5. Проверьте запуск и его результаты

При запуске рабочего процесса поток событий сообщает о workflow_run.created, включая идентификатор запуска и объявленные этапы. Пример оставляет каждый идентификатор запуска открытым до соответствующего события workflow_run.status_ended; одно лишь бездействие основного сеанса не доказывает, что фоновый рабочий процесс завершён. Основной поток обобщает состояние дочерних потоков, а собственный список событий потока содержит его сообщения и ошибки. Пример перечисляет потоки по workflow_run_id и показывает события session.error . Проверяйте их на исчерпанные повторные попытки (в том числе retry_status.type == "exhausted") и другие ошибки дочерних потоков; помечайте затронутые файлы как нерешённые.

Считайте результатом файл, а не слово «завершено». Anthropic прямо предупреждает: запуск может закончиться с completed , даже если поток не справился с задачей или его не удалось создать. Откройте report.json и убедитесь, что для каждого входного файла есть выводы или явно указан нерешённый статус, фрагменты доказательств указывают на правильный исходный файл, а количество записей совпадает с числом переданных файлов. Сверьте небольшую тестовую папку с ожидаемыми результатами, прежде чем использовать процесс для большего набора документов.

Если клиент отключится, новый поток событий передаст только события, созданные после его открытия. Восстановите состояние запуска, перечислив прошлые события сеанса с документированными фильтрами типов событий и постраничной загрузкой. Не считайте запуск завершённым только потому, что основной агент бездействует: дочерние потоки ещё могут работать. После завершения всех наблюдаемых запусков перечислите файлы сеанса и скачайте /mnt/session/outputs/report.json и summary.md через документированный Files API. Проверьте, что для каждого переданного файла есть запись о проверке или нерешённом статусе и что количества сходятся. Пример цикла событий сам по себе не скачивает и не проверяет отчёт.

Ограничения, влияющие на проектирование

В документации Anthropic по ограничениям запусков рабочих процессов сейчас указано до 64 одновременно работающих потоков в одном запуске; однако API не гарантирует такой уровень параллелизма, и значение может измениться. Лимит в 1 000 агентов учитывает всех агентов, запущенных за весь срок процесса, а не количество одновременно работающих потоков. Если после достижения общего лимита процесс запросит ещё одного агента, запуск завершится с thread_limit_error; повторные попытки для отказавших агентов могут создавать дополнительные потоки.

По умолчанию запуск длится 24 часа или меньше, если агент задаёт более короткий срок. Время ожидания клиента также учитывается, а приостановленный запуск всё равно может истечь. По умолчанию у сеанса может быть 10 открытых запусков, включая бездействующие. Бюджет использования сеанса распространяется на всех агентов рабочего процесса; при его исчерпании открытые запуски приостанавливаются, пока бюджет не увеличат или не уберут. Планируйте меньшие рабочие блоки, сохраняйте контрольные точки в файлы и настройте этап сверки так, чтобы он сообщал о незавершённых пунктах, а не выдавал их за проверенные.

При сбоях проверьте workflow_run.error и соответствующий поток. program_error может означать сбой кода рабочего процесса или дочернего потока; thread_limit_error указывает на предел в 1 000 агентов; timeout_error — на ограничение срока запуска. Если запуск достиг бюджета сеанса, увеличьте или снимите бюджет, чтобы возобновить его. Чтобы остановить рабочий процесс, попросите основного агента остановить его запуски; прерывание хода сеанса само по себе не отменяет запуск.

Стоимость

В документации о ценах Anthropic указана плата за токены Managed Agents по тарифам выбранной модели и за время сеанса — $0.08 за час активного сеанса. Время учитывается, пока статус сеанса — running; периоды бездействия, переназначения и завершения не учитываются. За запуск рабочего процесса отдельная плата не взимается, но использование токенов потоками тарифицируется как часть сеанса. Веб-поиск, вызванный внутри сеанса, стоит $10 за 1 000 поисковых запросов. Итоговая сумма зависит от модели, входных и выходных токенов, инструментов и продолжительности сеанса; проверяйте расход в Console, а не оценивайте его по лимиту в 1 000 агентов.

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

Главное изменение

С 9 октября агент Managed Agents может написать программу рабочего процесса, которую сервер выполняет в нескольких потоках и этапах агентов. Разработчики могут использовать этот механизм для ограниченного и проверяемого распределения работы, пока основной сеанс отслеживает ход выполнения. Функция остаётся в бета-версии, а опубликованные лимиты не гарантируют максимальный параллелизм или правильные выводы в каждом запуске.

Источники и дополнительная информация