From project-management-plugin
Conducts 8-phase interview-first process to gather project details before initializing structure with micro-task decomposition. Supports --type, --depth, --template flags.
npx claudepluginhub markus41/claude --plugin project-planner-plugin# /pm:init — Interview-First Project Initialization **Usage**: `/pm:init [--type software|content|research|business|auto] [--depth quick|standard|thorough] [--template webapp|api-service|ml-pipeline|mobile-app|infrastructure] [--dry-run] [--import-jira PROJ-123]` ## Core Rule (NEVER BREAK) Run the full interview before generating ANY output files or project structure. Even if the user provides a complete, detailed description upfront, still ask the full question set. The interview exists to surface unstated assumptions, hidden constraints, and implicit expectations that users rarely volu...
/fire-1a-newInitializes a new project: creates directory with git init, gathers requirements via interview including MODE GATE, sets up complete .planning/ structure.
/new-projectInitializes a new project via questioning, optional research, requirements gathering, and roadmap creation. Produces .planning/ files: PROJECT.md, config.json, REQUIREMENTS.md, ROADMAP.md, STATE.md.
/setupInteractively onboards project: gathers business goals via questions, scans codebase for structure and tech, creates .claude/project-goals.md and project-map.md.
/plan-projectAutomates initial project planning: checks for PROJECT_BRIEF.md, invokes project-planning skill for requirements and docs, creates SESSION.md, prepares for Phase 1.
/vt-startInitializes a repository by determining type (hub or service), interviewing on tech stack, creating stack.md with project/team config, and setting up docs structure.
Share bugs, ideas, or general feedback.
Usage: /pm:init [--type software|content|research|business|auto] [--depth quick|standard|thorough] [--template webapp|api-service|ml-pipeline|mobile-app|infrastructure] [--dry-run] [--import-jira PROJ-123]
Run the full interview before generating ANY output files or project structure. Even if the user provides a complete, detailed description upfront, still ask the full question set. The interview exists to surface unstated assumptions, hidden constraints, and implicit expectations that users rarely volunteer. Skipping the interview produces shallow projects that fail during execution.
Ask ONE question at a time and wait for the user's full answer before asking the next. Never combine two questions in a single message. If an answer is surprising or contradicts a prior answer, ask a clarifying follow-up before proceeding. Adapt follow-up questions based on what you learn — if the user mentions a constraint you did not anticipate, probe it before moving on.
Minimum 15 substantive questions across all 8 phases before synthesis. Do not count clarifying follow-ups toward that minimum. Never assume anything — confirm even obvious details. If the user seems impatient, explain: "These questions will prevent the system from building the wrong thing. Each answer shapes the task decomposition."
Ask at minimum:
Ask at minimum:
Ask at minimum:
Ask at minimum:
Ask at minimum:
Ask at minimum:
Ask at minimum:
Ask at minimum:
After completing all 8 phases and all minimum questions, present a complete synthesis. Do not start writing files yet. Show the user:
my-project-2026)Then ask: "What did I miss or get wrong? Take a moment to correct anything before I generate the project." Incorporate all corrections before writing any files.
After the synthesis is accepted, generate the following:
Create .claude/projects/{project-id}/ directory structure:
project.json — full project metadataplan.md — human-readable project overviewtasks.json — initially empty ({"tasks": [], "version": 1})checkpoints/ — directory for checkpoint filesresearch/ — directory for research briefsartifacts/ — directory for task output artifactsprogress/log.md — running progress logsessions/ — directory for session summariesWrite project.json with fields:
id, name, goal, type, status: "READY", depthtech_stack, team, workflow, security, compliancepm_integration (platform, external_project_id, or null)phases array with phase IDs, names, and descriptionsrisks arrayknown_unknowns arraycreated_at, updated_atfocus_scope: nullWrite plan.md in human-readable markdown covering all interview findings.
Set status: READY in project.json.
Confirm: "Project '{name}' created (ID: {id}). Run /pm:plan {id} to decompose into tasks."
--template {name}: Before starting the interview, load the template from plugins/project-management-plugin/templates/{name}.json. Pre-populate tech stack, phase structure, and default tasks. Skip Phase 2 questions that are already answered by the template. Announce: "Using template '{name}'. I will skip questions already answered by the template."
--import-jira PROJ-123: Before the interview, check whether the Atlassian MCP is available. If available, fetch the Jira epic or project and extract: title, description, existing issues, labels, and assignees. Use this as context for Phase 6 (domain deep-dive) and PM integration. Announce what was imported at the start of the interview.
--dry-run: After synthesis approval, display the planned project.json and plan.md content but do not write any files. Confirm: "Dry run complete. No files written. Remove --dry-run to create the project."
--depth quick|standard|thorough: Pass this value through to task decomposition so /pm:plan uses the correct granularity target when called later.