Files
gh-linus-mcmanamey-unify-2-…/commands/create-feature.md
2025-11-30 08:37:55 +08:00

4.6 KiB
Executable File

allowed-tools: Read, Write, Edit, Bash argument-hint: [feature-name] | [feature-type] [name] description: Scaffold new feature with boilerplate code, tests, and documentation

Create Feature

Scaffold new feature: $ARGUMENTS

Current Project Context

  • Project structure: !find . -maxdepth 2 -type d -name src -o -name components -o -name features | head -5
  • Current branch: !git branch --show-current
  • Package info: @package.json or @Cargo.toml or @requirements.txt (if exists)
  • Architecture docs: @docs/architecture.md or @README.md (if exists)

Task

Follow this systematic approach to create a new feature: $ARGUMENTS

  1. Feature Planning

    • Define the feature requirements and acceptance criteria
    • Break down the feature into smaller, manageable tasks
    • Identify affected components and potential impact areas
    • Plan the API/interface design before implementation
  2. Research and Analysis

    • Study existing codebase patterns and conventions
    • Identify similar features for consistency
    • Research external dependencies or libraries needed
    • Review any relevant documentation or specifications
  3. Architecture Design

    • Design the feature architecture and data flow
    • Plan database schema changes if needed
    • Define API endpoints and contracts
    • Consider scalability and performance implications
  4. Environment Setup

    • Create a new feature branch: git checkout -b feature/$ARGUMENTS
    • Ensure development environment is up to date
    • Install any new dependencies required
    • Set up feature flags if applicable
  5. Implementation Strategy

    • Start with core functionality and build incrementally
    • Follow the project's coding standards and patterns
    • Implement proper error handling and validation
    • Use dependency injection and maintain loose coupling
  6. Database Changes (if applicable)

    • Create migration scripts for schema changes
    • Ensure backward compatibility
    • Plan for rollback scenarios
    • Test migrations on sample data
  7. API Development

    • Implement API endpoints with proper HTTP status codes
    • Add request/response validation
    • Implement proper authentication and authorization
    • Document API contracts and examples
  8. Frontend Implementation (if applicable)

    • Create reusable components following project patterns
    • Implement responsive design and accessibility
    • Add proper state management
    • Handle loading and error states
  9. Testing Implementation

    • Write unit tests for core business logic
    • Create integration tests for API endpoints
    • Add end-to-end tests for user workflows
    • Test error scenarios and edge cases
  10. Security Considerations

    • Implement proper input validation and sanitization
    • Add authorization checks for sensitive operations
    • Review for common security vulnerabilities
    • Ensure data protection and privacy compliance
  11. Performance Optimization

    • Optimize database queries and indexes
    • Implement caching where appropriate
    • Monitor memory usage and optimize algorithms
    • Consider lazy loading and pagination
  12. Documentation

    • Add inline code documentation and comments
    • Update API documentation
    • Create user documentation if needed
    • Update project README if applicable
  13. Code Review Preparation

    • Run all tests and ensure they pass
    • Run linting and formatting tools
    • Check for code coverage and quality metrics
    • Perform self-review of the changes
  14. Integration Testing

    • Test feature integration with existing functionality
    • Verify feature flags work correctly
    • Test deployment and rollback procedures
    • Validate monitoring and logging
  15. Commit and Push

    • Create atomic commits with descriptive messages
    • Follow conventional commit format if project uses it
    • Push feature branch: git push origin feature/$ARGUMENTS
  16. Pull Request Creation

    • Create PR with comprehensive description
    • Include screenshots or demos if applicable
    • Add appropriate labels and reviewers
    • Link to any related issues or specifications
  17. Quality Assurance

    • Coordinate with QA team for testing
    • Address any bugs or issues found
    • Verify accessibility and usability requirements
    • Test on different environments and browsers
  18. Deployment Planning

    • Plan feature rollout strategy
    • Set up monitoring and alerting
    • Prepare rollback procedures
    • Schedule deployment and communication

Remember to maintain code quality, follow project conventions, and prioritize user experience throughout the development process.