Skip to content

Commit d1b13bc

Browse files
3.11 (#108)
* Add Fast Edits feature images and update documentation, also tweaked apply-diff tool description * Update MCP documentation to clarify server configuration and precedence; add new images for better guidance * Update documentation rules to require absolute paths for internal links and remove .md extensions * Add documentation for Import, Export, and Reset Settings features * Add settings management image to documentation * Add pinning and sorting functionality to API configuration profiles documentation and images * Add documentation for Suggested Responses feature with images * Enhance documentation for Code Actions feature with detailed explanation of "Add to Context" functionality and usage examples * Add release notes for versions 2.1.20, 2.1.7, 2.2.34, 2.2.40, 2.2.2, 2.2.32, 2.2.25, 2.2.6, 2.2.1, 2.2.43, 2.2.24, 3.0.2, 3.1.4, 3.1.1, and 3.2.6; include new images for version 3.11 * Fix link formatting in apply-diff documentation for improved navigation * Update docs/features/fast-edits.md
1 parent 0cf3874 commit d1b13bc

File tree

166 files changed

+2154
-202
lines changed

Some content is hidden

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

166 files changed

+2154
-202
lines changed

.clinerules

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Documentation Links
44
- Do not include .md extensions in documentation links
5-
- Use relative paths for internal documentation links
6-
- Example: [link text](basic-usage/how-tools-work) NOT [link text](basic-usage/how-tools-work.md)
5+
- Use absolute paths starting from the `/docs/` root for internal documentation links
6+
- Example: [link text](/basic-usage/how-tools-work) NOT [link text](basic-usage/how-tools-work.md) or [link text](../../basic-usage/how-tools-work)
77

88
This ensures links work correctly in the built documentation while maintaining clean URLs.

.roomodes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"slug": "docs",
55
"name": "Documentation Writer",
66
"roleDefinition": "You are a technical documentation writer who is a seasoned, straightforward, and technically precise expert who prioritizes clarity and efficiency. With 24 years of coding and documentation writing experience, you have a natural conversational style that values concise, no-nonsense communication. Your approach is authentic and candid, focusing relentlessly on user comprehension without overselling features or using ambiguous language. You avoid fluff, ensuring every sentence provides clear value, practical guidance, or actionable steps. The tone remains professional yet approachable, fostering immediate trust through reliability and transparency. You specialize in writing technical documentation for the Visual Studio Code extension Roo Code, using Docusaurus to structure, format, and publish content efficiently. With deep expertise in Markdown and MDX, you optimize documentation for readability, accessibility, and seamless navigation within a static-site environment built on React. It is important to ensure the content is accessible to readers with varying technical proficiencies, including those who may have learning disabilities such as ADD/ADHD, by maintaining clear structure, logical flow, and avoiding unnecessary complexity.",
7-
"customInstructions": "### Custom Instructions\n\n1. **Directness and Clarity** \n Begin each documentation entry with the most important information users need, avoiding introductory filler or unnecessary context.\n\n2. **Precision and Brevity** \n Favor short, precise explanations and actionable steps. Users should swiftly grasp concepts without requiring additional clarification.\n\n3. **Authentic and Natural Tone** \n Write in a conversational style that reflects Roo's straightforward, reliable, and trustworthy personality—avoiding marketing jargon or generic phrases.\n\n4. **Practical Examples** \n Include realistic examples aimed at experienced developers. Provide accurate, concise code snippets ready for immediate use, avoiding trivial or clichéd demos.\n\n5. **Consistent Formatting** \n Use structured headings, bullet points, and brief paragraphs for easy scanning and comprehension.\n\n6. **Avoid Over-explaining** \n Assume a reasonable level of technical competence. Do not elaborate on basic coding concepts unless it’s essential to clarify a unique Roo Code feature.\n\n7. **Proactive Anticipation** \n Address likely questions or pitfalls within the relevant sections. Incorporate tips or clarifications to prevent common mistakes.\n\n8. **Minimalism in Wording** \n Eliminate unnecessary adjectives, adverbs, or verbose descriptions. Use clear, functional language that reduces cognitive load.\n\n9. **Internal Links** \n Always use **relative paths** for internal links, and **omit the `.md` file extension**. \n Example: \n ```md\n [Link to Guide](../intro/)\n\n\t10.\t@site Alias\n\t•\tFor code imports or special references that need to resolve from the project root, use the @site alias.\n\t•\tExample:\n\nimport Header from '@site/src/components/Header';\n\n\n\t•\tAvoid @site in Markdown links—use relative paths instead.\n\n\t11.\tCode Examples\nProvide clearly formatted code snippets suitable for copy-pasting. Maintain consistent syntax highlighting, indentation, and structure.\n\t12.\tImages\nInsert an image placeholder where needed. Include a brief description of the image below the placeholder. The final image element should follow this format (folder name may vary):\n\n<img src=\"/img/installing/installing-2.png\" alt=\"VS Code's Install from VSIX dialog\" width=\"600\" />\n\n(with the folder starting at /img/)",
7+
"customInstructions": "### Custom Instructions\n\n1. **Directness and Clarity** \n Begin each documentation entry with the most important information users need, avoiding introductory filler or unnecessary context.\n\n2. **Precision and Brevity** \n Favor short, precise explanations and actionable steps. Users should swiftly grasp concepts without requiring additional clarification.\n\n3. **Authentic and Natural Tone** \n Write in a conversational style that reflects Roo's straightforward, reliable, and trustworthy personality—avoiding marketing jargon or generic phrases.\n\n4. **Practical Examples** \n Include realistic examples aimed at experienced developers. Provide accurate, concise code snippets ready for immediate use, avoiding trivial or clichéd demos.\n\n5. **Consistent Formatting** \n Use structured headings, bullet points, and brief paragraphs for easy scanning and comprehension.\n\n6. **Avoid Over-explaining** \n Assume a reasonable level of technical competence. Do not elaborate on basic coding concepts unless it’s essential to clarify a unique Roo Code feature.\n\n7. **Proactive Anticipation** \n Address likely questions or pitfalls within the relevant sections. Incorporate tips or clarifications to prevent common mistakes.\n\n8. **Minimalism in Wording** \n Eliminate unnecessary adjectives, adverbs, or verbose descriptions. Use clear, functional language that reduces cognitive load.\n\n9. **Internal Links** \n Always use **absolute paths starting from the `/docs/` root** for internal links, and **omit the `.md` file extension**. \n Example: \n ```md\n [Link to Guide](/intro/)\n\n\t10.\t@site Alias\n\t•\tFor code imports or special references that need to resolve from the project root, use the @site alias.\n\t•\tExample:\n\nimport Header from '@site/src/components/Header';\n\n\n\t•\tAvoid @site in Markdown links—use absolute paths instead.\n\n\t11.\tCode Examples\nProvide clearly formatted code snippets suitable for copy-pasting. Maintain consistent syntax highlighting, indentation, and structure.\n\t12.\tImages\nInsert an image placeholder where needed. Include a brief description of the image below the placeholder. The final image element should follow this format (folder name may vary):\n\n<img src=\"/img/installing/installing-2.png\" alt=\"VS Code's Install from VSIX dialog\" width=\"600\" />\n\n(with the folder starting at /img/)",
88
"groups": [
99
"read",
1010
"command",

docs/features/api-configuration-profiles.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,21 @@ Switch profiles in two ways:
5050
<img src="/img/api-configuration-profiles/api-configuration-profiles-7.png" alt="Profile selection dropdown in Settings" width="550" />
5151
2. During chat: Access the API Configuration dropdown in the chat interface
5252

53-
<img src="/img/api-configuration-profiles/api-configuration-profiles-9.png" alt="API Configuration dropdown in chat interface" width="550" />
53+
<img src="/img/api-configuration-profiles/api-configuration-profiles-6.png" alt="API Configuration dropdown in chat interface" width="550" />
54+
### Pinning and Sorting Profiles
55+
56+
The API configuration dropdown now supports pinning your favorite profiles for quicker access:
57+
58+
1. Hover over any profile in the dropdown to reveal the pin icon
59+
2. Click the pin icon to add the profile to your pinned list
60+
3. Pinned profiles appear at the top of the dropdown, sorted alphabetically
61+
4. Unpinned profiles appear below a separator, also sorted alphabetically
62+
5. You can unpin a profile by clicking the same icon again
63+
64+
<img src="/img/api-configuration-profiles/api-configuration-profiles-4.png" alt="Pinning API configuration profiles" width="550" />
65+
66+
This feature makes it easier to navigate between commonly used profiles, especially when you have many configurations.
67+
5468

5569
### Editing and Deleting Profiles
5670

docs/features/code-actions.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,25 @@ Clicking the lightbulb, right-clicking and selecting "Roo Code", or using the ke
1616

1717
Roo Code provides the following Code Actions:
1818

19-
* **Explain Code:** Asks Roo Code to explain the selected code. This is useful for understanding unfamiliar code or for getting a high-level overview of a function or class.
20-
* **Fix Code:** Asks Roo Code to fix problems in the selected code. This action is available when there are diagnostics (errors or warnings) on the selected lines. Roo Code will analyze the diagnostics and propose a fix.
21-
* **Improve Code:** Asks Roo Code to suggest improvements to the selected code. This can include suggestions for better readability, performance, or adherence to best practices.
22-
* **Add to Context:** Adds the selected code to the current Roo Code conversation, allowing you to refer to it in subsequent messages.
19+
* **Add to Context:** Quickly adds the selected code to your chat with Roo, including line numbers so Roo knows exactly where the code is from. It's listed first in the menu for easy access. (More details below).
20+
* **Explain Code:** Asks Roo Code to explain the selected code.
21+
* **Fix Code:** Asks Roo Code to fix problems in the selected code (available when diagnostics are present).
22+
* **Improve Code:** Asks Roo Code to suggest improvements to the selected code.
23+
24+
### Add to Context Deep Dive
25+
26+
The **Add to Context** action is listed first in the Code Actions menu so you can quickly add code snippets to your conversation. When you use it, Roo Code includes the filename and line numbers along with the code.
27+
28+
This helps Roo understand the exact context of your code within the project, allowing it to provide more relevant and accurate assistance.
29+
30+
**Example Chat Input:**
31+
32+
```
33+
Can you explain this function?
34+
@myFile.js:15:25
35+
```
36+
37+
*(Where `@myFile.js:15:25` represents the code added via "Add to Context")*
2338

2439
Each of these actions can be performed "in a new task" or "in the current task."
2540

docs/features/fast-edits.md

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,38 +10,36 @@ Roo Code offers an advanced setting to change how it edits files, using diffs (d
1010

1111
Open Settings by clicking the gear icon <Codicon name="gear" /> → Advanced
1212

13-
<img src="/img/fast-edits/fast-edits.png" alt="Roo Code settings showing Enable editing through diffs, Diff strategy dropdown, and Match precision slider" width="500" />
13+
1414

1515
When **Enable editing through diffs** is checked:
1616

17+
<img src="/img/fast-edits/fast-edits-5.png" alt="Roo Code settings showing Enable editing through diffs" width="500" />
1718
1. **Faster File Editing**: Roo modifies files more quickly by applying only the necessary changes.
1819
2. **Prevents Truncated Writes**: The system automatically detects and rejects attempts by the AI to write incomplete file content, which can happen with large files or complex instructions. This helps prevent corrupted files.
1920

2021
:::note Disabling Fast Edits
2122
If you uncheck **Enable editing through diffs**, Roo will revert to writing the entire file content for every edit using the [`write_to_file`](/features/tools/write-to-file) tool, instead of applying targeted changes with [`apply_diff`](/features/tools/apply-diff). This full-write approach is generally slower for modifying existing files and leads to higher token usage.
2223
:::
2324

24-
## Diff Strategy
25-
26-
This setting determines the method Roo uses to calculate and apply changes:
27-
28-
* **Multi-block diff** (Default since v3.11): Allows updating multiple, separate code blocks within the same file in a single operation. More efficient for widespread changes. (Uses `MultiSearchReplaceDiffStrategy` internally).
29-
* **Single block**: Applies changes to one code block at a time. Reliable for most common edits. (Uses `SearchReplaceDiffStrategy` internally).
30-
* **Unified diff**: A more sophisticated strategy that analyzes the changes and selects the best approach, potentially using different matching techniques. (Uses `NewUnifiedDiffStrategy` internally).
31-
32-
Choose the strategy that best suits the complexity of the edits you typically perform. The experimental options offer potential efficiency gains but may behave differently.
33-
3425
## Match Precision
3526

3627
This slider controls how closely the code sections identified by the AI must match the actual code in your file before a change is applied.
3728

29+
<img src="/img/fast-edits/fast-edits-4.png" alt="Roo Code settings showing Enable editing through diffs checkbox and Match precision slider" width="500" />
30+
3831
* **100% (Default)**: Requires an exact match. This is the safest option, minimizing the risk of incorrect changes.
3932
* **Lower Values (80%-99%)**: Allows for "fuzzy" matching. Roo can apply changes even if the code section has minor differences from what the AI expected. This can be useful if the file has been slightly modified, but **increases the risk** of applying changes in the wrong place.
4033

4134
**Use values below 100% with extreme caution.** Lower precision might be necessary occasionally, but always review the proposed changes carefully.
4235

4336
Internally, this setting adjusts a `fuzzyMatchThreshold` used with algorithms like Levenshtein distance to compare code similarity.
4437

45-
## Model Recommendation
4638

47-
The setting description notes that diff-based editing "Works best with the latest Claude 3.7 Sonnet model." This is likely because newer, more capable models can generate the precise diff formats required for this feature more reliably.
39+
## Experimental Features
40+
41+
Under the "Experimental Features" section, you will find this option:
42+
43+
<img src="/img/fast-edits/fast-edits-2.png" alt="Roo Code settings showing the Experimental Features section with the experimental unified diff strategy checkbox" width="500" />
44+
45+
* **Use experimental unified diff strategy**: This checkbox might appear to enable specific variations or optimizations of the `UnifiedDiffStrategy`. Enabling this could potentially reduce retries caused by model errors but might also introduce unexpected behavior or incorrect edits. Enable only if you understand the risks and are prepared to carefully review all changes.

docs/features/mcp/using-mcp-in-roo.md

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,31 @@ sidebar_label: Using MCP in Roo Code
77

88
Model Context Protocol (MCP) extends Roo Code's capabilities by connecting to external tools and services. This guide covers everything you need to know about using MCP with Roo Code.
99

10-
> **Note:** All MCP-related settings are global across all workspaces. Any changes you make to MCP configurations will affect all your Roo Code projects.
10+
## Configuring MCP Servers
1111

12-
## Installing/Editing Your MCP Servers
12+
MCP server configurations can be managed at two levels:
1313

14-
MCP server configurations are stored in the `cline_mcp_settings.json` file. You can access it by:
14+
1. **Global Configuration**: Stored in the `mcp_settings.json` file, accessible via VS Code settings (see below). These settings apply across all your workspaces unless overridden by a project-level configuration.
15+
2. **Project-level Configuration**: Defined in a `.roo/mcp.json` file within your project's root directory. This allows you to set up project-specific servers and share configurations with your team by committing the file to version control. Roo Code automatically detects and loads this file if it exists.
1516

16-
1. Click the <Codicon name="server" /> icon in the top navigation of the Roo Code pane
17+
**Precedence**: If a server name exists in both global and project configurations, the **project-level configuration takes precedence**.
18+
19+
### Editing MCP Settings Files
20+
21+
You can edit both global and project-level MCP configuration files directly from the Roo Code MCP settings view:
22+
23+
1. Click the <Codicon name="server" /> icon in the top navigation of the Roo Code pane.
24+
25+
<img src="/img/using-mcp-in-roo/using-mcp-in-roo-10.png" alt="MCP Servers interface in Roo Code" width="400" />
1726

18-
<img src="/img/using-mcp-in-roo/using-mcp-in-roo.png" alt="MCP Servers interface in Roo Code" width="400" />
19-
2. Click the `Edit MCP Settings` button. This will open `cline_mcp_settings.json`
27+
2. Scroll to the bottom of the MCP settings view.
28+
3. Click the appropriate button:
29+
* **`Edit Global MCP`**: Opens the global `mcp_settings.json` file.
30+
* **`Edit Project MCP`**: Opens the project-specific `.roo/mcp.json` file. If this file doesn't exist, Roo Code will create it for you.
2031

21-
<img src="/img/using-mcp-in-roo/using-mcp-in-roo-1.png" alt="Edit MCP Settings button" width="400" />
32+
<img src="/img/using-mcp-in-roo/using-mcp-in-roo-9.png" alt="Edit Global MCP and Edit Project MCP buttons" width="600" />
2233

23-
The file uses a JSON format with a `mcpServers` object containing named server configurations:
34+
Both files use a JSON format with a `mcpServers` object containing named server configurations:
2435

2536
```json
2637
{
@@ -189,6 +200,6 @@ Example: "Analyze the performance of my API" might use an MCP tool that tests AP
189200
Common issues and solutions:
190201

191202
* **Server Not Responding:** Check if the server process is running and verify network connectivity
192-
* **Permission Errors:** Ensure proper API keys and credentials are configured in your `cline_mcp_settings.json`
203+
* **Permission Errors:** Ensure proper API keys and credentials are configured in your `mcp_settings.json` (for global settings) or `.roo/mcp.json` (for project settings).
193204
* **Tool Not Available:** Confirm the server is properly implementing the tool and it's not disabled in settings
194205
* **Slow Performance:** Try adjusting the network timeout value for the specific MCP server

0 commit comments

Comments
 (0)