Customization - johnpeterman72/CursorRIPER GitHub Wiki
Customization
The CursorRIPER Framework is designed to be adaptable to different projects and developer preferences. This page explains how to customize the framework to suit your needs.
Customization Overview
Customization is managed through the .cursor/rules/customization.mdc
file, which contains user-defined settings that override default framework behavior.
flowchart TD
core[core.mdc] --> state[state.mdc]
state --> workflow{Current Workflow}
workflow -->|START| start[start-phase.mdc]
workflow -->|RIPER| riper[riper-workflow.mdc]
start --> memory[Memory Bank]
riper --> memory
memory --> custom[customization.mdc]
style custom fill:#ffd700,stroke:#ff8c00
User Preferences
Response Style
Control how verbose the AI's responses are:
RESPONSE_VERBOSITY: "BALANCED"
Options:
"CONCISE"
- Brief, to-the-point responses"BALANCED"
- Moderate detail (default)"DETAILED"
- Comprehensive, thorough explanations
Example use case: Set to "CONCISE" when you're experienced with the framework and want faster interactions, or "DETAILED" when onboarding new team members.
Code Style Preferences
Specify your preferred coding style:
CODE_STYLE_PREFERENCES: "tabs, camelCase, 80-char line limit"
This setting is free-form text that informs the AI about your coding style preferences. Include information about:
- Indentation (tabs vs. spaces)
- Naming conventions
- Line length limits
- Brace style
- Comment style
Example use case: Ensure consistent code generation that matches your project's existing style guide.
Explanation Level
Control how much explanation is provided with code:
EXPLANATION_LEVEL: "MEDIUM"
Options:
"MINIMAL"
- Just the code with basic comments"MEDIUM"
- Code with contextual explanations (default)"COMPREHENSIVE"
- Detailed explanations of all aspects
Example use case: Set to "COMPREHENSIVE" when implementing complex algorithms or when team members need to understand the implementation details thoroughly.
Mode Behavior
Mode Transition Suggestions
Allow the AI to suggest mode transitions:
SUGGEST_MODE_TRANSITIONS: true
When enabled, the AI will suggest when it might be appropriate to transition to a different mode based on the current context and conversation.
Example use case: Enable this for new users to help them learn the appropriate workflow.
Automatic Mode Transitions
Allow the AI to automatically transition between modes:
AUTO_MODE_TRANSITION: false
When enabled, the AI can automatically transition between modes (except to EXECUTE, which always requires explicit authorization).
Example use case: Enable for experienced users who want a more streamlined workflow without explicitly commanding mode changes.
Plan Question Count
Set the number of clarifying questions to ask in PLAN mode:
PLAN_QUESTION_COUNT: 5
Higher values result in more detailed planning but require more interaction before implementation begins.
Example use case: Increase for complex, critical components; decrease for simple, routine tasks.
Memory Management
Automatic Memory Updates
Control whether memory files are automatically updated:
AUTO_UPDATE_MEMORY: true
When enabled, the AI will automatically update memory files after significant changes.
Example use case: Enable for consistent documentation; disable if you prefer to manually control when memory files are updated.
Memory Update Frequency
Control when memory files are updated:
MEMORY_UPDATE_FREQUENCY: "AFTER_COMPLETION"
Options:
"AFTER_EVERY_RESPONSE"
- Update after each AI response"AFTER_COMPLETION"
- Update after completing significant tasks (default)"MANUAL_ONLY"
- Only update when explicitly requested
Example use case: Set to "AFTER_EVERY_RESPONSE" for critical projects where continuous documentation is essential.
Required Memory Files
Specify which memory files must exist for the framework to function:
REQUIRED_MEMORY_FILES: ["projectbrief.md", "activeContext.md", "progress.md"]
The framework will ensure these files exist and will create them if they're missing.
Example use case: Add custom memory files to this list if your project requires specialized documentation.
Archive Behavior
Automatic Archive of START Phase
Control whether the START phase is automatically archived upon completion:
AUTO_ARCHIVE_START_PHASE: true
When enabled, the START phase will be automatically archived after completion.
Example use case: Disable if you want to keep the START phase configuration accessible for reference.
Backup Frequency
Control how often memory bank backups are created:
BACKUP_FREQUENCY: "DAILY"
Options:
"NEVER"
- No automatic backups"DAILY"
- Once per day (default)"WEEKLY"
- Once per week"BEFORE_CHANGES"
- Before any significant changes
Example use case: Set to "BEFORE_CHANGES" for extra safety during critical development phases.
Backup Retention
Control how many backup sets to retain:
KEEP_BACKUP_COUNT: 5
The framework will delete older backups when this limit is exceeded.
Example use case: Increase for projects with strict documentation requirements.
Advanced Customization
Command Aliases
Create shortcuts for mode transition commands:
CUSTOM_COMMANDS: {
"/r": "/research",
"/i": "/innovate",
"/p": "/plan",
"/e": "/execute",
"/rev": "/review"
}
Example use case: Define shorter commands for frequently used modes.
Mode Extensions
Add custom behaviors to specific modes:
RESEARCH_MODE_EXTENSIONS: ["Generate code comments", "Document API endpoints"]
INNOVATE_MODE_EXTENSIONS: ["Create architecture diagrams", "Evaluate performance impacts"]
PLAN_MODE_EXTENSIONS: ["Conduct security review", "Assess backward compatibility"]
EXECUTE_MODE_EXTENSIONS: ["Generate unit tests", "Document implementation details"]
REVIEW_MODE_EXTENSIONS: ["Check code style compliance", "Verify documentation matches code"]
These extensions add specific behaviors to each mode without changing the core functionality.
Example use case: Add project-specific requirements to standard modes.
Custom Phases and Workflows
Define additional project phases beyond the standard ones:
CUSTOM_PHASES: ["DESIGN", "TESTING", "DEPLOYMENT"]
Create custom workflows for specific project types:
CUSTOM_WORKFLOWS: [
{
"name": "DATA_MIGRATION",
"steps": ["Analyze", "Map", "Transform", "Validate", "Deploy"]
}
]
Example use case: Create specialized workflows for specific types of projects or development activities.
Documentation Preferences
Documentation Format
Set the format for generated documentation:
DOCUMENTATION_STYLE: "MARKDOWN"
Options include "MARKDOWN", "HTML", "ASCIIDOC", etc.
Code Comments
Control whether to include detailed comments in generated code:
INCLUDE_CODE_COMMENTS: true
When enabled, the AI will include detailed comments in generated code.
Code Block Language Tags
Control whether to include language tags in code blocks:
CODE_BLOCK_LANGUAGE_TAGS: true
When enabled, the AI will include language tags in markdown code blocks.
AI Output Format
Mode Declaration Format
Customize how mode declarations appear in responses:
MODE_DECLARATION_FORMAT: "[MODE: {mode}]"
The {mode}
placeholder will be replaced with the current mode name.
Progress Indicator Format
Customize how progress indicators appear in responses:
PROGRESS_INDICATOR_FORMAT: "[{current_step}/{total_steps}]"
The placeholders will be replaced with the current step and total steps.
Project Structure Customization
Project Type
Identify the type of project for specialized handling:
PROJECT_TYPE: "DEFAULT"
This can be used to activate specialized templates and workflows.
Custom Folder Structure
Define custom folder structures for project scaffolding:
CUSTOM_FOLDER_STRUCTURE: {
"src": ["components", "services", "utils"],
"docs": ["api", "guides"],
"tests": ["unit", "integration", "e2e"]
}
Example use case: Define standardized project structures for different project types.
Technology Presets
Define predefined technology stacks for quick selection:
TECHNOLOGY_PRESETS: {
"react-express-mongo": {
"frontend": "React with TypeScript",
"backend": "Express.js",
"database": "MongoDB",
"testing": "Jest and Cypress"
}
}
Example use case: Quickly set up common technology combinations during the START phase.
Applying Customizations
- Edit
.cursor/rules/customization.mdc
directly - Set values according to your preferences
- The framework will load these settings automatically in the next session
For dynamic changes during a session, you can use:
Please update the customization to use RESPONSE_VERBOSITY: "DETAILED"
The AI will temporarily apply this change for the current session.
Complete Example
Here's a complete customization example for a React development project:
# CursorRIPER Framework - Customization
## USER PREFERENCES
RESPONSE_VERBOSITY: "DETAILED"
CODE_STYLE_PREFERENCES: "2-space indentation, functional components, airbnb style guide"
EXPLANATION_LEVEL: "COMPREHENSIVE"
## Mode Behavior
SUGGEST_MODE_TRANSITIONS: true
AUTO_MODE_TRANSITION: false
PLAN_QUESTION_COUNT: 7
## Memory Management
AUTO_UPDATE_MEMORY: true
MEMORY_UPDATE_FREQUENCY: "AFTER_COMPLETION"
REQUIRED_MEMORY_FILES: ["projectbrief.md", "activeContext.md", "progress.md", "components.md"]
## Archive Behavior
AUTO_ARCHIVE_START_PHASE: true
BACKUP_FREQUENCY: "DAILY"
KEEP_BACKUP_COUNT: 10
## Command Aliases
CUSTOM_COMMANDS: {
"/r": "/research",
"/i": "/innovate",
"/p": "/plan",
"/e": "/execute",
"/rev": "/review",
"/c": "/create-component"
}
## Mode Extensions
RESEARCH_MODE_EXTENSIONS: ["Document React component APIs"]
PLAN_MODE_EXTENSIONS: ["Create component diagrams", "Plan prop interfaces"]
EXECUTE_MODE_EXTENSIONS: ["Generate component tests", "Create Storybook stories"]
## Project Structure
PROJECT_TYPE: "REACT"
CUSTOM_FOLDER_STRUCTURE: {
"src": ["components", "hooks", "services", "utils", "contexts", "types"],
"docs": ["components", "architecture"],
"tests": ["unit", "integration"]
}
CursorRIPER: Adaptive development, persistent intelligence.