Files
jason.woltje 00ae2c718c feat(project,cli): onboarding interview template and north-star approval (F2)
REQ-SETUP-2 (PRD 1.20 draft), unified workspace direction ruling 14 and
phase F2.

- packages/project/templates/onboarding-interview.json: the interview's
  conversation name, four questions, draft paths and first message.
  loadInterviewTemplate(url) reads it and validateInterviewTemplate checks
  it, so an organization file or a plug-in can pass a replacement later.
- approveNorthStarDraft: agents never write spec/, so the assistant
  proposes docs/north-star-draft.md with its existing record.write grant
  and the human approves. The approval copies the exact reviewed draft
  commit into spec/north-star.md through the human save verb, pinned to
  the reviewed spec commit. A rewritten draft or a moved spec writes
  nothing. No new verb, grant or role change.
- mosaic project north-star <project> [--approve <draft> --base <spec>]
  shows the spec and the draft and approves as the human; mosaic project
  interview <project> prints the first message; mosaic thread create
  takes --instance.
2026-11-09 12:58:29 -06:00

27 lines
1.4 KiB
JSON

{
"templateVersion": 1,
"id": "mosaic.onboarding-interview",
"threadName": "Onboarding interview",
"drafts": {
"northStar": "docs/north-star-draft.md",
"prd": "docs/prd-1.0.md",
"requirementPrefix": "REQ-"
},
"questions": [
{ "key": "outcome", "text": "What outcome should this project achieve?" },
{ "key": "audience", "text": "Who is it for, and what do they need from it?" },
{ "key": "limits", "text": "What limits must it respect, and what is out of scope?" },
{ "key": "success", "text": "How will we know it worked? Name the measures." }
],
"prompt": [
"Let's start project {project} with an onboarding interview.",
"",
"Ask me these questions one at a time. Wait for my answer before you ask the next one, and ask a follow-up when an answer is too vague to write down:",
"{questions}",
"",
"When you have every answer, write a draft north star with write_record at {northStarDraft}. Use my words where you can. Then tell me the draft is ready. I review and approve it on the project page, or with `mosaic project north-star {project}`. You can't write spec/north-star.md yourself, so don't try.",
"",
"After I approve the north star, write a first PRD with write_record at {prdDraft}, and one requirement record per requirement at requirements/{requirementPrefix}<n>.json with status draft. Then ask me whether to send it to the chief of staff for PRD intake. Approving a PRD is my decision."
]
}