Claude Code 2.1.285 даёт админам выбрать провайдеров API

Бывало, что Claude Code отправлял упавший запрос к API до 21 раза подряд, если стриминг раз за разом срывался. В версии 2.1.285 это исправили, а администраторам дали управляемую настройку allowedProviders: она ограничивает, через каких провайдеров API может работать машина. Всё это есть в заметках к релизу на Github.
Коротко
- В allowedProviders администратор выбирает, куда машина может ходить за моделью: Anthropic API, свой эндпоинт, Bedrock, Mantle, Vertex AI, Foundry, Claude Platform on AWS или облачный шлюз.
- Фоновые команды Bash и PowerShell останавливаются по тайм-ауту: по умолчанию через 30 минут, максимум через 2 часа. Claude получает уведомление о том, что команду остановили.
- Заметки к релизу не объясняют, почему для фоновых команд выбран потолок в два часа, и не показывают, как записывается allowedProviders. Сборке длиннее двух часов в фоне места нет.
В allowedProviders восемь вариантов провайдера, и администратор оставляет только нужные
allowedProviders относится к управляемым настройкам, поэтому её задаёт администратор, а не сам разработчик. Вариантов восемь: Anthropic API, собственный эндпоинт, Bedrock, Mantle, Vertex AI, Foundry, Claude Platform on AWS и облачный шлюз. Если в компании решили работать только через Bedrock, это можно закрепить за каждой машиной.
Рядом появилась переменная CLAUDE_CODE_DISABLE_WEB_FETCH, которая целиком выключает инструмент WebFetch. Бывает, что политику организации не удалось загрузить при старте. Тогда на планах Team и Enterprise, а также в сессиях, где Claude Code не смог определить план, WebFetch недоступен, пока политика не загрузится.
Заодно починили доставку самих политик. Сессии, которые входили в Anthropic API через ANTHROPIC_AUTH_TOKEN, вообще не загружали политику организации. Если ОС не даёт прочитать файл управляемых настроек, Claude Code предупреждает об этом и запускается без политик из этого файла. Другие ошибки чтения и файл, который не удаётся разобрать, по-прежнему не дают запустить ни одну сессию. Настройки проекта не могут ослабить или выключить песочницу, которую требует администратор.
Фоновой команде Bash или PowerShell отводится не больше двух часов
Фоновые команды Bash и PowerShell, запущенные с run_in_background, останавливаются по своему тайм-ауту. По умолчанию он равен 30 минутам, максимум составляет 2 часа. Когда команду останавливают, Claude получает уведомление, поэтому он узнаёт, что процесс завершился не сам.
В той же области закрыли две ошибки с процессами. Синхронный хук вешал Claude Code, если запущенный им фоновый процесс, например some-daemon &, не закрывал вывод. Сейчас хук завершается вскоре после выхода своего собственного процесса. Отменённая команда или хук всё равно запускались и работали до конца, если отмена приходила, пока их готовили к запуску.
Подтянули и субагентов. В auto mode работа субагента заканчивается, как только он отдал отчёт тому, кто его вызвал, и лишних ходов, которые никто не прочитает, он не делает. Фоновые субагенты перестали просить второй, лишний ответ после каждого отчёта. Форк-субагент работает в режиме разрешений родителя и не может выйти из plan mode.
claude --desktop и claude plugin configure сокращают путь к сессиям и настройкам
Команда claude --desktop открывает приложение Claude в текущей папке, а с --continue или --resume <id> открывает нужную сессию. /resume и claude --resume на сессии, которая работает в фоне, открывают её, хотя раньше отказывали. Промпт из claude --resume <id> «prompt» уходит этой сессии следующим ходом.
Для плагинов добавили claude plugin configure <plugin>. Команда показывает параметры плагина и отмечает, какие из них не заданы, а с --values-stdin сохраняет новые значения из стандартного ввода. Вложенный MCP-сервер в формате .mcpb можно настроить прямо при установке: для этого в claude plugin install --config передаётся <server>.<key>=<value>. Сервер запускается сразу, без захода в /plugin → Configure.
Раньше плагин молча пропускал такой сервер, если тот ещё требовал настройки. Сейчас об этом сообщают /plugin, сообщение об установке и claude plugin install, и каждый из них отправляет вас в Configure.
Запасной запрос без стриминга делит лимит повторов с исходным
Когда стриминговый запрос не проходит, Claude Code пробует отправить его ещё раз обычным запросом, без стриминга. До 2.1.285 этот запасной путь получал собственный, нетронутый набор повторов. Если стриминг ломался снова и снова, один и тот же запрос уходил до 21 раза. Сейчас запасной запрос тратит тот же лимит повторов, что и исходный.
Представьте курьера, которому дали несколько попыток доставки. После неудач ему выдали другой фургон и отсчитали попытки заново, а клиент всё это время ждёт. Исправление оставляет одну общую квоту на обе машины.
Для тонкой настройки есть переменная CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES. Она ограничивает число повторов для запасного запроса, если тот упал по тайм-ауту. Пока такой запрос выполняется, SDK с включёнными частичными сообщениями шлёт событие ping каждые 30 секунд. Так работают Anthropic API, Claude Platform on AWS и шлюзы. Ответы, которые заблокировал фильтр контента API, иногда повторялись минутами. Сейчас сразу видна ошибка фильтра.
Слабых мест у релиза два. Заметки перечисляют допустимые значения allowedProviders, но не показывают, как записать саму настройку и что увидит пользователь, если его провайдер запрещён. Почему для фоновых команд выбран потолок в 2 часа, тоже не объяснено. На наш взгляд, жёсткий максимум неудобен тем, у кого долгие сборки и прогоны тестов: сборке длиннее двух часов в фоне Claude Code места нет.
Что проверить после обновления до 2.1.285
Если вы работаете через свой ANTHROPIC_BASE_URL, сессии будут использовать окно в 1M токенов у моделей, где оно есть: Opus 4.7+, Sonnet 5+ и Fable. Если ваш шлюз не пропускает больше 200K, запустите /autocompact 200k. MCP-сервер с именем widgets или похожим, например widgets_, не загрузится в облачных сессиях и на self-hosted раннерах, его придётся переименовать. Для /ultrareview на macOS и Linux нужен git 2.31 или новее.
Читайте также
- Sonnet 5.5 в Claude Code 2.1.284: цена из утечек сошлась
- Шлюз Claude Code 2.1.281 ходит в Bedrock под ролью IAM
- Claude Code научился собирать тесты для ваших приложений
- Claude Code в Desktop примеряет раскрывающийся блок лимитов
- Claude Code 2.1.283 научился держать новые модели за дверью
- Claude Code попробует не бросать правку на полпути
Комментарии
Пока никто не написал. Будьте первым.
Присоединяйтесь к разговору
Войдите через Google, чтобы оставить комментарий. Имя и аватар подставятся из вашего профиля Google, а комментарий появится после модерации.
