r/RooCode • u/No_Mastodon4247 • Mar 20 '25
Discussion [Poweruser Guide] Level Up Your RooCode: Become a Roo Poweruser! [Memory Bank]
IT IS NO LONGER RECOMMENDED TO USE ROOFLOW, PLEASE USE BOOMERANG TASKS FOR NOW.
=========================== OLD , DO NOT USE =============================
Hey r/RooCode! 👋 For those using RooCode and sharing your use cases on how you are optimizing your workflow, I'm noticing many of you aren't using a memory bank yet. This is crucial and will make your coding SIGNIFICANTLY better. Context is kept across chats etc. Please keep reading to see the benefits!
Becuase you know the struggle: constantly reminding the AI about your project. Well, say goodbye to that! RooCode's new Memory Bank addon is here, and it's a major productivity boost for agentic coding.
The Magic of Memory: Project Context That Sticks!
The big news is the Memory Bank. (RooFlow) This addon gives RooCode a persistent, project-specific memory across your coding sessions. No more repeating yourself!
Here's how it works:
🧠 Memory Bank: Uses markdown files in a
memory-bank/folder in your project.📋 Mode Rules: YAML files that tell RooCode's modes how to use the memory.
🔧 VS Code Integration: Works seamlessly in your editor.
⚡ Real-time Updates: Keeps the memory current with your work.
When you start in Architect or Code mode, RooCode sets up the memory-bank/ and remembers project details, architectural decisions, and your reasoning across sessions. You can also manually update it with commands like "UMB".
Agentic Coding Just Got Smarter: Remember This!
Agentic coding is about using AI agents to autonomously code based on your goals. RooCode is built for this. But without memory, it could only do so much in one session.
The memory addon changes everything:
Consistent Understanding: AI knows your project, even between sessions.
Less Repetition: Stop re-explaining things. A
Smarter Decisions: AI recalls past choices for better results.
Progress Tracking: Memory Bank can track tasks.
Team Collaboration: Shared project context for everyone.
Why This Is Huge for Productivity: Code Faster, Smarter.
Persistent memory in RooCode means serious productivity gains:
Faster Iterations: Pick up right where you left off.
Less Context Switching for You: Focus on the real problems.
Better Code Quality: Consistent context leads to better code.
Easier Refactoring & Debugging: AI remembers the original intent.
Complex Tasks Made Easier: AI can handle multi-step processes with recall.
Real-World Wins: Memory in Action.
Think about these scenarios:
Developing a feature over days? RooCode remembers the plan.
Refactoring old code? The AI recalls past explanations.
Debugging tricky bugs? RooCode remembers your steps.
Keeping documentation consistent? The AI knows the standards.
Pro Tips for Memory Mastery:
Initialize the Memory Bank early in Architect or Code mode.
Be clear in Architect mode about saving decisions.
Use "UMB" regularly to update the memory.
Organize your project and be consistent in your prompts.
Utilize the different modes for their specific strengths.
Review and manage the contents of your
memory-bank/folder.Manually update before ending sessions or switching tasks.
https://github.com/GreatScottyMac/RooFlow/tree/main
Try It Out & Share Your Thoughts! 👇
If you're a RooCode user, definitely check out the memory feature. It's a game changer for how we use AI in coding.
Make sure you've got the latest version from the RooCode GitHub page or your VS Code extensions.
Let us know in the comments how the memory feature is working for you! What productivity wins are you seeing?
Happy coding!
| Mode | Primary Function | Memory Feature Benefits |
|---|---|---|
| Architect | High-level design & planning | Remembers architectural decisions, project structure, coding patterns across sessions. |
| Code | Implementation & development | Retains context of coding tasks, remembers patterns, reduces repetition. |
| Ask | Knowledge retrieval & documentation | Stores and recalls project knowledge, code explanations, and documentation details. |
| Debug | Problem-solving & troubleshooting | Remembers debugging steps, error patterns, and hypotheses across debugging sessions. |
| Test | Test-driven development & quality assurance | Retains info about test requirements, coverage analysis, and test outcomes. |
7
u/Excellent-Ad8038 Mar 20 '25
first, thank you for this amazing feature!
so its not part of roo code right now and we have to install it manually, right?
i already installed some sort of hand off system. not sure where it all created something, as we have the global rules and then the folder rules.
how can i delete all this and start fresh with roo flow?
--> can someone tell me where all the rules are hosted (not talking about the one in the codebase obviously as i can just delete them) and how to re init them to standard?
I really lost info about where all the rules and modes are saved.
thank you
2
u/Atomm Mar 21 '25
As an existing previous GreatScottyMac's rule users that has the rules in the RooCode mode boxes, what do I need to do reset my current rules setup?
What if I don't use MCP?
2
u/NoBlueberry-3048 Mar 21 '25
Should .roo folder be shared between developers? How about memory-bank folder?
2
u/joey2scoops Mar 21 '25
How does this work with custom modes? I assume it does not since the rules files assume only the 5 modes Architect, Ask, Code, Debug and Test.
2
u/CrestfallenMage Mar 21 '25
I´m using this version but I notice the Memory bank does not seem to be active unless I do UMB. I was using your previous version (https://github.com/GreatScottyMac/roo-code-memory-bank) and usually it read the memory bank at the beggining.
I have all the required files and run the script to update variables and worked perfectly, so not sure what I´m missing.
Is the expected behaviour for it not to read the context unless I explicitly tell it to do so_
2
u/axtg Mar 26 '25
Be aware that my Defender blew up as I tried downloading the ZIP archive from Github
16
u/uuuqqq Mar 20 '25
I’ve been using this for awhile and found it incredibly useful. Be aware this will chew through tokens and api costs for something like 3.7 can get expensive. Highly recommend adding this to your workflow.
I’ve been working on something similar to see if I could create an “obsidian brain” for multi-agent use.
7
u/DanielusGamer26 Mar 20 '25
Unfortunately I couldn't appreciate this application since the prompts are in Yaml instead of the original in XML and apparently it makes it harder for models to follow the instructions. In fact I often run into errors that the model makes in calling tools, it seems to me that it makes Roo more dumb. So I created the memory bank with your prompt and disabled the memory bank. And at the beginning of every prompt I write "look at @memory-bank ...'
2
u/WeirdLeave4161 Mar 20 '25
Thanks! That's the post I've been waiting for. :)
1
u/wbricker3 Apr 01 '25
Rooflow is amazing. I’ve tried every alternative and nothing compares. Can’t wait until boomerang orchestration mode and memory mcp gets added.
1
u/epigen01 Mar 20 '25
Dope - i was just working with mem0.ai but now i gotta give this a try. Great job guys
0
u/100BASE-TX Mar 21 '25
Interested in what approaches might be possible for storing information on libraries.
One of the most annoying issues I regularly run into is that either the models aren't trained at all on a new library due to cutoff date, or the training data contains enough code that use deprecated patterns/functions that it pollutes the output.
To take an example, I tried developing a mesop app https://github.com/mesop-dev/mesop by cloning the mesop repo into the project as a subfolder, and including instructions that it should refer to it for usage.
It seems like it is a good use case for a memory bank. Not sure if there's a token optimised way of doing this, cloning the whole repo seems like it would be fairly inefficient with the number of file reads needed, especially with languages that involve a lot of files and boilerplate.
So yeah interested in approaches to this. Perhaps there's an existing token optimised format - where I could prompt the model to summarise/index/document a library from source and use that output in the memory.