Anthropic разрешила переделывать Claude Code модами на TypeScript

Anthropic открыла Claude Code для модов - небольших функций на TypeScript и JavaScript, которые меняют поведение и интерфейс агента. Мод может переписать запрос, остановить опасную команду или добавить свою панель с кнопками. Поддержка появилась в версии 2.1.287.
Anthropic разрешила переделывать Claude Code модами на TypeScript

Claude Code, агент Anthropic для программирования, получил собственную систему модификаций. Если нужной функции нет в официальном релизе, теперь её можно дописать самому, и именно на этом компания строит анонс. Моды включены по умолчанию в терминальной версии Claude Code и во вкладке Code десктопного приложения Claude.

«Каждый работает по-своему, поэтому нет причин, чтобы у всех был одинаковый Claude»,

- пояснил создатель Claude Code Борис Черни в комментарии The New Stack.

Погода в контексте и шлагбаум перед опасными командами

Возможности модов нагляднее всего показывают три примера, которые Anthropic выложила вместе с анонсом Claude Code:

  • Token Weather — около 80 строк кода. Над строкой ввода появляется «прогноз погоды» для контекстного окна, от «ясно» при заполнении меньше чем на четверть до «грозы» на 75–89% и предупреждения о скором сжатии истории после 90%.
  • Blast Radius перехватывает рискованные команды вроде массового удаления файлов, жёсткого отката в Git или принудительной отправки изменений. Мод заранее оценивает, что пострадает, и открывает панель с кнопками «Продолжить» и «Отмена».
  • Replay Theater пошагово проигрывает все правки файлов за последний ход агента и показывает изменения на каждом шаге.

За время закрытого тестирования энтузиасты собрали и менее серьёзные вещи. В обсуждении модов на GitHub лежат анимированная ASCII-графика над строкой ввода, живая схема работы субагентов и полноценный Doom 1993 года, в который играют прямо внутри Claude Code.

Три хода мода — наблюдать, переписать, ответить самому

Claude Code на каждое действие генерирует событие. Это вызов инструмента, отправка запроса, запрос разрешения или отрисовка элемента интерфейса. Мод подписывается на нужные события и решает, что с ними делать.

Вариантов три. Мод может просто наблюдать и, например, вести журнал. Может изменить событие, дописав подсказку в запрос или поправив параметры команды. А может ответить сам, и тогда штатное поведение не запускается вовсе. Так мод блокирует команду или подменяет результат инструмента. Если на одно событие подписано несколько модов, они выстраиваются в цепочку, и первый загруженный первым видит событие и последним получает результат.

Хуки в Claude Code были и раньше, как и навыки с MCP-серверами. Все они работают снаружи, то есть запускают внешний скрипт или дают модели текст и инструменты. Мод выполняется внутри самого Claude Code и поэтому умеет рисовать. Он открывает панель рядом с перепиской, добавляет полосу с кнопками и полями над строкой ввода, перерисовывает штатные элементы вроде спиннера или строки вызова инструмента.

Anthropic переносит в моды собственные функции

Показательнее всего то, что Anthropic сама переводит встроенные функции Claude Code в формат модов. Уже так работают команда /diff для просмотра изменений и поддержка файла AGENTS.md с инструкциями проекта. Встроенный мод можно отключить и заменить своим. Компания обещает перенести и другие функции, чтобы пользователь держал минимальное ядро и добавлял только то, что ему нужно.

Исходники четырёх встроенных модов открыты в репозитории Claude Code на GitHub. Для сообщества это готовые образцы, для Anthropic — доказательство, что возможностей модов хватает на настоящие функции продукта. Claude Code постепенно превращается из готового инструмента в платформу, примерно как редактор VS Code, ценность которого во многом держится на расширениях.

Версия 2.1.287, терминал и десктоп

Моды требуют Claude Code версии 2.1.287 и новее. Сборка вышла 1 октября, однако в стабильном канале обновлений на 2 октября всё ещё стоит 2.1.285, так что пользователи проверенных сборок увидят моды позже. Ограничений по тарифам Anthropic не вводит, моды включены по умолчанию у всех, кто обновился.

Полностью моды работают в терминальной версии Claude Code, включая встроенный терминал редакторов и плагин для JetBrains, и во вкладке Code десктопного приложения. В расширении для VS Code, в фоновом запуске без интерфейса и в облачных сессиях логика мода исполняется, но его панели и кнопки не отображаются. В сессиях WSL в десктопном приложении моды не загружаются вовсе.

Ставятся моды как обычные плагины Claude Code, через команду /plugin из каталога Claude или из сторонних маркетплейсов, в том числе GitHub-репозиториев. Свой мод можно упаковать в плагин и отправить в каталог. Писать код самому необязательно. Достаточно описать задачу в сессии, и Claude Code сам напишет мод, установит его и подхватит без перезапуска. Например:

Сделай мод, который показывает над строкой ввода, сколько контекста уже занято, и предупреждает, когда пора сжимать историю.

После каждого сохранения файла мод перезагружается на лету, а накопленные данные сохраняются. Доводить его до ума можно прямо по ходу работы, не закрывая сессию.

Мод видит всё, включая API-ключ

У гибкости есть цена, и Anthropic называет её прямо. Моды Claude Code не изолированы в песочнице и работают с теми же правами, что и сам агент. Мод может читать и записывать файлы, запускать программы, ходить в сеть, видеть каждый запрос и каждый вызов инструмента. Ему доступны переменные окружения и файлы настроек вместе с хранящимися там ключами API. Он способен одобрить действие агента раньше, чем пользователь увидит запрос на разрешение, и тратить лимиты подписки на собственные обращения к модели.

Граница одна. Окно запроса разрешения мод изменить не может, поэтому подменить то, что пользователь видит при подтверждении, у него не выйдет. Чужой мод перед установкой можно проверить без запуска. Команда claude plugin validate выводит список событий, на которые он подписан, и его обращений к файлам, процессам и сети. Если после установки что-то пошло не так, Claude Code можно запустить с флагом --safe-mode, и установленные моды не загрузятся.

Компании получают защитный мод и белые списки

Для корпоративных клиентов Anthropic добавила встроенный мод sec-default. Он загружается первым на тарифах Team и Enterprise и на машинах с централизованно управляемыми настройками. Пользовательские моды при нём не могут обойти запреты администратора, менять системный промпт, корпоративные инструкции и инструменты управляемых MCP-серверов. Отключить sec-default сотрудник не может.

Остальное защитный мод не ограничивает. Чтобы закрыть доступ модам, которые сотрудники ставят сами, администратор включает режим «только моды организации». Можно пойти дальше и написать собственный мод с политикой безопасности. Он проверяет каждый загружаемый мод, отказывает, например, тем, что запускают внешние программы, и ведёт журнал всех вызовов. Среди командных сценариев Anthropic называет статус сборок и автотестов прямо в панели Claude Code и обязательное подтверждение перед правкой настроек боевых серверов.

Здесь нужно оговориться. Если проверка в моде администратора упала с ошибкой или не уложилась в отведённые 10 секунд, по умолчанию проверяемый мод проходит дальше, и строгую схему приходится настраивать отдельно. На такое поведение во время тестирования жаловались специалисты по безопасности. Сам sec-default при сбое поступает наоборот и блокирует пользовательские моды.

Перед установкой чужого мода

Тем, кто ведёт в Claude Code сайты и проекты клиентов, мод разумно воспринимать как программу с полным доступом к рабочей папке. Если в проекте лежат пароли от базы данных или ключи платёжных сервисов, мод прочитает их так же легко, как сам агент. Запрет на чтение таких файлов в настройках Claude Code касается только агента, мод его обходит. Моды из незнакомых источников лучше сначала прогонять через проверку, а начинать с собственных, которые Claude Code пишет по описанию. Тогда весь код перед глазами.

Конструктор, который Anthropic собирает из своих деталей

Моды делают из Claude Code конструктор, и Anthropic первой собирает его из собственных деталей. Первая проверочная точка — переход версии 2.1.287 в стабильный канал, после которого моды получат все пользователи. Вторая наступит с первым вредоносным модом в открытом каталоге. От того, как на него отреагируют Anthropic и администраторы компаний, зависит, приживутся ли моды в корпоративной работе или останутся площадкой для экспериментов энтузиастов.

Источник:
20:07
30
Нет комментариев. Ваш будет первым!