Claude Code v2.1.257: Fable 5.1, time formats, security fixes
Версия: v2.1.257
Крупное:
Добавлена модель Claude Fable 5.1 (claude-fable-5-1), теперь по умолчанию — 1M контекст, $10/$50 за Mtok, $0.25/Mtok за чтение кэша
Добавлены настройки «Формат времени» (timeFormat) и timeZone: 12-часовой, 24-часовой, 24-часовой UTC или strftime-шаблон для часов в конце хода и временных меток в просмотре транскрипта
Добавлено правило Containment Escape в авторежиме: получение облачных метаданных-учёток, обход egress и кросс-тенантные обращения больше не авто-одобряются, если окружение не помечает их как ожидаемые
Добавлена переменная CLAUDE_CODE_SUBAGENT_MODEL_FORCE для применения CLAUDE_CODE_SUBAGENT_MODEL (или основной модели) ко всем субагентам, игнорируя переопределения моделей при спавне и в определении агента
Добавлена опция s в /effort для изменения усилия только для текущей сессии, аналогично /model
Добавлено предупреждение /doctor об устаревших файлах sandbox mask, оставшихся после убитой сессии
Добавлен одноразовый запрос в авторежиме перед первым чтением файла вне рабочих директорий, с опцией блокировки таких чтений (permissions.blockReadsOutsideWorkingDirectories)
Добавлена поддержка description от шлюза для обнаруженных записей в пикере /model (CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY); записи без него по-прежнему показывают «From gateway»
Улучшена производительность рендеринга: меньше перерисовок за ход в длинных разговорах, стриминг больше не замедляется по мере роста ответа, обновления фоновых агентов больше не перерисовывают весь экран
Улучшена отзывчивость ввода промпта за счёт уменьшения работы рендеринга на каждое нажатие клавиши
Улучшена диагностика policy helper: ошибки обновления теперь показываются в /status, отклонение диалога управляемых настроек выводит причину выхода Claude Code, таймауты helper сообщаются как таймауты
Улучшен /code-review --comment: теперь публикует замечания в merge requests GitLab через glab mr note вместо сообщения о неподдерживаемой цели
Улучшены уведомления: MCP-запрос или запрос разрешения, поставленный в очередь под другим диалогом, теперь отправляет фоновое уведомление с той же задержкой, что и видимый запрос
Улучшен вывод verbose/транскрипта: уведомления о завершении асинхронных хуков, приходящие вместе, теперь отображаются в одной строке вместо одной строки на хук
Улучшен claude self-hosted-runner --configure-git: теперь включает переговоры при push, так что первая отправка новой ветки из устаревшего клона загружает только новые коммиты, а не всё дерево
Улучшена передача сигналов жизни SDK-хостам, пока ответ удерживается keep-alive шлюза, чтобы долгие ожидания при повышенном CLAUDE_STREAM_IDLE_TIMEOUT_MS не воспринимались как зависшая сессия
Улучшены отладочные/ошибочные логи MCP-подключений и OAuth: учётные данные в URL сервера или заголовках запросов теперь редактируются
Улучшен /fork: сохраняет кэш промпта исходного разговора в новой фоновой сессии; брифинг worktree теперь приходит как сообщение, а не как изменение системного промпта
Изменено --effort: теперь снимает удержание усилия по умолчанию для новой модели только для этой сессии, а не навсегда; выбранное на claude.ai усилие для сессии Remote Control теперь применяется во время удержания
Изменено поведение policyHelper в MDM или managed-settings.json, затенённого при запуске кэшированными серверными настройками: теперь он запускается (или завершается) сразу после того, как fetch сообщит об их удалении, а не при следующем запуске
Изменено managedSourcesBehavior: "merge": теперь берёт sandbox.credentials.awsPairs и sandbox.ripgrep целиком из наивысшего управляемого источника, который их задаёт, вместо объединения значений источников
Изменено обнаружение моделей шлюза (CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1): теперь выполняется даже при установленном CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC, так как запрашивает только ваш шлюз
Изменено claude --resume --bg: теперь продолжает сессию под её собственным ID, если ничего её не запускает, вместо молчаливого запуска копии; копия теперь анонсируется
Изменена навигация по истории /btw с ←/→ на Shift+←/Shift+→ (или [/]), переходя по недавним побочным вопросам и обратно к живому ответу
Изменено defaultMode: "bypassPermissions" в .claude/settings.json или .claude/settings.local.json: теперь игнорируется, как "auto"; устанавливайте его в пользовательских или управляемых настройках, или передавайте --permission-mode
Изменено поведение fable и best в сессиях Claude apps gateway: пока остаются на Fable 5, так как шлюзы, ещё не настроенные для Fable 5.1, отклоняют его; выберите Fable 5.1 в /model, чтобы использовать его
Изменены --add-dir, /add-dir и additionalDirectories: теперь отказывают сетевым путям (UNC-шары, /net/ автомаунты) с сообщением до их обработки; на Windows используйте букву диска
Изменены запросы входа и обновления токена Claude apps gateway: теперь проверяют закреплённый TLS-сертификат шлюза, как это уже делает получение управляемых настроек
Изменены облачные сессии Cowork и claude.ai: чтение артефакта, не принадлежащего вам, теперь всегда требует подтверждения, даже в авторежиме
Удалено объяснение Ctrl+E в промптах разрешений Bash и PowerShell
[VSCode] Добавлены сворачиваемые заголовки секций ACCOUNT & USAGE и SESSION MANAGER в панель списка сессий, с email аккаунта, счётчиком использования и ссылкой View details, открывающей диалог использования
[VSCode] Добавлена пилюля модели в нижней части ввода, показывающая текущую модель и открывающая пикер моделей, с строкой Effort и страницей «More models»
[VSCode] Добавлен переключатель сворачивания для секции Ungrouped в списке сессий
[VSCode] Добавлен выбор стиля вывода в командное меню, включая пользовательские стили
[VSCode] Изменено меню действий: теперь список слэш-команд отображается в фильтруемом диалоге «Slash commands» вместо инлайн; выбор запускает команду; диалог MCP-серверов получил такое же поле фильтра
[VSCode] Изменено «Delete session» на «Archive session»: архивированные сессии перемещаются в сворачиваемую группу «Archived sessions» внизу списка с действием Unarchive
Минорное:
Исправлено, что настройки в папке .claude/, созданной после запуска, не подхватывались до перезапуска
Исправлено, что сессии, запущенные из представления агента, открытого с ←, всегда стартовали в режиме разрешений исходной сессии, игнорируя defaultMode целевой директории и permissionMode агента
Исправлено, что ребинды Ctrl+G в keybindings.json игнорировались в claude agents; теперь Ctrl+S / Ctrl+T можно переназначать через новый контекст Agents
Исправлено, что фоновые сессии не запускались на macOS при npm-установках во время самообновления и на Windows, когда устаревший файл блокировки демона указывал на переиспользованный PID
Исправлено, что рабочий спиннер останавливался, пока ответ стримился за панелью слэш-команд
Исправлено, что detail в state.json фоновой сессии повторял свой собственный промпт диспетчеризации после запланированного пробуждения
Исправлено, что claude agents держал фоновую сессию, которую вы повторно запросили, в Completed после её повторного завершения; теперь Completed сортируется по последнему завершению
Исправлено, что claude --bg из только что удалённой директории сообщал «backgrounded» и оставлял строку упавшей сессии; теперь он печатает причину и выходит с кодом 1
Исправлено, что Remote Control, подключаясь в середине сессии, повторно отправлял определение Bash-инструмента, вызывая промах кэша промпта
Исправлено, что дважды указанный пользовательский заголовок Authorization переопределял настроенные учётные данные на Bedrock, Mantle, Vertex и WIF, а мастер настройки Vertex подхватывал оставшийся профиль Anthropic из ~/.config/anthropic
Исправлено, что Claude apps gateway отправлял посторонние заголовки Authorization или профиля хоста в Foundry, Vertex и Bedrock, а также что upstream Foundry Entra ID не запускались при установленном ANTHROPIC_FOUNDRY_API_KEY
Исправлено, что оставшийся ключ API Anthropic или токен аутентификации отправлялся вместе с ключом подписки Foundry в режиме API-ключа
Исправлено, что рутины /schedule, чей промпт был сохранён без роли сообщения, запускались без действия
Исправлено, что claude agents не сообщал, что фоновая сессия ждёт одобрения сообщения от другой сессии или кто его отправил
Исправлено, что промпт, сохранённый с Ctrl+S внутри открытой фоновой сессии, терялся, когда сессия переходила в ожидание или останавливалась, а затем открывалась снова
Исправлено, что настройки телеметрии (OTEL), переданные через серверные управляемые настройки, игнорировались при тёплых запусках, включая сессии Code в десктопном приложении
Исправлено, что запрос разрешения тиммейта отвечался дважды, когда запись в почтовый ящик лидера была кратко заблокирована
Исправлено, что под выполняемым ходом отображалась фантомная дублирующаяся строка слэш-команды, пока стримился авто-продолженный ответ команды
Исправлено, что значения timeoutMs и refreshIntervalMs в policyHelper выше максимума таймера (2147483647) вызывали сбои или повторные запуски каждую миллисекунду; теперь они ограничиваются
Исправлено, что счётчик токенов зависал или замедлялся после переключения на транскрипт другого субагента; также счётчики фоновых субагентов и тиммейтов теперь обновляются в реальном времени во время стриминга ответа
Исправлено, что сетевые хосты sandbox, записанные с завершающей точкой (example.com.), не блокировались записью deniedDomains внутри sandbox, а «не спрашивать снова» для такого хоста продолжало запрашивать
Исправлено, что отклонение запроса согласия Remote Control (Esc или n в claude remote-control) считалось согласием, и следующий запрос подключался без запроса
Исправлено, что /mcp reconnect и enable всё ещё подключали MCP-сервер из файла настроек, который управляемый список разрешений/запретов MCP или strictPluginOnlyCustomization должен блокировать после запуска
Исправлено, что claude mcp remove оставлял сохранённые OAuth-учётные данные удалённого сервера, когда strictPluginOnlyCustomization ограничивает MCP только плагинными серверами
Исправлено, что сессии Remote Control (claude remote-control), запущенные из приложения Claude, игнорировали выбранную модель и работали на модели по умолчанию машины
Исправлено, что --disallowedTools и правила запрета сессии терялись после первой перезагрузки настроек при включённом allowManagedPermissionRulesOnly
Исправлено, что --resume перечислял фоновый разговор дважды, а --continue открывал его устаревшую копию до фона; теперь --continue также открывает завершённые фоновые сессии
Исправлено, что полноэкранный режим не позволял кликнуть вывод команды ! для разворачивания
Исправлено, что фоновые сессии, работающие на старом бинарнике Claude Code, накапливались при автообновлениях вместо завершения
Исправлено, что claude agents --json кратко переключал терминал в raw-режим и отменял настройки терминала другой программы при выходе
Исправлено, что сессии с проактивным стилем вывода зацикливались с филлерными сообщениями и повторными чтениями логов вместо ожидания, пока запущенная фоновая команда или Monitor завершится
Исправлено, что субагенты останавливались, когда ответ обрывался на середине стрима из-за сна компьютера, обрыва соединения или ошибки сервера; теперь они автоматически продолжают вместо завершения с неполным ответом
Исправлено, что ← ничего не делал в панели /btw внутри сессии claude agents: теперь он возвращает к списку агентов (даже в середине ответа), и панель возвращается при повторном открытии сессии
Исправлено, что сессии с установленной моделью советника теряли кэш промпта на фоновых запросах (компактизация, /recap, предложения промптов) и каждый раз отправляли полный разговор без кэша
Исправлено, что claude -p завершался примерно через 5 секунд после финального результата, пока Monitor, запущенный моделью, ещё работал; теперь он ждёт срабатывания или таймаута
Исправлено, что правило permissions.ask пропускалось в авторежиме, когда соответствующая команда выполнялась внутри составной команды или подшеллы, позволяя ей запускаться без запроса подтверждения
Исправлено, что плагины могли читать файлы вне своей директории через объявленный путь команды, агента, навыка, хуков или другого компонента, являющийся симлинком; такие пути теперь отклоняются с ошибкой
Исправлено, что /add-dir отклонял директорию внутри текущей рабочей директории; теперь он загружает навыки, команды и агенты этой директории, как --add-dir при запуске
Исправлено, что главный агент не уведомлялся, когда вы возобновляли субагента, которого остановили из его представления транскрипта
Исправлена ошибка при вставке ANSI-цветного текста (например, CI-лога) в диалоги вроде /feedback
Исправлено, что claude mcp add/remove зависал или исчерпывал память, когда .mcp.json проекта является FIFO или симлинком на файл устройства; теперь он быстро завершается с понятным сообщением
Исправлен неограниченный рост памяти при передаче не-JSONL данных в claude -p --input-format stream-json; теперь он быстро завершается с чёткой ошибкой
Исправлено, что фонирование хода (← или Ctrl+B) во время работы субагента или другого инструмента иногда заставляло фоновую сессию считать этот инструмент отклонённым вместо повторного запуска
Исправлено, что правила запрета Bash Read()/Edit() не применялись к редиректам < file и командам чтения вроде tac и egrep; правило запрета на любой аргумент или цель редиректа теперь отклоняет команду
Исправлено, что возобновление или отправка сообщения субагенту, чей транскрипт превысил 5 МБ (например, после чтения многих изображений), завершалось ошибкой «No transcript found»
Исправлено, что изолированные сессии worktree отказывали в Bash-циклах, чтении $VAR, "$(…)" и heredoc, которые не касаются git, как «слишком сложно проверить, что они остаются внутри worktree»
Исправлено, что /model и /effort показывали предупреждение о кэше промпта после перемотки разговора обратно к пустому
Исправлены промахи кэша промпта на каждом ходу в длинных сессиях с большим количеством скриншотов, когда изображения превышали лимит размера на запрос
Исправлено, что diff-просмотр в промпте разрешения Edit отображал эмодзи и многокодовые символы с неправильной шириной
Исправлено, что ошибки подключения WebSocket MCP-сервера логировались как «[object ErrorEvent]» вместо основной ошибки
Исправлено, что фоновые сессии не открывались с ошибкой «Couldn't start the background service», пока другой процесс Claude Code скачивал npm-обновление; теперь запуск ждёт его
Исправлено, что фоновые команды, отсоединяющиеся от шелла (например, под timeout или setsid), переживали остановку задачи или выход Claude Code
Исправлено, что Claude не уведомлялся, когда вы останавливаете фоновую команду из панели задач или подключённого клиента
Исправлено, что остановка фонового субагента оставляла его мониторы работающими
Исправлено, что sandbox-команды git в связанном worktree теряли доступ на запись к общему .git репозитория после cd в поддиректорию
Исправлено, что запросы Bedrock и Bedrock Mantle замолкали во время длинных фаз скрытого мышления на Opus 4.7 и новее, что позволяло таймаутам простоя обрывать соединение; теперь поток несёт события прогресса
Исправлено, что запуск Claude Code после истечения или отзыва сессии Claude apps gateway сообщал сетевую ошибку вместо сообщения о завершении сессии и предложения /login
Исправлено, что облачные сессии теряли git/GitHub-учётные данные на остаток сессии, когда сетевой прокси сессии не запускался при старте; теперь он повторяется в фоне и восстанавливается
Исправлено, что оставшиеся папки cc-daemon-* в системной временной директории после прерванного запуска фонового демона; теперь их удаляет очистка cleanupPeriodDays
Исправлено, что проверки разрешений Bash авто-одобряли некоторые [[ ]] условные выражения, которые zsh парсит иначе, чем bash; теперь эти команды запрашивают одобрение
Исправлено, что промпт одобрения управляемых настроек показывал общее предупреждение вместо текста телеметрии, когда настройки также отключают детальное трассирование или логирование сырых тел API, или включают экспорт трасс
Исправлено, что тиммейты агент-команды в панелях tmux/iTerm2 иногда оставались открытыми после подтверждения запроса на завершение
Исправлено, что вход без ключа в Console («Sign in with your Console account») не применял серверные управляемые настройки организации, а /status не показывал организацию для этого входа
[VSCode] Исправлено, что развёртывания сторонних провайдеров (Bedrock, Vertex и другие) всё ещё показывали функции только для claude.ai (удалённые сессии, диктовка, использование) и вызывали claude.ai с оставшимся логином
[VSCode] Исправлено, что счётчик использования в панели списка сессий оставался пустым после загрузки панели; теперь он сразу показывает последнее известное использование
[VSCode] Исправлен переключатель «Enable Remote Control for all sessions»: теперь его включение или выключение применяется к уже открытым сессиям, а не только к новым
[VSCode] Исправлены объявления скринридера: управляющий символ перед fence или заголовком больше не убирает видимые строки из речи, а жирные маркеры, охватывающие заголовок, больше не сопоставляются неправильно