Was this page helpful?
Сеанс — это работающий экземпляр агента в окружении. Каждый сеанс ссылается на агента и окружение (оба созданы отдельно) и сохраняет историю разговора во время нескольких взаимодействий.
Все запросы API Managed Agents требуют заголовка бета-версии managed-agents-2026-04-01. SDK автоматически устанавливает заголовок бета-версии.
Сеанс требует ID agent и ID environment. Агенты — это версионируемые ресурсы; передача ID agent в виде строки запускает сеанс с последней версией агента.
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
)Чтобы привязать сеанс к определённой версии агента, передайте объект. Это позволяет вам контролировать точно, какая версия запускается, и поэтапно развёртывать новые версии независимо.
Агент определяет, как Claude ведёт себя в сеансе, включая модель, системный запрос, инструменты и серверы MCP. Подробности см. в разделе Настройка агента.
Если ваш агент использует инструменты MCP, требующие аутентификации, передайте vault_ids при создании сеанса для ссылки на хранилище, содержащее сохранённые учётные данные OAuth. Anthropic управляет обновлением токенов от вашего имени. Подробности о создании хранилищ и регистрации учётных данных см. в разделе Аутентификация с помощью хранилищ.
Создание сеанса подготавливает окружение и агента, но не запускает никакую работу. Чтобы делегировать задачу, отправьте события в сеанс, используя событие пользователя. Сеанс действует как конечный автомат, отслеживающий прогресс, в то время как события управляют фактическим выполнением.
Подробности о потоковой передаче ответов агента и обработке подтверждений инструментов см. в разделе События и потоковая передача.
Сеансы проходят через эти статусы:
| Статус | Описание |
|---|---|
idle | Агент ожидает ввода, включая сообщения пользователя или подтверждения инструментов. Сеансы начинаются в статусе idle. |
running | Агент активно выполняется |
rescheduling | Произошла временная ошибка, автоматический повтор |
terminated | Сеанс завершился из-за неустранимой ошибки |
Архивируйте сеанс, чтобы предотвратить отправку новых событий при сохранении его истории:
Удалите сеанс, чтобы навсегда удалить его запись, события и связанный контейнер. Сеанс в статусе running не может быть удалён; отправьте событие прерывания, если вам нужно удалить его немедленно.
Файлы, хранилища памяти, окружения и агенты — это независимые ресурсы и не затрагиваются удалением сеанса.
pinned_session = client.beta.sessions.create(
agent={"type": "agent", "id": agent.id, "version": 1},
environment_id=environment.id,
)vault_session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
vault_ids=[vault.id],
)client.beta.sessions.events.send(
session.id,
events=[
{
"type": "user.message",
"content": [
{"type": "text", "text": "List the files in the working directory."}
],
},
],
)retrieved = client.beta.sessions.retrieve(session.id)
print(f"Status: {retrieved.status}")for session in client.beta.sessions.list():
print(f"{session.id}: {session.status}")client.beta.sessions.archive(session.id)client.beta.sessions.delete(session.id)