Skip to main content

systematic-feature-builder

Systematic approach to implementing features with detailed planning, tracking, and testing. Use when building new features, adding functionality to existing projects, implementing multi-step requirements, or when user requests organized, methodical development workflow.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
abcnuts/manus-skills
آخر نشاط في المصدر
١٢ فبراير ٢٠٢٦ في ٠٤:١١
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٦٩
التفرعات
٤٦

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
6 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
systematic-feature-builder
description
Systematic approach to implementing features with detailed planning, tracking, and testing. Use when building new features, adding functionality to existing projects, implementing multi-step requirements, or when user requests organized, methodical development workflow.
# Systematic Feature Builder Implement features systematically with detailed planning, progress tracking, and comprehensive testing. ## When to Use This Skill Use this skill when: - Building new features from requirements or specifications - Adding functionality to existing projects - Implementing multi-step features that require coordination - User requests "systematic", "organized", or "methodical" approach - User provides a spec or detailed requirements document - Features require database changes, API integration, or complex logic ## Core Workflow Follow these five phases in order: 1. **Requirements Analysis** - Understand what needs to be built 2. **Implementation Planning** - Create detailed, step-by-step plan 3. **Systematic Implementation** - Execute plan with progress tracking 4. **Testing & Verification** - Validate at multiple levels 5. **Documentation & Checkpoint** - Create comprehensive checkpoint ## Phase 1: Requirements Analysis ### Gather Information Extract clear requirements from user input: - What features need to be built? - What is the expected behavior? - Are there existing examples or references? - What are the success criteria? ### Identify Dependencies Determine what exists and what needs to be created: - Existing code/components that can be reused - Database schema changes required - External services or APIs needed - Dependencies between features ### Clarify Ambiguities Ask targeted questions if requirements are unclear: - Edge cases and error handling - User permissions and access control - Performance or scalability requirements - UI/UX preferences ## Phase 2: Implementation Planning ### Create Detailed Plan Use the implementation plan template: ```bash # Copy template to project cp /home/ubuntu/skills/systematic-feature-builder/templates/implementation-plan-template.md \ <project-path>/docs/plans/YYYY-MM-DD-feature-name.md ``` **Plan Structure:** - Overview and objectives - Task breakdown with estimated time - Step-by-step instructions with file paths - Testing strategy for each task - Success criteria - Rollback plan ### Break Down Into Atomic Tasks Each task should: - Be completable in one sitting (30-90 minutes) - Have clear inputs and outputs - Be independently testable - Have explicit success criteria **Example Task Breakdown:** ```markdown ### Task 1: Add Database Field (15 min) 1. Update schema.ts with new field 2. Run `pnpm db:push` to migrate 3. Verify field exists in database ### Task 2: Create Backend Endpoint (30 min) 1. Add endpoint to router 2. Implement business logic 3. Add input validation 4. Write unit tests ### Task 3: Build Frontend Component (45 min) 1. Create component file 2. Add tRPC integration 3. Implement UI with shadcn/ui 4. Handle loading/error states ``` ### Update todo.md Add all planned tasks to project's todo.md: ```markdown ## [Feature Name] - [ ] Task 1: Database changes - [ ] Task 2: Backend endpoint - [ ] Task 3: Frontend component - [ ] Task 4: Testing - [ ] Task 5: Documentation ``` ## Phase 3: Systematic Implementation ### Execute Plan Sequentially Implement tasks in order, following the plan: 1. **Start with backend/data layer** (database, APIs) 2. **Then business logic** (endpoints, services) 3. **Finally UI layer** (components, pages) This order minimizes rework and allows incremental testing. ### Track Progress in todo.md Mark tasks complete as you finish them: ```markdown ## [Feature Name] - [x] Task 1: Database changes - [x] Task 2: Backend endpoint - [ ] Task 3: Frontend component ← Currently working on this - [ ] Task 4: Testing - [ ] Task 5: Documentation ``` Use `file` tool's `edit` action to update checkboxes efficiently. ### Handle Deviations If you deviate from the plan: - Document why in the plan file - Update todo.md with new tasks - Adjust time estimates if needed ### Communicate Progress For long implementations, send `info` messages at milestones: - "✅ Task 1 complete: Database schema updated" - "📊 Progress: 3/5 tasks complete" - "⚠️ Encountered issue with X, implementing alternative approach" ## Phase 4: Testing & Verification ### Three-Level Testing Test at all three levels before checkpoint: **1. Unit Tests** - Individual functions and endpoints - Database operations - Input validation **2. Integration Tests** - Features working together - End-to-end workflows - External service integration **3. Manual Verification** - UI renders correctly - User flows work as expected - Edge cases handled gracefully ### Webdev-Specific Testing For webdev projects: ```bash # Run automated tests pnpm test # Check dev server health # (use webdev_check_status tool) # Manual browser testing # - Open dev server URL # - Test feature in browser # - Check console for errors # - Verify responsive design ``` Refer to `references/testing-strategies.md` for detailed testing approaches. ### Verify Completion Before creating checkpoint, verify all tasks complete: ```bash python /home/ubuntu/skills/systematic-feature-builder/scripts/verify_completion.py \ <project-path>/todo.md ``` This script checks for incomplete `[ ]` items and reports them. ## Phase 5: Documentation & Checkpoint ### Update Documentation Ensure documentation reflects changes: - Update README if user-facing features added - Add inline code comments for complex logic - Update API documentation if endpoints changed ### Create Comprehensive Checkpoint Follow checkpoint guidelines in `references/checkpoint-guidelines.md`. **Checkpoint Description Template:** ```markdown [Feature name]: [brief summary] ## Features Added ### 1. [Feature Name] - Key capability 1 - Key capability 2 - Location/integration point ## Technical Details **Database Changes:** - [Schema changes] **New Files:** - [Important new files and their purpose] **Dependencies:** - [New packages added] ## Testing - [X] tests passing - [Y] tests failing (if any, explain why) ## Next Steps - [Suggested follow-up actions] ``` ### Webdev Checkpoint Checklist Before creating webdev checkpoint: - [ ] All tests passing (or failures documented) - [ ] `webdev_check_status` shows no critical errors - [ ] Feature works in dev server - [ ] todo.md updated with completed items marked `[x]` - [ ] Large media files uploaded to S3 (not in project directory) - [ ] Database migrations applied successfully ## Webdev-Specific Guidance ### Database Changes Always follow this sequence: 1. Edit `drizzle/schema.ts` 2. Run `pnpm db:push` to apply migration 3. Verify migration succeeded 4. Test database operations ### File Organization Create files in this order: 1. **Database layer**: `drizzle/schema.ts` 2. **Data access**: `server/db.ts` (query helpers) 3. **Business logic**: `server/*-router.ts` (tRPC endpoints) 4. **Frontend**: `client/src/components/*.tsx`, `client/src/pages/*.tsx` ### Testing Pattern ```typescript // server/feature.test.ts import { describe, it, expect } from 'vitest'; describe('Feature Tests', () => { it('should handle valid input', async () => { // Arrange const input = { /* test data */ }; // Act const result = await endpoint(input); // Assert expect(result).toMatchObject({ expected }); }); it('should handle error cases', async () => { // Test error scenarios }); }); ``` ### Common Patterns **Adding a Feature:** 1. Plan → Update todo.md 2. Schema → Database migration 3. Backend → tRPC endpoint + tests 4. Frontend → Component + integration 5. Test → Manual verification 6. Checkpoint → Comprehensive description **Fixing a Bug:** 1. Reproduce → Document steps 2. Identify → Root cause analysis 3. Fix → Minimal change 4. Test → Verify fix + no regressions 5. Checkpoint → Explain bug and fix ## Best Practices ### Do ✅ **Write plans before coding** - Saves time, reduces rework ✅ **Update todo.md actively** - Provides clear progress tracking ✅ **Test incrementally** - Catch issues early ✅ **Document decisions** - Future you will thank present you ✅ **Create detailed checkpoints** - Enable easy rollback and review ### Don't ❌ **Skip planning** - Leads to disorganized implementation ❌ **Implement everything at once** - Hard to debug, test, and review ❌ **Forget to update todo.md** - Loses track of progress ❌ **Skip testing** - Bugs slip into production ❌ **Create vague checkpoints** - Useless for rollback or review ## Templates and Scripts ### Available Resources **Templates** (`templates/`): - `implementation-plan-template.md` - Structured feature plan - `todo-template.md` - Format for tracking features **Scripts** (`scripts/`): - `verify_completion.py` - Validates all checklist items complete **References** (`references/`): - `testing-strategies.md` - Testing approaches by project type - `checkpoint-guidelines.md` - Checkpoint best practices ### Using Templates Copy templates to your project: ```bash # Implementation plan cp /home/ubuntu/skills/systematic-feature-builder/templates/implementation-plan-template.md \ <project>/docs/plans/$(date +%Y-%m-%d)-feature-name.md # Todo file (if project doesn't have one) cp /home/ubuntu/skills/systematic-feature-builder/templates/todo-template.md \ <project>/todo.md ``` ## Examples ### Example: Adding Bulk CSV Import Feature **Phase 1: Requirements** - Admin needs to import rep codes from CSV - CSV format: email, repCode - Show import results with errors **Phase 2: Plan** ```markdown ### Task 1: Backend Endpoint (30 min) 1. Add bulkImportRepCodes to admin-router.ts 2. Parse CSV data from input 3. Validate each row 4. Update database 5. Return results with errors ### Task 2: Frontend Component (45 min) 1. Create BulkRepCodeImport.tsx 2. Add file upload input 3. Integrate Papa Parse 4. Show import results 5. Add CSV template download ### Task 3: Integration (15 min) 1. Add component to Admin page 2. Test with sample CSV 3. Verify error handling ``` **Phase 3: Implementation** - Implement tasks sequentially - Update todo.md after each task - Test each component independently **Phase 4: Testing** - Unit test: endpoint validates CSV correctly - Integration test: upload CSV via UI - Manual test: download template, upload, verify results **Phase 5: Checkpoint** ``` Title: Add bulk rep code CSV import ## Features Added - Admin endpoint for bulk importing rep codes - BulkRepCodeImport component with file upload - Papa Parse integration - Detailed error reporting ## Technical Details **New Files:** - server/admin-router.ts: bulkImportRepCodes endpoint - client/src/components/BulkRepCodeImport.tsx **Dependencies:** - papaparse, @types/papaparse ## Testing - 52 tests passing ``` ## Troubleshooting **"Plan is too detailed/taking too long"** → Reduce granularity. Focus on major steps, not every line of code. **"Implementation deviating from plan"** → Update plan document with deviations and reasoning. Adjust todo.md. **"Tests failing after implementation"** → Fix tests before checkpoint. Document any intentional test changes. **"Checkpoint description too long"** → Focus on what changed and why. Move detailed technical notes to plan document. ## Summary This skill provides a systematic, organized approach to feature implementation: 1. **Analyze** requirements thoroughly 2. **Plan** implementation with detailed steps 3. **Implement** systematically with progress tracking 4. **Test** at multiple levels 5. **Document** comprehensively in checkpoint The result: high-quality, well-tested features with clear documentation and easy rollback capability.
عرض على GitHub