---
name: veda-skill-creator
description: Мета-навык для создания новых навыков Veda. Шаблон SKILL.md, структура папок, правила именования, чеклист качества. Используй когда нужно упаковать новое знание в навык.
---

# Создание навыков (мета-навык)

## Когда использовать

- Паттерн повторяется 3+ раз в разных сессиях
- Claude каждый раз объясняют одно и то же заново
- Найден баг/инцидент, который нельзя повторить
- Пользователь говорит "сохрани как навык" / "запомни это"
- Нужно упаковать новый блок знаний для будущих сессий

## Структура навыка

**Хранилище скиллов:** `/Users/alex/Projects/shared/veda-skills/skill-name/`

```
shared/veda-skills/skill-name/
├── SKILL.md              # ОБЯЗАТЕЛЬНО. Контент навыка (метаданные + инструкции)
├── reference/            # Опционально. Детальная справка
│   ├── gotchas.md
│   ├── patterns.md
│   └── checklist.md
└── scripts/              # Опционально. Исполняемые скрипты
    └── deploy.sh
```

**Регистрация команды (ОБЯЗАТЕЛЬНО!):** `/Users/alex/Projects/.claude/commands/skill-name.md`

```markdown
Прочитай скилл: ~/Projects/shared/veda-skills/skill-name/SKILL.md

Краткое описание что делает скилл.
Reference-файлы (при необходимости): file1.md, file2.md.

$ARGUMENTS
```

**Без `.claude/commands/skill-name.md` команда `/skill-name` не появится в списке.**

## Шаблон SKILL.md (copy-paste)

```markdown
---
name: skill-name-here
description: Одно предложение на русском. Что делает навык и когда Claude должен его использовать. Максимум 200 символов.
---

# Название навыка

## Когда использовать
[Конкретные триггеры: какие слова/задачи пользователя активируют этот навык]

## Ключевые правила
[Самое важное -- то, что НЕЛЬЗЯ забыть. Таблицы, gotchas, чеклисты]

## Быстрый маршрут
[Пошаговая инструкция для типовой задачи]

## Reference-файлы
[Список файлов в reference/ с описанием -- когда какой открывать]
```

## Правила именования

| Правило | Пример |
|---------|--------|
| Только lowercase | `veda-deploy`, не `Veda-Deploy` |
| Дефисы между словами | `veda-backend-patterns`, не `veda_backend` |
| На английском | `buyer-persona`, не `баейр-персона` |
| Без версий в имени | `veda-deploy`, не `veda-deploy-v2` |

## Принцип прогрессивного раскрытия

Claude загружает данные послойно -- это экономит контекстное окно:

1. **Метаданные** -- Claude видит `name` + `description` из frontmatter (всегда)
2. **SKILL.md** -- загружается только если задача подходит под навык
3. **reference/** -- загружается конкретный файл, когда нужна детальная справка
4. **scripts/** -- запускается только когда нужно выполнить действие

**Следствие:** SKILL.md = навигация + ключевые правила + ссылки. Детали = reference/.

## Чеклист качества навыка

Перед сохранением проверь:

- [ ] `description` < 200 символов, на русском, содержит триггер "Используй при..."
- [ ] Есть раздел "Когда использовать" с конкретными триггерами
- [ ] Есть раздел "Ключевые правила" (самое важное, что нельзя забыть)
- [ ] SKILL.md НЕ превышает 5KB (детали -- в reference/)
- [ ] Reference-файлы НЕ дублируют SKILL.md
- [ ] Нет дублирования с другими существующими навыками
- [ ] Скрипты в scripts/ если есть автоматизация (chmod +x)
- [ ] Если навык > 20KB суммарно -- значит нужно разделить или вынести в reference

## Протокол "Сохрани как навык"

Когда пользователь говорит "запомни" / "сохрани" / "это должен быть навык":

1. **Определить принадлежность** -- к какому существующему навыку относится?
   - Прочитай `reference/existing-skills.md` для списка всех навыков
   - Если подходит под существующий -- добавь в его reference/

2. **Если нужен новый навык:**
   ```bash
   mkdir -p ~/Projects/shared/veda-skills/new-skill-name/reference
   ```
   - Создать SKILL.md по шаблону выше
   - Создать reference-файлы если есть детальные данные
   - **Создать `/Users/alex/Projects/.claude/commands/new-skill-name.md`** (иначе команда не появится)

3. **Если дополнение к существующему:**
   - Добавить файл в `reference/` существующего навыка
   - Обновить раздел "Reference-файлы" в SKILL.md

4. **Оповестить пользователя:**
   > "Сохранил в навык **skill-name**. В следующих сессиях это знание будет доступно автоматически."

5. **Обновить реестр:**
   - Обновить `reference/existing-skills.md` в навыке `veda-skill-creator`

## Антипаттерны

| Не делай | Почему | Делай вместо |
|----------|--------|-------------|
| Не копируй целые файлы (>30KB) в reference/ | Забьёт контекст | Сделай summary + ссылку на оригинал |
| Не дублируй между навыками | Рассинхронизация | Один навык = один домен. Ссылки между ними |
| Не пиши description > 200 символов | Claude не загрузит при поиске | Одно предложение с триггером |
| Не клади всё в SKILL.md | Долго грузится | Ключевое в SKILL.md, детали в reference/ |
| Не создавай навык для одного факта | Оверинжиниринг | Добавь в reference/ существующего навыка |

## Reference-файлы

| Файл | Когда открывать |
|------|----------------|
| `reference/existing-skills.md` | Реестр всех навыков с описаниями. Обновляй при создании нового навыка |
| `reference/prompt-engineering.md` | При создании/улучшении промптов: 11 принципов, 28 техник, каноническая XML-структура |
