Claude Fable 5.1: Containment Escape блокирует получение облачных credentials по умолчанию
Claude Code 2.1.257 выпускает Fable 5.1 с 1M контекстом и жёсткой блокировкой запросов к облачным metadata-сервисам в auto-режиме — вот что нужно проверить операторам production-пайплайнов.
Архивный материал, подготовленный с помощью ИИ по указанному источнику и опубликованный без индивидуальной проверки. Ответственный редактор: Joe Werner.

Claude Code 2.1.257 выходит с двумя изменениями одновременно, и вместе они важнее, чем каждое по отдельности.
Первое — Fable 5.1 становится новой моделью по умолчанию в Fable-линейке. Второе — в auto-режим добавлено правило Containment Escape: запросы к облачным metadata-сервисам, попытки обхода egress-ограничений и cross-tenant-доступ больше не одобряются автоматически. Если ваши agent-пайплайны работают в AWS, GCP, Azure или любой среде, где 169.254.169.254 достижим — прочитайте это до следующего деплоя.
Что привносит Fable 5.1
Идентификатор новой модели — claude-fable-5-1. Она заменяет предыдущую версию Fable и поставляется с контекстным окном 1M токенов — наравне с Sonnet 5 и Opus 5.
Ценообразование: $10 / $50 за миллион токенов (input / output), cache-чтение — $0.25 за миллион токенов. Это ставит Fable 5.1 между Opus 5 ($15/$75) и Sonnet 5 ($3/$15). Для agentic-нагрузок, где важно качество следования инструкциям, но не хочется платить Opus 5 за каждый вызов, Fable 5.1 — очевидный средний вариант.
Стоит отметить cache-чтение: $0.25/Mtok у Fable 5.1 против $0.30/Mtok у Sonnet 5. Пайплайны с агрессивным prompt caching на длинных системных промптах или больших кодовых базах получат небольшое, но реальное преимущество по стоимости.
Если вы жёстко указали claude-fable-5-0, учтите: TheRouter не определяет обобщённый alias fable — model id маршрутизируются по точному совпадению, поэтому конфигурация продолжит обслуживать claude-fable-5-0, пока вы вручную не обновите фиксированную строку на claude-fable-5-1.
Что именно делает Containment Escape
Правило Containment Escape направлено против конкретного класса атак: agent, запущенный внутри облачной VM или контейнера, делает запрос к Instance Metadata Service (IMDS) по адресу 169.254.169.254, получает временные credentials и использует их для горизонтального перемещения или выхода за границы tenant.
Три категории действий теперь не проходят автоматическое одобрение в auto-режиме:
- Получение облачных metadata credentials — любой HTTP-запрос к IMDS-адресу (
169.254.169.254или платформенным эквивалентам Azure/GCP) - Egress evasion — сетевые паттерны, которые runtime классифицирует как попытку обойти sandbox-ограничения на исходящий трафик
- Cross-tenant reach — действия, направленные на principals, ресурсы или хранилища за пределами ожидаемого scope текущей сессии
До 2.1.257 эти действия в auto-режиме проходили без остановки. Теперь они требуют подтверждения — если только среда не объявила их явно ожидаемыми.
Как объявить поведение ожидаемым. Если ваша нагрузка действительно требует обращения к IMDS — например, agent ротирует short-lived credentials, запрашивая instance role token — разблокировать это можно через .claude/settings.json или managed-settings policy, добавив нужный класс действий в permissions.containmentEscapeExpected. Без такого объявления любой запрос к IMDS будет останавливать pipeline на подтверждение, даже в полностью автоматизированной среде.
Операторам unattended agent-задач, которые обращаются к IMDS, придётся либо явно объявить это ожидаемым, либо вынести логику получения credentials за пределы scope действий agent.
CLAUDE_CODE_SUBAGENT_MODEL_FORCE и мульти-модельное управление
До 2.1.257 выбор модели у родительского agent не передавался порождаемым subagent'ам, если это не задавалось явно при каждом spawn. Определения agent могли переопределять модель, per-spawn конфигурация — переопределять снова. Итог: команда выставляла соответствующую policy модель на главном agent, но не могла гарантировать, что subagent'ы последуют.
Новая переменная окружения CLAUDE_CODE_SUBAGENT_MODEL_FORCE меняет это. При установке она применяет CLAUDE_CODE_SUBAGENT_MODEL (или основную модель, если та переменная не задана) ко всем порождаемым subagent'ам, игнорируя per-spawn переопределения и поля модели в определениях agent.
Для операторов, управляющих затратами или соответствием требованиям: это первый механизм, дающий одной переменной окружения авторитет фиксировать выбор модели по всему дереву agent. Если governance policy требует, чтобы все production-agent использовали конкретную модель или tier, CLAUDE_CODE_SUBAGENT_MODEL_FORCE обеспечивает это без изменения отдельных определений.
Исправление утечки auth-заголовков
В 2.1.257 исправлены два связанных бага, которые заслуживают внимания операторов даже при внешней похожести на рутинную уборку.
Первый: gateway Claude apps отправлял лишние заголовки Authorization или profile к Foundry, Vertex и Bedrock upstream. В зависимости от конфигурации это могло означать утечку Anthropic-credentials в запросы, адресованные enterprise provider — не тот auth chain, что предполагался, с потенциальными последствиями для аудит-трейла.
Второй: в API-key режиме с Foundry лишний Anthropic API key или auth token уходил вместе с Foundry subscription key. В одном запросе оказывались два набора credentials, хотя endpoint должен видеть только один.
Ни один из этих багов в большинстве конфигураций не вызывал немедленных auth-сбоев — именно это делает их достойными проверки в логах. Если за последние недели там встречались нестандартные формы заголовков Authorization — причина скорее всего здесь.
Отдельно исправлен баг с дублированием custom Authorization header на Bedrock, Mantle, Vertex и WIF, перекрывавшим сконфигурированный credential. И setup wizard для Vertex подбирал остаточный Anthropic profile из ~/.config/anthropic, молча смешивая профили в мульти-provider окружениях.
Решение по routing: Fable 5.1 vs Sonnet 5 vs Opus 5
| Модель | Input/Output ($/Mtok) | Cache read ($/Mtok) | Контекст | Лучший сценарий |
|---|---|---|---|---|
| Sonnet 5 | $3 / $15 | $0.30 | 1M | Высокий объём, чувствительность к latency, короткие задачи |
| Fable 5.1 | $10 / $50 | $0.25 | 1M | Качество следования инструкциям, многошаговые рассуждения, средние затраты |
| Opus 5 | $15 / $75 | — | 1M | Максимальное качество, сложные суждения, низкий объём |
Для пользователей TheRouter, маршрутизирующих через OpenAI-compatible gateway: model ID claude-fable-5-1 доступен напрямую через Anthropic upstream. Если конфигурация gateway использует обобщённый alias fable и нужно зафиксировать конкретно версию 5.1 — переходите на строку версии.
Что проверить перед следующим деплоем
1. IMDS-доступ в agent-пайплайнах. Поищите 169.254.169.254 в логах вывода agent за последние 30 дней. Если встречается — решите, объявлять ли это ожидаемым поведением в settings или выносить логику получения credentials за пределы agent.
2. Форма auth-заголовков в Foundry и Vertex. Проверьте логи upstream-запросов на предмет неожиданных заголовков Authorization или profile. Если вы используете Foundry в режиме Entra ID и задали ANTHROPIC_FOUNDRY_API_KEY — убедитесь, что исправление применено: в предыдущей версии Entra ID upstream не запускался.
3. Внедрение CLAUDE_CODE_SUBAGENT_MODEL_FORCE. Если governance policy требует конкретной модели для всех agent — задайте переменную в конфигурации среды сейчас, вместо того чтобы полагаться на умолчания в определениях agent.
4. Фиксированные строки model ID. Если есть жёстко заданный claude-fable-5-0 — решите, остаться на 5.0 или обновить до claude-fable-5-1. TheRouter не определяет обобщённый alias fable — фиксированные строки model ID нужно обновлять вручную.
5. Базовый расчёт стоимости cache. Если Fable-модели активно используются в prompt-cache-интенсивных пайплайнах — обновите модель затрат, используя $0.25/Mtok для cache-чтения Fable 5.1.
Claude Code 2.1.257 доступен уже сейчас. Правило Containment Escape активно по умолчанию в auto-режиме начиная с этой версии.
Источник: Anthropic Claude Code releases
Похожие материалы
Новости AI-роутинга и провайдеров →
Claude Code 2.1.251: хук PreModelSwitch превращает переключение модели в управляемое решение
Claude Code 2.1.251 добавляет хуки PreModelSwitch и PostModelSwitch, позволяющие блокировать или аннотировать смену модели в реальном времени. Новая видимость лимитов расходов и метрики кэша на сессию делают клиент полноценным инструментом операционного управления.

Claude Code 2.1.219: три изменения в управлении, которые операторы обязаны проверить перед деплоем
2.1.219 добавляет sandbox.network.strictAllowlist, поднимает глубину subagent с 1 до 3 и ограничивает воркфлоу до medium — три изменения, меняющих периметр безопасности, стоимостное давление и политику оркестрации без единой строчки кода.

Claude Code 2.1.215: /verify и /code-review больше не запускаются автоматически — что должен изменить каждый оператор
Версия 2.1.215 убирает автоматический запуск skill-команд /verify и /code-review. CI-пайплайны и фоновые агенты, полагавшиеся на пассивные контрольные точки, теперь обязаны вызывать их явно — иначе проверки просто не будут выполняться.