Skip to content

Commit 5b511eb

Browse files
authored
Merge branch 'main' into use_sbc_doc
2 parents 1226a6d + 36da081 commit 5b511eb

23 files changed

+166
-44
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,5 @@
2020
npm-debug.log*
2121
yarn-debug.log*
2222
yarn-error.log*
23+
24+
.devcontainer

docs/advanced-usage/auto-approving-actions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ At the top of the Auto-Approve Toolbar is a toggle to enable/disable auto-approv
2727

2828
## Advanced Configuration (Settings)
2929

30-
You can also find these auto-approval options in the Roo Code settings panel (gear icon ⚙️ in the top right corner). The settings panel provides the same functionality as the auto-approve menu, but in a different location. The auto-approve menu is generally the quickest way to change these settings.
30+
You can also find these auto-approval options in the Roo Code settings panel (<Codicon name="gear" /> in the top right corner). The settings panel provides the same functionality as the auto-approve menu, but in a different location. The auto-approve menu is generally the quickest way to change these settings.
3131

3232
## Security Considerations
3333

docs/advanced-usage/code-actions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Each code action gives you two options:
6161

6262
You can customize the prompts used for each Code Action by modifying the "Support Prompts" in the **Prompts** tab. This allows you to fine-tune the instructions given to the AI model and tailor the responses to your specific needs.
6363

64-
1. **Open the Prompts Tab:** Click the notebook icon in the Roo Code top menu bar.
64+
1. **Open the Prompts Tab:** Click the <Codicon name="notebook" /> icon in the Roo Code top menu bar.
6565
2. **Find "Support Prompts":** You will see the support prompts, including "Enhance Prompt", "Explain Code", "Fix Code", and "Improve Code".
6666
3. **Edit the Prompts:** Modify the text in the text area for the prompt you want to customize. You can use placeholders like `${filePath}` and `${selectedText}` to include information about the current file and selection.
6767
4. **Click "Done":** Save your changes.

docs/advanced-usage/custom-instructions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ These instructions are added to every prompt, regardless of the active mode. Th
1212

1313
**How to set them:**
1414

15-
1. Open the Roo Code panel (rocket icon 🚀).
15+
1. Open the Roo Code panel (<Codicon name="rocket" />).
1616
2. Click the "Prompts" button in the top menu bar.
1717
3. Find the "Custom Instructions for All Modes" section.
1818
4. Enter your instructions in the text area.
@@ -24,7 +24,7 @@ These instructions are added only when a specific mode is active. They allow yo
2424

2525
**How to set them:**
2626

27-
1. Open the Roo Code panel (rocket icon 🚀).
27+
1. Open the Roo Code panel (<Codicon name="rocket" />).
2828
2. Click the "Prompts" button in the top menu bar.
2929
3. Select the mode you want to customize from the dropdown.
3030
4. Find the "Mode-specific Custom Instructions" section.

docs/advanced-usage/custom-modes.md

Lines changed: 104 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Custom Modes
22

3-
Roo Code allows you to create **custom modes** that can be either global (available across all projects) or project-specific (defined within a single project). These modes let you tailor Roo's behavior to specific tasks or workflows by defining:
3+
Roo Code allows you to create **custom modes** to tailor Roo's behavior to specific tasks or workflows. Custom modes can be either **global** (available across all projects) or **project-specific** (defined within a single project). They allow you to define:
44

55
* **A unique name and slug:** For easy identification.
66
* **A role definition:** A description of the mode's purpose and expertise.
@@ -15,7 +15,7 @@ Roo Code allows you to create **custom modes** that can be either global (availa
1515
* **Experimentation:** Safely experiment with different prompts and configurations without affecting other modes.
1616
* **Team Collaboration:** Share custom modes with your team to standardize workflows.
1717

18-
## Creating a Custom Mode
18+
## Creating Custom Modes
1919

2020
You have three options for creating custom modes:
2121

@@ -33,36 +33,54 @@ Roo Code will guide you through the process.
3333

3434
### 2. Using the Prompts Tab
3535

36-
1. **Open the Prompts Tab:** Click the notebook icon in the Roo Code top menu bar.
37-
2. **Click "Create New Mode":** Use the "+" button to add a new mode.
36+
1. **Open the Prompts Tab:** Click the <Codicon name="notebook" /> icon in the Roo Code top menu bar.
37+
2. **Click "Create New Mode":** Use the <Codicon name="add" /> button to add a new mode.
3838
3. **Fill in the Fields:** Enter the mode's name, role definition, custom instructions, and select the allowed tool groups.
3939
4. **Click "Create Mode":** Save your new mode.
4040

4141
Note: Adding/editing file type restrictions is not yet supported in the prompts tab UI.
4242

43-
### 3. Manual Configuration (Advanced)
43+
### 3. Manual Configuration
4444

45-
Custom modes can be configured in two locations:
45+
Custom modes can be configured by directly editing JSON files. There are two locations for custom mode configurations:
4646

47-
1. **Global Configuration:**
48-
- Located at `~/Library/Application Support/Cursor/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_custom_modes.json`
49-
- These modes are available across all projects
47+
1. **Global Configuration:**
48+
* Located at `[path to global extension storage]/rooveterinaryinc.roo-cline/settings/cline_custom_modes.json`
49+
* These modes are available across all projects.
5050

51-
2. **Project-Specific Configuration:**
52-
- Located in `.roomodes` file in your project's root directory
53-
- These modes are only available within that specific project
54-
- Project-specific modes take precedence over global modes with the same slug
51+
2. **Project-Specific Configuration:**
52+
* Located in a `.roomodes` file in your project's root directory.
53+
* These modes are only available within that specific project.
54+
* **Project-specific modes take precedence over global modes with the same slug.** This means if you define a mode with the slug "code" in your `.roomodes` file, it will override the global "code" mode when you're working in that project.
5555

5656
To edit either configuration:
5757

58-
1. **Open the Prompts Tab:** Click the notebook icon in the Roo Code top menu bar.
59-
2. **Open the Settings File:** Click the code icon (`<>`) in the top right corner of the "Prompts" tab.
58+
1. **Open the Prompts Tab:** Click the <Codicon name="notebook" /> icon in the Roo Code top menu bar.
59+
2. **Open the Settings File:** Click the <Codicon name="code" /> icon in the top right corner of the "Prompts" tab. (This will allow you to edit either the Global or project-specific configuration file. You can also edit the project-specific configuration by manually creating/opening the `.roomodes` file in your project's root directory.)
6060
3. **Edit the JSON:** Add or modify mode configurations within the `customModes` array, following the format described below.
6161
4. **Save the File:** Roo Code will automatically detect the changes.
6262

6363
## Custom Mode Configuration (JSON Format)
6464

65-
Both global and project-specific configuration files use the same JSON format. Here's an example:
65+
Both global and project-specific configuration files use the same JSON format. The configuration is a JSON object with a `customModes` key, which contains an array of mode definitions. Each mode definition is a JSON object with the following properties:
66+
67+
* `slug`: (Required) A unique identifier for the mode (lowercase letters, numbers, and hyphens). Shorter is better.
68+
* `name`: (Required) The display name for the mode.
69+
* `roleDefinition`: (Required) A detailed description of the mode's role and capabilities.
70+
* `groups`: (Required) An array of allowed tool groups. Each group can be specified either as a string (e.g., `"edit"` to allow editing any file) or with file restrictions (e.g., `["edit", { "fileRegex": "\\.md$", "description": "Markdown files only" }]` to only allow editing markdown files).
71+
* Available tool groups are: `"read"`, `"edit"`, `"browser"`, `"command"`, `"mcp"`.
72+
* **Understanding `fileRegex`:** The `fileRegex` property uses a *regular expression* (or *regex*) to define which files the mode is allowed to edit. A regular expression is a sequence of characters that specifies a search pattern. Here's a breakdown of some common regex components used in the examples:
73+
* `\.`: Matches a literal dot (`.`). The backslash is used to "escape" the dot, since a dot has a special meaning in regular expressions (matching any character).
74+
* `(test|spec)`: Matches either "test" or "spec". The parentheses create a *capturing group*, and the pipe (`|`) acts as an "or".
75+
* `(js|ts|jsx|tsx)`: Matches "js", "ts", "jsx", or "tsx".
76+
* `$`: Matches the end of the string. This ensures that the entire filename matches the pattern, not just a part of it.
77+
* For example, `\\.md$` matches any filename that ends with ".md". `\\.(test|spec)\\.(js|ts|jsx|tsx)$` matches filenames like "myComponent.test.js", "utils.spec.ts", etc.
78+
* You can learn more about regular expressions on websites like [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions).
79+
* `customInstructions`: (Optional) Additional instructions for the mode.
80+
81+
Here are some examples:
82+
83+
**Example 1: A simple documentation writer mode (could be global or project-specific):**
6684

6785
```json
6886
{
@@ -76,7 +94,16 @@ Both global and project-specific configuration files use the same JSON format. H
7694
"read",
7795
["edit", { "fileRegex": "\\.md$", "description": "Markdown files only" }]
7896
]
79-
},
97+
}
98+
]
99+
}
100+
```
101+
102+
**Example 2: A test engineer mode (could be global or project-specific):**
103+
104+
```json
105+
{
106+
"customModes": [
80107
{
81108
"slug": "test-engineer",
82109
"name": "Test Engineer",
@@ -90,6 +117,65 @@ Both global and project-specific configuration files use the same JSON format. H
90117
}
91118
```
92119

120+
**Example 3: Adding a new mode in a `.roomodes` file (project-specific):**
121+
122+
```json
123+
{
124+
"customModes": [
125+
{
126+
"slug": "data-scientist",
127+
"name": "Data Scientist",
128+
"roleDefinition": "You are Roo, a data scientist with expertise in data analysis, machine learning, and statistical modeling.",
129+
"groups": [
130+
"read",
131+
"edit",
132+
"command"
133+
],
134+
"customInstructions": "Focus on data analysis and machine learning tasks."
135+
}
136+
]
137+
}
138+
```
139+
140+
**Example 4: Overriding an existing mode in a `.roomodes` file (project-specific):**
141+
142+
```json
143+
{
144+
"customModes": [
145+
{
146+
"slug": "code"
147+
"name": "Code (Project-Specific)",
148+
"roleDefinition": "You are Roo, a highly skilled software engineer. In this project, you have limited file access.",
149+
"groups": [
150+
"read",
151+
["edit", { "fileRegex": "\\.(js|ts)$", "description": "JavaScript and TypeScript files only" }]
152+
],
153+
"customInstructions": "Focus on JS and TS files in this project."
154+
}
155+
]
156+
}
157+
```
158+
159+
**Example 5: Mode with File Restrictions (can be used in global or .roomodes)**
160+
```json
161+
{
162+
"customModes": [
163+
{
164+
"slug": "markdown-editor",
165+
"name": "Markdown Editor",
166+
"roleDefinition": "You are Roo, a markdown editor with expertise in editing and formatting markdown files.",
167+
"groups": [
168+
"read",
169+
["edit", { "fileRegex": "\\.md$", "description": "Markdown files only" }],
170+
"browser"
171+
],
172+
"customInstructions": "Focus on editing and formatting markdown files."
173+
}
174+
]
175+
}
176+
```
177+
By following these instructions, you can create and manage custom modes to enhance your workflow with Roo-Code.
178+
93179
## Community Gallery
94180

95-
Ready to explore more? Check out the [Custom Modes Gallery](../community#custom-modes-gallery) to discover and share custom modes created by the community!
181+
Ready to explore more? Check out the [Custom Modes Gallery](/community#custom-modes-gallery) to discover and share custom modes created by the community!

docs/advanced-usage/enhance-prompt.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ The "Enhance Prompt" feature in Roo Code helps you improve the quality and effec
1313
## How to Use Enhance Prompt
1414

1515
1. **Type your initial prompt:** Enter your request in the Roo Code chat input box as you normally would. This can be a simple question, a complex task description, or anything in between.
16-
2. **Click the ✨ (Sparkle) Icon:** Instead of pressing Enter, click the sparkle icon located to the left of the chat input box.
16+
2. **Click the <Codicon name="sparkle" /> Icon:** Instead of pressing Enter, click the <Codicon name="sparkle" /> icon located to the left of the chat input box.
1717
3. **Review the Enhanced Prompt:** Roo Code will replace your original prompt with an enhanced version. Review the enhanced prompt to make sure it accurately reflects your intent. You can further refine the enhanced prompt before sending.
18-
4. **Send the Enhanced Prompt:** Press Enter or click the Send icon (paper plane) to send the enhanced prompt to Roo Code.
18+
4. **Send the Enhanced Prompt:** Press Enter or click the Send icon (<Codicon name="send" />) to send the enhanced prompt to Roo Code.
1919

2020
## Customizing the Enhancement Process
2121

2222
The "Enhance Prompt" feature uses a customizable prompt template. You can modify this template to tailor the enhancement process to your specific needs.
2323

24-
1. **Open the Prompts Tab:** Click the notebook icon in the Roo Code top menu bar.
24+
1. **Open the Prompts Tab:** Click the <Codicon name="notebook" /> icon in the Roo Code top menu bar.
2525
2. **Select "ENHANCE" Tab:** You should see listed out support prompts, including "ENHANCE". Click on this tab.
2626
3. **Edit the Prompt Template:** Modify the text in the "Prompt" field.
2727

@@ -32,7 +32,7 @@ The default prompt template includes the placeholder `${userInput}`, which will
3232
The API configuration used for Enhance Prompt is, by default, the same one that is selected for Roo Code tasks,
3333
but it can be changed:
3434

35-
1. **Open the Prompts Tab:** Click the notebook icon in the Roo Code top menu bar.
35+
1. **Open the Prompts Tab:** Click the <Codicon name="notebook" /> icon in the Roo Code top menu bar.
3636
2. **Select "ENHANCE" Tab:** You should see an "API Configuration" dropdown
3737
3. **Select an API Configuration:** Choose an existing configuration, and future Enhance Prompt requests will be sent to that configured provider/model.
3838

docs/advanced-usage/experimental-features.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Roo Code includes experimental features that are still under development. These
88

99
To enable or disable experimental features:
1010

11-
1. Open the Roo Code settings (gear icon ⚙️ in the top right corner).
11+
1. Open the Roo Code settings (<Codicon name="gear" /> icon in the top right corner).
1212
2. Go to the "Advanced Settings" section.
1313
3. Find the "Experimental Features" section.
1414
4. Check or uncheck the boxes for the features you want to enable or disable.

docs/advanced-usage/local-models.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ Roo Code currently supports two main local model providers:
7373

7474

7575
4. **Configure Roo Code:**
76-
* Open the Roo Code sidebar (🚀 icon).
77-
* Click the settings gear icon (⚙️).
76+
* Open the Roo Code sidebar (<Codicon name="rocket" /> icon).
77+
* Click the settings gear icon (<Codicon name="gear" />).
7878
* Select "ollama" as the API Provider.
7979
* Enter the Model name from the previous step (e.g., `your_model_name`).
8080
* (Optional) You can configure the base URL if you're running Ollama on a different machine. The default is `http://localhost:11434`.
@@ -89,8 +89,8 @@ Roo Code currently supports two main local model providers:
8989
* Select your downloaded model.
9090
* Click **"Start Server"**.
9191
4. **Configure Roo Code:**
92-
* Open the Roo Code sidebar (🚀 icon).
93-
* Click the settings gear icon (⚙️).
92+
* Open the Roo Code sidebar (<Codicon name="rocket" /> icon).
93+
* Click the settings gear icon (<Codicon name="gear" />).
9494
* Select "lmstudio" as the API Provider.
9595
* Enter the Model ID. This should be the name of the model file you loaded in LM Studio (e.g., `codellama-7b.Q4_0.gguf`). LM Studio shows a list of "Currently loaded models" in its UI.
9696
* (Optional) You can configure the base URL if you're running LM Studio on a different machine. The default is `http://localhost:1234`.

docs/advanced-usage/mcp.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ The Model Context Protocol (MCP) is a standard for extending Roo Code's capabili
1111

1212
## MCP Server Status
1313

14-
You can view and manage your MCP server connections by clicking the server icon in the top navigation bar.
14+
You can view and manage your MCP server connections by clicking the <Codicon name="server" /> icon in the top navigation bar.
1515

1616
## Finding and Installing MCP Servers
1717

@@ -71,7 +71,7 @@ Roo Code provides two settings to control the use of MCP servers, to help you ma
7171

7272
If you don't want to use MCP servers at all, you can disable them completely:
7373

74-
1. Open the Roo Code Settings (gear icon ⚙️)
74+
1. Open the Roo Code Settings (<Codicon name="gear" />)
7575
2. Find the "Enable MCP Servers" setting
7676
3. Uncheck the box
7777

@@ -83,7 +83,7 @@ Roo Code can be asked to assist in creating new MCP servers. This is a powerful
8383

8484
To disable MCP server creation:
8585

86-
1. Open the Roo Code Settings (gear icon ⚙️)
86+
1. Open the Roo Code Settings (<Codicon name="gear" />)
8787
2. Find the "Enable MCP Server Creation" setting
8888
3. Uncheck the box
8989

docs/advanced-usage/model-temperature.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ Different tasks benefit from different temperature settings. For example:
2121

2222
You can adjust the temperature in the Roo Code settings:
2323

24-
1. **Open the Roo Code Panel:** Click the Roo Code icon (🚀) in the VS Code Activity Bar.
25-
2. **Open Settings:** Click the gear icon (⚙️) in the top right corner of the Roo Code panel.
24+
1. **Open the Roo Code Panel:** Click the Roo Code icon (<Codicon name="rocket" />) in the VS Code Activity Bar.
25+
2. **Open Settings:** Click the <Codicon name="gear" /> icon in the top right corner of the Roo Code panel.
2626
3. **Find the Temperature Setting:** In the settings panel, you'll find a "Use custom temperature" setting within the API configuration section.
2727
4. **Enter the Temperature Value:** Check the box and enter the temperature value you want to use. The range is typically from 0.0 to 1.0, but this may depend on the specific model and provider.
2828

0 commit comments

Comments
 (0)