Skip to content

Commit edc295b

Browse files
Enhance documentation and update release notes for Roo Code (#122)
* Enhance documentation and update release notes for Roo Code - Updated custom modes documentation to clarify the use of `.roo/rules-{mode-slug}/` directories for custom instructions, emphasizing the new directory-based method over the older `.roorules-{mode-slug}` files. - Improved MCP documentation with detailed STDIO and SSE configuration parameters. - Revised read-file tool documentation to clarify auto-truncation behavior and updated examples for reading large text files. - Updated update notes for versions 3.11.8, 3.11.9, and 3.11.10, including bug fixes, improvements, and new features. - Standardized the section titles in various update notes from "Improvements" to "General and QOL Improvements" for consistency. - Added new images for API configuration profiles. * docs: update rate limits documentation and remove obsolete boomerang tasks content * docs: restore and enhance Browser Use documentation with detailed usage and configuration settings
1 parent e67c98c commit edc295b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+283
-134
lines changed

.roomodes

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,18 @@
1818
"roleDefinition": "**Persona: Roo Code Expert Scriptwriter**\n\n**Background:**\nA professional scriptwriter specializing in creating clear, engaging, and informative scripts tailored specifically for YouTube, Reddit tutorials, and documentation videos focused on Roo Code. With a deep understanding of Roo Code’s functionalities and its practical applications, this expert excels at translating complex coding concepts into straightforward, easy-to-follow explanations.\n\n**Communication Style:**\n- Professional yet friendly, fostering trust and approachability.\n- Concise and structured, using precise language to ensure clarity.\n- Logical flow, breaking down complex topics into manageable steps.\n- Engaging tone, designed to maintain viewer interest throughout the video.\n\n**Specialization:**\n- Roo Code’s features and updates\n- Common troubleshooting techniques\n- Step-by-step tutorials for beginners to advanced users\n- Practical use-cases and real-world examples\n\n**Approach:**\n- Start by clearly stating the objective of the script.\n- Provide concise explanations with relatable analogies when helpful.\n- Anticipate common questions and proactively address them.\n- Conclude with actionable insights or suggested next steps for users.\n\n**Tone and Personality:**\n- Knowledgeable and authoritative without being intimidating.\n- Patient and encouraging, ensuring viewers feel capable and supported.\n- Enthusiastic about Roo Code, making viewers excited about learning and implementing the software.\n\n**Goal:**\nTo empower viewers by making Roo Code accessible and easy to master, enhancing their confidence and competence through expert guidance and clear, compelling content.",
1919
"groups": [],
2020
"source": "project"
21+
},
22+
{
23+
"slug": "release-notes-writer",
24+
"name": "Release Notes Writer",
25+
"roleDefinition": "You are a technical writer specializing in creating and maintaining release notes for the Roo Code VS Code extension, specifically within the `docs/update-notes` directory. Your focus is on accuracy, consistency, and clarity, ensuring users can easily understand recent changes. You adhere strictly to the project's release note standards.",
26+
"customInstructions": "**Release Notes (`docs/update-notes`) Standards:**\n\nWhen creating or updating release notes (`.md` files within the `docs/update-notes` directory), adhere to the following standards:\n\n1. **File Naming:**\n * **Patch Releases:** Use the full version number (e.g., `v3.3.1.md`). These files should detail specific bug fixes or minor changes since the last patch or minor release.\n * **Minor/Major Releases:** Use the major.minor version number (e.g., `v3.11.md`). These files should summarize all changes included in that version cycle, including features, improvements, and bug fixes from all associated patch releases (e.g., `v3.11.0`, `v3.11.1`, `v3.11.2`, etc.).\n2. **File Structure (`vX.Y.Z.md` or `vX.Y.md`):**\n * **Title:** The H1 title must follow the format: `# Roo Code X.Y.Z Release Notes (YYYY-MM-DD)` or `# Roo Code X.Y Release Notes (YYYY-MM-DD)`. Ensure the date reflects the release date and is always included.\n * **Summary Sentence:** Include a brief sentence below the title summarizing the key changes in the release. For minor/major releases, this should cover the scope of the entire version cycle.\n * **Section Headings:** Use consistent `##` headings. Recommended headings include:\n * `## Highlights` (for major features or changes, especially in minor/major releases)\n * `## Bug Fixes`\n * `## Improvements` (can include performance, UX, or other enhancements)\n * `## Provider Updates` (for changes related to specific integrations like Cloud providers)\n * `## Documentation Updates`\n * *(Avoid overly generic terms like \"Changes\" or \"Updates\" as section headers)*\n3. **`index.md` File (Main Index):**\n * The main `index.md` file in the `docs/update-notes` directory should list all release versions chronologically (newest first).\n * Each entry should link to the corresponding release note file (e.g., `v3.11.md` for the summary page, `v3.3.1.md` for a specific patch). Use absolute paths from `/docs/` and omit the `.md` extension (e.g., `[3.11.8](/update-notes/v3.11.8)`).\n * Ensure the date `(YYYY-MM-DD)` is included next to each version link.\n4. **Contributor Acknowledgments:** If acknowledging contributors for specific changes (e.g., bug fixes), do so consistently. Add `(thanks username!)` at the end of the relevant bullet point, omitting the `@` symbol.\n5. **Content Style:** Maintain a clear, concise, and informative writing style. Use Markdown formatting correctly (e.g., use backticks `` for code or version numbers). Ensure consistent terminology (e.g., \"release notes\" vs. \"changelog\").\n6. **Sidebar Update (`sidebars.ts`):**\n * When a new **minor release summary page** (e.g., `vX.Y.md`) is created, you **must** update the `sidebars.ts` file.\n * Add the Docusaurus ID for the new page (e.g., `'update-notes/vX.Y'`) to the `items` array within the 'Update Notes' category.",
27+
"groups": [
28+
"read",
29+
"command",
30+
"edit"
31+
],
32+
"source": "project"
2133
}
2234
]
2335
}

docs/advanced-usage/rate-limits-costs.md

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Rate Limits and Costs
22

3-
Understanding and managing API usage is crucial for a smooth and cost-effective experience with Roo Code. This section explains how to track your token usage, costs, and how to configure rate limits.
3+
Understanding and managing API usage is crucial for a smooth and cost-effective experience with Roo Code. This section explains how to track your token usage and costs. Rate limits, which default to 0 (disabled) and typically don't need adjustment, are now configured per profile; see the [API Configuration Profiles](/features/api-configuration-profiles#creating-a-profile) documentation for details on how to set them if needed.
44

55
## Token Usage
66

7-
Roo Code interacts with AI models using tokens. Tokens are essentially pieces of words. The number of tokens used in a request and response affects both the processing time and the cost.
7+
Roo Code interacts with AI models using tokens. Tokens are essentially pieces of words. The number of tokens used in a request and response affects both the processing time and the cost.
88

99
* **Input Tokens:** These are the tokens in your prompt, including the system prompt, your instructions, and any context provided (e.g., file contents).
1010
* **Output Tokens:** These are the tokens generated by the AI model in its response.
@@ -13,38 +13,23 @@ You can see the number of input and output tokens used for each interaction in t
1313

1414
## Cost Calculation
1515

16-
Most AI providers charge based on the number of tokens used. Pricing varies depending on the provider and the specific model.
16+
Most AI providers charge based on the number of tokens used. Pricing varies depending on the provider and the specific model.
1717

18-
Roo Code automatically calculates the estimated cost of each API request based on the configured model's pricing. This cost is displayed in the chat history, next to the token usage.
18+
Roo Code automatically calculates the estimated cost of each API request based on the configured model's pricing. This cost is displayed in the chat history, next to the token usage.
1919

2020
**Note:**
2121

22-
* The cost calculation is an *estimate*. The actual cost may vary slightly depending on the provider's billing practices.
23-
* Some providers may offer free tiers or credits. Check your provider's documentation for details.
22+
* The cost calculation is an *estimate*. The actual cost may vary slightly depending on the provider's billing practices.
23+
* Some providers may offer free tiers or credits. Check your provider's documentation for details.
2424
* Some providers offer prompt caching which greatly lowers cost.
2525

26-
## Configuring Rate Limits
27-
28-
To prevent accidental overuse of the API and to help you manage costs, Roo Code allows you to set a rate limit. The rate limit specifies the minimum time (in seconds) between API requests.
29-
30-
**How to configure:**
31-
32-
1. Open the Roo Code settings (<Codicon name="rocket" /> icon in the top right corner).
33-
2. Go to the "Advanced Settings" section.
34-
3. Find the "Rate Limit (seconds)" setting.
35-
4. Enter the desired delay in seconds. A value of 0 disables rate limiting.
36-
37-
**Example:**
38-
39-
If you set the rate limit to 10 seconds, Roo Code will wait at least 10 seconds after one API request completes before sending the next one.
40-
4126
## Tips for Optimizing Token Usage
4227

43-
* **Be Concise:** Use clear and concise language in your prompts. Avoid unnecessary words or details.
44-
* **Provide Only Relevant Context:** Use context mentions (`@file.ts`, `@folder/`) selectively. Only include the files that are directly relevant to the task.
28+
* **Be Concise:** Use clear and concise language in your prompts. Avoid unnecessary words or details.
29+
* **Provide Only Relevant Context:** Use context mentions (`@file.ts`, `@folder/`) selectively. Only include the files that are directly relevant to the task.
4530
* **Break Down Tasks:** Divide large tasks into smaller, more focused sub-tasks.
46-
* **Use Custom Instructions:** Provide custom instructions to guide Roo Code's behavior and reduce the need for lengthy explanations in each prompt.
47-
* **Choose the Right Model:** Some models are more cost-effective than others. Consider using a smaller, faster model for tasks that don't require the full power of a larger model.
31+
* **Use Custom Instructions:** Provide custom instructions to guide Roo Code's behavior and reduce the need for lengthy explanations in each prompt.
32+
* **Choose the Right Model:** Some models are more cost-effective than others. Consider using a smaller, faster model for tasks that don't require the full power of a larger model.
4833
* **Use Modes:** Different modes can access different tools, for example `Architect` can't modify code, which makes it a safe choice when analyzing a complex codebase, without worrying about accidentally allowing expensive operations.
4934
* **Disable MCP If Not Used:** If you're not using MCP (Model Context Protocol) features, consider [disabling it in the MCP settings](/features/mcp/using-mcp-in-roo#enabling-or-disabling-mcp-server-creation) to significantly reduce the size of the system prompt and save tokens.
5035

docs/features/api-configuration-profiles.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ Configuration profiles can have their own:
1414
- [Temperature settings](/features/model-temperature) for controlling response randomness
1515
- Thinking budgets
1616
- Provider-specific settings
17+
- Rate limit settings
1718

1819
Note that available settings vary by provider and model. Each provider offers different configuration options, and even within the same provider, different models may support different parameter ranges or features.
1920

@@ -38,10 +39,14 @@ Note that available settings vary by provider and model. Each provider offers di
3839
- Choose a model
3940

4041
<img src="/img/api-configuration-profiles/api-configuration-profiles-8.png" alt="Model selection interface" width="550" />
41-
- Adjust model parameters
42-
43-
<img src="/img/api-configuration-profiles/api-configuration-profiles-5.png" alt="Model parameter adjustment controls" width="550" />
42+
- Configure the **Rate Limit** for this profile:
43+
- **Default is 0 (disabled), which is suitable for most users.** If needed, you can set a minimum time (in seconds) between API requests *for this profile* to help manage costs or avoid provider rate limits.
44+
- A value of 0 disables rate limiting (default).
45+
- Requests using other profiles follow their own rate limits.
4446

47+
<img src="/img/api-configuration-profiles/api-configuration-profiles-12.png" alt="Rate limit slider control within API profile settings" width="550" />
48+
- Adjust model parameters (like [temperature](/features/model-temperature))
49+
4550
### Switching Profiles
4651

4752
Switch profiles in two ways:
@@ -86,5 +91,5 @@ API keys are stored securely in VSCode's Secret Storage and are never exposed in
8691
- Works with [custom modes](/features/custom-modes) you create
8792
- Integrates with [local models](/advanced-usage/local-models) for offline work
8893
- Supports [temperature settings](/features/model-temperature) per mode
89-
- Enhances cost management with [rate limits and usage tracking](/advanced-usage/rate-limits-costs)
94+
- Supports per-profile rate limits (configured here) and general [usage tracking/cost info](/advanced-usage/rate-limits-costs)
9095

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,21 @@ sidebar_label: 'Boomerang Tasks'
66

77
Boomerang Tasks (also known as subtasks or task orchestration) allow you to break down complex projects into smaller, manageable pieces. Think of it like delegating parts of your work to specialized assistants. Each subtask runs in its own context, often using a different Roo Code mode tailored for that specific job (like [`code`](/basic-usage/using-modes#code-mode-default), [`architect`](/basic-usage/using-modes#architect-mode), or [`debug`](/basic-usage/using-modes#debug-mode)).
88

9-
<video width="100%" controls>
10-
<source src="/img/boomerang-tasks/Roo-Code-Boomerang-Tasks.mp4#t=0.001" type="video/mp4"></source>
11-
Your browser does not support the video tag.
12-
</video>
9+
<div style={{ position: 'relative', paddingBottom: '56.25%', height: 0, overflow: 'hidden' }}>
10+
<iframe
11+
src="https://www.youtube.com/embed/RX862U09fnE"
12+
style={{
13+
position: 'absolute',
14+
top: 0,
15+
left: 0,
16+
width: '100%',
17+
height: '100%',
18+
}}
19+
frameBorder="0"
20+
allow="autoplay; encrypted-media"
21+
allowFullScreen
22+
></iframe>
23+
</div>
1324

1425
:::info Boomerang Mode is a Custom Mode
1526
The `Boomerang Mode` mentioned here is not a built-in mode but a custom mode you can create yourself. It's specifically designed to orchestrate workflows by breaking down tasks and delegating them to other modes. See the [Setting Up Boomerang Mode](#setting-up-boomerang-mode) section below for instructions.
Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,23 @@
22

33
Roo Code provides sophisticated browser automation capabilities that let you interact with websites directly from VS Code. This feature enables testing web applications, automating browser tasks, and capturing screenshots without leaving your development environment.
44

5-
<video width="100%" controls>
6-
<source src="/img/browser-use/Roo-Code-Browser-Use.mp4#t=0.001" type="video/mp4"></source>
7-
Your browser does not support the video tag.
8-
</video>
5+
6+
7+
<div style={{ position: 'relative', paddingBottom: '56.25%', height: 0, overflow: 'hidden' }}>
8+
<iframe
9+
src="https://www.youtube.com/embed/SJae206swxA"
10+
style={{
11+
position: 'absolute',
12+
top: 0,
13+
left: 0,
14+
width: '100%',
15+
height: '100%',
16+
}}
17+
frameBorder="0"
18+
allow="autoplay; encrypted-media"
19+
allowFullScreen
20+
></iframe>
21+
</div>
922

1023
:::info Model Support Required
1124
Browser Use within Roo Code requires the use of Claude Sonnet 3.5 or 3.7

0 commit comments

Comments
 (0)