[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MX36PEA0NSHCCRF5GGVVTZ":3,"skill-same:01M6MX36PEA0NSHCCRF5GGVVTZ":49},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":23,"linkOnly":24,"markdownContent":25,"markdownBody":26,"frontMatter":27,"refName":28,"commitSha":29,"skillDirectory":30,"forksCount":31,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":34,"install":35,"resources":48},"01M6MX36PEA0NSHCCRF5GGVVTZ","youtrack",null,"YouTrack — задачи через REST API и pcurl. Используй для поиска issues, создания, обновления описаний, смены assignee\u002Fstage\u002Fприоритета, логирования времени и работы с комментариями.","vmkteam\u002Fclaude-plugins","vmkteam","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F55537877?v=4","01M6MWYAFDCD63N1M8MBJA6T0S","01M6MWYAKHK0QCPR0Y7AW5SH0R",7,"MIT","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fyoutrack\u002FSKILL.md",[],[5,18,19,20,21,22],"issues","REST","api","stage","rest api","2026-11-10 10:12:30",false,"---\nname: youtrack\ndescription: \"YouTrack — задачи через REST API и pcurl. Используй для поиска issues, создания, обновления описаний, смены assignee\u002Fstage\u002Fприоритета, логирования времени и работы с комментариями.\"\n---\n\n# YouTrack — работа с задачами\n\nРабота с YouTrack через REST API. Для доступа используй `pcurl @{profile}`, где `{profile}` — pcurl-профиль YouTrack-инстанса проекта (определяется при онбординге или из CLAUDE.md проекта).\n\n## Подключение\n\n```\nProfile: @{yt_profile}\nBase URL: https:\u002F\u002F{yt_host}\u002Fapi\n```\n\nПроверка доступа:\n```bash\npcurl @{yt_profile} 'https:\u002F\u002F{yt_host}\u002Fapi\u002Fadmin\u002Fprojects?fields=id,shortName,name&$top=50' -s\n```\n\n## Команды pcurl\n\n### Поиск issues\n\n```bash\n# Все открытые issues проекта\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{PROJECT}+state:Open&fields=idReadable,summary,created,updated,resolved,reporter(login),assignee(login)&$top=20&$orderBy=-created' -s\n\n# По тексту\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{PROJECT}+{search_text}&fields=idReadable,summary,created,updated,resolved&$top=20&$orderBy=-created' -s\n\n# По нескольким проектам\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{P1},{P2}+state:Open&fields=idReadable,summary,created,updated&$top=20&$orderBy=-created' -s\n\n# Assigned to me\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=for:me+state:Open&fields=idReadable,summary,created,updated&$top=20' -s\n```\n\n### Детали issue\n\n```bash\n# Полная информация\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}?fields=idReadable,summary,description,created,updated,resolved,reporter(login,name),assignee(login,name),tags(name),comments(author(login),text,created)' -s\n\n# Комментарии\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fcomments?fields=author(login,name),text,created&$top=50' -s\n```\n\n### Создание issue\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"project\":{\"id\":\"{project_id}\"},\"summary\":\"{title}\",\"description\":\"{description}\"}'\n```\n\n> Для создания нужен project.id (не shortName):\n> `pcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fadmin\u002Fprojects?fields=id,shortName' -s`\n\n### Добавить комментарий\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fcomments' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d \"$(jq -n --arg t \"$TEXT\" '{text: $t}')\"\n```\n\n> Многострочный текст с кавычками и кодом (описания, комментарии) вставляй в JSON через `jq -n --arg`, а не подстановкой в строку — иначе JSON ломается. Для однострочных значений достаточно строки как в примерах ниже.\n\n### Обновить issue\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"summary\":\"{new_title}\",\"description\":\"{new_description}\"}'\n```\n\n## Query syntax\n\n> Поле статуса может называться по-разному: `state`, `Stage`, `Status`. Реальное имя и значения определяются при `\u002Fonboard` и хранятся в `project-index.md` (state_field, state_open, state_done).\n\n| Фильтр | Пример |\n|---------|--------|\n| Проект | `project:WEB`, `project:WEB,MSH` |\n| Статус | `state:Open`, `state:Resolved` (или `Stage:Backlog` — зависит от проекта) |\n| Assigned | `for:me`, `for:{login}` |\n| Текст | просто слова в query |\n| Дата | `created:Today`, `created:2026-04-01..Today` |\n| Тег | `tag:{tag_name}` |\n| Приоритет | `priority:Critical`, `priority:Normal` |\n| Сортировка | `sort by:created desc` |\n\n## Аттачи\n\n```bash\n# Список аттачей issue\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fattachments?fields=id,name,url,mimeType,size,created,author(login)' -s\n\n# Скачать аттач (url из поля выше)\npcurl @{profile} 'https:\u002F\u002F{host}{url}' -s -o docs\u002Fllm\u002Ftasks\u002F{TASK_ID}\u002F{filename}\n```\n\nПоддерживаемые типы для анализа:\n- **Изображения** (image\u002Fpng, image\u002Fjpeg, image\u002Fgif, image\u002Fwebp) — скриншоты багов, макеты UI\n- **PDF** (application\u002Fpdf) — ТЗ, спецификации\n- Остальные форматы — упомянуть в research.md без скачивания\n\n## Прямые ссылки\n\n```\nhttps:\u002F\u002F{host}\u002Fissue\u002F{idReadable}\nhttps:\u002F\u002F{host}\u002Fissues?q=project:{shortName}\n```\n","# YouTrack — работа с задачами\n\nРабота с YouTrack через REST API. Для доступа используй `pcurl @{profile}`, где `{profile}` — pcurl-профиль YouTrack-инстанса проекта (определяется при онбординге или из CLAUDE.md проекта).\n\n## Подключение\n\n```\nProfile: @{yt_profile}\nBase URL: https:\u002F\u002F{yt_host}\u002Fapi\n```\n\nПроверка доступа:\n```bash\npcurl @{yt_profile} 'https:\u002F\u002F{yt_host}\u002Fapi\u002Fadmin\u002Fprojects?fields=id,shortName,name&$top=50' -s\n```\n\n## Команды pcurl\n\n### Поиск issues\n\n```bash\n# Все открытые issues проекта\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{PROJECT}+state:Open&fields=idReadable,summary,created,updated,resolved,reporter(login),assignee(login)&$top=20&$orderBy=-created' -s\n\n# По тексту\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{PROJECT}+{search_text}&fields=idReadable,summary,created,updated,resolved&$top=20&$orderBy=-created' -s\n\n# По нескольким проектам\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=project:{P1},{P2}+state:Open&fields=idReadable,summary,created,updated&$top=20&$orderBy=-created' -s\n\n# Assigned to me\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues?query=for:me+state:Open&fields=idReadable,summary,created,updated&$top=20' -s\n```\n\n### Детали issue\n\n```bash\n# Полная информация\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}?fields=idReadable,summary,description,created,updated,resolved,reporter(login,name),assignee(login,name),tags(name),comments(author(login),text,created)' -s\n\n# Комментарии\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fcomments?fields=author(login,name),text,created&$top=50' -s\n```\n\n### Создание issue\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"project\":{\"id\":\"{project_id}\"},\"summary\":\"{title}\",\"description\":\"{description}\"}'\n```\n\n> Для создания нужен project.id (не shortName):\n> `pcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fadmin\u002Fprojects?fields=id,shortName' -s`\n\n### Добавить комментарий\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fcomments' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d \"$(jq -n --arg t \"$TEXT\" '{text: $t}')\"\n```\n\n> Многострочный текст с кавычками и кодом (описания, комментарии) вставляй в JSON через `jq -n --arg`, а не подстановкой в строку — иначе JSON ломается. Для однострочных значений достаточно строки как в примерах ниже.\n\n### Обновить issue\n\n```bash\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}' -s -X POST \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"summary\":\"{new_title}\",\"description\":\"{new_description}\"}'\n```\n\n## Query syntax\n\n> Поле статуса может называться по-разному: `state`, `Stage`, `Status`. Реальное имя и значения определяются при `\u002Fonboard` и хранятся в `project-index.md` (state_field, state_open, state_done).\n\n| Фильтр | Пример |\n|---------|--------|\n| Проект | `project:WEB`, `project:WEB,MSH` |\n| Статус | `state:Open`, `state:Resolved` (или `Stage:Backlog` — зависит от проекта) |\n| Assigned | `for:me`, `for:{login}` |\n| Текст | просто слова в query |\n| Дата | `created:Today`, `created:2026-04-01..Today` |\n| Тег | `tag:{tag_name}` |\n| Приоритет | `priority:Critical`, `priority:Normal` |\n| Сортировка | `sort by:created desc` |\n\n## Аттачи\n\n```bash\n# Список аттачей issue\npcurl @{profile} 'https:\u002F\u002F{host}\u002Fapi\u002Fissues\u002F{idReadable}\u002Fattachments?fields=id,name,url,mimeType,size,created,author(login)' -s\n\n# Скачать аттач (url из поля выше)\npcurl @{profile} 'https:\u002F\u002F{host}{url}' -s -o docs\u002Fllm\u002Ftasks\u002F{TASK_ID}\u002F{filename}\n```\n\nПоддерживаемые типы для анализа:\n- **Изображения** (image\u002Fpng, image\u002Fjpeg, image\u002Fgif, image\u002Fwebp) — скриншоты багов, макеты UI\n- **PDF** (application\u002Fpdf) — ТЗ, спецификации\n- Остальные форматы — упомянуть в research.md без скачивания\n\n## Прямые ссылки\n\n```\nhttps:\u002F\u002F{host}\u002Fissue\u002F{idReadable}\nhttps:\u002F\u002F{host}\u002Fissues?q=project:{shortName}\n```\n",{"name":5,"description":7},"master","8f3147ce24a1a470d9aaa02aa775d7797d621d95","plugins\u002Fdeveloper\u002Fskills\u002Fyoutrack",1,"https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins","https:\u002F\u002Fgithub.com\u002Fvmkteam","2026-11-05 00:26:25",{"source":8,"skillName":5,"commands":36,"prompt":46,"zipAvailable":47},[37,40,43],{"tool":38,"command":39},"npx","npx skills add vmkteam\u002Fclaude-plugins --skill youtrack",{"tool":41,"command":42},"bunx","bunx skills add vmkteam\u002Fclaude-plugins --skill youtrack",{"tool":44,"command":45},"pnpm","pnpm dlx skills add vmkteam\u002Fclaude-plugins --skill youtrack","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fyoutrack\u002FSKILL.md",true,[],[50,61,77,94,106,126],{"skillNo":51,"name":52,"nameZh":6,"description":53,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":54,"categories":55,"keywords":56,"publishedAt":23},"01M6MX3A8MZJBTMMK6WMY35FYH","zenrpc","Zenrpc — справочник по JSON-RPC 2.0 серверу для Go. Используй при создании и редактировании RPC-сервисов.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fzenrpc\u002FSKILL.md",[],[52,57,58,59,60],"go","rpc","json","json-rpc",{"skillNo":62,"name":63,"nameZh":6,"description":64,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":65,"categories":66,"keywords":67,"publishedAt":23},"01M6MX322TD9HQPCYSNTFB4HBA","topsrv","topsrv — метрики, алерты, CVE и HTTP-логи серверов проекта через публичный JSON-RPC API app.topsrv.io. Используй, когда нужна загрузка CPU, памяти или диска хоста, метрики PostgreSQL\u002Fnginx\u002Fangie агента topsrv (`topsrv_*`), какие алерты горят, уязвимые пакеты на серверах или кто (боты, сети, IP) нагружает сайт.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Ftopsrv\u002FSKILL.md",[],[63,59,68,69,58,70,71,20,72,73,74,75,76,60],"http","postgresql","cve","nginx","Bash","ip","app","io","CPU",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":88,"publishedAt":23},"01M6MX2XFXCHNRPPW6WYZ15BXN","testing","Testing — используй всегда, когда пишешь или правишь Go-тесты (*_test.go), в том числе по сценариям Given\u002FWhen\u002FThen из spec: фреймворк как в соседних файлах, префикс TestDB, фабрики pkg\u002Fdb\u002Ftest, реальная БД без моков. Также при настройке TestMain\u002Ftest-short и когда тесты падают в gate, но проходят локально.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Ftesting\u002FSKILL.md",[83],{"categoryNo":84,"categoryName":85,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[79,57,89,90,91,92,93],"test","short","gate","db","spec",{"skillNo":95,"name":96,"nameZh":6,"description":97,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":100,"publishedAt":23},"01M6MX2P8RFYPV4EXRMVW6KAN7","solve","Solve — полный цикл решения задачи из YouTrack: preflight → анализ → план → реализация → ревью → коммит. Используй при любой YouTrack-задаче (`\u002Fsolve PLF-819`); флаг `--fast` сокращает HITL для тривиальных багфиксов.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fsolve\u002FSKILL.md",[],[96,101,102,103,104,105,5],"fast","preflight","task","hitl","id",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":23},"01M6MX2H6TF2VW75PCPGWR2SKZ","skills-check","Skills Check — smoke-тесты интеграций из project-index.md. Используй для проверки что pcurl-профили и URL всех data-source скиллов ещё живы.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fskills-check\u002FSKILL.md",[],[113,114,115,116,117,72,118,119,120,121,122,123,124,125],"skills check","check","true","index","data","smoke","probe","project","false","URL","data-source","source","fork",{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":23},"01M6MX2E5FRMD4NGJGS6CWCP1H","sentry","Sentry — мониторинг ошибок (issues, events, releases) через REST API. Используй когда нужно найти ошибку по ключевым словам, разобрать stack trace, проверить что релиз поднялся или сопоставить ошибку с коммитом.","https:\u002F\u002Fgithub.com\u002Fvmkteam\u002Fclaude-plugins\u002Fblob\u002Fmaster\u002Fplugins\u002Fdeveloper\u002Fskills\u002Fsentry\u002FSKILL.md",[],[128,19,18,22,133,134,135,136,72,20],"events","trace","releases","stack"]