-
Notifications
You must be signed in to change notification settings - Fork 3k
Description
Problem (one or two sentences)
Summary
Request to restore the system-prompt-{mode-slug} file override mechanism that was removed in recent versions, or provide an alternative way to completely replace the system prompt for custom modes.
Context (who is affected and when)
Background
In previous versions of Roo Code, users could create system-prompt-{mode-slug} files in the .roo/ directory to completely override the system prompt for custom modes. This functionality has been removed in recent updates, replaced with roleDefinition and customInstructions which only append to the base system prompt rather than replacing it.
Use Case
I have developed a sophisticated multi-mode academic research workflow with 4 custom modes:
- 🕯️ Disputer (Academic Dialogue)
- 🏛️ Weaver (Academic Writing)
- 🌫️ Lector (Literature Review)
- 🏔️ Polisher (Academic Refinement)
Each mode has a carefully crafted system prompt (1,300-2,300 lines) that defines:
- Specific persona and behavioral patterns
- Domain-specific methodologies (legal research methods)
- Complex interaction protocols (e.g., Disputatio dialogue format)
- Strict output formatting rules
The current append-only mechanism causes issues:
- Prompt pollution: The base system prompt conflicts with my custom instructions
- Behavioral inconsistency: AI receives mixed signals from base + custom prompts
- Loss of control: Cannot ensure AI follows only my carefully designed instructions
- Token waste: Base prompt consumes tokens unnecessarily
Why This Matters
Many advanced users (researchers, specialized domains) need complete control over the system prompt to:
- Implement domain-specific AI behaviors
- Ensure consistency with established workflows
- Maintain precise control over AI output format
- Avoid conflicts between base and custom instructions
Desired behavior (conceptual, not technical)
Proposed Solutions
Option 1: Restore system-prompt-{mode-slug} Override (Preferred)
Bring back the ability to completely replace the system prompt via files in .roo/system-prompt-{mode-slug}
Option 2: Add Configuration Flag
Add a configuration option in .roomodes:
customModes:
- slug: my-mode
name: My Mode
overrideSystemPrompt: true # New flag
roleDefinition: [complete custom prompt]Option 3: Separate "Advanced Mode" Setting
Add a global setting: "roo.advancedMode.allowSystemPromptOverride": true
- Default: false (current behavior)
- When enabled:
roleDefinitioncompletely replaces base prompt
Impact
- Backward compatibility: Users who don't need this feature are unaffected
- Power users: Regain full control over AI behavior
- Use cases: Academic research, specialized domains, complex workflows
Current Workaround
I've had to rollback to an older version of Roo Code, which:
- ❌ Misses new features and bug fixes
- ❌ May have compatibility issues with future VS Code updates
- ❌ Requires manual version management
Community Support
I believe many advanced users would benefit from this feature. I'm happy to:
- Provide detailed documentation of my use case
- Test beta implementations
- Contribute to documentation
Related
This is similar to how Cursor handles .cursorrules - while it appends to base prompt, the priority is high enough that it effectively overrides base behavior in most cases.
Thank you for considering this request! Roo Code is an excellent tool, and restoring this capability would make it perfect for advanced, specialized workflows.
Constraints / preferences (optional)
No response
Request checklist
- I've searched existing Issues and Discussions for duplicates
- This describes a specific problem with clear context and impact
Roo Code Task Links (optional)
No response
Acceptance criteria (optional)
No response
Proposed approach (optional)
No response
Trade-offs / risks (optional)
No response