feature-start.md
1 --- 2 allowed-tools: Bash(git:*), Bash(gh:*), Read, TodoWrite 3 description: Start feature development with issue analysis, knowledge transfer, and branch setup 4 --- 5 6 # Feature Start Workflow 7 8 ## Usage 9 Execute: `/feature-start` (automatically detects available features or processes user context) 10 Optional: `/feature-start #287` or `/feature-start feature about XYZ` or `/feature-start additional context` 11 12 ## CRITICAL PHASE 1: Feature Issue Analysis & Knowledge Transfer 13 14 **⚠️ MANDATORY FIRST STEPS - NEVER SKIP THIS PHASE ⚠️** 15 16 ### 1. Current Context Check 17 - **Current branch**: Run `git branch --show-current` 18 - **Verify epic branch**: Ensure we're on correct epic branch before feature work 19 - **Git status**: Run `git status --short` 20 21 ### 2. Intelligent Feature Detection 22 - **Parse user input**: Extract feature number from user context (e.g., "#287", "287", "feature 287") 23 - **Auto-detect ready features**: If no specific feature mentioned, find open features in current epic 24 - **Feature details**: Run `gh issue view DETECTED_FEATURE_NUMBER` (using detected or selected feature) 25 - **Understand existing requirements**: Parse current issue body for: 26 - Feature description and scope 27 - Existing acceptance criteria 28 - Dependencies and constraints 29 - Any prior discussion or decisions 30 31 ### 3. Knowledge Transfer Interview Process 32 33 **Present feature issue summary and ask potent questions:** 34 35 #### Core Understanding Questions 36 - "Based on the current issue body for $ARGUMENTS, here's what I understand: [SUMMARY]. What specific implementation details have you already thought about?" 37 - "What are the key interaction patterns you envision for this feature?" 38 - "How should this feature integrate with our existing [RELEVANT_SYSTEMS]?" 39 40 #### Technical Deep-Dive Questions 41 - "Are there performance requirements or constraints I should consider?" 42 - "What edge cases or potential issues should we handle?" 43 - "What aspects of this feature are most important to get right?" 44 - "Any specific technical approaches or patterns you'd prefer?" 45 46 #### User Experience Questions 47 - "What's the ideal user workflow for this feature?" 48 - "How should this feel to use - any UX inspiration or references?" 49 - "What should happen when things go wrong (error states)?" 50 51 ### 4. Clarification Discussion 52 - **Short conversation** to align understanding 53 - **Let user articulate** their vision and requirements 54 - **Capture additional insights** or constraints not in original issue 55 - **Identify any missing context** or assumptions 56 57 ### 5. Issue Body Refinement 58 Based on the discussion, update the GitHub issue with: 59 60 ```markdown 61 ## Enhanced Description 62 [Refined feature description based on discussion] 63 64 ## Technical Approach 65 [Specific implementation strategy] 66 67 ## Enhanced Acceptance Criteria 68 - [ ] [Original criteria plus refined details] 69 - [ ] [Additional criteria from discussion] 70 - [ ] [Edge cases and error handling] 71 72 ## Integration Points 73 [How this connects to existing features] 74 75 ## Implementation Notes 76 [Key decisions and constraints from discussion] 77 ``` 78 79 ### 6. Get Explicit Approval 80 - **Present refined plan**: "Here's the updated implementation plan based on our discussion: [PLAN]. Does this capture what you want?" 81 - **Only proceed after user confirms** the direction is correct 82 - **STOP here if approval not obtained** 83 84 ## Phase 2: Feature Branch Setup 85 86 **Only proceed here AFTER completing Phase 1 above** 87 88 **⚠️ CRITICAL: LOCAL-ONLY WORKFLOW ⚠️** 89 - **Feature branches are NEVER pushed to remote** 90 - **ONLY main branch gets pushed (during epic completion)** 91 92 ### Branch Creation 93 - **Ensure on epic branch**: Run `git checkout epic/EPIC_NUMBER-epic-name` 94 - **Create feature branch**: Run `git checkout -b feature/FEATURE_NAME-from-issue` 95 - **NO PUSH**: Feature branch stays local, merges to epic branch when complete 96 97 ### GitHub Integration 98 - **Update feature issue**: Run `gh issue edit DETECTED_FEATURE_NUMBER --body "REFINED_ISSUE_BODY"` 99 - **Move to Active**: Reference @CLAUDE.md (lines 680-727) for project board GraphQL 100 101 ## Phase 3: Implementation Planning 102 103 ### TodoWrite Task Breakdown 104 Create comprehensive task breakdown following project patterns: 105 106 #### 1. Setup Tasks 107 - [ ] Verify development environment ready 108 - [ ] Confirm feature branch created and current 109 - [ ] Review integration points with existing code 110 111 #### 2. Command Implementation (Commands Before UI) 112 - [ ] Define command interfaces 113 - [ ] Implement command handlers 114 - [ ] Register commands in main plugin 115 - [ ] Test command functionality 116 117 #### 3. Service Layer (Service Layer Abstraction) 118 - [ ] Create/extend service classes 119 - [ ] Implement business logic 120 - [ ] Add error handling and validation 121 - [ ] Write service unit tests 122 123 #### 4. UI Implementation (Feature Slice Architecture) 124 - [ ] Create feature slice components 125 - [ ] Integrate with command system 126 - [ ] Add to appropriate UI locations 127 - [ ] Implement user interactions 128 129 #### 5. Testing & Validation 130 - [ ] Write comprehensive unit tests 131 - [ ] Manual testing in Obsidian development vault 132 - [ ] Verify all acceptance criteria met 133 - [ ] **STOP FOR USER TESTING** - Get explicit feedback 134 135 ### Development Environment Check 136 - **Plugin reloader ready**: Confirm Obsidian development workflow 137 - **Testing protocols**: @CLAUDE.md (lines 784-790) 138 139 ## Implementation Readiness Checklist 140 141 - [ ] **Phase 1 Complete**: Feature issue analyzed and refined 142 - [ ] **Knowledge Transfer**: User interview conducted and insights captured 143 - [ ] **Issue Approval**: User confirmed refined implementation plan 144 - [ ] **Feature Branch**: Created off epic branch and pushed 145 - [ ] **GitHub Updated**: Issue body refined and project board updated 146 - [ ] **TodoWrite Ready**: Comprehensive task breakdown created 147 - [ ] **Environment Ready**: Development setup confirmed 148 149 ## Next Steps 150 151 After feature start completion: 152 1. **Begin Implementation**: Follow TodoWrite task breakdown 153 2. **Follow Architecture Patterns**: @CLAUDE.md (lines 382-395) 154 3. **Maintain Quality**: Regular testing and validation 155 4. **Use `/feature-complete`** when implementation ready for user testing 156 157 ## Reference Materials 158 159 - **Development Rules**: @CLAUDE.md (lines 382-395) 160 - **Critical Feature Workflow**: @CLAUDE.md (lines 523-575) 161 - **Service Layer Patterns**: @CLAUDE.md (lines 396-409) 162 - **GitHub CLI Commands**: @CLAUDE.md (lines 610-767) 163 - **Testing Standards**: @CLAUDE.md (lines 853-868) 164 165 ## Workflow Anti-Patterns to Avoid 166 167 **❌ Never Do These:** 168 - Skip issue analysis and jump straight to implementation 169 - Assume requirements without knowledge transfer interview 170 - Create feature branch without refining issue body 171 - Start coding before user approves direction 172 173 **✅ Always Do These:** 174 - Conduct thorough knowledge transfer interview first 175 - Refine issue body with detailed implementation plan 176 - Get explicit user approval before any coding 177 - Create proper feature branch off epic branch 178 179 This command embodies the **CRITICAL FEATURE DEVELOPMENT WORKFLOW** from project memory.