Claude Code · версия 2.1.260
Claude Code 2.1.260: что нового
Claude Code 2.1.260: diff-панель /diff в полноэкранном режиме, причины промахов кеша в /cost, исправления разрешений, Bedrock, /rewind и Fable 5.1.
Новое 6
- Добавлена diff-панель, которая открывается рядом с диалогом в полноэкранном режиме и показывает незакоммиченные изменения по мере правок Claude; переключается командой
/diff - В
/costи в полеprompt_cacheстроки состояния добавлена вероятная причина промахов кеша промпта (например, изменились определения инструментов или системный промпт, либо простой дольше TTL) - В headless-сессии добавлена команда
/reload-plugins, теперь она появляется в списках команд Claude Code Desktop и SDK - Добавлена текстовая форма
/advisor(/advisor,/advisor <model>,/advisor off) для десктопного приложения, Remote Control и других headless-сессий (-p/Agent SDK) - В шлюз Claude apps добавлен параметр
oidc.scope_on_refreshдля IdP, которые возвращают id_token при обновлении, только если снова запроситьopenid - В шлюзе Claude apps добавлена поддержка новых ключей Claude Desktop в блоках политик
desktop, включаяuserPluginMarketplacesEnabledиuserPluginUploadsEnabled
Улучшено 19
- Улучшен структурированный вывод: Workflow
agent({schema})сразу отклоняет JSON Schema, которой невозможно удовлетворить, а ошибки превышения лимита повторов теперь содержат последнюю ошибку валидации - Улучшено удаление фоновой сессии, у которой в worktree есть непушнутые коммиты: сообщение теперь называет ветку и число коммитов, а повторное удаление сбрасывает worktree
- Улучшен лог ошибки обновления в шлюзе Claude apps: теперь в нём указан шаг, на котором произошёл сбой
- Улучшено потребление CPU в простое неинтерактивными сессиями (
-p/ SDK) - Улучшен шлюз Claude apps на Amazon Bedrock: входные токены прерванного запроса теперь считаются бесплатным API AWS CountTokens (нужно выдать
bedrock:CountTokens) вместо запроса на один токен - Улучшено сообщение об ошибке в настройках для правил вроде
Edit(C:\dir\(name)\**), где\(читается как экранированная скобка, а не как разделитель пути: теперь оно предлагает однозначную запись - Улучшено автоматическое сжатие контекста для моделей с контекстом 1M: сессии Opus и Fable теперь сжимаются незадолго до лимита в 1M токенов, а восстановительное сжатие на очень больших контекстах больше не падает по таймауту в 10 минут
- Улучшены
/ultrareviewиclaude ultrareview: теперь они ждут долгие облачные ревью до 45 минут (раньше 30) - Улучшена команда
/effortна Claude Fable 5.1: смена уровня усилий посреди сессии больше не инвалидирует кеш промпта - Обновлён встроенный скилл
claude-api: в примерах на Go, Java и C# теперь используются ID моделей текущего поколения, а также уточнено, что более дешёвые модели для воркеров и субагентов тоже должны быть текущего поколения - Изменено поведение
ctrl+l/cmd+kв полноэкранном режиме: они очищают вид транскрипта, какclearв терминале; чтобы увидеть прежние сообщения, прокрутите вверх - Изменена обработка разрешений с текстом после закрывающей скобки (например,
Bash(ls) x): такие правила никогда ничему не соответствовали, а теперь сообщается о невалидных настройках вместо молчаливого игнорирования - Изменены настройки, управляемые сервером: управляемый CLAUDE.md (
claudeMd) больше не вызывает диалог подтверждения безопасности; хуки, shell-команды, песочница и небезопасные настройкиenvпо-прежнему требуют подтверждения - Изменено поведение Claude in Chrome: теперь он следует административной настройке Claude in Chrome вашей организации; если администратор её отключил,
--chrome,/chromeи инструменты браузера недоступны - Изменён шлюз Claude apps: он отправляет
orgPluginSettingsв формате списка, который читает Claude Desktop 1.15200.0 и новее; более старые версии Desktop его игнорируют - Изменён шлюз Claude apps: он также отказывается запускаться, называя поле, если в политике
desktopдопущена опечатка в поле вложенного объекта записиmanagedMcpServersилиorgPluginSettings - Изменено выполнение команд, введённых в bash-режиме через
!: они запускаются вне песочницы, даже если включён строгий режим (sandbox.allowUnsandboxedCommands: false), как при вводе в собственном терминале - Изменено поведение
--kill-session-after-minу self-hosted раннера: сессия, которая только ждёт пользователя, теперь освобождается (приостанавливается и возобновляется со следующим сообщением), а не убивается с сообщением об ошибке - Убран лимит в один час на фоновые команды, запущенные субагентами: теперь они работают, пока не завершатся или не будут остановлены, как и в основной сессии
Исправлено 33
- Исправлено: правила разрешений
Edit/Write/Readс круглыми скобками в пути отбрасывались как невалидные или игнорировались песочницей Bash, из-за чего папки «только для чтения» оставались доступны для записи - Исправлено: одно файловое правило разрешений с некомпилируемым паттерном (например, с незакрытой
[) приводило к ошибкеInvalid regular expressionпри любой правке файла; теперь такое правило deny защищает буквальный путь, который в нём записан - Исправлено: проверки разрешений Bash автоматически одобряли команды zsh, скрывающие подстановку команды в присваивании REPORTTIME, REPORTMEMORY или DIRSTACKSIZE; теперь для них запрашивается подтверждение
- Исправлено: обнаружение моделей Bedrock, подсчёт токенов и вызовы учётных данных AWS SSO/STS падали с ошибкой «unable to get local issuer certificate», если корпоративный корневой сертификат есть только в хранилище сертификатов ОС
- Исправлено:
permissions.blockReadsOutsideWorkingDirectoriesна macOS скрывал git-конфиг пользователя от git в песочнице и скрывал собственный checkout субагента, изолированного в worktree - Исправлено: управляемые настройки не загружались у пользователей claude.ai Enterprise/Team, у которых после прежнего
/loginостался API-ключ - Исправлено:
/statusпоказывал вошедший аккаунт claude.ai и настроенный API-ключ так, будто действуют оба; теперь неиспользуемые учётные данные помечаются - Исправлено: управляемые записи
skillOverridesс ключом по алиасу встроенного скилла (например,checkupдля/doctor) не применялись, а правила denySkill(name)не покрывали вложенный скилл, указанный как<dir>:name - Исправлено: агенты с
model: fableигнорировали тег[1m]в значенииANTHROPIC_DEFAULT_FABLE_MODELи молча работали с контекстным окном 200K - Исправлено: в выборе
/modelне отображалась Fable 5.1 для организаций, которым она доступна; она принималась, только если ввести/model claude-fable-5-1 - Исправлено: кеширование промпта в Claude Fable 5.1 не покрывало контекст, добавленный после результатов инструментов, и он заново отправлялся некешированным на каждом ходе с вызовом инструмента
- Исправлено: после ошибки загрузки хука плагина переключение модели оставалось заблокированным до конца сессии; теперь каждое переключение проверяется заново, а в отказе указана причина
- Исправлено: переключение модели блокировалось на всю сессию, если не удавалось загрузить маркетплейс плагина, управляемого организацией
- Исправлено: MCP-серверы, предоставляемые через SDK (например, коннекторы Desktop), иногда отсутствовали на первом ходе и появлялись только на следующем
- Исправлено: инструменты Claude in Chrome посреди задачи падали с ошибкой «Not connected» в облачных сессиях claude.ai при добавлении или удалении коннектора
- Исправлено: флаги, составные эмодзи и буквы с диакритикой разрывались при переносе строк, а устаревший текст оставался на экране, когда флаг или составной эмодзи попадал в последние две колонки терминала (теперь показывается
…) - Исправлено: Remote Control принимал выбор модели с недопустимым названием; теперь он отклоняется с ошибкой, а не падает на следующем сообщении
- Исправлено:
/rewindи--rewind-filesсообщали об успехе, когда файлы резервных копий контрольных точек отсутствовали и ничего фактически не восстанавливалось - Исправлено:
/rewindоставлял устаревшее отслеживание прочитанных файлов от откатанных ходов, из-за чего после внешних правок появлялись заглушки «File unchanged since last read» и повторная вставка файлов целиком - Исправлено:
-p --resume/--continue(используется в десктопном приложении) падали при каждой повторной попытке, если у каталога worktree сессии пропали метаданные git; теперь ошибка происходит один раз, после чего сессия возобновляется без worktree - Исправлено: субагент, возобновивший другого агента через SendMessage, не пробуждался по завершении этого агента (уведомление уходило в основной диалог)
- Исправлено для команд агентов: в транскрипте in-process тиммейта терялись сообщения или он становился пустым во время долгих ожиданий повторных API-запросов (например, при
CLAUDE_CODE_RETRY_WATCHDOG), так как уведомления о повторах вытесняли настоящие сообщения - Исправлено: сессия, перешедшая в фон, дважды появлялась в ListAgents (один раз как фантомный «interactive»-двойник с тем же именем) и получала доставки SendMessage во вьюере
- Исправлено: периодические ошибки «task output swap refused», когда много сессий работают в одном каталоге проекта
- Исправлено: Ctrl+Z в полноэкранном режиме оставлял оболочку на альтернативном экране, поверх приостановленного интерфейса
- Исправлено: субагенты инструмента Workflow перезапускались как зависшие, пока ещё шло длительное сжатие контекста
- Исправлено: плагины из маркетплейса по URL не устанавливались с ошибкой «marketplace entry path does not stay inside the marketplace directory», если приложение-хост (например, Claude Desktop) сохраняет его как каталог
- Исправлено: при публикации артефакта в сессии, которой вы управляете из claude.ai, десктопного приложения или мобильного (Remote Control), открывалась лишняя вкладка браузера
- Исправлено: первый вызов инструмента Artifact в некоторых сессиях Cowork падал с ошибкой валидации «Invalid tool parameters»
- Исправлено: выделение строк в IDE терялось при запуске скилла или слеш-команды (контекст «N lines selected» теперь доходит до Claude)
- Исправлено: определение репозитория для проектов GitLab во вложенных подгруппах (например,
gitlab.com/group/subgroup/project) - Исправлено: ссылки на задачи вида
owner/repo#123в отрендеренном выводе вели на github.com при работе в репозитории GitLab; теперь они ведут на задачу на gitlab.com - Glob/Grep: исправлена проверка пути поиска на диске до проверки разрешений; отсутствующий путь теперь сообщается после решения по разрешению, как в Read
Другое 8
- Отменено изменение из 2.1.259, применявшее правила deny
Read()к аргументам Bash: оно блокировалоnpm run buildпри правилеRead(.//build/)во всех режимах и вызывало запрос подтверждения дляcd … && grepдаже в авторежиме - [VSCode] Добавлен выбранный уровень усилий в плашку модели в футере, исправлен устаревший уровень усилий после смены модели, а плашки в футере возвращены к прежнему компактному размеру
- [VSCode] Добавлены пункты «Открытые» и «Закрытые» в меню фильтра статуса в списке сессий
- [VSCode] Исправлено: приветственный экран пропадал в новой сессии, когда Remote Control включался автоматически
- [VSCode] Исправлено: выбор из истории сессий загружал сессию повторно, если она уже открыта в другой вкладке; теперь происходит переключение на эту вкладку
- [VSCode] Исправлено: команда Rename во вкладке сессии молча ничего не делала, пока вид вкладки перезагружался; теперь она всегда применяется
- [VSCode] Исправлено: недописанное сообщение, пустая карточка инструмента или лишняя строка «Thought for» оставались на экране после того, как Claude Code повторял запрос при обрыве ответа
- [VSCode] Исправлено: переключатель «Enable Remote Control for all sessions» не применялся к вкладке сессии, которая ещё запускалась в момент переключения
Перевод официального CHANGELOG.md Claude Code. Перевод автоматический, при расхождениях приоритет у оригинала на английском.