SpyBara
Go Premium

plugins/mods/create.md 2026-11-10 21:57 UTC to 2026-11-11 22:59 UTC

No changes for this document in this history range.

2026
Tue 10 21:57

Создание мода

Попросите Claude написать мод Claude Code из описания или напишите его сами, чтобы подсчитывать вызовы инструментов и добавить команду. Изучите цикл перезагрузки и валидации.

Мод — это плагин Claude Code с файлом входа, называемым модулем хуков: файл JavaScript или TypeScript, функции которого Claude Code вызывает при возникновении событий. Чтобы создать мод:

  • Попросите Claude написать его: опишите, что вы хотите в сеансе Claude Code
  • Напишите его сами: следуйте руководству, чтобы узнать, как работает код мода. Вам не нужны Node.js, бандлер или этап сборки, потому что Claude Code загружает файлы .js и .ts напрямую.

Если вы еще не решили, является ли мод правильным инструментом, сначала прочитайте сравнение на странице обзора.

[!NOTE]

Используйте Claude Code v2.1.287 или более позднюю версию. В вашей оболочке выполните claude --version, чтобы проверить. Чтобы узнать, могут ли моды загружаться для вас, см. Проверка возможности загрузки модов.

Попросите Claude написать мод

Опишите нужный вам мод в интерактивном сеансе Claude Code, и Claude напишет его. Claude работает из встроенного skill с именем plugin-authoring, который сообщает ему, где написать мод, какие события и методы есть в вашей версии, и как загружается мод. Claude может загрузить skill, когда вы попросите мод, или вы можете загрузить его сами, выполнив /plugin-authoring в приглашении Claude Code.

В режимах разрешений auto и bypassPermissions мод может запуститься по завершении хода. В остальных случаях он запускается после того, как вы его одобрите, кроме сессий, где мод, написанный Claude, не может загрузиться.

1. Опишите мод

Попросите мод своими словами, например make a mod that shows the current git branch above the prompt. Claude пишет мод в отдельном каталоге в папке модов сеанса, которая находится в ~/.claude/dev-mods/, за которой следует ID сеанса. Полный путь мода выглядит как ~/.claude/dev-mods/3f2a9c1e-5b7d-4e8a-9c21-6d0f4b8a7e13/git-branch/.

[!NOTE]

В режимах разрешений default и acceptEdits Claude Code просит вас одобрить каждый из файлов мода перед тем, как Claude его создаст, потому что папка модов — это защищённый путь. Одобрите каждый файл по мере его появления.

2. Одобрите мод

Когда Claude сохраняет первый файл, Claude Code спрашивает, следует ли включить горячую перезагрузку для сессии. Горячая перезагрузка запускает моды, написанные Claude в этой сессии, и подхватывает каждое последующее изменение. Если вопрос не появляется, пропустите этот шаг.

Выберите один из этих ответов:

  • Turn them on: моды в папке модов сессии загружаются при завершении хода и перезагружаются в конце каждого хода, который их изменяет. Ваш ответ действует для сессии, в том числе после её возобновления.
  • Not now: пока ничего не загружается. Файлы остаются там, где их написал Claude, и моды загружаются при следующем запуске этой сессии. Чтобы мод никогда не загружался, удалите его каталог.

3. Проверьте, что мод загрузился

Выполните /plugin в приглашении Claude Code и нажимайте Tab, пока не будет выбрана вкладка Installed. Она перечисляет мод, и вы можете отключить его там.

4. Попробуйте мод

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

Если строка транскрипта, начинающаяся с имени мода, сообщает, что изменение не загрузилось, вставьте эту строку в следующее сообщение, когда будете просить Claude исправить проблему. Claude не видит эту строку, если вы её не вставите.

Используйте мод в других сеансах

Мод, написанный Claude, загружается только в сеансе, который его создал, и Claude Code удаляет папку модов этого сеанса после того, как она старше cleanupPeriodDays. Чтобы сохранить мод, скопируйте его каталог из папки модов в место по вашему выбору, например ~/mods/git-branch. Затем выберите, как его загружать:

  • В сеансе, который вы запускаете: в вашей оболочке выполните claude --plugin-dir ~/mods/git-branch
  • Для других людей: добавьте его на маркетплейс, чтобы они могли его установить

Сеансы, где мод, написанный Claude, не может загрузиться

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

  • Никого нет, чтобы одобрить: сессия не может показать вам запрос, как при запуске claude -p вне режимов auto и bypassPermissions или в режиме dontAsk
  • Рабочая область не доверена: вы не приняли приглашение доверия для каталога
  • Моды отключены: вы запустили с --safe-mode или --bare, вы задали disableAllHooks, или управляемые настройки вашей организации это блокируют

Напишите мод сами

В этом руководстве вы создаёте мод с именем first-mod, который подсчитывает вызовы инструментов, которые делает Claude, показывает счётчик рядом со спиннером во время работы Claude и добавляет команду /tally, которая его выводит. Затем вы читаете объявления типов, которые Claude Code пишет рядом с вашим модом, и выполняете claude plugin validate. Вместе они показывают вам события и методы, которые предлагает ваша версия, и что Claude Code читает из вашего кода.

Эта запись показывает готовый мод. Спиннер подсчитывает вызовы инструментов, /tally выводит счётчик, и редактирование кода вступает в силу во время работы сеанса: