Клодыч В Telegram ↗

Claude Code · версия 2.1.285

Claude Code 2.1.285: что нового

Claude Code 2.1.285: флаг --desktop, настройка плагинов через CLI, allowedProviders и множество исправлений Artifact, Remote Control, хуков и MCP.

Релиз Новое: 6Улучшено: 36Исправлено: 62Другое: 32

Новое 6

  • Добавлена переменная окружения CLAUDE_CODE_DISABLE_WEB_FETCH для отключения инструмента WebFetch
  • Добавлена команда claude --desktop: открывает десктопное приложение Claude в текущей директории или в сессии с --continue / --resume <id>
  • Добавлена команда claude plugin configure <plugin>: показывает параметры плагина и то, какие из них не заданы, либо сохраняет новые значения, считанные из stdin с флагом --values-stdin
  • В claude plugin install --config добавлен формат <server>.<key>=<value>: настройки встроенного MCP-сервера из .mcpb можно задать при установке, и он запустится без захода в /plugin → Configure
  • Добавлена управляемая настройка allowedProviders, ограничивающая набор API-провайдеров, доступных на машине (Anthropic API, кастомный endpoint, Bedrock, Mantle, Vertex AI, Foundry, Claude Platform on AWS или Cloud gateway)
  • Добавлена переменная окружения CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES, ограничивающая число повторных отправок нестримингового запасного запроса, завершившегося по таймауту

Улучшено 36

  • Улучшен Claude in Chrome: нативный хост теперь сообщает имя вашего компьютера, поэтому подключённые браузеры можно подписывать по компьютеру, а не как «Browser 1» / «Browser 2»
  • Улучшена работа сессий Bedrock и Vertex AI: если администратор убирает доступ к модели по умолчанию, вместо ошибки происходит переключение на более старую доступную модель того же уровня, а заголовки и сводки сессий тоже используют этот запасной вариант
  • Улучшены ошибки маркетплейса плагинов: теперь они называют причину, по которой git-адрес отклонён, а не ссылаются на корпоративную политику
  • Улучшена проверка git URL для плагинов, маркетплейсов и remote текущего репозитория
  • Улучшены результаты инструмента Artifact: теперь они предлагают опубликовать страницу на том же шаге, что и её создание или редактирование, что может сэкономить один обмен запросами
  • Улучшен Remote Control: побочный вопрос /btw, заданный сессии, которую ведёт приложение вроде Claude Desktop, теперь видит текущий ход, а не только последний завершённый
  • Улучшена отправка изображений в форматах BMP, HEIC, HEIF, AVIF и TIFF: приложения Claude теперь показывают превью там, где Claude Code может их конвертировать
  • Улучшены субагенты в авторежиме: работа субагента теперь завершается сразу после передачи отчёта вызвавшему его агенту, а не тратит лишние ходы, результат которых никому не доходит
  • Улучшена проверка моделей при запуске Bedrock и Vertex: модели, недоступные вашему аккаунту, теперь запоминаются на срок до суток и не проверяются заново при каждом запуске
  • Улучшены результаты публикации в инструменте Artifact: теперь они расходуют меньше токенов — примечание об обновлении артефакта стало короче, а подсказка, где найти артефакты, больше не повторяется после каждой публикации
  • Улучшена «живость» SDK во время запасного запроса без стриминга: при включённых частичных сообщениях событие потока ping теперь отправляется каждые 30 секунд в Anthropic API, Claude Platform on AWS и на шлюзах
  • Улучшены /resume и claude --resume для сессии, работающей в фоне: теперь они открывают эту сессию, а не отказывают, а промпт, переданный через claude --resume <id> "prompt", отправляется в неё как следующий ход
  • Улучшена производительность на каждом ходе, когда настроено много правил запрета разрешений и MCP-инструментов
  • Улучшена отзывчивость при выходе из режима просмотра транскрипта (ctrl+o) в длинных сессиях, когда полноэкранный режим отключён
  • Улучшены стартовые проверки моделей в Bedrock, Vertex и Mantle: теперь они отправляют те же заголовки User-Agent, x-app и ID сессии, что и обычные запросы
  • Изменено поведение MCP-инструментов: инструмент, у которого в _meta['anthropic/alwaysLoad'] задано false, остаётся отложенным, даже если его сервер из --mcp-config, Agent SDK или плагина настроен с alwaysLoad
  • Изменено поведение фоновых команд Bash и PowerShell: они останавливаются по истечении лимита времени (timeout вместе с run_in_background, по умолчанию 30 минут, максимум 2 часа); Claude получает уведомление об остановке
  • Изменено поведение проверки pull request в Code Review и /ultrareview: они запускаются при включённом disableWorkflows, если только эта настройка не задана администратором на машине, где выполняется проверка (через MDM или файл managed-settings)
  • Изменено поведение сессий с собственным ANTHROPIC_BASE_URL: теперь они используют контекстное окно 1M у моделей, которые его поддерживают (Opus 4.7+, Sonnet 5+, Fable); если ваш шлюз ограничен 200K, выполните /autocompact 200k
  • Изменено поведение сессий Team и Enterprise, а также сессий, в которых Claude Code не может определить тарифный план: если политику организации не удалось загрузить при запуске, WebFetch недоступен, пока она не загрузится
  • Изменено поведение /memory: автопамять больше нельзя включить из фоновой сессии или из сессии, запущенной одним из собственных инструментов Claude Code; выключение там по-прежнему работает
  • Изменено разовое предложение сделать auto mode режимом разрешений по умолчанию: теперь оно показывается и у сторонних провайдеров, и при отключённой телеметрии, если в пользовательских настройках по умолчанию указан другой режим
  • Изменено поведение claude -p и сессий Python Agent SDK у сторонних провайдеров или при отключённой телеметрии: если режим разрешений не настроен, они запускаются в auto mode, как интерактивные сессии; --permission-mode по-прежнему имеет приоритет
  • Изменено поведение запросов Bedrock, Mantle и Claude Platform on AWS к базовому URL с нестандартным портом: порт теперь включается в заголовок Host, подписываемый SigV4
  • Изменено: имя MCP-сервера widgets зарезервировано в облачных сессиях и на self-hosted раннерах; ваш собственный сервер с таким именем или похожим написанием, например widgets_, больше не загружается, так что переименуйте его
  • Изменено поведение /ultrareview на macOS и Linux: при загрузке локального чекаута символические ссылки (symbolic refs) исключаются; чекаут, текущая ветка которого является символической ссылкой, теперь отклоняется с пояснением
  • Windows: изменено поведение env в настройках проекта и локальных настройках: они больше не задают ALLUSERSPROFILE, SystemDrive и переменные CommonProgramFiles; задавайте их в пользовательских или управляемых настройках
  • Изменено поведение /tasks: фоновые задачи, которые Claude Code запускает для себя, сворачиваются в одну строку «System tasks»; нажмите Enter на ней, чтобы их показать
  • Изменено поведение /ultrareview на macOS и Linux: для загрузки локального репозитория нужен git 2.31 или новее; чекауты, сделанные с --separate-git-dir, теперь отклоняются, а не загружаются старым способом
  • Изменено поведение загрузки /ultrareview на macOS и Linux: partial clone отправляется как снимок рабочего дерева на git 2.31 и новее, а не переключается на запасной способ и не отклоняется из-за якобы слишком старой версии git
  • Изменено поведение загрузки /ultrareview на macOS и Linux: на старых версиях git partial clone, в котором не хватает некоторых файлов рабочего дерева, отклоняется вместо докачивания; клон, сделанный без --filter, загружается
  • Изменено: стартовые проверки моделей в Bedrock, Vertex и Mantle теперь представляются как Claude Code, как и другие запросы Claude Code
  • Изменено поведение claude mcp get: команда, аргументы и значения переменных окружения stdio MCP-серверов, предоставленных плагинами, скрываются; имена переменных по-прежнему отображаются
  • Изменено: /claude-api больше нельзя запускать из клиентов Remote Control
  • Изменено поведение /config chrome=true: вместо включения Claude in Chrome по умолчанию команда направляет вас в панель /config; /config chrome=false по-прежнему выключает его, если он был включён
  • Изменены настройки песочницы: настройки проекта больше не могут расширять или отключать песочницу, обязательную по требованию администратора, подменять прокси при управляемом списке запретов, расширять строгий список разрешённого или снова открывать доступ на чтение, запрещённый управляемыми настройками

Исправлено 62

  • Исправлен claude -p с CLAUDE_CODE_FORK_SUBAGENT=1: собственный вызов Agent у субагента теперь выполняется в фоновом режиме не будет, а идёт синхронно, поэтому субагент получает результат дочернего агента
  • Исправлено: установка и обновление плагинов и маркетплейсов по SSH игнорировали ssh-программу, заданную в GIT_SSH или в core.sshCommand вашего git-конфига
  • Исправлено: Claude Code отказывался запускаться, если ОС запрещала чтение файла управляемых настроек; теперь он выводит предупреждение и стартует без политик из этого файла. Остальные ошибки чтения и нечитаемые файлы по-прежнему останавливают любую сессию
  • Исправлено: облачные сессии, перезапущенные после сжатия контекста, отклоняли следующее обновление артефакта, который сессия уже прочитала или опубликовала
  • Исправлено: claude plugin disable и enable с полным id вида name@marketplace меняли запись в настройках с другим регистром букв, а не запись установленного плагина
  • Исправлено: файлы, прикреплённые к сообщению через Remote Control, терялись после одной неудачной загрузки; теперь при сетевой ошибке, таймауте или ошибке сервера загрузка повторяется до двух раз
  • Исправлено: при смене модели посреди сессии запросом set_model (например, setModel из Agent SDK) новая модель до перезапуска работала со встроенным лимитом выходных токенов и окном автосжатия
  • Исправлено: в замаскированных логах и транскриптах виден фрагмент пароля в URL, содержащего @, а если @ записан как %40 — пароль целиком
  • Исправлено: запросы парольной фразы SSH и подтверждения нового хоста при fetch для worktree и /teleport перехватывали терминал; теперь такие fetch сразу завершаются ошибкой, ничего не спрашивая
  • Исправлено: отключение MCP-сервера, добавленного посреди сессии в SDK и -p, оставляло его инструменты доступными
  • Исправлено: в claude -p --permission-prompt-tool запрос разрешения от фонового субагента теперь уходит в prompt-инструмент, а не отклоняется автоматически
  • Исправлено: claude mcp list, claude mcp get, а также сообщение об ошибке «не найдено» в claude mcp remove, login и logout выводили переводы строк и управляющие escape-последовательности терминала из имён и значений MCP-серверов
  • Исправлено: автоодобрение в песочнице запрашивало подтверждение при каждом запуске многих инлайн-скриптов (python3 -c, node -e) только из-за наличия в них =
  • Исправлено: форк-субагенты не сохраняли режим планирования сессии и режим dontAsk; теперь форк работает в режиме разрешений родителя и не может выйти из режима планирования
  • Исправлено: claude remote-control --help утверждал, что --[no-]chrome по умолчанию берёт настройку /chrome с машины; запущенные сессии оставляют Claude in Chrome выключенным, если не передан --chrome
  • Исправлено: фоновые субагенты в авторежиме запрашивали второй, лишний ответ после каждого отчёта
  • Исправлено: создание облачных сессий и /remote-env читали только 20 самых новых окружений аккаунта
  • Исправлено: Remote Control помечал сообщение прочитанным сразу при получении, а не когда Claude приступал к нему, и терял сообщение, всё ещё стоявшее в очереди при выходе из терминала (теперь оно приходит при следующем возобновлении)
  • Исправлено: установка плагина через claude plugin install или /plugin могла попасть в кеш или папку данных уже установленного плагина, если их id отличались только символами ., -, @ или (на macOS и Windows) регистром; теперь такая установка отклоняется
  • Исправлено: хуки и SDK-колбэки разрешений видели отсутствующий или устаревший план в ExitPlanMode, если план был записан в том же ответе
  • Исправлено: первый ответ в облачных сессиях приходил с задержкой в десятки миллисекунд — регрессия версии 2.1.283
  • Исправлено: сессии, аутентифицирующиеся через ANTHROPIC_AUTH_TOKEN в Anthropic API, никогда не загружали политику организации
  • Исправлено: неудачный вызов agent(), parallel() или pipeline(), результат которого скрипт workflow ожидает позже или не ожидает вовсе, считался необработанным отклонением промиса и мог завершить фоновую сессию
  • Исправлено: синхронные хуки подвешивали Claude Code, пока фоновый процесс, запущенный хуком (например, some-daemon &), держал свой вывод открытым; теперь хук завершается вскоре после выхода собственного процесса
  • Исправлено: WebFetch сообщал о превышении лимита запросов при проверке безопасности домена как о сетевой блокировке или блокировке корпоративной политикой
  • Исправлено: транскрипт по ctrl+o в полноэкранном режиме ненадолго зависал при открытии на ходах с сотнями чтений файлов или поисков; вызовы инструментов, ещё выполняющиеся при открытии транскрипта, теперь показывают результаты по завершении
  • Исправлено: при промежуточных ошибках Amazon Bedrock modelTimeoutException и serviceUnavailableException в середине стрима вместо текста ошибки показывалось сырое JSON-тело
  • Исправлено: /autofix-pr и /schedule сообщали, что Claude GitHub App не установлен в репозитории, статус установки которого ещё не был проверен
  • Исправлено: скрытие строки (x) в /artifacts отвязывало её файл от артефакта, поэтому повторная публикация того же файла создавала новый артефакт вместо обновления
  • Исправлено: публикация через инструмент Artifact после отката разговора (Esc Esc) перезаписывала более новое содержимое файла, которое Claude читал только в откатанных ходах; теперь публикация отклоняется, пока Claude не перечитает файл
  • Исправлено: правило разрешения Artifact («больше не спрашивать») позволяло инструменту Artifact публиковать файл вне рабочих директорий без запроса; чтобы правило покрывало такой файл, добавьте его папку через --add-dir
  • Исправлено: /cost и modelUsage в SDK относили ход к неверной модели, когда на отказ сервер отвечал другой запасной моделью, чем ожидал клиент
  • Исправлено: при публикации страницы инструментом Artifact Claude больше не может перезаписать её исходный файл без повторного чтения, если предыдущее чтение было прервано или файл с тех пор изменился
  • Исправлено: авторежим пропускал классификатор для загрузки ресурсов инструментом Artifact и для чтения чужого артефакта, если вы ранее одобрили этот артефакт в другом режиме разрешений
  • Исправлено: /ultrareview выдавал вводящую в заблуждение ошибку «core.worktree is set», когда папку проекта на короткое время не удавалось прочитать
  • Исправлено: /ultrareview на macOS и Linux не мог загрузить рабочее дерево из git worktree, в конфигурации которого задан core.longpaths
  • Исправлено: инструмент Artifact иногда сообщал о конфликте публикации с другой сессией после повтора из-за временной ошибки сервера, хотя первая попытка на самом деле прошла успешно
  • Исправлено: при загрузке через /ultrareview попадали незакоммиченные изменения файлов с учётными данными, в имени которых перед расширением стоит двоеточие, например server:8443.key
  • Исправлено: редкий сбой авторизации, когда две сессии одновременно восстанавливали блокировку обновления входа, оставшуюся после аварийно завершившегося процесса
  • Исправлено: проверка разрешений в инструменте PowerShell пропускала правила deny и ask и кэшировала этот сбой для последующих проверок, если не удавалось запустить парсер команд (например, при нехватке памяти)
  • Исправлено: загрузка через /ultrareview на macOS и Linux работала медленно на некоторых необычных именах файлов, а проверка файлов с учётными данными пропускала имена файлов и папок с большим числом пометок резервных копий или редакторов
  • Исправлено: отменённая shell-команда или хук всё равно запускались и выполнялись до конца, если отмена приходила во время их подготовки
  • Исправлено в режиме vim: после редактирования во внешнем редакторе (Ctrl+G) x или r в режиме NORMAL больше не ломают плейсхолдер вставленного текста в конце промпта
  • Исправлено: ответы, заблокированные фильтром выходного контента API, отправлялись повторно и ретраились, иногда по несколько минут, вместо того чтобы сразу показать ошибку фильтра
  • Исправлено: плагины молча пропускали встроенный MCP-сервер .mcpb, которому ещё нужна настройка. Теперь /plugin, сообщение об установке и claude plugin install сообщают об этом и указывают на Configure
  • Исправлено: сжатие контекста или возобновление сессии завершалось ошибкой, открывалось без истории или падало, если в сохранённом транскрипте была метка сжатия или запись пробуждения цикла с отсутствующими или некорректными полями
  • WSL: исправлено: /ultrareview отказывался загружать репозиторий на Linux-томе, если в имени изменённого файла есть двоеточие или оно заканчивается точкой либо пробелом
  • Исправлено: CLAUDE_CODE_RESUME_INTERRUPTED_TURN повторно запускал ход, завершившийся из-за --max-turns
  • Исправлено: вход в аккаунт мог ждать бесконечно после того, как браузер показал успех
  • Windows: исправлено: в некоторых случаях /ultrareview загружал связанный worktree репозитория, корень которого находится в домашней папке
  • Исправлено: облачные сессии сообщали об отсутствии папки загрузок ещё до загрузки любого файла
  • Исправлено: ответ из claude agents в фоновую сессию, ожидающую подтверждения разрешения, иногда одобрял ожидающую команду
  • Исправлено: claude attach, logs, stop, respawn и rm запускали новую сессию с именем команды в качестве промпта, если перед ними стояли опции, например из шелл-алиаса
  • Исправлено: claude mcp list не показывал MCP-серверы WebSocket (ws). Теперь каждый из них выводится с URL и статусом работоспособности
  • Исправлено: claude mcp get не показывал Type, Command, Args и Environment для stdio-серверов, в конфигурации которых опущено поле type
  • Исправлено: правила allow из .claude/settings.local.json задерживались вне git-репозитория, если настроен вывод trace2 в git
  • Исправлено: заготовка eval-раннера и построитель отчётов /claude-api писали в выходной файл через симлинк или жёсткую ссылку, подложенные на его место
  • Исправлено: заготовка eval-раннера /claude-api учитывала в средних оценках ответы, обрезанные по max_tokens. Теперь они помечаются как усечённые и считаются отдельно
  • Исправлено: &nbsp; отображался в терминале как обычный текст, когда ответ использует его для отступов, например в подписях строк markdown-таблицы
  • Исправлено: кратковременное зависание (до секунды) в середине длинных сессий вне полноэкранного режима, которое возвращалось после /clear или /compact
  • Исправлено: одобренный Edit не применялся, если его целью было устройство, например файл-симлинк на /dev/null, а одобрение пришло из окна диффа в IDE или изменило правку
  • Исправлено: неудачный API-запрос ретраился до 21 раза, если стриминг постоянно падал. Теперь запасной вариант без стриминга использует общий лимит повторов запроса, а не получает новый набор

Другое 32

  • [VSCode] Добавлена заметка под последним сообщением восстановленной вкладки, если его прервала перезагрузка окна и ответа не будет
  • [VSCode] Добавлена форма параметров плагина в Manage plugins: при установке плагина с параметрами запрашиваются незаданные, а изменить их позже можно через шестерёнку в строке плагина
  • [VSCode] Добавлен инструмент диагностики по запросу: Claude в панели может в любой момент прочитать текущие ошибки и предупреждения из панели Problems, а не только сразу после правки файла
  • [VSCode] Исправлено: нажатие Enter после ввода слеш-команды запускало не тот пункт меню, выбранный нечётким поиском, или ничего не делало
  • [VSCode] Исправлено: в открытом транскрипте агента в длинной сессии пропадали новые сообщения агента
  • [VSCode] Исправлено: сообщение с цитатой тега Claude Code или IDE терялось в чате, оставляя лишь часть текста
  • [VSCode] Исправлено: сообщение, отправленное во время работы Claude, пропадало из беседы после повторного открытия сессии
  • [VSCode] Исправлено: на вкладке Web в списке сессий после смены аккаунта показывались сессии предыдущего аккаунта
  • [VSCode] Исправлено: восстановленные вкладки повторно запускали прерванный ход, если VS Code был запущен с CLAUDE_CODE_RESUME_INTERRUPTED_TURN, даже при выключенном Continue After Reload
  • [VSCode] Исправлено: Escape останавливал выполняющийся ход вместо закрытия меню команд после клика по одной из его строк
  • [VSCode] Исправлено: открытие Past conversations заменяло активную беседу её сохранённой копией
  • [VSCode] Исправлено: вкладка Claude, перезагруженная после перезапуска расширения, оставалась пустой, не подсказывая, как восстановить работу
  • [VSCode] Исправлено: открытие беседы, которая уже открыта в другом окне или приложении, без предупреждения запускало вторую её копию; теперь сначала задаётся вопрос
  • [VSCode] Исправлено: причина, по которой хук заблокировал или остановил промпт, пропадала после перезагрузки окна
  • [VSCode] Исправлено: вкладки зависали на беседе, которую нельзя возобновить; теперь ошибка сообщает об этом и предлагает начать новую беседу
  • [VSCode] Исправлено: каждый вызов Read, Write и Edit зависал на десять минут и затем пропускался, если редактор переставал отвечать на автоматическое сохранение от расширения перед запуском инструмента
  • [VSCode] Исправлено: карта агентов подписывала субагента моделью сессии, а не той моделью, на которой он реально работал (например, при CLAUDE_CODE_SUBAGENT_MODEL_FORCE или собственном model агента)
  • [VSCode] Исправлено: удаление плагина в диалоге Manage plugins убирало не ту установку или завершалось ошибкой для плагина, установленного на уровне проекта
  • [VSCode] Исправлено: вход зависал на шаге ввода кода авторизации, если вернуться назад и снова выбрать тот же способ входа
  • [VSCode] Исправлено: панель чата зависала, когда в длинной сессии обрезались самые старые строки
  • [VSCode] Исправлено: переписка пропадала из сессии при работе множества агентов
  • [VSCode] Исправлено: вкладка редактора сохраняла старое имя после переименования сессии через /rename, хуком SessionStart или на claude.ai
  • [VSCode] Исправлено: в просмотре транскрипта на карте агентов не отображались сообщения, отправленные работающему агенту
  • [VSCode] Улучшен диалог Manage plugins: при ошибке действия с плагином теперь открывается всплывающее окно с объяснением и, если есть, предложением исправления
  • [VSCode] Изменён диалог Manage plugins: теперь он спрашивает подтверждение перед удалением маркетплейса или отключением плагина, который включён в общем .claude/settings.json вашего проекта
  • [Облачные сессии] Исправлено: кнопка Run now у рутины показывала внутренний текст ошибки, если запуск отклонялся до старта; теперь показывается то же объяснение, что и в уведомлении о сбое рутины
  • [Облачные сессии] Изменено поведение MCP_DISCOVERY_CACHE=1, заданного в переменных облачного окружения, а не в файле настроек: после перезапуска сессии повторно используются списки инструментов ваших коннекторов; остальные MCP-серверы больше не кэшируются и подключаются при запуске
  • [Claude Tag] Добавлены личные сообщения с Claude для участников тарифа Enterprise с местом Standard или Usage-Based Chat, у которых есть Cowork; место с Claude Code больше не требуется
  • [Claude Tag] Исправлено: настройка Default model в админских настройках и на странице Configure канала предлагала модели, недоступные вашей организации, из-за чего не сохранялись настройки или не создавались новые сессии
  • [Claude Tag] Исправлено: примечание под сообщениями Claude в Slack о том, что он ответил на резервной модели и почему, пропадало, когда Claude позже редактировал это сообщение
  • [Code Review] Исправлено: меню организаций в диалоге «Add a repository» в Code Review показывало лишь несколько ваших организаций GitHub; теперь остальные подгружаются при прокрутке
  • [Code Review] Улучшена проверка Code Review: теперь она сообщает, что REVIEW.md вашего репозитория не был применён, например при очень большом pull request или если REVIEW.md является символической ссылкой
Следить за обновлениями через RSS

Перевод официального CHANGELOG.md Claude Code. Перевод автоматический, при расхождениях приоритет у оригинала на английском.

Получить API-ключ →