Держаться нету больше сил, когда вместо ведения проекта происходит броуновское движение.
Запилил скилл для разбора транскриптов встреч и ведения актуального состояния проекта.
Скилл
project-vaultпомогает вести проектное хранилище как рабочую базу знаний: фиксировать входы из встреч и чата, превращать их в структурированное и проверяемое состояние проекта, обновлять задачи, вопросы, риски, зависимости, решения и повестку. Он задаёт правила привязки к источникам, разделяет сырые материалы, их разбор и итоговое описание проекта, и не даёт закрывать вопросы или менять важные формулировки без явного основания.
Пока в пилотном использовании версия, сделанная за полтора вечера в сотрудничестве с quint code haft и FPF-agent.
Немного обкатаю и, вероятно, выложу в общий доступ.
Пока кратко поделюсь архитектурой в порядке переосмысления письмом.
Структура
project-vault/
├── decisions/ # Карточки ключевых решений и их статусов.
├── inputs/ # Входящая информация из чата с агентом и других источников.
├── meetings/ # Разобранные встречи и их индексы/шаблоны.
├── reports/ # Производные сводки и отчёты.
├── scripts/ # Служебные утилиты для поддержки vault.
├── state/ # Текущее состояние проекта.
├── transcripts/ # Транскрипты встреч как первичный источник информации.
├── vocabulary/ # Глоссарий терминов проекта.
├── work/ # Рабочий контур: задачи, вопросы, backlog.
├── agenda-next.md # Повестка следующей встречи.
├── contradictions.md # Реестр противоречий.
├── dependencies.md # Реестр зависимостей и блокировок.
├── index.md # Главный индекс и точка входа в хранилище.
├── open-questions.md # Список активных открытых вопросов.
├── README.md # Правила устройства и ведения всего vault.
└── risks.md # Реестр рисков.
Общее устройство .md
Большинство .md-файлов состоят из двух частей: сверху YAML frontmatter с полями вроде id, status, updated, sources, снизу обычный Markdown по шаблону, содержащий ссылки на другие артефакты или просто их идентификаторы.
- YAML нужен для машиночитаемой трассировки
- Markdown - для содержательного описания.
Какие процессы покрывает скилл
| Процесс | Шаги |
|---|---|
0. Инициализация project-vault в новом проекте |
1. Скопировать scaffold/project-vault в корень репозитория.2. Поправить даты и плейсхолдеры в project-vault/index.md.3. Дальше работать по процессам A-E. |
| A1. Обновление состояния из транскрипта встречи | 1. Сохранить raw-транскрипт в transcripts/raw/.2. Создать meetings/.../processed.md по шаблону.3. Свериться с активными Q-*.4. Заполнить только проверяемые факты из источника. 5. При необходимости создать или обновить decisions/DEC-*.md и индекс решений.6. Обновить индекс встреч. 7. Обновить актуальное состояние проекта: state/*, задачи, вопросы, зависимости, риски, противоречия и index.md. |
| A2. Обновление состояния из диалога / briefing | 1. Создать inputs/briefings/YYYY-MM-DD_slug.md по шаблону.2. Зафиксировать только явно сказанное пользователем. 3. При ключевых решениях создать или обновить decisions/DEC-*.md.4. При необходимости сверить сигналы с активными Q-*.5. Затем выполнить общие шаги процесса A для актуального состояния проекта, задач, вопросов, зависимостей, рисков и index.md. |
A3. Обязательное сопровождение state/stakeholders.md |
1. Обновить или создать запись стейкхолдера с ролью, зоной решений и эскалацией. 2. Проверить связь с активными задачами и отчётами. 3. Обновить sources, updated, evidence_captured_at и changelog.4. При конфликте зафиксировать противоречие и инициировать эскалацию. 5. Пройти quality gates по owner-покрытию, источникам и SLA. |
| B. Краткий отчёт о состоянии | 1. Собрать данные из state/, активных задач, вех, зависимостей, рисков, решений, последних processed.md и briefing.2. Сформировать файл в reports/ с датой в начале имени и дальше осмысленным slug, например 2026-04-15-status.md, или ответ в чат по шаблону.3. Отдельно показать просроченные review_by / valid_until и свежие решения по статусам. |
| C. Список открытых вопросов | 1. Взять активные строки из open-questions.md.2. При необходимости подключить историю из work/questions/closed/.3. Отфильтровать только open.4. Отсортировать по blocked_work и decision_needed_by.5. Убрать дубликаты. 6. Показать последствия незакрытия каждого вопроса. |
| D. Противоречия и риски | 1. Собрать незакрытые строки из contradictions.md.2. Добавить кандидатов из свежего разбора и briefing. 3. Сверить с state/.4. Взять срез рисков из risks.md с приоритетами и мерами.5. Сформировать файл в reports/ с датой в начале имени и дальше осмысленным slug, например 2026-04-15-risks.md, или структурированный ответ в чат. |
| E. Повестка следующей встречи | 1. Обновить agenda-next.md по шаблону.2. Включить топ вопросов, блокеры, вехи на 2 недели, противоречия и риски. 3. Разложить слоты по минутам. 4. При необходимости добавить слот по решениям: закрыть proposed, вернуть deferred с наступающим revisit_by. |
