Содержание
Где хранятся навыки в проекте
Давайте приступим к практике работы с навыками в Claude Code. Прежде чем перейти к примерам, нужно разобраться, где хранятся навыки в проектах Claude Code. В документации есть раздел, где описано, где живут навыки.
В первую очередь нас интересует personal - настройки на уровне пользователя операционной системы. Расположение навыка зависит от того, в какой операционной системе вы работаете. По сути, это домашняя директория пользователя, директория .claude и папка навыков.
Самое важное - навыки живут в поддиректории skills. Для каждого навыка нужно создать отдельную поддиректорию с именем навыка, для разделения слов в имени, как правило, используется тире. Внутри обязателен файл SKILL.md - в нём описывается логика, которую должен выполнять навык.
Если говорить об уровне проекта, директория .claude находится в корневой директории проекта, и структура та же: skills, папка с именем навыка и SKILL.md. Для плагинов - точно так же.
Файл SKILL.md состоит из описательной части: имя навыка и описание. Описание задаёт условия, при которых навык может выполняться автоматически - навыки запускаются как вручную, так и автоматически в ходе выполнения других фоновых задач. В description пишется, например: "Используй его при таких-то условиях". Дальше идёт описание самого навыка.
Создание тестового навыка
Попробуем создать тестовый навык в тестовом проекте. Есть тестовый файл test.txt, и нужно сделать простой навык, чтобы продемонстрировать его работу - он будет удалять из файла дублирующиеся строки.
В корне проекта создаём новую поддиректорию skills. Внутри - поддиректорию для конкретного навыка, назовём её duplicate-remover. Дальше нужен файл SKILL.md, который будет содержать инструкции.
Имя навыка в файле обычно совпадает с именем папки - duplicate-remover. Описание можно написать так: "Вызывай этот навык, когда просят удалить дубликаты из файла", и указать путь до файла - в нашем случае test.txt.
Дальше описываем задачу, которую должен выполнять навык, например: "Твоя задача - найти строки, которые дублируются в файле test.txt, который находится в корне проекта, и удалить повторяющиеся строки, чтобы в файле не осталось дубликатов". На этом навык создан.
Проверка работы навыка
Теперь запускаем Claude Code, вводим символ слэша - и сразу видим созданный навык duplicate-remover. Обратите внимание: описание (description), которое мы написали, выводится в правой части, чтобы было понятно, что это за навык. Нажимаем Enter, чтобы навык выполнился - он отработал отлично.
Отменим изменения и проверим, подхватываются ли правки в инструкциях без перезагрузки Claude Code. Дополним файл SKILL.md инструкцией: в конце файла добавить строку "успех" после удаления дубликатов. Очистим предыдущий контекст, но саму консоль Claude Code не перезапускаем.
Снова вызываем duplicate-remover - строку "успех" он не добавил. То есть после изменения навыка лучше полностью выйти из Claude Code и перезапустить его заново. Иногда изменения подхватываются и без этого, но надёжнее - перезапуск.
После полного перезапуска Claude Code вызываем duplicate-remover снова - теперь он успешно отрабатывает и добавляет строку "успех" в конце. То есть перезагрузка обязательна после изменения файла навыка, потому что Claude Code кэширует контекст, и чтобы подхватить изменения в файле навыка, его нужно перезапустить.
Обязательное имя файла
Проверим ещё один момент: обязательно ли файл должен называться именно SKILL.md. Переименуем файл навыка, например, в test.md, и перезагрузим Claude Code. Навык duplicate-remover пропал - то есть файл обязательно должен называться SKILL.md, чтобы Claude Code его увидел. Это обязательное условие.
Такие основы работы с навыками (skills) в Claude Code стоит учитывать.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти