Навыки (Skills)

Как использовать и создавать Skills в Claude Code

Навыки (Skills)

Skills — это компоненты уровня знаний в Claude Code, предоставляющие Claude специализированные знания и рекомендации в конкретных областях. В отличие от команд, которые требуют ручного вызова, Skills активируются автоматически в зависимости от контекста задачи.

Что такое Skills?

Skills — это модули специализированных знаний, хранящиеся в файлах SKILL.md:

  • Автоматическая активация: Claude автоматически использует подходящий Skill в зависимости от контекста задачи

  • Доменные знания: предоставляют лучшие практики и рекомендации для конкретной области

  • Расширяемость: можно создавать пользовательские Skills для специфических потребностей

  • Контекстная осведомлённость: вызываются только в релевантных сценариях

Skills vs Commands vs Agents

Компонент Способ вызова Назначение
Commands Ручной вызов пользователем (/command) Выполнение конкретных задач
Skills Автоматическая активация Предоставление доменных знаний
Agents Делегированный вызов Обработка сложных рабочих процессов

Использование встроенных Skills

Плагины Claude Code обычно включают несколько встроенных Skills. Когда ваша задача совпадает с описанием Skill, Claude автоматически его использует.

Пример: Ревью кода

Когда вы говорите «Помоги проверить безопасность этого кода», если установлен плагин с Skill по безопасности, Claude автоматически применит знания этого Skill для проведения проверки.

Просмотр доступных Skills

Skills обычно устанавливаются вместе с плагинами:

# Установка плагина (плагин может содержать несколько Skills)
/plugin install plugin-name@marketplace

Создание пользовательских Skills

Базовая структура

Простейший Skill требует только файла SKILL.md:

my-skill/
└── SKILL.md

Формат SKILL.md

---
name: Руководство по стилю кода
description: Используется, когда пользователь спрашивает о «стиле кода», «соглашениях об именовании», «форматировании кода» или обсуждает стандарты кода
version: 1.0.0
---

# Руководство по стилю кода

## Соглашения об именовании

- Переменные — camelCase
- Константы — UPPER_SNAKE_CASE
- Классы — PascalCase
- Приватные члены — с префиксом подчёркивания

## Правила форматирования

- Отступы — 2 пробела
- Длина строки не более 80 символов
- Использование завершающей запятой

## Лучшие практики

- Функция должна иметь единственную ответственность
- Избегайте глубокой вложенности
- Используйте осмысленные имена переменных

Пол�� frontmatter

Поле Обязательное Описание
name Да Название Skill
description Да Описание условий активации (ключевое!)
version Нет Номер версии

Написание эффективного Description

Поле description определяет, когда Skill будет активирован, и должно содержать конкретные триггерные фразы:

Хороший пример:

description: Используется, когда пользователь спрашивает о «создании hook», «добавлении PreToolUse hook», «валидации использования инструментов» или упоминает hook-события

Плохой пример:

description: Руководство по hooks  # Слишком расплывчато

Полная структура Skill

Для сложных Skills можно включать дополнительные ресурсы:

my-skill/
├── SKILL.md           # Основной документ знаний
├── references/        # Детальные справочные материалы   ├── patterns.md    # Паттерны проектирования   └── advanced.md    # Продвинутые приёмы
├── examples/          # Примеры кода   ├── basic.ts       # Базовый пример   └── advanced.ts    # Продвинутый пример
└── scripts/           # Вспомогательные скрипты
    └── validate.sh    # Скрипт валидации

Ссылки на ресурсы

Ссылки на другие ресурсы в SKILL.md:

---
name: Руководство по разработке API
description: Используется, когда пользователь спрашивает о «проектировании API», «REST-интерфейсах», «лучших практиках API»
version: 1.0.0
---

# Руководство по разработке API

Подробные паттерны проектирования API см. в @references/patterns.md

## Быстрый пример

См. @examples/basic.ts для базового использования

Использование Skills в плагинах

Структура директорий

Skills размещаются в директории skills/ плагина:

my-plugin/
├── .claude-plugin/
│   └── plugin.json
├── commands/          # Уровень команд
├── agents/            # Уровень агентов
└── skills/            # Уровень знаний
    ├── code-style/
       └── SKILL.md
    └── api-docs/
        ├── SKILL.md
        └── references/

Ссылка на Skill в команде

Команды могут явно ссылаться на знания Skill:

---
description: Генерация API-документации по стандартам
argument-hint: [api-file]
---

Сгенерируй API-документацию для @$1.

Используй Skill api-docs, чтобы документация включала:

- Полное описание эндпоинтов
- Спецификации параметров
- Форматы ответов
- Коды ошибок
- Примеры использования

Практические примеры

Пример 1: Skill стандартов проекта

---
name: Стандарты проекта
description: Используется, когда пользователь спрашивает о «структуре проекта», «организации файлов», «стандартах директорий»
version: 1.0.0
---

# Стандарты проекта

## Структура директорий

\`\`\`
src/
├── components/    # React-компоненты
├── hooks/         # Пользовательские Hooks
├── services/      # API-сервисы
├── utils/         # Утилиты
└── types/         # Типы TypeScript
\`\`\`

## Именование файлов

- Компоненты: PascalCase (например, `UserProfile.tsx`)
- Утилиты: camelCase (например, `formatDate.ts`)
- Константы: UPPER_SNAKE_CASE (например, `API_ENDPOINTS.ts`)

## Порядок импортов

1. Связанные с React
2. Сторонние библиотеки
3. Внутренние модули
4. Определения типов
5. Файлы стилей

Пример 2: Skill Git-воркфлоу

---
name: Git-воркфлоу
description: Используется, когда пользователь спрашивает о «стратегии ветвления», «стандартах коммитов», «Git-процессе»
version: 1.0.0
---

# Стандарты Git-воркфлоу

## Именование веток

- Функция: `feature/описание`
- Исправление: `fix/описание`
- Срочное исправление: `hotfix/описание`

## Формат сообщения коммита

\`\`\`
<type>(<scope>): <subject>

<body>

<footer>
\`\`\`

### Типы Type

- `feat`: новая функциональность
- `fix`: исправление бага
- `docs`: обновление документации
- `style`: форматирование кода
- `refactor`: рефакторинг
- `test`: тесты
- `chore`: сборка/инструменты

Пример 3: Skill аудита безопасности

---
name: Аудит безопасности
description: Используется, когда пользователь спрашивает о «проверке безопасности», «сканировании уязвимостей», «лучших практиках безопасности» или проверяет безопасность кода
version: 1.0.0
---

# Руководство по аудиту безопасности

## Проверка распространённых уязвимостей

### SQL-инъекции

- Проверьте использование параметризованных запросов
- Избегайте конкатенации строк в SQL

### XSS-атаки

- Проверьте экранирование пользовательского ввода
- Используйте CSP-заголовки

### Конфиденциальные данные

- Убедитесь, что пароли не хранятся в открытом виде
- Не хардкодьте API-ключи
- Проверьте, не утекают ли конфиденциальные данные в логи

## Чеклист проверки

- [ ] Валидация ввода
- [ ] Кодирование вывода
- [ ] Механизм аутентификации
- [ ] Проверка авторизации
- [ ] Использование шифрования
- [ ] Обработка ошибок

Лучшие практики

1. Чёткое описание триггеров

Используйте конкретные триггерные фразы вместо расплывчатых описаний:

# Хорошо
description: Используется, когда пользователь спрашивает о «создании компонента», «шаблоне React-компонента», «лучших практиках компонентов»

# Плохо
description: Связано с React-компонентами

2. Структурированные знания

Организуйте знания в чёткую иерархическую структуру:

  • Используйте уровни заголовков

  • Предоставляйте примеры кода

  • Включайте чеклисты

3. Поддержание актуальности

  • Регулярно обновляйте содержимое Skill

  • Номер версии отражает изменения

  • Фиксируйте важные обновления

4. Модульное проектирование

  • Каждый Skill фокусируется на одной области

  • Используйте директорию references для детальных материалов

  • Предоставляйте практические примеры через examples

Отладка Skills

Если Skill не активируется как ожидалось:

  1. Проверьте description: убедитесь, что триггерные фразы соответствуют вводу пользователя

  2. Проверьте формат: убедитесь, что YAML frontmatter корректен

  3. Протестируйте активацию: попробуйте точные фразы из description

Следующие шаги

🚀
Начните с QCode — ИИ-ассистент для программистов
Официальный ретранслятор Claude Code, быстро и надёжно
Посмотреть тарифы → Создать аккаунт