{
 "name": "agent-skills",
 "description": "Коллекция скиллов для AI-агентов (Sisyphus, opencode, и др.). Каждый скилл — автономная инструкция с манифестом skill.json для установки и использования.",
 "version": "1.6.0",
 "author": "best",
 "license": "MIT",
 "repository": "https://github.com/bestdeejay-design/agent-skills",
 "skills": [
  {
   "name": "api-doc-generator",
   "version": "1.0.0",
   "category": "repository",
   "description": "Генерация Markdown-документации REST API из OpenAPI-схемы (3.x, включая 3.1.0). Скрипт api_doc.py читает openapi.json (файл или stdin), извлекает endpoint'ы (method, path, summary, operationId, параметры query/path/header, requestBody, коды ответов) и рендерит Markdown-раздел на каждый эндпоинт. FastAPI: схема из app.openapi() или /openapi.json; Express: swagger-jsdoc (референс в SKILL.md). Триггеры: 'api doc', 'документация API', 'openapi', 'swagger в markdown', 'сгенерай api doc', 'документировать эндпоинты', 'api reference', 'описать API', 'rest api docs'.",
   "path": "skills/api-doc-generator",
   "triggers": [
    "api doc",
    "документация API",
    "openapi",
    "swagger в markdown",
    "сгенерай api doc",
    "документировать эндпоинты",
    "api reference",
    "описать API",
    "rest api docs"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "changelog-generator",
   "version": "1.0.0",
   "category": "repository",
   "description": "Генерация раздела CHANGELOG (Keep a Changelog) из git-истории по Conventional Commits. Скрипт changelog_gen.py читает git log в диапазоне tag..HEAD, парсит commit-сообщения, маппит типы (feat→Added, fix→Fixed, perf/refactor→Changed, breaking→отдельная секция) и рендерит Markdown с датами и ссылками на коммиты. Режимы: --top (Unreleased), --from-tag, включая скрытые типы (docs/ci/chore) через флаг. Триггеры: 'changelog', 'сгенерай чанжлог', 'обнови changelog', 'release notes', 'история изменений', 'keep a changelog', 'generate changelog', 'сборка changelog'.",
   "path": "skills/changelog-generator",
   "triggers": [
    "changelog",
    "сгенерай чанжлог",
    "обнови changelog",
    "release notes",
    "история изменений",
    "keep a changelog",
    "generate changelog",
    "сборка changelog"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "code-review",
   "version": "1.0.0",
   "category": "code",
   "description": "Структурированный code review: читает git diff или путь к репозиторию/файлу, применяет чек-лист категорий (correctness, security, performance, style, tests, edge cases) и выдаёт замечания вида [severity] файл:строка с предлагаемым исправлением. Скилл только анализирует и комментирует, правки не вносит. Триггеры: 'code review', 'ревью кода', 'review PR', 'проверь код', 'pull request review', 'code quality', 'замечания по коду', 'найти баги', 'review commit', 'проверь изменения', 'review diff', 'ревью пул-реквеста'.",
   "path": "skills/code-review",
   "triggers": [
    "code review",
    "ревью кода",
    "review PR",
    "проверь код",
    "pull request review",
    "code quality",
    "замечания по коду",
    "найти баги",
    "review commit",
    "проверь изменения",
    "review diff",
    "ревью пул-реквеста"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "commit-message-writer",
   "version": "1.0.0",
   "category": "code",
   "description": "Используй, когда нужно оформить staged-изменения в Conventional Commit. Генерация Conventional Commits-сообщений на основе git diff --staged: тип по изменённым файлам, scope по путям, краткое описание, опциональный body с переносами. Триггеры: 'commit message', 'write commit', 'git commit', 'conventional commit', 'сообщение коммита', 'написать коммит', 'commit', 'закоммитить'.",
   "path": "skills/commit-message-writer",
   "triggers": [
    "commit message",
    "write commit",
    "git commit",
    "conventional commit",
    "сообщение коммита",
    "написать коммит",
    "commit",
    "закоммитить"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "csv-pro",
   "version": "1.0.0",
   "category": "data",
   "description": "Профилирование CSV-файлов: типы колонок, статистика, аномалии. Скрипт csv_pro.py читает CSV (файл --input или stdin --stdin), определяет разделитель (по умолчанию ';', затем ','), для каждой колонки считает тип (int/float/str/date), min/max/mean, пропуски, уникальные значения и топ-3 частых. Ищет аномалии: нулевая дисперсия, >95% пустых, дубликаты строк, строки длиннее 1000 символов, выбросы (значение ≥ 5×IQR от медианы). Вывод: markdown-таблица (по умолчанию) или JSON. Триггеры: 'csv profile', 'профиль csv', 'анализ csv', 'csv анализ', 'аномалии csv', 'csv anomalies', 'профилирование csv', 'что в csv'.",
   "path": "skills/csv-pro",
   "triggers": [
    "csv profile",
    "профиль csv",
    "анализ csv",
    "csv анализ",
    "аномалии csv",
    "csv anomalies",
    "профилирование csv",
    "что в csv"
   ],
   "keywords": [
    "csv",
    "profile",
    "profiling",
    "data",
    "statistics",
    "anomalies",
    "analysis",
    "quality"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "data-analysis",
   "version": "1.0.0",
   "category": "data",
   "description": "Профилирование датасета (CSV или JSON-массив объектов): типы полей, статистика (count/unique/missing, min/max/mean/std), мода и топ-N значений, гистограмма 5 корзин для чисел, топ-3 парные корреляции Пирсона, аномалии и рекомендации. Скрипт data_analyze.py читает --input и выводит отчёт в markdown (по умолчанию) или JSON. Триггеры: 'data analysis', 'анализ данных', 'профиль датасета', 'статистика данных', 'dataset анализ', 'почитать данные', 'data profiling', 'разведочный анализ', 'eda'.",
   "path": "skills/data-analysis",
   "triggers": [
    "data analysis",
    "анализ данных",
    "профиль датасета",
    "статистика данных",
    "dataset анализ",
    "почитать данные",
    "data profiling",
    "разведочный анализ",
    "eda"
   ],
   "keywords": [
    "data",
    "analysis",
    "dataset",
    "statistics",
    "profiling",
    "anomalies",
    "correlation"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "diagram-maker",
   "version": "1.0.0",
   "category": "data",
   "description": "Генерация диаграмм из текстового описания: flowchart, sequence, architecture, ER-схемы в синтаксисе Mermaid. Вход — natural language описание, выход — готовый код Mermaid + рекомендация по рендерингу (mermaid.live / mermaid-cli / MCP). Триггеры: 'диаграмма', 'diagram', 'mermaid', 'flowchart', 'блок-схема', 'sequence diagram', 'архитектура', 'ER-схема', 'нарисуй схему', 'draw a diagram', 'схема', 'architecture diagram'.",
   "path": "skills/diagram-maker",
   "triggers": [
    "диаграмма",
    "diagram",
    "mermaid",
    "flowchart",
    "блок-схема",
    "sequence diagram",
    "архитектура",
    "ER-схема",
    "нарисуй схему",
    "draw a diagram",
    "схема",
    "architecture diagram"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "docs-system",
   "version": "1.0.0",
   "category": "repository",
   "description": "Гайд для AI-агента: как правильно составлять продуктовую и проектную документацию и её состав. Продуктовая ветка (VISION/PRD/ROADMAP/FEATURES) и проектная ветка (ARCHITECTURE/ADR/контракты/TEST_CASES/карта REFERENCE), порядок заполнения (фазы), шаблоны, чек-лист полноты, уровни L1/L2/L3 для больших систем. От идеи до полного набора документации. Триггеры: 'документация', 'набор документации', 'каталог документов', 'docs catalog', 'documentation structure', 'из идеи в документацию', 'полная документация', 'docs for new project', 'documentation plan', 'системная документация'.",
   "path": "skills/docs-system",
   "triggers": [
    "документация",
    "набор документации",
    "каталог документов",
    "docs catalog",
    "documentation structure",
    "из идеи в документацию",
    "полная документация",
    "docs for new project",
    "documentation plan",
    "системная документация"
   ],
   "updated": "2026-08-07"
  },
  {
   "name": "github-repo-hygiene",
   "version": "1.1.0",
   "category": "repository",
   "description": "Проверка и обновление описательной части GitHub-репозитория при мажорных изменениях: README (EN+RU), LICENSE, CODE_OF_CONDUCT, CONTRIBUTING, SECURITY, SUPPORT, issue/PR-шаблоны, social preview, релизы, description, topics, ссылки на GitHub Pages, community health. Триггеры: 'github hygiene', 'оформить репозиторий', 'обновить readme', 'github page', 'описание репозитория', 'теги для поиска', 'topics', 'contributing', 'license', 'security policy', 'полностью оформить гитхаб', 'репозиторий готов к публикации', 'repo polish', 'github repo docs', 'community health', 'issue template', 'pr template', 'social preview', 'релиз', 'release notes'.",
   "path": "skills/github-repo-hygiene",
   "triggers": [
    "github hygiene",
    "оформить репозиторий",
    "обновить readme",
    "github page",
    "описание репозитория",
    "теги для поиска",
    "topics",
    "contributing",
    "license",
    "security policy",
    "полностью оформить гитхаб",
    "репозиторий готов к публикации",
    "repo polish",
    "github repo docs",
    "community health",
    "issue template",
    "pr template",
    "social preview",
    "релиз",
    "release notes"
   ],
   "updated": "2026-08-07"
  },
  {
   "name": "mermaid-to-image",
   "version": "1.0.0",
   "category": "data",
   "description": "Рендер Mermaid-диаграмм (.mmd) в PNG/SVG. Скрипт mermaid_to_image.py читает .mmd (файл или stdin) и отдаёт изображение: приоритет локальному mmdc (mermaid-cli), fallback на публичный API mermaid.ink. Поддерживает выбор формата (svg/png), фоновый цвет, масштаб PNG, движок рендера (auto/mmdc/ink), вывод в файл или stdout. Триггеры: 'mermaid в картинку', 'отрендерить диаграмму', '.mmd в png', 'mermaid to image', 'render diagram', 'диаграмма в svg', 'схема в картинку'.",
   "path": "skills/mermaid-to-image",
   "triggers": [
    "mermaid в картинку",
    "отрендерить диаграмму",
    ".mmd в png",
    "mermaid в svg",
    "render diagram",
    "диаграмма в svg",
    "схема в картинку",
    "mermaid to image"
   ],
   "keywords": [
    "mermaid",
    "diagram",
    "png",
    "svg",
    "render",
    "visualization",
    "flowchart",
    "sequence-diagram",
    "mmd"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "pdf-report-builder",
   "version": "1.0.0",
   "category": "media",
   "description": "Сборка PDF-отчётов из Markdown без обязательных зависимостей. Скрипт pdf_report_builder.py конвертирует markdown (файл или stdin) в HTML (pandoc или встроенный конвертер) и далее в PDF первым доступным движком: Chromium/Chrome headless --print-to-pdf, weasyprint или pandoc с PDF-движком (pdflatex/tectonic/typst). Поддержка заголовков, списков, таблиц, кода, цитат, ссылок, кастомный заголовок документа. Триггеры: 'отчёт в pdf', 'markdown в pdf', 'собери отчёт', 'pdf report', 'markdown to pdf', 'отчёт для клиента', 'document to pdf'.",
   "path": "skills/pdf-report-builder",
   "triggers": [
    "отчёт в pdf",
    "markdown в pdf",
    "собери отчёт",
    "сделай отчёт",
    "pdf report",
    "markdown to pdf",
    "отчёт для клиента",
    "document to pdf"
   ],
   "keywords": [
    "pdf",
    "report",
    "markdown",
    "export",
    "document",
    "weasyprint",
    "pandoc",
    "chromium",
    "print"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "plan-skill",
   "version": "1.0.0",
   "category": "code",
   "description": "Планирование реализации по superpowers v2: превращает цель в декомпозированный план (HARD-GATE, bite-sized шаги, no placeholders, интерфейсы Produces/Consumes). Пайплайн brainstorming → writing-plans → executing-plans → verification-before-completion с TDD-шагами Expected FAIL→PASS. Скрипт plan_validator.py проверяет план на готовность к исполнению. Скилл только планирует, исполнение — отдельно. Триггеры: 'спланируй', 'составь план', 'plan', 'как реализовать', 'разбей на шаги', 'roadmap', 'план реализации', 'planning', 'design document', 'technical plan', 'write a plan', 'спланируй разработку'.",
   "path": "skills/plan-skill",
   "triggers": [
    "спланируй",
    "составь план",
    "plan",
    "как реализовать",
    "разбей на шаги",
    "roadmap",
    "план реализации",
    "planning",
    "design document",
    "technical plan",
    "write a plan",
    "спланируй разработку"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "presentation-maker",
   "version": "1.1.0",
   "category": "media",
   "description": "Создавай презентации из темы или промпта: структура-аутлайн, слайды 16:9 и готовый .pptx. Используй, когда нужна презентация, доклад, слайды для обучения или питча — как замену серчеру слайдов. Триггеры: 'сделай презентацию', 'presentation', 'слайды', 'pptx', 'сделай доклад', 'презентация для', 'сделай слайды по теме', 'generate slides', 'make a deck'.",
   "path": "skills/presentation-maker",
   "triggers": [
    "сделай презентацию",
    "presentation",
    "слайды",
    "pptx",
    "сделай доклад",
    "презентация для",
    "сделай слайды по теме",
    "generate slides",
    "make a deck"
   ],
   "updated": "2026-08-07"
  },
  {
   "name": "reddit-karma",
   "version": "1.0.0",
   "category": "social",
   "description": "Набор кармы на Reddit для вашего аккаунта — поиск тем, подготовка ответов, распознавание тона чужих комментариев, шаблоны благодарностей и регулярный забег по ресурсу. Персональный скилл: требует настройки под свой аккаунт (никнейм, сабы, журнал активности). Триггеры: 'reddit', 'карма', 'karma', 'r/LocalLLaMA', 'поднять карму', 'ответить на комментарии', 'забег по reddit', 'оставить след', 'благодарность за ответ'.",
   "path": "skills/reddit-karma",
   "triggers": [
    "reddit",
    "карма",
    "karma",
    "r/LocalLLaMA",
    "поднять карму",
    "ответить на комментарии",
    "забег по reddit",
    "оставить след",
    "благодарность за ответ"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "skill-suggester",
   "version": "1.0.0",
   "category": "code",
   "description": "Подбор скиллов из библиотеки по задаче пользователя. Триггеры: 'какой скилл использовать', 'что выбрать', 'рекомендовать скилл', 'suggest skill', 'подобрать инструмент', 'какой команды', 'подбор скилла', 'рекомендация скилла', 'какой навык применить'. Читает index.json, скорит триггеры и описания, возвращает топ-5 с релевантностью и комбо до 3 скиллов. Триггеры: 'какой скилл использовать', 'какой скилл', 'подбор скилла', 'подобрать скилл', 'skill suggestion', 'suggest skill', 'рекомендовать скилл', 'какой навык', 'подобрать инструмент', 'какой команды', 'какой skill', 'какой skill использовать', 'recommend a skill', 'which skill', 'подобрать навык'.",
   "path": "skills/skill-suggester",
   "triggers": [
    "какой скилл использовать",
    "какой скилл",
    "подбор скилла",
    "подобрать скилл",
    "skill suggestion",
    "suggest skill",
    "рекомендовать скилл",
    "какой навык",
    "подобрать инструмент",
    "какой команды",
    "какой skill",
    "какой skill использовать",
    "recommend a skill",
    "which skill",
    "подобрать навык"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "sql-helper",
   "version": "1.0.0",
   "category": "data",
   "description": "Генерация SQL по текстовому вопросу и DDL-схеме. Скрипт sql_helper.py читает DDL-файл, строит in-memory схему в sqlite3, распознаёт слова вопроса по таблицам/колонкам и собирает SQL по шаблонам интентов (select, join, where, group, order, count, limit). Каждый кандидат проверяется через EXPLAIN, при --explain выводится читаемый план запроса. Триггеры: 'sql helper', 'sql генерация', 'сгенерируй sql', 'explain запроса', 'sql запрос', 'напиши sql', 'formatted sql', 'sql formatting'.",
   "path": "skills/sql-helper",
   "triggers": [
    "sql helper",
    "sql генерация",
    "сгенерируй sql",
    "explain запроса",
    "sql запрос",
    "напиши sql",
    "formatted sql",
    "sql formatting"
   ],
   "keywords": [
    "sql",
    "query",
    "generation",
    "ddl",
    "sqlite",
    "explain",
    "database",
    "select",
    "join"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "systematic-debugger",
   "version": "1.0.0",
   "category": "code",
   "description": "Систематическая отладка по Iron Law: 4 фазы (воспроизведение → гипотезы → изоляция причины → фикс + регресс-тест), Red Flags (quick-fix, спекуляции, шотган-дебаг), Rationalization Table для отсева гипотез. Скрипт debug_log.py оформляет отчёт по фазам (среда, команда, ожидание, факт, гипотезы 1..3, регресс-план). Скилл не автофиксит: фиксирует причину, предлагает минимальный фикс и тест-регрессию. Триггеры: 'debug', 'отладить', 'почему не работает', 'баг', 'исправить ошибку', 'разобраться почему', 'дебаг', 'debugging', 'fix the bug', 'ошибка в коде', 'не работает как ожидалось'.",
   "path": "skills/systematic-debugger",
   "triggers": [
    "debug",
    "отладить",
    "почему не работает",
    "баг",
    "исправить ошибку",
    "разобраться почему",
    "дебаг",
    "debugging",
    "fix the bug",
    "ошибка в коде",
    "не работает как ожидалось"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "test-generator",
   "version": "1.0.0",
   "category": "code",
   "description": "Генерация pytest-скелетов из Python-модуля по AST с ghostwriter-эвристикой значений аргументов (bool→True/False, int→0/-1/1, str→sample/пустая, list/dict→пустые, Optional→None). Скрипт test_gen.py парсит функции/async-функции через ast, пропускает приватные (_), генерирует @pytest.mark.parametrize с assert-заглушками. Включает референс по генерации тестов на TypeScript (ts-morph, *.test.ts) и Go (table-driven). Триггеры: 'generate tests', 'сгенерируй тесты', 'test skeleton', 'pytest скелет', 'покрытие тестами', 'unit tests для функций', 'тесты на функции', 'создать тесты'.",
   "path": "skills/test-generator",
   "triggers": [
    "generate tests",
    "сгенерируй тесты",
    "test skeleton",
    "pytest скелет",
    "покрытие тестами",
    "unit tests для функций",
    "тесты на функции",
    "создать тесты"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "test-graphics",
   "version": "1.0.0",
   "category": "media",
   "description": "Генерируй тестовые картинки, фото-заглушки, иконки и аватары для моков, staging и e2e-тестов. Используй, когда нужны placeholder-изображения, даже если пользователь не называет их «тестовыми». Триггеры: 'test images', 'placeholder', 'тестовые картинки', 'иконки для теста', 'заглушки', 'mock data images', 'сгенерировать фото', 'test data icons', 'заполнить картинками', 'тестовые данные изображения'.",
   "path": "skills/test-graphics",
   "triggers": [
    "test images",
    "placeholder",
    "тестовые картинки",
    "иконки для теста",
    "заглушки",
    "mock data images",
    "сгенерировать фото",
    "test data icons",
    "заполнить картинками",
    "тестовые данные изображения"
   ],
   "updated": "2026-08-07"
  },
  {
   "name": "video-script-writer",
   "version": "1.0.0",
   "category": "media",
   "description": "Создание структурированного сценария видео из темы: Hook (захват внимания в первые секунды), Body (сцены с тайм-слотами: проблема, основы, разбор, ошибки, совет), CTA (призыв к действию). Скрипт video_script_writer.py генерирует markdown-сценарий с таймкодами, хронометражем (секунды), языком (ru/en), кастомным CTA, выбором полного сценария или outline. Триггеры: 'сценарий видео', 'video script', 'напиши сценарий', 'план видео', 'структура ролика', 'video outline', 'сценарий для youtube', 'план ролика'.",
   "path": "skills/video-script-writer",
   "triggers": [
    "сценарий видео",
    "video script",
    "напиши сценарий",
    "план видео",
    "структура ролика",
    "video outline",
    "сценарий для youtube",
    "план ролика"
   ],
   "keywords": [
    "video",
    "script",
    "outline",
    "youtube",
    "hook",
    "cta",
    "screen-record"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "web-scraper",
   "version": "1.0.0",
   "category": "data",
   "description": "Вежливый скраппинг HTML-страниц в Markdown/JSON. Скрипт scrape.py читает страницу по URL, применяет простой CSS-селектор (tag, tag#id, tag.class) для выбора строк/секций, извлекает текст, ссылки и таблицы и отдаёт результат в Markdown или JSON. Легальные guardrails встроены в код: проверка robots.txt, честный User-Agent, задержка между запросами (по умолчанию 1.0 с), лимит размера страницы 10 МБ. Триггеры: 'web scraping', 'скраппинг', 'скачать данные с сайта', 'парсинг сайта', 'парсер html', 'извлечь данные', 'scrape', 'scraping'.",
   "path": "skills/web-scraper",
   "triggers": [
    "web scraping",
    "скраппинг",
    "скачать данные с сайта",
    "парсинг сайта",
    "парсер html",
    "извлечь данные",
    "scrape",
    "scraping"
   ],
   "keywords": [
    "web-scraping",
    "scraper",
    "html",
    "parser",
    "robots.txt",
    "data-extraction",
    "markdown",
    "json"
   ],
   "updated": "2026-08-08"
  },
  {
   "name": "seo-toolkit",
   "version": "1.0.0",
   "category": "media",
   "description": "13 SEO-команд для AI-агентов: технический аудит, Core Web Vitals, crawlability, schema.org, ключевые слова, meta-теги, контент-анализ, изображения, отчёты, сравнение с конкурентами и автономные исправления. Работает в URL-режиме (fetch внешних сайтов) и файловом режиме (анализ локального проекта). Скрипт seo_toolkit.py: аудит meta/заголовков/alt, подсчёт плотности ключей, валидация JSON-LD. Триггеры: 'seo audit', 'core web vitals', 'schema org', 'json-ld', 'keywords analysis', 'seo report', 'сео аудит', 'meta tags', 'crawlability'.",
   "path": "skills/seo-toolkit",
   "triggers": [
    "seo audit",
    "seo report",
    "core web vitals",
    "schema org",
    "json-ld",
    "keywords analysis",
    "meta tags",
    "content audit",
    "sitemap",
    "robots txt",
    "crawlability",
    "competitor seo",
    "seo fix"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "secret-scanner",
   "version": "1.0.0",
   "category": "code",
   "description": "Сканирование кода и git-репозиториев на утечки секретов и токенов (AWS, GitHub, OpenAI, Anthropic, Stripe, Google, Slack, приватные ключи, JWT) по таблице паттернов gitleaks v8.30.1 + энтропийный фильтр Шеннона + allowlist шума. Чистый Python 3 stdlib, офлайн, отчёты JSON/Markdown/text, редактирование части, CI exit-code. Триггеры: 'secret scan', 'проверь секреты', 'leaked token', 'утечка ключей', 'scan for keys', 'hardcoded credentials'.",
   "path": "skills/secret-scanner",
   "triggers": [
    "secret scan",
    "проверь секреты",
    "leaked tokens",
    "leaked keys",
    "scan for secrets",
    "секреты в коде",
    "проверить на утечки",
    "credential leak check",
    "tokens in code",
    "hardcoded credentials"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "security-review",
   "version": "1.0.0",
   "category": "code",
   "description": "Оркестрация security-ревью зависимостей и кода: инвентаризация lockfile'ов (npm/pnpm/yarn, pip/poetry, cargo, go, gem, maven, gradle, composer), классификатор exit-кодов 13 security-инструментов (semgrep, bandit, gitleaks, osv-scanner, pip-audit, trufflehog, checkov, trivy, grype, npm audit, cargo audit, dependency-check), нормализация JSON-отчётов в единую схему, отчёты. Чистый Python 3 stdlib, офлайн. Триггеры: 'security review', 'audit dependencies', 'lockfile audit', 'проверь зависимости', 'semgrep', 'bandit', 'osv-scanner', 'уязвимости'.",
   "path": "skills/security-review",
   "triggers": [
    "security review",
    "audit dependencies",
    "lockfile audit",
    "проверь зависимости",
    "semgrep",
    "bandit",
    "osv-scanner",
    "dependency-check",
    "scan for vulnerabilities",
    "уязвимости в зависимостях",
    "grype",
    "vulnerability report"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "version-bumper",
   "version": "1.0.0",
   "category": "code",
   "description": "Детерминированное определение следующей семвер-версии по git-истории (Conventional Commits): читает теги git (или стартует с 0.0.0), считает feat/fix/breaking в диапазоне, предлагает bump (major/minor/patch) и release-тег. Чистый Python 3 stdlib, офлайн, read-only. Триггеры: 'version bump', 'next version', 'какая следующая версия', 'release tag', 'semver bump', 'определи версию'.",
   "path": "skills/version-bumper",
   "triggers": [
    "version bump",
    "next version",
    "bump version",
    "semver",
    "release tag",
    "какая следующая версия",
    "определи версию",
    "версию поднять",
    "вычислить версию",
    "next release version"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "commit-lint",
   "version": "1.0.0",
   "category": "code",
   "description": "Валидация git-коммитов по Conventional Commits v1.0.0: читает git log (или stdin), парсит type/scope/subject, сообщает нарушения (missing/invalid type, регистр, длина subject/header/body, точка в конце). Отчёт text/JSON, exit 0/1/2. Чистый Python 3 stdlib, офлайн, read-only. Триггеры: 'commit lint', 'проверка коммитов', 'conventional commit check', 'валидация коммитов', 'commit message check'.",
   "path": "skills/commit-lint",
   "triggers": [
    "commit lint",
    "lint commits",
    "conventional commits",
    "check commit messages",
    "validate commits",
    "проверка коммитов",
    "валидация коммитов",
    "проверь коммиты",
    "commit style check",
    "commit-lint"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "coverage-analyzer",
   "version": "1.0.0",
   "category": "code",
   "description": "Анализ покрытия кода тестами: читает coverage.py XML/JSON отчёты (python -m coverage xml/json), считает statement/line/branch coverage, строит отчёт по файлам с проблемными местами (ниже порога), итоговый процент и рекомендации. Чистый Python 3 stdlib, офлайн. Триггеры: 'coverage analysis', 'покрытие кода', 'coverage report', 'анализ покрытия', 'test coverage', 'процент покрытия'.",
   "path": "skills/coverage-analyzer",
   "triggers": [
    "coverage",
    "coverage analysis",
    "coverage report",
    "test coverage",
    "покрытие кода",
    "анализ покрытия",
    "процент покрытия",
    "код не покрыт",
    "branch coverage",
    "coverage threshold"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "api-contract-testing",
   "version": "1.0.0",
   "category": "code",
   "description": "Проверка контракта API против OpenAPI 3.x-спецификации (JSON/YAML, встроенный YAML-парсер, без PyYAML): перечисляет операции (paths+webhooks), проверяет внутреннюю консистентность ($ref, дубликаты), сверяет manifest эндпоинтов со спекой офлайн и в live-режиме шлёт HTTP-запросы и сравнивает статусы. JSON-отчёт, exit 0/1/2. Чистый Python 3 stdlib. Триггеры: 'api contract testing', 'проверь контракт API', 'validate openapi spec', 'spec vs manifest', 'тест контракта'.",
   "path": "skills/api-contract-testing",
   "triggers": [
    "api contract testing",
    "contract test",
    "validate openapi spec",
    "spec vs manifest",
    "endpoint coverage",
    "проверь контракт API",
    "тест контракта",
    "валидация openapi",
    "сверь спецификацию с API",
    "check the API against the spec"
   ],
   "updated": "2026-08-09"
  },
  {
   "name": "frontend-perfection",
   "version": "1.0.0",
   "category": "code",
   "description": "Аудит и доводка фронтенда до проверяемого идеала: реальный Chrome через chrome-launcher + Lighthouse >=13 Node API (mobile+desktop, без Playwright-интерналов, с .default-фолбэком и авто-резолюцией зависимостей; exit 0/1/2, компактный JSON-отчёт с audit-ids), плюс офлайн Python-stdlib аудит статики (SEO-мета-слой, контрасты WCAG по вычисленной яркости, порядок заголовков, дизайн-токены — ноль raw-hex вне токенов, scroll-padding под fixed-хедер, брейкпоинты) и генерация crop-safe OG-изображений (1200x630 с центральной безопасной зоной ~640px, смена URL вместо перезаписи для сброса кеша соцсетей, принудительный reflow перед скриншотом). Каждый фикс привязывается к audit-id. Триггеры: 'frontend audit', 'perfect the layout', 'lighthouse check', 'make it 100/100/100/100', 'проверь вёрстку', 'довести фронтенд до идеала', 'og-image для соцсетей', 'SEO-мета слой', 'контраст цветов', 'дизайн-токены'.",
   "path": "skills/frontend-perfection",
   "triggers": [
    "frontend audit",
    "perfect the layout",
    "lighthouse check",
    "make it 100/100/100/100",
    "audit the page",
    "og image",
    "social share meta",
    "contrast check",
    "design tokens",
    "проверь вёрстку",
    "довести фронтенд до идеала",
    "og-image для соцсетей",
    "SEO-мета слой",
    "контраст цветов",
    "дизайн-токены",
    "оптимизация лендинга"
   ],
   "updated": "2026-08-09"
  }
 ],
 "categories": {
  "repository": "Работа с репозиториями (GitHub, CI, docs)",
  "media": "Генерация контента (презентации, графика, документы)",
  "social": "Социальные платформы (Reddit, Twitter, LinkedIn)",
  "code": "Работа с кодом (генерация, рефакторинг, анализ)",
  "data": "Обработка и анализ данных"
 },
 "installation": {
  "opencode": "Скопируйте нужную папку скилла в ~/.config/opencode/skills/ или укажите путь при загрузке через skill tool.",
  "manual": "Каждый скилл — папка с SKILL.md (инструкция) и skill.json (манифест). Загружайте в агент по необходимости."
 },
 "updated": "2026-08-09"
}
