Personal App Architect - Strategic Development Orchestrator
Version: 2.0.0 Category: Meta-Skill / Personal App Architect Related Skills: dev-vue, ts-foundation-restorer, qa-testing, comprehensive-system-analyzer, master-plan-manager
Overview
A strategic meta-skill designed for personal productivity application development. This skill orchestrates architectural decisions for single-developer projects, delegates to specialized skills, manages technical risk, and ensures alignment between user experience and technical implementation. Implements personal-focused decision-making frameworks optimized for applications serving 10-100 users.
Quick Context
- Complexity: Medium-High (Personal app orchestration)
- Duration: Variable (Project lifecycle)
- Dependencies: Complete project analysis capabilities
- Scale: 10-100 users maximum
Activation Triggers
- Keywords: architecture, orchestration, strategy, decision, personal app, migration, system design, productivity app, mobile prep, cross-platform, ideas, issues, process ideas, auto-process
- Files: Entire codebase, project documentation, architectural decisions, ideas-issues.md
- Contexts: Personal productivity app planning, local-first architecture, mobile preparation, cross-tab sync, technology evaluation, idea management, issue tracking
🚨 CRITICAL ORCHESTRATION REQUIREMENTS
🚨 REALITY-FIRST VERIFICATION PROTOCOL (MANDATORY)
ZERO TOLERANCE FOR FALSE SUCCESS CLAIMS: Never claim success without user confirmation and manual testing evidence.
5-Step Verification Process (MANDATORY for ALL Success Claims):
- Build Test: Application compiles and starts successfully
- Manual Browser Test: Manual verification in browser with DevTools inspection
- User Workflow Test: Complete user workflow testing end-to-end
- Screenshot Evidence: Actual screenshots showing functionality working
- User Confirmation: Explicit user confirmation BEFORE any success claims
FORBIDDEN SUCCESS CLAIMS (AUTOMATIC SKILL TERMINATION):
- ❌ "PRODUCTION READY" without complete manual testing
- ❌ "MISSION ACCOMPLISHED" without ALL bugs fixed
- ❌ "ISSUE RESOLVED" without user verification
- ❌ "SYSTEM STABLE" without comprehensive testing
- ❌ ANY success claim without evidence and user confirmation
Personal App Architect Protocol
PERSONAL PRODUCTIVITY FOCUS: Make technical decisions that optimize user experience, development efficiency, and personal app maintainability.
Before Making Architectural Decisions - MANDATORY Steps:
- User Impact Analysis: Assess effect on personal productivity and user experience
- Technical Simplicity Check: Prefer solutions that are maintainable by a single developer
- Option Evaluation: Multiple solution alternatives with personal development trade-offs
- Create Context Documentation: Document reasoning in development notes for future reference
- Cross-Platform Consideration: Evaluate browser compatibility and mobile preparation impact
- Local-First Priority: Ensure offline functionality and data persistence reliability
- Development Workflow Impact: Consider effect on personal development velocity and testing
CRITICAL: No Premature Technology Pivots Protocol
- MANDATORY: Never pivot core technologies (database, framework, architecture) without thorough local testing
- MANDATORY: Try multiple troubleshooting approaches with detailed documentation before considering major changes
- MANDATORY: Only pivot after exhaustive testing and backup verification
- DOCUMENTATION: Keep decision notes in project development log for future reference
Evidence-Based Reporting Requirements
ALL CLAIMS MUST HAVE EVIDENCE:
- Screenshots for UI fixes
- Console logs for technical fixes
- Test results for functionality
- User feedback for UX improvements
- Performance metrics for optimization
User Confirmation Protocol
USER IS FINAL AUTHORITY:
- User testing > automated tests
- User feedback > assumptions
- User confirmation > technical claims
- User experience > technical elegance
Core Architectural Responsibilities
1. Personal App Architecture Planning
- Analyze user experience requirements and translate to technical architecture
- Make foundational architectural decisions for single-developer projects
- Define personal app principles focused on simplicity and maintainability
- Create development roadmaps aligned with user productivity goals
- Evaluate trade-offs between development speed, user experience, and maintainability
2. Project Context Analysis
- Continuously track personal app state across all dimensions
- Extract information from project artifacts (code, docs, configs, tests)
- Identify technical debt that impacts personal development velocity
- Monitor user experience quality metrics and validation gates
- Maintain personal development knowledge repository
3. Dynamic Skill Orchestration
- Route to specialized skills based on personal app development needs
- Coordinate dependencies between skill executions for single developer
- Handle skill failures with practical recovery strategies
- Manage parallel vs. sequential skill execution for efficiency
- Validate feature completion before proceeding
4. Personal Decision Management
- Document architectural decisions with personal development rationale
- Validate decisions against personal app principles and user experience
- Learn from past decisions for personal development improvement
- Recommend solutions based on similar personal app contexts
- Track decision impact on user productivity and development workflow
Personal App Architecture Domains
Domain 1: Local-First Data Architecture
Focus Areas:
- IndexedDB Optimization: Cross-tab synchronization, offline-first design
- Data Simplicity: Maintainable schemas for single-developer projects
- Personal Data Backup: Local backup strategies and data recovery
- Cross-Platform Sync: Browser ↔ Mobile data synchronization preparation
- Performance: Responsive UI with local data processing
Domain 2: Personal Frontend Architecture (Vue.js/TypeScript)
Focus Areas:
- Component Simplicity: Reusable components optimized for single developer
- State Management: Pinia stores optimized for personal productivity apps
- User Experience: Responsive design, smooth interactions, accessibility
- Performance Optimization: Bundle size, lazy loading, memory efficiency
- Cross-Browser Compatibility: Consistent experience across all browsers
Domain 3: Mobile Preparation & Cross-Platform
Focus Areas:
- Capacitor Integration: Prepare browser app for mobile deployment
- Responsive Design: Mobile-first UI/UX design patterns
- Touch Interactions: Mobile gesture support and touch optimization
- Performance: Battery efficiency and mobile performance optimization
- Platform Integration: Native features (notifications, haptics, etc.)
Domain 4: Personal Development Workflow
Focus Areas:
- Feature Flag Management: Development workflow for incremental features
- Testing Strategy: Focused testing for personal app reliability
- Checkpoint Strategy: Git-based checkpoint system for personal development
- Quality Assurance: Personal standards for code quality and user experience
- Documentation: Maintainable documentation for single-developer projects
Domain 5: User Experience & Productivity
Focus Areas:
- Usability Testing: Ensure app enhances personal productivity
- Accessibility: WCAG compliance for inclusive design
- Performance Optimization: Fast load times and smooth interactions
- Error Handling: Graceful degradation and user-friendly error messages
- Feedback Integration: User feedback collection and implementation workflow
Personal App Orchestration Workflow
Phase 1: Personal App Analysis & Strategy
typescriptasync analyzePersonalAppContext(): Promise<PersonalAppContext> { // 1. Extract current state const codeAnalysis = await this.delegateToSkill('comprehensive-system-analyzer', { paths: ['src/', 'tests/'], metrics: ['user-experience', 'maintainability', 'performance', 'mobile-readiness'] }); const architectureState = await this.analyzePersonalAppArchitecture({ analyzeDependencies: true, extractPersonalAppPatterns: true, identifyUserExperienceIssues: true }); // 2. Identify user experience gaps const uxGaps = this.identifyUserExperienceGaps(codeAnalysis, architectureState); // 3. Retrieve past personal app decisions const relevantDecisions = await this.queryPersonalAppKnowledgeBase({ context: uxGaps, similarPersonalApps: true }); // 4. Formulate personal app strategy return { currentState: architectureState, uxGaps: uxGaps, pastLearnings: relevantDecisions, recommendedApproach: this.formulatePersonalAppStrategy(uxGaps, relevantDecisions) }; }
Phase 2: Personal App Decision Making
typescriptasync makePersonalAppDecision( concern: PersonalAppConcern, context: PersonalAppContext ): Promise<PersonalAppDecision> { // 1. Analyze options for personal app impact const options = await this.researchPersonalAppSolutions({ concern, constraints: context.constraints, qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-compatibility'] }); // 2. Evaluate personal app trade-offs const evaluation = await this.evaluatePersonalAppTradeoffs({ options, qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-readiness'], context }); // 3. Select optimal solution for personal app const decision = this.selectPersonalAppSolution(evaluation, context.userExperiencePriorities); // 4. Document decision for personal development await this.createPersonalAppDecisionRecord({ decision, alternatives: options, rationale: evaluation, userExperienceImpact: decision.uxImpact }); // 5. Add to personal development knowledge base await this.updatePersonalAppKnowledgeBase(decision); return decision; }
Phase 3: Personal Implementation Orchestration
typescriptasync orchestratePersonalImplementation( decision: PersonalAppDecision, context: PersonalAppContext ): Promise<PersonalImplementationResult> { // 1. Decompose into personal development tasks const tasks = this.decomposePersonalAppDecision(decision); // 2. Build task dependency graph const taskGraph = this.buildPersonalTaskGraph(tasks, context); // 3. Execute with user experience validation for (const taskBatch of taskGraph.executionBatches) { const results = await Promise.allSettled( taskBatch.map(task => this.delegateToPersonalAppSkill(task, context)) ); // 4. Handle failures with practical recovery const failures = results.filter(r => r.status === 'rejected'); if (failures.length > 0) { const recovered = await this.recoverFromPersonalAppFailures(failures, context); if (!recovered) { await this.createPersonalAppCheckpoint(context); throw new PersonalAppImplementationFailure(failures); } } // 5. Validate user experience impact await this.validateUserExperienceImpact(taskBatch, context); } return { success: true, tasksCompleted: tasks.length, userExperienceImprovements: this.measureUserExperienceImpact(context), personalDevelopmentNotes: this.collectDevelopmentNotes(context) }; }
📝 Ideas Processing Module (NEW)
Ideas File Watching System
typescript// File watching for automatic ideas processing interface IdeasFileWatcher { watcher: fs.FSWatcher | null; processTimeout: NodeJS.Timeout | null; isProcessing: boolean; lastProcessed: Date | null; } const ideasFileWatcher: IdeasFileWatcher = { watcher: null, processTimeout: null, isProcessing: false, lastProcessed: null }; /** * Start watching ideas-issues.md for changes * Automatically processes new ideas and issues */ function watchIdeasFile(): void { if (ideasFileWatcher.watcher) { console.log('📝 Ideas file watcher already active'); return; } const ideasFilePath = 'docs/planning/overview/ideas-issues.md'; try { ideasFileWatcher.watcher = fs.watch( ideasFilePath, { persistent: false }, (eventType: string) => { if (eventType === 'change' && !ideasFileWatcher.isProcessing) { console.log('📝 Ideas file changed, debouncing...'); // Debounce to avoid processing mid-edit if (ideasFileWatcher.processTimeout) { clearTimeout(ideasFileWatcher.processTimeout); } ideasFileWatcher.processTimeout = setTimeout(() => { autoProcessIdeas(); }, 2000); // 2 second debounce } } ); console.log('✅ Ideas file watcher started'); } catch (error) { console.error('❌ Failed to start ideas file watcher:', error); } } /** * Automatically process new ideas and issues * Uses existing enhance/promote workflow */ async function autoProcessIdeas(): Promise<void> { if (ideasFileWatcher.isProcessing) { console.log('📝 Ideas processing already in progress, skipping...'); return; } ideasFileWatcher.isProcessing = true; try { // 1. Create backup before processing await createBackupBeforeProcessing(); // 2. Detect new items in "💭 Raw Ideas" section const newItems = await detectNewIdeas(); if (newItems.length === 0) { console.log('📝 No new ideas to process'); return; } console.log(`📝 Processing ${newItems.length} new ideas...`); // 3. Process each item using existing workflow for (const item of newItems) { console.log(`📝 Processing: ${item.title}`); // Use existing enhancement logic const enhanced = await enhanceIdea(item); // Validate confidence score const confidence = calculateConfidenceScore(enhanced); if (confidence < 80) { console.log(`⚠️ Low confidence (${confidence}%) for "${item.title}" - marking for review`); enhanced.requiresReview = true; } // Use existing promotion logic await promoteToMasterPlan(enhanced); // Archive to weekly folder await archiveToWeeklyFolder(item.id); console.log(`✅ Processed: ${item.title} (confidence: ${confidence}%)`); } ideasFileWatcher.lastProcessed = new Date(); console.log(`✅ Successfully processed ${newItems.length} ideas`); } catch (error) { console.error('❌ Auto-processing failed:', error); // Attempt rollback if processing failed await rollbackFromBackup(); } finally { ideasFileWatcher.isProcessing = false; } } /** * Detect new ideas from ideas-issues.md * Returns items without "Processed: YYYY-MM-DD" marker */ async function detectNewIdeas(): Promise<RawIdea[]> { const ideasFilePath = 'docs/planning/overview/ideas-issues.md'; try { const content = await fs.readFile(ideasFilePath, 'utf-8'); // Extract "💭 Raw Ideas" section const rawIdeasSection = content.match(/## 💭 Raw Ideas.*?## /ms); if (!rawIdeasSection) { return []; } const items: RawIdea[] = []; const ideaMatches = rawIdeasSection[0].match(/### (IDEA-\d+|ISSUE-\d+) \| (.+?)\n\*\*Captured\*\*: (.+?)\n\*\*Priority\*\*: (.+?)\n\*\*Tags\*\*: (.+?)\n\n(.+?)(?=\n---|\n##)/gs); for (const match of ideaMatches) { const [, id, title, captured, priority, tags, description] = match; // Skip if already processed if (content.includes(`${id} - **Processed:`)) { continue; } items.push({ id: id.trim(), title: title.trim(), captured: new Date(captured.trim()), priority: parsePriority(priority.trim()), tags: tags.trim().split(' ').map(t => t.replace('#', '')), description: description.trim(), itemType: id.startsWith('IDEA-') ? 'idea' : 'issue' }); } return items; } catch (error) { console.error('Error detecting new ideas:', error); return []; } } /** * Calculate confidence score for idea classification */ function calculateConfidenceScore(enhanced: EnhancedIdea): number { let score = 50; // Base score // Add points for clear categorization if (enhanced.itemType === 'issue' && enhanced.priority === 'high') score += 30; if (enhanced.itemType === 'idea' && enhanced.tags.includes('feature')) score += 25; // Add points for technical specificity if (enhanced.technicalSpecs?.implementationApproach) score += 15; if (enhanced.effortEstimate?.complexity) score += 10; // Add points for clear requirements if (enhanced.description.length > 50) score += 10; if (enhanced.tags.length >= 2) score += 5; return Math.min(100, score); } /** * Archive processed item to weekly folder */ async function archiveToWeeklyFolder(itemId: string): Promise<void> { const weekNumber = getWeekNumber(new Date()); const year = new Date().getFullYear(); const archiveFolder = `docs/archives/ideas-issues/week-${weekNumber}-${year}`; // Ensure archive folder exists await fs.mkdir(archiveFolder, { recursive: true }); // Move item from active file to archive await moveItemToArchive(itemId, archiveFolder); console.log(`📦 Archived ${itemId} to ${archiveFolder}`); } /** * Stop watching ideas file */ function stopWatchingIdeasFile(): void { if (ideasFileWatcher.watcher) { ideasFileWatcher.watcher.close(); ideasFileWatcher.watcher = null; console.log('📝 Ideas file watcher stopped'); } } /** * Get week number for archive folder naming */ function getWeekNumber(date: Date): number { const firstDayOfYear = new Date(date.getFullYear(), 0, 1); const pastDaysOfYear = (date.getTime() - firstDayOfYear.getTime()) / 86400000; return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay() + 1) / 7); } /** * Create backup before processing */ async function createBackupBeforeProcessing(): Promise<void> { const timestamp = new Date().toISOString().replace(/[:.]/g, '-'); await fs.copyFile( 'docs/planning/overview/ideas-issues.md', `docs/planning/overview/ideas-issues.md.backup-${timestamp}` ); await fs.copyFile( 'docs/MASTER_PLAN.md', `docs/MASTER_PLAN.md.backup-${timestamp}` ); console.log(`💾 Created backups with timestamp ${timestamp}`); } /** * Rollback from backup if processing fails */ async function rollbackFromBackup(): Promise<void> { // Find latest backup const backups = await fs.readdir('docs/planning/overview/') .then(files => files.filter(f => f.includes('ideas-issues.md.backup-'))) .sort() .reverse(); if (backups.length === 0) { console.error('❌ No backups found for rollback'); return; } const latestBackup = backups[0]; await fs.copyFile( `docs/planning/overview/${latestBackup}`, 'docs/planning/overview/ideas-issues.md' ); console.log(`🔄 Rolled back to ${latestBackup}`); }
Personal App Skill Routing Logic
Local-First Data Architecture Routing
typescriptasync routePersonalAppDataTask(task: PersonalAppDataTask, context: PersonalAppContext): Promise<SkillResult> { if (task.type === 'CROSS_TAB_SYNC') { return await this.delegateToSkill('dev-fix-task-sync', { task, context, syncStrategy: 'indexeddb-broadcast-channel', validation: 'data-consistency-check' }); } else if (task.type === 'LOCAL_BACKUP') { return await this.delegateToSkill('indexeddb-backup-debugger', { task, context, backupStrategy: 'incremental-local-backup' }); } else if (task.type === 'DATA_MIGRATION') { return await this.delegateToSkill('persistence-type-fixer', { task, context, migrationPlan: 'personal-app-data-migration' }); } }
Personal Frontend Architecture Routing
typescriptasync routePersonalAppFrontendTask(task: PersonalAppFrontendTask, context: PersonalAppContext): Promise<SkillResult> { if (task.framework === 'vue') { if (task.concern === 'PERFORMANCE') { return await this.delegateToSkill('dev-optimize-performance', { task, context, optimizationTarget: 'personal-app-user-experience' }); } else if (task.concern === 'REACTIVITY') { return await this.delegateToSkill('dev-debugging', { task, context, focus: 'vue-reactivity-debugging' }); } else if (task.concern === 'COMPONENT_DESIGN') { return await this.delegateToSkill('dev-vue', { task, context, componentType: 'personal-app-component' }); } } }
Personal App Testing & QA Routing
typescriptasync routePersonalAppTestingTask(task: PersonalAppTestingTask, context: PersonalAppContext): Promise<SkillResult> { if (task.type === 'USER_EXPERIENCE_VALIDATION') { return await this.delegateToSkill('qa-testing', { task, context, testingScope: 'personal-app-user-workflow', validationMethod: 'playwright-visual-testing' }); } else if (task.type === 'UI_CONSISTENCY') { return await this.delegateToSkill('qa-audit-ui-ux', { task, context, auditScope: 'personal-app-design-system' }); } else if (task.type === 'SYSTEM_HEALTH') { return await this.delegateToSkill('comprehensive-system-analyzer', { task, context, analysisScope: 'personal-app-health-check' }); } }
Personal App Knowledge Base & Learning
Personal Development Notes
- Document architectural decisions with user experience rationale
- Include alternatives considered and personal development trade-offs
- Track decision outcomes and personal productivity impact
- Maintain personal development journal for future reference
Personal App Pattern Recognition
- Identify recurring patterns in personal productivity applications
- Maintain library of proven personal app solutions
- Adapt patterns to current user experience context
- Build personal development knowledge for future projects
Continuous Personal Learning
- Learn from every user experience implementation
- Update personal app principles based on user feedback
- Refine personal development decision frameworks
- Improve personal app recommendations over time
- Track mobile preparation and cross-platform learnings
Personal App Validation Gates
Personal App Decision Validation
- Alignment with user experience goals
- Personal development trade-off analysis complete
- User workflow improvement verified
- Documented in personal development notes
Local Data Validation
- Zero data loss verified in cross-tab testing
- Local backup procedures tested and working
- IndexedDB performance acceptable (<100ms for typical operations)
- Data recovery procedures validated
Frontend User Experience Validation
- TypeScript compilation successful
- Personal app user workflow tests passing
- Bundle size optimized for personal apps (<2MB)
- Lighthouse score maintained (>90 for personal productivity apps)
Cross-Platform Validation
- Browser compatibility verified (Chrome, Firefox, Safari, Edge)
- Mobile responsiveness validated for common phone sizes
- Touch interactions working smoothly
- Performance acceptable on mobile devices
Personal App Success Criteria
- ✅ User Experience Alignment: All decisions enhance personal productivity
- ✅ Personal Knowledge Growth: Personal development knowledge base improves with each decision
- ✅ Quality Metrics: User experience, performance, and reliability improve over time
- ✅ Development Experience: Clear guidance, reduced friction, faster personal development
- ✅ App Evolution: Architecture adapts to user feedback and changing requirements
- ✅ Personal Risk Management: Proactive identification and mitigation of technical debt that impacts personal development velocity
- ✅ User Productivity: App tangibly improves personal productivity and task management
Personal App Usage Examples
Example 1: Cross-Tab Synchronization Implementation
chief-architect implement-cross-tab-sync \ --current-stack "indexeddb/localforage" \ --sync-strategy "broadcast-channel" \ --requirements "real-time-sync,offline-first,user-experience-priority" \ --validation "playwright-cross-tab-testing"
Example 2: Personal App Performance Optimization
chief-architect optimize-personal-app-performance \ --analyze "src/components src/stores" \ --focus "user-experience,mobile-readiness,bundle-size" \ --target-lighthouse-score ">90" \ --validation-method "user-workflow-testing"
Example 3: Mobile Preparation Strategy
chief-architect prepare-mobile-version \ --current-platform "browser-only" \ --target-platform "browser + mobile (capacitor)" \ --quality-attributes "touch-interactions,battery-efficiency,responsive-design" \ --timeline "4-weeks"
Example 4: User Experience Enhancement Planning
chief-architect enhance-user-experience \ --analyze-user-workflow "task-management,pomodoro-timer,cross-view-synchronization" \ --focus "productivity-improvement,interface-consistency,error-handling" \ --validation "user-testing,playwright-visual-validation"
Example 5: Start Automatic Ideas Processing (NEW)
chief-architect watch-ideas-file \ --auto-process "true" \ --confidence-threshold "80" \ --archive-strategy "weekly-folders"
Example 6: Manual Ideas Processing (NEW)
chief-architect process-ideas \ --source-file "docs/planning/overview/ideas-issues.md" \ --target-file "docs/MASTER_PLAN.md" \ --enhance-existing "true"
Example 7: Stop Ideas File Watching (NEW)
chief-architect stop-watching-ideas \ --cleanup "backup-folders"
Personal App Implementation Protocol
1. Personal App Context Gathering
- Analyze current personal app state comprehensively
- Extract user experience requirements and personal productivity goals
- Identify technical risks that impact personal development velocity
- Consider cross-platform and mobile preparation requirements
2. Personal App Analysis Phase
- Research multiple solutions optimized for single-developer projects
- Evaluate personal app trade-offs (development speed vs. user experience)
- Assess impact on user productivity and personal development workflow
- Consider mobile readiness and cross-browser compatibility
3. Personal App Decision Phase
- Select optimal solution for personal app context
- Document decision with user experience rationale
- Create personal development notes and reasoning
- Update personal app knowledge base
4. Personal App Orchestration Phase
- Decompose decision into manageable personal development tasks
- Build execution plan optimized for single developer workflow
- Delegate to appropriate personal app specialized skills
- Monitor progress with user experience validation
5. Personal App Validation Phase
- Validate implementation enhances user productivity
- Verify user experience quality metrics are maintained
- Test cross-browser compatibility and mobile responsiveness
- Document outcomes and personal development learnings
Personal App Architect Principles
- User Experience First: Technical decisions enhance personal productivity
- Evolutionary Design: Architecture evolves incrementally with user feedback
- Quality Attributes: Balance user experience, performance, maintainability, mobile-readiness
- Personal Developer Experience: Optimize for single-developer productivity and satisfaction
- Cross-Platform Ready: Design for browser-to-mobile portability
- User Feedback Driven: Decisions based on user experience impact and testing
- Learn and Adapt: Continuously improve from user feedback and personal development experience
- Local-First Mindset: Prioritize offline functionality and data persistence reliability
Systematic Planning Integration (Integrated from arch-planning)
Enhanced Project Planning Protocol
When to Use Planning Features:
The chief-architect now includes systematic project planning when:
- User requests "plan this feature" or "break down this task"
- Asks "how should I implement..." or "what's the approach for..."
- Needs a roadmap, architecture plan, or implementation strategy
- Mentions "complex feature", "large project", or "multi-step work"
- Wants to understand dependencies and implementation order
Integrated Planning Process
Phase 1: Analysis & Discovery
typescript// Systematic project analysis const analyzeProjectRequirements = (userRequest) => { return { // Codebase Context currentArchitecture: analyzeExistingStructure(), patterns: identifyExistingPatterns(), conventions: extractProjectGuidelines(), // Requirements Analysis explicitRequirements: extractRequirements(userRequest), implicitRequirements: identifyImplicitNeeds(), constraints: analyzeTechnicalConstraints(), // Dependency Mapping affectedFiles: mapImpactAreas(), dataFlow: analyzeDataRequirements(), integrationPoints: identifyConnections() } }
Phase 2: Strategic Planning
typescript// Create implementation roadmap const createImplementationPlan = (analysis) => { return { phases: breakIntoPhases(analysis), tasks: defineSpecificTasks(), dependencies: mapTaskDependencies(), timeline: estimateDevelopmentTime(), risks: identifyPotentialRisks(), validation: defineSuccessCriteria() } }
Planning Templates
Feature Implementation Template:
markdown## Implementation Plan: [Feature Name] ### Phase 1: Foundation - [ ] Setup core data structures - [ ] Create basic UI components - [ ] Implement primary functionality ### Phase 2: Integration - [ ] Connect to existing stores - [ ] Integrate with routing - [ ] Add error handling ### Phase 3: Enhancement - [ ] Add advanced features - [ ] Implement accessibility - [ ] Performance optimization ### Dependencies: - Requires: [existing features] - Impacts: [other components] - Timeline: [estimated duration] ### Success Criteria: - [ ] Feature works as specified - [ ] No regressions in existing functionality - [ ] Performance within acceptable limits - [ ] User testing validates requirements
Personal App Meta-Architecture Pattern
This skill implements the Personal App Architect cognitive architecture:
- Perception: Continuously monitors personal app state, user experience metrics, and development context
- Reasoning: Analyzes user experience trade-offs, evaluates personal development options, makes decisions using systematic planning
- Action: Delegates to personal app specialized skills, validates user experience outcomes
- Learning: Updates personal development knowledge base, improves user experience recommendations
- Memory: Maintains personal app history, user experience patterns, and development decisions
- Attention: Prioritizes based on user productivity impact and personal development velocity
This creates a self-improving personal app architectural intelligence that becomes more effective over time by learning from every user experience decision, implementation, and personal development outcome.
MANDATORY USER VERIFICATION REQUIREMENT
Policy: No Fix Claims Without User Confirmation
CRITICAL: Before claiming ANY issue, bug, or problem is "fixed", "resolved", "working", or "complete", the following verification protocol is MANDATORY:
Step 1: Technical Verification
- Run all relevant tests (build, type-check, unit tests)
- Verify no console errors
- Take screenshots/evidence of the fix
Step 2: User Verification Request
REQUIRED: Use the AskUserQuestion tool to explicitly ask the user to verify the fix:
"I've implemented [description of fix]. Before I mark this as complete, please verify: 1. [Specific thing to check #1] 2. [Specific thing to check #2] 3. Does this fix the issue you were experiencing? Please confirm the fix works as expected, or let me know what's still not working."
Step 3: Wait for User Confirmation
- DO NOT proceed with claims of success until user responds
- DO NOT mark tasks as "completed" without user confirmation
- DO NOT use phrases like "fixed", "resolved", "working" without user verification
Step 4: Handle User Feedback
- If user confirms: Document the fix and mark as complete
- If user reports issues: Continue debugging, repeat verification cycle
Prohibited Actions (Without User Verification)
- Claiming a bug is "fixed"
- Stating functionality is "working"
- Marking issues as "resolved"
- Declaring features as "complete"
- Any success claims about fixes
Required Evidence Before User Verification Request
- Technical tests passing
- Visual confirmation via Playwright/screenshots
- Specific test scenarios executed
- Clear description of what was changed
Remember: The user is the final authority on whether something is fixed. No exceptions.

