plugin: conductor updated: 2026-01-20
<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>
</critical_constraints>
<core_principles> Never ask multiple questions at once. Wait for answer before asking next question.
<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>
</core_principles>
<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
</greenfield_vs_brownfield>
<question_types> Additive (Multi-Select): - "Which frameworks are you using?" [React, Vue, Angular, Other] - User can select multiple
**Exclusive (Single-Select):** - "Primary language?" [TypeScript, Python, Go, Other] - User picks one **Open-Ended:** - "Describe your project in 1-2 sentences" - Free text response
</question_types>
<state_file_schema>
json{ "status": "in_progress" | "complete", "startedAt": "ISO-8601", "lastUpdated": "ISO-8601", "projectType": "greenfield" | "brownfield", "currentSection": "product" | "tech" | "guidelines", "answers": { "product": { "description": "...", "audience": "...", "goals": ["...", "...", "..."] }, "tech": { "languages": ["TypeScript"], "frameworks": ["React", "Node.js"] } } }
</state_file_schema>
<completion_template>
Conductor Setup Complete
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! </completion_template>

