Files
brain/docs/registry/nodes.yaml
T
Дмитрий 524bcfd05f feat: разворачивание комка ui-ux-pro-max — 7 навыков (роутер-реестр)
Эпик роутер-реестр, спека v2 §2, этап 1. Решение владельца 19.06 (путь 2):
зонтик ui-ux-pro-max развёрнут в 7 карточек-навыков + 7 под-узлов #31a..#31g.
Роль сохранена в каждой карточке: материал/решение по UI → стек Vue+Vuetify
(R6.0), финальный код — Frontend Design #30.

- 7 карточек: banner-design, brand, design, design-system, slides, ui-styling,
  ui-ux-pro-max (master)
- nodes.yaml: узел #31 → #31a..#31g; мастер #31g держит конфликт-треугольник
  (frontend-design ↔ 21st-magic); обратные ссылки у #30/#32 перенаправлены на
  ui-ux-pro-max:ui-ux-pro-max → симметрия конфликтов сохранена (m3e зелёный)
- зонтик убран; registry-load.test: 153 узла / 145 active
- hookify оставлен одной карточкой (решение владельца)

Правка PSR (роль UPM: материал → решатель-с-ограничением) — отдельным шагом.

Регрессия (без 5 pre-existing node:test файлов): 4365 passed, exit 0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 04:35:14 +03:00

2846 lines
115 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
version: "0.1.0"
nodes:
- id: "#2"
name: "Playwright MCP"
slug: "playwright-mcp"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Управляет headless Chromium-браузером через MCP: делает скриншоты, кликает по элементам, заполняет формы, проверяет визуальное поведение HTML-прототипов и живого SPA."
triggers:
- {keyword: "html prototype", weight: 1.0}
- {keyword: "screenshot", weight: 1.0}
- {keyword: "interaction smoke", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #2"
- id: "#3"
name: "GitHub MCP"
slug: "github-mcp"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Предоставляет полный доступ к GitHub API через MCP: чтение и создание issues, pull requests, комментариев, просмотр коммитов, управление ветками и нотификациями."
triggers:
- {keyword: "issues", weight: 1.0}
- {keyword: "pr", weight: 1.0}
- {keyword: "commits", weight: 1.0}
- {keyword: "открытые вопросы", weight: 1.0}
boundaries: []
chain_membership: ["L9"]
attributes:
tooling_section: "§2.4 #3"
- id: "#4"
name: "markdownlint-cli2"
slug: "markdownlint"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Линтует Markdown-файлы по набору правил стиля (заголовки, таблицы, пробелы, переносы строк); запускается через `npm run lint:md` и в pre-commit хуке."
triggers:
- {keyword: "lint .md", weight: 1.0}
- {keyword: "markdown style", weight: 1.0}
- {keyword: "заголовки/таблицы", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #4"
install: "npm run lint:md"
- id: "#5"
name: "cspell"
slug: "cspell"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Проверяет орфографию в `.md`-файлах на русском и английском языках, поддерживает пользовательский словарь проекта (`cspell-words.txt`); запускается через `npm run spell`."
triggers:
- {keyword: "орфография ru/en", weight: 1.0}
- {keyword: "кастомный словарь", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #5"
install: "npm run spell"
- id: "#6"
name: "lychee"
slug: "lychee"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Сканирует все ссылки в Markdown-документах (внутренние и внешние), находит битые URL и якоря; запускается через `npm run links`."
triggers:
- {keyword: "проверка ссылок .md", weight: 1.0}
- {keyword: "кросс-ссылки архива", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #6"
install: "npm run links"
- id: "#7"
name: "Stylelint"
slug: "stylelint"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Линтует CSS-код в `.vue`-компонентах и отдельных CSS-файлах: порядок свойств, именование, синтаксические ошибки; запускается через `npm run lint:css`."
triggers:
- {keyword: "css lint", weight: 1.0}
- {keyword: "vue sfc style", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #7"
install: "npm run lint:css"
- id: "#8"
name: "gitleaks"
slug: "gitleaks"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Сканирует diff и историю репозитория на утечку секретов (API-ключи, токены, пароли, DSN-строки); работает через pre-commit и pre-push хуки lefthook."
triggers:
- {keyword: "секреты в diff", weight: 1.0}
- {keyword: "pre-commit hook", weight: 1.0}
boundaries: []
chain_membership: ["L15"]
attributes:
tooling_section: "§2.4 #8"
- id: "#9"
name: "Pa11y"
slug: "pa11y"
category: "phase-0"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Проверяет веб-страницы на соответствие WCAG 2.1 AA: контраст, alt-тексты, роли, фокус-порядок; единственный технический SoT a11y в проекте; `npm run a11y`."
triggers:
- {keyword: "a11y wcag 2.1 aa", weight: 1.0}
- {keyword: "прототипы", weight: 1.0}
- {keyword: "технический sot", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§2.4 #9"
install: "npm run a11y"
- id: "#10"
name: "Laravel Boost"
slug: "boost"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер Laravel Boost: выполняет SQL-запросы к dev-БД через Eloquent, отдаёт документацию по Laravel и установленным пакетам через Roster auto-detect; заменил PostgreSQL MCP (#1)."
triggers:
- {keyword: "sql", weight: 1.0}
- {keyword: "eloquent", weight: 1.0}
- {keyword: "docs laravel", weight: 1.0}
- {keyword: "roster auto-detect", weight: 1.0}
boundaries:
- {pair: "#1", relation: "replaces"}
chain_membership: ["L13", "L7"]
attributes:
tooling_section: "§3.5 #10"
install: "composer require laravel/boost --dev"
conflicts_with: ["postgres-mcp"]
- id: "#11"
name: "Laravel Pint"
slug: "pint"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Автоматически форматирует PHP-код по PSR-12 и Laravel code style (пробелы, запятые, скобки, импорты); запускается через `composer pint`."
triggers:
- {keyword: "php code style", weight: 1.0}
- {keyword: "форматтер", weight: 1.0}
- {classification: "refactor", weight: 1.0}
- {classification: "cleanup", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§3.5 #11"
install: "composer pint"
- id: "#12"
name: "Larastan"
slug: "larastan"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Выполняет статический анализ PHP-кода на уровне типов с помощью PHPStan + Laravel-расширений (Larastan); находит ошибки типов, несовместимые сигнатуры, undefined-переменные; `composer stan`."
triggers:
- {keyword: "статанализ php", weight: 1.0}
- {keyword: "типы", weight: 1.0}
- {classification: "refactor", weight: 1.0}
- {classification: "cleanup", weight: 1.0}
boundaries: []
chain_membership: ["L14"]
attributes:
tooling_section: "§3.5 #12"
install: "composer stan"
- id: "#13"
name: "Roave/SecurityAdvisories"
slug: "roave-security"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Блокирует установку Composer-пакетов с известными CVE-уязвимостями через conflict-список; срабатывает автоматически при `composer install` / `composer update`."
triggers:
- {keyword: "cve на install", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§3.5 #13"
install: "composer install (автоматически)"
- id: "#14"
name: "Laravel IDE Helper"
slug: "ide-helper"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Генерирует IDE-заглушки (stubs) для Laravel facades, Eloquent-моделей и хелперов (`@mixin IdeHelper*`); обеспечивает autocomplete и type-inference в PHPStorm/VSCode."
triggers:
- {keyword: "ide-stubs php", weight: 1.0}
- {keyword: "@mixin", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§3.5 #14"
install: "php artisan ide-helper:generate"
- id: "#15"
name: "squawk"
slug: "squawk"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Линтует SQL-миграции PostgreSQL на наличие опасных паттернов: блокирующие операции, отсутствие `CONCURRENTLY`, ненадёжные DEFAULT; запускается в pre-commit для `database/migrations/`."
triggers:
- {keyword: "линт миграций postgresql", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§3.5 #15"
- id: "#16"
name: "pgFormatter"
slug: "pg-formatter"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Форматирует SQL-файлы (отступы, регистр ключевых слов, выравнивание) по стандарту pgFormatter; активируется хуком при изменении `db/schema.sql`."
triggers:
- {keyword: "форматирование sql", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§3.5 #16"
- id: "#17"
name: "pg_partman"
slug: "pg-partman"
category: "phase-1"
subcategory: null
status: "dormant"
dormancy_reason: "native Windows PG не поддерживает расширение; заменён ручным cron'ом partitions:create-months"
capabilities: "Расширение PostgreSQL для автоматического создания и удаления partition-таблиц по расписанию — dormant: недоступно на native-Windows, заменено Artisan-командой `partitions:create-months`."
triggers:
- {keyword: "партиционирование pg", weight: 1.0}
boundaries:
- {relation: "replaced by Artisan partitions:create-months (CLAUDE.md §6)"}
chain_membership: []
attributes:
tooling_section: "§3.5 #17"
- id: "#19a"
name: "brainstorming"
slug: "superpowers:brainstorming"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Согласованный дизайн и требования (что и зачем) до кода. Обязателен ПЕРЕД любой творческой работой/новой фичей."
triggers:
- {classification: "feature", weight: 1.0}
- {keyword: "brainstorm", weight: 1.0}
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19b"
name: "test-driven-development"
slug: "superpowers:test-driven-development"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Цикл тест-первый: RED → минимальный код → GREEN → рефактор. Перед реализацией любой фичи/багфикса."
triggers:
- {keyword: "tdd", weight: 1.0}
- {classification: "refactor", weight: 0.8}
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19c"
name: "writing-plans"
slug: "superpowers:writing-plans"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "План реализации из bite-sized TDD-задач без плейсхолдеров. Для многошаговой задачи по спеке/требованиям."
triggers:
- {classification: "planning", weight: 1.0}
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19d"
name: "systematic-debugging"
slug: "superpowers:systematic-debugging"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Корневая причина бага/упавшего теста, найденная ДО предложения фикса."
triggers:
- {keyword: "debug", weight: 0.8}
- {classification: "bugfix", weight: 0.8}
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19e"
name: "dispatching-parallel-agents"
slug: "superpowers:dispatching-parallel-agents"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Параллельная раздача 2+ независимых задач субагентам (без общего состояния)."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19f"
name: "subagent-driven-development"
slug: "superpowers:subagent-driven-development"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Исполнение задач плана свежими субагентами + двухстадийное ревью между задачами."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19g"
name: "receiving-code-review"
slug: "superpowers:receiving-code-review"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Техническая проверка фидбэка код-ревью (не слепое согласие) до внедрения правок."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19h"
name: "requesting-code-review"
slug: "superpowers:requesting-code-review"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Запрос код-ревью, ловящий дефекты до каскада. Перед мержем крупного."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19i"
name: "verification-before-completion"
slug: "superpowers:verification-before-completion"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Доказательство (прогон команд) ДО любого утверждения о готовности/успехе."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19j"
name: "using-git-worktrees"
slug: "superpowers:using-git-worktrees"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Изолированный worktree (native или git-fallback) под фичу перед исполнением плана."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19k"
name: "executing-plans"
slug: "superpowers:executing-plans"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Пакетное исполнение задач написанного плана с чекпойнтами ревью."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19l"
name: "finishing-a-development-branch"
slug: "superpowers:finishing-a-development-branch"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Решение интеграции завершённой работы: merge / PR / cleanup ветки."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19m"
name: "using-superpowers"
slug: "superpowers:using-superpowers"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Дисциплина поиска и вызова релевантных навыков ПЕРВЫМ делом в начале задачи."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
- {pair: "#30", relation: "paired stack"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
- id: "#19n"
name: "writing-skills"
slug: "superpowers:writing-skills"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Навык, построенный TDD-процессом для процесс-документов (создание/правка навыка)."
triggers: []
boundaries:
- {adr: "ADR-011", role: "hard-floor source"}
chain_membership: []
attributes:
tooling_section: "§3.3 #19"
install: "marketplace plugin, enabled in ~/.claude/settings.json"
- id: "#18"
name: "Pest 4"
slug: "pest"
category: "phase-1"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Тестовый фреймворк PHP (Pest 4): unit, feature, RLS smoke, parallel-mode; поддерживает browser/stress/mutation-тесты; запускается через `composer test`."
triggers:
- {classification: "bugfix", weight: 1.0}
- {keyword: "test", weight: 1.0}
- {keyword: "тест", weight: 1.0}
- {file_pattern: "tests/**/*.php", weight: 1.0}
boundaries: []
chain_membership: ["L13"]
attributes:
tooling_section: "§3.2 #18"
install: "composer require pestphp/pest --dev"
- id: "#1"
name: "PostgreSQL MCP"
slug: "postgres-mcp"
category: "phase-0"
subcategory: null
status: "historic"
dormancy_reason: "Заменён #10 Laravel Boost в фазе 1 (08.05.2026)"
capabilities: "Исторический PostgreSQL MCP-сервер для прямых SQL-запросов к dev-БД — заменён Laravel Boost (#10); dormant, не используется."
triggers: []
boundaries:
- {pair: "#10", relation: "replaced by"}
chain_membership: []
attributes:
tooling_section: "§3.1 #1 (historic)"
conflicts_with: ["boost"]
- id: "#20"
name: "Volar"
slug: "volar"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Vue Language Server (Volar) для VSCode: предоставляет IntelliSense, go-to-definition, hover-документацию и диагностику типов для `.vue`-файлов в редакторе."
triggers:
- {keyword: "vue language server (vscode)", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.2 #20"
- id: "#21"
name: "vue-tsc"
slug: "vue-tsc"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Выполняет полную проверку типов TypeScript в `.vue`-компонентах через `vue-tsc`; запускается только в CI, находит несоответствия типов в шаблонах и script-блоках."
triggers:
- {keyword: "type-check vue (ci only)", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.2 #21"
install: "npm i -D vue-tsc typescript"
- id: "#22"
name: "ESLint + Prettier + plugin-vue + config-prettier"
slug: "eslint-prettier"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Связка линтера и форматтера для JS/Vue: ESLint (flat-config, plugin-vue, @vue/eslint-config-typescript) + Prettier + config-prettier; `npm run lint:vue` + `npm run format`."
triggers:
- {keyword: "lint js/vue", weight: 1.0}
- {keyword: "форматтер", weight: 1.0}
boundaries:
- {relation: "связка (R0.4)"}
chain_membership: []
attributes:
tooling_section: "§4.2 #22"
install: "npm i -D eslint prettier eslint-config-prettier eslint-plugin-vue"
- id: "#23"
name: "Vitest"
slug: "vitest"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Тестовый фреймворк для Vue-компонентов: unit и component-тесты с @vue/test-utils, jsdom, Pinia; `npm run test:vue`."
triggers:
- {keyword: "тесты vue", weight: 1.0}
- {keyword: "unit/component", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.2 #23"
install: "npm i -D vitest @vue/test-utils @vitest/ui"
- id: "#24"
name: "Histoire"
slug: "histoire"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Каталог Vue-компонентов в стиле Histoire (не Storybook): визуальная документация stories и variants, поддерживает Vuetify через setupFile; `npm run story`."
triggers:
- {keyword: "каталог компонентов", weight: 1.0}
- {keyword: "stories", weight: 1.0}
boundaries:
- {relation: "не storybook"}
chain_membership: []
attributes:
tooling_section: "§4.3 #24"
install: "npm i -D --legacy-peer-deps histoire @histoire/plugin-vue"
- id: "#25"
name: "Semgrep + Semgrep MCP"
slug: "semgrep"
category: "phase-3"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Статический анализ безопасности кода (SAST): сканирует PHP/JS/Vue на паттерны уязвимостей (инъекции, небезопасная конфигурация, XSS); бинарь + MCP-сервер; `npm run sast`."
triggers:
- {keyword: "sast", weight: 1.0}
- {keyword: "security static analysis", weight: 1.0}
- {keyword: "статический анализ", weight: 1.0}
- {keyword: "sast scan", weight: 1.0}
- {keyword: "secret pattern", weight: 1.0}
- {keyword: "уязвимость в коде", weight: 1.0}
- {classification: "analysis", weight: 1.0}
boundaries:
- {relation: "связка binary+mcp"}
chain_membership: ["L15", "L6"]
attributes:
tooling_section: "§5.1 #25"
install: "npm run sast"
- id: "#26"
name: "Trivy"
slug: "trivy"
category: "phase-3"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Сканирует Docker-образы на CVE-уязвимости в OS-пакетах и зависимостях; запускается в CI перед push в Yandex Container Registry (`trivy image liderra:latest`)."
triggers:
- {keyword: "docker image scan", weight: 1.0}
- {keyword: "container vulnerabilities", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§5.1 #26"
- id: "#27"
name: "GitHub Dependabot"
slug: "dependabot"
category: "phase-3"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "GitHub Dependabot автоматически создаёт pull requests при обнаружении CVE в Composer/npm-зависимостях; настраивается через `.github/dependabot.yml`."
triggers:
- {keyword: "cve pr auto", weight: 1.0}
- {keyword: "dependency updates", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§5.1 #27"
- id: "#28"
name: "pg_audit"
slug: "pg-audit"
category: "phase-3"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Расширение PostgreSQL для аудит-журнала DDL/DML/DCL операций на уровне БД; конфигурировано `pgaudit.log='ddl, role, write'`, `log_parameter=off`; установлено на продакшне liderra.ru, закрывает 152-ФЗ требование."
triggers:
- {keyword: "audit logs postgresql", weight: 1.0}
- {keyword: "mutation tracking", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§5.1 #28"
- id: "#29"
name: "pg_anonymizer"
slug: "pg-anonymizer"
category: "phase-3"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Расширение PostgreSQL для маскирования персональных данных в дампах (анонимизация телефонов, имён, email); загрузка по требованию `LOAD 'anon'`; установлено на продакшне liderra.ru."
triggers:
- {keyword: "маскирование пдн в дампах", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§5.1 #29"
- id: "#30"
name: "Frontend Design plugin"
slug: "frontend-design"
category: "phase-2"
subcategory: null
status: "active"
dormancy_reason: null
capabilities: "Доменная база знаний UI/UX для Vue+Vuetify: компоненты, паттерны состояний, принципы доступности, design critique; paired с Superpowers (#19); проходит фильтр стека R6.0."
triggers:
- {keyword: "ui компоненты", weight: 1.0}
- {keyword: "паттерны", weight: 1.0}
- {keyword: "состояния", weight: 1.0}
- {keyword: "a11y-принципы", weight: 1.0}
boundaries:
- {pair: "#19", relation: "paired stack"}
chain_membership: []
attributes:
tooling_section: "§4.4 #30"
install: "enabledPlugins.frontend-design@anthropics-claude-plugins в ~/.claude/settings.json"
conflicts_with: ["ui-ux-pro-max:ui-ux-pro-max", "21st-magic"]
- id: "#31a"
name: "uiux-banner-design"
slug: "ui-ux-pro-max:banner-design"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Дизайн баннеров из пула UPM (стек → Vue+Vuetify; финальный код — Frontend Design)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31b"
name: "uiux-brand"
slug: "ui-ux-pro-max:brand"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Бренд-система UI: палитра, типографика (приводится к нашему стеку)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31c"
name: "uiux-design"
slug: "ui-ux-pro-max:design"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Унифицированный UI-дизайн (50+ стилей; стек → Vue+Vuetify; код — Frontend Design)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31d"
name: "uiux-design-system"
slug: "ui-ux-pro-max:design-system"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Токены и компоненты дизайн-системы (под Vue+Vuetify)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31e"
name: "uiux-slides"
slug: "ui-ux-pro-max:slides"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Стратегические презентации/слайды из пула UPM."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31f"
name: "uiux-ui-styling"
slug: "ui-ux-pro-max:ui-styling"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Стилизация UI (источник shadcn/Tailwind ОБЯЗАТЕЛЬНО приводится к Vue+Vuetify, фильтр стека R6.0)."
triggers:
- {keyword: "стили", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
- id: "#31g"
name: "ui-ux-pro-max-master"
slug: "ui-ux-pro-max:ui-ux-pro-max"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "Мастер-навык пула UPM: 50+ стилей, 161 палитра, 57 пар шрифтов, 25 типов чартов; стек → Vue+Vuetify, финальный код — Frontend Design."
triggers:
- {keyword: "резерв ui", weight: 1.0}
- {keyword: "палитры", weight: 1.0}
- {keyword: "графики", weight: 1.0}
- {keyword: "ux-гайдлайны", weight: 1.0}
boundaries:
- {relation: "PSR_v1 R14.3 pipeline; стек R6.0; решатель кода — Frontend Design"}
chain_membership: []
attributes:
tooling_section: "§4.5 #31"
conflicts_with: ["frontend-design", "21st-magic"]
- id: "#32"
name: "21st.dev Magic MCP"
slug: "21st-magic"
category: "off-phase"
subcategory: "UI-pool"
status: "active"
dormancy_reason: null
capabilities: "LLM-генератор стартовых UI-шаблонов (компоненты, лейауты, формы) через 21st.dev Magic MCP; активируется через PSR_v1 R14.4 pipeline; Pa11y проверка обязательна после генерации."
triggers:
- {keyword: "генератор ui-шаблонов (llm-based)", weight: 1.0}
boundaries:
- {relation: "PSR_v1 R14.4 pipeline + Pa11y mandatory"}
chain_membership: []
attributes:
tooling_section: "§4.6 #32"
conflicts_with: ["frontend-design", "ui-ux-pro-max:ui-ux-pro-max"]
- id: "#33a"
name: "claude-md-improver"
slug: "claude-md-management:claude-md-improver"
category: "off-phase"
subcategory: "infrastructure"
status: "active"
dormancy_reason: null
capabilities: "Аудит и целевые правки CLAUDE.md: quality-report по rubric + targeted-обновления секций и правил §5. Один из двух входов плагина claude-md-management (единственный канал правки CLAUDE.md)."
triggers:
- {keyword: "аудит claude.md", weight: 1.0}
- {keyword: "правки claude.md", weight: 1.0}
boundaries:
- {relation: "CLAUDE.md §5 п.10 + PSR_v1 R10.1"}
chain_membership: ["L12"]
attributes:
tooling_section: "§4.7 #33"
install: "enabledPlugins.claude-md-management@claude-plugins-official в ~/.claude/settings.json"
- id: "#33b"
name: "revise-claude-md"
slug: "claude-md-management:revise-claude-md"
category: "off-phase"
subcategory: "infrastructure"
status: "active"
dormancy_reason: null
capabilities: "Захват learnings текущей сессии в CLAUDE.md (новые quirks/команды/паттерны). Второй вход плагина claude-md-management."
triggers:
- {keyword: "захват learnings", weight: 1.0}
- {keyword: "обязательный канал", weight: 1.0}
boundaries:
- {relation: "CLAUDE.md §5 п.10 + PSR_v1 R10.1"}
chain_membership: ["L12"]
attributes:
tooling_section: "§4.7 #33"
install: "enabledPlugins.claude-md-management@claude-plugins-official в ~/.claude/settings.json"
- id: "#34"
name: "Sentry MCP"
slug: "sentry-mcp"
category: "off-phase"
subcategory: "debug-runtime"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для чтения событий, ошибок и трассировок из self-hosted Sentry; READ-ONLY; помогает диагностировать production runtime ошибки; pending активации (Б-1)."
triggers:
- {keyword: "отладка production runtime errors", weight: 1.0}
- {classification: "bugfix", weight: 1.0}
# Removed 2026-05-27 (retro #8 follow-up): the "monitoring" classification
# in practice meant background task-notifications (not Sentry events), so
# this trigger fired false-positives on every bg-job-completion prompt.
# Sentry MCP stays available via the "bugfix" classification and the
# explicit keyword trigger.
boundaries: []
chain_membership: ["L13", "L8"]
attributes:
tooling_section: "§4.8 #34"
- id: "#35"
name: "Redis MCP"
slug: "redis-mcp"
category: "off-phase"
subcategory: "debug-runtime"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для чтения состояния Redis/Memurai: ключи, очереди, TTL, паттерны; READ-ONLY; помогает диагностировать состояние кэша, очередей и Pest race-условий."
triggers:
- {keyword: "отладка redis/memurai очередей", weight: 1.0}
- {keyword: "кэша", weight: 1.0}
- {keyword: "pest-race", weight: 1.0}
# Removed 2026-05-27 (retro #8 follow-up): same reason as #34 above —
# "monitoring" classification covered bg-task-notifications, not Redis
# state inspection. Keyword triggers remain for explicit calls.
boundaries:
- {relation: "read-only"}
chain_membership: ["L13", "L8"]
attributes:
tooling_section: "§4.9 #35"
- id: "#36a"
name: "adr-kit-adr"
slug: "adr-kit:adr"
category: "off-phase"
subcategory: "architecture-tooling"
status: "active"
dormancy_reason: null
capabilities: "Создаёт и ведёт Architecture Decision Records (ADR) в docs/adr/ + enforcement-гейт."
triggers:
- {keyword: "архитектурные решения", weight: 1.0}
- {keyword: "adr", weight: 1.0}
- {keyword: "architecture decision record", weight: 1.0}
- {keyword: "архитектурное решение", weight: 1.0}
boundaries: []
chain_membership: ["L4", "L5"]
attributes:
tooling_section: "§4.11 #36"
install: "claude plugin install adr-kit@rvdbreemen-adr-kit"
- id: "#36b"
name: "adr-kit-judge"
slug: "adr-kit:judge"
category: "off-phase"
subcategory: "architecture-tooling"
status: "active"
dormancy_reason: null
capabilities: "Сверяет staged diff против принятых ADR (lefthook pre-commit job 9, без LLM); вердикт + пути разрешения."
triggers:
- {keyword: "enforcement", weight: 1.0}
boundaries:
- {relation: "adr-judge lefthook job 9"}
chain_membership: []
attributes:
tooling_section: "§4.11 #36"
install: "claude plugin install adr-kit@rvdbreemen-adr-kit"
- id: "#37"
name: "mermaid-skill"
slug: "mermaid"
category: "off-phase"
subcategory: "architecture-tooling"
status: "active"
dormancy_reason: null
capabilities: "Генерирует архитектурные диаграммы в нотации Mermaid и C4 (context, container, component); вендоренный скил в `.claude/skills/mermaid/`; диаграммы сохраняются в `docs/architecture/`."
triggers:
- {keyword: "c4", weight: 1.0}
- {keyword: "architecture-диаграммы", weight: 1.0}
- {keyword: "mermaid диаграмма", weight: 1.0}
- {keyword: "c4 диаграмма", weight: 1.0}
- {keyword: "c4 модель", weight: 1.0}
boundaries: []
chain_membership: ["L4"]
attributes:
tooling_section: "§4.12 #37"
install: "vendored в .claude/skills/mermaid/"
- id: "#38"
name: "architecture-patterns"
slug: "architecture-patterns"
category: "off-phase"
subcategory: "architecture-tooling"
status: "active"
dormancy_reason: null
capabilities: "Справочник архитектурных паттернов: Clean Architecture, Hexagonal, DDD, CQRS, Event Sourcing и другие; предоставляет описания, примеры применения и критерии выбора."
triggers:
- {keyword: "справочник архитектурных паттернов", weight: 1.0}
- {keyword: "clean architecture", weight: 1.0}
- {keyword: "hexagonal", weight: 1.0}
- {keyword: "ddd", weight: 1.0}
- {keyword: "domain-driven", weight: 1.0}
boundaries: []
chain_membership: ["L5"]
attributes:
tooling_section: "§4.13 #38"
install: "claude plugin install architecture-patterns@claude-skills"
- id: "#39"
name: "Trail of Bits Skills"
slug: "trail-of-bits"
category: "off-phase"
subcategory: "audit-security"
status: "active"
dormancy_reason: null
capabilities: "Набор из 8 аудит-скилов Trail of Bits для глубокого on-demand security-анализа: diff-review, supply-chain risk, variant analysis, static analysis, инвентаризация уязвимостей."
triggers:
- {keyword: "deep аудит безопасности", weight: 1.0}
- {keyword: "diff", weight: 1.0}
- {keyword: "supply-chain", weight: 1.0}
- {keyword: "глубокий security audit", weight: 1.0}
- {keyword: "supply chain risk", weight: 1.0}
- {keyword: "audit context", weight: 1.0}
- {classification: "analysis", weight: 1.0}
boundaries: []
chain_membership: ["L15", "L6"]
attributes:
tooling_section: "§4.14 #39"
install: "enabledPlugins subsets из trailofbits/skills"
- id: "#40"
name: "Security Guidance"
slug: "security-guidance"
category: "off-phase"
subcategory: "audit-security"
status: "active"
dormancy_reason: null
capabilities: "Блокирующий PreToolUse-хук (sys.exit 2): перехватывает правку файлов и выводит предупреждение при обнаружении уязвимых паттернов кода (SQL-инъекции, XSS, небезопасная десериализация); одноразовый speed-bump per файл+правило."
triggers:
- {keyword: "inline-блокировка уязвимых паттернов", weight: 1.0}
- {keyword: "inline уязвимость", weight: 1.0}
- {keyword: "code security warning", weight: 1.0}
- {keyword: "уязвимый паттерн", weight: 1.0}
- {keyword: "secret pattern detection", weight: 1.0}
boundaries:
- {relation: "блокирующий PreToolUse (sys.exit 2)"}
chain_membership: ["L6"]
attributes:
tooling_section: "§4.15 #40"
install: "claude plugin install security-guidance@claude-plugins-official"
- id: "#41"
name: "CCPM"
slug: "ccpm"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Скил управления dev-проектом: PRD → эпики → issues → код; хранит артефакты в `.claude/prds/` и `.claude/epics/`; 14 bash-скриптов без lifecycle-хуков."
triggers:
- {keyword: "prd эпик issue код", weight: 1.0}
- {keyword: "dev-проекты", weight: 1.0}
- {classification: "planning", weight: 1.0}
boundaries: []
chain_membership: ["L9"]
attributes:
tooling_section: "§4.16 #41"
install: "vendored в .claude/skills/ccpm/"
- id: "#42a"
name: "write-spec"
slug: "product-management:write-spec"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Функциональная спецификация/PRD из проблемы: goals/non-goals/метрики. Входная точка продуктовых церемоний."
triggers:
- {keyword: "prd", weight: 1.0}
- {keyword: "продуктовые церемонии", weight: 1.0}
- {classification: "planning", weight: 1.0}
boundaries: []
chain_membership: ["L9"]
attributes:
tooling_section: "§4.17 #42"
install: "claude plugin install product-management@knowledge-work-plugins"
- id: "#42b"
name: "roadmap-update"
slug: "product-management:roadmap-update"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Обновление дорожной карты (Now/Next/Later), переприоритизация инициатив."
triggers:
- {keyword: "роадмап", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42c"
name: "metrics-review"
slug: "product-management:metrics-review"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Разбор продуктовых метрик: тренды, scorecard, рекомендации."
triggers:
- {keyword: "метрики", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42d"
name: "product-brainstorming"
slug: "product-management:product-brainstorming"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Открытая проработка продуктовых идей и направлений (sparring-partner)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42e"
name: "sprint-planning"
slug: "product-management:sprint-planning"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "План спринта под ёмкость команды: scope, оценки, цели, P0 vs stretch."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42f"
name: "stakeholder-update"
slug: "product-management:stakeholder-update"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Апдейт стейкхолдерам под аудиторию (exec/eng/customer) и cadence."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42g"
name: "synthesize-research"
slug: "product-management:synthesize-research"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Синтез сырого research (интервью/опросы/тикеты) в структурированные инсайты и рекомендации."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#42h"
name: "product-competitive-brief"
slug: "product-management:competitive-brief"
category: "off-phase"
subcategory: "project-management"
status: "active"
dormancy_reason: null
capabilities: "Продуктовый конкурентный бриф: позиционирование, gap, угрозы. (Не путать с marketing:competitive-brief.)"
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.17 #42"
- id: "#43"
name: "deptrac"
slug: "deptrac"
category: "off-phase"
subcategory: "architecture-tooling"
status: "active"
dormancy_reason: null
capabilities: "Статический анализ направления зависимостей между PHP-слоями (Controller/Service/Model/Job/…) по конфигу `app/deptrac.yaml`; блокирует нарушения в lefthook pre-commit job 10."
triggers:
- {keyword: "направление зависимостей", weight: 1.0}
- {keyword: "границы слоёв", weight: 1.0}
- {keyword: "архитектурная зависимость", weight: 1.0}
- {keyword: "layer dependency", weight: 1.0}
- {keyword: "deptrac.yaml", weight: 1.0}
- {classification: "refactor", weight: 1.0}
boundaries:
- {relation: "lefthook job 10"}
chain_membership: ["L14", "L5"]
attributes:
tooling_section: "§4.18 #43"
install: "composer require --dev deptrac/deptrac"
- id: "#44"
name: "Figma MCP"
slug: "figma-mcp"
category: "off-phase"
subcategory: "design-tooling"
status: "deferred"
dormancy_reason: "нет Figma-аккаунта; дизайн-источник Лидерры — статический handoff Платона, не Figma-файл"
capabilities: "MCP-сервер для извлечения дизайн-токенов, компонентов и стилей из Figma-файлов — DEFERRED: у проекта нет Figma-аккаунта, дизайн-источник — статический handoff Платона."
triggers:
- {keyword: "извлечение дизайн-токенов из figma", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.19 #44"
- id: "#45"
name: "Universal Icons MCP"
slug: "universal-icons-mcp"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для поиска и вставки SVG-иконок из 10+ коллекций (Material, Tabler, Phosphor и др.); используется только для не-Lucide коллекций (ADR-006: Lucide иконки — через `lucide-vue-next`)."
triggers:
- {keyword: "svg-иконки non-lucide коллекции", weight: 1.0}
boundaries:
- {adr: "ADR-006", role: "Lucide → lucide-vue-next; raw-SVG только для не-Lucide коллекций"}
chain_membership: []
attributes:
tooling_section: "§4.20 #45"
install: "npx -y mcp-universal-icons (в .mcp.json)"
- id: "#46a"
name: "accessibility-review"
slug: "design-plugin:accessibility-review"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "WCAG 2.1 AA аудит дизайна (контраст, клавиатура, тач-таргеты, screen reader). Дизайн-уровень; технический a11y SoT — Pa11y #9."
triggers: []
boundaries:
- {relation: "pre-code; Pa11y остаётся a11y SoT"}
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
install: "claude plugin install design@knowledge-work-plugins"
- id: "#46b"
name: "design-critique"
slug: "design-plugin:design-critique"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "Структурная критика дизайна: usability, иерархия, консистентность."
triggers:
- {keyword: "дизайн-критика", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#46c"
name: "design-handoff"
slug: "design-plugin:design-handoff"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "Dev-спека из дизайна: токены, props, состояния, breakpoints, edge-cases, анимация."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#46d"
name: "design-system"
slug: "design-plugin:design-system"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "Аудит/документация/расширение дизайн-системы (naming, hardcoded-значения, новый паттерн)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#46e"
name: "design-research-synthesis"
slug: "design-plugin:research-synthesis"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "Синтез research (интервью/тесты/тикеты/NPS) в темы, инсайты, сегменты, приоритеты."
triggers:
- {keyword: "research synthesis", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#46f"
name: "user-research"
slug: "design-plugin:user-research"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "Планирование и проведение user research: гайд интервью, юзабилити-тест, опрос."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#46g"
name: "ux-copy"
slug: "design-plugin:ux-copy"
category: "off-phase"
subcategory: "design-tooling"
status: "active"
dormancy_reason: null
capabilities: "UX-копирайт: microcopy, ошибки, пустые состояния, CTA."
triggers:
- {keyword: "ux-копирайт", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.21 #46"
- id: "#47"
name: "openapi-mcp-server"
slug: "openapi-mcp"
category: "off-phase"
subcategory: "integration-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для интроспекции OpenAPI/REST-спецификаций: отдаёт эндпоинты, схемы, параметры как MCP-ресурсы и инструменты; READ-ONLY; в `.mcp.json`."
triggers:
- {keyword: "introspection openapi/rest-спек", weight: 1.0}
- {keyword: "openapi", weight: 1.0}
- {keyword: "swagger", weight: 1.0}
- {keyword: "спека api", weight: 1.0}
- {keyword: "rest api", weight: 1.0}
boundaries:
- {relation: "read-only"}
chain_membership: ["L7"]
attributes:
tooling_section: "§4.22 #47"
install: "npm install @ivotoby/openapi-mcp-server (в .mcp.json)"
- id: "#48"
name: "promptfoo"
slug: "promptfoo"
category: "off-phase"
subcategory: "ml-ai-tooling"
status: "active"
dormancy_reason: null
capabilities: "CLI-инструмент для eval и регрессионного тестирования LLM-промптов: ассерты, LLM-judge, red-team-сценарии; запуск вручную или в CI — не в хуке lefthook."
triggers:
- {keyword: "тестирование llm-промптов", weight: 1.0}
- {keyword: "eval", weight: 1.0}
- {keyword: "eval промпта", weight: 1.0}
- {keyword: "llm test", weight: 1.0}
- {keyword: "prompt regression", weight: 1.0}
boundaries:
- {relation: "только вручную/CI, никогда в хук"}
chain_membership: ["L10"]
attributes:
tooling_section: "§4.23 #48"
install: "npm install --save-dev promptfoo"
- id: "#49"
name: "Data Scientist skill"
slug: "data-scientist"
category: "off-phase"
subcategory: "ml-ai-tooling"
status: "active"
dormancy_reason: null
capabilities: "Вендоренный скил для классического ML-воркфлоу: загрузка данных, feature engineering, обучение моделей, оценка метрик, визуализация результатов."
triggers:
- {keyword: "классический ml-воркфлоу", weight: 1.0}
- {keyword: "ml модель", weight: 1.0}
- {keyword: "статистика", weight: 1.0}
- {keyword: "корреляция", weight: 1.0}
- {keyword: "машинное обучение", weight: 1.0}
boundaries: []
chain_membership: ["L10"]
attributes:
tooling_section: "§4.24 #49"
install: "vendored в .claude/skills/data-scientist/"
- id: "#50"
name: "Jupyter MCP"
slug: "jupyter-mcp"
category: "off-phase"
subcategory: "ml-ai-tooling"
status: "deferred"
dormancy_reason: "нет Python ML-окружения (pandas/scikit-learn/Jupyter) на native-Windows машине"
capabilities: "MCP-сервер для выполнения кода в Jupyter-ноутбуках — DEFERRED: требует Python ML-окружения, отсутствующего на native-Windows машине."
triggers:
- {keyword: "исполняемые jupyter-ноутбуки", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.25 #50"
- id: "#51a"
name: "operations-capacity-plan"
slug: "operations:capacity-plan"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Анализ ёмкости ресурсов + прогноз utilization (hire/deprioritize)."
triggers:
- {keyword: "capacity plan", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51b"
name: "operations-change-request"
slug: "operations:change-request"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Change request: impact-анализ + rollback-план (CAB)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51c"
name: "operations-compliance-tracking"
slug: "operations:compliance-tracking"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Отслеживание комплаенса + audit-readiness (SOC2/ISO/GDPR)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51d"
name: "operations-process-doc"
slug: "operations:process-doc"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Структурированная документация бизнес-процесса (flowchart, RACI, SOP)."
triggers:
- {keyword: "бизнес-процесс документ", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51e"
name: "operations-process-optimization"
slug: "operations:process-optimization"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Оптимизация процесса: устранение узких мест и лишних шагов."
triggers:
- {keyword: "документирование/оптимизация бизнес-процессов", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51f"
name: "operations-risk-assessment"
slug: "operations:risk-assessment"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Оценка операционных рисков: risk register (идентификация, оценка, митигация)."
triggers:
- {keyword: "risk assessment", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51g"
name: "operations-runbook"
slug: "operations:runbook"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Операционный runbook: пошаговые команды, troubleshooting, rollback, эскалация."
triggers:
- {keyword: "runbook", weight: 1.0}
boundaries: []
chain_membership: ["L4"]
attributes:
tooling_section: "§4.26 #51"
install: "claude plugin install operations@knowledge-work-plugins"
- id: "#51h"
name: "operations-status-report"
slug: "operations:status-report"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Статус-отчёт: KPI, риски, action items (green/yellow/red)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#51i"
name: "operations-vendor-review"
slug: "operations:vendor-review"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Оценка вендора: TCO, риски, рекомендация (renew vs replace)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.26 #51"
- id: "#52"
name: "process-modeling"
slug: "process-modeling"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Скил для BPMN 2.0 моделирования to-be бизнес-процессов: swimlane-диаграммы, события, шлюзы, потоки управления; результаты в `docs/process/`."
triggers:
- {keyword: "моделирование to-be процесса", weight: 1.0}
- {keyword: "bpmn 2.0", weight: 1.0}
- {keyword: "bpmn", weight: 1.0}
- {keyword: "моделирование процесса", weight: 1.0}
- {keyword: "swimlane", weight: 1.0}
boundaries:
- {relation: "self-authored project skill"}
chain_membership: ["L3", "L4"]
attributes:
tooling_section: "§4.27 #52"
- id: "#53"
name: "process-analysis"
slug: "process-analysis"
category: "off-phase"
subcategory: "business-process"
status: "active"
dormancy_reason: null
capabilities: "Скил для as-is анализа бизнес-процессов через discovery из исходного кода Laravel: маршруты, контроллеры, джобы, очереди; выявляет узкие места и несоответствия."
triggers:
- {keyword: "анализ as-is процесса", weight: 1.0}
- {keyword: "discovery из кода", weight: 1.0}
- {keyword: "discovery процесса", weight: 1.0}
- {keyword: "узкое место", weight: 1.0}
- {keyword: "bottleneck", weight: 1.0}
- {classification: "analysis", weight: 1.0}
boundaries:
- {relation: "self-authored project skill; ADR-009 граница с #55"}
chain_membership: ["L3"]
attributes:
tooling_section: "§4.28 #53"
- id: "#54"
name: "n8n-mcp"
slug: "n8n-mcp"
category: "off-phase"
subcategory: "business-process"
status: "deferred"
dormancy_reason: "n8n не в стеке; движок процессов = очередь Laravel; принятие n8n — отдельное архитектурное решение"
capabilities: "MCP-сервер для workflow-движка n8n (автоматизация процессов) — DEFERRED: n8n не входит в стек портала, движок процессов — очередь Laravel."
triggers:
- {keyword: "workflow-движок автоматизации", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.29 #54"
- id: "#55"
name: "discovery-interview"
slug: "discovery-interview"
category: "off-phase"
subcategory: "discovery-tooling"
status: "active"
dormancy_reason: null
capabilities: "Скил для структурированного интервью-discovery: режим FEATURE (JTBD-интервью заказчика перед проектированием фичи → discovery-brief) + режим SYSTEM (ориентация по мета-слою проекта)."
triggers:
- {keyword: "интервью-discovery", weight: 1.0}
- {keyword: "jtbd", weight: 1.0}
- {keyword: "feature system режим", weight: 1.0}
- {keyword: "discovery", weight: 1.0}
- {keyword: "интервью заказчика", weight: 1.0}
boundaries:
- {adr: "ADR-009", role: "граница с #53 process-analysis: discovery-interview = интервью человека; process-analysis = discovery из кода"}
chain_membership: ["L1", "L2"]
attributes:
tooling_section: "§4.30 #55"
- id: "#56"
name: "skill-creator"
slug: "skill-creator"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Плагин-конструктор standalone Claude-скилов: scaffold SKILL.md, evals.json, references/; помогает оформить skill-артефакт с eval-набором для проверки точности."
triggers:
- {keyword: "создание standalone-скилов", weight: 1.0}
- {keyword: "eval", weight: 1.0}
- {keyword: "создать скил", weight: 1.0}
- {keyword: "новый skill", weight: 1.0}
- {keyword: "skill.md", weight: 1.0}
boundaries: []
chain_membership: ["L11"]
attributes:
tooling_section: "§4.31 #56"
- id: "#57a"
name: "agent-development"
slug: "plugin-dev:agent-development"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Субагент плагина: frontmatter + when-to-use + системный промпт."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#57b"
name: "command-development"
slug: "plugin-dev:command-development"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Слэш-команда плагина: YAML-frontmatter + аргументы + bash."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#57c"
name: "hook-development"
slug: "plugin-dev:hook-development"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Хук плагина: событие (PreToolUse/PostToolUse/...) + matcher + скрипт ${CLAUDE_PLUGIN_ROOT}."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#57d"
name: "mcp-integration"
slug: "plugin-dev:mcp-integration"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер в плагине: .mcp.json (stdio/SSE/HTTP)."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#57e"
name: "plugin-structure"
slug: "plugin-dev:plugin-structure"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Структура плагина: plugin.json + раскладка компонентов. Входная точка разработки Claude-плагина."
triggers:
- {keyword: "разработка claude-плагинов", weight: 1.0}
- {keyword: "плагин claude code", weight: 1.0}
- {keyword: "plugin.json", weight: 1.0}
- {keyword: "новый плагин", weight: 1.0}
- {keyword: "marketplace плагин", weight: 1.0}
boundaries: []
chain_membership: ["L11"]
attributes:
tooling_section: "§4.32 #57"
- id: "#57f"
name: "plugin-settings"
slug: "plugin-dev:plugin-settings"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Настройки плагина: .local.md (YAML-frontmatter + состояние), per-project конфиг."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#57g"
name: "skill-development"
slug: "plugin-dev:skill-development"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Навык плагина: SKILL.md + прогрессивное раскрытие."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.32 #57"
- id: "#58"
name: "hookify"
slug: "hookify"
category: "off-phase"
subcategory: "authoring-tooling"
status: "active"
dormancy_reason: null
capabilities: "Плагин для генерации Claude Code хуков (PreToolUse, PostToolUse, Stop, UserPromptSubmit): только по явному `/hookify`; HK1 pre-check проверяет коллизии с существующей хук-архитектурой."
triggers:
- {keyword: "генерация хуков (только по явному /hookify)", weight: 1.0}
- {keyword: "хук claude", weight: 1.0}
- {keyword: "новый hook", weight: 1.0}
- {keyword: "pretooluse хук", weight: 1.0}
- {keyword: "генерация хука", weight: 1.0}
boundaries:
- {adr: "ADR-010", role: "HK1 pre-check коллизии с существующими хуками перед генерацией"}
chain_membership: ["L11"]
attributes:
tooling_section: "§4.33 #58"
- id: "#59"
name: "claude-code-setup"
slug: "claude-code-setup"
category: "off-phase"
subcategory: "dev-support"
status: "active"
dormancy_reason: null
capabilities: "Рекомендатель автоматизаций Claude Code (hooks, permissions, settings): предлагает настройки на основе паттернов использования; READ-ONLY, не меняет конфигурацию."
triggers:
- {keyword: "рекомендатель claude code automations (read-only)", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.34 #59"
- id: "#60"
name: "context7"
slug: "context7"
category: "off-phase"
subcategory: "dev-support"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для получения актуальной документации библиотек и SDK (Laravel, Vue, Vuetify, npm-пакеты и др.); первый выбор для вопросов по API конкретного пакета."
triggers:
- {keyword: "актуальная документация библиотек/sdk", weight: 1.0}
- {keyword: "актуальная документация библиотеки", weight: 1.0}
- {keyword: "лайвдоки", weight: 1.0}
- {keyword: "документация пакета", weight: 1.0}
- {keyword: "документация sdk", weight: 1.0}
boundaries:
- {relation: "первый выбор для документации известной библиотеки; WebFetch — fallback на конкретный URL; WebSearch — без знания библиотеки"}
chain_membership: []
attributes:
tooling_section: "§4.35 #60"
- id: "#61a"
name: "finance-audit-support"
slug: "finance-plugin:audit-support"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Поддержка SOX-404: workpapers, sample selection, классификация deficiency."
triggers:
- {keyword: "audit support", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61b"
name: "finance-close-management"
slug: "finance-plugin:close-management"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Управление month-end close: sequencing, dependencies, статус по дням."
triggers:
- {keyword: "close", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61c"
name: "finance-financial-statements"
slug: "finance-plugin:financial-statements"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Финстейтменты (P&L, balance sheet, cash flow) + variance vs budget по GAAP."
triggers:
- {keyword: "us-gaap-отчётность", weight: 1.0}
- {keyword: "financial statements", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61d"
name: "finance-journal-entry"
slug: "finance-plugin:journal-entry"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Финализация проводки (debits/credits) с обоснованием для аудита."
triggers:
- {keyword: "проводки", weight: 1.0}
- {keyword: "journal entry", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61e"
name: "finance-journal-entry-prep"
slug: "finance-plugin:journal-entry-prep"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Подготовка проводок к закрытию: accruals, prepaid, depreciation, payroll. (Подготовка ≠ финализация journal-entry.)"
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61f"
name: "finance-reconciliation"
slug: "finance-plugin:reconciliation"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Сверка GL vs subledger/bank + категоризация reconciling items."
triggers:
- {keyword: "сверка", weight: 1.0}
- {keyword: "reconciliation", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61g"
name: "finance-sox-testing"
slug: "finance-plugin:sox-testing"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "SOX-404 тестирование контролей (US-only; not-applicable РФ по ADR-012)."
triggers: []
boundaries:
- {adr: "ADR-012", role: "SOX not-applicable РФ; US-GAAP частично применим"}
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
- id: "#61h"
name: "finance-variance-analysis"
slug: "finance-plugin:variance-analysis"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Декомпозиция variance на драйверы + waterfall + narrative (бюджет vs факт)."
triggers:
- {keyword: "variance-анализ", weight: 1.0}
- {keyword: "variance", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.36 #61"
install: "claude plugin install finance@knowledge-work-plugins"
- id: "#62"
name: "billing-audit"
slug: "billing-audit"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил аудита корректности биллинга: инварианты bcmath-арифметики, идемпотентность списаний, tier-резолюция тарифов, дрейф CSV-reconcile, корректность `lead_charges`."
triggers:
- {keyword: "аудит списания", weight: 1.0}
- {keyword: "money-инварианты", weight: 1.0}
- {keyword: "идемпотентность", weight: 1.0}
- {keyword: "тариф-резолюция", weight: 1.0}
- {keyword: "дрейф reconcile", weight: 1.0}
- {keyword: "списание", weight: 1.0}
- {keyword: "биллинг", weight: 1.0}
- {keyword: "тариф", weight: 1.0}
- {keyword: "баланс", weight: 1.0}
- {keyword: "начисление лида", weight: 1.0}
- {keyword: "lead_charges", weight: 1.0}
- {keyword: "копейки", weight: 1.0}
- {keyword: "csv reconcile", weight: 1.0}
- {keyword: "bcmath", weight: 1.0}
- {keyword: "bcadd", weight: 1.0}
boundaries:
- {adr: "ADR-012", role: "граница с process-*/D3/ru-tax; аудит кода биллинга, не налогов и не процесса"}
chain_membership: ["L13"]
attributes:
tooling_section: "§4.37 #62"
- id: "#63"
name: "ru-tax-accounting"
slug: "ru-tax-accounting"
category: "off-phase"
subcategory: "finance-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил по РСБУ и НК РФ: НДС/УСН расчёты, налогооблагаемые события, формирование проводок ДТ/КТ, подготовка выгрузок для бухгалтера; закрывает РФ-gap плагина finance (#61)."
triggers:
- {keyword: "рсбу", weight: 1.0}
- {keyword: "ндс/усн", weight: 1.0}
- {keyword: "налоговая база", weight: 1.0}
- {keyword: "налогооблагаемое событие", weight: 1.0}
- {keyword: "выгрузка бухгалтеру", weight: 1.0}
- {keyword: "ндс", weight: 1.0}
- {keyword: "усн", weight: 1.0}
- {keyword: "налог на прибыль", weight: 1.0}
- {keyword: "выручка", weight: 1.0}
- {keyword: "проводка", weight: 1.0}
- {keyword: "дт/кт", weight: 1.0}
- {keyword: "бухгалтер", weight: 1.0}
boundaries:
- {adr: "ADR-012", role: "закрывает РФ-gap US-GAAP-плагина #61; ≠ billing-audit #62 (корректность кода), ≠ D1/D2"}
chain_membership: ["L13"]
attributes:
tooling_section: "§4.38 #63"
- id: "#64"
name: "Rector"
slug: "rector"
category: "off-phase"
subcategory: "backend-tooling"
status: "active"
dormancy_reason: null
capabilities: "Автоматический рефакторинг PHP-кода: обновление до новых версий PHP/Laravel, удаление мёртвого кода, modernization паттернов; запускается вручную или в CI (`composer rector`), не блокирует коммит."
triggers:
- {keyword: "авто-рефакторинг", weight: 1.0}
- {keyword: "version-upgrade laravel", weight: 1.0}
- {keyword: "удаление мёртвого кода", weight: 1.0}
- {keyword: "автоматический рефакторинг", weight: 1.0}
- {keyword: "версия php", weight: 1.0}
- {keyword: "deprecated php", weight: 1.0}
- {keyword: "code modernization", weight: 1.0}
- {classification: "refactor", weight: 1.0}
boundaries:
- {adr: "ADR-013", role: "BT1 vs Pint (трансформация vs форматирование); BT2 vs Larastan (комплементарны); BT3 vs deptrac"}
chain_membership: ["L14"]
attributes:
tooling_section: "§4.39 #64"
install: "composer require rector/rector --dev"
- id: "#65"
name: "PHP Insights"
slug: "php-insights"
category: "off-phase"
subcategory: "backend-tooling"
status: "active"
dormancy_reason: null
capabilities: "Измеряет метрики качества PHP-кода: цикломатическая сложность, архитектурные зависимости, code style score; базовые пороги 78/79/73; on-demand или CI (`composer insights`)."
triggers:
- {keyword: "метрики качества/сложности/архитектуры php-кода", weight: 1.0}
- {keyword: "метрики качества кода", weight: 1.0}
- {keyword: "complexity", weight: 1.0}
- {keyword: "architecture metrics", weight: 1.0}
- {keyword: "качество кода php", weight: 1.0}
- {classification: "refactor", weight: 1.0}
boundaries:
- {adr: "ADR-013", role: "BT4 vs Pint/Larastan; уникум — оси complexity + architecture"}
chain_membership: ["L14"]
attributes:
tooling_section: "§4.40 #65"
install: "composer require nunomaduro/phpinsights --dev"
- id: "#66"
name: "laravel-backend-patterns"
slug: "laravel-backend-patterns"
category: "off-phase"
subcategory: "backend-tooling"
status: "active"
dormancy_reason: null
capabilities: "Справочник проектных backend-конвенций Лидерры: слоистость controller→service→job, RLS-aware паттерны, bcmath-деньги, идемпотентность джобов, partition-aware запросы."
triggers:
- {keyword: "как писать backend в лидерре", weight: 1.0}
- {keyword: "паттерн controller/service/job", weight: 1.0}
- {keyword: "rls", weight: 1.0}
- {keyword: "деньги", weight: 1.0}
- {keyword: "controller", weight: 1.0}
- {keyword: "service", weight: 1.0}
- {keyword: "job", weight: 1.0}
- {keyword: "eloquent", weight: 1.0}
- {keyword: "partition", weight: 1.0}
- {keyword: "lockforupdate", weight: 1.0}
- {keyword: "dispatch", weight: 1.0}
boundaries:
- {adr: "ADR-013", role: "BT5 ≠ architecture-patterns #38 (generic vs проектные конвенции); BT6 ≠ billing-audit #62"}
chain_membership: []
attributes:
tooling_section: "§4.41 #66"
- id: "#67"
name: "NightOwl"
slug: "nightowl"
category: "off-phase"
subcategory: "backend-tooling"
status: "deferred"
dormancy_reason: "pending Б-1/Linux: native-Windows нет pcntl/posix; OSS без MCP; hosted 152-ФЗ риск"
capabilities: "Self-hosted runtime-телеметрия для сквозной корреляции request/job/query трассировок — DEFERRED: требует pcntl/posix (недоступны на native-Windows), pending Б-1/Linux."
triggers:
- {keyword: "коррелированный runtime-трейс request/job/query (self-hosted)", weight: 1.0}
boundaries:
- {adr: "ADR-013", role: "BT7 ≠ Sentry #34 (трейс vs ошибки); BT8 ≠ Pail/Boost (сквозной трейс vs tail/снапшот)"}
chain_membership: []
attributes:
tooling_section: "§4.42 #67"
- id: "#68"
name: "OWASP ZAP"
slug: "owasp-zap"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "DAST-сканер работающего веб-приложения (OWASP ZAP): активно тестирует инъекции, XSS, обход аутентификации, IDOR; MCP-интеграция; установлен портативно (`bin/ZAP_2.17.0/`)."
triggers:
- {keyword: "глубокая боевая dast", weight: 1.0}
- {keyword: "обход входа", weight: 1.0}
- {keyword: "инъекции", weight: 1.0}
- {keyword: "xss", weight: 1.0}
- {keyword: "dast", weight: 1.0}
- {keyword: "scan running portal", weight: 1.0}
- {keyword: "проникновение в работающий портал", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS1 ≠ Semgrep #25 (динамика vs статика); IS2 ≠ Nuclei #69 (глубина vs широта)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.43 #68"
- id: "#69"
name: "Nuclei"
slug: "nuclei"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "CLI-сканер известных уязвимостей по шаблонам (Nuclei): CVE, экспозиция эндпоинтов, слабый TLS, misconfiguration; установлен как `bin/nuclei.exe`; цель 127.0.0.1."
triggers:
- {keyword: "известные уязвимости/экспозиция/слабый tls снаружи", weight: 1.0}
- {keyword: "nuclei", weight: 1.0}
- {keyword: "уязвимость по шаблону", weight: 1.0}
- {keyword: "cve scan", weight: 1.0}
- {keyword: "nuclei сканер", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS2 ≠ ZAP #68 (широта vs глубина — комплементарны)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.44 #69"
- id: "#70"
name: "Ward"
slug: "ward"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "Go CLI-инструмент аудита безопасности настроек Laravel: `.env`, конфигурация cookie, HTTP-заголовки, секреты, зависимости; установлен как `bin/ward.exe`; заменил abandoned Enlightn."
triggers:
- {keyword: "безопасность настроек laravel", weight: 1.0}
- {keyword: ".env/config/заголовки/cookie/secrets/deps", weight: 1.0}
- {keyword: "laravel security config", weight: 1.0}
- {keyword: "env audit", weight: 1.0}
- {keyword: "secrets config", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS3 ≠ Larastan #12/Semgrep #25; заменил Enlightn (abandoned/L13)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.45 #70"
- id: "#71"
name: "pdn-152fz-audit"
slug: "pdn-152fz-audit"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил аудита соответствия 152-ФЗ: инвентаризация ПДн в схеме/коде, проверка согласий, маскирование, логирование доступа, работа с `pd_subject_request`."
triggers:
- {keyword: "аудит пдн / соответствие 152-фз", weight: 1.0}
- {keyword: "пдн", weight: 1.0}
- {keyword: "персональные данные", weight: 1.0}
- {keyword: "152-фз", weight: 1.0}
- {keyword: "согласие на обработку", weight: 1.0}
- {keyword: "телефон лида", weight: 1.0}
- {keyword: "маскирование", weight: 1.0}
- {keyword: "pd_subject_request", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS4 ≠ pg_anonymizer #29 (аудит vs инструмент маскирования); IS5 ≠ D2 (техника vs юридическое оформление)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.46 #71"
- id: "#72"
name: "threat-model"
slug: "threat-model"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил моделирования угроз по методологии STRIDE: анализ attack surface портала, приоритизация защитных мер перед публичным запуском (going-public)."
triggers:
- {keyword: "stride угрозы портала", weight: 1.0}
- {keyword: "going-public", weight: 1.0}
- {keyword: "что защищать первым", weight: 1.0}
- {keyword: "stride", weight: 1.0}
- {keyword: "моделирование угроз", weight: 1.0}
- {keyword: "attack surface", weight: 1.0}
- {keyword: "точки входа", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS6 ≠ Trail of Bits #39 (портал+STRIDE+going-public vs generic deep code-audit)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.47 #72"
- id: "#73"
name: "security-go-live"
slug: "security-go-live"
category: "off-phase"
subcategory: "infosec-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил-оркестратор предрелизной проверки безопасности: запускает #68-72 + D3, собирает результаты и выносит вердикт GO/NO-GO перед выходом в интернет."
triggers:
- {keyword: "прогон безопасности перед релизом", weight: 1.0}
- {keyword: "go/no-go", weight: 1.0}
- {keyword: "go-live", weight: 1.0}
- {keyword: "выход в интернет", weight: 1.0}
- {keyword: "публикация в прод", weight: 1.0}
- {keyword: "security release gate", weight: 1.0}
- {classification: "security", weight: 1.0}
boundaries:
- {adr: "ADR-014", role: "IS7 ≠ audit-portal (только безопасность + go-live-вердикт vs полный 14-фазный аудит)"}
chain_membership: ["L15"]
attributes:
tooling_section: "§4.48 #73"
- id: "#74a"
name: "marketing-brand-review"
slug: "marketing-plugin:brand-review"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Ревью контента против голоса/гайда бренда: флаги по severity + before/after-фиксы."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74b"
name: "marketing-campaign-plan"
slug: "marketing-plugin:campaign-plan"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Бриф кампании: цели, аудитория, каналы, контент-календарь, метрики."
triggers:
- {keyword: "кампания", weight: 1.0}
- {keyword: "лендинг", weight: 1.0}
- {keyword: "реклама", weight: 1.0}
- {keyword: "лидген", weight: 1.0}
- {keyword: "вебинар", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74c"
name: "marketing-competitive-brief"
slug: "marketing-plugin:competitive-brief"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Маркетинговый конкурентный анализ: позиционирование, messaging-гэпы, угрозы, battlecards. (Не путать с product-management:competitive-brief.)"
triggers:
- {keyword: "конкурент-бриф", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74d"
name: "marketing-content-creation"
slug: "marketing-plugin:content-creation"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Фреймворки и шаблоны контента под канал (blog/social/email/landing/PR/case). Первичный resolver контента C1."
triggers:
- {keyword: "маркетинговый контент", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT1 vs C2/C3; MKT2 vs product-management; MKT3 vs marketingskills #75 (решатель, не материал)"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.49 #74"
install: "claude plugin install marketing@knowledge-work-plugins"
- id: "#74e"
name: "marketing-draft-content"
slug: "marketing-plugin:draft-content"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Драфт маркетинг-контента с кросс-платформенным форматированием."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74f"
name: "marketing-email-sequence"
slug: "marketing-plugin:email-sequence"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Multi-email цепочка: логика ветвления, timing, бенчмарки."
triggers:
- {keyword: "email-цепочка", weight: 1.0}
- {keyword: "email-рассылка", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74g"
name: "marketing-performance-report"
slug: "marketing-plugin:performance-report"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Отчёт по маркетинг-метрикам: тренды, инсайты, рекомендации оптимизации."
triggers:
- {keyword: "performance-report", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#74h"
name: "marketing-seo-audit"
slug: "marketing-plugin:seo-audit"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "SEO-аудит: keyword-исследование, тех-секция, контент-гэпы."
triggers:
- {keyword: "seo-аудит", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.49 #74"
- id: "#75"
name: "marketingskills"
slug: "marketingskills"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Библиотека из 40 маркетинговых фреймворков (AIDA, PAS, FAB, USP, CRO, cold-email, lead-magnets, pricing-psychology и др.); выступает как материал/резерв-библиотека, решатель — marketing (#74)."
triggers:
- {keyword: "фреймворки cro", weight: 1.0}
- {keyword: "копирайтинг", weight: 1.0}
- {keyword: "programmatic-seo", weight: 1.0}
- {keyword: "ad-creative", weight: 1.0}
- {keyword: "cold-email", weight: 1.0}
- {keyword: "lead-magnets", weight: 1.0}
- {keyword: "pricing", weight: 1.0}
- {keyword: "marketing-psychology", weight: 1.0}
- {keyword: "маркетинговая фреймворк", weight: 1.0}
- {keyword: "aida", weight: 1.0}
- {keyword: "pas", weight: 1.0}
- {keyword: "fab", weight: 1.0}
- {keyword: "usp", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT3 — материал/резерв-библиотека, не решатель; решатель = marketing #74"}
chain_membership: []
attributes:
tooling_section: "§4.50 #75"
- id: "#76a"
name: "brand-voice-enforcement"
slug: "brand-voice:brand-voice-enforcement"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Применение brand-гайдов к генерации контента (email/pitch/LinkedIn/Slack/proposal): выравнивание по голосу бренда."
triggers:
- {keyword: "тон бренда", weight: 1.0}
- {keyword: "голос бренда", weight: 1.0}
- {keyword: "тон копирайта", weight: 1.0}
- {keyword: "voice", weight: 1.0}
- {keyword: "тональность", weight: 1.0}
- {keyword: "позиционирование", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT6 — вербальный бренд vs Brandbook v2 визуальный бренд; взаимодополняют"}
chain_membership: []
attributes:
tooling_section: "§4.51 #76"
- id: "#76b"
name: "brand-voice-discover-brand"
slug: "brand-voice:discover-brand"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Автономный поиск разрозненных brand-материалов по платформам (Notion/Confluence/Drive/Box/Figma/Gong/Slack) → discovery-отчёт."
triggers: []
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.51 #76"
- id: "#76c"
name: "brand-voice-guideline-generation"
slug: "brand-voice:guideline-generation"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Генерация brand voice guidelines из исходных материалов (docs/transcripts/recordings)."
triggers:
- {keyword: "brand guidelines для текстов", weight: 1.0}
boundaries: []
chain_membership: []
attributes:
tooling_section: "§4.51 #76"
- id: "#77"
name: "marketing-ru"
slug: "marketing-ru"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Проектный скил маркетинга для российского рынка: Яндекс.Директ, ВКонтакте, Telegram-каналы, конверсия лендинга, 152-ФЗ согласия на рассылки; eval 20/20."
triggers:
- {keyword: "яндекс.директ", weight: 1.0}
- {keyword: "яндекс.метрика", weight: 1.0}
- {keyword: "vk", weight: 1.0}
- {keyword: "telegram как каналы", weight: 1.0}
- {keyword: "конверсия лендинга лидерры", weight: 1.0}
- {keyword: "маркетинг 152-фз согласия на рассылки", weight: 1.0}
- {keyword: "рф-канал", weight: 1.0}
- {keyword: "вконтакте", weight: 1.0}
- {keyword: "telegram-канал", weight: 1.0}
- {keyword: "unisender", weight: 1.0}
- {keyword: "российский рынок", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT9 — 152-ФЗ cross-ref #71; закрывает РФ-специфику маркетинга"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.52 #77"
- id: "#78"
name: "Яндекс.Метрика MCP"
slug: "yandex-metrika-mcp"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для чтения данных Яндекс.Метрики: визиты, источники трафика, гео, демография, поведение пользователей лендинга; READ-ONLY; активен при живом лендинге."
triggers:
- {keyword: "веб-аналитика лендинга", weight: 1.0}
- {keyword: "визиты", weight: 1.0}
- {keyword: "источники трафика", weight: 1.0}
- {keyword: "гео", weight: 1.0}
- {keyword: "демография", weight: 1.0}
- {keyword: "поведение", weight: 1.0}
- {keyword: "яндекс.метрика", weight: 1.0}
- {keyword: "статистика посещений", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT8 READ-ONLY; активация при живом лендинге (Б-1)"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.53 #78"
- id: "#79"
name: "Яндекс.Директ+Wordstat MCP"
slug: "yandex-wordstat-mcp"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для подбора ключевых слов через Яндекс.Wordstat: частотность запросов по РФ, сезонность, связанные фразы; Direct-мутации отключены (только 5 read-only Wordstat-инструментов)."
triggers:
- {keyword: "подбор ключевых слов wordstat", weight: 1.0}
- {keyword: "частотность запросов рф", weight: 1.0}
- {keyword: "ключевые слова", weight: 1.0}
- {keyword: "wordstat", weight: 1.0}
- {keyword: "поисковые запросы", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT8 — Direct-мутации НЕ активированы; только Wordstat-модуль (5 read-only tools)"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.54 #79"
- id: "#80"
name: "Telegram MCP"
slug: "telegram-mcp"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер для управления Telegram-каналами: публикация постов, редактирование, получение аналитики, работа с медиа; использует выделенный аккаунт через SESSION_STRING."
triggers:
- {keyword: "постинг в telegram-канал", weight: 1.0}
- {keyword: "управление", weight: 1.0}
- {keyword: "получение аналитики канала", weight: 1.0}
- {keyword: "telegram", weight: 1.0}
- {keyword: "telegram-бот", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT8 — SESSION_STRING только .env; выделенный аккаунт"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.55 #80"
- id: "#81"
name: "Postiz"
slug: "postiz"
category: "off-phase"
subcategory: "marketing-tooling"
status: "active"
dormancy_reason: null
capabilities: "Self-hosted SMM-планировщик Postiz (AGPL-3.0): создание контент-календаря, планирование публикаций в 30+ соцсетях включая ВКонтакте и Telegram."
triggers:
- {keyword: "планирование и публикация в 30+ соцсетей включая vk и telegram", weight: 1.0}
- {keyword: "контент-календарь", weight: 1.0}
- {keyword: "smm-планировщик", weight: 1.0}
- {keyword: "постинг в соцсети", weight: 1.0}
- {keyword: "postiz", weight: 1.0}
- {classification: "marketing", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT7 AGPL self-host без дистрибуции; покрывает VK-постинг"}
chain_membership: ["L16"]
attributes:
tooling_section: "§4.56 #81"
- id: "#82"
name: "DataForSEO MCP"
slug: "dataforseo-mcp"
category: "off-phase"
subcategory: "marketing-tooling"
status: "deferred"
dormancy_reason: "post-Б-1: требует платного аккаунта DataForSEO"
capabilities: "MCP-сервер DataForSEO для SEO-данных по РФ: SERP-позиции, анализ ключевых слов, бэклинки, конкурентный анализ — DEFERRED: платный, pending Б-1."
triggers:
- {keyword: "serp-позиции", weight: 1.0}
- {keyword: "ключевые слова", weight: 1.0}
- {keyword: "бэклинки", weight: 1.0}
- {keyword: "данные рф-выдачи", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "комплементарен Wordstat #79; даёт SERP + бэклинки + широкую аналитику"}
chain_membership: []
attributes:
tooling_section: "§4.57 #82"
- id: "#83"
name: "Unisender Go MCP"
slug: "unisender-go-mcp"
category: "off-phase"
subcategory: "marketing-tooling"
status: "deferred"
dormancy_reason: "нет готового upstream MCP; своя обёртка по потребности массовых рассылок"
capabilities: "Кастомный MCP-обёртка для массовых email-рассылок через Unisender Go API — DEFERRED: отсутствует upstream MCP-сервер, требует разработки."
triggers:
- {keyword: "массовые email-рассылки через unisender go api", weight: 1.0}
boundaries:
- {adr: "ADR-015", role: "MKT5 — транзакционный email (продуктовый код) vs маркетинговые рассылки; 152-ФЗ согласия cross-ref #77/#71"}
chain_membership: []
attributes:
tooling_section: "§4.58 #83"
- id: "#84"
name: "normative-sync"
slug: "normative-sync"
category: "off-phase"
subcategory: "project-agent"
status: "active"
dormancy_reason: null
capabilities: "Sonnet-агент для синхронизации четырёх нормативных документов (Pravila/PSR_v1/Tooling/CLAUDE.md): обновляет version bumps, §0 cross-refs, счётчики footer и §9 changelog-записи после завершённых интеграций."
triggers:
- {classification: "normative_sync_needed", weight: 1.0}
- {keyword: "синкни нормативку", weight: 1.0}
- {keyword: "нормативный синк", weight: 1.0}
- {keyword: "закрыли задачу синк", weight: 0.9}
boundaries:
- {relation: "Контроллер обязан звать после закрытия крупной off-phase интеграции, brain governance артефакта, принятого ADR — Pravila §2.4"}
- {pair: "#85", relation: "Парный project-агент — оба не входят в Tooling-канон счётчиков (#1-#83), это .claude/agents/ файлы"}
chain_membership: []
attributes:
agent_file: ".claude/agents/normative-sync.md"
spec: "docs/superpowers/specs/2026-05-24-controller-offload-agents-design.md §3"
tooling_section: null
- id: "#85"
name: "prod-deploy-validator"
slug: "prod-deploy-validator"
category: "off-phase"
subcategory: "project-agent"
status: "active"
dormancy_reason: null
capabilities: "Sonnet-агент для предрелизной валидации боевого сервера liderra.ru: выполняет 8 READ-ONLY SSH-проверок (конфиг, сервисы, БД, очереди) и возвращает вердикт GO/NO-GO с указанием проблемы."
triggers:
- {classification: "prod_deploy_imminent", weight: 1.0}
- {keyword: "готовность боевого", weight: 1.0}
- {keyword: "проверь прод", weight: 1.0}
- {keyword: "ready to deploy", weight: 1.0}
boundaries:
- {relation: "Контроллер обязан звать перед любым выкатом на liderra.ru — Pravila §2.4. READ-ONLY по дизайну."}
- {pair: "#84", relation: "Парный project-агент"}
chain_membership: []
attributes:
agent_file: ".claude/agents/prod-deploy-validator.md"
spec: "docs/superpowers/specs/2026-05-24-controller-offload-agents-design.md §4"
tooling_section: null
- id: "#86"
name: "graphifyy"
slug: "graphifyy"
category: "off-phase"
subcategory: "knowledge-graph-tooling"
status: "active"
dormancy_reason: null
capabilities: "CLI knowledge-graph builder для всего портала (docs+config+code). Three-phase build (docs/ + .claude/ + app/) с воспроизводимой методологией subfolder + merge-graphs. Ultimate combined: 6305 узлов / 6753 рёбер / 1009 communities. Backend: GEMINI_API_KEY/GOOGLE_API_KEY OR Claude Code subagent dispatch (используется в Лидерре). НЕ читает ANTHROPIC_API_KEY / OPENAI_API_KEY / Ollama API. Commands: query / path / explain / update / build / merge-graphs / cluster-only / export."
triggers:
- {keyword: "knowledge graph", weight: 1.0}
- {keyword: "structural map", weight: 0.9}
- {keyword: "where is X used", weight: 0.85}
- {keyword: "cross-layer query", weight: 0.85}
- {keyword: "concept map", weight: 0.85}
- {keyword: "codebase graph", weight: 0.9}
- {keyword: "/graphify", weight: 1.0}
- {keyword: "graphify", weight: 1.0}
- {classification: "knowledge_graph_query", weight: 1.0}
boundaries:
- {adr: "ADR-017", role: "KG1 — ↔ context7 #60: внутренний codebase Лидерры (graphify) vs внешние SDK docs (context7)"}
- {adr: "ADR-017", role: "KG2 — ↔ Laravel Boost #10: static cross-layer graph (graphify) vs runtime queries app/ (Boost)"}
- {adr: "ADR-017", role: "KG3 — ↔ openapi-mcp-server #47: весь проект (graphify) vs introspection одного спека (openapi)"}
- {adr: "ADR-017", role: "KG4 — ↔ Sentry MCP #34: структурные отношения (graphify) vs runtime errors (Sentry)"}
- {adr: "ADR-017", role: "KG5 — ↔ adr-kit #36 + mermaid-skill #37: auto-discovery из исходников (graphify) vs manual authoring (ADR/mermaid)"}
- {role: "Артефакты graphify-out*/ обязательно gitignored — build-артефакты не должны попадать в diff/commit"}
- {role: "Auto-update post-commit hook ОТЛОЖЕН (Spike 27.05 раздуло граф 6305→41586 узлов). Manual /graphify --update — единственный безопасный режим до wire-in safety review"}
chain_membership: []
attributes:
tooling_section: "§4.59 #86"
skill_file: "~/.claude/skills/graphify/SKILL.md"
installation: "uv tool install graphifyy"
version: "0.8.20+"
spike_branch: "spike/graphify-2026-05-27"
- id: "#87"
name: "perplexity MCP"
slug: "perplexity-mcp"
category: "off-phase"
subcategory: "research-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер веб-разведки Perplexity: perplexity_search (ранжированный web-ответ), perplexity_ask (sonar-pro real-time с цитатами), perplexity_research (sonar-deep-research, многоисточниковое расследование), perplexity_reason (sonar-reasoning-pro). READ-ONLY, живой веб; назначение — ответ-с-источниками, не сырой список ссылок."
triggers:
- {keyword: "веб-разведка", weight: 1.0}
- {keyword: "актуальные практики", weight: 1.0}
- {keyword: "что говорят источники", weight: 1.0}
- {keyword: "ранжированный веб-ответ", weight: 1.0}
- {keyword: "perplexity", weight: 1.0}
- {keyword: "sonar", weight: 1.0}
- {keyword: "deep research", weight: 1.0}
- {classification: "research", weight: 1.0}
boundaries:
- {adr: "ADR-019", role: "RT1 ≠ context7 #60 (открытый веб/практики vs SDK-доки); RT4 — perplexity = ранжированный ответ vs exa #88 семантическое обнаружение"}
chain_membership: ["L17"]
attributes:
tooling_section: "§4.60 #87"
install: "npx -y @perplexity-ai/mcp-server (в .mcp.json; PERPLEXITY_API_KEY в env)"
- id: "#88"
name: "exa MCP"
slug: "exa-mcp"
category: "off-phase"
subcategory: "research-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер нейро/семантического веб-поиска Exa: web_search_exa (находит концептуально близкое, что keyword-поиск пропускает), web_fetch_exa (страница по URL). READ-ONLY, живой веб; назначение — обнаружение источников по смыслу, а не по точным словам."
triggers:
- {keyword: "семантический поиск", weight: 1.0}
- {keyword: "нейро-поиск", weight: 1.0}
- {keyword: "обнаружение источников по смыслу", weight: 1.0}
- {keyword: "концептуально близкое", weight: 1.0}
- {keyword: "exa", weight: 1.0}
- {classification: "research", weight: 1.0}
boundaries:
- {adr: "ADR-019", role: "RT4 — exa = семантическое обнаружение vs perplexity #87 ранжированный ответ vs firecrawl #89 глубокое чтение"}
chain_membership: ["L17"]
attributes:
tooling_section: "§4.61 #88"
install: "npx -y exa-mcp-server (в .mcp.json; EXA_API_KEY в env)"
- id: "#89"
name: "firecrawl MCP"
slug: "firecrawl-mcp"
category: "off-phase"
subcategory: "research-tooling"
status: "active"
dormancy_reason: null
capabilities: "MCP-сервер глубокого чтения и обхода веба Firecrawl: firecrawl_scrape / batch_scrape / map / search / crawl / extract + firecrawl_agent (автономный web-research) + firecrawl_agent_status. READ-ONLY (read-тяжёлый), живой веб; назначение — прочитать страницу целиком, обойти сайт, извлечь структурированное."
triggers:
- {keyword: "глубокое чтение страницы", weight: 1.0}
- {keyword: "обход сайта", weight: 1.0}
- {keyword: "scrape", weight: 1.0}
- {keyword: "crawl", weight: 1.0}
- {keyword: "извлечь структурированное со страницы", weight: 1.0}
- {keyword: "firecrawl", weight: 1.0}
- {classification: "research", weight: 1.0}
boundaries:
- {adr: "ADR-019", role: "RT4 — firecrawl = глубокое чтение/обход vs perplexity #87 ответ vs exa #88 обнаружение; RT3 ≠ openapi #47 (внешний веб vs наш REST-спек)"}
chain_membership: ["L17"]
attributes:
tooling_section: "§4.62 #89"
install: "npx -y firecrawl-mcp (в .mcp.json; FIRECRAWL_API_KEY в env)"
chains:
L1:
name: "feature discovery & implementation chain"
sequence:
- "#55"
- "superpowers:brainstorming"
- "superpowers:writing-plans"
- "superpowers:subagent-driven-development"
triggers:
- {classification: "feature"}
- {classification: "planning"}
L2:
name: "system orientation chain"
sequence:
- "#55"
- "audit-portal"
L3:
name: "as-is ↔ to-be process chain"
sequence:
- "#53"
- "#52"
L4:
name: "diagram rendering chain"
sequence:
- "adr-kit:adr"
- "#37"
- "operations:runbook"
- "#52"
L5:
name: "architecture triangle chain"
sequence:
- "adr-kit:adr"
- "#38"
- "#43"
L6:
name: "security layered chain"
sequence:
- "#40"
- "#25"
- "#39"
- "/security-review"
L7:
name: "integration development chain"
sequence:
- "#47"
- "api-docs"
- "#10"
L8:
name: "runtime debug chain"
sequence:
- "superpowers:systematic-debugging"
- "#34"
- "#35"
triggers:
- {classification: "bugfix"}
- {keyword: "runtime bug"}
L9:
name: "project management chain"
sequence:
- "#41"
- "product-management:write-spec"
- "#3"
L10:
name: "LLM feature chain"
sequence:
- "#48"
- "#49"
- "claude-api"
L11:
name: "Claude infra extension chain"
sequence:
- "#56"
- "#58"
- "plugin-dev:plugin-structure"
L12:
name: "CLAUDE.md capture chain"
sequence:
- "claude-md-management:claude-md-improver"
- "claude-md-management:revise-claude-md"
L13:
name: "finance chain"
sequence:
- "#62"
- "#18"
- "#10"
- "#34"
- "#35"
- "#63"
L14:
name: "backend-quality chain"
sequence:
- "#64"
- "#65"
- "#12"
- "#43"
L15:
name: "security go-live chain"
sequence:
- "#73"
- "#8"
- "#25"
- "#70"
- "#39"
- "#71"
- "#72"
- "#69"
- "#68"
L16:
name: "marketing chain"
sequence:
- "superpowers:brainstorming"
- "marketing-plugin:content-creation"
- "#77"
- "#78"
- "#79"
- "#80"
- "#81"
L17:
name: "research chain"
sequence:
- "superpowers:brainstorming"
- "#87"
- "#88"
- "#89"
triggers:
- {classification: "research"}