Claude Code v2.1.296: gateway policies, subagent compact, and fixes
Версия: 2.1.296
Крупное:
В managed.policies[] шлюза Claude apps добавлен ключ code: те же настройки, что у cli, применяются и во вкладке Code в Claude Desktop; рядом с desktop включает режим шлюза в Claude Desktop.
В frontmatter субагентов и определениях --agents добавлен autoCompactWindow — субагент может сжиматься раньше основного диалога.
Добавлена переменная CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL: все workflow-агенты идут на одной модели, остальные субагенты сохраняют свои.
Добавлена переменная CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS для более длинной максимальной задержки повторов при перегрузке (529).
В /plugin появилась пометка о плагине, чьи хуки пропущены из-за другого включённого плагина с тем же именем.
У инструмента Read появилась опция allow_large: Claude может прочитать текстовый файл сверх обычных лимитов за один вызов, если нужен весь файл и хватает контекста.
Улучшен полноэкранный режим: ссылка под курсором подчёркивается, показывая, что её можно открыть.
Ускорено переключение транскрипта (ctrl+o) в насыщенных кодом диалогах за счёт кэширования подсвеченных блоков.
Улучшена вкладка Code в Claude Desktop за шлюзом Claude apps: если сессия не стартует, причина показывается ответом.
Улучшены ошибки отказа в облачной сессии: объясняется, почему не загрузилась политика организации, и называется ключ API или токен, перекрывающий вход через claude.ai.
Улучшен вывод --debug: нераспознанные поля frontmatter в файлах кастомных агентов называются с подсказкой о вероятной опечатке.
Улучшен auto mode: вызов инструмента, не выполненный из-за отсутствия ответа проверки, показывается тусклой строкой «Not run» вместо красной ошибки.
Улучшен вывод --debug для хуков: командные хуки на вызовы инструментов, промпты, SessionStart и Stop логируют команду, плагин, результат и длительность.
Улучшен CLAUDE_CODE_TRANSCRIPT_LOCAL_GC: большой файл транскрипта не перезаписывается, если это освободит меньше 10%.
Обновлена цена чтения кэша Sonnet 5.5 до $0.10 за миллион токенов (было $0.20) в /cost, статус-строке, --max-budget-usd и цифрах SDK.
Обновлён встроенный навык dataviz: светлее фиолетовый для седьмой серии в светлой теме, мягче основной текст в тёмной, компактные подписи оси Y вида 1K.
Лимит описаний MCP-инструментов и инструкций MCP-серверов по умолчанию поднят с 2 048 до 4 096 символов.
Изменено поведение ←: ход или команда !, начатые при переходе сессии в фон, теперь останавливаются, а не завершаются незаметно.
[Cloud sessions] В списках Sessions и Runners на вкладке Activity в админ-настройках self-hosted окружения добавлен фильтр по статусу с выбором нескольких сразу.
[Claude Tag] На вкладке Memory страницы Activity для обладателей права Claude Tag Admin добавлены создание, редактирование и удаление файлов памяти рабочего пространства и канала.
[VSCode] Claude in Chrome теперь спрашивает перед действиями в браузере в каждой сессии, включая подключённую через @browser, как в терминале; разрешение сайта на сессию убирает повторные вопросы.
Минорное:
Исправлены хуки PreToolUse в managed-настройках, отклоняющие вызов с "continue": false, и managed-хуки prompt, блокирующие вызов: отказ происходит без завершения хода.
Исправлено неприменение updatedMCPToolOutput хуками PostToolUse в managed-настройках в некоторых сессиях.
Исправлен запуск в headless-сессиях отключённого для папки .mcp.json или MCP-сервера плагина после смены каталога или перезагрузки плагинов.
Исправлена блокировка ноутбуков, указывающих шлюз Claude apps в пользовательских настройках, когда шлюз отдаёт allowedProviders со значением "gateway".
Исправлено игнорирование сохранённого входа в шлюз Claude apps на машинах, где managed-настройки задают forceLoginMethod как gateway без forceLoginGatewayUrl (регрессия 2.1.295).
Исправлено открытие пустого диалога через --teleport, когда историю сессии не удалось прочитать.
Исправлен подсчёт токенов для Haiku 5.5 и других моделей только с адаптивным мышлением: сбой за некоторыми шлюзами и неверный учёт с budget thinking.
Исправлено ложное сообщение возобновлённым субагентам об отклонении вызова инструмента, прерванного завершением сессии.
Исправлено сокрытие секретов в общих транскриптах и отладочных логах: пропускались значения после ключа без значения, в том числе в JSON внутри shell-строки.
Исправлена лишняя escape-последовательность 52;c;… на экране после копирования в старых VTE-терминалах вроде MATE Terminal.
Исправлено ожидание тостов и уведомлений, пока открыта панель или диалог /diff.
Исправлено завершение headless-сессий, очистка набранного промпта или пропуск непроверенного промпта при Esc или прерывании во время хука UserPromptSubmit или prompt.submit мода.
Исправлен пропуск SessionStart-хуков плагина, загруженного после старта headless-сессии, если уже отработал другой плагин с тем же именем или его вариантом написания.
Исправлены вводящие в заблуждение ошибки claude self-hosted-runner при отказе в регистрации: теперь называется настройка админа организации либо необходимость нового work order для перезапущенного on-demand раннера.
Исправлен сбой git fetch, pull и push в сессии self-hosted раннера, когда другая сессия того же репозитория стартует на раннере с --capacity больше 1.
Исправлено молчаливое усечение workflow-скриптами результатов, опций агентов и других значений глубже примерно 20 000 уровней, а также огромные файлы вывода задач при глубоко вложенных результатах.
Исправлен запуск серверных $-методов плагина в рабочем каталоге основной сессии вместо каталога вызывающего агента и игнорирование хода, удерживаемого вызывающим хуком.
Исправлено успешное выполнение $.agent.register из хука мода, ещё работавшего после перезагрузки или удаления мода; теперь вызов отклоняется.
Исправлен отказ $.http.fetch в модах на HEAD-запрос, когда ответ объявляет Content-Length выше лимита тела в 4 МиБ.
Исправлен сбой claude plugin marketplace add, marketplace update и plugin install с внутренней ошибкой для маркетплейса с именем вроде constructor; add теперь явно отклоняет такие имена.
Исправлено удаление секрета плагина с именем constructor или prototype при следующем сохранении опций плагина.
Исправлен пропуск облачными сессиями проверок auto mode для действий Claude in Chrome, разрешённых сохранённым правом, когда флаги функций ещё не загрузились.
Исправлен повторный запуск завершённого хода через CLAUDE_CODE_RESUME_INTERRUPTED_TURN после перезапуска, если ход завершил результат MCP-инструмента.
Исправлено автоодобрение проверками прав Bash некоторых команд, задающих переменную BASH_ARGV0 и затем использующих её; теперь они требуют подтверждения.
Исправлена замена Edit и NotebookEdit всех не-ASCII символов в файлах не в UTF-8 (Windows-1252, Shift-JIS, GBK); такие правки теперь отклоняются.
Исправлен двойной запуск промпта, отправленного сразу после ←, один раз невидимо на переднем плане, при медленном ответе фоновой службы.
Исправлено исчезновение промпта, отправленного во время работы SessionStart-хуков, при переводе сессии в фон через ←; он по-прежнему не отправляется, но ↑ возвращает его.
Исправлено попадание вывода SessionStart-хука поздно загруженного плагина в новый диалог после /clear в headless-сессиях.
Исправлено невидение PowerShell-командами переменных, которые хуки пишут в CLAUDE_ENV_FILE (когда файл содержит только простые присваивания).
Исправлено называние Claude облачных сессий неинтерактивными и предложение /mcp или claude mcp при необходимости аутентификации MCP-сервера.
Исправлено завершение /code-review сырым JSON-массивом в облачных сессиях, Agent SDK и интеграциях с IDE; находки теперь выводятся нумерованным списком.
Исправлен случайный отказ auto mode в одном обновлении собственного артефакта с сообщением об изменении доступа, которого не было.
Исправлено незавершение установки навыков, синхронизированных с claude.ai, и повторная загрузка при каждой синхронизации, когда несколько сессий делят каталог конфигурации.
Исправлено отключение плагина, синхронизированного с claude.ai, когда объявленная им зависимость маркетплейса тоже синхронизирована с claude.ai.
Исправлено зависание запуска на macOS, когда пути плагинов, скопированные с Linux-машины, указывали внутрь /home.
Исправлен отказ инструмента Workflow на файлах скриптов с окончаниями строк CRLF, например выгруженных на Windows.
Исправлено отсутствие git_commit_id в событиях OpenTelemetry tool_result после git commit -q или git -C``commit.
Исправлена потеря сообщения из сохранённого транскрипта в CLAUDE_CODE_TRANSCRIPT_LOCAL_GC, когда его текст содержал разделитель строк или абзацев Unicode (U+2028, U+2029).
Исправлено оставление промпта в файле истории командой claude purge, когда его текст содержал разделитель строк или абзацев Unicode (U+2028, U+2029).
Windows: исправлен постоянный запрос прав для PowerShell-команд длиннее примерно 1 КБ — правила разрешений и определение read-only теперь работают до 32 КБ.
Windows: исправлено принудительное убийство stdio MCP-серверов при завершении; сначала закрывается stdin, а дерево процессов убивается только если сервер ещё работает через 300 мс.
Windows: исправлен сбой claude plugin install для GitHub-источников owner/repo на машинах без SSH-ключа GitHub; клонирование повторяется по HTTPS.
Windows: исправлено отсутствие запроса для rm -rf /c/Users/ в Git Bash в режиме bypass permissions.
[Cloud sessions] Исправлено одинаковое отображение позиции в очереди у всех облачных сессий, ждущих self-hosted раннера; теперь показывается, сколько сессий впереди.
[Cloud sessions] Исправлен перенос сообщения, отправленного во время ответа Claude в облачной сессии, выше этого ответа по завершении; теперь оно остаётся ниже, в том числе после перезагрузки.
[Claude Tag] Исправлены ссылки на URL со скобками в некоторых ответах Claude в Slack и чек-листах задач, показывавшие лишний текст в скобках и открывавшие не ту страницу.
[Claude Tag] Исправлена отрисовка цветовых образцов в ответах Claude в Slack рядом с кодами, лишь похожими на hex-цвета, например шестизначными номерами pull request.
[Claude Tag] Исправлено отображение ID плагина вместо имени в карточке подтверждения плагина, которую Claude публикует в канале Slack.
[Claude Tag] Исправлена публикация Claude в Slack карточки удаления плагина, которого нет в настройках канала; теперь объясняется происхождение плагина.
[Claude Tag] Исправлена иногда теряющаяся реплика Claude в Slack, когда сессия в self-hosted окружении переезжала на новый раннер посреди задачи.
[Code Review] Исправлено иногда остающееся «in progress» на pull request после завершения проверки Code Review; теперь показывается результат проверки.
[Code Review] Улучшены админ-настройки Code Review: объясняется причина невозможности сохранения, например ограничение политики, вместо общей ошибки.
[VSCode] Исправлено отсутствие claudeCode.spinnerVerbs в настройках расширения: settings.json теперь дополняет и проверяет его, а некорректное значение больше не ломает панель чата.
[VSCode] Исправлено неоткрытие файла на Windows для ссылок в чате, записанных полным путём Windows, например C:\repo\file.ts или file:///C:/repo/file.ts.
[VSCode] Исправлена продолжающаяся анимация индикатора работы при включённом уменьшении движения в ОС, VS Code или настройке prefersReducedMotion.
[VSCode] Исправлено чтение часов кэша промпта как тёплого после позднего догона сообщений панелью, например после выключенного дисплея или переподключения удалённого окна.
[Claude Tag] Изменено отображение футера со ссылкой на сессию, моделью и стоимостью в Claude in Slack: теперь только на самой новой реплике в ветке, у предыдущей футер убирается.