Start Debugging

Облачные сессии Claude Code теперь можно запускать на собственных хостах

В Claude Code 2.1.224 появилась команда claude self-hosted-runner, публичная бета, которая выполняет облачные сессии на машинах, которые вы разворачиваете сами. Разбираем настройку, правило одного пользователя на runner и то, что всё равно покидает вашу сеть.

Облачные сессии в Claude Code, те самые, которые вы запускаете из claude.ai, из мобильного и настольного приложений, из запланированной рутины или из терминала командой claude --cloud, всегда выполнялись на инфраструктуре Anthropic. Claude Code 2.1.224, опубликованный 2026-08-07, это меняет. Новая подкоманда claude self-hosted-runner превращает хост на Linux или macOS в машину, которая фактически выполняет сессию. Это публичная бета для планов Team и Enterprise, и она остаётся невидимой, пока Owner или admin не включит “Allow self-hosted environments” на странице администрирования Cloud environments.

Окружение, runner, сессия

Работу обеспечивают три части. Окружение — это именованная точка назначения, создаваемая в настройках администратора claude.ai, которая появляется в выборе окружений рядом с вариантами, размещёнными у Anthropic. Runner — это долгоживущий процесс, который вы разворачиваете внутри своей сети. Сессия — это одна задача, которую runner забирает из очереди окружения, после чего клонирует репозиторий и порождает дочерний процесс claude, выполняющий работу.

Минимальная рабочая конфигурация — это три команды плюс секрет окружения, который claude.ai показывает ровно один раз при создании и который истекает через 365 дней:

mkdir -p /etc/claude
(umask 077 && cat > /etc/claude/environment-secret)
mkdir -p /srv/claude-work

claude self-hosted-runner \
  --environment-secret-file '/etc/claude/environment-secret' \
  --base-dir '/srv/claude-work'

Если пропустить --base-dir, runner откатится к /workspace, а это сработает, только если такой путь уже существует и доступен для записи. Сначала проверьте хост командой claude self-hosted-runner --help: на любой версии старше 2.1.224 подкоманда не распознаётся, и вы получите общий вывод claude --help. Есть и пошаговый вариант, claude self-hosted-runner setup, который проведёт вас по шагам в интерфейсе администратора и запишет шпаргалку в ./runner-setup/CHEAT-SHEET.md.

Почему один runner обслуживает ровно одного пользователя

Именно это проектное решение определяет размер вашего парка машин. Первая сессия, которую забирает runner, привязывает его к учётной записи запустившего её пользователя, и дальше он берёт работу только для этой учётной записи, до --capacity одновременных сессий. Значение capacity по умолчанию — 1. Поэтому минимальный размер парка равен числу пользователей, которых вы ожидаете активными одновременно, а не числу сессий.

Runner’ы к тому же по умолчанию одноразовые. У --drain-grace-sec значение по умолчанию 0, поэтому runner завершается сразу после окончания своих активных сессий, а не продолжает опрашивать очередь. Это позволяет Kubernetes перезапустить его с чистым диском, готовым для любой учётной записи. Так достигается изоляция рабочих копий по пользователям без удаления состояния между ними. Опрос очереди служит одновременно и сигналом активности: если он прекращается примерно на 60 секунд, управляющий слой возвращает сессию в очередь для другого runner’а. Проверка состояния и метрики Prometheus доступны по /healthz и /metrics на --health-port, по умолчанию 8080.

Что всё равно уходит на api.anthropic.com

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

Перед планированием внедрения стоит проверить три ограничения. Организациям с Zero Data Retention это недоступно. Инференс нельзя направить через Amazon Bedrock, Google Cloud’s Agent Platform, Microsoft Foundry или LLM-шлюз, потому что сессии аутентифицируются токеном с областью действия сессии, выданным Anthropic. И сессии Claude Tag, Claude Security и Code Review пока не маршрутизируются в самостоятельно размещённые окружения.

В этом же релизе появился и обмен сообщениями между сессиями. Полные таблицы флагов есть в справочнике по самостоятельно размещённым окружениям.

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Назад