Files
vitya 8059faf5a8 Add skill: meeting-room-start-meeting
Validates scenarios/<topic>.md frontmatter against config.yaml roles, creates
skeleton transcript and working buffer, appends to log. Runner invocation is
out of scope (skill prepares artifacts only).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 14:34:53 +03:00

4.0 KiB
Raw Permalink Blame History

name, description
name description
meeting-room-start-meeting Use when user says "запусти совещание <topic>", "start meeting <scenario>", "новое совещание <topic>", or wants to begin a multi-agent meeting from a scenarios/<topic>.md file in .meeting-room. Validates scenario frontmatter, creates skeleton transcript at .wiki/raw/transcripts/<date>-<topic>.md, opens working buffer at .brainstorm/<topic>.md, logs to .wiki/log.md.

meeting-room-start-meeting

Запускает совещание из scenarios/<topic>.md: валидирует frontmatter, создаёт skeleton-транскрипт в .wiki/raw/transcripts/, заводит рабочий буфер в .brainstorm/, логирует в .wiki/log.md.

When to use

  • Пользователь говорит «запусти совещание », «start meeting », «новое совещание ».
  • Пользователь указал scenario-файл и хочет подготовить артефакты под него.

Inputs

  • Путь scenarios/<topic>.md или просто <topic> (тогда искать scenarios/<topic>.md).

Steps

  1. Прочитать scenarios/<topic>.md. Распарсить YAML frontmatter.

  2. Валидация:

    • name, problem непустые;
    • participants — список, все элементы существуют как ключи roles.* в config/config.yaml;
    • max_rounds — целое (если присутствует).
    • При ошибке — перечислить, не создавать ничего.
  3. Сегодняшняя дата<date> = YYYY-MM-DD (UTC локального компа).

  4. Создать .wiki/raw/transcripts/<date>-<topic>.md (skeleton):

    ---
    date: <date>
    scenario: scenarios/<topic>.md
    participants: [<participant1>, <participant2>, ...]
    problem: |
      <первая строка problem из scenario>
    ---
    
    # <name> — transcript <date>
    
    <!-- runner будет дописывать сюда. Append-only после первой записи. -->
    
  5. Создать .brainstorm/<topic>.md (если ещё нет):

    # <name> — working buffer
    
    - **Scenario:** [scenarios/<topic>.md](../scenarios/<topic>.md)
    - **Transcript:** [.wiki/raw/transcripts/<date>-<topic>.md](../.wiki/raw/transcripts/<date>-<topic>.md)
    - **Started:** <date>
    
    ## Заметки
    
    <!-- здесь черновик. Промочится скилом meeting-room-promote-brainstorm. -->
    

    Если файл уже существует — спросить: append-skip, overwrite, abort.

  6. Дописать в .wiki/log.md:

    <date> started <topic> ([<participants comma-sep>])
    
  7. Вернуть пользователю: созданные пути и подсказку — как запустить runner (на сегодня запуск runner'а вне scope, скил готовит только артефакты).

Failure modes

  • scenarios/<topic>.md отсутствует → abort.
  • Frontmatter невалидный → перечислить ошибки, ничего не создавать.
  • Participant отсутствует в config/config.yaml#roles → abort с указанием отсутствующих ролей.
  • .brainstorm/<topic>.md уже есть и пользователь выбрал abort → exit без записи в raw/transcripts/.

Side effects

  • Создаёт .wiki/raw/transcripts/<date>-<topic>.md.
  • Создаёт .brainstorm/<topic>.md (или модифицирует с разрешения).
  • Аппендит строку в .wiki/log.md.

What NOT to do

  • Не запускать runner — это вне scope скила.
  • Не редактировать scenarios/<topic>.md.
  • Не пытаться угадать participants если их нет в config.yaml.