| name | setup |
| description | Initialize Conductor with product.md, tech-stack.md, and workflow.md |
| version | 1.1.0 |
| tags | conductor, setup, initialization, context, project |
| keywords | conductor setup, initialize, project context, greenfield, brownfield |
<resume_capability>
Check for conductor/setup_state.json FIRST.
If exists with status != "complete":
1. Load saved answers
2. Resume from last incomplete section
3. Show user what was already collected
</resume_capability>
<question_protocol>
- Ask questions SEQUENTIALLY (one at a time)
- Maximum 5 questions per section
- Always include "Type your own answer" option
- Use AskUserQuestion with appropriate question types
- Save state after EACH answer (for resume)
</question_protocol>
<validation_first>
Before any operation:
1. Check if conductor/ already exists
2. If complete setup exists, ask: "Re-initialize or abort?"
3. Respect .gitignore patterns
</validation_first>
<principle name="State Persistence" priority="critical">
Save progress after each answer.
Enable resume from any interruption point.
</principle>
<principle name="Context Quality" priority="high">
Gather enough context to be useful.
Don't overwhelm with excessive questions.
</principle>
<phase number="2" name="Project Type Detection">
<step>Check for existing code files (src/, package.json, etc.)</step>
<step>Ask user: Greenfield (new) or Brownfield (existing)?</step>
<step>For Brownfield: Scan existing code for context</step>
</phase>
<phase number="3" name="Product Context">
<step>Ask: What is this project about? (1-2 sentences)</step>
<step>Ask: Who is the target audience?</step>
<step>Ask: What are the 3 main goals?</step>
<step>Ask: Any constraints or requirements?</step>
<step>Generate product.md from answers</step>
</phase>
<phase number="4" name="Technical Context">
<step>Ask: Primary programming language(s)?</step>
<step>Ask: Key frameworks/libraries?</step>
<step>Ask: Database/storage preferences?</step>
<step>Ask: Deployment target?</step>
<step>Generate tech-stack.md from answers</step>
</phase>
<phase number="5" name="Guidelines">
<step>Ask: Any specific coding conventions?</step>
<step>Ask: Testing requirements?</step>
<step>Generate product-guidelines.md</step>
<step>Generate code_styleguides/general.md (always)</step>
<step>Generate language-specific styleguides based on tech stack:
- TypeScript/JavaScript → typescript.md, javascript.md
- Web projects → html-css.md
- Python → python.md
- Go → go.md
</step>
</phase>
<phase number="6" name="Finalization">
<step>Copy workflow.md template</step>
<step>Create empty tracks.md</step>
<step>Mark setup_state.json as complete</step>
<step>Present summary to user</step>
</phase>
**Brownfield (Existing Project):**
- Scan existing files for context
- Infer tech stack from package.json, requirements.txt, etc.
- Focus on documenting current state
**Exclusive (Single-Select):**
- "Primary language?" [TypeScript, Python, Go, Other]
- User picks one
**Open-Ended:**
- "Describe your project in 1-2 sentences"
- Free text response
Project: {project_name} Type: {Greenfield/Brownfield}
Created Artifacts:
- conductor/product.md - Project vision and goals
- conductor/product-guidelines.md - Standards and conventions
- conductor/tech-stack.md - Technical preferences
- conductor/workflow.md - Development workflow (comprehensive)
- conductor/tracks.md - Track index (empty)
- conductor/code_styleguides/general.md - General coding principles
- conductor/code_styleguides/{language}.md - Language-specific guides
Next Steps:
- Review generated artifacts and adjust as needed
- Use
conductor:new-trackto plan your first feature - Use
conductor:implementto execute the plan
Your project is now ready for Context-Driven Development!