Перейти к содержимому

Claude Code: @mentions, сабэдженты-форки и cross-session messaging

Вы запустили три терминала с Claude Code: один пишет API, второй мигрирует базу данных, третий делает ревью. Миграция ломает схему, от которой зависит API. Вы замечаете это через десять минут — или не замечаете. Агенты работают в изоляции, и пока вы не переключитесь между терминалами, ни один из них не узнает о проблеме в другом.

С августа 2026 года Claude Code умеет иначе: один агент сам замечает конфликт и отправляет сообщение другому через SendMessage. Вы даже можете указать получателя символом @ в промпте — точно так же, как в Slack или Telegram. В этой статье разберём три фичи, которые появились в версиях 2.1.232–2.1.239: упоминания сессий (@), сабэдженты-форки с наследованием контекста и синхронизация плагинов из облака.

Если незнакомы с понятиями «сессия» и «сабэджент» — начните со статей «Что такое агентный кодинг» и «Контекст Claude Code». Эта статья — про то, как несколько сессий работают вместе.

@mentions: отправка сообщений между сессиями

До v2.1.232 кроссессионные сообщения работали, но требовали лишних шагов. Claude должен был вызвать ListAgents, найти нужную сессию по имени, и только потом отправить сообщение через SendMessage. Теперь достаточно написать в промпте @ и первые буквы имени сессии — появится выпадающий список, как при ментионах в мессенджерах (документация):

@api-worker Схема авторизации изменилась — проверь миграцию

Claude Code подставит полное имя сессии и отправит сообщение через SendMessage. Если на это имя отвечают несколько сессий, Claude спросит, какую именно вы имели в виду.

Поток сообщений: сессия A отправляет @mention сессии B
Как сессии общаются через @mentions и SendMessage: агент замечает проблему сам или вы подписываетесь на уведомление о завершении.

Как настроить кроссессионные сообщения

По умолчанию кроссессионные сообщения включены в interactive-сессиях на macOS, Linux и WSL 2 (с v2.1.224) и на нативном Windows (с v2.1.234). Проверить, работает ли messaging в вашей сессии, можно командой /list-agents. Первая строка покажет имя текущей сессии — именно так её видят другие.

Настройки принимаются через /config:

Параметр Что делает Где задаётся
crossSessionInbound accept / hold / refuse — принимать, держать на согласовании или отклонять входящие сообщения settings.json
dialogExpiry Время жизни диалога согласования (по умолчанию 5 минут) settings.json
isolatePeerMachines Требовать ваше согласование перед отправкой сообщения на другую машину settings.json

Настройка crossSessionInbound: "hold" — компромисс для тех, кому нужно видеть, что именно отправляется. Диалог согласования появится в терминале сессии-получателя, и вы одобрите или отклоните каждое сообщение.

notify_when_idle: уведомление о завершении работы

С v2.1.236 появилась возможность подписаться на уведомление, когда другая сессия завершит текущий ход:

Скажи мне, когда миграция завершится

Claude подпишется через SendMessage с параметром notify_when_idle. Когда сессия-миграция закончит текущую работу, ваша сессия получит однострочное уведомление. Подписка одноразовая — никакого опроса, никакого дополнительного потребления токенов. Если уведомление не пришло за 12 часов, подписка автоматически снимается (документация).

Ограничения, о которых стоит знать

  • Сообщения — только текст. Файлы, код и структурированные данные не передаются.
  • Лимит на одно сообщение — около миллиона символов. Claude отклонит сообщение до отправки, если оно длиннее.
  • При быстрой серии сообщений на одну сессию — Claude остановится и предложит объединить остаток в одно.
  • Кроссессионные сообщения не работают на Amazon Bedrock, Google Cloud Agent Platform и Microsoft Foundry.

Сабэдженты-форки: наследование контекста

Обычный сабэджент Claude Code — это автономный агент с собственным контекстным окном. Он получает задачу, работает изолированно и возвращает результат. Изоляция — главное преимущество: побочные задачи (ревью, тесты, поиск) не засоряют основную сессию.

Но иногда изоляция мешает. Задача «напиши тесты для того, что мы только что написали» требует полного контекста текущей сессии — истории, изменённых файлов, договорённостей. Стандартный сабэджент этого контекста не видит.

Сабэджент-форк решает эту проблему: он наследует всю историю диалога текущей сессии, включая prompt cache. Это значит, что первый запрос к форку обойдётся дешевле — кеш уже разогрет. Результаты работы форка возвращаются в основную сессию, но его собственные вызовы инструментов не попадают в ваш контекст (документация).

Сравнение: fork vs обычный сабэджент
Fork наследует контекст, инструменты и модель основной сессии. Обычный сабэджент стартует с нуля по определению из .md файла.

Как запустить форк

С v2.1.232 форк-режим включён по умолчанию в interactive-сессиях. Claude сам решает, когда запустить форк, а вы можете вызвать его вручную:

/subtask напиши тесты для изменений в парсере

Форк запустится в фоне — панель под промптом покажет его статус. Когда работа завершится, результат придёт в основную сессию. Пока форк работает, вы можете продолжать работу.

Панель форков управляется клавишами:

Клавиша Действие
↑/↓ Переключение между строками
Enter Открыть транскрипт форка и отправить ему сообщение
x Остановить работающий форк или закрыть завершённый
Esc Вернуться к промпту

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

Задача Fork Обычный сабэджент
Написать тесты для текущего изменения ✓ Нужен контекст
Провести ревью изменённых файлов ✓ Достаточно diff
Попробовать два подхода параллельно ✓ Одинаковая отправная точка
Поиск по кодовой базе (Explore) ✓ Быстрый, дешёвый
Работа с данными через SQL ✓ Своя модель и инструменты

Форк не может порождать собственные форки — это одноуровневая операция. Если нужна рекурсия — используйте обычные сабэдженты или agent teams.

Управление fork-режимом

Если Claude запускает форки слишком часто (или не запускает, когда нужно), есть два рычага:

# Включить fork-режим в non-interactive и SDK
export CLAUDE_CODE_FORK_SUBAGENT=1

# Выключить fork-режим везде
export CLAUDE_CODE_FORK_SUBAGENT=0

Или отключить только автоматические форки, сохранив ручной вызов /subtask:

permissions.deny: ["Agent(fork)"]

Это запретит Claude автоматически выбирать subagent_type: "fork", но не отнимет команду /subtask у пользователя.

Синхронизация плагинов из облака

С v2.1.239 в cloud-сессиях (Claude Code на вебе, десктопе, мобилке) плагины, установленные через claude.ai, синхронизируются с терминальными сессиями. Синхронизированные плагины отображаются как name@synced и управляются командами:

# Отключить синхронизированный плагин
claude plugin disable my-plugin@synced

# Включить обратно
claude plugin enable my-plugin@synced

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

До этой версии cloud-сессии и CLI-сессии жили в разных мирах: плагины, настроенные на claude.ai, не были доступны в терминале. Теперь — единое пространство плагинов с приоритетом локальной настройки.

Практика: сценарий из трёх терминалов

Полная картина: три сессии работают параллельно над одним проектом.

Терминал 1 — разработка API:

$ claude -n api-work
claude> Рефакторинг модуля авторизации — добавляю refresh tokens

Терминал 2 — миграция БД:

$ claude -n db-migration
claude> Миграция таблиц users: добавляю поле refresh_token_expires

Терминал 3 — ревью:

$ claude -n code-review
claude> Проведи ревью последних коммитов в ветке auth-refactor

Что происходит без кроссессионных сообщений: каждая сессия работает вслепую. Если миграция ломает схему, от которой зависит API — вы узнаете, когда запустите тесты вручную.

Что происходит с messaging:

  1. Сессия api-work замечает, что миграция изменила имена столбцов, и отправляет: @db-migration Таблица users: поле token_expires renamed на refresh_token_expires. Обнови миграцию.
  2. Сессия db-migration получает сообщение между шагами, корректирует миграцию.
  3. Сессия code-review запрашивает @api-worker Скажи мне, когда рефакторинг завершится — и получает уведомление notify_when_idle.

Вы наблюдаете за процессом в одном терминале через claude agents (agent view), не переключаясь между окнами.

Честные ограничения

  • Только текст. Кроссессионные сообщения — не замена для совместного контекста. Если сессии нужно передать файл или результат выполнения команды, используйте worktrees или общую файловую систему.
  • Не на всех провайдерах. Кроссессионные сообщения недоступны на Bedrock, Vertex и Foundry. Если ваша команда работает через облачные провайдеры — messaging отключён.
  • Prompt cache у форка — не бесплатный кеш навсегда. Кеш живёт ограниченное время. Через час-два простоя первый запрос к форку обойдётся как обычный.
  • Форк не заменяет agent teams. Если нужна координация группы агентов с общим списком задач — agent teams подходят лучше, хотя пока остаются experimental.
  • Windows-ограничения. Кроссессионные сообщения на нативном Windows появились позже (v2.1.234) и требуют аутентификации через токен для каждого подключения к сокету.

Ссылки

Реалии для пользователей из России

Claude Code — терминальный инструмент, который общается с API Anthropic напрямую. Вот что важно знать:

  • Доступность API. Anthropic API (console.anthropic.com) работает из России без VPN на момент публикации, но Anthropic не включает Россию в список поддерживаемых стран для потребительских продуктов (claude.ai Pro/Max). API-ключ для разработчиков доступен.
  • Оплата. Visa и Mastercard российских банков не проходят при оплате Anthropic API. Рабочие варианты: карты_foreign-issued (Litefuu, Paysend), криптовалюта через Thirdweb или аналогичные сервисы, виртуальные карты (Kotani Pay, Dupay), зарубежные расчётные счета для ИП/ООО.
  • Ограничения по региону. Кроссессионные сообщения и агенты не привязаны к региону — работают через API. Ограничения касаются потребительских планов (Pro/Max), не API.
  • Задержки. При использовании прокси или VPN к API-серверам Anthropic (US-East) задержка составляет 200–400 мс на запрос. Для агентных задач это заметно: каждый ход — несколько запросов к модели. Проведение через ближний регион (если используете Bedrock или Vertex) снижает задержку, но кроссессионные сообщения на этих провайдерах не работают.
  • Русскоязычные материалы. На момент публикации русскоязычных обзоров кроссессионных сообщений и сабэджентов-форков в рунете практически нет. Ключевые ресурсы — официальная документация и англоязычные обсуждения на Reddit r/ClaudeAI.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка / 5. Количество оценок:

Оценок пока нет. Поставьте оценку первым.

Добавить комментарий

Adblock
detector