The post has been translated automatically. Original language: Russian
The Claude Code console agent has received several versions in a row — 2.1.269, 2.1.270, 2.1.271 and 2.1.272. A notable part of the changes concerns not the capabilities of the model, but the boundaries within which the agent is allowed to execute commands in your system. For anyone who lets an AI agent into a working environment with shell access, this is the most practical part of the release.
Network access is granted to a separate command
In automatic sandbox mode, the allowed_domains parameter has appeared, which is set not for the entire session, but for a specific Bash, PowerShell, or Monitor call. The hosts needed by the team are reviewed together with the team itself and opened only for it; requests to other hosts are rejected. This is a point-based granting of access instead of a general network permission.
Next to it is the accept-command flag with a SHA-256 hash for installing and updating plugins: instead of agreeing unconditionally, you confirm exactly the command that the previous run in JSON mode showed.
Closed gaps in checking shell command permissions
The most meaningful group of edits is parsing commands before requesting permission. Such corrections have been announced:
- the check did not take into account the file that commands like fmt and column read if the file name came after an option unknown to the parser.;
- the files in which the mask is opened were skipped if the mask was in the command template or in the option value — the example from the release description looks like grep with the option and the directory mask.;
- shell variable declaration flags could distort the idea of which command is actually being executed.;
- commands with two directory changes, with a subshell, or with a chain of going to the directory and calling git passed the request when the restriction on reading outside the working directories was enabled — in non-confirmation mode and in automatic mode.
In the previous version, two more similar cases were closed: the rules prohibiting editing and checking the write path did not apply to the file that tee writes to. And the ban or request rule, starting with an exclamation mark, now applies only inside the settings file where it is written.
Plug-ins, telemetry, and MCP
There is a command to run a set of plugin checks with reproducible results in the form of JSON and HTML reports. An environment variable has been added to the telemetry that marks metrics and events with the attributes of the version control repository.
Regarding the MCP, several unpleasant things were fixed at once: constant high processor load and repeated requests for the list of tools when the server sends notifications about changes to the list in a tight cycle; errors in the client's OAuth registration, due to which refusal of consent led to the creation of a new registration, and a parallel entry could delete the current one. The built-in MCP server mode now sends a progress update every 30 seconds so that the client does not interrupt a long command that does not print anything.
What does this mean in practice?
If the agent works for you in CI or on a machine with access to a private network, it is worth re-reading your own permission rules for Bash. Several corrections in a row in command parsing mean a simple thing: previously, some commands were tested differently from what you expected, that is, the actual perimeter was wider than what was written. The "all for tee" permissions and rules with an exclamation mark at the beginning are the first candidates for revision, their behavior has changed.
The second point is for those with automation: Monitor observations now always have a deadline of no more than 30 minutes, and in single—sample runs of 10 minutes; the no-timeout option has been removed, and instead the agent receives a notification to restart the observation. Scenarios designed for endless waiting will have to be rewritten.
The third is cost accounting: the multiplier in the managed price setting now takes values above one, up to ten, for internal tariffs with a margin when costs are re—allocated to divisions.
The draft text was prepared with the participation of AI, the facts were checked against the original source — the official Claude Code modification file in the project repository.
Консольный агент Claude Code получил подряд несколько версий — 2.1.269, 2.1.270, 2.1.271 и 2.1.272. Заметная часть изменений касается не возможностей модели, а границ, внутри которых агенту разрешено исполнять команды в вашей системе. Для всех, кто пускает ИИ-агента в рабочее окружение с доступом к оболочке, это самая практичная часть релиза.
Сетевой доступ выдаётся отдельной команде
В автоматическом режиме с песочницей появился параметр allowed_domains, который задаётся не на всю сессию, а для конкретного вызова Bash, PowerShell или Monitor. Хосты, нужные команде, рассматриваются вместе с самой командой и открываются только для неё; обращения к остальным хостам отклоняются. Это точечная выдача доступа вместо общего разрешения на сеть.
Рядом — флаг accept-command с хешем SHA-256 для установки и обновления плагинов: вместо безусловного согласия вы подтверждаете ровно ту команду, которую показал предыдущий прогон в режиме JSON.
Закрытые пробелы в проверке прав на команды оболочки
Самая содержательная группа правок — разбор команд перед запросом разрешения. Заявлены такие исправления:
- проверка не учитывала файл, который читают команды вроде fmt и column, если имя файла шло после опции, неизвестной разборщику;
- пропускались файлы, в которые раскрывается маска, если маска стояла в шаблоне команды или в значении опции — пример из описания релиза выглядит как grep с опцией и маской каталога;
- флаги объявления переменных оболочки могли исказить представление о том, какая команда на самом деле исполняется;
- команды с двумя сменами каталога, с подоболочкой или с цепочкой перехода в каталог и вызова git проходили мимо запроса при включённом ограничении на чтение вне рабочих каталогов — в режиме без подтверждений и в автоматическом.
В предыдущей версии закрыли ещё два похожих случая: правила запрета на редактирование и проверка пути записи не применялись к файлу, в который пишет tee. И правило запрета или запроса, начинающееся с восклицательного знака, теперь действует только внутри того файла настроек, где записано.
Плагины, телеметрия и MCP
Появилась команда запуска набора проверок плагина с воспроизводимым результатом в виде отчётов JSON и HTML. В телеметрию добавлена переменная окружения, помечающая метрики и события атрибутами репозитория системы контроля версий.
По части MCP исправлены сразу несколько неприятных вещей: постоянная высокая нагрузка на процессор и повторяющиеся запросы списка инструментов, когда сервер шлёт уведомления об изменении списка в плотном цикле; ошибки в OAuth-регистрации клиента, из-за которых отказ в согласии приводил к созданию новой регистрации, а параллельная запись могла удалить действующую. Встроенный режим MCP-сервера теперь каждые 30 секунд шлёт обновление прогресса, чтобы клиент не прерывал по таймауту долгую команду, которая ничего не печатает.
Что это значит на практике
Если агент работает у вас в CI или на машине с доступом в приватную сеть, стоит перечитать собственные правила разрешений для Bash. Несколько исправлений подряд в разборе команд означают простую вещь: раньше часть команд проходила проверку не так, как вы ожидали, то есть фактический периметр был шире написанного. Разрешения вида «всё для tee» и правила с восклицательным знаком в начале — первые кандидаты на пересмотр, их поведение изменилось.
Второй пункт для тех, у кого автоматизация: наблюдения Monitor теперь всегда имеют предельный срок — не более 30 минут, а в однопромптовых прогонах 10 минут; вариант без таймаута убран, вместо него агенту приходит уведомление взвести наблюдение заново. Сценарии, рассчитанные на бесконечное ожидание, придётся переписать.
Третье — учёт расходов: множитель в управляемой настройке цен теперь принимает значения выше единицы, вплоть до десяти, для внутренних тарифов с наценкой при перевыставлении затрат подразделениям.
Черновик текста подготовлен с участием ИИ, факты сверены с первоисточником — официальный файл изменений Claude Code в репозитории проекта.