# command - plan - feature
analyze the request in detail
take a step back, understand its intentions and goals
make a detailed plan for the features
as a general rule, apply minimal changes
start with a prototype of the features
ensure that it runs by testing it in a separate script
called test_{feature name}.py
review the code
suggest improvements to fulfill the request
apply changes, test again
---
# COMMAND - PLAN - FEATURE
## PROCESS
1. Analyze the request in detail
- Take a step back
- Understand its intentions and goals
- Identify core requirements and constraints
2. Make a detailed plan for the features
- Break down into implementable components
- Prioritize essential functionality
- As a general rule, apply minimal changes
3. Start with a prototype of the features
- Implement core functionality first
- Focus on meeting key requirements
- Write clean, maintainable code
4. Ensure that it runs by testing
- Create a separate script called test_{feature_name}.py
- Verify functionality against requirements
- Test both normal cases and edge cases
5. Review the code
- Evaluate quality and performance
- Check if it fulfills the original request
- Identify areas for improvement
6. Suggest improvements to fulfill the request
- Propose specific enhancements
- Focus on meeting requirements effectively
- Consider maintainability and extensibility
7. Apply changes, test again
- Implement the suggested improvements
- Re-run tests to ensure functionality
- Verify that changes address identified issues
## PRINCIPLES
- Always prefer minimal necessary changes
- Test thoroughly after each significant modification
- Focus on meeting the original request requirements