Это репозиторий не для написания кода, а продуктовый/проджект-воркспейс: создание задач,
груминг, исследование фич, понимание поведения системы. Backend и frontend лежат рядом
только как read-only справочник. Вся работа крутится вокруг трёх вещей —
митингов, скиллов-автоматизаций и YouTrack.
PRM — backend-API для управления партнёрскими отношениями, юр. лицами,
финансами и комиссиями рекламодателей в экосистеме Admitad. Но этот воркспейс заточен под
PM-процессы, а не под разработку. Поэтому всё, что вы здесь видите,
обслуживает один поток: «разговор → задача в трекере → понятная разработчику постановка».
01
Meeting capture
Сырые встречи и демо превращаются в навигируемые notes.
02
Backlog shaping
Скиллы готовят постановки, челленджат риски и уточняют scope.
03
YouTrack sync
Решения и статусы возвращаются в PRM-проект трекера.
04
QA handover
После реализации формируется компактный блок проверки для QA.
Зачем нужен
Готовить и грумить задачи, исследовать фичи, фиксировать решения встреч и держать актуальный бэклог — без правки кода.
Где «истина»
YouTrack PRM — единственный источник правды по задачам. Локальные .md — это срезы и черновики вокруг него.
Принцип постановок
Описываем ЧТО должен делать продукт (бизнес), а не КАК это закодить. Разработчик знает кодовую базу сам.
02
Карта папок
структура репозитория
Сначала «синька» — общая форма репозитория. Ниже каждая корневая папка разобрана отдельной карточкой
с назначением и содержимым.
Транскрипты встреч, разложенные по годам. Грумингы, синки по Integrations & Events, демо. Источник для post-grooming.
2025/2026/groomingsyncdemo
tasks/ 61 файл
Рабочие материалы вокруг задач: мокапы и прототипы (HTML), исследования, завершённое. Живёт параллельно с YouTrack.
grooming/research/complete/
source-code/ read-only
Не редактируется. Нужен, чтобы скиллы исследовали поведение системы и писали постановки с опорой на реальный код. prm-backend — 1 689 .py.
prm-backendprm-front
.claude/ конфиг
Мозг автоматизации: skills/ (10 шт.), rules/domain.md (доменные знания PRM), агенты и локальные настройки.
skills/rules/agents/
outputs/ · scripts/ вспом.
Сгенерированные артефакты (мудборды и пр.) и утилитные скрипты. Корневые CLAUDE.md / AGENTS.md задают правила для агентов.
03
Skills — какие и зачем
.claude/skills · 10 шт.
Скиллы — это вызываемые через /имя процедуры, которые автоматизируют рутину PM-потока.
Они сгруппированы по фазам жизненного цикла задачи: от сырого разговора до передачи в тест.
Захват
встреча → текст
transcript-organizer
Превращает сырой транскрипт встречи в структурированный навигируемый markdown, не меняя исходную речь (фиксит только явные ошибки распознавания). Мультиязычно (ru/en).
«обработай транскрипт», «структурируй встречу»
Подготовка к грумингу
подготовить
pre-grooming
Берёт задачи с тегом груминга из YouTrack, приводит описания к стандартному шаблону, исследует контекст в кодовой базе и пишет черновики-предложения прямо в задачи.
«pre-grooming», «подготовка к грумингу»
прожарить
groom-challenge
Критический анализ задач перед встречей: оценивает бизнес-ценность, оспаривает подход и подсвечивает риски реализации, влияющие на оценку. Не форматтер — инструмент челленджа.
«challenge these tasks», «прожарь бэклог»
Решения встречи
результаты → YouTrack
post-grooming
Обрабатывает итоги груминга и обновляет задачи в YouTrack. На вход — структурированный .md от transcript-organizer (с блоками «Решение:» и «Ключевые выводы»).
«post-grooming», «обработай груминг»
Исследование и дизайн фич
discovery-интервью
nf · new feature
Проводит интервью по открытию фичи: исследует, челленджит и документирует новую фичу через структурированный диалог. Не для быстрого брейншторма и не для реализации.
«detail a feature», «spec out a feature»
визуальный прототип
vp · visual prototype
Делает интерактивный прототип одним самодостаточным HTML — чтобы «увидеть и согласовать» фичу до груминга или реализации. Логичное продолжение nf.
«create prototype», «покажи, как будет выглядеть»
Передача в работу
подготовка к QA
qa-handover
Готовит задачу к тестированию: изучает кодовую базу, сравнивает реализацию с описанием и формирует компактный блок «Для QA» на русском — где/что/как проверять.
«для QA», «передача в тестирование»
Backbone · работа с трекером
REST · bash + curl + jq
youtrack-manager
Прямые REST-вызовы к YouTrack через youtrack-api.sh. Детерминированно, без LLM/MCP. Создание, обновление полей, комментарии, связи, поиск.
основной способ работы с трекером
через MCP
youtrack-mcp
Те же операции с задачами, но через MCP-инструменты: create/read/update/search/assign/comment/link, лог времени, схема полей.
альтернатива manager через MCP
экспорт → markdown
backlog-export
Выгружает бэклог и эпики из YouTrack в компактные LLM-friendly .md, разбитые по типу (эпики/задачи) и сгруппированные по статусу → в docs/planning/.
«обнови бэклог», «sync backlog»
04
Рабочий цикл
как скиллы соединяются
Скиллы — не разрозненный набор, а конвейер. Вот как идея и встреча проходят путь до задачи в трекере
и обратно. Овалы — внешние/человеческие триггеры, прямоугольники — скиллы, цилиндры — хранилища, ромб — сессия груминга.
Все операции идут через скрипт.claude/skills/youtrack-manager/youtrack-api.sh,
а не через сырой curl: он сам читает токен из .env. Ниже — маршрут статусов задачи и полный набор команд.
Project
PRM · ID 0-437 Partnership Relation Management Platform
Инстанс
youtrack.mitgo.tech issue: /issue/PRM-XXX
Доступ
Токен из .env (YOUTRACK_API_TOKEN). Команды детерминированы — без LLM.
Маршрут статусов задачи
Три потока: Backlog → Development → Resolved. Спец-статусы вынесены отдельно.
Loading...
Спец-статусы
BlockedResearchReopened
Выпадают из основного маршрута: блокировка, требует исследования, переоткрыто.
Закрытые (Resolved)
DoneClosedRejected
Завершено · закрыто · отклонено.
Команды youtrack-api.sh
Команда
Что делает
Пример
get-issue
Получить задачу
get-issue PRM-327
search
Поиск по запросу YouTrack
search "project: PRM State: {Team Backlog}" 20
update-state
Сменить статус
update-state PRM-75 "In Progress"
update-description
Обновить описание (многострочно через stdin)
update-description PRM-75 - <<EOF
update-summary
Переименовать задачу
update-summary PRM-75 "Новое имя"
update-priority
Сменить приоритет
update-priority PRM-75 Critical
update-type
Сменить тип задачи
update-type PRM-75 Bug
update-assignee
Назначить исполнителя
update-assignee PRM-75 user
add-comment
Добавить комментарий
add-comment PRM-75 "..."
get-comments
Прочитать комментарии
get-comments PRM-75
create-issue
Создать задачу
create-issue 0-437 "Имя" - Task Normal
link
Связать задачи
link PRM-75 PRM-80 "relates to"
get-links
Показать связи
get-links PRM-75
run-command
Выполнить команду YouTrack
run-command PRM-75 "tag Grooming"
list-projects
Список проектов
list-projects
delete
Удалить задачу
delete PRM-75
Правило Постановка = бизнес, а не реализация
Заголовок и описание задачи описывают ЧТО должен делать продукт, а не какие поля добавить в модель.
Технические детали — только когда это бизнес-решение (логика мёрджа, допустимые значения, правила override). Не дублируем одно требование дважды.
✓ Хорошо
«паблишер может задать приоритет типов объявлений»
✗ Плохо
«добавить ad_type_priority (JSONField) в модель Source»