-
Notifications
You must be signed in to change notification settings - Fork 2.6k
(feat) implement .clinerules-5m type rules which are sent along on a … #1567
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
Prompts struggle with instructions like "every once in a while check if tests need to be run" with this feature you can set a rule that every 5 minutes the prompt will include a direct instruction like "CRITICAL PAUSE EVERYTHING, RUN TESTS, FIX ERRORS" |
|
This seems to be a very specific use case. I couldn't currently think of a situation during coding session in which time would be the criteria for specific actions... would love to hear other opinions on this. Also we are currently working on the rules system in general. From my understanding we wanted to introduce all changes at once. |
|
Understandable! But Im using it plenty - specifically for shoving roo out of code mode and into debug/test forcefully. Other prompts try doing something like Heres what I've been doing today: .clinerules .clinerules-3m .clinerules-10m .clinerules-30m |

🚀 Feature PR: Time-based Schedulable Rules
Distilled on discord if you want to ping me.
Overview
This PR introduces a powerful new capability to Roo: Schedulable Rules, which allows users to create rule files that are automatically applied to the system prompt at configurable time intervals. This enables dynamic, time-based context switching without requiring manual intervention.
Problem Statement
Currently, users need to manually edit
.clinerulesfiles or switch modes to adapt the behavior of Roo to different contexts or tasks. This leads to several limitations:Solution: Schedulable Rules
The feature introduces special
.clinerules-<time>files (e.g.,.clinerules-5m,.clinerules-10s) that are automatically detected, loaded, and applied at the specified intervals:.clinerules-5m= every 5 minutesKey Technical Features
User Experience Improvements
Implementation Highlights
SchedulableRulesManagerhandles all time-based logicExample Use Cases
1. Pomodoro-style Focus Sessions
2. Progressive Context Building
3. Scheduled Reminders
4. Time-based Mode Switching
Testing
Performance Considerations
Conclusion
The Schedulable Rules feature adds powerful time-based automation to Roo without complexity for users. It enables progressive context building, automated reminders, and focus sessions - all built on the familiar
.clinerulespattern that users already understand.This feature significantly enhances productivity by reducing manual context switching and enabling automated workflows based on time intervals.
Important
Introduces time-based schedulable rules in Roo using
.clinerules-<time>files, managed bySchedulableRulesManager, with full test coverage..clinerules-<time>files (e.g.,.clinerules-5m).SchedulableRulesManagerclass inschedulable-rules.tsfor managing rule execution.addCustomInstructionsincustom-instructions.tsto include schedulable rules.generatePromptandSYSTEM_PROMPTinsystem.tsto acceptSchedulableRulesManager.custom-instructions-schedulable.test.tsfor testing integration with custom instructions.schedulable-rules.test.tsfor unit testingSchedulableRulesManagerandparseTimeInterval.This description was created by
for 6908d3e. It will automatically update as commits are pushed.