50 lines
3.7 KiB
Markdown
50 lines
3.7 KiB
Markdown
# Roo Modes Enhancement Project: Current Context
|
|
|
|
This document serves as a scratchpad and progress tracker for defining and refining Roo Code modes.
|
|
|
|
## Mode Development To-Do List
|
|
|
|
### Default Modes to Enhance:
|
|
- [ ] Code Mode
|
|
- [ ] Ask Mode
|
|
- [ ] Debug Mode
|
|
- [ ] Orchestrator Mode
|
|
|
|
### New Custom Modes to Create:
|
|
- [ ] QA Tester Mode
|
|
- [ ] Enhanced Planning Mode
|
|
- [ ] Deep Research Mode
|
|
- [ ] Deep Thinker Mode
|
|
- [ ] Code Reviewer Mode
|
|
- [ ] ReScript Master Mode
|
|
- [ ] Haskell God Mode
|
|
|
|
## Initial Analysis & Findings from `roo.md`
|
|
|
|
* **Core Customization Mechanisms:**
|
|
* **Custom Modes:** Defined via `slug`, `name`, `roleDefinition`, `groups` (tool access + `fileRegex`), `whenToUse`, `customInstructions`. Can be global (`custom_modes.json`) or project-specific (`.roomodes`).
|
|
* **Custom Instructions:** Applied globally, per-workspace, or per-mode. File-based instructions (`.roo/rules/`, `.roo/rules-{mode-slug}/`, `.roorules`, `.roorules-{mode-slug}`) offer structured ways to manage these. Precedence matters.
|
|
* **System Prompt Override (`.roo/system-prompt-{mode-slug}`):** Advanced "footgun" feature for complete control over a mode's system prompt.
|
|
* **Key Features to Leverage for Modes:**
|
|
* **Tools:** Access controlled by `groups` in mode definition. Understanding available tools ([`read_file`](roo.md:915), [`search_files`](roo.md:921), [`list_files`](roo.md:927), [`list_code_definition_names`](roo.md:933), [`apply_diff`](roo.md:941), [`insert_content`](roo.md:947), [`search_and_replace`](roo.md:954), [`write_to_file`](roo.md:966), [`execute_command`](roo.md:984), [`browser_action`](roo.md:973), MCP tools like [`use_mcp_tool`](roo.md:991) and [`access_mcp_resource`](roo.md:998), workflow tools like [`ask_followup_question`](roo.md:1008), [`attempt_completion`](roo.md:1014), [`switch_mode`](roo.md:1022), [`new_task`](roo.md:1028)) is crucial.
|
|
* **MCP (Model Context Protocol):** Essential for modes requiring external data or actions (Deep Research, ReScript Master, Haskell God). Servers like Context7 and Playwright are mentioned. Roo can also create MCP servers ([`roo.md:409`](roo.md:409)).
|
|
* **Context Mentions (`@`):** Useful for providing specific context to modes (e.g., `@problems`, `@/path/to/file.ts`).
|
|
* **Shell Integration:** For modes that need to run commands.
|
|
* **Sticky Models:** Each mode remembers its last used AI model.
|
|
* **Boomerang Tasks (`new_task` tool):** Orchestrator mode uses this to delegate. Could be relevant for complex modes breaking down their own work.
|
|
* **User's Specific Mode Requirements (Summary):**
|
|
* **QA Tester:** Memory bank, code/test case analysis, test execution/writing.
|
|
* **Enhanced Planning:** Triggered by repeated failures; CoT, ToT, research, step-by-step planning.
|
|
* **Deep Research:** In-depth research using MCPs (Context7, Playwright).
|
|
* **Deep Thinker:** Thought-oriented analysis, precursor to Enhanced Planning.
|
|
* **Code Reviewer:** Understand project (memory bank), iterative file review, `review.md` for notes.
|
|
* **ReScript Master:** Assist with large ReScript monorepo, grep/code search, use `rescript-llm-full.txt`.
|
|
* **Haskell God:** Assist with large Haskell repo, robust file reading, grep search.
|
|
|
|
## General Notes & Research Topics
|
|
* Prompt engineering best practices for AI assistants/agents.
|
|
* Examples of system prompts for similar specialized AI roles (e.g., from GitHub, articles).
|
|
* How to effectively use "HIGHEST PRIORITY" or similar emphasis in prompts.
|
|
* Optimal `fileRegex` patterns for different modes.
|
|
* Interaction patterns between modes (e.g., Deep Thinker -> Enhanced Planning).
|
|
* Sequential thinking MCP tool usage for planning/analysis modes.
|