Исследование продукта · 28 августа 2026

Ограниченный режим Claude Code: что блокируется и что не блокируется

Тестирование Claude Code 2.1.248 в ограниченном режиме, посмотрите, какие инструменты остаются, поймите его сетевую раскрытость и выберите реальную изоляцию для недоверенной работы.

Время чтения
11 мин
Проверено
28 авг. 2026 г.
Бумажная рабочая область с карточками файлов внутри границы и закрытыми командами и веб-запросами
Ограниченный режим удаляет важные инструменты; отдельная граница процесса по-прежнему обеспечивает изоляцию
Итог

Ограниченный режим Claude Code 2.1.248 является полезным средством сокращения инструментов: команды и WebFetch исчезают по умолчанию, файловые инструменты остаются внутри объявленного рабочего пространства, сохранённые настройки пользователя и проекта игнорируются, а bypassPermissions отклоняется. Это не виртуальная машина, не контейнер и не сетевой песочница. Используйте одноразовый контейнер или виртуальную машину с явными ограничениями исходящего трафика и учётных данных, когда репозиторий или полученный контент недоверенный.

Claude Code 2.1.248 добавил --restricted флаг и его эквивалент CLAUDE_CODE_RESTRICTED=1 . Anthropic’s Примечание к выпуску 2.1.248 говорит, что этот режим удаляет встроенные инструменты, которые выполняют команды или код, и удаляет WebFetch если только эти инструменты явно не указаны с --tools. Он также ограничивает инструменты работы с файлами рабочими каталогами, отказывает bypassPermissions, и игнорирует файлы настроек пользователя, проекта и локальные файлы.

Это полезно, но название легко пропустить. Ограниченный режим изменяет инструменты, которые предоставляет Claude Code, и настройки, которые он загружает. Он не помещает Claude Code в виртуальную машину, контейнер или песочницу для всего процесса. Anthropic’s сравнение песочниц рассматривает контроль разрешений, песочницу Bash для каждой команды, среду выполнения песочницы для всего процесса, контейнеры и виртуальные машины как разные уровни.

Практический результат

Начните с этой таблицы решений.

ВопросClaude Code 2.1.248 ограниченный режим
Может ли Claude по умолчанию вызывать Bash, PowerShell, REPL или другой встроенный исполнитель кода?Нет. Эти инструменты удалены из списка инструментов.
Может ли Claude использовать WebFetch по умолчанию?Нет. Он удалён из списка инструментов.
Может ли оператор восстановить любую из этих возможностей?Да. Название Bash или WebFetch с --tools снова делает этот инструмент доступным. Правила обычных разрешений по-прежнему решают, выполняется ли вызов.
Может ли Claude читать и изменять файлы?Да. Инструменты работы с файлами остаются, ограниченные рабочей директорией и любым путём, добавленным с помощью --add-dir. Записи по-прежнему подчиняются системе разрешений.
Делает --dangerously-skip-permissions Может лиНет. Версия 2.1.248 завершает работу с bypassPermissions not supported in restricted mode.
Загружены ли настройки репозитория и пользователя?Файлы настроек пользователя, проекта и локальные файлы игнорируются. Управляемая политика и явный --settings ввод всё ещё могут применяться.
Исчезнут ли сервера MCP автоматически?Не делайте таких предположений. В справочном тексте для версии 2.1.248 говорится о необходимости добавлять --strict-mcp-config когда вы также хотите пропустить настроенные серверы MCP.
Весь сетевой трафик заблокирован?Нет. Трафик модели/API требуется, WebSearch может продолжать работать, явно включенные инструменты могут выходить в сеть, а также опциональные сообщения или управляемые интеграции могут взаимодействовать с внешними системами.
Является ли это изоляцией хоста?Нет. Нет отдельного ядра, границы контейнера или границы виртуальной машины.

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

Воспроизведите поведение версии 2.1.248, не меняя вашу обычную установку

Используйте временный пакет и временную директорию. Это позволяет держать тест отдельно от вашего репозитория и избегает замены вашей обычной claude исполняемый файл.

mkdir -p /tmp/claude-2.1.248-proof/tool
mkdir -p /tmp/claude-2.1.248-proof/work
npm install --prefix /tmp/claude-2.1.248-proof/tool \
  @anthropic-ai/claude-code@2.1.248
printf 'restricted-mode-marker\n' > /tmp/claude-2.1.248-proof/work/marker.txt

/tmp/claude-2.1.248-proof/tool/node_modules/.bin/claude --version

Ожидаемая строка версии:

2.1.248 (Claude Code)

Запустите из временной рабочей директории и исключите ранее настроенные MCP-серверы:

cd /tmp/claude-2.1.248-proof/work
../tool/node_modules/.bin/claude --restricted --strict-mcp-config

Запросите ограниченную проверку:

Прочитайте marker.txt. Затем скажите мне, есть ли у вас инструмент для выполнения команд и есть ли у вас WebFetch. Не редактируйте ничего, не используйте WebSearch и не обращайтесь к каким-либо внешним сервисам.

Важные доказательства не в том, использует ли модель успокаивающие формулировки. Спросите What tools do you have access to?, проверьте расшифровку и убедитесь, что никакой Bash, PowerShell, REPL, кодовый исполнитель или WebFetch вызов не появляется. Чтение файла всё ещё должно работать, потому что Read остаётся внутри рабочего пространства.

Докажите крайний случай с опцией участия

Начните новую ограниченную сессию только с WebFetch выбранными из встроенного набора инструментов:

../tool/node_modules/.bin/claude \
  --restricted \
  --strict-mcp-config \
  --tools WebFetch

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

Повторите с --tools Bash , если нужно протестировать крайний случай команды. Используйте безвредную команду, такую как pwd, одобрите это один раз, а затем выйдите. Результат демонстрирует точную границу: ограниченный режим по умолчанию удаляет инструмент команд, но загрузчик может намеренно вернуть его.

Не объединяйте этот тест с --allowedTools Bash, широким правилом разрешения или настоящими учетными данными. Доступность инструментов и автоматическое одобрение - это отдельные элементы управления.

Докажите, что режим обхода отклонен

../tool/node_modules/.bin/claude \
  --restricted \
  --dangerously-skip-permissions \
  --strict-mcp-config

Версия 2.1.248 должна остановиться до начала сеанса:

Ошибка: bypassPermissions не поддерживается в ограниченном режиме

После завершения выйдите из Claude Code и удалите /tmp/claude-2.1.248-proof. Тест не изменяет вашу обычную установку или проект Claude Code. Проверьте временный каталог перед удалением, если нужно сохранить журналы для аудита.

Что выявил наш тест схемы инструментов

Mantis протестировал npm-пакет @anthropic-ai/claude-code@2.1.248 на Linux 28 августа 2026 года. Мы направили ANTHROPIC_BASE_URL на локальный сервер захвата HTTP, предоставили фиктивный тестовый ключ и сделали так, чтобы сервер записывал только имена инструментов из исходящего запроса Messages перед возвратом запланированного HTTP 400. Ни один запрос не дошёл до Anthropic, ни одна команда не выполнялась, и ни один сайт не был загружен.

ЗапускДоказательства схемы инструмента
--restricted --strict-mcp-configЗапрос включал инструменты для работы с файлами и координации, такие как Read, Glob, Grep, Edit, Write, NotebookEdit, Agent, Skill, WebSearch, ListAgents, и SendMessage. Он не включать Bash или WebFetch.
Те же флаги плюс --tools WebFetchВыбранный список встроенных инструментов содержал WebFetch.
Те же флаги плюс --tools BashВыбранный список встроенных инструментов содержал Bash.
Те же флаги плюс --dangerously-skip-permissionsCLI остановился с bypassPermissions not supported in restricted mode перед отправкой запроса задачи.

Точный оставшийся список может варьироваться в зависимости от платформы, плана, управляемой политики, провайдера и функций продукта. Утверждение стабильной версии 2.1.248 более узкое: исполнители команд/кода и WebFetch удаляются, если не выбраны явно; инструменты файлов остаются в области рабочего пространства; обходной режим отклоняется. Это соответствует заметке о выпуске Anthropic’s и описанию флага, напечатанному тестируемым бинарным файлом .

Остальные разрешения имеют значение

Ограниченный не означает только для чтения. Остальные инструменты работы с файлами могут просматривать и, при наличии соответствующего разрешения, изменять файлы внутри рабочей области. Следовательно, рабочая область, содержащая производственные секреты, SSH-данные, учетные данные облака, профили браузера или несвязанные репозитории, обеспечивает сессии большее воздействие, чем пустой временный каталог.

Граница рабочей директории также расширяется, когда вы передаете --add-dir. Рассматривайте каждый добавленный каталог как явное предоставление данных. Запускайте Claude Code из самого узкого подкаталога репозитория, который все еще поддерживает задачу, затем проверьте, какие тесты и конфигурационные файлы действительно нуждаются в доступе.

Режим с ограничениями также игнорирует обычные пользовательские, проектные и локальные настройки, но управляемые настройки и файл или JSON-объект, предоставленные через --settings все еще могут применяться. Скрипты запуска должны показывать эти аргументы, а не скрывать их в псевдониме. Используйте --strict-mcp-config когда тест не должен иметь ранее настроенных MCP серверов; инструменты MCP отделены от встроенного списка инструментов.

WebFetch не охватывает всю сеть

Удаление WebFetch закрывает один прямой путь получения страницы. Это не создаёт отказ по умолчанию на исходящие соединения.

Наш ограниченный запрос все еще подвергся раскрытию WebSearch. Anthropic’s справочник по инструментам говорится, что WebSearch выполняет поиск через поисковую систему Anthropic и возвращает заголовки результатов и URL-адреса. Само содержимое страниц результатов оно не загружает, но при этом остается внешним каналом информации.

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

Для создания надежной сетевой границы обеспечьте выходные соединения вне контроля модели и вне диспетчера инструментов Claude Code:

  • разрешайте только конечную точку модели/API и любые проверенные пакеты или домены источников;
  • блокируйте конечные точки метаданных, внутренние плоскости управления и диапазоны частных сетей;
  • используйте краткоживущие, узко специализированные учетные данные внутри изолированной среды;
  • храните производственные облачные, Git, браузерные и SSH учетные данные вне нее;
  • ведите журнал DNS и исходящих соединений, чтобы тест имел доказательства;
  • проводите тест завершения работы, который доказывает, что среда останавливается, а учетные данные истекают.

Рекомендация по изоляции

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

Для недоверенного репозитория, внешнего веб-контента, автономной работы, анализа вредоносного ПО или чувствительных учетных данных запустите весь процесс Claude Code внутри одноразовой виртуальной машины (VM), microVM или строго настроенного контейнера. Предоставляйте ему только необходимую копию проекта, используйте политику исходящих соединений с разрешением по умолчанию только для явного белого списка и не вводите производственные учетные данные. Anthropic рекомендует использовать отдельную VM или Claude Code в вебе для небезопасных репозиториев в его руководстве по среде песочницы.

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

Прежде чем считать среду одноразовой, подтвердите все четыре выхода:

  1. Завершите сессию и убедитесь, что ни один процесс Claude, MCP, хук, браузер или дочерний процесс не остался.
  2. Отозвать или истечь срок действия тестового токена и подтвердить, что он больше не аутентифицирует.
  3. Просмотреть различия на рабочем пространстве и журнал исходящих подключений.
  4. Уничтожить контейнер или виртуальную машину, затем подтвердить, что его записываемый слой и временные учетные данные исчезли.

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

Источники

Запустите это в работу

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

Попробовать

Проведите тест обратного scratch-directory ниже с Claude Code 2.1.248 и сравните список ограниченных инструментов по умолчанию с явными WebFetch и Bash-опциями.

Докажите, что это сработало

Сохраняйте версию, флаги запуска, захваченные имена инструментов, сообщение об отказе и результат очистки при проверке безопасности.

Где это может оплатить

Задокументированная книга с ограниченным агентом может стать частью более безопасной службы проверки кода или оценки поставщиками.

Держите в поле зрения

  • Claude Code 2.1.248 удаляет инструменты для выполнения команд и WebFetch из ограниченных сессий, если только вы явно не добавите их обратно с помощью ---tools.
  • Инструменты чтения, поиска, редактирования, записи, веб-поиска, агентов, обмена сообщениями и других некомандных инструментов могут оставаться доступными.
  • Ограниченный режим ограничивает возможности внутри Claude Code, но не изолирует процесс, учетные данные, трафик модели или все сетевые пути.
  • Используйте --strict-mcp-config, когда не хотите, чтобы настроенные MCP-серверы загружались в тест.
Изучите рабочий процесс: курируемый рабочий процесс Claude Code