Welcome to the Roo Commander mode set! This repository provides a sophisticated collection of custom modes for Roo Code designed to manage website development projects using a structured, multi-agent approach.
Think of it like having a virtual, specialized software development team right inside your editor, orchestrated by the π Roo Commander.
Download the JSON file roo-commander-v4.json
If you want to remove any modes from the file use the Mode Splitter
Download the JSON file roo-commander-v3.json
If you want to remove any modes from the file use the Mode Splitter
Learn about giving the file access rules more freedoom File Access Permissions
Instead of relying on a single AI mode for all tasks, this system breaks down development into specialized roles:
- Orchestration (Commander): Understands high-level goals and delegates tasks.
- Management (PM, Architect, DevOps): Plans, designs, and coordinates specific domains.
- Specialists (Frontend, API, DB, React, etc.): Execute specific implementation tasks.
- Support (Secretary, Onboarding, etc.): Handle crucial auxiliary functions like context gathering and logging.
Communication and context are primarily managed through a structured Project Journal and standardized task delegation/completion protocols.
- Structured Workflow: Brings organization and process to complex development tasks.
- Specialized Expertise: Leverages modes specifically tuned for different roles (frontend, backend, database, testing, etc.).
- Scalable Logging: Uses a structured file system (
project_journal) for detailed, organized logging of decisions, actions, and technical notes, preventing context overload in single files. - Improved Context Management: Creates a traceable history of the project, making it easier for the AI (and you!) to understand progress and pick up tasks mid-stream.
- Modularity: Use the full suite or select the modes most relevant to your project needs and tech stack.
- π Roo Commander: The "CEO". Your primary interaction point. Understands goals, delegates to managers/specialists, monitors progress, makes high-level decisions.
- π Project Manager: Breaks down goals into tasks, manages timelines, assigns work to specialists, tracks progress via the journal.
- ποΈ Technical Architect: Designs system architecture, selects technology, documents key technical decisions.
- βοΈ DevOps Manager: Oversees CI/CD, infrastructure setup, deployment strategies, and operational concerns. Delegates to CI/CD and Infrastructure specialists.
- π₯οΈ/βοΈ/ποΈ Specialists: Focused roles for execution (e.g.,
frontend-developer,api-developer,database-specialist,react-specialist,tailwind-specialist,php-laravel-developer,supabase-developer, etc.). They receive tasks, implement them, and log their work. - π οΈ Support & Task-Specific Roles:
π Secretary: Crucial role. Solely responsible for writing/appending validated content to theproject_journalbased on instructions from other modes. Enforces logging structure.π¦ Project Onboarding: Handles the initial setup for new projects or context gathering for existing ones.π Discovery Agent: Interacts with the user to gather detailed requirements.β¨ Project Initializer: Sets up the basic directory structure and config files for new projects.π§ Git Manager: Handles Git operations (branching, merging).π Bug Fixer,π Code Reviewer,π Integration Tester,β‘ Performance Optimizer,β»οΈ Refactor Specialist,βΏ Accessibility Specialist,π Security Specialist: Address specific quality, maintenance, and testing aspects.π§© Complex Problem Solver,π Research & Context Builder,π€ Second Opinion,βοΈ Technical Writer: Provide analysis, research, alternative views, and documentation drafting.
- 1οΈβ£ Initiation: You interact with π Roo Commander, stating your goal (new project or task in existing one). Commander delegates to
π¦ Project Onboarding. - 2οΈβ£ Onboarding & Planning:
π¦ Project Onboardingclarifies intent, gathers initial context (or initializes), and reports back. Commander then delegates planning tasks toπ Discovery Agent(for requirements),ποΈ Technical Architect(for design), andπ Project Manager(for task breakdown/WBS). - 3οΈβ£ Execution:
π Project Manager(orπ Roo Commanderfor initial planning tasks) delegates specific implementation tasks to the relevant Specialist modes (e.g.,π₯οΈ Frontend Developer,βοΈ API Developer). - 4οΈβ£ Logging & Completion: Each Specialist performs its task, logs detailed technical notes by delegating the write operation to
π Secretary, and reports completion back usingattempt_completion(referencing the saved notes path). - 5οΈβ£ Coordination & Iteration: Managers/Commander review completion reports and notes, coordinate dependent tasks, handle blockers (potentially using
π§© Complex Problem Solver), and delegate further work. - 6οΈβ£ Finalization: Once all major tasks are done,
π Roo Commanderreviews the overall outcome and presents it to you.
This is the cornerstone of context management. All significant actions, decisions, and technical details are logged here.
Structure:
project_journal/
βββ planning/ # Active high-level plans (requirements.md, architecture.md, project_plan.md)
βββ formal_docs/ # Finalized docs (API specs, Design specs, Audit reports)
β βββ adr/ # Architectural Decision Records (Optional)
βββ wbs/ # Work Breakdown Structures (Optional)
βββ decision_log/ # Critical cross-cutting decisions (Timestamped files)
β βββ YYYY-MM-DD_HH-MM-SS_topic.md
βββ technical_notes/ # Detailed working notes per mode & date
βββ roo-commander/
β βββ YYYY-MM-DD/
β βββ YYYY-MM-DD_HH-MM-SS_roo-commander_topic.md
βββ project-manager/
β βββ YYYY-MM-DD/
β βββ YYYY-MM-DD_HH-MM-SS_project-manager_topic.md
βββ frontend-developer/
β βββ YYYY-MM-DD/
β βββ YYYY-MM-DD_HH-MM-SS_frontend-developer_topic.md
βββ ... (folder for each mode)
Key Points:
- Timestamped Notes: Each mode logs its work in new, timestamped files within its dated folder under
technical_notes. - Secretary Role: The
π Secretarymode is the only mode directly writing these notes, ensuring consistency and enforcing structure (based on instructions from other modes). - Context References: Modes are instructed to reference relevant files (requirements, architecture, prior notes) when delegating tasks and logging their own notes.
- Completion Reports: Modes reference the path(s) to their saved notes/docs when reporting completion (
attempt_completion).
- Installation:
- Download the
custom_modes.jsonfile from this repository. - Place it in your Roo Code configuration directory (Global modes) OR rename it to
.roomodesand place it in the root of your specific project directory (Project-specific modes). Refer to the Roo Code documentation for exact locations.
- Download the
- Starting a Project:
- Activate the π Roo Commander mode in Roo Code.
- Give it your high-level goal. Examples:
"Start a new project to build a blog platform using React and Supabase.""I need help with an existing project located at ./my-website. I want to add user authentication."
- The Commander will initiate the workflow, likely starting with the
π¦ Project Onboardingmode.
- Your Role During Workflow:
- Primary Interaction: You mainly interact with the
π Roo Commanderfor high-level direction and status updates. - Approvals: You will need to approve delegated tasks (
new_task) initiated by the modes (unless auto-approval is configured). - Review Completions: Pay attention to
attempt_completionmessages, especially the referenced paths in theproject_journalto understand what was done. - Clarifications: Modes (especially
π Discovery Agent) may ask you clarifying questions usingask_followup_question. - Monitoring: You can observe the
project_journaldirectory being populated with notes and documents.
- Primary Interaction: You mainly interact with the
(A selection of key roles)
| Mode | Role | Key Function |
|---|---|---|
| Orchestration | ||
| π Roo Commander | CEO / Orchestrator | Overall strategy, high-level delegation, coordination |
| Management | ||
| π Project Manager | Project Management | Task breakdown, tracking, specialist assignment |
| ποΈ Technical Architect | Architecture Design | System design, technology selection, ADRs |
| βοΈ DevOps Manager | Operations Management | CI/CD, Infrastructure, Deployment Strategy |
| Core Web Specialists | ||
| π₯οΈ Frontend Developer | Frontend Implementation | UI coding, client-side logic, framework usage |
| βοΈ API Developer | Backend API Implementation | API design, endpoint coding, security |
| ποΈ Database Specialist | Database Management | Schema design, query optimization, migrations |
| π¨ UI Designer | User Interface Design | Wireframes, mockups, prototypes, style guides |
| Framework Specialists | ||
| βοΈ React Specialist | React Implementation | Component architecture, state, hooks, performance |
| π¨ Material UI Specialist | Material UI Integration | MUI components, theming, customization |
| π¨ Tailwind CSS Specialist | Tailwind Implementation | Utility classes, config, optimization |
| π PHP/Laravel Developer | PHP/Laravel Backend | Eloquent, Blade, routing, Artisan |
| π Supabase Developer | Supabase Backend | Auth, Postgres, Edge Functions, Storage |
| DevOps Specialists | ||
| π CI/CD Specialist | CI/CD Pipelines | Automation, build/test/deploy configuration |
| ποΈ Infrastructure Specialist | Infrastructure Mgmt | IaC (Terraform, etc.), cloud/on-prem setup, networking |
| π³ Containerization Dev | Containerization | Dockerfiles, K8s/Compose manifests, security |
| QA & Maintenance | ||
| π Bug Fixer | Bug Resolution | Diagnosis, fixing, regression testing |
| π Code Reviewer | Code Quality Assurance | Reviewing standards, bugs, security |
| π Integration Tester | Component Interaction | Testing integration points between system parts |
| β‘ Performance Optimizer | Performance Tuning | Profiling, bottleneck analysis, optimization |
| β»οΈ Refactor Specialist | Code Improvement | Improving structure, readability, maintainability |
| βΏ Accessibility Specialist | Accessibility Assurance | WCAG compliance, testing, accessible design |
| π Security Specialist | Security Assurance | Vulnerability assessment, controls, incident response |
| Support & Utility | ||
| π¦ Project Onboarding | Project Setup/Context | New project init or existing project discovery |
| π Discovery Agent | Requirements Gathering | User interaction to define project scope |
| β¨ Project Initializer | Project Scaffolding | Creating initial directories and config files |
| π§ Git Manager | Version Control | Branching, merging, tagging |
| π§© Complex Problem Solver | Advanced Analysis | Deep reasoning, solution evaluation |
| π Research Context Builder | Information Gathering | Web/repo searching, context synthesis |
| π€ Second Opinion | Alternative Perspective | Reviewing proposed solutions/designs |
| βοΈ Technical Writer | Documentation Creation | Writing user guides, API docs, etc. |
| π Secretary | Journal Logging | Writes notes/docs to project_journal via delegation |
- Mode Selection: Feel free to remove modes you don't need for your specific stack or workflow by deleting their corresponding objects from the
customModesarray in the JSON file. - Instructions: You can tweak the
customInstructionsfor any mode to better suit your team's specific processes or standards. - File Permissions: Adjust the
fileRegexpatterns if modes need access to different file types. - AI Model: Add the
apiConfigurationfield to any mode if you want to specify a particular LLM or parameters (e.g., use a faster model for thesecretary).
- Complexity: This is an advanced workflow. It requires the underlying LLM to follow complex instructions and protocols reliably.
- LLM Dependence: The effectiveness heavily depends on the chosen LLM's capabilities (reasoning, planning, instruction following, tool use).
- Error Handling: While designed for structure, modes can still make mistakes or fail tasks. User oversight and intervention may be necessary.
- Token Usage: The detailed instructions and logging can consume more tokens than simpler prompts. Consider this based on your usage patterns and budget.
apiConfigurationcan help manage this. - Dynamic Path Generation: Modes delegating writes to the
secretaryneed to be able to determine the current date/time and construct the correct file path dynamically. Ensure your chosen LLM can handle this reliably within the Roo Code environment.
Good luck commanding your virtual Roo Code team! Let us know how it works for you.