---
name: update-ai-setup
description: Сканирует AI-файлы проекта и обновляет реестр docs/ai-setup.md с актуальными данными. Используй для синхронизации реестра после добавления/удаления скиллов, паттернов или конфигов. Не используй для создания реестра с нуля — для этого создай docs/ai-setup.md вручную.
allowed-tools: "Read Write Edit Glob Grep Bash(wc*) Bash(ls*)"
agent: agents/auditor.md
context: fork
---

# /update-ai-setup — Обновление реестра AI-конфигурации

<purpose>
Автоматическое обновление docs/ai-setup.md — реестра всех AI-паттернов, скиллов и конфигурационных файлов проекта. Сканирует реальное состояние файлов и синхронизирует реестр.
</purpose>

## Перед началом

Прочитай `.claude/qa_agent.md` и `.claude/agents/auditor.md`.

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

- После добавления/удаления скилла
- После изменения qa_agent.md, agents/*.md или CLAUDE.md
- После добавления/удаления анти-паттернов
- После изменения плагинов в `.claude/settings.json`
- После изменения MCP серверов в `.mcp.json`
- Периодическая проверка актуальности реестра

## Входные данные

Не требуются. Скилл работает автоматически на основе текущего состояния файлов.

## Алгоритм

## Verbosity Protocol

**Structured Output Priority:** Весь analysis идёт в артефакт (MD/HTML), не в чат.

**Chat output (ограничения):**
- Brief Summary: max 5 строк (что нашли, сколько, итог)
- Findings table: max 15 строк (топ по severity)
- Полный отчёт: `📊 Полный отчёт: {path}` + открыть файл

**Iterative steps:** Не выводить прогресс по каждому файлу. Checkpoint только при:
- Phase transition (Фаза N → Фаза N+1)
- Предупреждение обнаружено
- Завершение (SKILL COMPLETE)

**Tools first:**
- Grep → table → report, без "Now I will grep..."
- Read → analyze → report, без "The file shows..."

**Post-Check:** Inline перед SKILL COMPLETE (5-7 строк checklist), не отдельный файл.

### Шаг 1: Чтение текущего реестра

Прочитай `docs/ai-setup.md`. Если файл не существует:

```
⚠️ WARNING: docs/ai-setup.md не найден — создаю новый файл.
```

Скилл создаёт пустой реестр на основе шаблона `.claude/skills/init-skill/references/skill-template.md` и продолжает сканирование.

Запомни текущие данные: список файлов, строки, количество паттернов, скиллов, анти-паттернов.

### Шаг 2: Сканирование файлов

Выполни Glob по всем AI-файлам:

```
Обязательные:
  - CLAUDE.md
  - .claude/qa_agent.md
  - .claude/settings.json
  - .mcp.json
  - .claude/skills/*/SKILL.md
  - .claude/qa-antipatterns/_index.md
  - .claude/qa-antipatterns/*/*.md
  - .claude/skills/*/references/*
  - docs/ai-files-handbook.md
  - docs/ai-setup.md
```

Для каждого найденного файла подсчитай строки через `wc -l`.

### Шаг 2b: Сканирование плагинов и MCP серверов

1. Прочитай `.claude/settings.json` → извлеки ключи из `enabledPlugins`
2. Прочитай `.mcp.json` → извлеки ключи из `mcpServers`
3. Сравни с таблицами "Плагины" и "MCP серверы" в `docs/ai-setup.md`
4. Дельта: добавить новые / удалить отсутствующие / обновить изменённые строки

### Шаг 3: Обнаружение дельты

Сравни результаты сканирования с текущим реестром:

| Проверка | Действие |
|----------|----------|
| Новый файл (есть на диске, нет в реестре) | Добавить в соответствующую таблицу |
| Удалённый файл (есть в реестре, нет на диске) | Удалить из таблицы |
| Изменение размера > 20% | Обновить счётчик строк |
| Новый скилл | Добавить в таблицу скиллов + проверить CLAUDE.md |
| Новый анти-паттерн | Добавить в таблицу анти-паттернов |

Если дельты нет — сообщи пользователю и заверши:

```
✅ Реестр актуален. Изменений не обнаружено.
```

### Шаг 4: Обновление документа

Обнови `docs/ai-setup.md`:

1. **Диаграмма архитектуры** — обновить счётчики строк в слоях
2. **Таблицы инвентаризации** — добавить/удалить строки, обновить счётчики
3. **Каталог паттернов** — добавить новые паттерны (если обнаружены), обновить ссылки

Формат записи Changelog:

```markdown
| YYYY-MM-DD | [Описание: что добавлено/удалено/обновлено] |
```

### Шаг 5: Валидация и показ diff

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

1. Проверь Quality Gates (см. ниже)
2. Покажи пользователю список изменений:

```
📊 DELTA REPORT
├─ Добавлено: [N файлов/паттернов]
├─ Удалено: [N файлов/паттернов]
├─ Обновлено: [N счётчиков строк]
├─ Health Metrics: [обновлено / нет данных]
└─ Changelog: [краткое описание записи]
```

3. Сохрани обновлённый `docs/ai-setup.md`

## Формат вывода

```
✅ SKILL COMPLETE: /update-ai-setup
├─ Артефакты: docs/ai-setup.md
├─ Дельта: [+N добавлено, -N удалено, ~N обновлено | "нет изменений"]
├─ Quality Gates: PASS
└─ Changelog: [краткое описание]
```

## Quality Gates

- [ ] Все пути в документе существуют на диске (проверить Glob)
- [ ] Счётчики строк совпадают с `wc -l`
- [ ] Нет placeholder'ов `[xxx]` в финальном документе
- [ ] Changelog содержит новую запись с текущей датой
- [ ] Количество скиллов в реестре = количеству `.claude/skills/*/SKILL.md`
- [ ] Количество анти-паттернов в реестре = количеству `.claude/qa-antipatterns/*/*.md` (файлы в подпапках, без `_index.md`)
- [ ] Количество плагинов в таблице = количеству ключей в `settings.json → enabledPlugins`
- [ ] Количество MCP серверов в таблице = количеству ключей в `.mcp.json → mcpServers`

## Связанные файлы

- Реестр: `docs/ai-setup.md`
- Гайд: `docs/ai-files-handbook.md`
- Шаблон skill: `.claude/skills/init-skill/references/skill-template.md`
