---
name: skill-creator-ext
description: >
  1C BSL Framework extension for skill-creator skill.
  Use together with the base skill-creator skill when creating or modifying
  framework skills (bsl-practices, tool-usage, spec-writing, agent-development-ext, etc.).
  Covers: framework skill categories, tool-usage skills replacing tool-registry,
  BSL content patterns, 1c-ai-agent-cli integration, project-specific skills.
---

# Skill Creator — 1C BSL Framework Extension

> **Базовый навык:** `skill-creator` (Anthropic).
> Сначала прочитай базовый навык — он содержит общие принципы создания skills.
> Этот файл добавляет **только** 1С-специфику фреймворка.

---

## 1. Когда создавать новый навык

| Триггер | Действие |
|---------|----------|
| Появился новый MCP tool, и агент не знает КОГДА его использовать | Создать `tool-usage/` skill |
| Обнаружен повторяющийся антипаттерн в BSL-коде | Создать `bsl-practices/` skill |
| Нужно обучить агента специфике конкретной конфигурации | Создать **проектный** skill (в каталоге IDE проекта) |
| Нужна стандартная методология (SDD, TDD, ревью) | Создать `spec-writing/` или новый подкаталог |
| Нужно адаптировать внешний навык под фреймворк | Создать `*-ext/` расширение |

**НЕ создавать** навык если:
- Информация уже есть в существующем навыке — дополнить его
- Это одноразовая инструкция — сделать prompt, не skill
- Это правило/политика (MUST/SHOULD) — создать rule, не skill

---

## 2. Категории навыков фреймворка

| Категория | Каталог | Назначение | Примеры |
|-----------|---------|------------|---------|
| **BSL-практики** | `skills/bsl-practices/` | Стандарты кодирования и паттерны | `coding-standards`, `query-patterns` |
| **Tool-usage** | `skills/tool-usage/` | Когда и как использовать MCP-инструменты | `syntax-checking`, `metadata-discovery`, `test-execution` |
| **Spec-writing** | `skills/spec-writing/` | Стандарты документации и спецификаций | `spec-standard` |
| **Расширения** | `skills/*-ext/` | Расширения внешних skills (Anthropic и др.) | `agent-development-ext`, `skill-creator-ext` |

### Расширения (-ext) — конвенция

1. Базовый навык устанавливается через `npx skills add` (обновляемый)
2. Расширение — `<base-name>-ext/SKILL.md` в `framework/skills/`
3. Расширение **только дополняет**, не дублирует содержимое базового навыка
4. В расширении: `> Сначала прочитай базовый навык: <имя>`

---

## 3. Процесс создания навыка

1. **Анализ:** определить категорию, проверить на дублирование, определить зависимости
2. **Проектирование:** имя `kebab-case.md`, целевой лимит 300 строк (max 500)
3. **Написание** — обязательные секции:
   - YAML frontmatter
   - Заголовок + 1-3 предложения назначения
   - **Когда применять** — таблица триггер → действие
   - **Сценарии** — конкретные примеры
   - **Примеры кода** — правильно + неправильно с объяснением ПОЧЕМУ
4. **Интеграция:** файл в `framework/skills/`, обновить `skills` в агентах, `python tools/install.py --list`

---

## 4. Tool-usage навыки — замена tool-registry

Tool-usage навыки — **единственное место** где описаны MCP-инструменты в фреймворке.

### Структура tool-usage навыка

```markdown
# [Название] — как использовать MCP-инструменты для [задачи]

## Когда применять

| Триггер | Действие |
|---------|----------|
| Пользователь просит проверить синтаксис | Вызвать `bsl.checkSyntax(uri)` |
| Агент написал/изменил .bsl код | Автоматически проверить синтаксис |

## MCP-инструменты

| Инструмент | Назначение | Workarounds |
|------------|------------|-------------|
| `bsl.checkSyntax` | Проверка синтаксиса | Если URI не найден — проверить encoding |

## Сценарии
[Конкретные цепочки вызовов]
```

### Принципы

1. **Не дублируй описание MCP-инструмента** — оно приходит из MCP (`tools/list`)
2. **Фокус на КОГДА и ПОЧЕМУ**, не на параметрах
3. **Workarounds и подводные камни** — главная ценность
4. **Конкретные сценарии** — цепочки вызовов для типичных задач

---

## 5. Форматы навыков

| Тип | Размещение | Frontmatter | Установка |
|-----|-----------|-------------|-----------|
| Framework skill | `framework/skills/` | `name`, `description`, `depends_on` | CLI через симлинки |
| IDE skill | `.cursor/skills/` или `.agents/skills/` | `name`, `description` | `npx skills add` |
| Расширение (-ext) | `framework/skills/<name>-ext/` | `name: base-name-ext`, `description` | CLI, часть фреймворка |

---

## 6. Паттерны контента

**Триггер → Действие** (tool-usage): таблица `| Триггер | Действие |`

**Правильно / Неправильно** (bsl-practices): два блока кода + объяснение ПОЧЕМУ (последствие нарушения)

**Воркфлоу с чек-листом** (методологии): `- [ ] Шаг N: ...`

**Условный воркфлоу** (ветвления): `Определи тип → ветка A / ветка B`

---

## 7. Проектные навыки (project-specific)

Размещение: `.cursor/skills/` или `.claude/skills/` в корне проекта. Формат Anthropic SKILL.md.

**Включать:** архитектура конфигурации, локальные conventions, бизнес-правила, критичные модули, интеграции.

**НЕ включать:** общие стандарты BSL (во framework-навыках), секреты, быстро устаревающую информацию.

---

## 8. BSL-специфика

### Ограничения платформы
- BSL не поддерживает наследование — только общие модули
- Нет package manager — зависимости через конфигурацию
- Код разделён по контекстам (сервер/клиент/внешнее соединение)
- Метаданные — декларативные, код — императивный

---

## 9. Чек-лист нового навыка

- [ ] YAML frontmatter, имя kebab-case (латиница)
- [ ] Объясняет ПОЧЕМУ, примеры правильно/неправильно
- [ ] Таблица "Когда применять" (триггер → действие)
- [ ] Нет дублирования с существующими навыками
- [ ] Объём ≤ 300 строк (max 500)
- [ ] Файл в `framework/skills/`, агенты обновлены, `install.py --list` показывает навык

---
depends_on: []
---
