diff --git a/apps/docs/.gitignore b/apps/docs/.gitignore new file mode 100644 index 00000000000..e6345846a6e --- /dev/null +++ b/apps/docs/.gitignore @@ -0,0 +1,14 @@ +# Dependencies +node_modules/ + +# Production +build/ +.docusaurus/ + +# Generated files +.cache/ +.DS_Store + +# Misc +.env.local +.env diff --git a/apps/docs/.roomodes b/apps/docs/.roomodes new file mode 100644 index 00000000000..8a4208422cd --- /dev/null +++ b/apps/docs/.roomodes @@ -0,0 +1,45 @@ +customModes: + - slug: release-notes-writer + name: 📝 Release Notes Writer + roleDefinition: "You are a technical writer for Roo Code release notes. Your job is to: - Automate release note creation. - Fetch and analyze GitHub pull requests. - Convert technical changes into user benefits. - Ensure updates align with documentation standards. - Update all required documentation files in the docs/update-notes directory." + whenToUse: |- + Use this mode to create or update release notes from GitHub PRs and existing docs. + Triggers: "Create release notes for X.Y.Z", "vX.Y.Z", bare version (e.g., "3.25.1"), "latest", + "Discord release notes for X.Y.Z", "Combined Discord announcement for X.Y.Z, X.Y.Z". + It automates PR fetching/analysis, changelog alignment, file generation (vX.Y or vX.Y.Z), + index/sidebar updates, and Discord formatting with approval gates. + description: Release notes files and sidebar configuration + groups: + - read + - command + - - edit + - fileRegex: (docs/update-notes/.*\.(md|mdx)$|sidebars\.ts$|\.roo/tmp/release-notes/.*\.(md|json)$) + source: project + - slug: documentation-writer + name: 📖 Documentation Writer + roleDefinition: |- + You are Roo Code, a documentation specialist who writes only what matters. + Core behaviors: + - Explanatory first: tell users why, why not, and how to recover (troubleshooting). + - Minimal ToC noise: H2 for primary sections; H3 only for jump-worthy anchors (max 4 per page, typically <= 2); prefer H4 for in-body sub-chunking; disallow H5/H6. + - Merge thin subsections and convert step chains into numbered lists under their H2. + - Bold, honest, human voice with contractions; informal and clear, not professoral. + - Selective screenshots: only for complex states/decisions; require outcome-focused alt text and a one-line "why this matters" caption. + - Prefer consolidation over duplication; link to the single source of truth. + - Enforce .roo/rules-documentation-writer/ policies (writing style, headings/structure, Docusaurus conventions, validation gates). + whenToUse: |- + Use this mode to create or refine technical docs (.md/.mdx) with an explanatory, value-first approach and a clean, minimal ToC. + Triggers: + - Pages with noisy right-sidebar ToCs or overuse of H3s + - Requests to restructure into H2 sections with H4 sub-chunks and numbered lists + - Need to add "Why it matters / What you can't do (and why) / Troubleshooting" + - Requests to add or prune screenshots for complex states/decisions + description: Creates and maintains Roo technical docs. + groups: + - read + - command + - - edit + - fileRegex: (\.(md|mdx)$|sidebars\.ts$|docusaurus\.config\.ts$) + description: Documentation files and sidebar configuration + - mcp + source: project diff --git a/apps/docs/.roorules b/apps/docs/.roorules new file mode 100644 index 00000000000..66a720fdd3a --- /dev/null +++ b/apps/docs/.roorules @@ -0,0 +1,21 @@ +# Roo Code Documentation Rules + +## Documentation Links +- Do not include .md extensions in documentation links +- Use absolute paths starting from the `/docs/` root for internal documentation links +- 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) + +This ensures links work correctly in the built documentation while maintaining clean URLs. + +## Context7 MCP +When making structural or formatting changes beyond simple .md or .mdx files, always check the Context7 MCP, the `context7CompatibleLibraryID` will be `/facebook/docusaurus` + +## Release Notes "thank you" exclusions +Do not thank daniel-lxs, cte, hannesrudolph, jr, roomote, app/roomote, dleffel, brunobergher or mrubens in release notes + + +## Misc +When moving a section, make sure to add the forwarding link in docusaurus.config.ts + +## Image Tag Format +example: `<ALT>` \ No newline at end of file diff --git a/apps/docs/AGENTS.md b/apps/docs/AGENTS.md new file mode 100644 index 00000000000..91868bbc608 --- /dev/null +++ b/apps/docs/AGENTS.md @@ -0,0 +1,19 @@ +# AGENTS.md + +This file provides guidance to agents when working with code in this repository. + +Non-obvious, project-specific rules: + +- Start/build preload dotenv; analytics plugin is enabled only when POSTHOG_API_KEY is set. Use .env based on [.env.example](.env.example). CI injects it via Vercel environment variables (see PR description for deployment setup). See [package.json](package.json) and [docusaurus.config.ts](docusaurus.config.ts). +- Use Node 20 locally to match CI; engines allow >=18 but CI runs 20. +- Linting targets only /src; docs content is not linted. Use "pnpm run lint:unused" to enforce unused import removal. Type checking uses "tsc" only (no emit); [tsconfig.json](tsconfig.json) is editor-focused. +- When moving/renaming docs, you must add an explicit redirect in [docusaurus.config.ts](docusaurus.config.ts) under plugin-client-redirects. This is required by [.roorules](.roorules). +- Internal doc links must be absolute and extensionless per [.roorules](.roorules) (example: /basic-usage/how-tools-work). Do not include ".md". +- Images in docs must use HTML tags per [.roorules](.roorules): .... +- Sitemap: preset sitemap is disabled; a custom plugin is configured in [docusaurus.config.ts](docusaurus.config.ts) to filter URLs containing "/page/". Do not re-enable the preset sitemap. +- Local search plugin is configured with docsRouteBasePath "/". Keep routeBasePath "/" consistent when adding content or links. +- "Tutorial Videos" sidebar is generated from [docs/tutorial-videos.json](docs/tutorial-videos.json); titles are truncated to 40 chars in [sidebars.ts](sidebars.ts). Modify the JSON to add/remove videos. +- Navigation/footer links are centralized in [src/constants.ts](src/constants.ts) and consumed by [docusaurus.config.ts](docusaurus.config.ts). Update constants rather than hardcoding URLs. +- Legacy [Rakefile](Rakefile) is unrelated (Jekyll). Do not use it; all builds run through Docusaurus scripts. +- For structural/formatting research, use Context7 MCP (ID "/facebook/docusaurus") via [.roo/mcp.json](.roo/mcp.json); see [.roorules](.roorules). +- CI runs build and check-types (no lint). Run lint locally to catch issues CI won't. diff --git a/apps/docs/README.md b/apps/docs/README.md new file mode 100644 index 00000000000..20d21992e02 --- /dev/null +++ b/apps/docs/README.md @@ -0,0 +1,92 @@ +# Roo Code Documentation + +This directory contains the official documentation site for Roo Code, built with [Docusaurus](https://docusaurus.io/). + +## Development + +```bash +# From the monorepo root +pnpm install + +# Start the development server +pnpm --filter @roo-code/docs start + +# Build the site +pnpm --filter @roo-code/docs build + +# Serve the built site locally +pnpm --filter @roo-code/docs serve +``` + +## Environment Variables + +Create a `.env` file based on `.env.example`: + +- `POSTHOG_API_KEY`: Analytics key for PostHog (optional) +- `INTERCOM_APP_ID`: Intercom widget ID (optional) + +## Vercel Deployment Setup + +The docs are deployed to Vercel automatically on push to `main`. To set up: + +### Required Secrets + +Add these secrets to the GitHub repository settings: + +1. **VERCEL_TOKEN**: Personal Access Token from Vercel + + - Go to Vercel → Settings → Tokens + - Create a new token with appropriate permissions + +2. **VERCEL_ORG_ID**: Organization ID from Vercel + + - Run `vercel link` in the docs directory + - Find the ID in `.vercel/project.json` + +3. **VERCEL_DOCS_PROJECT_ID**: Project ID for the docs + + - Same as above, from `.vercel/project.json` + +4. **POSTHOG_API_KEY**: PostHog analytics key (optional) + +5. **INTERCOM_APP_ID**: Intercom widget ID (optional) + +### Vercel Project Configuration + +In the Vercel project settings: + +- **Root Directory**: `apps/docs` +- **Build Command**: `pnpm build` +- **Output Directory**: `build` +- **Install Command**: `pnpm install --frozen-lockfile` +- **Framework Preset**: Other +- **Node Version**: 20.x + +### Custom Domain + +Configure the custom domain `docs.roocode.com` in Vercel project settings. + +## Structure + +- `docs/`: Markdown documentation files +- `src/`: Custom React components and theme overrides +- `static/`: Static assets (images, etc.) +- `docusaurus.config.ts`: Main configuration file +- `sidebars.ts`: Sidebar navigation structure + +## Writing Documentation + +- Use absolute, extensionless paths for internal links: `/basic-usage/how-tools-work` +- Use HTML `` tags for images: `Description` +- Add redirects in `docusaurus.config.ts` when moving/renaming pages + +## Migration Notes + +This documentation was migrated from the standalone `Roo-Code-Docs` repository into the monorepo as `apps/docs`. + +Key changes: + +- Package name changed to `@roo-code/docs` +- `@roo-code/types` dependency uses `workspace:^` protocol +- Edit URLs now point to `apps/docs/` path in the Roo-Code repository +- Deployment moved from standalone repo to monorepo workflows diff --git a/apps/docs/docs/advanced-usage/available-tools/access-mcp-resource.md b/apps/docs/docs/advanced-usage/available-tools/access-mcp-resource.md new file mode 100644 index 00000000000..ce29c32cf5a --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/access-mcp-resource.md @@ -0,0 +1,164 @@ +--- +description: Learn how the access_mcp_resource tool retrieves data from Model Context Protocol servers for additional context in Roo Code tasks. +keywords: + - access_mcp_resource + - MCP + - Model Context Protocol + - MCP resources + - Roo Code tools + - context retrieval + - API integration +--- + +# access_mcp_resource + +The `access_mcp_resource` tool retrieves data from resources exposed by connected Model Context Protocol (MCP) servers. It allows Roo to access files, API responses, documentation, or system information that provides additional context for tasks. + +--- + +## Parameters + +The tool accepts these parameters: + +- `server_name` (required): The name of the MCP server providing the resource +- `uri` (required): The URI identifying the specific resource to access + +--- + +## What It Does + +This tool connects to MCP servers and fetches data from their exposed resources. Unlike `use_mcp_tool` which executes actions, this tool specifically retrieves information that serves as context for tasks. + +--- + +## When is it used? + +- When Roo needs additional context from external systems +- When Roo needs to access domain-specific data from specialized MCP servers +- When Roo needs to retrieve reference documentation hosted by MCP servers +- When Roo needs to integrate real-time data from external APIs via MCP + +--- + +## Key Features + +- Retrieves both text and image data from MCP resources +- Requires user approval before executing resource access +- Uses URI-based addressing to precisely identify resources +- Integrates with the Model Context Protocol SDK +- Displays resource content appropriately based on content type +- Supports timeouts for reliable network operations +- Handles server connection states (connected, connecting, disconnected) +- Discovers available resources from connected servers +- Processes structured response data with metadata +- Handles image content special rendering + +--- + +## Limitations + +- Depends on external MCP servers being available and connected +- Limited to the resources provided by connected servers +- Cannot access resources from disabled servers +- Network issues can affect reliability and performance +- Resource access subject to configured timeouts +- URI formats are determined by the specific MCP server implementation +- No offline or cached resource access capabilities + +--- + +## How It Works + +When the `access_mcp_resource` tool is invoked, it follows this process: + +1. **Connection Validation**: + + - Verifies that an MCP hub is available and initialized + - Confirms the specified server exists in the connection list + - Checks if the server is disabled (returns an error if it is) + +2. **User Approval**: + + - Presents the resource access request to the user for approval + - Provides server name and resource URI for user verification + - Proceeds only if the user approves the resource access + +3. **Resource Request**: + + - Uses the Model Context Protocol SDK to communicate with servers + - Makes a `resources/read` request to the server through the MCP hub + - Applies configured timeouts to prevent hanging on unresponsive servers + +4. **Response Processing**: + - Receives a structured response with metadata and content arrays + - Processes text content for display to the user + - Handles image data specially for appropriate display + - Returns the processed resource data to Roo for use in the current task + +--- + +## Resource Types + +MCP servers can provide two main types of resources: + +1. **Standard Resources**: + + - Fixed resources with specific URIs + - Defined name, description, and MIME type + - Direct access without parameters + - Typically represent static data or real-time information + +2. **Resource Templates**: + - Parameterized resources with placeholder values in URIs + - Allow dynamic resource generation based on provided parameters + - Can represent queries or filtered views of data + - More flexible but require additional URI formatting + +--- + +## Examples When Used + +- When helping with API development, Roo retrieves endpoint specifications from MCP resources to ensure correct implementation. +- When assisting with data visualization, Roo accesses current data samples from connected MCP servers. +- When working in specialized domains, Roo retrieves technical documentation to provide accurate guidance. +- When generating industry-specific code, Roo references compliance requirements from documentation resources. + +--- + +## Usage Examples + +Accessing current weather data: + +``` + +weather-server +weather://san-francisco/current + +``` + +Retrieving API documentation: + +``` + +api-docs +docs://payment-service/endpoints + +``` + +Accessing domain-specific knowledge: + +``` + +knowledge-base +kb://medical/terminology/common + +``` + +Fetching system configuration: + +``` + +infra-monitor +config://production/database + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/apply-diff.md b/apps/docs/docs/advanced-usage/available-tools/apply-diff.md new file mode 100644 index 00000000000..5161f85cfc9 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/apply-diff.md @@ -0,0 +1,187 @@ +--- +description: Master the apply_diff tool for making surgical code changes using fuzzy matching and line hints in Roo Code with multi-file support. +keywords: + - apply_diff + - file editing + - code modifications + - fuzzy matching + - diff tool + - Roo Code tools + - multi-file edits +--- + +# apply_diff + +The `apply_diff` tool makes precise, surgical changes to files by specifying exactly what content to replace. It uses a sophisticated strategy for finding and applying changes while maintaining proper code formatting and structure. + +--- + +## Parameters + +The tool accepts these parameters: + +- `path` (required): The path of the file to modify relative to the current working directory. +- `diff` (required): The search/replace block defining the changes using a format specific to the active diff strategy. +- `start_line` (optional): A hint for where the search content begins. _Note: This top-level parameter appears unused by the current main strategy, which relies on `:start_line:` within the diff content._ +- `end_line` (optional): A hint for where the search content ends. _Note: This top-level parameter appears unused by the current main strategy._ + +--- + +## What It Does + +This tool applies targeted changes to existing files using fuzzy matching guided by line number hints to locate and replace content precisely. Unlike simple search and replace, it identifies the exact block for replacement based on the provided content and location hints. + +--- + +## When is it used? + +- When Roo needs to make precise changes to existing code without rewriting entire files. +- When refactoring specific sections of code while maintaining surrounding context. +- When fixing bugs in existing code with surgical precision. +- When implementing feature enhancements that modify only certain parts of a file. + +--- + +## Key Features + +- Uses fuzzy matching (Levenshtein distance on normalized strings) guided by a `:start_line:` hint, with configurable confidence thresholds (typically 0.8-1.0). +- Provides context around matches using `BUFFER_LINES` (default 40). +- Performs a middle-out search within a configurable context window (`bufferLines`) around the hinted start line. +- Preserves code formatting and indentation passively by replacing exact blocks. +- Shows changes in a diff view for user review and editing before applying. +- Tracks consecutive errors per file (`consecutiveMistakeCountForApplyDiff`) to prevent repeated failures. +- Validates file access against `.rooignore` rules. +- Handles multi-line edits effectively. + +--- + +## Limitations + +- Works best with unique, distinctive code sections for reliable identification. +- Performance can vary with very large files or highly repetitive code patterns. +- Fuzzy matching might occasionally select incorrect locations if content is ambiguous. +- Each diff strategy has specific format requirements. +- Complex edits might require careful strategy selection or manual review. + +--- + +## How It Works + +When the `apply_diff` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates required `path` and `diff` parameters. +2. **RooIgnore Check**: Validates if the target file path is allowed by `.rooignore` rules. +3. **File Analysis**: Loads the target file content. +4. **Match Finding**: Uses a fuzzy matching algorithm (Levenshtein on normalized strings) guided by the `:start_line:` hint within a context window (`BUFFER_LINES`), searching middle-out to locate the target content based on the confidence threshold. +5. **Change Preparation**: Generates the proposed changes by replacing the identified block. +6. **User Interaction**: + - Displays the changes in a diff view. + - Allows the user to review and potentially edit the proposed changes. + - Waits for user approval or rejection. +7. **Change Application**: If approved, applies the changes (potentially including user edits) to the file. +8. **Error Handling**: If errors occur (e.g., match failure, partial application), increments the `consecutiveMistakeCountForApplyDiff` for the file and reports the failure type. +9. **Feedback**: Returns the result, including any user feedback or error details. + +--- + +## Diff Format Requirements + +The `` parameter requires a specific format supporting one or more changes in a single request. Each change block requires a line number hint for the original content. + +- **Requires**: Exact match for the `SEARCH` block content (within the fuzzy threshold), including whitespace and indentation. The `:start_line:` number hint is mandatory within each block. The `:end_line:` hint is optional (but supported by the parser). Markers like `<<<<<<<` within the file's content must be escaped (`\\`) in the SEARCH block. + +Example format for the `` block: + +```diff +<<<<<<< SEARCH +:start_line:10 +:end_line:12 +------- + // Old calculation logic + const result = value * 0.9; + return result; +======= + // Updated calculation logic with logging + console.log(`Calculating for value: ${value}`); + const result = value * 0.95; // Adjusted factor + return result; +>>>>>>> REPLACE + +<<<<<<< SEARCH +:start_line:25 +:end_line:25 +------- + const defaultTimeout = 5000; +======= + const defaultTimeout = 10000; // Increased timeout +>>>>>>> REPLACE +``` + +--- + +## Experimental: Multi-File Edits (`MULTI_FILE_APPLY_DIFF`) + +An experimental version of `apply_diff` allows for applying changes to multiple files within a single tool call. This feature is activated by the `MULTI_FILE_APPLY_DIFF` experiment flag. + +### Key Features of Experimental Mode + +- **Multi-File Operations**: Edit multiple files in one request, streamlining complex refactoring tasks. +- **Batch Approval UI**: When multiple files are targeted, a single UI appears for the user to approve or deny all changes at once, or manage permissions for each file individually. +- **New XML Format**: Introduces a new, more structured XML format using `` and `` tags to handle multiple operations. +- **Backward Compatibility**: The experimental tool remains compatible with the legacy single-file `path` and `diff` parameter format. + +### How It Works (Experimental) + +1. **Experiment Check**: The tool first checks if the `MULTI_FILE_APPLY_DIFF` experiment is enabled. If not, it falls back to the legacy `apply_diff` implementation. +2. **Parameter Parsing**: It parses the new `` XML format to identify all target files and their corresponding diff operations. It can also handle the legacy `path`/`diff` parameters. +3. **Validation and Approval**: + - It validates that all target files exist and are accessible (not blocked by `.rooignore`). + - If multiple files are being modified, it presents a **batch approval** dialog to the user. +4. **Diff Application**: For each approved file, it applies the specified diffs using the `MultiFileSearchReplaceDiffStrategy`. This strategy can apply multiple, non-overlapping changes to a single file. +5. **Results**: It returns a consolidated result message summarizing the outcome for all attempted operations. + +### New Diff Format (Experimental) + +The experimental mode uses a new XML structure within the `` tool call. + +- **``**: A container for all file operations. +- **``**: A block for each file to be modified. Contains `` and one or more `` tags. +- **``**: The relative path to the file. +- **``**: A block containing the change. + - **``**: The `SEARCH/REPLACE` block. + - **``**: (Optional) A line number hint. + +**Example: Modifying two files in one call** + +```xml + + + + src/services/auth.service.ts + + +<<<<<<< SEARCH +:start_line:50 +------- + const token_expiration = '15m'; +>>>>>>> REPLACE + + + + + src/config/auth.config.ts + + +<<<<<<< SEARCH +:start_line:12 +------- + rateLimit: 5, +======= + rateLimit: 10, +>>>>>>> REPLACE + + + + + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/ask-followup-question.md b/apps/docs/docs/advanced-usage/available-tools/ask-followup-question.md new file mode 100644 index 00000000000..f42e154d16a --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/ask-followup-question.md @@ -0,0 +1,208 @@ +--- +description: Enable interactive communication in Roo Code with the ask_followup_question tool for gathering clarification and user preferences. +keywords: + - ask_followup_question + - user interaction + - interactive communication + - Roo Code tools + - clarification + - user feedback +--- + +# ask_followup_question + +The `ask_followup_question` tool enables interactive communication by asking specific questions to gather additional information needed to complete tasks effectively. + +--- + +## Parameters + +The tool accepts these parameters: + +- `question` (required): The specific question to ask the user +- `follow_up` (optional): A list of 2-4 suggested answers that help guide user responses, each within `` tags + +--- + +## What It Does + +This tool creates a conversational interface between Roo and the user, allowing for gathering clarification, additional details, or user preferences when facing ambiguities or decision points. Each question can include suggested responses to streamline the interaction. + +--- + +## When is it used? + +- When critical information is missing from the original request +- When Roo needs to choose between multiple valid implementation approaches +- When technical details or preferences are required to proceed +- When Roo encounters ambiguities that need resolution +- When additional context would significantly improve the solution quality + +--- + +## Key Features + +- Provides a structured way to gather specific information without breaking workflow +- Includes suggested answers to reduce user typing and guide responses +- Maintains conversation history and context across interactions +- Supports responses containing images and code snippets +- Available in all modes as part of the "always available" tool set +- Enables direct user guidance on implementation decisions +- Formats responses with `` tags to distinguish them from regular conversation +- Resets consecutive error counter when used successfully + +--- + +## Limitations + +- Limited to asking one specific question per tool use +- Presents suggestions as selectable options in the UI +- Cannot force structured responses – users can still respond freely +- Excessive use can slow down task completion and create a fragmented experience +- Suggested answers must be complete, with no placeholders requiring user edits +- No built-in validation for user responses +- Contains no mechanism to enforce specific answer formats + +--- + +## How It Works + +When the `ask_followup_question` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required `question` parameter and checks for optional suggestions + + - Ensures question text is provided + - Parses any suggested answers from the `follow_up` parameter using the `fast-xml-parser` library + - Normalizes suggestions into an array format even if there's only one suggestion + +2. **JSON Transformation**: Converts the XML structure into a standardized JSON format for UI display + + ```typescript + { + question: "User's question here", + suggest: [ + { answer: "Suggestion 1" }, + { answer: "Suggestion 2" } + ] + } + ``` + +3. **UI Integration**: + + - Passes the JSON structure to the UI layer via the `ask("followup", ...)` method + - Displays selectable suggestion buttons to the user in the interface + - Creates an interactive experience for selecting or typing a response + +4. **Response Collection and Processing**: + + - Captures user text input and any images included in the response + - Wraps user responses in `` tags when returning to the assistant + - Preserves any images included in the user's response + - Maintains the conversational context by adding the response to the history + - Resets the consecutive error counter when the tool is used successfully + +5. **Error Handling**: + - Tracks consecutive mistakes using a counter + - Resets the counter when the tool is used successfully + - Provides specific error messages: + - For missing parameters: "Missing required parameter 'question'" + - For XML parsing: "Failed to parse operations: [error message]" + - For invalid format: "Invalid operations xml format" + - Contains safeguards to prevent tool execution when required parameters are missing + - Increments consecutive mistake count when errors occur + +--- + +## Workflow Sequence + +The question-answer cycle follows this sequence: + +1. **Information Gap Recognition**: Roo identifies missing information needed to proceed +2. **Specific Question Creation**: Roo formulates a clear, targeted question +3. **Suggestion Development**: Roo creates relevant suggested answers (optional but recommended) +4. **Tool Invocation**: Assistant invokes the tool with question and optional suggestions +5. **UI Presentation**: Question and suggestions are displayed to the user as interactive elements +6. **User Response**: The user selects a suggestion or provides a custom answer +7. **Message Handling**: System handles both partial and complete messages + - For streaming responses, processes chunks as they arrive + - For complete messages, processes the entire response at once + - Maintains state consistency regardless of message chunking +8. **Response Processing**: System wraps the response in `` tags and preserves images +9. **Context Integration**: Response is added to the conversation history +10. **Task Continuation**: Roo proceeds with the task using the new information + +--- + +## Examples When Used + +- When developing a web application, Roo might ask about preferred styling frameworks (Bootstrap, Tailwind, custom CSS) +- When creating an API, Roo might ask about authentication methods (JWT, OAuth, API keys) +- When refactoring code, Roo might ask about prioritizing performance vs. readability +- When setting up a database, Roo might ask about specific schema design preferences +- When creating a custom feature, Roo might ask about specific behavior expectations +- When troubleshooting errors, Roo might ask about specific environment details + +--- + +## Response Format + +When a user responds to a question, the response is formatted with `` tags for clarity and consistency. This format helps clearly separate the user's answer from other conversation elements. + +Example response format: + +``` + +Use Tailwind CSS for utility-first styling with maximum flexibility + +``` + +Key characteristics of the response format: + +- Surrounded by `` tags +- Preserves formatting of the original response +- Maintains images if included in the response +- Returns the complete text, even for long responses + +--- + +## Usage Examples + +Asking about implementation preferences: + +``` + +Which styling approach would you prefer for this web application? + +Use Bootstrap for rapid development with consistent components +Use Tailwind CSS for utility-first styling with maximum flexibility +Use vanilla CSS with custom styling for complete control and minimal dependencies + + +``` + +Requesting technical clarification: + +``` + +What database should this application use for storing user data? + +MongoDB for flexible schema and document-based storage +PostgreSQL for relational data with strong consistency guarantees +Firebase for real-time updates and simplified backend management +SQLite for lightweight local storage without external dependencies + + +``` + +Addressing ambiguity in requirements: + +``` + +How should the application handle user authentication? + +Implement email/password authentication with account verification +Use social login providers (Google, GitHub, etc.) for quick signup +Implement both email/password and social login options + + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/attempt-completion.md b/apps/docs/docs/advanced-usage/available-tools/attempt-completion.md new file mode 100644 index 00000000000..c2b5908dcb5 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/attempt-completion.md @@ -0,0 +1,216 @@ +--- +description: Learn how the attempt_completion tool signals task completion, presents results, and enables iterative refinement in Roo Code. +keywords: + - attempt_completion + - task completion + - result presentation + - Roo Code tools + - user feedback + - task summary +--- + +# attempt_completion + +The `attempt_completion` tool signals that Roo believes a task is complete and presents results to the user. It provides a summary of what was accomplished, optionally includes a command to demonstrate the result, and supports continued refinement through user feedback. + +--- + +## Parameters + +The tool accepts these parameters: + +- `result` (required): The final result description summarizing what was accomplished +- `command` (optional): A CLI command to execute to demonstrate the result + +--- + +## What It Does + +This tool marks the end of a task by presenting a final summary of what was accomplished. It signals to both the user and the system that the current task is complete. When a command is provided, it can also demonstrate the result through a live execution. + +--- + +## When is it used? + +- When Roo believes the user's task has been completed +- When summarizing what changes or improvements were made +- When demonstrating the current result with a command execution +- When providing a checkpoint for user feedback on the solution +- When transitioning from one phase of work to potential refinements + +--- + +## Key Features + +- Provides a clear signal that Roo believes the task is complete +- Summarizes accomplishments in a concise message +- Optionally demonstrates results through command execution +- Enables user feedback for further refinements +- Displays results in a special UI format distinct from regular messages +- Captures task completion telemetry for system analytics +- Maintains a structured conversation flow by providing checkpoints +- Supports subtask completion within larger workflows +- Ensures users receive a clear summary of what was done +- Available in all modes as part of the "always available" tool group + +--- + +## Limitations + +- Should not be used until previous tool uses are confirmed successful (guideline, not enforced) +- Limited to a single command for result demonstration +- Cannot present multiple command options +- Commands require user approval before execution +- Limited to demonstrating results that can be shown via CLI commands +- Cannot be used for partial task completion or progress updates +- Result formatting strips XML closing tags through internal processing + +--- + +## How It Works + +When the `attempt_completion` tool is invoked, it follows this process: + +1. **Safety Consideration** (guideline, not enforced): + + - The AI is instructed to confirm previous tool uses were successful + - This is a best practice rather than a programmatically enforced mechanism + +2. **Result Presentation**: + + - Displays the completion message to the user in a special "completion_result" UI format + - Removes XML closing tags from the result text using the `removeClosingTag` function + - Presents the result differently than regular messages for visual distinction + +3. **Command Execution** (if provided): + + - Requests user approval before executing the command + - Only executes if the user approves + - Executes the command using the system's command execution functionality + - Shows the result of the command to the user + +4. **Feedback Collection**: + + - Waits for user feedback on the completion result + - Processes this feedback and returns it to the AI + - Enables continued refinement based on user input + +5. **Task Completion and Continuation**: + + - Signals the task as completed in the system + - Captures telemetry data for the completed task + - For subtasks, offers to finish the subtask and resume the parent task + - Supports continued conversation through the feedback mechanism + +6. **Implementation Integration**: + - Tool results are parsed through the system's parsing mechanism in `parse-assistant-message.ts` + - The tool is part of the "ALWAYS_AVAILABLE_TOOLS" constant, making it available in all modes + +--- + +## Result Formatting Guidelines + +The result message should follow these guidelines: + +- Clearly communicate what was accomplished +- Be concise but complete +- Focus on the value delivered to the user +- Avoid unnecessary pleasantries or filler text +- Maintain a professional, straightforward tone +- Present information in a way that's easy to scan and understand +- Acknowledge that the user may provide feedback for further refinements + +Note: The system automatically strips XML closing tags from the result text through the `removeClosingTag` function. + +--- + +## Command Selection Guidelines + +When including a command, follow these guidelines: + +- Choose commands that visually demonstrate the result +- Prefer commands that show the user what was created or modified +- Examples include: + - `open index.html` to display a created website + - `npm start` to launch a development server + - `python app.py` to run a created application +- Avoid commands that merely print text (like `echo` or `cat`) +- Remember that commands require user approval before execution +- Ensure the command is valid for the user's operating system + +--- + +## Feedback and UI Representation + +The `attempt_completion` tool has a unique feedback mechanism: + +- Results appear in a special "completion_result" UI format distinct from regular messages +- The system waits for user feedback after presenting the result +- Feedback is processed and returned to Roo for further refinements +- This creates an iterative improvement cycle rather than ending the conversation +- The UI includes special elements for providing feedback +- Results serve as clear checkpoints in the conversation flow + +When used within subtasks: + +- The system offers to finish the subtask and resume the parent task +- If approved, the subtask is completed with a summary +- The parent task resumes with context from the completed subtask +- This enables complex, nested workflows while maintaining context + +--- + +## Examples When Used + +- When creating a website, Roo presents the solution and uses `open index.html` to show the result. The user provides feedback, and Roo refines the design. +- When implementing a feature, Roo summarizes the changes and their impact. The user requests additional test coverage, and Roo continues the task. +- When fixing bugs, Roo explains what was fixed and how the solution addresses the root cause. The user confirms the fix works. +- When setting up a development environment, Roo confirms all components are installed. The user requests additional configuration, and Roo continues. +- When creating a data processing script, Roo summarizes the functionality. The user suggests performance improvements, and Roo optimizes the code. + +--- + +## Usage Examples + +Completing a task with just a result summary: + +``` + + +I've updated the CSS for the navigation bar to match the design mockup. The changes include: +1. Updated color scheme to use the new brand colors +2. Added responsive behavior for mobile devices +3. Fixed the alignment issues in the dropdown menus + + +``` + +Completing a task with a result and demonstration command: + +``` + + +I've created a simple React application with the following features: +1. A responsive landing page with the requested hero section +2. A working contact form with validation +3. Navigation between all three requested pages +4. Styling that matches the provided design mockup + +npm start + +``` + +Completing a Python script task with execution: + +``` + + +I've created a data processing script that: +1. Reads the CSV files from the data directory +2. Cleans and normalizes the data as requested +3. Generates the summary statistics in JSON format +4. Outputs the processed data to the output directory + +python process_data.py + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/browser-action.md b/apps/docs/docs/advanced-usage/available-tools/browser-action.md new file mode 100644 index 00000000000..5de5adf499e --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/browser-action.md @@ -0,0 +1,194 @@ +--- +description: Automate web interactions in Roo Code using the browser_action tool for navigation, clicking, typing, and visual feedback. +keywords: + - browser_action + - web automation + - Puppeteer + - browser control + - Roo Code tools + - web testing + - screenshots +--- + +# browser_action + +The `browser_action` tool enables web automation and interaction via a Puppeteer-controlled browser. It allows Roo to launch browsers, navigate to websites, click elements, type text, and scroll pages with visual feedback through screenshots. + +--- + +## Parameters + +The tool accepts these parameters: + +- `action` (required): The action to perform: + - `launch`: Start a new browser session at a URL + - `click`: Click at specific x,y coordinates + - `type`: Type text via the keyboard + - `scroll_down`: Scroll down one page height + - `scroll_up`: Scroll up one page height + - `close`: End the browser session +- `url` (optional): The URL to navigate to when using the `launch` action +- `coordinate` (optional): The x,y coordinates for the `click` action (e.g., "450,300") +- `text` (optional): The text to type when using the `type` action + +--- + +## What It Does + +This tool creates an automated browser session that Roo can control to navigate websites, interact with elements, and perform tasks that require browser automation. Each action provides a screenshot of the current state, enabling visual verification of the process. + +--- + +## When is it used? + +- When Roo needs to interact with web applications or websites +- When testing user interfaces or web functionality +- When capturing screenshots of web pages +- When demonstrating web workflows visually + +--- + +## Key Features + +- Provides visual feedback with screenshots after each action and captures console logs +- Supports complete workflows from launching to page interaction to closing +- Enables precise interactions via coordinates, keyboard input, and scrolling +- Maintains consistent browser sessions with intelligent page loading detection +- Operates in two modes: local (isolated Puppeteer instance) or remote (connects to existing Chrome) +- Handles errors gracefully with automatic session cleanup and detailed messages +- Optimizes visual output with support for various formats and quality settings +- Tracks interaction state with position indicators and action history + +--- + +## Browser Modes + +The tool operates in two distinct modes: + +### Local Browser Mode (Default) + +- Downloads and manages a local Chromium instance through Puppeteer +- Creates a fresh browser environment with each launch +- No access to existing user profiles, cookies, or extensions +- Consistent, predictable behavior in a sandboxed environment +- Completely closes the browser when the session ends + +### Remote Browser Mode + +- Connects to an existing Chrome/Chromium instance running with remote debugging enabled +- Can access existing browser state, cookies, and potentially extensions +- Faster startup as it reuses an existing browser process +- Supports connecting to browsers in Docker containers or on remote machines +- Only disconnects (doesn't close) from the browser when session ends +- Requires Chrome to be running with remote debugging port open (typically port 9222) + +--- + +## Limitations + +- While the browser is active, only `browser_action` tool can be used +- Browser coordinates are viewport-relative, not page-relative +- Click actions must target visible elements within the viewport +- Browser sessions must be explicitly closed before using other tools +- Browser window has configurable dimensions (default 900x600) +- Cannot directly interact with browser DevTools +- Browser sessions are temporary and not persistent across Roo restarts +- Works only with Chrome/Chromium browsers, not Firefox or Safari +- Local mode has no access to existing cookies; remote mode requires Chrome with debugging enabled + +--- + +## How It Works + +When the `browser_action` tool is invoked, it follows this process: + +1. **Action Validation and Browser Management**: + + - Validates the required parameters for the requested action + - For `launch`: Initializes a browser session (either local Puppeteer instance or remote Chrome) + - For interaction actions: Uses the existing browser session + - For `close`: Terminates or disconnects from the browser appropriately + +2. **Page Interaction and Stability**: + + - Ensures pages are fully loaded using DOM stability detection via `waitTillHTMLStable` algorithm + - Executes requested actions (navigation, clicking, typing, scrolling) with proper timing + - Monitors network activity after clicks and waits for navigation when necessary + +3. **Visual Feedback**: + + - Captures optimized screenshots using WebP format (with PNG fallback) + - Records browser console logs for debugging purposes + - Tracks mouse position and maintains paginated history of actions + +4. **Session Management**: + - Maintains browser state across multiple actions + - Handles errors and automatically cleans up resources + - Enforces proper workflow sequence (launch → interactions → close) + +--- + +## Workflow Sequence + +Browser interactions must follow this specific sequence: + +1. **Session Initialization**: All browser workflows must start with a `launch` action +2. **Interaction Phase**: Multiple `click`, `type`, and scroll actions can be performed +3. **Session Termination**: All browser workflows must end with a `close` action +4. **Tool Switching**: After closing the browser, other tools can be used + +--- + +## Examples When Used + +- When creating a web form submission process, Roo launches a browser, navigates to the form, fills out fields with the `type` action, and clicks submit. +- When testing a responsive website, Roo navigates to the site and uses scroll actions to examine different sections. +- When capturing screenshots of a web application, Roo navigates through different pages and takes screenshots at each step. +- When demonstrating an e-commerce checkout flow, Roo simulates the entire process from product selection to payment confirmation. + +--- + +## Usage Examples + +Launching a browser and navigating to a website: + +``` + +launch +https://example.com + +``` + +Clicking at specific coordinates (e.g., a button): + +``` + +click +450,300 + +``` + +Typing text into a focused input field: + +``` + +type +Hello, World! + +``` + +Scrolling down to see more content: + +``` + +scroll_down + +``` + +Closing the browser session: + +``` + +close + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/codebase-search.md b/apps/docs/docs/advanced-usage/available-tools/codebase-search.md new file mode 100644 index 00000000000..f5f037b4a4d --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/codebase-search.md @@ -0,0 +1,275 @@ +--- +description: Perform intelligent semantic searches across your codebase using AI embeddings to find relevant code by meaning, not just keywords. +keywords: + - codebase_search + - semantic search + - AI embeddings + - code search + - Roo Code tools + - vector search + - Qdrant +--- + +# codebase_search + +:::info Setup Required +The `codebase_search` tool is part of the [Codebase Indexing](/features/codebase-indexing) feature. It requires additional setup including an embedding provider and vector database. +::: + +The `codebase_search` tool performs semantic searches across your entire codebase using AI embeddings. Unlike traditional text-based search, it understands the meaning of your queries and finds relevant code even when exact keywords don't match. + +--- + +## Parameters + +The tool accepts these parameters: + +- `query` (required): Natural language search query describing what you're looking for +- `path` (optional): Directory path to limit search scope to a specific part of your codebase + +--- + +## What It Does + +This tool searches through your indexed codebase using semantic similarity rather than exact text matching. It finds code blocks that are conceptually related to your query, even if they don't contain the exact words you searched for. Results include relevant code snippets with file paths, line numbers, and similarity scores. + +--- + +## When is it used? + +- When Roo needs to find code related to specific functionality across your project +- When looking for implementation patterns or similar code structures +- When searching for error handling, authentication, or other conceptual code patterns +- When exploring unfamiliar codebases to understand how features are implemented +- When finding related code that might be affected by changes or refactoring + +--- + +## Key Features + +- **Semantic Understanding**: Finds code by meaning rather than exact keyword matches +- **Cross-Project Search**: Searches across your entire indexed codebase, not just open files +- **Contextual Results**: Returns code snippets with file paths and line numbers for easy navigation +- **Similarity Scoring**: Results ranked by relevance with similarity scores (0-1 scale) +- **Scope Filtering**: Optional path parameter to limit searches to specific directories +- **Intelligent Ranking**: Results sorted by semantic relevance to your query +- **UI Integration**: Results displayed with syntax highlighting and navigation links +- **Performance Optimized**: Fast vector-based search with configurable result limits + +--- + +## Requirements + +This tool is only available when the Codebase Indexing feature is properly configured: + +- **Feature Configured**: Codebase Indexing must be configured in settings +- **Embedding Provider**: OpenAI API key or Ollama configuration required +- **Vector Database**: Qdrant instance running and accessible +- **Index Status**: Codebase must be indexed (status: "Indexed" or "Indexing") + +--- + +## Limitations + +- **Requires Configuration**: Depends on external services (embedding provider + Qdrant) +- **Index Dependency**: Only searches through indexed code blocks +- **Result Limits**: Maximum of 50 results per search to maintain performance +- **Similarity Threshold**: Only returns results above similarity threshold (default: 0.4, configurable) +- **File Size Limits**: Limited to files under 1MB that were successfully indexed +- **Language Support**: Effectiveness depends on Tree-sitter language support + +--- + +## How It Works + +When the `codebase_search` tool is invoked, it follows this process: + +1. **Availability Validation**: + + - Verifies that the CodeIndexManager is available and initialized + - Confirms codebase indexing is enabled in settings + - Checks that indexing is properly configured (API keys, Qdrant URL) + - Validates the current index state allows searching + +2. **Query Processing**: + + - Takes your natural language query and generates an embedding vector + - Uses the same embedding provider configured for indexing (OpenAI or Ollama) + - Converts the semantic meaning of your query into a mathematical representation + +3. **Vector Search Execution**: + + - Searches the Qdrant vector database for similar code embeddings + - Uses cosine similarity to find the most relevant code blocks + - Applies the minimum similarity threshold (default: 0.4, configurable) to filter results + - Limits results to 50 matches for optimal performance + +4. **Path Filtering** (if specified): + + - Filters results to only include files within the specified directory path + - Uses normalized path comparison for accurate filtering + - Maintains relevance ranking within the filtered scope + +5. **Result Processing and Formatting**: + + - Converts absolute file paths to workspace-relative paths + - Structures results with file paths, line ranges, similarity scores, and code content + - Formats for both AI consumption and UI display with syntax highlighting + +6. **Dual Output Format**: + - **AI Output**: Structured text format with query, file paths, scores, and code chunks + - **UI Output**: JSON format with syntax highlighting and navigation capabilities + +--- + +## Search Query Best Practices + +### Effective Query Patterns + +**Good: Conceptual and specific** + +```xml + +user authentication and password validation + +``` + +**Good: Feature-focused** + +```xml + +database connection pool setup + +``` + +**Good: Problem-oriented** + +```xml + +error handling for API requests + +``` + +**Less effective: Too generic** + +```xml + +function + +``` + +### Query Types That Work Well + +- **Functional Descriptions**: "file upload processing", "email validation logic" +- **Technical Patterns**: "singleton pattern implementation", "factory method usage" +- **Domain Concepts**: "user profile management", "payment processing workflow" +- **Architecture Components**: "middleware configuration", "database migration scripts" + +--- + +## Directory Scoping + +Use the optional `path` parameter to focus searches on specific parts of your codebase: + +**Search within API modules:** + +```xml + +endpoint validation middleware +src/api + +``` + +**Search in test files:** + +```xml + +mock data setup patterns +tests + +``` + +**Search specific feature directories:** + +```xml + +component state management +src/components/auth + +``` + +--- + +## Result Interpretation + +### Similarity Scores + +- **0.8-1.0**: Highly relevant matches, likely exactly what you're looking for +- **0.6-0.8**: Good matches with strong conceptual similarity +- **0.4-0.6**: Potentially relevant but may require review +- **Below 0.4**: Filtered out as too dissimilar + +### Result Structure + +Each search result includes: + +- **File Path**: Workspace-relative path to the file containing the match +- **Score**: Similarity score indicating relevance (0.4-1.0) +- **Line Range**: Start and end line numbers for the code block +- **Code Chunk**: The actual code content that matched your query + +--- + +## Examples When Used + +- When implementing a new feature, Roo searches for "authentication middleware" to understand existing patterns before writing new code. +- When debugging an issue, Roo searches for "error handling in API calls" to find related error patterns across the codebase. +- When refactoring code, Roo searches for "database transaction patterns" to ensure consistency across all database operations. +- When onboarding to a new codebase, Roo searches for "configuration loading" to understand how the application bootstraps. + +--- + +## Usage Examples + +Searching for authentication-related code across the entire project: + +```xml + +user login and authentication logic + +``` + +Finding database-related code in a specific directory: + +```xml + +database connection and query execution +src/data + +``` + +Looking for error handling patterns in API code: + +```xml + +HTTP error responses and exception handling +src/api + +``` + +Searching for testing utilities and mock setups: + +```xml + +test setup and mock data creation +tests + +``` + +Finding configuration and environment setup code: + +```xml + +environment variables and application configuration + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/execute-command.md b/apps/docs/docs/advanced-usage/available-tools/execute-command.md new file mode 100644 index 00000000000..a51ba91b80a --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/execute-command.md @@ -0,0 +1,194 @@ +--- +description: Execute terminal commands in Roo Code for system operations, dependency installation, builds, and development workflows. +keywords: + - execute_command + - CLI commands + - terminal + - system operations + - Roo Code tools + - command execution + - shell integration +--- + +# execute_command + +The `execute_command` tool runs CLI commands on the user's system. It allows Roo to perform system operations, install dependencies, build projects, start servers, and execute other terminal-based tasks needed to accomplish user objectives. + +--- + +## Parameters + +The tool accepts these parameters: + +- `command` (required): The CLI command to execute. Must be valid for the user's operating system. +- `cwd` (optional): The working directory to execute the command in. If not provided, the current working directory is used. + +--- + +## What It Does + +This tool executes terminal commands directly on the user's system, enabling a wide range of operations from file manipulations to running development servers. Commands run in managed terminal instances with real-time output capture, integrated with VS Code's terminal system for optimal performance and security. + +--- + +## When is it used? + +- When installing project dependencies (npm install, pip install, etc.) +- When building or compiling code (make, npm run build, etc.) +- When starting development servers or running applications +- When initializing new projects (git init, npm init, etc.) +- When performing file operations beyond what other tools provide +- When running tests or linting operations +- When needing to execute specialized commands for specific technologies + +--- + +## Key Features + +- Integrates with VS Code shell API for reliable terminal execution +- Reuses terminal instances when possible through a registry system +- Captures command output line by line with real-time feedback +- Supports long-running commands that continue in the background +- Allows specification of custom working directories +- Maintains terminal history and state across command executions +- Handles complex command chains appropriate for the user's shell +- Provides detailed command completion status and exit code interpretation +- Supports interactive terminal applications with user feedback loop +- Shows terminals during execution for transparency +- Validates commands for security using shell-quote parsing +- Blocks potentially dangerous subshell execution patterns +- Integrates with RooIgnore system for file access control +- Handles terminal escape sequences for clean output + +--- + +## Limitations + +- Command access may be restricted by RooIgnore rules and security validations +- Commands with elevated permission requirements may need user configuration +- Behavior may vary across operating systems for certain commands +- Very long-running commands may require specific handling +- File paths should be properly escaped according to the OS shell rules +- Not all terminal features may work with remote development scenarios + +--- + +## How It Works + +When the `execute_command` tool is invoked, it follows this process: + +1. **Command Validation and Security Checks**: + + - Parses the command using shell-quote to identify components + - Validates against security restrictions (subshell usage, restricted files) + - Checks against RooIgnore rules for file access permissions + - Ensures the command meets system security requirements + +2. **Terminal Management**: + + - Gets or creates a terminal through TerminalRegistry + - Sets up the working directory context + - Prepares event listeners for output capture + - Shows the terminal for user visibility + +3. **Command Execution and Monitoring**: + + - Executes via VS Code's shellIntegration API + - Captures output with escape sequence processing + - Throttles output handling (100ms intervals) + - Monitors for command completion or errors + - Detects "hot" processes like compilers for special handling + +4. **Result Processing**: + - Strips ANSI/VS Code escape sequences for clean output + - Interprets exit codes with detailed signal information + - Updates working directory tracking if changed by command + - Provides command status with appropriate context + +--- + +## Terminal Implementation Details + +The tool uses a sophisticated terminal management system: + +1. **First Priority: Terminal Reuse** + + - The TerminalRegistry tries to reuse existing terminals when possible + - This reduces proliferation of terminal instances and improves performance + - Terminal state (working directory, history) is preserved across commands + +2. **Second Priority: Security Validation** + + - Commands are parsed using shell-quote for component analysis + - Dangerous patterns like `$(...)` and backticks are blocked + - Commands are checked against RooIgnore rules for file access control + - A prefix-based allowlist system validates command patterns + +3. **Performance Optimizations** + + - Output is processed in 100ms throttled intervals to prevent UI overload + - Zero-copy buffer management uses index-based tracking for efficiency + - Special handling for compilation and "hot" processes + - Platform-specific optimizations for Windows PowerShell + +4. **Error and Signal Handling** + - Exit codes are mapped to detailed signal information (SIGTERM, SIGKILL, etc.) + - Core dump detection for critical failures + - Working directory changes are tracked and handled automatically + - Clean recovery from terminal disconnection scenarios + +--- + +## Examples When Used + +- When setting up a new project, Roo runs initialization commands like `npm init -y` followed by installing dependencies. +- When building a web application, Roo executes build commands like `npm run build` to compile assets. +- When deploying code, Roo runs git commands to commit and push changes to a repository. +- When troubleshooting, Roo executes diagnostic commands to gather system information. +- When starting a development server, Roo launches the appropriate server command (e.g., `npm start`). +- When running tests, Roo executes the test runner command for the project's testing framework. + +--- + +## Usage Examples + +Running a simple command in the current directory: + +``` + +npm run dev + +``` + +Installing dependencies for a project: + +``` + +npm install express mongodb mongoose dotenv + +``` + +Running multiple commands in sequence: + +``` + +mkdir -p src/components && touch src/components/App.js + +``` + +Executing a command in a specific directory: + +``` + +git status +./my-project + +``` + +Building and then starting a project: + +``` + +npm run build && npm start + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/list-code-definition-names.md b/apps/docs/docs/advanced-usage/available-tools/list-code-definition-names.md new file mode 100644 index 00000000000..2d7feb76d83 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/list-code-definition-names.md @@ -0,0 +1,149 @@ +--- +description: Get a structural overview of your codebase by listing classes, functions, and interfaces with the list_code_definition_names tool. +keywords: + - list_code_definition_names + - code structure + - code definitions + - Roo Code tools + - codebase overview + - Tree-sitter +--- + +# list_code_definition_names + +The `list_code_definition_names` tool provides a structural overview of your codebase by listing code definitions from source files at the top level of a specified directory. It helps Roo understand code architecture by displaying line numbers and definition snippets. + +--- + +## Parameters + +The tool accepts these parameters: + +- `path` (required): The path of the directory to list top level source code definitions for, relative to the current working directory + +--- + +## What It Does + +This tool scans source code files at the top level of a specified directory and extracts code definitions like classes, functions, and interfaces. It displays the line numbers and actual code for each definition, providing a quick way to map the important components of your codebase. + +--- + +## When is it used? + +- When Roo needs to understand your codebase architecture quickly +- When Roo needs to locate important code constructs across multiple files +- When planning refactoring or extensions to existing code +- Before diving into implementation details with other tools +- When identifying relationships between different parts of your codebase + +--- + +## Key Features + +- Extracts classes, functions, methods, interfaces, and other definitions from source files +- Displays line numbers and actual source code for each definition +- Supports multiple programming languages including JavaScript, TypeScript, Python, Rust, Go, C++, C, C#, Ruby, Java, PHP, Swift, and Kotlin +- Processes only files at the top level of the specified directory (not subdirectories) +- Limits processing to a maximum of 50 files for performance +- Focuses on top-level definitions to avoid overwhelming detail +- Helps identify code organization patterns across the project +- Creates a mental map of your codebase's architecture +- Works in conjunction with other tools like `read_file` for deeper analysis + +--- + +## Limitations + +- Only identifies top-level definitions, not nested ones +- Only processes files at the top level of the specified directory, not subdirectories +- Limited to processing a maximum of 50 files per request +- Dependent on language-specific parsers, with varying detection quality +- May not recognize all definitions in languages with complex syntax +- Not a substitute for reading code to understand implementation details +- Cannot detect runtime patterns or dynamic code relationships +- Does not provide information about how definitions are used +- May have reduced accuracy with highly dynamic or metaprogrammed code +- Limited to specific languages supported by the implemented Tree-sitter parsers + +--- + +## How It Works + +When the `list_code_definition_names` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required `path` parameter +2. **Path Resolution**: Resolves the relative path to an absolute path +3. **Directory Scanning**: Scans only the top level of the specified directory for source code files (not recursive) +4. **File Filtering**: Limits processing to a maximum of 50 files +5. **Language Detection**: Identifies file types based on extensions (.js, .jsx, .ts, .tsx, .py, .rs, .go, .cpp, .hpp, .c, .h, .cs, .rb, .java, .php, .swift, .kt, .kts) +6. **Code Parsing**: Uses Tree-sitter to parse code and extract definitions through these steps: + - Parsing file content into an Abstract Syntax Tree (AST) + - Creating a query using a language-specific query string + - Sorting the captures by their position in the file +7. **Result Formatting**: Outputs definitions with line numbers and actual source code + +--- + +## Output Format + +The output shows file paths followed by line numbers and the actual source code of each definition. For example: + +``` +src/utils.js: +0--0 | export class HttpClient { +5--5 | formatDate() { +10--10 | function parseConfig(data) { + +src/models/User.js: +0--0 | interface UserProfile { +10--10 | export class User { +20--20 | function createUser(data) { +``` + +Each line displays: + +- The start and end line numbers of the definition +- The pipe symbol (|) as a separator +- The actual source code of the definition + +This output format helps you quickly see both where definitions are located in the file and their implementation details. + +--- + +## Examples When Used + +- When starting a new task, Roo first lists key code definitions to understand the overall structure of your project. +- When planning refactoring work, Roo uses this tool to identify classes and functions that might be affected. +- When exploring unfamiliar codebases, Roo maps the important code constructs before diving into implementation details. +- When adding new features, Roo identifies existing patterns and relevant code definitions to maintain consistency. +- When troubleshooting bugs, Roo maps the codebase structure to locate potential sources of the issue. +- When planning architecture changes, Roo identifies all affected components across files. + +--- + +## Usage Examples + +Listing code definitions in the current directory: + +``` + +. + +``` + +Examining a specific module's structure: + +``` + +src/components + +``` + +Exploring a utility library: + +``` + +lib/utils + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/list-files.md b/apps/docs/docs/advanced-usage/available-tools/list-files.md new file mode 100644 index 00000000000..7ddb02d2b12 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/list-files.md @@ -0,0 +1,168 @@ +--- +description: Learn how the list_files tool helps Roo Code explore project structures, list directories, and navigate codebases with recursive and filtered listing capabilities. +keywords: + - list_files + - Roo Code tools + - directory listing + - file exploration + - project structure + - recursive listing + - codebase navigation + - VS Code AI +--- + +# list_files + +The `list_files` tool displays the files and directories within a specified location. It helps Roo understand your project structure and navigate your codebase effectively. + +--- + +## Parameters + +The tool accepts these parameters: + +- `path` (required): The path of the directory to list contents for, relative to the current working directory +- `recursive` (optional): Whether to list files recursively. Use `true` for recursive listing, `false` or omit for top-level only. + +--- + +## What It Does + +This tool lists all files and directories in a specified location, providing a clear overview of your project structure. It can either show just the top-level contents or recursively explore subdirectories. + +--- + +## When is it used? + +- When Roo needs to understand your project structure +- When Roo explores what files are available before reading specific ones +- When Roo maps a codebase to better understand its organization +- Before using more targeted tools like `read_file` or `search_files` +- When Roo needs to check for specific file types (like configuration files) across a project + +--- + +## Key Features + +- Lists both files and directories with directories clearly marked +- Offers both recursive and non-recursive listing modes +- Intelligently ignores common large directories like `node_modules` and `.git` in recursive mode +- Respects `.gitignore` rules when in recursive mode +- Marks files ignored by `.rooignore` with a lock symbol (🔒) when `showRooIgnoredFiles` is enabled +- Optimizes file listing performance by leveraging the `ripgrep` tool. +- Sorts results to show directories before their contents, maintaining a logical hierarchy +- Presents results in a clean, organized format +- Automatically creates a mental map of your project structure + +--- + +## Limitations + +- File listing is capped at about 200 files by default to prevent performance issues +- The underlying `ripgrep` file listing process has a 10-second timeout; if exceeded, partial results may be returned. +- When the file limit is hit, it adds a note suggesting to use `list_files` on specific subdirectories +- Not designed for confirming the existence of files you've just created +- May have reduced performance in very large directory structures +- Cannot list files in root or home directories for security reasons + +--- + +## How It Works + +When the `list_files` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required `path` parameter and optional `recursive` parameter +2. **Path Resolution**: Resolves the relative path to an absolute path +3. **Security Checks**: Prevents listing files in sensitive locations like root or home directories +4. **Directory/File Scanning**: + - Uses the `ripgrep` tool to efficiently list files, applying a 10-second timeout. + - Uses Node.js `fs` module to list directories. + - Applies different filtering logic for recursive vs. non-recursive modes. +5. **Result Filtering**: + - In recursive mode, skips common large directories like `node_modules`, `.git`, etc. + - Respects `.gitignore` rules when in recursive mode + - Handles `.rooignore` patterns, either hiding files or marking them with a lock symbol +6. **Formatting**: + - Marks directories with a trailing slash (`/`) + - Sorts results to show directories before their contents for logical hierarchy + - Marks ignored files with a lock symbol (🔒) when `showRooIgnoredFiles` is enabled + - Caps results at 200 files by default with a note about using subdirectories + - Organizes results for readability + +--- + +## File Listing Format + +The file listing results include: + +- Each file path is displayed on its own line +- Directories are marked with a trailing slash (`/`) +- Files ignored by `.rooignore` are marked with a lock symbol (🔒) when `showRooIgnoredFiles` is enabled +- Results are sorted logically with directories appearing before their contents +- When the file limit is reached, a message appears suggesting to use `list_files` on specific subdirectories + +Example output format: + +``` +src/ +src/components/ +src/components/Button.tsx +src/components/Header.tsx +src/utils/ +src/utils/helpers.ts +src/index.ts +... +File listing truncated (showing 200 of 543 files). Use list_files on specific subdirectories for more details. +``` + +When `.rooignore` files are used and `showRooIgnoredFiles` is enabled: + +``` +src/ +src/components/ +src/components/Button.tsx +src/components/Header.tsx +🔒 src/secrets.json +src/utils/ +src/utils/helpers.ts +src/index.ts +``` + +--- + +## Examples When Used + +- When starting a new task, Roo may list the project files to understand its structure before diving into specific code. +- When asked to find specific types of files (like all JavaScript files), Roo first lists directories to know where to look. +- When providing recommendations for code organization, Roo examines the current project structure first. +- When setting up a new feature, Roo lists related directories to understand the project conventions. + +--- + +## Usage Examples + +Listing top-level files in the current directory: + +``` + +. + +``` + +Recursively listing all files in a source directory: + +``` + +src +true + +``` + +Examining a specific project subdirectory: + +``` + +src/components +false + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/new-task.md b/apps/docs/docs/advanced-usage/available-tools/new-task.md new file mode 100644 index 00000000000..bd7a7fd6886 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/new-task.md @@ -0,0 +1,171 @@ +--- +description: Discover how the new_task tool enables complex workflow management by creating subtasks with different modes, maintaining parent-child relationships for organized development. +keywords: + - new_task + - Roo Code tools + - subtasks + - workflow management + - task hierarchy + - mode switching + - complex projects + - task organization + - VS Code AI +--- + +# new_task + +The `new_task` tool creates subtasks with specialized modes while maintaining a parent-child relationship. It breaks down complex projects into manageable pieces, each operating in the mode best suited for specific work. + +--- + +## Parameters + +The tool accepts these parameters: + +- `mode` (required): The slug of the mode to start the new task in (e.g., "code", "ask", "architect") +- `message` (required): The initial user message or instructions for this new task +- `todos` (optional): Initial todo list in markdown checklist format + +--- + +## What It Does + +This tool creates a new task instance with a specified starting mode and initial message. It allows complex workflows to be divided into subtasks with their own conversation history. Parent tasks are paused during subtask execution and resumed when the subtask completes, with results transferred back to the parent. + +--- + +## When is it used? + +- When breaking down complex projects into separate, focused subtasks +- When different aspects of a task require different specialized modes +- When different phases of work benefit from context separation +- When organizing multi-phase development workflows + +--- + +## Key Features + +- Creates subtasks with their own conversation history and specialized mode +- Pauses parent tasks for later resumption +- Maintains hierarchical task relationships for navigation +- Transfers results back to parent tasks upon completion +- Supports workflow segregation for complex projects +- Allows different parts of a project to use modes optimized for specific work +- Requires explicit user approval for task creation +- Provides clear task transition in the UI + +--- + +## Limitations + +- Cannot create tasks with modes that don't exist +- Requires user approval before creating each new task +- Task interface may become complex with deeply nested subtasks +- Subtasks inherit certain workspace and extension configurations from parents +- May require re-establishing context when switching between deeply nested tasks +- Task completion needs explicit signaling to properly return to parent tasks + +--- + +## How It Works + +When the `new_task` tool is invoked, it follows this process: + +1. **Parameter Validation**: + + - Validates the required `mode` and `message` parameters + - Verifies that the requested mode exists in the system + +2. **Task Stack Management**: + + - Maintains a task stack that tracks all active and paused tasks + - Preserves the current mode for later resumption + - Sets the parent task to paused state + +3. **Task Context Management**: + + - Creates a new task context with the provided message + - Assigns unique taskId and instanceId identifiers for state management + - Captures telemetry data on tool usage and task lifecycles + +4. **Mode Switching and Integration**: + + - Switches to the specified mode with appropriate role and capabilities + - Initializes the new task with the provided message + - Integrates with VS Code's command palette and code actions + +5. **Task Completion and Result Transfer**: + - When subtask completes, result is passed back to parent task via `finishSubTask()` + - Parent task resumes in its original mode + - Task history and token usage metrics are updated + - The `taskCompleted` event is emitted with performance data + +--- + +## Configuration + +Streamline hierarchical task planning with the optional todo list parameter for subtasks: + +- **Pass Todo Lists**: Include predefined todo lists when creating subtasks +- **Maintain Context**: Pass along context to the subtask in the form of a todo list +- **Optional Enforcement**: The "New Task Require Todos" setting in VS Code can enforce todo lists for all new subtasks if desired + +Subtask todo lists configuration in VS Code settings + +This feature works out of the box, and you can optionally configure VS Code settings to require todos for all new tasks. + +--- + +## Examples When Used + +- When a front-end developer needs to architect a new feature, implement the code, and document it, they can create separate tasks for each phase with results flowing from one phase to the next. +- When debugging an issue before implementing a fix, the debugging task can document findings that are passed to the implementation task. +- When developing a full-stack application, database schema designs from an architect-mode task inform implementation details in a subsequent code-mode task. +- When documenting a system after implementation, the documentation task can reference the completed implementation while using documentation-specific features. + +--- + +## Usage Examples + +Creating a new task in code mode: + +``` + +code +Implement a user authentication service with login, registration, and password reset functionality. + +``` + +Creating a documentation task after completing implementation: + +``` + +docs +Create comprehensive API documentation for the authentication service we just built. + +``` + +Breaking down a complex feature into architectural planning and implementation: + +``` + +architect +Design the database schema and system architecture for our new e-commerce platform. + +``` + +Creating a task with an initial todo list: + +``` + +code +Build a REST API for user management + +[ ] Set up Express server +[ ] Create user model +[ ] Implement CRUD endpoints +[ ] Add authentication middleware +[ ] Write API tests + + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/read-file.md b/apps/docs/docs/advanced-usage/available-tools/read-file.md new file mode 100644 index 00000000000..5f63ca788e9 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/read-file.md @@ -0,0 +1,705 @@ +--- +description: Explore the read_file tool's capabilities for examining file contents, supporting line ranges, PDF/DOCX extraction, image reading, and experimental multi-file concurrent reading. +keywords: + - read_file + - Roo Code tools + - file reading + - concurrent reads + - line numbers + - PDF extraction + - DOCX support + - image support + - OCR workflows + - code analysis + - VS Code AI +--- + +# read_file + +The `read_file` tool examines the contents of files in a project. It allows Roo to understand code, configuration files, documentation, and now images to provide better assistance. + +:::info Multi-File Support +The `read_file` tool accepts multiple files via the `args` format. Concurrency and per‑request limits are configured in the UI; the backend tool doesn’t hard‑enforce a file count cap. Some models may use a simplified single‑file variant. + +**Note:** When reading files (even single files), the LLM will see a message encouraging multi-file reads: "Reading multiple files at once is more efficient for the LLM. If other files are relevant to your current task, please read them simultaneously." +::: + +--- + +## Parameters + +The tool accepts parameters in two formats depending on your configuration: + +### Standard Format (Single File) + +- `path` (required): The path of the file to read relative to the current working directory +- `start_line` (optional): The starting line number to read from (1-based indexing) +- `end_line` (optional): The ending line number to read to (1-based, inclusive) + +:::note Legacy Format +While the single-file parameters (`path`, `start_line`, `end_line`) are still supported for backward compatibility, we recommend using the newer `args` format for consistency and future compatibility. +::: + +### Enhanced Format (Multi-File) + +The tool also accepts an `args` parameter containing multiple file entries. Concurrency is UI‑configured; the backend accepts multiple files regardless of that setting. Some models may use a simple single‑file tool. + +- `args` (required): Container for multiple file specifications + - `file` (required): Individual file specification + - `path` (required): The path of the file to read + - `line_range` (optional): Line range specification (e.g., "1-50" or "100-150"). Multiple `line_range` elements can be specified per file. + +--- + +## What It Does + +This tool reads the content of a specified file and returns it with line numbers for easy reference. It can read entire files or specific sections, extract text from PDFs and Word documents, and display images in various formats. + +--- + +## When is it used? + +- When Roo needs to understand existing code structure +- When Roo needs to analyze configuration files +- When Roo needs to extract information from text files +- When Roo needs to see code before suggesting changes +- When specific line numbers need to be referenced in discussions + +--- + +## Key Features + +- Displays file content with line numbers for easy reference +- Can read specific portions of files by specifying line ranges +- Extracts readable text from PDF, DOCX, XLSX, and IPYNB files +- **Image support**: Displays images in multiple formats (PNG, JPG, JPEG, GIF, WebP, SVG, BMP, ICO, TIFF/TIF, AVIF) +- **Intelligent reading**: Token-budget aware reading that auto-truncates to fit remaining budget instead of failing +- **Large file preview**: Returns a 100KB preview for very large files to enable quick inspection +- **Graceful error recovery**: Recovers from stream errors and guides you to use line_range for targeted reads +- Automatically truncates large text files when no line range is specified, showing the beginning of the file +- Appends `list_code_definition_names` for a code structure overview when content is truncated by line limits +- Efficiently streams only requested line ranges for better performance +- Makes it easy to discuss specific parts of code with line numbering +- **Multi-file support**: Read multiple files simultaneously with batch approval + +--- + +## Multi-File Capabilities + +Multi-file reads are supported. Concurrency and per‑request limits are configured in Settings; the backend tool doesn’t hard‑enforce a file count cap and behavior may be constrained by model/tool selection: + +### Configuration + +- **Location**: Settings > Context > "Concurrent file reads limit" +- **Description**: "Maximum number of files the 'read_file' tool can process concurrently. Higher values may speed up reading multiple small files but increase memory usage." +- **Range**: 1-100 (slider control) +- **Default**: 5 + +### Batch Processing + +- UI‑configurable limit up to 100 files per request (default 5). Backend doesn’t hard‑enforce a cap; actual behavior may be constrained by model/tool. +- Parallel processing for improved performance +- Batch approval interface for user consent + +### Enhanced User Experience + +- Single approval dialog for multiple files +- Individual file override options +- Clear visibility into which files will be accessed +- Graceful handling of mixed success/failure scenarios + +### Improved Efficiency + +- Reduces interruptions from multiple approval dialogs +- Faster processing through parallel file reading +- Smart batching of related files +- Configurable concurrency limits to match system capabilities + +--- + +## Limitations + +- **Large files**: For extremely large files, the tool may return a preview and will guide you to use `line_range` for targeted reading. +- **Binary files**: Except for PDF, DOCX, XLSX, IPYNB, and supported image formats, content may not be human‑readable. +- **UI/model constraints**: Concurrency limits and per‑request file counts are configured in the UI; the backend tool doesn’t hard‑enforce a cap. +- **Image files**: Images are provided as base64 data URLs. High‑resolution images can be large. + - Default max single image size: 5MB + - Default max total image size: 20MB +- **Unsupported binary formats**: Returns a `Binary file - content not displayed` placeholder. +- **Token budget**: Content may be truncated to fit remaining token budget; notices indicate how to proceed. + +--- + +## How It Works + +When the `read_file` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required `path` parameter and optional parameters +2. **Path Resolution**: Resolves the relative path to an absolute path +3. **Reading Strategy Selection**: + - The tool uses a strict priority hierarchy (explained in detail below) + - It chooses between range reading, auto-truncation, or full file reading +4. **Content Processing**: + - Adds line numbers to the content (e.g., "1 | const x = 13") where `1 |` is the line number. + - For truncated files, adds truncation notice and method definitions + - For special formats (PDF, DOCX, XLSX, IPYNB), extracts readable text + - For image formats, the XML includes a `` with size; the actual image is attached to the tool result as a base64 data URL (no dimensions returned; MIME type is implied by the data URL) + +--- + +## Reading Strategy Priority + +The tool uses a clear decision hierarchy to determine how to read a file: + +1. **First Priority: Explicit Line Range** + + - Legacy single‑file format: both `start_line` and `end_line` must be provided for a range read; otherwise it reads normally. + - Multi‑file `args` format: specify one or more `line_range` entries per file. + - Range reads stream only the requested lines and bypass `maxReadFileLine`, taking precedence over other options. + +2. **Second Priority: Token Budget Management** + + - The tool respects the remaining token budget to prevent context overruns + - If a file would exceed the remaining budget, it automatically truncates to fit + - For very large files (exceeding practical limits), returns a 100KB preview for quick inspection + - Provides guidance to use `line_range` for targeted reading of specific sections + - Recovers gracefully from stream errors and suggests alternative approaches + +3. **Third Priority: Automatic Truncation for Large Text Files** + + - Applies only when all of the following are true: + - Neither `start_line` nor `end_line` is specified. + - The file is identified as a text‑based file (not binary like PDF/DOCX/XLSX/IPYNB). + - The file’s total line count exceeds the `maxReadFileLine` setting (configurable; UI default may be 500; backend uses `-1`—no line limit—when unset). + - When automatic truncation occurs: + - The tool reads only the first `maxReadFileLine` lines. + - It appends a notice like: `Showing only X of Y total lines. Use line_range if you need to read more lines.` + - For code files, it appends `list_code_definition_names` for a structure overview. + - **Special Case – Definitions‑Only Mode**: When `maxReadFileLine` is `0`, the tool returns only code definitions without file content (plus a notice). + +4. **Default Behavior: Read Entire File** + - If neither an explicit range is given nor automatic truncation applies (e.g., the file is within the line limit, or it's a supported binary type), the tool reads the entire content. + - For supported formats like PDF and DOCX, it attempts to extract the full text content. + - For image formats, it returns a base64-encoded data URL that can be displayed in the chat interface. + +--- + +## Examples When Used + +- When asked to explain or improve code, Roo first reads the relevant files to understand the current implementation. +- When troubleshooting configuration issues, Roo reads config files to identify potential problems. +- When working with documentation, Roo reads existing docs to understand the current content before suggesting improvements. + +--- + +## Usage Examples + +Here are several scenarios demonstrating how the `read_file` tool is used and the typical output you might receive. + +### Reading an Entire File + +To read the complete content of a file: + +**Input:** + +```xml + +src/app.js + +``` + +**Simulated Output (for a small file like `example_small.txt`):** + +``` +1 | This is the first line. +2 | This is the second line. +3 | This is the third line. +``` + +_(Output will vary based on the actual file content)_ + +### Reading Specific Lines + +To read only a specific range of lines (e.g., 46-68): + +**Input:** + +```xml + +src/app.js +46 +68 + +``` + +**Simulated Output (for lines 2-3 of `example_five_lines.txt`):** + +``` +2 | Content of line two. +3 | Content of line three. +``` + +_(Output shows only the requested lines with their original line numbers)_ + +### Reading a Large Text File (Automatic Truncation) + +When reading a large text file without specifying a line range, the tool automatically truncates the content if it exceeds the internal line limit (e.g., 500 lines). + +**Input:** + +```xml + +logs/large_app.log + +``` + +**Simulated Output (for a 1500-line log file with a 500-line limit):** + +``` +1 | Log entry 1... +2 | Log entry 2... +... +500 | Log entry 500... + +Showing only 500 of 1500 total lines. Use line_range to read specific sections. +// Optional: Source code definitions summary might appear here for code files +``` + +_(Output shows the beginning lines up to the `maxReadFileLine` limit, plus a truncation notice. Use line ranges for full access.)_ + +### Reading Definitions Only + +When `maxReadFileLine` is set to `0` in user settings, the tool returns only source code definitions without file content: + +**Input:** + +```xml + + +src/services/auth.service.ts + +``` + +**Simulated Output:** + +```xml + + src/services/auth.service.ts + + class AuthService + method validateUser + method generateToken + + Showing only 0 of 150 total lines. Use line_range if you need to read more lines + +``` + +_(This mode provides a quick overview of file structure without reading content.)_ + +### Attempting to Read a Non-Existent File + +If the specified file does not exist: + +**Input:** + +```xml + +non_existent_file.txt + +``` + +**Simulated Output (Error):** + +``` +Error: File not found at path 'non_existent_file.txt'. +``` + +### Attempting to Read a Blocked File + +If the file is excluded by rules in a `.rooignore` file: + +**Input:** + +```xml + +.env + +``` + +**Simulated Output (Error):** + +```xml + + .env + Access denied by .rooignore rules + +``` + +--- + +### Intelligent Reading with Token Budget Management + +When reading large files, the tool automatically manages token budgets to prevent context overruns. + +**Scenario:** Reading a very large file without specifying a line range. + +**Input:** + +```xml + +logs/massive-debug.log + +``` + +**Simulated Output (for a file exceeding token budget):** + +``` +Preview: Showing first …MB of …MB file. Use line_range to read specific sections. +``` + +Alternative truncation notice: + +``` +File truncated to N of M characters due to context limitations. Use line_range to read specific sections. +``` + +This behavior ensures that: + +- Small files read completely with zero overhead +- Large files auto‑truncate to fit remaining token budget +- Very large files provide a quick preview +- You receive guidance to use `line_range` for targeted reads +- Stream errors are handled gracefully + +**Example with line_range for targeted reading:** + +```xml + +logs/massive-debug.log +1000 +1100 + +``` + +## Image Reading Examples + +The `read_file` tool now supports reading and displaying images directly in the chat interface. This enables powerful visual analysis workflows. + +### Reading a Single Image + +**Input:** + +```xml + +assets/logo.png + +``` + +**Output:** + +```xml + + assets/logo.png + Image file (123 KB) + +``` + +The image is displayed inline in the chat (base64 data URL attached to the tool result). No dimensions are returned; MIME type is implied by the data URL. + +### OCR Workflow Example + +Reading multiple images from a folder for text extraction: + +**Input:** + +```xml + + + + screenshots/page1.png + + + screenshots/page2.png + + + screenshots/page3.png + + + +``` + +**Usage:** + +``` +Please extract all text from these screenshot images and compile them into a single markdown document. +``` + +### Design Review Workflow + +Analyzing multiple design mockups: + +**Input:** + +```xml + + + + designs/homepage-v1.jpg + + + designs/homepage-v2.jpg + + + designs/mobile-view.png + + + +``` + +**Usage:** + +``` +Compare these design mockups and provide feedback on: +1. Visual consistency +2. Mobile responsiveness +3. Accessibility concerns +4. UI/UX improvements +``` + +### Supported Image Formats + +The tool supports the following image formats: + +- PNG +- JPG/JPEG +- GIF +- WebP +- SVG +- BMP +- ICO +- TIFF/TIF +- AVIF + +### Image Analysis Use Cases + +1. **Documentation Screenshots**: Extract text and create documentation from UI screenshots +2. **Error Debugging**: Analyze error screenshots to understand issues +3. **Design Reviews**: Compare mockups and provide visual feedback +4. **Diagram Analysis**: Understand architecture diagrams and flowcharts +5. **Code Screenshots**: Extract code from images when text isn't available +6. **UI Testing**: Verify visual elements and layouts + +--- + +## Multi-File Examples + +You can read multiple files simultaneously using the enhanced XML format. + +### Reading Multiple Complete Files + +To read several complete files at once: + +**Input:** + +```xml + + + + src/app.ts + + + src/utils.ts + + + src/config.json + + + +``` + +**Simulated Output:** + +```xml + + + src/app.ts + + 1 | import React from 'react' + 2 | import { Utils } from './utils' + 3 | // ... rest of file content + + + + src/utils.ts + + 1 | export class Utils { + 2 | static formatDate(date: Date): string { + 3 | // ... utility functions + + + + src/config.json + + 1 | { + 2 | "apiUrl": "https://api.example.com", + 3 | "timeout": 5000 + 4 | } + + + +``` + +### Reading Specific Line Ranges from Multiple Files + +To read specific sections from multiple files: + +**Input:** + +```xml + + + + src/app.ts + 1-20 + 45-60 + + + src/utils.ts + 10-25 + + + +``` + +**Simulated Output:** + +```xml + + + src/app.ts + + 1 | import React from 'react' + 2 | import { Utils } from './utils' + ... + 20 | const App = () => { + + 45 | const handleSubmit = () => { + 46 | // Handle form submission + ... + 60 | } + + + + src/utils.ts + + 10 | static formatDate(date: Date): string { + 11 | return date.toISOString().split('T')[0] + ... + 25 | } + + + +``` + +### Handling Mixed Results (Some Files Denied/Blocked) + +When some files are approved and others are denied or blocked: + +**Input:** + +```xml + + + + src/app.ts + + + .env + + + src/secret-config.ts + + + +``` + +**Simulated Output:** + +```xml + + + src/app.ts + + 1 | import React from 'react' + 2 | // ... file content successfully read + + + + .env + Access denied by .rooignore rules + + + src/secret-config.ts + User denied access to file + + +``` + +### Batch Approval Interface + +When requesting multiple files, you'll see a batch approval interface that allows you to: + +- **Approve All**: Grant access to all requested files +- **Deny All**: Deny access to all requested files +- **Individual Control**: Override decisions for specific files +- **File Preview**: Click file headers to open them in your editor + +The interface displays each file path clearly, making it easy to understand what Roo wants to access before granting permission. + +### Mixed Content Types + +You can read different types of files in a single request: + +**Input:** + +```xml + + + + README.md + + + architecture-diagram.png + + + config.json + + + requirements.pdf + + + +``` + +This allows Roo to analyze documentation, visual diagrams, configuration, and specifications all in one context. + +--- + +## Troubleshooting + +- Range read returns error + + - Cause: `start_line`/`end_line` invalid or `start_line > end_line` + - Fix: Provide both `start_line` and `end_line` as positive integers with `start_line ≤ end_line`; or use `args` with one or more `line_range` entries. + - Prevention: Prefer `line_range` in the multi‑file format for targeted reads. + +- Large file returned a preview + + - Cause: File exceeded token budget or the large‑file tokenization threshold; a preview was returned. + - Fix: Use `line_range` to request only the section you need; reduce requested ranges. + - Prevention: Adjust `maxReadFileLine` in Settings, or prefer targeted ranges on large files. + +- Image not displayed + - Cause: Model may not support images, or image limits exceeded (5MB per image; 20MB total per request). + - Fix: Switch to a vision‑capable model; reduce image size; request fewer/smaller images. + - Prevention: Keep images within limits and use supported formats (PNG, JPG/JPEG, GIF, WebP, SVG, BMP, ICO, TIFF/TIF, AVIF). diff --git a/apps/docs/docs/advanced-usage/available-tools/run-slash-command.md b/apps/docs/docs/advanced-usage/available-tools/run-slash-command.md new file mode 100644 index 00000000000..f17807b39d3 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/run-slash-command.md @@ -0,0 +1,359 @@ +--- +description: Execute predefined slash commands that provide templated instructions for common tasks, with support for built-in, global, and project-specific commands in Roo Code. +keywords: + - run_slash_command + - slash commands + - command templates + - Roo Code tools + - workflow automation + - instruction templates + - custom commands + - experimental feature +--- + +# run_slash_command + +:::warning Experimental Feature +The `run_slash_command` tool is an experimental feature that must be explicitly enabled in settings. Navigate to Settings > Experimental Settings and enable "Run Slash Command" to use this tool. +::: + +The `run_slash_command` tool executes predefined slash commands to retrieve specific instructions or content templates. These commands act as reusable instruction sets for common tasks, providing detailed guidance that Roo can interpret and execute. Commands can be defined at three levels with a clear priority hierarchy: project > global > built-in. + +--- + +## Parameters + +The tool accepts these parameters: + +- `command` (required): Name of the slash command to execute (without the leading slash) +- `args` (optional): Additional arguments or context to pass to the command + +--- + +## What It Does + +This tool retrieves and executes instruction templates defined as markdown files in command directories. It enables standardized workflows, reusable task instructions, and team-wide consistency through shared command templates. The tool validates experimental flag status, resolves commands through the priority hierarchy, and returns formatted instructions for Roo to interpret. + +--- + +## When is it used? + +- When executing standardized workflows that require consistent steps +- When retrieving project-specific or team-wide instruction templates +- When initializing codebases with analysis and documentation +- When accessing complex multi-step processes as single commands +- When maintaining consistency across team development practices + +--- + +## Key Features + +- **Three-Level Command System**: Built-in, global (~/.roo/commands/), and project-specific (.roo/commands/) commands +- **Priority Hierarchy**: Project commands override global, which override built-in commands +- **Markdown-Based Templates**: Simple `.md` files with optional YAML frontmatter for metadata +- **Dynamic Arguments**: Pass context-specific arguments to customize command execution +- **Automatic Discovery**: Commands are automatically found from their respective directories +- **Safe Execution**: Commands are text-only instructions requiring user approval, not executable code +- **Metadata Support**: Optional frontmatter for descriptions and argument hints +- **Error Recovery**: Graceful handling with helpful error messages and command suggestions +- **No Registration Required**: Simply place `.md` files in command directories + +--- + +## Requirements + +This tool requires explicit enablement: + +1. Open VS Code Settings +2. Navigate to Experimental Settings +3. Enable "Run Slash Command" +4. Restart VS Code if necessary + +--- + +## Limitations + +- **Experimental Status**: Feature is disabled by default and requires opt-in +- **Text-Only Instructions**: Commands provide instructions, not direct code execution +- **Approval Required**: All command executions require user approval +- **Directory-Based**: Commands must be in specific directory locations +- **Case-Sensitive**: Command names are matched with case sensitivity +- **Single Command**: Can only execute one command per tool invocation + +--- + +## How It Works + +When the `run_slash_command` tool is invoked, it follows this process: + +1. **Experimental Flag Validation**: + + - Checks if the `runSlashCommand` experiment is enabled + - Returns descriptive error if feature is disabled + - Provides instructions for enabling the feature + +2. **Parameter Processing**: + + - Validates the required `command` parameter + - Captures optional `args` for command customization + - Increments mistake counter for missing parameters + +3. **Command Resolution**: + + - Searches project directory first (`.roo/commands/`) + - Falls back to global directory (`~/.roo/commands/`) + - Finally checks built-in commands + - Returns undefined if command doesn't exist + +4. **Command Loading**: + + - Reads the markdown file for the command + - Parses optional YAML frontmatter using `gray-matter` + - Extracts description and argument hints if present + - Returns command content without frontmatter + +5. **Response Formatting**: + + - Includes command name and source location + - Adds description and argument hints if available + - Shows provided arguments for context + - Returns the full command content for interpretation + +6. **Error Handling**: + - Lists available commands if requested command not found + - Provides helpful error messages with alternatives + - Tracks consecutive mistakes for error patterns + +--- + +## Command Structure + +### File Format + +Commands are markdown files placed in designated directories: + +```markdown +--- +description: Brief description of what this command does +argument-hint: What arguments this command accepts +--- + +# Command Content + +Detailed instructions for the task go here. +This can include: + +- Step-by-step procedures +- Code templates +- Configuration examples +- Best practices +``` + +### Naming Convention + +- File name becomes the command name +- Use `.md` extension +- Example: `deploy.md` creates `/deploy` command +- Case-sensitive matching + +### Directory Locations + +1. **Built-in Commands**: Hardcoded in source code +2. **Global Commands**: `~/.roo/commands/` +3. **Project Commands**: `/.roo/commands/` + +--- + +## Built-in Commands + +### /init Command + +The only current built-in command analyzes your codebase and creates documentation: + +- Analyzes project structure and architecture +- Creates AGENTS.md documentation files +- Identifies coding patterns and conventions +- Documents non-obvious implementation details +- Provides AI-friendly project context + +--- + +## Creating Custom Commands + +### Step-by-Step Guide + +1. **Create Command Directory**: + + ```bash + # For project-specific commands + mkdir -p .roo/commands + + # For global commands + mkdir -p ~/.roo/commands + ``` + +2. **Create Command File**: + + ```bash + # Create a deployment command + touch .roo/commands/deploy.md + ``` + +3. **Add Command Content**: + + ```markdown + --- + description: Deploy application to production environment + argument-hint: environment name (staging, production) + --- + + ## Deployment Process + + 1. Run test suite to ensure all tests pass + 2. Build production bundle with optimizations + 3. Update environment variables for target + 4. Deploy to specified environment + 5. Run post-deployment health checks + 6. Update deployment documentation + ``` + +4. **Use the Command**: + The command is immediately available for use without registration. + +--- + +## Command Priority System + +When multiple commands with the same name exist: + +1. **Project Level** (highest priority) + + - Located in `.roo/commands/` + - Allows project-specific overrides + - Committed to version control for team sharing + +2. **Global Level** (medium priority) + + - Located in `~/.roo/commands/` + - Shared across all projects + - User-specific customizations + +3. **Built-in Level** (lowest priority) + - Hardcoded in the extension + - Provides default functionality + - Always available as fallback + +--- + +## Examples When Used + +- When initializing a new project, Roo executes `/init` to analyze the codebase structure and create comprehensive documentation. +- When deploying applications, Roo retrieves standardized deployment instructions specific to the project's infrastructure. +- When implementing features, Roo accesses team-agreed patterns and best practices through custom commands. +- When setting up development environments, Roo follows project-specific setup instructions consistently. +- When performing code reviews, Roo uses standardized review checklists defined as commands. + +--- + +## Usage Examples + +Executing the built-in initialization command: + +```xml + +init + +``` + +Running a custom deployment command with arguments: + +```xml + +deploy +production environment with zero-downtime strategy + +``` + +Executing a test command with specific focus: + +```xml + +test +focus on integration tests for authentication module + +``` + +Running a project-specific build command: + +```xml + +build +optimized for production with source maps + +``` + +Accessing team coding standards: + +```xml + +standards +TypeScript and React best practices + +``` + +--- + +## Best Practices + +### Command Design + +1. **Clear Naming**: Use descriptive, action-oriented names +2. **Comprehensive Instructions**: Include all necessary steps +3. **Argument Flexibility**: Design commands to work with or without arguments +4. **Metadata Usage**: Always include description and argument hints +5. **Version Control**: Commit project commands for team consistency + +### Organization Strategies + +1. **Categorization**: Group related commands with prefixes (e.g., `test-unit`, `test-integration`) +2. **Documentation**: Maintain a README in command directories +3. **Templates**: Create template commands for common patterns +4. **Overrides**: Use project-level to customize global commands +5. **Maintenance**: Regularly review and update command content + +### Team Collaboration + +1. **Standardization**: Define team-wide commands in global directory +2. **Project Specifics**: Override with project-level customizations +3. **Documentation**: Document available commands and their usage +4. **Review Process**: Include command changes in code reviews +5. **Training**: Share command knowledge across team members + +--- + +## Troubleshooting + +### Common Issues + +**Feature Not Enabled**: + +- Error: "Run slash command is an experimental feature that must be enabled in settings" +- Solution: Enable 'Run Slash Command' in Experimental Settings + +**Command Not Found**: + +- Error: "Command 'X' not found. Available commands: Y, Z" +- Solution: Check command name spelling and available commands list + +**Missing Parameters**: + +- Error tracked in consecutive mistake counter +- Solution: Provide required `command` parameter + +### Debugging Commands + +1. **Verify File Location**: Ensure `.md` file is in correct directory +2. **Check File Name**: Command name must match filename without extension +3. **Validate Frontmatter**: Ensure YAML frontmatter is properly formatted +4. **Test Resolution**: Try same command name at different levels to test priority +5. **Review Content**: Ensure command content is properly formatted markdown diff --git a/apps/docs/docs/advanced-usage/available-tools/search-files.md b/apps/docs/docs/advanced-usage/available-tools/search-files.md new file mode 100644 index 00000000000..a57bcb93a8c --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/search-files.md @@ -0,0 +1,209 @@ +--- +description: Learn how search_files performs powerful regex searches across your codebase, finding patterns with context using Ripgrep for high-performance results. +keywords: + - search_files + - Roo Code tools + - regex search + - code patterns + - Ripgrep + - multi-file search + - codebase search + - pattern matching + - VS Code AI +--- + +# search_files + +The `search_files` tool performs regex searches across multiple files within your project's workspace. For security, it cannot search outside the current workspace directory. It helps Roo locate specific code patterns, text, or other content throughout your codebase with contextual results. + +--- + +## Parameters + +The tool accepts these parameters: + +- `path` (required): The path of the directory to search in, relative to the current workspace directory. The search is confined to the workspace. +- `regex` (required): The regular expression pattern to search for (uses Rust regex syntax) +- `file_pattern` (optional): Glob pattern to filter files (e.g., '\*.ts' for TypeScript files) +- `respect_gitignore` (optional): Whether to respect `.gitignore` patterns (default: `true`). Set to `false` to search all files including those in `.gitignore`. + +--- + +## What It Does + +This tool searches across files in a specified directory using regular expressions, showing each match with surrounding context. It's like having a powerful "Find in Files" feature that works across the entire project structure. + +--- + +## When is it used? + +- When Roo needs to find where specific functions or variables are used +- When Roo helps with refactoring and needs to understand usage patterns +- When Roo needs to locate all instances of a particular code pattern +- When Roo searches for text across multiple files with filtering capabilities + +--- + +## Key Features + +- Searches across multiple files in a single operation using high-performance Ripgrep +- **Respects .gitignore**: Automatically excludes files and directories listed in `.gitignore` (including nested `.gitignore` files) +- Shows context around each match (1 line before and after) +- Filters files by type using glob patterns (e.g., only TypeScript files) +- Provides line numbers for easy reference +- Uses powerful regex patterns for precise searches +- Automatically limits output to 300 results with notification +- Truncates lines longer than 500 characters with "[truncated...]" marker +- Intelligently combines nearby matches into single blocks for readability + +--- + +## Limitations + +- Works best with text-based files (not effective for binary files like images) +- Performance may slow with extremely large codebases +- Uses Rust regex syntax, which may differ slightly from other regex implementations +- Cannot search within compressed files or archives +- Default context size is fixed (1 line before and after) +- May display varying context sizes when matches are close together due to result grouping +- For security, searches are strictly limited to the current workspace and cannot access parent directories or other locations on the file system. +- **Respects .gitignore by default**: Files listed in `.gitignore` are excluded from searches unless explicitly overridden with `respect_gitignore: false` + +--- + +## How It Works + +When the `search_files` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required `path` and `regex` parameters +2. **Path Resolution**: Resolves the relative path to an absolute path +3. **Search Execution**: + - Uses Ripgrep (rg) for high-performance text searching + - Applies file pattern filtering if specified + - Collects matches with surrounding context +4. **Result Formatting**: + - Formats results with file paths, line numbers, and context + - Displays 1 line of context before and after each match + - Structures output for easy readability + - Limits results to a maximum of 300 matches with notification + - Truncates lines longer than 500 characters + - Merges nearby matches into contiguous blocks + +--- + +## Search Results Format + +The search results include: + +- Relative file paths for each matching file (prefixed with #) +- Context lines before and after each match (1 line by default) +- Line numbers padded to 3 spaces followed by `|` and the line content +- A separator line (----) after each match group + +Example output format: + +``` +# rel/path/to/app.ts + 11 | // Some processing logic here + 12 | // TODO: Implement error handling + 13 | return processedData; +---- + +# Showing first 300 of 300+ results. Use a more specific search if necessary. +``` + +When matches occur close to each other, they're merged into a single block rather than shown as separate results: + +``` +# rel/path/to/auth.ts + 13 | // Some code here + 14 | // TODO: Add proper validation + 15 | function validateUser(credentials) { + 16 | // TODO: Implement rate limiting + 17 | return checkDatabase(credentials); +---- +``` + +--- + +## Examples When Used + +- When asked to refactor a function, Roo first searches for all places the function is used to ensure comprehensive changes. +- When investigating bugs, Roo searches for similar patterns to identify related issues across the codebase. +- When addressing technical debt, Roo locates all TODO comments across the project. +- When analyzing dependencies, Roo finds all imports of a particular module. + +--- + +## Usage Examples + +Searching for TODO comments in all JavaScript files: + +``` + +src +TODO|FIXME +*.js + +``` + +Finding all usages of a specific function: + +``` + +. +function\s+calculateTotal +*.{js,ts} + +``` + +Searching for a specific import pattern across the entire project: + +```xml + +. +import\s+.*\s+from\s+['"]@components/ + +``` + +## Respecting .gitignore + +By default, `search_files` respects `.gitignore` patterns in your workspace, including nested `.gitignore` files. This prevents searches in excluded directories like `node_modules/`, `dist/`, or other ignored paths. + +### Default Behavior (Respecting .gitignore) + +**Input:** + +```xml + +. +TODO + +``` + +This search will **exclude** files and directories listed in `.gitignore`, ensuring focused results on tracked code. + +### Overriding .gitignore (Search All Files) + +To search **all files** including those in `.gitignore`, explicitly set `respect_gitignore` to `false`: + +**Input:** + +```xml + +. +TODO +false + +``` + +This searches **everything**, including `node_modules/`, build artifacts, and other ignored paths. + +**When to override:** + +- Debugging issues in dependencies or build output +- Searching through generated code +- Comprehensive audits that need to check all files +- Investigating ignored configuration files + +--- diff --git a/apps/docs/docs/advanced-usage/available-tools/switch-mode.md b/apps/docs/docs/advanced-usage/available-tools/switch-mode.md new file mode 100644 index 00000000000..c326c902f6d --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/switch-mode.md @@ -0,0 +1,199 @@ +--- +description: Understand how switch_mode enables seamless transitions between Code, Architect, Ask, and Debug modes for specialized task handling in Roo Code. +keywords: + - switch_mode + - Roo Code tools + - mode switching + - operational modes + - Code mode + - Architect mode + - Debug mode + - Ask mode + - task transitions + - VS Code AI +--- + +# switch_mode + +The `switch_mode` tool enables Roo to change between different operational modes, each with specialized capabilities for specific types of tasks. This allows seamless transitions between modes like Code, Architect, Ask, or Debug when the current task requires different expertise. + +--- + +## Parameters + +The tool accepts these parameters: + +- `mode_slug` (required): The slug of the mode to switch to (e.g., "code", "ask", "architect") +- `reason` (optional): The reason for switching modes, providing context for the user + +--- + +## What It Does + +This tool requests a mode change when the current task would be better handled by another mode's capabilities. It maintains context while shifting Roo's focus and available toolsets to match the requirements of the new task phase. + +--- + +## When is it used? + +- When transitioning from information gathering to code implementation +- When shifting from coding to architecture or design +- When the current task requires capabilities only available in a different mode +- When specialized expertise is needed for a particular phase of a complex project + +--- + +## Key Features + +- Maintains context continuity across mode transitions +- Provides clear reasoning for mode switch recommendations +- Requires user approval for all mode changes +- Enforces tool group restrictions specific to each mode +- Seamlessly adapts tool availability based on the selected mode +- Works with both standard and custom modes +- Displays the mode switch and reasoning in the UI +- Uses XML-style formatting for parameter specification +- Handles file type restrictions specific to certain modes + +--- + +## Limitations + +- Cannot switch to modes that don't exist in the system +- Requires explicit user approval for each mode transition +- Cannot use tools specific to a mode until the switch is complete +- Applies a 500ms delay after mode switching to allow the change to take effect +- Some modes have file type restrictions (e.g., Architect mode can only edit markdown files) +- Mode preservation for resumption applies only to the `new_task` functionality, not general mode switching + +--- + +## How It Works + +When the `switch_mode` tool is invoked, it follows this process: + +1. **Request Validation**: + + - Validates that the requested mode exists in the system + - Checks that the `mode_slug` parameter is provided and valid + - Verifies the user isn't already in the requested mode + - Ensures the `reason` parameter (if provided) is properly formatted + +2. **Mode Transition Preparation**: + + - Packages the mode change request with the provided reason + - Presents the change request to the user for approval + +3. **Mode Activation (Upon User Approval)**: + + - Updates the UI to reflect the new mode + - Adjusts available tools based on the mode's tool group configuration + - Applies the mode-specific prompt and behavior + - Applies a 500ms delay to allow the change to take effect before executing next tool + - Enforces any file restrictions specific to the mode + +4. **Continuation**: + - Proceeds with the task using the capabilities of the new mode + - Retains relevant context from the previous interaction + +--- + +## Tool Group Association + +The `switch_mode` tool belongs to the "modes" tool group but is also included in the "always available" tools list. This means: + +- It can be used in any mode regardless of the mode's configured tool groups +- It's available alongside other core tools like `ask_followup_question` and `attempt_completion` +- It allows mode transitions at any point in a workflow when task requirements change + +--- + +## Mode Structure + +Each mode in the system has a specific structure: + +- `slug`: Unique identifier for the mode (e.g., "code", "ask") +- `name`: Display name for the mode (e.g., "Code", "Ask") +- `roleDefinition`: The specialized role and capabilities of the mode +- `customInstructions`: Optional mode-specific instructions that guide behavior +- `groups`: Tool groups available to the mode with optional restrictions + +--- + +## Mode Capabilities + +The core modes provide these specialized capabilities: + +- **Code Mode**: Focused on coding tasks with full access to code editing tools +- **Architect Mode**: Specialized for system design and architecture planning, limited to editing markdown files only +- **Ask Mode**: Optimized for answering questions and providing information +- **Debug Mode**: Equipped for systematic problem diagnosis and resolution + +--- + +## Custom Modes + +Beyond the core modes, the system supports custom project-specific modes: + +- Custom modes can be defined with specific tool groups enabled +- They can specify custom role definitions and instructions +- The system checks custom modes first before falling back to core modes +- Custom mode definitions take precedence over core modes with the same slug + +--- + +## File Restrictions + +Different modes may have specific file type restrictions: + +- **Architect Mode**: Can only edit files matching the `.md` extension +- Attempting to edit restricted file types results in a `FileRestrictionError` +- These restrictions help enforce proper separation of concerns between modes + +--- + +## Examples When Used + +- When discussing a new feature, Roo switches from Ask mode to Architect mode to help design the system structure. +- After completing architecture planning in Architect mode, Roo switches to Code mode to implement the designed features. +- When encountering bugs during development, Roo switches from Code mode to Debug mode for systematic troubleshooting. + +--- + +## Usage Examples + +Switching to Code mode for implementation: + +``` + +code +Need to implement the login functionality based on the architecture we've discussed + +``` + +Switching to Architect mode for design: + +``` + +architect +Need to design the system architecture before implementation + +``` + +Switching to Debug mode for troubleshooting: + +``` + +debug +Need to systematically diagnose the authentication error + +``` + +Switching to Ask mode for information: + +``` + +ask +Need to answer questions about the implemented feature + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/tool-use-overview.md b/apps/docs/docs/advanced-usage/available-tools/tool-use-overview.md new file mode 100644 index 00000000000..e504f642b13 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/tool-use-overview.md @@ -0,0 +1,313 @@ +--- +description: Comprehensive guide to Roo Code's tool system, including tool groups, calling mechanisms, mode integration, and best practices for AI-powered development. +keywords: + - Roo Code tools + - tool system + - tool groups + - AI development + - tool architecture + - mode integration + - tool security + - workflow tools + - VS Code AI +--- + +# Tool Use Overview + +Roo Code implements a sophisticated tool system that allows AI models to interact with your development environment in a controlled and secure manner. This document explains how tools work, when they're called, and how they're managed. + +--- + +## Core Concepts + +### Tool Groups + +Tools are organized into logical groups based on their functionality: + +| Category | Purpose | Tools | Common Use | +| ------------------ | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | +| **Read Group** | File system reading and exploration | [read_file](/advanced-usage/available-tools/read-file), [list_files](/advanced-usage/available-tools/list-files), [list_code_definition_names](/advanced-usage/available-tools/list-code-definition-names) | Code exploration and analysis | +| **Search Group** | Pattern and semantic searching | [search_files](/advanced-usage/available-tools/search-files), [codebase_search](/advanced-usage/available-tools/codebase-search) | Finding code patterns and functionality | +| **Edit Group** | File system modifications | [apply_diff](/advanced-usage/available-tools/apply-diff), [write_to_file](/advanced-usage/available-tools/write-to-file) | Code changes and file manipulation | +| **Browser Group** | Web automation | [browser_action](/advanced-usage/available-tools/browser-action) | Web testing and interaction | +| **Command Group** | System command execution | [execute_command](/advanced-usage/available-tools/execute-command), [run_slash_command](/advanced-usage/available-tools/run-slash-command)\* | Running scripts, building projects, executing command templates | +| **MCP Group** | External tool integration | [use_mcp_tool](/advanced-usage/available-tools/use-mcp-tool), [access_mcp_resource](/advanced-usage/available-tools/access-mcp-resource) | Specialized functionality through external servers | +| **Workflow Group** | Mode and task management | [switch_mode](/advanced-usage/available-tools/switch-mode), [new_task](/advanced-usage/available-tools/new-task), [ask_followup_question](/advanced-usage/available-tools/ask-followup-question), [attempt_completion](/advanced-usage/available-tools/attempt-completion) | Context switching and task organization | + +\*_Experimental feature - requires explicit enablement in settings_ + +### Always Available Tools + +Certain tools are accessible regardless of the current mode: + +- [ask_followup_question](/advanced-usage/available-tools/ask-followup-question): Gather additional information from users +- [attempt_completion](/advanced-usage/available-tools/attempt-completion): Signal task completion +- [switch_mode](/advanced-usage/available-tools/switch-mode): Change operational modes +- [new_task](/advanced-usage/available-tools/new-task): Create subtasks + +--- + +## Available Tools + +### Read Tools + +These tools help Roo understand your code and project: + +- [read_file](/advanced-usage/available-tools/read-file) - Examines the contents of files +- [list_files](/advanced-usage/available-tools/list-files) - Maps your project's file structure +- [list_code_definition_names](/advanced-usage/available-tools/list-code-definition-names) - Creates a structural map of your code + +### Search Tools + +These tools help Roo find patterns and functionality across your codebase: + +- [search_files](/advanced-usage/available-tools/search-files) - Finds patterns across multiple files using regex +- [codebase_search](/advanced-usage/available-tools/codebase-search) - Performs semantic searches across your indexed codebase + +### Edit Tools + +These tools help Roo make changes to your code: + +- [apply_diff](/advanced-usage/available-tools/apply-diff) - Makes precise, surgical changes to your code +- [write_to_file](/advanced-usage/available-tools/write-to-file) - Creates new files or completely rewrites existing ones + +### Browser Tools + +These tools help Roo interact with web applications: + +- [browser_action](/advanced-usage/available-tools/browser-action) - Automates browser interactions + +### Command Tools + +These tools help Roo execute commands: + +- [execute_command](/advanced-usage/available-tools/execute-command) - Runs system commands and programs +- [run_slash_command](/advanced-usage/available-tools/run-slash-command) - Executes predefined slash commands for templated instructions _(Experimental - requires enablement)_ + +### MCP Tools + +These tools help Roo connect with external services: + +- [use_mcp_tool](/advanced-usage/available-tools/use-mcp-tool) - Uses specialized external tools +- [access_mcp_resource](/advanced-usage/available-tools/access-mcp-resource) - Accesses external data sources + +### Workflow Tools + +These tools help manage the conversation and task flow: + +- [ask_followup_question](/advanced-usage/available-tools/ask-followup-question) - Gets additional information from you +- [attempt_completion](/advanced-usage/available-tools/attempt-completion) - Presents final results +- [switch_mode](/advanced-usage/available-tools/switch-mode) - Changes to a different mode for specialized tasks +- [new_task](/advanced-usage/available-tools/new-task) - Creates a new subtask + +--- + +## Tool Calling Mechanism + +### Handling Complex Tasks + +For certain complex operations that require multiple steps, Roo doesn't just figure them out on the fly. Instead, it follows predefined, internal plans to ensure consistency and accuracy. + +A prime example is creating a new MCP server, identified internally by `create_mcp_server`. **This identifier does not represent a tool you will see being called.** Rather, when you ask Roo to create a server, it triggers this known, multi-step workflow. + +This specific workflow is initiated by Roo using its internal `fetch_instructions` tool (with the task `create_mcp_server`) to retrieve a detailed plan. This plan then guides Roo to make calls to several standard, documented tools in sequence, such as: + +- [`execute_command`](/advanced-usage/available-tools/execute-command) for running setup scripts (e.g., `npx @modelcontextprotocol/create-server`). +- [`write_to_file`](/advanced-usage/available-tools/write-to-file) or [`apply_diff`](/advanced-usage/available-tools/apply-diff) for creating or modifying server code and configuration files. +- [`ask_followup_question`](/advanced-usage/available-tools/ask-followup-question) to gather necessary information like API keys from you. +- Other standard tools as needed for steps like determining file locations or updating configuration entries. + +So, while the overall task (like `create_mcp_server`) is complex, it's ultimately accomplished by intelligently orchestrating the standard tools available in your environment. This approach allows Roo to reliably perform complex operations by leveraging the tools documented here. + +### When Tools Are Called + +Tools are invoked under specific conditions: + +1. **Direct Task Requirements** + + - When specific actions are needed to complete a task as decided by the LLM + - In response to user requests + - During automated workflows + +2. **Mode-Based Availability** + + - Different modes enable different tool sets + - Mode switches can trigger tool availability changes + - Some tools are restricted to specific modes + +3. **Context-Dependent Calls** + - Based on the current state of the workspace + - In response to system events + - During error handling and recovery + +### Decision Process + +The system uses a multi-step process to determine tool availability: + +1. **Mode Validation** + + ```typescript + isToolAllowedForMode( + tool: string, + modeSlug: string, + customModes: ModeConfig[], + toolRequirements?: Record, + toolParams?: Record + ) + ``` + +2. **Requirement Checking** + + - System capability verification + - Resource availability + - Permission validation + +3. **Parameter Validation** + - Required parameter presence + - Parameter type checking + - Value validation + +--- + +## Technical Implementation + +### Tool Call Processing + +1. **Initialization** + + - Tool name and parameters are validated + - Mode compatibility is checked + - Requirements are verified + +2. **Execution** + + ```typescript + const toolCall = { + type: "tool_call", + name: chunk.name, + arguments: chunk.input, + callId: chunk.callId, + } + ``` + +3. **Result Handling** + - Success/failure determination + - Result formatting + - Error handling + +### Security and Permissions + +1. **Access Control** + + - File system restrictions + - Command execution limitations + - Network access controls + +2. **Validation Layers** + - Tool-specific validation + - Mode-based restrictions + - System-level checks + +--- + +## Mode Integration + +### Mode-Based Tool Access + +Tools are made available based on the current mode: + +- **Code Mode**: Full access to file system tools, code editing capabilities, command execution +- **Ask Mode**: Limited to reading tools, information gathering capabilities, no file system modifications +- **Architect Mode**: Design-focused tools, documentation capabilities, limited execution rights +- **Custom Modes**: Can be configured with specific tool access for specialized workflows + +### Mode Switching + +1. **Process** + + - Current mode state preservation + - Tool availability updates + - Context switching + +2. **Impact on Tools** + - Tool set changes + - Permission adjustments + - Context preservation + +--- + +## Best Practices + +### Tool Usage Guidelines + +1. **Efficiency** + + - Use the most specific tool for the task + - Avoid redundant tool calls + - Batch operations when possible + +2. **Security** + + - Validate inputs before tool calls + - Use minimum required permissions + - Follow security best practices + +3. **Error Handling** + - Implement proper error checking + - Provide meaningful error messages + - Handle failures gracefully + +### Common Patterns + +1. **Information Gathering** + + ``` + [ask_followup_question](/advanced-usage/available-tools/ask-followup-question) → [read_file](/advanced-usage/available-tools/read-file) → [codebase_search](/advanced-usage/available-tools/codebase-search) + ``` + +2. **Code Modification** + + ``` + [read_file](/advanced-usage/available-tools/read-file) → [apply_diff](/advanced-usage/available-tools/apply-diff) → [attempt_completion](/advanced-usage/available-tools/attempt-completion) + ``` + +3. **Task Management** + ``` + [new_task](/advanced-usage/available-tools/new-task) → [switch_mode](/advanced-usage/available-tools/switch-mode) → [execute_command](/advanced-usage/available-tools/execute-command) + ``` + +--- + +## Error Handling and Recovery + +### Error Types + +1. **Tool-Specific Errors** + + - Parameter validation failures + - Execution errors + - Resource access issues + +2. **System Errors** + + - Permission denied + - Resource unavailable + - Network failures + +3. **Context Errors** + - Invalid mode for tool + - Missing requirements + - State inconsistencies + +### Recovery Strategies + +1. **Automatic Recovery** + + - Retry mechanisms + - Fallback options + - State restoration + +2. **User Intervention** + - Error notifications + - Recovery suggestions + - Manual intervention options diff --git a/apps/docs/docs/advanced-usage/available-tools/update-todo-list.md b/apps/docs/docs/advanced-usage/available-tools/update-todo-list.md new file mode 100644 index 00000000000..e37dca06721 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/update-todo-list.md @@ -0,0 +1,210 @@ +--- +description: Learn how update_todo_list creates dynamic TODO lists with status tracking, enabling step-by-step task management for complex workflows in Roo Code. +keywords: + - update_todo_list + - Roo Code tools + - task management + - TODO lists + - workflow tracking + - checklist management + - task status + - interactive UI + - VS Code AI +--- + +# update_todo_list + +The `update_todo_list` tool enables dynamic, interactive task management within the chat interface. It replaces the entire TODO list with an updated checklist, ensuring that task status is always current and providing step-by-step tracking for complex, multi-step workflows. + +--- + +## Parameters + +The tool accepts these parameters: + +- `todos` (required): A markdown-formatted string representing the complete checklist with status indicators + +--- + +## What It Does + +This tool creates and manages an interactive todo list that appears as a UI component in the chat interface. It allows for real-time task tracking, status updates, and dynamic addition of new items as they are discovered during complex workflows. The list provides a structured way to manage multi-step tasks with clear visual progress indicators. + +--- + +## When is it used? + +- When managing complex, multi-step tasks that benefit from structured tracking +- When Roo needs to show progress through a series of related activities +- When tasks require step-by-step completion verification before proceeding +- When new actionable items are discovered during long or complex workflows +- When providing clear checkpoints and progress visibility to users + +--- + +## Key Features + +- **Full Checklist Replacement**: Overwrites the existing todo list with the updated version provided +- **Interactive UI Component**: Displays as an editable interface element in the chat +- **Multiple Status Types**: Supports pending, in-progress, and completed task states +- **Dynamic Task Management**: Add new tasks as they arise during workflow execution +- **User-Friendly Editing**: Provides direct editing capabilities within the chat interface +- **Step-by-Step Tracking**: Enables confirmation of each step before updating and proceeding +- **Progress Visualization**: Clear visual indicators for task completion status +- **Workflow Integration**: Seamlessly integrates with task execution and completion flows + +--- + +## Limitations + +- **Complete Replacement**: Replaces the entire list rather than making incremental updates +- **Single-Level Structure**: Uses single-level markdown checklists without nesting support +- **Format Requirements**: Requires specific markdown checkbox syntax for proper parsing +- **Manual Updates**: Requires explicit tool calls to update the list status +- **State Management**: Todo list state is tied to the current task and conversation context + +--- + +## How It Works + +When the `update_todo_list` tool is invoked, it follows this process: + +1. **Input Validation**: + + - Validates the required `todos` parameter is provided + - Parses the markdown checklist format for syntax correctness + - Checks for valid status indicators: `[ ]`, `[-]`, and `[x]` + +2. **List Processing**: + + - Processes the markdown-formatted checklist + - Extracts individual todo items with their status indicators + - Validates the structure and format of each item + +3. **UI Integration**: + + - Presents the updated todo list to the user for approval + - Replaces any existing todo list with the new version + - Renders the list as an interactive component in the chat interface + +4. **User Interaction**: + + - Allows users to edit todos directly in the UI when in editing mode + - Provides "Add Todo" functionality for real-time list expansion + - Synchronizes changes back to the extension to maintain state consistency + +5. **State Management**: + - Updates the task's internal todo list representation + - Maintains synchronization between UI state and backend data + - Preserves todo list state across conversation interactions + +--- + +## Checklist Format Requirements + +The tool uses a specific markdown format for todo items: + +### Status Options + +- `[ ]` - Pending task (not started) +- `[-]` - In progress task (currently being worked on) +- `[x]` - Completed task (fully finished) + +### Format Rules + +- Use single-level markdown checklist (no nesting or subtasks) +- List todos in intended execution order +- Each todo item should be clear and actionable +- Status should accurately reflect current task state + +--- + +## Task Management Guidelines + +### Status Updates + +- Mark tasks as completed immediately after all work is finished +- Start the next task by marking it as in progress +- Use pending status for tasks not yet started +- Only mark tasks as completed when fully accomplished with no unresolved dependencies + +### Dynamic List Management + +- Add new todos as soon as they are identified during task execution +- Remove tasks only if they are no longer relevant or explicitly requested +- Retain all unfinished tasks and update their status as needed +- If a task is blocked, keep it as in progress and add new todos for resolution steps + +--- + +## Examples When Used + +- When developing a web application, Roo creates a todo list tracking design, implementation, testing, and deployment phases. +- When setting up a development environment, Roo tracks installation of dependencies, configuration steps, and verification tasks. +- When debugging complex issues, Roo maintains a list of investigation steps, potential causes, and testing procedures. +- When refactoring code, Roo tracks which files need updates, what tests need modification, and documentation changes required. +- When implementing new features, Roo manages tasks for planning, coding, testing, and integration steps. + +--- + +## Usage Examples + +Creating an initial todo list for a development task: + +```xml + + +[ ] Analyze requirements +[ ] Design architecture +[ ] Implement core logic +[ ] Write tests +[ ] Update documentation + + +``` + +Updating progress after completing the first task: + +```xml + + +[x] Analyze requirements +[-] Design architecture +[ ] Implement core logic +[ ] Write tests +[ ] Update documentation + + +``` + +Adding new tasks discovered during implementation: + +```xml + + +[x] Analyze requirements +[x] Design architecture +[x] Implement core logic +[-] Write tests +[ ] Update documentation +[ ] Add performance benchmarks +[ ] Create deployment script + + +``` + +Managing a complex debugging workflow: + +```xml + + +[x] Reproduce the issue +[x] Check recent code changes +[-] Analyze error logs +[ ] Test with different configurations +[ ] Check database queries +[ ] Verify network connectivity +[ ] Create fix and test + + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/use-mcp-tool.md b/apps/docs/docs/advanced-usage/available-tools/use-mcp-tool.md new file mode 100644 index 00000000000..148a80bef3f --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/use-mcp-tool.md @@ -0,0 +1,231 @@ +--- +description: Discover how use_mcp_tool integrates external MCP servers to extend Roo Code with specialized tools, domain-specific functionality, and external services. +keywords: + - use_mcp_tool + - MCP tools + - Model Context Protocol + - external tools + - Roo Code integration + - MCP servers + - domain tools + - tool extension + - VS Code AI +--- + +# use_mcp_tool + +The `use_mcp_tool` tool enables interaction with external tools provided by connected Model Context Protocol (MCP) servers. It extends Roo's capabilities with domain-specific functionality through a standardized protocol. + +--- + +## Parameters + +The tool accepts these parameters: + +- `server_name` (required): The name of the MCP server providing the tool +- `tool_name` (required): The name of the tool to execute +- `arguments` (required/optional): A JSON object containing the tool's input parameters, following the tool's input schema. May be optional for tools that require no input. + +--- + +## What It Does + +This tool allows Roo to access specialized functionality provided by external MCP servers. Each MCP server can offer multiple tools with unique capabilities, extending Roo beyond its built-in functionality. The system validates arguments against schemas, manages server connections, and processes responses of various content types (text, image, resource). + +--- + +## When is it used? + +- When specialized functionality not available in core tools is needed +- When domain-specific operations are required +- When integration with external systems or services is needed +- When working with data that requires specific processing or analysis +- When accessing proprietary tools through a standardized interface + +--- + +## Key Features + +- Uses the standardized MCP protocol via the `@modelcontextprotocol/sdk` library +- Supports multiple transport mechanisms (StdioClientTransport, StreamableHTTPClientTransport and SSEClientTransport) +- Validates arguments using Zod schema validation on both client and server sides +- Processes multiple response content types: text, image, and resource references +- Manages server lifecycle with automatic restarts when server code changes +- Provides an "always allow" mechanism to bypass approval for trusted tools +- Works with the companion `access_mcp_resource` tool for resource retrieval +- Maintains proper error tracking and handling for failed operations +- Supports configurable timeouts (1-3600 seconds, default: 60 seconds) +- Allows file watchers to automatically detect and reload server changes + +--- + +## Limitations + +- Depends on external MCP servers being available and connected +- Limited to the tools provided by connected servers +- Tool capabilities vary between different MCP servers +- Network issues can affect reliability and performance +- Requires user approval before execution (unless in the "always allow" list) +- Cannot execute multiple MCP tool operations simultaneously + +--- + +## Server Configuration + +MCP servers can be configured globally or at the project level: + +- **Global Configuration**: Managed through the Roo Code extension settings in VS Code. These apply across all projects unless overridden. +- **Project-level Configuration**: Defined in a `.roo/mcp.json` file within your project's root directory. +- This allows project-specific server setups. +- Project-level servers take precedence over global servers if they share the same name. +- Since `.roo/mcp.json` can be committed to version control, it simplifies sharing configurations with your team. + +--- + +## How It Works + +When the `use_mcp_tool` tool is invoked, it follows this process: + +1. **Initialization and Validation**: + + - The system verifies that the MCP hub is available + - Confirms the specified server exists and is connected + - Validates the requested tool exists on the server + - Arguments are validated against the tool's schema definition + - Timeout settings are extracted from server configuration (default: 60 seconds) + +2. **Execution and Communication**: + + - The system selects the appropriate transport mechanism: + - `StdioClientTransport`: For communicating with local processes via standard I/O + - `SSEClientTransport`: For communicating with HTTP servers via Server-Sent Events + - `StreamableHTTPClientTransport`: For communicating with HTTP servers via Streamable HTTP Events + - A request is sent with validated server name, tool name, and arguments + - Communication uses the `@modelcontextprotocol/sdk` library for standardized interactions + - Request execution is tracked with timeout handling to prevent hanging operations + +3. **Response Processing**: + + - Responses can include multiple content types: + - Text content: Plain text responses + - Image content: Binary image data with MIME type information + - Resource references: URIs to access server resources (works with `access_mcp_resource`) + - The system checks the `isError` flag to determine if error handling is needed + - Results are formatted for display in the Roo interface + +4. **Resource and Error Handling**: + - The system uses WeakRef patterns to prevent memory leaks + - A consecutive mistake counter tracks and manages errors + - File watchers monitor for server code changes and trigger automatic restarts + - The security model requires approval for tool execution unless in the "always allow" list + +--- + +## Security and Permissions + +The MCP architecture provides several security features: + +- Users must approve tool usage before execution (by default) +- Specific tools can be marked for automatic approval in the "always allow" list +- Server configurations are validated with Zod schemas for integrity +- Configurable timeouts prevent hanging operations (1-3600 seconds) +- Server connections can be enabled or disabled through the UI + +--- + +## Examples When Used + +- Analyzing specialized data formats using server-side processing tools +- Generating images or other media through AI models hosted on external servers +- Executing complex domain-specific calculations without local implementation +- Accessing proprietary APIs or services through a controlled interface +- Retrieving data from specialized databases or data sources + +--- + +## Usage Examples + +Requesting weather forecast data with text response: + +``` + +weather-server +get_forecast + +{ + "city": "San Francisco", + "days": 5, + "format": "text" +} + + +``` + +Analyzing source code with a specialized tool that returns JSON: + +``` + +code-analysis +complexity_metrics + +{ + "language": "typescript", + "file_path": "src/app.ts", + "include_functions": true, + "metrics": ["cyclomatic", "cognitive"] +} + + +``` + +Generating an image with specific parameters: + +``` + +image-generation +create_image + +{ + "prompt": "A futuristic city with flying cars", + "style": "photorealistic", + "dimensions": { + "width": 1024, + "height": 768 + }, + "format": "webp" +} + + +``` + +Accessing a resource through a tool that returns a resource reference: + +``` + +database-connector +query_and_store + +{ + "database": "users", + "type": "select", + "fields": ["name", "email", "last_login"], + "where": { + "status": "active" + }, + "store_as": "active_users" +} + + +``` + +Tool with no required arguments: + +``` + +system-monitor +get_current_status + +{} + + +``` diff --git a/apps/docs/docs/advanced-usage/available-tools/write-to-file.md b/apps/docs/docs/advanced-usage/available-tools/write-to-file.md new file mode 100644 index 00000000000..fd8f0155943 --- /dev/null +++ b/apps/docs/docs/advanced-usage/available-tools/write-to-file.md @@ -0,0 +1,208 @@ +--- +description: Explore write_to_file for creating new files or replacing content with interactive diff view approval, ensuring safe file operations in Roo Code. +keywords: + - write_to_file + - Roo Code tools + - file creation + - file writing + - diff view + - content approval + - file operations + - interactive editing + - VS Code AI +--- + +# write_to_file + +The `write_to_file` tool creates new files or completely replaces existing file content with an interactive approval process. It provides a diff view for reviewing changes before they're applied. + +--- + +## Parameters + +The tool accepts these parameters: + +- `path` (required): The path of the file to write to, relative to the current working directory +- `content` (required): The complete content to write to the file +- `line_count` (required): The number of lines in the file, including empty lines + +--- + +## What It Does + +This tool writes content to a specified file, either creating a new file if it doesn't exist or completely overwriting an existing file. All changes require explicit user approval through a diff view interface, where users can review and even edit the proposed changes before they're applied. + +--- + +## When is it used? + +- When Roo needs to create a new file from scratch +- When Roo needs to completely rewrite an existing file +- When creating multiple files for a new project +- When generating configuration files, documentation, or source code +- When you need to review changes before they're applied + +--- + +## Key Features + +- Interactive Approval: Shows changes in a diff view requiring explicit approval before applying +- User Edit Support: Allows editing the proposed content before final approval +- Safety Measures: Detects code omission, validates paths, and prevents truncated content +- Editor Integration: Opens a diff view that scrolls to the first difference automatically +- Content Preprocessing: Handles artifacts from different AI models to ensure clean content +- Access Control: Validates against `.rooignore` restrictions before making changes +- Parent Directories: May handle directory creation through system dependencies +- Complete Replacement: Provides a fully transformed file in a single operation + +--- + +## Limitations + +- Not suitable for existing files: Much slower and less efficient than `apply_diff` for modifying existing files +- Performance with large files: Operation becomes significantly slower with larger files +- Complete overwrite: Replaces entire file content, cannot preserve original content +- Line count required: Needs accurate line count to detect potential content truncation +- Review overhead: The approval process adds extra steps compared to direct edits +- Interactive only: Cannot be used in automated workflows that require non-interactive execution + +--- + +## How It Works + +When the `write_to_file` tool is invoked, it follows this process: + +1. **Parameter Validation**: Validates the required parameters and permissions + + - Checks that `path`, `content`, and `line_count` are provided + - If `line_count` is missing/invalid, reverts any diff view changes and returns an error suggesting alternative tools (`apply_diff`, etc.) if modifying an existing file. + - Validates the file is allowed (not restricted by `.rooignore`) + - Ensures the path is within the workspace boundaries + - Tracks consecutive mistake counts for missing parameters + - Shows specific error messages for each validation failure + +2. **Content Preprocessing**: + + - Removes code block markers that might be added by AI models + - Handles escaped HTML entities (specifically for non-Claude models) + - Strips line numbers if accidentally included in content + - Performs model-specific processing for different AI providers + +3. **Diff View Generation**: + + - Opens a diff view in the editor showing the proposed changes + - Adds a 300ms delay to ensure UI responsiveness + - Scrolls automatically to the first difference + - Highlights changes for easy review + +4. **User Approval Process**: + + - Waits for explicit user approval to proceed + - Allows users to edit the content in the diff view + - Captures any user edits for the final content + - Provides option to reject changes entirely + - Detects and incorporates user modifications into the final result + +5. **Safety Validation**: + + - Detects potential content truncation by comparing with provided line count + - Shows warnings if content appears incomplete + - Validates file path and access permissions + - Specifically checks if files are outside the workspace with `isOutsideWorkspace` flag + +6. **File Writing**: + - Writes the approved content (with any user edits) to the file + - Provides confirmation of successful write + - Resets the consecutive mistakes counter on success + +--- + +## Examples When Used + +- When creating a new project, Roo generates multiple files but lets you review each before committing changes. +- When setting up configuration files, Roo shows the proposed configuration in a diff view for approval. +- When generating documentation, Roo creates markdown files but lets you make final adjustments in the diff view. +- When developing a prototype, Roo shows complete source files in a diff view where you can fine-tune before saving. + +--- + +## Usage Examples + +Creating a new JSON configuration file: + +``` + +config/settings.json + +{ + "apiEndpoint": "https://api.example.com", + "theme": { + "primaryColor": "#007bff", + "secondaryColor": "#6c757d", + "fontFamily": "Arial, sans-serif" + }, + "features": { + "darkMode": true, + "notifications": true, + "analytics": false + }, + "version": "1.0.0" +} + +14 + +``` + +Creating a simple HTML file: + +``` + +src/index.html + + + + + + + My Application + + + +
+ + + +
+13 +
+``` + +Creating a JavaScript module: + +``` + +src/utils/helpers.js + +/** + * Utility functions for the application + */ + +export function formatDate(date) { + return new Date(date).toLocaleDateString(); +} + +export function calculateTotal(items) { + return items.reduce((sum, item) => sum + item.price, 0); +} + +export function debounce(func, delay) { + let timeout; + return function(...args) { + clearTimeout(timeout); + timeout = setTimeout(() => func.apply(this, args), delay); + }; +} + +18 + +``` diff --git a/apps/docs/docs/advanced-usage/context-poisoning.md b/apps/docs/docs/advanced-usage/context-poisoning.md new file mode 100644 index 00000000000..f30a7000693 --- /dev/null +++ b/apps/docs/docs/advanced-usage/context-poisoning.md @@ -0,0 +1,77 @@ +--- +description: Learn about context poisoning in AI coding assistants, its symptoms, causes, and effective recovery strategies to maintain accurate AI responses. +keywords: + - context poisoning + - AI accuracy + - Roo Code troubleshooting + - LLM context management + - session recovery +--- + +# Context Poisoning + +:::info +Context poisoning is a persistent issue within a given session. Once a chat session's context is compromised, treat that session as disposable. Starting fresh with a clean context is crucial for maintaining the accuracy and effectiveness of your Roo Code agent. +::: + +Context poisoning occurs when inaccurate or irrelevant data contaminates the language model's active context. This leads the model to draw incorrect conclusions, provide erroneous information to tools, and progressively deviate from the intended task with each interaction. + +--- + +## Symptoms of Context Poisoning + +Identify context poisoning by observing these behaviors: + +- **Degraded Output Quality:** Suggestions become nonsensical, repetitive, or irrelevant. +- **Tool Misalignment:** Tool calls no longer correspond to the user's requests. +- **Orchestration Failures:** Orchestrator chains may stall, loop indefinitely, or fail to complete. +- **Temporary Fixes:** Re-applying a clean prompt or instructions offers only brief respite before issues resurface. +- **Tool Usage Confusion:** The model struggles to correctly use or recall how to use tools defined in the system prompt. + +--- + +## Common Causes + +Context poisoning can be triggered by several factors: + +- **Model Hallucination:** The model generates an incorrect piece of information and subsequently treats it as a factual part of the context. +- **Code Comments:** Outdated, incorrect, or ambiguous comments in the codebase can be misinterpreted by the model, leading it down the wrong path. +- **Contaminated User Input:** Copy-pasting logs or text containing hidden or rogue control characters. +- **Context Window Overflow:** As a session grows, older, useful information may be pushed out of the model's limited context window, allowing "poisoned" data to have a greater relative impact. + +Once bad data enters the context, it tends to persist. The model re-evaluates this tainted information in subsequent reasoning cycles, similar to a permanent flaw affecting its perception until the context is completely reset. + +--- + +## Can a "Wake-Up Prompt" Resolve Context Poisoning? + +**Short Answer:** No. + +A corrective prompt might temporarily suppress symptoms, but the problematic data remains in the conversational buffer. The model will likely revert to the poisoned state as soon as the interaction deviates from the narrow scope of the corrective prompt. + +**Detailed Explanation:** + +- Re-injecting the full set of tool definitions or core directives can sometimes mask the damage for one or some interactions following the initial context poisoning . +- However, the underlying poisoned context remains. Any query or task outside the immediate "patch" will likely re-trigger the original issue. +- This approach is unreliable, akin to placing a warning label on a leaking pipe instead of repairing it. + +--- + +## Effective Recovery Strategies + +To reliably recover from context poisoning: + +- **Hard Reset the Session:** The most dependable solution is to start a new chat session. This clears the contaminated context entirely. +- **Minimize Manual Data Dumps:** When pasting logs or other data, be selective. Only include the essential information the model requires. +- **Manage Context Window Size:** For large or complex tasks, consider breaking them into smaller, focused chat sessions. This helps ensure that stale or irrelevant information ages out of the context window more quickly. +- **Validate Tool Output:** If a tool returns nonsensical or clearly incorrect data, delete that message from the chat history before the model can process it and incorporate it into its context. + +--- + +## Addressing a Common Question: The "Magic Bullet" Prompt + +A frequent question from the community is: + +> "Have you found a prompt that wakes it back up? Maybe a prompt that just has the tools instructions we can push back in manually?” + +As explained, no single prompt offers a lasting fix. Any immediate improvement is superficial because the corrupted lines of text persist in the session's history, ready to cause further issues. The only robust solution is to discard the compromised session, initiate a new one, and provide it with a clean prompt and the correct tool definitions from the outset. diff --git a/apps/docs/docs/advanced-usage/footgun-prompting.md b/apps/docs/docs/advanced-usage/footgun-prompting.md new file mode 100644 index 00000000000..688034a0f3e --- /dev/null +++ b/apps/docs/docs/advanced-usage/footgun-prompting.md @@ -0,0 +1,94 @@ +--- +sidebar_label: "Footgun Prompting" +description: Advanced guide to overriding system prompts in Roo Code. Learn how to customize AI behavior with caution using system prompt overrides. +keywords: + - footgun prompting + - system prompt override + - advanced customization + - Roo Code configuration + - custom prompts +--- + +# Footgun Prompting: Override System Prompts + +Footgun Prompting (System Prompt Override) lets you replace the default system prompt for a specific Roo Code mode. This offers granular control but bypasses built-in safeguards. Use with caution. + +Warning indicator for active system prompt override +**Warning Indicator:** When a system prompt override is active for the current mode, Roo Code will display a warning icon in the chat input area to remind you that the default behavior has been modified. + +:::info **footgun** _(noun)_ + +1. _(programming slang, humorous, derogatory)_ Any feature likely to lead to the programmer shooting themself in the foot. + +> The System Prompt Override is considered a footgun because modifying the core instructions without a deep understanding can lead to unexpected or broken behavior, especially regarding tool usage and response consistency. + +::: + +--- + +## How It Works + +1. **Override File:** Create a file named `.roo/system-prompt-{mode-slug}` in your workspace root (e.g., `.roo/system-prompt-code` for the Code mode). +2. **Content:** The content of this file becomes the new system prompt for that specific mode. +3. **Activation:** Roo Code automatically detects this file. When present, it replaces most of the standard system prompt sections. +4. **Preserved Sections:** Only the core `roleDefinition` and any `customInstructions` you've set for the mode are kept alongside your override content. Standard sections like tool descriptions, rules, and capabilities are bypassed. +5. **Construction:** The final prompt sent to the model looks like this: + + ``` + ${roleDefinition} + + ${content_of_your_override_file} + + ${customInstructions} + ``` + +--- + +## Accessing the Feature + +Find the option and instructions in the Roo Code UI: + +1. Click the icon in the Roo Code top menu bar. +2. Expand the **"Advanced: Override System Prompt"** section. +3. Clicking the file path link within the explanation will open or create the correct override file for the currently selected mode in VS Code. + +UI showing the Advanced: Override System Prompt section + +--- + +## Using Context Variables + +When creating your custom system prompt file, you can use special variables (placeholders) that Roo Code will automatically replace with relevant information about the current environment. This allows you to make your prompts more dynamic and context-aware. + +Here are the available variables: + +- `{{mode}}`: The slug (short name) of the current Roo Code mode being used (e.g., `code`, `chat-mode`). +- `{{language}}`: The display language configured in VS Code (e.g., `en`, `es`). +- `{{shell}}`: The default terminal shell configured in VS Code (e.g., `/bin/bash`, `powershell.exe`). +- `{{operatingSystem}}`: The type of operating system your computer is running (e.g., `Linux`, `Darwin` for macOS, `Windows_NT`). +- `{{workspace}}`: The file path to the root of your current project workspace. + +**Example Usage:** + +You can include these variables directly in your prompt file content like this: + +``` +You are assisting a user in the '{{mode}}' mode. +Their operating system is {{operatingSystem}} and their default shell is {{shell}}. +The project is located at: {{workspace}}. +Please respond in {{language}}. +``` + +Roo Code substitutes these placeholders before sending the prompt to the model. + +--- + +## Key Considerations & Warnings + +- **Intended Audience:** Best suited for users deeply familiar with Roo Code's prompting system and the implications of modifying core instructions. +- **Impact on Functionality:** Custom prompts override standard instructions, including those for tool usage and response consistency. This can cause unexpected behavior or errors if not managed carefully. +- **Mode-Specific:** Each override file applies only to the mode specified in its filename (`{mode-slug}`). +- **No File, No Override:** If the `.roo/system-prompt-{mode-slug}` file doesn't exist, Roo Code uses the standard system prompt generation process for that mode. +- **Blank Files Ignored:** If the override file exists but is empty (blank), it will be ignored and the default system prompt will be used. +- **Directory Creation:** Roo Code ensures the `.roo` directory exists before attempting to read or create the override file. + Use this feature cautiously. Incorrect implementation can significantly degrade Roo Code's performance and reliability for the affected mode. diff --git a/apps/docs/docs/advanced-usage/large-projects.md b/apps/docs/docs/advanced-usage/large-projects.md new file mode 100644 index 00000000000..b8c82185e39 --- /dev/null +++ b/apps/docs/docs/advanced-usage/large-projects.md @@ -0,0 +1,64 @@ +--- +description: Learn strategies for effectively using Roo Code with large codebases. Manage context limits, optimize token usage, and handle complex refactoring tasks. +keywords: + - large projects + - context management + - token optimization + - codebase refactoring + - Roo Code scalability +--- + +# Working with Large Projects + +Roo Code can be used with projects of any size, but large projects require some extra care to manage context effectively. Here are some tips for working with large codebases: + +--- + +## Understanding Context Limits + +Roo Code uses large language models (LLMs) that have a limited "context window." This is the maximum amount of text (measured in tokens) that the model can process at once. If the context is too large, the model may not be able to understand your request or generate accurate responses. + +The context window includes: + +- The system prompt (instructions for Roo Code). +- The conversation history. +- The content of any files you mention using `@`. +- The output of any commands or tools Roo Code uses. + +--- + +## Strategies for Managing Context + +1. **Be Specific:** When referring to files or code, use specific file paths and function names. Avoid vague references like "the main file." + +2. **Use Context Mentions Effectively:** Use `@/path/to/file.ts` to include specific files. Use `@problems` to include current errors and warnings. Use `@` followed by a commit hash to reference specific Git commits. + +3. **Break Down Tasks:** Divide large tasks into smaller, more manageable sub-tasks. This helps keep the context focused. + +4. **Summarize:** If you need to refer to a large amount of code, consider summarizing the relevant parts in your prompt instead of including the entire code. + +5. **Prioritize Recent History:** Roo Code automatically truncates older messages in the conversation history to stay within the context window. Be mindful of this, and re-include important context if needed. + +6. **Use Prompt Caching (if available):** Some API providers like Anthropic, OpenAI, OpenRouter and Requesty support "prompt caching". This caches your prompts for use in future tasks and helps reduce the cost and latency of requests. + +--- + +## Example: Refactoring a Large File + +Let's say you need to refactor a large TypeScript file (`src/components/MyComponent.tsx`). Here's a possible approach: + +1. **Initial Overview:** + + ``` + @/src/components/MyComponent.tsx List the functions and classes in this file. + ``` + +2. **Target Specific Functions:** + + ``` + @/src/components/MyComponent.tsx Refactor the `processData` function to use `async/await` instead of Promises. + ``` + +3. **Iterative Changes:** Make small, incremental changes, reviewing and approving each step. + +By breaking down the task and providing specific context, you can work effectively with large files even with a limited context window. diff --git a/apps/docs/docs/advanced-usage/local-development-setup.mdx b/apps/docs/docs/advanced-usage/local-development-setup.mdx new file mode 100644 index 00000000000..5d036c25c7c --- /dev/null +++ b/apps/docs/docs/advanced-usage/local-development-setup.mdx @@ -0,0 +1,62 @@ +--- +description: Learn how to set up Roo Code for local development, build from source, and contribute to the project. Complete developer setup guide. +keywords: + - local development + - build from source + - Roo Code development + - contribute + - developer setup +sidebar_label: Local Development Setup +--- + +## Local Setup & Development + +:::note Developer Information Only +This section is for developers contributing to Roo Code or those who wish to build and run the extension from source. +::: + +To set up Roo Code for local development: + +1. **Clone the repository:** + ```bash + git clone https://github.com/RooCodeInc/Roo-Code.git + cd Roo-Code + ``` + +2. **Install dependencies:** + Roo Code uses `pnpm` for package management. + ```bash + pnpm install + ``` + +3. **Run the extension for development:** + You have two primary methods: + + * **Directly in VS Code (Recommended for active development):** + * Open the cloned `Roo-Code` folder in VS Code. + * Press `F5` (or select **Run** → **Start Debugging** from the menu). This opens a new VS Code window (Extension Development Host) with Roo Code running. + * Changes to the webview code (under `webview-ui/`) will often update live. + * Changes to the core extension code (under `src/`) typically require restarting the Extension Development Host window. + + * **Building and Installing a VSIX package:** + This method is useful for testing the packaged extension or distributing development builds. + 1. Build the VSIX file: + ```bash + pnpm vsix + ``` + A `.vsix` file (e.g., `roo-cline-.vsix`) will be created in the `bin/` directory. + + 2. Install the VSIX in VS Code: + * **Using the command line:** + ```bash + code --install-extension bin/roo-cline-.vsix + ``` + (Replace `` with the actual version number in the filename). + * **Using the VS Code interface:** + * Open the Extensions view (`Ctrl+Shift+X` or `Cmd+Shift+X`). + * Click the "..." (More Actions) menu in the Extensions view sidebar. + * Select "Install from VSIX..." + * Browse to and select the generated `.vsix` file from the `bin/` directory. + + VS Code's Install from VSIX dialog + *Installing a development VSIX using VS Code's "Install from VSIX..." dialog.* \ No newline at end of file diff --git a/apps/docs/docs/advanced-usage/local-models.md b/apps/docs/docs/advanced-usage/local-models.md new file mode 100644 index 00000000000..a0ac300193e --- /dev/null +++ b/apps/docs/docs/advanced-usage/local-models.md @@ -0,0 +1,57 @@ +--- +description: Learn how to run Roo Code with local AI models using Ollama and LM Studio. Complete setup guide for offline AI coding assistance. +keywords: + - local models + - Ollama + - LM Studio + - offline AI + - local LLM + - self-hosted AI + - privacy-focused AI +--- + +# Using Local Models + +Roo Code supports running language models locally on your own machine using [Ollama](https://ollama.com/) and [LM Studio](https://lmstudio.ai/). This offers several advantages: + +- **Privacy:** Your code and data never leave your computer. +- **Offline Access:** You can use Roo Code even without an internet connection. +- **Cost Savings:** Avoid API usage fees associated with cloud-based models. +- **Customization:** Experiment with different models and configurations. + +**However, using local models also has some drawbacks:** + +- **Resource Requirements:** Local models can be resource-intensive, requiring a powerful computer with a good CPU and, ideally, a dedicated GPU. +- **Setup Complexity:** Setting up local models can be more complex than using cloud-based APIs. +- **Model Performance:** The performance of local models can vary significantly. While some are excellent, they may not always match the capabilities of the largest, most advanced cloud models. +- **Limited Features**: Local models (and many online models) often do not support advanced features such as prompt caching, computer use, and others. + +--- + +## Supported Local Model Providers + +Roo Code currently supports two main local model providers: + +1. **Ollama:** A popular open-source tool for running large language models locally. It supports a wide range of models. +2. **LM Studio:** A user-friendly desktop application that simplifies the process of downloading, configuring, and running local models. It also provides a local server that emulates the OpenAI API. + +--- + +## Setting Up Local Models + +For detailed setup instructions, see: + +- [Setting up Ollama](/providers/ollama) +- [Setting up LM Studio](/providers/lmstudio) + +Both providers offer similar capabilities but with different user interfaces and workflows. Ollama provides more control through its command-line interface, while LM Studio offers a more user-friendly graphical interface. + +--- + +## Troubleshooting + +- **"No connection could be made because the target machine actively refused it":** This usually means that the Ollama or LM Studio server isn't running, or is running on a different port/address than Roo Code is configured to use. Double-check the Base URL setting. + +- **Slow Response Times:** Local models can be slower than cloud-based models, especially on less powerful hardware. If performance is an issue, try using a smaller model. + +- **Model Not Found:** Ensure you have typed in the name of the model correctly. If you're using Ollama, use the same name that you provide in the `ollama run` command. diff --git a/apps/docs/docs/advanced-usage/prompt-engineering.md b/apps/docs/docs/advanced-usage/prompt-engineering.md new file mode 100644 index 00000000000..b0f4a7fd551 --- /dev/null +++ b/apps/docs/docs/advanced-usage/prompt-engineering.md @@ -0,0 +1,115 @@ +--- +description: Master the art of writing effective prompts for Roo Code. Learn principles, techniques, and examples to get better AI coding assistance results. +keywords: + - prompt engineering + - AI prompts + - effective communication + - Roo Code tips + - custom instructions +--- + +# Prompt Engineering Tips + +Prompt engineering is the art of crafting effective instructions for AI models like Roo Code. Well-written prompts lead to better results, fewer errors, and a more efficient workflow. + +--- + +## General Principles + +- **Be Clear and Specific:** Clearly state what you want Roo Code to do. Avoid ambiguity. + + - **Bad:** Fix the code. + - **Good:** Fix the bug in the `calculateTotal` function that causes it to return incorrect results. + +- **Provide Context:** Use [Context Mentions](/basic-usage/context-mentions) to refer to specific files, folders, or problems. + + - **Good:** `@/src/utils.ts` Refactor the `calculateTotal` function to use async/await. + +- **Break Down Tasks:** Divide complex tasks into smaller, well-defined steps. + +- **Give Examples:** If you have a specific coding style or pattern in mind, provide examples. + +- **Specify Output Format:** If you need the output in a particular format (e.g., JSON, Markdown), specify it in the prompt. + +- **Iterate:** Don't be afraid to refine your prompt if the initial results aren't what you expect. + +--- + +## Thinking vs. Doing + +It's often helpful to guide Roo Code through a "think-then-do" process: + +1. **Analyze:** Ask Roo Code to analyze the current code, identify problems, or plan the approach. +2. **Plan:** Have Roo Code outline the steps it will take to complete the task. +3. **Execute:** Instruct Roo Code to implement the plan, one step at a time. +4. **Review:** Carefully review the results of each step before proceeding. + +--- + +## Using Custom Instructions + +You can provide custom instructions to further tailor Roo Code's behavior. There are two types of custom instructions: + +- **Global Custom Instructions:** Apply to all modes. +- **Mode-Specific Custom Instructions:** Apply only to a specific mode (e.g., Code, Architect, Ask, Debug, or a custom mode). + +Custom instructions are added to the system prompt, providing persistent guidance to the AI model. You can use these to: + +- Enforce coding style guidelines. +- Specify preferred libraries or frameworks. +- Define project-specific conventions. +- Adjust Roo Code's tone or personality. + +See the [Custom Instructions](/features/custom-instructions) section for more details. + +--- + +## Handling Ambiguity + +If your request is ambiguous or lacks sufficient detail, Roo Code might: + +- **Make Assumptions:** It might proceed based on its best guess, which may not be what you intended. +- **Ask Follow-Up Questions:** It might use the `ask_followup_question` tool to clarify your request. + +It's generally better to provide clear and specific instructions from the start to avoid unnecessary back-and-forth. + +--- + +## Providing Feedback + +If Roo Code doesn't produce the desired results, you can provide feedback by: + +- **Rejecting Actions:** Click the "Reject" button when Roo Code proposes an action you don't want. +- **Providing Explanations:** When rejecting, explain _why_ you're rejecting the action. This helps Roo Code learn from its mistakes. +- **Rewording Your Request:** Try rephrasing your initial task or providing more specific instructions. +- **Manually Correcting:** If there are a few small issues, you can also directly modify the code before accepting the changes. + +--- + +## Examples + +**Good Prompt:** + +> `@/src/components/Button.tsx` Refactor the `Button` component to use the `useState` hook instead of the `useReducer` hook. + +**Bad Prompt:** + +> Fix the button. + +**Good Prompt:** + +> Create a new file named `utils.py` and add a function called `calculate_average` that takes a list of numbers and returns their average. + +**Bad Prompt:** + +> Write some Python code. + +**Good Prompt:** + +> `@problems` Address all errors and warnings in the current file. + +**Bad Prompt:** + +> Fix everything. + +By following these tips, you can write effective prompts that get the most out of Roo Code's capabilities. diff --git a/apps/docs/docs/advanced-usage/prompt-structure.md b/apps/docs/docs/advanced-usage/prompt-structure.md new file mode 100644 index 00000000000..d3a8d4f630b --- /dev/null +++ b/apps/docs/docs/advanced-usage/prompt-structure.md @@ -0,0 +1,132 @@ +--- +description: Understand the technical structure of prompts in Roo Code. Learn how messages are constructed, system prompts work, and optimize your interactions. +keywords: + - prompt structure + - system prompt + - message flow + - technical documentation + - LLM communication +--- + +# Prompt Structure + +This page explains the technical structure of prompts in Roo Code - how messages are constructed and sent to the Large Language Model (LLM). + +--- + +## Core Message Types + +Roo Code uses three primary message types when communicating with LLMs: + +- **System Prompt**: The initial instructions that define Roo's capabilities, persona, and operational rules +- **User Messages**: Content sent by you (the user) to Roo +- **Assistant Messages**: Responses generated by the LLM based on your requests + +At the API level, there's also a fourth message role: + +- **Tool Messages**: Results returned from tool executions, sent back to the LLM as input + +Understanding these message types helps you work more effectively with Roo and can be valuable for troubleshooting or advanced customization. + +--- + +## System Prompt + +The system prompt is the foundation of Roo's behavior. It contains: + +- **Role Definition**: The core persona instructions based on the selected mode (Code, Ask, Debug, etc.) +- **Tool Descriptions**: Detailed information about available tools, including parameters and examples +- **Tool Use Guidelines**: Rules for how tools should be used (sequential execution, waiting for results) +- **Capabilities**: Description of what Roo can do in the current environment +- **Available Modes**: List of all available modes and their descriptions +- **Operational Rules**: Critical guidelines for handling files, project structure, and user interaction +- **System Information**: Details about your environment (OS, shell, working directory) +- **Custom Instructions**: Your global and mode-specific customizations + +The system prompt is generated dynamically each time you interact with Roo, adapting to your current mode, available tools, and custom settings. + +### Custom System Prompts + +Advanced users can create custom system prompts for specific modes by placing a `.roo/system-prompt-` file in their workspace. When present, Roo uses this file instead of generating the standard system prompt sections, allowing for complete customization of Roo's behavior in that mode. + +--- + +## User Messages + +User messages contain your direct inputs to Roo, plus additional contextual information: + +- **Your Query**: The text you type in the chat interface +- **Images**: Any images you include in your message (for supported models) +- **Environment Details**: Automatically appended information about your workspace state: + - Open files/tabs + - Cursor position + - Active terminals with output + - Recently modified files + - Current time + - Token/cost information + - Current mode + - File listing (on initial connection) + +This automatic context enrichment helps Roo understand your workspace without requiring you to explicitly describe it. + +--- + +## Assistant Messages + +Assistant messages are the LLM's responses, which may include: + +- **Text Responses**: Direct answers to your queries +- **Thinking**: Internal reasoning process (visible when enabled) +- **Tool Calls**: Requests to use specific tools like reading files or executing commands + +Note that while assistant messages contain tool calls, the results of those tools are sent back to the LLM in separate tool messages, not as part of the assistant message itself. + +--- + +## Message Flow + +Here's how these components work together: + +1. **Initial Setup**: Roo generates the system prompt based on your selected mode and configuration +2. **User Input**: You send a message, which is enriched with environment details +3. **LLM Processing**: The LLM receives all previous messages plus your new input +4. **Assistant Response**: The LLM generates a response, potentially using tools +5. **Tool Execution**: If the LLM requests a tool, Roo executes it and provides the result +6. **Conversation History**: All messages are maintained in a structured history for context + +--- + +## Technical Implementation + +Internally, Roo's prompt construction is handled by several components: + +- **System Prompt Generation**: The `SYSTEM_PROMPT` function in `src/core/prompts/system.ts` assembles the complete system prompt +- **Section Generators**: Specialized functions create each section of the system prompt +- **Message Transformation**: Provider-specific transformers convert Roo's internal message format to the format required by each LLM API +- **Custom Prompt Loading**: The `loadSystemPromptFile` function checks for and processes custom system prompt files + +--- + +## Support Prompts + +Alongside the main chat flow, Roo uses specialized templates for specific code actions: + +- **Code Action Prompts**: For commands like "Explain", "Fix", "Improve", or "Add to Context" +- **Template-Based**: Generated from templates in `src/shared/support-prompt.ts` +- **Independent Context**: Often operates without the main chat history +- **Task-Specific Format**: Optimized for the specific code task being performed + +These support prompts work outside the normal conversation flow to provide focused assistance for specific coding tasks. + +--- + +## Optimizing Your Interactions + +Understanding this structure can help you: + +- **Write Better Prompts**: Knowing what context Roo already has helps you avoid redundant information +- **Troubleshoot Issues**: Understanding message flow helps identify where problems might occur +- **Create Custom Modes**: With knowledge of the system prompt structure, you can create more effective custom modes +- **Use Custom System Prompts**: Advanced users can create entirely custom system prompts for specialized use cases + +This technical foundation powers all of Roo's capabilities, enabling it to understand your requests and effectively utilize available tools to complete tasks. diff --git a/apps/docs/docs/advanced-usage/rate-limits-costs.md b/apps/docs/docs/advanced-usage/rate-limits-costs.md new file mode 100644 index 00000000000..f2af79606c5 --- /dev/null +++ b/apps/docs/docs/advanced-usage/rate-limits-costs.md @@ -0,0 +1,68 @@ +--- +description: Understand token usage, cost calculation, and optimization strategies for Roo Code. Learn how to manage API costs and set request limits effectively. +keywords: + - rate limits + - API costs + - token usage + - cost optimization + - auto-approval limits + - API management +--- + +# Rate Limits and Costs + +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. + +--- + +## Token Usage + +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. + +- **Input Tokens:** These are the tokens in your prompt, including the system prompt, your instructions, and any context provided (e.g., file contents). +- **Output Tokens:** These are the tokens generated by the AI model in its response. + +You can see the number of input and output tokens used for each interaction in the chat history. + +--- + +## Cost Calculation + +Most AI providers charge based on the number of tokens used. Pricing varies depending on the provider and the specific model. + +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. + +For reasoning-capable models (for example, Gemini 3 Pro Preview and other models that expose separate "thinking" or reasoning tokens), Roo Code now includes both normal tokens **and** reasoning / "thought" tokens in its estimates when the provider reports them. This can make the displayed token usage and cost slightly higher than in older versions, but it better matches how providers actually bill you. + +**Note:** + +- The cost calculation is an _estimate_. The actual cost may vary slightly depending on the provider's billing practices. +- Some providers may offer free tiers or credits. Check your provider's documentation for details. +- Some providers offer prompt caching which greatly lowers cost. + +### Limiting Auto-Approved Requests + +To further help manage API costs and prevent unexpected expenses, Roo Code includes a "Max Requests" setting for auto-approved actions. This allows you to define a specific limit on how many consecutive API calls Roo Code can make without requiring your explicit re-approval during a task. + +- **How it works:** If you set a limit (e.g., 5 requests), Roo Code will perform up to 5 auto-approved API calls. Before making the 6th call, it will pause and prompt you to "Reset and Continue," as shown below. + Warning message indicating the auto-approved request limit has been reached. + _Notification when the auto-approved request limit is met._ +- **Configuration:** This limit is configured within the "Auto-approve actions" settings. You can set a specific number or choose "Unlimited." For detailed steps on configuring this and other auto-approval settings, see the [Auto-Approving Actions documentation](/features/auto-approving-actions). + Setting the Max Requests limit for auto-approved actions in Roo Code settings. + _Setting the "Max Requests" for auto-approved actions._ + +This feature provides an additional safeguard, particularly for complex or long-running tasks where multiple API calls might be involved. + +--- + +## Tips for Optimizing Token Usage + +- **Be Concise:** Use clear and concise language in your prompts. Avoid unnecessary words or details. +- **Provide Only Relevant Context:** Use context mentions (`@file.ts`, `@folder/`) selectively. Only include the files that are directly relevant to the task. +- **Break Down Tasks:** Divide large tasks into smaller, more focused sub-tasks. +- **Use Custom Instructions:** Provide custom instructions to guide Roo Code's behavior and reduce the need for lengthy explanations in each prompt. +- **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. +- **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. +- **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. + +By understanding and managing your API usage, you can use Roo Code effectively and efficiently. diff --git a/apps/docs/docs/advanced-usage/roo-code-nightly.mdx b/apps/docs/docs/advanced-usage/roo-code-nightly.mdx new file mode 100644 index 00000000000..4e619702e39 --- /dev/null +++ b/apps/docs/docs/advanced-usage/roo-code-nightly.mdx @@ -0,0 +1,53 @@ +--- +description: Learn how to install and use Roo Code Nightly builds to test the latest features and improvements before official releases. +keywords: + - Roo Code Nightly + - prerelease builds + - beta testing + - latest features + - nightly builds +sidebar_label: Roo Code Nightly +--- + +# Roo Code Nightly + +For users who want the latest features and updates, Roo Code offers a prerelease build called **Roo Code Nightly**, which is automatically published whenever changes are merged into our main development branch. This means it always reflects the latest code. It's designed for users who want to access the newest features and contribute to early testing. + +--- + +## Understanding Nightly vs. Other Prereleases + +It's important to distinguish Roo Code Nightly from other types of prerelease software (like beta versions or release candidates): + +* **Roo Code Nightly:** + * **Frequency:** Automated builds, generated on each merge to the main development branch. + * **Content:** Reflects the very latest merged code. + * **Stability:** Highly experimental; may contain bugs or incomplete features. + * **Testing:** Minimal or no manual testing before release. + * **Audience:** Primarily for developers, internal testing, or users comfortable with potentially unstable software who want to see the absolute latest changes and help identify issues early. + +* **General Prerelease (e.g., Beta, Release Candidate):** + * **Frequency:** Released periodically (e.g., weekly, monthly) as specific milestones are met. + * **Content:** Represents a more curated and planned intermediate version. + * **Stability:** More stable than Nightly builds; often undergoes some manual testing or validation. + * **Testing:** Typically receives more focused testing. + * **Audience:** Intended for a wider group of early adopters or beta testers to gather feedback before a stable release. + +In short: **Nightly = latest code, potentially unstable, frequent updates.** Other prereleases are generally less frequent, more validated, and aimed at broader testing. + +--- + +## Installing Roo Code Nightly + +To install Roo Code Nightly: + +1. Open VS Code. +2. Access Extensions: Click the Extensions icon in the Activity Bar or press `Ctrl+Shift+X` (Windows/Linux) or `Cmd+Shift+X` (macOS). +3. Search for "Roo Code Nightly". +4. Select "Roo Code Nightly" by Roo Code and click **Install**. +5. Reload VS Code if prompted. + +Roo Code Nightly extension in VS Code Marketplace +*Roo Code Nightly in the VS Code Marketplace.* + +You can have both the stable version of Roo Code and Roo Code Nightly installed simultaneously. \ No newline at end of file diff --git a/apps/docs/docs/basic-usage/context-mentions.md b/apps/docs/docs/basic-usage/context-mentions.md new file mode 100644 index 00000000000..bf0d34bdf1e --- /dev/null +++ b/apps/docs/docs/basic-usage/context-mentions.md @@ -0,0 +1,169 @@ +--- +description: Learn how to use context mentions (@) in Roo Code to reference files, folders, problems, terminal output, and Git commits for more accurate AI assistance. +keywords: + - "Roo Code context mentions" + - "@ mentions" + - "file references" + - "folder mentions" + - "problems panel" + - "terminal mentions" + - "Git integration" +--- + +# Context Mentions + +Context mentions are a powerful way to provide Roo Code with specific information about your project, allowing it to perform tasks more accurately and efficiently. You can use mentions to refer to files, folders, problems, and Git commits. Context mentions start with the `@` symbol. + +Context Mentions Overview - showing the @ symbol dropdown menu in the chat interface + +_Context mentions overview showing the @ symbol dropdown menu in the chat interface._ + +--- + +## Types of Mentions + +File mention example showing a file being referenced with @ and its contents appearing in the conversation + +_File mentions add actual code content into the conversation for direct reference and analysis._ + +| Mention Type | Format | Description | Example Usage | +| --------------- | ---------------------- | --------------------------------------------------------------------- | -------------------------------------------------- | +| **File** | `@/path/to/file.ts` | Includes file contents in request context | "Explain the function in @/src/utils.ts" | +| **Image** | `@/path/to/image.png` | Includes image as inline visual content | "What's wrong with this UI? @/screenshots/bug.png" | +| **Folder** | `@/path/to/folder` | Includes contents of all files directly in the folder (non-recursive) | "Analyze the code in @/src/components" | +| **Problems** | `@problems` | Includes VS Code Problems panel diagnostics | "@problems Fix all errors in my code" | +| **Terminal** | `@terminal` | Includes recent terminal command and output | "Fix the errors shown in @terminal" | +| **Git Commit** | `@a1b2c3d` | References specific commit by hash | "What changed in commit @a1b2c3d?" | +| **Git Changes** | `@git-changes` | Shows uncommitted changes | "Suggest a message for @git-changes" | +| **URL** | `@https://example.com` | Imports website content | "Summarize @https://docusaurus.io/" | + +### File Mentions + +File mention example showing a file being referenced with @ and its contents appearing in the conversation + +_File mentions incorporate source code with line numbers for precise references._ +| Capability | Details | +|------------|---------| +| **Format** | `@/path/to/file.ts` (always start with `/` from workspace root) | +| **Provides** | Complete file contents with line numbers | +| **Supports** | Text files, PDFs, and DOCX files (with text extraction) | +| **Works in** | Initial requests, feedback responses, and follow-up messages | +| **Limitations** | Very large files may be truncated; binary files not supported | + +### Image Mentions + +Image mentions let you include visual content directly in your conversation. When the model supports vision, the image is sent as inline visual content rather than text. + +| Capability | Details | +| ------------ | ---------------------------------------------------------------------- | +| **Format** | `@/path/to/image.png` (same path format as file mentions) | +| **Provides** | Image sent as inline visual content to the model | +| **Supports** | PNG, JPG, JPEG, GIF, BMP, SVG, WEBP, ICO, AVIF | +| **Best for** | UI reviews, screenshot debugging, diagram analysis | +| **Requires** | A model with vision support (non-vision models can't interpret images) | + +### Folder Mentions + +Folder mention example showing directory contents being referenced in the chat + +_Folder mentions include the content of all files within the specified directory._ +| Capability | Details | +|------------|---------| +| **Format** | `@/path/to/folder` (no trailing slash) | +| **Provides** | Complete contents of all files within the directory | +| **Includes** | Contents of non-binary text files directly within the folder (not recursive) | +| **Best for** | Providing context from multiple files in a directory | +| **Tip** | Be mindful of context window limits when mentioning large directories | + +### Problems Mention + +Problems mention example showing VS Code problems panel being referenced with @problems + +_Problems mentions import diagnostics directly from VS Code's problems panel._ +| Capability | Details | +|------------|---------| +| **Format** | `@problems` | +| **Provides** | All errors and warnings from VS Code's problems panel | +| **Includes** | File paths, line numbers, and diagnostic messages | +| **Groups** | Problems organized by file for better clarity | +| **Best for** | Fixing errors without manual copying | + +For comprehensive details on how Roo Code integrates with VSCode's diagnostics system, see [Diagnostics Integration](/features/diagnostics-integration). + +### Terminal Mention + +Terminal mention example showing terminal output being included in Roo's context + +_Terminal mentions capture recent command output for debugging and analysis._ + +| Capability | Details | +| -------------- | -------------------------------------------------- | +| **Format** | `@terminal` | +| **Captures** | Last command and its complete output | +| **Preserves** | Terminal state (doesn't clear the terminal) | +| **Limitation** | Limited to visible terminal buffer content | +| **Best for** | Debugging build errors or analyzing command output | + +### Git Mentions + +Git commit mention example showing commit details being analyzed by Roo + +_Git mentions provide commit details and diffs for context-aware version analysis._ +| Type | Format | Provides | Limitations | +|------|--------|----------|------------| +| **Commit** | `@a1b2c3d` | Commit message, author, date, and complete diff | Only works in Git repositories | +| **Working Changes** | `@git-changes` | `git status` output and diff of uncommitted changes | Only works in Git repositories | + +### URL Mentions + +URL mention example showing website content being converted to Markdown in the chat + +_URL mentions import external web content and convert it to readable Markdown format._ + +| Capability | Details | +| -------------- | ------------------------------------------------ | +| **Format** | `@https://example.com` | +| **Processing** | Uses headless browser to fetch content | +| **Cleaning** | Removes scripts, styles, and navigation elements | +| **Output** | Converts content to Markdown for readability | +| **Limitation** | Complex pages may not convert perfectly | + +--- + +## How to Use Mentions + +1. Type `@` in the chat input to trigger the suggestions dropdown +2. Continue typing to filter suggestions or use arrow keys to navigate +3. Select with Enter key or mouse click +4. Combine multiple mentions in a request: "Fix @problems in @/src/component.ts" + +The dropdown automatically suggests: + +- Recently opened files +- Visible folders +- Recent git commits +- Special keywords (`problems`, `terminal`, `git-changes`) +- **All currently open files** (regardless of ignore settings or directory filters) + +The dropdown respects `.rooignore` by default, hiding ignored files from suggestions. Enable the `showRooIgnoredFiles` setting to include ignored files in the dropdown (they'll appear with a 🔒 indicator). Common directories like `node_modules`, `.git`, `dist`, and `out` are also filtered to reduce noise. + +--- + +## Important Behaviors + +### Ignore File Interactions + +| Behavior | Description | +| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| **Dropdown filtering** | The `@` dropdown hides `.rooignore`-matched files by default. Enable `showRooIgnoredFiles` to see them (marked with 🔒). | +| **`.rooignore` bypass** | File and folder `@mentions` bypass `.rooignore` checks when fetching content for context. Content from ignored files will be included if directly mentioned. | +| **`.gitignore` bypass** | Similarly, file and folder `@mentions` do not respect `.gitignore` rules when fetching content. | +| **Git command respect** | Git-related mentions (`@git-changes`, `@commit-hash`) do respect `.gitignore` since they rely on Git commands. | + +--- + +## Related Features + +- [Diagnostics Integration](/features/diagnostics-integration) - Learn about automatic error detection and smart severity filtering +- [Code Actions](/features/code-actions) - Discover quick fixes and AI assistance directly in your editor +- [Shell Integration](/features/shell-integration) - Understand how terminal mentions work with shell integration diff --git a/apps/docs/docs/basic-usage/how-tools-work.md b/apps/docs/docs/basic-usage/how-tools-work.md new file mode 100644 index 00000000000..5fbe8c8d7aa --- /dev/null +++ b/apps/docs/docs/basic-usage/how-tools-work.md @@ -0,0 +1,106 @@ +--- +description: Learn how Roo Code uses tools to interact with your system. Understand file operations, command execution, browser control, and the approval workflow. +keywords: + - Roo Code tools + - AI tools + - file operations + - command execution + - browser automation + - tool approval +--- + +# How Tools Work + +Roo Code uses tools to interact with your code and environment. These specialized helpers perform specific actions like reading files, making edits, running commands, or searching your codebase. Tools provide automation for common development tasks without requiring manual execution. + +--- + +## Tool Workflow + +Describe what you want to accomplish in natural language, and Roo Code will: + +1. Select the appropriate tool based on your request +2. Present the tool with its parameters for your review +3. Execute the approved tool and show you the results +4. Continue this process until your task is complete + +--- + +## Tool Categories + +| Category | Purpose | Tool Names | +| :------- | :----------------------------------------- | :----------------------------------------------------------------------- | +| Read | Access file content and code structure | `read_file`, `search_files`, `list_files`, `list_code_definition_names` | +| Edit | Create or modify files and code | `write_to_file`, `apply_diff` | +| Execute | Run commands and perform system operations | `execute_command` | +| Browser | Interact with web content | `browser_action` | +| Workflow | Manage task flow and context | `ask_followup_question`, `attempt_completion`, `switch_mode`, `new_task` | + +--- + +## Example: Using Tools + +Here's how a typical tool interaction works: + +Tool approval interface showing Save and Reject buttons along with Auto-approve checkbox + +_The tool approval interface shows Save/Reject buttons and Auto-approve options._ + +**User:** Create a file named `greeting.js` that logs a greeting message + +**Roo Code:** (Proposes the `write_to_file` tool as shown in the image above) + +```xml + +greeting.js + +function greet(name) { + console.log(`Hello, ${name}!`); +} + +greet('World'); + +5 + +``` + +**User:** (Clicks "Save" in the interface) + +**Roo Code:** (Confirms file creation) + +--- + +## Tool Safety and Approval + +Every tool use requires your explicit approval. When Roo proposes a tool, you'll see: + +- A "Save" button to approve and execute the tool +- A "Reject" button to decline the proposed tool +- An optional "Auto-approve" setting for trusted operations + +This safety mechanism ensures you maintain control over which files are modified, what commands are executed, and how your codebase is changed. Always review tool proposals carefully before saving them. + +--- + +## Core Tools Reference + +| Tool Name | Description | Category | +| :--------------------------- | :-------------------------------------------------- | :------- | +| `read_file` | Reads the content of a file with line numbers | Read | +| `search_files` | Searches for text or regex patterns across files | Read | +| `list_files` | Lists files and directories in a specified location | Read | +| `list_code_definition_names` | Lists code definitions like classes and functions | Read | +| `write_to_file` | Creates new files or overwrites existing ones | Edit | +| `apply_diff` | Makes precise changes to specific parts of a file | Edit | +| `execute_command` | Runs commands in the VS Code terminal | Execute | +| `browser_action` | Performs actions in a headless browser | Browser | +| `ask_followup_question` | Asks you a clarifying question | Workflow | +| `attempt_completion` | Indicates the task is complete | Workflow | +| `switch_mode` | Changes to a different operational mode | Workflow | +| `new_task` | Creates a new subtask with a specific starting mode | Workflow | + +--- + +## Learn More About Tools + +For more detailed information about each tool, including complete parameter references and advanced usage patterns, see the [Tool Use Overview](/advanced-usage/available-tools/tool-use-overview) documentation. diff --git a/apps/docs/docs/basic-usage/the-chat-interface.md b/apps/docs/docs/basic-usage/the-chat-interface.md new file mode 100644 index 00000000000..50918ea0368 --- /dev/null +++ b/apps/docs/docs/basic-usage/the-chat-interface.md @@ -0,0 +1,69 @@ +--- +description: Learn how to use the Roo Code chat interface effectively. Understand the layout, features, and best practices for communicating with your AI coding assistant. +keywords: + - Roo Code chat interface + - AI assistant interaction + - chat features + - user interface + - VS Code extension +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# The Chat Interface + +The Roo Code chat interface is your primary way of interacting with it. It's located in the Roo Code panel, which you can open by clicking the Roo Code icon () in the VS Code Activity Bar. + +--- + +## Components of the Chat Interface + +The chat interface consists of the following main elements: + +1. **Chat History:** This area displays the conversation history between you and Roo Code. It shows your requests, Roo Code's responses, and any actions taken (like file edits or command executions). + +2. **Input Field:** This is where you type your tasks and questions for Roo Code. You can use plain English to communicate. + +3. **Action Buttons:** These buttons appear above the input field and allow you to approve or reject Roo Code's proposed actions. The available buttons change depending on the context. + +4. **Send Button:** This looks like a small plane and it's located to the far right of the input field. This sends messages to Roo after you've typed them. + +5. **Plus Button:** The plus button is located at the top in the header. It switches to the Chat tab and focuses the input. To reset the session, start a new task or clear the current task. + +6. **Settings Button:** The settings button is a gear, and it's used for opening the settings to customize features or behavior. + +7. **Mode Selector:** The mode selector is a dropdown located to the left of the chat input field. It is used for selecting which mode Roo should use for your tasks. Its settings gear opens the Modes tab, not general settings. + +Chat interface components labeled with numbered callouts + +_Numbered interface elements showing the key components of the Roo Code chat interface._ + +--- + +## Tip: Using the Secondary Sidebar + +For a better workflow, you can drag Roo Code to VS Code's [Secondary Sidebar](https://code.visualstudio.com/api/ux-guidelines/sidebars#secondary-sidebar). This allows you to keep Roo Code visible while still having access to the Explorer, Search, Source Control, and other panels in the primary sidebar. + +To set this up: + +1. Click and drag the Roo Code icon from the Activity Bar +2. Drop it on the right side of your editor to create a secondary sidebar +3. Now you can use both sidebars simultaneously! + +For more productivity tips, check out our [Tips & Tricks](/tips-and-tricks) guide. + +--- + +## Interacting with Messages + +- **Clickable Links:** File paths, URLs, and other mentions in the chat history are clickable. Clicking a file path will open the file in the editor. Clicking a URL will open it in your default browser. +- **Copying Text:** You can copy text from the chat history by selecting it and using the standard copy command (Ctrl/Cmd + C). Some elements, like code blocks, have a dedicated "Copy" button. +- **Expanding and Collapsing**: Click on a message to expand or collapse it. + +--- + +## Status Indicators + +- **Loading Spinner:** When Roo Code is processing a request, you'll see a loading spinner. +- **Error Messages:** If an error occurs, a red error message will be displayed. +- **Success Messages:** Green messages indicate successful completion of actions. diff --git a/apps/docs/docs/basic-usage/typing-your-requests.md b/apps/docs/docs/basic-usage/typing-your-requests.md new file mode 100644 index 00000000000..3dc60e66c10 --- /dev/null +++ b/apps/docs/docs/basic-usage/typing-your-requests.md @@ -0,0 +1,69 @@ +--- +description: Learn how to effectively communicate with Roo Code using natural language. Best practices for typing requests, examples, and common pitfalls to avoid. +keywords: + - Roo Code requests + - natural language AI + - typing commands + - AI communication + - request examples + - best practices +--- + +# Typing Your Requests + +Roo Code is designed to understand natural language. You don't need to use any special commands or syntax to communicate with it. Just type your request in plain English, as if you were talking to a human developer. + +Example of typing a request in Roo Code + +--- + +## Effective Request Strategies + +Clearly state what you want Roo Code to do. Avoid vague or ambiguous language. + +| Strategy | Implementation | +| -------------------- | ------------------------------------------------------------------------------------------ | +| **Be specific** | "Fix the bug in `calculateTotal` that returns incorrect results" instead of "Fix the code" | +| **Provide context** | Use @ [Context Mentions](/basic-usage/context-mentions) for file and code references | +| **Break down tasks** | Submit complex tasks in smaller manageable steps | +| **Include examples** | Provide sample code when you need specific formatting or style | + +--- + +## Example Requests + +``` +create a new file named `utils.py` and add a function called `add` that takes two numbers as arguments and returns their sum +``` + +``` +in the file @src/components/Button.tsx, change the color of the button to blue +``` + +``` +find all instances of the variable `oldValue` in @/src/App.js and replace them with `newValue` +``` + +``` +run the command `npm install` in the terminal +``` + +``` +explain the function `calculateTotal` in @/src/utils.ts +``` + +``` +@problems address all detected problems +``` + +--- + +## Common Pitfalls to Avoid + +| DON'T | DO | +| ------------------------------- | ----------------------------------------- | +| Vague requests | Specify exactly what needs to be done | +| Assuming context | Explicitly reference files and functions | +| Excessive technical jargon | Use clear, straightforward language | +| Multiple unrelated tasks | Submit one focused request at a time | +| Proceeding without confirmation | Check the code to make sure it's complete | diff --git a/apps/docs/docs/basic-usage/using-modes.md b/apps/docs/docs/basic-usage/using-modes.md new file mode 100644 index 00000000000..32c424a9713 --- /dev/null +++ b/apps/docs/docs/basic-usage/using-modes.md @@ -0,0 +1,129 @@ +--- +description: Learn how to use Roo Code's specialized modes for different tasks. Switch between Code, Ask, Architect, Debug, and Orchestrator modes for optimal AI assistance. +keywords: + - Roo Code modes + - Code mode + - Ask mode + - Architect mode + - Debug mode + - Orchestrator mode + - AI assistant modes + - mode switching +--- + +# Using Modes + +Modes in Roo Code are specialized personas that tailor the assistant's behavior to your current task. Each mode offers different capabilities, expertise, and access levels to help you accomplish specific goals. + +:::info Sticky Models & Mode Persistence +Each mode remembers your last-used model. When switching modes, Roo automatically selects that model—no manual selection needed. Assign different models to different modes (e.g., Gemini 2.5 Preview for `🏗️ Architect` mode, Claude Sonnet 3.7 for `💻 Code` mode) and Roo will switch models automatically when you change modes. + +Additionally, your selected mode persists between sessions—Roo remembers which mode you were using when you return. +::: + +--- + +## Why Use Different Modes? + +- **Task specialization:** Get precisely the type of assistance you need for your current task +- **Safety controls:** Prevent unintended file modifications when focusing on planning or learning +- **Focused interactions:** Receive responses optimized for your current activity +- **Workflow optimization:** Seamlessly transition between planning, implementing, debugging, and learning + +--- + +## Switching Between Modes + +Four ways to switch modes: + +1. **Dropdown menu:** Click the selector to the left of the chat input + + Using the dropdown menu to switch modes + +2. **Slash command:** Type `/architect`, `/ask`, `/debug`, `/code`, or `/orchestrator` at the beginning of your message. This will switch to that mode and clear the input field. + + Using slash commands to switch modes + +3. **Toggle command/Keyboard shortcut:** Use the keyboard shortcut below, applicable to your operating system. Each press cycles through the available modes in sequence, wrapping back to the first mode after reaching the end. + + | Operating System | Shortcut | + | ---------------- | -------- | + | macOS | ⌘ + . | + | Windows | Ctrl + . | + | Linux | Ctrl + . | + +4. **Accept suggestions:** Click on mode switch suggestions that Roo offers when appropriate + + Accepting a mode switch suggestion from Roo + +--- + +## Built-in Modes + +### Code Mode (Default) + +| Aspect | Details | +| -------------------- | -------------------------------------------------------------------------------------------------------- | +| **Name** | `💻 Code` | +| **Description** | A skilled software engineer with expertise in programming languages, design patterns, and best practices | +| **Tool Access** | Full access to all tool groups: `read`, `edit`, `browser`, `command`, `mcp` | +| **Ideal For** | Writing code, implementing features, debugging, and general development | +| **Special Features** | No tool restrictions—full flexibility for all coding tasks | + +### Ask Mode + +| Aspect | Details | +| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | `❓ Ask` | +| **Description** | A knowledgeable technical assistant focused on providing thorough and complete answers. It's less inclined to switch to implementing code unless explicitly requested and may use diagrams for clarification. | +| **Tool Access** | Limited access: `read`, `browser`, `mcp` only (cannot edit files or run commands) | +| **Ideal For** | Code explanation, concept exploration, and technical learning | +| **Special Features** | Optimized for detailed, informative responses, often using diagrams for clarity, without modifying your project. | + +### Architect Mode + +| Aspect | Details | +| -------------------- | ---------------------------------------------------------------------------------------------------- | +| **Name** | `🏗️ Architect` | +| **Description** | An experienced technical leader and planner who helps design systems and create implementation plans | +| **Tool Access** | Access to `read`, `browser`, `mcp`, and restricted `edit` (markdown files only) | +| **Ideal For** | System design, high-level planning, and architecture discussions | +| **Special Features** | Follows a structured approach from information gathering to detailed planning | + +### Debug Mode + +| Aspect | Details | +| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | `🪲 Debug` | +| **Description** | An expert problem solver specializing in systematic troubleshooting and diagnostics | +| **Tool Access** | Full access to all tool groups: `read`, `edit`, `browser`, `command`, `mcp` | +| **Ideal For** | Tracking down bugs, diagnosing errors, and resolving complex issues | +| **Special Features** | Uses a methodical approach of analyzing, narrowing possibilities, and fixing issues. Includes custom instructions to reflect, distill possibilities, add logs, and confirm before fixing. | + +### Orchestrator Mode (aka Boomerang Mode) + +| Aspect | Details | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Name** | `🪃 Orchestrator` | +| **Description** | A strategic workflow orchestrator (aka Boomerang Mode) that breaks down complex tasks and delegates them to specialized modes. Learn more about [Boomerang Tasks](/features/boomerang-tasks). | +| **Tool Access** | No direct tool access (uses `new_task` tool to delegate work to other modes) | +| **Ideal For** | Managing multi-step projects, coordinating work across different modes, and automating complex workflows | +| **Special Features** | Uses the [`new_task`](/advanced-usage/available-tools/new-task) tool to delegate subtasks to other modes. | + +--- + +## Customizing Modes + +Tailor Roo Code's behavior by customizing existing modes or creating new specialized assistants. Define tool access, file permissions, and behavior instructions to enforce team standards or create purpose-specific assistants. See [Custom Modes documentation](/features/custom-modes) for setup instructions. + +### Understanding Tool Groups + +Each tool group provides specific capabilities: + +- **`read`**: File reading, listing, and searching capabilities +- **`edit`**: File modification and creation capabilities +- **`browser`**: Web browsing and search capabilities +- **`command`**: Terminal command execution +- **`mcp`**: Model Context Protocol server interactions + +For detailed information about available tools, see the [Available Tools documentation](/advanced-usage/available-tools/tool-use-overview). diff --git a/apps/docs/docs/credits/overview.md b/apps/docs/docs/credits/overview.md new file mode 100644 index 00000000000..12ee09c8ead --- /dev/null +++ b/apps/docs/docs/credits/overview.md @@ -0,0 +1,79 @@ +--- +description: The Roo Code Cloud is the easiest way to use Roo Code without additional accounts and dealing with API keys +keywords: + - Credits + - Tokens + - Dollars + - Prepaid +--- + +# Roo Code Credits Overview + +Roo Code is composed of a few products: + +- **Roo Code VS Code** (the extension) is 100% free +- **Roo Code Router** (the model provider) offers both free and paid models +- **Roo Code Cloud Agents** (the automous agents) are a paid feature as they incur infrastructure costs + +In order to use paid models via our provider and to run Cloud agents, you need credits. + +:::info Up-to-date pricing +You can see the plans we offer and the most up-to-date pricing on our [pricing page](https://roocode.com/pricing) +::: + +--- + +## What are credits? + +Credits are just pre-paid dollar amounts you can optionally buy to use the paid parts of the Roo Code suite. If you stick to free features and use free models, you don't have to buy any credits. + +Credits are shown in dollars, there's no shenanigans in converting it to obscure currencies you can't calculate. + +## How much do credits cost? + +Our [pricing page](https://roocode.com/pricing) always has the latest on our plans and Cloud Agent pricing. + +Model pricing can be found in the [provider page](https://roocode.com/provider) of our website. + +We don't include prices here just to make sure they're always up-to-date. + +## How are credits and the monthly subscription related? + +The monthly subscription to the Team plan simply unlocks advanced functionality. It doesn't include any credits. And the free plan doesn't have any recurring subscription fees, you only pay for the credits you purchase. + +## How do I get free credits or free minutes or free tokens? + +When you sign up for a Roo Code Cloud account, you'll be given a number of "Free Minutes" to try the product out (you'll see a cute icon). Those free minutes cover both the [Cloud Agent](/roo-code-cloud/cloud-agents) run time _and_ inference via the Roo Code Cloud provider (both of which normally cost credits). Those can't be used in the extension – they're there for you to try the magic of Cloud Agents. + +If you want free inference in the extension, look for a free model when available (or use another provider which may offer it to you for free). + +## How can I buy credits? + +### Single purchase + +From your [Roo Code Cloud account](https://app.roocode.com.), to a one-time purchase: + +1. Click on the credit balance display in the top right + Credit balance display + +2. Choose "Buy Credits" +3. Enter the amount you want to buy and follow the flow +4. You'll get a confirmation email and the balance will show in the same place in the UI + Credit balance display + +### Auto top-up + +To make sure you never run out of credits, you can set up Auto top-up: + +1. Click on the same credit balance display + Credit balance display + +2. Click on the ⚡ icon + Credit balance dropdown + +3. Enable the option and configure the threshold and amount to buy +4. Click save and you're done + +If you change your mind, just follow the same steps while turning it off. + +You can also access all of this from your [Billing page](https://app.roocode.com/billing) (User Avatar menu → Billing and Credits). diff --git a/apps/docs/docs/faq.md b/apps/docs/docs/faq.md new file mode 100644 index 00000000000..6924e8b7762 --- /dev/null +++ b/apps/docs/docs/faq.md @@ -0,0 +1,213 @@ +--- +description: Find answers to common questions about Roo Code, including setup, usage, troubleshooting, and advanced features. Get help with API keys, modes, and more. +keywords: + - Roo Code FAQ + - frequently asked questions + - troubleshooting + - API setup + - custom modes + - MCP + - local models +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Frequently Asked Questions + +This page answers some common questions about Roo Code. + +--- + +## General + +### What is Roo Code? + +Roo Code is an AI-powered suite of coding products designed to take full advantage of the most advanced large-language models. + +### How does Roo Code work? + +Roo Code uses large language models (LLMs) to understand your requests and translate them into actions. It can: + +- Read and write files in your project +- Execute shell commands +- Perform web browsing (if enabled) +- Use external tools via the Model Context Protocol (MCP) + +You interact with Roo Code through either a chat interface (in the Extension) or through different channels (in the Cloud). + +### What can Roo Code do? + +Roo Code can help with a variety of coding tasks, including: + +- Generating code from natural language descriptions. +- Refactoring existing code. +- Fixing bugs. +- Writing documentation. +- Explaining code. +- Answering questions about your codebase. +- Automating repetitive tasks. +- Creating new files and projects. + +### Is Roo Code free to use? + +The Roo Code Extension is free and [open-source](https://github.com/RooCodeInc/Roo-Code/). +The Roo Code Cloud platform is also free, but some functionality is paid. + +In both cases, Roo Code relies on external LLM inference providers (like [Anthropic](providers/anthropic), [OpenAI](providers/openai), [OpenRouter](providers/openrouter), [Requesty](providers/requesty), etc.) for its AI capabilities. We also offer [Roo Code Router](/roo-code-router/overview) as an alternative. +These providers typically charge for API usage based on the number of tokens processed. You will need to create an account and obtain an API key from your chosen provider. Learn more [about providers and how to set them up](/providers/) for details. + +### What are the risks of using Roo Code? + +Roo Code is a powerful tool, and it's important to use it responsibly. Here are some things to keep in mind: + +- **Roo Code can make mistakes.** Always review Roo Code's proposed changes carefully before approving them. +- **Roo Code can execute commands.** Be very cautious about allowing Roo Code to run commands, especially if you're using auto-approval. +- **Roo Code can access the internet.** If you're using a provider that supports web browsing, be aware that Roo Code could potentially access sensitive information. + +--- + +## Setup & Installation + +### How do I install Roo Code? + +See the [Installation Guide](/getting-started/installing) for detailed instructions. + +### Which API providers are supported? + +See the [full list here](/providers/). + +### How do I get an API key? + +Each API provider has its own process for obtaining an API key. See the [Setting Up Your First AI Provider](/getting-started/connecting-api-provider) for links to the relevant documentation for each provider. + +If you use the [Roo Code Router](/roo-code-router/overview), you don't need an API key. + +### Can I use Roo Code with local models? + +Yes, Roo Code supports running models locally using [Ollama](/providers/ollama) and [LM Studio](/providers/lmstudio). See [Using Local Models](/advanced-usage/local-models) for instructions. + +--- + +## Extension Usage + +### How do I start a new task? + +Open the Roo Code panel () and type your task in the chat box. Be clear and specific about what you want Roo Code to do. See [Typing Your Requests](/basic-usage/typing-your-requests) for best practices. + +### What are modes in Roo Code? + +[Modes](/basic-usage/using-modes) are different personas that Roo Code can adopt, each with a specific focus and set of capabilities. The built-in modes are: + +- **Code:** For general-purpose coding tasks. +- **Architect:** For planning and technical leadership. +- **Ask:** For answering questions and providing information. +- **Debug:** For systematic problem diagnosis. + You can also create [Custom Modes](/features/custom-modes). + +### How do I switch between modes? + +Use the dropdown menu in the chat input area to select a different mode, or use the `/` command to switch to a specific mode. + +### What are tools and how do I use them? + +[Tools](/basic-usage/how-tools-work) are how Roo Code interacts with your system. Roo Code automatically selects and uses the appropriate tools to complete your tasks. You don't need to call tools directly. You will be prompted to approve or reject each tool use. + +### What are context mentions? + +[Context mentions](/basic-usage/context-mentions) are a way to provide Roo Code with specific information about your project, such as files, folders, or problems. Use the "@" symbol followed by the item you want to mention (e.g., `@/src/file.ts`, `@problems`). + +### Can Roo Code access the internet? + +Yes, if you are using a provider with a model that support web browsing. Be mindful of the security implications of allowing this. + +### Can Roo Code run commands in my terminal? + +Yes, Roo Code can execute commands in your VS Code terminal. You will be prompted to approve each command before it's executed, unless you've enabled auto-approval for commands. Be extremely cautious about auto-approving commands. If you're experiencing issues with terminal commands, see the [Shell Integration Guide](/features/shell-integration) for troubleshooting. + +### How do I provide feedback to Roo Code? + +You can provide feedback by approving or rejecting Roo Code's proposed actions. You can provide additional feedback by using the feedback field. + +### Can I customize Roo Code's behavior? + +Yes, you can customize Roo Code in several ways: + +- **Custom Instructions:** Provide general instructions that apply to all modes, or mode-specific instructions. +- **Custom Modes:** Create your own modes with tailored prompts and some tool permissions. +- **`.roorules` Files:** Create `.roorules` files in your project to provide additional guidelines. +- **Settings:** Adjust various settings, such as auto-approval, diff editing, and more. + +### Does Roo Code have any auto approval settings? + +Yes, Roo Code has a few settings that when enabled will automatically approve actions. Find out more [here](/features/auto-approving-actions). + +--- + +## Advanced Features + +### Can I use Roo offline? + +Yes, if you use a [local model](/advanced-usage/local-models). + +### What is MCP (Model Context Protocol)? + +[MCP](/features/mcp/overview) is a protocol that allows Roo Code to communicate with external servers, extending its capabilities with custom tools and resources. + +### Can I create my own MCP servers? + +Yes, you can create your own MCP servers to add custom functionality to Roo Code. See the [MCP documentation](https://github.com/modelcontextprotocol) for details. + +### What is Codebase Indexing? + +[Codebase Indexing](/features/codebase-indexing) creates a semantic search index of your project using AI embeddings. This enables Roo Code to better understand and navigate large codebases by finding relevant code based on meaning rather than just keywords. + +### How much does Codebase Indexing cost? + +Codebase Indexing requires an OpenAI API key for generating embeddings and a Qdrant vector database for storage. Costs depend on your project size and the embedding model used. Initial indexing is the most expensive part; subsequent updates are incremental and much cheaper. + +--- + +## Troubleshooting + +### Roo Code isn't responding. What should I do? + +- Make sure your API key is correct and hasn't expired. +- Check your internet connection. +- Check the status of your chosen API provider. +- Try restarting VS Code. +- If the problem persists, report the issue on [GitHub](https://github.com/RooCodeInc/Roo-Code/issues) or [Discord](https://discord.gg/roocode). + +### I'm seeing an error message. What does it mean? + +The error message should provide some information about the problem. If you're unsure how to resolve it, seek help in [Discord](https://discord.gg/roocode). + +### Roo Code made changes I didn't want. How do I undo them? + +Roo Code uses VS Code's built-in file editing capabilities. You can use the standard "Undo" command (Ctrl/Cmd + Z) to revert changes. Also, if experimental checkpoints are enabled, Roo can revert changes made to a file. + +### Roo Code can't write to markdown files. What's wrong? + +If Roo Code fails to write to `.md` files with errors like "Failed to open diff editor" or "write_to_file tool failed", this is typically caused by VS Code extensions or settings that interfere with file editing: + +**Common causes:** + +- Extensions with "format on save" functionality +- VS Code settings that open markdown files in preview mode by default +- The Markdown Preview extension or similar markdown processing extensions + +**Solutions:** + +- Disable any extensions that automatically format files on save +- Remove these settings from your VS Code `settings.json`: + ```json + "markdown.preview.openMarkdownLinks": "inPreview", + "workbench.editorAssociations": { + "*.md": "vscode.markdown.preview.editor" + } + ``` +- Temporarily disable markdown-related extensions to test if they're causing the issue +- Restart VS Code after making these changes + +### How do I report a bug or suggest a feature? + +Please report bugs or suggest features on the Roo Code [Issues page](https://github.com/RooCodeInc/Roo-Code/issues) and [Feature Requests page](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop). diff --git a/apps/docs/docs/features/api-configuration-profiles.mdx b/apps/docs/docs/features/api-configuration-profiles.mdx new file mode 100644 index 00000000000..e7cf5a5b6c1 --- /dev/null +++ b/apps/docs/docs/features/api-configuration-profiles.mdx @@ -0,0 +1,147 @@ +--- +description: Learn how to create and manage API configuration profiles to easily switch between different AI providers and models in Roo Code. +keywords: + - API configuration + - profiles + - AI providers + - model switching + - API management +--- + +# API Configuration Profiles + +API Configuration Profiles allow you to create and switch between different sets of AI settings. Each profile can have different configurations for each mode, letting you optimize your experience based on the task at hand. + +:::info +Having multiple configuration profiles lets you quickly switch between different AI providers, models, and settings without reconfiguring everything each time you want to change your setup. +::: + +
+ +
+
+ +--- + +## How It Works + +Configuration profiles can have their own: +- API providers (OpenAI, Anthropic, OpenRouter, Glama, etc.) +- API keys and authentication details +- Model selections (o3-mini-high, Claude 3.7 Sonnet, DeepSeek R1, etc.) +- [Temperature settings](/features/model-temperature) for controlling response randomness +- Thinking budgets +- Provider-specific settings +- [Diff editing configuration](/features/fast-edits) +- Rate limit settings + +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. + +--- + +## Creating and Managing Profiles + +### Creating a Profile + +1. Open Settings by clicking the gear icon → Providers +2. Click the "+" button next to the profile selector + + Profile selector with plus button +3. Enter a name for your new profile + + Creating a new profile dialog +4. Configure the profile settings: + - Select your API provider + + Provider selection dropdown + - Enter API key + + API key entry field + - Choose a model + + Model selection interface + - Configure the **Rate Limit** for this profile: + - **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. + - A value of 0 disables rate limiting (default). + - Requests using other profiles follow their own rate limits. + + Rate limit slider control within API profile settings + - Adjust model parameters (like [temperature](/features/model-temperature)) + +### Switching Profiles + +Switch profiles in two ways: +1. From Settings panel: Select a different profile from the dropdown + + Profile selection dropdown in Settings +2. During chat: Access the API Configuration dropdown in the chat interface + + API Configuration dropdown in chat interface +### Pinning and Sorting Profiles + +The API configuration dropdown now supports pinning your favorite profiles for quicker access: + +1. Hover over any profile in the dropdown to reveal the pin icon +2. Click the pin icon to add the profile to your pinned list +3. Pinned profiles appear at the top of the dropdown, sorted alphabetically +4. Unpinned profiles appear below a separator, also sorted alphabetically +5. You can unpin a profile by clicking the same icon again + +Pinning API configuration profiles + +This feature makes it easier to navigate between commonly used profiles, especially when you have many configurations. + + +### Editing and Deleting Profiles + +Profile editing interface +- Select the profile in Settings to modify any settings +- Click the pencil icon to rename a profile +- Click the trash icon to delete a profile (you cannot delete the only remaining profile) + +--- + +## Linking Profiles to Modes +In the Prompts tab, you can explicitly associate a specific Configuration Profile with each Mode. The system also automatically remembers which profile you last used with each mode, making your workflow more efficient. +Profile-Mode association interface in Prompts tab + +--- + +## Per-Task Profile Persistence + +Each task remembers which profile it started with. This "sticky" behavior means: + +- **Reopening from history**: When you resume a task from history, it uses the same profile it had originally—even if you've since changed the global selection. +- **Multi-workspace consistency**: If you switch profiles in another workspace window, existing tasks in the first window keep their original profile. +- **Orchestrator subtasks**: Child tasks created by the orchestrator inherit the parent's profile and retain it for their lifetime. + +This prevents unexpected model switches mid-task and keeps your conversation context consistent with the model that generated it. + +--- + +## Security Note + +API keys are stored securely in VSCode's Secret Storage and are never exposed in plain text. + +--- + +## Related Features + +- Works with [custom modes](/features/custom-modes) you create +- Integrates with [local models](/advanced-usage/local-models) for offline work +- Supports [temperature settings](/features/model-temperature) per mode +- Supports per-profile rate limits (configured here) and general [usage tracking/cost info](/advanced-usage/rate-limits-costs) +- Supports [Diff/Fast Edits](/features/fast-edits) for tailored code editing behavior. + diff --git a/apps/docs/docs/features/auto-approving-actions.mdx b/apps/docs/docs/features/auto-approving-actions.mdx new file mode 100644 index 00000000000..602b8c6aa1c --- /dev/null +++ b/apps/docs/docs/features/auto-approving-actions.mdx @@ -0,0 +1,352 @@ +--- +description: Learn how to configure auto-approval settings in Roo Code to speed up repetitive tasks while maintaining control over sensitive operations. +keywords: + - auto-approval + - Roo Code automation + - workflow optimization + - auto-approve settings + - safe operations +--- + +# Auto-Approving Actions + +> ⚠️ **SECURITY WARNING:** Auto-approve settings bypass confirmation prompts, giving Roo direct access to your system. This can result in **data loss, file corruption, or worse**. Command line access is particularly dangerous, as it can potentially execute harmful operations that could damage your system or compromise security. Only enable auto-approval for actions you fully trust. + +Auto-approve settings speed up your workflow by eliminating repetitive confirmation prompts, but they significantly increase security risks. + +
+ +
+
+ +--- + +## Quick Start Guide + +1. Open the Auto-Approve dropdown next to the chat input +2. Toggle "Enabled" at the bottom-right of the dropdown to activate or pause auto-approval +3. Use the All/None chips to bulk-select or clear permissions, or select individual tiles; you can keep Enabled On with "None" selected +4. (Optional) Click the gear icon to open Settings for deeper per-permission controls + +### Keyboard Shortcut + +**Default shortcut:** `Cmd+Alt+A` (macOS) / `Ctrl+Alt+A` (Windows/Linux) + +Quickly toggle auto-approve on/off without using the mouse. This shortcut toggles the global "Enabled" state while preserving your permission selections. + +**To customize the shortcut:** +1. Open VS Code Command Palette (`Cmd+Shift+P` / `Ctrl+Shift+P`) +2. Search for "Preferences: Open Keyboard Shortcuts" +3. Search for the command name (varies by language): + - English: "Toggle Auto-Approve" + - Other languages: Look for the localized equivalent +4. Click the pencil icon next to the command +5. Press your desired key combination +6. Press Enter to save + +**Note:** The command name appears in your VS Code interface language. If you're using a non-English locale, the command will be translated accordingly. + +--- + +## Auto-Approve Dropdown + +Auto-Approve dropdown with All/None chips and global Enabled toggle (bottom-right) + +The dropdown shows a grid of permission tiles. Controls: +- Enabled (bottom-right): master pause/resume for auto-approval +- All / None (bottom-left): bulk select or clear permissions without changing Enabled +- Permission tiles: choose which actions can run without prompts; tiles disable only when Enabled is off. Some permissions take effect only if your model supports the capability. + + +### Available Permissions + +| Permission | What it does | Risk level | +|------------|--------------|------------| +| **Read files and directories** | Lets Roo access files without asking | Medium | +| **Edit files** | Lets Roo modify files without asking | **High** | +| **Execute approved commands** | Runs whitelisted terminal commands automatically | **High** | +| **Use the browser** | Allows headless browser interaction | Medium | +| **Use MCP servers** | Lets Roo use configured MCP services | Medium-High | +| **Switch modes** | Changes between Roo modes automatically | Low | +| **Create & complete subtasks** | Manages subtasks without confirmation | Low | +| **Answer follow-up questions** | Selects default answer for follow-up questions| Low | + +--- + +## Global Enabled Switch + +Auto-Approve dropdown; Enabled at bottom-right and All/None chips at bottom-left + +How it works: +- Enabled On — Auto-approval runs for the permissions you’ve selected +- Enabled Off — Pauses all auto-approvals; your per-permission selections persist +- All / None — Bulk adjust selections while Enabled remains unchanged +- Note: Auto-approve only runs if Enabled is On and at least one permission is selected. + +When to toggle: +- Sensitive or production work → Off +- Rapid iteration and refactors → On +- Switching between exploration and editing tasks + +--- + +## Advanced Settings Panel + +The settings panel provides detailed control with important security context: + +> **Allow Roo to automatically perform operations without requiring approval. Enable these settings only if you fully trust the AI and understand the associated security risks.** + +To access these settings: + +1. Click in the top-right of the dropdown +2. Navigate to Auto-Approve Settings + +The settings panel mirrors the same permissions with additional context and safeguards. + +#### Important behaviors + +- Outside‑workspace reads/writes require the corresponding outside‑workspace flags in addition to the base permission. +- Auto‑approve for MCP tools requires both the global "Always approve MCP tools" and each tool's "Always allow". Resource access honors only the global setting. +- Mode switching is only auto‑approved when the mode-switch permission is enabled (covers switching to another mode and creating new modes). +- After auto‑writes, Roo waits using the global write‑delay control under Settings → Context Management → Diagnostics. + +### Read Operations + +:::info Read Operations (Risk: Medium) + +Read-only operations setting + +**Setting:** "Always approve read-only operations" + +**Description:** "When enabled, Roo will automatically view directory contents and read files without requiring you to click the Approve button." + +**Additional option:** +- **Include files outside workspace:** Allow Roo to read files outside the current workspace directory + +**Risk level:** Medium + +While this setting only allows reading files (not modifying them), it could potentially expose sensitive data. Still recommended as a starting point for most users, but be mindful of what files Roo can access. + +#### Workspace Boundary Protection + +By default, Roo can only read files within your current workspace directory. The "Include files outside workspace" option extends read access beyond the workspace boundary. Consider the security implications: + +- **Default (unchecked)**: Roo can only read files in your project directory +- **Enabled**: Roo can read any file on your system that you have access to +- **Recommendation**: Keep disabled unless you specifically need Roo to access external files +::: + +### Write Operations + +:::caution Write Operations (Risk: High) +Write operations setting with delay slider + +**Setting:** "Always approve write operations" + +**Description:** "Automatically create and edit files without requiring approval" + +**Write delay control:** Configured under Settings → Context Management → Diagnostics. See [Diagnostics Integration](/features/diagnostics-integration). + +**Additional options:** +- **Include files outside workspace:** Allow Roo to modify files outside the current workspace directory +- **Include protected files:** Allow Roo to modify files protected by `.roo/` and `.rooignore` directory + +**Risk level:** High + +This setting allows Roo to modify your files without confirmation. The delay timer is crucial: +- Higher values (2000ms+): Recommended for complex projects where diagnostics take longer +- Default (1000ms): Suitable for most projects with active diagnostics +- 0ms: No delay - use when speed is critical +- Lower values: Use only when in a controlled environment + +#### Security Boundaries + +The write operations setting includes two important security controls: + +1. **Workspace Boundary Protection**: By default, Roo can only modify files within your current workspace. Enable "Include files outside workspace" with extreme caution. + +2. **Protected Files**: Roo blocks modification of: + - Files in the `.roo/` directory + - The `.rooignore` file + + The "Include protected files" option bypasses this protection - use only when you specifically need to modify these files. +#### Write Delay & Problems Pane Integration + +VSCode Problems pane showing diagnostic information + +*VSCode Problems pane that Roo checks during the write delay* + +When you enable auto-approval for writing files, Roo uses the global write-delay configured under Settings → Context Management → Diagnostics. The delay timer works with VSCode's Problems pane: + +1. Roo makes a change to your file +2. VSCode's diagnostic tools analyze the change +3. The Problems pane updates with any errors or warnings +4. Roo notices these issues before continuing + +This works like a human developer pausing to check for errors after changing code. You can adjust the delay time based on: + +- Project complexity +- Language server speed +- How important error detection is for your workflow +::: + +### Browser Actions + +:::info Browser Actions (Risk: Medium) + +**Setting:** "Always approve browser actions" + +**Description:** "Automatically perform browser actions without requiring approval" + +**Note:** "Only applies when the model supports computer use" + +**Risk level:** Medium + +Allows Roo to control a headless browser without confirmation. This can include: +- Opening websites +- Navigating pages +- Interacting with web elements + +Consider the security implications of allowing automated browser access. +::: + +### MCP Tools + +:::caution MCP Tools (Risk: Medium-High) + +**Setting:** "Always approve MCP tools" + +**Description:** "Enable auto-approval of individual MCP tools in the MCP Servers view (requires both this setting and the tool's individual 'Always allow' checkbox)" + +**Risk level:** Medium-High (depends on configured MCP tools) + +This setting requires a two-step permission process for security: + +1. **Enable this global setting** - Acts as a master switch for all MCP tool auto-approval +2. **Enable individual tool permissions** - In the MCP Servers view, check "Always allow" for specific tools + +**Important:** Both permissions must be active for a tool to auto-approve. This dual-permission system ensures you maintain granular control over which MCP tools can execute without confirmation. Resource retrieval (`access_mcp_resource`) honors only the global setting. + +**Permission Storage:** Your MCP tool permissions are saved and will be remembered next time you use Roo Code. + +Example workflow: +- Enable "Always approve MCP tools" in settings +- Navigate to MCP Servers view +- Find the specific tool (e.g., filesystem operations) +- Check its "Always allow" checkbox +- Only then will that specific tool auto-approve +::: + +### Mode Switching + +:::info Mode Switching (Risk: Low) + +**Setting:** "Always approve mode switching" + +**Description:** "Automatically switch between different modes without requiring approval" + +**Risk level:** Low + +Allows Roo to change between different modes (Code, Architect, etc.) without asking for permission. This primarily affects the AI's behavior rather than system access. Auto-approval also covers switching between modes and creating new modes when this permission is enabled. +::: + +### Subtasks + +:::info Subtasks (Risk: Low) + +**Setting:** "Always approve creation & completion of subtasks" + +**Description:** "Allow creation and completion of subtasks without requiring approval" + +**Risk level:** Low + +Enables Roo to create and complete subtasks automatically. This relates to workflow organization rather than system access. +::: + +### Command Execution + +:::caution Command Execution (Risk: High) +Command execution setting with whitelist interface + +**Setting:** "Always approve allowed execute operations" + +**Description:** "Automatically execute allowed terminal commands without requiring approval" + +**Command management:** "Command prefixes that can be auto-executed when 'Always approve execute operations' is enabled. Add * to allow all commands (use with caution)." + +**Risk level:** High + +This setting allows terminal command execution with controls. Use an allowlist and a denylist together for defense-in-depth. + +- Precedence: Deny rules take precedence when their matching prefix is equally or more specific than the allow match (longest-prefix wins). +- High-risk commands to deny by default: + - Unix/macOS: rm, sudo, dd, mkfs, diskutil eraseDisk, shutdown, reboot, chmod -R, chown -R, kill -9, curl | sh, wget | sh + - Git/Package: git push, npm publish, yarn publish, pnpm publish + - Windows/PowerShell: Remove-Item, Format-Volume, Stop-Process, shutdown, Set-ExecutionPolicy +- Production template: + - Deny all with "*" then allow specific safe prefixes like "git", "npm run", "echo". +- Dangerous substitution guard: Even allowed prefixes won’t auto-approve if the command contains dangerous parameter or process substitutions (e.g., `${var@P}`, subshells inserted into here-strings, zsh process substitution `=(...)`, zsh glob qualifiers with `e:...:`). + +Configuration +- UI (recommended): Settings → Auto‑Approve → Execute → use "Allowed Commands" and "Denied Commands" editors to add/remove prefixes. +- Settings JSON (alternative): +```json +{ + "roo-cline.allowedCommands": ["git", "npm run", "echo"], + "roo-cline.deniedCommands": ["git push", "npm publish", "rm", "sudo", "*"] +} +``` +With both lists defined, the longest‑prefix rule applies; if deny is equally or more specific, it wins. + +Examples of safe allow prefixes: +- `git` +- `npm run` +- `python -m pytest` +- `cargo test` +- `go test` +- `docker ps` +- `ls` +- `cat` + +Security tip: Be specific with prefixes. Instead of allowing all `python` commands, limit to `python -m pytest` for test execution only. +::: + +### Follow-Up Questions + +:::info Follow-Up Questions (Risk: Low) +Follow-up question operations setting with timeout slider + +**Setting:** `Always default answer for follow-up questions` + +**Description:** Automatically selects the first AI-suggested answer for a follow-up question after a configurable timeout. This speeds up your workflow by letting Roo proceed without manual intervention. + +**Timeout slider:** Use the slider to set the wait time from 1 to 300 seconds (Default: 60 seconds) + +**How it works:** +- After the configured timeout, the first suggestion is automatically selected +- Any user action (choosing a different suggestion, editing, or typing your own response) cancels auto-selection + +**Override options:** You can cancel auto-selection at any time by: +- Clicking a different suggestion +- Editing any suggestion +- Typing your own response + +**Risk level:** Low + +**Use cases:** +- Overnight runs where you want Roo to continue working +- Repetitive tasks where the default suggestions are usually correct +- Testing workflows where interaction isn't critical +::: diff --git a/apps/docs/docs/features/boomerang-tasks.mdx b/apps/docs/docs/features/boomerang-tasks.mdx new file mode 100644 index 00000000000..b8399dc759b --- /dev/null +++ b/apps/docs/docs/features/boomerang-tasks.mdx @@ -0,0 +1,118 @@ +--- +description: Learn how to use Boomerang Tasks (Orchestrator mode) to automate complex workflows by delegating subtasks to specialized modes. +keywords: + - Boomerang Tasks + - Orchestrator mode + - workflow automation + - task delegation + - automated workflows +sidebar_label: 'Boomerang Tasks' +--- + +# Boomerang Tasks: Orchestrate Complex Workflows + +Boomerang Tasks (also known as subtasks or task orchestration) allow you to break down complex projects into smaller, manageable pieces using the built-in **`🪃 Orchestrator` Mode (aka Boomerang Mode)**. 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)). The Orchestrator mode manages this process. + +
+ +
+ +
+ +:::info Orchestrator Mode is Built-In +The `🪃 Orchestrator` mode (previously achieved via a custom "Boomerang Mode") is now a built-in mode specifically designed to orchestrate workflows by breaking down tasks and delegating them to other modes. You no longer need to create a custom mode for this functionality. + +Learn more about [Built-in Modes](/basic-usage/using-modes#built-in-modes). +::: + +--- + +## Why Use Boomerang Tasks? + +- **Tackle Complexity:** Break large, multi-step projects (e.g., building a full feature) into focused subtasks (e.g., design, implementation, documentation). +- **Use Specialized Modes:** Automatically delegate subtasks to the mode best suited for that specific piece of work, leveraging specialized capabilities for optimal results. +- **Maintain Focus & Efficiency:** Each subtask operates in its own isolated context with a separate conversation history. This prevents the parent (orchestrator) task from becoming cluttered with the detailed execution steps (like code diffs or file analysis results), allowing it to focus efficiently on the high-level workflow and manage the overall process based on concise summaries from completed subtasks. +- **Streamline Workflows:** Results from one subtask can be automatically passed to the next, creating a smooth flow (e.g., architectural decisions feeding into the coding task). + +--- + +## How It Works + +1. When in the [`🪃 Orchestrator`](/basic-usage/using-modes#orchestrator-mode-aka-boomerang-mode) mode (aka Boomerang Mode), Roo analyzes a complex task and suggests breaking it down into a subtask[^1]. + +2. The parent task (in Orchestrator mode) pauses, and the new subtask begins in a different, specialized mode[^2]. +3. When the subtask's goal is achieved, Roo signals completion. +4. The parent task resumes with only the summary[^3] of the subtask. The parent uses this summary to continue the main workflow. + +--- + +## Key Considerations + +- **Approval Required:** By default, you must approve the creation and completion of each subtask. This can be automated via the [Auto-Approving Actions](/features/auto-approving-actions#subtasks) settings if desired. +- **Context Isolation and Transfer:** Each subtask operates in complete isolation with its own conversation history. It does not automatically inherit the parent's context. Information must be explicitly passed: + * **Down:** Via the initial instructions provided when the subtask is created. + * **Up:** Via the final summary provided when the subtask finishes. Be mindful that only this summary returns to the parent. +- **Navigation:** Roo's interface helps you see the hierarchy of tasks (which task is the parent, which are children). You can typically navigate between active and paused tasks. + +Boomerang Tasks provide a powerful way to manage complex development workflows directly within Roo Code, leveraging specialized modes for maximum efficiency. + +:::tip Keep Tasks Focused +Use subtasks (delegated via Orchestrator mode) to maintain clarity. If a request significantly shifts focus or requires a different expertise (mode), consider creating a subtask rather than overloading the current one. +::: + +--- + +## Frequently Asked Questions + +### Why can't Orchestrator mode read files, write files, call MCPs, or run commands? + +The Orchestrator mode is intentionally limited to focus on high-level workflow management. Giving it the ability to read files by default causes the context to become filled with file reads, hampering its ability to remain focused on orchestration. The design philosophy is that subtasks should handle the detailed work and return only the necessary information (via their completion summaries) for the orchestrator to delegate further tasks effectively. + +This limitation helps prevent [context poisoning](/advanced-usage/context-poisoning), where irrelevant or excessive information contaminates the model's active context, leading to degraded performance and task deviation. + +### How can I override Orchestrator mode's limitations? + +You can [customize the Orchestrator mode](/features/custom-modes) to add capabilities like file reading by following the [configuration precedence](/features/custom-modes#configuration-precedence) system: + +1. Open the Command Palette and select **"Edit Global Modes"** +2. Copy and paste this configuration: + +```json +{ + "customModes": [ + { + "slug": "orchestrator", + "name": "🪃 Orchestrator", + "roleDefinition": "You are Roo, a strategic workflow orchestrator who coordinates complex tasks by delegating them to appropriate specialized modes. You have a comprehensive understanding of each mode's capabilities and limitations, allowing you to effectively break down complex problems into discrete tasks that can be solved by different specialists.", + "customInstructions": "Your role is to coordinate complex workflows by delegating tasks to specialized modes. As an orchestrator, you should:\n\n1. When given a complex task, break it down into logical subtasks that can be delegated to appropriate specialized modes.\n\n2. For each subtask, use the `new_task` tool to delegate. Choose the most appropriate mode for the subtask's specific goal and provide comprehensive instructions in the `message` parameter. These instructions must include:\n * All necessary context from the parent task or previous subtasks required to complete the work.\n * A clearly defined scope, specifying exactly what the subtask should accomplish.\n * An explicit statement that the subtask should *only* perform the work outlined in these instructions and not deviate.\n * An instruction for the subtask to signal completion by using the `attempt_completion` tool, providing a concise yet thorough summary of the outcome in the `result` parameter, keeping in mind that this summary will be the source of truth used to keep track of what was completed on this project. \n * A statement that these specific instructions supersede any conflicting general instructions the subtask's mode might have.\n\n3. Track and manage the progress of all subtasks. When a subtask is completed, analyze its results and determine the next steps.\n\n4. Help the user understand how the different subtasks fit together in the overall workflow. Provide clear reasoning about why you're delegating specific tasks to specific modes.\n\n5. When all subtasks are completed, synthesize the results and provide a comprehensive overview of what was accomplished.\n\n6. Ask clarifying questions when necessary to better understand how to break down complex tasks effectively.\n\n7. Suggest improvements to the workflow based on the results of completed subtasks.\n\nUse subtasks to maintain clarity. If a request significantly shifts focus or requires a different expertise (mode), consider creating a subtask rather than overloading the current one.", + "groups": [ + "read" + ], + "source": "global" + } + ] +} +``` + +3. Save the file. Your global Orchestrator mode will now have read capabilities. + +:::warning +Adding capabilities to the Orchestrator mode should be done thoughtfully. The limited default capabilities help maintain focus on orchestration rather than implementation details. +::: + + +[^1]: This context is passed via the `message` parameter of the [`new_task`](/advanced-usage/available-tools/new-task) tool when the Orchestrator mode delegates the task. +[^2]: The mode for the subtask is specified via the `mode` parameter of the [`new_task`](/advanced-usage/available-tools/new-task) tool during initiation by the Orchestrator mode. +[^3]: This summary is passed via the `result` parameter of the [`attempt_completion`](/advanced-usage/available-tools/attempt-completion) tool when the subtask finishes. \ No newline at end of file diff --git a/apps/docs/docs/features/browser-use.mdx b/apps/docs/docs/features/browser-use.mdx new file mode 100644 index 00000000000..8070c67d87e --- /dev/null +++ b/apps/docs/docs/features/browser-use.mdx @@ -0,0 +1,209 @@ +--- +description: Learn how Roo Code can control a browser to automate web tasks, gather information, and interact with web applications using AI-powered browser automation. +keywords: + - browser automation + - web scraping + - browser control + - AI browser + - web automation + - Roo Code browser +--- + +# Browser Use + +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. + + + +
+ +
+ +
+ +:::caution Model Support Required +Browser Use within Roo Code requires models that support images. Some models may not navigate pages well. +::: + +--- + +## How Browser Use Works + +By default, Roo Code uses a built-in browser that: +- Launches automatically when you ask Roo to visit a website +- Captures screenshots of web pages +- Allows Roo to interact with web elements +- Runs invisibly in the background + +All of this happens directly within VS Code, with no setup required. + +--- + +## Using Browser Use + +A typical browser interaction follows this pattern: + +**Important:** Browser Use requires models that support images (vision-capable models). + +1. Ask Roo to visit a website +2. Roo launches the browser and shows you a screenshot +3. Request additional actions (clicking, typing, scrolling) +4. Roo closes the browser when finished + +For example: + +``` +Open the browser and view our site. +``` + +``` +Can you check if my website at https://roocode.com is displaying correctly? +``` + +``` +Browse http://localhost:3000, scroll down to the bottom of the page and check if the footer information is displaying correctly. +``` + +Browser use example + +--- + +## How Browser Actions Work + +The browser_action tool controls a browser instance that returns screenshots and console logs after each action, allowing you to see the results of interactions. + +Key characteristics: +- Each browser session must start with `launch` and end with `close` +- Only one browser action can be used per message +- While the browser is active, no other tools can be used +- You must wait for the response (screenshot and logs) before performing the next action + +### Available Browser Actions + +| Action | Description | When to Use | +|--------|-------------|------------| +| `launch` | Opens a browser at a URL | Starting a new browser session | +| `click` | Clicks at specific coordinates | Interacting with buttons, links, etc. | +| `type` | Types text into active element | Filling forms, search boxes | +| `scroll_down` | Scrolls down by one page | Viewing content below the fold | +| `scroll_up` | Scrolls up by one page | Returning to previous content | +| `close` | Closes the browser | Ending a browser session | +| `hover` | Moves cursor to coordinates | Triggering hover states | +| `press` | Presses a key combination | Keyboard shortcuts, Enter, Esc | +| `resize` | Resizes the viewport | Testing responsive designs | + +--- + +## Browser Use Configuration/Settings + +:::info Default Browser Settings +- **Enable browser tool**: Enabled +- **Viewport size**: Small Desktop (900x600) +- **Screenshot quality**: 75% +- **Use remote browser connection**: Disabled +::: + +### Accessing Settings + +To change Browser / Computer Use settings in Roo: + +1. Open Settings by clicking the gear icon → Browser / Computer Use + + Browser settings menu + +### Enable/Disable Browser Use + +**Purpose**: Master toggle that enables Roo to interact with websites using a Puppeteer-controlled browser. + +To change this setting: +1. Check or uncheck the "Enable browser tool" checkbox within your Browser / Computer Use settings + + Enable browser tool setting + +### Viewport Size + +**Purpose**: Determines the resolution of the browser session Roo Code uses. + +**Tradeoff**: Higher values provide a larger viewport but increase token usage. + +To change this setting: +1. Click the dropdown menu under "Viewport size" within your Browser / Computer Use settings +2. Select one of the available options: + - Large Desktop (1280x800) + - Small Desktop (900x600) - Default + - Tablet (768x1024) + - Mobile (360x640) +2. Select your desired resolution. + + Viewport size setting + +### Screenshot Quality + +**Purpose**: Controls the WebP compression quality of browser screenshots. + +**Tradeoff**: Higher values provide clearer screenshots but increase token usage. + +To change this setting: +1. Adjust the slider under "Screenshot quality" within your Browser / Computer Use settings +2. Set a value between 1-100% (default is 75%) +3. Higher values provide clearer screenshots but increase token usage: + - 40-50%: Good for basic text-based websites + - 60-70%: Balanced for most general browsing + - 80%+: Use when fine visual details are critical + + Screenshot quality setting + +### Remote Browser Connection + +**Purpose**: Connect Roo to an existing Chrome browser instead of using the built-in browser. + +**Benefits**: +- Works in containerized environments and remote development workflows +- Maintains authenticated sessions between browser uses +- Eliminates repetitive login steps +- Allows use of custom browser profiles with specific extensions + +**Requirements**: Chrome must be running with remote debugging enabled. + +To enable this feature: +1. Check the "Use remote browser connection" box in Browser / Computer Use settings +2. Click "Test Connection" to verify + + Remote browser connection setting + +#### Common Use Cases + +- **DevContainers**: Connect from containerized VS Code to host Chrome browser +- **Remote Development**: Use local Chrome with remote VS Code server +- **Custom Chrome Profiles**: Use profiles with specific extensions and settings + +#### Connecting to a Visible Chrome Window + +Connect to a visible Chrome window to observe Roo's interactions in real-time: + +**macOS** +```bash +/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug --no-first-run +``` + +**Windows** +```bash +"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir=C:\chrome-debug --no-first-run +``` + +**Linux** +```bash +google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug --no-first-run +``` diff --git a/apps/docs/docs/features/checkpoints.mdx b/apps/docs/docs/features/checkpoints.mdx new file mode 100644 index 00000000000..4c646b9946f --- /dev/null +++ b/apps/docs/docs/features/checkpoints.mdx @@ -0,0 +1,289 @@ +--- +description: Learn how to use checkpoints in Roo Code to save your progress, revert changes, and manage your coding workflow with confidence. +keywords: + - checkpoints + - save progress + - version control + - undo changes + - restore state + - workflow management +--- + +# Checkpoints + +Checkpoints automatically version your workspace files during Roo Code tasks, enabling non-destructive exploration of AI suggestions and easy recovery from unwanted changes. + +Checkpoints let you: +- Safely experiment with AI-suggested changes +- Easily recover from undesired modifications +- Compare different implementation approaches +- Revert to previous project states without losing work + +
+ +
+ +
+ +:::info Important Notes +- **Checkpoints are enabled by default.** +- **Git must be installed** for checkpoints to function - [see installation instructions](#git-installation) +- No GitHub account or repository is required +- No Git personal information configuration is needed +- The shadow Git repository operates independently from your project's existing Git configuration +::: + +--- + +## Configuration Options + +Access checkpoint settings in Roo Code settings under the "Checkpoints" section: + +1. Open Settings by clicking the gear icon → Checkpoints +2. Configure checkpoint behavior: + - Check or uncheck the "Enable automatic checkpoints" checkbox + - Adjust the "Checkpoint initialization timeout" (10-60 seconds, default: 30s) + + Checkpoint settings in Roo Code configuration + +#### Checkpoint Initialization Timeout + +Controls how long the system waits for checkpoint initialization to complete before showing a warning. If your project has many files or is on slower storage, increasing this timeout can prevent premature warnings. + +- **Range**: 10-60 seconds +- **Default**: 30 seconds +- **When to increase**: Large projects, slow disk I/O, or network-mounted directories +- **Location**: Settings → Checkpoints → "Checkpoint initialization timeout" + +--- + +## How Checkpoints Work + +Roo Code captures snapshots of your project's state using a shadow Git repository, separate from your main version control system. These snapshots, called checkpoints, are automatically created **before** file modifications occur, ensuring you can always undo unwanted changes. Checkpoints are recorded when tasks begin and before file modifications. They are not automatically created before command execution. + +Checkpoints are stored as Git commits in the shadow repository, capturing: + +- File content changes +- New files added +- Deleted files +- Renamed files +- Binary file changes + +--- + +## Working with Checkpoints + +Checkpoints are integrated directly into your workflow through the chat interface. + +Checkpoints appear directly in your chat history: + +- **Task checkpoint** marks your starting project state + Task checkpoint indicator in chat + +- **Regular checkpoints** are created before file modifications, allowing easy undo of any changes + Regular checkpoint indicator in chat + +Each checkpoint provides two primary functions that are always available in both the chat history and checkpoint menu: + +### Viewing Differences + +To compare your current workspace with a previous checkpoint: + +1. Locate the checkpoint in your chat history or open the checkpoint menu +2. Click the checkpoint's `View Differences` button + + View Differences button interface + +3. Review the differences in the comparison view: + - Added lines are highlighted in green + - Removed lines are highlighted in red + - Modified files are listed with detailed changes + - Renames may not always be detected; diffs reflect per-file changes between commits + - New or deleted files are clearly marked + +View differences option for checkpoints + +### Restoring Checkpoints + +Restore options are always visible in checkpoint buttons and dialogs, regardless of whether changes are detected. This ensures you can always revert to any checkpoint state. + +To restore a project to a previous checkpoint state: + +1. Locate the checkpoint in your chat history or checkpoint menu +2. Click the checkpoint's `Restore Checkpoint` button (always visible) + Restore checkpoint button interface +3. Choose one of these restoration options: + + Restore checkpoint option + + - **Restore Files Only** - Reverts only workspace files to checkpoint state without modifying conversation history. Ideal for comparing alternative implementations while maintaining chat context, allowing you to seamlessly switch between different project states. This option does not require confirmation and lets you quickly switch between different implementations. + + - **Restore Files & Task** - Reverts both workspace files AND removes all subsequent conversation messages. Use when you want to completely reset both your code and conversation back to the checkpoint's point in time. This option requires confirmation in a dialog as it cannot be undone. + + Confirmation dialog for restoring checkpoint with files & task + +### Limitations and Considerations + +- **Scope**: Checkpoints only capture changes made during active Roo Code tasks +- **External changes**: Modifications made outside of tasks (manual edits, other tools) aren't included +- **Large files**: Very large binary files may impact performance +- **Unsaved work**: Restoration will overwrite any unsaved changes in your workspace +- **Timing**: Checkpoints are created before changes are applied, providing a safety net for all modifications + +--- + +## Technical Implementation + +### Checkpoint Architecture + +The checkpoint system consists of: + +1. **Shadow Git Repository**: A separate Git repository created specifically for checkpoint tracking that functions as the persistent storage mechanism for checkpoint state. + +2. **Checkpoint Service**: Handles Git operations and state management through: + - Repository initialization + - Checkpoint creation and storage + - Diff computation + - State restoration + +3. **UI Components**: Interface elements displayed in the chat that enable interaction with checkpoints. + +### Restoration Process + +When restoration executes, Roo Code: +- Performs a hard reset to the specified checkpoint commit +- Copies all files from the shadow repository to your workspace +- Updates internal checkpoint tracking state + +### Storage Type + +Checkpoints are task-scoped, meaning they are specific to a single task. + +### Diff Computation + +Checkpoint comparison uses Git's underlying diff capabilities to produce structured file differences: +- Modified files show line-by-line changes +- Binary files are properly detected and handled +- Rename detection may be limited; diffs focus on file content changes between checkpoints +- File creation and deletion are clearly identified + +### File Exclusion and Ignore Patterns + +The checkpoint system uses intelligent file exclusion to track only relevant files: + +#### Built-in Exclusions + +The system has comprehensive built-in exclusion patterns that automatically ignore: +- Build artifacts and dependency directories (`node_modules/`, `dist/`, `build/`) +- Media files and binary assets (images, videos, audio) +- Cache and temporary files (`.cache/`, `.tmp/`, `.bak`) +- Configuration files with sensitive information (`.env`) +- Large data files (archives, executables, binaries) +- Database files and logs + +These patterns are written to the shadow repository's `.git/info/exclude` file during initialization. + +#### .gitignore Support + +The checkpoint system respects `.gitignore` patterns in your workspace: +- Files excluded by `.gitignore` won't trigger checkpoint creation +- Excluded files won't appear in checkpoint diffs +- Standard Git ignore rules apply when staging file changes + +#### Git LFS Patterns + +Patterns defined in your workspace's `.gitattributes` for Git LFS are read and added to checkpoint exclusions. This helps avoid tracking large LFS-managed assets in the shadow repository. + +#### .rooignore Behavior + +The `.rooignore` file (which controls AI access to files) is separate from checkpoint tracking: +- Files excluded by `.rooignore` but not by `.gitignore` will still be checkpointed +- Changes to AI-inaccessible files can still be restored through checkpoints + +This separation is intentional, as `.rooignore` limits which files the AI can access, not which files should be tracked for version history. + +#### Nested Git Repositories + +If nested Git repositories are detected in your workspace, checkpoints are disabled. You'll receive a clear notification when checkpoint initialization fails due to nested repositories. Remove or relocate nested repositories to enable checkpoints. + +### Concurrency Control + +The extension prevents duplicate checkpointing within a single streaming operation. There is no dedicated Git operation queue. + +--- + +## Git Installation + +Checkpoints require Git to be installed on your system. The implementation uses the `simple-git` library, which relies on Git command-line tools to create and manage shadow repositories. + +### macOS + +1. **Install with Homebrew (recommended)**: + ``` + brew install git + ``` + +2. **Alternative: Install with Xcode Command Line Tools**: + ``` + xcode-select --install + ``` + +3. **Verify installation**: + - Open Terminal + - Type `git --version` + - You should see a version number like `git version 2.40.0` + +### Windows + +1. **Download Git for Windows**: + - Visit https://git-scm.com/download/win + - The download should start automatically + +2. **Run the installer**: + - Accept the license agreement + - Choose installation location (default is recommended) + - Select components (default options are typically sufficient) + - Choose the default editor + - Choose how to use Git from the command line (recommended: Git from the command line and also from 3rd-party software) + - Configure line ending conversions (recommended: Checkout Windows-style, commit Unix-style) + - Complete the installation + +3. **Verify installation**: + - Open Command Prompt or PowerShell + - Type `git --version` + - You should see a version number like `git version 2.40.0.windows.1` + +### Linux + +**Debian/Ubuntu**: +``` +sudo apt update +sudo apt install git +``` + +**Fedora**: +``` +sudo dnf install git +``` + +**Arch Linux**: +``` +sudo pacman -S git +``` + +**Verify installation**: +- Open Terminal +- Type `git --version` +- You should see a version number diff --git a/apps/docs/docs/features/code-actions.mdx b/apps/docs/docs/features/code-actions.mdx new file mode 100644 index 00000000000..7f5286e9fb8 --- /dev/null +++ b/apps/docs/docs/features/code-actions.mdx @@ -0,0 +1,178 @@ +--- +description: Access Roo Code's AI assistance directly in your editor with Code Actions. Get instant fixes, explanations, and improvements through VSCode's lightbulb system. +keywords: + - code actions + - quick fixes + - lightbulb menu + - AI assistance + - VSCode integration + - code improvements + - error fixes +--- + +# Code Actions + +Code Actions provide instant access to Roo Code's AI assistance directly within your code editor through VSCode's lightbulb (quick fix) system. This context-aware feature automatically detects relevant code situations and offers appropriate AI-powered actions without requiring you to switch to the chat interface. + +
+ +
+ +
+ +--- + +## What are Code Actions? + +Code Actions appear as a lightbulb icon (💡) in the editor gutter (the area to the left of the line numbers). They can also be accessed via the right-click context menu, or via keyboard shortcut. They are triggered when: + +* You select a range of code. +* Your cursor is on a line with a problem (error, warning, or hint). +* You invoke them via command. + +Clicking the lightbulb, right-clicking and selecting "Roo Code", or using the keyboard shortcut (`Ctrl+.` or `Cmd+.` on macOS, by default), displays a menu of available actions. + +--- + +## Roo Code's Code Actions + +Roo Code provides 5 code actions, though their availability varies by context: + +### Context Menu Actions (Right-Click) +* **Add to Context:** Quickly adds the selected code to your chat with Roo, including the filename and line numbers so Roo knows exactly where the code is from. It's listed first in the menu for easy access. +* **Explain Code:** Asks Roo Code to explain the selected code. +* **Improve Code:** Asks Roo Code to suggest improvements to the selected code. + +### Additional Actions +* **Fix Code:** Available through the lightbulb menu and command palette (but not the right-click menu). Asks Roo Code to fix problems in the selected code. +* **New Task:** Creates a new task with the selected code. Available through the command palette. + +### Context-Aware Actions +The lightbulb menu intelligently shows different actions based on your code's current state: + +**For Code with Problems** (when VSCode shows red/yellow squiggles): +- **Fix Code** - Get step-by-step guidance to resolve the specific error or warning +- **Add to Context** - Add the problematic code to Roo's context for discussion + +**For Clean Code** (no diagnostics): +- **Explain Code** - Get detailed explanations of what the code does +- **Improve Code** - Receive optimization suggestions and best practices +- **Add to Context** - Add the code to Roo's context for further work + +For more details on how diagnostics are integrated with Code Actions, see [Diagnostics Integration](/features/diagnostics-integration). + +### Add to Context Deep Dive + +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. + +This helps Roo understand the exact context of your code within the project, allowing it to provide more relevant and accurate assistance. + +Tip: Use macOS Cmd+K Cmd+A or Windows/Linux Ctrl+K Ctrl+A to add the selection to context quickly. See [Keyboard Shortcuts](/features/keyboard-shortcuts). + +**Example Chat Input:** + +``` +Can you explain this function? +@myFile.js:15:25 +``` + +*(Where `@myFile.js:15:25` represents the code added via "Add to Context")* + +--- + +## Using Code Actions + +There are three main ways to use Roo Code's Code Actions: + +### 1. From the Lightbulb (💡) + +1. **Select Code:** Select the code you want to work with. You can select a single line, multiple lines, or an entire block of code. +2. **Look for the Lightbulb:** A lightbulb icon will appear in the gutter next to the selected code (or the line with the error/warning). +3. **Click the Lightbulb:** Click the lightbulb icon to open the Code Actions menu. +4. **Choose an Action:** Select the desired Roo Code action from the menu. +5. **Review and Approve:** Roo Code will propose a solution in the chat panel. Review the proposed changes and approve or reject them. + +### 2. From the Right-Click Context Menu + +1. **Select Code:** Select the code you want to work with. +2. **Right-Click:** Right-click on the selected code to open the context menu. +3. **Choose "Roo Code":** Select the "Roo Code" option from the context menu. A submenu will appear with the available Roo Code actions. +4. **Choose an Action:** Select the desired action from the submenu. +5. **Review and Approve:** Roo Code will propose a solution in the chat panel. Review the proposed changes and approve or reject them. + +### 3. From the Command Palette + +1. **Select Code:** Select the code you want to work with. +2. **Open the Command Palette:** Press `Ctrl+Shift+P` (Windows/Linux) or `Cmd+Shift+P` (macOS). +3. **Type a Command:** Type "Roo Code" to filter the commands, then choose the relevant code action (e.g., "Roo Code: Explain Code"). The action will apply in the most logical context (usually the current active chat task, if one exists). +4. **Review and Approve:** Roo Code will propose a solution in the chat panel. Review the proposed changes and approve or reject them. + +--- + +## Terminal Actions + +Roo Code also provides similar actions for terminal output: + +* **Terminal: Add to Context:** Adds selected terminal output to your chat +* **Terminal: Fix Command:** Asks Roo Code to fix a failed terminal command +* **Terminal: Explain Command:** Asks Roo Code to explain terminal output or commands + +These actions are available when you select text in the terminal and right-click. + +--- + +## Disabling/Enabling Code Actions + +You can control Code Actions through VSCode settings: + +### Enable/Disable Code Actions +- **Setting**: [`roo-cline.enableCodeActions`](vscode://settings/roo-cline.enableCodeActions) +- **Default**: Enabled +- **Description**: Controls whether Roo Code quick fix options appear in the editor + +To access this setting: +1. Open VSCode Settings (`Ctrl/Cmd + ,`) +2. Search for "enableCodeActions" +3. Toggle the checkbox to enable or disable + +--- + +## Customizing Code Action Prompts + +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. + +1. **Open the Prompts Tab:** Click the icon in the Roo Code top menu bar. +2. **Find "Support Prompts":** You will see the support prompts, including "Enhance Prompt", "Explain Code", "Improve Code", and "Fix Code". +3. **Edit the Prompts:** Modify the text in the text area for the prompt you want to customize. The prompts use placeholders in the format `${placeholder}`: + - `${filePath}` - The path of the current file + - `${selectedText}` - The currently selected text + - `${diagnostics}` - Any error or warning messages (for Fix Code) - see [Diagnostics Integration](/features/diagnostics-integration) for details +4. **Click "Done":** Save your changes. + +### Example Prompt Template +``` +Please explain the following code from ${filePath}: + +${selectedText} +``` + +By using Roo Code's Code Actions, you can quickly get AI-powered assistance directly within your coding workflow. This can save you time and help you write better code. + +--- + +## Related Features + +- [Diagnostics Integration](/features/diagnostics-integration) - Learn how Roo Code integrates with VSCode's Problems panel +- [Context Mentions](/basic-usage/context-mentions) - Discover other ways to provide context to Roo Code diff --git a/apps/docs/docs/features/codebase-indexing.mdx b/apps/docs/docs/features/codebase-indexing.mdx new file mode 100644 index 00000000000..5f1fc72a815 --- /dev/null +++ b/apps/docs/docs/features/codebase-indexing.mdx @@ -0,0 +1,367 @@ +--- +description: Learn how Codebase Indexing helps Roo Code understand large projects using AI embeddings and semantic search. Setup guide for OpenAI and Qdrant integration. +keywords: + - codebase indexing + - semantic search + - AI embeddings + - OpenAI + - Qdrant + - large projects + - code search +--- + +import Codicon from '@site/src/components/Codicon'; + +# Codebase Indexing + +Codebase Indexing transforms how Roo Code understands your project by creating a semantic search index using AI embeddings. Instead of searching for exact text matches, it understands the *meaning* of your queries, helping Roo find relevant code even when you don't know specific function names or file locations. + +
+ +
+ +
+ +--- + +## What It Does + +When enabled, the indexing system: + +1. **Parses your code** using Tree-sitter to identify semantic blocks (functions, classes, methods) +2. **Creates embeddings** of each code block using AI models +3. **Stores vectors** in a Qdrant database for fast similarity search +4. **Provides the [`codebase_search`](/advanced-usage/available-tools/codebase-search) tool** to Roo for intelligent code discovery + +This enables natural language queries like "user authentication logic" or "database connection handling" to find relevant code across your entire project. + + +--- + +## Quick Start Guide + +:::tip 💰 Completely Free Setup Available +You can set up codebase indexing at **zero cost** by using: +- **Qdrant Cloud** (free tier) or **Docker Qdrant** (completely free) +- **Google Gemini** (currently free) + +This gives you professional-grade semantic search without any subscription fees! +::: + +### Step 1: Choose Your Setup + +Before enabling codebase indexing, you'll need two components: + +1. **An Embedding Provider** - to convert code into searchable vectors +2. **A Vector Database** - to store and search those vectors + +### Step 2: Set Up Qdrant (Vector Database) + +#### Option A: Cloud Setup (Recommended for Getting Started) - **FREE** + +1. Sign up at [Qdrant Cloud](https://cloud.qdrant.io/) (free tier available) +2. Create a cluster +3. Copy your URL and API key + +#### Option B: Local Setup - **FREE** + +Using Docker: +```bash +docker run -d \ + --name qdrant \ + --restart unless-stopped \ + -p 6333:6333 \ + -v qdrant_data:/qdrant/storage \ + qdrant/qdrant +``` + +Using Docker Compose: +```yaml +services: + qdrant: + image: qdrant/qdrant + ports: + - "6333:6333" + volumes: + - qdrant_storage:/qdrant/storage +volumes: + qdrant_storage: +``` + +### Step 3: Set Up an Embedding Provider + +#### Google Gemini Setup (Recommended) - **FREE** + +1. Get an API key from [Google AI Studio](https://aistudio.google.com/apikey) (currently free) +2. In Roo Code settings: + - Provider: **Google Gemini** + - API Key: Your Google AI Studio key + +:::info Other Providers Available +While this guide focuses on Google Gemini since it's currently free, Roo Code also supports OpenAI, Ollama, and OpenAI-compatible providers. You can explore these options in the configuration dropdown. +::: + +### Step 4: Save + +1. Click **Save** and **Start Indexing** + +The status indicator will show: +- **Yellow (Indexing)**: Currently processing files +- **Green (Indexed)**: Ready for searches +- **Red (Error)**: Check troubleshooting section + +--- + +## Managing and Configuring the Indexer + +You can monitor the status and manage all configuration for the codebase indexer directly from the Roo Code chat interface. + +### The Status Icon + +At the bottom-right corner of the chat input, you'll find the **Codebase Indexing status icon**. This icon provides a quick, at-a-glance overview of the indexer's current state. + +Codebase Indexing Status Icon + +The color of the icon indicates the state: + +- 🟢 **Green**: **Indexed**. The index is up-to-date and ready for search. +- 🟡 **Yellow**: **Indexing**. The system is actively processing files. Searches can still be performed, but results may be incomplete. +- 🔴 **Red**: **Error**. An issue has occurred (e.g., failed to connect to Qdrant or the embedding provider). See the Troubleshooting section for help. +- ⚪ **Gray**: **Standby**. The indexer is waiting for configuration or has been disabled. + +**Multi-Folder Workspaces**: In multi-folder workspaces, each folder maintains its own indexing status and configuration. The status icon reflects the combined state of all workspace folders. + +### The Configuration Popover + +Clicking the status icon opens the main configuration popover. Here, you can view the detailed status and manage all settings. + +Codebase Indexing Popover + +- **Status**: A detailed message showing the current state, such as "Indexed - File watcher started" or the progress of an ongoing scan. +- **Setup**: Contains the primary fields for connecting to your embedding provider and vector database. +- **Advanced Configuration**: Allows you to fine-tune search parameters like the similarity threshold. +- **Clear Index Data**: Deletes all data from the Qdrant collection and clears the local file cache. Use this when you want to re-index your entire project from scratch. **This action cannot be undone.** +- **Save**: Applies your configuration changes. If a critical setting (like an API key or a model) is changed, the indexer will automatically restart. + +### Detailed Configuration Fields + +This guide explains each setting available in the configuration popover. + +Codebase Indexing Configuration Details + +#### **Setup Fields** + +- **Embedder Provider** + - **Purpose**: To select your source for generating AI embeddings. + - **Behavior**: This dropdown menu determines which configuration fields are shown. Your options are **OpenAI**, **Google Gemini**, **Ollama**, and **OpenAI Compatible**. + +- **API Key** (for OpenAI, Gemini, OpenAI Compatible) + - **Purpose**: The secret key to authenticate with your chosen provider. + - **Behavior**: This input is required for all cloud-based providers and is stored securely in your VS Code secret storage. + +- **Base URL** (for Ollama, OpenAI Compatible) + - **Purpose**: The endpoint for connecting to the provider's API. + - **Behavior**: For **Ollama**, this is typically `http://localhost:11434`. For **OpenAI Compatible** providers like Azure, this is the full deployment URL. + +- **Model** + - **Purpose**: To select the specific embedding model you want to use. + - **Behavior**: The list of available models changes based on the selected provider. The model's vector dimension (e.g., `1536 dimensions`) is displayed, as changing dimensions requires a full re-index. + +- **Qdrant URL** + - **Purpose**: The connection endpoint for your Qdrant vector database. + - **Behavior**: This must be a valid URL pointing to your local or cloud-based Qdrant instance (e.g., `http://localhost:6333`). + +- **Qdrant API Key** + - **Purpose**: The authentication key for a secured Qdrant instance. + - **Behavior**: This field is optional and should only be used if your Qdrant deployment requires an API key. + +#### **Advanced Configuration Fields** + +- **Search Score Threshold** + - **Purpose**: Controls the minimum similarity score required for a code snippet to be considered a match. + - **Behavior**: Use the slider to set a value between 0.0 and 1.0. A lower value returns more (but potentially less relevant) results, while a higher value returns fewer, more precise results. + - **Recommended Settings**: + - **Low (0.15-0.3)**: Broader results, good for exploration + - **Medium (0.4-0.5)**: Balanced precision and recall (default: 0.4) + - **High (0.6-0.8)**: Precise matches only + +- **Maximum Search Results** + - **Purpose**: Sets the maximum number of code snippets returned by a single `codebase_search`. + - **Behavior**: Use the slider to adjust the limit. This helps control the amount of context provided to the AI. + +--- + +## Key Benefits + +- **Semantic Search**: Find code by meaning, not just keywords +- **Enhanced AI Understanding**: Roo can better comprehend and work with your codebase +- **Cross-Project Discovery**: Search across all files, not just what's open +- **Pattern Recognition**: Locate similar implementations and code patterns + +--- + +## How Files Are Processed + +### Smart Code Parsing + +The system uses a sophisticated parsing strategy: + +1. **Tree-sitter First**: For supported languages, it uses AST parsing to identify semantic code blocks (functions, classes, methods) +2. **Markdown Support**: Indexes Markdown files by treating headers as semantic entry points +3. **Intelligent Fallback**: For unsupported file types, it falls back to line-based chunking + +**Block Sizing**: +- Minimum: 100 characters +- Maximum: 1,000 characters +- Large functions are split intelligently at logical boundaries + +### File Filtering + +The indexer respects your project's ignore patterns: +- Files matching `.gitignore` patterns +- Files matching `.rooignore` patterns +- Binary files and images +- Files larger than 1MB + +**Important**: Ensure your `.gitignore` includes common dependency folders like `node_modules`, `vendor`, `target`, etc., as the system relies exclusively on these patterns for filtering. + +### Incremental Updates + +- **File Watching**: Monitors your workspace for changes in real-time +- **Smart Updates**: Only reprocesses modified files +- **Branch Aware**: Automatically handles Git branch switches +- **Hash-based Caching**: Avoids reprocessing unchanged content +- **Multi-Folder Workspaces**: Each folder in a multi-folder workspace maintains its own index with separate settings and status + +--- + +## Best Practices + +### Writing Effective Queries + +Instead of searching for exact syntax: +- ❌ `const getUser` +- ✅ `function to fetch user from database` + +Use natural language descriptions: +- "authentication middleware" +- "error handling for API requests" +- "database connection setup" + +### Security Considerations + +- **API Keys**: Stored securely in VS Code's encrypted storage +- **Code Privacy**: Only small code snippets sent for embedding +- **Local Processing**: All parsing happens locally +- **Access Control**: Respects file permissions and ignore patterns + +--- + +## Troubleshooting + +### Connection Issues + +**"Connection to Qdrant failed"** +- Ensure Qdrant is running (`docker ps` to check) +- Verify URL matches (default: `http://localhost:6333`) +- Check firewall/network policies +- For cloud instances, confirm URL and API key + +**"Invalid API Key" or "401 Unauthorized"** +- Double-check your API key is correct +- Ensure the key has necessary permissions +- For Ollama, verify the service is running + +### API Key Format Errors (“ByteString conversion”) + +- Symptom: Error mentions "ByteString conversion" during indexing or when saving settings +- Likely cause: Your embedding provider API key contains invalid/special characters or hidden whitespace +- Fix: + - Regenerate a fresh API key from your provider dashboard + - Paste the key again, ensuring no leading/trailing spaces or hidden characters + - Roo will display a clear validation message if the key is invalid + +### Model Issues + +**"Model Not Found"** +- For Google Gemini: Ensure the model name is correct (e.g., `text-embedding-004`) +- For other providers: Consult their documentation for available models and proper naming + +### Indexing Issues + +**"Stuck in Error State"** +1. Check connection issues first +2. Click "Clear Index & Re-index" in settings +3. This resolves corrupted cache or collection issues + +**"Indexing Taking Too Long"** +- Normal for large codebases (10k+ files) +- Check `.gitignore` includes large directories +- Consider adding patterns to `.rooignore` + +--- + +## Using the Search Feature + +Once indexed, Roo can use the [`codebase_search`](/advanced-usage/available-tools/codebase-search) tool: + +**Example Natural Language Queries**: +- "How is user authentication handled?" +- "Database connection setup" +- "Error handling patterns" +- "API endpoint definitions" +- "Component state management" + +The tool provides: +- Relevant code snippets +- File paths with line numbers +- Similarity scores +- Direct navigation links + +--- + +## Privacy & Data Security + +**Your code stays private**: +- Only small code chunks (100-1000 chars) sent for embedding +- Embeddings are one-way mathematical representations +- Local parsing means full files never leave your machine +- Use Ollama for completely offline operation + +**Data Storage**: +- Vectors stored in your chosen Qdrant instance +- You control where data lives (local/cloud) +- Easy to delete: just clear the index + +--- + +## Current Limitations + +- **File Size**: 1MB maximum per file +- **External Dependencies**: Requires embedding provider + Qdrant +- **Language Support**: Best results with Tree-sitter supported languages + +--- + +## Future Enhancements + +Planned improvements: +- Additional embedding providers +- Multi-workspace indexing +- Enhanced filtering options +- Team collaboration features +- VS Code native search integration +- Incremental re-indexing optimizations \ No newline at end of file diff --git a/apps/docs/docs/features/concurrent-file-reads.md b/apps/docs/docs/features/concurrent-file-reads.md new file mode 100644 index 00000000000..a5d4f7475f9 --- /dev/null +++ b/apps/docs/docs/features/concurrent-file-reads.md @@ -0,0 +1,78 @@ +--- +description: Learn how Roo Code's Concurrent File Reads feature speeds up development by reading up to 100 files simultaneously for better context understanding. +keywords: + - concurrent file reads + - multi-file reads + - batch file reading + - context loading + - workspace efficiency + - file operations +sidebar_label: "Multi-File Reads" +--- + +# Concurrent File Reads (AKA Multi-File Reads) + +The Concurrent File Reads feature allows Roo to read multiple files from your workspace in a single step. This significantly improves efficiency when working on tasks that require context from several files, as Roo can gather all the necessary information at once instead of reading files one by one. + +### Key Features + +- Read up to 100 files in a single request. +- Enabled by default for a faster, more streamlined workflow. +- Configurable limit from 1 to 100 files (setting to 1 effectively disables concurrent reads). + +--- + +## Benefits + +- **Increased Speed**: Reduces the time it takes for Roo to understand your code by minimizing the number of back-and-forth steps. +- **Better Context**: Allows Roo to build a more complete mental model of your code, leading to more accurate and relevant responses. +- **Improved Workflow**: Streamlines tasks that require information from multiple files, making you more productive. + +--- + +## Why This Matters + +**Faster Context Building**: Previously, when Roo needed to understand your project, you'd see multiple requests like: + +- "Can I read `src/app.js`?" → You approve +- "Now can I read `src/utils.js`?" → You approve +- "And can I read `src/config.json`?" → You approve + +**With concurrent file reads**: Roo asks once to read all related files together, getting the full picture immediately and providing better assistance faster. + +--- + +## How it Works + +When you ask Roo to perform a task that involves multiple files, it will automatically identify the relevant files and read them together. This is especially useful for: + +- Understanding the overall structure of a component that is split across multiple files. +- Refactoring code that has dependencies in other parts of the codebase. +- Answering questions that require a broad understanding of your project. + +Roo is instructed to use this feature efficiently by prioritizing the most critical files and reading them in a single batch. The [`read_file`](/advanced-usage/available-tools/read-file) tool automatically accepts multiple files in a single request. + +When Roo requests to read multiple files, you'll see a batch approval interface that displays: + +- List of all files to be read +- File paths with line range indicators (if specified) +- Clickable file headers to open files in your editor +- **Approve All** and **Deny All** buttons for quick decisions + +Batch approval interface for reading multiple files + +--- + +## Configuration + +You can configure the Multi-File Read feature by clicking the icon and navigating to the "Context" section of the settings. + +Concurrent file reads settings showing limit slider + +1. **Concurrent File Reads Limit**: + - **Setting**: `Concurrent file reads limit` + - **Description**: This setting determines the maximum number of files that Roo can read in a single request. The default is 5, with a range of 1-100 files. Higher values can speed up tasks involving many small files but may use more memory. Setting the value to 1 effectively disables concurrent reads, reverting to single-file reads. + +:::note +The per‑request file limit is configured in the UI (default 5, up to 100). The backend [`read_file`](/advanced-usage/available-tools/read-file) tool doesn’t hard‑enforce a cap; actual behavior may also depend on the selected model/tool. +::: diff --git a/apps/docs/docs/features/custom-instructions.md b/apps/docs/docs/features/custom-instructions.md new file mode 100644 index 00000000000..5a44a5f98f7 --- /dev/null +++ b/apps/docs/docs/features/custom-instructions.md @@ -0,0 +1,344 @@ +--- +description: Learn how to use custom instructions to tailor Roo Code's behavior to your preferences, coding style, and project requirements. +keywords: + - custom instructions + - personalization + - AI customization + - coding preferences + - project rules +--- + +# Custom Instructions + +Custom Instructions allow you to personalize how Roo behaves, providing specific guidance that shapes responses, coding style, and decision-making processes. + +:::info Instruction File Locations +You can provide custom instructions using global rules (applied across all projects), workspace rules (project-specific), or through the Prompts tab interface. + +**Global Rules Directory:** Apply to all projects automatically. + +- **Linux/macOS:** `~/.roo/rules/` and `~/.roo/rules-{modeSlug}/` +- **Windows:** `%USERPROFILE%\.roo\rules\` and `%USERPROFILE%\.roo\rules-{modeSlug}\` + +**Workspace Rules:** Apply only to the current project and take precedence over global rules when they conflict. + +- **Preferred Method: Directory (`.roo/rules/`)** + ``` + . + ├── .roo/ + │ └── rules/ # Workspace-wide rules + │ ├── 01-general.md + │ └── 02-coding-style.txt + └── ... (other project files) + ``` +- **Fallback Method: Single File (`.roorules`)** + ``` + . + ├── .roorules # Workspace-wide rules (single file) + └── ... (other project files) + ``` + +**Mode-Specific Instructions:** Apply only to a specific mode (e.g., `code`). + +- **Preferred Method: Directory (`.roo/rules-{modeSlug}/`)** + ``` + . + ├── .roo/ + │ └── rules-code/ # Rules for "code" mode + │ ├── 01-js-style.md + │ └── 02-ts-style.md + └── ... (other project files) + ``` +- **Fallback Method: Single File (`.roorules-{modeSlug}`)** + ``` + . + ├── .roorules-code # Rules for "code" mode (single file) + └── ... (other project files) + ``` + +Rules are loaded in order: Global rules first, then workspace rules. If there's a conflict, workspace rules take precedence. See [Global Rules Directory](#global-rules-directory) for details. +::: + +--- + +## What Are Custom Instructions? + +Custom Instructions define specific behaviors, preferences, and constraints beyond Roo's basic role definition. Examples include coding style, documentation standards, testing requirements, and workflow guidelines. + +--- + +## Setting Custom Instructions + +### Global Custom Instructions + +These instructions apply across all workspaces and maintain your preferences regardless of which project you're working on. + +**How to set them:** + +Roo Code Prompts tab showing global custom instructions interface +1. **Open Prompts Tab:** Click the icon in the Roo Code top menu bar +2. **Find Section:** Find the "Custom Instructions for All Modes" section +3. **Enter Instructions:** Enter your instructions in the text area +4. **Save Changes:** Click "Done" to save your changes + +### Global Rules Directory + +The Global Rules Directory feature provides reusable rules and custom instructions that automatically apply across all your projects. This system supports both global configurations and project-specific overrides. + +#### Key Benefits + +**Without Global Rules**: You had to maintain separate rule files in each project: + +- Copy the same rules to every new project +- Update rules manually across multiple projects +- No consistency between projects + +**With Global Rules**: Create rules once and use them everywhere: + +- Set up your preferred coding standards globally +- Customize specific rules per project when needed +- Maintain consistency across all your work +- Easy to update rules for all projects at once + +#### Directory Structure + +The global rules directory location is fixed and cannot be customized: + +**Linux/macOS:** + +``` +~/.roo/ # Your global Roo configuration +├── rules/ # General rules applied to all projects +│ ├── coding-standards.md +│ ├── formatting-rules.md +│ └── security-guidelines.md +├── rules-code/ # Rules specific to Code mode +│ ├── typescript-rules.md +│ └── testing-requirements.md +├── rules-docs-extractor/ # Rules for documentation extraction +│ └── documentation-style.md +└── rules-{mode}/ # Rules for other specific modes + └── mode-specific-rules.md +``` + +**Windows:** + +``` +%USERPROFILE%\.roo\ # Your global Roo configuration +├── rules\ # General rules applied to all projects +│ ├── coding-standards.md +│ ├── formatting-rules.md +│ └── security-guidelines.md +├── rules-code\ # Rules specific to Code mode +│ ├── typescript-rules.md +│ └── testing-requirements.md +└── rules-{mode}\ # Rules for other specific modes + └── mode-specific-rules.md +``` + +#### Setting Up Global Rules + +1. **Create Global Rules Directory:** + + ```bash + # Linux/macOS + mkdir -p ~/.roo/rules + + # Windows + mkdir %USERPROFILE%\.roo\rules + ``` + +2. **Add General Rules** (`~/.roo/rules/coding-standards.md`): + + ```markdown + # Global Coding Standards + + 1. Always use TypeScript for new projects + 2. Write unit tests for all new functions + 3. Use descriptive variable names + 4. Add JSDoc comments for public APIs + ``` + +3. **Add Mode-Specific Rules** (`~/.roo/rules-code/typescript-rules.md`): + + ```markdown + # TypeScript Code Mode Rules + + 1. Use strict mode in tsconfig.json + 2. Prefer interfaces over type aliases for object shapes + 3. Always specify return types for functions + ``` + +#### Available Rule Directories + +| Directory | Purpose | +| ----------------------- | ----------------------------------- | +| `rules/` | General rules applied to all modes | +| `rules-code/` | Rules specific to Code mode | +| `rules-docs-extractor/` | Rules for documentation extraction | +| `rules-architect/` | Rules for system architecture tasks | +| `rules-debug/` | Rules for debugging workflows | +| `rules-{mode}/` | Rules for any custom mode | + +#### Rule Loading Order + +Rules are loaded in this order: + +1. **Global Rules** (from `~/.roo/`) +2. **Project Rules** (from `project/.roo/`) - take precedence over global rules when they conflict +3. [Generic only] **Legacy Files** (workspace root `.roorules`, `.clinerules`) - used only if no generic rules directory content was loaded + +Within each level, mode-specific rules are loaded before general rules. + +### Workspace-Level Instructions + +These instructions only apply within your current workspace, allowing you to customize Roo Code's behavior for specific projects. + +#### Workspace-Wide Instructions via Files/Directories + +Workspace-wide instructions apply to all modes within the current project and can be defined using files: + +- **Preferred Method: Directory-Based (`.roo/rules/`)** + - Create a directory named `.roo/rules/` in your workspace root. + - Place instruction files (e.g., `.md`, `.txt`) inside. Roo Code reads files recursively (including subdirectories), appending their content to the system prompt in **alphabetical order** based on filename. + - When this directory exists and contains files, its contents are loaded along with any global rules directories. + - Note: If the `.roo/rules/` directory exists but is empty, Roo Code will fall back to using the `.roorules` file instead. +- **Fallback Method: File-Based (`.roorules`)** + - If `.roo/rules/` doesn't exist or is empty, Roo Code looks for a single `.roorules` file in the workspace root. + - If found, its content is loaded. + +#### Mode-Specific Instructions + +Mode-specific instructions can be set in two independent ways that can be used simultaneously: + +1. **Using the Prompts Tab:** + + Roo Code Prompts tab showing mode-specific custom instructions interface + * **Open Tab:** Click the icon in the Roo Code top menu bar + * **Select Mode:** Under the Modes heading, click the button for the mode you want to customize + * **Enter Instructions:** Enter your instructions in the text area under "Mode-specific Custom Instructions (optional)" + * **Save Changes:** Click "Done" to save your changes + + :::info Global Mode Rules + If the mode itself is global (not workspace-specific), any custom instructions you set for it will also apply globally for that mode across all workspaces. + ::: + +2. **Using Rule Files/Directories:** Provide mode-specific instructions via files: + - **Preferred Method: Directory-Based (`.roo/rules-{modeSlug}/`)** + - Create a directory named `.roo/rules-{modeSlug}/` (e.g., `.roo/rules-docs-writer/`) in your workspace root. + - Place instruction files inside (recursive loading, including subdirectories). Files are read and appended to the system prompt in **alphabetical order** by filename. + - This method takes precedence over the fallback file method for the specific mode if the directory exists and contains files. + - **Fallback Method: File-Based (`.roorules-{modeSlug}`)** + - If `.roo/rules-{modeSlug}/` doesn't exist or is empty, Roo Code looks for a single `.roorules-{modeSlug}` file (e.g., `.roorules-code`) in the workspace root. + - If found, its content is loaded for that mode. + +Instructions from the Prompts tab, global rules, workspace rules, and mode-specific rules are all combined. See the section below for the exact order. + +--- + +## How Instructions are Combined + +Instructions are placed in the system prompt in this exact format: + +``` +==== +USER'S CUSTOM INSTRUCTIONS + +The following additional instructions are provided by the user, and should be followed to the best of your ability without interfering with the TOOL USE guidelines. + +Language Preference: +[Language preference if set] + +Global Instructions: +[Global Instructions from Prompts Tab] + +Mode-specific Instructions: +[Mode-specific Instructions from Prompts Tab for the current mode] + +Rules: + +# Rules from rules-{modeSlug} directories: +[Contents of ALL files from ~/.roo/rules-{modeSlug}/ AND .roo/rules-{modeSlug}/ if they exist] + +# Rules from .roorules-{modeSlug}: +[Contents of .roorules-{modeSlug} file if no mode-specific directories have files] + +# Rules from .rooignore: +[.rooignore-related instructions if applicable] + +# Agent Rules Standard (AGENTS.md): +[Contents of AGENTS.md or AGENT.md from workspace root if present and enabled] + +# Rules from rules directories: +[Contents of ALL files from ~/.roo/rules/ AND .roo/rules/ if they exist] + +# Rules from .roorules: +[Contents of .roorules file if no general rules directories have files] + +==== +``` + +_Note: The system loads rules from ALL applicable directories (both global `~/.roo/` and workspace `.roo/`), not just the first one with files. Mode-specific rules appear before general rules. Directory-based rules take precedence over file-based fallbacks only when determining which method to use, but all applicable directories are read._ + +--- + +## Rules about .rules files + +- **File Location:** The preferred method uses directories within `.roo/` (`.roo/rules/` and `.roo/rules-{modeSlug}/`). The fallback method uses single files (`.roorules` and `.roorules-{modeSlug}`) located directly in the workspace root. +- **Recursive Reading:** Rules directories are read recursively, including all files in subdirectories +- **File Filtering:** System automatically excludes cache and temporary files (`.DS_Store`, `*.bak`, `*.cache`, `*.log`, `*.tmp`, `Thumbs.db`, etc.) +- **Empty Files:** Empty or missing rule files are silently skipped +- **Source Headers:** Directory-based rules include per-file headers `# Rules from {absolute path}:`, while file-based rules include `# Rules from {filename}:` headers +- **Aggregation:** Both global and workspace rules directories are aggregated for mode-specific and generic rules (not either-or) +- **Sorting:** Files are sorted by basename only, case-insensitive +- **Header Paths:** Header paths are absolute and follow symlinks +- **Rule Interaction:** Mode-specific rules complement global rules rather than replacing them +- **Symbolic Links:** Fully supported for both files and directories, with a maximum resolution depth of 5 to prevent infinite loops + +--- + +## AGENTS.md Support + +Roo Code also supports loading rules from an `AGENTS.md` (or `AGENT.md` as fallback) file in your workspace root: + +- **Purpose:** Provides agent-specific rules and guidelines for AI behavior +- **Location:** Must be in the workspace root directory +- **Loading:** Automatically loaded by default. To disable AGENTS.md loading, set `"roo-cline.useAgentRules": false` in your VSCode settings +- **Setting:** `roo-cline.useAgentRules` (default: true) +- **Preference:** If both exist, `AGENTS.md` is preferred over `AGENT.md` +- **Priority:** Loaded after mode-specific rules and `.rooignore`, before generic rules from both `~/.roo/rules` and `.roo/rules` +- **Header:** Added to system prompt with header `# Agent Rules Standard (AGENTS.md):` or `(AGENT.md):` accordingly +- **Empty Files:** Empty or whitespace-only `AGENTS.md` is ignored +- **Symbolic Links:** Symbolic links to files or directories are resolved before reading + +This feature allows teams to maintain standardized AI agent behavior rules that can be version-controlled alongside the project code. + +--- + +## Examples of Custom Instructions + +- "Always use spaces for indentation, with a width of 4 spaces" +- "Use camelCase for variable names" +- "Write unit tests for all new functions" +- "Explain your reasoning before providing code" +- "Focus on code readability and maintainability" +- "Prioritize using the most common library in the community" +- "When adding new features to websites, ensure they are responsive and accessible" + +:::tip Pro Tip: Team Standardization +For team environments, consider these approaches: + +**Project Standards**: Use workspace `.roo/rules/` directories under version control to standardize Roo's behavior for specific projects. This ensures consistent code style and development workflows across team members. + +**Organization Standards**: Use global rules (`~/.roo/rules/`) to establish organization-wide coding standards that apply to all projects. Team members can set up identical global rules for consistency across all work. + +**Hybrid Approach**: Combine global rules for organization standards with project-specific workspace rules for project-specific requirements. When rules conflict, workspace rules take precedence. + +The directory-based approach offers better organization than single `.roorules` files and supports both global and project-level customization. +::: + +--- + +## Combining with Custom Modes + +For advanced customization, combine with [Custom Modes](/features/custom-modes) to create specialized environments with specific tool access, file restrictions, and tailored instructions. diff --git a/apps/docs/docs/features/custom-modes.mdx b/apps/docs/docs/features/custom-modes.mdx new file mode 100644 index 00000000000..582d73b6bb3 --- /dev/null +++ b/apps/docs/docs/features/custom-modes.mdx @@ -0,0 +1,666 @@ +--- +description: Learn how to create custom modes in Roo Code to tailor AI behavior for specific tasks. Configure tool access, file permissions, and specialized instructions. +keywords: + - custom modes + - Roo Code customization + - AI assistant configuration + - mode creation + - tool permissions + - file restrictions +--- + +# Customizing Modes + +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). + +
+ +
+ +
+ +:::tip Sticky Models for Efficient Workflow +Each mode—including custom ones—features **Sticky Models**. This means Roo Code automatically remembers and selects the last model you used with a particular mode. This lets you assign different preferred models to different tasks without constant reconfiguration, as Roo switches between models when you change modes. +::: + +:::info Discover Community Modes +Looking for ready-to-use custom modes? Visit the [Roo Code Marketplace](/features/marketplace) to browse and install community-contributed modes with a single click. The marketplace offers specialized modes for various tasks like React development, documentation writing, testing, and more—all created and shared by the Roo Code community. +::: + +--- + +## Why Use Custom Modes? + +* **Specialization:** Create modes optimized for specific tasks, like "Documentation Writer," "Test Engineer," or "Refactoring Expert." +* **Safety:** Restrict a mode's access to sensitive files or commands. For example, a "Review Mode" could be limited to read-only operations. +* **Experimentation:** Safely experiment with different prompts and configurations without affecting other modes. +* **Team Collaboration:** Share custom modes with your team to standardize workflows. + +Overview of custom modes interface + + *Roo Code's interface for creating and managing custom modes.* + +--- + +## What's Included in a Custom Mode? + +Custom modes are defined by several key properties. Understanding these concepts will help you tailor Roo's behavior effectively. + +| UI Field / YAML Property | Conceptual Description | +| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Slug (`slug`) | A **unique internal identifier** for the mode. It's used by Roo Code to reference the mode, especially for associating [mode-specific instruction files](#mode-specific-instructions-via-filesdirectories). | +| Name (`name`) | The **display name** for the mode as it appears in the Roo Code user interface. This should be human-readable and descriptive. | +| Description (`description`) | A **short, user-friendly summary** of the mode's purpose displayed in the mode selector UI.
- This text appears below the mode's name in the redesigned mode selector, offering users a quick understanding of the mode's function.
- Keep this concise and focused on what the mode does for the user. | +| Role Definition (`roleDefinition`) | Defines the **core identity and expertise** of the mode. This text is placed at the beginning of the system prompt.
- Its primary function is to define Roo's personality and behavior when this mode is active.
- With the introduction of the `description` field, the `roleDefinition` should provide a detailed description of the mode's identity, while the `description` field handles the short summary for the UI.
- The `whenToUse` property now takes precedence for summarization in automated contexts like task orchestration. | +| Available Tools (`groups`) | Defines the **allowed toolsets and file access permissions** for the mode.
- In the UI, this corresponds to selecting which general categories of tools (like reading files, editing files, browsing, or executing commands) the mode can use.
- The UI shows which files can be edited in the 'Allowed files' section under each mode.
- File type restrictions for the "edit" group are typically managed via manual YAML/JSON configuration or by asking Roo to set them up, as detailed in the [Property Details for `groups`](#groups). | +| When to Use (optional) (`whenToUse`) | (Optional) Provides **guidance for Roo's automated decision-making**, particularly for mode selection and task orchestration.
- This text is used by Roo, particularly the [`🪃 Orchestrator`](/basic-usage/using-modes#orchestrator-mode-aka-boomerang-mode) mode, for [orchestrating tasks](/features/boomerang-tasks) (e.g., via the [`new_task`](/advanced-usage/available-tools/new-task) tool).
- It also helps Roo decide which mode is appropriate when [switching modes](/basic-usage/using-modes#switching-between-modes) (e.g., via the [`switch_mode`](/advanced-usage/available-tools/switch-mode) tool).
- This field is **not displayed in the mode selector UI** - that's handled by the `description` field. | +| Custom Instructions (optional) (`customInstructions`) | **Specific behavioral guidelines** or rules for the mode.
- These instructions are added near the end of the system prompt to further refine Roo's behavior beyond the `roleDefinition`.
- This can be provided directly in the configuration or via separate instruction files. | + +--- +## Import/Export Modes + +Easily share, back up, and template your custom modes. This feature lets you export any mode—and its associated rules—into a single, portable YAML file that you can import into any project. + +### Key Features +- **Shareable Setups**: Package a mode and its rules into one file to easily share with your team. +- **Easy Backups**: Save your custom mode configurations so you never lose them. +- **Project Templates**: Create standardized mode templates for different types of projects. +- **Simple Migration**: Move modes between your global settings and specific projects effortlessly. +- **Flexible Slug Changes**: Change mode slugs in exported files without manual path editing. + +--- + +### Use Case + +**Before**: Manually recreating custom modes and copying `.roo/rules-{slug}/` folders for each new project or team member. Changing slugs required manual path updates in the YAML file. + +**With this feature**: A single click exports a mode and all its rules to a YAML file. Another click imports it, setting everything up automatically. You can now change the slug in the exported file and the import process handles all path updates automatically. + +### How it Works + +The import/export functionality is managed from the **Modes** view. + +![Mode Export and Import Buttons](/img/custom-modes/custom-modes-5.png) + +#### Exporting a Mode +1. Navigate to the **Modes** view. +2. Select the mode you wish to export. +3. Click the **Export Mode** button (the download icon). +4. Choose a location to save the `.yaml` file. + +Roo packages the mode's configuration and any rules found in the project's `.roo/rules-{slug}/` directory into the YAML file. + +#### Importing a Mode +1. Click the **Import Mode** button (the upload icon) in the **Modes** view. +2. Select the mode's YAML file. +3. Choose the import level in the dialog that appears: + ![Import Level Dialog](/img/custom-modes/custom-modes-6.png) + - **Project**: The mode is available only in the current workspace. It's added to the `.roomodes` file, and its rules are saved to the `.roo/rules-{slug}/` directory within the project. + - **Global**: The mode is available in all your projects. It's added to your global settings, and its rules are stored in your system's global Roo configuration directory (e.g., `~/.roo/rules-{slug}/`). + +**Note:** When exporting modes with rules, all file paths are normalized to use forward slashes for cross-platform compatibility. This ensures modes can be shared between team members using different operating systems. + +--- + +### Exported YAML file format: + +```yaml +customModes: + - slug: "my-custom-mode" + name: "My Custom Mode" + roleDefinition: "You are a helpful assistant." + groups: ["read", "edit"] + rulesFiles: + - relativePath: "rules-my-custom-mode/rules.md" + content: "These are the rules for my custom mode." +``` + +### Changing Slugs on Import + +When importing modes, you can change the slug in the exported YAML file before importing: + +1. **Export a mode** with slug `original-mode` +2. **Edit the YAML file** and change the slug to `new-mode` +3. **Import the file** - the import process will: + - Create the new mode with the updated slug + - Update rule file paths to match the new slug + +Note: The automatic slug change handling during import ensures that rule file paths are updated correctly when you change the mode slug in the exported file. + +--- + +### FAQ + +**"What happens if I import a mode that has the same 'slug' as an existing one?"** +- The existing mode will be overwritten with the configuration from the imported file. + +**"What's the main difference between a Global and Project import?"** +- **Global** modes are available across all your VS Code projects. **Project** modes are specific to the workspace where they are imported and are stored in a `.roomodes` file at the root of your project. + +**"Can I export built-in modes like Code or Architect?"** +- Yes. If you have customized a built-in mode (e.g., by changing its instructions), you can export it to save your customizations. + +**"What if I import a mode with rules at the Global level?"** +- The rules are still preserved. They are stored in a global `rules-{slug}` folder in your user home directory (e.g., `~/.roo/rules-my-custom-mode/`) instead of the project-specific `.roo` folder. + +**"How does the slug change feature work?"** +- When you change the slug in an exported YAML file before importing, the import process updates the rule file paths to match the new slug. This ensures the mode works correctly with its new identity. + +--- + +## Methods for Creating and Configuring Custom Modes + +You can create and configure custom modes in several ways: + +To configure modes, open the Roo Code panel, click the Mode menu under the chatbox, then click the . From there, use "Edit Global Modes" to open settings/custom_modes.yaml, or "Edit Project Modes (.roomodes)" to open your workspace-level configuration. + +### 1. Ask Roo! (Recommended) + +You can quickly create a basic custom mode by asking Roo Code to do it for you. For example: +``` +Create a new mode called "Documentation Writer". It should only be able to read files and write Markdown files. +``` +Roo Code will guide you through the process, prompting for necessary information for the properties described in the [What's Included in a Custom Mode?](#whats-included-in-a-custom-mode) table. Roo will create the mode using the preferred YAML format. For fine-tuning or making specific adjustments later, you can use the Modes page or manual configuration. + +### 2. Using the Modes Page + +1. **Open the Modes page:** Open the Roo Code panel, click the Mode menu under the chatbox, then click the . +2. **Create New Mode:** Click the button to the right of the Modes heading. +3. **Fill in Fields:** + +Custom mode creation interface on the Modes page + + *The custom mode creation interface showing fields for name, slug, description, save location, role definition, available tools, custom instructions.* + + The interface provides fields for `Name`, `Slug`, `Description`, `Save Location`, `Role Definition`, `When to Use (optional)`, `Available Tools`, and `Custom Instructions`. After filling these, click the "Create Mode" button. Roo Code will save the new mode in YAML format. + +*Refer to the [What's Included in a Custom Mode?](#whats-included-in-a-custom-mode) table for conceptual explanations of each property. File type restrictions for the "edit" tool group can be added by asking Roo or through manual YAML/JSON configuration.* + +### 3. Manual Configuration (YAML & JSON) + +You can directly edit the configuration files to create or modify custom modes. This method offers the most control over all properties. Roo Code now supports both YAML (preferred) and JSON formats. + +* **Global Modes:** Edit the `custom_modes.yaml` (preferred) or `custom_modes.json` file. From the Modes page, click "Edit Global Modes" to open `settings/custom_modes.yaml`. +* **Project Modes:** Edit the `.roomodes` file (which can be YAML or JSON) in your project root. From the Modes page, click "Edit Project Modes (.roomodes)" to open or create the workspace file. + +These files define an array/list of custom modes. + +**YAML Example (`custom_modes.yaml` or `.roomodes`):** +```yaml +customModes: + - slug: docs-writer + name: 📝 Documentation Writer + description: A specialized mode for writing and editing technical documentation. + roleDefinition: You are a technical writer specializing in clear documentation. + whenToUse: Use this mode for writing and editing documentation. + customInstructions: Focus on clarity and completeness in documentation. + groups: + - read + - - edit # First element of tuple + - fileRegex: \.(md|mdx)$ # Second element is the options object + description: Markdown files only + - browser + - slug: another-mode + name: Another Mode + # ... other properties +``` + +**JSON Alternative (`custom_modes.json` or `.roomodes`):** +```json +{ + "customModes": [ + { + "slug": "docs-writer", + "name": "📝 Documentation Writer", + "description": "A specialized mode for writing and editing technical documentation.", + "roleDefinition": "You are a technical writer specializing in clear documentation.", + "whenToUse": "Use this mode for writing and editing documentation.", + "customInstructions": "Focus on clarity and completeness in documentation.", + "groups": [ + "read", + ["edit", { "fileRegex": "\\.(md|mdx)$", "description": "Markdown files only" }], + "browser" + ] + }, + { + "slug": "another-mode", + "name": "Another Mode" + } + ] +} +``` + +### YAML/JSON Property Details + +##### `slug` +* **Purpose:** A unique identifier for the mode. +* **Format:** Must match the pattern `/^[a-zA-Z0-9-]+$/` (only letters, numbers, and hyphens). +* **Usage:** Used internally and in file/directory names for mode-specific rules (e.g., `.roo/rules-{slug}/`). +* **Recommendation:** Keep it short and descriptive. +* **Note:** The `source` property is automatically added by the system and shouldn't be manually set. +* *YAML Example:* `slug: docs-writer` +* *JSON Example:* `"slug": "docs-writer"` + +##### `name` +* **Purpose:** The display name shown in the Roo Code UI. +* **Format:** Can include spaces and proper capitalization. +* *YAML Example:* `name: 📝 Documentation Writer` +* *JSON Example:* `"name": "Documentation Writer"` + +##### `description` +* **Purpose:** A short, user-friendly summary displayed below the mode name in the mode selector UI. +* **Format:** Keep this concise and focused on what the mode does for the user. +* **UI Display:** This text appears in the redesigned mode selector, offering users a quick understanding of the mode's function. +* *YAML Example:* `description: A specialized mode for writing and editing technical documentation.` +* *JSON Example:* `"description": "A specialized mode for writing and editing technical documentation."` + +##### `roleDefinition` +* **Purpose:** Detailed description of the mode's role, expertise, and personality. +* **Placement:** This text is placed at the beginning of the system prompt when the mode is active. +* **Updated Role:** With the introduction of the `description` field, the `roleDefinition` should provide a detailed description of the mode's identity, while the `description` field handles the short summary for the UI. The `whenToUse` property now takes precedence for summarization in automated contexts. +* *YAML Example (multi-line):* + ```yaml + roleDefinition: >- + You are a test engineer with expertise in: + - Writing comprehensive test suites + - Test-driven development + ``` +* *JSON Example:* `"roleDefinition": "You are a technical writer specializing in clear documentation."` + +##### `groups` +* **Purpose:** Array/list defining which tool groups the mode can access and any file restrictions. +* **Available Tool Groups (Strings):** `"read"`, `"edit"`, `"browser"`, `"command"`, `"mcp"`. +* **Structure:** The `groups` property uses a specific structure: + * Simple string for unrestricted access: `"edit"` + * Tuple (two-element array) for restricted access: `["edit", { fileRegex: "pattern", description: "optional" }]` +* **File Restrictions for "edit" group:** + * To apply file restrictions, the "edit" entry becomes a tuple (YAML list or JSON array) where the first element is `"edit"` and the second is a map/object defining the restrictions. + * `fileRegex`: A regular expression string to control which files the mode can edit. + * In YAML, typically use single backslashes for regex special characters (e.g., `\.md$`). + * In JSON, backslashes must be double-escaped (e.g., `\\.md$`). + * `description`: An optional string describing the restriction. + * For more complex patterns, see [Understanding Regex in Custom Modes](#understanding-regex-in-custom-modes). +* *YAML Example:* + ```yaml + groups: + - read + - - edit # First element of tuple + - fileRegex: \.(js|ts)$ # Second element is the options object + description: JS/TS files only + - command + ``` +* *JSON Example:* + ```json + "groups": [ + "read", + ["edit", { "fileRegex": "\\.(js|ts)$", "description": "JS/TS files only" }], + "command" + ] + ``` + +##### `whenToUse` +* **Purpose:** (Optional) Provides guidance for Roo's automated decision-making, particularly for mode selection and task orchestration. +* **Format:** A string describing ideal scenarios or task types for this mode. +* **Usage:** This field is used by Roo for automated decisions and is **not displayed in the mode selector UI** - that's handled by the `description` field. If populated, Roo uses this description for orchestration and mode switching; otherwise, the first sentence of `roleDefinition` is used. +* *YAML Example:* `whenToUse: This mode is best for refactoring Python code.` +* *JSON Example:* `"whenToUse": "This mode is best for refactoring Python code."` + +##### `customInstructions` +* **Purpose:** A string containing additional behavioral guidelines for the mode. +* **Placement:** This text is added near the end of the system prompt. +* **Supplementing:** Can be supplemented by [Mode-Specific Instructions via Files/Directories](#mode-specific-instructions-via-filesdirectories). +* *YAML Example (multi-line):* + ```yaml + customInstructions: |- + When writing tests: + - Use describe/it blocks + - Include meaningful descriptions + ``` +* *JSON Example:* `"customInstructions": "Focus on explaining concepts and providing examples."` + +### Benefits of YAML Format + +YAML is now the preferred format for defining custom modes due to several advantages over JSON: + +* **Readability:** YAML's indentation-based structure is often easier for humans to read and understand complex configurations. +* **Comments:** YAML allows for comments (lines starting with `#`), making it possible to annotate your mode definitions. + ```yaml + customModes: + - slug: security-review + name: 🔒 Security Reviewer + # This mode is restricted to read-only access + roleDefinition: You are a security specialist reviewing code for vulnerabilities. + whenToUse: Use for security reviews and vulnerability assessments. + # Only allow reading files, no editing permissions + groups: + - read + - browser + ``` +* **Multi-line Strings:** YAML provides cleaner syntax for multi-line strings (e.g., for `roleDefinition` or `customInstructions`) using `|` (literal block) or `>` (folded block). + ```yaml + customModes: + - slug: test-engineer + name: 🧪 Test Engineer + roleDefinition: >- + You are a test engineer with expertise in: + - Writing comprehensive test suites + - Test-driven development + - Integration testing + - Performance testing + customInstructions: |- + When writing tests: + - Use describe/it blocks + - Include meaningful descriptions + - Test edge cases + - Ensure proper coverage + # ... other properties + ``` +* **Less Punctuation:** YAML generally requires less punctuation (like commas and braces) compared to JSON, reducing syntax errors. +* **Editor Support:** Most modern code editors provide excellent syntax highlighting and validation for YAML files, further enhancing readability and reducing errors. + +While JSON is still fully supported and won't be deprecated, new modes created via the UI or by asking Roo will default to YAML. Both `.roomodes` files and global configuration files can be either YAML or JSON format. + +#### Tips for Working with YAML + +When editing YAML manually, keep these points in mind: + +* **Indentation is Key:** YAML uses indentation (spaces, not tabs) to define structure. Incorrect indentation is the most common source of errors. Ensure consistent spacing for nested elements. +* **Colons for Key-Value Pairs:** Keys must be followed by a colon and a space (e.g., `slug: my-mode`). +* **Hyphens for List Items:** List items start with a hyphen and a space (e.g., `- read`). +* **Validate Your YAML:** If you encounter issues, use an online YAML validator or your editor's built-in validation to check for syntax errors. + +### Migration to YAML Format + +* **Global Modes:** The automatic migration from `custom_modes.json` to `custom_modes.yaml` happens only for global modes when Roo Code starts up, under these conditions: + 1. Roo Code starts up. + 2. A `custom_modes.json` file exists. + 3. No `custom_modes.yaml` file exists yet. + The migration process reads the existing JSON file, converts it to YAML format, creates a new `custom_modes.yaml` file, and preserves the original JSON file (e.g., by renaming it) for rollback purposes. If `custom_modes.yaml` already exists, it will be used, and no automatic migration of `custom_modes.json` will occur. + +* **Project Modes (`.roomodes`):** + * **No automatic startup migration:** Unlike global modes, project-specific `.roomodes` files are not automatically converted from JSON to YAML when Roo Code starts. Manual conversion is required for existing JSON `.roomodes` files. + * **Format Detection:** Roo Code can read `.roomodes` files in either YAML or JSON format. Roo Code automatically detects the format of `.roomodes` files by attempting to parse them as YAML first. + * **Conversion on UI Edit:** If you edit a project-specific mode through the Roo Code UI (e.g., via the Modes page), and the existing `.roomodes` file is in JSON format, Roo Code will save the changes in YAML format. This effectively converts the file to YAML. The original JSON content will be overwritten with YAML. + * **Manual Conversion:** If you want to convert an existing `.roomodes` JSON file to YAML without making UI edits, you'll need to do this manually. You can: + 1. Open your existing JSON `.roomodes` file. + 2. Convert its content to YAML (you can ask Roo to help with this, or use an online converter). + 3. Replace the content of your `.roomodes` file with the new YAML content, or rename the old file (e.g., `.roomodes.json.bak`) and save the new content into a file named `.roomodes`. + Ensure the resulting YAML is valid. + +:::tip +For manual conversions of `.roomodes` files, you can use online JSON to YAML converters or ask Roo to help reformat a specific mode configuration from JSON to YAML. Always validate your YAML before saving. +::: +--- + +## Mode-Specific Instructions via Files/Directories + +:::info Mode-Specific Instruction File Locations +You can provide instructions for custom modes using dedicated files or directories within your workspace. This allows for better organization and version control compared to only using the `customInstructions` property. + +**Preferred Method: Directory (`.roo/rules-{mode-slug}/`)** +``` +. +├── .roo/ +│ └── rules-docs-writer/ # Example for mode slug "docs-writer" +│ ├── 01-style-guide.md +│ └── 02-formatting.txt +└── ... (other project files) +``` + +**Fallback Method: Single File (`.roorules-{mode-slug}`)** +``` +. +├── .roorules-docs-writer # Example for mode slug "docs-writer" +└── ... (other project files) +``` + +**Legacy Fallback: `.clinerules-{mode-slug}`** +For backward compatibility, the system also checks for `.clinerules-{mode-slug}` files as an additional fallback, though this is not recommended for new projects. + +The directory method takes precedence if it exists and contains files. + +**Rules Directory Scope:** +- **Global modes:** Rules are stored in `~/.roo/rules-{slug}/` (note the trailing slash) +- **Project modes:** Rules are stored in `{workspace}/.roo/rules-{slug}/` (note the trailing slash) +::: + +In addition to the `customInstructions` property, you can provide mode-specific instructions via files in your workspace. This is particularly useful for: + +* Organizing lengthy or complex instructions into multiple, manageable files. +* Managing instructions easily with version control. +* Allowing non-technical team members to modify instructions without editing YAML/JSON. + +There are two ways Roo Code loads these instructions, with a clear preference for the newer directory-based method: + +**1. Preferred Method: Directory-Based Instructions (`.roo/rules-{mode-slug}/`)** + +* **Structure:** Create a directory named `.roo/rules-{mode-slug}/` in your workspace root. Replace `{mode-slug}` with your mode's slug (e.g., `.roo/rules-docs-writer/`). +* **Content:** Place one or more files (e.g., `.md`, `.txt`) containing your instructions inside this directory. You can organize instructions further using subdirectories. Files within the `.roo/rules-{mode-slug}/` directory are read recursively and appended in alphabetical order based on filename (case-insensitive). +* **Loading:** All instruction files found within this directory structure will be loaded and applied to the specified mode. System files (`.DS_Store`, `.swp`, etc.) and cache files are automatically excluded. +* **Advanced Features:** The system supports symbolic links with cycle detection for advanced file organization. + +**2. Fallback (Backward Compatibility): File-Based Instructions (`.roorules-{mode-slug}`)** + +* **Structure:** If the `.roo/rules-{mode-slug}/` directory **does not exist or is empty**, Roo Code will look for a single file named `.roorules-{mode-slug}` in your workspace root (e.g., `.roorules-docs-writer`). +* **Loading:** If found, the content of this single file will be loaded as instructions for the mode. + +**Precedence:** + +* The **directory-based method (`.roo/rules-{mode-slug}/`) takes precedence**. If this directory exists and contains files, any corresponding root-level `.roorules-{mode-slug}` file will be **ignored** for that mode. +* This ensures that projects migrated to the new directory structure behave predictably, while older projects using the single-file method remain compatible. + +**Combining with `customInstructions`:** + +* Instructions loaded from either the directory or the fallback file are combined with the `customInstructions` property defined in the mode's configuration. +* Typically, the content from the files/directories is appended after the content from the `customInstructions` property. + +--- + +## Configuration Precedence + +Mode configurations are applied in this order: + +1. Project-level mode configurations (from `.roomodes` - YAML or JSON) +2. Global mode configurations (from `custom_modes.yaml`, then `custom_modes.json` if YAML not found) +3. Default mode configurations + +**Important:** When modes with the same slug exist in both `.roomodes` and global settings, the `.roomodes` version completely overrides the global one. This applies to ALL properties, not just some. For instance, if you have a global 'code' mode and a project-specific 'code' mode in `.roomodes`, the project version will be used when working in that project, and all properties from the global version are ignored. + +You can override any default mode by including a mode with the same slug in your global or project-specific configuration. + +* **Note on Instruction Files:** Within the loading of mode-specific instructions from the filesystem, the directory `.roo/rules-{mode-slug}/` takes precedence over the single file `.roorules-{mode-slug}` found in the workspace root. + +--- + +## Overriding Default Modes + +You can override Roo Code's built-in modes (like `💻 Code`, `🪲 Debug`, `❓ Ask`, `🏗️ Architect`, `🪃 Orchestrator`) with customized versions. This is done by creating a custom mode with the same slug as a default mode (e.g., `code`, `debug`). + +### Overriding Modes Globally + +To customize a default mode across all your projects: + +1. **Open the Modes page:** Open the Roo Code panel, click the Mode menu under the chatbox, then click the . +2. **Edit Global Modes:** Click "Edit Global Modes" to open `settings/custom_modes.yaml` (or `custom_modes.json`). +3. **Add Your Override:** + +**YAML Example:** +```yaml +customModes: + - slug: code # Matches the default 'code' mode slug + name: 💻 Code (Global Override) # Custom display name + roleDefinition: You are a software engineer with global-specific constraints. + whenToUse: This globally overridden code mode is for JS/TS tasks. + customInstructions: Focus on project-specific JS/TS development. + groups: + - read + - - edit + - fileRegex: \.(js|ts)$ + description: JS/TS files only +``` + +**JSON Alternative:** +```json +{ + "customModes": [{ + "slug": "code", + "name": "💻 Code (Global Override)", + "roleDefinition": "You are a software engineer with global-specific constraints", + "whenToUse": "This globally overridden code mode is for JS/TS tasks.", + "customInstructions": "Focus on project-specific JS/TS development", + "groups": [ + "read", + ["edit", { "fileRegex": "\\.(js|ts)$", "description": "JS/TS files only" }] + ] + }] +} +``` +This example replaces the default `💻 Code` mode with a version restricted to JavaScript and TypeScript files. + +### Project-Specific Mode Override + +To override a default mode for just one project: + +1. **Open the Modes page:** Open the Roo Code panel, click the Mode menu under the chatbox, then click the . +2. **Edit Project Modes (.roomodes):** Click "Edit Project Modes (.roomodes)" to open or create the workspace file. +3. **Add Your Override:** + +**YAML Example:** +```yaml +customModes: + - slug: code # Matches the default 'code' mode slug + name: 💻 Code (Project-Specific) # Custom display name + roleDefinition: You are a software engineer with project-specific constraints for this project. + whenToUse: This project-specific code mode is for Python tasks within this project. + customInstructions: Adhere to PEP8 and use type hints. + groups: + - read + - - edit + - fileRegex: \.py$ + description: Python files only + - command +``` + +**JSON Alternative:** +```json +{ + "customModes": [{ + "slug": "code", + "name": "💻 Code (Project-Specific)", + "roleDefinition": "You are a software engineer with project-specific constraints for this project.", + "whenToUse": "This project-specific code mode is for Python tasks within this project.", + "customInstructions": "Adhere to PEP8 and use type hints.", + "groups": [ + "read", + ["edit", { "fileRegex": "\\.py$", "description": "Python files only" }], + "command" + ] + }] +} +``` +Project-specific overrides take precedence over global overrides. + +### Common Use Cases for Overriding Default Modes +* **Restricting file access:** Limit a mode to specific file types. +* **Specializing behavior:** Customize expertise for your tech stack. +* **Adding custom instructions:** Integrate project standards. +* **Changing available tools:** Remove tools to prevent unwanted operations. + +:::tip +When overriding default modes, test carefully. Consider backing up configurations before major changes. +::: + +--- + +## Understanding Regex in Custom Modes + +Regular expressions (`fileRegex`) offer fine-grained control over file editing permissions. + +:::tip +**Let Roo Build Your Regex Patterns** + +Instead of writing complex regex manually, ask Roo: +``` +Create a regex pattern that matches JavaScript files but excludes test files +``` +Roo will generate the pattern. Remember to adapt it for YAML (usually single backslashes) or JSON (double backslashes). +::: + +When you specify `fileRegex`, you're creating a pattern that file paths must match. + +**Important Rules for `fileRegex`:** +* **Escaping in JSON:** In JSON strings, backslashes (`\`) must be double-escaped (e.g., `\\.md$`). +* **Escaping in YAML:** In unquoted or single-quoted YAML strings, a single backslash is usually sufficient for regex special characters (e.g., `\.md$`). However, YAML regex patterns in quoted strings may need double escaping similar to JSON. +* **Path Matching:** Patterns match against the full relative file path from your workspace root (e.g., `src/components/button.js`). +* **Case Sensitivity:** Regex patterns are case-sensitive by default. +* **Validation:** Invalid regex patterns are rejected with an "Invalid regular expression pattern" error message. + +**Common Pattern Examples:** +In the table below, the 'Pattern (Conceptual / YAML-like)' column shows patterns as they would appear in YAML. For JSON, remember to double-escape backslashes. + +| Pattern (Conceptual / YAML-like) | JSON `fileRegex` Value | Matches | Doesn't Match | +| -------------------------------- | ------------------------------- | ----------------------------------------- | ------------------------------------- | +| `\.md$` | `"\\.md$"` | `readme.md`, `docs/guide.md` | `script.js`, `readme.md.bak` | +| `^src/.*` | `"^src/.*"` | `src/app.js`, `src/components/button.tsx` | `lib/utils.js`, `test/src/mock.js` | +| `\.(css|scss)$` | "\\.(css|scss)$" | `styles.css`, `theme.scss` | `styles.less`, `styles.css.map` | +| `docs/.*\.md$` | `"docs/.*\\.md$"` | `docs/guide.md`, `docs/api/reference.md` | `guide.md`, `src/docs/notes.md` | +| `^(?!.*(test\|spec))\.(js\|ts)$` | `"^(?!.*(test\|spec))\\.(js\|ts)$"` | `app.js`, `utils.ts` | `app.test.js`, `utils.spec.js`, `app.jsx` | + + +**Key Regex Building Blocks:** +* `\.`: Matches a literal dot. (YAML: `\.`, JSON: `\\.`) +* `$`: Matches the end of the string. +* `^`: Matches the beginning of the string. +* `.*`: Matches any character (except newline) zero or more times. +* `(a|b)`: Matches either "a" or "b". (e.g., `\.(js|ts)$`) +* `(?!...)`: Negative lookahead. + +**Testing Your Patterns:** +1. Test on sample file paths. Online regex testers are helpful. +2. Remember the escaping rules for JSON vs. YAML. +3. Start simple and build complexity. + +:::info Error Handling +When a mode attempts to edit a file that doesn't match its `fileRegex` pattern, you'll see a `FileRestrictionError` that includes: +- The mode name +- The allowed file pattern +- The description (if provided) +- The attempted file path +- The tool that was blocked + +This information helps you understand why your operation was blocked and what file types are allowed for the current mode. +::: + +--- + +## Additional Features + +### Built-in Mode Customization +When exporting built-in modes (like Code, Architect, Ask, Debug), any customizations you've made are included in the export. This allows you to share your personalized versions of built-in modes with others. + +### Mode Deletion and Rules +When deleting a mode through the UI, Roo Code will prompt you about deleting the associated rules folder, showing the exact path before deletion. This helps prevent accidental loss of custom instructions. + +### Global Rules Directory +In addition to mode-specific rules directories, there's also a generic `.roo/rules/` directory (without mode suffix) that can be used for shared rules across all modes. + +### Troubleshooting + +**Common Issues:** +- **Mode not appearing:** After creating or importing a mode, you may need to reload the VS Code window for it to appear in the mode selector. +- **Invalid regex patterns:** If your `fileRegex` pattern is invalid, you'll receive an error message. Test your patterns using online regex testers before applying them. +- **Precedence confusion:** Remember that project modes completely override global modes with the same slug - no properties are merged. + diff --git a/apps/docs/docs/features/diagnostics-integration.md b/apps/docs/docs/features/diagnostics-integration.md new file mode 100644 index 00000000000..ece66492470 --- /dev/null +++ b/apps/docs/docs/features/diagnostics-integration.md @@ -0,0 +1,183 @@ +--- +description: Leverage Roo Code's integration with VSCode's Problems panel to automatically detect, understand, and fix code errors, warnings, and linting issues. +keywords: + - diagnostics integration + - error detection + - problems panel + - code fixes + - linting + - language server + - automatic error fixing +--- + +# Diagnostics Integration + +Roo Code provides intelligent integration with VSCode's Problems panel, allowing the AI assistant to understand and help fix code errors, warnings, and other issues detected by language servers, linters, and other diagnostic providers. + +--- + +## Overview + +The diagnostics feature seamlessly integrates with VSCode's diagnostic system to provide context-aware assistance for code issues. When you make edits or encounter problems in your code, Roo Code can automatically detect and help resolve them. + +### Key Capabilities + +- **Automatic Error Detection**: Captures new errors introduced during code edits +- **Context-Aware Fixes**: Provides targeted fixes based on diagnostic information +- **Workspace Problems Mention**: Access all workspace diagnostics through a simple mention +- **Smart Filtering**: Uses predefined severity levels for different contexts + +--- + +## Key Features + +### 1. Automatic Error Detection + +When Roo Code makes edits to files, it automatically: + +- Captures diagnostics before editing +- Waits for diagnostics to update after editing +- Detects new problems introduced by the changes +- Only reports new errors (not pre-existing ones) + +This ensures you're immediately aware of any issues introduced by code changes, allowing for quick resolution. + +### 2. Workspace Problems Mention + +Users can include `@problems` in their messages to: + +- Get a complete list of workspace errors and warnings +- Provide context for debugging tasks +- Request fixes for specific issues + +Example usage: + +``` +@problems Fix all TypeScript errors in my project +``` + +For more details on using `@problems`, see [Context Mentions](/basic-usage/context-mentions#problems-mention). + +### 3. Code Actions Integration + +When diagnostics exist at a cursor position: + +- "Fix with Roo Code" action appears in quick fix menu +- Includes diagnostic details in the fix request +- Provides targeted solutions based on error context + +Learn more about this integration in [Code Actions](/features/code-actions#context-aware-actions). + +### 4. Smart Severity Filtering + +Different features use different severity filters to provide the most relevant information: + +- **Workspace Problems mention**: Shows errors and warnings +- **Automatic detection**: Shows only errors (to avoid distraction) +- **Context-Aware**: Different features use different hardcoded severity filters + +--- + +## Severity Levels + +The diagnostics system recognizes four severity levels from VSCode: + +| Level | Value | Description | Workspace Problems | Auto-detection | +| ----------- | ----- | --------------------------------------------------- | ------------------ | --------------- | +| Error | 0 | Syntax errors, type errors, breaking issues | ✅ Included | ✅ Included | +| Warning | 1 | Code quality issues, deprecations, style violations | ✅ Included | ❌ Not included | +| Information | 2 | Suggestions, hints, informational messages | ❌ Not included | ❌ Not included | +| Hint | 3 | Minor suggestions, refactoring opportunities | ❌ Not included | ❌ Not included | + +### Why Different Filters? + +- **Workspace Problems (`@problems`)**: Includes both errors and warnings to give you a complete picture of code health when explicitly requested +- **Automatic Detection**: Only includes errors to avoid interrupting your workflow with non-critical issues + +--- + +## Using Diagnostics Effectively + +### For Debugging Sessions + +When starting a debugging session, include `@problems` to give Roo Code full context: + +``` +@problems Help me debug why my application is crashing +``` + +### For Code Reviews + +Use diagnostics to ensure code quality: + +``` +@problems Review my code and fix any linting issues +``` + +### For Refactoring + +Let diagnostics guide safe refactoring: + +``` +I want to refactor this function. @problems shows current issues to address. +``` + +--- + +## Integration with Other Features + +### Code Actions + +Diagnostics power the context-aware [Code Actions](/features/code-actions) that appear in VSCode's lightbulb menu. When errors are present, you'll see "Fix Code" options that include the specific diagnostic information. + +### Context Mentions + +The [`@problems` mention](/basic-usage/context-mentions#problems-mention) provides a convenient way to include all workspace diagnostics in your conversation without manually copying error messages. + +### Automatic Error Reporting + +When Roo Code edits files, any new errors introduced are automatically reported in the response, helping maintain code quality throughout the editing process. + +--- + +## Best Practices + +1. **Use `@problems` for Context**: When debugging, always include `@problems` to give Roo Code full visibility into current issues + +2. **Address Errors First**: Focus on fixing errors before warnings, as errors typically prevent code from running + +3. **Leverage Code Actions**: Use the quick fix menu for targeted fixes to specific diagnostics + +4. **Monitor Auto-Detection**: Pay attention to new errors reported after edits to catch issues early + +5. **Combine with Other Tools**: Use diagnostics alongside other Roo Code features like codebase search and file mentions for comprehensive problem-solving + +--- + +## Troubleshooting + +### Diagnostics Not Appearing + +- Ensure your language server or linter is properly configured and running +- Check that the file type is supported by your diagnostic providers +- Verify that VSCode's Problems panel shows the issues + +### `@problems` Shows Nothing + +- Confirm there are actually problems in the Problems panel +- Check that you're in the correct workspace +- Some diagnostic providers may take time to initialize + +### Auto-Detection Missing Errors + +- Only new errors (introduced by edits) are reported +- Pre-existing errors won't be shown in auto-detection +- Use `@problems` to see all current issues + +--- + +## Related Features + +- [Context Mentions](/basic-usage/context-mentions) - Learn about all mention types including `@problems` +- [Code Actions](/features/code-actions) - Discover how diagnostics integrate with quick fixes +- [Codebase Search](/features/codebase-indexing) - Find code related to specific errors diff --git a/apps/docs/docs/features/enhance-prompt.md b/apps/docs/docs/features/enhance-prompt.md new file mode 100644 index 00000000000..842d1d30a42 --- /dev/null +++ b/apps/docs/docs/features/enhance-prompt.md @@ -0,0 +1,149 @@ +--- +description: Improve your AI interactions with Roo Code's Enhance Prompt feature. Automatically refine prompts for clarity, context, and better results with one click. +keywords: + - enhance prompt + - prompt optimization + - AI prompts + - prompt engineering + - chat enhancement + - prompt refinement + - wand icon +--- + +# Enhance Prompt + +The "Enhance Prompt" feature in Roo Code helps you improve the quality and effectiveness of your prompts before sending them to the AI model. By clicking the wand icon in the chat input, you can automatically refine your initial request, making it clearer, more specific, and more likely to produce the desired results. + +--- + +## Why Use Enhance Prompt? + +- **Improved Clarity:** Roo Code can rephrase your prompt to make it more understandable for the AI model. +- **Added Context:** The enhancement process can add relevant context to your prompt, such as the current file path or selected code. +- **Better Instructions:** Roo Code can add instructions to guide the AI towards a more helpful response (e.g., requesting specific formatting or a particular level of detail). +- **Reduced Ambiguity:** Enhance Prompt helps to eliminate ambiguity and ensure that Roo Code understands your intent. +- **Consistency**: Roo will consistently format prompts the same way to the AI. +- **Context-Aware Suggestions:** When enabled, uses your recent conversation history to generate more relevant and accurate enhancements. + +--- + +## How to Use Enhance Prompt + +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. +2. **Click the Wand Icon:** Instead of pressing Enter, click the wand icon located in the top right corner of the chat input box. While Roo processes your enhancement request, the wand icon will spin to indicate it's working. +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. Changed your mind? You can undo the enhancement using Ctrl+Z (Cmd+Z on Mac) to restore your original prompt. +4. **Send the Enhanced Prompt:** Press Enter or click the Send icon () to send the enhanced prompt to Roo Code. + +--- + +## Special Behaviors + +### Empty Prompt Enhancement + +If you click the enhance button with an empty prompt, Roo will show you a helpful message explaining how the feature works. This is a great way to learn about the enhancement feature if you're new to it. + +### Message Queueing Support + +The enhance button remains enabled even when message sending is disabled. This allows you to enhance prompts that will be queued for later sending. + +--- + +## Customizing the Enhancement Process + +The "Enhance Prompt" feature uses a customizable prompt template. You can modify this template to tailor the enhancement process to your specific needs. + +### Accessing Prompts Settings + +1. **Open Settings:** Click the gear icon () in the Roo Code panel or use the settings command. +2. **Navigate to Prompts:** Go to the "Prompts" tab in the settings. +3. **Select "ENHANCE":** From the dropdown menu, select "ENHANCE" to view and edit the enhancement prompt. + +### Editing the Enhancement Prompt + +The default enhancement prompt template is: + +``` +Generate an enhanced version of this prompt (reply with only the enhanced prompt - no conversation, explanations, lead-in, bullet points, placeholders, or surrounding quotes): + +${userInput} +``` + +The `${userInput}` placeholder will be replaced with your original prompt. You can modify this template to fit your needs and the model's prompt format. + +### Testing Your Custom Prompt + +The Prompts settings include a test area where you can preview how your custom enhancement prompt works: + +1. After editing your enhancement prompt, look for the "Test Enhancement" section +2. Enter a sample prompt to test +3. Click "Test" to see how your custom prompt would enhance it +4. Adjust your enhancement prompt as needed based on the results + +--- + +## API Configuration + +The API configuration used for Enhance Prompt is, by default, the same one that is selected for Roo Code tasks, but it can be changed: + +1. **Open Settings:** Navigate to Roo Code settings +2. **Go to Prompts Tab:** Select the "Prompts" tab +3. **Select "ENHANCE":** Choose "ENHANCE" from the dropdown +4. **Configure API:** You'll see an "API Configuration" dropdown where you can choose an existing configuration. Future Enhance Prompt requests will be sent to that configured provider/model. + +--- + +## Context-Aware Enhancement + +The Enhance Prompt feature can now use your conversation history to generate more relevant suggestions. This helps reduce hallucinations and provides more accurate enhancements based on what you've been working on. + +### How It Works + +When enabled, the enhancement process includes your last 10 messages from the current conversation as context. This allows the AI to: + +- Understand what you've been working on +- Maintain consistency with previous discussions +- Avoid suggesting unrelated or incorrect enhancements +- Provide more targeted and useful prompt improvements + +### Enabling Task History Context + +To enable or disable the use of conversation history in prompt enhancement: + +1. **Open Settings:** Navigate to Roo Code settings +2. **Go to Prompts Tab:** Select the "Prompts" tab +3. **Select "ENHANCE":** Choose "ENHANCE" from the dropdown +4. **Toggle History Option:** Check or uncheck "Include task history in enhancement" for better context + +When disabled, the enhancement will only consider your current prompt without any conversation context. + +--- + +## Visual Feedback and UI Elements + +### Button Appearance + +- The wand icon appears semi-transparent (60% opacity) by default +- Becomes fully opaque (100%) when you hover over it +- Located in the top-right corner of the chat input box +- Has a focus ring for keyboard accessibility + +### Loading State + +- While processing your enhancement request, the wand icon spins +- This provides clear visual feedback that Roo is working on your prompt + +### Tooltip + +- Hovering over the button shows: "Enhance prompt with additional context" +- Helps new users understand the button's purpose + +--- + +## Limitations and Best Practices + +- **Experimental Feature:** Prompt enhancement is an experimental feature. The quality of the enhanced prompt may vary depending on the complexity of your request and the capabilities of the underlying model. +- **Review Carefully:** Always review the enhanced prompt before sending it. Roo Code may make changes that don't align with your intentions. +- **Iterative Process:** You can use the "Enhance Prompt" feature multiple times to iteratively refine your prompt. +- **Not a Replacement for Clear Instructions:** While "Enhance Prompt" can help, it's still important to write clear and specific prompts from the start. + +By using the "Enhance Prompt" feature, you can improve the quality of your interactions with Roo Code and get more accurate and helpful responses. diff --git a/apps/docs/docs/features/experimental/background-editing.md b/apps/docs/docs/features/experimental/background-editing.md new file mode 100644 index 00000000000..468401802e0 --- /dev/null +++ b/apps/docs/docs/features/experimental/background-editing.md @@ -0,0 +1,138 @@ +--- +description: Learn about the experimental Background Editing setting that allows uninterrupted coding while Roo Code makes file edits in the background. +keywords: + - experimental features + - editor focus + - diff views + - background editing + - workflow optimization + - uninterrupted coding +--- + +# Background Editing + +Work without interruption while Roo Code edits files in the background—no more losing focus from automatic diff views. + +:::warning Experimental Feature +This is an experimental feature that changes how file edits are displayed. While it can significantly improve workflow, you'll need to manually review changes through source control or file history. +::: + +--- + +## Overview + +The "Background Editing" setting is an experimental feature that disables automatic diff view displays when Roo Code edits files. Instead of switching your editor focus to show diffs, Roo works silently in the background, allowing you to continue coding without interruption. This feature affects all file editing operations including write, apply diff, search/replace, insert content, and multi-file apply diff tools. + +### Key Benefits + +- **Uninterrupted Focus**: Stay in your current file while Roo makes changes +- **Smoother Workflow**: No context switching between files +- **Background Processing**: File edits happen silently +- **Reduced Distractions**: Maintain your coding flow +- **Performance**: Faster file operations without UI updates +- **Batch Operations**: Ideal for large refactoring or multiple file updates + +### Trade-offs + +- **No Visual Confirmation**: You won't see diffs as changes are made +- **Manual Review Required**: Check changes through Git or file history +- **Less Immediate Feedback**: Changes aren't immediately visible +- **Silent Changes**: Files change without visual notification - check Git status regularly +- **Limited Environment Context**: Roo won't see recently edited files as open tabs in its environment details since they're not visually opened + +--- + +## Enabling the Feature + +To enable Background Editing: + +1. Open Roo Code settings (gear icon in the top right) +2. Navigate to the "Experimental" tab +3. Find "Background editing" in the list +4. Toggle the setting to enable it + +Background editing setting in Roo Code experimental features + +--- + +## How It Works + +### Default Behavior (Feature Disabled) + +Without this feature, when Roo edits a file: + +1. The file opens in your editor +2. A diff view appears showing changes +3. Your focus shifts to the modified file +4. You review and potentially adjust changes + +### With Feature Enabled + +When enabled, Roo's file edits: + +1. Happen silently in the background +2. Don't open new editor tabs +3. Don't show diff views +4. Don't interrupt your current work +5. Still open files in memory for diagnostic detection (not visible) + +### What Still Happens + +Even with the feature enabled: + +- Files are still modified on disk +- Changes appear in source control +- File watchers and build tools detect changes +- Roo's chat shows what files were edited +- Error detection and diagnostics continue to work normally +- Files are opened in memory for diagnostic purposes (not visible in editor) +- Write delays for diagnostic detection are still respected + +--- + +## Best Use Cases + +This feature is particularly beneficial for: + +- **Large Refactoring Operations**: When Roo needs to update many files +- **Batch File Updates**: Making similar changes across multiple files +- **Performance-Sensitive Tasks**: When UI updates would slow down operations +- **Focused Coding Sessions**: When you want to avoid context switches +- **Automated Workflows**: Running multiple file operations in sequence + +--- + +## Best Practices + +When using this feature: + +1. **Use Version Control**: Regularly check Git status to track changes +2. **Review Periodically**: Don't let too many changes accumulate without review +3. **Enable Selectively**: Consider enabling for specific task types +4. **Monitor Chat**: Pay attention to Roo's messages about file modifications +5. **Check Diagnostics**: Ensure your editor's problems panel stays visible + +--- + +## FAQ + +**Q: Can I still see what files Roo edited?** +A: Yes, Roo's chat messages list all modified files, and changes appear in source control. + +**Q: What if I need to see a specific change immediately?** +A: You can manually open the file and use source control to view the diff. + +**Q: Does this affect Roo's ability to edit files?** +A: No, Roo can still make all the same edits; only the display behavior changes. All file editing tools (write, apply diff, search/replace, insert content, and multi-file apply diff) respect this setting. + +**Q: Can I enable this for specific projects only?** +A: Currently, this is a global setting that affects all projects. + +**Q: What happens to approval dialogs?** +A: File edit approvals still appear if you haven't auto-approved them; only the diff display is suppressed. + +**Q: Do diagnostics and error detection still work?** +A: Yes, files are opened in memory for diagnostic detection, so error checking continues to function normally even though files aren't displayed. + +**Q: How does this feature appear in the settings?** +A: In the Experimental tab, it's labeled as "Background editing" with a description about preventing editor focus disruption. diff --git a/apps/docs/docs/features/experimental/concurrent-file-edits.md b/apps/docs/docs/features/experimental/concurrent-file-edits.md new file mode 100644 index 00000000000..375be144287 --- /dev/null +++ b/apps/docs/docs/features/experimental/concurrent-file-edits.md @@ -0,0 +1,140 @@ +--- +sidebar_label: "Multi-File Edits" +description: "Speed up refactoring and multi-file changes with Roo Code's experimental Concurrent File Edits feature. Edit multiple files in a single operation with batch approval." +keywords: + - concurrent file edits + - multi-file edits + - batch editing + - refactoring + - "Roo Code experimental features" + - apply_diff + - "batch approval" +--- + +# Concurrent File Edits (AKA Multi-File Edits) + +Edit multiple files in a single operation, dramatically speeding up refactoring and multi-file changes. + +--- + +## What It Does + +Batch diff approval interface showing multiple file changes + +Concurrent File Edits allows Roo to modify multiple files in your workspace within a single request. Instead of approving each file edit individually, you review and approve all changes at once through a unified batch approval interface. + +--- + +## Why Use It + +**Traditional approach**: Sequential file edits requiring individual approvals + +- Edit file A → Approve +- Edit file B → Approve +- Edit file C → Approve + +**With Concurrent File Edits**: All changes presented together + +- Review all proposed changes across files A, B, and C +- Approve once to apply all changes + +This reduces interruptions and speeds up complex tasks like: + +- Refactoring functions across multiple files +- Updating configuration values throughout your codebase +- Renaming components and their references +- Applying consistent formatting or style changes + +--- + +## How to Enable + +:::info Experimental Feature +Multi-File Edits is an experimental feature and must be enabled in settings. + +1. Open Roo Code settings (click the gear icon in Roo Code) +2. Navigate to **Roo Code > Experimental Settings** +3. Enable the **Enable multi-file edits** option + +Enable multi-file edits toggle in experimental settings +::: + +--- + +## Using the Feature + +When enabled, Roo automatically uses concurrent edits when appropriate. You'll see a "Batch Diff Approval" interface showing: + +- All files to be modified +- Proposed changes for each file +- Options to approve all changes or review individually + +### Example Workflow + +1. Ask Roo to "Update all API endpoints to use the new authentication method" +2. Roo analyzes your codebase and identifies all affected files +3. You receive a single batch approval request showing changes across: + - `src/api/users.js` + - `src/api/products.js` + - `src/api/orders.js` + - `src/middleware/auth.js` +4. Review all changes in the unified diff view +5. Approve to apply all changes simultaneously + +--- + +## Technical Details + +This feature leverages the [`apply_diff`](/advanced-usage/available-tools/apply-diff#experimental-multi-file-edits-multi_file_apply_diff) tool's experimental multi-file capabilities. For detailed information about the implementation, XML format, and how the `MultiFileSearchReplaceDiffStrategy` works, see the [apply_diff documentation](/advanced-usage/available-tools/apply-diff#experimental-multi-file-edits-multi_file_apply_diff). + +--- + +## Best Practices + +### When to Enable + +- Using capable AI models (Claude 3.5 Sonnet, GPT-4, etc.) +- Comfortable reviewing multiple changes at once + +### When to Keep Disabled + +- Working with less capable models that might struggle with complex multi-file contexts +- Prefer reviewing each change individually + +--- + +## Limitations + +- **Experimental**: This feature is still being refined and may have edge cases +- **Model dependent**: Works best with more capable AI models +- **Token usage**: Initial requests may use more tokens due to larger context +- **Complexity**: Very large batch operations might be harder to review + +--- + +## Troubleshooting + +### Changes Not Batching + +- Verify the experimental flag is enabled in settings +- Check that your model supports multi-file operations +- Ensure files aren't restricted by `.rooignore` + +### Approval UI Not Appearing + +- Update to the latest version of Roo Code +- Check VS Code's output panel for errors +- Try disabling and re-enabling the feature + +### Performance Issues + +- For very large batches, consider breaking the task into smaller chunks +- Monitor token usage if working with limited API quotas + +--- + +## See Also + +- [`apply_diff` Tool Documentation](/advanced-usage/available-tools/apply-diff) - Detailed technical information +- [Experimental Features](/features/experimental/experimental-features) - Other experimental capabilities +- [`.rooignore` Configuration](/features/rooignore) - File access restrictions diff --git a/apps/docs/docs/features/experimental/custom-tools.md b/apps/docs/docs/features/experimental/custom-tools.md new file mode 100644 index 00000000000..ee7b222d5ad --- /dev/null +++ b/apps/docs/docs/features/experimental/custom-tools.md @@ -0,0 +1,188 @@ +--- +description: Define TypeScript/JavaScript tools that extend Roo's capabilities beyond built-in tools, with npm dependency support and per-tool environment variables. +keywords: + - experimental features + - custom tools + - TypeScript tools + - JavaScript tools + - tool extension + - defineCustomTool + - workflow automation + - npm dependencies + - environment variables +--- + +# Custom Tools + +Define TypeScript or JavaScript tools that Roo can call like built-in tools—standardize team workflows instead of re-prompting the same steps every task. + +:::warning Experimental Feature +Custom tools is an experimental feature. Custom tools are **automatically approved** when enabled—Roo won't ask for permission before running them. Only enable this feature if you trust your tool code. +::: + +--- + +## What it does + +Custom tools let you codify project-specific actions into TypeScript/JavaScript files that Roo calls like [`read_file()`](/basic-usage/how-tools-work) or [`execute_command()`](/basic-usage/how-tools-work). Ship tool schemas alongside your repo so teammates don't need to keep re-explaining the same workflow steps. Tools are validated with Zod and automatically transpiled from TypeScript. + +--- + +## How to create a tool + +Tools live in `.roo/tools/` (project-specific) or `~/.roo/tools/` (global) as `.ts` or `.js` files. Tools from later directories can override earlier ones. + +#### Basic structure + +```typescript +import { parametersSchema as z, defineCustomTool } from "@roo-code/types" + +export default defineCustomTool({ + name: "tool_name", + description: "What the tool does (shown to AI)", + parameters: z.object({ + param1: z.string().describe("Parameter description"), + param2: z.number().describe("Another parameter"), + }), + async execute(args, context) { + // args are type-safe and validated + // context provides: mode, task + return "Result string shown to AI" + }, +}) +``` + +#### What you define + +- **`name`**: Tool name Roo sees in its available tools list +- **`description`**: Shown to the AI so it knows when to call the tool +- **`parameters`**: Zod schema converted to JSON Schema for validation +- **`execute`**: Async function returning a string result to Roo + +Tools are dynamically loaded and transpiled with esbuild. Automatic reload on file changes isn't reliable—use the **Refresh Custom Tools** command to pick up changes immediately. + +--- + +## Enabling the feature + +1. Open Roo Code settings (gear icon in top right) +2. Go to the "Experimental" tab +3. Toggle "Enable custom tools" + +Enable custom tools toggle in experimental settings + +**Critical:** When enabled, custom tools are **auto-approved**—Roo runs them without asking. Disable if you don't trust the tool code. + +--- + +## Tool directories + +- **`.roo/tools/`** in your workspace: project-specific tools shared with your team +- **`~/.roo/tools/`** in your home folder: personal tools across all projects + +Tools from both directories are loaded. Tools with the same name in `.roo/tools/` override those in `~/.roo/tools/`. + +--- + +## Using npm Dependencies + +Custom tools can use npm packages. Install dependencies in the same folder as your tool, and imports will resolve normally. + +```bash +# From your tool directory +cd .roo/tools/ +npm init -y +npm install axios lodash +``` + +Then import in your tool: + +```typescript +import { parametersSchema as z, defineCustomTool } from "@roo-code/types" +import axios from "axios" + +export default defineCustomTool({ + name: "fetch_api", + description: "Fetch data from an API endpoint", + parameters: z.object({ + url: z.string().describe("API endpoint URL"), + }), + async execute({ url }) { + const response = await axios.get(url) + return JSON.stringify(response.data, null, 2) + }, +}) +``` + +--- + +## Per-Tool Environment Variables + +Roo copies `.env` and `.env.*` files from your tool directory into the tool's cache folder so your tool can load them at runtime. **Roo does not automatically inject these variables into `process.env`**—your tool must load them itself. + +**Setup:** + +1. Create a `.env` file next to your tool: + + ``` + .roo/tools/ + ├── my-tool.ts + ├── .env # Copied to cache dir at load time + └── package.json + ``` + +2. Add your secrets: + + ```bash + # .roo/tools/.env + SLACK_WEBHOOK_URL=https://hooks.slack.com/services/XXX + API_SECRET=your-secret-key + ``` + +3. Load the `.env` in your tool using `dotenv` and `__dirname`: + + ```typescript + import { parametersSchema as z, defineCustomTool } from "@roo-code/types" + import dotenv from "dotenv" + import path from "path" + + // Load .env from the tool's cache directory + dotenv.config({ path: path.join(__dirname, ".env") }) + + export default defineCustomTool({ + name: "notify_slack", + description: "Send a notification to Slack", + parameters: z.object({ + message: z.string().describe("Message to send"), + }), + async execute({ message }) { + const webhookUrl = process.env.SLACK_WEBHOOK_URL + if (!webhookUrl) { + return "Error: SLACK_WEBHOOK_URL not set in .env" + } + + const response = await fetch(webhookUrl, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ text: message }), + }) + + return response.ok ? "Message sent" : `Failed: ${response.status}` + }, + }) + ``` + +**Why `__dirname`?** Roo copies your `.env` files into a cache directory alongside the transpiled tool. Using `__dirname` ensures your tool finds the `.env` in the correct location regardless of where the tool was originally defined. + +**Security:** Ensure your `.env` file is ignored by version control to keep secrets safe. + +--- + +## Limits + +- **No approval prompts**: Tools are auto-approved when the feature is enabled—security trade-off for convenience +- **String-only results**: Tools must return strings (Roo's protocol constraint) +- **No interactive input**: Tools can't prompt the user mid-execution +- **Cache invalidation**: Tool updates may require reloading the window + +**vs. MCP:** [MCP](/features/mcp/overview) is for external services (search, APIs). Custom tools are for in-repo logic you control directly. MCP is more extensible; custom tools are lighter weight for project-specific actions. diff --git a/apps/docs/docs/features/experimental/experimental-features.md b/apps/docs/docs/features/experimental/experimental-features.md new file mode 100644 index 00000000000..943e68901d6 --- /dev/null +++ b/apps/docs/docs/features/experimental/experimental-features.md @@ -0,0 +1,47 @@ +--- +description: "Explore Roo Code's experimental features including concurrent file edits and power steering. Enable advanced capabilities that are still under development." +keywords: + - experimental features + - "Roo Code beta" + - "advanced features" + - "concurrent file edits" + - "power steering" + - "feature flags" +--- + +# Experimental Features + +Roo Code includes experimental features that are still under development. These features may be unstable, change significantly, or be removed in future versions. Use them with caution and be aware that they may not work as expected. + +**Warning:** Experimental features may have unexpected behavior, including potential data loss or security vulnerabilities. Enable them at your own risk. + +--- + +## Enabling Experimental Features + +To enable or disable experimental features: + +1. Open the Roo Code settings (`` icon in the top right corner). +2. Go to the "Advanced Settings" section. +3. Find the "Experimental Features" section. + +--- + +## Current Experimental Features + +The following experimental features are currently available: + +- [Custom Tools](/features/experimental/custom-tools) - Define TypeScript/JavaScript tools that Roo can call like built-in tools +- [Concurrent File Edits](/features/experimental/concurrent-file-edits) - Edit multiple files in a single operation +- [Power Steering](/features/experimental/power-steering) - Enhanced consistency in AI responses +- [Background Editing](/features/experimental/background-editing) - Work uninterrupted while Roo edits files in the background +- [Image Generation](/features/image-generation) - Generate images from text prompts and save them to your workspace +- [Run Slash Command](/advanced-usage/available-tools/run-slash-command) - Execute predefined slash commands for templated instructions and workflow automation + +--- + +## Providing Feedback + +If you encounter any issues with experimental features, or if you have suggestions for improvements, please report them on the [Roo Code GitHub Issues page](https://github.com/RooCodeInc/Roo-Code/issues). + +Your feedback is valuable and helps us improve Roo Code! diff --git a/apps/docs/docs/features/experimental/power-steering.md b/apps/docs/docs/features/experimental/power-steering.md new file mode 100644 index 00000000000..c4ce5065526 --- /dev/null +++ b/apps/docs/docs/features/experimental/power-steering.md @@ -0,0 +1,72 @@ +--- +sidebar_label: "Power Steering" +description: "Improve Roo Code's response consistency with Power Steering. This experimental feature reinforces mode definitions and custom instructions for better adherence to assigned roles." +keywords: + - power steering + - LLM consistency + - mode adherence + - custom instructions + - experimental feature + - token optimization + - role definition +--- + +import Codicon from '@site/src/components/Codicon'; + +# Power Steering (Experimental Feature) + +The "Power Steering" experimental feature (`POWER_STEERING`) is designed to enhance the consistency of Roo Code's responses by more frequently reminding the underlying Large Language Model (LLM) about its current mode definition and any custom instructions. + +--- + +## How It Works + +When Power Steering is enabled, Roo Code constantly reinforces the LLM's understanding of its assigned role (e.g., "You are a helpful coding assistant") and any specific guidelines provided by the user (e.g., "Always provide code examples in Python"). + +This is achieved by explicitly including the `modeDetails.roleDefinition` and `modeDetails.customInstructions` within the information sent to the LLM with each interaction. + +**Goal:** +The primary goal is to ensure the LLM adheres more strictly to its defined persona and follows user-specific instructions more consistently. If you find Roo deviating from its role or overlooking custom rules, Power Steering can help maintain its focus. + +**Trade-off:** +These frequent reminders consume additional tokens in each message sent to the LLM. This means: + +- Increased token usage per message. +- Potentially higher operational costs. +- The context window may be filled more quickly. + +It's a balance between stricter adherence to instructions and resource consumption. + +**Default Status:** Disabled. + +--- + +## Technical Details + +- **Experiment ID:** `powerSteering` +- **Mechanism:** + - The feature's status is checked by the `getEnvironmentDetails` function. + - If enabled, the current mode's `roleDefinition` and `customInstructions` are added to the details sent to the LLM. + - These details are wrapped in `` tags and become part of the context for each LLM interaction. +- **Impact:** By frequently including the role definition and custom instructions, the LLM is steered to generate responses more aligned with these parameters. + +--- + +## Enabling This Feature + +Power Steering is managed within the "Experimental Features" section of Roo Code's Advanced Settings. + +1. Open Roo Code settings ( icon in the top right corner). +2. Navigate to "Advanced Settings". +3. Locate the "Experimental Features" area. +4. Toggle the "Power Steering" option. +5. Save your changes. + Settings for Intelligent Context Condensation and Power Steering + +For general information on experimental features, see [Experimental Features Overview](/features/experimental/experimental-features). + +--- + +## Feedback + +Please report any issues or suggestions regarding this feature on the [Roo Code GitHub Issues page](https://github.com/RooCodeInc/Roo-Code/issues). Your feedback is crucial for improving Roo Code. diff --git a/apps/docs/docs/features/fast-edits.md b/apps/docs/docs/features/fast-edits.md new file mode 100644 index 00000000000..29da4024788 --- /dev/null +++ b/apps/docs/docs/features/fast-edits.md @@ -0,0 +1,55 @@ +--- +description: Discover how Roo Code's Fast Edits feature uses diffs for faster, safer file modifications. Learn about match precision and configuration options. +keywords: + - fast edits + - diff editing + - file modifications + - apply diff + - match precision + - editing efficiency + - truncation prevention +--- + +# Diff/Fast Edits + +:::info Default Setting +Fast Edits (using the "Enable editing through diffs" setting) is enabled by default in Roo Code. You typically don't need to change these settings unless you encounter specific issues or want to experiment with different diff strategies. +::: + +Roo Code offers an advanced setting to change how it edits files, using diffs (differences) instead of rewriting entire files. Enabling this feature provides significant benefits. + +:::note Per-Provider Setting +Diff editing configuration is set per [API Configuration Profile](/features/api-configuration-profiles), allowing you to customize editing behavior for different providers and models. +::: + +--- + +## Enable Editing Through Diffs + +Open the Roo Code pane settings by clicking the gear icon . The `Providers` section will be visible. Select the specific [API Configuration Profile](/features/api-configuration-profiles) you want to configure. + +When **Enable editing through diffs** is checked: + + Roo Code settings showing Enable editing through diffs + +1. **Faster File Editing**: Roo modifies files more quickly by applying only the necessary changes. +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. + +:::note Disabling Fast Edits +If you uncheck **Enable editing through diffs**, Roo will revert to writing the entire file content for every edit using the [`write_to_file`](/advanced-usage/available-tools/write-to-file) tool, instead of applying targeted changes with [`apply_diff`](/advanced-usage/available-tools/apply-diff). This full-write approach is generally slower for modifying existing files and leads to higher token usage. +::: + +--- + +## Match Precision + +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. + + Roo Code settings showing Enable editing through diffs checkbox and Match precision slider + +- **100% (Default)**: Requires an exact match. This is the safest option, minimizing the risk of incorrect changes. +- **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. + +**Use values below 100% with extreme caution.** Lower precision might be necessary occasionally, but always review the proposed changes carefully. + +Internally, this setting adjusts a `fuzzyMatchThreshold` used with algorithms like Levenshtein distance to compare code similarity. diff --git a/apps/docs/docs/features/image-generation.md b/apps/docs/docs/features/image-generation.md new file mode 100644 index 00000000000..5f616179421 --- /dev/null +++ b/apps/docs/docs/features/image-generation.md @@ -0,0 +1,148 @@ +--- +description: Generate new images from text prompts or edit existing images in Roo Code using OpenRouter API. Transform, enhance, and save AI-processed images to your workspace with preview support. +keywords: + - image generation + - image editing + - text to image + - image transformation + - OpenRouter + - AI images + - experimental feature + - image creation + - prompt to image + - watercolor + - upscaling + - style transfer +--- + +# Image Generation + +Generate new images from text prompts or edit existing images in your workspace. Save results to your project with preview in chat. This experimental feature requires an OpenRouter API key. + +:::warning Experimental Feature +Image Generation is an experimental feature that requires enabling in settings and configuring an OpenRouter API key. +::: + +--- + +## Key Features + +- Create new images from text prompts using natural language +- Edit and transform existing images in your workspace +- Saves to your workspace at a path you choose; appropriate extension (.png or .jpg) is auto-added if missing +- Shows a preview of the generated/edited image in the conversation +- Currently uses Gemini 2.5 Flash Image Preview models via OpenRouter +- Simple on/off toggle under Experimental settings + +--- + +## Use Cases + +### Image Generation + +**Before:** You had to copy prompts to an external site, download the result, then move it into your workspace. + +**With this feature:** Ask Roo to generate an image, approve, pick a save location, and continue editing with the image already in your project. + +### Image Editing + +**Before:** Export image, upload to external editor, make changes, download, import back to project. + +**With this feature:** Ask Roo to transform your existing image directly - it reads the file, applies your edits, and saves the result in your project. + +--- + +## How It Works + +When enabled, Roo sends your prompt (and optionally an existing image) to an image-capable model through OpenRouter. The generated or edited image returned by OpenRouter is saved to the path you specify inside your current workspace. Roo shows a preview in the chat and the file appears in your file explorer. + +--- + +## Requirements + +- OpenRouter account and API key +- Internet access +- An open, writable workspace folder + +--- + +## Configuration + +### 1. Enable Image Generation (Experimental) + +- **Purpose:** Turns the feature on so Roo can create images on request +- **Default:** Off +- **Location:** Settings > Experimental + +### 2. OpenRouter API Key + +- **Purpose:** Authorizes image generation requests +- **Default:** Empty (required) +- **Get your key:** [https://openrouter.ai/keys](https://openrouter.ai/keys) + +### 3. Image Generation Model + +- **Purpose:** Selects which model to use for generation +- **Default:** Gemini 2.5 Flash Image Preview +- **Available Models:** Currently limited to Gemini 2.5 Flash Image Preview and its free variant + +--- + +## Using Image Generation + +1. In chat, ask Roo to generate an image and describe what you want (subject, style, lighting, composition). +2. Confirm the action when prompted. Roo may ask you to choose a save path (for example: `images/sunset.png`). +3. Roo generates the image and saves it. If you don't include an extension, the appropriate extension (.png or .jpg) is added based on the output format. +4. See the image preview in the chat and locate the file in your workspace. + +--- + +## Editing Existing Images + +Roo can also transform and edit existing images in your workspace: + +1. Ask Roo to edit an image, describing the transformation you want +2. Specify both the input image path and where to save the result +3. Roo will apply your requested edits to the existing image + +**Supported Input Formats**: PNG, JPG, JPEG, GIF, WEBP + +**Example Requests**: + +- "Transform `photos/portrait.jpg` into a watercolor painting and save as `art/watercolor-portrait.png`" +- "Upscale and enhance `images/logo.png` to higher resolution" +- "Apply a vintage filter to `screenshots/app.png`" + +**Note**: Both the input image path and output path must be accessible (not blocked by `.rooignore`) + +--- + +## Tips for Better Results + +### Be Specific + +Include these elements in your prompts: + +- **Style:** artistic medium, art movement, or specific artist style +- **Mood:** emotional tone, atmosphere +- **Color palette:** specific colors or color schemes +- **Camera/lighting:** angle, perspective, lighting conditions +- **Aspect ratio:** dimensions or orientation + +--- + +## Limitations + +- Experimental feature; availability and model list are limited +- Currently limited to Gemini 2.5 Flash Image Preview models +- One image is produced per request +- Output formats supported: PNG or JPG +- Supported input formats for editing: PNG, JPG, JPEG, GIF, WEBP only +- Image paths must be accessible (not blocked by `.rooignore` restrictions) +- Usage may be subject to your OpenRouter plan limits and costs + +--- + +## Status + +This feature is experimental and may change or be removed in future versions. Provide feedback through [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues). diff --git a/apps/docs/docs/features/index.md b/apps/docs/docs/features/index.md new file mode 100644 index 00000000000..bf30e349841 --- /dev/null +++ b/apps/docs/docs/features/index.md @@ -0,0 +1,80 @@ +--- +description: "Explore all Roo Code features including AI-powered coding assistance, multi-file editing, codebase indexing, MCP integration, custom modes, and experimental capabilities." +keywords: + - Roo Code features + - AI coding assistant + - code editing + - developer tools + - VS Code extension + - MCP integration + - custom modes + - experimental features +sidebar_label: "Features Overview" +--- + +# Roo Code Features + +Discover the powerful features that make Roo Code your ultimate AI-powered coding assistant. From intelligent code editing to advanced integrations, Roo Code enhances your development workflow. + +## Core Features + +### Code Editing & Navigation + +- [**Fast Edits**](/features/fast-edits) - Lightning-fast code modifications with intelligent diff application +- [**Concurrent File Reads**](/features/concurrent-file-reads) - Read multiple files simultaneously for better context +- [**Code Actions**](/features/code-actions) - Quick fixes and refactoring suggestions +- [**Diagnostics Integration**](/features/diagnostics-integration) - Real-time error detection and resolution + +### AI Enhancements + +- [**Codebase Indexing**](/features/codebase-indexing) - Semantic search across your entire codebase +- [**Enhance Prompt**](/features/enhance-prompt) - Automatically improve your prompts for better results +- [**Suggested Responses**](/features/suggested-responses) - Context-aware follow-up suggestions +- [**Model Temperature**](/features/model-temperature) - Fine-tune AI creativity and consistency + +### Workflow Management + +- [**Task Todo List**](/features/task-todo-list) - Track progress on complex multi-step tasks +- [**Checkpoints**](/features/checkpoints) - Save and restore conversation states +- [**Boomerang Tasks**](/features/boomerang-tasks) - Reusable task templates +- [**Custom Modes**](/features/custom-modes) - Create specialized AI assistants for specific workflows + +### Configuration & Customization + +- [**API Configuration Profiles**](/features/api-configuration-profiles) - Manage multiple API configurations +- [**Custom Instructions**](/features/custom-instructions) - Personalize AI behavior +- [**Skills**](/features/skills) - Create reusable task-specific instruction packages +- [**Settings Management**](/features/settings-management) - Fine-tune Roo Code to your preferences +- [**.rooignore**](/features/rooignore) - Control file access and visibility + +### Integration Features + +- [**MCP (Model Context Protocol)**](/features/mcp/overview) - Connect to external tools and services +- [**Browser Use**](/features/browser-use) - Web automation and interaction capabilities +- [**Shell Integration**](/features/shell-integration) - Seamless terminal command execution +- [**Marketplace**](/features/marketplace) - Discover and share custom modes + +### Productivity Tools + +- [**Auto-Approving Actions**](/features/auto-approving-actions) - Streamline repetitive approvals +- [**Keyboard Shortcuts**](/features/keyboard-shortcuts) - Speed up common actions +- [**Intelligent Context Condensing**](/features/intelligent-context-condensing) - Optimize token usage + +## Experimental Features + +Push the boundaries with cutting-edge capabilities: + +- [**Custom Tools**](/features/experimental/custom-tools) - Define TypeScript/JavaScript tools that Roo can call +- [**Concurrent File Edits**](/features/experimental/concurrent-file-edits) - Edit multiple files in a single operation +- [**Power Steering**](/features/experimental/power-steering) - Enhanced consistency in AI responses +- [**More Experimental Features**](/features/experimental/experimental-features) - Explore features under development + +## Additional Resources + +- [**More Features**](/features/more-features) - Discover additional capabilities +- [**Tips & Tricks**](/tips-and-tricks) - Get the most out of Roo Code +- [**FAQ**](/faq) - Common questions answered + +--- + +Ready to explore? Start with our [Getting Started Guide](/getting-started/installing) or dive into any feature that interests you! diff --git a/apps/docs/docs/features/intelligent-context-condensing.mdx b/apps/docs/docs/features/intelligent-context-condensing.mdx new file mode 100644 index 00000000000..b8d83f93cb2 --- /dev/null +++ b/apps/docs/docs/features/intelligent-context-condensing.mdx @@ -0,0 +1,171 @@ +--- +description: Learn how Intelligent Context Condensing helps manage long conversations by summarizing earlier dialogue to prevent information loss when approaching context limits. +keywords: + - context condensing + - context window + - conversation management + - token optimization + - AI summarization +sidebar_label: 'Intelligent Context Condensing' +--- +import Codicon from '@site/src/components/Codicon'; + +# Intelligent Context Condensing + +The Intelligent Context Condensing feature helps manage long conversations by summarizing earlier parts of the dialogue. This prevents important information from being lost when the context window nears its limit. This feature is **enabled by default**. + +
+ +
+ +
+--- + +## How It Works + +As your conversation with Roo Code grows, it might approach the context window limit of the underlying AI model. When this happens, older messages would typically be removed to make space. Intelligent Context Condensing aims to prevent this abrupt loss by: + +1. **Summarizing:** Using an AI model, it condenses earlier parts of the conversation. +2. **Retaining Essentials:** The goal is to reduce the overall token count while keeping the key information from the summarized messages. +3. **Maintaining Flow:** This allows the AI to have a more coherent understanding of the entire conversation, even very long ones. +4. **Preserving First Message:** The first message containing slash commands or initial context is always preserved during condensing, ensuring critical initial instructions aren't lost. + +**Important Considerations:** +* **Summarization Impact:** While original messages are preserved if you use [Checkpoints](/features/checkpoints) to rewind, the summarized version is what's used in ongoing LLM calls to keep the context manageable. +* **Cost:** The AI call to perform the summarization incurs a cost. This cost is included in the context condensing metrics displayed in the UI. +* **First Message Protection:** The initial message with slash commands or setup instructions will never be condensed. + +--- + +## Configuration + +Intelligent Context Condensing is **enabled by default** and offers several configuration options: + +1. Open Roo Code settings ( icon in the top right corner of the Roo Code panel). +2. Navigate to the "Context" settings section for context-related options, or the "Prompt" settings section for the custom prompt. +3. Configure the available options: + - **Automatically trigger intelligent context condensing**: Enabled by default, this controls whether condensing happens automatically (found in "Context" settings) + - **Threshold to trigger intelligent context condensing**: A percentage slider (default 100%) that determines when condensing activates based on context window usage (found in "Context" settings) + - **API Configuration for Context Condensing**: Choose which API configuration to use for condensing operations (defaults to your current active configuration) (found in "Context" settings) + - **Custom Context Condensing Prompt**: Customize the system prompt used for context condensing operations (found in "Prompt" settings) + +Settings for Intelligent Context Condensing +*Intelligent Context Condensing configuration options: automatic triggering toggle, threshold slider, API configuration selection, and custom prompt customization.* +--- + +## Controlling and Understanding Context Condensing + +Roo Code provides several ways to control and understand the Intelligent Context Condensing feature: + +### Controlling Context Condensing +* **Automatic Threshold:** The threshold slider in "Context" settings allows you to define a percentage (e.g., 80%) of context window usage. Roo Code will attempt to condense the context automatically when the conversation reaches this level of capacity. +* **API Configuration:** Select which API configuration to use for context condensing operations. This allows you to use a different provider or model specifically for condensing if desired. +* **Custom Prompts:** Modify the system prompt used for condensing to better suit your workflow or to emphasize certain aspects of conversation summarization. +* **Manual Trigger:** A **Condense Context** button is available at the top of the task, positioned to the right of the context bar. This allows you to initiate the context condensing process at any time. + + Manual Condense Context button in expanded task view + *The Manual Condense Context button (highlighted with a yellow arrow) is easily accessible for manual control.* + +### Understanding Context Condensing Activity +* **Context Condensing Metrics:** When context condensing occurs, Roo Code displays: + * The context token counts before and after context condensing. + * The cost associated with the context condensing AI call. + * An expandable summary detailing what was condensed (this information is part of the `ContextCondenseRow` component visible in the chat history). + +Context condensed message in chat +*After context condensing, a message indicates the context has been condensed, showing token changes and cost.* + +* **Visual Indicators:** + * A progress indicator ("Condensing context...") is shown in the chat interface while context condensing is active. + +Condensing context progress indicator in chat +*The "Condensing context..." indicator appears in the chat during the process.* + + * The task header also displays the current context condensing status. + * The `ContextWindowProgress` bar offers a visual representation of token distribution, including current usage, space reserved for the AI's output, available space, and raw token numbers. +* **Interface Clarity:** The "Condense Context" button includes a tooltip explaining its function, available in all supported languages. + +--- + +## Tips for Effective Context Condensing + +### Customizing the Context Condensing Prompt + +You can customize the context reduction prompt to better suit your specific domain or use case. This is particularly useful if you find that the default condensing process loses important information specific to your workflow. + +To customize the prompt: +1. Go to Roo Code settings ( icon) +2. Navigate to the "Prompt" settings section +3. Find the "Custom Context Condensing Prompt" in the pulldown +4. Enter your custom prompt that instructs the AI on how to preserve specific types of information + +For example, if you're working on a complex debugging session, you might add instructions like: +- "Always preserve error messages and stack traces in full" +- "Maintain all variable names and their last known values" +- "Keep track of all attempted solutions and their outcomes" + +This customization ensures that the context condensing process retains the information most critical to your specific use case. + +--- + +## Automatic Error Recovery + +When Roo Code encounters context window limit errors, it now automatically recovers to keep your work flowing: + +### How Error Recovery Works + +1. **Error Detection**: Roo Code detects context window errors from multiple providers (OpenAI, Anthropic, Cerebras, and others) +2. **Automatic Truncation**: The system automatically reduces the context by 25% +3. **Retry Mechanism**: After truncation, Roo Code retries your request (up to 3 attempts) +4. **Seamless Continuation**: Your work continues without manual intervention + +This automatic recovery ensures that: +- You don't lose work due to context limit errors +- Long conversations can continue smoothly +- The system intelligently manages context without requiring manual restarts + +### When Recovery Triggers + +The automatic recovery activates when: +- The API returns a context window exceeded error +- The conversation approaches the maximum token limit +- Multiple providers report similar context-related errors + +This feature works alongside Intelligent Context Condensing to provide multiple layers of context management, ensuring your conversations can continue even in challenging scenarios. + +--- + +## Technical Implementation + +### Token Counting +Roo Code uses a sophisticated token counting system that: +- Employs native token counting endpoints when available (e.g., Anthropic's API) +- Falls back to tiktoken estimation if API calls fail +- Provides accurate counting for different content types: + - Text content: Uses word-based estimation with punctuation and newline overhead + - Image content: Uses a conservative estimate of 300 tokens per image + - System prompts: Includes additional overhead for structural elements + +### Context Window Management +- By default, 30% of the context window is reserved (20% for model output and 10% as a safety buffer), leaving 70% available for conversation history. +- This reservation can be overridden by model-specific settings +- The system automatically calculates available space while maintaining this reservation + +### Error Handling Strategy +- **Multi-Provider Support**: Recognizes context errors from OpenAI, Anthropic, Cerebras, and other providers +- **Progressive Reduction**: Reduces context by 25% on each retry attempt +- **Retry Limits**: Maximum of 3 automatic retry attempts before requiring manual intervention +- **State Preservation**: Maintains conversation state during recovery attempts + diff --git a/apps/docs/docs/features/keyboard-shortcuts.md b/apps/docs/docs/features/keyboard-shortcuts.md new file mode 100644 index 00000000000..25d14b1d4ec --- /dev/null +++ b/apps/docs/docs/features/keyboard-shortcuts.md @@ -0,0 +1,258 @@ +--- +description: Master keyboard navigation in Roo Code with customizable shortcuts, command execution, and prompt history navigation for efficient coding workflows. +keywords: + - keyboard shortcuts + - keyboard navigation + - roo-cline.acceptInput + - prompt history + - accessibility + - vim compatibility +sidebar_label: Keyboard Navigation +--- + +# Keyboard Navigation + +The Roo Code interface supports keyboard navigation and shortcuts to streamline your workflow and reduce dependence on mouse interactions. + +--- + +## Available Keyboard Commands + +Roo Code offers keyboard commands to enhance your workflow. This page focuses on the `roo-cline.acceptInput` command, but here's a quick reference to all keyboard commands: + +| Command | Description | Default Shortcut | +| ----------------------- | -------------------------------------------- | ------------------------------------------------ | +| `roo-cline.acceptInput` | Submit text or accept the primary suggestion | None (configurable) | +| `roo-cline.focusInput` | Focus the Roo input box | None (configurable) | +| Add to Context | Add selected code to Roo's context | macOS: Cmd+K Cmd+A; Windows/Linux: Ctrl+K Ctrl+A | +| Arrow Up/Down | Navigate through prompt history | Built-in | + +### Key Benefits of Keyboard Commands + +- **Keyboard-Driven Interface**: Submit text or select the primary suggestion button without mouse interaction +- **Improved Accessibility**: Essential for users with mobility limitations or those who experience discomfort with mouse usage +- **Vim/Neovim Compatibility**: Supports seamless transitions for developers coming from keyboard-centric environments +- **Workflow Efficiency**: Reduces context switching between keyboard and mouse during development tasks + +--- + +## roo-cline.acceptInput Command + +The `roo-cline.acceptInput` command lets you submit text or accept suggestions with keyboard shortcuts instead of clicking buttons or pressing Enter in the input area. + +### What It Does + +The `roo-cline.acceptInput` command is a general-purpose input submission command. When triggered, it: + +- Submits your current text or image input when in the text input area (equivalent to pressing Enter) +- Clicks the primary (first) button when action buttons are visible (such as confirm/cancel buttons or any other action buttons) + +### Detailed Setup Guide + +#### Method 1: Using the VS Code UI + +1. Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) +2. Type "Preferences: Open Keyboard Shortcuts" +3. In the search box, type "roo-cline.acceptInput" +4. Locate "Roo: Accept Input/Suggestion" in the results +5. Click the + icon to the left of the command +6. Press your desired key combination (e.g., `Ctrl+Enter` or `Alt+Enter`) +7. Press Enter to confirm + +#### Method 2: Editing keybindings.json directly + +1. Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) +2. Type "Preferences: Open Keyboard Shortcuts (JSON)" +3. Add the following entry to the JSON array: + +```json +{ + "key": "ctrl+enter", // or your preferred key combination + "command": "roo-cline.acceptInput", + "when": "view == roo-cline.SidebarProvider || activeWebviewPanelId == roo-cline.TabPanelProvider" +} +``` + +Scoped examples: + +- Sidebar Roo view only: + +```json +{ + "key": "ctrl+enter", + "command": "roo-cline.acceptInput", + "when": "view == roo-cline.SidebarProvider" +} +``` + +- Editor Roo tab only: + +```json +{ + "key": "ctrl+enter", + "command": "roo-cline.acceptInput", + "when": "activeWebviewPanelId == roo-cline.TabPanelProvider" +} +``` + +#### Recommended Key Combinations + +Choose a key combination that doesn't conflict with existing VS Code shortcuts: + +- `Alt+Enter` - Easy to press while typing +- `Ctrl+Space` - Familiar for those who use autocomplete +- `Ctrl+Enter` - Intuitive for command execution +- `Alt+A` - Mnemonic for "Accept" + +## Add to Context Shortcut + +- Default: macOS: Cmd+K Cmd+A; Windows/Linux: Ctrl+K Ctrl+A +- Requires: when condition `editorTextFocus && editorHasSelection` +- Focus does not change automatically. To continue typing immediately, use "Roo: Focus Input" (`roo-cline.focusInput`) or click into the Roo panel. + +:::note Redo Shortcut Restored +The standard Redo shortcut (macOS: Cmd+Y; Windows/Linux: Ctrl+Y) remains unchanged and is available for its usual function in VS Code. +::: + +### Practical Use Cases + +#### Quick Development Workflows + +- **Text Submission**: Send messages to Roo without moving your hands from the keyboard +- **Action Confirmations**: Accept operations like saving files, running commands, or applying diffs +- **Multi-Step Processes**: Move quickly through steps that require confirmation or input +- **Consecutive Tasks**: Chain multiple tasks together with minimal interruption + +#### Keyboard-Centric Development + +- **Vim/Neovim Workflows**: If you're coming from a Vim/Neovim background, maintain your keyboard-focused workflow +- **IDE Integration**: Use alongside other VS Code keyboard shortcuts for a seamless experience +- **Code Reviews**: Quickly accept suggestions when reviewing code with Roo +- **Documentation Writing**: Submit text and accept formatting suggestions when generating documentation + +#### Accessibility Use Cases + +- **Hand Mobility Limitations**: Essential for users who have difficulty using a mouse +- **Repetitive Strain Prevention**: Reduce mouse usage to prevent or manage repetitive strain injuries +- **Screen Reader Integration**: Works well with screen readers for visually impaired users +- **Voice Control Compatibility**: Can be triggered via voice commands when using voice control software + +### Accessibility Benefits + +The `roo-cline.acceptInput` command was designed with accessibility in mind: + +- **Reduced Mouse Dependence**: Complete entire workflows without reaching for the mouse +- **Reduced Physical Strain**: Helps users who experience discomfort or pain from mouse usage +- **Alternative Input Method**: Supports users with mobility impairments who rely on keyboard navigation +- **Workflow Optimization**: Particularly valuable for users coming from keyboard-centric environments like Vim/Neovim + +### Keyboard-Centric Workflows + +Here are some complete workflow examples showing how to effectively use keyboard shortcuts with Roo: + +#### Development Workflow Example + +1. Open VS Code and navigate to your project +2. Open Roo via the sidebar +3. Type your request: "Create a REST API endpoint for user registration" +4. When Roo asks for framework preferences, use your `roo-cline.acceptInput` shortcut to select the first suggestion +5. Continue using the shortcut to accept code generation suggestions +6. When Roo offers to save the file, use the shortcut again to confirm +7. Use VS Code's built-in shortcuts to navigate through the created files + +#### Code Review Workflow + +1. Select code you want to review and use VS Code's "Copy" command +2. Ask Roo to review it: "Review this code for security issues" +3. As Roo asks clarifying questions about the code context, use your shortcut to accept suggestions +4. When Roo provides improvement recommendations, use the shortcut again to accept implementation suggestions + +### Troubleshooting + +| Issue | Solution | +| --------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | +| Shortcut doesn't work | Ensure Roo is focused (click in the Roo panel first) | +| Wrong suggestion selected | The command always selects the first (primary) button; use mouse if you need a different option | +| Conflicts with existing shortcuts | Try a different key combination in VS Code keyboard settings | +| No visual feedback when used | This is normal - the command silently activates the function without visual confirmation | +| Shortcut works inconsistently | Make sure the `when` clause is properly configured (use `view == roo-cline.SidebarProvider` or `activeWebviewPanelId == roo-cline.TabPanelProvider`) | + +### Technical Implementation + +The `roo-cline.acceptInput` command is implemented as follows: + +- Command registered as `roo-cline.acceptInput` with display title "Roo: Accept Input/Suggestion" in the command palette +- When triggered, it sends an "acceptInput" message to the active Roo webview +- The webview determines the appropriate action based on the current UI state: + - Clicks the primary action button if action buttons are visible and enabled + - Sends the message if the text area is enabled and contains text/images +- No default key binding - users assign their preferred shortcut + +### Limitations + +- Works only when the Roo interface is active +- Has no effect if no inputs or suggestions are currently available +- Prioritizes the primary (first) button when multiple options are shown + +--- + +## Command Line Style Prompt History Navigation + +Navigate your prompt history with a terminal-like experience using the arrow keys. This feature makes it easy to reuse and refine previous prompts, whether from your current conversation or past tasks. + +### Key Features + +- **Up/Down Arrows**: Cycle through previous prompts. +- **Context-Aware**: Switches between conversation and task history. +- **Preserves Input**: Remembers what you were typing. + +### Why This Matters + +**Before**: Reusing a prompt meant scrolling up, copying, and pasting. + +- Tedious and slow +- Easy to lose your place +- Interrupted your workflow + +**With Prompt History Navigation**: Quickly access past prompts without leaving the keyboard. + +### How it Works + +The navigation is designed to be intuitive and adapt to your current context. + +#### In an Active Conversation + +- **Arrow Up**: Shows the last prompt you sent. Keep pressing to go further back in the conversation. +- **Arrow Down**: Moves forward through the conversation history, eventually returning to the text you were typing. + +#### Starting a New Chat + +- **Arrow Up**: Shows the most recent prompt from your task history in the current workspace. +- **Arrow Down**: Moves forward through your task history. + +#### Edge Cases + +- If you start typing while navigating, the history is dismissed, and your new text is preserved. +- Navigation only works when your cursor is on the first or last line of the input box to avoid interfering with multi-line editing. + +### Configuration + +This feature is enabled by default. There are no settings to configure. + +### Benefits + +- **Faster Workflow**: Reuse prompts without using the mouse. +- **Better Context**: Easily access and build upon previous interactions. +- **Less Interruption**: Stay focused on the task at hand. + +### Common Questions + +**"Why doesn't anything happen when I press the up arrow?"** + +- You might be in the middle of a multi-line prompt. The cursor must be on the first line. +- There might be no history available for the current context. + +**"What's the difference between conversation and task history?"** + +- **Conversation history** includes prompts from your current, active chat session. +- **Task history** includes the initial prompts from all previous tasks in your current workspace. diff --git a/apps/docs/docs/features/marketplace.mdx b/apps/docs/docs/features/marketplace.mdx new file mode 100644 index 00000000000..446a8f8559e --- /dev/null +++ b/apps/docs/docs/features/marketplace.mdx @@ -0,0 +1,175 @@ +--- +description: Discover and install community-contributed MCP servers and custom modes from the Roo Code Marketplace to extend your AI coding assistant's capabilities. +keywords: + - Roo Code Marketplace + - MCP servers + - custom modes + - extensions + - community tools + - AI integrations +--- +import Codicon from '@site/src/components/Codicon'; + +# Roo Code Marketplace + +
+ +
+ +
+ +--- + +## Overview + +The Roo Code Marketplace is a central hub for discovering and installing community-contributed extensions, known as MCPs (Model Context Protocol) and Modes. It allows you to easily extend the functionality of Roo Code to fit your specific needs and workflows. + +### Key Features +- **Discoverability**: Browse a curated list of MCPs and Modes. +- **Simple Installation**: Install and remove items with a single click. +- **Community-Driven**: Access a growing collection of extensions from the Roo Code community. +- **Project & Global Scopes**: Install items for a specific project or for all your projects. + +--- + +## Getting Started + +The Roo Code Marketplace is available directly within the Roo Code extension in VS Code. Access it by clicking the marketplace icon in the top menu bar. + +--- + + + +## Marketplace Items + +The marketplace offers two types of items: + +### MCPs (Model Context Protocol) +MCPs allow Roo Code to connect to and interact with various AI models, APIs, and other external tools. By installing an MCP, you can configure Roo Code to use different language models (like those from OpenAI, Anthropic, or others) or to integrate with other services. Learn more about [What is MCP?](/features/mcp/what-is-mcp) and [how to use MCP in Roo Code](/features/mcp/using-mcp-in-roo). + +MCP tab showing available MCPs with install and remove buttons + +### Modes +Modes are custom sets of instructions and rules that tailor Roo Code's behavior for specific tasks. For example, you might find a "React Component" mode that is optimized for creating React components, or a "Documentation Writer" mode for writing technical documentation. Learn more about [using modes](/basic-usage/using-modes) and [creating custom modes](/features/custom-modes). + +Modes tab showing available modes + +--- + +## Installation Scope + +When you install an item from the marketplace, you can choose to install it at the project level or the global level. + +### Project Installation +- **Scope**: The item is only available within the current VS Code workspace (your project). +- **Configuration File**: + - **MCPs**: [`.roo/mcp.json`](/features/mcp/using-mcp-in-roo#configuring-mcp-servers) in the root of your project. + - **Modes**: [`.roomodes`](/features/custom-modes#3-manual-configuration-yaml--json) in the root of your project. +- **Use Case**: This is useful when an item is specific to a particular project's needs or when you want to share a project-specific configuration with your team. + +### Global Installation +- **Scope**: The item is available across all your VS Code workspaces. +- **Configuration File**: + - **MCPs**: [`mcp_settings.json`](/features/mcp/using-mcp-in-roo#configuring-mcp-servers) in the Roo Code extension's global settings directory. + - **Modes**: [`custom_modes.yaml`](/features/custom-modes) in the Roo Code extension's global settings directory. +- **Use Case**: This is ideal for items that you want to use in all your projects, such as a favorite Mode or a commonly used MCP. + +--- + +## Using the Marketplace + +### Browsing and Filtering + +You can browse all available items in the marketplace view. To find specific items: +- **Search**: Use the search bar to find items by name or description. +- **Filter by Type**: Show only MCPs or only Modes. +- **Filter by Tags**: Find items related to specific technologies or tasks. +- **Show Installed Only**: Use the "Installed" checkbox to filter the view to show only items you've already installed, making it easier to manage and review your installed extensions. + +The "Show installed only" filter is particularly useful when: +- You want to quickly see what MCPs or modes you have installed +- You need to manage or remove installed items +- You're reviewing your project or global configurations + +### Installing an Item + +1. Find the item you want to install. +2. Click the "Install" button. +3. Choose whether to install it for the current **Project** or **Globally**. + +#### Installing MCPs +MCP installation modal showing installation scope and method options + +For MCPs, you may also need to: +- Select an installation method (NPX or Docker) +- Provide additional parameters when prompted (see [Parameterized MCPs](#parameterized-mcps)) + +#### Installing Modes +Mode installation modal showing installation scope options + +For Modes, simply select the installation scope and click Install. + +5. Roo Code automatically adds the item to the appropriate configuration file. If the file doesn't exist, Roo Code will create it for you. The file is then opened for your review. + +### Removing an Item + +1. Find the installed item in the marketplace view (installed items show a "Remove" button). +2. Click the "Remove" button. +3. If the item is installed in both scopes, choose to remove from the current project or remove globally. +4. Roo Code removes the item from the corresponding configuration file. + +**Note:** The "Remove" button is context-aware. If an item is installed in only one scope (e.g., just for the project), it will be a single-action button. The dropdown menu with "Remove from Project" and "Remove Globally" options only appears if the item is installed in both scopes. + +**Important:** The removal is immediate after you click the button or select an option from the dropdown. There is no additional confirmation prompt. + +### Parameterized MCPs + +Parameterized MCP installation showing API key input and prerequisites + +Some MCPs require specific information during installation, such as API keys or URLs. When installing these "parameterized" MCPs, you'll be prompted to: +- Review any prerequisites (like creating accounts or obtaining API keys) +- Enter required configuration values +- Select the installation method if applicable + +This keeps sensitive information secure and makes configuration more flexible. + +--- + +## Troubleshooting + +### Installation Errors +- **Invalid YAML/JSON**: The configuration file (`.roomodes`, `.roo/mcp.json`, etc.) has a syntax error. To prevent data loss, Roo Code will not modify a corrupted configuration file. Please fix the syntax error before installing or removing items. +- **File Not Found**: Rare error - Roo Code automatically creates necessary configuration files. + +### Item Not Working +If an installed item isn't working: +1. **Check the configuration file**: Verify the item was added correctly. +2. **Restart VS Code**: New configurations sometimes require a restart. +3. **Check prerequisites**: Review the item's description for any requirements. +4. **Check Roo Code logs**: Look for error messages in the Roo Code output panel. + +--- + +## Related Documentation + +### For MCPs +- [MCP Overview](/features/mcp/overview) - Comprehensive guide to Model Context Protocol +- [What is MCP?](/features/mcp/what-is-mcp) - Understanding the fundamentals +- [Using MCP in Roo Code](/features/mcp/using-mcp-in-roo) - Detailed configuration and usage guide +- [Recommended MCP Servers](/features/mcp/recommended-mcp-servers) - Curated list of tested servers + +### For Modes +- [Using Modes](/basic-usage/using-modes) - Learn about built-in modes and how to switch between them +- [Custom Modes](/features/custom-modes) - Create and configure your own specialized modes \ No newline at end of file diff --git a/apps/docs/docs/features/mcp/mcp-vs-api.md b/apps/docs/docs/features/mcp/mcp-vs-api.md new file mode 100644 index 00000000000..45be6989277 --- /dev/null +++ b/apps/docs/docs/features/mcp/mcp-vs-api.md @@ -0,0 +1,120 @@ +--- +description: Learn the key differences between Model Context Protocol (MCP) and REST APIs. Understand why MCP is AI-native and how it enables stateful, contextual interactions. +keywords: + - MCP vs API + - Model Context Protocol + - REST API comparison + - AI protocols + - stateful connections + - tool discovery +sidebar_label: MCP vs API +--- + +# MCP vs REST APIs: A Fundamental Distinction + +Comparing REST APIs to the Model Context Protocol (MCP) is a category error. They operate at different layers of abstraction and serve fundamentally different purposes in AI systems. + +--- + +## Architectural Differences + +| Feature | MCP | REST APIs | +| -------------------- | ---------------------------------------------------- | ------------------------------------------------- | +| State Management | **Stateful** - maintains context across interactions | **Stateless** - each request is independent | +| Connection Type | Persistent, bidirectional connections | One-way request/response | +| Communication Style | JSON-RPC based with ongoing sessions | HTTP-based with discrete requests | +| Context Handling | Context is intrinsic to the protocol | Context must be manually managed | +| Tool Discovery | Runtime discovery of available tools | Design-time integration requiring prior knowledge | +| Integration Approach | Runtime integration with dynamic capabilities | Design-time integration requiring code changes | + +--- + +## Different Layers, Different Purposes + +REST APIs and MCP serve different tiers in the technology stack: + +1. **REST**: Low-level web communication pattern that exposes operations on resources +2. **MCP**: High-level AI protocol that orchestrates tool usage and maintains context + +MCP often uses REST APIs internally, but abstracts them away for the AI. Think of MCP as middleware that turns discrete web services into a cohesive environment the AI can operate within. + +--- + +## Context Preservation: Critical for AI Workflows + +MCP's stateful design solves a key limitation of REST in AI applications: + +- **REST Approach**: Each call is isolated, requiring manual context passing between steps +- **MCP Approach**: One conversation context persists across multiple tool uses + +For example, an AI debugging a codebase can open a file, run tests, and identify errors without losing context between steps. The MCP session maintains awareness of previous actions and results. + +--- + +## Dynamic Tool Discovery + +MCP enables an AI to discover and use tools at runtime: + +```json +// AI discovers available tools +{ + "tools": [ + { + "name": "readFile", + "description": "Reads content from a file", + "parameters": { + "path": { "type": "string", "description": "File path" } + } + }, + { + "name": "createTicket", + "description": "Creates a ticket in issue tracker", + "parameters": { + "title": { "type": "string" }, + "description": { "type": "string" } + } + } + ] +} +``` + +This "plug-and-play" capability allows new tools to be added without redeploying or modifying the AI itself. + +--- + +## Real-World Example: Multi-Tool Workflow + +Consider a task requiring multiple services: "Check recent commits, create a JIRA ticket for the bug fix, and post to Slack." + +**REST-based approach**: + +- Requires separate integrations for Git, JIRA, and Slack APIs +- Needs custom code to manage context between calls +- Breaks if any service changes its API + +**MCP-based approach**: + +- One unified protocol for all tools +- Maintains context across the entire workflow +- New tools can be swapped in without code changes + +--- + +## Why Roo Code Uses MCP + +Roo Code leverages MCP to provide: + +1. **Extensibility**: Add unlimited custom tools without waiting for official integration +2. **Contextual awareness**: Tools can access conversation history and project context +3. **Simplified integration**: One standard protocol rather than numerous API patterns +4. **Runtime flexibility**: Discover and use new capabilities on-the-fly + +MCP creates a universal connector between Roo Code and external services, with REST APIs often powering those services behind the scenes. + +--- + +## Conclusion: Complementary, Not Competing Technologies + +MCP doesn't replace REST APIs - it builds upon them. REST excels at providing discrete services, while MCP excels at orchestrating those services for AI agents. + +The critical distinction is that MCP is AI-native: it treats the model as a first-class user, providing the contextual, stateful interaction layer that AI agents need to function effectively in complex environments. diff --git a/apps/docs/docs/features/mcp/overview.md b/apps/docs/docs/features/mcp/overview.md new file mode 100644 index 00000000000..2c96733a2bb --- /dev/null +++ b/apps/docs/docs/features/mcp/overview.md @@ -0,0 +1,31 @@ +--- +sidebar_label: MCP Overview +description: Learn about the Model Context Protocol (MCP) in Roo Code. Discover how to extend AI capabilities with custom tools, resources, and server integrations. +keywords: + - MCP + - Model Context Protocol + - Roo Code extensions + - custom tools + - MCP servers + - AI integrations +--- + +# Model Context Protocol (MCP) + +The Model Context Protocol (MCP) is a standard for extending Roo Code's capabilities by connecting to external tools and services. MCP servers provide additional tools and resources that help Roo accomplish tasks beyond its built-in capabilities, such as accessing databases, custom APIs, and specialized functionality. + +--- + +## MCP Documentation + +This documentation is organized into several sections: + +- [**Using MCP in Roo Code**](/features/mcp/using-mcp-in-roo) - Comprehensive guide to configuring, enabling, and managing MCP servers with Roo Code. Includes server settings, tool approval, and troubleshooting. + +- [**What is MCP?**](/features/mcp/what-is-mcp) - Clear explanation of the Model Context Protocol, its client-server architecture, and how it enables AI systems to interact with external tools. + +- [**STDIO, Streamable HTTP & SSE Transports**](/features/mcp/server-transports) - Detailed comparison of local (STDIO) and remote (Streamable HTTP & legacy SSE) transport mechanisms with deployment considerations for each approach. + +- [**MCP vs API**](/features/mcp/mcp-vs-api) - Analysis of the fundamental distinction between MCP and REST APIs, explaining how they operate at different layers of abstraction for AI systems. + +- [**Recommended MCP Servers**](/features/mcp/recommended-mcp-servers) - Curated list of tested and recommended MCP servers for Roo Code, including a setup guide for Context7. diff --git a/apps/docs/docs/features/mcp/recommended-mcp-servers.md b/apps/docs/docs/features/mcp/recommended-mcp-servers.md new file mode 100644 index 00000000000..a9716ab106a --- /dev/null +++ b/apps/docs/docs/features/mcp/recommended-mcp-servers.md @@ -0,0 +1,130 @@ +--- +description: Discover recommended MCP servers for Roo Code, including Context7. Learn how to install and configure MCP servers with step-by-step instructions. +keywords: + - MCP servers + - Context7 + - Roo Code MCP + - MCP installation + - MCP configuration + - recommended servers +sidebar_label: Recommended MCP Servers +--- + +# Recommended MCP Servers + +While Roo Code can connect to any Model Context Protocol (MCP) server that follows the specification, the community has already built several high-quality servers that work out-of-the-box. This page curates the servers we **actively recommend** and provides step-by-step setup instructions so you can get productive in minutes. + +> We'll keep this list up-to-date. If you maintain a server you'd like us to consider, please open a pull-request. + +--- + +## Context7 + +`Context7` is our first-choice general-purpose MCP server. It ships a collection of highly-requested tools, installs with a single command, and has excellent support across every major editor that speaks MCP. + +### Why we recommend Context7 + +- **One-command install** – everything is bundled, no local build step. +- **Cross-platform** – runs on macOS, Windows, Linux, or inside Docker. +- **Actively maintained** – frequent updates from the Upstash team. +- **Rich toolset** – database access, web-search, text utilities, and more. +- **Open source** – released under the MIT licence. + +--- + +## Installing Context7 in Roo Code + +There are two common ways to register the server: + +1. **Global configuration** – available in every workspace. +2. **Project-level configuration** – checked into version control alongside your code. + +We'll cover both below. + +### 1. Global configuration + +1. Open the Roo Code **MCP settings** panel by clicking the icon. +2. Click **Edit Global MCP**. +3. Paste the JSON below inside the `mcpServers` object and save. + +```json +{ + "mcpServers": { + "context7": { + "command": "npx", + "args": ["-y", "@upstash/context7-mcp@latest"] + } + } +} +``` + +**Windows (cmd.exe) variant** + +```json +{ + "mcpServers": { + "context7": { + "type": "stdio", + "command": "cmd", + "args": ["/c", "npx", "-y", "@upstash/context7-mcp@latest"] + } + } +} +``` + +Also on **Windows (cmd)** you may need to invoke `npx` through `cmd.exe`: + +Adding Context7 to the global MCP settings + +### 2. Project-level configuration + +If you prefer to commit the configuration to your repository, create a file called `.roo/mcp.json` at the project root and add the same snippet: + +```json +{ + "mcpServers": { + "context7": { + "command": "npx", + "args": ["-y", "@upstash/context7-mcp@latest"] + } + } +} +``` + +**Windows (cmd.exe) variant** + +```json +{ + "mcpServers": { + "context7": { + "type": "stdio", + "command": "cmd", + "args": ["/c", "npx", "-y", "@upstash/context7-mcp@latest"] + } + } +} +``` + +Adding Context7 to a project-level MCP file + +> When both global and project files define a server with the same name, **the project configuration wins**. + +--- + +## Verifying the installation + +1. Make sure **Enable MCP Servers** is turned on in the MCP settings panel. +2. You should now see **Context7** listed. Click the toggle to start it if it isn't already running. +3. Roo Code will prompt you the first time a Context7 tool is invoked. Approve the request to continue. + +Context7 running in Roo Code + +--- + +## Next steps + +- Browse the list of tools shipped with Context7 in the server pane. +- Configure **Always allow** for the tools you use most to streamline your workflow. +- Want to expose your own APIs? Check out the [MCP server creation guide](/features/mcp/using-mcp-in-roo#enabling-or-disabling-mcp-server-creation). + +Looking for other servers? Watch this page – we'll add more recommendations soon! diff --git a/apps/docs/docs/features/mcp/server-transports.md b/apps/docs/docs/features/mcp/server-transports.md new file mode 100644 index 00000000000..97a2d09a87c --- /dev/null +++ b/apps/docs/docs/features/mcp/server-transports.md @@ -0,0 +1,283 @@ +--- +description: Comprehensive guide to MCP transport mechanisms in Roo Code. Compare STDIO, Streamable HTTP, and SSE transports for local and remote server deployments. +keywords: + - MCP transports + - STDIO transport + - Streamable HTTP + - SSE transport + - MCP deployment + - local vs remote MCP +sidebar_label: STDIO, Streamable HTTP & SSE Transports +--- + +# MCP Server Transports: STDIO, Streamable HTTP & SSE + +Model Context Protocol (MCP) supports three primary transport mechanisms for communication between Roo Code and MCP servers: Standard Input/Output (STDIO), Streamable HTTP (the modern standard), and Server-Sent Events (SSE) (for legacy use). Each has distinct characteristics, advantages, and use cases. + +--- + +## STDIO Transport + +STDIO transport runs locally on your machine and communicates via standard input/output streams. + +### How STDIO Transport Works + +1. The client (Roo Code) spawns an MCP server as a child process +2. Communication happens through process streams: client writes to server's STDIN, server responds to STDOUT +3. Each message is delimited by a newline character +4. Messages are formatted as JSON-RPC 2.0 + +``` +Client Server + | | + |---- JSON message ------>| (via STDIN) + | | (processes request) + |<---- JSON message ------| (via STDOUT) + | | +``` + +### STDIO Characteristics + +- **Locality**: Runs on the same machine as Roo Code +- **Performance**: Very low latency and overhead (no network stack involved) +- **Simplicity**: Direct process communication without network configuration +- **Relationship**: One-to-one relationship between client and server +- **Security**: Inherently more secure as no network exposure + +### When to Use STDIO + +STDIO transport is ideal for: + +- Local integrations and tools running on the same machine +- Security-sensitive operations +- Low-latency requirements +- Single-client scenarios (one Roo Code instance per server) +- Command-line tools or IDE extensions + +### STDIO Implementation Example + +```typescript +import { Server } from "@modelcontextprotocol/sdk/server/index.js" +import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js" + +const server = new Server({ name: "local-server", version: "1.0.0" }) +// Register tools... + +// Use STDIO transport +const transport = new StdioServerTransport(server) +transport.listen() +``` + +--- + +## Streamable HTTP Transport + +Streamable HTTP transport is the modern standard for remote MCP server communication, replacing the older HTTP+SSE transport. It operates over HTTP/HTTPS and allows for more flexible server implementations. + +### How Streamable HTTP Transport Works + +1. The server provides a single HTTP endpoint (MCP endpoint) that supports both POST and GET methods. +2. The client (Roo Code) sends requests to this MCP endpoint using HTTP POST. +3. The server processes the request and sends back a response. +4. Optionally, the server can use Server-Sent Events (SSE) over the same connection to stream multiple messages or notifications to the client. This allows for basic request-response interactions as well as more advanced streaming and server-initiated communication. + +``` +Client Server + | | + |---- HTTP POST /mcp_endpoint ---->| (client request) + | | (processes request) + |<--- HTTP Response / SSE Stream --| (server response / stream) + | | +``` + +### Streamable HTTP Characteristics + +- **Modern Standard**: Preferred method for new remote MCP server implementations. +- **Remote Access**: Can be hosted on a different machine from Roo Code. +- **Scalability**: Can handle multiple client connections concurrently. +- **Protocol**: Works over standard HTTP/HTTPS. +- **Flexibility**: Supports simple request-response and advanced streaming. +- **Single Endpoint**: Uses a single URL path for all MCP communication. +- **Authentication**: Can use standard HTTP authentication mechanisms. +- **Backwards Compatibility**: Servers can maintain compatibility with older HTTP+SSE clients. + +### When to Use Streamable HTTP + +Streamable HTTP transport is ideal for: + +- All new remote MCP server developments. +- Servers requiring robust, scalable, and flexible communication. +- Integrations that might involve streaming data or server-sent notifications. +- Public services or centralized tools. +- Replacing legacy SSE transport implementations. + +### Streamable HTTP Implementation Example + +Configuration in `settings.json`: + +```json +"mcp.servers": { + "StreamableHTTPMCPName": { + "type": "streamable-http", + "url": "http://localhost:8080/mcp" + } +} +``` + +For server-side implementation, refer to the MCP SDK documentation for `StreamableHTTPClientTransport`. + +### Backwards Compatibility with HTTP+SSE + +Clients and servers can maintain backwards compatibility with the deprecated HTTP+SSE transport (from protocol version 2024-11-05). + +Servers wanting to support older clients should: + +- Continue to host both the SSE (`/events`) and POST (`/message`) endpoints of the old transport, alongside the new “MCP endpoint” defined for the Streamable HTTP transport. + +--- + +## SSE Transport (Legacy) + +Server-Sent Events (SSE) transport is a legacy method for remote server communication over HTTP/HTTPS. For new implementations, **Streamable HTTP transport is recommended.** SSE remains available for compatibility with older MCP servers. + +### How SSE Transport Works + +1. The client (Roo Code) connects to the server's SSE endpoint via HTTP GET request +2. This establishes a persistent connection where the server can push events to the client +3. For client-to-server communication, the client makes HTTP POST requests to a separate endpoint +4. Communication happens over two channels: + - Event Stream (GET): Server-to-client updates + - Message Endpoint (POST): Client-to-server requests + +``` +Client Server + | | + |---- HTTP GET /events ----------->| (establish SSE connection) + |<---- SSE event stream -----------| (persistent connection) + | | + |---- HTTP POST /message --------->| (client request) + |<---- SSE event with response ----| (server response) + | | +``` + +### SSE Characteristics + +- **Remote Access**: Can be hosted on a different machine from Roo Code +- **Scalability**: Can handle multiple client connections concurrently +- **Protocol**: Works over standard HTTP (no special protocols needed) +- **Persistence**: Maintains a persistent connection for server-to-client messages +- **Authentication**: Can use standard HTTP authentication mechanisms + +### When to Use SSE + +SSE transport is better for: + +- Remote access across networks +- Multi-client scenarios +- Public services +- Centralized tools that many users need to access +- Integration with web services + +### SSE Implementation Example + +```typescript +import { Server } from "@modelcontextprotocol/sdk/server/index.js" +import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js" +import express from "express" + +const app = express() +const server = new Server({ name: "remote-server", version: "1.0.0" }) +// Register tools... + +// Use SSE transport +const transport = new SSEServerTransport(server) +app.use("/mcp", transport.requestHandler()) +app.listen(3000, () => { + console.log("MCP server listening on port 3000") +}) +``` + +--- + +## Local vs. Hosted: Deployment Aspects + +The choice between STDIO and SSE transports directly impacts how you'll deploy and manage your MCP servers. + +### STDIO: Local Deployment Model + +STDIO servers run locally on the same machine as Roo Code, which has several important implications: + +- **Installation**: The server executable must be installed on each user's machine +- **Distribution**: You need to provide installation packages for different operating systems +- **Updates**: Each instance must be updated separately +- **Resources**: Uses the local machine's CPU, memory, and disk +- **Access Control**: Relies on the local machine's filesystem permissions +- **Integration**: Easy integration with local system resources (files, processes) +- **Execution**: Starts and stops with Roo Code (child process lifecycle) +- **Dependencies**: Any dependencies must be installed on the user's machine + +#### Practical Example + +A local file search tool using STDIO would: + +- Run on the user's machine +- Have direct access to the local filesystem +- Start when needed by Roo Code +- Not require network configuration +- Need to be installed alongside Roo Code or via a package manager + +### Streamable HTTP / SSE (Legacy): Hosted Deployment Model + +Streamable HTTP (recommended) and legacy SSE servers can be deployed to remote servers and accessed over the network: + +- **Installation**: Installed once on a server, accessed by many users +- **Distribution**: Single deployment serves multiple clients +- **Updates**: Centralized updates affect all users immediately +- **Resources**: Uses server resources, not local machine resources +- **Access Control**: Managed through authentication and authorization systems +- **Integration**: More complex integration with user-specific resources +- **Execution**: Runs as an independent service (often continuously) +- **Dependencies**: Managed on the server, not on user machines + +#### Practical Example + +A database query tool using SSE would: + +- Run on a central server +- Connect to databases with server-side credentials +- Be continuously available for multiple users +- Require proper network security configuration +- Be deployed using container or cloud technologies + +### Hybrid Approaches + +Some scenarios benefit from a hybrid approach: + +1. **STDIO with Network Access**: A local STDIO server that acts as a proxy to remote services +2. **SSE with Local Commands**: A remote SSE server that can trigger operations on the client machine through callbacks +3. **Gateway Pattern**: STDIO servers for local operations that connect to SSE servers for specialized functions + +--- + +## Choosing Between Transports + +| Consideration | STDIO | Streamable HTTP | SSE (Legacy) | +| -------------------- | -------------------------------------------- | ---------------------------------------------- | -------------------------------------------------------------- | +| **Location** | Local machine only | Local or remote | Local or remote | +| **Clients** | Single client | Multiple clients | Multiple clients | +| **Performance** | Lower latency | Higher latency (network overhead) | Higher latency (network overhead) | +| **Setup Complexity** | Simpler | More complex (requires HTTP server) | More complex (requires HTTP server, potentially two endpoints) | +| **Security** | Inherently secure | Requires explicit security measures | Requires explicit security measures | +| **Network Access** | Not needed | Required | Required | +| **Scalability** | Limited to local machine | Can distribute across network | Can distribute across network | +| **Deployment** | Per-user installation | Centralized installation | Centralized installation | +| **Updates** | Distributed updates | Centralized updates | Centralized updates | +| **Resource Usage** | Uses client resources | Uses server resources | Uses server resources | +| **Dependencies** | Client-side dependencies | Server-side dependencies | Server-side dependencies | +| **Recommendation** | Ideal for local, secure, single-client tools | **Modern standard for all new remote servers** | Legacy, for existing older servers | + +--- + +## Configuring Transports in Roo Code + +For detailed information on configuring STDIO, Streamable HTTP, and SSE (Legacy) transports in Roo Code, including example configurations, see the [Understanding Transport Types](/features/mcp/using-mcp-in-roo#understanding-transport-types) section in the Using MCP in Roo Code guide. diff --git a/apps/docs/docs/features/mcp/using-mcp-in-roo.mdx b/apps/docs/docs/features/mcp/using-mcp-in-roo.mdx new file mode 100644 index 00000000000..1b1c6ed9e46 --- /dev/null +++ b/apps/docs/docs/features/mcp/using-mcp-in-roo.mdx @@ -0,0 +1,517 @@ +--- +description: Complete guide to using Model Context Protocol (MCP) in Roo Code. Learn how to configure MCP servers, manage tools, and extend Roo Code's capabilities. +keywords: + - MCP + - Model Context Protocol + - MCP servers + - Roo Code integration + - external tools + - API integration +sidebar_label: Using MCP in Roo Code +--- + +# Using MCP in Roo Code + +:::info Confused about MCP Servers? + +An MCP (Model Context Protocol) server acts as a bridge, giving Roo Code access to a wider range of **tools** and external services like databases, APIs, or custom scripts. It uses a standard communication method, allowing Roo to leverage these external capabilities. + +For a deeper dive, check out [What is MCP?](/features/mcp/what-is-mcp). +::: + +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. + +
+ +
+
+ +--- + +## Configuring MCP Servers + +MCP server configurations can be managed at two levels: + +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. +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. + +**Precedence**: If a server name exists in both global and project configurations, the **project-level configuration takes precedence**. + +### Editing MCP Settings Files + +You can edit both global and project-level MCP configuration files directly from the Roo Code MCP settings view: + +1. Click the icon in the top navigation of the Roo Code pane. + + MCP Servers interface in Roo Code + +2. Scroll to the bottom of the MCP settings view. +3. Click the appropriate button: + * **`Edit Global MCP`**: Opens the global `mcp_settings.json` file. + * **`Edit Project MCP`**: Opens the project-specific `.roo/mcp.json` file. If this file doesn't exist, Roo Code will create it for you. + + Edit Global MCP and Edit Project MCP buttons + +Both files use a JSON format with a `mcpServers` object containing named server configurations: + + ```json + { + "mcpServers": { + "server1": { + "command": "python", + "args": ["/path/to/server.py"], + "env": { + "API_KEY": "your_api_key" + }, + "alwaysAllow": ["tool1", "tool2"], + "disabled": false + } + } + } + ``` + *Example of MCP Server config in Roo Code (STDIO Transport)* + + ### Understanding Transport Types + + MCP supports three transport types for server communication: STDIO for local servers, Streamable HTTP (recommended for new remote servers), and SSE (for legacy remote servers). + + #### STDIO Transport + + Used for local servers running on your machine: + + * Communicates via standard input/output streams + * Lower latency (no network overhead) + * Better security (no network exposure) + * Simpler setup (no HTTP server needed) + * Runs as a child process on your machine + + For more in-depth information about how STDIO transport works, see [STDIO Transport](/features/mcp/server-transports#stdio-transport). + + STDIO configuration parameters: + + * `command` (required): The executable to run (e.g., `node`, `python`, `npx`, or an absolute path). + * `args` (optional): An array of string arguments to pass to the command. You can reference system environment variables using `${env:VARIABLE_NAME}` syntax. + * `cwd` (optional): The working directory from which to launch the server process. If omitted, defaults to the first workspace folder path or the main process's working directory. Useful if the server script relies on relative paths. + * `env` (optional): An object containing environment variables to set for the server process. + * `alwaysAllow` (optional): An array of tool names from this server to automatically approve. + * `disabled` (optional): Set to `true` to disable this server configuration. + + STDIO configuration example: + ```json + { + "mcpServers": { + "local-server": { + "command": "node", + "args": ["server.js"], + "cwd": "/path/to/project/root", // Optional: Specify working directory + "env": { + "API_KEY": "your_api_key" + }, + "alwaysAllow": ["tool1", "tool2"], + "disabled": false + } + } + } + ``` + + #### Using System Environment Variables in Arguments + + You can reference system-level environment variables within the `args` array using the `${env:VARIABLE_NAME}` syntax. This allows you to pass sensitive information like API keys or tokens from your system environment without hardcoding them in your configuration: + + ```json + { + "mcpServers": { + "github": { + "command": "docker", + "args": [ + "run", + "-i", + "--rm", + "-e", + "GITHUB_PERSONAL_ACCESS_TOKEN=${env:GITHUB_PERSONAL_ACCESS_TOKEN}", + "ghcr.io/github/github-mcp-server" + ], + "alwaysAllow": [ + "get_pull_request" + ] + } + } + } + ``` + + In this example, `${env:GITHUB_PERSONAL_ACCESS_TOKEN}` will be replaced with the value of the `GITHUB_PERSONAL_ACCESS_TOKEN` environment variable from your system. This is particularly useful when: + - Working with Docker containers that need environment variables passed through + - Keeping sensitive credentials out of your configuration files + - Using the same configuration across different environments with different credentials + + **Note:** The environment variable must exist in your system environment for this to work. You can set system environment variables through your operating system's settings or shell configuration files (e.g., `.bashrc`, `.zshrc`, or Windows Environment Variables). +#### Streamable HTTP Transport + +This is the **modern standard** for remote servers accessed over HTTP/HTTPS, offering more flexibility and replacing the legacy SSE transport for new implementations. + +* Communicates via HTTP POST/GET to a single MCP endpoint +* Optionally uses Server-Sent Events (SSE) for streaming +* Can be hosted on a different machine +* Supports multiple client connections +* Requires network access +* Allows centralized deployment and management + +For more in-depth information about how Streamable HTTP transport works, see [Streamable HTTP Transport](/features/mcp/server-transports#streamable-http-transport). + +Streamable HTTP configuration parameters: + +* `type` (required): Must be set to `"streamable-http"`. +* `url` (required): The full URL of the remote MCP server's single endpoint (e.g., `https://your-server.com/mcp`). +* `headers` (optional): An object containing custom HTTP headers to send with requests (e.g., for authentication tokens). +* `alwaysAllow` (optional): An array of tool names from this server to automatically approve. +* `disabled` (optional): Set to `true` to disable this server configuration. + +Streamable HTTP configuration example: +```json +{ + "mcpServers": { + "modern-remote-server": { + "type": "streamable-http", + "url": "https://your-modern-server.com/api/mcp-endpoint", + "headers": { + "X-API-Key": "your-secure-api-key" + }, + "alwaysAllow": ["newToolA", "newToolB"], + "disabled": false + } + } +} +``` + + #### SSE Transport (Legacy) + + Used for older remote servers accessed over HTTP/HTTPS. **For new remote server implementations, [Streamable HTTP Transport](#streamable-http-transport) is recommended.** + + * Communicates via Server-Sent Events protocol (typically requires separate endpoints for client-to-server and server-to-client communication) + * Can be hosted on a different machine + * Supports multiple client connections + * Requires network access + * Allows centralized deployment and management + + For more in-depth information about how legacy SSE transport works, see [SSE Transport (Legacy)](/features/mcp/server-transports#sse-transport-legacy). + + SSE (Legacy) configuration parameters: + + * `type` (optional, but recommended for clarity): Should be set to `"sse"` if providing a `url` for an SSE server, to distinguish from Streamable HTTP. If `url` is present and `type` is omitted, Roo Code might try to infer, but explicit declaration is safer. + * `url` (required): The base URL for the remote MCP server. For legacy SSE, this usually implies separate paths like `/events` (for SSE stream) and `/message` (for POST requests) will be derived or expected by the server. + * `headers` (optional): An object containing custom HTTP headers to send with requests (e.g., for authentication tokens). + * `alwaysAllow` (optional): An array of tool names from this server to automatically approve. + * `disabled` (optional): Set to `true` to disable this server configuration. + + SSE (Legacy) configuration example: + ```json + { + "mcpServers": { + "legacy-remote-server": { + "type": "sse", // Explicitly define as SSE + "url": "https://your-legacy-server-url.com/mcp-base", // Base URL + "headers": { + "Authorization": "Bearer your-legacy-token" + }, + "alwaysAllow": ["oldToolX"], + "disabled": false + } + } + } + ``` + + ## Enabling or Disabling MCP Servers + +Disabling your MCP Servers here will remove all MCP related logic and definitions from your system prompt, reducing your token usage. This will prevent Roo Code from connecting to any MCP servers, and the `use_mcp_tool` and `access_mcp_resource` tools will not be available. Check this off if you don't intend to use MCP Servers. This is on by default. + +1. Click the icon in the top navigation of the Roo Code pane +2. Check/Uncheck `Enable MCP Servers` + + Enable MCP Servers toggle + +--- + +## Enabling or Disabling MCP Server Creation + +Disabling your MCP Server Creation here will just remove the instructions from your system prompt that Roo Code uses to write MCP servers while not removing the context related to operating them. This reduces token usage. This is on by default. + +1. Click the icon in the top navigation of the Roo Code pane +2. Check/Uncheck `Enable MCP Server Creation` + + Enable MCP Server Creation toggle + +--- + +## How to Use Roo to Create an MCP Server + +If you need a specific tool or capability that isn't available through existing MCP servers, you can ask Roo Code to build a new one for you. + +**Prerequisite:** Ensure the **[Enable MCP Server Creation](#enabling-or-disabling-mcp-server-creation)** setting is checked ON in the MCP settings panel. If this is disabled, Roo will not have the necessary instructions to build a server. + +**How to Initiate:** + +1. **Make a Request:** Clearly ask Roo for the new tool or capability. For example: + * "Create an MCP tool that gets the current price of Bitcoin." + * "I need a tool that connects to my company's internal user database via its API." + * "Build an MCP server to interact with the GitHub Gist API." + +2. **Roo's Process (Simplified):** Once you make the request (and the setting is enabled), Roo will: + * Fetch internal instructions for server creation. + * Scaffold a basic server project (usually TypeScript) in the default MCP directory (e.g., `~/Documents/Cline/MCP` on macOS) unless you specify otherwise. + * Write the code to implement the requested tool, including handling necessary API calls. + * **Handle Secrets:** If the tool requires API keys or other credentials, Roo will ask you for them using the [`ask_followup_question`](/advanced-usage/available-tools/ask-followup-question) tool to ensure they are configured securely as environment variables for the server. + * **Configure:** Automatically add the new server's configuration to your global `mcp_settings.json` or project `.roo/mcp.json` file. + * **Activate:** Attempt to connect to the newly configured server so its tools are immediately available. + +3. **Outcome:** If successful, Roo will confirm the creation, and the new server and its tools will appear in your MCP server list, ready for use. + +This feature allows you to tailor Roo's capabilities by having it build the specific integrations you need directly from your requests. For a deeper look into the internal mechanics, see the [Tool Calling Mechanism](/advanced-usage/available-tools/tool-use-overview#tool-calling-mechanism). + +--- + +## Managing Individual MCP Servers + + Example of a configuration pane for a MCP Server + +Each MCP server has its own configuration panel where you can modify settings, manage tools, and control its operation. To access these settings: + +1. Click the icon in the top navigation of the Roo Code pane +2. Locate the MCP server you want to manage in the list + List of MCP Servers + +### Deleting a Server + +1. Press the next to the MCP server you would like to delete +2. Press the `Delete` button on the confirmation box + + Delete confirmation box + +### Restarting a Server + +1. Press the button next to the MCP server you would like to restart + +### Enabling or Disabling a Server + +1. Press the toggle switch next to the MCP server to enable/disable it + +### Network Timeout + +To set the maximum time to wait for a response after a tool call to the MCP server: + +1. Click the `Network Timeout` pulldown at the bottom of the individual MCP server's config box and change the time. Default is 1 minute but it can be set between 30 seconds and 5 minutes. + +Network Timeout pulldown + +### Auto Approve Tools + +MCP tool auto-approval works on a per-tool basis and is disabled by default. To configure auto-approval: + +1. First enable the global "Use MCP servers" auto-approval option in [auto-approving-actions](/features/auto-approving-actions) +2. In the MCP server settings, locate the specific tool you want to auto-approve +3. Check the `Always allow` checkbox next to the tool name + +Always allow checkbox for MCP tools + +When enabled, Roo Code will automatically approve this specific tool without prompting. Note that the global "Use MCP servers" setting takes precedence - if it's disabled, no MCP tools will be auto-approved. + +--- + +## Finding and Installing MCP Servers + +Roo Code does not come with any pre-installed MCP servers. You'll need to find and install them separately. + +* **Community Repositories:** Check for community-maintained lists of MCP servers on GitHub +* **Ask Roo:** You can ask Roo Code to help you find or even create MCP servers (when "[Enable MCP Server Creation](#enabling-or-disabling-mcp-server-creation)" is enabled) +* **Build Your Own:** Create custom MCP servers using the SDK to extend Roo Code with your own tools + +For full SDK documentation, visit the [MCP GitHub repository](https://github.com/modelcontextprotocol/). + +--- + +## Using MCP Tools in Your Workflow + +After configuring an MCP server, Roo automatically detects its available tools and resources. Effectively leveraging these tools involves understanding the core interaction steps and, crucially, how Roo interprets the tools you provide. + +### Core Workflow Steps + +Your interaction with MCP tools typically follows this sequence: + +#### 1. Initiate a Task +Begin by typing your request in the Roo Code chat interface. + +#### 2. Tool Identification by Roo +Roo analyzes your request to determine if an available MCP tool can assist. This stage is highly dependent on the quality of your MCP tool definitions. + +##### The Critical Role of Descriptions +Roo's ability to: +* Identify the *correct* tool for the job, +* Understand how to structure the necessary parameters, and +* Avoid misinterpreting a tool's capabilities, +all hinge on clear, concise, and informative descriptions for both the tools themselves and their parameters. Vague or missing information, especially for parameters, can significantly hinder Roo's ability to select or use a tool effectively. + +For instance, a request like "Analyze the performance of my API" might lead Roo to consider an MCP tool designed for API endpoint testing. Whether Roo successfully identifies and utilizes this tool as intended is directly influenced by the quality of its description. + +##### Best Practices for Defining MCP Tools +To ensure Roo can leverage your MCP tools efficiently, consider the following when defining them in your server: + +* **Tool Name:** Choose a descriptive and unambiguous name that clearly indicates the tool's primary function. +* **Tool Description:** Provide a comprehensive summary of what the tool does, its purpose, and any important context or prerequisites for its use. Explain the outcome or result of using the tool. +* **Parameter Descriptions:** This is critical. For each parameter: + * Clearly state its purpose and what kind of data it expects (e.g., "User ID for lookup," "File path to process," "Search query string"). + * Specify any formatting requirements, constraints, or an example of a valid value if applicable. + * Indicate if the parameter is optional or required (though the MCP schema usually handles this, a note can be helpful). +* **Clarity for the AI:** Write descriptions as if you are explaining the tool to another developer (or an AI). The more context Roo has, the better it can integrate the tool into its problem-solving workflows. If a tool is intended to be used in a specific sequence or in conjunction with other tools, mentioning this can also be beneficial. +* **Augment with Custom Instructions:** Beyond the descriptions embedded in the MCP server, you can further guide Roo's usage of specific MCP tools by providing [Custom Instructions](/features/custom-instructions). This allows you to define preferred approaches, outline complex workflows involving multiple tools, or specify when a particular MCP tool should be prioritized or avoided. + +#### 3. Tool Invocation +If Roo, guided by the tool descriptions, identifies a suitable tool, it will propose its use. You then approve this (unless [auto-approval](#auto-approve-tools) is configured for trusted tools). + +### Maximizing Synergy with MCP Servers +By investing effort in crafting detailed descriptions and potentially augmenting them with custom instructions, you significantly improve the synergy between Roo Code and your MCP servers. This unlocks their full potential for more reliable and efficient task completion. + +--- + +## Troubleshooting MCP Servers + +Common issues and solutions: + +* **Server Not Responding:** Check if the server process is running and verify network connectivity +* **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). +* **Tool Not Available:** Confirm the server is properly implementing the tool and it's not disabled in settings +* **Slow Performance:** Try adjusting the network timeout value for the specific MCP server + +--- + +## Platform-Specific MCP Configuration Examples + +### Windows Configuration Example + +When setting up MCP servers on Windows, you'll need to use the Windows Command Prompt (`cmd`) to execute commands. Here's an example of configuring a Puppeteer MCP server on Windows: + +```json +{ + "mcpServers": { + "puppeteer": { + "command": "cmd", + "args": [ + "/c", + "npx", + "-y", + "@modelcontextprotocol/server-puppeteer" + ] + } + } +} +``` + +This Windows-specific configuration: +- Uses the `cmd` command to access the Windows Command Prompt +- Uses `/c` to tell cmd to execute the command and then terminate +- Uses `npx` to run the package without installing it permanently +- The `-y` flag automatically answers "yes" to any prompts during installation +- Runs the `@modelcontextprotocol/server-puppeteer` package which provides browser automation capabilities + +### macOS and Linux Configuration Example + +When setting up MCP servers on macOS or Linux, you can use a simpler configuration since you don't need the Windows Command Prompt. Here's an example of configuring a Puppeteer MCP server on macOS or Linux: + +```json +{ + "mcpServers": { + "puppeteer": { + "command": "npx", + "args": [ + "-y", + "@modelcontextprotocol/server-puppeteer" + ] + } + } +} +``` + +This configuration: +- Directly uses `npx` without needing a shell wrapper +- Uses the `-y` flag to automatically answer "yes" to any prompts during installation +- Runs the `@modelcontextprotocol/server-puppeteer` package which provides browser automation capabilities + +The same approach can be used for other MCP servers on Windows, adjusting the package name as needed for different server types. + +--- + +## Runtime Version Manager Configuration + +When working with multiple versions of programming languages or runtimes, you may use version managers like [asdf](https://asdf-vm.com/) or [mise](https://mise.jdx.dev/) (formerly rtx). These tools help manage multiple runtime versions on a single system. Here's how to configure MCP servers to work with these version managers: + +### mise Configuration Example + +[mise](https://mise.jdx.dev/) is a fast, modern runtime version manager that can be used to specify which version of Node.js, Python, or other runtimes to use for your MCP server: + +```json +{ + "mcpServers": { + "mcp-batchit": { + "command": "mise", + "args": [ + "x", + "--", + "node", + "/Users/myself/workspace/mcp-batchit/build/index.js" + ], + "disabled": false, + "alwaysAllow": [ + "search", + "batch_execute" + ] + } + } +} +``` + +This configuration: +- Uses the `mise` command to manage runtime versions +- The `x` subcommand executes a command with the configured runtime version +- The `--` separates mise arguments from the command to run +- Runs `node` with the specific version configured in your mise settings +- Points to the MCP server JavaScript file +- Automatically allows the "search" and "batch_execute" tools + +### asdf Configuration Example + +[asdf](https://asdf-vm.com/) is a popular tool for managing multiple runtime versions. Here's how to configure an MCP server to use a specific Node.js version managed by asdf: + +```json +{ + "mcpServers": { + "appsignal": { + "command": "/Users/myself/.asdf/installs/nodejs/22.2.0/bin/node", + "args": [ + "/Users/myself/Code/Personal/my-mcp/build/index.js" + ], + "env": { + "ASDF_NODE_VERSION": "22.2.0" + }, + "disabled": false, + "alwaysAllow": [] + } + } +} +``` + +This configuration: +- Directly references the Node.js executable from the asdf installations directory +- Sets the `ASDF_NODE_VERSION` environment variable to ensure consistent version use +- Points to the MCP server JavaScript file + +Using version managers ensures that your MCP servers run with the correct runtime version, regardless of the system's default version, providing consistency across different environments and preventing version conflicts. diff --git a/apps/docs/docs/features/mcp/what-is-mcp.md b/apps/docs/docs/features/mcp/what-is-mcp.md new file mode 100644 index 00000000000..6131a36a878 --- /dev/null +++ b/apps/docs/docs/features/mcp/what-is-mcp.md @@ -0,0 +1,64 @@ +--- +description: Understand the Model Context Protocol (MCP) and how it enables AI systems to interact with external tools. Learn about MCP architecture and benefits. +keywords: + - what is MCP + - Model Context Protocol + - MCP architecture + - AI tools integration + - MCP client-server + - JSON-RPC protocol +sidebar_label: What is MCP? +--- + +# What is MCP? + +MCP (Model Context Protocol) is a standardized communication protocol for LLM systems to interact with external tools and services. It functions as a universal adapter between AI assistants and various data sources or applications. + +--- + +## How It Works + +MCP uses a client-server architecture: + +1. The AI assistant (client) connects to MCP servers +2. Each server provides specific capabilities (file access, database queries, API integrations) +3. The AI uses these capabilities through a standardized interface +4. Communication occurs via JSON-RPC 2.0 messages + +Think of MCP as similar to a USB-C port in the sense that any compatible LLM can connect to any MCP server to access its functionality. This standardization eliminates the need to build custom integrations for each tool and service. + +For example, an AI using MCP can perform tasks like "search our company database and generate a report" without requiring specialized code for each database system. + +--- + +## Common Questions + +- **Is MCP a cloud service?** MCP servers can run locally on your computer or remotely as cloud services, depending on the use case and security requirements. + +- **Does MCP replace other integration methods?** No. MCP complements existing tools like API plugins and retrieval-augmented generation. It provides a standardized protocol for tool interaction but doesn't replace specialized integration approaches. + +- **How is security handled?** Users control which MCP servers they connect to and what permissions those servers have. As with any tool that accesses data or services, use trusted sources and configure appropriate access controls. + +--- + +## MCP in Roo Code + +Roo Code implements the Model Context Protocol to: + +- Connect to both local and remote MCP servers +- Provide a consistent interface for accessing tools +- Extend functionality without core modifications +- Enable specialized capabilities on demand + +MCP provides a standardized way for AI systems to interact with external tools and services, making complex integrations more accessible and consistent. + +--- + +## Learn More About MCP + +Ready to dig deeper? Check out these guides: + +- [MCP Overview](/features/mcp/overview) - A quick glance at the MCP documentation structure +- [Using MCP in Roo Code](/features/mcp/using-mcp-in-roo) - Get started with MCP in Roo, including creating simple servers +- [MCP vs API](/features/mcp/mcp-vs-api) - Technical advantages compared to traditional APIs +- [STDIO & Streamable HTTP & SSE Transports](/features/mcp/server-transports) - Local vs. hosted deployment models diff --git a/apps/docs/docs/features/message-queueing.md b/apps/docs/docs/features/message-queueing.md new file mode 100644 index 00000000000..1c35e143f76 --- /dev/null +++ b/apps/docs/docs/features/message-queueing.md @@ -0,0 +1,86 @@ +--- +description: Learn how message queueing in Roo Code allows you to send multiple messages while the AI is working, with messages being processed sequentially for uninterrupted workflow. +keywords: + - message queueing + - queued messages + - sequential processing + - workflow efficiency + - chat interface + - Roo Code features +--- + +# Message Queueing + +Keep your workflow uninterrupted with message queueing—send multiple messages while Roo is working, and they'll be processed sequentially without losing your train of thought. + +:::tip Efficiency Boost +No more waiting! Type your follow-up thoughts, corrections, or additional requests while Roo is still processing, and they'll be handled in order. +::: + +--- + +## Overview + +Message queueing lets you type and send messages while Roo is still working. Just type your message and hit Enter - it gets queued and will be processed as soon as Roo is ready for your next input. When a queued message is processed, Roo implicitly approves whatever would normally require your confirmation (tool calls, file writes, running commands)—even if auto-approval is disabled. This is useful for quick corrections or additions when you want to keep work moving without manual prompts. + +--- + +## How It Works + +While Roo is working: + +1. **Type your message** as normal +2. **Press Enter** or click Send +3. **Message gets queued** and appears with "Queued Messages:" label +4. **Roo processes the queued message** as soon as it's ready for your next input and implicitly approves the next pending action (e.g., a tool call, file write, or command)—even if auto-approval is disabled + +Message queueing interface showing active processing and three queued messages + +**What you'll see:** + +- Queued messages appear with "Queued Messages:" label +- Bordered cards for each queued message +- Click messages to edit them +- Trash icon to delete messages + +The input field stays active so you can type anytime - just hit Enter to queue your message. + +:::warning Queued Messages Implicitly Approve +Queued messages act as approval for the next action. When a queued message is processed, Roo proceeds with whatever would normally require confirmation (tool calls, file writes, running commands)—even if auto-approval is disabled. +Editing or deleting a queued message requires clicking it before it's processed. In fast workflows this window can be extremely short; if you need a manual review step, avoid queueing until you're ready to approve. +Note: This behavior is distinct from [Auto-Approving Actions](/features/auto-approving-actions) and is not controlled by its settings. +::: + +--- + +## FAQ + +**Q: How many messages can I queue?** +A: There is no hard limit on the number of messages you can queue. The queue size is only limited by available browser memory. + +**Q: Can I reorder queued messages?** +A: No, messages are always processed in the order they were sent (FIFO). + +**Q: Do queued messages require approval?** +A: No. When processed, a queued message implicitly approves the next pending action (tool calls, file writes, running commands), even if auto-approval is disabled. If you need a manual review step, do not queue the message; wait for the approval prompt and confirm manually. + +**Q: Why are my queued messages triggering auto-approval?** +A: This isn’t the Auto-Approving Actions setting. Queueing a message tells Roo to proceed without pausing for confirmations, so the queued message implicitly approves the next action. To avoid this, don’t queue when you need a manual review—wait for the approval prompt and confirm manually. See [Auto-Approving Actions](/features/auto-approving-actions) for settings-based approvals. + +**Q: What happens if Roo encounters an error?** +A: Queued messages remain in the queue. You can choose to cancel them or let processing continue. + +**Q: Do queued messages use the same context?** +A: Yes, each message builds on the conversation context, including previous messages and responses. + +**Q: Can I edit a queued message?** +A: Yes! Click on any queued message to edit it. Press Enter to save your changes or Escape to cancel editing. Multiple messages can be edited simultaneously. + +--- + +## See Also + +- [The Chat Interface](/basic-usage/the-chat-interface) - Learn about all chat features +- [Task Management](/features/task-todo-list) - Organize complex workflows +- [Auto-Approving Actions](/features/auto-approving-actions) - Streamline repetitive approvals +- [Keyboard Shortcuts](/features/keyboard-shortcuts) - Speed up your workflow diff --git a/apps/docs/docs/features/model-temperature.md b/apps/docs/docs/features/model-temperature.md new file mode 100644 index 00000000000..63dadda7691 --- /dev/null +++ b/apps/docs/docs/features/model-temperature.md @@ -0,0 +1,122 @@ +--- +description: Learn how to adjust model temperature in Roo Code to optimize AI responses for different tasks, from precise code generation to creative brainstorming. +keywords: + - model temperature + - AI settings + - output randomness + - code generation + - temperature control + - API configuration +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Model Temperature + +Temperature controls the randomness of AI model outputs. Adjusting this setting optimizes results for different tasks - from precise code generation to creative brainstorming. Temperature is one of the most powerful parameters for controlling AI behavior. A well-tuned temperature setting can dramatically improve the quality and appropriateness of responses for specific tasks. + +Animation showing temperature slider adjustment + +--- + +## What is Temperature? + +Temperature is a setting (usually between 0.0 and 2.0) that controls how random or predictable the AI's output is. Finding the right balance is key: lower values make the output more focused and consistent, while higher values encourage more creativity and variation. For many coding tasks, a moderate temperature (around 0.3 to 0.7) often works well, but the best setting depends on what you're trying to achieve. + +:::info Temperature and Code: Common Misconceptions +Temperature controls output randomness, not code quality or accuracy directly. Key points: + +- **Low Temperature (near 0.0):** Produces predictable, consistent code. Good for simple tasks, but can be repetitive and lack creativity. It doesn't guarantee _better_ code. +- **High Temperature:** Increases randomness, potentially leading to creative solutions but also more errors or nonsensical code. It doesn't guarantee _higher-quality_ code. +- **Accuracy:** Code accuracy depends on the model's training and prompt clarity, not temperature. +- **Temperature 0.0:** Useful for consistency, but limits exploration needed for complex problems. + ::: + +--- + +## Default Values in Roo Code + +Roo Code uses a default temperature of 0.0 for most models, optimizing for maximum determinism and precision in code generation. This applies to OpenAI models, Anthropic models (non-thinking variants), LM Studio models, and most other providers. + +Some models use higher default temperatures - DeepSeek R1 models and certain reasoning-focused models default to 0.6, providing a balance between determinism and creative exploration. + +Models with thinking capabilities (where the AI shows its reasoning process) require a fixed temperature of 1.0 which cannot be changed, as this setting ensures optimal performance of the thinking mechanism. This applies to any model with the ":thinking" flag enabled. + +Some specialized models don't support temperature adjustments at all, in which case Roo Code respects these limitations automatically. + +--- + +## When to Adjust Temperature + +Here are some examples of temperature settings that might work well for different tasks: + +- **Code Mode (0.0-0.3):** For writing precise, correct code with consistent, deterministic results +- **Architect Mode (0.4-0.7):** For brainstorming architecture or design solutions with balanced creativity and structure +- **Ask Mode (0.7-1.0):** For explanations or open-ended questions requiring diverse and insightful responses +- **Debug Mode (0.0-0.3):** For troubleshooting bugs with consistent precision + +These are starting points – it's important to [experiment with different settings](#experimentation) to find what works best for your specific needs and preferences. + +--- + +## How to Adjust Temperature + +1. **Open the Roo Code Panel:** Click the Roo Code icon () in the VS Code Activity Bar +2. **Open Settings:** Click the icon in the top right corner +3. **Find Temperature Control:** Navigate to the Providers section +4. **Enable Custom Temperature:** Check the "Use custom temperature" box +5. **Set Your Value:** Adjust the slider to your preferred value + + Temperature setting in Roo Code settings panel + *Temperature slider in Roo Code settings panel* + +--- + +## Using API Configuration Profiles for Temperature + +Create multiple [API configuration profiles](/features/api-configuration-profiles) with different temperature settings: + +**How to set up task-specific temperature profiles:** + +1. Create specialized profiles like "Code - Low Temp" (0.1) and "Ask - High Temp" (0.8) +2. Configure each profile with appropriate temperature settings +3. Switch between profiles using the dropdown in settings or chat interface +4. Set different profiles as defaults for each mode for automatic switching when changing modes + +This approach optimizes model behavior for specific tasks without manual adjustments. + +--- + +## Technical Implementation + +Roo Code implements temperature handling with these considerations: + +- User-defined settings take priority over defaults +- Provider-specific behaviors are respected +- Model-specific limitations are enforced: + - Thinking-enabled models require a fixed temperature of 1.0 + - Some models don't support temperature adjustments + +--- + +## Experimentation + +Experimenting with different temperature settings is the most effective way to discover what works best for your specific needs: + +### Effective Temperature Testing + +1. **Start with defaults** - Begin with Roo Code's preset values (0.0 for most tasks) as your baseline +2. **Make incremental adjustments** - Change values in small steps (±0.1) to observe subtle differences +3. **Test consistently** - Use the same prompt across different temperature settings for valid comparisons +4. **Document results** - Note which values produce the best outcomes for specific types of tasks +5. **Create profiles** - Save effective settings as [API configuration profiles](/features/api-configuration-profiles) for quick access + +Remember that different models may respond differently to the same temperature values, and thinking-enabled models always use a fixed temperature of 1.0 regardless of your settings. + +--- + +## Related Features + +- Works with all [API providers](/providers/openai) supported by Roo Code +- Complements [custom instructions](/features/custom-instructions) for fine-tuning responses +- Works alongside [custom modes](/features/custom-modes) you create diff --git a/apps/docs/docs/features/more-features.md b/apps/docs/docs/features/more-features.md new file mode 100644 index 00000000000..3c8eeb06046 --- /dev/null +++ b/apps/docs/docs/features/more-features.md @@ -0,0 +1,61 @@ +--- +description: Explore additional Roo Code features including suggested responses for faster interaction, text-to-speech capabilities, and support for 18 languages. +keywords: + - additional features + - suggested responses + - text to speech + - TTS + - language support + - multilingual + - accessibility +sidebar_label: Additional Features +--- + +# Additional Features + +This page describes additional features in Roo Code that enhance your development workflow. + +--- + +## Suggested Responses + +Roo Code provides suggested responses to questions, saving you time typing. These suggestions appear as buttons below the chat input box after you ask a question. Click a suggestion to quickly use it as your next prompt. + +This feature aims to streamline your workflow by anticipating your potential follow-up questions and providing one-click access to relevant prompts. + +--- + +## Text to Speech + +Roo Code includes a Text-to-Speech (TTS) feature that reads out the AI responses, allowing you to listen to the information instead of reading it. This can be helpful for accessibility, learning, or simply for a change of pace. + +To use Text-to-Speech, simply enable it in the Roo Code settings. Once enabled, a speaker icon will appear next to each AI response in the chat. Click the icon to start listening. + +--- + +## Global Language Support + +Roo Code supports 18 languages, making it accessible to a wider range of users globally. You can now use Roo Code in: + +- English +- Simplified Chinese +- Traditional Chinese +- Spanish +- Hindi +- French +- Portuguese +- German +- Japanese +- Korean +- Italian +- Turkish +- Vietnamese +- Polish +- Catalan +- Russian +- Dutch +- Indonesian + +To change your language, go to **Advanced Settings > Language** in the Roo Code settings panel. + +This global update ensures a smoother and more inclusive coding experience for users around the world. diff --git a/apps/docs/docs/features/rooignore.md b/apps/docs/docs/features/rooignore.md new file mode 100644 index 00000000000..8a479137ecf --- /dev/null +++ b/apps/docs/docs/features/rooignore.md @@ -0,0 +1,88 @@ +--- +description: Learn how to use .rooignore files to control Roo Code's file access, protect sensitive information, and manage which files the AI can read or modify. +keywords: + - rooignore + - file access control + - sensitive data protection + - gitignore syntax + - file permissions + - security +sidebar_label: .rooignore +--- + +# Using .rooignore to Control File Access + +The `.rooignore` file is a key feature for managing Roo Code's interaction with your project files. It allows you to specify files and directories that Roo should not access or modify, similar to how `.gitignore` works for Git. + +--- + +## What is `.rooignore`? + +- **Purpose**: To protect sensitive information, prevent accidental changes to build artifacts or large assets, and generally define Roo's operational scope within your workspace. +- **How to Use**: Create a file named `.rooignore` in the root directory of your VS Code workspace. List patterns in this file to tell Roo which files and directories to ignore. +- **Scope**: `.rooignore` affects both Roo's tools and context mentions (like `@directory` attachments). + +Roo actively monitors the `.rooignore` file. Any changes you make are reloaded automatically, ensuring Roo always uses the most current rules. The `.rooignore` file itself is always implicitly ignored, so Roo cannot change its own access rules. + +--- + +## Pattern Syntax + +The syntax for `.rooignore` is identical to `.gitignore`. Here are common examples: + +- `node_modules/`: Ignores the entire `node_modules` directory. +- `*.log`: Ignores all files ending in `.log`. +- `config/secrets.json`: Ignores a specific file. +- `!important.log`: An exception; Roo will _not_ ignore this specific file, even if a broader pattern like `*.log` exists. +- `build/`: Ignores the `build` directory. +- `docs/**/*.md`: Ignores all Markdown files in the `docs` directory and its subdirectories. + +For a comprehensive guide on syntax, refer to the [official Git documentation on .gitignore](https://git-scm.com/docs/gitignore). + +--- + +## How Roo Tools Interact with `.rooignore` + +`.rooignore` rules are enforced across various Roo tools: + +### Strict Enforcement (Reads & Writes) + +These tools directly check `.rooignore` before any file operation. If a file is ignored, the operation is blocked: + +- [`read_file`](/advanced-usage/available-tools/read-file): Will not read ignored files. +- [`write_to_file`](/advanced-usage/available-tools/write-to-file): Will not write to or create new ignored files. +- [`apply_diff`](/advanced-usage/available-tools/apply-diff): Will not apply diffs to ignored files. +- [`list_code_definition_names`](/advanced-usage/available-tools/list-code-definition-names): Will not parse ignored files for code symbols. + +### File Discovery and Listing + +- **[`list_files`](/advanced-usage/available-tools/list-files) Tool & `@directory` Attachments**: When Roo lists files or when you use `@directory` attachments, ignored files are omitted or marked with a 🔒 symbol (see "User Experience" below). Both use identical filtering logic. +- **Environment Details**: Information about your workspace (like open tabs and project structure) provided to Roo is filtered to exclude or mark ignored items. + +### Context Mentions + +- **`@directory` Attachments**: Directory contents respect `.rooignore` patterns. Ignored files are filtered out or marked with `[🔒]` prefix depending on the `showRooIgnoredFiles` setting. +- **Single File Mentions**: Ignored files return "(File is ignored by .rooignore)" instead of content. + +### Command Execution + +- **[`execute_command`](/advanced-usage/available-tools/execute-command) Tool**: This tool checks if a command (from a predefined list like `cat` or `grep`) targets an ignored file. If so, execution is blocked. + +--- + +## Key Limitations and Scope + +- **Workspace-Centric**: `.rooignore` rules apply **only to files and directories within the current VS Code workspace root**. Files outside this scope are not affected. +- **[`execute_command`](/advanced-usage/available-tools/execute-command) Specificity**: Protection for `execute_command` is limited to a predefined list of file-reading commands. Custom scripts or uncommon utilities might not be caught. +- **Not a Full Sandbox**: `.rooignore` is a powerful tool for controlling Roo's file access via its tools, but it does not create a system-level sandbox. + +--- + +## User Experience and Notifications + +- **Visual Cue (🔒)**: In file listings and `@directory` attachments, files ignored by `.rooignore` may be marked with a lock symbol (🔒), depending on the `showRooIgnoredFiles` setting (defaults to `true`). +- **Ignore Messages**: Single file mentions return "(File is ignored by .rooignore)" instead of content. +- **Error Messages**: If a tool operation is blocked, Roo receives an error: `"Access to [file_path] is blocked by the .rooignore file settings. You must try to continue in the task without using this file, or ask the user to update the .rooignore file."` +- **Chat Notifications**: You will typically see a notification in the Roo chat interface when an action is blocked due to `.rooignore`. + +This guide helps you understand the `.rooignore` feature, its capabilities, and its current limitations, so you can effectively manage Roo's interaction with your codebase. diff --git a/apps/docs/docs/features/settings-management.md b/apps/docs/docs/features/settings-management.md new file mode 100644 index 00000000000..8e66e07bdc1 --- /dev/null +++ b/apps/docs/docs/features/settings-management.md @@ -0,0 +1,200 @@ +--- +sidebar_label: Import/Export/Reset Settings +description: Manage your Roo Code settings by exporting, importing, or resetting them to defaults. +keywords: + - settings management + - import settings + - export settings + - reset settings + - configuration backup + - auto import +--- + +# Import, Export, and Reset Settings + +Roo Code allows you to manage your configuration settings effectively through export, import, and reset options. These features are useful for backing up your setup, sharing configurations with others, or restoring default settings if needed. + +You can find these options at the bottom of the Roo Code settings page, accessible via the gear icon () in the Roo Code chat view. + +Export, Import, and Reset buttons in Roo Code settings +*Image: Export, Import, and Reset buttons.* + +--- + +## Export Settings + +Clicking the **Export** button saves your current Roo Code settings to a JSON file. + +- **What's Exported:** The file includes your configured API Provider Profiles and Global Settings (UI preferences, mode configurations, context settings, etc.). +- **Security Warning:** The exported JSON file contains **all** your configured API Provider Profiles and Global Settings. Crucially, this includes **API keys in plaintext**. Treat this file as highly sensitive. Do not share it publicly or with untrusted individuals, as it grants access to your API accounts. +- **Process:** + 1. Click **Export**. + 2. A file save dialog appears, suggesting `roo-code-settings.json` as the filename (usually in your `~/Documents` folder). + 3. Choose a location and save the file. + +This creates a backup of your configuration or a file you can share. + +--- + +## Import Settings + +Clicking the **Import** button allows you to load settings from a previously exported JSON file. + +- **Process:** + 1. Click **Import**. + 2. A file open dialog appears. Select the `roo-code-settings.json` file (or similarly named file) you want to import. + 3. Roo Code reads the file, validates its contents against the expected schema, and applies the settings. +- **Merging:** Importing settings **merges** the configurations. It adds new API profiles and updates existing ones and global settings based on the file content. It does **not** delete configurations present in your current setup but missing from the imported file. +- **Validation:** Only valid settings matching the internal schema can be imported, preventing configuration errors. A success notification appears upon completion. + +--- + +## Automatic Configuration Import + +Automatically import your Roo Code settings from a file every time you start VS Code. This is a powerful way to sync your configuration across multiple machines or standardize settings for your entire team. + +### Key Features + +- **Effortless Sync**: Keep your settings consistent across different workspaces and devices. +- **Team Standardization**: Share a single configuration file to ensure your whole team uses the same settings. +- **Flexible Pathing**: Works with absolute paths, or paths relative to your home directory (e.g., `~/Documents/roo-settings.json`). +- **Silent & Safe**: If the file isn't found or contains errors, Roo Code starts up normally without blocking your workflow. + +### Use Case + +**Before**: Manually exporting and importing settings every time you moved to a new machine or wanted to share your setup. + +- Manually open the settings panel. +- Export your current settings to a file. +- Send the file to a teammate or a new machine. +- Manually import the file. + +**With this feature**: Configure the path once, and Roo Code handles the rest on every launch. + +### How it Works + +When VS Code starts, Roo Code checks for a specific setting: `roo-cline.autoImportSettingsPath`. If this setting contains a path to a valid Roo Code configuration file (`.json`), Roo Code will load it automatically. + +- Upon successful import, you will see a notification: `Successfully imported settings from [your-file-name.json]`. +- If the file is invalid or can't be found, you'll get a non-intrusive warning, and the extension will start with your last known settings. The `autoImportSettings` function is designed to never block the extension from activating. + +### Configuration + +To use this feature, add the following to your VS Code `settings.json` file: + +1. **Open your `settings.json` file**: + + - Use the Command Palette (`Ctrl/Cmd + Shift + P`) and search for "Preferences: Open User Settings (JSON)". + +2. **Add the setting**: + - Add the `roo-cline.autoImportSettingsPath` key with the path to your configuration file. + +**Examples**: + +- **Absolute Path (Recommended)** + + ```json + { + "roo-cline.autoImportSettingsPath": "/Users/your-username/Documents/dev-configs/roo-code.json" + } + ``` + +- **Home Directory Path** (using `~`) + + ```json + { + "roo-cline.autoImportSettingsPath": "~/roo-code-settings.json" + } + ``` + +- **To disable**, simply leave the path empty or remove the line entirely: + ```json + { + "roo-cline.autoImportSettingsPath": "" + } + ``` + +### FAQ + +**"What happens if my file has an error?"** + +- Roo Code will show a warning notification with the error details. The extension will continue to load normally with your previously saved settings. + +**"Where does Roo Code look for relative paths?"** + +- For safety and consistency, paths that are not absolute or home-directory-based are resolved relative to your home directory. + +**"Can I use this to manage settings for my team?"** + +- Yes. Place the configuration file in a shared location (like a synced cloud folder or a shared network drive) and have each team member point to that file. + +--- + +## Reset Settings + +Clicking the **Reset** button completely clears all Roo Code configuration data and returns the extension to its default state. This is a destructive action intended for troubleshooting or starting fresh. + +- **Warning:** This action is **irreversible**. It permanently deletes all API configurations (including keys stored in secret storage), custom modes, global settings, and task history. + +- **Process:** + + 1. Click the red **Reset** button. + 2. A confirmation dialog appears, warning that the action cannot be undone. + 3. Click "Yes" to confirm. + +- **What is Reset:** + + - **API Provider Profiles:** All configurations are deleted from settings and secret storage. + - **Global Settings:** All preferences (UI, modes, approvals, browser, etc.) are reset to defaults. + - **Custom Modes:** All user-defined modes are deleted. + - **Secret Storage:** All API keys and other secrets managed by Roo Code are cleared. + - **Task History:** The current task stack is cleared. + +- **Result:** Roo Code returns to its initial state, as if freshly installed, with default settings and no user configurations. + +Use this option only if you are certain you want to remove all Roo Code data or if instructed during troubleshooting. Consider exporting your settings first if you might want to restore them later. + +--- + +## UI Setting + +#### System Prompt Context Toggles + +Control what contextual information appears in the system prompt: + +- **Include Current Time** (Settings → General) + + - When enabled, adds the current timestamp to the system prompt + - When disabled, omits time information from the prompt + - Default: Enabled + +- **Include Current Cost** (Settings → General) + - When enabled, adds the current task cost to the system prompt + - When disabled, omits cost information from the prompt + - Default: Enabled + +**Example Impact:** + +With both enabled, the system prompt includes: + +``` +# Current Time +Current time in ISO 8601 UTC format: 2025-10-28T23:06:08.458Z +User time zone: America/Edmonton, UTC-6:00 + +# Current Cost +$0.14 +``` + +With both disabled, these sections are omitted, reducing token usage when you don't need this context. + +#### Collapse thinking messages by default + +- Location: Settings → UI +- Default: Enabled (thinking messages are collapsed by default) +- Behavior: + - Enabled (default): Thinking blocks remain collapsed until you expand them. + - Disabled: Thinking blocks are expanded by default. +- Notes: + - Applies across conversations globally. + - Text is localized; labels may differ by language. diff --git a/apps/docs/docs/features/shell-integration.mdx b/apps/docs/docs/features/shell-integration.mdx new file mode 100644 index 00000000000..7752e17abcc --- /dev/null +++ b/apps/docs/docs/features/shell-integration.mdx @@ -0,0 +1,510 @@ +--- +description: Learn how Roo Code integrates with your shell to execute commands. Troubleshooting guide for terminal issues and shell configuration. +keywords: + - shell integration + - terminal commands + - command execution + - shell configuration + - troubleshooting +--- +import Codicon from '@site/src/components/Codicon'; + +# Terminal Shell Integration + +Terminal Shell Integration is a key feature that enables Roo Code to execute commands in your terminal and intelligently process their output. This bidirectional communication between the AI and your development environment unlocks powerful automation capabilities. + +
+ +
+ +
+ +--- + +## What is Shell Integration? + +Shell integration is automatically enabled in Roo Code and connects directly to your terminal's command execution lifecycle without requiring any setup from you. This built-in feature allows Roo to: + +- Execute commands on your behalf through the [`execute_command`](/advanced-usage/available-tools/execute-command) tool +- Read command output in real-time without manual copy-pasting +- Automatically detect and fix errors in running applications +- Observe command exit codes to determine success or failure +- Track working directory changes as you navigate your project +- React intelligently to terminal output without user intervention +- Stop running commands directly from the chat interface using the stop button that appears next to the command execution message. + +Stop Command Button in Chat UI + +When you ask Roo to perform tasks like installing dependencies, starting a development server, or analyzing build errors, shell integration works behind the scenes to make these interactions smooth and effective. + +--- + + +## Terminal Integration Settings + +Roo Code provides settings to fine-tune how it interacts with terminals. To access these settings: +1. Click the icon in the top-right corner of the Roo Code sidebar. +2. In the settings pane that opens, select the "Terminal" group from the left-hand menu. + +### Basic Settings + +#### Terminal Output Limit +Terminal output limit slider set to 500 +Truncates by lines. Roo keeps the beginning and end and drops the middle with an "[...N lines omitted...]" marker to stay under the limit. Mechanism: keeps approximately 20% of the head and 80% of the tail of the allowed line budget and inserts an omission marker, preserving a blank line before the tail for readability. Use when commands print many lines (e.g., long logs) and you mostly care about headers and final results. Avoid when important details are in the middle. Default: 500 lines. + +#### Terminal Character Limit +Terminal character limit setting +Hard cap on total output size (characters). Roo keeps the beginning and end and omits the middle with an "[...N characters omitted...]" marker. Mechanism: takes precedence over the line limit; keeps ~20% of the head and ~80% of the tail of the character budget, overriding the line limit to prevent memory issues from very long lines. Use when commands print extremely long lines or massive blobs. Avoid when you need the exact full content. + +#### Compress progress bar output +Compress progress bar output checkbox +ON: Collapses progress bars/spinners by processing carriage returns (\r) and backspaces (\b) so only the final state is kept, then applies run-length encoding to collapse repeated lines. OFF: Keeps every update exactly as printed. Use when you don’t need intermediate spinner states (recommended ON). Disable only if you’re debugging step-by-step progress behavior. + +### Advanced Settings + +Unless noted, these settings apply only when "Use Inline Terminal (recommended)" is OFF (i.e., using the VS Code terminal). + +:::info Important +**Terminal restart required for these settings** + +Changes to advanced terminal settings only take effect after restarting your terminals. To restart a terminal: + +1. Click the trash icon in the terminal panel to close the current terminal +2. Open a new terminal with Terminal → New Terminal or Ctrl+` (backtick) + +Always restart all open terminals after changing any of these settings. +::: + + + +#### Use Inline Terminal (recommended) +Use Inline Terminal (recommended) switch +Controls how Roo Code executes terminal commands. + +- ON (Use Inline Terminal): Runs commands with the Inline Terminal (in chat), bypassing shell profiles and VS Code shell integration for reliability and faster starts. Mechanism: uses a background “execa” provider and streams output directly (no VS Code OSC 633/133 markers). + + Roo Code Inline Terminal when 'Use Inline Terminal (recommended)' is ON + *Inline Terminal active (Use Inline Terminal is ON).* + +- OFF (Use VS Code terminal): Uses the VS Code integrated terminal and your shell profile; may require shell integration and is more likely to hit “Shell Integration Unavailable” issues. Use this only when you specifically need terminal UI features or interactive profile behavior. + +#### Decision guide: Inline Terminal ON vs OFF +- Use ON when you want reliability, faster starts, or your shell profile causes issues. +- Use OFF when you need terminal UI features or your shell prompt customizations to run. +- Tip: If terminal commands fail or stall, switch ON and retry. + +:::info Runtime Environment +On macOS (and possibly other operating systems) the environment provided to VS Code, and consequently Roo Code, can differ depending on how VS Code is launched. + +If launched from the command line with the `code` command, VS Code and Roo Code inherit the environment from the shell that launched it. + +If launched from the Finder, Dock, or Spotlight, environment exported from `.zshrc` or `.zprofile` will likely be missing. + +If you rely on environment variables from those files and they are missing in VS Code, move them to `.zshenv`, then log out and back in so the window manager picks up the new settings. +::: + +The following advanced settings apply only when this is OFF (i.e., when using the VS Code terminal): + +#### Inherit environment variables +Inherit environment variables checkbox +VS Code terminal only. Controls whether VS Code integrated terminals inherit environment variables from the parent VS Code process. Mirrors the VS Code setting [`terminal.integrated.inheritEnv`](https://code.visualstudio.com/docs/editor/integrated-terminal#_inherit-environment-variables). Note: Inline Terminal (“Use Inline Terminal (recommended)” ON) runs as a background process and always uses the extension’s Node process environment; this setting doesn’t affect it. Keep enabled (VS Code default) if you rely on PATH/proxy/auth variables provided by VS Code. Disable only for clean, reproducible integrated terminal sessions or when debugging environment conflicts. + +#### Terminal shell integration timeout +Terminal shell integration timeout slider set to 15s +How long Roo waits for VS Code shell integration to initialize and for the integration stream to start. If not ready within the timeout, a “no shell integration” event is emitted and execution will fall back to the Inline Terminal when retried. Use when your shell/profile has long startup times or you see “Shell Integration Unavailable” errors. Avoid increasing if you’re using the Inline Terminal (not applicable there). Default: 15s. Applies only when using the VS Code terminal. + +#### Terminal command delay +Terminal command delay slider set to 0ms +Adds a small delay after each command to help VS Code terminals flush all output. Mechanism: sets `PROMPT_COMMAND='sleep N'` for bash/zsh and appends `start-sleep -milliseconds N` for PowerShell. Use when you see truncated/missing tail output or prompt races. Avoid when output captures look correct. Set to 0 to disable. Default: 0ms. + +#### Enable PowerShell counter workaround +Enable PowerShell counter workaround checkbox +ON: Appends `; "(Roo/PS Workaround: N)" > $null` to each command to force a reliable post-execution signal and avoid missing or duplicated output on some setups. Use when using Windows PowerShell and output is incomplete or repeats, or when running the same command twice in a row fails. OFF: Runs PowerShell commands unchanged. + +#### Clear ZSH EOL mark +Clear ZSH EOL mark checkbox +ON: Omits Zsh’s end-of-line mark (%) so output is parsed correctly. Mechanism: sets `PROMPT_EOL_MARK=""`. Use when captured output ends with a stray % or parsing looks off. OFF: Leaves the default EOL mark (may confuse parsing on some setups). + +#### Enable Oh My Zsh integration +Enable Oh My Zsh integration checkbox +For users of the popular Oh My Zsh framework for Zsh. Enable this if you use Oh My Zsh and experience general issues with terminal command execution or output rendering that aren't solved by other settings. This helps Roo Code align with Oh My Zsh's specific shell integration mechanisms by setting `ITERM_SHELL_INTEGRATION_INSTALLED=Yes`. Restarting the IDE might be necessary. + +#### Enable Powerlevel10k integration +Enable Powerlevel10k integration checkbox +For users of the Powerlevel10k theme for Zsh. Enable this if your Powerlevel10k prompt (which can be quite complex) seems to interfere with Roo Code's ability to correctly detect command boundaries, parse output, or track the current working directory. This sets `POWERLEVEL9K_TERM_SHELL_INTEGRATION=true`. + +#### Enable ZDOTDIR handling +Enable ZDOTDIR handling checkbox +ON: Uses a temporary ZDOTDIR so VS Code shell integration works with zsh while preserving your config. Mechanism: creates a temp dir with a `.zshrc` that sources VS Code’s shell integration script, then re-sources your original zsh files and resets ZDOTDIR; the temp dir is cleaned up after initialization. Use when zsh shell integration fails or conflicts with your dotfiles. OFF: Uses your normal ZDOTDIR. + +--- + +## How Shell Integration Works + +Shell integration connects Roo to your terminal's command execution process in real-time: + +1. **Connection**: When you open a terminal, VS Code establishes a special connection with your shell. + +2. **Command Tracking**: VS Code monitors your terminal activities by detecting: + - When a new prompt appears + - When you enter a command + - When the command starts running + - When the command finishes (and whether it succeeded or failed) + - What directory you're currently in + +3. **Different Shells, Same Result**: Each shell type (Bash, Zsh, PowerShell, Fish) implements this slightly differently behind the scenes, but they all provide the same functionality to Roo. + +4. **Information Gathering**: Roo can see what commands are running, where they're running, how long they take, whether they succeed, and their complete output - all without you having to copy and paste anything. + +--- + +## Troubleshooting Shell Integration + +#### Quick fixes +1. Update VS Code/Cursor to the latest version (VS Code 1.93+ required). +2. Command Palette (Ctrl+Shift+P / Cmd+Shift+P) → “Terminal: Select Default Profile” → choose bash, zsh, PowerShell, or fish. +3. Windows PowerShell: run `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser`, then restart VS Code. +4. WSL (bash): add `. "$(code --locate-shell-integration-path bash)"` to `~/.bashrc`. + +#### PowerShell Execution Policy (Windows) + +PowerShell restricts script execution by default. To configure: + +1. Open PowerShell as Administrator +2. Check current policy: `Get-ExecutionPolicy` +3. Set appropriate policy: `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` + +Common policies: +- `Restricted`: No scripts allowed (default) +- `RemoteSigned`: Local scripts can run; downloaded scripts need signing +- `Unrestricted`: All scripts run with warnings +- `AllSigned`: All scripts must be signed + +#### Manual Shell Integration Installation + +If automatic integration fails, add the appropriate line to your shell configuration: + +**Bash** (`~/.bashrc`): +```bash +[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path bash)" +``` + +**Zsh** (`~/.zshrc`): +```bash +[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)" +``` + +**PowerShell** (`$Profile`): +```powershell +if ($env:TERM_PROGRAM -eq "vscode") { . "$(code --locate-shell-integration-path pwsh)" } +``` + +**Fish** (`~/.config/fish/config.fish`): +```fish +string match -q "$TERM_PROGRAM" "vscode"; and . (code --locate-shell-integration-path fish) +``` + +#### Terminal Customization Issues + +If you use terminal customization tools: + +**Powerlevel10k**: +```bash +# Add before sourcing powerlevel10k in ~/.zshrc +typeset -g POWERLEVEL9K_TERM_SHELL_INTEGRATION=true +``` + +**Alternative**: Enable the Powerlevel10k Integration setting in Roo Code. + +#### Verifying Shell Integration Status + +Confirm shell integration is active with these commands: + +**Bash**: +```bash +set | grep -i '[16]33;' +echo "$PROMPT_COMMAND" | grep vsc +trap -p DEBUG | grep vsc +``` + +**Zsh**: +```zsh +functions | grep -i vsc +typeset -p precmd_functions preexec_functions +``` + +**PowerShell**: +```powershell +Get-Command -Name "*VSC*" -CommandType Function +Get-Content Function:\Prompt | Select-String "VSCode" +``` + +**Fish**: +```fish +functions | grep -i vsc +functions fish_prompt | grep -i vsc +``` + +Visual indicators of active shell integration: +1. Shell integration indicator in terminal title bar +2. Command detection highlighting +3. Working directory updates in terminal title +4. Command duration and exit code reporting + +--- + +#### WSL: best-practice setup + +When using Windows Subsystem for Linux (WSL), there are two distinct ways to use VS Code with WSL, each with different implications for shell integration: + +#### Method 1: VS Code Windows with WSL Terminal + +In this setup: +- VS Code runs natively in Windows +- You use the WSL terminal integration feature in VS Code +- Shell commands are executed through the WSL bridge +- May experience additional latency due to Windows-WSL communication +- Shell integration markers may be affected by the WSL-Windows boundary: you must make sure that `source "$(code --locate-shell-integration-path )"` is loaded for your shell within the WSL environment because it may not get automatically loaded; see above. + +#### Method 2: VS Code Running Within WSL + +In this setup: +- You launch VS Code directly from within WSL using `code .` +- VS Code server runs natively in the Linux environment +- Direct access to Linux filesystem and tools +- Better performance and reliability for shell integration +- Shell integration is loaded automatically since VS Code runs natively in the Linux environment +- Recommended approach for WSL development + +For optimal shell integration with WSL, we recommend: +1. Open your WSL distribution +2. Navigate to your project directory +3. Launch VS Code using `code .` +4. Use the integrated terminal within VS Code + +--- + + +#### Cygwin (bash, zsh) + +Cygwin provides a Unix-like environment on Windows systems. To configure Cygwin as your terminal in VS Code: + +1. Install Cygwin from [https://www.cygwin.com/](https://www.cygwin.com/) + +2. Open VS Code settings: + - Select File > Preferences > Settings + - Click the "Open Settings (JSON)" icon in the top right corner + +3. Add the following configuration to your `settings.json` (inside the top-level curly braces `{}`): + ```json + { + "terminal.integrated.profiles.windows": { + "Cygwin": { + "path": "C:\\cygwin64\\bin\\bash.exe", + "args": ["--login"], + "env": {"CHERE_INVOKING": "1"} + } + }, + "terminal.integrated.defaultProfile.windows": "Cygwin" + } + ``` + + > Note: If you have 32-bit Cygwin installed, use `"C:\\cygwin\\bin\\bash.exe"` for the path. + +4. Understanding the configuration: + - `path`: Points to the Bash executable in your Cygwin installation + - `args`: The `--login` flag ensures the shell reads profile files + - `env`: The `CHERE_INVOKING` environment variable tells Cygwin to use the current directory as the working directory + - `terminal.integrated.defaultProfile.windows`: Sets Cygwin as the default terminal profile + +5. To open a new Cygwin terminal: + - Press Ctrl+Shift+(backtick) to open a new terminal, or + - Press `F1`, type "Terminal: Create New Terminal (with Profile)", and select "Cygwin" + +While our testing shows that this works out of the box, if you encounter shell integration issues with Cygwin, ensure you have added the appropriate shell integration hooks to your Cygwin bash profile as described in the "Manual Shell Integration Installation" section. + +#### VS Code Shell Integration for Fish + Cygwin on Windows + +For fellow Windows users running Fish terminal within a Cygwin environment, here's how VS Code's shell integration works: + +1. **(Optional) Locate the Shell Integration Script:** + Open your Fish terminal *within VS Code* and run the following command: + ```bash + code --locate-shell-integration-path fish + ``` + This will output the path to the `shellIntegration.fish` script. Note down this path. + +2. **Update Your Fish Configuration:** + Edit your `config.fish` file (usually located at `~/.config/fish/config.fish` within your Cygwin home directory). Add the following line, preferably within an `if status is-interactive` block or at the very end of the file: + + ```fish + # Example config.fish structure + if status is-interactive + # Your other interactive shell configurations... + # automatic locate integration script: + string match -q "$TERM_PROGRAM" "vscode"; and . (code --locate-shell-integration-path fish) + + # Or if the above fails for you: + # Source the VS Code shell integration script + # IMPORTANT: Replace the example path below with the actual path you found in Step 1. + # Make sure the path is in a format Cygwin can understand (e.g., using /cygdrive/c/...). + # source "/cygdrive/c/Users/YourUser/.vscode/extensions/..../shellIntegration.fish" + end + ``` + *Remember to replace the example path with the actual path from Step 1, correctly formatted for Cygwin.* + +3. **Configure VS Code Terminal Profile:** + Open your VS Code `settings.json` file (Ctrl+Shift+P -> "Preferences: Open User Settings (JSON)"). Update or add the Fish profile under `terminal.integrated.profiles.windows` like this: + + ```json + { + // ... other settings ... + + "terminal.integrated.profiles.windows": { + // ... other profiles ... + + // Recommended: Use bash.exe to launch fish as a login shell + "fish": { + "path": "C:\\cygwin64\\bin\\bash.exe", // Or your Cygwin bash path + "args": [ + "--login", + "-i", + "-c", + "exec fish" + ], + "icon": "terminal-bash" // Optional: Use a recognizable icon + }, + + // Alternative (if the above fails): Launch fish directly + "fish-direct": { + "path": "C:\\cygwin64\\bin\\fish.exe", // Ensure this is in your Windows PATH or provide full path + // Use 'options' here instead of 'args'; otherwise, you might encounter the error "terminal process terminated exit code 1". + "options": ["-l", "-c"], // Example: login and interactive flags. + "icon": "terminal-fish" // Optional: Use a fish icon + } + }, + + // Optional: Set fish as your default if desired + // "terminal.integrated.defaultProfile.windows": "fish", // or "fish-direct" depending what you use. + + // ... other settings ... + } + ``` + *Note: Using `bash.exe --login -i -c "exec fish"` is often more reliable in Cygwin environments for ensuring the correct environment setup before `fish` starts. However, if that approach doesn't work, try the `fish-direct` profile configuration.* + +4. **Restart VS Code:** + Close and reopen Visual Studio Code completely to apply the changes. + +5. **Verify:** + Open a new Fish terminal in VS Code. The shell integration features (like command decorations, better command history navigation, etc.) should now be active. You can test basic functionality by running simple commands like `echo "Hello from integrated Fish!"`. Fish Cygwin Integration Example + +This setup works reliably on Windows systems using Cygwin, Fish, and the Starship prompt, and should assist users with similar configurations. + + + + +#### Ctrl+C Behavior + +**Issue**: If text is already typed in the terminal when Roo tries to run a command, Roo will press Ctrl+C first to clear the line, which can interrupt running processes. + +**Workaround**: Make sure your terminal prompt is empty (no partial commands typed) before asking Roo to execute terminal commands. + +#### Multi-line Command Issues + +**Issue**: Commands that span multiple lines can confuse Roo and may show output from previous commands mixed in with current output. + +**Workaround**: Instead of multi-line commands, use command chaining with `&&` to keep everything on one line (e.g., `echo a && echo b` instead of typing each command on a separate line). + +#### PowerShell-Specific Issues + +1. **Premature Completion**: PowerShell sometimes tells Roo a command is finished before all the output has been shown. +2. **Repeated Commands**: PowerShell may refuse to run the same command twice in a row. + +**Workaround**: Enable the "PowerShell counter workaround" setting and set a terminal command delay of 150ms in the settings to give commands more time to complete. + +#### Incomplete Terminal Output + +**Issue**: Sometimes VS Code doesn't show or capture all the output from a command. + +**Workaround**: If you notice missing output, try closing and reopening the terminal tab, then run the command again. This refreshes the terminal connection. + +#### Python Virtual Environment (venv) Issues + +**Issue**: Disabling shell integration will disable venv; venv is VS Code–managed, Roo does not know anything about it because disabling shell integration uses a completely different mechanism for running commands (execa). + +**Workaround**: If you need to use Python virtual environments with Roo Code, you might be able to: + +```bash +killall code # closes all VS Code windows! +. venv/bin/activate +code +``` + +This way the environment is configured before code launches so Roo should inherit it. + +#### Checking Debug Logs +When shell integration issues occur, check the debug logs: +1. Open Help → Toggle Developer Tools → Console +2. Set "Show All Levels" to see all log messages +3. Look for messages containing `[Terminal Process]` +4. Check `preOutput` content in error messages: + - Empty preOutput (`''`) means VS Code sent no data + - This indicates a potential VS Code shell integration issue, or an upstream bug that is out of our control + - The absence of shell integration markers may require adjusting settings to work around possible upstream bugs or local workstation configuration issues related to shell initialization and VS Code's loading of special shell integration hooks + +#### Using the VS Code Terminal Integration Test Extension +The [VS Code Terminal Integration Test Extension](https://github.com/KJ7LNW/vsce-test-terminal-integration) helps diagnose shell integration issues by testing different settings combinations: + +1. **When Commands Stall**: + - If you see "command already running" warnings, click "Reset Stats" to reset the terminal state + - These warnings indicate shell integration is not working + - Try different settings combinations until you find one that works + - If it really gets stuck, restart the extension by closing the window and pressing F5 + +2. **Testing Settings**: + - Systematically try different combinations of: + * Terminal Command Delay + * Shell Integration settings + - Document which combinations succeed or fail + - This helps identify patterns in shell integration issues + +3. **Reporting Issues**: + - Once you find a problematic configuration + - Document the exact settings combination + - Note your environment (OS, VS Code version, shell, and any shell prompt customization) + - Open an issue with these details to help improve shell integration + +--- + +## FAQ + +- Why does Roo press Ctrl+C first? + - To clear any partially typed command so it can run reliably without interrupting your process. + +- Can I run multi-line commands? + - Prefer chaining with && to avoid mixed output (e.g., `echo a && echo b`). + +- How do I use Python venv with Inline Terminal? + - Close VS Code, activate the venv in a shell, then launch VS Code so Roo inherits it. + + +- What does “Command Execution Fallback” mean? + - Roo ran the command without full shell integration. How it works: if VS Code terminal integration can’t connect, Roo runs the command in a background process. + - What you’ll see: a chat notice that real-time streaming and exit‑code detection may be limited. + - Fix: turn ON [Use Inline Terminal (recommended)](#use-inline-terminal-recommended) or follow the Troubleshooting steps above to restore VS Code shell integration. + Command execution fallback notification example + + diff --git a/apps/docs/docs/features/skills.mdx b/apps/docs/docs/features/skills.mdx new file mode 100644 index 00000000000..fae11c47ee4 --- /dev/null +++ b/apps/docs/docs/features/skills.mdx @@ -0,0 +1,336 @@ +--- +description: Learn how to create reusable skills that package task-specific instructions, making Roo Code more effective at specialized workflows. +keywords: + - skills + - task-specific instructions + - agentskills + - SKILL.md + - reusable instructions + - workflow automation +--- + +# Skills + +Skills package task-specific instructions that Roo loads on-demand when your request matches the skill's purpose. Unlike custom instructions that apply to everything, skills activate only when needed—making Roo more effective at specialized tasks without cluttering the base prompt. + +
+ +
+ +
+ +--- + +## Why It Matters + +**Custom Instructions apply broadly** across all your work. They're great for general coding standards or style preferences, but not ideal for specific workflows like "process PDF files" or "generate API documentation." + +**Skills solve this**: Create a skill for PDF processing, and Roo only loads those instructions when you actually ask to work with PDFs. This keeps the system prompt focused and gives Roo deep expertise in specific domains without affecting unrelated tasks. + +You can't package bundled assets (scripts, templates, references) with custom instructions. Skills let you store related files alongside the instructions, creating self-contained workflow packages. + +## What Skills Let You Do + +- **Task-Specific Expertise**: Package detailed instructions for specialized workflows (data processing, documentation generation, code migration patterns) +- **Bundled Resources**: Include helper scripts, templates, or reference files alongside instructions +- **Mode Targeting**: Create skills that only activate in specific modes (e.g., code refactoring skills only in Code mode) +- **Team Sharing**: Version-control project skills in `.roo/skills/` for consistent team workflows +- **Personal Library**: Build a global skills library in `~/.roo/skills/` that works across all projects +- **Override Control**: Project skills override global skills, mode-specific override generic + +## How Skills Work + +Skills use **progressive disclosure** to efficiently load content only when needed: + +**Level 1: Discovery** - Roo reads each `SKILL.md` file and parses its frontmatter to extract `name` and `description`. Only this metadata is stored for matching—the full content isn't held in memory until needed. + +**Level 2: Instructions** - When your request matches a skill's description, Roo uses [`read_file`](/advanced-usage/available-tools/read-file) to load the full SKILL.md instructions into context. + +**Level 3: Resources** - The prompt tells Roo it may access bundled files (scripts, templates, references) alongside the skill. There's no separate resource manifest—Roo discovers these files on-demand when the instructions reference them. + +This architecture means skills remain dormant until activated—they don't bloat your base prompt. You can install many skills, and Roo loads only what's relevant for each task. + +--- + +## Creating Your First Skill + +#### 1. Choose a location + +**Global skills** (available in all projects): +```bash +# Linux/macOS +~/.roo/skills/{skill-name}/SKILL.md + +# Windows +%USERPROFILE%\.roo\skills\{skill-name}\SKILL.md +``` + +**Project skills** (specific to current workspace): +```bash +/.roo/skills/{skill-name}/SKILL.md +``` + +#### 2. Create the skill directory and file + +```bash +# Example: PDF processing skill +mkdir -p ~/.roo/skills/pdf-processing +touch ~/.roo/skills/pdf-processing/SKILL.md +``` + +#### 3. Write the SKILL.md file + +The file requires frontmatter with `name` and `description`: + +```markdown +--- +name: pdf-processing +description: Extract text and tables from PDF files using Python libraries +--- + +# PDF Processing Instructions + +When the user requests PDF processing: + +1. Check if PyPDF2 or pdfplumber is installed +2. For text extraction, use pdfplumber for better table detection +3. For simple text-only PDFs, PyPDF2 is sufficient +4. Always handle encoding errors gracefully +5. Offer to save extracted content to a file + +## Code Template + +[Your detailed code patterns here] + +## Common Issues + +- Encrypted PDFs: Explain they require password parameter +- Scanned PDFs: Recommend OCR tools like pytesseract +- Large files: Suggest page-by-page processing +``` + +**Naming rules:** +- The `name` field must exactly match the directory name (or symlink name) +- Names must be 1–64 characters, lowercase letters/numbers/hyphens only +- No leading/trailing hyphens, no consecutive hyphens (e.g., `my--skill` is invalid) +- Both `name` and `description` are required +- Descriptions must be 1–1024 characters (trimmed) +- The description tells Roo when to use this skill—be specific + +#### 4. Test the skill + +Ask Roo something matching the description: +``` +"Can you help me extract tables from this PDF file?" +``` + +Roo should recognize the request matches your skill description, load the SKILL.md file, and follow its instructions. + +--- + +## Directory Structure + +#### Basic structure + +``` +~/.roo/skills/ # Global skills +├── pdf-processing/ +│ ├── SKILL.md # Required +│ ├── extract.py # Optional: bundled scripts +│ └── templates/ # Optional: related files +│ └── output-template.md +└── api-docs-generator/ + └── SKILL.md + +.roo/skills/ # Project skills (override global) +└── custom-pdf-workflow/ + └── SKILL.md +``` + +#### Mode-specific skills + +Create skills that only activate in specific modes: + +``` +~/.roo/skills-code/ # Only in Code mode +└── refactoring-patterns/ + └── SKILL.md + +.roo/skills-architect/ # Only in Architect mode +└── system-design-templates/ + └── SKILL.md + +~/.roo/skills-{modeSlug}/ # Any mode +``` + +**When to use mode-specific skills:** +- Code refactoring patterns (Code mode only) +- System design templates (Architect mode only) +- Documentation standards (specific to a doc writing mode) + +--- + +## Override Priority + +When skills with the same name exist in multiple locations, this priority applies (project vs global is evaluated first, then mode-specific vs generic within each source): + +1. **Project mode-specific** (`.roo/skills-code/my-skill/`) +2. **Project generic** (`.roo/skills/my-skill/`) +3. **Global mode-specific** (`~/.roo/skills-code/my-skill/`) +4. **Global generic** (`~/.roo/skills/my-skill/`) + +This means a **project generic** skill overrides a **global mode-specific** skill—project location takes precedence over mode specificity. + +This lets you: +- Set global standards that work everywhere +- Override them per-project when needed (even with generic skills) +- Specialize skills for specific modes within each location + +--- + +## Skill Discovery + +Roo automatically discovers skills: +- **At startup**: All skills are indexed by reading and parsing each SKILL.md +- **During development**: File watchers detect changes to SKILL.md files +- **Mode filtering**: Only skills relevant to the current mode are available + +You don't need to register or configure skills—just create the directory structure. + +:::warning Custom System Prompts Override Skills +If you have a file-based custom system prompt (`.roo/system-prompt-{mode-slug}`), it replaces the standard system prompt entirely—including the skills section. Skills won't be available when a custom system prompt is active. +::: + +#### Symlink support + +Skills support symbolic links for sharing skill libraries across projects: + +```bash +# Share a skill library across projects +ln -s /shared/company-skills ~/.roo/skills/company-standards +``` + +The skill name comes from the symlink name (or directory name if not symlinked). The frontmatter `name` field must match this name exactly—you can't create aliases with different names pointing to the same skill. + +--- + +## Troubleshooting + +#### Skill isn't loading + +**Symptom**: Roo doesn't use your skill even when you request something matching the description. + +**Causes & fixes**: +1. **Name mismatch**: The frontmatter `name` field must exactly match the directory name + ```markdown + # ✗ Wrong - directory is "pdf-processing" + --- + name: pdf_processing + --- + + # ✓ Correct + --- + name: pdf-processing + --- + ``` + +2. **Missing required fields**: Both `name` and `description` are required in frontmatter + +3. **Wrong mode**: If the skill is in `skills-code/` but you're in Architect mode, it won't load. Move to `skills/` for all modes or create mode-specific variants. + +4. **Description too vague**: Make descriptions specific so Roo can match them to requests + ```markdown + # ✗ Vague + description: Handle files + + # ✓ Specific + description: Extract text and tables from PDF files using Python libraries + ``` + +#### Skill loads but doesn't help + +**Symptom**: Roo reads the skill but doesn't follow instructions. + +**Cause**: Instructions may be too general or missing critical details. + +**Fix**: Make instructions actionable: +- Include specific function names or library choices +- Provide code templates +- List common edge cases and how to handle them +- Add troubleshooting guidance for the specific task + +#### Multiple skills conflict + +**Symptom**: Unclear which skill Roo will use when multiple might match. + +**Cause**: Overlapping descriptions or mode configurations. + +**Prevention**: +- Make descriptions distinct and specific +- Use mode-specific directories to separate concerns +- Rely on override priority—project skills override global + +#### Can't share skills with team + +**Symptom**: Want team members to use the same skills. + +**Solution**: Place skills in `.roo/skills/` within your project and commit to version control. Each team member gets the same skills automatically. + +--- + +## Skills vs Custom Instructions vs Slash Commands + +| Feature | Skills | Custom Instructions | Slash Commands | +|---------|--------|---------------------|----------------| +| **When loaded** | On-demand (when request matches) | Always (part of base prompt) | On-demand (when invoked) | +| **Best for** | Task-specific workflows | General coding standards | Retrieving pre-written content | +| **Can bundle files** | Yes | No | No | +| **Mode targeting** | Yes (`skills-{mode}` directories) | Yes (`rules-{mode}` directories) | No | +| **Override priority** | Project > Global, Mode > Generic | Project > Global | Project > Global | +| **Format** | SKILL.md with frontmatter | Any text file | JSON metadata + content | +| **Discovery** | Automatic (directory scan) | Automatic (directory scan) | Automatic (directory scan) | + +**When to use each:** +- **Skills**: "Generate API docs following OpenAPI spec" → Detailed OpenAPI processing instructions load only when needed +- **Custom Instructions**: "Always use TypeScript strict mode" → Applies to all TypeScript work +- **Slash Commands**: `/init` → Returns standardized project setup instructions + +--- + +## Skill Specification + +Roo Code skills follow the [Agent Skills](https://agentskills.io/) format for skill packaging and metadata. Skills are **instruction packages with optional bundled files**—they don't register new executable tools. + +**Required conventions:** +- The frontmatter `name` must exactly match the directory (or symlink) name +- Both `name` and `description` fields are required in frontmatter +- Names: 1–64 chars, lowercase alphanumeric + hyphens, no leading/trailing/consecutive hyphens +- Descriptions: 1–1024 chars (trimmed) + +#### Roo-specific enhancements + +Roo Code adds mode-specific targeting beyond the base format: + +- **Standard locations**: `.roo/skills/` and `~/.roo/skills/` +- **Mode-specific directories**: `skills-{mode}/` (e.g., `skills-code/`, `skills-architect/`) enable mode targeting + +--- + +## See Also + +- [Custom Instructions](/features/custom-instructions) - Set general rules that apply to all work +- [Slash Commands](/features/slash-commands) - Execute commands that return content +- [Custom Modes](/features/custom-modes) - Create specialized modes with specific tool access diff --git a/apps/docs/docs/features/slash-commands.mdx b/apps/docs/docs/features/slash-commands.mdx new file mode 100644 index 00000000000..dfd85038bce --- /dev/null +++ b/apps/docs/docs/features/slash-commands.mdx @@ -0,0 +1,446 @@ +--- +description: Learn how to create and use custom slash commands in Roo Code to automate workflows and extend functionality with markdown-based definitions. +keywords: + - slash commands + - custom commands + - Roo Code commands + - command automation + - workflow automation + - markdown commands + - .roo/commands +--- + +# Slash Commands + +Create custom slash commands to automate repetitive tasks and extend Roo Code's functionality with simple markdown files. + +
+ +
+ +
+ +:::tip Quick Start +Type `/` in chat to select a command. To create or manage commands, open Settings > Slash Commands. You can still store commands in `.roo/commands/` (project) or `~/.roo/commands/` (global). +::: + +--- + +## Overview + +Slash commands let you create reusable prompts and workflows that can be triggered instantly. Turn complex multi-step processes into single commands, standardize team practices, and automate repetitive tasks with simple markdown files. + +Slash commands menu showing available commands + +**Key Benefits:** +- **Workflow Automation**: Turn complex multi-step processes into single commands +- **Team Standardization**: Share commands across your team for consistent practices +- **Context Preservation**: Include project-specific context in every command +- **Quick Access**: Fuzzy search and autocomplete for instant command discovery + +--- + +## Creating Custom Commands + +Custom commands extend Roo Code's functionality by adding markdown files to specific directories: + +- **Project-specific**: `.roo/commands/` in your workspace root +- **Global**: `~/.roo/commands/` in your home directory + +The filename becomes the command name. For example: +- `review.md` → `/review` +- `test-api.md` → `/test-api` +- `deploy-check.md` → `/deploy-check` + +:::info Command Name Processing +When creating commands in Settings > Slash Commands, command names are automatically processed: +- Converted to lowercase +- Spaces replaced with dashes +- Special characters removed (except dashes) +- Multiple consecutive dashes replaced with single dash +- Leading/trailing dashes removed + +Example: "My Cool Command!" becomes `my-cool-command` +::: + +**Basic Command Format** + +Create a simple command by adding a markdown file: + +```markdown +# review.md +Please review this code for: +- Performance issues +- Security vulnerabilities +- Code style violations +- Potential bugs +``` + +**Advanced Command with Frontmatter** + +Add metadata using frontmatter for enhanced functionality: + +```yaml +--- +description: Comprehensive code review focusing on security and performance +argument-hint: +--- + +# Security-First Code Review + +Please perform a thorough security review of the selected code: + +1. **Authentication & Authorization** + - Check for proper access controls + - Verify token validation + - Review permission checks + +2. **Input Validation** + - Identify potential injection points + - Check for proper sanitization + - Review data type validation + +3. **Security Best Practices** + - Look for hardcoded secrets + - Check for secure communication + - Review error handling for information leakage +``` + +**Frontmatter Fields:** +- **`description`**: Appears in the command menu to help users understand the command's purpose +- **`argument-hint`**: (Optional) Provides a hint about expected arguments when using the command. See [Argument Hints](#argument-hints) for detailed information +- **`mode`**: (Optional) Mode slug to switch to before running the command (e.g., `code`, `architect`). Roo switches to this mode first, then executes the command content in that mode's context + +--- + +## Command Management + +Create and maintain commands from Settings. + +1. Click the gear icon in Roo Code and open Settings +2. Go to the Slash Commands tab +3. Click "New Command", name it, and choose location (Project or Global) +4. The command file opens with starter template content + +Settings > Slash Commands tab for creating and managing commands + +--- + +## Using Slash Commands + +Type `/` in the chat to open the selection-only command menu. Use the gear icon to open Settings > Slash Commands for creating and editing commands. +Slash command popover with gear icon that opens Settings > Slash Commands + +1. Selection-only: Pick from existing commands; creation and editing live in Settings +2. Autocomplete: Start typing to filter commands (e.g., `/sam` shows `sample-command-name`) +3. Description Preview: See command descriptions in the menu +4. Command Priority: Project commands override global commands with the same name + +--- + +## Argument Hints + +Argument hints provide instant help for slash commands, showing you what kind of information to provide when a command expects additional input. + +When you type `/` to bring up the command menu, commands that expect arguments will display a light gray hint next to them. This hint tells you what kind of argument the command is expecting. + +For example: +- `/mode ` - The hint `` indicates you should provide a mode name like `code` or `debug` +- `/api-endpoint ` - Shows you need both an endpoint name and HTTP method + +After selecting the command, it will be inserted into the chat input followed by a space. The hint is not inserted; it is only a visual guide to help you know what to type next. You must then manually type the argument after the command. + +**Adding Argument Hints to Custom Commands** + +You can add argument hints to your custom commands using the `argument-hint` field in the frontmatter: + +```yaml +--- +description: Generate a new REST API endpoint with best practices +argument-hint: +--- +``` + +This will display as `/api-endpoint ` in the command menu. + +**Best Practices for Argument Hints:** +- **Be Specific**: Use descriptive placeholders like `` instead of generic ones like `` +- **Show Multiple Arguments**: If your command needs multiple inputs, show them all: ` ` +- **Use Consistent Format**: Always wrap placeholders in angle brackets: `` +- **Keep It Concise**: Hints should be brief and clear + +**Common Questions:** + +- **"What if I don't provide the argument?"** The command might not work as expected, or it might prompt you for more information. The hint is there to help you get it right the first time. +- **"Do all commands have hints?"** No, only commands that are designed to take arguments will have hints. Commands that work without additional input won't show hints. +- **"Can I use a command without replacing the hint?"** The hint text (like ``) needs to be replaced with actual values. Leaving the hint text will likely cause the command to fail or behave unexpectedly. + +--- + +## Examples and Use Cases + +**Mode-Targeting Commands** + +Use the `mode` field to ensure a command runs in a specific mode context: + +```yaml +--- +description: Analyze architecture and propose improvements +mode: architect +--- + +Review the current system architecture and suggest improvements for: +- Scalability bottlenecks +- Component coupling +- Security boundaries +- Data flow optimization +``` + +When you run this command, Roo switches to Architect mode first, then processes the command content with Architect's role definition and tool restrictions. + +**Development Workflows** + +**API Endpoint Generator** +```yaml +--- +description: Generate a new REST API endpoint with best practices +argument-hint: +--- + +Create a new REST API endpoint with the following specifications: +- Proper error handling +- Input validation +- Authentication middleware +- OpenAPI documentation +- Unit tests +- Integration tests + +Follow our project's API conventions and patterns. +``` + +**Database Migration Helper** +```yaml +--- +description: Create a database migration with rollback support +--- + +Generate a database migration that: +1. Includes both up and down migrations +2. Has proper transaction handling +3. Includes data validation +4. Provides clear migration descriptions +5. Follows our naming conventions + +Remember to check for dependent migrations and data integrity. +``` + +**Code Quality** + +**Performance Analyzer** +```yaml +--- +description: Analyze code for performance bottlenecks +--- + +Analyze the selected code for performance issues: +- Identify O(n²) or worse algorithms +- Find unnecessary database queries +- Detect memory leaks +- Suggest caching opportunities +- Recommend async/await optimizations +- Check for proper resource cleanup +``` + +**Refactoring Assistant** +```yaml +--- +description: Suggest refactoring improvements for cleaner code +--- + +Review this code and suggest refactoring improvements: +- Extract repeated code into functions +- Improve variable and function names +- Simplify complex conditionals +- Apply SOLID principles +- Reduce coupling between components +- Improve testability +``` + +**Documentation** + +**README Generator** +```yaml +--- +description: Create a comprehensive README for the current project +--- + +Generate a README.md file that includes: +1. Project title and description +2. Installation instructions +3. Usage examples +4. API documentation +5. Configuration options +6. Contributing guidelines +7. License information + +Base it on the current project structure and existing code. +``` + +**API Documentation** +```yaml +--- +description: Generate OpenAPI/Swagger documentation +--- + +Create OpenAPI 3.0 documentation for the API endpoints in this file: +- Include all HTTP methods +- Document request/response schemas +- Add example requests and responses +- Include authentication requirements +- Document error responses +- Add descriptive summaries +``` + +**Testing** + +**Test Generator** +```yaml +--- +description: Generate comprehensive test suites +--- + +Create tests for the selected code: +1. Unit tests for all public methods +2. Edge case testing +3. Error handling tests +4. Mock external dependencies +5. Performance benchmarks +6. Integration tests where applicable + +Use our project's testing framework and conventions. +``` + +**Test Coverage Analyzer** +```yaml +--- +description: Identify missing test coverage +--- + +Analyze the current test coverage and: +- Identify untested code paths +- Suggest additional test cases +- Find edge cases not covered +- Recommend integration tests +- Check for proper error testing +``` + +--- + +## Best Practices + +**Command Naming:** +- Use descriptive, action-oriented names +- Keep names concise but clear +- Use hyphens for multi-word commands +- Avoid generic names like `help` or `test` +- Note: Names are automatically slugified (lowercase, special characters removed) +- The `.md` extension is automatically added/removed as needed + +**Command Content:** +- Start with a clear directive +- Use structured formats (lists, sections) +- Include specific requirements +- Reference project conventions +- Keep commands focused on a single task + +**Organization:** +- Group related commands in subdirectories +- Use consistent naming patterns +- Document complex commands +- Version control your commands +- Share team commands in the project repository + +--- + +## Built-in Commands + +Roo Code includes powerful built-in commands that provide specialized functionality: + +### The `init` Command + +The `/init` command is a comprehensive AI assistant setup tool that analyzes your codebase and creates tailored configuration files. This powerful command: + +**Performs Multi-Phase Analysis:** +- **Discovery Phase**: Scans your project structure and identifies key technologies +- **Project Identification**: Determines project type, frameworks, and dependencies +- **Architecture Mapping**: Analyzes code organization and patterns +- **Build/Test Detection**: Identifies build tools, test frameworks, and scripts +- **Code Style Extraction**: Captures coding conventions and patterns + +**Creates AI Assistant Configuration:** +- Generates mode-specific `AGENTS.md` files in `.roo/rules-*` directories +- Creates detailed rules for different AI assistant modes (Code, Architect, Debug, etc.) +- Produces concise, high-signal documentation following the "non-obvious-only" principle +- Supports multiple AI assistant formats (Claude, Cursor, Copilot) + +**Manages Project Setup:** +- Creates comprehensive todo lists for project initialization +- Identifies security and performance considerations +- Documents project-specific conventions and patterns +- Enforces quality criteria for generated documentation + +**Usage:** +Simply type `/init` in the chat to analyze your codebase and set up AI assistant configuration files tailored to your project. + +:::tip +The `init` command is especially useful when starting work on a new project or when you want to establish consistent AI assistant behavior across your team. +::: + +## Troubleshooting + +**Commands Not Appearing:** +- **Check file location**: Ensure custom command files are in `.roo/commands/` or `~/.roo/commands/` +- **Verify file extension**: Custom commands must be `.md` files +- **Reload window**: Sometimes VS Code needs to be reloaded to detect new command files + +**Command Not Found:** +When a slash command isn't found, the LLM will see an error message indicating where commands should be located. This helps guide you to create the command in the right place. + +**Command Template Content:** +New commands created through the UI receive template content to help you get started. This template includes basic structure and examples that you can customize. + +**Command Conflicts:** +- Project commands (`.roo/commands/`) override global commands (`~/.roo/commands/`) with the same name +- Built-in commands cannot be overridden +- When creating duplicate names through the UI, numbers are appended (e.g., `new-command-1`, `new-command-2`) + +**File System Errors:** +- **Permission Issues**: Ensure you have write permissions to the `.roo/commands/` directory +- **Directory Creation**: The system will attempt to create the commands directory if it doesn't exist +- **Symbolic Links**: Command directories support symbolic links for sharing commands across projects + +:::info About Mode Commands +The slash menu includes mode-switching commands (like `/code`, `/ask`) that fundamentally change the AI's operational mode - they don't just inject text but switch the entire AI context. Custom modes you create also appear as slash commands (e.g., a mode with slug `reviewer` becomes `/reviewer`). These mode commands cannot be overridden by custom workflow commands. Learn more in [Using Modes](/basic-usage/using-modes) and [Custom Modes](/features/custom-modes). +::: + +--- + +## See Also + +- [Using Modes](/basic-usage/using-modes) - Learn about Roo Code's different operational modes +- [Custom Instructions](/features/custom-instructions) - Set persistent instructions for Roo Code +- [Keyboard Shortcuts](/features/keyboard-shortcuts) - Quick access to commands +- [Task Management](/features/task-todo-list) - Manage complex workflows \ No newline at end of file diff --git a/apps/docs/docs/features/suggested-responses.md b/apps/docs/docs/features/suggested-responses.md new file mode 100644 index 00000000000..0bea3618d75 --- /dev/null +++ b/apps/docs/docs/features/suggested-responses.md @@ -0,0 +1,67 @@ +--- +description: Learn how suggested responses in Roo Code help you quickly answer follow-up questions with pre-formulated options, speeding up your workflow. +keywords: + - suggested responses + - follow-up questions + - quick answers + - workflow optimization + - ask_followup_question tool +sidebar_label: Suggested Responses +--- + +import Codicon from '@site/src/components/Codicon'; + +# Suggested Responses + +When Roo needs more information to complete a task, it uses the [`ask_followup_question` tool](/advanced-usage/available-tools/ask-followup-question). To make responding easier and faster, Roo often provides suggested answers alongside the question. + +--- + +## Overview + +Suggested Responses appear as clickable buttons directly below Roo's question in the chat interface. They offer pre-formulated answers relevant to the question, helping you provide input quickly. + +Example of Roo asking a question with suggested response buttons below it + +--- + +## How It Works + +1. **Question Appears**: Roo asks a question using the `ask_followup_question` tool. +2. **Suggestions Displayed**: If suggestions are provided by Roo, they appear as buttons below the question. +3. **Interaction**: You can interact with these suggestions in two ways. + +--- + +## Interacting with Suggestions + +You have three options for using suggested responses: + +1. **Direct Selection**: + + - **Action**: Simply click the button containing the answer you want to provide. + - **Result**: The selected answer is immediately sent back to Roo as your response. This is the quickest way to reply if one of the suggestions perfectly matches your intent. + +2. **Keyboard Shortcut**: + + - **Action**: Use the `roo.acceptInput` command with your configured keyboard shortcut. + - **Result**: The primary (first) suggestion button is automatically selected. + - **Note**: For setup details, see [Keyboard Shortcuts](/features/keyboard-shortcuts). + +3. **Edit Before Sending**: + - **Action**: + - Hold down `Shift` and click the suggestion button. + - _Alternatively_, hover over the suggestion button and click the pencil icon () that appears. + - **Result**: The text of the suggestion is copied into the chat input box. You can then modify the text as needed before pressing Enter to send your customized response. This is useful when a suggestion is close but needs minor adjustments. + +Chat input box showing text copied from a suggested response, ready for editing + +--- + +## Benefits + +- **Speed**: Quickly respond without typing full answers. +- **Clarity**: Suggestions often clarify the type of information Roo needs. +- **Flexibility**: Edit suggestions to provide precise, customized answers when needed. + +This feature streamlines the interaction when Roo requires clarification, allowing you to guide the task effectively with minimal effort. diff --git a/apps/docs/docs/features/task-todo-list.mdx b/apps/docs/docs/features/task-todo-list.mdx new file mode 100644 index 00000000000..4cf767cde7e --- /dev/null +++ b/apps/docs/docs/features/task-todo-list.mdx @@ -0,0 +1,146 @@ +--- +description: Learn how to use Roo Code's task todo list feature to track progress on complex tasks, manage subtasks, and stay organized. +keywords: + - todo list + - task management + - progress tracking + - subtasks + - project organization +--- + +# Task Todo List + +Keep your tasks on track with integrated todo management that helps you stay organized and focused on your development goals. Task Todo Lists provide interactive, persistent checklists that track your progress through complex, multi-step workflows directly within the chat interface. + +Task Todo List overview showing interactive checklist in Roo Code + +:::tip Todo List Triggers +Todo lists are automatically created for complex tasks, multi-step workflows, or when using Architect mode. You can also manually trigger them by asking Roo to "use the update_todo_list tool" or "create a todo list". + +See [When Roo Creates Todo Lists](#when-roo-creates-todo-lists) for detailed information about automatic and manual triggers. +::: + +
+ +
+ +
+ +--- + +## Use Case + +**Before**: Manually tracking steps for a complex task in your head or a separate notes file, making it easy to lose track of progress and next steps. + +**With Task Todo Lists**: Roo Code automatically creates and manages a structured checklist embedded in the conversation. You can see the status of each item, watch as the AI marks items complete, and provide feedback when Roo presents updates for approval. + +--- + +## How It Works + +The Task Todo List feature is powered by the [`update_todo_list`](/advanced-usage/available-tools/update-todo-list) tool, which enables dynamic task management within the chat interface. + +### When Roo Creates Todo Lists + +Roo creates todo lists through both automatic detection and manual requests: + +- **Task complexity detected** - Multiple steps, phases, or dependencies identified in your request +- **Working in Architect mode** - Always creates todo lists as the primary planning tool for structuring work +- **Direct tool request** - Say "use the update_todo_list tool" or "please use update_todo_list" + +Remember: Even when manually triggered, Roo maintains control over the todo list content and workflow. You provide feedback during approval dialogs, but Roo manages the list based on task needs. + +### Display and Interaction + +Todo lists appear in multiple places: + +1. **Task Header Summary**: A compact, read-only display showing progress and the next important item via the `TodoListDisplay` component + + Task header summary showing todo list progress + +2. **Interactive Tool Block**: An interface within the chat via the `UpdateTodoListToolBlock` component that allows you to: + - View all todo items with their current status + - Click the "Edit" button to enter edit mode where you can: + - Modify task descriptions directly + - Change task status using dropdown selectors + - Delete tasks with the × button + - Add new tasks with the "+ Add Todo" button + - Stage changes that are applied when Roo next updates the list + - View the progression as Roo manages the todo workflow + + Interactive todo list tool block in chat + +3. **Environment Details**: Todo lists appear as a "REMINDERS" table in the environment_details section, giving the AI persistent access to current todo state. Note: If the `todoListEnabled` setting is disabled, the reminders section will not appear in environment details. + +### Expanded Todo View + +When you click on the collapsed todo summary in the task header, a floating panel appears with enhanced functionality: +- **Backdrop overlay**: Click outside the panel to close it +- **Full todo list display**: Shows all todos with their current status indicators +- **Auto-scroll**: Automatically scrolls to the current in-progress task +- **Smooth animations**: Collapse and expand transitions for better user experience +- **Persistent state**: Maintains your scroll position when reopening + +### Understanding Task Status + +Roo Code automatically manages status progression based on task progress. Each todo item has one of three states: + +**Pending**: Shows an empty circle with a border, indicating the task hasn't been started yet +![Pending todo item with empty circle](../../static/img/task-todo-list/task-todo-list-4.png) + +**In Progress**: Displays a filled yellow circle, showing the task is currently being worked on +![In progress todo item with yellow circle](../../static/img/task-todo-list/task-todo-list-5.png) + +**Completed**: Features a filled green circle, confirming the task is fully finished +![Completed todo item with green circle](../../static/img/task-todo-list/task-todo-list-6.png) + +### Editing Todo Lists During Approval + +When Roo presents a todo list update for approval, you have full control through the Edit mode: + +1. **Click "Edit"** to enter edit mode +2. **Make your changes**: + - Edit task descriptions inline + - Change status using the dropdown menu (Pending/In Progress/Completed) + - Remove tasks with the × button + - Add new tasks with the "+ Add Todo" button at the bottom +3. **Save or Cancel** your changes +4. **Approve or Reject** the overall update + +Note: Your edits are staged and only applied when Roo processes the next todo list update. This maintains Roo's control over the workflow while giving you input on task details. + +--- + +## FAQ + +**"Can I create my own todo lists?"** +Yes, you can manually trigger todo list creation by asking Roo to "use the update_todo_list tool" or "create a todo list". However, Roo maintains control over the todo list content and workflow - you provide feedback during approval dialogs, but Roo manages the list based on task needs. + +**"Can I use todo lists for simple tasks?"** +Roo Code typically only creates todo lists for complex, multi-step tasks where they provide clear value. For simple tasks, the overhead of list management isn't necessary. + +**"Why can't I directly control the todo list?"** +This is an architectural design decision where Roo Code maintains authority over task management. You provide guidance and feedback, but Roo controls the workflow to ensure consistent task progression and accurate status tracking. + +--- + +## Configuration + +### Disabling Todo Lists + +You can disable todo lists entirely through the `todoListEnabled` setting. When disabled: +- Roo will not create todo lists for any tasks +- The REMINDERS section will not appear in environment details +- Existing todo lists will remain visible but won't be updated \ No newline at end of file diff --git a/apps/docs/docs/features/worktrees.mdx b/apps/docs/docs/features/worktrees.mdx new file mode 100644 index 00000000000..fac2ebdd9d6 --- /dev/null +++ b/apps/docs/docs/features/worktrees.mdx @@ -0,0 +1,166 @@ +--- +description: Use Git worktrees to work on multiple branches simultaneously with Roo Code, each in its own VS Code window. +keywords: + - worktrees + - git worktrees + - multiple branches + - parallel development + - branch management + - agentic coding +--- + +# Worktrees + +Git worktrees allow you to work on multiple branches of the same repository simultaneously by keeping them in different directories. Each worktree gets its own VS Code window with Roo Code, enabling parallel development without branch switching. + +This is particularly powerful for agentic coding workflows where you might want to: + +- Test different implementation approaches in parallel +- Review pull requests without disrupting your current work +- Run multiple tasks on different branches simultaneously +- Maintain separate environments for development and debugging + +
+ +
+ +
+ +:::note Requirements +- Git must be installed on your system +- Your workspace must be a Git repository +- Multi-root workspaces are not supported +- Workspace must be at the repository root (not a subfolder) +::: + +--- + +## Getting Started + +### Accessing Worktrees + +You can access the worktrees feature in two ways: + +1. **Home Screen**: When you have multiple worktrees, a worktree selector appears at the top of the chat interface + - Click the selector to see all your worktrees + - Click on any worktree to switch to it + - Click the `+` button to create a new worktree + - Click the ⚙️ to manage worktrees + +2. **Settings Panel**: from the last point above or via Settings (⚙️) → Worktrees + - View and manage all your worktrees + - Create new worktrees + - Delete existing worktrees + - Configure `.worktreeinclude` settings + - Choose whether to show the selector in the home screen + +### Creating Your First Worktree + +1. Open the Roo Code settings by clicking the gear icon +2. Navigate to the "Worktrees" section +3. Click the "Create worktree" button +4. Fill in the required fields: + - **Base Branch**: The branch to create your new branch from (typically `main` or `develop`) + - **Branch Name**: Name for the new branch (e.g., `worktree/feature-name`) + - **Worktree Path**: Location where the worktree will be created +5. Click "Create" +6. Choose whether to open the new worktree in a new window or stay in your current window + +The worktree will be created with all the files from the base branch, and you can immediately start working on it. + +--- + +## Key Functionality + +### Switching Between Worktrees + +Once you have multiple worktrees, switching between them is seamless: + +**From the Home Screen**: +- Click the worktree selector at the top of the chat +- Select the worktree you want to switch to +- Choose whether to switch in the current window or open a new window + +**From Settings**: +- Navigate to Settings → Worktrees +- Click on any worktree to switch to it in the current window +- Click the icon to open in a new window + +:::tip Multiple Windows +Opening worktrees in new windows allows you to have multiple tasks running in parallel, each in its own workspace. This is ideal for comparing different approaches or working on multiple features simultaneously. +::: + +### Managing Worktrees + +**Viewing Your Worktrees**: +The worktrees list shows: +- Branch name (or "Detached HEAD" if not on a branch) +- Worktree path on your filesystem +- Status indicators (Primary, Locked) +- Current worktree is highlighted + +**Deleting Worktrees**: +1. Navigate to Settings → Worktrees +2. Click the trash icon next to the worktree you want to delete + + +### Copying Files with .worktreeinclude + +By default, Git worktrees only include files tracked by Git. Untracked files like `node_modules`, `.env`, or build artifacts aren't copied. The `.worktreeinclude` feature solves this problem. + +**How it Works**: +- Create a `.worktreeinclude` file at the root of your repository +- Add patterns for files/directories you want to copy (uses `.gitignore` syntax) +- Files must also be in `.gitignore` to be copied (intersection of both files) +- When creating a new worktree, matching files are automatically copied + +**Setting Up .worktreeinclude**: + +1. Navigate to Settings → Worktrees +2. If you don't have a `.worktreeinclude` file, you'll see a message at the bottom +3. Click "Create from .gitignore" to automatically create one based on your `.gitignore` +4. Edit the file to include only the patterns you want to copy (e.g., `node_modules`, `.env.local`) + +**Example .worktreeinclude**: +``` +node_modules +.env.local +.cache +dist +``` + +:::tip What Gets Copied +Only files that match BOTH `.worktreeinclude` AND `.gitignore` patterns are copied. This ensures you're only copying untracked files that you intentionally want to duplicate across worktrees. +::: + +### Home Screen Integration + +The worktree selector can be shown or hidden from the home screen: + +1. Navigate to Settings → Worktrees +2. Toggle "Show worktrees in home screen" +3. When enabled, the selector appears at the top of the chat when you have multiple worktrees +4. When disabled, you can still manage worktrees from Settings + +--- + +## Tips + +- **Organized locations**: Use a consistent location like `~/.roo/worktrees/` for all your worktrees +- **Descriptive branch names**: Use clear naming like `worktree/feature-name` to identify worktree branches later on +- **Regular cleanup**: Delete worktrees you're no longer using to save disk space +- **Commit before deleting**: Always commit and push important changes before deleting a worktree +- **Use .worktreeinclude**: Set up a `.worktreeinclude` file once and benefit from it for all future worktrees +- **New windows for parallel work**: Open worktrees in new windows when you want to work on multiple branches simultaneously diff --git a/apps/docs/docs/getting-started/connecting-api-provider.md b/apps/docs/docs/getting-started/connecting-api-provider.md new file mode 100644 index 00000000000..37616671a3a --- /dev/null +++ b/apps/docs/docs/getting-started/connecting-api-provider.md @@ -0,0 +1,46 @@ +--- +sidebar_label: Connecting To AI Provider +description: Learn how to connect Roo Code to AI providers like Anthropic Claude, OpenAI, and OpenRouter. Step-by-step guide for API key setup and configuration. +keywords: + - Roo Code API key + - Claude API + - OpenAI API + - OpenRouter + - Anthropic API + - AI provider setup + - API configuration +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Connecting Your First LLM Provider + +Roo Code needs an inference provider to access the LLM models that make it work. + +A great model to start is **Claude Sonnet 4.5**, which offers a lot of power at a reasonable price point. To get it going, choose a provider: + +- **Roo Code Router (Recommended):** the easiest way to access multiple providers tested with Roo Code. No API needed. To get started, just choose Roo Code Router as a provider and follow instructions. [Learn more about it](/roo-code-router/overview). + +- **OpenRouter:** Provides access to multiple AI models from different labs through a single API key. Great for flexibility and getting started reasonably fast. To get an API key, [follow these instructions ](/providers/openrouter#getting-an-api-key) + +- **Anthropic:** Direct access to the Claude family of models. Requires API access approval and may have [rate limits depending on your tier](https://docs.anthropic.com/en/api/rate-limits#requirements-to-advance-tier). To get an API key, [follow these instructions ](/providers/anthropic#getting-an-api-key) + +Roo Code is compatible with [other providers](/providers) which offer Claude, and with a wide range of different models you can try. + +:::info Model Selection Advice +We recommend **Claude Sonnet 4.5** because it "just works" out of the box for most tasks. We use it internally a lot. + +You can choose other models, but that introduces complexity. Different models vary in how they follow tool instructions, parse formats, and maintain context through multi-step operations, so it may be better to try them later. If you do experiment with other models, choose ones specifically designed for structured reasoning and tool use. +::: + +--- + +## Configuring the provider in VS Code + +1. Open the Roo Code panel by clicking the Roo Code icon () in the VS Code Activity Bar +2. In the welcome screen, choose your LLM provider. +3. If you choose the Roo Code Router, just connect your account and choose `anthropic/claude-sonnet-4-5` from the dropdown. You're set. +4. If you chose another provider, paste the API key you copied from it into the right field and continue +5. Select your model (it should be called `claude-sonnet-4-5` or `anthropic/claude-sonnet-4-5`) and complete the process. + +Now you can start coding! diff --git a/apps/docs/docs/getting-started/installing.mdx b/apps/docs/docs/getting-started/installing.mdx new file mode 100644 index 00000000000..005ca00c3d0 --- /dev/null +++ b/apps/docs/docs/getting-started/installing.mdx @@ -0,0 +1,121 @@ +--- +sidebar_label: Installing Roo Code +description: Step-by-step guide to install Roo Code in VS Code, Cursor, VSCodium, and other compatible editors. Get started with AI-powered coding in minutes. +keywords: + - install Roo Code + - VS Code extension + - AI coding assistant installation + - Cursor + - VSCodium + - VSIX installation +--- +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Installing Roo Code + +
+ +
+ +Roo Code is a VS Code extension that brings AI-powered coding assistance directly to your editor. Install using one of these methods: +1. **VS Code Marketplace (Recommended)** - fastest method for standard VS Code and Cursor users +2. **Open VSX Registry** - for VS Code-compatible editors like VSCodium + +--- + +## VS Code Marketplace + +1. Open VS Code +2. Access Extensions: Click the Extensions icon in the Activity Bar or press `Ctrl+Shift+X` (Windows/Linux) or `Cmd+Shift+X` (macOS) +3. Search for "Roo Code" +4. Select "Roo Code" by RooVeterinaryInc and click **Install** +5. Reload VS Code if prompted + +After installation, find the Roo Code icon () in the Activity Bar to open the Roo Code panel. + +VS Code marketplace with Roo Code extension ready to install +*VS Code marketplace with Roo Code extension ready to install* + +--- + +## Open VSX Registry + +For VS Code-compatible editors without Marketplace access (like VSCodium and Windsurf): + +1. Open your editor +2. Access the Extensions view +3. Search for "Roo Code" +4. Select "Roo Code" by RooVeterinaryInc and click **Install** +5. Reload if prompted + +Open VSX Registry with Roo Code extension ready to install + + +## Roo Code Nightly + +For information on installing Roo Code Nightly (our prerelease build published on each merge to main), please see the [Roo Code Nightly](/advanced-usage/roo-code-nightly) guide in the Advanced Usage section. + + +## Manual Installation from VSIX + +If you prefer to download and install the VSIX file directly: + +1. **Download the VSIX file:** + * Find official releases on the [Roo Code GitHub Releases page](https://github.com/RooCodeInc/Roo-Code/releases) + * Download the `.vsix` file from the latest release + +2. **Install in VS Code:** + * Open VS Code + * Access Extensions view + * Click the "..." menu in the Extensions view + * Select "Install from VSIX..." + * Browse to and select your downloaded `.vsix` file + +VS Code's Install from VSIX dialog +*Installing Roo Code using VS Code's "Install from VSIX" dialog* + +--- + +## Local Setup & Development + +For instructions on setting up Roo Code for local development, building from source, or contributing, please see the [Local Development Setup](/advanced-usage/local-development-setup) guide in the Advanced Usage section. + +--- + +## Troubleshooting + +VS Code Output panel showing Roo Code logs for troubleshooting +*VS Code Output panel showing Roo Code logs for troubleshooting* + +**Extension Not Visible** +* Restart VS Code +* Verify Roo Code is listed and enabled in Extensions +* Try disabling and re-enabling +* Check Output panel for errors (View → Output, select "Roo Code") + +**Installation Problems** +* Ensure stable internet connection +* Verify VS Code version 1.84.0 or later +* If VS Code Marketplace is inaccessible, try the Open VSX Registry method + +--- + +## Getting Support + +If you encounter issues not covered here: + +* Join our [Discord community](https://discord.gg/roocode) for real-time support +* Submit issues on [GitHub](https://github.com/RooCodeInc/Roo-Code/issues) +* Visit our [Reddit community](https://www.reddit.com/r/RooCode) \ No newline at end of file diff --git a/apps/docs/docs/getting-started/your-first-task.md b/apps/docs/docs/getting-started/your-first-task.md new file mode 100644 index 00000000000..6dc410c92c0 --- /dev/null +++ b/apps/docs/docs/getting-started/your-first-task.md @@ -0,0 +1,87 @@ +--- +sidebar_label: Your First Task +description: Learn how to start your first task with Roo Code AI assistant. Step-by-step guide for beginners to understand the approval workflow and iterative process. +keywords: + - Roo Code tutorial + - first task + - getting started + - AI coding assistant tutorial + - approval workflow +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Your first task + +Now that you've [configured your AI provider and model](/getting-started/connecting-api-provider), you're ready to start using Roo Code! This guide walks you through your first interaction. + +--- + +## Step 1: Open the Roo Code Panel + +Click the Roo Code icon () in the VS Code Activity Bar (vertical bar on the side of the window) to open the chat interface. If you don't see the icon, verify the extension is installed and enabled. + +
+ Roo Code icon in VS Code Activity Bar +
The Roo Code icon in the Activity Bar opens the chat interface. You can drag it to position Roo elsewhere.
+
+ +## Step 2: Type Your Task + +Type a clear, concise description of what you want Roo Code to do in the chat box at the bottom of the panel. Examples of effective tasks: + +- "Create a file named `hello.txt` containing 'Hello, world!'." +- "Write a Python function that adds two numbers." +- "Create an HTML file for a simple website with the title 'Roo test'" + +No special commands or syntax needed—just use plain English. + +
+ Typing a task in the Roo Code chat interface +
Enter your task in natural language - no special syntax required.
+
+ +## Step 3: Send Your Task + +Press Enter or click the Send icon () to the right of the input box. + +## Step 4: Review and Approve Actions + +Roo Code analyzes your request and proposes specific actions. These may include: + +- **Reading files:** Shows file contents it needs to access +- **Writing to files:** Displays a diff with proposed changes (added lines in green, removed in red) +- **Executing commands:** Shows the exact command to run in your terminal +- **Using the Browser:** Outlines browser actions (click, type, etc.) +- **Asking questions:** Requests clarification when needed to proceed + +
+ Reviewing a proposed file creation action +
Roo Code shows exactly what action it wants to perform and waits for your approval.
+
+ +**Each action requires your explicit approval** (unless auto-approval is enabled): + +- **Approve:** Click the "Approve" button to execute the proposed action +- **Reject:** Click the "Reject" button and provide feedback if needed + +## Step 5: Iterate + +Roo Code works iteratively. After each action, it waits for your feedback before proposing the next step. Continue this review-approve cycle until your task is complete. + +
+ Final result of a completed task showing the iteration process +
After completing the task, Roo Code shows the final result and awaits your next instruction.
+
+ +--- + +## Conclusion + +You've now completed your first task with Roo Code! Through this process, you've learned: + +- How to interact with Roo Code using natural language +- The approval-based workflow that keeps you in control +- The iterative approach Roo Code uses to solve problems step-by-step + +This iterative, approval-based workflow is at the core of how Roo Code works—letting AI handle the tedious parts of coding while you maintain complete oversight. Now that you understand the basics, you're ready to tackle more complex tasks, explore different [modes](/basic-usage/using-modes) for specialized workflows, or try the [auto-approval feature](/features/auto-approving-actions) to speed up repetitive tasks. diff --git a/apps/docs/docs/index.mdx b/apps/docs/docs/index.mdx new file mode 100644 index 00000000000..9dcffc27d83 --- /dev/null +++ b/apps/docs/docs/index.mdx @@ -0,0 +1,89 @@ +--- +sidebar_label: Welcome +description: Learn how to use Roo Code, the autonomous AI coding agent that helps you code faster and smarter in VS Code. Complete guides, tutorials, and documentation. +keywords: + - Roo Code + - AI coding assistant + - VS Code extension + - autonomous coding agent + - AI pair programmer + - code generation + - documentation +--- + +# Roo Code Docs + +Roo Code is an AI-coding suite of products designed to take full advantage of the most advanced large-language models and change how you create software at a fundamental level. It's unapologetically powerful and customizable, and it costs more to run than the alternatives because it uses frontier models with actual file system access, terminal control, and multi-step workflows. + +Roo's approach is to trade tokens for quality. If you want the best and most effective AI coding experience available, this is it. + +Roo Code is available in two ways: +- [ Roo Code VS Code Extension](/getting-started/installing) works locally in your VS Code IDE and gives you full control over your coding experience. It's great for deep or highly iterative solo development work. It's highly customizable and fits into your existing workflow. +- [ Roo Code Cloud Agents](/roo-code-cloud/cloud-agents) are an autonomous AI development team working 24/7, as a team, collaborating with you and other co-workers on a wide range of tasks. It meets you where you do work (Slack, Github, etc) and allows for large parts of software development to happen entirely away from an IDE. + +The two options are highly complementary and built on the same shared foundation, achieving similarly excellent results. + +## What can Roo Code do for you + +- Generate Code from natural language descriptions and specs +- Refactor & debug existing code +- Write & update documentation +- Answer questions about your codebase +- Automate repetitive tasks +- Utilize MCP Servers + +## A mindset for success + +The most successful Roo users tend to embrace the following ideas: + +- **Leverage model agnosticism:** Roo isn't an LLM model, it needs an [LLM provider](/providers) to work. But it's compatible with dozens of providers and hundreds of models, so you're free to experiment, optimize and switch around, by design. No lock-ins in a world where "the best model" changes every other week. +- **Don't skimp on tokens:** expensive state-of-the-art models with lots of tokens will almost always beat cheap models using few tokens. Pay attention to your budget, but embrace the fact that tokens are cheaper than developer time. +- **Trust roles:** The extension's customizable Modes (Architect, Code, etc) and the pre-defined Cloud Agent Types (Planner, Coder, etc) keep the models on track and focused on the task at hand, without stepping outside of their boundaries. Lean on them depending on the task you're working on. +- **Be ambitious:** Roo works best the more you trust it. Out-of-the-box, the Extension will ask for your permission to everything, but as you become more comfortable and enable [Auto-Approve](/features/auto-approving-actions), you'll see it work for long periods on its own without getting stuck or making bad decisions. Once ready, throw large, complex projects at the [Orchestrator](/basic-usage/using-modes#orchestrator-mode-aka-boomerang-mode), who will coordinate tasks across Modes. In the Cloud, we handle all of this for you. + +## Getting Started + +- [With the Extension](/getting-started/installing) +- [With Roo Code Cloud](/roo-code-cloud/overview) + + +## Tutorial & Feature Videos + + + +

+ More quick tutorial and feature videos... +

+ +## Additional Resources + +- [Discord Server](https://discord.gg/roocode): Join the community for real-time help and discussion. +- [Reddit Community](https://www.reddit.com/r/RooCode): Share your experiences and see what others are building. +- [YouTube Channel](https://youtube.com/@roocodeyt?feature=shared): Watch tutorials and see features in action. +- [GitHub Issues](https://github.com/RooCodeInc/Roo-Code/issues): Report bugs and track development. +- [Feature Requests](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop): Have an idea? Share it with the team. diff --git a/apps/docs/docs/providers/anthropic.md b/apps/docs/docs/providers/anthropic.md new file mode 100644 index 00000000000..e5495039777 --- /dev/null +++ b/apps/docs/docs/providers/anthropic.md @@ -0,0 +1,57 @@ +--- +sidebar_label: Anthropic +description: Configure Anthropic's Claude AI models in Roo Code. Access Claude Opus, Sonnet, and Haiku models with prompt caching and large context windows. +keywords: + - anthropic + - claude + - claude ai + - roo code + - api provider + - claude opus + - claude sonnet + - claude haiku + - prompt caching + - ai models +--- + +# Using Anthropic With Roo Code + +Anthropic is an AI safety and research company that builds reliable, interpretable, and steerable AI systems. Their Claude models are known for their strong reasoning abilities, helpfulness, and honesty. + +**Website:** [https://www.anthropic.com/](https://www.anthropic.com/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [Anthropic Console](https://console.anthropic.com/). Create an account or sign in. +2. **Navigate to API Keys:** Go to the [API keys](https://console.anthropic.com/settings/keys) section. +3. **Create a Key:** Click "Create Key". Give your key a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key _immediately_. You will not be able to see it again. Store it securely. + +--- + +## Available Models + +Roo Code supports all Claude models available through Anthropic's API. + +For the complete, up-to-date model list and capabilities, see [Anthropic's model documentation](https://docs.anthropic.com/en/docs/about-claude/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Anthropic" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Anthropic API key into the "Anthropic API Key" field. +4. **Select Model:** Choose your desired Claude model from the "Model" dropdown. +5. **(Optional) Custom Base URL:** If you need to use a custom base URL for the Anthropic API, check "Use custom base URL" and enter the URL. Most people won't need to adjust this. + +--- + +## Tips and Notes + +- **Prompt Caching:** Claude models support [prompt caching](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching), which can significantly reduce costs and latency for repeated prompts. +- **Context Window:** Claude models have large context windows (200,000 tokens), allowing you to include a significant amount of code and context in your prompts. +- **Pricing:** Refer to the [Anthropic Pricing](https://www.anthropic.com/pricing) page for the latest pricing information. +- **Rate Limits:** Anthropic has strict rate limits based on [usage tiers](https://docs.anthropic.com/en/api/rate-limits#requirements-to-advance-tier). If you're repeatedly hitting rate limits, consider contacting Anthropic sales or accessing Claude through a different provider like [OpenRouter](/providers/openrouter) or [Requesty](/providers/requesty). diff --git a/apps/docs/docs/providers/baseten.md b/apps/docs/docs/providers/baseten.md new file mode 100644 index 00000000000..05d96d7a9d8 --- /dev/null +++ b/apps/docs/docs/providers/baseten.md @@ -0,0 +1,64 @@ +--- +title: Baseten +sidebar_label: Baseten +description: Learn how to configure and use Baseten's Model APIs with Roo Code. Access frontier open-source models with enterprise-grade performance, reliability, and competitive pricing. +keywords: + - Baseten + - Model APIs + - open-source models + - DeepSeek + - Kimi K2 + - Qwen + - Roo Code + - AI integration + - API key + - enterprise inference +--- + +# Using Baseten With Roo Code + +Baseten provides on-demand frontier model APIs designed for production applications, not just experimentation. Built on the Baseten Inference Stack, these APIs deliver optimized inference for leading open-source models from OpenAI, DeepSeek, Moonshot AI, and Alibaba Cloud. + +**Website:** [https://www.baseten.co/products/model-apis/](https://www.baseten.co/products/model-apis/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [Baseten](https://www.baseten.co/) and create an account or sign in. + +2. **Navigate to API Keys:** Access your dashboard and go to the API Keys section at [https://app.baseten.co/settings/api_keys](https://app.baseten.co/settings/api_keys). + +3. **Create a Key:** Generate a new API key. Give it a descriptive name (e.g., "Roo Code"). + +4. **Copy the Key:** Copy the API key immediately and store it securely. + +--- + +## Available Models + +Roo Code supports all models available through Baseten's Model APIs. + +For the complete, up-to-date model list and pricing, see [Baseten's Model APIs page](https://www.baseten.co/products/model-apis/). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. + +2. **Select Provider:** Choose "Baseten" from the "API Provider" dropdown. + +3. **Enter API Key:** Paste your Baseten API key into the "Baseten API Key" field. + +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +:::warning Kimi K2 Thinking Model +To use the `moonshotai/Kimi-K2-Thinking` model, you must enable native tool calling in the Roo Code settings. This setting allows Roo Code to call the model's tools through their native tool processor and is required for this reasoning model to function properly. +::: + +--- + +## Tips and Notes + +- **Pricing:** See the [Baseten Model APIs page](https://www.baseten.co/products/model-apis/) for current pricing information. diff --git a/apps/docs/docs/providers/bedrock.md b/apps/docs/docs/providers/bedrock.md new file mode 100644 index 00000000000..769b3777c56 --- /dev/null +++ b/apps/docs/docs/providers/bedrock.md @@ -0,0 +1,98 @@ +--- +sidebar_label: AWS Bedrock +description: Use Amazon Bedrock with Roo Code to access Claude, Llama, and other foundation models through AWS. Configure credentials and VPC endpoints. +keywords: + - aws bedrock + - amazon bedrock + - roo code + - api provider + - claude bedrock + - llama bedrock + - aws ai + - foundation models + - vpc endpoint +--- + +# Using AWS Bedrock With Roo Code + +Roo Code supports accessing models through Amazon Bedrock, a fully managed service that makes a selection of high-performing foundation models (FMs) from leading AI companies available via a single API. + +**Website:** [https://aws.amazon.com/bedrock/](https://aws.amazon.com/bedrock/) + +--- + +## Prerequisites + +- **AWS Account:** You need an active AWS account. +- **Bedrock Access:** You must request and be granted access to Amazon Bedrock. See the [AWS Bedrock documentation](https://docs.aws.amazon.com/bedrock/latest/userguide/getting-started.html) for details on requesting access. +- **Model Access:** Within Bedrock, you need to request access to the specific models you want to use (e.g., Anthropic Claude). +- **Install AWS CLI:** Use AWS CLI to configure your account for authentication + ```bash + aws configure + ``` + +--- + +## Getting Credentials + +You have two main options for configuring AWS credentials: + +1. **AWS Access Keys (Recommended for Development):** + - Create an IAM user with the necessary permissions (at least `bedrock:InvokeModel`). + - Generate an access key ID and secret access key for that user. + - _(Optional)_ Create a session token if required by your IAM configuration. +2. **AWS Profile:** + - Configure an AWS profile using the AWS CLI or by manually editing your AWS credentials file. See the [AWS CLI documentation](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html) for details. + +--- + +## Available Models + +Roo Code supports all foundation models available through Amazon Bedrock. + +For the complete, up-to-date model list with IDs and capabilities, see [AWS Bedrock's supported models documentation](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html). + +**Important:** Use the _model ID_ when configuring Roo Code, not the model name. + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Bedrock" from the "API Provider" dropdown. +3. **Select Authentication Method:** + - **AWS Credentials:** + - Enter your "AWS Access Key" and "AWS Secret Key." + - (Optional) Enter your "AWS Session Token" if you're using temporary credentials. + - **AWS Profile:** + - Enter your "AWS Profile" name (e.g., "default"). +4. **Select Region:** Choose the AWS region where your Bedrock service is available (e.g., "us-east-1"). +5. **(Optional) Cross-Region Inference:** Check "Use cross-region inference" if you want to access models in a region different from your configured AWS region. +6. **(Optional) VPC Endpoint:** For enterprise environments: + - Check "Use VPC Endpoint" to route all Bedrock API calls through your VPC endpoint + - Enter your VPC endpoint URL in the text field that appears + - This ensures all LLM transactions remain within your corporate network +7. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +--- + +## Reasoning Budget for Claude Models + +Roo Code supports using the reasoning budget (extended thinking) for Anthropic's Claude models on Bedrock. This allows the model to "think" more before responding, which can be useful for complex tasks. + +To enable the reasoning budget: + +1. **Select a supported Claude model** that includes reasoning capabilities. +2. **Enable Reasoning Mode** in the model settings. +3. **Adjust the thinking budget** to control how much the model should "think". + +This feature is only available for supported Claude models. + +## Tips and Notes + +- **Permissions:** Ensure your IAM user or role has the necessary permissions to invoke Bedrock models. The `bedrock:InvokeModel` permission is required. +- **Pricing:** Refer to the [Amazon Bedrock pricing](https://aws.amazon.com/bedrock/pricing/) page for details on model costs. +- **Cross-Region Inference:** Using cross-region inference may result in higher latency. +- **VPC Endpoints:** When using VPC endpoints, ensure your endpoint is properly configured to handle Bedrock API calls. This feature is particularly useful for organizations with strict security requirements that mandate keeping all API traffic within their private network. diff --git a/apps/docs/docs/providers/cerebras.md b/apps/docs/docs/providers/cerebras.md new file mode 100644 index 00000000000..207cf343c18 --- /dev/null +++ b/apps/docs/docs/providers/cerebras.md @@ -0,0 +1,53 @@ +--- +sidebar_label: Cerebras +description: Configure Cerebras AI's ultra-fast inference models in Roo Code. Access free and paid tiers with speeds up to 2600 tokens/second for coding and reasoning tasks. +keywords: + - cerebras + - cerebras ai + - roo code + - api provider + - fast inference + - qwen coder + - llama models + - free tier + - high speed ai +--- + +# Using Cerebras With Roo Code + +Cerebras AI specializes in extremely fast inference speeds (up to 2600 tokens/second) with competitive pricing, including a free tier. Their models are optimized for coding, general intelligence, and reasoning tasks. + +**Website:** [https://cloud.cerebras.ai/](https://cloud.cerebras.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [Cerebras Cloud](https://cloud.cerebras.ai?utm_source=roocode). Create an account or sign in. +2. **Navigate to API Keys:** Access the API keys section in your dashboard. +3. **Create a Key:** Generate a new API key. Give it a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key immediately. Store it securely. + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Cerebras" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Cerebras API key into the "Cerebras API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Cerebras AI's API. + +For the complete, up-to-date model list and pricing, see [Cerebras Cloud](https://cloud.cerebras.ai?utm_source=roocode). + +--- + +## Tips and Notes + +- **Performance:** Cerebras specializes in extremely fast inference speeds, making it ideal for real-time coding assistance. +- **Pricing:** Check the [Cerebras Cloud](https://cloud.cerebras.ai?utm_source=roocode) dashboard for current pricing and free tier details. diff --git a/apps/docs/docs/providers/chutes.md b/apps/docs/docs/providers/chutes.md new file mode 100644 index 00000000000..36ccd3b239a --- /dev/null +++ b/apps/docs/docs/providers/chutes.md @@ -0,0 +1,42 @@ +--- +sidebar_label: Chutes AI +description: Configure Chutes AI with Roo Code for free access to various large language models. Get started with open-source and proprietary AI models. +keywords: + - chutes ai + - free llm + - roo code + - api provider + - free ai models + - language models + - llm api + - open source models +--- + +# Using Chutes AI With Roo Code + +Chutes.ai offers free API access to several large language models (LLMs), allowing developers to integrate and experiment with these models without immediate financial commitment. They provide access to a curated set of open-source and proprietary language models, often with a focus on specific capabilities or regional language support. + +**Website:** [https://chutes.ai/](https://chutes.ai/) + +--- + +## Getting an API Key + +To use Chutes AI with Roo Code, obtain an API key from the [Chutes AI platform](https://chutes.ai/). After signing up or logging in, you should find an option to generate or retrieve your API key within your account dashboard or settings. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Chutes AI's API. + +For the complete, up-to-date model list, see [Chutes AI's platform](https://chutes.ai/) or your account dashboard. + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Chutes AI" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Chutes AI API key into the "Chutes AI API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. diff --git a/apps/docs/docs/providers/deepinfra.md b/apps/docs/docs/providers/deepinfra.md new file mode 100644 index 00000000000..c2274dcbf37 --- /dev/null +++ b/apps/docs/docs/providers/deepinfra.md @@ -0,0 +1,46 @@ +--- +sidebar_label: DeepInfra +description: Configure DeepInfra's high-performance AI models in Roo Code. Access Qwen Coder, Llama, and other open-source models with prompt caching and vision capabilities. +keywords: + - deepinfra + - deep infra + - roo code + - api provider + - qwen coder + - llama models + - prompt caching + - vision models + - open source ai +--- + +# Using DeepInfra With Roo Code + +DeepInfra provides cost-effective access to high-performance open-source models with features like prompt caching, vision support, and specialized coding models. Their infrastructure offers low latency and automatic load balancing across global edge locations. + +**Website:** [https://deepinfra.com/](https://deepinfra.com/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [DeepInfra](https://deepinfra.com/). Create an account or sign in. +2. **Navigate to API Keys:** Access the API keys section in your dashboard. +3. **Create a Key:** Generate a new API key. Give it a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key immediately. Store it securely. + +--- + +## Available Models + +Roo Code automatically fetches all available models from DeepInfra's API. + +For the complete, up-to-date model catalog, see [DeepInfra's models page](https://deepinfra.com/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "DeepInfra" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your DeepInfra API key into the "DeepInfra API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. diff --git a/apps/docs/docs/providers/deepseek.md b/apps/docs/docs/providers/deepseek.md new file mode 100644 index 00000000000..8a7354dffde --- /dev/null +++ b/apps/docs/docs/providers/deepseek.md @@ -0,0 +1,51 @@ +--- +sidebar_label: DeepSeek +description: Configure DeepSeek's chat and reasoning models in Roo Code. Access deepseek-chat and deepseek-reasoner for coding and complex reasoning tasks. +keywords: + - deepseek + - deepseek chat + - deepseek reasoner + - roo code + - api provider + - reasoning ai + - coding ai + - deepseek r1 +--- + +# Using DeepSeek With Roo Code + +Roo Code supports accessing models through the DeepSeek API, including `deepseek-chat` and `deepseek-reasoner`. + +**Website:** [https://platform.deepseek.com/](https://platform.deepseek.com/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [DeepSeek Platform](https://platform.deepseek.com/). Create an account or sign in. +2. **Navigate to API Keys:** Find your API keys in the [API keys](https://platform.deepseek.com/api_keys) section of the platform. +3. **Create a Key:** Click "Create new API key". Give your key a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key _immediately_. You will not be able to see it again. Store it securely. + +--- + +## Available Models + +Roo Code supports all models available through the DeepSeek API. + +For the complete, up-to-date model list, see [DeepSeek's API documentation](https://api-docs.deepseek.com/quick_start/pricing). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "DeepSeek" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your DeepSeek API key into the "DeepSeek API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Tips and Notes + +- **Pricing:** Refer to the [DeepSeek Pricing](https://api-docs.deepseek.com/quick_start/pricing/) page for details on model costs. diff --git a/apps/docs/docs/providers/doubao.md b/apps/docs/docs/providers/doubao.md new file mode 100644 index 00000000000..98a5a3162b5 --- /dev/null +++ b/apps/docs/docs/providers/doubao.md @@ -0,0 +1,47 @@ +--- +sidebar_label: Doubao +description: Configure ByteDance's Doubao AI models in Roo Code. Access competitive language models with full integration and internationalized support. +keywords: + - doubao + - bytedance + - bytedance ai + - roo code + - api provider + - doubao models + - chinese ai + - language models +--- + +# Using Doubao With Roo Code + +Doubao is ByteDance's Chinese AI service, offering competitive language models for various development tasks. The provider includes full API integration with embedding support and internationalized prompts. + +**Website:** [https://www.volcengine.com/](https://www.volcengine.com/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Visit the [Volcano Engine Console](https://console.volcengine.com/). Create an account or sign in. +2. **Navigate to Model Service:** Access the AI model service section in the console. +3. **Create API Key:** Generate a new API key for the Doubao service. +4. **Copy the Key:** **Important:** Copy the API key immediately and store it securely. You may not be able to view it again. + +--- + +## Available Models + +Roo Code supports all Doubao models available through ByteDance's Volcano Engine API. + +For the complete, up-to-date model list, see [Volcano Engine's AI model service](https://www.volcengine.com/). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Doubao" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Doubao API key into the "Doubao API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +**Note:** Doubao uses the base URL `https://ark.cn-beijing.volces.com/api/v3` and servers are located in Beijing, China. diff --git a/apps/docs/docs/providers/featherless.md b/apps/docs/docs/providers/featherless.md new file mode 100644 index 00000000000..4ca039476d5 --- /dev/null +++ b/apps/docs/docs/providers/featherless.md @@ -0,0 +1,47 @@ +--- +sidebar_label: Featherless AI +description: Configure Featherless AI's open-source models in Roo Code. Access free DeepSeek, Qwen, and other high-performance models through an OpenAI-compatible API. +keywords: + - featherless + - featherless ai + - roo code + - api provider + - deepseek + - qwen + - free models + - open source ai + - reasoning models + - kimi k2 +--- + +# Using Featherless AI With Roo Code + +Featherless AI provides access to high-performance open-source models including DeepSeek, Qwen, and other large language models. All models are currently free to use, making it an excellent choice for budget-conscious developers. + +**Website:** [https://featherless.ai](https://featherless.ai) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [Featherless AI](https://featherless.ai). Create an account or sign in. +2. **Navigate to API Keys:** Access the [API keys page](https://featherless.ai/account/api-keys) in your account. +3. **Create a Key:** Generate a new API key. Give it a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key immediately. It will only be shown once. Store it securely. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Featherless AI's API. + +For the complete, up-to-date model list, see [Featherless AI](https://featherless.ai). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Featherless AI" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Featherless API key into the "Featherless API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. diff --git a/apps/docs/docs/providers/fireworks.md b/apps/docs/docs/providers/fireworks.md new file mode 100644 index 00000000000..d947cdd7317 --- /dev/null +++ b/apps/docs/docs/providers/fireworks.md @@ -0,0 +1,59 @@ +--- +sidebar_label: Fireworks AI +description: Use Fireworks AI with Roo Code to access state-of-the-art open-source and proprietary AI models like Kimi, Qwen, and DeepSeek on a high-performance platform with large context windows up to 256K tokens. +keywords: + - fireworks ai + - fireworks + - kimi models + - kimi k2 + - qwen models + - qwen3 + - deepseek models + - deepseek + - roo code + - api provider + - ai models + - language models + - llm api + - open source models + - serverless models + - openai compatible +--- + +# Using Fireworks AI With Roo Code + +Fireworks AI is a high-performance platform for running AI models, offering fast, cost-effective access to a wide range of state-of-the-art open-source language models. Built for speed and reliability, Fireworks AI provides serverless deployment options with OpenAI-compatible APIs and context windows up to 256,000 tokens. + +**Website:** [https://fireworks.ai/](https://fireworks.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [Fireworks AI](https://fireworks.ai/) and create an account or sign in. +2. **Navigate to API Keys:** After logging in, go to the [API Keys page](https://app.fireworks.ai/settings/users/api-keys) in the account settings. +3. **Create a Key:** Click "Create API key" and give your key a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** Copy the API key _immediately_ and store it securely. You will not be able to see it again. + +--- + +## Available Models + +Roo Code supports all models available through Fireworks AI's platform. + +For the complete, up-to-date model list and specifications, see [Fireworks AI's models page](https://fireworks.ai/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Fireworks AI" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Fireworks AI API key into the "Fireworks AI API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Tips and Notes + +- **Pricing:** See the [Fireworks AI pricing page](https://fireworks.ai/pricing) for current rates. diff --git a/apps/docs/docs/providers/gemini.md b/apps/docs/docs/providers/gemini.md new file mode 100644 index 00000000000..bc99beb5d98 --- /dev/null +++ b/apps/docs/docs/providers/gemini.md @@ -0,0 +1,119 @@ +--- +sidebar_label: Google Gemini +description: Use Google's Gemini AI models with Roo Code. Configure Gemini Flash, Pro, and experimental models for your development workflow. +keywords: + - google gemini + - gemini ai + - roo code + - api provider + - gemini flash + - gemini pro + - google ai + - gemini models + - ai studio +--- + +# Using Google Gemini With Roo Code + +Roo Code supports Google's Gemini family of models through the Google AI Gemini API. + +**Website:** [https://ai.google.dev/](https://ai.google.dev/) + +--- + +## Getting an API Key + +1. **Go to Google AI Studio:** Navigate to [https://ai.google.dev/](https://ai.google.dev/). +2. **Sign In:** Sign in with your Google account. +3. **Create API Key:** Click on "Create API key" in the left-hand menu. +4. **Copy API Key:** Copy the generated API key. + +--- + +## Available Models + +Roo Code supports all Gemini models available through Google's API and automatically tracks Google's latest stable releases. + +For the complete, up-to-date model list and capabilities, see [Google's Gemini models documentation](https://ai.google.dev/models/gemini). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Google Gemini" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Gemini API key into the "Gemini API Key" field. +4. **Select Model:** Choose your desired Gemini model from the "Model" dropdown. + +By default, Roo Code selects a stable Pro model with a temperature of **1.0** where your provider supports it. This keeps suggestions more expressive and natural while still staying on task. If you need highly deterministic output (for example, for code generation in CI), you can lower the temperature toward `0.0`. + +--- + +## Advanced Features + +### URL Context + +Gemini models can now access and analyze web content directly through URL context. This feature allows Roo to: + +- Read and understand web pages in real-time +- Analyze documentation from URLs +- Review online code repositories +- Access current information from websites + +#### Enabling URL Context + +1. Open Roo Code Settings +2. Navigate to the Gemini provider settings +3. Enable "URL Context" option +4. Save your settings + +#### Usage Example + +``` +Please analyze the documentation at https://example.com/api-docs and create a TypeScript client library based on the API specification. +``` + +### Google Search Grounding + +Enable Google Search grounding to enhance Gemini's responses with real-time search results. This provides: + +- Up-to-date information from web searches +- Fact-checking capabilities +- Current event awareness +- Enhanced accuracy for technical queries + +#### Enabling Search Grounding + +1. Open Roo Code Settings +2. Navigate to the Gemini provider settings +3. Enable "Google Search Grounding" option +4. Save your settings + +#### Usage Example + +``` +What are the latest best practices for React Server Components in 2025? Please search for the most recent information. +``` + +### Combined Usage + +Both features can be used together for powerful workflows: + +``` +Search for the latest Node.js security vulnerabilities and then analyze my package.json file to see if I'm affected. Also check the official Node.js security page for recommendations. +``` + +--- + +## Tips and Notes + +- **Pricing:** Gemini API usage is priced based on input and output tokens. URL context and search grounding may incur additional costs. Some experimental models are available for free. Refer to the [Gemini pricing page](https://ai.google.dev/pricing) for detailed information. +- **Model Selection:** Choose models based on your needs: + - **Flash models:** Faster and more cost-effective for most tasks + - **Pro models:** Better for complex reasoning and analysis + - **Thinking models:** Best for tasks requiring step-by-step reasoning (requires reasoning budget) + - **Experimental models:** Latest features, may be free but less stable +- **Context Windows:** Most Gemini models support large context windows up to 1,048,576 tokens, allowing for extensive code analysis and documentation processing. +- **Rate Limits:** URL context and search grounding features may have separate rate limits. Monitor your usage to avoid hitting limits. +- **Privacy:** When using URL context, be mindful of accessing private or sensitive URLs. Ensure you have permission to analyze the content. +- **Search Quality:** Google Search grounding works best with specific, well-formed queries. Be clear about what information you need. diff --git a/apps/docs/docs/providers/glama.md b/apps/docs/docs/providers/glama.md new file mode 100644 index 00000000000..39839d9759b --- /dev/null +++ b/apps/docs/docs/providers/glama.md @@ -0,0 +1,51 @@ +--- +sidebar_label: Glama +description: Access multiple AI models through Glama's unified API in Roo Code. Use Claude, OpenAI, and other models with prompt caching and cost tracking. +keywords: + - glama + - glama ai + - roo code + - api provider + - unified api + - claude models + - openai models + - prompt caching + - cost tracking +--- + +# Using Glama With Roo Code + +Glama provides access to a variety of language models through a unified API, including models from Anthropic, OpenAI, and others. It offers features like prompt caching and cost tracking. + +**Website:** [https://glama.ai/](https://glama.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [Glama sign-up page](https://glama.ai/sign-up). Sign up using your Google account or name/email/password. +2. **Get API Key:** After signing up, navigate to the [API Keys](https://glama.ai/settings/gateway/api-keys) page to get an API key. +3. **Copy the Key:** Copy the displayed API key. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Glama's unified API. + +For the complete, up-to-date model list, see [Glama's models page](https://glama.ai/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Glama" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Glama API key into the "Glama API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Tips and Notes + +- **Pricing:** Glama operates on a pay-per-use basis. Pricing varies depending on the model you choose. diff --git a/apps/docs/docs/providers/groq.md b/apps/docs/docs/providers/groq.md new file mode 100644 index 00000000000..1a2c675e032 --- /dev/null +++ b/apps/docs/docs/providers/groq.md @@ -0,0 +1,43 @@ +--- +sidebar_label: Groq +description: Configure Groq's high-speed LPU inference in Roo Code. Access Llama, Mixtral, and other models with significantly faster response times. +keywords: + - groq + - groq cloud + - roo code + - api provider + - lpu + - fast inference + - llama models + - mixtral + - high speed ai +--- + +# Using Groq With Roo Code + +Groq specializes in providing very high-speed inference for large language models, utilizing their custom-built Language Processing Units (LPUs). This can result in significantly faster response times for supported models. + +**Website:** [https://groq.com/](https://groq.com/) + +--- + +## Getting an API Key + +To use Groq with Roo Code, you'll need an API key from the [GroqCloud Console](https://console.groq.com/). After signing up or logging in, navigate to the API Keys section of your dashboard to create and copy your key. + +--- + +## Available Models + +Roo Code automatically fetches all available models from the Groq API. + +For the complete, up-to-date model list and capabilities, see [Groq's models documentation](https://console.groq.com/docs/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Groq" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Groq API key into the "Groq API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. diff --git a/apps/docs/docs/providers/huggingface.md b/apps/docs/docs/providers/huggingface.md new file mode 100644 index 00000000000..00f71b94a4b --- /dev/null +++ b/apps/docs/docs/providers/huggingface.md @@ -0,0 +1,102 @@ +--- +sidebar_label: Hugging Face +description: Connect Roo Code to Hugging Face's inference router for access to open-source LLMs. Choose from multiple inference providers and models like Llama, Mistral, and more. +keywords: + - hugging face + - huggingface + - roo code + - api provider + - open source models + - llama + - mistral + - inference router + - ai models + - inference providers +--- + +# Using Hugging Face With Roo Code + +Roo Code integrates with the Hugging Face router to provide access to a curated collection of open-source models optimized for code assistance. The integration allows you to choose from multiple inference providers and automatically selects the best available option. + +**Website:** [https://huggingface.co/](https://huggingface.co/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to [Hugging Face](https://huggingface.co/) and create an account or sign in. +2. **Navigate to Settings:** Click on your profile picture and select "Settings". +3. **Access Tokens:** Go to the "Access Tokens" section in your settings. +4. **Create Token:** Click "New token" and give it a descriptive name (e.g., "Roo Code"). +5. **Set Permissions:** Select "Read" permissions (this is sufficient for Roo Code). +6. **Copy Token:** **Important:** Copy the token immediately. Store it securely. + +--- + +## Available Models + +Roo Code automatically fetches all available models from the curated 'roocode' collection on Hugging Face. + +For the complete, up-to-date model collection, see [Hugging Face's roocode collection](https://huggingface.co/collections/roocode). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Hugging Face" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Hugging Face API token into the "Hugging Face API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. The dropdown shows the model count and is searchable. +5. **Choose Inference Provider (Optional):** Select a specific inference provider from the dropdown, or leave it on "Auto" (default) to automatically select the best available provider. + +--- + +## Inference Provider Selection + +Hugging Face's router connects to multiple inference providers. You can either: + +- **Auto Mode (Default):** Automatically selects the best available provider based on model availability and performance +- **Manual Selection:** Choose a specific provider from the dropdown + +The dropdown displays the status of each provider: + +- `live` - Provider is operational and available +- `staging` - Provider is in testing phase +- `error` - Provider is currently experiencing issues + +Provider names are formatted for better readability in the UI (e.g., "sambanova" appears as "SambaNova"). + +When you select a specific provider, the model capabilities (max tokens, pricing) will update to reflect that provider's specific configuration. Pricing information is only displayed when a specific provider is selected, not in Auto mode. + +--- + +## Model Information Display + +For each selected model, Roo Code displays: + +- **Max Output:** The maximum number of tokens the model can generate (varies by provider) +- **Pricing:** Cost per million input and output tokens (displayed only when a specific provider is selected) +- **Image Support:** Currently, all models are shown as text-only. This is a Roo Code implementation limitation, not a restriction of the Hugging Face API. + +--- + +## Available Providers + +The list of available providers is dynamic and retrieved from the Hugging Face API. Common providers include: + +- **Together AI** - High-performance inference platform +- **Fireworks AI** - Fast and scalable model serving +- **DeepInfra** - Cost-effective GPU infrastructure +- **Hyperbolic** - Optimized inference service +- **Cerebras** - Hardware-accelerated inference + +_Note: The providers shown above are examples of commonly available options. The actual list may vary._ + +--- + +## Tips and Notes + +- **Provider Failover:** When using Auto mode, if the selected provider fails, Hugging Face's infrastructure will automatically try alternative providers +- **Rate Limits:** Different providers may have different rate limits and availability +- **Pricing Variability:** Costs can vary significantly between providers for the same model +- **Model Updates:** The roocode collection is regularly updated with new and improved models diff --git a/apps/docs/docs/providers/index.json b/apps/docs/docs/providers/index.json new file mode 100644 index 00000000000..321ef8b5ae1 --- /dev/null +++ b/apps/docs/docs/providers/index.json @@ -0,0 +1,196 @@ +{ + "providers": [ + { + "id": "providers/anthropic", + "title": "Anthropic", + "extension": true, + "cloud": true + }, + { + "id": "providers/openai-chatgpt-plus-pro", + "title": "ChatGPT Plus/Pro", + "extension": true, + "cloud": false + }, + { + "id": "providers/bedrock", + "title": "AWS Bedrock", + "extension": true, + "cloud": false + }, + { + "id": "providers/cerebras", + "title": "Cerebras", + "extension": true, + "cloud": false + }, + { + "id": "providers/deepinfra", + "title": "DeepInfra", + "extension": true, + "cloud": false + }, + { + "id": "providers/deepseek", + "title": "DeepSeek", + "extension": true, + "cloud": false + }, + { + "id": "providers/doubao", + "title": "Doubao", + "extension": true, + "cloud": false + }, + { + "id": "providers/featherless", + "title": "Featherless AI", + "extension": true, + "cloud": false + }, + { + "id": "providers/fireworks", + "title": "Fireworks AI", + "extension": true, + "cloud": false + }, + { + "id": "providers/chutes", + "title": "Chutes AI", + "extension": true, + "cloud": false + }, + { + "id": "providers/gemini", + "title": "Google Gemini", + "extension": true, + "cloud": false + }, + { + "id": "providers/glama", + "title": "Glama", + "extension": true, + "cloud": false + }, + { + "id": "providers/groq", + "title": "Groq", + "extension": true, + "cloud": false + }, + { + "id": "providers/huggingface", + "title": "Hugging Face", + "extension": true, + "cloud": false + }, + { + "id": "providers/io-intelligence", + "title": "IO Intelligence", + "extension": true, + "cloud": false + }, + { + "id": "providers/lmstudio", + "title": "LM Studio", + "extension": true, + "cloud": false + }, + { + "id": "providers/litellm", + "title": "LiteLLM", + "extension": true, + "cloud": false + }, + { + "id": "providers/mistral", + "title": "Mistral AI", + "extension": true, + "cloud": false + }, + { + "id": "providers/ollama", + "title": "Ollama", + "extension": true, + "cloud": false + }, + { + "id": "providers/openai", + "title": "OpenAI", + "extension": true, + "cloud": true + }, + { + "id": "providers/openai-compatible", + "title": "OpenAI Compatible", + "extension": true, + "cloud": false + }, + { + "id": "providers/openrouter", + "title": "OpenRouter", + "extension": true, + "cloud": true + }, + { + "id": "providers/qwen-code", + "title": "Qwen Code CLI", + "extension": true, + "cloud": false + }, + { + "id": "providers/requesty", + "title": "Requesty", + "extension": true, + "cloud": false + }, + { + "id": "providers/roo-code-router", + "title": "Roo Code Router", + "extension": true, + "cloud": true + }, + { + "id": "providers/sambanova", + "title": "SambaNova", + "extension": true, + "cloud": false + }, + { + "id": "providers/unbound", + "title": "Unbound", + "extension": true, + "cloud": false + }, + { + "id": "providers/vercel-ai-gateway", + "title": "Vercel AI Gateway", + "extension": true, + "cloud": false + }, + { + "id": "providers/vertex", + "title": "GCP Vertex AI", + "extension": true, + "cloud": false + }, + { + "id": "providers/vscode-lm", + "title": "VS Code Language Model API", + "extension": true, + "cloud": false + }, + { + "id": "providers/xai", + "title": "xAI (Grok)", + "extension": true, + "cloud": true + }, + { + "id": "providers/zai", + "title": "Z AI", + "extension": true, + "cloud": true + } + ] +} diff --git a/apps/docs/docs/providers/index.mdx b/apps/docs/docs/providers/index.mdx new file mode 100644 index 00000000000..79ea0b08267 --- /dev/null +++ b/apps/docs/docs/providers/index.mdx @@ -0,0 +1,39 @@ +--- +title: Model Providers +description: Compare all available model providers for Roo Code. See which providers work with the VS Code extension and Roo Code Cloud at a glance. +keywords: + - model providers + - API providers + - Roo Code providers + - cloud providers + - extension providers +--- + +import ProviderTable from '@site/src/components/ProviderTable'; + +# Model Providers + +The Roo Code VS Code extension and Roo Code Cloud Agents are highly capable, sophisticated coding agents. While they carry a lot of functionality on their own, they depend on LLM providers to offer the inference needed to complete tasks. + +Other tools are intinsically bound by design to a specific provider (like Claude Code → Anthropic Models or Codex → OpenAI models), forcing you to stick with them irrespective of how the landscape changes (which happens fast). Roo on the other hand is **model-agnostic**, allowing you to choose the model that best fits your needs, according to your budget, skill profile, codebase and more. + +We support connecting to a wide range of model providers, giving you flexibility in how you access AI models. Some providers work with the VS Code extension, while others are available through Roo Code Cloud Agents. + +Learn how to set up your provider in [the Roo Code VS Code extension here](/getting-started/connecting-api-provider). + +## Provider Comparison + +Here's every provider we support and where you can use them. Click for detailed instructions. + +We regularly run evals for all supported models to see how they do against our standard test suite. [See the latest results here](https://roocode.com/evals). + + + +## Overwhelmed by choice? + +Yeah, it's a lot. + +- **Want it to JustWork™?** Go with the [Roo Code Router](/roo-code-router/overview) for a curated selection and the easiest setup with no API keys required +- **Want access to many models?** Try [OpenRouter](/providers/openrouter) for a single API to 100+ models +- **Want to optimize for specific models?** Use the first part provider for each of them (Anthropic, OpenAI, etc) +- **Looking for local/offline models?** Check out [Ollama](/providers/ollama) or [LM Studio](/providers/lmstudio) diff --git a/apps/docs/docs/providers/io-intelligence.md b/apps/docs/docs/providers/io-intelligence.md new file mode 100644 index 00000000000..a1afc87c449 --- /dev/null +++ b/apps/docs/docs/providers/io-intelligence.md @@ -0,0 +1,42 @@ +--- +description: This page explains how to configure and use the IO Intelligence provider with Roo Code. +keywords: + - io intelligence + - provider + - ai models + - llama + - deepseek + - qwen + - mistral +sidebar_label: IO Intelligence +--- + +# IO Intelligence Provider + +The IO Intelligence provider gives you access to a wide range of AI models, including those from Llama, DeepSeek, Qwen, and Mistral, through a unified API. + +## Configuration + +To use the IO Intelligence provider, you will need to add it to your `~/.roo/config.json` file. + +1. **Get your API key**: You can get an API key from the [IO Intelligence website](https://io.net/). +2. **Add the provider to your config**: Add the following to your `config.json` file: + +```json +{ + "providers": [ + { + "id": "io-intelligence", + "apiKey": "YOUR_IO_INTELLIGENCE_API_KEY" + } + ] +} +``` + +## Available Models + +The IO Intelligence provider supports multiple AI models including Llama, DeepSeek, Qwen, and Mistral. + +For the current model list and specifications, see [IO Intelligence's documentation](https://io.net/). + +Models can be specified in your API configuration profiles in [`~/.roo/config.json`](#configuration). diff --git a/apps/docs/docs/providers/litellm.md b/apps/docs/docs/providers/litellm.md new file mode 100644 index 00000000000..9817c937f99 --- /dev/null +++ b/apps/docs/docs/providers/litellm.md @@ -0,0 +1,164 @@ +--- +sidebar_label: LiteLLM +description: Access over 100 LLMs through LiteLLM's unified OpenAI-compatible API in Roo Code. Simplify multi-model management and reduce costs. +keywords: + - litellm + - roo code + - api provider + - unified api + - openai compatible + - multi model + - llm proxy + - local deployment + - cost management +--- + +# Using LiteLLM With Roo Code + +LiteLLM is a versatile tool that provides a unified interface to over 100 Large Language Models (LLMs) by offering an OpenAI-compatible API. This allows you to run a local server that can proxy requests to various model providers or serve local models, all accessible through a consistent API endpoint. + +**Website:** [https://litellm.ai/](https://litellm.ai/) (Main project) & [https://docs.litellm.ai/](https://docs.litellm.ai/) (Documentation) + +--- + +## Key Benefits + +- **Unified API:** Access a wide range of LLMs (from OpenAI, Anthropic, Cohere, HuggingFace, etc.) through a single, OpenAI-compatible API. +- **Local Deployment:** Run your own LiteLLM server locally, giving you more control over model access and potentially reducing latency. +- **Simplified Configuration:** Manage credentials and model configurations in one place (your LiteLLM server) and let Roo Code connect to it. +- **Cost Management:** LiteLLM offers features for tracking costs across different models and providers. + +--- + +## Setting Up Your LiteLLM Server + +To use LiteLLM with Roo Code, you first need to set up and run a LiteLLM server. + +### Installation + +1. Install LiteLLM with proxy support: + ```bash + pip install 'litellm[proxy]' + ``` + +### Configuration + +2. Create a configuration file (`config.yaml`) to define your models and providers: + + ```yaml + model_list: + # Configure Anthropic models + - model_name: claude-sonnet + litellm_params: + model: anthropic/claude-sonnet-model-id + api_key: os.environ/ANTHROPIC_API_KEY + + # Configure OpenAI models + - model_name: gpt-model + litellm_params: + model: openai/gpt-model-id + api_key: os.environ/OPENAI_API_KEY + + # Configure Azure OpenAI + - model_name: azure-model + litellm_params: + model: azure/my-deployment-name + api_base: https://your-resource.openai.azure.com/ + api_version: "2023-05-15" + api_key: os.environ/AZURE_API_KEY + ``` + +### Starting the Server + +3. Start the LiteLLM proxy server: + + ```bash + # Using configuration file (recommended) + litellm --config config.yaml + + # Or quick start with a single model + export ANTHROPIC_API_KEY=your-anthropic-key + litellm --model anthropic/claude-model-id + ``` + +4. The proxy will run at `http://0.0.0.0:4000` by default (accessible as `http://localhost:4000`). + - You can also configure an API key for your LiteLLM server itself for added security. + +Refer to the [LiteLLM documentation](https://docs.litellm.ai/docs/) for detailed instructions on advanced server configuration and features. + +--- + +## Configuration in Roo Code + +Once your LiteLLM server is running, you have two options for configuring it in Roo Code: + +### Option 1: Using the LiteLLM Provider (Recommended) + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "LiteLLM" from the "API Provider" dropdown. +3. **Enter Base URL:** + - Input the URL of your LiteLLM server. + - Defaults to `http://localhost:4000` if left blank. +4. **Enter API Key (Optional):** + - If you've configured an API key for your LiteLLM server, enter it here. + - If your LiteLLM server doesn't require an API key, Roo Code will use a default dummy key (`"dummy-key"`), which should work fine. +5. **Select Model:** + - Roo Code will attempt to fetch the list of available models from your LiteLLM server by querying the `${baseUrl}/v1/model/info` endpoint. + - The models displayed in the dropdown are sourced from this endpoint. + - Use the refresh button to update the model list if you've added new models to your LiteLLM server. + - If no model is selected, Roo Code will use a default model. Ensure you have configured at least one model on your LiteLLM server. + +### Option 2: Using OpenAI Compatible Provider + +Alternatively, you can configure LiteLLM using the "OpenAI Compatible" provider: + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "OpenAI Compatible" from the "API Provider" dropdown. +3. **Enter Base URL:** Input your LiteLLM proxy URL (e.g., `http://localhost:4000`). +4. **Enter API Key:** Use any string as the API key (e.g., `"sk-1234"`) since LiteLLM handles the actual provider authentication. +5. **Select Model:** Choose the model name you configured in your `config.yaml` file. + +Roo Code LiteLLM Provider Settings + +--- + +## How Roo Code Fetches and Interprets Model Information + +When you configure the LiteLLM provider, Roo Code interacts with your LiteLLM server to get details about the available models: + +- **Model Discovery:** Roo Code makes a GET request to `${baseUrl}/v1/model/info` on your LiteLLM server. If an API key is provided in Roo Code's settings, it's included in the `Authorization: Bearer ${apiKey}` header. +- **Model Properties:** For each model reported by your LiteLLM server, Roo Code extracts and interprets the following: + - `model_name`: The identifier for the model. + - `maxTokens`: Maximum output tokens. Defaults to `8192` if not specified by LiteLLM. + - `contextWindow`: Maximum context tokens. Defaults to `200000` if not specified by LiteLLM. + - `supportsImages`: Determined from `model_info.supports_vision` provided by LiteLLM. + - `supportsPromptCache`: Determined from `model_info.supports_prompt_caching` provided by LiteLLM. + - `inputPrice` / `outputPrice`: Calculated from `model_info.input_cost_per_token` and `model_info.output_cost_per_token` from LiteLLM. + - `supportsComputerUse`: This flag is set to `true` if the underlying model identifier matches one of the Anthropic models predefined in Roo Code as suitable for "computer use" (see `COMPUTER_USE_MODELS` in technical details). + +Roo Code uses default values for some of these properties if they are not explicitly provided by your LiteLLM server's `/model/info` endpoint for a given model. The defaults are: + +- `maxTokens`: 8192 +- `contextWindow`: 200,000 +- `supportsImages`: `true` +- `supportsComputerUse`: `true` (for the default model ID) +- `supportsPromptCache`: `true` +- `inputPrice`: 3.0 (µUSD per 1k tokens) +- `outputPrice`: 15.0 (µUSD per 1k tokens) + +--- + +## Tips and Notes + +- **LiteLLM Server is Key:** The primary configuration for models, API keys for downstream providers (like OpenAI, Anthropic), and other advanced features are managed on your LiteLLM server. Roo Code acts as a client to this server. +- **Configuration Options:** You can use either the dedicated "LiteLLM" provider (recommended) for automatic model discovery, or the "OpenAI Compatible" provider for simple manual configuration. +- **Model Availability:** The models available in Roo Code's "Model" dropdown depend entirely on what your LiteLLM server exposes through its `/v1/model/info` endpoint. +- **Network Accessibility:** Ensure your LiteLLM server is running and accessible from the machine where VS Code and Roo Code are running (e.g., check firewall rules if not on `localhost`). +- **Troubleshooting:** If models aren't appearing or requests fail: + - Verify your LiteLLM server is running and configured correctly. + - Check the LiteLLM server logs for errors. + - Ensure the Base URL in Roo Code settings matches your LiteLLM server's address. + - Confirm any API key required by your LiteLLM server is correctly entered in Roo Code. +- **Computer Use Models:** The `supportsComputerUse` flag in Roo Code is primarily relevant for certain Anthropic models known to perform well with tool-use and function-calling tasks. If you are routing other models through LiteLLM, this flag might not be automatically set unless the underlying model ID matches the specific Anthropic ones Roo Code recognizes. + +By leveraging LiteLLM, you can significantly expand the range of models accessible to Roo Code while centralizing their management. diff --git a/apps/docs/docs/providers/lmstudio.md b/apps/docs/docs/providers/lmstudio.md new file mode 100644 index 00000000000..6756d72b38b --- /dev/null +++ b/apps/docs/docs/providers/lmstudio.md @@ -0,0 +1,53 @@ +--- +sidebar_label: LM Studio +description: Learn how to set up and use LM Studio with Roo Code for running local language models with OpenAI-compatible API support. +keywords: + - LM Studio + - local models + - Roo Code + - AI integration + - GGUF models + - CodeLlama + - Mistral + - DeepSeek + - local inference +--- + +# Using LM Studio With Roo Code + +Roo Code supports running models locally using LM Studio. LM Studio provides a user-friendly interface for downloading, configuring, and running local language models. It also includes a built-in local inference server that emulates the OpenAI API, making it easy to integrate with Roo Code. + +**Website:** [https://lmstudio.ai/](https://lmstudio.ai/) + +--- + +## Setting Up LM Studio + +1. **Download and Install LM Studio:** Download LM Studio from the [LM Studio website](https://lmstudio.ai/). +2. **Download a Model:** Use the LM Studio interface to search for and download a model in GGUF format. Browse all available models in the LM Studio search interface or at [Hugging Face](https://huggingface.co/models?library=gguf). +3. **Start the Local Server:** + - Open LM Studio. + - Click the **"Local Server"** tab (the icon looks like `<->`). + - Select the model you downloaded. + - Click **"Start Server"**. + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "LM Studio" from the "API Provider" dropdown. +3. **Enter Model ID:** Enter the _file name_ of the model you loaded in LM Studio (e.g., `codellama-7b.Q4_0.gguf`). You can find this in the LM Studio "Local Server" tab. +4. **(Optional) Base URL:** By default, Roo Code will connect to LM Studio at `http://localhost:1234`. If you've configured LM Studio to use a different address or port, enter the full URL here. + +--- + +## Tips and Notes + +- **Resource Requirements:** Running large language models locally can be resource-intensive. Make sure your computer meets the minimum requirements for the model you choose. +- **Model Selection:** LM Studio provides a wide range of models. Experiment to find the one that best suits your needs. +- **Local Server:** The LM Studio local server must be running for Roo Code to connect to it. +- **LM Studio Documentation:** Refer to the [LM Studio documentation](https://lmstudio.ai/docs) for more information. +- **Troubleshooting:** If you see a "Please check the LM Studio developer logs to debug what went wrong" error, you may need to adjust the context length settings in LM Studio. +- **Token Tracking:** Roo Code tracks token usage for models run via LM Studio, helping you monitor consumption. +- **Reasoning Support:** For models that support it, Roo Code can parse "think" tags or similar reasoning indicators in LM Studio responses, offering more insight into the model's process. diff --git a/apps/docs/docs/providers/minimax.md b/apps/docs/docs/providers/minimax.md new file mode 100644 index 00000000000..a1b71268098 --- /dev/null +++ b/apps/docs/docs/providers/minimax.md @@ -0,0 +1,27 @@ +--- +sidebar_label: MiniMax +description: Configure MiniMax’s OpenAI‑compatible API in Roo Code. Choose the right region base URL and start chatting. +keywords: + - minimax + - mini max + - openai compatible + - china region + - api provider +--- + +# Using MiniMax With Roo Code + +MiniMax is an OpenAI‑compatible provider. Pick the correct region endpoint, add your API key, and you’re ready to chat. + +--- + +## Configuration in Roo Code + +1. Open Roo Code Settings (gear icon). +2. Select Provider: “MiniMax”. +3. Choose Base URL (region): + - International: https://api.minimax.io/v1 + - China (Mainland): https://api.minimaxi.com/v1 +4. Enter your API key in “MiniMax API Key”. +5. Select a model from the dropdown. +6. Optional: adjust Temperature and Max Output Tokens in model settings. diff --git a/apps/docs/docs/providers/mistral.md b/apps/docs/docs/providers/mistral.md new file mode 100644 index 00000000000..c7903831b7e --- /dev/null +++ b/apps/docs/docs/providers/mistral.md @@ -0,0 +1,60 @@ +--- +sidebar_label: Mistral AI +description: Configure Roo Code to use Mistral AI models including Codestral for code generation, with support for function calling and vision. +keywords: + - Mistral AI + - Codestral + - Roo Code + - AI models + - code generation + - Pixtral + - Ministral + - function calling + - La Plateforme +--- + +# Using Mistral AI With Roo Code + +Roo Code supports accessing models through the Mistral AI API, including both standard Mistral models and the code-specialized Codestral model. + +**Website:** [https://mistral.ai/](https://mistral.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [Mistral Platform](https://console.mistral.ai/). Create an account or sign in. You may need to go through a verification process. +2. **Create an API Key:** + - [La Plateforme API Key](https://console.mistral.ai/api-keys/) and/or + - [Codestral API Key](https://console.mistral.ai/codestral) + +--- + +## Available Models + +Roo Code supports all models available through Mistral AI's API. + +For the complete, up-to-date model list and capabilities, see [Mistral's model documentation](https://docs.mistral.ai/getting-started/models/models_overview/). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Mistral" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Mistral API key into the "Mistral API Key" field if you're using a `mistral` model. If you intend to use `codestral-latest`, see the "Codestral" section below. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Using Codestral + +[Codestral](https://docs.mistral.ai/capabilities/code_generation/) is a model specifically designed for code generation and interaction. +Only for Codestral you could use different endpoints (Default: codestral.mistral.ai). +For the La Platforme API Key change the **Codestral Base Url** to: https://api.mistral.ai + +To use Codestral: + +1. **Select "Mistral" as the API Provider.** +2. **Select a Codestral Model** +3. **Enter your Codestral (codestral.mistral.ai) or La Plateforme (api.mistral.ai) API Key.** diff --git a/apps/docs/docs/providers/ollama.md b/apps/docs/docs/providers/ollama.md new file mode 100644 index 00000000000..91014ff892f --- /dev/null +++ b/apps/docs/docs/providers/ollama.md @@ -0,0 +1,188 @@ +--- +sidebar_label: Ollama +description: Set up Ollama with Roo Code to run open source language models locally for privacy, offline access, and cost-effective AI coding. +keywords: + - Ollama + - local models + - Roo Code + - open source AI + - CodeLlama + - Qwen + - offline AI + - privacy + - context window configuration +--- + +import KangarooIcon from '@site/src/components/KangarooIcon'; + +# Using Ollama With Roo Code + +Roo Code supports running models locally using Ollama. This provides privacy, offline access, and potentially lower costs, but requires more setup and a powerful computer. + +**Website:** [https://ollama.com/](https://ollama.com/) + +--- + +## Setting up Ollama + +1. **Download and Install Ollama:** Download the Ollama installer for your operating system from the [Ollama website](https://ollama.com/). Follow the installation instructions. Make sure Ollama is running + + ```bash + ollama serve + ``` + +2. **Download a Model:** Browse [Ollama's model library](https://ollama.com/library) for all available models. To download a model, run: + + ```bash + ollama pull + ``` + + For example: + + ```bash + ollama pull qwen2.5-coder:32b + ``` + +3. **Configure the Model:** Configure your model's context window in Ollama and save a copy. + + :::info Default Context Behavior + **Roo Code automatically defers to the Modelfile's `num_ctx` setting by default.** When you use a model with Ollama, Roo Code reads the model's configured context window and uses it automatically. You don't need to configure context size in Roo Code settings - it respects what's defined in your Ollama model. + ::: + + **Option A: Interactive Configuration** + + Load the model (we will use `qwen2.5-coder:32b` as an example): + + ```bash + ollama run qwen2.5-coder:32b + ``` + + Change context size parameter: + + ```bash + /set parameter num_ctx 32768 + ``` + + Save the model with a new name: + + ```bash + /save your_model_name + ``` + + **Option B: Using a Modelfile (Recommended)** + + Create a `Modelfile` with your desired configuration: + + ```dockerfile + # Example Modelfile for reduced context + FROM qwen2.5-coder:32b + + # Set context window to 32K tokens (reduced from default) + PARAMETER num_ctx 32768 + + # Optional: Adjust temperature for more consistent output + PARAMETER temperature 0.7 + + # Optional: Set repeat penalty + PARAMETER repeat_penalty 1.1 + ``` + + Then create your custom model: + + ```bash + ollama create qwen-32k -f Modelfile + ``` + + :::tip Override Context Window + If you need to override the model's default context window: + + - **Permanently:** Save a new model version with your desired `num_ctx` using either method above + - **Roo Code behavior:** Roo automatically uses whatever `num_ctx` is configured in your Ollama model + - **Memory considerations:** Reducing `num_ctx` helps prevent out-of-memory errors on limited hardware + ::: + +4. **Configure Roo Code:** + - Open the Roo Code sidebar ( icon). + - Click the settings gear icon (). + - Select "ollama" as the API Provider. + - Enter the model tag or saved name from the previous step (e.g., `your_model_name`). + - (Optional) Configure the base URL if you're running Ollama on a different machine. The default is `http://localhost:11434`. + - (Optional) Enter an API Key if your Ollama server requires authentication. + - (Advanced) Roo uses Ollama's native API by default for the "ollama" provider. An OpenAI-compatible `/v1` handler also exists but isn't required for typical setups. + +--- + +## Tips and Notes + +- **Resource Requirements:** Running large language models locally can be resource-intensive. Make sure your computer meets the minimum requirements for the model you choose. +- **Model Selection:** Experiment with different models to find the one that best suits your needs. +- **Offline Use:** Once you've downloaded a model, you can use Roo Code offline with that model. +- **Token Tracking:** Roo Code tracks token usage for models run via Ollama, helping you monitor consumption. +- **Ollama Documentation:** Refer to the [Ollama documentation](https://ollama.com/docs) for more information on installing, configuring, and using Ollama. + +--- + +## Troubleshooting + +### Out of Memory (OOM) on First Request + +**Symptoms** + +- First request from Roo fails with an out-of-memory error +- GPU/CPU memory usage spikes when the model first loads +- Works after you manually start the model in Ollama + +**Cause** +If no model instance is running, Ollama spins one up on demand. During that cold start it may allocate a larger context window than expected. The larger context window increases memory usage and can exceed available VRAM or RAM. This is an Ollama startup behavior, not a Roo Code bug. + +**Fixes** + +1. **Preload the model** + + ```bash + ollama run <model-name> + ``` + + Keep it running, then issue the request from Roo. + +2. **Pin the context window (`num_ctx`)** + + - Option A — interactive session, then save: + ```bash + # inside `ollama run <base-model>` + /set parameter num_ctx 32768 + /save <your_model_name> + ``` + - Option B — Modelfile (recommended for reproducibility): + ```dockerfile + FROM <base-model> + PARAMETER num_ctx 32768 + # Adjust based on your available memory: + # 16384 for ~8GB VRAM + # 32768 for ~16GB VRAM + # 65536 for ~24GB+ VRAM + ``` + Then create the model: + ```bash + ollama create <your_model_name> -f Modelfile + ``` + +3. **Ensure the model's context window is pinned** + Save your Ollama model with an appropriate `num_ctx` (via `/set` + `/save`, or preferably a Modelfile). **Roo Code automatically detects and uses the model's configured `num_ctx`** - there is no manual context size setting in Roo Code for the Ollama provider. + +4. **Use smaller variants** + If GPU memory is limited, use a smaller quant (e.g., q4 instead of q5) or a smaller parameter size (e.g., 7B/13B instead of 32B). + +5. **Restart after an OOM** + ```bash + ollama ps + ollama stop <model-name> + ``` + +**Quick checklist** + +- Model is running before Roo request +- `num_ctx` pinned (Modelfile or `/set` + `/save`) +- Model saved with appropriate `num_ctx` (Roo uses this automatically) +- Model fits available VRAM/RAM +- No leftover Ollama processes diff --git a/apps/docs/docs/providers/openai-chatgpt-plus-pro.md b/apps/docs/docs/providers/openai-chatgpt-plus-pro.md new file mode 100644 index 00000000000..5d1c0f0da68 --- /dev/null +++ b/apps/docs/docs/providers/openai-chatgpt-plus-pro.md @@ -0,0 +1,52 @@ +--- +sidebar_label: ChatGPT Plus/Pro +title: ChatGPT Plus/Pro +description: Use OpenAI models in Roo Code with your ChatGPT Plus/Pro subscription (OAuth sign-in, no API key). +keywords: + - OpenAI Codex + - ChatGPT Plus + - ChatGPT Pro + - Roo Code + - OAuth + - no api key + - subscription +--- + +
+ +
+ +--- + +## Quickstart: Connect your subscription to Roo Code + +1. Open Roo Code settings (click the gear icon in the Roo Code panel). +2. In **API Provider**, select **OpenAI – ChatGPT Plus/Pro**. +3. Click **Sign in to OpenAI Codex**. +4. Finish the sign-in flow in your browser. +5. Back in Roo Code settings, pick a model from the dropdown. +6. Save. + +## Tips and Notes + +- **Subscription Required:** You need an active ChatGPT Plus or Pro subscription. This provider won't work with free ChatGPT accounts. See [OpenAI's ChatGPT plans](https://openai.com/chatgpt/pricing) for more info. +- **No API Costs:** Usage through this provider counts against your ChatGPT subscription, not separately billed API usage. +- **Sign Out:** To disconnect, use the "Sign Out" button in the provider settings. + +## What you can't do (and why) + +- **You can't use arbitrary OpenAI API models.** This provider only exposes the models listed in Roo's Codex model catalog. +- **You can't export/migrate your sign-in state with settings export.** OAuth tokens are stored in VS Code SecretStorage, which isn't included in Roo's settings export. diff --git a/apps/docs/docs/providers/openai-compatible.md b/apps/docs/docs/providers/openai-compatible.md new file mode 100644 index 00000000000..fd4c03d1c7b --- /dev/null +++ b/apps/docs/docs/providers/openai-compatible.md @@ -0,0 +1,122 @@ +--- +sidebar_label: OpenAI Compatible +description: Use Roo Code with any OpenAI-compatible API provider including Perplexity, Together AI, Anyscale, and custom endpoints. +keywords: + - OpenAI compatible + - Roo Code + - API integration + - custom endpoints + - Together AI + - Perplexity + - Anyscale + - model configuration +--- + +# Using OpenAI Compatible Providers With Roo Code + +Roo Code supports a wide range of AI model providers that offer APIs compatible with the OpenAI API standard. This means you can use models from providers _other than_ OpenAI, while still using a familiar API interface. This includes providers like: + +- **Local models** running through tools like Ollama and LM Studio (covered in separate sections). +- **Cloud providers** like Perplexity, Together AI, Anyscale, and others. +- **Any other provider** offering an OpenAI-compatible API endpoint. + +This document focuses on setting up providers _other than_ the official OpenAI API (which has its own [dedicated configuration page](/providers/openai)). + +--- + +## General Configuration + +The key to using an OpenAI-compatible provider is to configure two main settings: + +1. **Base URL:** This is the API endpoint for the provider. It will _not_ be `https://api.openai.com/v1` (that's for the official OpenAI API). +2. **API Key:** This is the secret key you obtain from the provider. +3. **Model ID:** This is the model name of the specific model. + +You'll find these settings in the Roo Code settings panel (click the icon): + +- **API Provider:** Select "OpenAI Compatible". +- **Base URL:** Enter the base URL provided by your chosen provider. **This is crucial.** +- **API Key:** Enter your API key. +- **Model:** Choose a model. +- **Model Configuration:** This lets you customize advanced configuration for the model + - Max Output Tokens + - Context Window + - Image Support + - Computer Use + - Input Price + - Output Price + +--- + +## Native Tool Calling (OpenAI-Native Endpoint) + +When you connect this provider directly to the official OpenAI API (or an endpoint that mirrors it exactly), Roo Code can use OpenAI's **native tool-calling** protocol instead of the XML-based tool format. + +At a high level: + +- **Tool definitions** are sent to the model using OpenAI's native tools schema. +- **Tool calls** stream back as dedicated tool events, including the tool name, arguments, and metadata. +- **Tool arguments** are streamed incrementally, which reduces latency between the model deciding to use a tool and Roo Code executing it. + +### When native tools are used + +Roo Code uses native tool calling when **all** of the following are true: + +1. The selected provider is configured for the OpenAI-native protocol (OpenAI or an OpenAI-compatible endpoint that fully supports native tools). +2. The active profile's tool protocol is set to allow native tools (or left at its default, which prefers native tools when supported). +3. The selected model supports native tool calling. + +If any of these conditions aren't met, Roo Code falls back to its XML-based tool protocol instead. + +### Example: simple native tool flow + +Here's a simplified example of how a file-reading tool might be exposed when using an OpenAI-native endpoint: + +```json +{ + "tools": [ + { + "type": "function", + "function": { + "name": "read_file", + "description": "Read a file from the workspace with line numbers.", + "parameters": { + "type": "object", + "properties": { + "path": { "type": "string", "description": "Relative file path" }, + "start_line": { "type": "integer", "nullable": true }, + "end_line": { "type": "integer", "nullable": true } + }, + "required": ["path"] + } + } + } + ] +} +``` + +When the model decides to use `read_file`, Roo Code surfaces **streamed tool events** in the task timeline: + +- A native _tool call_ event with the tool name and arguments as they're being generated +- The corresponding _tool result_ event showing the file contents and any truncation or line-range information + +This gives you lower-latency feedback on which tools are being used and with what arguments. + +### Settings and limitations + +- **Tool protocol selector:** In advanced settings, you can choose which tool protocol Roo Code should prefer (XML vs native). If you disable native tools here, Roo Code will always use XML even if the provider supports native tools. +- **Model support:** Not all OpenAI-native or compatible models support tools. If a model doesn't support tools, Roo Code will not attempt to send tool definitions for it. +- **Provider quirks:** Some OpenAI-compatible providers only partially implement the native tools API. If Roo Code detects protocol errors, it may fall back to XML tools automatically. + +For a deeper overview of how tools work in Roo Code in general, see the [Tool Use Overview](/advanced-usage/available-tools/tool-use-overview). + +--- + +## Troubleshooting + +- **"Invalid API Key":** Double-check that you've entered the API key correctly. +- **"Model Not Found":** Make sure you're using a valid model ID for your chosen provider. +- **Connection Errors:** Verify the Base URL is correct and that your provider's API is accessible. +- **Unexpected Results:** If you're getting unexpected results, try a different model. + +By using an OpenAI-compatible provider, you can leverage the flexibility of Roo Code with a wider range of AI models. Remember to always consult your provider's documentation for the most accurate and up-to-date information. diff --git a/apps/docs/docs/providers/openai.md b/apps/docs/docs/providers/openai.md new file mode 100644 index 00000000000..3b11616372f --- /dev/null +++ b/apps/docs/docs/providers/openai.md @@ -0,0 +1,104 @@ +--- +sidebar_label: OpenAI +description: Connect Roo Code to OpenAI's official API for access to GPT and reasoning models with advanced capabilities and verbosity control. +keywords: + - OpenAI + - GPT models + - reasoning models + - Roo Code + - AI integration + - API key + - official OpenAI API + - verbosity + - reasoning effort +--- + +# Using OpenAI With Roo Code + +Roo Code supports accessing models directly through the official OpenAI API, including the latest GPT-5 family with advanced features like reasoning effort control and verbosity settings. + +:::info Want to use a ChatGPT Plus/Pro subscription instead? +Use the **OpenAI – ChatGPT Plus/Pro** provider to sign in via OAuth (no API key): [OpenAI – ChatGPT Plus/Pro](/providers/openai-chatgpt-plus-pro). +::: + +**Website:** [https://openai.com/](https://openai.com/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [OpenAI Platform](https://platform.openai.com/). Create an account or sign in. +2. **Navigate to API Keys:** Go to the [API keys](https://platform.openai.com/api-keys) page. +3. **Create a Key:** Click "Create new secret key". Give your key a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key _immediately_. You will not be able to see it again. Store it securely. + +--- + +## Available Models + +Roo Code supports all models available through OpenAI's API. + +For the complete, up-to-date model list and capabilities, see [OpenAI's models documentation](https://platform.openai.com/docs/models). + +--- + +## Configuration in Roo Code + +### Setup + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "OpenAI" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your OpenAI API key into the "OpenAI API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. +5. **(Optional) Base URL:** If you need to use a custom base URL, enter the URL. Most people won't need to adjust this. + +--- + +## Advanced Features + +### Reasoning Effort Control + +For models that support reasoning (GPT-5, o1, o3, o4 families), you can control how deeply the model thinks: + +**GPT-5 Models:** + +- `minimal` - Fastest responses with basic reasoning +- `low` - Quick responses with light reasoning +- `medium` (default) - Balanced reasoning and response time +- `high` - Deep reasoning for complex problems + +**o1/o3/o4 Models:** + +- `low` - Minimal thinking time +- `medium` - Balanced approach +- `high` - Maximum thinking for complex problems + +Some models have preset reasoning levels that cannot be changed. + +### Verbosity Control + +Available for GPT-5 models and select others, verbosity controls the detail level of responses: + +- `low` - Concise, direct responses +- `medium` (default) - Balanced detail +- `high` - Comprehensive, detailed responses + +### Temperature Settings + +Temperature controls output randomness (0.0 to 2.0): + +- **GPT-5 models:** Default 1.0 for balanced creativity +- **Other models:** Default 0.0 for deterministic output +- **Note:** Not available for o1/o3 reasoning models + +### Conversation Continuity (GPT-5) + +GPT-5 models maintain conversation context efficiently through response IDs, reducing token usage while preserving context. This happens automatically - no configuration needed. + +--- + +## Tips and Notes + +- **Pricing:** Refer to the [OpenAI Pricing](https://openai.com/pricing) page for current model costs and discounts, including prompt caching. +- **Azure OpenAI Service:** If you'd like to use the Azure OpenAI service, please see our section on [OpenAI-compatible](/providers/openai-compatible) providers. +- **Context Optimization:** For GPT-5-Codex, leverage prompt caching by maintaining consistent context across requests to reduce costs significantly. diff --git a/apps/docs/docs/providers/openrouter.md b/apps/docs/docs/providers/openrouter.md new file mode 100644 index 00000000000..382822de96c --- /dev/null +++ b/apps/docs/docs/providers/openrouter.md @@ -0,0 +1,63 @@ +--- +description: Configure OpenRouter in Roo Code to access 100+ language models from various providers through a single API with automatic model discovery. +keywords: + - roo code + - openrouter + - ai provider + - language models + - api configuration + - model selection + - prompt caching + - byok +sidebar_label: OpenRouter +--- + +# Using OpenRouter With Roo Code + +OpenRouter is an AI platform that provides access to a wide variety of language models from different providers, all through a single API. This can simplify setup and allow you to easily experiment with different models. + +**Website:** [https://openrouter.ai/](https://openrouter.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [OpenRouter website](https://openrouter.ai/). Sign in with your Google or GitHub account. +2. **Get an API Key:** Go to the [keys page](https://openrouter.ai/keys). You should see an API key listed. If not, create a new key. +3. **Copy the Key:** Copy the API key. + +--- + +## Available Models + +Roo Code automatically fetches all available models from OpenRouter's API (100+ models from various providers). + +For the complete, up-to-date model list with pricing and capabilities, see [OpenRouter's models page](https://openrouter.ai/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "OpenRouter" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your OpenRouter API key into the "OpenRouter API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. +5. **(Optional) Custom Base URL:** If you need to use a custom base URL for the OpenRouter API, check "Use custom base URL" and enter the URL. Leave this blank for most users. + +--- + +## Tips and Notes + +- **Model Selection:** OpenRouter offers a wide range of models. Experiment to find the best one for your needs. +- **Pricing:** OpenRouter charges based on the underlying model's pricing. See the [OpenRouter Models page](https://openrouter.ai/models) for details. +- **Prompt Caching:** + - OpenRouter passes caching requests to underlying models that support it. Check the [OpenRouter Models page](https://openrouter.ai/models) to see which models offer caching. + - For most models, caching should activate automatically if supported by the model itself (similar to how Requesty works). + - **Models with prompt caching support include:** + - Anthropic Claude Sonnet 3.5, 3.7 + - Anthropic Claude Haiku 3.5 + - **Anthropic Claude Haiku 4.5** (newly added) + - Google Gemini models (with manual activation - see below) + - **Exception for Gemini Models via OpenRouter:** Due to potential response delays sometimes observed with Google's caching mechanism when accessed via OpenRouter, a manual activation step is required _specifically for Gemini models_. + - If using a **Gemini model** via OpenRouter, you **must manually check** the "Enable Prompt Caching" box in the provider settings to activate caching for that model. This checkbox serves as a temporary workaround. For non-Gemini models on OpenRouter, this checkbox is not necessary for caching. +- **Bring Your Own Key (BYOK):** If you use your own key for the underlying service, OpenRouter charges 5% of what it normally would. Roo Code automatically adjusts the cost calculation to reflect this. diff --git a/apps/docs/docs/providers/qwen-code.md b/apps/docs/docs/providers/qwen-code.md new file mode 100644 index 00000000000..5c1691ca815 --- /dev/null +++ b/apps/docs/docs/providers/qwen-code.md @@ -0,0 +1,75 @@ +--- +sidebar_label: Qwen Code CLI +description: Access Qwen3 Coder models through OAuth authentication. 1M context windows with automatic token refresh. +keywords: + - qwen code + - qwen cli + - qwen3 coder + - roo code + - api provider + - oauth + - alibaba + - dashscope +--- + +# Qwen Code CLI Provider + +Access Alibaba's Qwen3 Coder models through OAuth authentication with automatic token refresh. Features massive 1M token context windows optimized for large codebases. + +:::info Setup Required + +1. **Install Qwen Client**: Download from the official website +2. **Authenticate**: Run the client and sign in to create OAuth credentials +3. **Configure in Roo Code**: Select "Qwen Code CLI API" as your provider + - Default path `~/.qwen/oauth_creds.json` works automatically + - Or specify a custom credentials path if needed + ::: + +**Website:** [https://chat.qwen.ai](https://chat.qwen.ai) + +--- + +## Available Models + +Qwen3 Coder models feature massive 1M context windows and 65K max output tokens. + +For the complete, up-to-date model list, see the Qwen Code provider's model catalog when you configure the provider in Roo Code. + +--- + +## Configuration + +### OAuth Credentials Path + +- **Default**: `~/.qwen/oauth_creds.json` +- **Custom paths supported**: Both absolute and `~/` prefixed paths +- Created automatically when you authenticate with the Qwen client + +--- + +## Key Features + +- **OAuth 2.0**: Secure authentication with automatic token refresh +- **1M Context**: Handle entire codebases in a single conversation +- **Auto-refresh**: Tokens refresh transparently with 30-second buffer +- **Free Tier**: 2,000 requests/day and 60 requests/minute with no token limits, available during a promotional period. +- **Reasoning Support**: Full support for thinking blocks + +--- + +## Common Issues + +**"Cannot find credentials file"** + +- Ensure you've authenticated with the Qwen client +- Check file exists at `~/.qwen/oauth_creds.json` + +**"Token refresh failed"** + +- Check network connectivity +- Re-authenticate with the Qwen client + +**"401 Unauthorized"** + +- Provider should auto-refresh (check logs) +- If persistent, delete credentials and re-authenticate diff --git a/apps/docs/docs/providers/requesty.md b/apps/docs/docs/providers/requesty.md new file mode 100644 index 00000000000..c6c2045e173 --- /dev/null +++ b/apps/docs/docs/providers/requesty.md @@ -0,0 +1,62 @@ +--- +description: Configure Requesty in Roo Code to access 150+ LLMs with cost optimizations, unified billing, and comprehensive usage tracking features. +keywords: + - roo code + - requesty + - ai provider + - language models + - api configuration + - cost optimization + - usage tracking + - prompt caching +sidebar_label: Requesty +--- + +# Using Requesty With Roo Code + +Roo Code supports accessing models through the [Requesty](https://www.requesty.ai/) AI platform. Requesty provides an easy and optimized API for interacting with 150+ large language models (LLMs). + +**Website:** [https://www.requesty.ai/](https://www.requesty.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [Requesty website](https://www.requesty.ai/) and create an account or sign in. +2. **Get API Key:** You can get an API key from the [API Management](https://app.requesty.ai/manage-api) section of your Requesty dashboard. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Requesty's API (150+ models from multiple providers). + +For the complete, up-to-date model list with pricing, see [Requesty's model list](https://app.requesty.ai/router/list). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Requesty" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Requesty API key into the "Requesty API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Tips and Notes + +- **Optimizations**: Requesty offers range of in-flight cost optimizations to lower your costs. +- **Unified and simplified billing**: Unrestricted access to all providers and models, automatic balance top ups and more via a single [API key](https://app.requesty.ai/manage-api). +- **Cost tracking**: Track cost per model, coding language, changed file, and more via the [Cost dashboard](https://app.requesty.ai/cost-management) or the [Requesty VS.code extension](https://marketplace.visualstudio.com/items?itemName=Requesty.requesty). +- **Stats and logs**: See your [coding stats dashboard](https://app.requesty.ai/usage-stats) or go through your [LLM interaction logs](https://app.requesty.ai/logs). +- **Fallback policies**: Keep your LLM working for you with fallback policies when providers are down. + +* **Prompt Caching:** Some providers support prompt caching. [Search models with caching](https://app.requesty.ai/router/list). + +--- + +## Relevant resources + +- [Requesty Youtube channel](https://www.youtube.com/@requestyAI): +- [Requesty Discord](https://requesty.ai/discord) diff --git a/apps/docs/docs/providers/roo-code-router.md b/apps/docs/docs/providers/roo-code-router.md new file mode 100644 index 00000000000..3db2f81c1b6 --- /dev/null +++ b/apps/docs/docs/providers/roo-code-router.md @@ -0,0 +1,24 @@ +--- +sidebar_label: Roo Code Router +description: The easiest way to get started with AI coding. Access vetted coding models with zero configuration. +keywords: + - roo code router + - roo code cloud + - roo provider + - free ai models + - easy setup + - no api key +--- + +# Roo Code Router + +To make it as smooth as possible to use Roo Code, which depends on a provider service for LLM inference, we've built the Roo Code Router. + +There's no need for a separate subscription or managing API keys. It's fully integrated into our suite of products and easy to get started. It features: + +- Vetted premium coding models, and sometimes free models (depending on vendor availability) +- Only models tested to work well with Roo +- Paid models provided at cost, with no mark-up +- The same pre-paid credit mechanism you'll use for Roo Code Cloud Agents + +[Learn more and how to get started ](/roo-code-router/overview) diff --git a/apps/docs/docs/providers/sambanova.md b/apps/docs/docs/providers/sambanova.md new file mode 100644 index 00000000000..cc738f2feba --- /dev/null +++ b/apps/docs/docs/providers/sambanova.md @@ -0,0 +1,43 @@ +--- +sidebar_label: SambaNova +description: Configure SambaNova's high-speed AI models in Roo Code. Experience enterprise-grade inference with competitive performance and diverse model selection. +keywords: + - sambanova + - sambanova ai + - roo code + - api provider + - high-speed inference + - enterprise ai + - llm provider + - fast inference +--- + +# Using SambaNova With Roo Code + +SambaNova specializes in providing high-speed inference for large language models, utilizing their Reconfigurable Dataflow Units (RDUs) through their SambaCloud portal. This delivers fast response times for supported models. + +**Website:** [https://cloud.sambanova.ai/](https://cloud.sambanova.ai/) + +--- + +## Getting an API Key + +To use SambaNova with Roo Code, you'll need an API key from the [SambaCloud](https://cloud.sambanova.ai?utm_source=roocode&utm_medium=external&utm_campaign=cloud_signup). After signing up, navigate to the API Keys section in the left panel to create and copy your SambaCloud API key. + +--- + +## Available Models + +Roo Code automatically fetches all available models from the SambaNova API. + +For the complete, up-to-date model list and capabilities, see [SambaCloud's supported models documentation](https://docs.sambanova.ai/cloud/docs/get-started/supported-models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "SambaNova" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your SambaNova API key into the "SambaNova API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. +5. **(Optional) Custom Base URL:** If using a private deployment, check "Use custom base URL" and enter your endpoint URL. diff --git a/apps/docs/docs/providers/unbound.md b/apps/docs/docs/providers/unbound.md new file mode 100644 index 00000000000..c200ee2ea62 --- /dev/null +++ b/apps/docs/docs/providers/unbound.md @@ -0,0 +1,52 @@ +--- +description: Configure Unbound in Roo Code for secure access to multiple LLMs through a single API. Enterprise-grade security and compliance features. +keywords: + - Unbound + - Roo Code + - LLM gateway + - enterprise AI + - secure AI + - API provider + - Anthropic + - OpenAI + - compliance +sidebar_label: Unbound +--- + +# Using Unbound With Roo Code + +Roo Code supports accessing models through [Unbound](https://getunbound.ai/), a platform that focuses on providing secure and reliable access to a variety of large language models (LLMs). Unbound acts as a gateway, allowing you to use models from providers like Anthropic and OpenAI without needing to manage multiple API keys and configurations directly. They emphasize security and compliance features for enterprise use. + +**Website:** [https://getunbound.ai/](https://getunbound.ai/) + +--- + +## Creating an Account + +1. **Sign Up/Sign In:** Go to the [Unbound gateway](https://gateway.getunbound.ai). Create an account or sign in. +2. **Create an Application:** Go to the [Applications](https://gateway.getunbound.ai/ai-gateway-applications) page and hit the "Create Application" button. +3. **Copy the API Key:** Copy the API key to your clipboard. + +--- + +## Available Models + +Roo Code automatically fetches all models configured in your Unbound application. + +Configure your allowed models in the [Unbound Applications dashboard](https://gateway.getunbound.ai/ai-gateway-applications), then Roo Code will display them in the model dropdown. + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Unbound" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Unbound API key into the "Unbound API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Tips and Notes + +- **Security Focus:** Unbound emphasizes security features for enterprise use. If your organization has strict security requirements for AI usage, Unbound might be a good option. +- **Model List Refresh:** Roo Code includes a refresh button specifically for the Unbound provider in the settings. This allows you to easily update the list of available models from your Unbound application and get immediate feedback on your API key's validity. diff --git a/apps/docs/docs/providers/vercel-ai-gateway.md b/apps/docs/docs/providers/vercel-ai-gateway.md new file mode 100644 index 00000000000..b1c447d38a7 --- /dev/null +++ b/apps/docs/docs/providers/vercel-ai-gateway.md @@ -0,0 +1,67 @@ +--- +description: Configure the Vercel AI Gateway in Roo Code to robustly access 100+ language models from various providers through a centralized interface. +keywords: + - roo code + - vercel ai gateway + - ai provider + - language models + - api configuration + - model selection + - prompt caching + - usage tracking + - byok +sidebar_label: Vercel AI Gateway +--- + +# Using Vercel AI Gateway With Roo Code + +The AI Gateway provides a unified API to access hundreds of models through a single endpoint. It gives you the ability to set budgets, monitor usage, load-balance requests, and manage fallbacks. + +Useful links: + +- Team dashboard: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai +- Models catalog: https://vercel.com/ai-gateway/models +- Docs: https://vercel.com/docs/ai-gateway + +--- + +## Getting an API Key + +An API key is required for authentication. + +1. **Sign Up/Sign In:** Go to the [Vercel Website](https://vercel.com/) and sign in. +2. **Get an API Key:** Go to the [API Key page](https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys&title=AI+Gateway+API+Key) in the AI Gateway tab. Create a new key. +3. **Copy the Key:** Copy the API key. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Vercel AI Gateway's API (hundreds of models from various providers). + +For the complete, up-to-date model catalog with capabilities, see [Vercel's AI Gateway models page](https://vercel.com/ai-gateway/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Vercel AI Gateway" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your Vercel AI Gateway API key into the "Vercel AI Gateway API Key" field. +4. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Prompt Caching + +Vercel AI Gateway supports automatic prompt caching for select models including Anthropic Claude and OpenAI GPT models. This reduces costs by caching frequently used prompts. + +--- + +## Tips and Notes + +- **Model Selection:** The Vercel AI Gateway offers a wide range of models. Experiment to find the best one for your needs. +- **Pricing:** The Vercel AI Gateway charges based on the underlying model's pricing, including costs for cached prompts. See the [Vercel AI Gateway Models page](https://vercel.com/ai-gateway/models) for details. +- **Temperature:** The default temperature is `0.7` and is configurable per model. +- **Bring Your Own Key (BYOK):** The Vercel AI Gateway has **no markup** if you decide to use your own key for the underlying service. +- **More info:** Vercel does not add rate limits. Upstream providers may. New accounts receive $5 credits every 30 days until the first payment. diff --git a/apps/docs/docs/providers/vertex.md b/apps/docs/docs/providers/vertex.md new file mode 100644 index 00000000000..af962a0c2b4 --- /dev/null +++ b/apps/docs/docs/providers/vertex.md @@ -0,0 +1,117 @@ +--- +description: Access Google Gemini and Anthropic Claude models through GCP Vertex AI in Roo Code. Configure authentication and start using enterprise AI. +keywords: + - Vertex AI + - GCP + - Google Cloud + - Roo Code + - Gemini + - Claude + - AI models + - machine learning + - cloud AI +sidebar_label: GCP Vertex AI +--- + +# Using GCP Vertex AI With Roo Code + +Roo Code supports accessing models through Google Cloud Platform's Vertex AI, a managed machine learning platform that provides access to various foundation models, including Anthropic's Claude family. + +**Website:** [https://cloud.google.com/vertex-ai](https://cloud.google.com/vertex-ai) + +--- + +## Prerequisites + +- **Google Cloud Account:** You need an active Google Cloud Platform (GCP) account. +- **Project:** You need a GCP project with the Vertex AI API enabled. +- **Model Access:** You must request and be granted access to the specific Claude models on Vertex AI you want to use. See the [Google Cloud documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-claude#before_you_begin) for instructions. +- **Application Default Credentials (ADC):** Roo Code uses Application Default Credentials to authenticate with Vertex AI. The easiest way to set this up is to: + 1. Install the Google Cloud CLI: [https://cloud.google.com/sdk/docs/install](https://cloud.google.com/sdk/docs/install) + 2. Authenticate using: `gcloud auth application-default login` +- **Service Account Key (Alternative):** Alternatively, you can authenticate using a Google Cloud Service Account key file. You'll need to generate this key in your GCP project. See the [Google Cloud documentation on creating service account keys](https://cloud.google.com/iam/docs/creating-managing-service-account-keys). + +--- + +## Available Models + +Roo Code supports all models available through Google Cloud Vertex AI, including Anthropic Claude, Google Gemini, and MAAS (Model as a Service) offerings. + +For the complete, up-to-date model list and IDs, see [Vertex AI's models documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/models). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "GCP Vertex AI" from the "API Provider" dropdown. +3. **Configure Authentication:** + + Roo Code uses the following authentication priority: + + 1. **Google Cloud Credentials (JSON):** If provided, this takes precedence + 2. **Google Cloud Key File Path:** If provided and no JSON credentials, this is used + 3. **Application Default Credentials (ADC):** Used as fallback when neither above is provided + + **Option 1 - Using ADC (Simplest):** + + - Install the Google Cloud CLI and run `gcloud auth application-default login` + - No further configuration needed in Roo Code + + **Option 2 - Using Service Account Key:** + + - Either paste the JSON content directly into **Google Cloud Credentials** field + - Or provide the file path in **Google Cloud Key File Path** field + +4. **Enter Project ID:** Enter your Google Cloud Project ID. +5. **Select Region:** Choose the region where your Vertex AI resources are located (e.g., `us-east5`). +6. **Select Model:** Choose your desired model from the "Model" dropdown. + +--- + +## Advanced Features + +### Gemini-Specific Features + +When using Gemini models through Vertex AI, additional grounding features become available: + +#### URL Context + +Enable URL context to allow Gemini models to access and analyze web content directly. This feature allows Roo to: + +- Read and understand web pages in real-time +- Analyze documentation from URLs +- Review online code repositories +- Access current information from websites + +**Enabling URL Context:** + +1. Select a Gemini model in your Vertex AI configuration +2. Enable the "URL Context" option that appears +3. Save your settings + +#### Google Search Grounding + +Enable Google Search grounding to enhance Gemini's responses with real-time search results. This provides: + +- Up-to-date information from web searches +- Fact-checking capabilities +- Current event awareness +- Enhanced accuracy for technical queries + +**Enabling Search Grounding:** + +1. Select a Gemini model in your Vertex AI configuration +2. Enable the "Google Search Grounding" option that appears +3. Save your settings + +:::note +URL Context and Google Search Grounding options only appear when a Gemini model is selected. These features may incur additional costs. +::: + +--- + +## Tips and Notes + +- **Permissions:** Ensure your Google Cloud account has the necessary permissions to access Vertex AI and the specific models you want to use. +- **Pricing:** Refer to the [Vertex AI pricing](https://cloud.google.com/vertex-ai/pricing) page for details. diff --git a/apps/docs/docs/providers/vscode-lm.md b/apps/docs/docs/providers/vscode-lm.md new file mode 100644 index 00000000000..418b6289aa7 --- /dev/null +++ b/apps/docs/docs/providers/vscode-lm.md @@ -0,0 +1,58 @@ +--- +description: Use GitHub Copilot and other VS Code language models in Roo Code through the experimental Language Model API integration. +keywords: + - VS Code LM API + - Language Model API + - GitHub Copilot + - Roo Code + - VS Code extensions + - AI models + - experimental features +sidebar_label: VS Code Language Model API +--- + +# Using VS Code Language Model API With Roo Code + +Roo Code includes _experimental_ support for the [VS Code Language Model API](https://code.visualstudio.com/api/extension-guides/language-model). This API allows extensions to provide access to language models directly within VS Code. This means you can potentially use models from: + +- **GitHub Copilot:** If you have a Copilot subscription and the extension installed. +- **Other VS Code Extensions:** Any extension that implements the Language Model API. + +**Important:** This integration is highly experimental and may not work as expected. It is dependent on other extensions correctly implementing the VS Code Language Model API. + +--- + +## Prerequisites + +- **VS Code:** The Language Model API is available through VS Code (and is not currently supported by Cursor). +- **A Language Model Provider Extension:** You need an extension that provides a language model. Examples include: + - **GitHub Copilot:** If you have a Copilot subscription, the GitHub Copilot and GitHub Copilot Chat extensions can provide models. + - **Other Extensions:** Search the VS Code Marketplace for extensions that mention "Language Model API" or "lm". There may be other experimental extensions available. + +--- + +## Configuration + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "VS Code LM API" from the "API Provider" dropdown. +3. **Select Model:** The "Language Model" dropdown will (eventually) list available models. The format is `vendor/family`. For example, if you have Copilot, you might see options like `copilot - `. + +--- + +## Limitations + +- **Experimental API:** The VS Code Language Model API is still under development. Expect changes and potential instability. +- **Extension Dependent:** This feature relies entirely on other extensions providing models. Roo Code cannot directly control which models are available. +- **Limited Functionality:** The VS Code Language Model API may not support all the features of other API providers (e.g., image input, streaming, detailed usage information). +- **No Direct Cost Control:** You are subject to the pricing and terms of the extension providing the model. Roo Code cannot directly track or limit costs. +- **GitHub Copilot Rate Limits:** When using the VS Code LM API with GitHub Copilot, be aware that GitHub may impose rate limits on Copilot usage. These limits are controlled by GitHub, not Roo Code. + +--- + +## Troubleshooting + +- **No Models Appear:** + - Ensure you have VS Code installed. + - Ensure you have a language model provider extension installed and enabled (e.g., GitHub Copilot, GitHub Copilot Chat). + - If using Copilot, make sure that you have sent a Copilot Chat message using the model you would like to use. +- **Unexpected Behavior:** If you encounter unexpected behavior, it's likely an issue with the underlying Language Model API or the provider extension. Consider reporting the issue to the provider extension's developers. diff --git a/apps/docs/docs/providers/xai.md b/apps/docs/docs/providers/xai.md new file mode 100644 index 00000000000..fff10940b3d --- /dev/null +++ b/apps/docs/docs/providers/xai.md @@ -0,0 +1,91 @@ +--- +description: Configure xAI's Grok models in Roo Code. Access Grok-4, Grok-3, Grok-2, and vision models with large context windows, reasoning capabilities, and prompt caching. +keywords: + - xAI + - Grok + - Roo Code + - AI models + - reasoning AI + - vision models + - large context + - Grok Code Fast + - Grok-4 + - Grok-3 + - Grok-2 + - prompt caching +sidebar_label: xAI (Grok) +--- + +# Using xAI (Grok) With Roo Code + +xAI is the company behind Grok, a large language model known for its conversational abilities and large context window. Grok models are designed to provide helpful, informative, and contextually relevant responses. + +**Website:** [https://x.ai/](https://x.ai/) + +--- + +## Getting an API Key + +1. **Sign Up/Sign In:** Go to the [xAI Console](https://console.x.ai/). Create an account or sign in. +2. **Navigate to API Keys:** Go to the API keys section in your dashboard. +3. **Create a Key:** Click to create a new API key. Give your key a descriptive name (e.g., "Roo Code"). +4. **Copy the Key:** **Important:** Copy the API key _immediately_. You will not be able to see it again. Store it securely. + +--- + +## Available Models + +Roo Code supports all Grok models available through xAI's API. + +For the complete, up-to-date model list and capabilities, see [xAI's documentation](https://docs.x.ai/docs). + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "xAI" from the "API Provider" dropdown. +3. **Enter API Key:** Paste your xAI API key into the "xAI API Key" field. +4. **Select Model:** Choose your desired Grok model from the "Model" dropdown. + +--- + +## Reasoning Capabilities + +Grok 3 Mini models feature specialized reasoning capabilities, allowing them to "think before responding" - particularly useful for complex problem-solving tasks. + +### Reasoning-Enabled Models + +Several Grok models have reasoning capabilities. However, only the Grok 3 Mini models support configurable reasoning effort control: + +- `grok-3-mini` - Supports reasoning effort control +- `grok-3-mini-fast` - Supports reasoning effort control + +Other models (`grok-code-fast-1`, `grok-4.1-fast`, `grok-4`, `grok-3`, `grok-3-fast`) are reasoning-capable but don't expose the `reasoning_effort` parameter. + +### Controlling Reasoning Effort + +When using reasoning-enabled models, you can control how hard the model thinks with the `reasoning_effort` parameter: + +- `low`: Minimal thinking time, using fewer tokens for quick responses +- `high`: Maximum thinking time, leveraging more tokens for complex problems + +Choose `low` for simple queries that should complete quickly, and `high` for harder problems where response latency is less important. + +### Key Features + +- **Step-by-Step Problem Solving**: The model thinks through problems methodically before delivering an answer +- **Math & Quantitative Strength**: Excels at numerical challenges and logic puzzles +- **Reasoning Trace Access**: The model's thinking process is available via the `reasoning_content` field in the response completion object + +--- + +## Prompt Caching + +Prompt caching is available for select Grok models including `grok-code-fast-1`, `grok-4`, `grok-3`, `grok-3-fast`, `grok-3-mini`, and `grok-3-mini-fast`. This feature can reduce costs and improve response times. + +--- + +## Pricing + +Pricing varies by model. Refer to the [xAI documentation](https://console.x.ai/) for current pricing information. diff --git a/apps/docs/docs/providers/zai.md b/apps/docs/docs/providers/zai.md new file mode 100644 index 00000000000..026fb5c2808 --- /dev/null +++ b/apps/docs/docs/providers/zai.md @@ -0,0 +1,82 @@ +--- +sidebar_label: Z AI +description: Configure Z AI models in Roo Code. Access GLM family models with region-aware routing for international and China mainland users. +keywords: + - z ai + - zai + - zhipu ai + - glm models + - roo code + - api provider + - china ai + - international ai + - openai compatible +--- + +# Using Z AI With Roo Code + +Z AI (Zhipu AI) provides advanced language models with the GLM family. The provider offers region-aware routing with separate endpoints for international users and China mainland users. + +**Website:** [https://z.ai/model-api](https://z.ai/model-api) (International) | [https://open.bigmodel.cn/](https://open.bigmodel.cn/) (China) + +--- + +## Getting an API Key + +### International Users + +1. **Sign Up/Sign In:** Go to [https://z.ai/model-api](https://z.ai/model-api). Create an account or sign in. +2. **Navigate to API Keys:** Access your account dashboard and find the API keys section. +3. **Create a Key:** Generate a new API key for your application. +4. **Copy the Key:** **Important:** Copy the API key immediately and store it securely. + +### China Mainland Users + +1. **Sign Up/Sign In:** Go to [https://open.bigmodel.cn/](https://open.bigmodel.cn/). Create an account or sign in. +2. **Navigate to API Keys:** Access your account dashboard and find the API keys section. +3. **Create a Key:** Generate a new API key for your application. +4. **Copy the Key:** **Important:** Copy the API key immediately and store it securely. + +--- + +## Available Models + +Roo Code automatically fetches all available models from Z AI's API based on your selected region. + +For the complete, up-to-date model list and specifications, see the official provider documentation: + +- **International:** [Z AI model documentation](https://z.ai/model-api) +- **China Mainland:** [BigModel documentation](https://open.bigmodel.cn/) + +--- + +## Configuration in Roo Code + +1. **Open Roo Code Settings:** Click the gear icon () in the Roo Code panel. +2. **Select Provider:** Choose "Z AI" from the "API Provider" dropdown. +3. **Select Region:** Choose your region: + - "International" (default) for global access + - "China" for mainland China access +4. **Enter API Key:** Paste your Z AI API key into the "Z AI API Key" field. +5. **Select Model:** Choose your desired model from the "Model" dropdown. Available models depend on your selected region. + +### Defaults & Behavior + +- **Automatic Base URL:** Selected region determines the API endpoint automatically: + - International → `https://api.z.ai/api/paas/v4` + - China → `https://open.bigmodel.cn/api/paas/v4` +- **Dynamic Models:** Changing the region automatically updates the model catalog and target endpoint. +- **No Manual Base URL Needed:** You typically do not need to configure a custom base URL. + +--- + +## Tips and Notes + +- **Region Selection:** The region setting determines both the API endpoint and available models: + - International: Uses `https://api.z.ai/api/paas/v4` + - China: Uses `https://open.bigmodel.cn/api/paas/v4` +- **Automatic Base URL:** Base URL is selected from your region; manual override is not required in typical setups. +- **OpenAI Compatibility:** Z AI uses an OpenAI-compatible API, providing streaming responses and usage reporting. +- **Model Selection:** Models are automatically filtered based on your selected region to ensure compatibility. +- **API Key Required:** A valid API key is required for all requests. Ensure you've obtained one from the appropriate regional platform. +- **Pricing:** Check the respective regional websites for current pricing information. diff --git a/apps/docs/docs/reporting-errors.md b/apps/docs/docs/reporting-errors.md new file mode 100644 index 00000000000..02235baac1b --- /dev/null +++ b/apps/docs/docs/reporting-errors.md @@ -0,0 +1,61 @@ +--- +description: Learn how to report errors in Roo Code by accessing error details, copying diagnostic information, and sharing it with the support team. +keywords: + - error reporting + - error details + - troubleshooting + - support + - bug report + - diagnostics +--- + +# Reporting Errors + +When Roo Code encounters an error, you can export detailed diagnostic information to share with the support team. This helps resolve issues faster by providing complete context about what went wrong. + +--- + +## Accessing Error Details + +When an error appears, click the "Details" link next to the error message. This opens a modal with diagnostic information and export options. + +Click Details link on error message to access diagnostic options + +_The Details link reveals two export options for sharing error information with support._ + +--- + +## Choosing the Right Export Option + +The Error Details modal offers two buttons, each serving different needs: + +1. **Copy basic error info** - Copies essential error details to your clipboard: + + - Timestamp and extension version + - Provider and model being used + - The specific error message + + **Use when:** You want to quickly share the error in Discord or a brief support email. + +2. **Get detailed error info** - Opens a full diagnostic report with: + + - Everything from basic info + - Complete task history showing all messages and actions + - Full configuration and environment details + - Provider-specific settings + + **Use when:** The support team needs to reproduce the issue or you're filing a GitHub issue. + +Error Details modal with Copy basic error info and Get detailed error info buttons + +--- + +## Sharing with Support + +After copying error information: + +- **Email**: Send to [support@roocode.com](mailto:support@roocode.com) +- **Discord**: Share in the [#support channel](https://discord.gg/roocode) +- **GitHub Issues**: File at [github.com/RooCodeInc/Roo-Code/issues](https://github.com/RooCodeInc/Roo-Code/issues) + +Include a brief description of what you were trying to do when the error occurred. The exported diagnostics handle the technical details. diff --git a/apps/docs/docs/roo-code-cloud/analytics.mdx b/apps/docs/docs/roo-code-cloud/analytics.mdx new file mode 100644 index 00000000000..f617e453153 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/analytics.mdx @@ -0,0 +1,70 @@ +--- +description: Monitor token usage, track costs, and analyze agent performance with Roo Code Cloud Analytics. +keywords: + - analytics + - token usage + - cost tracking + - agent performance + - roi + - team insights + - credits +redirect_from: + - /roo-code-cloud/dashboard + - /roo-code-cloud/dashboard/ + - /roo-code-cloud/dashboard#usage-analytics-page +--- + +# Usage Analytics + +Roo Code Cloud provides comprehensive analytics to help you understand how your team is using AI, optimize costs, and measure productivity. + +Analytics Dashboard + +## Access + +Go to the [Analytics](https://app.roocode.com/usage) tab in Roo Code Cloud. + +--- + +## Capabilities + +With the UI controls available, you can slice and dice all of these together: + + + + + + + + + + + + + + + + +
MetricsAggregationsFilters
+ - Number of tasks + - Number of tokens + - Inference cost (as reported by the provider) + - Cloud usage run time + + - User + - Cloud Agent + - Model + - Repository + + - Task source (Cloud Agent or workspace/IDE) + - Creator + - Repository + - PR + - Provider + - Timeframe +
+ +## What gets tracked? + +- For Cloud Agents, all tasks are tracked and considered for analytics +- For the extension, only tasks you run while logged in and with [Task Sync](/roo-code-cloud/task-sync) enabled get reported for analytics. You can turn off task sync so the contents of tasks aren't sent to Cloud, but usage numbers are always reported while you're logged into the extension. That allows you to keep the contents of certain tasks away from Cloud while still benefiting from usage analytics. diff --git a/apps/docs/docs/roo-code-cloud/cloud-agents.mdx b/apps/docs/docs/roo-code-cloud/cloud-agents.mdx new file mode 100644 index 00000000000..f279789e7bb --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/cloud-agents.mdx @@ -0,0 +1,137 @@ +--- +description: Comprehensive guide to Roo Code Cloud's autonomous agents - specialized AI workers that plan, code, review, and fix software independently. +keywords: + - Cloud Agents + - Autonomous Agents + - PR Reviewer + - PR Fixer + - Coder Agent + - Planner Agent + - Explainer Agent + - AI orchestration + - hosted execution + - credits +--- + +# Cloud Agents + +Cloud Agents are specialized, autonomous AI workers that run in the cloud. + +They upend the way most people think about software development: instead of a highly specialized activity that can only happen in a specialized IDE, it encapsulates the relevant aspects of each part of the process into agents that can run on their own (but will take your guidance if you choose). + +In other words: instead of doing all of your learning, investigating, coding, testing and shipping from your IDE, you can delegate work to focused agents which operate as a team. And it's your choice how much you lean into it. + +Cloud Agents are available in all Roo Code Cloud plans, including the free one. + +Sounds like wishful thinking? Read on and we'll show you how to use them. + +--- + +## How to work with Cloud Agents + +We at Roo have been developing Roo Code mostly with Cloud Agents for several months and learned that the following practices lead to the best results: + +- **When in doubt, start in the Cloud**: unless it's a very small change, it's usually easier to fire off several tasks to Cloud Agents (especially as you start or finish your day) and check in as they become ready. The Agents are excellent at getting things 50-80% done (often more), doing most of the heavy lifting. You can then iterate from there (be it with Cloud Agents or locally). +- **Embrace pull requests as the main unit of work**: to ensure Cloud Agents don't break things, they work on isolated branches and deliver work via PRs. They can be created, iterated upon, reviewed and fixed without you ever checking out code locally. +- **Let go of individual PRs**: be ready to throw stuff away once in a while, since LLMs aren't flawless. Quantity has a quality all of its own, so being generative pays off. +- **Invest in preview environments**: if your project allows for it (eg it's a web app), set up a preview environment (like [Vercel's Deployments](https://vercel.com/docs/git)) so you can check in on PRs without running them locally. +- **AI Coding isn't just for codes**: while only people with Engineer in the title may open IDEs in your company, everyone has questions and ideas for your product. Give access to cloud agents to everyone in our team (you don't pay per seat) and encourage people to get answers to their questions directly from them. We've seen customer support, product, design and marketing people understand code behavior and make small (and not-so-small) changes without having to open an IDE. +- **Develop collective learning in public**: if your team works on Slack, call agent in public channels, so everyone can see their answers and the result of their work. It organically gets people on the same page. + + +## The Cloud Agent Team + +The current line up available to your is below. Keep in mind we let you rename them as you please – we really believe in making them part of your team. + +### The Explainer +**Job:** Technical Educator + +Explains code, concepts, and technical documentation. It helps you understand complex parts of a codebase without needing to read every line. + +- **Best for:** Onboarding to a new codebase, understanding legacy code, debugging conceptual issues. + + +### The Planner +**Job:** Implementation Planning and Architecture + +The Planner agent maps out implementation plans and navigates complex technical decisions. It's designed to take a high-level idea or a Product Requirement Document (PRD) and break it down into a thorough, step-by-step implementation plan which can the be given to coding agent (or a human!). + +- **Best for:** New feature planning, system architecture design, complex refactoring strategies. + +### The Coder +**Job:** Full-scale across all languages + +The Coder agent writes code, creates pull requests, and implements features. It is the workhorse of the platform, capable of handling end-to-end coding tasks. + +- **Best for:** Building features, fixing bugs, refactoring components, writing tests. + +### The PR Reviewer +**Job:** Code reviews + +The PR Reviewer agent automatically provides comprehensive code reviews with actionable comments. It can monitor your repositories and review incoming Pull Requests. + +- **Best for:** Automated code quality checks, catching bugs early, enforcing coding standards. + +### The PR Fixer +**Job:** Focused fixes + +The PR Fixer agent is specialized in resolving issues identified in Pull Requests. It listens for feedback and autonomously implements fixes. + +- **Best for:** Resolving PR comments, fixing CI/CD failures, addressing review feedback. + +:::info More agents coming +While this cast of characters can get most jobs done, user feedback informs the development of new agents. We have a few [currently in development](#upcoming-agents) +::: +--- + +## How Cloud Agents Work + +### General workflow + +1. **Start:** Agents can be called: + - Manually via [the Web UI](https://app.roocode.com) (New Task button) + New task button + + - Automatically via [GitHub](/roo-code-cloud/github-integration) (e.g., new PR opened) + PR Review comments + + - Manually from [GitHub](/roo-code-cloud/github-integration) (`@Roomote` mention). + Github comment @mention + + - Manually manually via [Slack Integration](/roo-code-cloud/slack-integration) (`@Roomote` mention). + New task button + +2. **Run:** The agent spins up a secure, isolated cloud environment to perform its task. It clones your repository, analyzes the context, and executes the required actions. +3. **Complete:**: Once the task is done, the agent reports back with the results in the same place where you started. +4. **Control:** You can intervene at any time by going to the task. +5. **Look back:** all tasks are accessible in your Roo Code Cloud account. + +### Credits & Usage + +Cloud Agents consume **Cloud Credits**. Usage is measured based on the model used and the duration of the task. +- **Free Tier:** Includes access to free models for standard tasks. +- **Pro Tier:** Unlocks concurrent agent execution and priority queueing. + +There’s a [pricing page](https://roocode.com/pricing) if you want to learn more. + +### Settings + +The specific set of configuration options for each agent type varies (and are accessible in the ⚙️ icon in the agent page), but the main ones you'll find are: + +- **Name:** which is how the agent is referenced in the app. +- **Model:** the model powering inference for that agent. You can mix and match providers and models across your agent team. +- **Repositories:** the repos the agent has access to. Keep in mind we'll only lists the one you allowed when connecting to Github. If any are missing, Update your Github connection. +- **PR Creation Action:** for agents that make code changes, you can choose if they do it by creating a full PR, a draft PR or just pushing a branch. +- **Additional guidance:** any specific instructions for that agent, like things for the Reviewer to pay more attention to, coding practices for the Coder to follow, etc. It's a free text box, so you can type whatever you want, but keep in mind too many instructions may reduce the quality of results, so keep it concise and focused. + + +Most people will only have one agent of each type, but you may want to more tha one instance to have different configurations, especially model (main agent with good model, another agent with expensive model) or custom instructions (for specific repositories). + +## Upcoming Agents + +- **Improver:** a "meta agent" which analyzes agent feedback and PR reviews to maintain and improve [custom instructions](/features/custom-instructions#what-are-custom-instructions). +- **Security Auditor:** conducts security audits and identifies vulnerabilities regularly, across the codebase (and not just individual PRs) +- **Documentation Writer:** a tech writer that understands your code and writes actionable user-facing documentation. +- **Translator:** translates strings with accuracy and following your brand voice. + +[Write us](mailto:support@roocode.com) if you're interested in trying them out in Beta or if you have other suggestions. diff --git a/apps/docs/docs/roo-code-cloud/connect.mdx b/apps/docs/docs/roo-code-cloud/connect.mdx new file mode 100644 index 00000000000..b2ec8a3335f --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/connect.mdx @@ -0,0 +1,19 @@ +--- +title: Connect the Extension to Cloud +description: Connect your Roo Code extension to Roo Code Cloud for syncing, history, and collaboration. +keywords: + - Roo Code Cloud login + - authentication + - connect account + - sign in +--- + +import Codicon from '@site/src/components/Codicon'; + +Connect Roo Code to Roo Code Cloud to link your editor with the web app for task syncing, online history, and collaboration features. + +## Quickstart + +1. In Roo Code, click the cloud icon and select Connect. +2. Choose a sign-in method (GitHub/Google OAuth or Email) on app.roocode.com. +3. You’ll be returned to VS Code with your account connected. diff --git a/apps/docs/docs/roo-code-cloud/environments.mdx b/apps/docs/docs/roo-code-cloud/environments.mdx new file mode 100644 index 00000000000..8be76620257 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/environments.mdx @@ -0,0 +1,389 @@ +--- +description: Configure multi-port preview environments with automatic domain routing and environment variable injection for full-stack applications. +keywords: + - Preview Environments + - Multi-port + - Named Ports + - Environment Variables + - Full Stack + - Services + - Postgres + - Redis +--- + +# Preview Environments + +Preview environments let you run multiple services in a cloud container with automatic domain routing. Each port you configure gets a unique public URL, and environment variables are injected so your applications can communicate with each other. + +## Overview + +When you spawn an environment, Roo Code Cloud: + +1. Creates a cloud container with your configured ports exposed +2. Generates unique HTTPS domains for each port +3. Injects environment variables like `ROO_WEB_HOST` and `ROO_API_HOST` into your container +4. Clones your repositories, starts services, and runs your commands + +This allows you to run a complete stack—frontend, API, workers—in a single preview environment where all the pieces can talk to each other. + +## Configuration + +Environments are configured in YAML format. Here's the complete schema: + +```yaml +name: My Full Stack App +description: Frontend and API running together + +repositories: + - repository: myorg/frontend + commands: + - name: Install + run: npm install + - name: Start + run: npm run dev & + + - repository: myorg/backend + commands: + - name: Install + run: npm install + - name: Start + run: npm run dev & + +ports: + - name: WEB + port: 3000 + - name: API + port: 3001 + +services: + - postgres16 + - redis7 + +env: + NODE_ENV: development +``` + +## Named Ports + +The `ports` section defines which ports to expose and what to call them: + +```yaml +ports: + - name: WEB + port: 3000 + - name: API + port: 3001 + - name: ADMIN + port: 3002 +``` + +For each named port, an environment variable is injected into your container: + +| Port Config | Environment Variable | Example Value | +|-------------|---------------------|---------------| +| `name: WEB, port: 3000` | `ROO_WEB_HOST` | `https://abc123.vercel.run` | +| `name: API, port: 3001` | `ROO_API_HOST` | `https://def456.vercel.run` | +| `name: ADMIN, port: 3002` | `ROO_ADMIN_HOST` | `https://ghi789.vercel.run` | + +### Naming Rules + +Port names must: +- Start with a letter +- Contain only letters, numbers, and underscores +- Be 1-50 characters long + +The name is converted to uppercase for the environment variable (e.g., `web` becomes `ROO_WEB_HOST`). + +### Limits + +You can configure up to **4 named ports** per environment. + +## Using Environment Variables in Your Code + +The injected environment variables let your applications find each other without hardcoded URLs. + +### React/Vite Frontend + +```typescript +// vite.config.ts +export default defineConfig({ + define: { + 'import.meta.env.API_URL': JSON.stringify(process.env.ROO_API_HOST || 'http://localhost:3001') + } +}) + +// In your React code +const response = await fetch(`${import.meta.env.API_URL}/api/users`); +``` + +### Next.js Frontend + +```typescript +// next.config.js +module.exports = { + env: { + NEXT_PUBLIC_API_URL: process.env.ROO_API_HOST || 'http://localhost:3001' + } +} + +// In your code +const response = await fetch(`${process.env.NEXT_PUBLIC_API_URL}/api/users`); +``` + +### Node.js/Express/Hono Backend + +```typescript +// Configure CORS to allow requests from the frontend domain +app.use(cors({ + origin: process.env.ROO_WEB_HOST || 'http://localhost:3000' +})); + +// Or allow multiple frontends +app.use(cors({ + origin: [ + process.env.ROO_WEB_HOST, + process.env.ROO_ADMIN_HOST + ].filter(Boolean) +})); +``` + +### Inter-Service Communication + +If you have multiple backend services: + +```typescript +// In your API service, call a worker service +const workerUrl = process.env.ROO_WORKER_HOST || 'http://localhost:3002'; +await fetch(`${workerUrl}/jobs`, { method: 'POST', body: jobData }); +``` + +## Repositories + +List the repositories to clone into your environment: + +```yaml +repositories: + - repository: myorg/frontend + commands: + - name: Install dependencies + run: npm install + - name: Build + run: npm run build + - name: Start dev server + run: npm run dev & + + - repository: myorg/backend + commands: + - name: Install dependencies + run: npm install + - name: Run migrations + run: npm run db:migrate + - name: Start server + run: npm run start & +``` + +### Repository Format + +Use the `owner/repo` format (e.g., `myorg/my-app`). + +### Commands + +Each repository can have its own commands that run in order. Commands support: + +| Field | Description | Default | +|-------|-------------|---------| +| `name` | Display name for the command | Required | +| `run` | The shell command to execute | Required | +| `working_dir` | Directory to run the command in | Repository root | +| `env` | Command-specific environment variables | None | +| `timeout` | Maximum seconds to wait | 60 | +| `continue_on_error` | Keep going if command fails | false | + +### Background Processes + +To start a server that keeps running, end the command with `&`: + +```yaml +commands: + - name: Start server + run: npm run dev & +``` + +## Services + +Add managed database and cache services: + +```yaml +services: + - redis7 + - postgres16 +``` + +### Available Services + +| Service | Default Port | Connection Variables | +|---------|--------------|---------------------| +| `redis6` | 6379 | `REDIS_URL` | +| `redis7` | 6379 | `REDIS_URL` | +| `postgres15` | 5432 | `DATABASE_URL`, `POSTGRES_*` | +| `postgres16` | 5432 | `DATABASE_URL`, `POSTGRES_*` | +| `postgres17` | 5432 | `DATABASE_URL`, `POSTGRES_*` | +| `mysql8` | 3306 | `DATABASE_URL`, `MYSQL_*` | +| `mariadb10` | 3306 | `DATABASE_URL`, `MARIADB_*` | +| `clickhouse` | 9000 | `CLICKHOUSE_URL` | + +### Custom Ports + +If you need a service on a non-default port: + +```yaml +services: + - name: postgres16 + port: 5433 +``` + +## Environment Variables + +Define environment variables available to all commands: + +```yaml +env: + NODE_ENV: development + LOG_LEVEL: debug + FEATURE_FLAGS: "new-ui,beta-api" +``` + +These are merged with: +1. Service connection variables (e.g., `DATABASE_URL`) +2. Named port variables (e.g., `ROO_WEB_HOST`) +3. Command-specific variables (highest priority) + +## Complete Example + +Here's a full-stack application with a React frontend, Hono API, and background worker: + +```yaml +name: E-Commerce Platform +description: Full stack with frontend, API, and worker + +repositories: + - repository: acme/storefront + commands: + - name: Install + run: npm install + - name: Build + run: npm run build + env: + VITE_API_URL: ${ROO_API_HOST} + - name: Serve + run: npx serve -s dist -l 3000 & + + - repository: acme/api + commands: + - name: Install + run: npm install + - name: Migrate + run: npm run db:push + - name: Start + run: npm run start & + env: + ALLOWED_ORIGINS: ${ROO_WEB_HOST} + + - repository: acme/worker + commands: + - name: Install + run: npm install + - name: Start + run: npm run start & + +ports: + - name: WEB + port: 3000 + - name: API + port: 3001 + - name: WORKER + port: 3002 + +services: + - postgres16 + - redis7 + +env: + NODE_ENV: production + LOG_LEVEL: info +``` + +After the environment starts, you'll get unique URLs for each port. Visit the WEB URL to access your running application. + +## Tips + +### 1. Always Use Environment Variables for URLs + +Don't hardcode URLs between services: + +```typescript +// Bad - breaks in preview environments +const apiUrl = 'http://localhost:3001'; + +// Good - works everywhere +const apiUrl = process.env.ROO_API_HOST || 'http://localhost:3001'; +``` + +### 2. Configure CORS Dynamically + +```typescript +// Bad - only works locally +app.use(cors({ origin: 'http://localhost:3000' })); + +// Good - works in preview and locally +app.use(cors({ + origin: process.env.ROO_WEB_HOST || 'http://localhost:3000' +})); +``` + +### 3. Use Build-Time Variables for Static Sites + +For frameworks like Vite, CRA, or Next.js, the API URL often needs to be known at build time: + +```yaml +commands: + - name: Build + run: npm run build + env: + VITE_API_URL: ${ROO_API_HOST} +``` + +### 4. Handle Missing Variables Gracefully + +In development, you might not have all variables set: + +```typescript +const apiUrl = process.env.ROO_API_HOST; +if (!apiUrl) { + console.warn('ROO_API_HOST not set, using localhost'); +} +``` + +### 5. Use Consistent Naming + +Pick a naming convention and stick with it: + +```yaml +# Good - clear and consistent +ports: + - name: WEB + port: 3000 + - name: API + port: 3001 + - name: ADMIN + port: 3002 + +# Avoid - inconsistent naming +ports: + - name: frontend + port: 3000 + - name: BACKEND_API + port: 3001 + - name: Admin_Panel + port: 3002 +``` diff --git a/apps/docs/docs/roo-code-cloud/github-integration.mdx b/apps/docs/docs/roo-code-cloud/github-integration.mdx new file mode 100644 index 00000000000..ac7ba86e619 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/github-integration.mdx @@ -0,0 +1,62 @@ +--- +description: Integrate Roo Code Cloud agents with GitHub to automate pull request reviews and fixes. +keywords: + - GitHub Integration + - PR Reviewer + - PR Fixer + - automated code review + - automated bug fixing + - GitHub App +--- + +# GitHub Integration + +Roo Code Cloud integrates directly with GitHub to bring your autonomous Cloud Agent team into your pull request workflow. By installing the Roo Code GitHub App, you can enable agents to create branches, automatically review code and fix issues. + +--- + +## Integration Touchpoints + +Here are the ways [Cloud Agents](/roo-code-cloud/cloud-agents) integrate with GitHub: +- **Code creation:** the Coder agent delivers its work via git. When you ask it to create/change something, it will make changes in its container environment, commit them locally, push to the remote repository and create a PR describing it all. You can change its settings to create a draft (not regular) PR, or to just push to the remote branch, without creating a PR. +- **Code review:** the Reviewer agent delivers its work via Github PR comments. It will automatically review newly created PRs (including by the Coder!) in the repositories where it's enabled, by adding comments. It will also review subsequent commits which get pushed to that branch. You can control criteria for what PRs get reviewed in its settings. +- **Code fixes:** the Fixer agent delivers its work via pushes to Github branches (and comments). When you invoke it from a PR (see below) it will read through comments (made by humans or Cloud Agents) and implement proper fixes, taking any additional instructions you give it into consideration. It will do so by checking out the PR branch in its environment, committing changes and pushing them to the branch (and leaving a comment when its done so you can know). + + +## Setting Up + +You'll be prompted to connect to Github when first creating your Cloud Agent team. If you haven't done that yet, [do it now](https://app.roocode.com/cloud-agents/setup) and make sure to create at least a PR Reviewer and PR Fixer agent. + +This will take you through an OAuth process with Github, where you will: + +1. Choose the accounts to link + The first step + +2. Choose what repositories to make visible to the agents + The second step + + You can control individual agent access to repos [in agent settings](/roo-code-cloud/cloud-agents#settings). + +Now your Cloud Agents are able to work with Github. + +## Calling agents + +By default, any PR Reviewer agents you have will continuously monitor for new PRs according to the criteria you define in [their settings](/roo-code-cloud/cloud-agents#settings). So when a new PR is created, you'll see a comment like this: + +The Rooviewer agent responding + +You can also call the PR Fixer agent to address any feedback you may have in the PR by calling **@Roomote** like this: + +Mentioning @roomote to call the fixer + +You can also assign tasks to the Reviewer and Fixer from their own pages or the New Task button up top. + +The New Task page for them lets you paste a relevant URL: + +New task for the reviewer + +You can then follow the task from the web UI and see the results in the PR itself. + +:::info It's always @Roomote +Please note that you can't call specific agents by name. When you use **@Roomote**, you're mentioning the Roo Code GitHub App, which handles the integration. The app will then smartly call the appropriate agent for the context. +::: \ No newline at end of file diff --git a/apps/docs/docs/roo-code-cloud/login.mdx b/apps/docs/docs/roo-code-cloud/login.mdx new file mode 100644 index 00000000000..159b6324fee --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/login.mdx @@ -0,0 +1,53 @@ +--- +sidebar_label: Sign in from the Extension +description: Learn how to connect your Roo Code extension to Roo Code Cloud for task syncing, online history, and collaboration features. +keywords: + - Roo Code Cloud login + - authentication + - connect account + - sign up + - GitHub login +--- + +import Codicon from '@site/src/components/Codicon'; + +# Login/Signup + +Connect your Roo Code extension to Roo Code Cloud to sync your prompts, access online task history, and enable sharing and collaboration features. + +## Getting Started + +To connect your extension to Roo Code Cloud: + +1. Go to the **Cloud** tab in the top right corner of the Roo Code extension. + Tab location in the extension +2. Click on the big blue button (and click on "Open" if asked). +3. Sign up for or sign in to your account, using the auth method of your choice +4. Review and accept the terms of service and privacy policy +5. The next page will attempt to redirect you back to VS Code, accept it + Account creation confirmation popup +6. You'll be logged in + +## Troubleshooting + +If you're not taken to your IDE, from this screen: + +IDE selector for VS Code forks + +You can: +- Click on the logo for your IDE (eg VS Code, Trae, Cursor) and see if the popup appears, or +- Copy the URL from the box below and, in the extension, click on "Having Trouble?" and paste it in + +Your Roo Code VS Code extension is now connected to Roo Code Cloud and ready to sync your data and enable collaboration features. + +If you never even see the screen above, go back to the extension, click on "Start Over" and try again. It should work now. + +## Authentication Security + +Roo Code Cloud uses industry-standard OAuth with GitHub and Google, plus traditional email authentication to ensure secure access to your account: + +- **OAuth 2.0 Protocol** - Secure authentication through trusted providers (GitHub and Google) +- **No Password Storage** - When using OAuth, Roo Code never stores your GitHub or Google passwords +- **Encrypted Connections** - All authentication requests use HTTPS encryption +- **Token-Based Access** - Secure tokens manage your session without exposing credentials +- **Email Authentication** - Traditional email/password option with secure password hashing \ No newline at end of file diff --git a/apps/docs/docs/roo-code-cloud/overview.md b/apps/docs/docs/roo-code-cloud/overview.md new file mode 100644 index 00000000000..202626a0184 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/overview.md @@ -0,0 +1,58 @@ +--- +description: Roo Code Cloud transforms AI development with autonomous agents that work independently in the cloud, accessible from GitHub, Slack, or the web. +keywords: + - Roo Code Cloud + - Autonomous Agents + - Cloud Agents + - AI development platform + - GitHub integration + - Slack integration + - Free AI models +--- + +# Roo Code Cloud Overview + +Roo Code Cloud transforms AI development with autonomous [Cloud Agents](./cloud-agents) that work independently in the cloud. Instead of just assisting you in your editor, these agents can plan, code, review, and fix issues autonomously, accessible directly from **GitHub PRs**, **Slack messages**, or the **web browser**. + +It also augments the Roo Code VS Code extension capabilities by adding: + +- Access to the [Roo Code Router](/roo-code-router/overview) +- [Task Sync](./task-sync) to access your entire task history in one place +- [Task sharing](./task-sharing) to access specific tasks with friends or co-workers +- [Roomote Control](./roomote-control) to start/stop and control tasks in the Extension while away from your computer +- [Token usage analytics](./analytics) to understand where your tokens and dollars are going + +And, in the [Team plan](./team-plan), adds team-oriented features: + +- Centralized LLM inference billing without managing API keys (with the [Roo Code Router](/roo-code-router/overview)) +- Team-wide task history and token usage analytics +- Shared Cloud Agent team (with centralized billing) +- Centralized integration with Github and Slack (not one per user) +- Extension configuration enforcement (providers/models, MCP servers and more) + +--- + +## Getting Started + +To use it, you'll need an account. You can: + +- **[Directly sign up for a Roo Code account](https://app.roocode.com/sign-up)** and set up your agent team +- Or **[sign up for a Roo Code account from the VS Code extension](/roo-code-cloud/login)** to your account + +If you chose the Roo Code Router when signing up, you already have an account and only need to sign in. + +## Managing your account + +You can manage all of your account settings (including cancellation) from the [web UI](https://app.roocode.com) and clicking on the user avatar menu, in the top right: + +
+ The user menu for Personal and Team accounts. +
The user menu for Personal and Team accounts, respectively.
+
+ +- **Account switcher:** to switch between multiple accounts associated to the same email address (if you have them). +- **Billing and credits:** to add [credits](/credits/overview), configure auto top-up, change payment method, upgrade plans. +- **My Settings:** to change settings specific to you or to cancel/delete your personal Roo Code cloud account (under "Open Profile"). +- **Organization Settings:** to change [global settings](/roo-code-cloud/team-plan#capabilities) for your Team. +- **Docs:** to come here, so meta :) +- **Help:** to start an in-app chat with our team diff --git a/apps/docs/docs/roo-code-cloud/roomote-control.mdx b/apps/docs/docs/roo-code-cloud/roomote-control.mdx new file mode 100644 index 00000000000..a6a4d95159d --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/roomote-control.mdx @@ -0,0 +1,61 @@ +--- +description: Remotely control Roo Code tasks running in VS Code from your browser. +keywords: + - roomote control + - remote control + - manual override + - human in the loop + - agent handoff + - monitoring +--- + +# Roomote Control + +Roomote Control lets you remotely control tasks running in your local VS Code instance from the Roo Code Cloud web interface – on desktop or mobile – and far away from your computer. + +It creates a bidirectional connection between your local VS Code extension and Roo Code Cloud so you can: + +- Keep working on long-running tasks after you step away from your computer +- Start tasks remotely, including from your phone +- Answer questions and ensure Roo doesn't get stuck +- Receive push notifications about task progress and questions from Roo +- Get the most from the extension without having any code leave your computer + +Think of it as a halfway point between autonomous [Cloud Agents](/roo-code-cloud/cloud-agents) and overseeing Roo in the extension. + +:::note Things to keep in mind +- Task Sync must be enabled +- Roomote Control must be enabled +- Your IDE must be running and connected to the internet +- Only one task can be active per workspace at a time – but you can have as many workspaces open as you want (or your computer can handle) +::: + +--- + +## Getting Started + +1. Connect your Roo Code extension to Roo Code Cloud. Follow [Connect the Extension to Cloud](/roo-code-cloud/connect#quickstart) or [Login/Signup](/roo-code-cloud/login). +2. Ensure Task Sync and Roomote Control are enabled: + - In the IDE: Click the cloud icon and toggle Task Sync first, then Roomote Control in the Cloud panel. + How your settings should look + - In the web app: Go to Settings › User and toggle Task Sync and Roomote Control. You may also see inline "Enable …" banners on Home/Task pages. + +3. Your workspace(s) should appear in the sidebar in the web app. + +### Creating a task + +1. Click New Task on a connected workspace card in the web app. +2. Enter a task description and click Start. +3. Watch progress and interact in real time. + +If "New Task" is disabled, enable in Settings › User › Roomote Control. + +## Notifications + +You can enable Push Notifications in the web app under Settings to be notified of progress on your tasks. + +## Permissions & Security + +- All communications are encrypted +- Only the user who created a task can interact with it from the browser (send messages, approve/deny) +- Team admins can disable Roomote Control for the account diff --git a/apps/docs/docs/roo-code-cloud/slack-integration.mdx b/apps/docs/docs/roo-code-cloud/slack-integration.mdx new file mode 100644 index 00000000000..735250a5024 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/slack-integration.mdx @@ -0,0 +1,90 @@ +--- +description: Use Roo Code Cloud agents directly from Slack to plan features, explain code, and trigger tasks. +keywords: + - Slack Integration + - ChatOps + - "@Roomote" + - Slack bot + - AI planning + - collaborative coding + - team collaboration + - remote tasks +--- + +# Slack Integration + +The Roo Code Slack integration brings your Cloud Agent team directly into your chat workspace. You can summon agents to explain code, plan new features, or execute coding tasks without leaving Slack, and they get along quite well with humans. + +Summoning agents from Slack in public channels is an effective way to bring the entire team into the process, to learn by example how to best leverage Cloud Agents (and the information/outcomes they produce). + +--- + +## Setting Up + +You'll be prompted to connect to Slack when first signing up for your account. But if you dismiss it, you can do it later: + +1. Go to your personal or org settings (if available) in the top right user menu +2. Click on "Connect" and follow the process +3. Add the `@Roomote` bot to the channels where you want it to be available + +**Note:** The Slack integration will not watch your conversations unless you specifically mention `@Roomote`. + +## Calling Agents + +1. To interact with Roo Code agents, simply mention `@Roomote` in any channel where the bot is present to start a thread, giving it instructions. It will react with 👀 to acknowledge it. + +2. Then, the app will ask you what Agent to use with what repository. You can choose "all repositories", but the more focused you can make the agent, the higher the chances of good results. + The Slack app checking what agent and repo to use + + Keep in mind not all agents appear in this list, as some don't make sense (eg the PR Reviewer) + +3. If the agent has any questions, it will get back to you with options, like this: + The Slack app asking for an answer + +4. Once done, the agent will never directly modify your code. If it was a coding task, it will push a branch or create a PR, depending on how it's configured, but it will never touch `main`/`master` or production. + +You can always send messages directly though by mentioning **@Roomote** again in the thread. It will keep context. + +:::info It's always @Roomote +Please note that you can't call specific agents by name. When you use **@Roomote**, you're mentioning the Roo Code Slack App, which handles the integration. That's why the app will ask you to pick an agent. +::: + +## Examples + +### Planning Projects + +Start a thread to discuss and plan a new feature with your team and the AI. + +> **@Roomote** We need to add a 'Forgot Password' flow to the user service. Can you plan this out? + +Pick a Planner agent wait for the plan. You can then run it by your team or give it to the Coder agent to build. + +### Explaining Code + +Ask questions about your codebase to get immediate answers. Great for understanding bugs or confusing behavior. + +> **@Roomote** why may users be getting double confirmation emails after completing their purchase? + +But wait, agents are actually smart enough to understand the context of threads. So you can, after some back-and-forth with a colleague, simply ask: + +> **@Roomote** why is this happening? + +And it will know what to do. + +### Writing Code + +Trigger coding tasks directly from chat. + +> **@Roomote** create a new API endpoint for user profile updates, including support for profile image upload + +> **@Roomote** fix this bug: `` + +> **@Roomote** build this: `[paste an implementation plan from the planner]` + +The possibilities are enormous. + +## Limitations + +- **Mention required in channels** — Generic channel messages without @Roomote are ignored +- **Images only** — Non-image files aren't processed; images must be under 10MB +- **Active subscription** — Requires funded Cloud credits diff --git a/apps/docs/docs/roo-code-cloud/task-sharing.mdx b/apps/docs/docs/roo-code-cloud/task-sharing.mdx new file mode 100644 index 00000000000..e804b233033 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/task-sharing.mdx @@ -0,0 +1,76 @@ +--- +description: Learn how to share your Roo Code tasks and collaborate with others using shareable links. Share from the extension or web UI. +keywords: + - task sharing + - collaboration + - shareable links + - Roo Code Cloud + - team collaboration +--- + +import Codicon from '@site/src/components/Codicon'; + +# Task Sharing + +This allows you to share Roo Code tasks (in the extension or from Cloud Agents) with secure links with whoever you choose. This allows you to help others understand how you're using Roo, debug a problem or help your teammates learn. + +You can choose whether to share with your organization (Team plan only) or publicly (anyone with the link). + +:::note Organization Policy +If your organization disables task sharing, the Share button is disabled and shows a tooltip indicating sharing is disabled. On the web dashboard, the Share action may also be unavailable if you don’t have permission to share that task. +::: + +--- + +## Sharing from the Roo Code Extension + +1. Open the Share menu + - In an active task, click the Share icon in the task header (right side). + Share icon in the active task header + +2. Choose who can access + - Pick one: + - **Share with Organization** — Only members of your organization can access + - **Share Publicly** — Anyone with the link can access + - Default: If not specified, the extension uses Organization visibility by default. + Share options showing Organization and Public visibility choices + +3. Create the link + - Roo generates the link and copies it to your clipboard. A brief success message appears in the UI. + Share link created and copied confirmation + +## Sharing from Roo Code Cloud + +1. Go to [Roo Code Cloud](https://app.roocode.com) and open the task you want to share. + +2. Click the **Share** button to open sharing options. + +3. Create and manage links + - Choose Organization or Public, then click **Create Share Link**. + - Expiration: + - Personal accounts: links expire after 30 days. + - Organizations: expiry is set by your org (1–365 days; default 30). + - From this screen you can: + - Copy link + - Create another link + - See recent links (last 3 shown, with a "+N more" summary) + - Delete links (org admins can delete any org link; members can delete links they created) + +## Privacy & Security + +#### Controlled sharing +- Tasks are **private by default** — nothing is shared until you create a link. +- You choose Organization vs Public visibility per link. +- You can revoke access anytime by deleting the link. + +#### Expiring links +- Personal accounts: links expire after 30 days. +- Organizations: expiry is set by your org admin (1–365 days; default 30). + +#### Data control +- Delete share links anytime from the dashboard. +- View recent links in the dialog. + +## Caveats +- There's no link tracking at the moment. +- Personal account links always expire after 30 days. diff --git a/apps/docs/docs/roo-code-cloud/task-sync.mdx b/apps/docs/docs/roo-code-cloud/task-sync.mdx new file mode 100644 index 00000000000..6f79cfccada --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/task-sync.mdx @@ -0,0 +1,54 @@ +--- +description: Task Sync streams task activity from your local VS Code to Roo Code Cloud so you can monitor progress from any device — free for all users. +keywords: + - task sync + - monitoring + - realtime updates + - task history + - mobile monitoring + - roo code cloud +--- + +# Task Sync/Monitoring + +Task Sync streams task activity from your local VS Code to Roo Code Cloud so you can monitor progress from any device and access tasks later. This feature is free for all users. + +It creates a live, one-way stream of your task messages and status from your local VS Code to Roo Code Cloud so you can: +- Monitor long-running tasks from your phone while away from your desk +- See near real-time updates (polled every few seconds): messages, mode changes, and status +- Check when a task completes without sitting in front of your IDE +- Review your cloud task history anytime + +Roo Code Cloud home showing connected workspaces and tasks + +:::info IDE Cloud +Keep in mind Task Sync sends tasks from your IDE to Roo Code Cloud, but not vice-versa. For example, it doesn't sync tasks across devices at the moment. +::: + +--- + +## Getting Started + +1. [Connect your IDE](/roo-code-cloud/connect) (or see [Login/Signup](/roo-code-cloud/login)) +2. Open or start a task in your local Roo Code extension +3. Visit the homescreen at https://app.roocode.com to monitor in near real time + +- Personal accounts: Task Sync is enabled by default and can be toggled in Settings. +- Organization accounts: Task Sync is managed by your org admins and is off by default for members unless enabled at the org level. + +## Upgrading to Remote Control + +If you also want to continue tasks remotely (approve actions, respond to prompts, start/stop tasks), enable [Roomote Control](/roo-code-cloud/roomote-control). + +## Limitations + +- One-way monitoring only; no cloud commands are sent to your IDE +- For live updates, your IDE must be open and connected +- Internet connection required for live updates + +You can review cloud task history anytime, even when your IDE is closed. + +## Privacy & Security + +- Your data is never used for training or advertising purposes +- The Roo Code team doesn't have access to the contents of your tasks, unless explicitly authorized by you to debug any issues diff --git a/apps/docs/docs/roo-code-cloud/team-plan.mdx b/apps/docs/docs/roo-code-cloud/team-plan.mdx new file mode 100644 index 00000000000..d239f131613 --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/team-plan.mdx @@ -0,0 +1,127 @@ +--- +description: Understand the functionality available in the Roo Code Cloud Team plan. +keywords: + - team + - corporate + - enterprise + - shared + - members + - invite +--- + +# Team Plan + +The team plan is designed for teams to work together using the Roo Code suite, be it the Extension, Cloud or a combination of both. + +It allows for: +- Centralized LLM inference billing without managing API keys (with [Roo Code Router](/roo-code-router/overview)) +- Team-wide task history and token usage analytics +- Shared Cloud Agent team (with centralized billing) +- Centralized integration with Github and Slack (not one per user) +- Extension configuration enforcement (providers/models, MCP servers and more) + +--- + +## Access + +You can access Team functionality by starting a free 14-day trial. + +If you already have a Roo Code Cloud account, you can [upgrade here](https://app.roocode.com/checkout/team). If you don't, sign up from our [pricing page](https://roocode.com/pricing). + + +## Capabilities + +Most of the team functionality can be accessed from your [Organization Settings](https://app.roocode.com/) page (from your user avatar menu) + +How to access your organization settings + +From there, you'll be able to access all of the available settings: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SettingPurpose
**Team Members** + Invite, remove and manage permissions for team members (Admin or regular member) +
**Organization profile details** + Logo, name, etc +
**Integrations** + [Github](./github-integration) and [Slack](./slack-integration), for now +
**Cloud Model Providers** + For use with [Cloud Agents](./cloud-agents) +
**Extension Task Sync** + Whether to require task syncing, and visibility controls for who can see each others' tasks +
**Task Sharing** + Whether per-task sharing is enabled, to whom and link expiration time +
**Environment Variables** + Optional values to make available to Cloud Agents during runs, such as connection strings, package manager server URLs, keys, secrets, etc. + Encrypted in our secure secret store. +
**Marketplace MCPs** + Allow/deny-list MCPs from the Roo Code marketplace to make available for team members. +
**Custom MCPs** + Custom, vetted MCP servers to make available to all team members. +
**Extension Providers** + Allow/deny-list inference Providers to be made available to team members. + + Centralized API key management isn't currently supported, but let us know if you need it. +
**Organization Connection Policy** + Mechanism to require Roo Code VS Code Extension users to be logged in, so policies can be enforced. + + Works via a file to be distributed via our MDM tool. +
+ +Additional Team plan functionality is available in: +- [Usage Analytics](./analytics) (showing team-wide activity and per-user filters) +- Task lists (in the Home and Agent pages, showing team-wide tasks) + + +We're constantly expanding and tweaking team-oriented functionality, so if you need something else, don't hesitate to get in touch via [support@roocode.com](mailto:support@roocode.com). diff --git a/apps/docs/docs/roo-code-cloud/what-is-roo-code-cloud.md b/apps/docs/docs/roo-code-cloud/what-is-roo-code-cloud.md new file mode 100644 index 00000000000..9bddc72042f --- /dev/null +++ b/apps/docs/docs/roo-code-cloud/what-is-roo-code-cloud.md @@ -0,0 +1,41 @@ +--- +description: Roo Code Cloud extends your VS Code extension with cloud task syncing and sharing, remote IDE control (Roomote), usage analytics, and optional Cloud Agents—using your own model API keys. +keywords: + - Roo Code Cloud + - Roomote Control + - Remote Control + - Cloud Agents + - cloud features + - collaboration + - task history + - usage analytics + - BYO keys +--- + +# What is Roo Code Cloud? + +Roo Code Cloud is the web platform companion to the Roo Code VS Code extension. It extends the extension's functionality (task syncing and sharing, usage analytics, remote control (Roomote Control)) and allows you to run tasks in the cloud, completely independent from the extension, via Cloud Agents. + +Some of the functionality is free, some of it is paid. All of it follows our philosophy of being model-agnostic and letting you bring your provider key to stay in control of inference models and costs. + +You can see the [pricing for different plans here](https://roocode.com/pricing). + +## Main Features + +| Feature | Description | Availability | +| :-------------------------------------------------------- | :------------------------------------------------------------------- | :----------- | +| [Connect the Extension to Cloud](/roo-code-cloud/connect) | Connect via GitHub, Google, or email for cloud sync | Free | +| [Analytics](/roo-code-cloud/analytics) | Track model tokens, tasks, estimated cost, and Cloud Agent credits | Free | +| [Task Sync](/roo-code-cloud/task-sync) | Real-time task updates and cloud task history across devices | Free | +| [Task Sharing](/roo-code-cloud/task-sharing) | Share tasks via secure, expiring links | Free | +| [Roomote Control](/roo-code-cloud/roomote-control) | Browser-based task control while your IDE runs them | Paid | +| [Cloud Agents](/roo-code-cloud/cloud-agents) | Run Roo in the cloud with credit-based runtime and BYO provider keys | Paid | +| Billing & Plans | Manage subscriptions, trials, and credit purchasing | Paid | + +## Getting Started + +1. [Connect your account](/roo-code-cloud/connect) to link Roo Code with the cloud. +2. Open [app.roocode.com](https://app.roocode.com/) and confirm your tasks appear. +3. Turn on [Task Sync](/roo-code-cloud/task-sync) so activity syncs to the cloud. +4. [Share a task](/roo-code-cloud/task-sharing) when you're ready for feedback or handoff. +5. Optional: enable [Roomote Control](/roo-code-cloud/roomote-control) (Pro/Team) for remote control, or start a [Cloud Agent](/roo-code-cloud/cloud-agents). Manage plans in [pricing](https://roocode.com/pricing). diff --git a/apps/docs/docs/roo-code-router/overview.md b/apps/docs/docs/roo-code-router/overview.md new file mode 100644 index 00000000000..c74699c8f38 --- /dev/null +++ b/apps/docs/docs/roo-code-router/overview.md @@ -0,0 +1,66 @@ +--- +description: Roo Code Router is the easiest way to use Roo Code without additional accounts or managing API keys +keywords: + - Roo Code Cloud + - Roo Code Router + - LLM + - Models +--- + +# Roo Code Router Overview + +To make it as smooth as possible to use Roo Code, which depends on a provider service for LLM inference, we've built the Roo Code Router. + +You don't have to use our provider to use Roo Code (you can choose from dozens), but it's the easiest way to do it, since it only needs your Roo Code Cloud account and offers a selection of models we tested and approved to work with Roo Code: + +- State of the art models from the top frontier labs (including Anthropic, OpenAI, Google, xAI, etc) +- Tested open weight models from upcoming labs (Moonshot AI, MiniMax, GLM, etc) + +Since it's integrated into the Roo Code suite of products, you don't need to manage API keys to use it – just connect your account. With the [Team plan](/roo-code-cloud/team-plan), you can extend access to your entire team, ending the days of provider API keys flying around. + +## Model Availability + +Specific model availability changes over time. We strive to +keep the list relatively short, so you know you can trust +whatever you pick. + +You can always find the current list [on our website](https://roocode.com/provider) or the Roo Code Cloud app, under ["Models"](https://app.roocode.com/models). + +## Price and Privacy + +We never use your data for training and don't keep logs of the prompts themselves +(keep in mind that if you use task sync or Cloud Agents, we have to keep +copies of your tasks for obvious reasons). + +Sometimes stealth models are offered completely for free. These are +usually advanced models in late stages of testing, with code names and +limited availability. These models will most likely involve the use +of your prompts as training data, so be mindful of that when using. + +Paid models most likely don't use any of your data for training, but it's always +best to check the privacy policy of the vendors themselves. + +You can always find the current pricing [on our website](https://roocode.com/provider) or the Roo Code Cloud app, under ["Models"](https://app.roocode.com/models). + +:::info Looking for free inference? +When you sign up for a Roo Code Cloud account, you'll be given a number of "Free Minutes" to try the product out (you'll see a cute gift box icon). Those free minutes cover both the [Cloud Agent](/roo-code-cloud/cloud-agents) run time _and_ inference via Roo Code Router (which, as we established, cost credits). Those can't be used in the extension. + +If you want free inference in the extension, look for a free model when available (or use another provider which may offer it to you for free). +::: + +## How to use it + +### Roo Code Cloud Agents + +When choosing a model to power your agent, just pick the Roo Code Router. +There aren't really any more instructions needed :) + +### Roo Code VS Code Extension + +Ensure you're logged into your Cloud account in the extension, and you'll +be able to configure Roo as a provider in Provider Settings. + +### In 3rd-party tools + +Since it's designed to make it easier to use Roo, we don't make the provider +available in other products. There's no API key for you to copy and use elsewhere. diff --git a/apps/docs/docs/tips-and-tricks.md b/apps/docs/docs/tips-and-tricks.md new file mode 100644 index 00000000000..afde050da56 --- /dev/null +++ b/apps/docs/docs/tips-and-tricks.md @@ -0,0 +1,29 @@ +--- +description: Discover expert tips and tricks for using Roo Code effectively. Learn best practices, productivity hacks, and advanced techniques. +keywords: + - Roo Code tips + - productivity tips + - best practices + - AI coding tips + - advanced techniques +--- + +# Tips & Tricks + +A collection of quick tips to help you get the most out of Roo Code. + +- Drag Roo Code to the [Secondary Sidebar](https://code.visualstudio.com/api/ux-guidelines/sidebars#secondary-sidebar) so you can see the Explorer, Search, Source Control, etc. + Put Roo on the Right Column +- Once you have Roo Code in a separate sidebar from the file explorer, you can drag files from the explorer into the chat window (and even multiple at once). Just make sure to hold down the shift key after you start dragging the files. +- If you're not using [MCP](/features/mcp/overview), turn it off in the MCP Servers tab to significantly cut down the size of the system prompt. +- To keep your [custom modes](/features/custom-modes) on track, limit the types of files that they're allowed to edit. +- If you hit the dreaded `input length and max tokens exceed context limit` error, you can recover by deleting a message, rolling back to a previous checkpoint, or switching over to a model with a long context window like Gemini for a message. +- In general, be thoughtful about your `Max Tokens` setting for thinking models. Every token you allocate to that takes away from space available to store conversation history. Consider only using high `Max Tokens` / `Max Thinking Tokens` settings with modes like Architect and Debug, and keeping Code mode at 16k max tokens or less. +- If there's a real world job posting for something you want a custom mode to do, try asking Code mode to `Create a custom mode based on the job posting at @[url]` +- If you want to really accelerate, check out multiple copies of your repository and run Roo Code on all of them in parallel (using git to resolve any conflicts, same as with human devs). +- When using Debug mode, ask Roo to "start a new task in Debug mode with all of the necessary context needed to figure out X" so that the debugging process uses its own context window and doesn't pollute the main task +- Add your own tips by clicking "Edit this page" below! +- To manage large files and reduce context/resource usage, adjust the `File read auto-truncate threshold` setting. This setting controls the number of lines read from a file in one batch. Lower values can improve performance when working with very large files, but may require more read operations. You can find this setting in the Roo Code settings under 'Advanced Settings'. +- Set up a keyboard shortcut for the [`roo.acceptInput` command](/features/keyboard-shortcuts) to accept suggestions or submit text input without using the mouse. Perfect for keyboard-focused workflows and reducing hand strain. +- Use **Sticky Models** to assign specialized AI models to different modes (reasoning model for planning, non-reasoning model for coding). Roo automatically switches to each mode's last-used model without manual selection. +- Customize the [context reduction prompt](/features/intelligent-context-condensing#customizing-the-context-condensing-prompt) if you find that for your domain/use case it forgets particular things. You can instruct it to preserve specific types of information that are critical to your workflow. diff --git a/apps/docs/docs/tutorial-videos.json b/apps/docs/docs/tutorial-videos.json new file mode 100644 index 00000000000..9530456fa8f --- /dev/null +++ b/apps/docs/docs/tutorial-videos.json @@ -0,0 +1,64 @@ +{ + "videos": [ + { + "id": "Mcq3r1EPZ-4", + "title": "Installing Roo Code" + }, + { + "id": "ZBML8h5cCgo", + "title": "Configuring Profiles" + }, + { + "id": "VAbadUDhH5c", + "title": "Setting up MCP Servers" + }, + { + "id": "bWtIxGsl2cQ", + "title": "Auto Approve Feature" + }, + { + "id": "iiAv1eKOaxk", + "title": "Custom Modes" + }, + { + "id": "Ho30nyY332E", + "title": "Checkpoints" + }, + { + "id": "r1bpod1VWhg", + "title": "Codebase Indexing" + }, + { + "id": "9k8OAXlszak", + "title": "Context Condensing" + }, + { + "id": "WatooxMlW0U", + "title": "Roo Marketplace" + }, + { + "id": "6h5vB9PpoPk", + "title": "Todo Lists" + }, + { + "id": "IOpmeUGLpg0", + "title": "Slash Commands" + }, + { + "id": "cAjzTs0194c", + "title": "Browser Use" + }, + { + "id": "_Op3VfLPEu8", + "title": "Code Actions" + }, + { + "id": "rkWBHeG9A-4", + "title": "Terminal Integration" + }, + { + "id": "HmnNSasv7T8", + "title": "Context Management" + } + ] +} diff --git a/apps/docs/docs/tutorial-videos.mdx b/apps/docs/docs/tutorial-videos.mdx new file mode 100644 index 00000000000..bc47a84a57c --- /dev/null +++ b/apps/docs/docs/tutorial-videos.mdx @@ -0,0 +1,17 @@ +--- +description: Watch comprehensive video tutorials to learn how to use Roo Code effectively. From basics to advanced features, master AI-assisted development. +keywords: + - Roo Code tutorials + - video tutorials + - AI coding tutorials + - learn Roo Code + - video guides +--- + +import VideoGrid from '@site/src/components/VideoGrid'; + +# Tutorial Videos + +Learn how to build powerful applications and enhance your development workflow with these hands-on Roo Code tutorials. Big thanks to all of the creators! + + \ No newline at end of file diff --git a/apps/docs/docs/update-notes/index.md b/apps/docs/docs/update-notes/index.md new file mode 100644 index 00000000000..0b59ac25064 --- /dev/null +++ b/apps/docs/docs/update-notes/index.md @@ -0,0 +1,632 @@ +--- +description: Browse all Roo Code release notes and version updates. Find detailed changelogs, new features, bug fixes, and improvements for each version. +keywords: + - roo code updates + - release notes + - version history + - changelog + - new features + - bug fixes + - improvements + - roo code versions +--- + +# Extension Release Notes + +See what's new in every release here. + +We release often, sometimes multiple times per day, so make sure to always be on the latest to have access to the most recent bug fixes and improvements. + +If you want to live on the edge and try things out before it's released, we have a [Nightly channel](https://marketplace.visualstudio.com/items?itemName=RooVeterinaryInc.roo-code-nightly). + +--- + +### Version 3.45 + +- [3.45.0](/update-notes/v3.45.0) (2026-01-28) + +--- + +### Version 3.44 + +- [3.44](/update-notes/v3.44) (Combined) +- [3.44.2](/update-notes/v3.44.2) (2026-01-27) +- [3.44.1](/update-notes/v3.44.1) (2026-01-27) +- [3.44.0](/update-notes/v3.44.0) (2026-01-27) + +--- + +### Version 3.43 + +- [3.43.0](/update-notes/v3.43.0) (2026-01-23) + +--- + +### Version 3.42 + +- [3.42.0](/update-notes/v3.42.0) (2026-01-22) + +--- + +### Version 3.41 + +- [3.41.2](/update-notes/v3.41.2) (2026-01-16) +- [3.41.1](/update-notes/v3.41.1) (2026-01-16) +- [3.41.0](/update-notes/v3.41.0) (2026-01-15) + +--- + +### Version 3.40 + +- [3.40](/update-notes/v3.40) (Combined) +- [3.40.1](/update-notes/v3.40.1) (2026-01-14) +- [3.40.0](/update-notes/v3.40.0) (2026-01-13) + +--- + +### Version 3.39 + +- [3.39](/update-notes/v3.39) (Combined) +- [3.39.3](/update-notes/v3.39.3) (2026-01-10) +- [3.39.2](/update-notes/v3.39.2) (2026-01-09) +- [3.39.1](/update-notes/v3.39.1) (2026-01-08) +- [3.39.0](/update-notes/v3.39.0) (2026-01-08) + +--- + +### Version 3.38 + +- [3.38](/update-notes/v3.38) (Combined) +- [3.38.3](/update-notes/v3.38.3) (2026-01-03) +- [3.38.2](/update-notes/v3.38.2) (2025-12-31) +- [3.38.1](/update-notes/v3.38.1) (2025-12-29) +- [3.38.0](/update-notes/v3.38.0) (2025-12-27) + +--- + +### Version 3.37 + +- [3.37](/update-notes/v3.37) (2025-12-22) +- [3.37.0](/update-notes/v3.37.0) (2025-12-22) +- [3.37.1](/update-notes/v3.37.1) (2025-12-23) + +--- + +### Version 3.36 + +- [3.36.16](/update-notes/v3.36.16) (2025-12-19) +- [3.36.15](/update-notes/v3.36.15) (2025-12-19) +- [3.36.14](/update-notes/v3.36.14) (2025-12-18) +- [3.36.13](/update-notes/v3.36.13) (2025-12-18) +- [3.36.12](/update-notes/v3.36.12) (2025-12-18) +- [3.36.11](/update-notes/v3.36.11) (2025-12-17) +- [3.36.10](/update-notes/v3.36.10) (2025-12-17) +- [3.36.9](/update-notes/v3.36.9) (2025-12-16) +- [3.36.7](/update-notes/v3.36.7) (2025-12-15) +- [3.36.6](/update-notes/v3.36.6) (2025-12-12) +- [3.36.5](/update-notes/v3.36.5) (2025-12-11) +- [3.36.4](/update-notes/v3.36.4) (2025-12-10) +- [3.36.3](/update-notes/v3.36.3) (2025-12-10) +- [3.36.2](/update-notes/v3.36.2) (2025-12-05) +- [3.36.1](/update-notes/v3.36.1) (2025-12-04) +- [3.36.0](/update-notes/v3.36.0) (2025-12-04) + +--- + +### Version 3.35 + +- [3.35](/update-notes/v3.35) (Combined) +- [3.35.5](/update-notes/v3.35.5) (2025-12-03) +- [3.35.4](/update-notes/v3.35.4) (2025-12-02) +- [3.35.3](/update-notes/v3.35.3) (2025-12-02) +- [3.35.2](/update-notes/v3.35.2) (2025-12-01) +- [3.35.1](/update-notes/v3.35.1) (2025-12-01) +- [3.35.0](/update-notes/v3.35.0) (2025-12-01) + +--- + +### Version 3.34 + +- [3.34](/update-notes/v3.34) (Combined) +- [3.34.8](/update-notes/v3.34.8) (2025-11-27) +- [3.34.7](/update-notes/v3.34.7) (2025-11-27) +- [3.34.6](/update-notes/v3.34.6) (2025-11-26) +- [3.34.5](/update-notes/v3.34.5) (2025-11-25) +- [3.34.4](/update-notes/v3.34.4) (2025-11-25) +- [3.34.3](/update-notes/v3.34.3) (2025-11-25) +- [3.34.2](/update-notes/v3.34.2) (2025-11-24) +- [3.34.1](/update-notes/v3.34.1) (2025-11-23) +- [3.34.0](/update-notes/v3.34.0) (2025-11-21) + +### Version 3.33 + +- [3.33](/update-notes/v3.33) (Combined) +- [3.33.3](/update-notes/v3.33.3) (2025-11-20) +- [3.33.2](/update-notes/v3.33.2) (2025-11-20) +- [3.33.1](/update-notes/v3.33.1) (2025-11-18) +- [3.33.0](/update-notes/v3.33.0) (2025-11-18) + +--- + +### Version 3.32 + +- [3.32](/update-notes/v3.32) (Combined) +- [3.32.1](/update-notes/v3.32.1) (2025-11-15) +- [3.32.0](/update-notes/v3.32.0) (2025-11-14) + +--- + +### Version 3.31 + +- [3.31](/update-notes/v3.31) (Combined) +- [3.31.3](/update-notes/v3.31.3) (2025-11-13) +- [3.31.2](/update-notes/v3.31.2) (2025-11-13) +- [3.31.1](/update-notes/v3.31.1) (2025-11-12) +- [3.31.0](/update-notes/v3.31.0) (2025-11-08) + +--- + +### Version 3.30 + +- [3.30.3](/update-notes/v3.30.3) (2025-11-07) +- [3.30.2](/update-notes/v3.30.2) (2025-11-06) +- [3.30.1](/update-notes/v3.30.1) (2025-11-04) +- [3.30](/update-notes/v3.30) (2025-11-03) +- [3.30.0](/update-notes/v3.30.0) (2025-11-03) + +--- + +### Version 3.29 + +- [3.29](/update-notes/v3.29) (Combined) +- [3.29.5](/update-notes/v3.29.5) (2025-11-01) +- [3.29.4](/update-notes/v3.29.4) (2025-10-31) +- [3.29.3](/update-notes/v3.29.3) (2025-10-28) +- [3.29.2](/update-notes/v3.29.2) (2025-10-27) +- [3.29.1](/update-notes/v3.29.1) (2025-10-27) +- [3.29.0](/update-notes/v3.29.0) (2025-10-24) + +--- + +### Version 3.28 + +- [3.28](/update-notes/v3.28) (Combined) +- [3.28.18](/update-notes/v3.28.18) (2025-10-17) +- [3.28.17](/update-notes/v3.28.17) (2025-10-15) +- [3.28.16](/update-notes/v3.28.16) (2025-10-10) +- [3.28.15](/update-notes/v3.28.15) (2025-10-03) +- [3.28.14](/update-notes/v3.28.14) (2025-09-30) +- [3.28.13](/update-notes/v3.28.13) (2025-09-29) +- [3.28.12](/update-notes/v3.28.12) (2025-09-29) +- [3.28.11](/update-notes/v3.28.11) (2025-09-29) +- [3.28.10](/update-notes/v3.28.10) (2025-09-29) +- [3.28.9](/update-notes/v3.28.9) (2025-09-26) +- [3.28.8](/update-notes/v3.28.8) (2025-09-25) +- [3.28.7](/update-notes/v3.28.7) (2025-09-23) +- [3.28.6](/update-notes/v3.28.6) (2025-09-23) +- [3.28.5](/update-notes/v3.28.5) (2025-09-20) +- [3.28.4](/update-notes/v3.28.4) (2025-09-19) +- [3.28.3](/update-notes/v3.28.3) (2025-09-16) +- [3.28.2](/update-notes/v3.28.2) (2025-09-14) +- [3.28.1](/update-notes/v3.28.1) (2025-09-11) +- [3.28.0](/update-notes/v3.28.0) (2025-09-10) + +--- + +### Version 3.27 + +- [3.27.0](/update-notes/v3.27.0) (2025-09-05) + +--- + +### Version 3.26 + +- [3.26.7](/update-notes/v3.26.7) (2025-09-05) +- [3.26.6](/update-notes/v3.26.6) (2025-09-03) +- [3.26.5](/update-notes/v3.26.5) (2025-09-03) +- [3.26.4](/update-notes/v3.26.4) (2025-09-01) +- [3.26.3](/update-notes/v3.26.3) (2025-08-29) +- [3.26.2](/update-notes/v3.26.2) (2025-08-28) +- [3.26.1](/update-notes/v3.26.1) (2025-08-27) +- [3.26.0](/update-notes/v3.26.0) (2025-08-26) + +--- + +### Version 3.25 + +- [3.25](/update-notes/v3.25) (Combined) +- [3.25.23](/update-notes/v3.25.23) (2025-08-22) +- [3.25.22](/update-notes/v3.25.22) (2025-08-22) +- [3.25.21](/update-notes/v3.25.21) (2025-08-22) +- [3.25.20](/update-notes/v3.25.20) (2025-08-20) +- [3.25.19](/update-notes/v3.25.19) (2025-08-19) +- [3.25.18](/update-notes/v3.25.18) (2025-08-19) +- [3.25.17](/update-notes/v3.25.17) (2025-08-18) +- [3.25.16](/update-notes/v3.25.16) (2025-08-17) +- [3.25.15](/update-notes/v3.25.15) (2025-08-14) +- [3.25.14](/update-notes/v3.25.14) (2025-08-13) +- [3.25.13](/update-notes/v3.25.13) (2025-08-13) +- [3.25.12](/update-notes/v3.25.12) (2025-08-12) +- [3.25.11](/update-notes/v3.25.11) (2025-08-11) +- [3.25.10](/update-notes/v3.25.10) (2025-08-07) +- [3.25.9](/update-notes/v3.25.9) (2025-08-07) +- [3.25.8](/update-notes/v3.25.8) (2025-08-06) +- [3.25.7](/update-notes/v3.25.7) (2025-08-05) +- [3.25.6](/update-notes/v3.25.6) (2025-08-02) +- [3.25.5](/update-notes/v3.25.5) (2025-08-01) +- [3.25.4](/update-notes/v3.25.4) (2025-07-31) +- [3.25.3](/update-notes/v3.25.3) (2025-07-30) +- [3.25.2](/update-notes/v3.25.2) (2025-07-29) +- [3.25.1](/update-notes/v3.25.1) (2025-07-29) +- [3.25.0](/update-notes/v3.25.0) (2025-07-29) + +--- + +### Version 3.24 + +- [3.24.0](/update-notes/v3.24.0) (2025-07-26) + +--- + +### Version 3.23 + +- [3.23.19](/update-notes/v3.23.19) (2025-07-23) +- [3.23.18](/update-notes/v3.23.18) (2025-07-23) +- [3.23.17](/update-notes/v3.23.17) (2025-07-22) +- [3.23.16](/update-notes/v3.23.16) (2025-07-19) +- [3.23.15](/update-notes/v3.23.15) (2025-07-18) +- [3.23.14](/update-notes/v3.23.14) (2025-07-17) +- [3.23.13](/update-notes/v3.23.13) (2025-07-17) +- [3.23.12](/update-notes/v3.23.12) (2025-07-15) +- [3.23.11](/update-notes/v3.23.11) (2025-07-15) +- [3.23.10](/update-notes/v3.23.10) (2025-07-14) +- [3.23.9](/update-notes/v3.23.9) (2025-07-14) +- [3.23.8](/update-notes/v3.23.8) (2025-07-13) +- [3.23.7](/update-notes/v3.23.7) (2025-07-12) +- [3.23.6](/update-notes/v3.23.6) (2025-07-10) +- [3.23.5](/update-notes/v3.23.5) (2025-07-09) +- [3.23.4](/update-notes/v3.23.4) (2025-07-09) +- [3.23.3](/update-notes/v3.23.3) (2025-07-09) +- [3.23.2](/update-notes/v3.23.2) (2025-07-09) +- [3.23.1](/update-notes/v3.23.1) (2025-07-09) +- [3.23.0](/update-notes/v3.23.0) (2025-07-09) + +--- + +### Version 3.22 + +- [3.22.6](/update-notes/v3.22.6) (2025-07-02) +- [3.22.5](/update-notes/v3.22.5) (2025-06-29) +- [3.22.4](/update-notes/v3.22.4) (2025-06-27) +- [3.22.3](/update-notes/v3.22.3) (2025-06-27) +- [3.22.2](/update-notes/v3.22.2) (2025-06-27) +- [3.22.1](/update-notes/v3.22.1) (2025-06-27) +- [3.22](/update-notes/v3.22) (2025-06-25) +- [3.22.0](/update-notes/v3.22.0) (2025-06-25) + +--- + +### Version 3.21 + +- [3.21.5](/update-notes/v3.21.5) (2025-06-23) +- [3.21.4](/update-notes/v3.21.4) (2025-06-23) +- [3.21.3](/update-notes/v3.21.3) (2025-06-21) +- [3.21.2](/update-notes/v3.21.2) (2025-06-21) +- [3.21.1](/update-notes/v3.21.1) (2025-06-18) +- [3.21.0](/update-notes/v3.21.0) (2025-06-17) + +--- + +### Version 3.20 + +- [3.20.3](/update-notes/v3.20.3) (2025-06-14) +- [3.20.2](/update-notes/v3.20.2) (2025-06-13) +- [3.20.1](/update-notes/v3.20.1) (2025-06-12) +- [3.20.0](/update-notes/v3.20.0) (2025-06-12) +- [3.20](/update-notes/v3.20) (2025-06-12) + +--- + +### Version 3.19 + +- [3.19.7](/update-notes/v3.19.7) (2025-06-11) +- [3.19.6](/update-notes/v3.19.6) (2025-06-09) +- [3.19.5](/update-notes/v3.19.5) (2025-06-05) +- [3.19.4](/update-notes/v3.19.4) (2025-06-05) +- [3.19.3](/update-notes/v3.19.3) (2025-06-02) +- [3.19.2](/update-notes/v3.19.2) (2025-06-01) +- [3.19.1](/update-notes/v3.19.1) (2025-05-31) +- [3.19.0](/update-notes/v3.19.0) (2025-05-30) +- [3.19](/update-notes/v3.19) (2025-05-31) + +--- + +### Version 3.18 + +- [3.18.5](/update-notes/v3.18.5) (2025-05-27) +- [3.18.4](/update-notes/v3.18.4) (2025-05-25) +- [3.18.3](/update-notes/v3.18.3) (2025-05-24) +- [3.18.2](/update-notes/v3.18.2) (2025-05-23) +- [3.18.1](/update-notes/v3.18.1) (2025-05-22) +- [3.18](/update-notes/v3.18) (2025-05-21) + +--- + +### Version 3.17 + +- [3.17.2](/update-notes/v3.17.2) (2025-05-15) +- [3.17.1](/update-notes/v3.17.1) (2025-05-15) +- [3.17.0](/update-notes/v3.17.0) (2025-05-14) +- [3.17](/update-notes/v3.17) (2025-05-14) + +--- + +### Version 3.16 + +- [3.16.6](/update-notes/v3.16.6) (2025-05-12) +- [3.16.5](/update-notes/v3.16.5) (2025-05-10) +- [3.16.4](/update-notes/v3.16.4) (2025-05-09) +- [3.16.3](/update-notes/v3.16.3) (2025-05-08) +- [3.16.2](/update-notes/v3.16.2) (2025-05-07) +- [3.16.1](/update-notes/v3.16.1) (2025-05-07) +- [3.16](/update-notes/v3.16) (2025-05-12) + +--- + +### Version 3.15 + +- [3.15](/update-notes/v3.15) (2025-05-05) +- [3.15.5](/update-notes/v3.15.5) (2025-05-05) +- [3.15.4](/update-notes/v3.15.4) (2025-05-04) +- [3.15.3](/update-notes/v3.15.3) (2025-05-02) +- [3.15.2](/update-notes/v3.15.2) (2025-05-02) +- [3.15.1](/update-notes/v3.15.1) (2025-04-30) +- [3.15.0](/update-notes/v3.15.0) (2025-04-30) + +--- + +### Version 3.14 + +- [3.14](/update-notes/v3.14) (2025-04-24) +- [3.14.3](/update-notes/v3.14.3) (2025-04-25) +- [3.14.2](/update-notes/v3.14.2) (2025-04-24) +- [3.14.1](/update-notes/v3.14.1) (2025-04-24) +- [3.14.0](/update-notes/v3.14.0) (2025-04-23) + +--- + +### Version 3.13 + +- [3.13](/update-notes/v3.13) (2025-04-18) +- [3.13.2](/update-notes/v3.13.2) (2025-04-18) +- [3.13.1](/update-notes/v3.13.1) (2025-04-18) +- [3.13.0](/update-notes/v3.13.0) (2025-04-17) + +--- + +### Version 3.12 + +- [3.12](/update-notes/v3.12) (2025-04-17) +- [3.12.3](/update-notes/v3.12.3) (2025-04-17) +- [3.12.2](/update-notes/v3.12.2) (2025-04-16) +- [3.12.1](/update-notes/v3.12.1) (2025-04-16) +- [3.12.0](/update-notes/v3.12.0) (2025-04-15) + +--- + +### Version 3.11 + +- [3.11.17](/update-notes/v3.11.17) (2025-04-14) +- [3.11.16](/update-notes/v3.11.16) (2025-04-14) +- [3.11.15](/update-notes/v3.11.15) (2025-04-13) +- [3.11.14](/update-notes/v3.11.14) (2025-04-11) +- [3.11.13](/update-notes/v3.11.13) (2025-04-11) +- [3.11.12](/update-notes/v3.11.12) (2025-04-09) +- [3.11.11](/update-notes/v3.11.11) (2025-04-09) +- [3.11.10](/update-notes/v3.11.10) (2025-04-08) +- [3.11.9](/update-notes/v3.11.9) (2025-04-07) +- [3.11.8](/update-notes/v3.11.8) (2025-04-05) +- [3.11.7](/update-notes/v3.11.7) (2025-04-04) +- [3.11.6](/update-notes/v3.11.6) (2025-04-04) +- [3.11.5](/update-notes/v3.11.5) (2025-04-03) +- [3.11.4](/update-notes/v3.11.4) (2025-04-02) +- [3.11.3](/update-notes/v3.11.3) (2025-03-31) +- [3.11.2](/update-notes/v3.11.2) (2025-03-31) +- [3.11.1](/update-notes/v3.11.1) (2025-03-30) +- [3.11](/update-notes/v3.11) (2025-03-30) +- [3.11.0](/update-notes/v3.11.0) (2025-03-30) + +--- + +### Version 3.10 + +- [3.10](/update-notes/v3.10) (2025-03-25) +- [3.10.5](/update-notes/v3.10.5) (2025-03-25) +- [3.10.4](/update-notes/v3.10.4) (2025-03-25) +- [3.10.3](/update-notes/v3.10.3) (2025-03-23) +- [3.10.2](/update-notes/v3.10.2) (2025-03-21) +- [3.10.1](/update-notes/v3.10.1) (2025-03-20) +- [3.10.0](/update-notes/v3.10.0) (2025-03-20) + +--- + +### Version 3.9 + +- [3.9](/update-notes/v3.9) (2025-03-19) +- [3.9.2](/update-notes/v3.9.2) (2025-03-19) +- [3.9.1](/update-notes/v3.9.1) (2025-03-18) +- [3.9.0](/update-notes/v3.9.0) (2025-03-18) + +--- + +### Version 3.8 + +- [3.8](/update-notes/v3.8) (2025-03-13) +- [3.8.6](/update-notes/v3.8.6) (2025-03-13) +- [3.8.5](/update-notes/v3.8.5) (2025-03-12) +- [3.8.4](/update-notes/v3.8.4) (2025-03-09) +- [3.8.3](/update-notes/v3.8.3) (2025-03-09) +- [3.8.2](/update-notes/v3.8.2) (2025-03-08) +- [3.8.1](/update-notes/v3.8.1) (2025-03-07) +- [3.8.0](/update-notes/v3.8.0) (2025-03-07) + +--- + +### Version 3.7 + +- [3.7](/update-notes/v3.7) (2025-03-03) +- [3.7.12](/update-notes/v3.7.12) (2025-03-03) +- [3.7.11](/update-notes/v3.7.11) (2025-03-02) +- [3.7.10](/update-notes/v3.7.10) (2025-03-01) +- [3.7.9](/update-notes/v3.7.9) (2025-03-01) +- [3.7.8](/update-notes/v3.7.8) (2025-02-27) +- [3.7.7](/update-notes/v3.7.7) (2025-02-27) +- [3.7.6](/update-notes/v3.7.6) (2025-02-26) +- [3.7.5](/update-notes/v3.7.5) (2025-02-26) +- [3.7.4](/update-notes/v3.7.4) (2025-02-25) +- [3.7.3](/update-notes/v3.7.3) (2025-02-25) +- [3.7.2](/update-notes/v3.7.2) (2025-02-24) +- [3.7.1](/update-notes/v3.7.1) (2025-02-24) +- [3.7.0](/update-notes/v3.7.0) (2025-02-24) + +--- + +### Version 3.3 + +- [3.3](/update-notes/v3.3) (2025-02-27) +- [3.3.26](/update-notes/v3.3.26) (2025-02-27) +- [3.3.25](/update-notes/v3.3.25) (2025-02-21) +- [3.3.24](/update-notes/v3.3.24) (2025-02-20) +- [3.3.23](/update-notes/v3.3.23) (2025-02-20) +- [3.3.22](/update-notes/v3.3.22) (2025-02-20) +- [3.3.21](/update-notes/v3.3.21) (2025-02-17) +- [3.3.20](/update-notes/v3.3.20) (2025-02-14) +- [3.3.19](/update-notes/v3.3.19) (2025-02-12) +- [3.3.18](/update-notes/v3.3.18) (2025-02-11) +- [3.3.17](/update-notes/v3.3.17) (2025-02-09) +- [3.3.16](/update-notes/v3.3.16) (2025-02-09) +- [3.3.15](/update-notes/v3.3.15) (2025-02-08) +- [3.3.14](/update-notes/v3.3.14) +- [3.3.13](/update-notes/v3.3.13) +- [3.3.12](/update-notes/v3.3.12) +- [3.3.11](/update-notes/v3.3.11) +- [3.3.10](/update-notes/v3.3.10) +- [3.3.9](/update-notes/v3.3.9) +- [3.3.8](/update-notes/v3.3.8) +- [3.3.7](/update-notes/v3.3.7) +- [3.3.6](/update-notes/v3.3.6) +- [3.3.5](/update-notes/v3.3.5) +- [3.3.4](/update-notes/v3.3.4) +- [3.3.3](/update-notes/v3.3.3) +- [3.3.2](/update-notes/v3.3.2) +- [3.3.1](/update-notes/v3.3.1) +- [3.3.0](/update-notes/v3.3.0) + +--- + +### Version 3.2 + +- [3.2](/update-notes/v3.2) (2025-02-27) +- [3.2.8](/update-notes/v3.2.8) +- [3.2.7](/update-notes/v3.2.7) +- [3.2.6](/update-notes/v3.2.6) +- [3.2.5](/update-notes/v3.2.5) +- [3.2.4](/update-notes/v3.2.4) +- [3.2.3](/update-notes/v3.2.3) +- [3.2.0](/update-notes/v3.2.0) (Includes 3.2.1, 3.2.2) + +--- + +### Version 3.1 + +- [3.1](/update-notes/v3.1) (2025-02-27) +- [3.1.7](/update-notes/v3.1.7) +- [3.1.6](/update-notes/v3.1.6) +- [3.1.4](/update-notes/v3.1.4) (Includes 3.1.5 fix) +- [3.1.3](/update-notes/v3.1.3) +- [3.1.2](/update-notes/v3.1.2) +- [3.1.1](/update-notes/v3.1.1) +- [3.1.0](/update-notes/v3.1.0) + +--- + +### Version 3.0 + +- [3.0](/update-notes/v3.0) (2025-02-27) +- [3.0.3](/update-notes/v3.0.3) +- [3.0.2](/update-notes/v3.0.2) +- [3.0.1](/update-notes/v3.0.1) +- [3.0.0](/update-notes/v3.0.0) + +--- + +### Version 2.2 + +- [2.2](/update-notes/v2.2) (2025-02-27) +- [2.2.46](/update-notes/v2.2.46) +- [2.2.45](/update-notes/v2.2.45) +- [2.2.44](/update-notes/v2.2.44) +- [2.2.43](/update-notes/v2.2.43) +- [2.2.42](/update-notes/v2.2.42) +- [2.2.41](/update-notes/v2.2.41) +- [2.2.40](/update-notes/v2.2.40) +- [2.2.39](/update-notes/v2.2.39) +- [2.2.38](/update-notes/v2.2.38) +- [2.2.36](/update-notes/v2.2.36) (Includes 2.2.37) +- [2.2.35](/update-notes/v2.2.35) +- [2.2.34](/update-notes/v2.2.34) +- [2.2.33](/update-notes/v2.2.33) +- [2.2.32](/update-notes/v2.2.32) +- [2.2.31](/update-notes/v2.2.31) +- [2.2.30](/update-notes/v2.2.30) +- [2.2.29](/update-notes/v2.2.29) +- [2.2.28](/update-notes/v2.2.28) +- [2.2.27](/update-notes/v2.2.27) +- [2.2.26](/update-notes/v2.2.26) +- [2.2.25](/update-notes/v2.2.25) +- [2.2.24](/update-notes/v2.2.24) +- [2.2.23](/update-notes/v2.2.23) +- [2.2.22](/update-notes/v2.2.22) +- [2.2.21](/update-notes/v2.2.21) +- [2.2.20](/update-notes/v2.2.20) +- [2.2.19](/update-notes/v2.2.19) +- [2.2.18](/update-notes/v2.2.18) +- [2.2.17](/update-notes/v2.2.17) +- [2.2.16](/update-notes/v2.2.16) +- [2.2.14](/update-notes/v2.2.14) (Includes 2.2.15) +- [2.2.13](/update-notes/v2.2.13) +- [2.2.12](/update-notes/v2.2.12) +- [2.2.11](/update-notes/v2.2.11) +- [2.2.6](/update-notes/v2.2.6) (Includes 2.2.7-2.2.10) +- [2.2.5](/update-notes/v2.2.5) +- [2.2.4](/update-notes/v2.2.4) +- [2.2.3](/update-notes/v2.2.3) +- [2.2.2](/update-notes/v2.2.2) +- [2.2.1](/update-notes/v2.2.1) +- [2.2.0](/update-notes/v2.2.0) + +--- + +### Version 2.1 + +- [2.1](/update-notes/v2.1) (2025-02-27) +- [2.1.21](/update-notes/v2.1.21) +- [2.1.20](/update-notes/v2.1.20) +- [2.1.19](/update-notes/v2.1.19) +- [2.1.18](/update-notes/v2.1.18) +- [2.1.17](/update-notes/v2.1.17) +- [2.1.16](/update-notes/v2.1.16) +- [2.1.15](/update-notes/v2.1.15) +- [2.1.14](/update-notes/v2.1.14) +- [2.1.13](/update-notes/v2.1.13) +- [2.1.12](/update-notes/v2.1.12) +- [2.1.11](/update-notes/v2.1.11) +- [2.1.10](/update-notes/v2.1.10) +- [2.1.9](/update-notes/v2.1.9) +- [2.1.8](/update-notes/v2.1.8) +- [2.1.7](/update-notes/v2.1.7) +- [2.1.6](/update-notes/v2.1.6) +- [2.1.5](/update-notes/v2.1.5) +- [2.1.4](/update-notes/v2.1.4) +- [2.1.3](/update-notes/v2.1.3) +- [2.1.2](/update-notes/v2.1.2) diff --git a/apps/docs/docs/update-notes/v2.1.10.md b/apps/docs/docs/update-notes/v2.1.10.md new file mode 100644 index 00000000000..a3964896689 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.10.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.10 introduces optional sound effects for various actions, enhancing user experience with audio feedback. Thanks to HeavenOSK! +keywords: + - roo code 2.1.10 + - sound effects + - audio feedback + - user experience + - optional features + - accessibility +--- + +# Roo Code 2.1.10 Release Notes + +This release adds optional sound effects. + +--- + +## General and QOL Improvements + +- Added optional sound effects for various actions. (thanks HeavenOSK!) diff --git a/apps/docs/docs/update-notes/v2.1.11.md b/apps/docs/docs/update-notes/v2.1.11.md new file mode 100644 index 00000000000..f04ce7699bc --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.11.md @@ -0,0 +1,13 @@ +--- +description: This release adds support for OpenRouter context compression. +--- + +# Roo Code 2.1.11 Release Notes + +This release adds support for OpenRouter context compression. + +--- + +## Provider Updates + +- Added support for OpenRouter context compression. (thanks lloydchang!) diff --git a/apps/docs/docs/update-notes/v2.1.12.md b/apps/docs/docs/update-notes/v2.1.12.md new file mode 100644 index 00000000000..901955de0aa --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.12.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.12 introduces experimental diff-based file editing for more efficient code modifications. Thanks to JoziGila for the contribution! +keywords: + - roo code 2.1.12 + - diff editing + - experimental features + - file editing + - code modifications + - efficient editing +--- + +# Roo Code 2.1.12 Release Notes + +This release incorporates experimental support for editing through diffs. + +--- + +## Experimental Features + +- Added experimental support for editing files using diffs. (thanks JoziGila!) diff --git a/apps/docs/docs/update-notes/v2.1.13.md b/apps/docs/docs/update-notes/v2.1.13.md new file mode 100644 index 00000000000..f32c8b59bab --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.13.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.13 fixes an issue where sound effects were not respecting user settings, ensuring proper audio control and preferences. +keywords: + - roo code 2.1.13 + - sound effects fix + - settings bug + - audio control + - patch release + - user preferences +--- + +# Roo Code 2.1.13 Release Notes + +This patch release fixes an issue with sound effect settings. + +--- + +## Bug Fixes + +- Fixed an issue where sound effects were not respecting the corresponding setting. diff --git a/apps/docs/docs/update-notes/v2.1.14.md b/apps/docs/docs/update-notes/v2.1.14.md new file mode 100644 index 00000000000..249b3ef9232 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.14.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.1.14 fixes diff application bugs, adds unified diff prompts, and auto-rejects truncated outputs for more reliable diff editing. +keywords: + - roo code 2.1.14 + - diff editing fixes + - unified diff + - truncation protection + - bug fixes + - editing improvements +--- + +# Roo Code 2.1.14 Release Notes + +This release includes fixes and improvements for diff editing. + +--- + +## Improvements & Fixes + +- Fixed a bug where diffs were not being applied correctly. +- Attempted using Aider's unified diff prompt for potentially better results. +- Added logic to automatically reject `write_to_file` commands that result in truncated output when diff editing is enabled. diff --git a/apps/docs/docs/update-notes/v2.1.15.md b/apps/docs/docs/update-notes/v2.1.15.md new file mode 100644 index 00000000000..6331331a8e4 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.15.md @@ -0,0 +1,14 @@ +--- +description: This release adds support for an experimental Gemini model and clarifies diff editing status. +--- + +# Roo Code 2.1.15 Release Notes + +This release adds support for an experimental Gemini model and clarifies diff editing status. + +--- + +## Updates + +- Added support for `gemini-exp-1206`. (thanks dbasclpy!) +- Clarified that the diff editing feature is highly experimental. diff --git a/apps/docs/docs/update-notes/v2.1.16.md b/apps/docs/docs/update-notes/v2.1.16.md new file mode 100644 index 00000000000..477bb7011f2 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.16.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.16 enables copying prompts from task history view, making it easier to reuse and share previous commands and interactions. +keywords: + - roo code 2.1.16 + - copy prompts + - task history + - prompt reuse + - workflow improvement + - user interface +--- + +# Roo Code 2.1.16 Release Notes + +This release adds the ability to copy prompts from the history screen. + +--- + +## General and QOL Improvements + +- Added functionality to allow copying prompts from the task history view. diff --git a/apps/docs/docs/update-notes/v2.1.17.md b/apps/docs/docs/update-notes/v2.1.17.md new file mode 100644 index 00000000000..29638731346 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.17.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.17 switches experimental diff editing to use search/replace diffs for more accurate and reliable code modifications. +keywords: + - roo code 2.1.17 + - diff editing + - search replace + - experimental features + - editing strategy + - code modifications +--- + +# Roo Code 2.1.17 Release Notes + +This release updates the experimental diff editing strategy. + +--- + +## Experimental Features + +- Switched the experimental diff editing mode to use search/replace diffs. diff --git a/apps/docs/docs/update-notes/v2.1.18.md b/apps/docs/docs/update-notes/v2.1.18.md new file mode 100644 index 00000000000..add4540acce --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.18.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.18 fixes diff editing to correctly handle Windows line endings (CRLF), ensuring cross-platform compatibility. +keywords: + - roo code 2.1.18 + - windows line endings + - crlf fix + - diff editing + - cross platform + - bug fix +--- + +# Roo Code 2.1.18 Release Notes + +This patch release fixes a diff editing bug related to line endings. + +--- + +## Bug Fixes + +- Fixed a diff editing bug to correctly handle Windows line endings (`\r\n`). diff --git a/apps/docs/docs/update-notes/v2.1.19.md b/apps/docs/docs/update-notes/v2.1.19.md new file mode 100644 index 00000000000..a0fcaf59e5d --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.19.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.19 implements better error handling for experimental diff editing, providing clearer feedback and more robust operations. +keywords: + - roo code 2.1.19 + - error handling + - diff editing + - experimental features + - robustness + - error feedback +--- + +# Roo Code 2.1.19 Release Notes + +This release improves error handling for diff editing. + +--- + +## General and QOL Improvements + +- Implemented better error handling for the experimental diff editing feature. diff --git a/apps/docs/docs/update-notes/v2.1.2.md b/apps/docs/docs/update-notes/v2.1.2.md new file mode 100644 index 00000000000..ae0ba20df1c --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.2.md @@ -0,0 +1,14 @@ +--- +description: This release adds support for auto-approval and .clinerules. +--- + +# Roo Code 2.1.2 Release Notes + +This release adds support for auto-approval and `.clinerules`. + +--- + +## Feature Highlights + +- Added support for auto-approval of write operations and command execution via settings. +- Added support for `.clinerules` files for custom instructions. diff --git a/apps/docs/docs/update-notes/v2.1.20.md b/apps/docs/docs/update-notes/v2.1.20.md new file mode 100644 index 00000000000..868d03a179d --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.20.md @@ -0,0 +1,13 @@ +--- +description: This release adds support for Gemini 2.0. +--- + +# Roo Code 2.1.20 Release Notes + +This release adds support for Gemini 2.0. + +--- + +## Provider Updates + +- Added support for Gemini 2.0 models. diff --git a/apps/docs/docs/update-notes/v2.1.21.md b/apps/docs/docs/update-notes/v2.1.21.md new file mode 100644 index 00000000000..f6443320dca --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.21.md @@ -0,0 +1,14 @@ +--- +description: This release improves the chat input area. +--- + +# Roo Code 2.1.21 Release Notes + +This release improves the chat input area. + +--- + +## General and QOL Improvements + +- Increased the size of the chat text input area. +- Added the ability to drag images directly into the text area. diff --git a/apps/docs/docs/update-notes/v2.1.3.md b/apps/docs/docs/update-notes/v2.1.3.md new file mode 100644 index 00000000000..8534a1c0562 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.3.md @@ -0,0 +1,17 @@ +--- +description: This release adds an option for browser action auto-approval. +keywords: + - Roo Code v2.1.3 + - release notes + - browser action auto-approval +--- + +# Roo Code 2.1.3 Release Notes + +This release adds an option for browser action auto-approval. + +--- + +## General and QOL Improvements + +- Added the `alwaysAllowBrowser` setting to allow browser actions without user approval when set to true. diff --git a/apps/docs/docs/update-notes/v2.1.4.md b/apps/docs/docs/update-notes/v2.1.4.md new file mode 100644 index 00000000000..1ccecb701a5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.4.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.4 enables running alongside the original Cline extension. Install both extensions without conflicts for enhanced development workflow. +keywords: + - roo code 2.1.4 + - side by side extension + - cline compatibility + - vscode extensions + - parallel installation + - extension coexistence +--- + +# Roo Code 2.1.4 Release Notes + +This release enables side-by-side running with the original Cline extension. + +--- + +## General and QOL Improvements + +- Roo Code can now be installed and run side-by-side with the original Cline extension. diff --git a/apps/docs/docs/update-notes/v2.1.5.md b/apps/docs/docs/update-notes/v2.1.5.md new file mode 100644 index 00000000000..9501ce0e2fc --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.5.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.5 fixes a critical bug in the browser action approval flow, ensuring smoother automation and better user control over browser interactions. +keywords: + - roo code 2.1.5 + - browser action fix + - approval flow + - bug fix + - browser automation + - patch release +--- + +# Roo Code 2.1.5 Release Notes + +This patch release fixes a bug in browser action approval. + +--- + +## Bug Fixes + +- Fixed a bug related to the approval flow for browser actions. diff --git a/apps/docs/docs/update-notes/v2.1.6.md b/apps/docs/docs/update-notes/v2.1.6.md new file mode 100644 index 00000000000..03889fdb7d9 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.6.md @@ -0,0 +1,13 @@ +--- +description: This release expands editor compatibility. +--- + +# Roo Code 2.1.6 Release Notes + +This release expands editor compatibility. + +--- + +## General and QOL Improvements + +- Roo Code can now run in all VSCode-compatible editors (e.g., VSCodium, Cursor). diff --git a/apps/docs/docs/update-notes/v2.1.7.md b/apps/docs/docs/update-notes/v2.1.7.md new file mode 100644 index 00000000000..c66bf45a9a2 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.7.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.7 updates the extension icon and marketplace metadata for improved visibility and branding in the VS Code marketplace. +keywords: + - roo code 2.1.7 + - extension icon + - marketplace metadata + - visual update + - branding + - vscode marketplace +--- + +# Roo Code 2.1.7 Release Notes + +This release updates extension metadata. + +--- + +## Updates + +- Updated the extension icon and marketplace metadata. diff --git a/apps/docs/docs/update-notes/v2.1.8.md b/apps/docs/docs/update-notes/v2.1.8.md new file mode 100644 index 00000000000..b1f402fee70 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.8.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.8 introduces configurable command approval, allowing users to specify which commands execute without manual approval for faster workflows. +keywords: + - roo code 2.1.8 + - command approval + - auto approval + - configuration + - workflow automation + - command execution +--- + +# Roo Code 2.1.8 Release Notes + +This release adds configuration for command approval. + +--- + +## General and QOL Improvements + +- Added the ability to configure which commands are allowed to execute without requiring user approval. diff --git a/apps/docs/docs/update-notes/v2.1.9.md b/apps/docs/docs/update-notes/v2.1.9.md new file mode 100644 index 00000000000..847aff9abfd --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.9.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.1.9 adds clear instructions for using .clinerules files directly in settings, making custom rule configuration easier for developers. +keywords: + - roo code 2.1.9 + - clinerules + - custom rules + - settings instructions + - configuration guide + - custom instructions +--- + +# Roo Code 2.1.9 Release Notes + +This release adds instructions for `.clinerules` to the settings screen. + +--- + +## General and QOL Improvements + +- Added instructions for using `.clinerules` files directly on the settings screen. diff --git a/apps/docs/docs/update-notes/v2.1.md b/apps/docs/docs/update-notes/v2.1.md new file mode 100644 index 00000000000..af2b502a896 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.1.md @@ -0,0 +1,56 @@ +--- +description: Roo Code 2.1 introduces diff editing, OpenRouter compression, sound effects, VSCode compatibility, and side-by-side Cline support. +keywords: + - roo code 2.1 + - major release + - diff editing + - openrouter compression + - sound effects + - vscode compatibility + - feature summary +--- + +# Roo Code 2.1 Release Notes (2025-02-27) + +This release cycle, prior to the introduction of MCP and major version 2.2, focused on foundational improvements including experimental diff editing, OpenRouter compression, sound effects, and making Roo Cline (now Roo Code) work in all VSCode-compatible editors and side-by-side with the original Cline. + +--- + +## Key Features & Enhancements + +- **Diff Editing (Experimental Introduced v2.1.12):** + - Initial experimental support for editing through diffs. (thanks @JoziGila!) + - Later switched to search/replace diffs in experimental mode (v2.1.17). + - Fixes for diff application and Windows line endings (v2.1.14, v2.1.18). + - Clarified experimental status (v2.1.15). +- **OpenRouter Compression (v2.1.11):** Added support for OpenRouter compression. (thanks @lloydchang!) +- **Sound Effects (v2.1.10):** Incorporated sound effects. (thanks @HeavenOSK!) +- **Auto-Approval for Writes & Commands (v2.1.2):** Initial support for auto-approval of write operations and command execution. +- **Custom Instructions with `.clinerules` (v2.1.2 & v2.1.9):** Support for `.clinerules` custom instructions, with guidance added to settings. +- **Browser Action Auto-Approval (v2.1.3):** Allowed browser actions without approval when `alwaysAllowBrowser` is true. + +--- + +## Compatibility & Core Updates + +- **Runs in All VSCode-Compatible Editors (v2.1.6):** Roo Cline (now Roo Code) was updated to run in all VSCode-compatible editors. +- **Side-by-Side with Cline (v2.1.4):** Enabled Roo Cline (now Roo Code) to run side-by-side with the original Cline extension. +- **Updated Extension Icon and Metadata (v2.1.7).** + +--- + +## QOL Improvements + +- **Larger Text Area & Image Drag-and-Drop (v2.1.21):** Implemented a larger text area input with the ability to drag images into it. +- **Gemini 2.0 Added (v2.1.20).** +- **Copy Prompts from History (v2.1.16).** + +--- + +## Bug Fixes + +- **Sound Effects Settings (v2.1.13):** Fixed issue where sound effects were not respecting settings. +- **Browser Action Approval Fix (v2.1.5).** +- **Diff `write_to_file` Rejection (v2.1.14):** If diffs were enabled, `write_to_file` commands that would lead to truncated output were automatically rejected. +- **Diff Editing Bugfix for Windows Line Endings (v2.1.18).** +- **Improved Error Handling for Diff Editing (v2.1.19).** diff --git a/apps/docs/docs/update-notes/v2.2.0.md b/apps/docs/docs/update-notes/v2.2.0.md new file mode 100644 index 00000000000..9fe7c99730a --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.0.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 2.2.0 introduces MCP support, enabling custom external tools, services integration, and dynamic server creation for enhanced AI capabilities. +keywords: + - roo code 2.2.0 + - model context protocol + - mcp support + - external tools + - github integration + - web search + - server management +--- + +# Roo Code 2.2.0 Release Notes + +This release introduces support for the Model Context Protocol (MCP). + +--- + +## Feature Highlights + +- **Model Context Protocol (MCP) Support:** Added support for MCP, enabling Roo Code to use custom external tools and services (e.g., web search, GitHub tools). +- **MCP Server Management:** Added an MCP server management tab (accessible via the server icon) for configuring and managing connections. +- **Dynamic MCP Server Creation:** Added the ability for Roo Code to dynamically create new MCP servers based on user requests. diff --git a/apps/docs/docs/update-notes/v2.2.1.md b/apps/docs/docs/update-notes/v2.2.1.md new file mode 100644 index 00000000000..8b3b7e970ab --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.1.md @@ -0,0 +1,13 @@ +--- +description: This patch release fixes an indentation bug in diff editing. +--- + +# Roo Code 2.2.1 Release Notes + +This patch release fixes an indentation bug in diff editing. + +--- + +## Bug Fixes + +- Fixed an indentation bug related to the experimental diff editing feature. diff --git a/apps/docs/docs/update-notes/v2.2.11.md b/apps/docs/docs/update-notes/v2.2.11.md new file mode 100644 index 00000000000..b7e70f5f0b5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.11.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.11 adds a settings checkbox for verbose diff debugging output, helping developers troubleshoot diff editing issues. +keywords: + - roo code 2.2.11 + - diff debugging + - verbose output + - troubleshooting + - developer tools + - debugging options +--- + +# Roo Code 2.2.11 Release Notes + +This release adds a debugging option for diff editing. + +--- + +## General and QOL Improvements + +- Added a settings checkbox for verbose diff debugging output. diff --git a/apps/docs/docs/update-notes/v2.2.12.md b/apps/docs/docs/update-notes/v2.2.12.md new file mode 100644 index 00000000000..de6a8bb42b5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.12.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.12 improves support for diffs with only deletions or insertions, handling edge cases in diff editing more effectively. +keywords: + - roo code 2.2.12 + - diff types + - deletion diffs + - insertion diffs + - edge cases + - diff improvements +--- + +# Roo Code 2.2.12 Release Notes + +This release improves support for specific diff types. + +--- + +## General and QOL Improvements + +- Improved support for diffs involving only deletions or only insertions. diff --git a/apps/docs/docs/update-notes/v2.2.13.md b/apps/docs/docs/update-notes/v2.2.13.md new file mode 100644 index 00000000000..d8b0fc55cc5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.13.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.13 fixes issues with sound effect playback and diff edit application, improving overall stability and user experience. +keywords: + - roo code 2.2.13 + - sound effects fix + - diff application + - bug fixes + - stability improvements + - patch release +--- + +# Roo Code 2.2.13 Release Notes + +This patch release includes fixes for sound effects and diff application. + +--- + +## Bug Fixes + +- Fixed issues related to sound effect playback and applying diff edits. diff --git a/apps/docs/docs/update-notes/v2.2.14.md b/apps/docs/docs/update-notes/v2.2.14.md new file mode 100644 index 00000000000..e7364be92ff --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.14.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.14 and 2.2.15 make diff editing more robust against transient errors and fix related bugs for reliable code modifications. +keywords: + - roo code 2.2.14 + - roo code 2.2.15 + - diff editing robustness + - transient errors + - bug fixes + - reliability +--- + +# Roo Code 2.2.14 & 2.2.15 Release Notes + +These releases improve the robustness of diff editing. + +--- + +## Improvements & Fixes + +- Made diff editing more robust against transient errors and fixed related bugs. diff --git a/apps/docs/docs/update-notes/v2.2.16.md b/apps/docs/docs/update-notes/v2.2.16.md new file mode 100644 index 00000000000..3d284fbff98 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.16.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.16 adds support for Amazon Titan and Meta Llama models (3, 3.1, 3.2) via AWS Bedrock with unified API calls. +keywords: + - roo code 2.2.16 + - aws bedrock + - amazon titan + - meta llama + - model support + - ai models + - bedrock integration +--- + +# Roo Code 2.2.16 Release Notes + +This release adds support for additional Bedrock models. + +--- + +## Provider Updates + +- Added support for Amazon Titan and Meta Llama models (3, 3.1, 3.2) via AWS Bedrock, unifying Bedrock calls. (thanks Premshay!) diff --git a/apps/docs/docs/update-notes/v2.2.17.md b/apps/docs/docs/update-notes/v2.2.17.md new file mode 100644 index 00000000000..f6158973d55 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.17.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.17 improves regex detection for auto-executing chained commands, enabling smoother multi-step command workflows. +keywords: + - roo code 2.2.17 + - command chaining + - auto execution + - regex improvements + - workflow automation + - command detection +--- + +# Roo Code 2.2.17 Release Notes + +This release improves the auto-execution of chained commands. + +--- + +## General and QOL Improvements + +- Improved the regular expression used for detecting and auto-executing chained commands. diff --git a/apps/docs/docs/update-notes/v2.2.18.md b/apps/docs/docs/update-notes/v2.2.18.md new file mode 100644 index 00000000000..274f98993e6 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.18.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.18 release notes featuring targeted styling improvements for Gemini model chat messages, enhancing the visual experience. +keywords: + - roo code + - v2.2.18 + - release notes + - gemini + - chat styling + - bug fix + - visual improvements +--- + +# Roo Code 2.2.18 Release Notes + +This release includes a targeted styling fix for Gemini chats. + +--- + +## Fixes + +- Applied a more targeted styling fix for chat messages when using Gemini models. diff --git a/apps/docs/docs/update-notes/v2.2.19.md b/apps/docs/docs/update-notes/v2.2.19.md new file mode 100644 index 00000000000..c273824b89c --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.19.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.19 introduces an experimental larger browser viewport size (1280x800) for enhanced browser tool functionality. +keywords: + - roo code + - v2.2.19 + - release notes + - browser tool + - viewport size + - experimental features + - 1280x800 +--- + +# Roo Code 2.2.19 Release Notes + +This release adds an experimental option for the browser tool. + +--- + +## Experimental Features + +- Added an experimental option to use a larger browser viewport size (1280x800). diff --git a/apps/docs/docs/update-notes/v2.2.2.md b/apps/docs/docs/update-notes/v2.2.2.md new file mode 100644 index 00000000000..ef290a5eaf5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.2.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.2 adds checkboxes to auto-approve specific MCP tools, streamlining workflows and reducing manual approval interruptions. +keywords: + - roo code 2.2.2 + - mcp tools + - auto approval + - workflow automation + - tool management + - efficiency +--- + +# Roo Code 2.2.2 Release Notes + +This release adds auto-approval options for MCP tools. + +--- + +## General and QOL Improvements + +- Added checkboxes to auto-approve specific MCP tools. diff --git a/apps/docs/docs/update-notes/v2.2.20.md b/apps/docs/docs/update-notes/v2.2.20.md new file mode 100644 index 00000000000..6916ccb7fa5 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.20.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.20 adds configurable fuzzy diff matching threshold via settings, defaulting to 100% precision for accurate code edits. +keywords: + - roo code + - v2.2.20 + - release notes + - fuzzy diff + - diff matching + - configuration + - precision settings +--- + +# Roo Code 2.2.20 Release Notes + +This release makes fuzzy diff matching configurable. + +--- + +## General and QOL Improvements + +- Made the fuzzy diff matching threshold configurable via settings (defaulted to off/100% precision). diff --git a/apps/docs/docs/update-notes/v2.2.21.md b/apps/docs/docs/update-notes/v2.2.21.md new file mode 100644 index 00000000000..d82136cb4d0 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.21.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.21 improves detection of incomplete file writes by considering predicted file length for better reliability. +keywords: + - roo code + - v2.2.21 + - release notes + - file writes + - truncation detection + - reliability improvements +--- + +# Roo Code 2.2.21 Release Notes + +This release improves the detection of truncated file writes. + +--- + +## General and QOL Improvements + +- Improved detection of incomplete file writes by taking the predicted file length into account. diff --git a/apps/docs/docs/update-notes/v2.2.22.md b/apps/docs/docs/update-notes/v2.2.22.md new file mode 100644 index 00000000000..a57e33219e4 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.22.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.22 adds support for the experimental gemini-2.0-flash-thinking-exp-1219 model, expanding AI capabilities. +keywords: + - roo code + - v2.2.22 + - release notes + - gemini + - flash thinking + - experimental model + - AI provider +--- + +# Roo Code 2.2.22 Release Notes + +This release adds support for a new experimental Gemini model. + +--- + +## Provider Updates + +- Added the `gemini-2.0-flash-thinking-exp-1219` model. diff --git a/apps/docs/docs/update-notes/v2.2.23.md b/apps/docs/docs/update-notes/v2.2.23.md new file mode 100644 index 00000000000..2cda4e2b5cc --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.23.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.23 corrects context window size information for gemini-2.0-flash-thinking-exp-1219 model for accurate usage. +keywords: + - roo code + - v2.2.23 + - release notes + - gemini + - context window + - bug fix + - model configuration +--- + +# Roo Code 2.2.23 Release Notes + +This patch release fixes context window information for a specific Gemini model. + +--- + +## Fixes + +- Corrected the context window size information for the `gemini-2.0-flash-thinking-exp-1219` model. (thanks student20880!) diff --git a/apps/docs/docs/update-notes/v2.2.24.md b/apps/docs/docs/update-notes/v2.2.24.md new file mode 100644 index 00000000000..99ebe4d90ca --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.24.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.24 enables diff editing (Fast Edits) by default for new installations, improving code editing efficiency. +keywords: + - roo code + - v2.2.24 + - release notes + - fast edits + - diff editing + - default settings + - code efficiency +--- + +# Roo Code 2.2.24 Release Notes + +This release changes the default setting for diff editing. + +--- + +## Updates + +- Diff editing ("Fast Edits") is now enabled by default for new installations. diff --git a/apps/docs/docs/update-notes/v2.2.25.md b/apps/docs/docs/update-notes/v2.2.25.md new file mode 100644 index 00000000000..0f7deb8d839 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.25.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.25 introduces a preferred language dropdown in settings, enabling multilingual support for better accessibility. +keywords: + - roo code + - v2.2.25 + - release notes + - language settings + - multilingual + - internationalization + - accessibility +--- + +# Roo Code 2.2.25 Release Notes + +This release adds a preferred language setting. + +--- + +## Feature Highlights + +- Added a preferred language dropdown in the settings. diff --git a/apps/docs/docs/update-notes/v2.2.26.md b/apps/docs/docs/update-notes/v2.2.26.md new file mode 100644 index 00000000000..0efb8daccdb --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.26.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.26 refines preferred language setting logic for enhanced multilingual support and user experience. +keywords: + - roo code + - v2.2.26 + - release notes + - language handling + - improvements + - multilingual support +--- + +# Roo Code 2.2.26 Release Notes + +This release includes tweaks to preferred language handling. + +--- + +## General and QOL Improvements + +- Made adjustments to the preferred language setting logic. (thanks yongjer!) diff --git a/apps/docs/docs/update-notes/v2.2.27.md b/apps/docs/docs/update-notes/v2.2.27.md new file mode 100644 index 00000000000..525e5de5214 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.27.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.27 adds current time to system prompts and enhances browser screenshot quality for improved functionality. +keywords: + - roo code + - v2.2.27 + - release notes + - system prompt + - time context + - browser screenshots + - quality improvements +--- + +# Roo Code 2.2.27 Release Notes + +This release adds the current time to the system prompt and improves browser screenshot quality. + +--- + +## General and QOL Improvements + +- Added the current time to the system prompt context. +- Improved the quality of browser screenshots taken by the browser tool. (thanks libertyteeth!) diff --git a/apps/docs/docs/update-notes/v2.2.28.md b/apps/docs/docs/update-notes/v2.2.28.md new file mode 100644 index 00000000000..6be4b57a792 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.28.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.28 uses createFileSystemWatcher for more reliable @-mention file suggestions, improving context management. +keywords: + - roo code + - v2.2.28 + - release notes + - file suggestions + - "@-mentions" + - file system watcher + - reliability +--- + +# Roo Code 2.2.28 Release Notes + +This release improves the reliability of @-mention file suggestions. + +--- + +## General and QOL Improvements + +- Used `createFileSystemWatcher` for more reliable updates to the list of files available for @-mention suggestions. diff --git a/apps/docs/docs/update-notes/v2.2.29.md b/apps/docs/docs/update-notes/v2.2.29.md new file mode 100644 index 00000000000..a5e8671ec12 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.29.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.29 adds configurable delay after auto-approved file writes, allowing diagnostics and linters time to process. +keywords: + - roo code + - v2.2.29 + - release notes + - auto-write delay + - diagnostics + - linters + - configuration +--- + +# Roo Code 2.2.29 Release Notes + +This release adds a configurable delay for auto-writes. + +--- + +## General and QOL Improvements + +- Added a configurable delay after auto-approved file writes to allow diagnostics (like linters) time to process changes. diff --git a/apps/docs/docs/update-notes/v2.2.3.md b/apps/docs/docs/update-notes/v2.2.3.md new file mode 100644 index 00000000000..3e06d3ab3bf --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.3.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.3 cleans up the settings screen layout and presentation for better user experience and easier configuration management. +keywords: + - roo code 2.2.3 + - settings ui + - visual improvements + - user interface + - layout cleanup + - user experience +--- + +# Roo Code 2.2.3 Release Notes + +This release includes visual improvements to the settings screen. + +--- + +## General and QOL Improvements + +- Cleaned up the layout and presentation of the settings screen. diff --git a/apps/docs/docs/update-notes/v2.2.30.md b/apps/docs/docs/update-notes/v2.2.30.md new file mode 100644 index 00000000000..187d3223d63 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.30.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.30 fixes a bug with auto-approval logic for command execution, ensuring reliable automated workflows. +keywords: + - roo code + - v2.2.30 + - release notes + - bug fix + - command execution + - auto-approval + - automation +--- + +# Roo Code 2.2.30 Release Notes + +This patch release fixes a bug related to command auto-approval. + +--- + +## Bug Fixes + +- Fixed a bug with the auto-approval logic for command execution. diff --git a/apps/docs/docs/update-notes/v2.2.31.md b/apps/docs/docs/update-notes/v2.2.31.md new file mode 100644 index 00000000000..8e0af97c809 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.31.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.31 improves auto-approval logic for chained commands like 'cd some-dir && npm install' for better automation. +keywords: + - roo code + - v2.2.31 + - release notes + - command chaining + - auto-approval + - automation improvements +--- + +# Roo Code 2.2.31 Release Notes + +This release improves auto-approval logic for commands. + +--- + +## General and QOL Improvements + +- Improved logic for auto-approving chained commands (e.g., `cd some-dir && npm install`). diff --git a/apps/docs/docs/update-notes/v2.2.32.md b/apps/docs/docs/update-notes/v2.2.32.md new file mode 100644 index 00000000000..50e4dc8811a --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.32.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.32 implements a more efficient workspace tracker for improved performance and resource management. +keywords: + - roo code + - v2.2.32 + - release notes + - workspace tracker + - efficiency + - performance improvements +--- + +# Roo Code 2.2.32 Release Notes + +This release includes internal efficiency improvements. + +--- + +## General and QOL Improvements + +- Implemented a more efficient workspace tracker. diff --git a/apps/docs/docs/update-notes/v2.2.33.md b/apps/docs/docs/update-notes/v2.2.33.md new file mode 100644 index 00000000000..a33eef75f8e --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.33.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.33 introduces Enhance Prompt feature for OpenRouter models and adds model listing for OpenAI-compatible providers. +keywords: + - roo code + - v2.2.33 + - release notes + - enhance prompt + - openrouter + - openai compatible + - model listing +--- + +# Roo Code 2.2.33 Release Notes + +This release adds the "Enhance Prompt" feature and improves OpenAI-compatible provider support. + +--- + +## Feature Highlights + +- Added an "Enhance Prompt" button (initially for OpenRouter models only). +- Added support for listing available models for OpenAI-compatible providers. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v2.2.34.md b/apps/docs/docs/update-notes/v2.2.34.md new file mode 100644 index 00000000000..4700271bb21 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.34.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.34 adds support for the DeepSeek AI provider, expanding model options for code generation and analysis. +keywords: + - roo code + - v2.2.34 + - release notes + - deepseek + - ai provider + - model support + - code generation +--- + +# Roo Code 2.2.34 Release Notes + +This release adds support for the DeepSeek provider. + +--- + +## Provider Updates + +- Added the DeepSeek provider. diff --git a/apps/docs/docs/update-notes/v2.2.35.md b/apps/docs/docs/update-notes/v2.2.35.md new file mode 100644 index 00000000000..49247c0facc --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.35.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.35 adds multiple browser viewport sizes and adjustable screenshot quality for improved browser automation. +keywords: + - roo code + - v2.2.35 + - release notes + - browser tool + - viewport sizes + - screenshot quality + - automation +--- + +# Roo Code 2.2.35 Release Notes + +This release adds more control over browser tool actions. + +--- + +## General and QOL Improvements + +- Allowed selection of multiple browser viewport sizes. +- Added the ability to adjust browser screenshot quality. diff --git a/apps/docs/docs/update-notes/v2.2.36.md b/apps/docs/docs/update-notes/v2.2.36.md new file mode 100644 index 00000000000..0f56d20a6f6 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.36.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.36 & 2.2.37 add the ability to delete individual user messages from chat history for better conversation management. +keywords: + - roo code + - v2.2.36 + - v2.2.37 + - release notes + - message deletion + - chat history + - user interface +--- + +# Roo Code 2.2.36 & 2.2.37 Release Notes + +These releases add the ability to delete user messages. + +--- + +## General and QOL Improvements + +- Added a button to delete individual user messages from the chat history. diff --git a/apps/docs/docs/update-notes/v2.2.38.md b/apps/docs/docs/update-notes/v2.2.38.md new file mode 100644 index 00000000000..a45a0cd1da8 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.38.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.38 adds configurable terminal output lines passed to models, optimizing context usage for command execution. +keywords: + - roo code + - v2.2.38 + - release notes + - terminal output + - context control + - command execution + - configuration +--- + +# Roo Code 2.2.38 Release Notes + +This release adds a setting to control terminal output context. + +--- + +## General and QOL Improvements + +- Added a setting to control the number of terminal output lines passed to the model when executing commands. diff --git a/apps/docs/docs/update-notes/v2.2.39.md b/apps/docs/docs/update-notes/v2.2.39.md new file mode 100644 index 00000000000..d211e3dbb26 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.39.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.39 adds a toggle setting to enable/disable MCP-related sections in system prompts for customized workflows. +keywords: + - roo code + - v2.2.39 + - release notes + - mcp + - prompt sections + - toggle setting + - customization +--- + +# Roo Code 2.2.39 Release Notes + +This release adds a toggle for MCP prompt sections. + +--- + +## General and QOL Improvements + +- Added a toggle setting to enable/disable the MCP-related sections of the system prompt. (thanks daniel-lxs!) diff --git a/apps/docs/docs/update-notes/v2.2.4.md b/apps/docs/docs/update-notes/v2.2.4.md new file mode 100644 index 00000000000..ebd6089656e --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.4.md @@ -0,0 +1,17 @@ +--- +description: This release includes prompt adjustments for diff editing. +--- + +--- + +## description: This release includes prompt adjustments for diff editing. + +# Roo Code 2.2.4 Release Notes + +This release includes prompt adjustments for diff editing. + +--- + +## General and QOL Improvements + +- Tweaked the system prompt to encourage the use of diff edits when the feature is enabled. diff --git a/apps/docs/docs/update-notes/v2.2.40.md b/apps/docs/docs/update-notes/v2.2.40.md new file mode 100644 index 00000000000..76cbb0221e0 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.40.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.40 introduces support for the Glama AI provider, expanding model options for enhanced code assistance. +keywords: + - roo code + - v2.2.40 + - release notes + - glama + - ai provider + - model support + - integration +--- + +# Roo Code 2.2.40 Release Notes + +This release adds support for the Glama provider. + +--- + +## Provider Updates + +- Added the Glama provider. (thanks punkpeye!) diff --git a/apps/docs/docs/update-notes/v2.2.41.md b/apps/docs/docs/update-notes/v2.2.41.md new file mode 100644 index 00000000000..51f48daf53a --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.41.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.41 adds checkbox setting to disable response streaming for OpenAI-compatible providers for better control. +keywords: + - roo code + - v2.2.41 + - release notes + - openai compatible + - streaming + - response control + - configuration +--- + +# Roo Code 2.2.41 Release Notes + +This release adds a streaming option for OpenAI-compatible providers. + +--- + +## General and QOL Improvements + +- Added a checkbox setting to disable response streaming for OpenAI-compatible providers. diff --git a/apps/docs/docs/update-notes/v2.2.42.md b/apps/docs/docs/update-notes/v2.2.42.md new file mode 100644 index 00000000000..0548193619c --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.42.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 2.2.42 adds Git section to @-mention context suggestions for quick access to branch and repository information. +keywords: + - roo code + - v2.2.42 + - release notes + - git integration + - context mentions + - branch info + - repository +--- + +# Roo Code 2.2.42 Release Notes + +This release adds Git information to context mentions. + +--- + +## General and QOL Improvements + +- Added a Git section to the @-mention context suggestions, providing quick access to branch and repository information. diff --git a/apps/docs/docs/update-notes/v2.2.43.md b/apps/docs/docs/update-notes/v2.2.43.md new file mode 100644 index 00000000000..5f4f7122b6d --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.43.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.43 enables deletion of single messages or all subsequent messages within a task for better conversation control. +keywords: + - roo code + - v2.2.43 + - release notes + - message deletion + - conversation management + - task control +--- + +# Roo Code 2.2.43 Release Notes + +This release adds message deletion options. + +--- + +## General and QOL Improvements + +- Added the ability to delete single messages or all subsequent messages within a task. diff --git a/apps/docs/docs/update-notes/v2.2.44.md b/apps/docs/docs/update-notes/v2.2.44.md new file mode 100644 index 00000000000..221ac4a1551 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.44.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.44 introduces automatic retries for failed API requests with configurable delay, improving reliability and connection stability. +keywords: + - roo code + - v2.2.44 + - api retries + - automatic retry + - api requests + - connection stability + - error handling + - release notes +--- + +# Roo Code 2.2.44 Release Notes + +This release adds automatic retries for failed API requests. + +--- + +## General and QOL Improvements + +- Implemented automatic retries for failed API requests with a configurable delay. (thanks RaySinner!) diff --git a/apps/docs/docs/update-notes/v2.2.45.md b/apps/docs/docs/update-notes/v2.2.45.md new file mode 100644 index 00000000000..feea765ee9f --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.45.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.45 introduces API Configuration Profiles, allowing you to save and quickly switch between different API setups and providers. +keywords: + - roo code + - v2.2.45 + - api configuration profiles + - api settings + - provider switching + - model configuration + - api management + - release notes +--- + +# Roo Code 2.2.45 Release Notes + +This release introduces API Configuration Profiles. + +--- + +## Feature Highlights + +- **API Configuration Profiles:** Added the ability to save different API configurations (provider, model, API key, other settings) as named profiles, allowing quick switching between setups. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v2.2.46.md b/apps/docs/docs/update-notes/v2.2.46.md new file mode 100644 index 00000000000..94ea1624f46 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.46.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 2.2.46 fixes @-mention parsing to ensure mentions are only processed in user input, not within file contents included in context. +keywords: + - roo code + - v2.2.46 + - mention parsing + - at-mentions + - context parsing + - bug fix + - patch release + - release notes +--- + +# Roo Code 2.2.46 Release Notes + +This patch release adjusts @-mention parsing. + +--- + +## Fixes + +- Ensured @-mentions are only parsed in user input, not within file contents included in the context. diff --git a/apps/docs/docs/update-notes/v2.2.5.md b/apps/docs/docs/update-notes/v2.2.5.md new file mode 100644 index 00000000000..44f8c86bf8e --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.5.md @@ -0,0 +1,17 @@ +--- +description: This release adds the ability to enable/disable MCP servers. +--- + +--- + +## description: This release adds the ability to enable/disable MCP servers. + +# Roo Code 2.2.5 Release Notes + +This release adds the ability to enable/disable MCP servers. + +--- + +## General and QOL Improvements + +- Added the ability to enable or disable individual MCP servers in the settings. diff --git a/apps/docs/docs/update-notes/v2.2.6.md b/apps/docs/docs/update-notes/v2.2.6.md new file mode 100644 index 00000000000..65c365bdf24 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.6.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 2.2.6 through 2.2.10 include multiple fixes for search/replace diff functionality, improving reliability and accuracy of code edits. +keywords: + - roo code 2.2.6 + - roo code 2.2.10 + - search replace diffs + - bug fixes + - diff functionality + - code editing +--- + +# Roo Code 2.2.6 - 2.2.10 Release Notes + +These releases included fixes for search/replace diffs. + +--- + +## Bug Fixes + +- Included multiple fixes related to search/replace diff functionality. diff --git a/apps/docs/docs/update-notes/v2.2.md b/apps/docs/docs/update-notes/v2.2.md new file mode 100644 index 00000000000..b9a1aff9797 --- /dev/null +++ b/apps/docs/docs/update-notes/v2.2.md @@ -0,0 +1,91 @@ +--- +description: Roo Code 2.2 introduces MCP support for custom tools, API configuration profiles, enhanced diff editing, and numerous quality-of-life improvements. +keywords: + - roo code + - v2.2 + - mcp support + - model context protocol + - api profiles + - diff editing + - auto-approval + - custom tools + - release notes +--- + +# Roo Code 2.2 Release Notes (2025-02-27) + +This release cycle introduced Model Context Protocol (MCP) support, enabling custom tools, along with numerous settings for finer control over API requests, diff editing, auto-approval, and various QOL improvements and bug fixes. + +--- + +## Key Features & Enhancements + +- **Model Context Protocol (MCP) Support (v2.2.0):** + - Added support for MCP, enabling Roo Code to use custom tools like web search or GitHub tools. + - Added an MCP server management tab. + - Enabled Roo Code to dynamically create new MCP servers based on user requests. +- **API Configuration Profiles (v2.2.45):** Added the ability to save different API configurations to quickly switch between providers and settings. (thanks @samhvw8!) +- **Configurable API Request Retries (v2.2.44):** Allowed automatic retries for failed API requests with a configurable delay. (thanks @RaySinner!) +- **Message Deletion (v2.2.43):** Added functionality to delete single messages or all subsequent messages. +- **Git Context Mentions (v2.2.42):** Added a Git section to the context mentions. +- **Diff Editing (Experimental & Improved) (v2.1.12 - v2.2.24):** + - Incorporated experimental support for editing through diffs. (thanks @JoziGila!) + - Switched to search/replace diffs in experimental mode. + - Made diff editing more robust and fixed various bugs (indentation, Windows line endings). + - Added a setting for verbose diff debugging. + - Defaulted diff editing to on for new installs. + - Made fuzzy diff matching configurable (default off). +- **Auto-Approval Settings:** + - Support for auto-approval of write operations and command execution. (v2.1.2) + - Added checkboxes to auto-approve MCP tools. (v2.2.2) + - Improved logic for auto-approving chained commands. (v2.2.31, v2.2.17) + - Added configurable delay after auto-writes for diagnostics. (v2.2.29) + +--- + +## Provider Updates + +- **Glama Provider (v2.2.40):** Added the Glama provider. (thanks @punkpeye!) +- **DeepSeek Provider (v2.2.34):** Added the DeepSeek provider. +- **Amazon Nova & Meta Llama via Bedrock (v2.2.16):** Added support for Amazon Nova and Meta Llama Models (3, 3.1, 3.2) via Bedrock. (thanks Premshay!) +- **Gemini 2.0 (v2.1.20) & Flash Experimental (v2.2.22, v2.2.23):** Added Gemini 2.0 and experimental Flash models, with context window fixes. (thanks student20880 for fix) + +--- + +## QOL Improvements & UI + +- **Disable Streaming (OpenAI-Compatible) (v2.2.41):** Added a checkbox to disable streaming for OpenAI-compatible providers. +- **MCP Prompt Toggle (v2.2.39):** Added a toggle to enable/disable MCP-related sections of the system prompt. (thanks @daniel-lxs!) +- **Terminal Output Lines Setting (v2.2.38):** Added a setting to control the number of terminal output lines passed to the model. +- **Browser Viewport & Screenshot Quality (v2.2.35):** Allowed selection of multiple browser viewport sizes and adjusting screenshot quality. Added experimental 1280x800 browser. (v2.2.19) +- **"Enhance prompt" Button (OpenRouter) (v2.2.33):** Added "Enhance prompt" button (OpenRouter models only initially). +- **List Models for OpenAI Compatible (v2.2.33):** Supported listing models for OpenAI compatible providers. (thanks @samhvw8!) +- **Current Time in System Prompt (v2.2.27):** Added the current time to the system prompt. (thanks @libertyteeth!) +- **Preferred Language Dropdown (v2.2.25):** Added a preferred language dropdown, with tweaks. (thanks @yongjer for tweaks) +- **Larger Text Area Input & Image Drag (v2.1.21):** Implemented a larger text area input with image drag-and-drop capability. +- **Copy Prompts from History (v2.1.16).** +- **Clearer Diff Editing Experimental Status (v2.1.15).** +- **Sound Effects (v2.1.10 & v2.1.13):** Incorporated sound effects, with fixes for settings respect. (thanks @HeavenOSK!) +- **.clinerules Instructions in Settings (v2.1.9).** +- **MCP Server Enable/Disable (v2.2.5).** +- **Cleaned Up Settings Screen (v2.2.3).** + +--- + +## Bug Fixes + +- **@-Mention Parsing (v2.2.46):** Only parse @-mentions in user input, not in files. +- **Workspace Tracker Efficiency (v2.2.32).** +- **Auto-Approving Commands (v2.2.30).** +- **File Watcher for @-Mentions (v2.2.28):** Used `createFileSystemWatcher` for more reliable updates. +- **Gemini Chat Styling (v2.2.18).** +- **Diff `write_to_file` Rejection (v2.1.14):** Automatically reject `write_to_file` commands leading to truncated output if diffs are enabled. + +--- + +## Misc Improvements + +- **Roo Cline Runs in All VSCode-Compatible Editors (v2.1.6).** +- **Roo Cline Side-by-Side with Cline (v2.1.4).** +- **Browser Action Approval (v2.1.3, v2.1.5):** Allowed browser actions without approval when `alwaysAllowBrowser` is true, with fixes. +- **Updated Extension Icon and Metadata (v2.1.7).** diff --git a/apps/docs/docs/update-notes/v3.0.0.md b/apps/docs/docs/update-notes/v3.0.0.md new file mode 100644 index 00000000000..00f3cd30f1d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.0.0.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.0.0 introduces Chat Modes (Code, Architect, Ask), allowing tailored interactions for coding, system design, and general questions. +keywords: + - roo code + - v3.0.0 + - chat modes + - code mode + - architect mode + - ask mode + - major release + - api profiles + - release notes +--- + +# Roo Code 3.0.0 Release Notes + +This major release introduces Chat Modes! + +--- + +## Feature Highlights + +- **Chat Modes:** Added distinct modes (Code, Architect, Ask) allowing you to tailor interactions for specific tasks like coding, system design, or general questions. Different API configuration profiles can be assigned to each mode. diff --git a/apps/docs/docs/update-notes/v3.0.1.md b/apps/docs/docs/update-notes/v3.0.1.md new file mode 100644 index 00000000000..1bd80ae32c9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.0.1.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.0.1 fixes the community Reddit link and resolves a minor visual glitch in the chat input area for improved user experience. +keywords: + - roo code + - v3.0.1 + - reddit link fix + - visual glitch + - chat input + - patch release + - bug fixes + - release notes +--- + +# Roo Code 3.0.1 Release Notes + +This patch release fixes a link and a minor visual glitch. + +--- + +## Fixes + +- Fixed the community Reddit link. +- Fixed a small visual glitch in the chat input area. diff --git a/apps/docs/docs/update-notes/v3.0.2.md b/apps/docs/docs/update-notes/v3.0.2.md new file mode 100644 index 00000000000..ee7414ae3d4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.0.2.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.0.2 applies minor tweaks to button alignment in the chat input area for better visual consistency and user interface polish. +keywords: + - roo code + - v3.0.2 + - button alignment + - visual adjustments + - ui improvements + - chat interface + - patch release + - release notes +--- + +# Roo Code 3.0.2 Release Notes + +This patch release includes minor visual adjustments. + +--- + +## Fixes + +- Applied minor tweaks to button alignment in the chat input area. diff --git a/apps/docs/docs/update-notes/v3.0.3.md b/apps/docs/docs/update-notes/v3.0.3.md new file mode 100644 index 00000000000..6d596fb60b1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.0.3.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.0.3 updates the required VS Code engine version to ^1.84.0 to match upstream dependencies and ensure compatibility. +keywords: + - roo code + - v3.0.3 + - vscode engine + - version requirement + - compatibility update + - dependencies + - patch release + - release notes +--- + +# Roo Code 3.0.3 Release Notes + +This patch release updates the minimum required VS Code version. + +--- + +## Updates + +- Updated required VS Code engine version to `^1.84.0` to match upstream dependencies. diff --git a/apps/docs/docs/update-notes/v3.0.md b/apps/docs/docs/update-notes/v3.0.md new file mode 100644 index 00000000000..9241d2259ea --- /dev/null +++ b/apps/docs/docs/update-notes/v3.0.md @@ -0,0 +1,37 @@ +--- +description: Roo Code 3.0 introduces Chat Modes for specialized interactions, launches Reddit community, and includes various UI fixes and compatibility updates. +keywords: + - roo code + - v3.0 + - chat modes + - ask mode + - architect mode + - code mode + - reddit community + - ui fixes + - release cycle + - release notes +--- + +# Roo Code 3.0 Release Notes (2025-02-27) + +This release cycle marked the introduction of Chat Modes in Roo Code, allowing users to interact with the AI for architectural discussions and codebase questions without immediately diving into code generation. It also included some minor fixes and updates. + +--- + +## Key Feature: Chat Modes (v3.0.0) + +- **Introduction of Chat Modes:** Roo Code now features distinct chat modes (Ask, Architect, Code). This allows users to: + - Ask questions about system architecture or the codebase. + - Engage in higher-level discussions before code implementation. + - Assign different API configuration profiles to each mode, enabling the use of different models for thinking versus coding. +- **Roo Code Reddit Community:** Launched the [Roo Code Reddit](https://www.reddit.com/r/RooCode) for feedback and community interaction. + +--- + +## Bug Fixes & Minor Updates + +- **Reddit Link Fix (v3.0.1):** Corrected the Reddit link in the application. +- **Chat Input Visual Glitch (v3.0.1):** Fixed a small visual glitch in the chat input. +- **Button Alignment Tweaks (v3.0.2):** Made minor adjustments to button alignment in the chat input. +- **VSCode Engine Requirement (v3.0.3):** Updated the required VSCode engine to `^1.84.0` to align with Cline. diff --git a/apps/docs/docs/update-notes/v3.1.0.md b/apps/docs/docs/update-notes/v3.1.0.md new file mode 100644 index 00000000000..ff8a272a585 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.0.md @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.1.0 enables customization of chat mode prompts and instructions, revamps Enhance Prompt feature, and adds Markdown copy functionality. +keywords: + - roo code + - v3.1.0 + - customizable prompts + - mode customization + - enhance prompt + - markdown copy + - clinerules + - release notes +--- + +# Roo Code 3.1.0 Release Notes + +This release introduces customization for chat mode prompts and instructions, along with an improved "Enhance Prompt" feature. + +--- + +## Feature Highlights + +- **Customizable Mode Prompts:** Added the ability to customize the role definition and instructions for each chat mode (Code, Architect, Ask) via the Prompts tab or mode-specific `.clinerules-mode` files. +- **Revamped Enhance Prompt:** The "Enhance Prompt" button now works with any provider and API configuration, allowing crafting messages with fully customizable prompts. +- Added a button to copy Markdown content from chat messages. diff --git a/apps/docs/docs/update-notes/v3.1.1.md b/apps/docs/docs/update-notes/v3.1.1.md new file mode 100644 index 00000000000..f40b14c571a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.1.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.1.1 applies visual fixes to chat input and settings UI elements for improved appearance in light+ themes. +keywords: + - roo code + - v3.1.1 + - light theme + - visual fixes + - ui improvements + - chat input + - settings ui + - patch release + - release notes +--- + +# Roo Code 3.1.1 Release Notes + +This patch release includes visual fixes for light themes. + +--- + +## Fixes + +- Applied visual fixes to the chat input and settings UI elements for light+ themes. diff --git a/apps/docs/docs/update-notes/v3.1.2.md b/apps/docs/docs/update-notes/v3.1.2.md new file mode 100644 index 00000000000..ea2e9b89432 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.2.md @@ -0,0 +1,26 @@ +--- +description: Roo Code 3.1.2 adds experimental VS Code Language Models support including Copilot, improves fuzzy search, and fixes configuration bugs. +keywords: + - roo code + - v3.1.2 + - copilot support + - vscode language models + - fuzzy search + - configuration fixes + - pkce support + - release notes +--- + +# Roo Code 3.1.2 Release Notes + +This patch release adds experimental Copilot support, fuzzy search improvements, and fixes. + +--- + +## Updates & Fixes + +- Added experimental support for VS Code Language Models, including Copilot. (thanks RaySinner, julesmons!) +- Fixed a bug related to configuration profile switching. (thanks samhvw8!) +- Improved fuzzy search in @-mentions, history, and model lists. (thanks samhvw8!) +- Added PKCE support for the Glama provider. (thanks punkpeye!) +- Used 'developer' message role for `o1` system prompt. diff --git a/apps/docs/docs/update-notes/v3.1.3.md b/apps/docs/docs/update-notes/v3.1.3.md new file mode 100644 index 00000000000..9a9c487e18b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.3.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.1.3 introduces the auto-approve chat bar for quicker action approvals and fixes VS Code Language Models integration bug. +keywords: + - roo code + - v3.1.3 + - auto-approve + - chat bar + - quick approvals + - vscode integration + - bug fix + - release notes +--- + +# Roo Code 3.1.3 Release Notes + +This patch release adds the auto-approve chat bar and fixes an integration bug. + +--- + +## Updates & Fixes + +- Added the auto-approve chat bar for quicker action approvals. (thanks Cline!) +- Fixed a bug with the VS Code Language Models integration. diff --git a/apps/docs/docs/update-notes/v3.1.4.md b/apps/docs/docs/update-notes/v3.1.4.md new file mode 100644 index 00000000000..49862c6bbbc --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.4.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.1.4 and 3.1.5 address issues with the auto-approve menu functionality for improved reliability and user experience. +keywords: + - roo code + - v3.1.4 + - v3.1.5 + - auto-approve menu + - bug fixes + - functionality improvements + - patch releases + - release notes +--- + +# Roo Code 3.1.4 & 3.1.5 Release Notes + +These patch releases included bug fixes for the auto-approve menu. + +--- + +## Bug Fixes + +- Addressed issues with the auto-approve menu functionality. diff --git a/apps/docs/docs/update-notes/v3.1.6.md b/apps/docs/docs/update-notes/v3.1.6.md new file mode 100644 index 00000000000..1e34b64bf1f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.6.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.1.6 adds support for the Mistral provider and fixes a bug with saving VSCode Language Models configuration profiles. +keywords: + - roo code + - v3.1.6 + - mistral provider + - configuration profiles + - copilot configuration + - bug fix + - provider support + - release notes +--- + +# Roo Code 3.1.6 Release Notes + +This patch release adds Mistral provider support and fixes a configuration saving bug. + +--- + +## Updates & Fixes + +- Added support for the Mistral provider. (thanks Cline!) +- Fixed a bug with saving VSCode Language Models (Copilot) configuration profiles. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.1.7.md b/apps/docs/docs/update-notes/v3.1.7.md new file mode 100644 index 00000000000..ff050988a64 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.7.md @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.1.7 adds support for DeepSeek-R1 models, introduces experimental unified diff algorithm, and fixes API configuration profiles. +keywords: + - roo code + - v3.1.7 + - deepseek-r1 + - unified diff + - configuration profiles + - experimental features + - api fixes + - release notes +--- + +# Roo Code 3.1.7 Release Notes + +This patch release adds DeepSeek-R1 support and includes fixes for configuration profiles. + +--- + +## Updates & Fixes + +- Added support for DeepSeek-R1 models. (thanks philipnext!) +- Enabled an experimental new unified diff algorithm via settings. (thanks daniel-lxs!) +- Included additional fixes for API configuration profiles. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.1.md b/apps/docs/docs/update-notes/v3.1.md new file mode 100644 index 00000000000..078aef04cb2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.1.md @@ -0,0 +1,58 @@ +--- +description: Roo Code 3.1 brings customizable chat mode prompts, DeepSeek-R1 support, Mistral provider, auto-approve chat bar, and numerous improvements. +keywords: + - roo code + - v3.1 + - customizable modes + - deepseek-r1 + - mistral + - copilot + - auto-approve + - unified diff + - release cycle +--- + +# Roo Code 3.1 Release Notes (2025-02-27) + +This release cycle introduced customizable role definitions and instructions for chat modes, revamped Prompt Enhancements, added DeepSeek-R1 support, an experimental unified diff algorithm, Mistral provider integration, and several bug fixes related to configuration profiles and UI. + +--- + +## Key Features & Enhancements + +- **Customizable Chat Mode Prompts (v3.1.0):** You can now customize the role definition and instructions for each chat mode (Code, Architect, and Ask) via the Prompts tab or mode-specific `.clinerules-mode` files. +- **Revamped Prompt Enhancements (v3.1.0):** The "Enhance Prompt" button now works with any provider and API configuration, allowing for fully customizable prompts. +- **Auto-Approve Chat Bar (v3.1.3):** Added an auto-approve chat bar for quicker interactions. (thanks Cline!) +- **Experimental Unified Diff Algorithm (v3.1.7):** An experimental new unified diff algorithm can be enabled in settings. (thanks @daniel-lxs!) + +--- + +## Provider Updates + +- **DeepSeek-R1 Support (v3.1.7):** Added support for the DeepSeek-R1 model. (thanks @philipnext!) +- **Mistral Provider (v3.1.6):** Integrated the Mistral provider. (thanks Cline!) +- **VS Code Language Models (Experimental) (v3.1.2):** Added experimental support for VS Code Language Models, including Copilot. (thanks @RaySinner / @julesmons!) +- **PKCE Support for Glama (v3.1.2):** Implemented PKCE support for the Glama provider. (thanks @punkpeye!) + +--- + +## QOL Improvements & UI + +- **Copy Markdown from Chat (v3.1.0):** Added a button to copy Markdown content directly from the chat. +- **Fuzzy Search Improvements (v3.1.2):** Enhanced fuzzy search in mentions, history, and model lists. (thanks @samhvw8!) +- **Visual Fixes for Light+ Themes (v3.1.1):** Addressed visual glitches in chat input and settings for light+ themes. + +--- + +## Bug Fixes + +- **Configuration Profile Fixes (v3.1.7, v3.1.6, v3.1.2):** Addressed multiple bugs related to configuration profile saving and switching, particularly for VSCode LM. (thanks @samhvw8!) +- **Auto Approve Menu Fixes (v3.1.4 - v3.1.5):** Corrected bugs in the auto-approve menu. +- **VS Code Language Models Integration Bug (v3.1.3):** Fixed a bug with the VS Code Language Models integration. + +--- + +## Misc Improvements + +- **Updated VSCode Engine Requirement (v3.0.3):** Updated the required VSCode engine to `^1.84.0` to match Cline. +- **Use 'developer' message for o1 system prompt (v3.1.2).** diff --git a/apps/docs/docs/update-notes/v3.10.0.md b/apps/docs/docs/update-notes/v3.10.0.md new file mode 100644 index 00000000000..8ff5467720e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.0.md @@ -0,0 +1,36 @@ +--- +description: Roo Code 3.10.0 adds suggested responses for quick interactions, efficient large file handling with chunked loading, and improved @-mention file lookup capabilities. +keywords: + - roo code 3.10.0 + - suggested responses + - large file support + - chunked loading + - at-mentions + - gitignore support + - release notes +--- + +# Roo Code 3.10.0 Release Notes (2025-03-20) + +This release introduces suggested responses, improved large file handling, and enhanced @-mention capabilities. + +--- + +## Feature Highlights + +- **Suggested Responses:** Added options for quick responses when Roo asks questions. Pick from a list instead of typing everything out. (thanks samhvw8!) +- **Large File Support:** Reading large files is now more efficient with chunked loading, allowing work with files that previously caused context issues. (thanks samhvw8!) +- **Improved @-mentions:** Completely redesigned file and folder lookup for @-mentions, using server-side processing with gitignore support for more accurate results when referencing workspace files. + +--- + +## Bug Fixes & Improvements + +- Made suggested responses optional to prevent conflicts with overridden system prompts. +- Fixed MCP error logging. (thanks aheizi!) +- Fixed changelog formatting in GitHub Releases. (thanks pdecat!) +- Fixed bug causing task history loss when using WSL. +- Consolidated code actions into a submenu. (thanks samhvw8!) +- Improved `search_files` tool formatting and logic. (thanks KJ7LNW!) +- Added fake provider for integration tests. (thanks franekp!) +- Reflected Cross-region inference option in ap-xx region. (thanks Yoshino-Yukitaro!) diff --git a/apps/docs/docs/update-notes/v3.10.1.md b/apps/docs/docs/update-notes/v3.10.1.md new file mode 100644 index 00000000000..8c268028a32 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.1.md @@ -0,0 +1,19 @@ +--- +description: Roo Code 3.10.1 makes suggested responses optional to prevent conflicts with overridden system prompts, ensuring compatibility with custom configurations. +keywords: + - roo code 3.10.1 + - suggested responses + - custom system prompts + - compatibility fix + - release notes +--- + +# Roo Code 3.10.1 Release Notes (2025-03-20) + +This patch release addresses compatibility with custom system prompts. + +--- + +## Updates + +- Made suggested responses optional to prevent conflicts with overridden system prompts. diff --git a/apps/docs/docs/update-notes/v3.10.2.md b/apps/docs/docs/update-notes/v3.10.2.md new file mode 100644 index 00000000000..326a26916ad --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.2.md @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.10.2 fixes context mentions on Windows, corrects German translations, resolves i18n telemetry issues, and ensures proper token limits for Sonnet 3.7. +keywords: + - roo code 3.10.2 + - context mentions + - windows fix + - german translations + - sonnet 3.7 + - token limits + - release notes +--- + +# Roo Code 3.10.2 Release Notes (2025-03-21) + +This patch release includes fixes for context mentions, internationalization, and model token limits. + +--- + +## Bug Fixes + +- Addressed issues with context mentions on Windows. +- Corrected German translations. (thanks cannuri!) +- Fixed internationalization issues with the telemetry banner. +- Ensured Sonnet 3.7 non-thinking mode correctly uses 8192 max output tokens. diff --git a/apps/docs/docs/update-notes/v3.10.3.md b/apps/docs/docs/update-notes/v3.10.3.md new file mode 100644 index 00000000000..e646d7210a8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.3.md @@ -0,0 +1,42 @@ +--- +description: Roo Code 3.10.3 enhances partial file reads with explicit full file requests, custom chunk sizes, and fixes for multi-block diff, binary files, and OpenRouter pricing. +keywords: + - roo code 3.10.3 + - large file handling + - partial file reads + - chunk size + - multi-block diff + - binary files + - openrouter + - release notes +--- + +# Roo Code 3.10.3 Release Notes (2025-03-23) + +This release focuses on enhancing large file handling and includes numerous bug fixes. + +--- + +## Feature Highlights + +- Enhanced partial file reads with the ability to explicitly request full file reads when needed, custom chunk size controls, and clearer instructions. + +--- + +## General Improvements + +- Updated the welcome page to provide 1-click OAuth flows with LLM routers. (thanks dtrugman!) +- Switched to a more direct method of tracking OpenRouter tokens/spend. + +--- + +## Bug Fixes + +- Fixed issues where questions and suggestions weren't showing up for non-streaming models and were hard to read in some themes. +- Addressed various issues and made improvements to the experimental multi-block diff feature. (thanks KJ7LNW!) +- Fixed opacity of drop-down menus in settings. (thanks KJ7LNW!) +- Fixed bugs related to reading and mentioning binary files like PDFs. +- Corrected pricing information for OpenRouter free models. (thanks Jdo300!) +- Fixed an issue with unit tests on Windows. (thanks diarmidmackenzie!) +- Resolved a `maxTokens` issue for the Outbound provider. (thanks pugazhendhi-m!) +- Fixed a line number issue associated with partial file reads. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.10.4.md b/apps/docs/docs/update-notes/v3.10.4.md new file mode 100644 index 00000000000..2fc1dfc8bfa --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.4.md @@ -0,0 +1,49 @@ +--- +description: Roo Code 3.10.4 adds Gemini 2.5 Pro, R1 support for QWQ models, Bedrock application-inference-profile, improved UI/UX, and dynamic mode instructions fetching. +keywords: + - roo code 3.10.4 + - gemini 2.5 pro + - r1 support + - qwq models + - bedrock inference + - dynamic instructions + - release notes +--- + +# Roo Code 3.10.4 Release Notes (2025-03-25) + +This release brings new provider support, UI enhancements, and various improvements and fixes. + +--- + +## Provider & Model Support + +- Added Gemini 2.5 Pro model to Google Gemini Provider. (thanks samsilveira!) +- Added R1 support checkbox to OpenAI compatible provider settings for QWQ models. (thanks feifei325!) +- Added Bedrock support for `application-inference-profile`. (thanks maekawataiki!) + +--- + +## UI/UX Improvements + +- Updated the chat text area UX. (thanks chadgauth!) +- Improved display of OpenRouter "overloaded" error messages. + +--- + +## General Improvements & Fixes + +- Added a "New Task" command to the Command Palette. (thanks qdaxb!) +- Supported test declarations in TypeScript tree-sitter queries. (thanks KJ7LNW!) +- Enabled reading image responses from MCP calls. (thanks nevermorec!) +- Supported a custom storage path for tasks. (thanks Chenjiayuan195!) +- Dynamically fetched instructions for creating/editing custom modes and MCP servers. (thanks diarmidmackenzie!) +- Renamed and migrated global MCP and modes files. (thanks StevenTCramer!) +- Added `taskCreated` event to API and subscribed to cline events earlier. (thanks wkordalski!) +- Added `watchPaths` option to McpHub for file change detection. (thanks 01Rian!) +- Added settings to control auto-approval for reads and writes outside the workspace. +- Fixed links in the README documentation. (thanks kvokka!) +- Fixed numeric formatting suffix internationalization. (thanks feifei325!) +- Fixed open tab support in context mention suggestions. (thanks aheizi!) +- Fixed browser tool visibility in system prompt preview. (thanks cannuri!) +- Fixed the `supportsPromptCache` value for OpenAI models. (thanks PeterDaveHello!) diff --git a/apps/docs/docs/update-notes/v3.10.5.md b/apps/docs/docs/update-notes/v3.10.5.md new file mode 100644 index 00000000000..b1f4c0c36bd --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.5.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.10.5 updates the maximum output tokens for gemini-2.5-pro-03-25 to 65,536 and fixes internal task completion event logic for improved stability. +keywords: + - roo code 3.10.5 + - gemini 2.5 pro + - output tokens + - 65536 tokens + - task completion + - release notes +--- + +# Roo Code 3.10.5 Release Notes (2025-03-25) + +This patch release includes model updates and internal logic fixes. + +--- + +## Updates & Fixes + +- Updated the maximum output tokens for `gemini-2.5-pro-03-25` to 65,536. (thanks linegel!) +- Fixed internal logic related to task completion events. diff --git a/apps/docs/docs/update-notes/v3.10.md b/apps/docs/docs/update-notes/v3.10.md new file mode 100644 index 00000000000..c8d7c90f4d4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.10.md @@ -0,0 +1,88 @@ +--- +description: Roo Code 3.10 introduces chunked large file reading, suggested responses, improved @-mentions, dynamic instructions, Gemini 2.5 Pro support, and numerous fixes. +keywords: + - roo code 3.10 + - context management + - large files + - suggested responses + - at-mentions + - gemini 2.5 pro + - dynamic instructions + - release notes +--- + +# Roo Code 3.10 Release Notes (2025-03-25) + +This release cycle focused on enhancing context management with partial file reads and suggested responses, improved OpenRouter integration, and various fixes for stability and user experience. + +--- + +## Enhanced Context Management + +- **Reading Large Files in Chunks:** Roo Code can now read large files in chunks, allowing for more efficient processing and context utilization. (thanks samhvw8!) +- **Suggested Responses to Questions:** When Roo asks a question, it now provides suggested responses to streamline user interaction. (thanks samhvw8!) +- **More Consistent @-mention Lookups:** Improved lookup consistency for files and folders using @-mentions. +- **Consolidated Code Actions:** Code actions are now grouped into a submenu for a cleaner interface. (thanks samhvw8!) + +--- + +## Provider & API Enhancements + +- **Dynamically Fetched Instructions:** Instructions for creating/editing custom modes and MCP servers are now fetched dynamically. (thanks diarmidmackenzie!) +- **Gemini 2.5 Pro Added:** The Gemini 2.5 Pro model has been added to the Google Gemini provider. (thanks samsilveira!) +- **OpenRouter Token Tracking:** Switched to a more direct method of tracking OpenRouter token usage and spend. +- **Control Over Partial Read Chunk Size:** Users now have more control over the chunk size for partial file reads. +- **R1 Support for OpenAI Compatible:** Added an R1 support checkbox to the OpenAI compatible provider for QWQ. (thanks teddyOOXX!) +- **Bedrock Application Inference Profile:** Added Bedrock support for application-inference-profile. (thanks maekawataiki!) +- **Task Created Event in API:** Added a `taskCreated` event to the API. (thanks wkordalski!) + +--- + +## QOL Improvements + +- **Updated Welcome Page:** The welcome page now provides 1-click OAuth flows with LLM routers. (thanks dtrugman!) +- **New Task Command:** Added a "New Task" command in the Command Palette. (thanks qdaxb!) +- **UX for Chat Text Area:** Updated the user experience for the chat text area. (thanks chadgauth!) +- **Custom Storage Path for Tasks:** Supported a custom storage path for tasks. (thanks Chenjiayuan195!) + +--- + +## Bug Fixes + +- Fixed MCP error logging (thanks aheizi!). +- Improved `search_files` tool formatting and logic (thanks KJ7LNW!). +- Fixed changelog formatting in GitHub Releases (thanks pdecat!). +- Fixed a bug causing task history to be lost when using WSL. +- Fixed issues where questions and suggestions weren’t showing for non-streaming models or were hard to read. +- Fixed opacity of drop-down menus in settings (thanks KJ7LNW!). +- Fixed bugs with reading and mentioning binary files like PDFs. +- Fixed pricing information for OpenRouter free models (thanks Jdo300!). +- Fixed an issue with unit tests on Windows (thanks diarmidmackenzie!). +- Fixed a maxTokens issue for the Outbound provider (thanks pugazhendhi-m!). +- Fixed a line number issue with partial file reads (thanks samhvw8!). +- Fixed context mentions on Windows. +- Fixed German translations (thanks cannuri!). +- Fixed telemetry banner internationalization. +- Corrected max output tokens for Sonnet 3.7 non-thinking models. +- Fixed logic for firing task completion events. +- Updated value of max tokens for `gemini-2.5-pro-03-25` (thanks linegel!). + +--- + +## Misc Improvements + +- Added fake provider for integration tests (thanks franekp!). +- Reflected Cross-region inference option in ap-xx region (thanks Yoshino-Yukitaro!). +- Made partial file reads backwards-compatible with custom system prompts. +- A variety of fixes and improvements to experimental multi-block diff (thanks KJ7LNW!). +- Renamed and migrated global MCP and modes files (thanks StevenTCramer!). +- Added `watchPaths` option to McpHub for file change detection (thanks 01Rian!). +- Enabled reading of image responses from MCP calls (thanks nevermorec!). +- Fixed numeric formatting suffix internationalization (thanks feifei325!). +- Fixed open tab support in context mention suggestions (thanks aheizi!). +- Better display of OpenRouter “overloaded” error messages. +- Fixed browser tool visibility in system prompt preview (thanks cannuri!). +- Fixed `supportsPromptCache` value for OpenAI models (thanks PeterDaveHello!). +- Fixed readme links to docs (thanks kvokka!). +- Ran ‘npm audit fix’ on libraries. +- Made suggested responses optional to not break overridden system prompts. diff --git a/apps/docs/docs/update-notes/v3.11.0.md b/apps/docs/docs/update-notes/v3.11.0.md new file mode 100644 index 00000000000..97b8d648d38 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.0.md @@ -0,0 +1,88 @@ +--- +description: Roo Code 3.11.0 introduces fast multi-block diff editing, project-level MCP configuration, API key balances, improved Gemini support, and settings import/export. +keywords: + - roo code 3.11.0 + - fast edits + - multi-block diff + - project mcp config + - api key balances + - gemini support + - settings management + - release notes +--- + +# Roo Code 3.11.0 Release Notes (2025-03-30) + +This release introduces faster diff editing, project-level MCP configuration, API key balance display, improved Gemini integration, settings import/export, API profile pinning/sorting, editable suggested answers, and numerous other enhancements and bug fixes. + +--- + +## Fast Edits (Multi-Block Diffs) + +Roo Code's default editing mechanism now uses a multi-block diff strategy for the [`apply_diff`](/advanced-usage/available-tools/apply-diff) tool. This is significantly faster, especially when applying multiple changes at once, as it modifies only the necessary lines instead of rewriting the entire file. This leads to quicker edits and helps prevent issues like truncated writes on large files. + +Learn more about [Fast Edits](/features/fast-edits). + +--- + +## Project-Level MCP Config + +MCP (Mode Communication Protocol) server configurations can now be defined at the project or workspace level using a `.roo/mcp.json` file within your project's root directory. This allows for tailored MCP setups specific to different projects and takes precedence over global MCP settings. (Thanks aheizi!) + +Learn more about [Editing MCP Settings Files](/features/mcp/using-mcp-in-roo#editing-mcp-settings-files). + +--- + +## API Key Balances + +You can now conveniently check your current credit balance for OpenRouter and Requesty directly within the Roo Code API provider settings. + +--- + +## Improved Gemini Support + +- **Smarter Retry Logic:** More intelligent handling of transient Gemini API issues, including rate limits and error responses. +- **Improved Character Escaping:** Resolved issues with character escaping for more accurate code generation. +- **Gemini 2.5 Pro Support:** Added support for Gemini 2.5 Pro model via GCP Vertex AI. (Thanks nbihan-mediware!) + +--- + +## Settings Management + +- **Import/Export Settings:** Export your Roo Code settings to a JSON file for backup/sharing, and import settings to merge configurations. +- **Pin and Sort API Profiles:** Pin favorite API profiles to the top and sort the list in the settings dropdown. (Thanks jwcraig!) + +Learn more about [Import/Export/Reset Settings](/features/settings-management) and [Pinning and Sorting Profiles](/features/api-configuration-profiles#pinning-and-sorting-profiles). + +--- + +## QOL Improvements + +- **Editable Suggested Answers:** Suggested answers from [`ask_followup_question`](/advanced-usage/available-tools/ask-followup-question) can now be edited before acceptance. (Thanks samhvw8!) +- **Partial File Reads:** Enhancements to reading portions of large files. (Thanks KJ7LNW!) +- **"Add to Context" Action:** Prioritized in the code actions menu and now includes line numbers. (Thanks samhvw8!) +- **External Activation Command:** New command for other extensions to interface with Roo Code. (Thanks gtaylor!) +- **Browser Tool Improvements:** General fixes and enhancements. (Thanks afshawnlotfi!) +- **Partial Read Info:** Displayed in the chat interface. +- **Settings Link:** Added to the auto-approve action toolbar. +- **Provider Docs Links:** Added within API configuration options. +- **Custom OpenAI-Compatible Models:** Support for custom `o3-mini-` models. (Thanks snoyiatk!) +- **File Mentions with Spaces:** Supported @-mentions of files with spaces in their names. (Thanks samhvw8!) +- **List Code Definition Names for Files:** The `list_code_definition_names` tool now supports individual files. (Thanks KJ7LNW!) +- **Preserve Language Characters in Mentions:** File @-mentions now preserve language-specific characters. (Thanks aheizi!) + +--- + +## Bug Fixes + +- Fixed Gemini command escaping. +- Fixed switching profiles to ensure only the selected profile is switched (thanks feifei325!). + +--- + +## Misc Improvements + +- **Tool-Calling Logic Refactor:** Significant internal refactoring. (Thanks diarmidmackenzie, bramburn, KJ7LNW, and others!) +- Displayed info about partial reads in the chat row. +- Linked to the settings page from the auto-approve toolbar. +- Linked to provider docs from the API options. diff --git a/apps/docs/docs/update-notes/v3.11.1.md b/apps/docs/docs/update-notes/v3.11.1.md new file mode 100644 index 00000000000..e391f7baf28 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.1.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.11.1 relaxes JSON schema validation for provider profiles, allowing greater flexibility for custom setups and reducing validation errors. +keywords: + - roo code 3.11.1 + - provider profiles + - json schema + - validation + - custom providers + - telemetry + - release notes +--- + +# Roo Code 3.11.1 Release Notes (2025-03-30) + +This patch release includes minor updates to provider configurations. + +--- + +## General and QOL Improvements + +- **Provider Profiles Schema:** The JSON schema validation for provider profiles has been relaxed. This provides greater flexibility when configuring custom or less common provider setups and reduces potential validation errors for valid configurations. Telemetry related to provider usage has also been added to help diagnose issues. diff --git a/apps/docs/docs/update-notes/v3.11.10.md b/apps/docs/docs/update-notes/v3.11.10.md new file mode 100644 index 00000000000..d5bae3a47e8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.10.md @@ -0,0 +1,31 @@ +--- +description: Roo Code 3.11.10 fixes nested .roo/rules directories, OpenAI provider caching, and improves command output handling and translations. +keywords: + - roo code + - v3.11.10 + - release notes + - rules directory + - provider caching + - command output + - translations + - bug fixes +--- + +# Roo Code 3.11.10 Release Notes (2025-04-08) + +This patch release includes bug fixes for rules directories and provider caching, along with improvements to command output handling, translations, and code cleanup. + +--- + +## Bug Fixes + +- Fixed bug where nested `.roo/rules` directories are not respected properly (thanks @taisukeoe!). +- Fixed cache usage tracking for OpenAI-compatible providers. + +--- + +## General and QOL Improvements + +- Handled long command output more efficiently in the chat row (thanks @samhvw8!). +- Added custom translation instructions for zh-CN (thanks @System233!). +- Code cleanup after making rate-limits per-profile (thanks @ross!). diff --git a/apps/docs/docs/update-notes/v3.11.11.md b/apps/docs/docs/update-notes/v3.11.11.md new file mode 100644 index 00000000000..789efff308c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.11.md @@ -0,0 +1,41 @@ +--- +description: Roo Code 3.11.11 fixes UI highlighting, adds Host header support for OpenAI providers, improves parsers, and adds o1-pro support. +keywords: + - roo code + - v3.11.11 + - release notes + - UI fixes + - OpenAI provider + - parsers + - o1-pro + - terminal + - symlinks +--- + +# Roo Code 3.11.11 Release Notes (2025-04-09) + +This release includes fixes for UI interactions, improved OpenAI-compatible provider options, parser updates, and other enhancements. + +--- + +## Bug Fixes + +- Fix highlighting interaction with mode/profile dropdowns (thanks atlasgong!) +- Fixes to terminal working directory logic (thanks KJ7LNW!) + +--- + +## Improvements + +- Add the ability to set Host header and legacy OpenAI API in the OpenAI-compatible provider for better proxy support +- Improvements to TypeScript, C++, Go, Java, Python tree-sitter parsers (thanks KJ7LNW!) +- Improve `readFileTool` XML output format (thanks KJ7LNW!) +- Follow symlinked rules files/directories to allow for more flexible rule setups +- Focus Roo Code in the sidebar when running tasks in the sidebar via the API +- Improve subtasks UI + +--- + +## Provider Updates + +- Add o1-pro support (thanks arthurauffray!) diff --git a/apps/docs/docs/update-notes/v3.11.12.md b/apps/docs/docs/update-notes/v3.11.12.md new file mode 100644 index 00000000000..e4fe6e68e6e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.12.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.11.12 enables Grok3 streaming through OpenAI Compatible providers and makes diff editing more tolerant of model errors. +keywords: + - roo code + - v3.11.12 + - release notes + - grok3 + - streaming + - OpenAI compatible + - diff editing + - improvements +--- + +# Roo Code 3.11.12 Release Notes (2025-04-09) + +This release enables Grok3 streaming via OpenAI Compatible providers and improves diff editing tolerance. + +--- + +## Provider Updates + +- Make Grok3 streaming work with OpenAI Compatible (thanks amittell!) + +--- + +## Improvements + +- Tweak diff editing logic to make it more tolerant of model errors diff --git a/apps/docs/docs/update-notes/v3.11.13.md b/apps/docs/docs/update-notes/v3.11.13.md new file mode 100644 index 00000000000..35756d25393 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.13.md @@ -0,0 +1,58 @@ +--- +description: Roo Code 3.11.13 adds six terminal settings for better shell integration, improves diff error display, and adds file context tracking. +keywords: + - roo code + - v3.11.13 + - release notes + - terminal settings + - shell integration + - diff errors + - file context + - PowerShell + - ZSH +--- + +# Roo Code 3.11.13 Release Notes (2025-04-11) + +This release includes several terminal enhancements, improved diff error display, file context tracking, and various fixes. + +--- + +## New Terminal Settings (thanks KJ7LNW!) + +Six new configurable settings were added to improve terminal reliability: + +- **Terminal command delay setting** - Adds a small pause after running commands to fix output capture issues in some terminals. Useful if Roo has trouble seeing command results. +- **PowerShell counter workaround setting** - Helps PowerShell run identical commands multiple times without failing. Turn this on if Roo struggles with repeated commands. +- **Clear ZSH EOL mark setting** - Prevents ZSH from adding special characters that can confuse Roo when reading terminal output. +- **Oh My Zsh integration setting** - Makes Roo work better with the popular Oh My Zsh shell customization framework. (experimental) +- **Powerlevel10k integration setting** - Improves compatibility with the Powerlevel10k ZSH theme. (experimental) +- **ZDOTDIR handling setting** - Helps Roo work with custom ZSH configurations without interfering with your personal settings. (experimental) + +For detailed information about these settings and shell integration troubleshooting, see [Terminal Shell Integration](/features/shell-integration). + +Terminal enhancements settings panel showing command delay, PowerShell counter, and ZSH options + +--- + +## Diff Error Display Improvements + +Improved diff error display interface with copy mechanism + +- Enhanced visibility of diff errors +- Added easy copying mechanism for error details + +--- + +## Improvements + +- Added file context tracking system so Roo better remembers which files you're working with (thanks samhvw8 and canvrno!) +- Renamed AWS Bedrock to Amazon Bedrock for consistency with official naming (thanks ronyblum!) +- Updated extension title and description for clarity (thanks StevenTCramer!) + +--- + +## Bug Fixes + +- - Fixes to .vscodeignore (thanks @franekp!) +- Fixed Chinese (zh-CN) translation for model capabilities (thanks zhangtony239!) diff --git a/apps/docs/docs/update-notes/v3.11.14.md b/apps/docs/docs/update-notes/v3.11.14.md new file mode 100644 index 00000000000..34f4ea60cf0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.14.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.11.14 adds support for symbolic links in rules folders and enforces full file reading settings for better reliability. +keywords: + - roo code + - v3.11.14 + - release notes + - symbolic links + - rules folders + - file reading + - settings enforcement +--- + +# Roo Code 3.11.14 Release Notes (2025-04-11) + +This release enhances rule file handling and file reading settings enforcement. + +--- + +## Improvements + +- Support symbolic links in rules folders to directories and other symbolic links (thanks taisukeoe!) +- Stronger enforcement of the setting to always read full files instead of doing partial reads diff --git a/apps/docs/docs/update-notes/v3.11.15.md b/apps/docs/docs/update-notes/v3.11.15.md new file mode 100644 index 00000000000..40a52771792 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.15.md @@ -0,0 +1,48 @@ +--- +description: Roo Code 3.11.15 adds workspace-based task history filtering, package.json localization, and Anthropic Authorization header support. +keywords: + - roo code + - v3.11.15 + - release notes + - task history + - filtering + - localization + - Anthropic + - Bedrock + - bug fixes +--- + +# Roo Code 3.11.15 Release Notes (2025-04-13) + +This release adds task history filtering, localization, UI options, and includes several provider updates and bug fixes. + +--- + +## Task History Filtering + +- Added the ability to filter task history by workspace. (thanks samhvw8!) +- By default, only tasks from the current workspace are shown. +- Check the `Show tasks from all workspaces` option in the history view to see the global task history. + +--- + +## Improvements + +- Better documentation for adding new settings (thanks KJ7LNW!) +- Localize package.json (thanks samhvw8!) +- Add option to hide the welcome message and fix the background color for the new profile dialog (thanks zhangtony239!) +- Restore the focus ring for the VSCodeButton component (thanks pokutuna!) + +--- + +## Bug Fixes + +- Fix Node.js version in the .tool-versions file (thanks bogdan0083!) +- Fix duplicate suggested mentions for open tabs (thanks samhvw8!) +- Fix Bedrock ARN validation and token expiry issue when using profiles (thanks vagadiya!) + +--- + +## Provider Updates + +- Add Anthropic option to pass API token as Authorization header instead of X-Api-Key (thanks mecab!) diff --git a/apps/docs/docs/update-notes/v3.11.16.md b/apps/docs/docs/update-notes/v3.11.16.md new file mode 100644 index 00000000000..d682dffd7e0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.16.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.11.16 adds gpt-4.1, gpt-4.1-mini, and gpt-4.1-nano models to OpenAI provider and includes model ID in task details. +keywords: + - roo code + - v3.11.16 + - release notes + - OpenAI models + - gpt-4.1 + - gpt-4.1-mini + - gpt-4.1-nano + - task details +--- + +# Roo Code 3.11.16 Release Notes (2025-04-14) + +This release adds new OpenAI models and includes the model ID in task details. + +--- + +## Provider Updates + +- Add `gpt-4.1`, `gpt-4.1-mini`, and `gpt-4.1-nano` to the OpenAI provider + +--- + +## Improvements + +- Include model ID in environment details and when exporting tasks (thanks feifei325!) diff --git a/apps/docs/docs/update-notes/v3.11.17.md b/apps/docs/docs/update-notes/v3.11.17.md new file mode 100644 index 00000000000..73a8b046cb1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.17.md @@ -0,0 +1,32 @@ +--- +description: Roo Code 3.11.17 improves OpenAI cache reporting, enhances auto-approve toggles UI, and fixes diff logic and terminal race conditions. +keywords: + - roo code + - v3.11.17 + - release notes + - OpenAI cache + - UI improvements + - diff logic + - terminal commands + - bug fixes +--- + +# Roo Code 3.11.17 Release Notes (2025-04-14) + +This release includes improvements to OpenAI cache reporting, UI visuals, diff logic, terminal command capture, and fixes an eslint error. + +--- + +## Improvements + +- Improvements to OpenAI cache reporting and cost estimates (thanks monotykamary and Cline!) +- Visual improvements to the auto-approve toggles (thanks sachasayan!) +- Added telemetry to track diff apply errors going forward + +--- + +## Bug Fixes + +- Bugfix to diff apply logic (thanks avtc for the test case!) +- Fix race condition in capturing short-running terminal commands (thanks KJ7LNW!) +- Fix eslint error (thanks nobu007!) diff --git a/apps/docs/docs/update-notes/v3.11.2.md b/apps/docs/docs/update-notes/v3.11.2.md new file mode 100644 index 00000000000..29b9fbbdbcf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.2.md @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.11.2 fixes Requesty API key balance loading, resolves Bedrock inference profile issues, and improves webview message handling for better stability. +keywords: + - roo code 3.11.2 + - requesty api + - bedrock inference + - webview updates + - message handling + - bug fixes + - release notes +--- + +# Roo Code 3.11.2 Release Notes (2025-03-31) + +This patch release includes bug fixes and internal improvements. + +--- + +## Bug Fixes + +- Corrected an issue preventing the accurate loading of Requesty API key balances. +- Resolved a bug affecting the use of Bedrock inference profiles. +- Ensured the webview updates correctly when settings are modified via the API. + +--- + +## General and QOL Improvements + +- Refactored internal webview message handling for improved structure and maintainability (thanks @diarmidmackenzie!). diff --git a/apps/docs/docs/update-notes/v3.11.3.md b/apps/docs/docs/update-notes/v3.11.3.md new file mode 100644 index 00000000000..2c310c02ca0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.3.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 3.11.3 reverts recent context mention changes to address potential performance issues and crashes, prioritizing stability while investigating root causes. +keywords: + - roo code 3.11.3 + - context mentions + - stability fix + - performance issues + - crash prevention + - release notes +--- + +# Roo Code 3.11.3 Release Notes (2025-03-31) + +This patch release addresses potential stability issues. + +--- + +## General and QOL Improvements + +- **Context Mentions:** Reverted recent changes to context mention handling as a precaution against potential performance issues or crashes reported by some users. We are investigating the root cause and will reintroduce the improvements once stability is confirmed. diff --git a/apps/docs/docs/update-notes/v3.11.4.md b/apps/docs/docs/update-notes/v3.11.4.md new file mode 100644 index 00000000000..95215e621c8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.4.md @@ -0,0 +1,50 @@ +--- +description: Roo Code 3.11.4 adds tree-sitter support for TSX, TypeScript, JSON, and Markdown, fixes Windows unit tests, improves UI elements, and enhances provider support. +keywords: + - roo code 3.11.4 + - tree-sitter + - tsx support + - typescript + - json + - markdown + - windows fixes + - azure ai + - deepseek v3 + - release notes +--- + +# Roo Code 3.11.4 Release Notes (2025-04-02) + +This release includes fixes for webview state, Windows unit tests, tree-sitter enhancements, and several other improvements and bug fixes. + +--- + +## Bug Fixes + +- Correctly post state to webview when the current task is cleared (thanks wkordalski!). +- Fixed unit tests to run properly on Windows (thanks StevenTCramer!). +- Fixed issue with line number stripping for deletions in `apply_diff`. +- Fixed issue where prompts and settings tabs were not scrollable when accessed from dropdown menus. +- Fixed prompt enhancement for Bedrock (thanks Smartsheet-JB-Brown!). +- Fixed off-by-one error in tree-sitter line numbers. + +--- + +## QOL Improvements + +- Tree-sitter enhancements: TSX, TypeScript, JSON, and Markdown support (thanks KJ7LNW!). +- Updated history selection mode button spacing (thanks kyle-apex!). +- Limited dropdown menu height to 80% of the viewport (thanks axmo!). +- Enabled model select when api fails (thanks kyle-apex!). +- Updated AWS region dropdown menu to the most recent data (thanks Smartsheet-JB-Brown!). +- Made extension icon more visible in different themes. + +--- + +## Misc Improvements + +- Updated dependencies via `npm audit fix` (thanks PeterDaveHello!). +- Allowed processes to access the Roo Code API via a unix socket. +- Improved zh-TW Traditional Chinese translations (thanks PeterDaveHello!). +- Added support for Azure AI Inference Service with DeepSeek-V3 model (thanks thomasjeung!). +- Removed the experimental unified diff. diff --git a/apps/docs/docs/update-notes/v3.11.5.md b/apps/docs/docs/update-notes/v3.11.5.md new file mode 100644 index 00000000000..1a64c7ff511 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.5.md @@ -0,0 +1,31 @@ +--- +description: Roo Code 3.11.5 adds prompt caching for Amazon Bedrock, configurable MCP server working directories, API profile management, and improved diff editing. +keywords: + - roo code 3.11.5 + - bedrock prompt caching + - mcp cwd + - api profile management + - diff editing + - follow-up questions + - release notes +--- + +# Roo Code 3.11.5 Release Notes (2025-04-03) + +This patch release adds Bedrock prompt caching, configurable MCP CWD, API profile management, and diff editing improvements. + +--- + +## General and QOL Improvements + +- Added prompt caching for Amazon Bedrock (thanks Smartsheet-JB-Brown!). +- Added support for configuring the current working directory of MCP servers (thanks shoopapa!). +- Added profile management functions to API (thanks gtaylor!). +- Improvements to diff editing functionality, tests, and error messages (thanks p12tic!). + +--- + +## Bug Fixes + +- Fixed an issue where follow-up questions grabbed focus (thanks diarmidmackenzie!). +- Showed menu buttons when popping the extension out into a new tab (thanks benny123tw!). diff --git a/apps/docs/docs/update-notes/v3.11.6.md b/apps/docs/docs/update-notes/v3.11.6.md new file mode 100644 index 00000000000..4c2aeb8b660 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.6.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.11.6 adds support for Gemini 2.5 Pro Preview model with upper bound pricing for enhanced AI capabilities. +keywords: + - roo code + - v3.11.6 + - release notes + - gemini 2.5 pro + - preview model + - ai provider + - update +--- + +# Roo Code 3.11.6 Release Notes (2025-04-04) + +This patch release adds support for a preview Gemini model. + +--- + +## Provider Updates + +- Added the Gemini 2.5 Pro Preview model with upper bound pricing. diff --git a/apps/docs/docs/update-notes/v3.11.7.md b/apps/docs/docs/update-notes/v3.11.7.md new file mode 100644 index 00000000000..34fac7e8d67 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.7.md @@ -0,0 +1,27 @@ +--- +description: Roo Code 3.11.7 improves file tool context formatting, enhances zh-TW and zh-CN localization, and adds reference counting for McpHub. +keywords: + - roo code + - v3.11.7 + - release notes + - file context + - localization + - zh-TW + - zh-CN + - McpHub + - update +--- + +# Roo Code 3.11.7 Release Notes (2025-04-04) + +This patch release includes improvements to file tool context, localization, and internal handling. + +--- + +## General and QOL Improvements + +- Improved file tool context formatting and diff error guidance. +- Improved zh-TW localization (thanks PeterDaveHello!). +- Implemented reference counting for McpHub disposal. +- Updated buttons to be more consistent (thanks kyle-apex!). +- Improved zh-CN localization (thanks System233!). diff --git a/apps/docs/docs/update-notes/v3.11.8.md b/apps/docs/docs/update-notes/v3.11.8.md new file mode 100644 index 00000000000..478aa253d19 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.8.md @@ -0,0 +1,29 @@ +--- +description: This patch release includes performance improvements and UI updates. +--- + +# Roo Code 3.11.8 Release Notes (2025-04-05) + +This patch release includes performance improvements and UI updates. + +--- + +## Introduction of `.roorules` Files + +- Added support for `.roorules` files (e.g., `.roorules` for workspace-wide, `.roorules-code` for mode-specific) as a way to manage custom instructions directly within your project. This provides an alternative to defining instructions solely within the extension's settings UI. A deprecation warning for the older `.clinerules` file was also added. (Thanks upamune!) +- Learn more about [Custom Instructions](/features/custom-instructions) and how this applies to [Custom Modes](/features/custom-modes). + +--- + +## Changes + +- Improved `combineApiRequests` performance to reduce gray screens of death (thanks kyle-apex!). +- Added searchable dropdown to API config profiles on the settings screen (thanks samhvw8!). +- Added workspace tracking to history items in preparation for future filtering (thanks samhvw8!). + +--- + +## Bug Fixes + +- Fixed search highlighting UI in history search (thanks samhvw8!). +- Fixed nodejs version format in `.tool-versions` file (thanks upamune!). diff --git a/apps/docs/docs/update-notes/v3.11.9.md b/apps/docs/docs/update-notes/v3.11.9.md new file mode 100644 index 00000000000..7644c179725 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.9.md @@ -0,0 +1,49 @@ +--- +description: This patch release includes performance improvements and UI updates. +--- + +# Roo Code 3.11.9 Release Notes (2025-04-07) + +## This patch release introduces per-profile rate limits, multiple rules file support, provider updates, API additions, and various improvements and bug fixes. + +## Custom Roo Instructions (`.roo/` Directories) + +- Introduced support for placing multiple instruction files within `.roo/rules/` (for workspace-wide) and `.roo/rules-{modeSlug}/` (for mode-specific) directories. Roo Code recursively reads all files within these directories, appending them to the system prompt in **alphabetical order** by filename. +- This allows for better organization and management of complex instruction sets compared to single files. +- This directory-based method now takes precedence over the single `.roorules` or `.roorules-{modeSlug}` files if the corresponding directory exists and contains files. (Thanks upamune!) +- Learn more about [Custom Instructions](/features/custom-instructions) and how this applies to [Custom Modes](/features/custom-modes). + +--- + +## Per-Profile Rate Limits + +- The **Rate Limit** setting is now configured individually for each [API Configuration Profile](/features/api-configuration-profiles). Previously a global setting, this allows you to set different minimum delays between requests based on the provider, model, or specific profile setup you are using. (Thanks ross and olweraltuve!) +- The default remains 0 (disabled), which is suitable for most users. +- Configure this setting within each profile's options. See the [API Configuration Profiles](/features/api-configuration-profiles#creating-a-profile) guide for details. General information on usage tracking is available in [Rate Limits and Costs](/advanced-usage/rate-limits-costs). + +--- + +## General and QOL Improvements + +- Tidied up following ClineProvider refactor (thanks diarmidmackenzie!). +- Enhanced Rust tree-sitter parser with advanced language structures (thanks KJ7LNW!). +- Persisted settings on `api.setConfiguration` (thanks gtaylor!). +- Added deep links to settings sections. +- Added command to focus Roo Code input field (thanks axkirillov!). +- Added resize and hover actions to the browser (thanks SplittyDev!). +- Added `resumeTask` and `isTaskInHistory` to the API (thanks franekp!). +- Dynamic Vite port detection for webview development (thanks KJ7LNW!). + +--- + +## Bug Fixes + +- Prevented unnecessary autoscroll when buttons appear (thanks shtse8!). +- Clamped negative line numbers when reading files (thanks KJ7LNW!). +- Fixed bug displaying boolean/numeric suggested answers. + +--- + +## Provider Updates + +- Added Gemini 2.5 Pro Preview to Vertex AI (thanks nbihan-mediware!). diff --git a/apps/docs/docs/update-notes/v3.11.md b/apps/docs/docs/update-notes/v3.11.md new file mode 100644 index 00000000000..87612b9db56 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.11.md @@ -0,0 +1,116 @@ +--- +description: Roo Code 3.11 introduces fast diff-based edits, API key balance checking, project-level MCP configs, and enhanced Gemini support. +keywords: + - roo code + - v3.11 + - release notes + - fast edits + - API balances + - MCP config + - Gemini support + - import export settings +--- + +# Roo Code 3.11 Release Notes (2025-03-30) + +This update focuses on performance enhancements, improved provider integration, and usability refinements based on community feedback. + +--- + +## Fast Edits + +Roo Code's default editing mechanism, which uses diffs via the [`apply_diff`](/advanced-usage/available-tools/apply-diff) tool, is now significantly faster, especially when applying multiple changes at once. This approach modifies only the necessary lines instead of rewriting the entire file, leading to quicker edits and helping prevent issues like truncated writes on large files. This reduces waiting time and improves the flow of iterative development. + +Learn more about [Fast Edits](/features/fast-edits). + +--- + +## API Key Balances + +You can now conveniently check your current credit balance for OpenRouter and Requesty directly within the Roo Code API provider settings. This helps monitor usage without leaving the editor. +Roo Code v3.11 Feature Overview + +--- + +## Project-Level MCP Config + +MCP (Mode Communication Protocol) server configurations can now be defined at the project or workspace level using a `.roo/mcp.json` file within your project's root directory. This allows for tailored MCP setups specific to different projects and takes precedence over global MCP settings. You can manage this file directly from the MCP settings view. (Thanks aheizi!) +Project-level MCP Config file example + +Learn more about [Editing MCP Settings Files](/features/mcp/using-mcp-in-roo#editing-mcp-settings-files). + +--- + +## Improved Gemini Support + +Integration with Google's Gemini models has been significantly enhanced for better reliability and capability: + +- **Smarter Retry Logic:** Roo Code now intelligently handles transient Gemini API issues. It detects rate limits (HTTP 429), uses precise retry timing provided by Gemini's error responses, applies exponential backoff for other errors, and shows a countdown timer for clarity. This results in fewer disruptions and a smoother workflow, especially during peak API usage. +- **Improved Character Escaping:** Issues with character escaping have been resolved, ensuring proper handling of special characters in code blocks, complex JSON, and non-ASCII text. This leads to more accurate code generation and fewer syntax errors in responses. +- **Gemini 2.5 Pro Support:** Added support for the powerful Gemini 2.5 Pro model through the GCP Vertex AI provider configuration, offering larger context windows and output capacity for more complex tasks. (Thanks nbihan-mediware!) + +--- + +## Import/Export Settings + +Export, Import, and Reset buttons in Roo Code settings + +You can now export your Roo Code settings (API Provider Profiles, Global Settings) to a `roo-code-settings.json` file for backup or sharing, and import settings from such a file to merge configurations. + +Find these options in the main Roo Code settings view. Learn more about [Import/Export/Reset Settings](/features/settings-management). + +--- + +## Pin and Sort API Profiles + +API Profile dropdown showing pinning and sorting options + +The API configuration dropdown in the settings now supports pinning your favorite profiles to the top and sorting the list for easier navigation, especially when managing multiple profiles. (Thanks jwcraig!) + +Learn more about [Pinning and Sorting Profiles](/features/api-configuration-profiles#pinning-and-sorting-profiles). + +--- + +## Editable Suggested Answers + +When Roo asks a follow-up question using the [`ask_followup_question`](/advanced-usage/available-tools/ask-followup-question) tool, the suggested answers provided can now be edited directly in the chat interface before you accept one. This allows for quick modifications without retyping the entire response. (Thanks samhvw8!) + +Learn more about [Interacting with Suggestions](/features/suggested-responses#interacting-with-suggestions). + +Chat input box showing text copied from a suggested response, ready for editing + +--- + +## General Improvements and Bug Fixes + +- **Partial File Reads:** Enhancements have been made to how Roo Code handles reading portions of large files. (Thanks KJ7LNW!) +- **Tool-Calling Logic Refactor:** Significant internal refactoring of the tool-calling mechanism makes the codebase easier to maintain and extend. (Thanks diarmidmackenzie, bramburn, KJ7LNW, and others!) +- **"Add to Context" Action:** This code action is now prioritized in the menu and includes the relevant line numbers for better context. (Thanks samhvw8!) +- **External Activation Command:** A new command allows other VS Code extensions to programmatically activate or interface with Roo Code. (Thanks gtaylor!) +- **Browser Tool:** General improvements and fixes have been made to the browser interaction tool. (Thanks afshawnlotfi!) +- **Partial Read Info:** Information about partial file reads (when only a segment of a large file is processed) is now displayed in the chat interface. +- **Settings Link:** A direct link to the relevant settings page has been added to the auto-approve action toolbar for quicker access. +- **Provider Docs Links:** Links to the official documentation for various model providers have been added within the API configuration options. +- **Custom OpenAI-Compatible Models:** Support added for using custom `o3-mini-` models with OpenAI-compatible providers. (Thanks snoyiatk!) +- Correctly post state to webview when the current task is cleared (thanks wkordalski!). +- Fixed unit tests to run properly on Windows (thanks StevenTCramer!). +- Fixed issue with line number stripping for deletions in `apply_diff`. +- Fixed issue where prompts and settings tabs were not scrollable when accessed from dropdown menus. +- Fixed prompt enhancement for Bedrock (thanks Smartsheet-JB-Brown!). +- Fixed off-by-one error in tree-sitter line numbers. +- Tree-sitter enhancements: TSX, TypeScript, JSON, and Markdown support (thanks KJ7LNW!). +- Updated history selection mode button spacing (thanks kyle-apex!). +- Limited dropdown menu height to 80% of the viewport (thanks axmo!). +- Enabled model select when api fails (thanks kyle-apex!). +- Updated AWS region dropdown menu to the most recent data (thanks Smartsheet-JB-Brown!). +- Made extension icon more visible in different themes. +- Updated dependencies via `npm audit fix` (thanks PeterDaveHello!). +- Allowed processes to access the Roo Code API via a unix socket. +- Improved zh-TW Traditional Chinese translations (thanks PeterDaveHello!). +- Added support for Azure AI Inference Service with DeepSeek-V3 model (thanks thomasjeung!). +- Removed the experimental unified diff. +- Supported @-mentions of files with spaces in their names. (Thanks samhvw8!) +- The `list_code_definition_names` tool now supports individual files. (Thanks KJ7LNW!) +- File @-mentions now preserve language-specific characters. (Thanks aheizi!) +- Fixed Gemini command escaping. +- Fixed switching profiles to ensure only the selected profile is switched (thanks feifei325!). diff --git a/apps/docs/docs/update-notes/v3.12.0.md b/apps/docs/docs/update-notes/v3.12.0.md new file mode 100644 index 00000000000..400c52be713 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.12.0.md @@ -0,0 +1,74 @@ +--- +description: Roo Code 3.12 adds xAI provider support, profile-specific diff settings, keyboard shortcuts for input, and search in dropdowns. +keywords: + - roo code + - v3.12 + - release notes + - xAI provider + - diff settings + - keyboard shortcuts + - OpenAI models + - UI improvements +--- + +# Roo Code 3.12 Release Notes (2025-04-16) + +This release introduces xAI provider support, improves diff editing, enhances UI with search capabilities, adds OpenAI model support, and includes various usability improvements and bug fixes. + +--- + +## Provider Updates + +- Added [xAI provider](/providers/xai) and exposed reasoning effort options for Grok on OpenRouter. (thanks Cline!) +- Added support for OpenAI `o3` & `4o-mini` models. (thanks PeterDaveHello!) + +--- + +## Profile-Specific Diff Settings + +- **Profile-Specific Settings**: Diff editing configuration now works on a per-profile basis, giving you greater control over how code edits work with different providers. Learn more about [API Configuration Profiles](/features/api-configuration-profiles). + +### How It Works + +- **Multiple Profile Support**: Each profile stores its own diff editing preferences +- **Flexible Configuration**: Switch between profiles to instantly change how diffs are handled +- **Provider-Specific Control**: Use different diff strategies for different code providers +- **Isolated Settings**: Changes in one profile don't affect others + +For example, you can create a profile for one provider with strict whitespace handling, and another profile with more relaxed rules. When you switch profiles, the system automatically applies the appropriate diff editing configuration. + +--- + +## Keyboard Shortcuts + +### Keyboard Shortcuts for Input Acceptance + +Added the `roo.acceptInput` command to allow users to accept input or suggestions using keyboard shortcuts instead of mouse clicks. (thanks axkirillov!) This feature: + +#### Key Benefits + +- **Keyboard-Driven Interface**: Submit text or select the primary suggestion button without mouse interaction +- **Improved Accessibility**: Essential for users with mobility limitations or those who experience discomfort with mouse usage +- **Vim/Neovim Compatibility**: Supports transitions for developers coming from keyboard-centric environments +- **Workflow Efficiency**: Reduces context switching between keyboard and mouse during development tasks + +For detailed setup and usage instructions, see our new [Keyboard Shortcuts](/features/keyboard-shortcuts) documentation page. + +--- + +## QOL Improvements + +- Improved pre-diff string normalization for better editing reliability, especially with whitespace-sensitive languages. +- Made checkpoints faster and more reliable for smoother project state management. +- Added a search bar to mode and profile select dropdowns for easier navigation. (thanks samhvw8!) +- Improved file/folder context mention UI for better usability. (thanks elianiva!) +- Added telemetry for code action usage, prompt enhancement usage, and consecutive mistake errors to improve product stability. +- Enhanced diff error telemetry for better troubleshooting capabilities. +- Suppressed zero cost values in the task header for cleaner UI. (thanks do-it!) + +--- + +## Bug Fixes + +- Fixed a bug affecting the Edit button visibility in the select dropdowns. +- Made JSON parsing safer to avoid crashing the webview on bad input. diff --git a/apps/docs/docs/update-notes/v3.12.1.md b/apps/docs/docs/update-notes/v3.12.1.md new file mode 100644 index 00000000000..81f36753476 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.12.1.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.12.1 fixes a bug affecting the Edit button visibility in select dropdowns for improved user interface reliability. +keywords: + - roo code + - v3.12.1 + - release notes + - UI fix + - edit button + - dropdown visibility + - bug fix +--- + +# Roo Code 3.12.1 Release Notes (2025-04-16) + +This patch release addresses a UI visibility issue. + +--- + +## Bug Fixes + +- Fixed a bug affecting the Edit button visibility in the select dropdowns. diff --git a/apps/docs/docs/update-notes/v3.12.2.md b/apps/docs/docs/update-notes/v3.12.2.md new file mode 100644 index 00000000000..cc84786fd3c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.12.2.md @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.12.2 adds support for OpenAI o3 and 4o-mini models, improves file/folder context UI, and enhances diff error telemetry. +keywords: + - roo code + - v3.12.2 + - release notes + - OpenAI o3 + - 4o-mini + - UI improvements + - telemetry + - context mentions +--- + +# Roo Code 3.12.2 Release Notes (2025-04-16) + +This patch release adds OpenAI model support and improves UI and telemetry aspects. + +--- + +## Provider Updates + +- Added support for OpenAI `o3` & `4o-mini` models. (thanks PeterDaveHello!) + +--- + +## Improvements + +- Improved file/folder context mention UI for better usability. (thanks elianiva!) +- Enhanced diff error telemetry for better troubleshooting capabilities. diff --git a/apps/docs/docs/update-notes/v3.12.3.md b/apps/docs/docs/update-notes/v3.12.3.md new file mode 100644 index 00000000000..de808b23c28 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.12.3.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.12.3 adds drag-and-drop tabs to chat, fixes Gemini character escaping, and ensures slash commands work correctly. +keywords: + - roo code + - v3.12.3 + - release notes + - drag and drop + - Gemini fixes + - slash commands + - character escaping +--- + +# Roo Code 3.12.3 Release Notes (2025-04-17) + +This release includes fixes for Gemini diff edits and slash commands, along with a new drag-and-drop feature. + +--- + +## Bug Fixes + +- Fixed character escaping issues in Gemini diff edits. +- Ensured slash commands only fire at the beginning of the chat box (thanks logosstone!). + +--- + +## QOL Improvements + +- Added support for dragging and dropping tabs into the chat box (thanks NyxJae!). diff --git a/apps/docs/docs/update-notes/v3.12.md b/apps/docs/docs/update-notes/v3.12.md new file mode 100644 index 00000000000..63978daa15e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.12.md @@ -0,0 +1,42 @@ +--- +description: This release cycle introduces the xAI provider, Grok reasoning options, diff editing enhancements, faster checkpoints, UI improvements like search bars in dropdowns, and various bug fixes. +--- + +# Roo Code 3.12 Release Notes (2025-04-17) + +This release cycle introduces the xAI provider, Grok reasoning options, diff editing enhancements, faster checkpoints, UI improvements like search bars in dropdowns, and various bug fixes. + +--- + +## Provider Updates + +- Added xAI provider and exposed reasoning effort options for Grok on OpenRouter (thanks Cline!). +- Added OpenAI o3 & 4o-mini (thanks PeterDaveHello!). + +--- + +## QOL Improvements + +- Made diff editing config per-profile and improved pre-diff string normalization. +- Made checkpoints faster and more reliable. +- Added a search bar to mode and profile select dropdowns (thanks samhvw8!). +- Suppressed zero cost values in the task header (thanks do-it!). +- Allowed users to bind a keyboard shortcut for accepting suggestions or input in the chat view (thanks axkirillov!). +- Improved file/folder context mention UI (thanks elianiva!). +- Added support for dragging and dropping tabs into the chat box (thanks NyxJae!). + +--- + +## Bug Fixes + +- Fixed a bug with Edit button visibility in the select dropdowns. +- Fixed character escaping issues in Gemini diff edits. +- Ensured slash commands only fire at the beginning of the chat box (thanks logosstone!). + +--- + +## Misc Improvements + +- Added telemetry for code action usage, prompt enhancement usage, and consecutive mistake errors. +- Made JSON parsing safer to avoid crashing the webview on bad input. +- Improved diff error telemetry. diff --git a/apps/docs/docs/update-notes/v3.13.0.md b/apps/docs/docs/update-notes/v3.13.0.md new file mode 100644 index 00000000000..784d03ac591 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.13.0.md @@ -0,0 +1,45 @@ +--- +description: Roo Code 3.13.0 adds Gemini 2.5 Flash Preview, new append_to_file tool, UI improvements, and fixes for Bedrock image support. +keywords: + - roo code + - v3.13.0 + - release notes + - Gemini 2.5 Flash + - append_to_file + - UI improvements + - Bedrock + - bug fixes +--- + +# Roo Code 3.13.0 Release Notes (2025-04-17) + +This release brings significant UI improvements across multiple views, adds the new append_to_file tool, introduces Gemini 2.5 Flash Preview support, and includes important bug fixes. + +--- + +## Gemini 2.5 Flash Preview + +- Add Gemini 2.5 Flash Preview to Gemini and Vertex providers (thanks nbihan-mediware!) + +--- + +## UI Improvements + +- UI improvements to task header, chat view, history preview, and welcome view (thanks sachasayan!) + +--- + +## New Tool: append_to_file + +- Added new append_to_file tool for appending content to files (thanks samhvw8!) + - Efficiently add content to the end of existing files or create new files + - Ideal for logs, data records, and incremental file building + - Includes automatic directory creation and interactive approval via diff view + - Complements existing file manipulation tools with specialized append functionality + +--- + +## Bug Fixes + +- Fix image support in Bedrock (thanks Smartsheet-JB-Brown!) +- Make diff edits more resilient to models passing in incorrect parameters diff --git a/apps/docs/docs/update-notes/v3.13.1.md b/apps/docs/docs/update-notes/v3.13.1.md new file mode 100644 index 00000000000..4b942991e47 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.13.1.md @@ -0,0 +1,41 @@ +--- +description: Roo Code 3.13.1 adds Gemini 2.5 Flash thinking mode support, improves auto-approval toggle UI, and fixes Windows file path issues. +keywords: + - roo code + - v3.13.1 + - release notes + - Gemini thinking mode + - auto-approval UI + - Windows fixes + - telemetry +--- + +# Roo Code 3.13.1 Release Notes (2025-04-18) + +This release includes Gemini 2.5 Flash thinking mode support, UI improvements for auto-approval toggles, and several bug fixes. + +--- + +## Gemini 2.5 Flash Thinking Mode + +- Support Gemini 2.5 Flash thinking mode (thanks monotykamary!) + +--- + +## UI Improvements + +- Make auto-approval toggle on/off states more obvious (thanks sachasayan!) + +--- + +## Bug Fixes + +- Fix the path of files dragging into the chat textarea on Windows (thanks NyxJae!) + - Resolves path normalization issues specific to Windows environments + - Ensures consistent file handling across platforms + +--- + +## Telemetry Enhancements + +- Add telemetry for shell integration errors diff --git a/apps/docs/docs/update-notes/v3.13.2.md b/apps/docs/docs/update-notes/v3.13.2.md new file mode 100644 index 00000000000..131d55313cf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.13.2.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.13.2 allows users to specify custom URLs for the Gemini provider, enabling more flexible API endpoint configuration. +keywords: + - roo code + - v3.13.2 + - release notes + - Gemini provider + - custom URLs + - API configuration + - flexibility +--- + +# Roo Code 3.13.2 Release Notes (2025-04-18) + +This release adds the ability to specify custom URLs for the Gemini provider. + +--- + +## Improvements + +- Allow custom URLs for Gemini provider. diff --git a/apps/docs/docs/update-notes/v3.13.md b/apps/docs/docs/update-notes/v3.13.md new file mode 100644 index 00000000000..415cfcad891 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.13.md @@ -0,0 +1,42 @@ +--- +description: Roo Code v3.13 introduces a redesigned chat interface with enhanced usability, including a new layout for multi-file context, streamlined access to the `/open` command, and improved iconography for better visual clarity. +--- + +# Roo Code 3.13 Release Notes (2025-04-18) + +This release cycle brings UI enhancements, a new file operation tool, expanded Gemini model support including Flash and custom URLs, and various bug fixes. + +--- + +## Provider Updates + +- Added support for Gemini 2.5 Flash Preview to Gemini and Vertex providers (thanks @nbihan-mediware!). +- Enabled Gemini 2.5 Flash thinking mode (thanks @monotykamary). +- Allowed custom URLs for the Gemini provider. + +--- + +## QOL Improvements + +- UI improvements to task header, chat view, history preview, and welcome view (thanks @sachasayan!). +- Made auto-approval toggle on/off states more obvious (thanks @sachasayan). + +--- + +## New Tools + +- Added the `append_to_file` tool for appending content to files (thanks @samhvw8!). + +--- + +## Bug Fixes + +- Fixed image support in Bedrock (thanks @Smartsheet-JB-Brown!). +- Made diff edits more resilient to models passing in incorrect parameters. +- Fixed the path of files dragging into the chat textarea on Windows (thanks @NyxJae). + +--- + +## Misc Improvements + +- Added telemetry for shell integration errors. diff --git a/apps/docs/docs/update-notes/v3.14.0.md b/apps/docs/docs/update-notes/v3.14.0.md new file mode 100644 index 00000000000..531fd422ef6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.14.0.md @@ -0,0 +1,79 @@ +--- +description: This release introduces Gemini prompt caching, improves several tools, and includes numerous bug fixes and enhancements across the extension. +--- + +# Roo Code 3.14.0 Release Notes (2025-04-23) + +This release introduces Gemini prompt caching, improves several tools, and includes numerous bug fixes and enhancements across the extension. + +--- + +## Apply Diff and Other Major File Edit Improvements + +- Improve [`apply_diff`](/advanced-usage/available-tools/apply-diff) to work better with **Google Gemini 2.5** and other models +- Automatically close files opened by edit tools (`apply_diff`, `insert_content`, `search_and_replace`, `write_to_file`) after changes are approved. This prevents cluttering the editor with files opened by Roo and helps clarify context by only showing files intentionally opened by the user. +- Added the `search_and_replace` tool. This tool finds and replaces text within a file using literal strings or regex patterns, optionally within specific line ranges (thanks samhvw8!). +- Added the `insert_content` tool (now retired). This tool added new lines into a file at a specific location or the end, without modifying existing content (thanks samhvw8!). +- Deprecated the `append_to_file` tool in favor of `insert_content` (use `line: 0`). +- Correctly revert changes and suggest alternative tools when [`write_to_file`](/advanced-usage/available-tools/write-to-file) fails on a missing line count +- Better progress indicator for [`apply_diff`](/advanced-usage/available-tools/apply-diff) tools (thanks qdaxb!) +- Ensure user feedback is added to conversation history even during API errors (thanks System233!). +- Prevent redundant 'TASK RESUMPTION' prompts from appearing when resuming a task (thanks System233!). +- Fix issue where error messages sometimes didn't display after cancelling an API request (thanks System233!). +- Preserve editor state and prevent tab unpinning during diffs (thanks seedlord!) + +--- + +## Context Mentions + +- Use material icons for files and folders in mentions (thanks elianiva!) +- Improvements to icon rendering on Linux (thanks elianiva!) +- Better handling of `aftercursor` content in context mentions (thanks elianiva!) + + Warning indicator for active system prompt override + +--- + +## Footgun Prompting + +- **Context Variables:** Added the ability to interpolate context variables (`{{workspace}}`, `{{mode}}`, `{{language}}`, `{{shell}}`, `{{operatingSystem}}`) into custom system prompt override files, allowing for more dynamic prompts (thanks daniel-lxs!). See the [Footgun Prompting documentation](/advanced-usage/footgun-prompting#using-context-variables) for details. +- **Override Warning:** Roo Code now displays a warning indicator in the chat input when a system prompt override is active for the current mode. + + Warning indicator for active system prompt override + +--- + +## MCP Tweaks + +- Support injecting environment variables in MCP config (thanks NamesMT!) +- Fix MCP hub error when dragging extension to another sidebar +- Improve display of long MCP tool arguments + +--- + +## Provider Updates + +- Allow Amazon Bedrock Marketplace ARNs (thanks mlopezr!) +- Add prompt caching for `gemini-2.5-pro-preview-03-25` in the Gemini provider (Vertex and OpenRouter coming soon!) +- Improvements to Requesty model list fetching (thanks dtrugman!) +- Make the VS Code LM provider show the correct model information (thanks QuinsZouls!) +- Remove unnecessary calculation from VS Code LM provider (thanks d-oit!) + +--- + +## Bug Fixes and General QOL Improvements and Misc. + +- Make the [`list_files`](/advanced-usage/available-tools/list-files) tool more efficient and smarter about excluding directories like `.git/` +- Performance improvements to task size calculations +- Give better loading feedback on chat rows (thanks elianiva!) +- Use a more sensible task export icon +- Fix file drag and drop on Windows and when using SSH tunnels (thanks NyxJae!) +- Fix interpolation bug in the “add to context” code action (thanks elianiva!) +- Fix redundant ‘TASK RESUMPTION’ prompts (thanks System233!) +- Fix bug opening files when editor has no workspace root +- Don’t immediately show a model ID error when changing API providers +- Fixes to make the `focusInput` command more reliable (thanks hongzio!) +- Fix terminal carriage return handling for correct progress bar display (thanks Yikai-Liao!) +- Track tool use errors in evals +- Use path aliases in webview source files +- Better handling of FakeAI “controller” object (thanks wkordalski) diff --git a/apps/docs/docs/update-notes/v3.14.1.md b/apps/docs/docs/update-notes/v3.14.1.md new file mode 100644 index 00000000000..22eeebf16f9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.14.1.md @@ -0,0 +1,13 @@ +--- +description: This release temporarily disables Gemini caching due to reported issues. +--- + +# Roo Code 3.14.1 Release Notes (2025-04-24) + +This release temporarily disables Gemini caching due to reported issues. + +--- + +## Bug Fixes + +- Disable Gemini caching while we investigate issues reported by the community. diff --git a/apps/docs/docs/update-notes/v3.14.2.md b/apps/docs/docs/update-notes/v3.14.2.md new file mode 100644 index 00000000000..4aa90fea92d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.14.2.md @@ -0,0 +1,38 @@ +--- +description: Roo Code 3.14.2 introduces Gemini prompt caching for faster responses, terminal improvements, and adds Russian language support. +keywords: + - roo code + - v3.14.2 + - release notes + - Gemini caching + - prompt caching + - Russian language + - terminal improvements +--- + +# Roo Code 3.14.2 Release Notes (2025-04-24) + +This release introduces prompt caching for Gemini, user control over caching for specific models on OpenRouter, improved terminal output handling, and adds Russian language support. + +--- + +## Gemini 2.5 Caching is HERE! + +- **Prompt Caching for Gemini Models:** Prompt caching is now available for the `Gemini 1.5 Flash`, `Gemini 2.0 Flash`, and `Gemini 2.5 Pro Preview` models when using the [Requesty](/providers/requesty), [Google Gemini](/providers/gemini), or [OpenRouter](/providers/openrouter) providers (Vertex provider and `Gemini 2.5 Flash Preview` caching coming soon!) +- **Manual Caching Toggle (Google Gemini & OpenRouter Only):** + - For the **[Google Gemini](/providers/gemini)** and **[OpenRouter](/providers/openrouter)** providers specifically, a new checkbox allows you to manually enable prompt caching for supported Gemini 2.5 models. + Prompt Caching Checkbox in Provider Settings + - **Why the checkbox?** This setting is provided as a temporary workaround for potential response delays sometimes observed with Google's caching mechanism when accessed via these two providers. Caching is _not_ enabled by default for them. + - **Requesty:** Caching remains automatic for supported models via Requesty. + +--- + +## Terminal Improvements + +- Improved handling of terminal output containing backspace characters for cleaner display (thanks KJ7LNW!). + +--- + +## Internationalization: Russian Language Added + +- Added Russian language support (Спасибо asychin!). diff --git a/apps/docs/docs/update-notes/v3.14.3.md b/apps/docs/docs/update-notes/v3.14.3.md new file mode 100644 index 00000000000..1c0e22d816a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.14.3.md @@ -0,0 +1,41 @@ +--- +description: Roo Code 3.14.3 adds Boomerang Orchestrator as default mode, features a new minimalist home screen, and improves token estimation. +keywords: + - roo code + - v3.14.3 + - release notes + - Boomerang Orchestrator + - minimalist UI + - performance + - token estimation +--- + +# Roo Code 3.14.3 Release Notes (2025-04-25) + +This patch release introduces the Boomerang Orchestrator mode, UI improvements, performance enhancements, and several bug fixes. + +--- + +## Boomerang is now default! + +- Added Boomerang Orchestrator as a built-in mode. + Boomerang Orchestrator Mode + +--- + +## Sexy new minimalist look + +- Improved the home screen user interface for a better initial experience. + New Minimalist Home Screen + +--- + +## QOL Updates and Bug Fixes + +- Made token count estimation more efficient, reducing occurrences of gray screens during processing. +- Reverted the change to automatically close files after edits. This feature will be revisited once diagnostic integration issues are resolved. +- Cleaned up the internal settings data model for better maintainability. +- Optimized API calls by omitting reasoning parameters for models that do not support reasoning. +- Corrected word wrapping in Roo message titles (thanks zhangtony239!). +- Updated the default model ID for the Unbound provider from `claude-3.5-sonnet` to `claude-3.7-sonnet` (thanks pugazhendhi-m!). +- Improved clarity in the documentation regarding adding custom settings (thanks shariqriazz!). diff --git a/apps/docs/docs/update-notes/v3.14.md b/apps/docs/docs/update-notes/v3.14.md new file mode 100644 index 00000000000..de0caa974a0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.14.md @@ -0,0 +1,128 @@ +--- +description: Roo Code 3.14 brings Gemini caching, Boomerang Orchestrator mode, improved file editing tools, and a new minimalist UI design. +keywords: + - roo code + - v3.14 + - release notes + - Boomerang Orchestrator + - Gemini caching + - file editing + - apply_diff + - minimalist UI +--- + +# Roo Code 3.14 Combined + +--- + +## Gemini 2.5 Caching is HERE! + +- **Prompt Caching for Gemini Models:** Prompt caching is now available for the `Gemini 1.5 Flash`, `Gemini 2.0 Flash`, and `Gemini 2.5 Pro Preview` models when using the [Requesty](/providers/requesty), [Google Gemini](/providers/gemini), or [OpenRouter](/providers/openrouter) providers (Vertex provider and `Gemini 2.5 Flash Preview` caching coming soon!) +- **Manual Caching Toggle (Google Gemini & OpenRouter Only):** + - For the **[Google Gemini](/providers/gemini)** and **[OpenRouter](/providers/openrouter)** providers specifically, a new checkbox allows you to manually enable prompt caching for supported Gemini 2.5 models. + Prompt Caching Checkbox in Provider Settings + - **Why the checkbox?** This setting is provided as a temporary workaround for potential response delays sometimes observed with Google's caching mechanism when accessed via these two providers. Caching is _not_ enabled by default for them. + - **Requesty:** Caching remains automatic for supported models via Requesty. + +--- + +## Boomerang Orchestrator Mode + +- Added Boomerang Orchestrator as a built-in mode. + Boomerang Orchestrator Mode + +--- + +## Sexy new minimalist look + +- Improved the home screen user interface for a better initial experience. + New Minimalist Home Screen + +--- + +## Apply Diff and Other Major File Edit Improvements + +- Improve [`apply_diff`](/advanced-usage/available-tools/apply-diff) to work better with **Google Gemini 2.5** and other models +- Automatically close files opened by edit tools (`apply_diff`, `insert_content`, `search_and_replace`, `write_to_file`) after changes are approved. This prevents cluttering the editor with files opened by Roo and helps clarify context by only showing files intentionally opened by the user. +- Added the `search_and_replace` tool. This tool finds and replaces text within a file using literal strings or regex patterns, optionally within specific line ranges (thanks samhvw8!). +- Added the `insert_content` tool (now retired). This tool added new lines into a file at a specific location or the end, without modifying existing content (thanks samhvw8!). +- Deprecated the `append_to_file` tool in favor of `insert_content` (use `line: 0`). +- Correctly revert changes and suggest alternative tools when [`write_to_file`](/advanced-usage/available-tools/write-to-file) fails on a missing line count +- Better progress indicator for [`apply_diff`](/advanced-usage/available-tools/apply-diff) tools (thanks qdaxb!) +- Ensure user feedback is added to conversation history even during API errors (thanks System233!). +- Prevent redundant 'TASK RESUMPTION' prompts from appearing when resuming a task (thanks System233!). +- Fix issue where error messages sometimes didn't display after cancelling an API request (thanks System233!). + +--- + +## Terminal Fixes + +- Improved handling of terminal output containing backspace characters for cleaner display (thanks KJ7LNW!). +- Fix terminal carriage return handling for correct progress bar display (thanks Yikai-Liao!) + +--- + +## Internationalization: Russian Language Added + +- Added Russian language support (Спасибо asychin!). + +--- + +## Context Mentions + +- Use material icons for files and folders in mentions (thanks elianiva!) +- Improvements to icon rendering on Linux (thanks elianiva!) +- Better handling of `aftercursor` content in context mentions (thanks elianiva!) + +## Context Mentions with Material Icons + +## Footgun Prompting + +- **Context Variables:** Added the ability to interpolate context variables (`{{workspace}}`, `{{mode}}`, `{{language}}`, `{{shell}}`, `{{operatingSystem}}`) into custom system prompt override files, allowing for more dynamic prompts (thanks daniel-lxs!). See the [Footgun Prompting documentation](/advanced-usage/footgun-prompting#using-context-variables) for details. +- **Override Warning:** Roo Code now displays a warning indicator in the chat input when a system prompt override is active for the current mode. + + Warning indicator for active system prompt override + +--- + +## MCP Tweaks + +- Support injecting environment variables in MCP config (thanks NamesMT!) +- Fix MCP hub error when dragging extension to another sidebar +- Improve display of long MCP tool arguments + +--- + +## Provider Updates + +- Allow Amazon Bedrock Marketplace ARNs (thanks mlopezr!) +- Improvements to Requesty model list fetching (thanks dtrugman!) +- Make the VS Code LM provider show the correct model information (thanks QuinsZouls!) +- Remove unnecessary calculation from VS Code LM provider (thanks d-oit!) +- Updated the default model ID for the Unbound provider from `claude-3.5-sonnet` to `claude-3.7-sonnet` (thanks pugazhendhi-m!). + +--- + +## Bug Fixes and General QOL Improvements and Misc. + +- Make the [`list_files`](/advanced-usage/available-tools/list-files) tool more efficient and smarter about excluding directories like `.git/` +- Performance improvements to task size calculations, including more efficient token count estimation to reduce gray screens. +- Give better loading feedback on chat rows (thanks elianiva!) +- Use a more sensible task export icon +- Fix file drag and drop on Windows and when using SSH tunnels (thanks NyxJae!) +- Fix interpolation bug in the “add to context” code action (thanks elianiva!) +- Fix redundant ‘TASK RESUMPTION’ prompts (thanks System233!) +- Fix bug opening files when editor has no workspace root +- Don’t immediately show a model ID error when changing API providers +- Fixes to make the `focusInput` command more reliable (thanks hongzio!) +- Track tool use errors in evals +- Use path aliases in webview source files +- Better handling of FakeAI “controller” object (thanks wkordalski) +- Ensure user feedback is added to conversation history even during API errors (thanks System233!). +- Prevent redundant 'TASK RESUMPTION' prompts from appearing when resuming a task (thanks System233!). +- Fix issue where error messages sometimes didn't display after cancelling an API request (thanks System233!). +- Preserve editor state and prevent tab unpinning during diffs (thanks seedlord!) +- Cleaned up the internal settings data model for better maintainability. +- Optimized API calls by omitting reasoning parameters for models that do not support reasoning. +- Corrected word wrapping in Roo message titles (thanks zhangtony239!). +- Improved clarity in the documentation regarding adding custom settings (thanks shariqriazz!). diff --git a/apps/docs/docs/update-notes/v3.15.0.md b/apps/docs/docs/update-notes/v3.15.0.md new file mode 100644 index 00000000000..f3065ea1250 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.0.md @@ -0,0 +1,67 @@ +--- +description: This release introduces prompt caching for Google Vertex, improved terminal command handling, UI/UX enhancements, and several other improvements and bug fixes. +--- + +# Roo Code 3.15.0 Release Notes (2025-04-30) + +This release introduces prompt caching for Google Vertex, improved terminal command handling, UI/UX enhancements, and several other improvements and bug fixes. + +--- + +## Prompt Caching for Google Vertex + +- Added prompt caching capabilities to the Google Vertex provider for potentially faster and more cost-effective responses (thanks ashktn). + +--- + +## Improved Terminal Command Handling + +- Implemented a for executing terminal commands if VSCode terminal shell integration fails. +- Added the ability to stop commands directly from the chat UI. + + + +--- + +## Settings Import/Export + +- Roo Code settings can now be imported directly from the welcome screen (thanks julionav). + + + +- Fixed importing & exporting of custom modes (thanks julionav). + +--- + +## QOL Improvements + +- Improved the UI/UX of code snippets in the chat (thanks KJ7LNW). +- Adjusted chat view padding to accommodate small width layouts (thanks zhangtony239). +- Simplified and streamlined Roo Code's [quick actions](/features/code-actions). + + + +- Improved the auto-approve toggle buttons for some high-contrast VSCode themes. +- Offloaded expensive count token operations to a web worker for better performance (thanks samhvw8). +- Improved support for multi-root workspaces (thanks snoyiatk). +- Improved the performance of mode switching (thanks dlab-anton). + +--- + +## Bug Fixes + +- Fixed file mentions for filenames containing spaces. +- Fixed importing & exporting of custom modes (thanks julionav). + +--- + +## Provider Updates + +- **Google Vertex:** Added prompt caching (thanks ashktn). +- **OpenAI Compatible:** Added a reasoning effort setting (thanks mr-ryan-james). + +--- + +## Misc Improvements + +- Removed unused types (thanks wkordalski). diff --git a/apps/docs/docs/update-notes/v3.15.1.md b/apps/docs/docs/update-notes/v3.15.1.md new file mode 100644 index 00000000000..00f68e54c0b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.1.md @@ -0,0 +1,21 @@ +--- +description: This patch release includes several bug fixes and quality-of-life improvements. +--- + +# Roo Code 3.15.1 Release Notes (2025-04-30) + +This patch release includes several bug fixes and quality-of-life improvements. + +--- + +## Bug Fixes + +- Made retries respect the global auto-approve checkbox. +- Fixed a selection mode bug in the history view (thanks jr!). +- Fixed the new integrated terminal to capture stderr in execa-spawned processes. + +--- + +## QOL Improvements + +- Play notification sound (when enabled) only when action is needed from the user (thanks olearycrew!). diff --git a/apps/docs/docs/update-notes/v3.15.2.md b/apps/docs/docs/update-notes/v3.15.2.md new file mode 100644 index 00000000000..c96fb79e22f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.2.md @@ -0,0 +1,69 @@ +--- +description: Roo Code 3.15.2 enhances Boomerang Orchestrator for secure task automation, improves Mermaid rendering, and adds OpenAI custom URLs. +keywords: + - roo code + - v3.15.2 + - release notes + - Boomerang Orchestrator + - Mermaid diagrams + - terminal performance + - OpenAI custom URL +--- + +# Roo Code 3.15.2 Release Notes (2025-05-02) + +This release updates the Boomerang Orchestrator mode, improves Mermaid diagram rendering and error handling, enhances terminal performance, adds provider configuration options, and includes various UI fixes. + +--- + +## Boomerang Orchestrator Mode + +- Enhanced [Orchestrator (Boomerang) mode](/features/boomerang-tasks) strictly orchestrates tasks. +- No longer reads, writes, executes commands, or utilizes MCP servers; offloads these tasks to other modes. +- Provides more predictable and secure task automation. + +--- + +## Inline Mermaid Rendering + +- Made troubleshooting easier with clearer, multi-language error messages instead of displaying the invalid Mermaid markdown inline. +- Added a convenient button to copy the diagram code for fixing or sharing. + + Mermaid diagram error message with copy code button + +--- + +## Terminal Performance + +- **Improved Terminal Performance and Responsiveness** + - Made the integrated terminal significantly faster and smoother. + - Improved the reliability of stopping commands, especially for noisy processes. + +--- + +## Provider + +- **Added Custom OpenAI API Base URL Support** + + - Enabled users in restricted regions or with custom infrastructure to connect to OpenAI services. + - Added a new configuration option in settings (thanks gongzhongqiang!). + +- **Added Custom Header Support for OpenAI-Compatible Providers** + - Increased flexibility by allowing custom headers to be added, edited, or removed directly in settings. + - Simplifies configuration for specific provider requirements (thanks mrubens!). + +--- + +## Misc UI Improvements + +- **Fixed Chat Input Height Instability** + - Resolved an issue where the chat input box height could jump unexpectedly when resizing the Roo Code window. + - Provides a more stable and less distracting chat experience (thanks zhangtony239!). +- **Corrected Chat Layout Padding Issues** + - Fixed padding calculations that caused awkward spacing or visual glitches when resizing the window. + - Ensures a cleaner and more visually consistent interface at any size (thanks zhangtony239!). +- **Refined Inline Code Styling in Chat** + - Made technical discussions clearer and more comfortable to read with a smaller font and subtler border. + - Reduces visual clutter (thanks dicharkan!). +- **Clarified Tool Group Display in Modes View** + - Explicitly displays 'None' when a mode has no associated tool groups, avoiding ambiguity. diff --git a/apps/docs/docs/update-notes/v3.15.3.md b/apps/docs/docs/update-notes/v3.15.3.md new file mode 100644 index 00000000000..37218c002ce --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.3.md @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.15.3 fixes terminal empty command bug, improves process killing reliability, and optimizes Gemini caching for OpenRouter. +keywords: + - roo code + - v3.15.3 + - release notes + - terminal fixes + - performance improvements + - Gemini caching + - chat view optimization +--- + +# Roo Code 3.15.3 Release Notes (2025-05-02) + +This release includes terminal fixes and performance improvements. + +--- + +## Bug Fixes + +- Terminal: Fix empty command bug. +- Terminal: More robust process killing. + +--- + +## Misc Improvements + +- Optimize Gemini prompt caching for OpenRouter. +- Chat view performance improvements. diff --git a/apps/docs/docs/update-notes/v3.15.4.md b/apps/docs/docs/update-notes/v3.15.4.md new file mode 100644 index 00000000000..9666157adfe --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.4.md @@ -0,0 +1,19 @@ +--- +description: This release includes minor bug fixes and performance improvements. +--- + +# Roo Code 3.15.4 Release Notes (2025-05-04) + +This release fixes a critical hang issue and improves caching. + +--- + +## Bug Fixes + +- Fix a nasty bug that would cause Roo Code to hang, particularly in orchestrator mode. + +--- + +## Misc Improvements + +- Improve Gemini caching efficiency. diff --git a/apps/docs/docs/update-notes/v3.15.5.md b/apps/docs/docs/update-notes/v3.15.5.md new file mode 100644 index 00000000000..507682b868c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.5.md @@ -0,0 +1,27 @@ +--- +description: Roo Code 3.15.5 updates Google GenAI to v0.12 for streaming fixes and improves code block rendering performance in chat. +keywords: + - roo code + - v3.15.5 + - release notes + - Google GenAI + - rendering performance + - code blocks + - streaming fixes +--- + +# Roo Code 3.15.5 Release Notes (2025-05-05) + +This release updates the Google GenAI provider and improves rendering performance. + +--- + +## Provider Updates + +- Update `@google/genai` to `0.12` (includes some streaming completion bug fixes). + +--- + +## QOL Improvements + +- Rendering performance improvements for code blocks in chat (thanks KJ7LNW!). diff --git a/apps/docs/docs/update-notes/v3.15.md b/apps/docs/docs/update-notes/v3.15.md new file mode 100644 index 00000000000..3d646ae4acd --- /dev/null +++ b/apps/docs/docs/update-notes/v3.15.md @@ -0,0 +1,104 @@ +--- +description: Roo Code 3.15 adds Google Vertex prompt caching, terminal command fallback, enhanced Boomerang mode, and settings import/export. +keywords: + - roo code + - v3.15 + - release notes + - Google Vertex + - prompt caching + - terminal commands + - Boomerang Orchestrator + - settings +--- + +# Roo Code 3.15 Release Notes (2025-05-05) + +This release introduces prompt caching for Google Vertex, improved terminal command handling, UI/UX enhancements, provider updates, performance improvements, and several other improvements and bug fixes across versions 3.15.0 to 3.15.5. + +--- + +## Prompt Caching for Google Vertex + +- Added prompt caching capabilities to the Google Vertex provider for potentially faster and more cost-effective responses (thanks ashktn). + +--- + +## Improved Terminal Command Handling + +- Implemented a for executing terminal commands if VSCode terminal shell integration fails. +- Added the ability to stop commands directly from the chat UI. + + + +--- + +## Boomerang Orchestrator Mode + +- Enhanced Orchestrator (Boomerang) mode strictly orchestrates tasks. +- No longer reads, writes, executes commands, or utilizes MCP servers; offloads these tasks to other modes. +- Provides more predictable and secure task automation. + +--- + +## Settings Import/Export + +- Roo Code settings can now be imported directly from the welcome screen (thanks julionav). +- Fixed importing & exporting of custom modes (thanks julionav). + +--- + +## QOL Improvements + +- Play notification sound (when enabled) only when action is needed from the user (thanks olearycrew!). +- Improved the UI/UX of code snippets in the chat (thanks KJ7LNW). +- Adjusted chat view padding to accommodate small width layouts (thanks zhangtony239). +- Fixed chat input height instability during window resizing (thanks zhangtony239!). +- Corrected chat layout padding issues during window resizing (thanks zhangtony239!). +- Simplified and streamlined Roo Code's [quick actions](/features/code-actions). + + + +- Improved the auto-approve toggle buttons for some high-contrast VSCode themes. +- Offloaded expensive count token operations to a web worker for better performance (thanks samhvw8). +- Improved support for multi-root workspaces (thanks snoyiatk). +- Improved the performance of mode switching (thanks dlab-anton). +- Improved Mermaid diagram rendering with clearer error messages and a copy code button. + + Mermaid diagram error message with copy code button + +- Made the integrated terminal significantly faster and smoother. +- Improved the reliability of stopping terminal commands. +- Refined inline code styling in chat for better readability (thanks dicharkan!). +- Clarified tool group display in the Modes view when no tool groups are present. +- Rendering performance improvements for code blocks in chat (thanks KJ7LNW!). + +--- + +## Bug Fixes + +- Fix a nasty bug that would cause Roo Code to hang, particularly in orchestrator mode. +- Terminal: Fix empty command bug. +- Terminal: More robust process killing. +- Made retries respect the global auto-approve checkbox. +- Fixed a selection mode bug in the history view (thanks jr!). +- Fixed file mentions for filenames containing spaces. +- Fixed importing & exporting of custom modes (thanks julionav). + +--- + +## Provider Updates + +- Added prompt caching for Google Vertex (thanks ashktn). +- Added a reasoning effort setting for OpenAI Compatible providers (thanks mr-ryan-james). +- Added support for custom API base URLs for OpenAI/OpenAI Compatible providers (thanks gongzhongqiang!). +- Added support for custom headers for OpenAI Compatible providers. +- Update `@google/genai` to `0.12` (includes some streaming completion bug fixes). +- Improve Gemini caching efficiency. +- Optimize Gemini prompt caching for OpenRouter. + +--- + +## Misc Improvements + +- Chat view performance improvements. +- Removed unused types (thanks wkordalski). diff --git a/apps/docs/docs/update-notes/v3.16.0.md b/apps/docs/docs/update-notes/v3.16.0.md new file mode 100644 index 00000000000..6727ebed43b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.0.md @@ -0,0 +1,90 @@ +--- +description: Roo Code 3.16.0 introduces vertical tab navigation for settings, Groq and Chutes AI providers, clickable code references, and UI/UX enhancements. +keywords: + - roo code + - v3.16.0 + - release notes + - vertical tabs + - groq + - chutes ai + - clickable code + - ui improvements + - gemini caching + - mcp improvements +--- + +# Roo Code 3.16.0 Release Notes + +_Release notes for Roo Code v3.16.0, published on 2025-05-06._ + +This release introduces vertical tab navigation for settings, new API providers ([Groq](/providers/groq) and [Chutes AI](/providers/chutes)), clickable code references, and numerous UI/UX enhancements, alongside various bug fixes and miscellaneous improvements. + +--- + +## Gemini Model and Caching Updates + +- The `gemini-2.5-pro-preview-05-06` model is now available for [Vertex](/providers/vertex) and [Google Gemini](/providers/gemini) providers. Users of the older `gemini-2.5-pro-preview-03-25` will automatically benefit from this newer model, as the previous ID now aliases to the latest version on Google's backend. No configuration changes are needed. (thanks @zetaloop!) +- Prompt caching is now enabled by default for supported Gemini models on the [Vertex](/providers/vertex) and [Google Gemini](/providers/gemini) providers, leading to: + - **Faster Responses for Repeated Queries**: Gemini remembers previous similar prompts. + - **Reduced API Usage**: Minimizes redundant API calls. + - **Simplified Experience with Opt-Out Control**: Active out-of-the-box, but can be disabled in settings. + +--- + +## Total Settings Navigation Overhaul (thanks @dlab-anton!) + +The settings interface has been revamped with a new vertical tab layout for a more efficient and intuitive experience: - **One-Click Access:** Navigate between settings sections with a single click via the new vertical tabs in the settings view. - **Improved Layout and Clarity:** Settings are now organized in a clear vertical list for better visibility. + +Settings vertical tab navigation + +--- + +## MCP Service Improvements + + - MCP server errors are now captured and shown in a new "Errors" tab (thanks @robertheadley!) + - Error logging will no longer break MCP functionality if the server is properly connected (thanks @ksze!) + +--- + +## Clickable Code References in Chat (thanks @KJ7LNW!) + +Navigating code discussed in AI responses is now significantly easier: - **Clickable Code and Filenames**: Any `code` or `filename.extension()` mentioned by the AI is now a clickable link. - **Jump to Specific Lines**: Links open the relevant file in your editor and navigate directly to the referenced line number. - **Streamlined Code Exploration**: Quickly move from AI explanations to the exact spot in your codebase. + +Clickable code references in chat + +--- + +## Continued UI/UX Improvements (thanks @elianiva!) + +General UI improvements for a more consistent, visually appealing, and intuitive experience: - **Visually Unified Design**: A more consistent look and feel across settings, prompt interactions, and mode selections. - **Improved Theme Adaptability**: Better consistency across different VS Code themes. - **Streamlined Interactions**: Tidied up UI elements like mode selection and prompt enhancement areas. - **Modernized Icons and Tooltips for Code Blocks**: Code block controls (copy, wrap, expand/collapse) now use crisp Lucide icons and feature translated tooltips for better accessibility. + +General UI/UX improvements example + + *These are just a few examples of the many UI/UX improvements in this release.* + +--- + +## New Provider: Groq Integration (thanks @shariqriazz!) + +You can now connect to [Groq](/providers/groq) and utilize their high-speed language models directly within the extension. + +--- + +## New Provider: Chutes AI Integration (thanks @shariqriazz!) + +Support for [Chutes AI](/providers/chutes) has also been added, allowing you to leverage their specialized AI capabilities. + +--- + +## Misc. Bug Fixes & QOL Improvements + + - Fix migration and persistence of per-mode API profiles (thanks @alasano!) + - Fix usage of [`path.basename()`](#) in the extension webview (thanks @samhvw8!) + - Fix display issue of the programming language dropdown in the code block component (thanks @zhangtony239!) + - Requesty provider fixes (thanks @dtrugman!) + - Improve accessibility of auto-approve toggles (thanks @Deon588!) + - You can now toggle the [`terminal.integrated.inheritEnv`](#) VSCode setting directly for the Roo Code settings (thanks @KJ7LNW!) + - Ensure evals exercises are up-to-date before running evals (thanks @shariqriazz!) + - Organize provider settings into separate components + - Add support for tests that use ESM libraries + - Move environment detail generation to a separate module diff --git a/apps/docs/docs/update-notes/v3.16.1.md b/apps/docs/docs/update-notes/v3.16.1.md new file mode 100644 index 00000000000..a1a4be93623 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.1.md @@ -0,0 +1,56 @@ +--- +description: Roo Code 3.16.1 adds LiteLLM provider support, tool loop detection for improved stability, Dutch localization, and various UI improvements. +keywords: + - roo code + - v3.16.1 + - release notes + - litellm + - tool loop detection + - dutch localization + - tailwind css + - stability improvements +--- + +# Roo Code 3.16.1 Release Notes (2025-05-07) + +This release introduces LiteLLM provider support for more AI backend options, improved stability by detecting and preventing tool execution loops, Dutch localization, enhanced telemetry by including the editor name, a UI migration to Tailwind CSS for better consistency (temporarily reverted in v3.16.3), a fix for responsive footer buttons, updated evaluation defaults, and the latest dependency versions for improved security and performance. + +--- + +## New Provider: LiteLLM Integration + +We've introduced support for the [LiteLLM provider](/providers/litellm), simplifying access to a wide array of language models. This new integration offers: + +- **Automatic Model Discovery**: Roo Code automatically fetches and lists available models from your LiteLLM server. This means users no longer need to manually configure each LiteLLM model within Roo Code, streamlining setup and making it easier to switch between models served by LiteLLM. +- **Simplified Access to 100+ LLMs**: Leverage LiteLLM's ability to provide a unified OpenAI-compatible API for various underlying models. + +Roo Code LiteLLM Provider Settings + +This new provider significantly improves the ease of using diverse models through LiteLLM. For more details on setting up LiteLLM, see the [LiteLLM provider documentation](/providers/litellm). + +--- + +## Tool Loop Detection + +We've implemented a mechanism to detect and prevent tool execution loops, enhancing stability and user experience: + +- **Prevents Infinite Loops**: The system now identifies when a tool might be caught in a repetitive cycle and intelligently intervenes by prompting for user input. +- **Improved Stability**: Reduces the risk of the application becoming unresponsive or stuck due to unintentional tool looping. + +This ensures a smoother, more reliable, and frustration-free interaction with the extension's tools. + +--- + +## QOL Improvements + +- **Dutch Localization Added**: Added Dutch language support, allowing Dutch-speaking users to use the extension in their native language for a more inclusive experience. (thanks Githubguy132010!) +- **Tailwind CSS Migration**: Migrated the UI to Tailwind CSS for a more polished and cohesive interface. (Note: This was reverted in v3.16.3) +- **Responsive Footer Buttons in About Section**: Fixed the layout of footer buttons in the About section, ensuring they wrap correctly on narrow screens for a better mobile experience and improved accessibility. (thanks ecmasx!) + +--- + +## Misc Improvements + +- **Editor Name in Telemetry**: Added the editor name to telemetry data. This helps in understanding which editors are most used and enables more targeted improvements and support for different environments. +- **Improved Evaluation Defaults and Setup**: Updated evaluation defaults and improved the setup process, making the evaluation environment easier and more reliable to configure with more practical out-of-the-box settings. +- **Update Dependencies**: Updated dependencies to their latest versions for improved security and performance. diff --git a/apps/docs/docs/update-notes/v3.16.2.md b/apps/docs/docs/update-notes/v3.16.2.md new file mode 100644 index 00000000000..cefc00a30e9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.2.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.16.2 provides clearer XML tool formatting instructions and improved error handling for streaming, enhancing reliability. +keywords: + - roo code + - v3.16.2 + - release notes + - xml tool formatting + - error handling + - streaming improvements + - gemini fixes +--- + +# Roo Code 3.16.2 Release Notes (2025-05-07) + +This release includes clearer XML tool use formatting instructions for easier understanding and improved error handling for a more robust experience. + +--- + +## Tool Use Improvements + +- **Clarified XML Tool Formatting Instructions**: Documentation and prompts now provide clearer examples of how to format XML tool use, preventing the `` and other tool use errors. +- This fix is largely targeted at issues faced with Gemini 2.5 when using tools + +--- + +## Misc Improvements + +- **Improved Error Handling for Streaming**: Fixed an issue where the app could get stuck waiting for a response. The app now recovers gracefully from errors during streaming, reducing the likelihood of unresponsive behavior and improving reliability. (thanks monkeyDluffy6017!) diff --git a/apps/docs/docs/update-notes/v3.16.3.md b/apps/docs/docs/update-notes/v3.16.3.md new file mode 100644 index 00000000000..99a5cdc25ef --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.3.md @@ -0,0 +1,14 @@ +--- +description: This release reverts the Tailwind CSS migration (temporarily) to restore UI stability and adds Elixir file extension support to the language parser for enhanced code analysis. +--- + +# Roo Code 3.16.3 Release Notes (2025-05-08) + +This release reverts the Tailwind CSS migration (temporarily) to restore UI stability and adds Elixir file extension support to the language parser for enhanced code analysis. + +--- + +## Misc Improvements + +- **Revert Tailwind Migration**: Restored the previous user interface by reverting the Tailwind CSS migration. This returns the UI to a familiar and stable state, resolving issues introduced by the migration and ensuring users see the interface as expected without unexpected layout or style changes. +- **Add Elixir File Support in Language Parser**: Added support for Elixir (`.ex`, `.exs`) files in the language parser. This expands language support, allowing users to work with Elixir code seamlessly and enabling better code analysis for improved productivity. (thanks pfitz!) diff --git a/apps/docs/docs/update-notes/v3.16.4.md b/apps/docs/docs/update-notes/v3.16.4.md new file mode 100644 index 00000000000..6d73ee9b04a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.4.md @@ -0,0 +1,49 @@ +--- +description: Roo Code 3.16.4 improves provider profile management, fixes terminal focus issues, and enhances UI display for better user experience. +keywords: + - roo code + - v3.16.4 + - release notes + - provider profiles + - terminal focus + - ui improvements + - openrouter fixes + - bug fixes +--- + +# Roo Code 3.16.4 Release Notes (2025-05-09) + +This release includes improvements and fixes related to provider profile management, terminal focus, saving custom headers, race conditions, display issues, and error handling. + +--- + +## QOL Improvements + +- Improve provider profile management in the external API +- Show properly formatted multi-line commands in preview (thanks KJ7LNW!) +- Handle unsupported language errors gracefully in read_file tool (thanks KJ7LNW!) +- Enhance focus styles in select-dropdown and fix docs URL (thanks zhangtony239!) +- Properly handle mode name overflow in UI (thanks elianiva!) + +--- + +## Misc Improvements + +- Save OpenAI compatible custom headers correctly + +--- + +## Provider Updates + +- Enforce provider selection in OpenRouter by using 'only' parameter and disabling fallbacks (thanks shariqriazz!) + +--- + +## Bug Fixes + +- Fix display issues with long profile names (thanks cannuri!) +- Prevent terminal focus theft on paste after command execution (thanks MuriloFP!) +- Fix race condition when updating prompts (thanks elianiva!) +- Fix display issues in high contrast themes (thanks zhangtony239!) +- Fix not being able to use specific providers on Openrouter (thanks daniel-lxs!) +- Fix project MCP always allow issue (thanks aheizi!) diff --git a/apps/docs/docs/update-notes/v3.16.5.md b/apps/docs/docs/update-notes/v3.16.5.md new file mode 100644 index 00000000000..d921be6ee0c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.5.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.16.5 reverts provider profile management changes to fix a bug with defaults, ensuring stable API configuration. +keywords: + - roo code + - v3.16.5 + - release notes + - bug fix + - provider profile + - api configuration + - hotfix +--- + +# Roo Code 3.16.5 Release Notes (2025-05-10) + +This release reverts a previous improvement related to provider profile management due to a bug. + +--- + +## Bug Fixes + +- Revert "Improve provider profile management in the external API" until we track down a bug with defaults diff --git a/apps/docs/docs/update-notes/v3.16.6.md b/apps/docs/docs/update-notes/v3.16.6.md new file mode 100644 index 00000000000..77bfc5cdc5a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.6.md @@ -0,0 +1,21 @@ +--- +description: Roo Code v3.16.6 enhances the user experience by automatically populating the chat with saved context when opening a new workspace, restoring the Command-Enter hotkey for sending messages, and resolving an issue with duplicate context entries. +--- + +# Roo Code 3.16.6 Release Notes (2025-05-12) + +This release restores a previous improvement and includes fixes for subtask sequencing and terminal output processing. + +--- + +## QOL Improvements + +- Restore "Improve provider profile management in the external API" + +--- + +## Bug Fixes + +- Fix to subtask sequencing (thanks wkordalski!) +- Fix webview terminal output processing error (thanks KJ7LNW!) +- Fix textarea empty string fallback logic (thanks elianiva!) diff --git a/apps/docs/docs/update-notes/v3.16.md b/apps/docs/docs/update-notes/v3.16.md new file mode 100644 index 00000000000..098ff79186c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.16.md @@ -0,0 +1,143 @@ +--- +description: This release introduces vertical tab navigation for settings, new API providers (Groq, Chutes, LiteLLM), clickable code references, Dutch localization, stability enhancements including tool loop detection and improved error handling, UI updates (including a temporary Tailwind CSS migration and its reversion), broader language support with Elixir, and improvements to provider profile management, alongside various bug fixes and miscellaneous updates. +--- + +# Roo Code 3.16 Release Notes (2025-05-12) + +_These release notes include all the improvements from v3.16.x. Last updated with 3.16.6 on 2025-05-12_ + +This release introduces vertical tab navigation for settings, new API providers (Groq, Chutes, LiteLLM), clickable code references, Dutch localization, stability enhancements including tool loop detection and improved error handling, UI updates (including a temporary Tailwind CSS migration and its reversion), broader language support with Elixir, and improvements to provider profile management, alongside various bug fixes and miscellaneous updates. + +--- + +## Gemini Model and Caching Updates + +- The `gemini-2.5-pro-preview-05-06` model is now available for [Vertex](/providers/vertex) and [Google Gemini](/providers/gemini) providers. Users of the older `gemini-2.5-pro-preview-03-25` will automatically benefit from this newer model, as the previous ID now aliases to the latest version on Google's backend. No configuration changes are needed. (thanks zetaloop!) +- Prompt caching is now enabled by default for supported Gemini models on the [Vertex](/providers/vertex) and [Google Gemini](/providers/gemini) providers, leading to: + - **Faster Responses for Repeated Queries**: Gemini remembers previous similar prompts. + - **Reduced API Usage**: Minimizes redundant API calls. + - **Simplified Experience with Opt-Out Control**: Active out-of-the-box, but can be disabled in settings. + +--- + +## Total Settings Navigation Overhaul (thanks dlab-anton!) + +FINALLY the settings interface has been revamped with a new vertical tab layout for a more efficient and intuitive experience - **One-Click Access:** Navigate between settings sections with a single click via the new vertical tabs in the settings view. - **Improved Layout and Clarity:** Settings are now organized in a clear vertical list for better visibility. + +Settings vertical tab navigation + +--- + +## MCP Service Improvements + + - MCP server errors are now captured and shown in a new "Errors" tab (thanks robertheadley!) + - Error logging will no longer break MCP functionality if the server is properly connected (thanks ksze!) + +--- + +## Clickable Code References in Chat (thanks KJ7LNW!) + +Navigating code discussed in AI responses is now significantly easier: - **Clickable Code and Filenames**: Any `code` or `filename.extension()` mentioned by the AI is now a clickable link. - **Jump to Specific Lines**: Links open the relevant file in your editor and navigate directly to the referenced line number. - **Streamlined Code Exploration**: Quickly move from AI explanations to the exact spot in your codebase. + +Clickable code references in chat + +--- + +## Tool Use Improvements + +- **Clarified XML Tool Formatting Instructions**: Documentation and prompts now provide clearer examples of how to format XML tool use, preventing the `` and other tool use errors. +- This fix is largely targeted at issues faced with Gemini 2.5 when using tools + +--- + +## Continued UI/UX Improvements (thanks elianiva!) + +General UI improvements for a more consistent, visually appealing, and intuitive experience: - **Visually Unified Design**: A more consistent look and feel across settings, prompt interactions, and mode selections. - **Improved Theme Adaptability**: Better consistency across different VS Code themes. - **Streamlined Interactions**: Tidied up UI elements like mode selection and prompt enhancement areas. - **Modernized Icons and Tooltips for Code Blocks**: Code block controls (copy, wrap, expand/collapse) now use crisp Lucide icons and feature translated tooltips for better accessibility. + +General UI/UX improvements example + + *These are just a few examples of the many UI/UX improvements in this release.* + +--- + +## New Provider: Groq Integration (thanks shariqriazz!) + +You can now connect to [Groq](/providers/groq) and utilize their high-speed language models directly within the extension. + +--- + +## New Provider: Chutes AI Integration (thanks shariqriazz!) + +Support for [Chutes AI](/providers/chutes) has also been added, allowing you to leverage their specialized AI capabilities. + +--- + +## QOL Improvements + +### New Provider: LiteLLM Integration + +We've introduced support for the [LiteLLM provider](/providers/litellm), simplifying access to a wide array of language models. This new integration offers: + +- **Automatic Model Discovery**: Roo Code now automatically fetches and lists available models from your LiteLLM server. This means users no longer need to manually configure each LiteLLM model within Roo Code, streamlining setup and making it easier to switch between models served by LiteLLM. +- **Simplified Access to 100+ LLMs**: Leverage LiteLLM's ability to provide a unified OpenAI-compatible API for various underlying models. + +Roo Code LiteLLM Provider Settings + +This new provider significantly improves the ease of using diverse models through LiteLLM. For more details on setting up LiteLLM, see the [LiteLLM provider documentation](/providers/litellm). + +### Tool Loop Detection + +We've implemented a mechanism to detect and prevent tool execution loops, enhancing stability and user experience: + +- **Prevents Infinite Loops**: The system now identifies when a tool might be caught in a repetitive cycle and intelligently intervenes by prompting for user input. +- **Improved Stability**: Reduces the risk of the application becoming unresponsive or stuck due to unintentional tool looping. + +This ensures a smoother, more reliable, and frustration-free interaction with the extension's tools. + +- **Dutch Localization Added**: Added Dutch language support, allowing Dutch-speaking users to use the extension in their native language for a more inclusive experience. (thanks Githubguy132010!) +- **Responsive Footer Buttons in About Section**: Fixed the layout of footer buttons in the About section, ensuring they wrap correctly on narrow screens for a better mobile experience and improved accessibility. (thanks ecmasx!) +- Improve accessibility of auto-approve toggles (thanks Deon588!) +- You can now toggle the `terminal.integrated.inheritEnv` VSCode setting directly for the Roo Code settings (thanks KJ7LNW!) +- Improve provider profile management in the external API +- Restore "Improve provider profile management in the external API" +- Show properly formatted multi-line commands in preview (thanks KJ7LNW!) +- Handle unsupported language errors gracefully in read_file tool (thanks KJ7LNW!) +- Enhance focus styles in select-dropdown and fix docs URL (thanks zhangtony239!) +- Properly handle mode name overflow in UI (thanks elianiva!) + +--- + +## Provider Updates + +- Enforce provider selection in OpenRouter by using 'only' parameter and disabling fallbacks (thanks shariqriazz!) + +--- + +## Bug Fixes + +- Fix migration and persistence of per-mode API profiles (thanks alasano!) +- Fix usage of `path.basename` in the extension webview (thanks samhvw8!) +- Fix display issue of the programming language dropdown in the code block component (thanks zhangtony239!) +- Requesty provider fixes (thanks dtrugman!) +- Fix display issues with long profile names (thanks cannuri!) +- Prevent terminal focus theft on paste after command execution (thanks MuriloFP!) +- Fix race condition when updating prompts (thanks elianiva!) +- Fix display issues in high contrast themes (thanks zhangtony239!) +- Fix not being able to use specific providers on Openrouter (thanks daniel-lxs!) +- Fix project MCP always allow issue (thanks aheizi!) +- Revert "Improve provider profile management in the external API" until we track down a bug with defaults +- Fix to subtask sequencing (thanks wkordalski!) +- Fix webview terminal output processing error (thanks KJ7LNW!) +- Fix textarea empty string fallback logic (thanks elianiva!) + +- **Revert Tailwind Migration**: Restored the previous user interface by reverting the Tailwind CSS migration. This returns the UI to a familiar and stable state, resolving issues introduced by the migration and ensuring users see the interface as expected without unexpected layout or style changes. +- **Add Elixir File Support in Language Parser**: Added support for Elixir (`.ex`, `.exs`) files in the language parser. This expands language support, allowing users to work with Elixir code seamlessly and enabling better code analysis for improved productivity. (thanks pfitz!) +- **Improved Error Handling for Streaming**: Fixed an issue where the app could get stuck waiting for a response. The app now recovers gracefully from errors during streaming, reducing the likelihood of unresponsive behavior and improving reliability. (thanks monkeyDluffy6017!) +- **Editor Name in Telemetry**: Added the editor name to telemetry data. This helps in understanding which editors are most used and enables more targeted improvements and support for different environments. +- **Improved Evaluation Defaults and Setup**: Updated evaluation defaults and improved the setup process, making the evaluation environment easier and more reliable to configure with more practical out-of-the-box settings. +- **Update Dependencies**: Updated dependencies to their latest versions for improved security and performance. +- Ensure evals exercises are up-to-date before running evals (thanks shariqriazz!) +- Organize provider settings into separate components +- Add support for tests that use ESM libraries +- Move environment detail generation to a separate module +- Save OpenAI compatible custom headers correctly diff --git a/apps/docs/docs/update-notes/v3.17.0.md b/apps/docs/docs/update-notes/v3.17.0.md new file mode 100644 index 00000000000..c1aab26e865 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.17.0.md @@ -0,0 +1,109 @@ +--- +description: Roo Code 3.17.0 introduces Intelligent Context Condensation, enhanced Boomerang mode selection, Gemini caching, and smoother chat experience. +keywords: + - roo code + - v3.17.0 + - release notes + - intelligent context condensation + - boomerang orchestration + - gemini caching + - ask mode + - chat improvements +--- + +# Roo Code 3.17.0 Release Notes (2025-05-14) + +This release brings Gemini implicit caching, smarter Boomerang Orchestration through "When to Use" guidance, refinements to 'Ask' Mode and Boomerang accuracy, experimental Intelligent Context Condensation, and a smoother chat experience. + +--- + +## Improved Performance with Gemini Caching + +Users interacting with Gemini models will experience improved performance and overall lower costs when using Gemini models that support caching due to the utilization of implicit caching. + +--- + +## Smarter Boomerang Orchestration + +Roo Code now offers enhanced guidance for selecting the most appropriate mode for your tasks, primarily through the new "When to Use" field in mode definitions. This field allows mode creators to provide specific instructions on the ideal scenarios for using a particular mode. Previously, or if this field is not defined for a mode, Roo would rely on the first sentence of the mode's role definition for this guidance. + +- **"When to Use" Field:** Custom modes can now include a "When to Use" description. This text is utilized by Roo, especially the [Orchestrator (Boomerang) mode](/features/boomerang-tasks), to make more informed decisions when orchestrating tasks (e.g., via the [`new_task`](/advanced-usage/available-tools/new-task) tool) or when automatically switching modes (e.g., via the [`switch_mode`](/advanced-usage/available-tools/switch-mode) tool). +- **Improved Orchestration:** By leveraging the "When to Use" field, Roo can better understand the purpose of each mode, leading to more effective task delegation and mode selection. +- **Fallback to Role Definition:** If the "When to Use" field is not populated for a mode, Roo will use the first sentence of the mode's role definition as a default summary to guide its decisions. + +image highlighting When to Use field + +The image above shows an example of a "When to Use" description. This field is not currently populated by default for the standard [Code Mode](/basic-usage/using-modes#code-mode-default). You can learn more about configuring this in the [Custom Modes documentation](/features/custom-modes). + +--- + +## 'Ask' Mode & Boomerang Orchestration Refinements + +We've made several under-the-hood refinements to improve how Roo understands and responds to your requests: + +- **'Ask' Mode Refinements:** 'Ask' mode has been refined to provide more comprehensive and detailed explanations, be less quick to suggest or switch to implementing code (waiting for a clearer cue from you), and to utilize diagrams like Mermaid charts more often for clarification. +- **More Accurate Boomerang Orchestration:** The internal description for the [`new_task`](/advanced-usage/available-tools/new-task) tool (used by Roo to initiate new tasks) has been simplified for better AI comprehension. This internal refinement ensures the [Boomerang (Orchestrator) functionality](/features/boomerang-tasks) is triggered more reliably, leading to smoother and more accurate automated task delegation. + +--- + +## Smarter Context Management with Intelligent Condensation + +We've introduced an experimental feature called **Intelligent Context Condensation** (`autoCondenseContext`) to proactively manage lengthy conversation histories and prevent context loss. + +Here's how it works: + +- **Automatic Summarization:** When a conversation approaches its context window limit (specifically, when the context window is almost full), Roo Code now automatically uses a Large Language Model (LLM) to summarize the existing conversation history. +- **Preserving Key Information:** The goal is to reduce the token count of the history while retaining the most essential information, ensuring the LLM has a coherent understanding of past interactions. This helps avoid the silent dropping of older messages. +- **Checkpoint Integrity:** While summarized for ongoing LLM calls, all original messages are preserved when you rewind to old checkpoints. +- **Opt-in Experimental Feature:** Disabled by default, this feature can be enabled in "Advanced Settings" under "Experimental Features." Please note that the LLM call for summarization incurs a cost, which is not currently displayed in the UI's cost tracking. + +Settings for Intelligent Context Condensation + +For more details on this feature, please see the [Intelligent Context Condensing documentation](/features/intelligent-context-condensing). + +--- + +## Smoother Chat and Fewer Interruptions! (thanks Cline!) + +We've made a couple of nice tweaks to make your Roo Code experience even better: + +- **Keep Typing, Even When Roo's Thinking:** You can now type your next message in the chat even while Roo is busy processing your current request. No more waiting for the input field to unlock – just keep your thoughts flowing! +- **Stay Focused When Viewing Changes:** We've improved how Roo Code handles your cursor focus when showing you code differences. This means fewer interruptions to your workflow when Roo presents changes for review. + +These improvements aim to make your interactions with Roo Code feel more fluid and less disruptive. + +--- + +## Easier Access to Documentation + +Finding help and information is now simpler: + +- **More In-App Links**: Added over 20 new "Learn more" links throughout the application's settings and views. +- **Improved Navigation**: Updated existing documentation links to ensure they direct you to the most relevant information. + +--- + +## General QOL Improvements + +- **Improved Command Execution Display**: The user interface for displaying command execution was improved. +- **More Reliable Apply Diff Tool**: The `apply_diff` tool is now better at handling line numbers. (thanks samhvw8!) +- **Faster Message Parsing**: We've switched to a more performant way of processing messages. (thanks Cline!) + +--- + +## Bug Fixes + +- **Fix for Grey Screen Issues**: We've addressed a visual bug that could occur. (thanks xyOz-dev!) +- **Accurate Token Usage Reporting**: For users of the Requesty API provider, token usage reporting is now more accurate. (thanks dtrugman!) +- **Improved Command Validation**: Commands using shell array indexing are now validated correctly. (thanks KJ7LNW!) +- **Graceful Handling of Directory Diagnostics**: The application now handles diagnostic information related to directories smoothly. (thanks daniel-lxs!) +- **Accurate OpenRouter Model Information**: If you use OpenRouter with different providers, you'll see more accurate details. (thanks daniel-lxs!) +- **Reduced Errors with Checkpoints**: If you use checkpoints, you should encounter fewer errors. (thanks zxdvd!) + +--- + +## Misc Improvements + +- **Enhanced Debugging Capabilities**: We've made it easier for developers to diagnose and fix issues. (thanks KJ7LNW!) +- **Improved Developer Experience for Integrations**: We've added better support for developers building tools that interact with Roo Code. +- **Streamlined Development Workflow**: We've made internal improvements to our development process. (thanks SmartManoj!) diff --git a/apps/docs/docs/update-notes/v3.17.1.md b/apps/docs/docs/update-notes/v3.17.1.md new file mode 100644 index 00000000000..e4c85b1276b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.17.1.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.17.1 fixes command display during approval and corrects token calculation on OpenRouter for accurate cost tracking. +keywords: + - roo code + - v3.17.1 + - release notes + - command display + - token calculation + - openrouter + - bug fixes +--- + +# Roo Code 3.17.1 Release Notes (2025-05-15) + +This release includes fixes for command display and token calculation. + +--- + +## Bug Fixes + +- Fixed the display of the command to execute during approval. +- Fixed incorrect reserved tokens calculation on OpenRouter (thanks daniel-lxs!). diff --git a/apps/docs/docs/update-notes/v3.17.2.md b/apps/docs/docs/update-notes/v3.17.2.md new file mode 100644 index 00000000000..68c21336f86 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.17.2.md @@ -0,0 +1,14 @@ +--- +description: This release includes a revert of a recent parser change and locks down some dependency versions. +--- + +# Roo Code 3.17.2 Release Notes (2025-05-15) + +This release includes a revert of a recent parser change and locks down some dependency versions. + +--- + +## Misc Improvements + +- Reverted the switch to the new Roo message parser due to a tool parsing bug. +- Locked the versions of `vsce` and `ovsx`. diff --git a/apps/docs/docs/update-notes/v3.17.md b/apps/docs/docs/update-notes/v3.17.md new file mode 100644 index 00000000000..d6de8295a6d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.17.md @@ -0,0 +1,112 @@ +--- +description: Roo Code 3.17 combines all v3.17.x updates including Intelligent Context Condensation, Boomerang improvements, and various bug fixes. +keywords: + - roo code + - v3.17 + - release notes + - intelligent context condensation + - boomerang orchestration + - gemini caching + - bug fixes + - complete changelog +--- + +# Roo Code 3.17 Release Notes (2025-05-14) + +This release brings Gemini implicit caching, smarter Boomerang Orchestration through "When to Use" guidance, refinements to 'Ask' Mode and Boomerang accuracy, experimental Intelligent Context Condensation, and a smoother chat experience. + +--- + +## Improved Performance with Gemini Caching + +Users interacting with Gemini models will experience improved performance and overall lower costs when using Gemini models that support caching due to the utilization of implicit caching. + +--- + +## Smarter Boomerang Orchestration + +Roo Code now offers enhanced guidance for selecting the most appropriate mode for your tasks, primarily through the new "When to Use" field in mode definitions. This field allows mode creators to provide specific instructions on the ideal scenarios for using a particular mode. Previously, or if this field is not defined for a mode, Roo would rely on the first sentence of the mode's role definition for this guidance. + +- **"When to Use" Field:** Custom modes can now include a "When to Use" description. This text is utilized by Roo, especially the [Orchestrator (Boomerang) mode](/features/boomerang-tasks), to make more informed decisions when orchestrating tasks (e.g., via the [`new_task`](/advanced-usage/available-tools/new-task) tool) or when automatically switching modes (e.g., via the [`switch_mode`](/advanced-usage/available-tools/switch-mode) tool). +- **Improved Orchestration:** By leveraging the "When to Use" field, Roo can better understand the purpose of each mode, leading to more effective task delegation and mode selection. +- **Fallback to Role Definition:** If the "When to Use" field is not populated for a mode, Roo will use the first sentence of the mode's role definition as a default summary to guide its decisions. + +image highlighting When to Use field + +The image above shows an example of a "When to Use" description. This field is not currently populated by default for the standard [Code Mode](/basic-usage/using-modes#code-mode-default). You can learn more about configuring this in the [Custom Modes documentation](/features/custom-modes). + +--- + +## 'Ask' Mode & Boomerang Orchestration Refinements + +We've made several under-the-hood refinements to improve how Roo understands and responds to your requests: + +- **'Ask' Mode Refinements:** 'Ask' mode has been refined to provide more comprehensive and detailed explanations, be less quick to suggest or switch to implementing code (waiting for a clearer cue from you), and to utilize diagrams like Mermaid charts more often for clarification. +- **More Accurate Boomerang Orchestration:** The internal description for the [`new_task`](/advanced-usage/available-tools/new-task) tool (used by Roo to initiate new tasks) has been simplified for better AI comprehension. This internal refinement ensures the [Boomerang (Orchestrator) functionality](/features/boomerang-tasks) is triggered more reliably, leading to smoother and more accurate automated task delegation. + +--- + +## Smarter Context Management with Intelligent Condensation + +We've introduced an experimental feature called **Intelligent Context Condensation** (`autoCondenseContext`) to proactively manage lengthy conversation histories and prevent context loss. + +Here's how it works: + +- **Automatic Summarization:** When a conversation approaches its context window limit (specifically, when the context window is almost full), Roo Code now automatically uses a Large Language Model (LLM) to summarize the existing conversation history. +- **Preserving Key Information:** The goal is to reduce the token count of the history while retaining the most essential information, ensuring the LLM has a coherent understanding of past interactions. This helps avoid the silent dropping of older messages. +- **Checkpoint Integrity:** While summarized for ongoing LLM calls, all original messages are preserved when you rewind to old checkpoints. +- **Opt-in Experimental Feature:** Disabled by default, this feature can be enabled in "Advanced Settings" under "Experimental Features." Please note that the LLM call for summarization incurs a cost, which is not currently displayed in the UI's cost tracking. + +Settings for Intelligent Context Condensation + +For more details on this feature, please see the [Intelligent Context Condensing documentation](/features/intelligent-context-condensing). + +--- + +## Smoother Chat and Fewer Interruptions! (thanks Cline!) + +We've made a couple of nice tweaks to make your Roo Code experience even better: + +- **Keep Typing, Even When Roo's Thinking:** You can now type your next message in the chat even while Roo is busy processing your current request. No more waiting for the input field to unlock – just keep your thoughts flowing! +- **Stay Focused When Viewing Changes:** We've improved how Roo Code handles your cursor focus when showing you code differences. This means fewer interruptions to your workflow when Roo presents changes for review. + +These improvements aim to make your interactions with Roo Code feel more fluid and less disruptive. + +--- + +## Easier Access to Documentation + +Finding help and information is now simpler: + +- **More In-App Links**: Added over 20 new "Learn more" links throughout the application's settings and views. +- **Improved Navigation**: Updated existing documentation links to ensure they direct you to the most relevant information. + +--- + +## General QOL Improvements + +- **Improved Command Execution Display**: The user interface for displaying command execution was improved. +- **More Reliable Apply Diff Tool**: The `apply_diff` tool is now better at handling line numbers. (thanks samhvw8!) +- **Faster Message Parsing**: We've switched to a more performant way of processing messages. (thanks Cline!) + +--- + +## Bug Fixes + +- **Fix for Grey Screen Issues**: We've addressed a visual bug that could occur. (thanks xyOz-dev!) +- **Accurate Token Usage Reporting**: For users of the Requesty API provider, token usage reporting is now more accurate. (thanks dtrugman!) +- **Improved Command Validation**: Commands using shell array indexing are now validated correctly. (thanks KJ7LNW!) +- **Graceful Handling of Directory Diagnostics**: The application now handles diagnostic information related to directories smoothly. (thanks daniel-lxs!) +- **Accurate OpenRouter Model Information**: If you use OpenRouter with different providers, you'll see more accurate details. (thanks daniel-lxs!) +- **Reduced Errors with Checkpoints**: If you use checkpoints, you should encounter fewer errors. (thanks zxdvd!) +- Fixed the display of the command to execute during approval. +- Fixed incorrect reserved tokens calculation on OpenRouter (thanks daniel-lxs!). +- Reverted the switch to the new Roo message parser due to a tool parsing bug. + +--- + +## Misc Improvements + +- **Enhanced Debugging Capabilities**: We've made it easier for developers to diagnose and fix issues. (thanks KJ7LNW!) +- **Improved Developer Experience for Integrations**: We've added better support for developers building tools that interact with Roo Code. +- **Streamlined Development Workflow**: We've made internal improvements to our development process. (thanks SmartManoj!) diff --git a/apps/docs/docs/update-notes/v3.18.0.mdx b/apps/docs/docs/update-notes/v3.18.0.mdx new file mode 100644 index 00000000000..c940f244a17 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.0.mdx @@ -0,0 +1,96 @@ +--- +description: This release introduces comprehensive context condensing improvements, YAML support for custom modes, new AI model integrations, and numerous quality-of-life improvements and bug fixes. +--- + +# Roo Code 3.18.0 Release Notes (2025-05-21) + +This release introduces comprehensive context condensing improvements, YAML support for custom modes, new AI model integrations, and numerous quality-of-life improvements and bug fixes. + +--- + +## Context Condensing Upgrades +Our Intelligent Context Condensing feature sees significant enhancements for better control and clarity. **Note**: As of version 3.19.0, this feature is enabled by default. + +Watch a quick overview: +
+
+ +
+
+Key updates: +* **Adjustable Condensing Threshold & Manual Control**: Fine-tune automatic condensing or trigger it manually. [Learn more](/features/intelligent-context-condensing#controlling-context-condensing). +* **Clear UI Indicators**: Better visual feedback during condensing. [Details](/features/intelligent-context-condensing#understanding-context-condensing-activity). +* **Accurate Token Counting**: Improved accuracy for context and cost calculations. [More info](/features/intelligent-context-condensing#token-counting). + +For full details, see the main [Intelligent Context Condensing documentation](/features/intelligent-context-condensing). + + +--- + +## Custom Modes: YAML Support + +Custom mode configuration is now significantly improved with **YAML support** for both global and project-level (`.roomodes`) definitions. YAML is the new default, offering superior readability with cleaner syntax, support for comments (`#`), and easier multi-line string management. While JSON remains supported for backward compatibility, YAML streamlines mode creation, sharing, and version control. + +For comprehensive details on YAML benefits, syntax, and migrating existing JSON configurations, please see our updated [Custom Modes documentation](/features/custom-modes#migration-to-yaml-format). (thanks R-omk! Additional thanks to GreatScottyMac for the YAML inspiration!) + +--- + +## API Cost Control: Request Limits +To enhance API cost management, you can now set a **Max Requests** limit for auto-approved actions. This prevents Roo Code from making an excessive number of consecutive API calls without your re-approval. + +Setting the Max Requests limit for auto-approved actions in Roo Code settings. +*Setting the "Max Requests" for auto-approved actions.* + +Warning message indicating the auto-approved request limit has been reached. +*Notification when the auto-approved request limit is met.* + +Learn more about configuring this safeguard in our [Rate Limits and Costs documentation](/advanced-usage/rate-limits-costs#limiting-auto-approved-requests). (Inspired by Cline, thanks hassoncs!) + +--- + +## New Model Version: Gemini 2.5 Flash Preview (May 2025) +Access the latest `gemini-2.5-flash-preview-05-20` model, including its thinking variant. This cutting-edge addition is available via both the generic [Gemini provider](/providers/gemini) and the [Vertex provider](/providers/vertex), further expanding your AI model options. (thanks shariqriazz, daniel-lxs!) + +--- + +## QOL Improvements + +* **Resizable Prompt Textareas**: Restored vertical resizing for prompt input textareas (role definition, custom instructions, support prompts) for easier viewing and editing of longer prompts. +* **Settings Import**: Error messages are now provided in multiple languages if an import fails. (thanks ChuKhaLi!) + +--- + +## Bug Fixes + +* **VSCode Command Execution**: Command execution is now type-safe, reducing potential errors. +* **Settings Import**: The system now gracefully handles missing `globalSettings` in import files. (thanks ChuKhaLi!) +* **Diff View Scrolling**: The diff view no longer scrolls unnecessarily during content updates. (thanks qdaxb!) +* **Syntax Highlighting**: Improved syntax highlighting consistency across file listings, code definitions, and error messages. (thanks KJ7LNW!) +* **Grey Screen Issue**: Implemented a fix for the "grey screen" issue by gracefully handling errors when closing diff views, preventing memory leaks. (thanks xyOz-dev!) +* **Settings Import Error Message**: The `settings_import_failed` message is now correctly categorized as an error. (thanks ChuKhaLi!) +* **File Links to Line 0**: Links to files with line number 0 now correctly open at the first line, preventing errors. (thanks RSO!) +* **Packaging `tiktoken.wasm`**: Fixed packaging to include the correct `tiktoken/lite/tiktoken_bg.wasm` file for accurate token counting. (thanks vagadiya!) +* **Audio Playback**: Moved audio playback to the webview to ensure cross-platform compatibility and reliability for notifications and sounds. (thanks SmartManoj, samhvw8!) + +--- + +## Provider Updates + +* **LM Studio and Ollama Token Tracking**: Token usage is now tracked for [LM Studio](/providers/lmstudio) and [Ollama](/providers/ollama) providers. (thanks xyOz-dev!) +* **LM Studio Reasoning Support**: Added support for parsing "think" tags in [LM Studio](/providers/lmstudio) responses for enhanced transparency into the AI's process. (thanks avtc!) +* **Qwen3 Model Series for Chutes**: Added new Qwen3 models to the [Chutes provider](/providers/chutes) (e.g., `Qwen/Qwen3-235B-A22B`). (thanks zeozeozeo!) +* **Unbound Provider Model Refresh**: Added a refresh button for [Unbound](/providers/unbound) models to easily update the list of available models and get immediate feedback on API key validity. (thanks pugazhendhi-m!) + +--- + +## Misc + +* **Auto-reload in Dev Mode**: Core file changes now automatically trigger a window reload in development mode for a faster workflow. (thanks hassoncs!) +* **Simplified Loop Syntax**: Refactored loop structures in multiple components to use `for...of` loops for improved readability. (thanks noritaka1166!) diff --git a/apps/docs/docs/update-notes/v3.18.1.mdx b/apps/docs/docs/update-notes/v3.18.1.mdx new file mode 100644 index 00000000000..f09db66860a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.1.mdx @@ -0,0 +1,28 @@ +--- +description: This release adds support for Anthropic's latest AI models, fixes documentation display issues, and introduces automated nightly builds through a modernized development infrastructure. +--- + +# Roo Code 3.18.1 Release Notes (2025-05-22) + +This release adds support for Anthropic's latest AI models, fixes documentation display issues, and introduces automated nightly builds through a modernized development infrastructure. + +--- + +## Provider Updates + +* **Claude 4.0 Models**: Added support for [`Claude Sonnet 4`](/providers/anthropic) and [`Claude Opus 4`](/providers/anthropic) models with thinking variants for [`Anthropic`](/providers/anthropic), [`Bedrock`](/providers/bedrock), and [`Vertex`](/providers/vertex) providers (thanks shariqriazz!) + +--- + +## Bug Fixes + +* **README Display**: Fixed README GIF display across all localized versions, ensuring consistent visual guides for users in all 17 supported languages +* **Referrer URL**: Fixed technical referrer URL issues in documentation links + +--- + +## Development Infrastructure + +* **Monorepo Migration**: Switched codebase to a monorepo structure for improved development workflow +* **Automated Nightly Builds**: Created automated [nightly release system](/advanced-usage/roo-code-nightly) to deliver the latest features and fixes more quickly +* **Enhanced Toolchain**: Improved build processes and dependency management for better reliability \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.18.2.mdx b/apps/docs/docs/update-notes/v3.18.2.mdx new file mode 100644 index 00000000000..6f0fbc6de01 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.2.mdx @@ -0,0 +1,27 @@ +--- +description: This release introduces context condensing enhancements and several important bug fixes to improve settings management and terminal integration. +--- + +# Roo Code 3.18.2 Release Notes (2025-05-23) + +This release introduces context condensing enhancements and several important bug fixes to improve settings management and terminal integration. + +--- + +## Context Condensing Enhancements + +Enhanced the context condensing feature with new settings and improved functionality: + +* **Advanced Controls**: New experimental settings for fine-tuning conversation compression behavior +* **Improved Compression**: Better conversation summarization while preserving important context +* **UI Enhancements**: New interface components for managing condensing settings + +(thanks SannidhyaSah!) + +--- + +## Bug Fixes + +* **Global Settings Export**: Fixed global settings export functionality to ensure configurations transfer properly between setups +* **File Picker Icons**: Fixed vscode-material-icons display issues in the file picker for better visual consistency +* **Terminal Integration**: Fixed terminal integration to properly respect user-configured timeout settings (thanks KJ7LNW!) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.18.3.mdx b/apps/docs/docs/update-notes/v3.18.3.mdx new file mode 100644 index 00000000000..2617d557950 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.3.mdx @@ -0,0 +1,56 @@ +--- +description: This release introduces experimental codebase indexing with semantic search, enhanced AI reasoning capabilities, and several performance optimizations. +--- + +# Roo Code 3.18.3 Release Notes (2025-05-24) + +This release introduces experimental codebase indexing with semantic search, enhanced AI reasoning capabilities, and several performance optimizations. + +--- + +## Codebase Indexing (Experimental) +We've introduced a powerful new **experimental** [Codebase Indexing](/features/codebase-indexing) feature that enables semantic search across your entire project using AI embeddings. Remember, this is **disabled by default** and requires additional setup (enable in Settings (⚙️) > "Experimental"). + +Codebase Indexing Settings + +Key capabilities: +* **Semantic Code Search**: Find relevant code using natural language queries instead of exact keyword matches +* **AI-Powered Understanding**: The new [`codebase_search`](/advanced-usage/available-tools/codebase-search) tool understands code meaning and relationships +* **Cross-Project Discovery**: Search your entire indexed codebase, not just open files +* **Flexible Setup**: Choose between OpenAI embeddings or local Ollama processing +* **Vector-Powered Search**: Advanced embedding technology with Qdrant vector database storage + +Transform how you navigate large codebases - ask "find authentication logic" and get meaningful results instead of hunting through files. (thanks daniel-lxs!) + +For setup instructions and detailed usage, see the main [Codebase Indexing documentation](/features/codebase-indexing). + +--- + +## Provider Updates + +* **Enhanced Reasoning**: Added reasoning support for Claude 4 and Gemini 2.5 Flash on [`OpenRouter`](/providers/openrouter), plus fixed o1-pro compatibility +* **Improved Defaults**: Changed default model from Sonnet 3.7 to Sonnet 4 for better performance +* **Prompt Caching**: Enabled prompt caching for Gemini 2.5 Flash Preview to reduce costs and improve response times (thanks shariqriazz!) +* **OpenRouter Settings**: Model settings now persist when selecting specific [`OpenRouter`](/providers/openrouter) providers +* **LiteLLM Refresh**: Added ability to refresh [`LiteLLM`](/providers/litellm) models list for up-to-date model availability + +--- + +## QOL Improvements + +* **Better Tool Selection**: Improved tool descriptions to guide AI in making better file editing decisions + +--- + +## Bug Fixes + +* **Context Tracking**: Fixed mark-as-read logic in the context tracker (thanks samhvw8!) +* **Model Cleanup**: Removed deprecated claude-3.7-sonnet models from vscode-lm (thanks shariqriazz!) +* **MCP Server Loading**: Fixed MCP Server error when running with npx and bunx (thanks devxpain!) + +--- + +## Misc Improvements + +* **Build Process**: Improved pnpm bootstrapping and added compile script (thanks KJ7LNW!) +* **Code Quality**: Simplified object assignment and modernized code patterns (thanks noritaka1166!) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.18.4.mdx b/apps/docs/docs/update-notes/v3.18.4.mdx new file mode 100644 index 00000000000..ba52b4df2ba --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.4.mdx @@ -0,0 +1,28 @@ +--- +description: This release improves codebase indexing reliability, fixes several user interface issues, and updates AI model support with enhanced debugging capabilities. +--- + +# Roo Code 3.18.4 Release Notes (2025-05-25) + +This release improves codebase indexing reliability, fixes several user interface issues, and updates AI model support with enhanced debugging capabilities. + +--- + +## Bug Fixes + +* **Codebase Indexing**: Fixed settings saving and improved Ollama indexing performance for more reliable semantic search (thanks daniel-lxs!) +* **File Handling**: Fixed handling of byte order mark (BOM) when users reject apply_diff operations (thanks avtc!) +* **Auto-Approve Input**: Fixed issue where chat input would incorrectly clear when auto-approve was enabled (thanks Ruakij!) +* **Build Process**: Fixed bootstrap script parameters for better pnpm compatibility during development setup (thanks ChuKhaLi!) + +--- + +## Provider Updates + +* **xAI Models**: Updated xAI model list and default model configuration for improved performance (thanks PeterDaveHello!) + +--- + +## Misc Improvements + +* **Enhanced Debugging**: Added metadata to API requests across all providers for better troubleshooting and monitoring (thanks dtrugman!) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.18.5.mdx b/apps/docs/docs/update-notes/v3.18.5.mdx new file mode 100644 index 00000000000..40d96f013c8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.5.mdx @@ -0,0 +1,28 @@ +--- +description: This release brings enhanced provider support, improved localization, and telemetry re-enablement. +--- + +# Roo Code 3.18.5 Release Notes (2025-05-27) + +This release brings enhanced provider support, improved localization, and telemetry re-enablement. + +--- + +## Provider Updates + +* **Requesty Thinking Controls**: Add thinking controls for [Requesty provider](/providers/requesty) (thanks dtrugman!) +* **LiteLLM Metadata**: Improve model metadata for [LiteLLM provider](/providers/litellm) + +--- + +## QOL Improvements + +* **Traditional Chinese Locale**: Improve zh-TW Traditional Chinese locale (thanks PeterDaveHello and chrarnoldus!) + +--- + +## Misc Improvements + +* **Telemetry**: Re-enable telemetry + +Thank you to all our contributors for making Roo Code better with each release! \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.18.mdx b/apps/docs/docs/update-notes/v3.18.mdx new file mode 100644 index 00000000000..32db8699fac --- /dev/null +++ b/apps/docs/docs/update-notes/v3.18.mdx @@ -0,0 +1,165 @@ +--- +description: Roo Code 3.18 introduces experimental codebase indexing, enhanced context condensing, YAML support for custom modes, and Gemini 2.5 Flash support. +keywords: + - Roo Code 3.18 + - release notes + - codebase indexing + - context condensing + - YAML custom modes + - Gemini 2.5 +--- + +# Roo Code 3.18 Release Notes (2025-05-21) + +This release introduces advanced AI models with enhanced reasoning capabilities, comprehensive context condensing improvements, YAML support for custom modes, streamlined development infrastructure, and numerous quality-of-life improvements and bug fixes. + +--- + +## Codebase Indexing (Experimental) +Our new **experimental** [Codebase Indexing](/features/codebase-indexing) feature enables semantic search across your entire project using AI embeddings. Remember, this is **disabled by default** and requires additional setup (enable in Settings (⚙️) > "Experimental"). + +Codebase Indexing Settings + +Key capabilities: +* **Semantic Code Search**: Find relevant code using natural language queries instead of exact keyword matches +* **AI-Powered Understanding**: The new [`codebase_search`](/advanced-usage/available-tools/codebase-search) tool understands code meaning and relationships +* **Cross-Project Discovery**: Search your entire indexed codebase, not just open files +* **Flexible Setup**: Choose between OpenAI embeddings or local Ollama processing +* **Vector-Powered Search**: Advanced embedding technology with Qdrant vector database storage +* **Enhanced Settings**: Improved configuration saving and Ollama indexing performance (thanks daniel-lxs!) + +Transform how you navigate large codebases - ask "find authentication logic" and get meaningful results instead of hunting through files. + +For setup instructions and detailed usage, see the main [Codebase Indexing documentation](/features/codebase-indexing). + +--- + +## Context Condensing Upgrades +Our Intelligent Context Condensing feature sees significant enhancements for better control and clarity. **Note**: As of version 3.19.0, this feature is enabled by default. + +Watch a quick overview: +
+
+ +
+
+Key updates: +* **Adjustable Condensing Threshold & Manual Control**: Fine-tune automatic condensing or trigger it manually. [Learn more](/features/intelligent-context-condensing#controlling-context-condensing). +* **Advanced Controls & UI Enhancements**: New settings for fine-tuning conversation compression behavior with improved interface components for managing condensing settings. (thanks SannidhyaSah!) +* **Clear UI Indicators**: Better visual feedback during condensing. [Details](/features/intelligent-context-condensing#understanding-context-condensing-activity). +* **Improved Compression**: Better conversation summarization while preserving important context during compression. (thanks SannidhyaSah!) +* **Accurate Token Counting**: Improved accuracy for context and cost calculations. [More info](/features/intelligent-context-condensing#token-counting). + +For full details, see the main [Intelligent Context Condensing documentation](/features/intelligent-context-condensing). + + +--- + +## Custom Modes: YAML Support + +Custom mode configuration is now significantly improved with **YAML support** for both global and project-level (`.roomodes`) definitions. YAML is the new default, offering superior readability with cleaner syntax, support for comments (`#`), and easier multi-line string management. While JSON remains supported for backward compatibility, YAML streamlines mode creation, sharing, and version control. + +For comprehensive details on YAML benefits, syntax, and migrating existing JSON configurations, please see our updated [Custom Modes documentation](/features/custom-modes#migration-to-yaml-format). (thanks R-omk! Additional thanks to GreatScottyMac for the YAML inspiration!) + +--- + +## API Cost Control: Request Limits +To enhance API cost management, you can now set a **Max Requests** limit for auto-approved actions. This prevents Roo Code from making an excessive number of consecutive API calls without your re-approval. + +Setting the Max Requests limit for auto-approved actions in Roo Code settings. +*Setting the "Max Requests" for auto-approved actions.* + +Warning message indicating the auto-approved request limit has been reached. +*Notification when the auto-approved request limit is met.* + +Learn more about configuring this safeguard in our [Rate Limits and Costs documentation](/advanced-usage/rate-limits-costs#limiting-auto-approved-requests). (Inspired by Cline, thanks hassoncs!) + +--- + +## Documentation Updates + +* **README Display**: Fixed README GIF display across all localized versions, ensuring consistent visual guides for users in all 17 supported languages +* **Referrer URL**: Fixed technical referrer URL issues in documentation links + +--- + +## New Model Version: Gemini 2.5 Flash Preview (May 2025) +Access the latest `gemini-2.5-flash-preview-05-20` model, including its thinking variant. This cutting-edge addition is available via both the generic [Gemini provider](/providers/gemini) and the [Vertex provider](/providers/vertex), further expanding your AI model options. (thanks shariqriazz, daniel-lxs!) + +--- + +## QOL Improvements + +* **Better Tool Selection**: Improved tool descriptions to guide AI in making better file editing decisions +* **MCP Server Loading**: Fixed MCP Server error when running with npx and bunx (thanks devxpain!) +* **Auto-Approve Input**: Fixed issue where chat input would incorrectly clear when auto-approve was enabled (thanks Ruakij!) +* **Resizable Prompt Textareas**: Restored vertical resizing for prompt input textareas (role definition, custom instructions, support prompts) for easier viewing and editing of longer prompts. +* **Settings Import**: Error messages are now provided in multiple languages if an import fails. (thanks ChuKhaLi!) +* **Traditional Chinese Locale**: Improve zh-TW Traditional Chinese locale (thanks PeterDaveHello and chrarnoldus!) + +--- + +## Bug Fixes + +* **Codebase Indexing**: Fixed settings saving and improved Ollama indexing performance for more reliable semantic search (thanks daniel-lxs!) +* **File Handling**: Fixed handling of byte order mark (BOM) when users reject apply_diff operations (thanks avtc!) +* **Context Tracking**: Fixed mark-as-read logic in the context tracker (thanks samhvw8!) +* **Model Cleanup**: Removed deprecated claude-3.7-sonnet models from vscode-lm (thanks shariqriazz!) +* **Global Settings Export**: Fixed global settings export functionality to ensure configurations transfer properly between setups +* **File Picker Icons**: Fixed vscode-material-icons display issues in the file picker for better visual consistency +* **Terminal Integration**: Fixed terminal integration to properly respect user-configured timeout settings (thanks KJ7LNW!) +* **VSCode Command Execution**: Command execution is now type-safe, reducing potential errors. +* **Settings Import**: The system now gracefully handles missing `globalSettings` in import files. (thanks ChuKhaLi!) +* **Diff View Scrolling**: The diff view no longer scrolls unnecessarily during content updates. (thanks qdaxb!) +* **Syntax Highlighting**: Improved syntax highlighting consistency across file listings, code definitions, and error messages. (thanks KJ7LNW!) +* **Grey Screen Issue**: Implemented a fix for the "grey screen" issue by gracefully handling errors when closing diff views, preventing memory leaks. (thanks xyOz-dev!) +* **Settings Import Error Message**: The `settings_import_failed` message is now correctly categorized as an error. (thanks ChuKhaLi!) +* **File Links to Line 0**: Links to files with line number 0 now correctly open at the first line, preventing errors. (thanks RSO!) +* **Packaging `tiktoken.wasm`**: Fixed packaging to include the correct `tiktoken/lite/tiktoken_bg.wasm` file for accurate token counting. (thanks vagadiya!) +* **Audio Playback**: Moved audio playback to the webview to ensure cross-platform compatibility and reliability for notifications and sounds. (thanks SmartManoj, samhvw8!) + +--- + +## Provider Updates + +* **Claude 4.0 Models**: Added support for [`Claude Sonnet 4`](/providers/anthropic) and [`Claude Opus 4`](/providers/anthropic) models with thinking variants for [`Anthropic`](/providers/anthropic), [`Bedrock`](/providers/bedrock), and [`Vertex`](/providers/vertex) providers (thanks shariqriazz!) +* **Enhanced Reasoning**: Added reasoning support for Claude 4 and Gemini 2.5 Flash on [`OpenRouter`](/providers/openrouter), plus fixed o1-pro compatibility +* **Improved Defaults**: Changed default model from Sonnet 3.7 to Sonnet 4 for better performance +* **xAI Models**: Updated [`xAI`](/providers/xai) model list and default model configuration for improved performance (thanks PeterDaveHello!) +* **Prompt Caching**: Enabled prompt caching for Gemini 2.5 Flash Preview to reduce costs and improve response times (thanks shariqriazz!) +* **OpenRouter Settings**: Model settings now persist when selecting specific [`OpenRouter`](/providers/openrouter) providers +* **LiteLLM Refresh**: Added ability to refresh [`LiteLLM`](/providers/litellm) models list for up-to-date model availability +* **LM Studio and Ollama Token Tracking**: Token usage is now tracked for [LM Studio](/providers/lmstudio) and [Ollama](/providers/ollama) providers. (thanks xyOz-dev!) +* **LM Studio Reasoning Support**: Added support for parsing "think" tags in [LM Studio](/providers/lmstudio) responses for enhanced transparency into the AI's process. (thanks avtc!) +* **Qwen3 Model Series for Chutes**: Added new Qwen3 models to the [Chutes provider](/providers/chutes) (e.g., `Qwen/Qwen3-235B-A22B`). (thanks zeozeozeo!) +* **Unbound Provider Model Refresh**: Added a refresh button for [Unbound](/providers/unbound) models to easily update the list of available models and get immediate feedback on API key validity. (thanks pugazhendhi-m!) +* **Requesty Thinking Controls**: Add thinking controls for [Requesty provider](/providers/requesty) (thanks dtrugman!) +* **LiteLLM Metadata**: Improve model metadata for [LiteLLM provider](/providers/litellm) + +--- + +## Misc Improvements + +* **Enhanced Debugging**: Added metadata to API requests across all providers for better troubleshooting and monitoring (thanks dtrugman!) +* **Build Process**: Improved pnpm bootstrapping and fixed bootstrap script parameters for better compatibility (thanks KJ7LNW!, ChuKhaLi!) +* **Code Quality**: Simplified object assignment and modernized code patterns (thanks noritaka1166!) +* **Monorepo Migration**: Switched codebase to a monorepo structure for improved development workflow +* **Automated Nightly Builds**: Created automated [nightly release system](/advanced-usage/roo-code-nightly) to deliver the latest features and fixes more quickly +* **Enhanced Toolchain**: Improved build processes and dependency management for better reliability +* **Modern Linting**: ESLint 9 upgrade with shared configurations catches issues before they reach users +* **E2E Test Suite**: Reorganized end-to-end testing infrastructure for better quality assurance +* **Build Optimizations**: Enhanced build process optimizations reduce bundle size and improve startup times +* **Quality Assurance**: Advanced testing infrastructure catches more issues during development +* **Release Automation**: Improved release process automation reduces manual errors and speeds up delivery +* **Auto-reload in Dev Mode**: Core file changes now automatically trigger a window reload in development mode for a faster workflow. (thanks hassoncs!) +* **Simplified Loop Syntax**: Refactored loop structures in multiple components to use `for...of` loops for improved readability. (thanks noritaka1166!) +* **Telemetry**: Re-enable telemetry + +These improvements work behind the scenes to provide a more reliable and stable extension experience with faster updates and higher quality releases. \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.0.mdx b/apps/docs/docs/update-notes/v3.19.0.mdx new file mode 100644 index 00000000000..8368287bf57 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.0.mdx @@ -0,0 +1,66 @@ +--- +description: This release focuses on streamlining the user interface with intelligent context condensing enabled by default, improved mode organization, enhanced file protection, and numerous quality-of-life improvements. +--- + +# Roo Code 3.19.0 Release Notes (2025-05-30) + +This release focuses on streamlining the user interface with intelligent context condensing enabled by default, improved mode organization, enhanced file protection, and numerous quality-of-life improvements. + +--- + +## Intelligent Context Condensing Now Default +We've enabled intelligent context condensing by default and relocated the condense button for easier access: + +Context condensed message in chat + +- **Default Activation**: Intelligent context condensing is now enabled out of the box for all users +- **Improved Button Placement**: Moved the condense button out of the expanded task menu for quicker access +- **Smart Error Handling**: The system now skips condensing and shows clear error messages if context grows during the condensing process + +Settings for Intelligent Context Condensing +*Intelligent Context Condensing configuration options: automatic triggering toggle, threshold slider, API configuration selection, and custom prompt customization.* + +--- + +## Streamlined Mode Organization +We've reorganized the interface for better workflow organization: + +- **Modes Tab**: Transformed the Prompts tab into a dedicated Modes tab for clearer navigation +- **Settings Relocation**: Moved support prompts to Settings for better organization +- **Cleaner Interface**: Simplified the main interface by grouping related features more logically + +Navigate between different modes and prompts more intuitively. + +--- + +## QOL Improvements + +* **Enhanced Sidebar Compatibility**: Menu functionality now remains stable when moving Roo between primary and secondary sidebars (thanks chrarnoldus!) + +--- + +## Bug Fixes + +* **Directory Mention Protection**: Fixed [`@directory`](/basic-usage/context-mentions) not respecting [`.rooignore`](/features/rooignore) files (thanks xyOz-dev!) +* **Tool File Protection**: Added [`rooignore`](/features/rooignore) checking for `insert_content` and `search_and_replace` tools +* **Memory Leak Fix**: Resolved memory leak in ChatView by stabilizing callback props (thanks samhvw8!) +* **Empty File Creation**: Fixed [`write_to_file`](/advanced-usage/available-tools/write-to-file) to properly create empty files when content is empty (thanks Ruakij!) +* **Chat Input Stability**: Fixed chat input clearing during running tasks (thanks xyOz-dev!) + +--- + +## Provider Updates + +* **DeepSeek R1 0528**: Add DeepSeek R1 0528 model support to [Chutes provider](/providers/chutes) (thanks zeozeozeo!) +* **AWS Regions**: Updated AWS regions to include Spain and Hyderabad + +--- + +## Misc Improvements + +* **MCP Environment Variables**: Add environment variable injection support for whole MCP config (thanks NamesMT!) +* **Shell Compatibility**: Improve POSIX shell compatibility in pre-push hook (thanks PeterDaveHello and chrarnoldus!) +* **Windows Terminal**: Update PAGER environment variable for Windows compatibility in Terminal (thanks SmartManoj!) +* **Search Clarity**: Update codebase search description to emphasize English query requirements (thanks ChuKhaLi!) + +Thank you to all our contributors for making Roo Code better with each release! diff --git a/apps/docs/docs/update-notes/v3.19.1.mdx b/apps/docs/docs/update-notes/v3.19.1.mdx new file mode 100644 index 00000000000..fb19864bbc6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.1.mdx @@ -0,0 +1,48 @@ +--- +description: This patch release delivers critical fixes and experimental features to enhance your development experience, including multi-file reading capabilities, improved MCP server integration, and enterprise security enhancements. +--- + +# Roo Code 3.19.1 Release Notes (2025-05-31) + +This patch release delivers critical fixes and experimental features to enhance your development experience, including multi-file reading capabilities, improved MCP server integration, and enterprise security enhancements. + +--- + +## Multi-File Reading (Experimental) +We've introduced an experimental feature for handling large codebases more efficiently: + +- **Batch File Processing**: Read up to 100 files in a single operation for comprehensive code analysis +- **Performance Control**: Adjustable concurrent file read limits to optimize for your system +- **Smart Permission Management**: Streamlined approval process for multi-file operations +- **Efficiency Boost**: Dramatically reduces the time needed to analyze multiple related files + +This experimental feature transforms how Roo Code understands and works with your entire codebase at once (thanks samhvw8!). + +--- + +## Enterprise-Ready VPC Endpoint Support +We've added crucial enterprise security features for [AWS Bedrock](/providers/bedrock) users: + +- **Secure Corporate Access**: Configure custom VPC endpoints to keep all LLM transactions within your firewall +- **Easy Configuration**: Simple checkbox and text field to enable VPC endpoint usage +- **Compliance Ready**: Meet your organization's security policies while using powerful AI models +- **Flexible Control**: Toggle VPC endpoints on/off as needed with settings persistence + +Enterprise customers can now use Roo Code with AWS Bedrock while maintaining complete network security (thanks kcwhite!). See the [AWS Bedrock configuration guide](/providers/bedrock#configuration-in-roo-code) for setup instructions. + +--- + +## Bug Fixes + +* **MCP Server Authentication**: Fixed SSE header passing to correctly authenticate with remote MCP servers +* **AWS Bedrock Conversations**: Resolved context condensing error that required conversations to start with user messages +* **Terminal UTF-8 Encoding**: Fixed encoding errors when running Ruby/CocoaPods commands (thanks mr-ryan-james!) +* **Sidebar Context Menus**: Resolved empty menu items by properly setting sidebar name (thanks chrarnoldus!) +* **Documentation Links**: Fixed broken CONTRIBUTING.md link in feature request template (thanks cannuri!) + +--- + +## Misc Improvements + +* **Backend Task Tracking**: Added metadata to Unbound API requests for improved service reliability (thanks pugazhendhi-m!) +* **Model-Specific Caching**: Optimized cache strategies for Gemini and Anthropic models for better performance \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.2.mdx b/apps/docs/docs/update-notes/v3.19.2.mdx new file mode 100644 index 00000000000..0b14cd900c6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.2.mdx @@ -0,0 +1,40 @@ +--- +description: This release includes improvements to MCP server connectivity, provider enhancements, UI optimizations, and several bug fixes and security updates. +--- + +# Roo Code 3.19.2 Release Notes (2025-06-01) + +This release includes improvements to MCP server connectivity, provider enhancements, UI optimizations, and several bug fixes and security updates. + +--- + +## QOL Improvements + +* **Streamable HTTP Transport for MCP Servers**: Added support for MCP servers using streamable HTTP-based transport (thanks taylorwilsdon!) ([#3260](https://github.com/RooCodeInc/Roo-Code/pull/3260)) +* **MCP Server Instructions Support**: Added support for server instructions in MCP configuration (thanks qingyuan1109!) ([#4210](https://github.com/RooCodeInc/Roo-Code/pull/4210)) +* **Optimized Chat Layout and Styles**: Fine-tuned the layout and styling of chat messages for improved readability (thanks zhangtony239!) ([#4205](https://github.com/RooCodeInc/Roo-Code/pull/4205)) + +--- + +## Provider Updates + +* **Enhanced LiteLLM Provider**: Added cached read and write tokens to stats and cost calculation (thanks mollux!) ([#4206](https://github.com/RooCodeInc/Roo-Code/pull/4206)) + +--- + +## Bug Fixes + +* **Prevent Full File Dump on User Edit**: Resolved an issue where editing a file before saving a proposed modification could dump the entire file content into the context. This fix prevents context bloat, maintains model focus, and reduces costs ([#4219](https://github.com/RooCodeInc/Roo-Code/pull/4219), [#3654](https://github.com/RooCodeInc/Roo-Code/pull/3654)) (thanks KJ7LNW!). +* **Correct OpenAI-Compatible API Key Label**: The label for OpenAI-compatible API keys in settings now correctly reads "API Key" instead of "OpenAI API Key" for better clarity ([#4191](https://github.com/RooCodeInc/Roo-Code/pull/4191)). +* **Prevent Invalid Markers in `apply_diff` REPLACE**: Added validation to ensure `:start_line:` and `:end_line:` markers are not incorrectly included in the `REPLACE` section of `apply_diff` operations, improving robustness ([#4015](https://github.com/RooCodeInc/Roo-Code/pull/4015)) (thanks KJ7LNW!). +* **Fix Virtuoso Footer Re-rendering**: Addressed an issue where the Virtuoso component's footer would continuously re-render, improving UI performance ([#4209](https://github.com/RooCodeInc/Roo-Code/pull/4209)) (thanks kiwina!). +* **Release Memory in `apply_diff`**: Optimized memory usage in the `apply_diff` tool by explicitly releasing the original content buffer after use, helping to prevent potential memory leaks ([#4193](https://github.com/RooCodeInc/Roo-Code/pull/4193)) (thanks xyOz-dev!). +* **Fix Directory Link Handling in Markdown**: Enhanced how directory links in markdown (e.g., `[some/directory/](some/directory/)`) are handled, ensuring they correctly open in the Explorer view ([#3690](https://github.com/RooCodeInc/Roo-Code/pull/3690)) (thanks KJ7LNW!). +* **Typo Fixes**: Corrected various typos in comments and tool use prompts ([#4220](https://github.com/RooCodeInc/Roo-Code/pull/4220), [#4095](https://github.com/RooCodeInc/Roo-Code/pull/4095)) (thanks mrubens, noritaka1166!). + +--- + +## Misc Improvements + +* **Unified History Item UI**: Refactored history item UI components for code consistency (thanks daniel-lxs!) ([#4151](https://github.com/RooCodeInc/Roo-Code/pull/4151)) +* **Node.js Upgrade**: Upgraded Node.js to `v20.19.2` to incorporate the latest security enhancements and ensure a more secure environment (thanks PeterDaveHello!) ([#4212](https://github.com/RooCodeInc/Roo-Code/pull/4212)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.3.mdx b/apps/docs/docs/update-notes/v3.19.3.mdx new file mode 100644 index 00000000000..563d6cd02c4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.3.mdx @@ -0,0 +1,13 @@ +--- +description: This patch release includes a quality-of-life improvement for MCP server connections. +--- + +# Roo Code 3.19.3 Release Notes (2025-06-02) + +This patch release includes a quality-of-life improvement for MCP server connections. + +--- + +## QOL Improvements + +* **MCP Server Connection Reliability**: Fixed SSE connection issue for MCP servers using web-based transports (thanks taylorwilsdon!) ([#4251](https://github.com/RooCodeInc/Roo-Code/pull/4251)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.4.mdx b/apps/docs/docs/update-notes/v3.19.4.mdx new file mode 100644 index 00000000000..352b1c82998 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.4.mdx @@ -0,0 +1,53 @@ +--- +description: This patch release delivers critical memory leak fixes, new Gemini 2.5 Pro Preview 06-05 model support, improved infrastructure for evals, and several quality-of-life and workflow enhancements. +--- + +# Roo Code 3.19.4 Release Notes (2025-06-05) + +This patch release delivers critical memory leak fixes, new Gemini 2.5 Pro Preview 06-05 model support, improved infrastructure for evals, and several quality-of-life and workflow enhancements. + +--- + +## Gemini 2.5 Pro Preview 06-05 Model Support +We've added support for the newly released Gemini 2.5 Pro Preview 06-05 model, giving you access to the latest advancements from Google (thanks daniel-lxs and shariqriazz!). This model is available in the [Gemini](/providers/gemini), [Vertex](/providers/vertex), and [OpenRouter](/providers/openrouter) providers. + +--- + +## Major Memory Leak Fixes +We've resolved multiple memory leaks across the extension, resulting in improved stability and performance: +- **ChatView**: Fixed leaks from unmanaged async operations and setTimeouts (thanks kiwina!) +- **WorkspaceTracker**: FileSystemWatcher and other disposables are now properly cleaned up (thanks kiwina!) +- **RooTips**: setTimeout is now cleared to prevent state updates on unmounted components (thanks kiwina!) +- **RooIgnoreController**: FileSystemWatcher leak resolved by ensuring Task.dispose() is always called (thanks kiwina!) +- **Clipboard**: useCopyToClipboard now clears setTimeout to avoid memory leaks (thanks kiwina!) +- **ClineProvider**: Instance cleanup improved to prevent lingering resources (thanks xyOz-dev!) + +--- + +## Bug Fixes + +* **Mermaid Diagrams**: Fixed Content Security Policy (CSP) errors for Mermaid diagrams by implementing an enhanced bundling strategy (thanks KJ7LNW!) + +--- + +## Provider Updates + +* **Bedrock**: Improved model information detection for custom Bedrock ARNs, ensuring better compatibility (thanks adamhill!) + +--- + +## QOL Improvements + +* **Fix reading PDF, DOCX, and IPYNB files in [`read_file`](/advanced-usage/available-tools/read-file) tool**: Ensures reliable reading of these file types (thanks samhvw8!) + +--- + +## Misc Improvements + +* **OpenAI Compatible Embedder**: Added a new embedder for codebase indexing that is compatible with the OpenAI API, expanding options for local and custom embedding models (thanks SannidhyaSah!) +* **Enforce [`codebase_search`](/advanced-usage/available-tools/codebase-search) as primary tool**: Roo Code now always uses codebase_search as the first step for code understanding tasks, improving accuracy and consistency (thanks hannesrudolph!) +* **Improved Docker setup for evals**: Dockerfile and docker-compose updated for better isolation, real-time monitoring, and streamlined configuration +* **Move evals into pnpm workspace, switch from SQLite to Postgres**: Evals are now managed in a pnpm workspace and use PostgreSQL for improved scalability +* **Refactor [MCP](/features/mcp/overview) to use getDefaultEnvironment for stdio client transport**: Simplifies MCP client setup and improves maintainability (thanks samhvw8!) +* **Get rid of "partial" component in names referencing not necessarily partial messages**: Improves code clarity (thanks wkordalski!) +* **Improve feature request template**: Makes it easier to submit actionable feature requests (thanks elianiva!) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.5.mdx b/apps/docs/docs/update-notes/v3.19.5.mdx new file mode 100644 index 00000000000..d8fa9bca201 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.5.mdx @@ -0,0 +1,20 @@ +--- +description: This release focuses on fixing a bug with the Gemini 2.5 Pro Preview model and improving the internal evaluation system. +--- + +# Roo Code 3.19.5 Release Notes (2025-06-05) + +This release focuses on fixing a bug with the Gemini 2.5 Pro Preview model and improving the internal evaluation system. + +--- + +## Bug Fixes + +* **Gemini 2.5 Pro Preview**: Fixed a bug where the thinking budget was not being correctly applied, causing errors. Roo Code will now correctly default to the specified token values when they are not defined in the settings. (thanks cte!) ([#4401](https://github.com/RooCodeInc/Roo-Code/pull/4401)) + +--- + +## Misc Improvements + +* **Evals**: Improved the "run status" section of the internal evaluation system to provide more detailed information about the status of the task stream, controller, and runners. (thanks cte!) ([#4400](https://github.com/RooCodeInc/Roo-Code/pull/4400)) +* **Evals**: Rust evaluations are now run using bash to improve reliability. Logging has also been improved to provide more consistent output. (thanks cte!) ([#4392](https://github.com/RooCodeInc/Roo-Code/pull/4392)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.6.mdx b/apps/docs/docs/update-notes/v3.19.6.mdx new file mode 100644 index 00000000000..0e33550de8d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.6.mdx @@ -0,0 +1,39 @@ +--- +description: This release introduces implicit caching for Gemini models to reduce latency, clarifies the concurrent file read limit, and includes several bug fixes and quality-of-life improvements. +--- + +# Roo Code 3.19.6 Release Notes (2025-06-09) + +This release introduces implicit caching for Gemini models to reduce latency, clarifies the concurrent file read limit, and includes several bug fixes and quality-of-life improvements. + +--- + +## Provider Updates + +* **OpenRouter Latency**: Replaced explicit caching with implicit caching for Gemini models via OpenRouter to significantly reduce latency ([#4488](https://github.com/RooCodeInc/Roo-Code/pull/4488)) + +--- + +## QOL Improvements + +* **History Preview**: Buttons in the history preview now fade when there is no interaction, providing a cleaner UI (thanks samhvw8!) ([#4458](https://github.com/RooCodeInc/Roo-Code/pull/4458)) + +--- + +## Bug Fixes + +* **MCP Server Management**: Fixed a bug where the MCP server list would not update correctly after changes (like adding or deleting servers) without a full extension reload. The manual refresh button and automatic refresh on configuration changes now work reliably. (thanks taylorwilsdon!) ([#4267](https://github.com/RooCodeInc/Roo-Code/pull/4267)) +* **LiteLLM Provider**: Fixed a bug that caused an error when the LiteLLM provider URL contained a trailing slash (thanks kcwhite!) ([#4275](https://github.com/RooCodeInc/Roo-Code/pull/4275)) +* **Copy Button**: Fixed an issue with the copy button logic (thanks samhvw8!) ([#4458](https://github.com/RooCodeInc/Roo-Code/pull/4458)) + +--- + +## Documentation Updates + +* **Concurrent File Reads**: Clarified that the default concurrent file read limit is 15, not the maximum (thanks olearycrew!) ([#4474](https://github.com/RooCodeInc/Roo-Code/pull/4474)) + +--- + +## Misc Improvements + +* **Build Scripts**: Removed unnecessary `npx` usage from some npm scripts (thanks user202729!) ([#4003](https://github.com/RooCodeInc/Roo-Code/pull/4003)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.7.mdx b/apps/docs/docs/update-notes/v3.19.7.mdx new file mode 100644 index 00000000000..2d8281c20ef --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.7.mdx @@ -0,0 +1,20 @@ +--- +description: This release focuses on improving the user experience by fixing focus behavior, disabling conflicting features, and improving testing standards. +--- + +# Roo Code 3.19.7 Release Notes (2025-06-11) + +This release focuses on improving the user experience by fixing focus behavior, disabling conflicting features, and improving testing standards. + +## Bug Fixes + +* **McpHub Sidebar Focus**: We've fixed an issue where the McpHub sidebar would unexpectedly grab focus, providing a smoother navigation experience. ([#4548](https://github.com/RooCodeInc/Roo-Code/pull/4548)) +* **Checkpoints**: We've disabled the checkpoint functionality when nested git repositories are detected to prevent conflicts. ([#4509](https://github.com/RooCodeInc/Roo-Code/pull/4509)) + +## Misc Improvements + +* **Storybook**: We've removed unused Storybook components and dependencies to reduce the bundle size. ([#4517](https://github.com/RooCodeInc/Roo-Code/pull/4517)) +* **ESLint**: We've added a `data-testid` ESLint rule to improve our testing standards (thanks elianiva!). ([#4505](https://github.com/RooCodeInc/Roo-Code/pull/4505)) +* **Dependencies**: We've updated our development dependencies, including eslint, knip, @types/node, i18next, fast-xml-parser, and @google/genai. +* **CI**: We've improved our CI infrastructure with GitHub Actions and Blacksmith runner migrations. ([#4472](https://github.com/RooCodeInc/Roo-Code/pull/4472), [#4507](https://github.com/RooCodeInc/Roo-Code/pull/4507)) +* **Gemini**: We've added the ability to control the thinking budget for Gemini models via Requesty (thanks dtrugman!). ([#4486](https://github.com/RooCodeInc/Roo-Code/pull/4486)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.19.mdx b/apps/docs/docs/update-notes/v3.19.mdx new file mode 100644 index 00000000000..75d5c3f1a44 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.19.mdx @@ -0,0 +1,60 @@ +--- +description: Roo Code 3.19 focuses on UI improvements with intelligent context condensing enabled by default, enhanced file protection, and experimental multi-file reading. +keywords: + - Roo Code 3.19 + - release notes + - context condensing + - multi-file reading + - UI improvements +--- + +# Roo Code 3.19 Release Notes (2025-06-09) + +This release series focuses on streamlining the user interface with intelligent context condensing enabled by default, improved mode organization, enhanced file protection, experimental multi-file reading capabilities, and numerous quality-of-life improvements. + +--- + +## Provider Updates + +* **OpenRouter Latency**: Replaced explicit caching with implicit caching for Gemini models via OpenRouter to significantly reduce latency ([#4488](https://github.com/RooCodeInc/Roo-Code/pull/4488)) + +* **Bedrock**: Improved model information detection for custom Bedrock ARNs, ensuring better compatibility (thanks adamhill!) + +--- + +## QOL Improvements + +* **Fix reading PDF, DOCX, and IPYNB files in [`read_file`](/advanced-usage/available-tools/read-file) tool**: Ensures reliable reading of these file types (thanks samhvw8!) +* **History Preview**: Buttons in the history preview now fade when there is no interaction, providing a cleaner UI (thanks samhvw8!) ([#4458](https://github.com/RooCodeInc/Roo-Code/pull/4458)) + +--- + +## Bug Fixes + +* **Mermaid Diagrams**: Fixed Content Security Policy (CSP) errors for Mermaid diagrams by implementing an enhanced bundling strategy (thanks KJ7LNW!) +* **LiteLLM Provider**: Fixed a bug that caused an error when the LiteLLM provider URL contained a trailing slash (thanks kcwhite!) ([#4275](https://github.com/RooCodeInc/Roo-Code/pull/4275)) +* **Copy Button**: Fixed an issue with the copy button logic (thanks samhvw8!) ([#4458](https://github.com/RooCodeInc/Roo-Code/pull/4458)) +* **MCP Server Management**: Fixed a bug where the MCP server list would not update correctly after changes (like adding or deleting servers) without a full extension reload. The manual refresh button and automatic refresh on configuration changes now work reliably. (thanks taylorwilsdon!) ([#4267](https://github.com/RooCodeInc/Roo-Code/pull/4267)) +* **McpHub Sidebar Focus**: We've fixed an issue where the McpHub sidebar would unexpectedly grab focus, providing a smoother navigation experience. ([#4548](https://github.com/RooCodeInc/Roo-Code/pull/4548)) +* **Checkpoints**: We've disabled the checkpoint functionality when nested git repositories are detected to prevent conflicts. ([#4509](https://github.com/RooCodeInc/Roo-Code/pull/4509)) + +--- + +## Documentation Updates + +* **Concurrent File Reads**: Clarified that the default concurrent file read limit is 15, not the maximum (thanks olearycrew!) ([#4474](https://github.com/RooCodeInc/Roo-Code/pull/4474)) + +--- + +## Misc Improvements + +* **OpenAI Compatible Embedder**: Added a new embedder for codebase indexing that is compatible with the OpenAI API, expanding options for local and custom embedding models (thanks SannidhyaSah!) +* **Enforce [`codebase_search`](/advanced-usage/available-tools/codebase-search) as primary tool**: Roo Code now always uses codebase_search as the first step for code understanding tasks, improving accuracy and consistency (thanks hannesrudolph!) +* **Build Scripts**: Removed unnecessary `npx` usage from some npm scripts (thanks user202729!) ([#4003](https://github.com/RooCodeInc/Roo-Code/pull/4003)) +* **Storybook**: We've removed unused Storybook components and dependencies to reduce the bundle size. ([#4517](https://github.com/RooCodeInc/Roo-Code/pull/4517)) +* **ESLint**: We've added a `data-testid` ESLint rule to improve our testing standards (thanks elianiva!). ([#4505](https://github.com/RooCodeInc/Roo-Code/pull/4505)) +* **Dependencies**: We've updated our development dependencies, including eslint, knip, @types/node, i18next, fast-xml-parser, and @google/genai. +* **CI**: We've improved our CI infrastructure with GitHub Actions and Blacksmith runner migrations. ([#4472](https://github.com/RooCodeInc/Roo-Code/pull/4472), [#4507](https://github.com/RooCodeInc/Roo-Code/pull/4507)) +* **Gemini**: We've added the ability to control the thinking budget for Gemini models via Requesty (thanks dtrugman!). ([#4486](https://github.com/RooCodeInc/Roo-Code/pull/4486)) + +Thank you to all our contributors for making Roo Code better with each release! \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.2.0.md b/apps/docs/docs/update-notes/v3.2.0.md new file mode 100644 index 00000000000..a56f9d51d5f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.0.md @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.2.0 marks the rebranding from Roo Cline to Roo Code and introduces Custom Modes for creating specialized AI assistants. +keywords: + - roo code + - v3.2.0 + - rebranding + - custom modes + - personas + - specialized assistants + - custom prompts + - tool access + - release notes +--- + +# Roo Code 3.2.0 Release Notes + +This release marks the rebranding from Roo Cline to Roo Code and introduces Custom Modes! + +--- + +## Feature Highlights + +- **Name Change:** The extension has been renamed from Roo Cline to Roo Code. +- **Custom Modes:** You can now create your own custom modes (personas) for Roo Code beyond the built-in Code, Architect, and Ask modes. Define custom prompts and choose which tools each mode can access to create specialized assistants. Start by typing "Create a new mode for..." or visit the Prompts tab. diff --git a/apps/docs/docs/update-notes/v3.2.3.md b/apps/docs/docs/update-notes/v3.2.3.md new file mode 100644 index 00000000000..762866304e2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.3.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.2.3 fixes a bug where the preferred language selector setting was not working correctly for improved localization support. +keywords: + - roo code + - v3.2.3 + - language selector + - localization fix + - settings bug + - patch release + - internationalization + - release notes +--- + +# Roo Code 3.2.3 Release Notes + +This patch release fixes an issue with the language selector setting. + +--- + +## Bug Fixes + +- Fixed a bug where the preferred language selector setting was not working correctly. diff --git a/apps/docs/docs/update-notes/v3.2.4.md b/apps/docs/docs/update-notes/v3.2.4.md new file mode 100644 index 00000000000..8dd20af6148 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.4.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.2.4 ensures the apply_diff tool is only used when diff editing (Fast Edits) is enabled in settings for proper tool usage. +keywords: + - roo code + - v3.2.4 + - diff tool + - fast edits + - apply_diff + - settings alignment + - tool usage + - release notes +--- + +# Roo Code 3.2.4 Release Notes + +This patch release ensures diff tool usage aligns with settings. + +--- + +## Fixes + +- Ensured the `apply_diff` tool is only used if diff editing ("Fast Edits") is enabled in settings. diff --git a/apps/docs/docs/update-notes/v3.2.5.md b/apps/docs/docs/update-notes/v3.2.5.md new file mode 100644 index 00000000000..40b88c6a19a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.5.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.2.5 adds the gemini-flash-thinking-01-21 model and includes minor visual fixes for improved user interface consistency. +keywords: + - roo code + - v3.2.5 + - gemini flash thinking + - new model + - visual fixes + - ui improvements + - patch release + - release notes +--- + +# Roo Code 3.2.5 Release Notes + +This patch release adds a new Gemini model and includes visual fixes. + +--- + +## Updates & Fixes + +- Added the `gemini-flash-thinking-01-21` model. (thanks monotykamary!) +- Included minor visual fixes. (thanks monotykamary!) diff --git a/apps/docs/docs/update-notes/v3.2.6.md b/apps/docs/docs/update-notes/v3.2.6.md new file mode 100644 index 00000000000..07a57776538 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.6.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.2.6 fixes a bug related to role definition overrides for built-in modes, ensuring proper custom mode functionality. +keywords: + - roo code + - v3.2.6 + - custom mode + - role definition + - override fix + - built-in modes + - bug fix + - release notes +--- + +# Roo Code 3.2.6 Release Notes + +This patch release fixes an issue with custom mode overrides. + +--- + +## Bug Fixes + +- Fixed a bug related to role definition overrides for built-in modes. diff --git a/apps/docs/docs/update-notes/v3.2.7.md b/apps/docs/docs/update-notes/v3.2.7.md new file mode 100644 index 00000000000..798cb645b40 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.7.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.2.7 fixes a bug preventing the creation of new API configuration profiles, restoring full profile management functionality. +keywords: + - roo code + - v3.2.7 + - api configuration + - profile creation + - bug fix + - configuration management + - patch release + - release notes +--- + +# Roo Code 3.2.7 Release Notes + +This patch release fixes an issue with creating new API configuration profiles. + +--- + +## Bug Fixes + +- Fixed a bug preventing the creation of new API configuration profiles. diff --git a/apps/docs/docs/update-notes/v3.2.8.md b/apps/docs/docs/update-notes/v3.2.8.md new file mode 100644 index 00000000000..f8dd1b1032a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.8.md @@ -0,0 +1,27 @@ +--- +description: Roo Code 3.2.8 fixes custom modes settings, improves API key entry validation, adds Azure checkbox for OpenAI, and updates Bedrock models. +keywords: + - roo code + - v3.2.8 + - provider integration + - settings fixes + - azure openai + - glama usage + - bedrock llama + - api validation + - release notes +--- + +# Roo Code 3.2.8 Release Notes + +This patch release includes fixes for settings and provider integrations. + +--- + +## Bug Fixes + +- Fixed an issue opening the custom modes settings JSON file. +- Reverted provider key entry validation to check `onInput` instead of `onChange` to address issues entering API keys. (thanks samhvw8!) +- Added an explicit checkbox to use Azure for OpenAI compatible providers. (thanks samhvw8!) +- Fixed Glama usage reporting. (thanks punkpeye!) +- Added Llama 3.3 70B Instruct model to AWS Bedrock provider options. (thanks Premshay!) diff --git a/apps/docs/docs/update-notes/v3.2.md b/apps/docs/docs/update-notes/v3.2.md new file mode 100644 index 00000000000..d62a6a214b3 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.2.md @@ -0,0 +1,45 @@ +--- +description: Roo Code 3.2 marks the rebranding from Roo Cline, introduces Custom Modes for specialized assistants, and includes provider updates and fixes. +keywords: + - roo code + - v3.2 + - rebranding + - custom modes + - roo cline + - gemini flash + - bedrock llama + - azure openai + - release cycle +--- + +# Roo Code 3.2 Release Notes (2025-02-27) + +This release cycle primarily focused on the rebranding from Roo Cline to Roo Code, the introduction of Custom Modes, and several provider updates and bug fixes. + +--- + +## Name Change & Custom Modes (v3.2.0 - v3.2.2) + +- **Name Change From Roo Cline to Roo Code:** Rebranded to Roo Code to better reflect its identity. +- **Custom Modes:** Introduced the ability to create custom personas for Roo Code, define custom prompts, choose tool access for each mode, and create specialized assistants. Users can get started via the Prompts tab or by typing "Create a new mode for ". + +--- + +## Provider Updates + +- **Llama 3.3 70B Instruct for Bedrock:** Added Llama 3.3 70B Instruct model to AWS Bedrock provider options. (thanks @Premshay!) +- **Gemini Flash Thinking 01-21 Model:** Added `gemini flash thinking 01-21` model. (thanks @monotykamary!) + +--- + +## Bug Fixes & QOL Improvements + +- **Fixed Bug Opening Custom Modes Settings JSON** +- **Reverted Provider Key Entry Check:** Changed provider key entry back to `onInput` from `onChange` to address issues entering API keys. (thanks @samhvw8!) +- **Azure Checkbox for OpenAI Compatible:** Added an explicit checkbox to use Azure for OpenAI compatible providers. (thanks @samhvw8!) +- **Fixed Glama Usage Reporting.** (thanks @punkpeye!) +- **Fixed Bug Creating New Configuration Profiles.** +- **Fixed Bug with Role Definition Overrides for Built-in Modes.** +- **Visual Fixes for Gemini Flash Thinking Model.** (thanks @monotykamary!) +- **Diff Tool Usage Control:** Only allow use of the diff tool if it's enabled in settings. +- **Fixed Language Selector Bug.** diff --git a/apps/docs/docs/update-notes/v3.20.0.mdx b/apps/docs/docs/update-notes/v3.20.0.mdx new file mode 100644 index 00000000000..f00683b5ee7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.20.0.mdx @@ -0,0 +1,76 @@ +--- +description: This release introduces the experimental Marketplace for extensions and modes, concurrent file edits and reads, and numerous other improvements and bug fixes. +--- + +# Roo Code 3.20.0 Release Notes (2025-06-12) + +This release introduces the experimental Marketplace for extensions and modes, concurrent file edits and reads, and numerous other improvements and bug fixes. + +## MCP & Mode Marketplace (experimental) + +We've introduced an experimental [Marketplace](/features/marketplace) for discovering and installing community-contributed extensions and modes. This feature allows you to: +- Browse and search for new modes and MCP servers +- Install items at project or global scope +- Manage installations directly from the Marketplace view + +**To enable:** Open Roo Code settings (gear icon) → Experimental Settings → Enable "Marketplace" + +(thanks Smartsheet-JB-Brown, elianiva, monkeyDluffy6017, NamesMT, daniel-lxs, and more!) ([#4538](https://github.com/RooCodeInc/Roo-Code/pull/4538), [#4604](https://github.com/RooCodeInc/Roo-Code/pull/4604)) + +MCP tab showing available MCPs with install and remove buttons + +## Concurrent Edits (aka multi-file)(experimental) + +You can now perform edits across multiple files at once, dramatically speeding up refactoring and multi-file changes. Instead of approving each file edit individually, you can review and approve all changes at once through a unified batch approval interface. Check out our [concurrent file edits documentation](/features/experimental/concurrent-file-edits) for more details. + +**To enable:** Open Roo Code settings (gear icon) → Experimental Settings → Enable "Enable multi-file edits" + +(thanks samhvw8!) ([#4608](https://github.com/RooCodeInc/Roo-Code/pull/4608)) + +Batch diff approval interface showing multiple file changes + +## Concurrent Reads (aka multi-file) + +The setting for concurrent reads has been moved to the context settings, with a default of 5. This feature allows Roo to read multiple files from your workspace in a single step, significantly improving efficiency when working on tasks that require context from several files. Learn more in our [concurrent file reads documentation](/features/concurrent-file-reads). + +([#4597](https://github.com/RooCodeInc/Roo-Code/pull/4597)) + +Batch approval interface for reading multiple files + +## Prompt History + +Navigate your prompt history with a terminal-like experience using the arrow keys. This feature makes it easy to reuse and refine previous prompts, whether from your current conversation or past tasks. See our [keyboard shortcuts documentation](/features/keyboard-shortcuts#command-line-style-prompt-history-navigation) for usage details. + +([#4580](https://github.com/RooCodeInc/Roo-Code/pull/4580)) + +## QOL Improvements + +* **MCP Execution**: The user experience for MCP execution has been improved (thanks samhvw8!). +* **Magic Variables**: Added support for magic variables for MCPs, including `workspaceFolder` injection (thanks NamesMT!) ([#4442](https://github.com/RooCodeInc/Roo-Code/pull/4442)). +* **Context Mentions**: Added support for escaping context mentions (thanks KJ7LNW!). +* **Mermaid Diagrams**: Added buttons to Mermaid diagrams for zooming, copying, and viewing the code (thanks qdaxb!) ([#4547](https://github.com/RooCodeInc/Roo-Code/pull/4547)). + +## Provider Updates + +* **[DeepSeek](/providers/deepseek)**: Added DeepSeek R1 support to the Chutes provider. +* **[Bedrock](/providers/bedrock)**: Added reasoning budget support to Bedrock models for extended thinking ([#4481](https://github.com/RooCodeInc/Roo-Code/pull/4481)). +* **[XAI](/providers/xai)**: Updated XAI models and pricing (thanks edwin-truthsearch-io!). +* **[O3](/providers/openai)**: Updated O3 model pricing ([#4580](https://github.com/RooCodeInc/Roo-Code/pull/4580)). +* **[OpenAI-Compatible](/providers/openai-compatible)**: Added manual OpenAI-compatible format specification and parsing (thanks dflatline!) ([#4463](https://github.com/RooCodeInc/Roo-Code/pull/4463)). +* **[OpenRouter](/providers/openrouter)**: Fixed cost calculation with BYOK (thanks chrarnoldus!) ([#4543](https://github.com/RooCodeInc/Roo-Code/pull/4543)). + +## Bug Fixes + +* **[`write_to_file`](/advanced-usage/available-tools/write-to-file)**: Fixed an issue with the `write_to_file` tool with early `relPath` & `newContent` validation checks (thanks Ruakij!) ([#4378](https://github.com/RooCodeInc/Roo-Code/pull/4378)). +* **TaskItem Display**: Fixed display and copy issues with HTML tags in task messages (thanks forestyoo!) ([#4444](https://github.com/RooCodeInc/Roo-Code/pull/4444)). +* **Terminal Busy State**: Fixed an issue where the terminal busy state was not reset after manual commands completed ([#4583](https://github.com/RooCodeInc/Roo-Code/pull/4583)). +* **[`apply_diff`](/advanced-usage/available-tools/apply-diff)**: Fixed an issue with undefined output on multi-file `apply_diff` operations (thanks daniel-lxs!) ([#4608](https://github.com/RooCodeInc/Roo-Code/pull/4608)). + +## Documentation + +* **`whenToUse`**: Populated `whenToUse` descriptions for built-in modes ([#4579](https://github.com/RooCodeInc/Roo-Code/pull/4579)). +* **JSDoc**: Added JSDoc documentation for `ClineAsk` and `ClineSay` types ([#4427](https://github.com/RooCodeInc/Roo-Code/pull/4427)). + +## Internal + +* **Integration Tests**: Added core tools integration tests for comprehensive coverage ([#4433](https://github.com/RooCodeInc/Roo-Code/pull/4433)). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.20.1.mdx b/apps/docs/docs/update-notes/v3.20.1.mdx new file mode 100644 index 00000000000..ad8a0894f64 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.20.1.mdx @@ -0,0 +1,16 @@ +--- +description: This release temporarily reverts Bedrock model support, improves MCP execution block performance, and adds an indexing status badge to the chat view. +--- + +# Roo Code 3.20.1 Release Notes (2025-06-12) + +This release temporarily reverts Bedrock model support, improves MCP execution block performance, and adds an indexing status badge to the chat view. + +## Bug Fixes + +* **Bedrock**: Temporarily revert thinking support for Bedrock models ([#4626](https://github.com/RooCodeInc/Roo-Code/pull/4626)) + +## Misc Improvements + +* **Performance**: Improve performance of MCP execution block ([#4615](https://github.com/RooCodeInc/Roo-Code/pull/4615)) +* **UI**: Add indexing status badge to chat view ([#4532](https://github.com/RooCodeInc/Roo-Code/pull/4532)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.20.2.mdx b/apps/docs/docs/update-notes/v3.20.2.mdx new file mode 100644 index 00000000000..157856107a5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.20.2.mdx @@ -0,0 +1,27 @@ +--- +description: This release introduces security fixes, UI improvements, and codebase refactoring for enhanced security, user experience, and maintainability. +--- + +# Roo Code 3.20.2 Release Notes (2025-06-13) + +This release introduces security fixes, UI improvements, and codebase refactoring for enhanced security, user experience, and maintainability. + +## Bug Fixes + +* **Security**: + * Force `tar-fs >=2.1.3` to fix a security vulnerability ([#4629](https://github.com/RooCodeInc/Roo-Code/pull/4629)) + * Limit `search_files` to workspace for improved security ([#4642](https://github.com/RooCodeInc/Roo-Code/pull/4642)) +* **UI**: + * Sync `BatchDiffApproval` styling with `BatchFilePermission` for UI consistency (thanks samhvw8!) ([#4640](https://github.com/RooCodeInc/Roo-Code/pull/4640)) + * Add max height constraint to MCP execution response for better UX (thanks samhvw8!) ([#4644](https://github.com/RooCodeInc/Roo-Code/pull/4644)) + * Prevent MCP 'installed' label from being squeezed (thanks daniel-lxs!) ([#4649](https://github.com/RooCodeInc/Roo-Code/pull/4649)) +* **Bedrock**: Reapply reasoning for bedrock with fix (thanks daniel-lxs!) ([#4645](https://github.com/RooCodeInc/Roo-Code/pull/4645)) + +## Misc Improvements + +* **Context Condensing**: Allow a lower context condensing threshold (thanks SECKainersdorfer!) ([#4634](https://github.com/RooCodeInc/Roo-Code/pull/4634)) +* **Code Quality**: + * Avoid type system duplication for cleaner codebase (thanks EamonNerbonne!) ([#4596](https://github.com/RooCodeInc/Roo-Code/pull/4596)) + * Improve PR Reviewer and Issue Fixer Rules for better guidance and targeted fixes ([#4651](https://github.com/RooCodeInc/Roo-Code/pull/4651), [#4652](https://github.com/RooCodeInc/Roo-Code/pull/4652)) +* **Unbound**: Add cache breakpoints for custom vertex models on Unbound (thanks pugazhendhi-m!) ([#4585](https://github.com/RooCodeInc/Roo-Code/pull/4585)) +* **Docs**: Add docs extractor mode for comprehensive documentation extraction ([#4621](https://github.com/RooCodeInc/Roo-Code/pull/4621)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.20.3.mdx b/apps/docs/docs/update-notes/v3.20.3.mdx new file mode 100644 index 00000000000..d8203a119a0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.20.3.mdx @@ -0,0 +1,26 @@ +--- +description: This release resolves a race condition, enhances auto-approve logic, and adds Indonesian translation support. +--- + +# Roo Code 3.20.3 Release Notes (2025-06-14) + +This release resolves a race condition, enhances auto-approve logic, and adds Indonesian translation support. + +## Bug Fixes + +* **Diff Editor**: Resolve diff editor race condition in multi-monitor setups (thanks daniel-lxs!) ([#4578](https://github.com/RooCodeInc/Roo-Code/pull/4578)) +* **Auto-Approve**: + * Prevent auto-approving edits of configuration files (thanks mrubens!) ([#4667](https://github.com/RooCodeInc/Roo-Code/pull/4667)) + * Adjust searching outside of the workspace to respect the auto-approve checkbox (thanks mrubens!) ([#4670](https://github.com/RooCodeInc/Roo-Code/pull/4670)) + * Make listing tools respect auto-approve settings for outside of the workspace (thanks mrubens!) ([#4682](https://github.com/RooCodeInc/Roo-Code/pull/4682)) +* **File Read**: Fix errant `maxReadFileLine` default (thanks mrubens!) ([#4683](https://github.com/RooCodeInc/Roo-Code/pull/4683)) +* **Multi-file Diff**: Fix multi-file diff error handling and UI feedback (thanks daniel-lxs!) ([#4674](https://github.com/RooCodeInc/Roo-Code/pull/4674)) +* **Prompt History**: Improve prompt history navigation to not interfere with text editing (thanks daniel-lxs!) ([#4677](https://github.com/RooCodeInc/Roo-Code/pull/4677)) + +## Misc Improvements + +* **Localization**: + * Add Indonesian translation support (thanks chrarnoldus!) ([#4672](https://github.com/RooCodeInc/Roo-Code/pull/4672)) + * Update Indonesian locale files for chat and settings (thanks daniel-lxs!) ([#4675](https://github.com/RooCodeInc/Roo-Code/pull/4675)) + * Fix inconsistencies in markdown file i18n (thanks mrubens!) ([#4681](https://github.com/RooCodeInc/Roo-Code/pull/4681)) +* **Types**: Move marketplace types to `@roo-code/types` (thanks jr!) ([#4671](https://github.com/RooCodeInc/Roo-Code/pull/4671)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.20.mdx b/apps/docs/docs/update-notes/v3.20.mdx new file mode 100644 index 00000000000..533fdab0a97 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.20.mdx @@ -0,0 +1,114 @@ +--- +description: Roo Code 3.20 introduces the experimental Marketplace for extensions and modes, concurrent file edits and reads, and prompt history navigation. +keywords: + - Roo Code 3.20 + - release notes + - marketplace + - concurrent file edits + - multi-file operations +--- + +# Roo Code 3.20 Release Notes (2025-06-12) + +This release introduces the experimental Marketplace for extensions and modes, concurrent file edits and reads, and numerous other improvements and bug fixes. + +## MCP & Mode Marketplace (experimental) + +We've introduced an experimental [Marketplace](/features/marketplace) for discovering and installing community-contributed extensions and modes. This feature allows you to: +- Browse and search for new modes and MCP servers +- Install items at project or global scope +- Manage installations directly from the Marketplace view + +**To enable:** Open Roo Code settings (gear icon) → Experimental Settings → Enable "Marketplace" + +(thanks Smartsheet-JB-Brown, elianiva, monkeyDluffy6017, NamesMT, daniel-lxs, and more!) ([#4538](https://github.com/RooCodeInc/Roo-Code/pull/4538), [#4604](https://github.com/RooCodeInc/Roo-Code/pull/4604)) + +MCP tab showing available MCPs with install and remove buttons + +## Concurrent Edits (aka multi-file)(experimental) + +You can now perform edits across multiple files at once, dramatically speeding up refactoring and multi-file changes. Instead of approving each file edit individually, you can review and approve all changes at once through a unified batch approval interface. Check out our [concurrent file edits documentation](/features/experimental/concurrent-file-edits) for more details. + +**To enable:** Open Roo Code settings (gear icon) → Experimental Settings → Enable "Enable multi-file edits" + +(thanks samhvw8!) ([#4608](https://github.com/RooCodeInc/Roo-Code/pull/4608)) + +Batch diff approval interface showing multiple file changes + +## Concurrent Reads (aka multi-file) + +The setting for concurrent reads has been moved to the context settings, with a default of 5. This feature allows Roo to read multiple files from your workspace in a single step, significantly improving efficiency when working on tasks that require context from several files. Learn more in our [concurrent file reads documentation](/features/concurrent-file-reads). + +([#4597](https://github.com/RooCodeInc/Roo-Code/pull/4597)) + +Batch approval interface for reading multiple files + +## Prompt History + +Navigate your prompt history with a terminal-like experience using the arrow keys. This feature makes it easy to reuse and refine previous prompts, whether from your current conversation or past tasks. See our [keyboard shortcuts documentation](/features/keyboard-shortcuts#command-line-style-prompt-history-navigation) for usage details. + +([#4580](https://github.com/RooCodeInc/Roo-Code/pull/4580)) + +## QOL Improvements + +* **MCP Execution**: The user experience for MCP execution has been improved (thanks samhvw8!). ([#4615](https://github.com/RooCodeInc/Roo-Code/pull/4615)) +* **Magic Variables**: Added support for magic variables for MCPs, including `workspaceFolder` injection (thanks NamesMT!) ([#4442](https://github.com/RooCodeInc/Roo-Code/pull/4442)). +* **Context Mentions**: Added support for escaping context mentions (thanks KJ7LNW!). +* **Mermaid Diagrams**: Added buttons to Mermaid diagrams for zooming, copying, and viewing the code (thanks qdaxb!) ([#4547](https://github.com/RooCodeInc/Roo-Code/pull/4547)). + +## Provider Updates + +* **[DeepSeek](/providers/deepseek)**: Added DeepSeek R1 support to the Chutes provider. +* **[Bedrock](/providers/bedrock)**: Temporarily revert thinking support for Bedrock models ([#4626](https://github.com/RooCodeInc/Roo-Code/pull/4626)). +* **[XAI](/providers/xai)**: Updated XAI models and pricing (thanks edwin-truthsearch-io!). +* **[O3](/providers/openai)**: Updated O3 model pricing ([#4580](https://github.com/RooCodeInc/Roo-Code/pull/4580)). +* **[OpenAI-Compatible](/providers/openai-compatible)**: Added manual OpenAI-compatible format specification and parsing (thanks dflatline!) ([#4463](https://github.com/RooCodeInc/Roo-Code/pull/4463)). +* **[OpenRouter](/providers/openrouter)**: Fixed cost calculation with BYOK (thanks chrarnoldus!) ([#4543](https://github.com/RooCodeInc/Roo-Code/pull/4543)). + +## Bug Fixes + +* **[`write_to_file`](/advanced-usage/available-tools/write-to-file)**: Fixed an issue with the `write_to_file` tool with early `relPath` & `newContent` validation checks (thanks Ruakij!) ([#4378](https://github.com/RooCodeInc/Roo-Code/pull/4378)). +* **TaskItem Display**: Fixed display and copy issues with HTML tags in task messages (thanks forestyoo!) ([#4444](https://github.com/RooCodeInc/Roo-Code/pull/4444)). +* **Terminal Busy State**: Fixed an issue where the terminal busy state was not reset after manual commands completed ([#4583](https://github.com/RooCodeInc/Roo-Code/pull/4583)). +* **[`apply_diff`](/advanced-usage/available-tools/apply-diff)**: Fixed an issue with undefined output on multi-file `apply_diff` operations (thanks daniel-lxs!) ([#4608](https://github.com/RooCodeInc/Roo-Code/pull/4608)). +* **Security**: + * Force `tar-fs >=2.1.3` to fix a security vulnerability ([#4629](https://github.com/RooCodeInc/Roo-Code/pull/4629)) + * Limit `search_files` to workspace for improved security ([#4642](https://github.com/RooCodeInc/Roo-Code/pull/4642)) +* **UI**: + * Sync `BatchDiffApproval` styling with `BatchFilePermission` for UI consistency (thanks @samhvw8!) ([#4640](https://github.com/RooCodeInc/Roo-Code/pull/4640)) + * Add max height constraint to MCP execution response for better UX (thanks @samhvw8!) ([#4644](https://github.com/RooCodeInc/Roo-Code/pull/4644)) + * Prevent MCP 'installed' label from being squeezed (thanks @daniel-lxs!) ([#4649](https://github.com/RooCodeInc/Roo-Code/pull/4649)) + * Add indexing status badge to chat view ([#4532](https://github.com/RooCodeInc/Roo-Code/pull/4532)) +* **Bedrock**: Reapply reasoning for bedrock with fix (thanks @daniel-lxs!) ([#4645](https://github.com/RooCodeInc/Roo-Code/pull/4645)) +* **Diff Editor**: Resolve diff editor race condition in multi-monitor setups (thanks daniel-lxs!) ([#4578](https://github.com/RooCodeInc/Roo-Code/pull/4578)) +* **Auto-Approve**: + * Prevent auto-approving edits of configuration files (thanks mrubens!) ([#4667](https://github.com/RooCodeInc/Roo-Code/pull/4667)) + * Adjust searching outside of the workspace to respect the auto-approve checkbox (thanks mrubens!) ([#4670](https://github.com/RooCodeInc/Roo-Code/pull/4670)) + * Make listing tools respect auto-approve settings for outside of the workspace (thanks mrubens!) ([#4682](https://github.com/RooCodeInc/Roo-Code/pull/4682)) +* **File Read**: Fix errant `maxReadFileLine` default (thanks mrubens!) ([#4683](https://github.com/RooCodeInc/Roo-Code/pull/4683)) +* **Multi-file Diff**: Fix multi-file diff error handling and UI feedback (thanks daniel-lxs!) ([#4674](https://github.com/RooCodeInc/Roo-Code/pull/4674)) +* **Prompt History**: Improve prompt history navigation to not interfere with text editing (thanks daniel-lxs!) ([#4677](https://github.com/RooCodeInc/Roo-Code/pull/4677)) + +## Misc Improvements + +* **Context Condensing**: Allow a lower context condensing threshold (thanks @SECKainersdorfer!) ([#4634](https://github.com/RooCodeInc/Roo-Code/pull/4634)) +* **Code Quality**: + * Avoid type system duplication for cleaner codebase (thanks @EamonNerbonne!) ([#4596](https://github.com/RooCodeInc/Roo-Code/pull/4596)) + * Improve PR Reviewer and Issue Fixer Rules for better guidance and targeted fixes ([#4651](https://github.com/RooCodeInc/Roo-Code/pull/4651), [#4652](https://github.com/RooCodeInc/Roo-Code/pull/4652)) +* **Unbound**: Add cache breakpoints for custom vertex models on Unbound (thanks @pugazhendhi-m!) ([#4585](https://github.com/RooCodeInc/Roo-Code/pull/4585)) +* **Localization**: + * Add Indonesian translation support (thanks chrarnoldus!) ([#4672](https://github.com/RooCodeInc/Roo-Code/pull/4672)) + * Update Indonesian locale files for chat and settings (thanks daniel-lxs!) ([#4675](https://github.com/RooCodeInc/Roo-Code/pull/4675)) + * Fix inconsistencies in markdown file i18n (thanks mrubens!) ([#4681](https://github.com/RooCodeInc/Roo-Code/pull/4681)) +* **Types**: Move marketplace types to `@roo-code/types` (thanks jr!) ([#4671](https://github.com/RooCodeInc/Roo-Code/pull/4671)) + +## Documentation + +* **`whenToUse`**: Populated `whenToUse` descriptions for built-in modes ([#4579](https://github.com/RooCodeInc/Roo-Code/pull/4579)). +* **JSDoc**: Added JSDoc documentation for `ClineAsk` and `ClineSay` types ([#4427](https://github.com/RooCodeInc/Roo-Code/pull/4427)). +* **Docs**: Add docs extractor mode for comprehensive documentation extraction ([#4621](https://github.com/RooCodeInc/Roo-Code/pull/4621)) +* **Docs**: Update contributors list ([#4348](https://github.com/RooCodeInc/Roo-Code/pull/4348)) + +## Internal + +* **Integration Tests**: Added core tools integration tests for comprehensive coverage ([#4433](https://github.com/RooCodeInc/Roo-Code/pull/4433)). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.0.mdx b/apps/docs/docs/update-notes/v3.21.0.mdx new file mode 100644 index 00000000000..dc6c2d6c47b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.0.mdx @@ -0,0 +1,65 @@ +--- +description: Roo Code v3.21.0 enhances workspace context awareness by automatically adding the active file to the conversation history. This release also stops Roo from automatically focusing on the chat input box after a task completes, streamlining user workflow and improving usability. +--- + +# Roo Code 3.21.0 Release Notes (2025-06-17) + +This release launches the Roo Marketplace, adds support for the latest Gemini 2.5 models, and introduces Excel file support along with numerous improvements and fixes. + +## [Roo Marketplace Launch](/features/marketplace) + +We're excited to announce the official launch of the [Roo Marketplace](/features/marketplace) ([#4788](https://github.com/RooCodeInc/Roo-Code/pull/4788)): + +- **Discover Great MCPs and Modes**: Browse and install community-created Model Context Protocol servers and custom modes directly from within Roo Code +- **Seamless Integration**: The marketplace is now available to all users without needing experimental features +- **Easy Installation**: Find and install the tools you need with just a few clicks + +The Roo Marketplace makes it easy to extend Roo Code's functionality with powerful integrations created by our vibrant community. + +## [Gemini 2.5 Models Support](https://blog.google/products/gemini/gemini-2-5-model-family-expands/) + +We've added support for [Google's latest Gemini 2.5 models](https://blog.google/products/gemini/gemini-2-5-model-family-expands/) (thanks @daniel-lxs!) ([#4762](https://github.com/RooCodeInc/Roo-Code/pull/4762), [#4770](https://github.com/RooCodeInc/Roo-Code/pull/4770), [#4767](https://github.com/RooCodeInc/Roo-Code/pull/4767)): + +- **Gemini 2.5 Pro**: Enhanced capabilities for complex coding tasks +- **Gemini 2.5 Flash**: Fast model with improved performance +- **Gemini 2.5 Flash Lite**: Lightweight model perfect for quick tasks + +These new models bring enhanced reasoning capabilities and better performance across various coding tasks. + +## Excel File Support + +Added support for reading Excel (.xlsx) files in tools (thanks @chrarnoldus!) ([#4751](https://github.com/RooCodeInc/Roo-Code/pull/4751)). You can now: + +- **Read Excel Files**: Directly analyze and work with Excel spreadsheets +- **Extract Data**: Access cell values, formulas, and sheet information +- **Seamless Integration**: Works with all existing Roo Code tools and features + +## QOL Improvements + +* **OpenAI Compatible Max Tokens**: Added checkbox option for max tokens in OpenAI compatible provider settings (thanks @AlexandruSmirnov!) ([#4600](https://github.com/RooCodeInc/Roo-Code/pull/4600), [#4623](https://github.com/RooCodeInc/Roo-Code/pull/4623)) +* **Provider Updates**: Updated model lists and pricing for Groq & Mistral (thanks @KanTakahiro!) ([#4798](https://github.com/RooCodeInc/Roo-Code/pull/4798), [#4797](https://github.com/RooCodeInc/Roo-Code/pull/4797)) +* **Terminal Details**: Now includes current working directory for better context awareness ([#4783](https://github.com/RooCodeInc/Roo-Code/pull/4783)) +* **Multi-file Diff**: Encourages use of start_line parameter to match legacy diff behavior ([#4777](https://github.com/RooCodeInc/Roo-Code/pull/4777)) + +## UI/UX Improvements + +* **Marketplace Branding**: Updated to show "Roo Marketplace" for consistent branding (thanks @SannidhyaSah!) ([#4718](https://github.com/RooCodeInc/Roo-Code/pull/4718)) +* **History UI**: Refactored to more consistent and modern interface (thanks @elianiva!) ([#4598](https://github.com/RooCodeInc/Roo-Code/pull/4598)) +* **Context Menu**: Adjusted positioning to be near GitHub Copilot for easier access ([#4306](https://github.com/RooCodeInc/Roo-Code/pull/4306)) +* **Panel Focus**: Always focus the panel when clicked to ensure menu buttons are visible (thanks @hassoncs!) ([#4312](https://github.com/RooCodeInc/Roo-Code/pull/4312)) + +## Bug Fixes + +* **API Conversation History**: Added proper error handling for conversation history issues (thanks @KJ7LNW!) ([#4741](https://github.com/RooCodeInc/Roo-Code/pull/4741), [#4738](https://github.com/RooCodeInc/Roo-Code/pull/4738)) +* **Model ID Errors**: Fixed ambiguous model ID error messages (thanks @elianiva!) ([#4709](https://github.com/RooCodeInc/Roo-Code/pull/4709), [#4710](https://github.com/RooCodeInc/Roo-Code/pull/4710)) +* **Prompt Settings**: Fixed save/discard/revert flow for Prompt Settings (thanks @hassoncs!) ([#4623](https://github.com/RooCodeInc/Roo-Code/pull/4623), [#4312](https://github.com/RooCodeInc/Roo-Code/pull/4312)) +* **Codebase Indexing**: Fixed alignment with list-files hidden directory filtering (thanks @daniel-lxs!) ([#4684](https://github.com/RooCodeInc/Roo-Code/pull/4684)) +* **Subtask Completion**: Fixed mismatch between subtask and overall task completion (thanks @feifei325!) ([#4656](https://github.com/RooCodeInc/Roo-Code/pull/4656)) +* **Windows MCP Configuration**: Fixed path normalization in MCP variable injection on Windows (thanks @daniel-lxs!) ([#4607](https://github.com/RooCodeInc/Roo-Code/pull/4607)) + +## Misc Improvements + +* **Test Mode Update**: Updated test mode to support Vitest testing framework ([#4778](https://github.com/RooCodeInc/Roo-Code/pull/4778)) +* **Working Directory Warning**: Removed unnecessary warning about working directory changes ([#4795](https://github.com/RooCodeInc/Roo-Code/pull/4795)) +* **Telemetry**: Added marketplace tab view and install click tracking ([#4781](https://github.com/RooCodeInc/Roo-Code/pull/4781)) +* **Windows Docker**: Updated evals Docker setup to work on Windows (thanks @StevenTCramer!) ([#4467](https://github.com/RooCodeInc/Roo-Code/pull/4467)) diff --git a/apps/docs/docs/update-notes/v3.21.1.mdx b/apps/docs/docs/update-notes/v3.21.1.mdx new file mode 100644 index 00000000000..456bc50e6b7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.1.mdx @@ -0,0 +1,20 @@ +--- +description: Roo Code v3.21.1 introduces a new `auto_install_peers` setting to streamline dependency management during MCP package installations. This update simplifies setup by automatically installing required peer dependencies, improving developer experience and reducing manual configuration. +--- + +# Roo Code 3.21.1 Release Notes (2025-06-18) + +This patch release improves stability, security, and provides better error handling for several key features. + +## Bug Fixes + +* **Parser Reliability**: Fixed an issue that could prevent the parser from loading correctly in certain environments, improving overall stability ([#4857](https://github.com/RooCodeInc/Roo-Code/pull/4857)) +* **Windows Stability**: Resolved a crash that could occur when using MCP servers on Windows with node version managers ([#4711](https://github.com/RooCodeInc/Roo-Code/pull/4711)) +* **Subtask Rate Limiting**: Implemented global rate-limiting to prevent errors when creating subtasks, ensuring more reliable task execution (thanks olweraltuve!) ([#4453](https://github.com/RooCodeInc/Roo-Code/pull/4453)) +* **Codebase Search Errors**: Improved error messages for codebase search, making it easier to diagnose and resolve issues with embeddings ([#4432](https://github.com/RooCodeInc/Roo-Code/pull/4432)) + +## Misc Improvements + +* **Anthropic Cost Tracking**: Improved the accuracy of cost reporting for Anthropic models ([#4849](https://github.com/RooCodeInc/Roo-Code/pull/4849)) +* **Performance Optimization**: The "Enable MCP Server Creation" setting is now disabled by default, reducing token usage and simplifying prompts for most users ([#4838](https://github.com/RooCodeInc/Roo-Code/pull/4838)) +* **Security**: Addressed security vulnerabilities by updating dependencies ([#4844](https://github.com/RooCodeInc/Roo-Code/pull/4844)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.2.mdx b/apps/docs/docs/update-notes/v3.21.2.mdx new file mode 100644 index 00000000000..8422459ff3b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.2.mdx @@ -0,0 +1,20 @@ +--- +description: This release introduces LaTeX rendering, a new MCP tool toggle, and fixes several bugs related to the marketplace, subtasks, and pricing. +--- + +# Roo Code 3.21.2 Release Notes (2025-06-21) +This release introduces LaTeX rendering, a new MCP tool toggle, and fixes several bugs related to the marketplace, subtasks, and pricing. +## New Features +* **LaTeX Rendering**: You can now render LaTeX math equations directly in the chat window (thanks ColbySerpa!) ([#4786](https://github.com/RooCodeInc/Roo-Code/pull/4786)) +* **MCP Tool Toggle**: A new toggle allows you to disable individual MCP server tools from being included in the prompt context (thanks Rexarrior!) ([#3551](https://github.com/RooCodeInc/Roo-Code/pull/3551)) +* **Symlink Support**: The `list_files` tool now supports symbolic links (thanks josh-clanton-powerschool!) ([#4859](https://github.com/RooCodeInc/Roo-Code/pull/4859)) +## Bug Fixes +* **Marketplace**: Fixed an issue where the marketplace would go blank after being populated and resolved timeout issues (thanks yangbinbin48!) ([#4941](https://github.com/RooCodeInc/Roo-Code/pull/4941)) +* **@mention**: Fixed an issue with recursive directory scanning when using "Add Folder" with @mention (thanks village-way!) ([#4863](https://github.com/RooCodeInc/Roo-Code/pull/4863)) +* **Subtasks**: Resolved an issue where a phantom "Subtask Results" would display if a task was cancelled during an API retry. ([#4893](https://github.com/RooCodeInc/Roo-Code/pull/4893)) +* **Pricing**: Corrected the pricing for the Gemini 2.5 Flash model (thanks sr-tream!) ([#4898](https://github.com/RooCodeInc/Roo-Code/pull/4898)) +* **Markdown**: Fixed an issue with markdown rendering for links that are followed by punctuation. ([#4841](https://github.com/RooCodeInc/Roo-Code/pull/4841)) +## QOL Improvements +* **Onboarding**: Made some tweaks to the onboarding process to better emphasize modes. ([#4791](https://github.com/RooCodeInc/Roo-Code/pull/4791)) +* **Task Orchestration**: Renamed "Boomerang Tasks" to "Task Orchestration" to improve clarity. ([#4856](https://github.com/RooCodeInc/Roo-Code/pull/4856)) +* **`attempt_completion`**: The `attempt_completion` tool no longer executes commands. This is a permanent change and the experimental setting has been removed. ([#4884](https://github.com/RooCodeInc/Roo-Code/pull/4884)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.3.mdx b/apps/docs/docs/update-notes/v3.21.3.mdx new file mode 100644 index 00000000000..e9d02321ce2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.3.mdx @@ -0,0 +1,16 @@ +--- +description: This release adds profile-specific context condensing thresholds and fixes several bugs related to context length and error handling. +--- + +# Roo Code 3.21.3 Release Notes (2025-06-21) + +This release adds profile-specific context condensing thresholds and fixes several bugs related to context length and error handling. + +## QOL Improvements + +* **Profile-Specific Context Thresholds**: You can now configure different intelligent context condensing thresholds for each of your API configuration profiles. This gives you more granular control over context management, which is especially useful when working with multiple models that have different context window sizes (thanks SannidhyaSah, SirBadfish!) ([#4456](https://github.com/RooCodeInc/Roo-Code/pull/4456)). + +## Bug Fixes + +* **Ollama & LM Studio Context Length**: The context length for models served by Ollama and LM Studio is now automatically detected and displayed correctly, so you no longer need to configure it manually (thanks thecolorblue, Fade78!) ([#4314](https://github.com/RooCodeInc/Roo-Code/pull/4314)). +* **MCP Tool UI**: Resolved an issue where the eye icon for MCP tools was showing the incorrect state and was visible in chat contexts where it should have been hidden (thanks daniel-lxs!) ([#4994](https://github.com/RooCodeInc/Roo-Code/pull/4994)). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.4.mdx b/apps/docs/docs/update-notes/v3.21.4.mdx new file mode 100644 index 00000000000..1b6d85f699a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.4.mdx @@ -0,0 +1,24 @@ +--- +description: This release introduces the new Claude Code provider for local CLI integration and fixes several critical issues. +--- + +# Roo Code 3.21.4 Release Notes (2025-06-23) + +This release introduces the new Claude Code provider for local CLI integration and fixes several critical issues. + +## Use Your Claude Max Subscription with Roo Code + +You can now use your Claude Max subscription directly in Roo Code through our new Claude Code provider (thanks Cline!) ([#4864](https://github.com/RooCodeInc/Roo-Code/pull/4864), [#5038](https://github.com/RooCodeInc/Roo-Code/pull/5038)): + +- **Leverage Your Existing Subscription**: Connect your Claude Max plan to Roo Code through the Claude CLI +- **No Additional API Costs**: Use your subscription benefits instead of paying per-token API rates +- **Access Premium Models**: Use Claude Sonnet 4, Opus 4, and other advanced models included in your plan +- **Zero Setup Complexity**: Select Claude Code as your provider during initial setup - no API keys needed +- **Advanced Reasoning Support**: Full access to Claude's thinking modes and reasoning capabilities + +Perfect for Claude Max subscribers who want to maximize their subscription value while coding. + +## Bug Fixes + +* **Apply Diff Accuracy**: Fixed start line parameter not working correctly when applying multiple file diffs (thanks samhvw8!) ([#5019](https://github.com/RooCodeInc/Roo-Code/pull/5019)) +* **Ollama Compatibility**: Resolved validation errors that prevented Ollama from working with certain models (thanks daniel-lxs, MartinHarding1998!) ([#5014](https://github.com/RooCodeInc/Roo-Code/pull/5014)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.5.mdx b/apps/docs/docs/update-notes/v3.21.5.mdx new file mode 100644 index 00000000000..1fbafa50156 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.5.mdx @@ -0,0 +1,13 @@ +--- +description: This patch release fixes issues with QdrantClient URL handling, improves LM Studio model detection, and resolves Claude Code JSON parsing issues. +--- + +# Roo Code 3.21.5 Release Notes (2025-06-23) + +This patch release fixes issues with QdrantClient URL handling, improves LM Studio model detection, and resolves Claude Code JSON parsing issues. + +## Bug Fixes + +* **Qdrant Vector Store**: Fixed URL prefix handling during QdrantClient initialization for deployments with path prefixes (thanks CW-B-W!) ([#5033](https://github.com/RooCodeInc/Roo-Code/pull/5033)) +* **Claude Code Provider**: Resolved JSON parsing issues and improved reasoning block display to show collapsible reasoning blocks instead of raw JSON (thanks hannesrudolph!) ([#5049](https://github.com/RooCodeInc/Roo-Code/pull/5049)) +* **LM Studio**: Improved model detection to display all downloaded models instead of only currently loaded models (thanks daniel-lxs!) ([#5047](https://github.com/RooCodeInc/Roo-Code/pull/5047)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.21.mdx b/apps/docs/docs/update-notes/v3.21.mdx new file mode 100644 index 00000000000..960c5953f25 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.21.mdx @@ -0,0 +1,113 @@ +--- +description: Roo Code 3.21 launches the Roo Marketplace, adds Gemini 2.5 models support, Claude Max subscription integration, and Excel file support. +keywords: + - Roo Code 3.21 + - release notes + - Roo Marketplace + - Gemini 2.5 + - Claude Max + - Excel support +--- + +# Roo Code 3.21 Release Notes + +This release launches the Roo Marketplace, adds support for the latest Gemini 2.5 models, and introduces Excel file support along with numerous improvements and fixes. + +## [Roo Marketplace Launch](/features/marketplace) + +We're excited to announce the official launch of the [Roo Marketplace](/features/marketplace) ([#4788](https://github.com/RooCodeInc/Roo-Code/pull/4788)): + +- **Discover Great MCPs and Modes**: Browse and install community-created Model Context Protocol servers and custom modes directly from within Roo Code +- **Seamless Integration**: The marketplace is now available to all users without needing experimental features +- **Easy Installation**: Find and install the tools you need with just a few clicks + +The Roo Marketplace makes it easy to extend Roo Code's functionality with powerful integrations created by our vibrant community. + +## Use Your Claude Max Subscription with Roo Code + +You can now use your Claude Max subscription directly in Roo Code through our new Claude Code provider (thanks Cline!) ([#4864](https://github.com/RooCodeInc/Roo-Code/pull/4864), [#5038](https://github.com/RooCodeInc/Roo-Code/pull/5038)): + +- **Leverage Your Existing Subscription**: Connect your Claude Max plan to Roo Code through the Claude CLI +- **No Additional API Costs**: Use your subscription benefits instead of paying per-token API rates +- **Access Premium Models**: Use Claude Sonnet 4, Opus 4, and other advanced models included in your plan +- **Zero Setup Complexity**: Select Claude Code as your provider during initial setup - no API keys needed +- **Advanced Reasoning Support**: Full access to Claude's thinking modes and reasoning capabilities + +Perfect for Claude Max subscribers who want to maximize their subscription value while coding. + +## [Gemini 2.5 Models Support](https://blog.google/products/gemini/gemini-2-5-model-family-expands/) + +We've added support for [Google's latest Gemini 2.5 models](https://blog.google/products/gemini/gemini-2-5-model-family-expands/) ([#4762](https://github.com/RooCodeInc/Roo-Code/pull/4762), [#4770](https://github.com/RooCodeInc/Roo-Code/pull/4770), [#4767](https://github.com/RooCodeInc/Roo-Code/pull/4767)): + +- **Gemini 2.5 Pro**: Enhanced capabilities for complex coding tasks +- **Gemini 2.5 Flash**: Fast model with improved performance +- **Gemini 2.5 Flash Lite**: Lightweight model perfect for quick tasks + +These new models bring enhanced reasoning capabilities and better performance across various coding tasks. + +## Excel File Support + +Added support for reading Excel (.xlsx) files in tools ([#4751](https://github.com/RooCodeInc/Roo-Code/pull/4751)). You can now: + +- **Read Excel Files**: Directly analyze and work with Excel spreadsheets +- **Extract Data**: Access cell values, formulas, and sheet information +- **Seamless Integration**: Works with all existing Roo Code tools and features + +## New Features + +* **LaTeX Rendering**: You can now render LaTeX math equations directly in the chat window (thanks ColbySerpa!) ([#4786](https://github.com/RooCodeInc/Roo-Code/pull/4786)) +* **MCP Tool Toggle**: A new toggle allows you to disable individual MCP server tools from being included in the prompt context (thanks Rexarrior!) ([#3551](https://github.com/RooCodeInc/Roo-Code/pull/3551)) +* **Symlink Support**: The `list_files` tool now supports symbolic links (thanks josh-clanton-powerschool!) ([#4859](https://github.com/RooCodeInc/Roo-Code/pull/4859)) + +## QOL Improvements + +* **Profile-Specific Context Thresholds**: You can now configure different intelligent context condensing thresholds for each of your API configuration profiles. This gives you more granular control over context management, which is especially useful when working with multiple models that have different context window sizes (thanks SannidhyaSah, SirBadfish!) ([#4456](https://github.com/RooCodeInc/Roo-Code/pull/4456)). +* **Onboarding**: Made some tweaks to the onboarding process to better emphasize modes ([#4791](https://github.com/RooCodeInc/Roo-Code/pull/4791)) +* **Task Orchestration**: Renamed "Boomerang Tasks" to "Task Orchestration" to improve clarity ([#4856](https://github.com/RooCodeInc/Roo-Code/pull/4856)) +* **`attempt_completion`**: The `attempt_completion` tool no longer executes commands. This is a permanent change and the experimental setting has been removed. ([#4884](https://github.com/RooCodeInc/Roo-Code/pull/4884)) +* **OpenAI Compatible Max Tokens**: Added checkbox option for max tokens in OpenAI compatible provider settings ([#4600](https://github.com/RooCodeInc/Roo-Code/pull/4600), [#4623](https://github.com/RooCodeInc/Roo-Code/pull/4623)) +* **Provider Updates**: Updated model lists and pricing for Groq & Mistral ([#4798](https://github.com/RooCodeInc/Roo-Code/pull/4798), [#4797](https://github.com/RooCodeInc/Roo-Code/pull/4797)) +* **Terminal Details**: Now includes current working directory for better context awareness ([#4783](https://github.com/RooCodeInc/Roo-Code/pull/4783)) +* **Multi-file Diff**: Encourages use of start_line parameter to match legacy diff behavior ([#4777](https://github.com/RooCodeInc/Roo-Code/pull/4777)) + +## UI/UX Improvements + +* **Marketplace Branding**: Updated to show "Roo Marketplace" for consistent branding ([#4718](https://github.com/RooCodeInc/Roo-Code/pull/4718)) +* **History UI**: Refactored to more consistent and modern interface ([#4598](https://github.com/RooCodeInc/Roo-Code/pull/4598)) +* **Context Menu**: Adjusted positioning to be near GitHub Copilot for easier access ([#4306](https://github.com/RooCodeInc/Roo-Code/pull/4306)) +* **Panel Focus**: Always focus the panel when clicked to ensure menu buttons are visible ([#4312](https://github.com/RooCodeInc/Roo-Code/pull/4312)) + +## Bug Fixes + +* **Qdrant Vector Store**: Fixed URL prefix handling during QdrantClient initialization for deployments with path prefixes (thanks CW-B-W!) ([#5033](https://github.com/RooCodeInc/Roo-Code/pull/5033)) +* **Claude Code Provider**: Resolved JSON parsing issues and improved reasoning block display to show collapsible reasoning blocks instead of raw JSON ([#5049](https://github.com/RooCodeInc/Roo-Code/pull/5049)) +* **LM Studio**: Improved model detection to display all downloaded models instead of only currently loaded models (thanks daniel-lxs!) ([#5047](https://github.com/RooCodeInc/Roo-Code/pull/5047)) +* **Apply Diff Accuracy**: Fixed start line parameter not working correctly when applying multiple file diffs (thanks samhvw8!) ([#5019](https://github.com/RooCodeInc/Roo-Code/pull/5019)) +* **Ollama Compatibility**: Resolved validation errors that prevented Ollama from working with certain models (thanks daniel-lxs, MartinHarding1998!) ([#5014](https://github.com/RooCodeInc/Roo-Code/pull/5014)) +* **Ollama & LM Studio Context Length**: The context length for models served by Ollama and LM Studio is now automatically detected and displayed correctly, so you no longer need to configure it manually (thanks thecolorblue, Fade78!) ([#4314](https://github.com/RooCodeInc/Roo-Code/pull/4314)). +* **MCP Tool UI**: Resolved an issue where the eye icon for MCP tools was showing the incorrect state and was visible in chat contexts where it should have been hidden (thanks daniel-lxs!) ([#4994](https://github.com/RooCodeInc/Roo-Code/pull/4994)). +* **Marketplace**: Fixed an issue where the marketplace would go blank after being populated and resolved timeout issues (thanks yangbinbin48!) ([#4941](https://github.com/RooCodeInc/Roo-Code/pull/4941)) +* **@mention**: Fixed an issue with recursive directory scanning when using "Add Folder" with @mention (thanks village-way!) ([#4863](https://github.com/RooCodeInc/Roo-Code/pull/4863)) +* **Subtasks**: Resolved an issue where a phantom "Subtask Results" would display if a task was cancelled during an API retry. ([#4893](https://github.com/RooCodeInc/Roo-Code/pull/4893)) +* **Pricing**: Corrected the pricing for the Gemini 2.5 Flash model (thanks sr-tream!) ([#4898](https://github.com/RooCodeInc/Roo-Code/pull/4898)) +* **Markdown**: Fixed an issue with markdown rendering for links that are followed by punctuation. ([#4841](https://github.com/RooCodeInc/Roo-Code/pull/4841)) +* **Parser Reliability**: Fixed an issue that could prevent the parser from loading correctly in certain environments, improving overall stability ([#4857](https://github.com/RooCodeInc/Roo-Code/pull/4857)) +* **Windows Stability**: Resolved a crash that could occur when using MCP servers on Windows with node version managers ([#4711](https://github.com/RooCodeInc/Roo-Code/pull/4711)) +* **Subtask Rate Limiting**: Implemented global rate-limiting to prevent errors when creating subtasks, ensuring more reliable task execution ([#4453](https://github.com/RooCodeInc/Roo-Code/pull/4453)) +* **Codebase Search Errors**: Improved error messages for codebase search, making it easier to diagnose and resolve issues with embeddings ([#4432](https://github.com/RooCodeInc/Roo-Code/pull/4432)) +* **API Conversation History**: Added proper error handling for conversation history issues ([#4741](https://github.com/RooCodeInc/Roo-Code/pull/4741), [#4738](https://github.com/RooCodeInc/Roo-Code/pull/4738)) +* **Model ID Errors**: Fixed ambiguous model ID error messages ([#4709](https://github.com/RooCodeInc/Roo-Code/pull/4709), [#4710](https://github.com/RooCodeInc/Roo-Code/pull/4710)) +* **Prompt Settings**: Fixed save/discard/revert flow for Prompt Settings ([#4623](https://github.com/RooCodeInc/Roo-Code/pull/4623), [#4312](https://github.com/RooCodeInc/Roo-Code/pull/4312)) +* **Codebase Indexing**: Fixed alignment with list-files hidden directory filtering ([#4684](https://github.com/RooCodeInc/Roo-Code/pull/4684)) +* **Subtask Completion**: Fixed mismatch between subtask and overall task completion ([#4656](https://github.com/RooCodeInc/Roo-Code/pull/4656)) +* **Windows MCP Configuration**: Fixed path normalization in MCP variable injection on Windows ([#4607](https://github.com/RooCodeInc/Roo-Code/pull/4607)) + +## Misc Improvements + +* **Anthropic Cost Tracking**: Improved the accuracy of cost reporting for Anthropic models ([#4849](https://github.com/RooCodeInc/Roo-Code/pull/4849)) +* **Performance Optimization**: The "Enable MCP Server Creation" setting is now disabled by default, reducing token usage and simplifying prompts for most users ([#4838](https://github.com/RooCodeInc/Roo-Code/pull/4838)) +* **Security**: Addressed security vulnerabilities by updating dependencies ([#4844](https://github.com/RooCodeInc/Roo-Code/pull/4844)) +* **Test Mode Update**: Updated test mode to support Vitest testing framework ([#4778](https://github.com/RooCodeInc/Roo-Code/pull/4778)) +* **Working Directory Warning**: Removed unnecessary warning about working directory changes ([#4795](https://github.com/RooCodeInc/Roo-Code/pull/4795)) +* **Telemetry**: Added marketplace tab view and install click tracking ([#4781](https://github.com/RooCodeInc/Roo-Code/pull/4781)) +* **Windows Docker**: Updated evals Docker setup to work on Windows ([#4467](https://github.com/RooCodeInc/Roo-Code/pull/4467)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.0.mdx b/apps/docs/docs/update-notes/v3.22.0.mdx new file mode 100644 index 00000000000..08efde38e53 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.0.mdx @@ -0,0 +1,58 @@ +--- +description: This major release introduces 1-click task sharing, global rule directories, enhanced mode discovery, and comprehensive bug fixes for memory leaks and provider integration. +--- + +# Roo Code 3.22.0 Release Notes (2025-06-25) + +This major release introduces 1-click task sharing, global rule directories, enhanced mode discovery, and comprehensive bug fixes for memory leaks and provider integration. + +## 1-Click Task Sharing + +Roo Code Task Sharing Demo + +We've added the ability to share your Roo Code tasks publicly right from within the extension ([learn more](/roo-code-cloud/task-sharing)): + +- **Public Sharing**: Select "Share Publicly" to generate a shareable link that anyone can access +- **Automatic Clipboard Copy**: Generated links are automatically copied to your clipboard for easy sharing +- **Collaboration Ready**: Share tasks with team members, collaborators, or anyone who needs to view your task and conversation history + +## Global Rules Directory Support + +We've added support for cross-workspace custom instruction sharing through global directory loading (thanks samhvw8!) ([#5016](https://github.com/RooCodeInc/Roo-Code/pull/5016)): + +- **Global Rules**: Store rules in `~/.roo/rules/` for consistent configuration across all projects +- **Project-Specific Rules**: Use `.roo/rules/` directories for project-specific customizations +- **Hierarchical Loading**: Global rules load first, with project rules taking precedence for overrides +- **Team Collaboration**: Version-control project rules to share team standards and workflows + +This enables configuration management across projects and machines, perfect for organizational onboarding and maintaining consistent development environments. [Learn how to set up global rules](/features/custom-instructions#setting-up-global-rules). + +## QOL Improvements + +* **Mode Discovery**: Enhanced mode selector with highlighting for new users, redesigned interface, and descriptive text. Also moved the [Roo Code Marketplace](/features/marketplace) and [Mode configuration](/features/custom-modes) buttons out of the top menu for better organization (thanks brunobergher!) ([#4902](https://github.com/RooCodeInc/Roo-Code/pull/4902)) + +Enhanced mode selector interface showing improved highlighting and descriptive text for better user experience + +* **Quick Fix Control**: Added setting to disable Roo Code quick fixes, preventing conflicts with other extensions (thanks OlegOAndreev!) ([#4878](https://github.com/RooCodeInc/Roo-Code/pull/4878)) - [Learn more](/features/code-actions#disablingenabling-code-actions) + +VSCode settings showing the Enable Roo Code quick fixes toggle option + +## Bug Fixes + +* **Task File Corruption**: Fixed race condition that corrupted task files, eliminating "No existing API conversation history" errors (thanks KJ7LNW!) ([#4733](https://github.com/RooCodeInc/Roo-Code/pull/4733)) +* **Memory Leaks**: Fixed multiple memory leaks in chat interface and CodeBlock component that could cause crashes and grey screens (thanks kiwina, xyOz-dev!) ([#4244](https://github.com/RooCodeInc/Roo-Code/pull/4244), [#4190](https://github.com/RooCodeInc/Roo-Code/pull/4190)) +* **Task Names**: Fixed blank entries in task history - tasks now display meaningful names like "Task #1 (Incomplete)" (thanks daniel-lxs!) ([#5071](https://github.com/RooCodeInc/Roo-Code/pull/5071)) +* **Settings Import**: Fixed import functionality when configuration includes allowed commands (thanks catrielmuller!) ([#5110](https://github.com/RooCodeInc/Roo-Code/pull/5110)) +* **File Creation**: Fixed [`write_to_file`](/advanced-usage/available-tools/write-to-file) tool failing with newline-only or empty content (thanks Githubguy132010!) ([#3550](https://github.com/RooCodeInc/Roo-Code/pull/3550)) + +## Provider Updates + +* **Claude Code**: Fixed token counting issues, message handling for long tasks, removed misleading UI controls, and improved caching/image upload ([#5108](https://github.com/RooCodeInc/Roo-Code/pull/5108), [#5072](https://github.com/RooCodeInc/Roo-Code/pull/5072), [#5105](https://github.com/RooCodeInc/Roo-Code/pull/5105), [#5113](https://github.com/RooCodeInc/Roo-Code/pull/5113)) +* **Azure OpenAI**: Fixed compatibility with reasoning models by removing unsupported temperature parameter (thanks ExactDoug!) ([#5116](https://github.com/RooCodeInc/Roo-Code/pull/5116)) +* **AWS Bedrock**: Improved throttling error detection and retry functionality ([#4748](https://github.com/RooCodeInc/Roo-Code/pull/4748)) + +## Misc Improvements + +* **VSCode Command Integration**: Added programmatic settings import capability - import settings via Command Palette ("Roo: Import Settings") or VSCode API for automation (thanks shivamd1810!) ([#5095](https://github.com/RooCodeInc/Roo-Code/pull/5095)) +* **Translation Workflow**: Improved internal translation processes to reduce file reads and improve efficiency (thanks KJ7LNW!) ([#5126](https://github.com/RooCodeInc/Roo-Code/pull/5126)) +* **YAML Parsing**: Enhanced custom modes configuration handling for edge cases and special characters ([#5099](https://github.com/RooCodeInc/Roo-Code/pull/5099)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.1.mdx b/apps/docs/docs/update-notes/v3.22.1.mdx new file mode 100644 index 00000000000..625d7ceae66 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.1.mdx @@ -0,0 +1,28 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.1 Release Notes (2025-06-27) + +This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. + +## Gemini CLI Provider (Free Access) + +We've added a new Gemini CLI provider that enables free access to Google's Gemini models without requiring API keys ([#5137](https://github.com/RooCodeInc/Roo-Code/pull/5137)): + +- **OAuth Authentication**: Sign in with your Google account to access Gemini models at no cost +- **Automatic Project Discovery**: Seamlessly connects to your Google Cloud projects +- **Streaming Responses**: Real-time response streaming for better interactivity +- **Complete Integration**: Full UI support with comprehensive setup guidance + +This gives you another powerful free option alongside local models and other free providers. + +## Bug Fixes + +* **MCP Server Display**: Fixed "undefined" text appearing in system prompts for HTTP SSE MCP servers like Figma MCP ([#5107](https://github.com/RooCodeInc/Roo-Code/pull/5107)) +* **Groq Model Limits**: Corrected maximum token limit for Qwen3-32B model from 131,072 to 40,960 tokens, preventing API errors (thanks KanTakahiro, Maxxoto!) ([#5138](https://github.com/RooCodeInc/Roo-Code/pull/5138)) + +## QOL Improvements + +* **Consistent Tooltips**: Standardized tooltip delays to 300ms across the entire application for smooth, predictable behavior ([#5098](https://github.com/RooCodeInc/Roo-Code/pull/5098)) +* **Cost Transparency**: Improved OpenRouter BYOK cost calculation accuracy using official upstream costs and restored cached token count visibility ([#5145](https://github.com/RooCodeInc/Roo-Code/pull/5145)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.2.mdx b/apps/docs/docs/update-notes/v3.22.2.mdx new file mode 100644 index 00000000000..98f1131b6bb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.2.mdx @@ -0,0 +1,22 @@ +--- +description: This release fixes a bug that caused the extension to fail to load in certain environments and includes other minor improvements. +--- + +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.2 Release Notes (2025-06-27) + +This release includes important security fixes, bug fixes, and improvements to ensure a more reliable and secure experience. + +## Security Fixes + +* **Code Display**: Eliminated XSS vulnerability in code block rendering for enhanced security (thanks KJ7LNW!) ([#5157](https://github.com/RooCodeInc/Roo-Code/pull/5157)) + +## Bug Fixes + +* **Checkpoint Menu**: Fixed checkpoint popover not opening when clicked, restoring access to checkpoint functionality (thanks daniel-lxs, aprpure!) ([#5192](https://github.com/RooCodeInc/Roo-Code/pull/5192)) +* **Terminal Integration**: Fixed keyboard shortcut errors when adding terminal content to context (thanks MuriloFP, iamhenry!) ([#5161](https://github.com/RooCodeInc/Roo-Code/pull/5161)) +* **Gemini CLI**: Corrected error message translation paths across all supported languages (thanks daniel-lxs!) ([#5194](https://github.com/RooCodeInc/Roo-Code/pull/5194)) +* **Code Index**: Fixed Qdrant service connection reliability when updating configuration settings - services now automatically recreate when configurations change (thanks catrielmuller!) ([#5152](https://github.com/RooCodeInc/Roo-Code/pull/5152)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.3.mdx b/apps/docs/docs/update-notes/v3.22.3.mdx new file mode 100644 index 00000000000..e8f3cb467a1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.3.mdx @@ -0,0 +1,11 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.3 Release Notes (2025-06-27) + +This release fixes compatibility issues with custom mode files to ensure a smooth experience for users upgrading from earlier versions. + +## Bug Fixes + +* **Custom Modes**: Fixed JSON backwards compatibility for `.roomodes` files, ensuring older custom modes work correctly after updating from previous versions (thanks daniel-lxs, domc66, africa1207!) ([#5199](https://github.com/RooCodeInc/Roo-Code/pull/5199)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.4.mdx b/apps/docs/docs/update-notes/v3.22.4.mdx new file mode 100644 index 00000000000..9c5207b02c6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.4.mdx @@ -0,0 +1,16 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.4 Release Notes (2025-06-27) + +This patch release improves workflow efficiency and fixes critical bugs affecting task sharing and Claude Code provider reliability. + +## QOL Improvements + +* **Mode Switching**: Follow-up question suggestions can now switch modes directly, eliminating the need to manually change modes after selecting a suggestion ([#5200](https://github.com/RooCodeInc/Roo-Code/pull/5200)) + +## Bug Fixes + +* **Task Sharing**: Fixed share button popover not opening when clicked - now works properly while maintaining tooltip functionality ([#5203](https://github.com/RooCodeInc/Roo-Code/pull/5203)) +* **Claude Code Reliability**: Fixed hanging and failures when working with large conversation histories on Linux and Code-Server environments by implementing stdin streaming instead of command-line arguments (thanks Fovty, edgan, flyguy7299!) ([#5186](https://github.com/RooCodeInc/Roo-Code/pull/5186)) diff --git a/apps/docs/docs/update-notes/v3.22.5.mdx b/apps/docs/docs/update-notes/v3.22.5.mdx new file mode 100644 index 00000000000..2b8f7328f62 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.5.mdx @@ -0,0 +1,18 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.5 Release Notes (2025-06-29) + +This patch release removes the Gemini CLI provider and fixes several internal telemetry issues. + +## Provider Updates + +* **Gemini CLI Removal**: The Gemini CLI provider has been removed per Google's request for a more standard implementation. Users previously using the Gemini CLI provider should migrate to the standard Gemini provider for continued access to Gemini models ([#5223](https://github.com/RooCodeInc/Roo-Code/pull/5223)) + +## Bug Fixes + +* **Repository URL Handling**: Fixed telemetry functionality to properly handle git repository URLs by automatically converting SSH URLs to HTTPS format, ensuring telemetry works correctly regardless of which URL format users have configured ([#5202](https://github.com/RooCodeInc/Roo-Code/pull/5202)) (thanks liwilliam2021!) +* **Cloud Telemetry**: Fixed cloud telemetry capture for assistant messages that was accidentally broken by a previous optimization ([#5220](https://github.com/RooCodeInc/Roo-Code/pull/5220)) +* **Internal Telemetry**: Improved internal telemetry system to prevent duplicate event capturing, enhancing data accuracy and system efficiency ([#5211](https://github.com/RooCodeInc/Roo-Code/pull/5211)) +* **Type Error Prevention**: Fixed internal type errors when the gemini-cli provider is removed, ensuring smoother operation ([#5226](https://github.com/RooCodeInc/Roo-Code/pull/5226)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.22.6.mdx b/apps/docs/docs/update-notes/v3.22.6.mdx new file mode 100644 index 00000000000..b6c163dcef0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.6.mdx @@ -0,0 +1,50 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.22.6 Release Notes (2025-07-02) + +This patch release introduces auto-approval features, mode import/export capabilities, improved search controls, and various bug fixes for AWS Bedrock, API retry logic, and UI components. + +## New Features + +### Timer-Based Auto-Approval for Follow-Up Questions + +We've introduced timer-based auto-approval for follow-up questions to streamline your workflow. Roo Code can now proceed automatically after a configurable timeout, reducing manual intervention ([learn more](/features/auto-approving-actions#follow-up-questions)). (thanks liwilliam2021!) ([#5296](https://github.com/RooCodeInc/Roo-Code/pull/5296)) + +### Import and Export Custom Modes + +You can now import and export custom modes, making it easier to share, back up, and synchronize your modes across different projects and installations ([learn more](/features/custom-modes#importexport-modes)). ([#5074](https://github.com/RooCodeInc/Roo-Code/pull/5074)) + +### Enhanced Search and Indexing Controls + +- **Configurable Search Score Threshold**: A new slider in the settings allows you to fine-tune the sensitivity of semantic search, giving you more control over the relevance of your search results ([learn more](/features/codebase-indexing#advanced-configuration-fields)). ([#5041](https://github.com/RooCodeInc/Roo-Code/pull/5041)) + +## Quality of Life Improvements + +* **Persistent Version Indicator**: The Roo Code version is now always visible on the chat screen, providing a convenient way to check your version and access release notes without having to navigate to the settings. ([#5128](https://github.com/RooCodeInc/Roo-Code/pull/5128)) +* **Automatic Configuration Import**: You can now automatically import your Roo Code configuration on startup by placing a config file at a specified path in your VSCode settings. This eliminates the need to manually import configurations through the GUI ([learn more](/features/settings-management#automatic-configuration-import)). (thanks takakoutso!) ([#4848](https://github.com/RooCodeInc/Roo-Code/pull/4848)) +* **Architect Mode Enhancements**: To encourage better project planning, Architect mode is now the default for new installations. The mode has also been improved to no longer provide time estimates, ensuring its plans are focused on actionable steps rather than potentially misleading timelines ([#5289](https://github.com/RooCodeInc/Roo-Code/pull/5289), [#5295](https://github.com/RooCodeInc/Roo-Code/pull/5295)). +* **Mermaid Diagram Enhancements**: Mermaid diagrams now have a cleaner and more consistent appearance. Toolbar buttons are now clearly visible in light mode, and distracting error messages will no longer be rendered on invalid diagrams, providing a smoother experience when creating and viewing diagrams. (thanks chrarnoldus!) ([#5342](https://github.com/RooCodeInc/Roo-Code/pull/5342), [#5308](https://github.com/RooCodeInc/Roo-Code/pull/5308)) +* **Improved Model Behavior**: Models now provide more reliable and consistent responses. Previously, token usage information was unintentionally sent to the model, which could cause it to stop tasks or shorten its answers. This information is no longer sent, ensuring models complete tasks based on your requirements, not their perceived token limits (thanks SannidhyaSah!) ([#5312](https://github.com/RooCodeInc/Roo-Code/pull/5312)) +* **Enhanced File Protection**: The `.vscode` directory is now write-protected to prevent accidental changes to your editor configuration ([#5347](https://github.com/RooCodeInc/Roo-Code/pull/5347)) +* **Qdrant Configuration**: Improved the user experience when configuring a custom Qdrant server by preventing the URL field from auto-filling with the default value. (thanks SannidhyaSah!) ([#5217](https://github.com/RooCodeInc/Roo-Code/pull/5217)) + +## Bug Fixes + +* **Inconsistent Cancellation Messages**: Fixed an issue where canceling a task would show a misleading "API Streaming Failed" error. Now, canceling at any stage of a task will correctly display the "API Request Cancelled" message ([#4904](https://github.com/RooCodeInc/Roo-Code/pull/4904)) +* **Invalid Bedrock Model Identifier**: Fixed an issue that caused "invalid model identifier" errors when using AWS Bedrock with cross-region inference. Users can now reliably connect to Bedrock models across different regions. (thanks KevinZhao, zenithfull!) ([#4973](https://github.com/RooCodeInc/Roo-Code/pull/4973)) +* **URL Loading Timeouts**: Fixed an issue where referencing URLs with @ could result in a "Navigation timeout" error, making it more reliable to reference content from slower websites. (thanks MuriloFP, mrw1986!) ([#5160](https://github.com/RooCodeInc/Roo-Code/pull/5160)) +* **Excessive API Retry Delays**: Fixed an issue where the auto-retry delay for failed API requests could become excessively long. The delay is now capped at 10 minutes, preventing tasks from getting stuck for extended periods. (thanks MuriloFP, piisawheel!) ([#5171](https://github.com/RooCodeInc/Roo-Code/pull/5171)) +* **Context Condensation Threshold**: Fixed a bug where the context condensation threshold was not being applied correctly for individual profiles. Context will now be condensed at the specified threshold for each profile, as expected. (thanks PaperBoardOfficial!) ([#5230](https://github.com/RooCodeInc/Roo-Code/pull/5230)) +* **`apply_diff` Tool Documentation**: Updated the documentation for the `apply_diff` tool to correctly reflect its ability to apply edits to multiple files in a single operation. (thanks KJ7LNW!) ([#5232](https://github.com/RooCodeInc/Roo-Code/pull/5232)) +* **Cache Files in System Prompt**: Fixed an issue where cache files (like `.DS_Store` on macOS) were being included in the system prompt when using custom mode rules. This improves prompt quality and reduces unwanted noise. (thanks MuriloFP, juliettefournier-econ!) ([#5283](https://github.com/RooCodeInc/Roo-Code/pull/5283)) + +## Provider Updates + +* **AWS Bedrock**: Updated cross-region inference profile mapping for improved regional support (thanks KevinZhao!) ([#4973](https://github.com/RooCodeInc/Roo-Code/pull/4973)) +* **LiteLLM**: Added default headers and testing for litellm fetcher, enhancing compatibility (thanks andrewshu2000!) ([#5242](https://github.com/RooCodeInc/Roo-Code/pull/5242)) + +## Misc Improvements + +* **Installation Experience**: Streamlined the process for developers to test local builds of the Roo Code extension. A new `pnpm install:vsix` command now automates uninstalling, building, and installing development versions, making it faster and easier to contribute (thanks devxpain!) ([#4284](https://github.com/RooCodeInc/Roo-Code/pull/4284)) diff --git a/apps/docs/docs/update-notes/v3.22.mdx b/apps/docs/docs/update-notes/v3.22.mdx new file mode 100644 index 00000000000..25edfcf23f6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.22.mdx @@ -0,0 +1,101 @@ +--- +description: Roo Code 3.22 introduces 1-click task sharing, global rule directories, free Gemini access, enhanced mode discovery, and critical bug fixes. +keywords: + - Roo Code 3.22 + - release notes + - task sharing + - global rules + - Gemini CLI + - mode discovery +--- + +# Roo Code 3.22 Release Notes + +This major release introduces 1-click task sharing, global rule directories, free Gemini access, enhanced mode discovery, and comprehensive bug fixes for memory leaks and provider integration. + +## 1-Click Task Sharing + +Roo Code Task Sharing Demo + +We've added the ability to share your Roo Code tasks publicly right from within the extension ([learn more](/roo-code-cloud/task-sharing)): + +- **Public Sharing**: Select "Share Publicly" to generate a shareable link that anyone can access +- **Automatic Clipboard Copy**: Generated links are automatically copied to your clipboard for easy sharing +- **Collaboration Ready**: Share tasks with team members, collaborators, or anyone who needs to view your task and conversation history + +## Global Rules Directory Support + +We've added support for cross-workspace custom instruction sharing through global directory loading (thanks samhvw8!) ([#5016](https://github.com/RooCodeInc/Roo-Code/pull/5016)): + +- **Global Rules**: Store rules in `~/.roo/rules/` for consistent configuration across all projects +- **Project-Specific Rules**: Use `.roo/rules/` directories for project-specific customizations +- **Hierarchical Loading**: Global rules load first, with project rules taking precedence for overrides +- **Team Collaboration**: Version-control project rules to share team standards and workflows + +This enables configuration management across projects and machines, perfect for organizational onboarding and maintaining consistent development environments. [Learn how to set up global rules](/features/custom-instructions#setting-up-global-rules). + +## Gemini CLI Provider (Free Access) + +We've added a new Gemini CLI provider that enables free access to Google's Gemini models without requiring API keys: + +- **OAuth Authentication**: Sign in with your Google account to access Gemini models at no cost +- **Automatic Project Discovery**: Seamlessly connects to your Google Cloud projects +- **Streaming Responses**: Real-time response streaming for better interactivity +- **Complete Integration**: Full UI support with comprehensive setup guidance + +This gives you another powerful free option alongside local models and other free providers. + +## QOL Improvements + +* **Timer-Based Auto-Approval for Follow-Up Questions**: Streamline your workflow with timer-based auto-approval for follow-up questions ([learn more](/features/auto-approving-actions#follow-up-questions)). (thanks liwilliam2021!) ([#5296](https://github.com/RooCodeInc/Roo-Code/pull/5296)) +* **Import and Export Custom Modes**: Easily share, back up, and synchronize your custom modes across different projects and installations ([learn more](/features/custom-modes#importexport-modes)). ([#5074](https://github.com/RooCodeInc/Roo-Code/pull/5074)) +* **Enhanced Search and Indexing Controls**: + * **Configurable Search Score Threshold**: Fine-tune the sensitivity of semantic search with a new slider in the settings ([learn more](/features/codebase-indexing#advanced-configuration-fields)). ([#5041](https://github.com/RooCodeInc/Roo-Code/pull/5041)) +* **Persistent Version Indicator**: The Roo Code version is now always visible on the chat screen, providing a convenient way to check your version and access release notes without having to navigate to the settings. ([#5128](https://github.com/RooCodeInc/Roo-Code/pull/5128)) +* **Automatic Configuration Import**: You can now automatically import your Roo Code configuration on startup by placing a config file at a specified path in your VSCode settings. This eliminates the need to manually import configurations through the GUI ([learn more](/features/settings-management#automatic-configuration-import)). (thanks takakoutso!) ([#4848](https://github.com/RooCodeInc/Roo-Code/pull/4848)) +* **Architect Mode Enhancements**: To encourage better project planning, Architect mode is now the default for new installations. The mode has also been improved to no longer provide time estimates, ensuring its plans are focused on actionable steps rather than potentially misleading timelines ([#5289](https://github.com/RooCodeInc/Roo-Code/pull/5289), [#5295](https://github.com/RooCodeInc/Roo-Code/pull/5295)). +* **Mermaid Diagram Enhancements**: Mermaid diagrams now have a cleaner and more consistent appearance. Toolbar buttons are now clearly visible in light mode, and distracting error messages will no longer be rendered on invalid diagrams, providing a smoother experience when creating and viewing diagrams. (thanks chrarnoldus!) ([#5342](https://github.com/RooCodeInc/Roo-Code/pull/5342), [#5308](https://github.com/RooCodeInc/Roo-Code/pull/5308)) +* **Improved Model Behavior**: Models now provide more reliable and consistent responses. Previously, token usage information was unintentionally sent to the model, which could cause it to stop tasks or shorten its answers. This information is no longer sent, ensuring models complete tasks based on your requirements, not their perceived token limits (thanks SannidhyaSah!) ([#5312](https://github.com/RooCodeInc/Roo-Code/pull/5312)) +* **Enhanced File Protection**: The `.vscode` directory is now write-protected to prevent accidental changes to your editor configuration ([#5347](https://github.com/RooCodeInc/Roo-Code/pull/5347)) +* **Qdrant Configuration**: Improved the user experience when configuring a custom Qdrant server by preventing the URL field from auto-filling with the default value. (thanks SannidhyaSah!) ([#5217](https://github.com/RooCodeInc/Roo-Code/pull/5217)) +* **Mode Discovery**: Enhanced mode selector with highlighting for new users, redesigned interface, and descriptive text. Also moved the [Roo Code Marketplace](/features/marketplace) and [Mode configuration](/features/custom-modes) buttons out of the top menu for better organization (thanks brunobergher!) ([#4902](https://github.com/RooCodeInc/Roo-Code/pull/4902)) + +Enhanced mode selector interface showing improved highlighting and descriptive text for better user experience + +* **Quick Fix Control**: Added setting to disable Roo Code quick fixes, preventing conflicts with other extensions (thanks OlegOAndreev!) ([#4878](https://github.com/RooCodeInc/Roo-Code/pull/4878)) - [Learn more](/features/code-actions#disablingenabling-code-actions) + +VSCode settings showing the Enable Roo Code quick fixes toggle option + +* **Mode Switching**: Follow-up question suggestions can now switch modes directly, eliminating the need to manually change modes after selecting a suggestion ([#5200](https://github.com/RooCodeInc/Roo-Code/pull/5200)) +* **Consistent Tooltips**: Standardized tooltip delays to 300ms across the entire application for smooth, predictable behavior ([#5098](https://github.com/RooCodeInc/Roo-Code/pull/5098)) +* **Cost Transparency**: Improved OpenRouter BYOK cost calculation accuracy using official upstream costs and restored cached token count visibility ([#5145](https://github.com/RooCodeInc/Roo-Code/pull/5145)) + +## Security Fixes + +* **Code Display**: Eliminated XSS vulnerability in code block rendering for enhanced security (thanks KJ7LNW!) ([#5157](https://github.com/RooCodeInc/Roo-Code/pull/5157)) + +## Bug Fixes + +* **Inconsistent Cancellation Messages**: Fixed an issue where canceling a task would show a misleading "API Streaming Failed" error. Now, canceling at any stage of a task will correctly display the "API Request Cancelled" message ([#4904](https://github.com/RooCodeInc/Roo-Code/pull/4904)) +* **Invalid Bedrock Model Identifier**: Fixed an issue that caused "invalid model identifier" errors when using AWS Bedrock with cross-region inference. Users can now reliably connect to Bedrock models across different regions. (thanks KevinZhao, zenithfull!) ([#4973](https://github.com/RooCodeInc/Roo-Code/pull/4973)) +* **URL Loading Timeouts**: Fixed an issue where referencing URLs with @ could result in a "Navigation timeout" error, making it more reliable to reference content from slower websites. (thanks MuriloFP, mrw1986!) ([#5160](https://github.com/RooCodeInc/Roo-Code/pull/5160)) +* **Excessive API Retry Delays**: Fixed an issue where the auto-retry delay for failed API requests could become excessively long. The delay is now capped at 10 minutes, preventing tasks from getting stuck for extended periods. (thanks MuriloFP, piisawheel!) ([#5171](https://github.com/RooCodeInc/Roo-Code/pull/5171)) +* **Context Condensation Threshold**: Fixed a bug where the context condensation threshold was not being applied correctly for individual profiles. Context will now be condensed at the specified threshold for each profile, as expected. (thanks PaperBoardOfficial!) ([#5230](https://github.com/RooCodeInc/Roo-Code/pull/5230)) +* **`apply_diff` Tool Documentation**: Updated the documentation for the `apply_diff` tool to correctly reflect its ability to apply edits to multiple files in a single operation. (thanks KJ7LNW!) ([#5232](https://github.com/RooCodeInc/Roo-Code/pull/5232)) +* **Cache Files in System Prompt**: Fixed an issue where cache files (like `.DS_Store` on macOS) were being included in the system prompt when using custom mode rules. This improves prompt quality and reduces unwanted noise. (thanks MuriloFP, juliettefournier-econ!) ([#5283](https://github.com/RooCodeInc/Roo-Code/pull/5283)) + +## Provider Updates + +* **AWS Bedrock**: Updated cross-region inference profile mapping for improved regional support (thanks KevinZhao!) ([#4973](https://github.com/RooCodeInc/Roo-Code/pull/4973)) +* **LiteLLM**: Added default headers and testing for litellm fetcher, enhancing compatibility (thanks andrewshu2000!) ([#5242](https://github.com/RooCodeInc/Roo-Code/pull/5242)) +* **Gemini CLI Removal**: The Gemini CLI provider has been removed per Google's request for a more standard implementation. Users previously using the Gemini CLI provider should migrate to the standard Gemini provider for continued access to Gemini models ([#5223](https://github.com/RooCodeInc/Roo-Code/pull/5223)) +* **Claude Code**: Fixed token counting issues, message handling for long tasks, removed misleading UI controls, and improved caching/image upload ([#5108](https://github.com/RooCodeInc/Roo-Code/pull/5108), [#5072](https://github.com/RooCodeInc/Roo-Code/pull/5072), [#5105](https://github.com/RooCodeInc/Roo-Code/pull/5105), [#5113](https://github.com/RooCodeInc/Roo-Code/pull/5113)) +* **Azure OpenAI**: Fixed compatibility with reasoning models by removing unsupported temperature parameter (thanks ExactDoug!) ([#5116](https://github.com/RooCodeInc/Roo-Code/pull/5116)) +* **AWS Bedrock**: Improved throttling error detection and retry functionality ([#4748](https://github.com/RooCodeInc/Roo-Code/pull/4748)) + +## Misc Improvements + +* **Installation Experience**: Streamlined the process for developers to test local builds of the Roo Code extension. A new `pnpm install:vsix` command now automates uninstalling, building, and installing development versions, making it faster and easier to contribute (thanks devxpain!) ([#4284](https://github.com/RooCodeInc/Roo-Code/pull/4284)) +* **VSCode Command Integration**: Added programmatic settings import capability - import settings via Command Palette ("Roo: Import Settings") or VSCode API for automation (thanks shivamd1810!) ([#5095](https://github.com/RooCodeInc/Roo-Code/pull/5095)) +* **Translation Workflow**: Improved internal translation processes to reduce file reads and improve efficiency (thanks KJ7LNW!) ([#5126](https://github.com/RooCodeInc/Roo-Code/pull/5126)) +* **YAML Parsing**: Enhanced custom modes configuration handling for edge cases and special characters ([#5099](https://github.com/RooCodeInc/Roo-Code/pull/5099)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.0.mdx b/apps/docs/docs/update-notes/v3.23.0.mdx new file mode 100644 index 00000000000..5992c0246b5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.0.mdx @@ -0,0 +1,62 @@ +--- +description: This release graduates codebase indexing to a stable feature, introduces a powerful new todo list for managing complex tasks, and a whole lot of bug fixes! +--- + +import Codicon from '@site/src/components/Codicon'; + +# Roo Code 3.23.0 Release Notes (2025-07-09) + +This release graduates codebase indexing to a stable feature, introduces a powerful new todo list for managing complex tasks, and a whole lot of bug fixes! + +## Codebase Indexing: Always On, Always Ready + +Codebase indexing has graduated from an experimental feature and is now a core part of Roo Code, available directly from your chat input. You can now manage your index by clicking the database icon in the bottom-right corner of the chat box. Once configured, the indexer runs automatically in the background, ensuring Roo always has an up-to-date semantic understanding of your project. To get started, see the [Codebase Indexing quick start guide](/features/codebase-indexing#quick-start-guide). + +Codebase Indexing Status Icon + +Thank you to MuriloFP, OleynikAleksandr, sxueck, CW-B-W, WAcry, bughaver, daniel-lxs, SannidhyaSah, ChuKhaLi, HahaBill, koberghe, sfz009900, and tmchow for helping get this across the finish line! ([#5378](https://github.com/RooCodeInc/Roo-Code/pull/5378), [#5377](https://github.com/RooCodeInc/Roo-Code/pull/5377), [#5383](https://github.com/RooCodeInc/Roo-Code/pull/5383), [#5483](https://github.com/RooCodeInc/Roo-Code/pull/5483), [#5481](https://github.com/RooCodeInc/Roo-Code/pull/5481), [#5228](https://github.com/RooCodeInc/Roo-Code/pull/5228), [#5214](https://github.com/RooCodeInc/Roo-Code/pull/5214), [#5158](https://github.com/RooCodeInc/Roo-Code/pull/5158), [#5402](https://github.com/RooCodeInc/Roo-Code/pull/5402), [#5451](https://github.com/RooCodeInc/Roo-Code/pull/5451), [#5352](https://github.com/RooCodeInc/Roo-Code/pull/5352), [#5403](https://github.com/RooCodeInc/Roo-Code/pull/5403)) + +## New: Task Todo List + +This release introduces a new todo list feature to help you keep track of complex tasks. Roo Code will now display a checklist of steps for your task, ensuring that no step is missed. You can view and manage the todo list directly in the chat interface. + +Task Todo List overview showing interactive checklist in Roo Code + +Thank you to qdaxb for this feature! ([#5182](https://github.com/RooCodeInc/Roo-Code/pull/5182), [#5472](https://github.com/RooCodeInc/Roo-Code/pull/5472), [#5473](https://github.com/RooCodeInc/Roo-Code/pull/5473), [#5482](https://github.com/RooCodeInc/Roo-Code/pull/5482)) + +## QOL Improvements + +- **Simplified Prompt History**: Navigate your prompt history using only the up and down arrow keys when the cursor is at the start of the input field ([#5467](https://github.com/RooCodeInc/Roo-Code/pull/5467)) +- **API Provider Search**: You can now search and filter the list of API providers in the settings (thanks GOODBOY008!) ([#5278](https://github.com/RooCodeInc/Roo-Code/pull/5278)) +API Provider Search interface showing search and filter functionality +- **Copy Prompt Button**: Adds a 'Copy Prompt' button to the task actions (thanks Juice10, vultrnerd!) ([#5392](https://github.com/RooCodeInc/Roo-Code/pull/5392)) +Copy Prompt button in task actions interface +- **Chat UI**: Fixes several UI inconsistencies and layout shifting issues in the chat view to create a more stable and polished user experience (thanks seedlord!) ([#5237](https://github.com/RooCodeInc/Roo-Code/pull/5237)) +- **Model Search Dropdown**: Fixed an issue where the model search input was pre-filled with the current model, now starts with a clean search field (thanks kevinvandijk!) ([#5449](https://github.com/RooCodeInc/Roo-Code/pull/5449)) +- **Chat Interface Polish**: Added proper spacing to the camera icon and made placeholder text non-selectable, preventing accidental highlighting (thanks MuriloFP!) ([#5477](https://github.com/RooCodeInc/Roo-Code/pull/5477)) +- **Clean Custom Mode Deletion**: Deleting a custom mode now also deletes its corresponding `.roo/rules-{mode}` folder ([#5317](https://github.com/RooCodeInc/Roo-Code/pull/5317)) +- **File Listing Performance**: Optimized file listing in large repositories when workspace file listing is disabled, resolving slow initial requests (thanks daniel-lxs, jcaplan!) ([#5421](https://github.com/RooCodeInc/Roo-Code/pull/5421)) +- **`insert_content` Tool**: The `insert_content` tool can now create new files when inserting content at the beginning or end of a file (thanks Ruakij, KJ7LNW!) ([#4382](https://github.com/RooCodeInc/Roo-Code/pull/4382)) + +## Bug Fixes + +- **`apply_diff` Tool**: Fixed an issue where the `apply_diff` tool would hang indefinitely on an error (thanks lhish!) ([#5391](https://github.com/RooCodeInc/Roo-Code/pull/5391)) +- **Chat Focus**: Prevents the chat from losing focus during automated workflows, stopping user input from being accidentally redirected to files being edited by Roo (thanks ColbySerpa!) ([#5349](https://github.com/RooCodeInc/Roo-Code/pull/5349)) +- **Architect Mode File Restrictions**: Fixed an issue where Architect mode was not properly enforcing file restrictions (thanks shanemmattner!) ([#5447](https://github.com/RooCodeInc/Roo-Code/pull/5447)) +- **Slash Command Descriptions**: Standardizes mode descriptions in slash commands for a more consistent user experience ([#5388](https://github.com/RooCodeInc/Roo-Code/pull/5388)) +- **Follow-up Question Timer**: Fixed an issue where the auto-approval timer for follow-up questions would continue even after a user responded (thanks liwilliam2021!) ([#5368](https://github.com/RooCodeInc/Roo-Code/pull/5368)) +- **TypeScript Watch Path**: Fixes an issue where TypeScript compiler errors in watch mode would not correctly link back to the source file (thanks bbenshalom, KJ7LNW!) ([#5155](https://github.com/RooCodeInc/Roo-Code/pull/5155)) +- **Completion Sound**: Prevents annoying repetitive completion sounds when reopening completed tasks, making the completion notification more meaningful and less intrusive (thanks SannidhyaSah!) ([#5249](https://github.com/RooCodeInc/Roo-Code/pull/5249)) +- **New Task Streaming**: Fixed an issue where creating a new task with large instructions would cause the UI to appear frozen ([#5432](https://github.com/RooCodeInc/Roo-Code/pull/5432)) +- **MCP Image Resources**: Fixed MCP image resource handling to support servers that don't use standard data URI format, allowing users to successfully process images from a wider range of MCP servers (thanks s97712!) ([#5254](https://github.com/RooCodeInc/Roo-Code/pull/5254)) +- **`create_mode` Instructions**: The `create_mode` instructions now include the `description` field ([#5433](https://github.com/RooCodeInc/Roo-Code/pull/5433)) +- **OpenRouter**: Fixes an issue where the number of reserved tokens for OpenRouter models was displayed incorrectly (thanks shariqriazz!) ([#5240](https://github.com/RooCodeInc/Roo-Code/pull/5240)) + +## Repo Level Updates + +- **User-Agent Headers**: All API requests now include a standard User-Agent header for improved tool identification and compliance ([#5492](https://github.com/RooCodeInc/Roo-Code/pull/5492)) +- **Issue Fixer Orchestrator**: Internal mode improvements for GitHub issue resolution workflows (thanks MuriloFP!) ([#5379](https://github.com/RooCodeInc/Roo-Code/pull/5379), [#5366](https://github.com/RooCodeInc/Roo-Code/pull/5366)) +- **PR Fixer Orchestrator**: Enhanced internal PR fixing workflow with better safety and user control (thanks MuriloFP!) ([#5407](https://github.com/RooCodeInc/Roo-Code/pull/5407)) +- **PR Reviewer Orchestrator**: Improved internal code review delegation to specialized modes (thanks MuriloFP!) ([#5406](https://github.com/RooCodeInc/Roo-Code/pull/5406)) +- **Testing Guidelines**: Added clear and compact testing guidelines to the project rules documentation (thanks daniel-lxs!) ([#5353](https://github.com/RooCodeInc/Roo-Code/pull/5353)) +- **`docs-extractor` Mode**: Improved the `docs-extractor` mode for more reliable documentation generation ([#5381](https://github.com/RooCodeInc/Roo-Code/pull/5381)) diff --git a/apps/docs/docs/update-notes/v3.23.1.mdx b/apps/docs/docs/update-notes/v3.23.1.mdx new file mode 100644 index 00000000000..83b6820c912 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.1.mdx @@ -0,0 +1,11 @@ +--- +description: This release improves the visibility of codebase indexing status. +--- + +# Roo Code 3.23.1 Release Notes (2025-07-09) + +This release improves the visibility of codebase indexing status. + +## QOL Improvements + +* **Indexing Status**: The code indexing indicator is now always visible in the chat area, making it easier to track indexing progress ([#5505](https://github.com/RooCodeInc/Roo-Code/pull/5505)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.10.mdx b/apps/docs/docs/update-notes/v3.23.10.mdx new file mode 100644 index 00000000000..5efe7e8ed9a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.10.mdx @@ -0,0 +1,15 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.10 Release Notes (2025-07-14) + +This release improves codebase indexing reliability and enhances the user interface. + +## Bug Fixes + +* **Code Indexing**: Fixed code indexing to use optimal model dimensions, improving indexing reliability and performance (thanks daniel-lxs!) ([#5705](https://github.com/RooCodeInc/Roo-Code/pull/5705)) + +## QOL Improvements + +* **Model Selection Interface**: Improved visual appearance and spacing in the code index model selection interface for better usability \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.11.mdx b/apps/docs/docs/update-notes/v3.23.11.mdx new file mode 100644 index 00000000000..aadedc991be --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.11.mdx @@ -0,0 +1,19 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.11 Release Notes (2025-07-15) + +This release adds new provider options and improves mode navigation. + +## Provider Updates + +* **Groq Kimi K2**: Added Kimi K2 model option for Groq users with improved token handling reliability for models with equal max tokens and context window + +## QOL Improvements + +* **Mode Navigation**: Added bidirectional mode cycling with Cmd+Shift+. keyboard shortcut to switch to previous mode, making mode navigation more efficient when you overshoot your target mode (thanks mkdir700!) ([#5695](https://github.com/RooCodeInc/Roo-Code/pull/5695)) + +## Misc Improvements + +* **GitHub Actions**: Fixed GitHub Actions workflow warnings by removing invalid parameters from CI/CD configuration (thanks hamirmahal!) ([#5676](https://github.com/RooCodeInc/Roo-Code/pull/5676)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.12.mdx b/apps/docs/docs/update-notes/v3.23.12.mdx new file mode 100644 index 00000000000..62edc4a31c4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.12.mdx @@ -0,0 +1,11 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.12 Release Notes (2025-07-15) + +This release improves token handling consistency across API providers. + +## Misc Improvements + +* **Token Handling**: Improved consistency in token handling across API providers with centralized max-token calculation logic for better reliability \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.13.mdx b/apps/docs/docs/update-notes/v3.23.13.mdx new file mode 100644 index 00000000000..1a524d3b713 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.13.mdx @@ -0,0 +1,45 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.13 Release Notes (2025-07-17) + +This release improves codebase indexing reliability, enhances UI clarity, and fixes several important bugs. + +## Codebase Indexing Memory Fix + +We've resolved a critical memory leak that was causing crashes when indexing large codebases (thanks daniel-lxs, rxpjd, buck-0x, BenWilles!) ([#5785](https://github.com/RooCodeInc/Roo-Code/pull/5785)): + +- **Reduced Memory Usage**: Memory consumption drops from ~500MB-1GB to just 10-50MB for large projects +- **Increased File Limit**: Can now index up to 50,000 files (previously 3,000) +- **No More Crashes**: Eliminates out-of-memory errors during indexing + +This fix makes Roo Code much more reliable for enterprise-scale codebases. + +## Bug Fixes + +* **Custom Mode Names**: Fixed an issue where clearing a custom mode name would corrupt the YAML file and make all custom modes disappear (thanks daniel-lxs, kfxmvp!) ([#5794](https://github.com/RooCodeInc/Roo-Code/pull/5794)) +* **Auto-Approve Checkbox**: Resolved confusing checkbox states where it could show as checked with "None" selected or unchecked with options selected ([#5602](https://github.com/RooCodeInc/Roo-Code/pull/5602)) +* **Date Format Clarity**: Changed date format to ISO 8601 to prevent LLMs from misinterpreting dates like 7/11/2025 as November 7th instead of July 11th (thanks chrarnoldus!) ([#5793](https://github.com/RooCodeInc/Roo-Code/pull/5793)) +* **Settings Save Issue**: Fixed a bug where opening provider settings with OpenRouter required discarding non-existent changes ([#5779](https://github.com/RooCodeInc/Roo-Code/pull/5779)) +* **LiteLLM URL Handling**: Fixed baseURL handling when paths are included, ensuring requests go to the correct endpoints (thanks ChuKhaLi!) ([#5697](https://github.com/RooCodeInc/Roo-Code/pull/5697)) +* **Project Analysis**: Fixed list-files tool to ensure complete directory structure is visible when analyzing large projects (thanks qdaxb!) ([#5303](https://github.com/RooCodeInc/Roo-Code/pull/5303)) + +## QOL Improvements + +* **Ollama Timeout**: Increased API timeouts from 10s/5s to 60s/30s to prevent failures with slower models (thanks daniel-lxs, danntee, vshvedov!) ([#5778](https://github.com/RooCodeInc/Roo-Code/pull/5778)) +* **Ollama UI**: Updated to use text inputs instead of dropdowns for model selection, matching other providers (thanks daniel-lxs!) ([#5818](https://github.com/RooCodeInc/Roo-Code/pull/5818)) +* **Settings Organization**: Moved less commonly used provider settings into an "Advanced settings" dropdown for cleaner UI ([#5762](https://github.com/RooCodeInc/Roo-Code/pull/5762)) +* **Error Control**: Added configurable "Error & Repetition Limit" setting to control when "Roo is having trouble" dialogs appear, with option to disable them entirely (thanks MuriloFP, anojndr!) ([#5752](https://github.com/RooCodeInc/Roo-Code/pull/5752)) +* **Checkpoint Efficiency**: Excluded Terraform and Terragrunt cache directories from checkpoints, reducing storage usage by up to 10x (thanks MuriloFP, ijin!) ([#5750](https://github.com/RooCodeInc/Roo-Code/pull/5750)) +* **Message Editing**: Overhauled message edit/delete interface with custom modals and improved workflow (thanks liwilliam2021!) ([#5538](https://github.com/RooCodeInc/Roo-Code/pull/5538)) + +## Provider Updates + +* **Claude Code + Vertex AI**: Added support for Vertex AI model name formatting when using Claude Code provider (thanks janaki-sasidhar!) ([#5728](https://github.com/RooCodeInc/Roo-Code/pull/5728)) +* **API Task Control**: Added ability to set command execution timeout via API when starting tasks ([#5825](https://github.com/RooCodeInc/Roo-Code/pull/5825)) + +## Misc Improvements + +* **Telemetry**: Added tracking for todo list statistics ([#5746](https://github.com/RooCodeInc/Roo-Code/pull/5746)) +* **Documentation**: Updated evals repository link ([#5758](https://github.com/RooCodeInc/Roo-Code/pull/5758)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.14.mdx b/apps/docs/docs/update-notes/v3.23.14.mdx new file mode 100644 index 00000000000..bb3cb75edb6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.14.mdx @@ -0,0 +1,15 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.14 Release Notes (2025-07-17) + +This release improves internal workflows and fixes API task logging. + +## Misc Improvements + +* **Internal Workflow Simplification**: Removed unnecessary orchestrator modes and unified all GitHub operations to use the GitHub CLI instead of MCP tools, making internal development processes more efficient ([#5832](https://github.com/RooCodeInc/Roo-Code/pull/5832)) + +## Bug Fixes + +* **API Task Logging**: Fixed an issue where API-initiated tasks would attempt to write logs to workspace directories that might not exist. Logs now write to the system's temporary directory instead ([#5833](https://github.com/RooCodeInc/Roo-Code/pull/5833)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.15.mdx b/apps/docs/docs/update-notes/v3.23.15.mdx new file mode 100644 index 00000000000..8450e91bad9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.15.mdx @@ -0,0 +1,30 @@ +--- +description: This release improves diagnostics handling, UI accessibility, and includes various quality of life improvements and bug fixes. +keywords: + - roo code 3.23.15 + - diagnostics + - ui improvements + - bug fixes +--- + +# Roo Code 3.23.15 Release Notes (2025-07-18) + +This release improves diagnostics handling, UI accessibility, and includes various quality of life improvements and bug fixes. + +## QOL Improvements + +* **Task Safety**: New setting prevents accidentally completing tasks with unfinished todo items ([#5716](https://github.com/RooCodeInc/Roo-Code/pull/5716)) +* **Go Diagnostics**: Configurable delay prevents false error reports about unused imports (thanks mmhobi7!) ([#5863](https://github.com/RooCodeInc/Roo-Code/pull/5863)) +* **Marketplace Access**: Marketplace icon moved to top navigation for easier access ([#5864](https://github.com/RooCodeInc/Roo-Code/pull/5864)) +* **Custom Modes**: Added helpful descriptions and usage guidance to custom modes (thanks RandalSchwartz!) ([#5862](https://github.com/RooCodeInc/Roo-Code/pull/5862)) +* **YouTube Footer**: Quick access to Roo Code's YouTube channel from the website (thanks thill2323!) ([#5929](https://github.com/RooCodeInc/Roo-Code/pull/5929)) +* **PR Templates**: Issue-fixer mode now uses the official Roo Code PR template (thanks MuriloFP!) ([#5839](https://github.com/RooCodeInc/Roo-Code/pull/5839)) + +## Bug Fixes + +* **Claude Model Detection**: Fixed context length errors when using Claude models through alternative providers like Google Vertex AI (thanks daniel-lxs, TheFynx!) ([#5840](https://github.com/RooCodeInc/Roo-Code/pull/5840)) + +## Misc Improvements + +* **Command Timeout Configuration**: Added command timeout allowlist for long-running commands ([#5910](https://github.com/RooCodeInc/Roo-Code/pull/5910)) +* **Internal Modes**: Added Issue Investigator mode and enhanced Issue Writer mode for internal GitHub workflows ([#5913](https://github.com/RooCodeInc/Roo-Code/pull/5913)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.16.mdx b/apps/docs/docs/update-notes/v3.23.16.mdx new file mode 100644 index 00000000000..3189f5d5822 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.16.mdx @@ -0,0 +1,26 @@ +--- +description: This release improves performance for large codebases and enhances development workflows. +keywords: + - roo code 3.23.16 + - performance improvements + - code indexing + - rate limiting +--- + +# Roo Code 3.23.16 Release Notes (2025-07-19) + +This release improves performance for large codebases and enhances development workflows. + +## Performance Improvements + +* **Code Indexing**: Added memory-safe batch limiting to prevent overflow when scanning large codebases (thanks daniel-lxs!) ([#5891](https://github.com/RooCodeInc/Roo-Code/pull/5891)) +* **API Rate Limiting**: Implemented global rate limiting with exponential backoff for OpenAI-compatible embeddings, preventing API overload and improving reliability (thanks daniel-lxs!) ([#5854](https://github.com/RooCodeInc/Roo-Code/pull/5854)) + +## QOL Improvements + +* **Development Environment**: Fixed Docker port conflicts for evaluation services by using ports 5433 (PostgreSQL) and 6380 (Redis) instead of default ports (thanks roomote!) ([#5909](https://github.com/RooCodeInc/Roo-Code/pull/5909)) +* **Release Engineering**: Enhanced release notes generation to include issue numbers and reporters for better attribution (thanks roomote!) ([#5940](https://github.com/RooCodeInc/Roo-Code/pull/5940)) + +## Misc Improvements + +* **Repository Statistics**: Excluded non-English translation files from GitHub language statistics for more accurate codebase representation (thanks roomote!) ([#5943](https://github.com/RooCodeInc/Roo-Code/pull/5943)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.17.mdx b/apps/docs/docs/update-notes/v3.23.17.mdx new file mode 100644 index 00000000000..b1079ee8016 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.17.mdx @@ -0,0 +1,48 @@ +--- +description: This release introduces intelligent merge conflict resolution, new AI providers, enhanced stability, and numerous quality-of-life improvements. +keywords: + - roo code 3.23.17 + - merge resolver + - mistral embedding + - moonshot provider + - qwen model +--- + +# Roo Code 3.23.17 Release Notes (2025-07-22) + +This release introduces new AI providers, enhanced stability, and numerous quality-of-life improvements. + +## QOL Improvements + +* **Jump to New Files**: Added jump icon for newly created files, matching the experience of edited files (thanks mkdir700!) ([#5738](https://github.com/RooCodeInc/Roo-Code/pull/5738)) +* **Apply Diff Error Messages**: Added case sensitivity reminder when apply_diff fails, helping users understand matching requirements (thanks maskelihileci!) ([#6076](https://github.com/RooCodeInc/Roo-Code/pull/6076)) +* **Context Condensing Prompt Location**: Moved to Prompts section for better discoverability and persistent visibility (thanks SannidhyaSah, notadamking!) ([#5279](https://github.com/RooCodeInc/Roo-Code/pull/5279)) +* **Todo List Tool Control**: Added checkbox in provider settings to enable/disable the todo list tool ([#6032](https://github.com/RooCodeInc/Roo-Code/pull/6032)) +* **MCP Content Optimization**: Automatically omits MCP-related prompts when no servers are configured ([#5889](https://github.com/RooCodeInc/Roo-Code/pull/5889)) +* **Git Installation Check**: Shows clear warning with download link when Git is not installed for checkpoints feature (thanks MuriloFP!) ([#5920](https://github.com/RooCodeInc/Roo-Code/pull/5920)) +* **Configurable Eval Timeouts**: Added slider to set evaluation timeouts between 5-10 minutes ([#5865](https://github.com/RooCodeInc/Roo-Code/pull/5865)) + +### Bug Fixes + +* **Terminal Output Limits**: Fixed critical crashes caused by terminal commands outputting extremely long lines. Now properly limits output to prevent context explosion (thanks robottwo!) ([#5777](https://github.com/RooCodeInc/Roo-Code/pull/5777)) +* **API Error Messages**: Fixed issue where all API failures showed as "API Request Cancelled". Now displays correct error messages for better troubleshooting (thanks MDean-Slalom, daniel-lxs!) ([#6025](https://github.com/RooCodeInc/Roo-Code/pull/6025)) +* **AWS Bedrock Token Counting**: Fixed inaccurate token counts and false context window errors for Bedrock users (thanks daniel-lxs, fedorbass!) ([#6019](https://github.com/RooCodeInc/Roo-Code/pull/6019)) +* **Export During API Operations**: Restored ability to export, share, and copy content while API is running (thanks MuriloFP, KJ7LNW!) ([#5849](https://github.com/RooCodeInc/Roo-Code/pull/5849)) +* **Symlinked Rules Files**: Fixed sorting of symlinked rules files to use symlink names, allowing proper ordering with numbered prefixes (thanks dsent!) ([#5903](https://github.com/RooCodeInc/Roo-Code/pull/5903)) +* **Global Mode Export**: Fixed issue where exporting global modes didn't include associated rules files ([#5837](https://github.com/RooCodeInc/Roo-Code/pull/5837)) +* **Vitest Command**: Added missing run parameter to prevent tests hanging in watch mode (thanks KJ7LNW!) ([#5991](https://github.com/RooCodeInc/Roo-Code/pull/5991)) +* **Evaluation System**: Fixed evaluation timeout handling that was broken in a previous update ([#6065](https://github.com/RooCodeInc/Roo-Code/pull/6065)) +* **Cloud Session Handling**: Improved session error handling to prevent unnecessary logouts during service issues ([#6051](https://github.com/RooCodeInc/Roo-Code/pull/6051)) + +## Provider Updates + +* **Mistral Embedding Provider**: Codebase indexing gets a major upgrade with Mistral as a new embedding provider, offering superior performance at no cost. Simply select Mistral's codestral-embed model in your embedding settings for better code understanding and more accurate AI responses (thanks SannidhyaSah, shariqriazz!) ([#5946](https://github.com/RooCodeInc/Roo-Code/pull/5946)) +* **Qwen3-235B Model**: Added support for Qwen3-235B-A22B-Instruct-2507 with massive 262K token context window on Chutes AI (thanks apple-techie!) ([#6052](https://github.com/RooCodeInc/Roo-Code/pull/6052)) +* **Moonshot AI**: Added Moonshot as a new AI provider option (thanks CellenLee!) ([#6046](https://github.com/RooCodeInc/Roo-Code/pull/6046)) +* **Llama 4 Maverick**: Added Llama 4 Maverick model (128K context) to Google Vertex AI in US-EAST5 region (thanks MuriloFP, konstantinosbotonakis!) ([#6023](https://github.com/RooCodeInc/Roo-Code/pull/6023)) + +## Misc Improvements + +* **Merge Resolver Mode**: Added intelligent merge conflict resolution mode that analyzes commit history to make smart decisions about which changes to keep (thanks daniel-lxs!) ([#6090](https://github.com/RooCodeInc/Roo-Code/pull/6090)) +* **Token Fallback Logic**: Improved sliding window with consistent 8192 token fallback for more predictable context handling ([#5993](https://github.com/RooCodeInc/Roo-Code/pull/5993)) +* **Todo List Clarification**: Updated documentation to clarify that todo list tool is for complicated tasks, not just multi-step ones ([#5926](https://github.com/RooCodeInc/Roo-Code/pull/5926)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.18.mdx b/apps/docs/docs/update-notes/v3.23.18.mdx new file mode 100644 index 00000000000..54857c5165e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.18.mdx @@ -0,0 +1,24 @@ +--- +description: Bug fixes for todo list toggle, command parsing crashes, and improved error handling. +keywords: + - roo code 3.23.18 + - bug fixes + - error handling + - command parsing +--- + +# Roo Code 3.23.18 Release Notes (2025-07-23) + +This release fixes critical bugs including todo list toggle functionality, command parsing crashes, and adds better error handling to prevent interface crashes. + +## Bug Fixes + +* **Todo List Toggle**: Fixed the todo list toggle in provider advanced settings that wasn't working properly (thanks chrarnoldus!) ([#6103](https://github.com/RooCodeInc/Roo-Code/pull/6103)) + +* **Command Parsing**: Fixed crashes when running complex bash commands with special syntax like arithmetic expressions and array variables, allowing users to create advanced GitHub CLI aliases and other sophisticated shell scripts (thanks daniel-lxs, KJ7LNW!) ([#5743](https://github.com/RooCodeInc/Roo-Code/pull/5743)) + +* **Error Handling**: Added error boundaries to prevent the entire Roo Code interface from crashing when errors occur. Instead of seeing a blank screen, users now see helpful error messages with debugging information, allowing them to continue using other parts of the extension (thanks KJ7LNW, elianiva!) ([#5085](https://github.com/RooCodeInc/Roo-Code/pull/5085)) + +## Misc Improvements + +* **Process Termination**: Roo Code now more reliably terminates unresponsive processes, preventing hanging commands from blocking your workflow ([#6071](https://github.com/RooCodeInc/Roo-Code/pull/6071)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.19.mdx b/apps/docs/docs/update-notes/v3.23.19.mdx new file mode 100644 index 00000000000..e9f7f655fb9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.19.mdx @@ -0,0 +1,28 @@ +--- +description: Introduces Roo Code Cloud waitlist signup and improves command handling with smarter validation and multi-line support. +keywords: + - roo code 3.23.19 + - roo code cloud + - waitlist + - command handling +--- + +# Roo Code 3.23.19 Release Notes (2025-07-23) + +This release introduces Roo Code Cloud waitlist signup and improves command handling with smarter validation and better multi-line command support. + +## Roo Code Cloud Waitlist + +We're excited to announce early access signup for Roo Code Cloud! (thanks brunobergher!) ([#6104](https://github.com/RooCodeInc/Roo-Code/pull/6104)): + +- **Website Signup**: New call-to-action button in the website header for easy waitlist registration +- **In-Extension Access**: Users with 3+ tasks will see waitlist signup options directly in the extension +- **Early Access**: Be among the first to experience the power of Roo Code Cloud + +Join the waitlist today to get early access to cloud-powered features! + +## QOL Improvements + +* **Smarter Command Validation**: Improved command validation logic that only auto-denies subshell commands if they contain denied prefixes, making the system more intelligent about which commands to allow ([#6123](https://github.com/RooCodeInc/Roo-Code/pull/6123)) + +* **Multi-line Command Support**: Commands with newlines are now properly parsed, making it easier to work with multi-line commands across different operating systems (Unix, Windows, and old Mac formats) ([#6121](https://github.com/RooCodeInc/Roo-Code/pull/6121)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.2.mdx b/apps/docs/docs/update-notes/v3.23.2.mdx new file mode 100644 index 00000000000..c3a7bb3bf42 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.2.mdx @@ -0,0 +1,11 @@ +--- +description: Roo Code v3.23.2 refines the UX by restoring the "Apply" button for diffs and enhancing terminal command performance, ensuring a smoother and more efficient development workflow. +--- + +# Roo Code 3.23.2 Release Notes (2025-07-09) + +This release fixes auto-approval workflow issues. + +## Bug Fixes + +* **Auto-Approval**: Fixed issue where subsequent tools required manual approval after using `update_todo_list`, even when auto-approval was enabled (thanks daniel-lxs!) ([#5508](https://github.com/RooCodeInc/Roo-Code/pull/5508)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.3.mdx b/apps/docs/docs/update-notes/v3.23.3.mdx new file mode 100644 index 00000000000..9cd9069fa13 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.3.mdx @@ -0,0 +1,11 @@ +--- +description: This release fixes compatibility issues with custom mode files to ensure a smooth experience for users upgrading from earlier versions. +--- + +# Roo Code 3.23.3 Release Notes (2025-07-09) + +This release cleans up the chat interface. + +## QOL Improvements + +* **Chat Interface**: Removed outdated feature announcement for a cleaner chat experience ([#5510](https://github.com/RooCodeInc/Roo-Code/pull/5510)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.4.mdx b/apps/docs/docs/update-notes/v3.23.4.mdx new file mode 100644 index 00000000000..b7be36c9e72 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.4.mdx @@ -0,0 +1,20 @@ +--- +description: This release includes bug fixes, UI improvements, and better organization. +--- + +# Roo Code 3.23.4 Release Notes (2025-07-09) + +This release includes bug fixes, UI improvements, and better organization. + +## Bug Fixes + +* **Custom Modes**: Fixed crashes when custom modes configuration files were empty or contained null content (thanks daniel-lxs!) ([#5526](https://github.com/RooCodeInc/Roo-Code/pull/5526)) +* **File Listing**: Fixed issue where the [`list_files`](/advanced-usage/available-tools/list-files) tool incorrectly showed directories that should be ignored according to .gitignore patterns (thanks X9VoiD!) ([#5394](https://github.com/RooCodeInc/Roo-Code/pull/5394)) + +## QOL Improvements + +* **Chat Interface**: Improved tooltip consistency across chat interface buttons for a more polished experience (thanks daniel-lxs!) ([#5528](https://github.com/RooCodeInc/Roo-Code/pull/5528)) +* **Interface Organization**: Cleaner Roo Code view header with reduced visual clutter - less frequently used actions moved to VS Code's overflow menu (thanks dlab-anton!) ([#3060](https://github.com/RooCodeInc/Roo-Code/pull/3060)) +* **Command Organization**: Better organized VS Code extension interface with commands properly grouped in overflow menus ([#5525](https://github.com/RooCodeInc/Roo-Code/pull/5525)) +* **Indexing Status**: Improved visual alignment and consistency of the indexing status indicator ([#5523](https://github.com/RooCodeInc/Roo-Code/pull/5523)) +* **Interface Icons**: More consistent and clearer icons throughout the interface for better visibility of codebase indexing status ([#5520](https://github.com/RooCodeInc/Roo-Code/pull/5520)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.5.mdx b/apps/docs/docs/update-notes/v3.23.5.mdx new file mode 100644 index 00000000000..c9618da4aa7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.5.mdx @@ -0,0 +1,16 @@ +--- +description: This release fixes file handling issues and improves account accessibility. +--- + +# Roo Code 3.23.5 Release Notes (2025-07-09) + +This release fixes file handling issues and improves account accessibility. + +## Bug Fixes + +* **Error Messages**: Fixed display of raw translation keys in embedding provider error messages - now shows properly localized messages (thanks daniel-lxs!) ([#5535](https://github.com/RooCodeInc/Roo-Code/pull/5535)) +* **File Opening**: Fixed file opening functionality for files and folders with special characters like brackets in their names (thanks vivekfyi, nielpattin!) ([#5504](https://github.com/RooCodeInc/Roo-Code/pull/5504)) + +## QOL Improvements + +* **Account Access**: Account features are now more accessible - the account tab is visible in the main navigation instead of being hidden in the overflow menu ([#5534](https://github.com/RooCodeInc/Roo-Code/pull/5534)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.6.mdx b/apps/docs/docs/update-notes/v3.23.6.mdx new file mode 100644 index 00000000000..2adb5c83237 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.6.mdx @@ -0,0 +1,15 @@ +--- +description: This release adds Grok-4 model support and fixes a security issue. +--- + +# Roo Code 3.23.6 Release Notes (2025-07-10) + +This release adds Grok-4 model support and fixes a security issue. + +## Provider Updates + +* **xAI Grok-4**: Added support for Grok-4 model with 256K context window, image support, and prompt cache support ([#5559](https://github.com/RooCodeInc/Roo-Code/pull/5559)) + +## Bug Fixes + +* **MDM Security**: Fixed security vulnerability where users could bypass organizational MDM policies by opening the extension in new tabs/windows (thanks liwilliam2021!) ([#5540](https://github.com/RooCodeInc/Roo-Code/pull/5540)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.7.mdx b/apps/docs/docs/update-notes/v3.23.7.mdx new file mode 100644 index 00000000000..58234d30daa --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.7.mdx @@ -0,0 +1,37 @@ +--- +description: This release improves codebase indexing reliability, adds new provider options, and enhances the user interface. +--- + +# Roo Code 3.23.7 Release Notes (2025-07-12) + +This release improves codebase indexing reliability, adds new provider options, and enhances the user interface. + +## Provider Updates + +* **Devstral Medium**: Added support for Mistral's Devstral Medium model with 131,000 token context window and image support capabilities +* **Claude Code**: Added configurable maximum output tokens setting (8,000-64,000 tokens) for complex code generation tasks +* **Vertex AI**: Expanded region configuration to include all available GCP Vertex AI regions for better compliance and access to third-party models like Anthropic Claude (thanks shubhamgupta731!) ([#5557](https://github.com/RooCodeInc/Roo-Code/pull/5557)) + +## Bug Fixes + +* **Context Token Display**: Fixed inflated context token count displays by excluding cache tokens from calculation, showing accurate context window usage (thanks daniel-lxs!) ([#5603](https://github.com/RooCodeInc/Roo-Code/pull/5603)) +* **Codebase Indexing Errors**: Fixed cryptic error messages when configuring codebase indexing - users now see clear, understandable error messages instead of translation keys (thanks daniel-lxs, nikhil-swamix!) ([#5574](https://github.com/RooCodeInc/Roo-Code/pull/5574)) +* **Embedding Model Switching**: Fixed issues when switching between embedding models with different vector dimensions, allowing use of models beyond 1536 dimensions like Google Gemini's text-embedding-004 (thanks daniel-lxs, mkdir700!) ([#5565](https://github.com/RooCodeInc/Roo-Code/pull/5565)) +* **Mermaid Diagrams**: Fixed Mermaid diagram rendering issues in architect mode by preventing common syntax errors (thanks MuriloFP, joshmouch!) ([#5530](https://github.com/RooCodeInc/Roo-Code/pull/5530)) +* **UI Button Overlap**: Fixed overlapping enhancement and text-to-speech buttons, making both features accessible when text-to-speech is enabled (thanks sensei-woo!) ([#5586](https://github.com/RooCodeInc/Roo-Code/pull/5586)) + +## QOL Improvements + +* **Marketplace Access**: Added Marketplace buttons to both MCP and modes tabs for easier discovery and access +* **MCP Interface**: Improved MCP UI with toggle switches instead of eye buttons for enabling/disabling tools and servers, providing clearer visual feedback +* **Codebase Search**: Cleaner and more readable codebase search results with improved visual styling and better internationalization +* **Error Messages**: Friendlier error messages when API configuration profiles aren't compatible with organization settings +* **Architect Mode**: Intelligently selects the best available tools for context discovery, including semantic search when available + +## Misc Improvements + +* **Error Telemetry**: Improved debugging capabilities for better reliability and faster issue resolution, with enhanced privacy protection through hashed file paths (thanks daniel-lxs!) ([#5595](https://github.com/RooCodeInc/Roo-Code/pull/5595)) + +## Documentation Updates + +* **Typo Fixes**: Improved accuracy and clarity of documentation and code comments across multiple files (thanks noritaka1166!) ([#5569](https://github.com/RooCodeInc/Roo-Code/pull/5569)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.8.mdx b/apps/docs/docs/update-notes/v3.23.8.mdx new file mode 100644 index 00000000000..2fde16656d7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.8.mdx @@ -0,0 +1,28 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.8 Release Notes (2025-07-13) + +This release adds command workflow controls and improves the user interface. + +## Command Denylist + +We've added the ability to automatically reject unwanted commands in your workflows (thanks hannesrudolph!) ([#5614](https://github.com/RooCodeInc/Roo-Code/pull/5614)): + +- **Always Reject**: Mark commands as "always reject" to prevent accidental execution +- **Time Saving**: No need to manually reject the same commands repeatedly +- **Workflow Control**: Complements existing auto-approval functionality with "always reject" option + +This gives you better control over command execution in automated workflows. + +## QOL Improvements + +* **Codebase Indexing Toggle**: Added enable/disable checkbox for codebase indexing in settings with state persistence across sessions (thanks daniel-lxs, elasticdotventures!) ([#5599](https://github.com/RooCodeInc/Roo-Code/pull/5599)) +* **Chat Interface**: Improved chat layout with better organization and increased task history visibility (3 tasks instead of 2) +* **Command Messaging**: Clearer messaging when command prefixes are denied - users now see that denial is due to their settings rather than automatic system behavior +* **History Navigation**: Added "View all history" link to the HistoryPreview component for easier access to full task history when the history tab is hidden + +## Misc Improvements + +* **Type Definitions**: Updated internal type definitions for improved compatibility and development experience \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.9.mdx b/apps/docs/docs/update-notes/v3.23.9.mdx new file mode 100644 index 00000000000..ee5ac850de2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.9.mdx @@ -0,0 +1,32 @@ +--- +description: This release introduces free Gemini access via OAuth, fixes several bugs, and improves the overall user experience. +--- + +# Roo Code 3.23.9 Release Notes (2025-07-14) + +This release adds Windows support for Claude Code, introduces configurable command timeouts, and fixes critical workflow issues. + +## Windows Support + +We've added native Windows support for the Claude Code provider (thanks SannidhyaSah, kwk9892!) ([#5615](https://github.com/RooCodeInc/Roo-Code/pull/5615)): + +- **Fixed Windows Compatibility**: Claude Code provider no longer gets stuck on Windows systems +- **Improved Input Handling**: Uses stdin-based input to eliminate command-line length limitations +- **Cross-Platform**: Works reliably across Windows, macOS, and Linux + +## Command Execution Improvements + +We've added configurable timeout settings for command execution: + +- **Timeout Control**: Set timeouts from 0-600 seconds to prevent long-running commands from blocking workflows +- **Clear Error Messages**: Commands that timeout display helpful error messages +- **Better Visual Feedback**: Timeout errors now appear in red for better visibility + +## Bug Fixes + +* **Directory Tracking**: Fixed command execution directory tracking - Roo Code now properly maintains awareness of the current working directory when executing commands, preventing issues where subsequent commands would run in the wrong location after using `cd` commands (thanks chris-garrett!) ([#5667](https://github.com/RooCodeInc/Roo-Code/pull/5667)) +* **Embedding Model Switching**: Fixed vector dimension mismatch errors when switching between embedding models with different dimensions, allowing successful transitions from high-dimensional models to lower-dimensional models like Google Gemini (thanks hubeizys!) ([#5617](https://github.com/RooCodeInc/Roo-Code/pull/5617)) + +## Provider Updates + +* **Google Gemini**: Added support for Google's new gemini-embedding-001 model with improved performance and higher dimensional embeddings (3072 vs 768) for better codebase indexing and search (thanks daniel-lxs!) ([#5698](https://github.com/RooCodeInc/Roo-Code/pull/5698)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.23.mdx b/apps/docs/docs/update-notes/v3.23.mdx new file mode 100644 index 00000000000..3742458dd5d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.23.mdx @@ -0,0 +1,213 @@ +--- +description: Roo Code 3.23 graduates codebase indexing to stable, introduces task todo lists, command denylist, and Windows support for Claude Code. +keywords: + - Roo Code 3.23 + - release notes + - codebase indexing + - todo list + - command denylist + - Claude Code Windows +--- + +import Codicon from '@site/src/components/Codicon'; + +# Roo Code 3.23 Release Notes + +This release graduates codebase indexing to a stable feature, introduces a powerful new todo list for managing complex tasks, and includes critical performance improvements and bug fixes! + +## Codebase Indexing: Always On, Always Ready + +Codebase indexing has graduated from an experimental feature and is now a core part of Roo Code, available directly from your chat input. Once configured, the indexer runs automatically in the background, ensuring Roo always has an up-to-date semantic understanding of your project. To get started FREE, see the [Codebase Indexing quick start guide](/features/codebase-indexing#quick-start-guide). + +Codebase Indexing Status Icon + +Thank you to MuriloFP, OleynikAleksandr, sxueck, CW-B-W, WAcry, bughaver, daniel-lxs, SannidhyaSah, ChuKhaLi, HahaBill, koberghe, sfz009900, tmchow, rxpjd, buck-0x, and BenWilles for helping get this across the finish line! ([#5378](https://github.com/RooCodeInc/Roo-Code/pull/5378), [#5377](https://github.com/RooCodeInc/Roo-Code/pull/5377), [#5383](https://github.com/RooCodeInc/Roo-Code/pull/5383), [#5483](https://github.com/RooCodeInc/Roo-Code/pull/5483), [#5481](https://github.com/RooCodeInc/Roo-Code/pull/5481), [#5228](https://github.com/RooCodeInc/Roo-Code/pull/5228), [#5214](https://github.com/RooCodeInc/Roo-Code/pull/5214), [#5158](https://github.com/RooCodeInc/Roo-Code/pull/5158), [#5402](https://github.com/RooCodeInc/Roo-Code/pull/5402), [#5451](https://github.com/RooCodeInc/Roo-Code/pull/5451), [#5352](https://github.com/RooCodeInc/Roo-Code/pull/5352), [#5403](https://github.com/RooCodeInc/Roo-Code/pull/5403), [#5785](https://github.com/RooCodeInc/Roo-Code/pull/5785)) + +## New: Task Todo List + +This release introduces a new todo list feature to help you keep track of complex tasks. Roo Code will now display a checklist of steps for your task, ensuring that no step is missed. You can view and manage the todo list directly in the chat interface. + +Task Todo List overview showing interactive checklist in Roo Code + +Thank you to qdaxb for this feature! ([#5182](https://github.com/RooCodeInc/Roo-Code/pull/5182), [#5472](https://github.com/RooCodeInc/Roo-Code/pull/5472), [#5473](https://github.com/RooCodeInc/Roo-Code/pull/5473), [#5482](https://github.com/RooCodeInc/Roo-Code/pull/5482)) + +## New: Command Denylist + +We've added the ability to automatically reject unwanted commands in your workflows: + +- **Always Reject**: Mark commands as "always reject" to prevent accidental execution +- **Time Saving**: No need to manually reject the same commands repeatedly +- **Workflow Control**: Complements existing auto-approval functionality with "always reject" option + +This gives you better control over command execution in automated workflows. + +## Roo Code Cloud Waitlist + +We're excited to announce early access signup for Roo Code Cloud! (thanks brunobergher!): + +- **Website Signup**: New call-to-action button in the website header for easy waitlist registration +- **In-Extension Access**: Users with 3+ tasks will see waitlist signup options directly in the extension +- **Early Access**: Be among the first to experience the power of Roo Code Cloud + +Join the waitlist today to get early access to cloud-powered features! + +## Windows Support for Claude Code + +We've added native Windows support for the Claude Code provider (thanks SannidhyaSah, kwk9892!) ([#5615](https://github.com/RooCodeInc/Roo-Code/pull/5615)): + +- **Fixed Windows Compatibility**: Claude Code provider no longer gets stuck on Windows systems +- **Improved Input Handling**: Uses stdin-based input to eliminate command-line length limitations +- **Cross-Platform**: Works reliably across Windows, macOS, and Linux + +## QOL Improvements + +- **Smarter Command Validation**: Improved command validation logic that only auto-denies subshell commands if they contain denied prefixes, making the system more intelligent about which commands to allow +- **Multi-line Command Support**: Commands with newlines are now properly parsed, making it easier to work with multi-line commands across different operating systems (Unix, Windows, and old Mac formats) +- **Simplified Prompt History**: Navigate your prompt history using only the up and down arrow keys when the cursor is at the start of the input field ([#5467](https://github.com/RooCodeInc/Roo-Code/pull/5467)) +- **API Provider Search**: You can now search and filter the list of API providers in the settings (thanks GOODBOY008!) ([#5278](https://github.com/RooCodeInc/Roo-Code/pull/5278)) +API Provider Search interface showing search and filter functionality + +- **Copy Prompt Button**: Adds a 'Copy Prompt' button to the task actions (thanks Juice10, vultrnerd!) ([#5392](https://github.com/RooCodeInc/Roo-Code/pull/5392)) +Copy Prompt button in task actions interface + +- **Chat UI**: Fixes several UI inconsistencies and layout shifting issues in the chat view to create a more stable and polished user experience (thanks seedlord!) ([#5237](https://github.com/RooCodeInc/Roo-Code/pull/5237)) +- **Model Search Dropdown**: Fixed an issue where the model search input was pre-filled with the current model, now starts with a clean search field (thanks kevinvandijk!) ([#5449](https://github.com/RooCodeInc/Roo-Code/pull/5449)) +- **Chat Interface Polish**: Added proper spacing to the camera icon and made placeholder text non-selectable, preventing accidental highlighting (thanks MuriloFP!) ([#5477](https://github.com/RooCodeInc/Roo-Code/pull/5477)) +- **Clean Custom Mode Deletion**: Deleting a custom mode now also deletes its corresponding `.roo/rules-{mode}` folder ([#5317](https://github.com/RooCodeInc/Roo-Code/pull/5317)) +- **File Listing Performance**: Optimized file listing in large repositories when workspace file listing is disabled, resolving slow initial requests (thanks daniel-lxs, jcaplan!) ([#5421](https://github.com/RooCodeInc/Roo-Code/pull/5421)) +- **`insert_content` Tool**: The `insert_content` tool can now create new files when inserting content at the beginning or end of a file (thanks Ruakij, KJ7LNW!) ([#4382](https://github.com/RooCodeInc/Roo-Code/pull/4382)) +- **Indexing Status**: The code indexing indicator is now always visible in the chat area, making it easier to track indexing progress ([#5505](https://github.com/RooCodeInc/Roo-Code/pull/5505)) +- **Chat Interface**: Removed outdated feature announcement for a cleaner chat experience ([#5510](https://github.com/RooCodeInc/Roo-Code/pull/5510)) +- **Chat Interface**: Improved tooltip consistency across chat interface buttons for a more polished experience (thanks daniel-lxs!) ([#5528](https://github.com/RooCodeInc/Roo-Code/pull/5528)) +- **Interface Organization**: Cleaner Roo Code view header with reduced visual clutter - less frequently used actions moved to VS Code's overflow menu (thanks dlab-anton!) ([#3060](https://github.com/RooCodeInc/Roo-Code/pull/3060)) +- **Command Organization**: Better organized VS Code extension interface with commands properly grouped in overflow menus ([#5525](https://github.com/RooCodeInc/Roo-Code/pull/5525)) +- **Indexing Status**: Improved visual alignment and consistency of the indexing status indicator ([#5523](https://github.com/RooCodeInc/Roo-Code/pull/5523)) +- **Interface Icons**: More consistent and clearer icons throughout the interface for better visibility of codebase indexing status ([#5520](https://github.com/RooCodeInc/Roo-Code/pull/5520)) +- **Account Access**: Account features are now more accessible - the account tab is visible in the main navigation instead of being hidden in the overflow menu ([#5534](https://github.com/RooCodeInc/Roo-Code/pull/5534)) +- **User-Agent Headers**: All API requests now include a standard User-Agent header for improved tool identification and compliance ([#5492](https://github.com/RooCodeInc/Roo-Code/pull/5492)) +- **Codebase Indexing Toggle**: Added enable/disable checkbox for codebase indexing in settings with state persistence across sessions (thanks daniel-lxs, elasticdotventures!) ([#5599](https://github.com/RooCodeInc/Roo-Code/pull/5599)) +- **Chat Interface**: Improved chat layout with better organization and increased task history visibility (3 tasks instead of 2) ([#5643](https://github.com/RooCodeInc/Roo-Code/pull/5643)) +- **Command Messaging**: Clearer messaging when command prefixes are denied - users now see that denial is due to their settings rather than automatic system behavior ([#5637](https://github.com/RooCodeInc/Roo-Code/pull/5637)) +- **History Navigation**: Added "View all history" link to the HistoryPreview component for easier access to full task history when the history tab is hidden ([#5630](https://github.com/RooCodeInc/Roo-Code/pull/5630)) +- **Marketplace Access**: Added Marketplace buttons to both MCP and modes tabs for easier discovery and access ([#5580](https://github.com/RooCodeInc/Roo-Code/pull/5580)) +- **MCP Interface**: Improved MCP UI with toggle switches instead of eye buttons for enabling/disabling tools and servers, providing clearer visual feedback ([#5576](https://github.com/RooCodeInc/Roo-Code/pull/5576)) +- **Codebase Search**: Cleaner and more readable codebase search results with improved visual styling and better internationalization ([#5571](https://github.com/RooCodeInc/Roo-Code/pull/5571)) +- **Error Messages**: Friendlier error messages when API configuration profiles aren't compatible with organization settings ([#5561](https://github.com/RooCodeInc/Roo-Code/pull/5561)) +- **Architect Mode**: Intelligently selects the best available tools for context discovery, including semantic search when available ([#5607](https://github.com/RooCodeInc/Roo-Code/pull/5607)) +- **Model Selection Interface**: Improved visual appearance and spacing in the code index model selection interface for better usability ([#5706](https://github.com/RooCodeInc/Roo-Code/pull/5706)) +- **Mode Navigation**: Added bidirectional mode cycling with Cmd+Shift+. keyboard shortcut to switch to previous mode, making mode navigation more efficient when you overshoot your target mode (thanks mkdir700!) ([#5695](https://github.com/RooCodeInc/Roo-Code/pull/5695)) +- **Ollama Timeout**: Increased API timeouts from 10s/5s to 60s/30s to prevent failures with slower models (thanks daniel-lxs, danntee, vshvedov!) ([#5778](https://github.com/RooCodeInc/Roo-Code/pull/5778)) +- **Ollama UI**: Updated to use text inputs instead of dropdowns for model selection, matching other providers (thanks daniel-lxs!) ([#5818](https://github.com/RooCodeInc/Roo-Code/pull/5818)) +- **Settings Organization**: Moved less commonly used provider settings into an "Advanced settings" dropdown for cleaner UI ([#5762](https://github.com/RooCodeInc/Roo-Code/pull/5762)) +- **Error Control**: Added configurable "Error & Repetition Limit" setting to control when "Roo is having trouble" dialogs appear, with option to disable them entirely (thanks MuriloFP, anojndr!) ([#5752](https://github.com/RooCodeInc/Roo-Code/pull/5752)) +- **Checkpoint Efficiency**: Excluded Terraform and Terragrunt cache directories from checkpoints, reducing storage usage by up to 10x (thanks MuriloFP, ijin!) ([#5750](https://github.com/RooCodeInc/Roo-Code/pull/5750)) +- **Message Editing**: Overhauled message edit/delete interface with custom modals and improved workflow (thanks liwilliam2021!) ([#5538](https://github.com/RooCodeInc/Roo-Code/pull/5538)) +- **Task Safety**: New setting prevents accidentally completing tasks with unfinished todo items +- **Go Diagnostics**: Configurable delay prevents false error reports about unused imports (thanks mmhobi7!) +- **Marketplace Access**: Marketplace icon moved to top navigation for easier access +- **Custom Modes**: Added helpful descriptions and usage guidance to custom modes (thanks RandalSchwartz!) +- **YouTube Footer**: Quick access to Roo Code's YouTube channel from the website (thanks thill2323!) +- **PR Templates**: Issue-fixer mode now uses the official Roo Code PR template (thanks MuriloFP!) +- **Jump to New Files**: Added jump icon for newly created files, matching the experience of edited files (thanks mkdir700!) +- **Apply Diff Error Messages**: Added case sensitivity reminder when apply_diff fails, helping users understand matching requirements (thanks maskelihileci!) +- **Context Condensing Prompt Location**: Moved to Prompts section for better discoverability and persistent visibility (thanks SannidhyaSah, notadamking!) +- **Todo List Tool Control**: Added checkbox in provider settings to enable/disable the todo list tool +- **MCP Content Optimization**: Automatically omits MCP-related prompts when no servers are configured +- **Git Installation Check**: Shows clear warning with download link when Git is not installed for checkpoints feature (thanks MuriloFP!) +- **Configurable Eval Timeouts**: Added slider to set evaluation timeouts between 5-10 minutes + +## Bug Fixes + +- **Todo List Toggle**: Fixed the todo list toggle in provider advanced settings that wasn't working properly (thanks chrarnoldus!) +- **Command Parsing**: Fixed crashes when running complex bash commands with special syntax like arithmetic expressions and array variables, allowing users to create advanced GitHub CLI aliases and other sophisticated shell scripts (thanks daniel-lxs, KJ7LNW!) +- **Error Handling**: Added error boundaries to prevent the entire Roo Code interface from crashing when errors occur. Instead of seeing a blank screen, users now see helpful error messages with debugging information, allowing them to continue using other parts of the extension (thanks KJ7LNW, elianiva!) +- **`apply_diff` Tool**: Fixed an issue where the `apply_diff` tool would hang indefinitely on an error (thanks lhish!) ([#5391](https://github.com/RooCodeInc/Roo-Code/pull/5391)) +- **Chat Focus**: Prevents the chat from losing focus during automated workflows, stopping user input from being accidentally redirected to files being edited by Roo (thanks ColbySerpa!) ([#5349](https://github.com/RooCodeInc/Roo-Code/pull/5349)) +- **Architect Mode File Restrictions**: Fixed an issue where Architect mode was not properly enforcing file restrictions (thanks shanemmattner!) ([#5447](https://github.com/RooCodeInc/Roo-Code/pull/5447)) +- **Slash Command Descriptions**: Standardizes mode descriptions in slash commands for a more consistent user experience ([#5388](https://github.com/RooCodeInc/Roo-Code/pull/5388)) +- **Follow-up Question Timer**: Fixed an issue where the auto-approval timer for follow-up questions would continue even after a user responded (thanks liwilliam2021!) ([#5368](https://github.com/RooCodeInc/Roo-Code/pull/5368)) +- **TypeScript Watch Path**: Fixes an issue where TypeScript compiler errors in watch mode would not correctly link back to the source file (thanks bbenshalom, KJ7LNW!) ([#5155](https://github.com/RooCodeInc/Roo-Code/pull/5155)) +- **Completion Sound**: Prevents annoying repetitive completion sounds when reopening completed tasks, making the completion notification more meaningful and less intrusive (thanks SannidhyaSah!) ([#5249](https://github.com/RooCodeInc/Roo-Code/pull/5249)) +- **New Task Streaming**: Fixed an issue where creating a new task with large instructions would cause the UI to appear frozen ([#5432](https://github.com/RooCodeInc/Roo-Code/pull/5432)) +- **MCP Image Resources**: Fixed MCP image resource handling to support servers that don't use standard data URI format, allowing users to successfully process images from a wider range of MCP servers (thanks s97712!) ([#5254](https://github.com/RooCodeInc/Roo-Code/pull/5254)) +- **`create_mode` Instructions**: The `create_mode` instructions now include the `description` field ([#5433](https://github.com/RooCodeInc/Roo-Code/pull/5433)) +- **OpenRouter**: Fixes an issue where the number of reserved tokens for OpenRouter models was displayed incorrectly (thanks shariqriazz!) ([#5240](https://github.com/RooCodeInc/Roo-Code/pull/5240)) +- **Auto-Approval**: Fixed issue where subsequent tools required manual approval after using `update_todo_list`, even when auto-approval was enabled (thanks daniel-lxs!) ([#5508](https://github.com/RooCodeInc/Roo-Code/pull/5508)) +- **Custom Modes**: Fixed crashes when custom modes configuration files were empty or contained null content (thanks daniel-lxs!) ([#5526](https://github.com/RooCodeInc/Roo-Code/pull/5526)) +- **File Listing**: Fixed issue where the [`list_files`](/advanced-usage/available-tools/list-files) tool incorrectly showed directories that should be ignored according to .gitignore patterns (thanks X9VoiD!) ([#5394](https://github.com/RooCodeInc/Roo-Code/pull/5394)) +- **Error Messages**: Fixed display of raw translation keys in embedding provider error messages - now shows properly localized messages (thanks daniel-lxs!) ([#5535](https://github.com/RooCodeInc/Roo-Code/pull/5535)) +- **File Opening**: Fixed file opening functionality for files and folders with special characters like brackets in their names (thanks vivekfyi, nielpattin!) ([#5504](https://github.com/RooCodeInc/Roo-Code/pull/5504)) +- **MDM Security**: Fixed security vulnerability where users could bypass organizational MDM policies by opening the extension in new tabs/windows (thanks liwilliam2021!) ([#5540](https://github.com/RooCodeInc/Roo-Code/pull/5540)) +- **Context Token Display**: Fixed inflated context token count displays by excluding cache tokens from calculation, showing accurate context window usage (thanks daniel-lxs!) ([#5603](https://github.com/RooCodeInc/Roo-Code/pull/5603)) +- **Codebase Indexing Errors**: Fixed cryptic error messages when configuring codebase indexing - users now see clear, understandable error messages instead of translation keys (thanks daniel-lxs, nikhil-swamix!) ([#5574](https://github.com/RooCodeInc/Roo-Code/pull/5574)) +- **Embedding Model Switching**: Fixed issues when switching between embedding models with different vector dimensions, allowing use of models beyond 1536 dimensions like Google Gemini's text-embedding-004 (thanks daniel-lxs, mkdir700!) ([#5565](https://github.com/RooCodeInc/Roo-Code/pull/5565)) +- **Mermaid Diagrams**: Fixed Mermaid diagram rendering issues in architect mode by preventing common syntax errors (thanks MuriloFP, joshmouch!) ([#5530](https://github.com/RooCodeInc/Roo-Code/pull/5530)) +- **UI Button Overlap**: Fixed overlapping enhancement and text-to-speech buttons, making both features accessible when text-to-speech is enabled (thanks sensei-woo!) ([#5586](https://github.com/RooCodeInc/Roo-Code/pull/5586)) +- **Directory Tracking**: Fixed command execution directory tracking - Roo Code now properly maintains awareness of the current working directory when executing commands, preventing issues where subsequent commands would run in the wrong location after using `cd` commands (thanks chris-garrett!) ([#5667](https://github.com/RooCodeInc/Roo-Code/pull/5667)) +- **Embedding Model Switching**: Fixed vector dimension mismatch errors when switching between embedding models with different dimensions, allowing successful transitions from high-dimensional models to lower-dimensional models like Google Gemini (thanks hubeizys!) ([#5617](https://github.com/RooCodeInc/Roo-Code/pull/5617)) +- **Code Indexing**: Fixed code indexing to use optimal model dimensions, improving indexing reliability and performance (thanks daniel-lxs!) ([#5705](https://github.com/RooCodeInc/Roo-Code/pull/5705)) +- **Custom Mode Names**: Fixed an issue where clearing a custom mode name would corrupt the YAML file and make all custom modes disappear (thanks daniel-lxs, kfxmvp!) ([#5794](https://github.com/RooCodeInc/Roo-Code/pull/5794)) +- **Auto-Approve Checkbox**: Resolved confusing checkbox states where it could show as checked with "None" selected or unchecked with options selected ([#5602](https://github.com/RooCodeInc/Roo-Code/pull/5602)) +- **Date Format Clarity**: Changed date format to ISO 8601 to prevent LLMs from misinterpreting dates like 7/11/2025 as November 7th instead of July 11th (thanks chrarnoldus!) ([#5793](https://github.com/RooCodeInc/Roo-Code/pull/5793)) +- **Settings Save Issue**: Fixed a bug where opening provider settings with OpenRouter required discarding non-existent changes ([#5779](https://github.com/RooCodeInc/Roo-Code/pull/5779)) +- **LiteLLM URL Handling**: Fixed baseURL handling when paths are included, ensuring requests go to the correct endpoints (thanks ChuKhaLi!) ([#5697](https://github.com/RooCodeInc/Roo-Code/pull/5697)) +- **Project Analysis**: Fixed list-files tool to ensure complete directory structure is visible when analyzing large projects (thanks qdaxb!) ([#5303](https://github.com/RooCodeInc/Roo-Code/pull/5303)) +- **API Task Logging**: Fixed an issue where API-initiated tasks would attempt to write logs to workspace directories that might not exist. Logs now write to the system's temporary directory instead ([#5833](https://github.com/RooCodeInc/Roo-Code/pull/5833)) +- **Claude Model Detection**: Fixed context length errors when using Claude models through alternative providers like Google Vertex AI (thanks daniel-lxs, TheFynx!) +- **Development Environment**: Fixed Docker port conflicts for evaluation services by using ports 5433 (PostgreSQL) and 6380 (Redis) instead of default ports (thanks roomote!) +- **Terminal Output Limits**: Fixed critical crashes caused by terminal commands outputting extremely long lines. Now properly limits output to prevent context explosion (thanks robottwo!) +- **API Error Messages**: Fixed issue where all API failures showed as "API Request Cancelled". Now displays correct error messages for better troubleshooting (thanks MDean-Slalom, daniel-lxs!) +- **AWS Bedrock Token Counting**: Fixed inaccurate token counts and false context window errors for Bedrock users (thanks daniel-lxs, fedorbass!) +- **Export During API Operations**: Restored ability to export, share, and copy content while API is running (thanks MuriloFP, KJ7LNW!) +- **Symlinked Rules Files**: Fixed sorting of symlinked rules files to use symlink names, allowing proper ordering with numbered prefixes (thanks dsent!) +- **Global Mode Export**: Fixed issue where exporting global modes didn't include associated rules files +- **Vitest Command**: Added missing run parameter to prevent tests hanging in watch mode (thanks KJ7LNW!) +- **Evaluation System**: Fixed evaluation timeout handling that was broken in a previous update +- **Cloud Session Handling**: Improved session error handling to prevent unnecessary logouts during service issues + +## Provider Updates + +- **xAI Grok-4**: Added support for Grok-4 model with 256K context window, image support, and prompt cache support ([#5559](https://github.com/RooCodeInc/Roo-Code/pull/5559)) +- **Mistral Devstral Medium**: Added support for Mistral's Devstral Medium model with 131,000 token context window and image support capabilities +- **Claude Code**: Added configurable maximum output tokens setting (8,000-64,000 tokens) for complex code generation tasks +- **Vertex AI**: Expanded region configuration to include all available GCP Vertex AI regions for better compliance and access to third-party models like Anthropic Claude (thanks shubhamgupta731!) ([#5557](https://github.com/RooCodeInc/Roo-Code/pull/5557)) +- **Google Gemini**: Added support for Google's new gemini-embedding-001 model with improved performance and higher dimensional embeddings (3072 vs 768) for better codebase indexing and search (thanks daniel-lxs!) ([#5698](https://github.com/RooCodeInc/Roo-Code/pull/5698)) +- **Groq Kimi K2**: Added Kimi K2 model option for Groq users with improved token handling reliability for models with equal max tokens and context window +- **Claude Code + Vertex AI**: Added support for Vertex AI model name formatting when using Claude Code provider (thanks janaki-sasidhar!) ([#5728](https://github.com/RooCodeInc/Roo-Code/pull/5728)) +- **Mistral Embedding Provider**: Codebase indexing gets a major upgrade with Mistral as a new embedding provider, offering superior performance at no cost. Simply select Mistral's codestral-embed model in your embedding settings for better code understanding and more accurate AI responses (thanks SannidhyaSah, shariqriazz!) +- **Qwen3-235B Model**: Added support for Qwen3-235B-A22B-Instruct-2507 with massive 262K token context window on Chutes AI (thanks apple-techie!) +- **Moonshot AI**: Added Moonshot as a new AI provider option (thanks CellenLee!) +- **Llama 4 Maverick**: Added Llama 4 Maverick model (128K context) to Google Vertex AI in US-EAST5 region (thanks MuriloFP, konstantinosbotonakis!) + +## Misc Improvements + +- **Process Termination**: Roo Code now more reliably terminates unresponsive processes, preventing hanging commands from blocking your workflow +- **Code Indexing**: Added memory-safe batch limiting to prevent overflow when scanning large codebases (thanks daniel-lxs!) +- **API Rate Limiting**: Implemented global rate limiting with exponential backoff for OpenAI-compatible embeddings, preventing API overload and improving reliability (thanks daniel-lxs!) +- **Release Engineering**: Enhanced release notes generation to include issue numbers and reporters for better attribution (thanks roomote!) +- **Repository Statistics**: Excluded non-English translation files from GitHub language statistics for more accurate codebase representation (thanks roomote!) +- **Error Telemetry**: Improved debugging capabilities for better reliability and faster issue resolution, with enhanced privacy protection through hashed file paths (thanks daniel-lxs!) ([#5595](https://github.com/RooCodeInc/Roo-Code/pull/5595)) +- **Type Definitions**: Updated internal type definitions for improved compatibility and development experience +- **GitHub Actions**: Fixed GitHub Actions workflow warnings by removing invalid parameters from CI/CD configuration (thanks hamirmahal!) ([#5676](https://github.com/RooCodeInc/Roo-Code/pull/5676)) +- **Token Handling**: Improved consistency in token handling across API providers with centralized max-token calculation logic for better reliability +- **Telemetry**: Added tracking for todo list statistics ([#5746](https://github.com/RooCodeInc/Roo-Code/pull/5746)) +- **Documentation**: Updated evals repository link ([#5758](https://github.com/RooCodeInc/Roo-Code/pull/5758)) +- **Internal Workflow Simplification**: Removed unnecessary orchestrator modes and unified all GitHub operations to use the GitHub CLI instead of MCP tools, making internal development processes more efficient ([#5832](https://github.com/RooCodeInc/Roo-Code/pull/5832)) +- **Internal Modes**: Added Issue Investigator mode and enhanced Issue Writer mode for internal GitHub workflows ([#5913](https://github.com/RooCodeInc/Roo-Code/pull/5913)) +- **Command Execution Improvements**: Added configurable timeout settings (0-600 seconds) with clear error messages, visual feedback, and API task control ([#5825](https://github.com/RooCodeInc/Roo-Code/pull/5825)) +- **Command Timeout Allowlist**: Added ability to exclude specific commands from timeout restrictions for long-running tasks like builds and deployments +- **Merge Resolver Mode**: Added intelligent merge conflict resolution mode that analyzes commit history to make smart decisions about which changes to keep (thanks daniel-lxs!) +- **Token Fallback Logic**: Improved sliding window with consistent 8192 token fallback for more predictable context handling +- **Todo List Clarification**: Updated documentation to clarify that todo list tool is for complicated tasks, not just multi-step ones + +## Documentation Updates + +- **Typo Fixes**: Improved accuracy and clarity of documentation and code comments across multiple files (thanks noritaka1166!) ([#5569](https://github.com/RooCodeInc/Roo-Code/pull/5569)) + +## Repo Level Updates + +- **Issue Fixer Orchestrator**: Internal mode improvements for GitHub issue resolution workflows (thanks MuriloFP!) ([#5379](https://github.com/RooCodeInc/Roo-Code/pull/5379), [#5366](https://github.com/RooCodeInc/Roo-Code/pull/5366)) +- **PR Fixer Orchestrator**: Enhanced internal PR fixing workflow with better safety and user control (thanks MuriloFP!) ([#5407](https://github.com/RooCodeInc/Roo-Code/pull/5407)) +- **PR Reviewer Orchestrator**: Improved internal code review delegation to specialized modes (thanks MuriloFP!) ([#5406](https://github.com/RooCodeInc/Roo-Code/pull/5406)) +- **Testing Guidelines**: Added clear and compact testing guidelines to the project rules documentation (thanks daniel-lxs!) ([#5353](https://github.com/RooCodeInc/Roo-Code/pull/5353)) +- **`docs-extractor` Mode**: Improved the `docs-extractor` mode for more reliable documentation generation ([#5381](https://github.com/RooCodeInc/Roo-Code/pull/5381)) diff --git a/apps/docs/docs/update-notes/v3.24.0.mdx b/apps/docs/docs/update-notes/v3.24.0.mdx new file mode 100644 index 00000000000..83927990440 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.24.0.mdx @@ -0,0 +1,70 @@ +--- +description: Roo Code 3.24.0 introduces Hugging Face provider support, Agent Rules standard, terminal command permissions UI, and diagnostic message controls. +keywords: + - roo code 3.24.0 + - hugging face provider + - agent rules standard + - terminal permissions + - diagnostic controls +--- + +# Roo Code 3.24.0 Release Notes (2025-07-26) + +This release introduces Hugging Face provider with open source model support, cross-tool AI coding standards, enhanced terminal security controls, and improved diagnostic management. + +## Terminal Command Permissions UI + +Managing terminal command permissions is now easier with our new interactive UI (thanks hannesrudolph!) ([#5798](https://github.com/RooCodeInc/Roo-Code/pull/5798)): + +- **Visual Management**: See and manage command patterns directly in the chat interface +- **Pattern Suggestions**: Get intelligent pattern recommendations based on commands +- **Toggle Controls**: Easily switch between allowed and denied states for command patterns + +## Hugging Face Provider + +We've added support for Hugging Face as a new provider, bringing access to thousands of open source models (thanks TGlide, daniel-lxs!) ([#6134](https://github.com/RooCodeInc/Roo-Code/pull/6134), [#6190](https://github.com/RooCodeInc/Roo-Code/pull/6190), [#6228](https://github.com/RooCodeInc/Roo-Code/pull/6228), [#6236](https://github.com/RooCodeInc/Roo-Code/pull/6236)): + +- **Open Source Models**: Access a vast library of community models directly from Hugging Face +- **Flexible Integration**: Use models hosted on Hugging Face's infrastructure +- **Easy Configuration**: Simple setup process to get started with your preferred models and providers + +This opens up Roo Code to the entire Hugging Face ecosystem of open source AI models. See our [Hugging Face provider documentation](/providers/huggingface) for setup instructions. + +## Diagnostic Controls + +Take control of how many diagnostic messages appear in your context with new settings (thanks hannesrudolph!) ([#5582](https://github.com/RooCodeInc/Roo-Code/pull/5582)): + +- **Limit Errors and Warnings**: Prevent overwhelming amounts of diagnostics from filling up the model's context window +- **Improved Performance**: Reduce slowdowns caused by processing too many diagnostic messages +- **Legacy Code Support**: Especially helpful when working with codebases that temporarily have many errors during development + +This feature is essential for preserving the context window when working with large or legacy codebases that have many diagnostic messages. + +## Agent Rules Standard Support + +Roo Code now supports the Agent Rules standard through AGENTS.md files (thanks sgryphon!) ([#5969](https://github.com/RooCodeInc/Roo-Code/pull/5969)): + +- **Cross-Tool Compatibility**: Share natural language guidelines across Roo Code, Aider, Cline, and other compatible AI tools +- **Single Source of Truth**: Maintain one set of coding standards, security practices, and workflow rules +- **Automatic Detection**: Roo Code automatically finds and applies AGENTS.md files in your project + +This solves the fragmentation problem where developers using multiple AI tools had to maintain separate configuration files. + +## QOL Improvements + +* **Apply Diff Guidance**: Added efficiency warnings to guide better use of the apply_diff tool (thanks KJ7LNW!) ([#6055](https://github.com/RooCodeInc/Roo-Code/pull/6055)) +* **Error Boundaries**: Better error handling prevents complete UI crashes, showing helpful messages instead (thanks KJ7LNW, elianiva!) ([#5085](https://github.com/RooCodeInc/Roo-Code/pull/5085)) + +## Bug Fixes + +* **Todo List Toggle**: Fixed the todo list toggle that wasn't responding to clicks (thanks chrarnoldus!) ([#6103](https://github.com/RooCodeInc/Roo-Code/pull/6103)) +* **Markdown List Styles**: Restored proper formatting for ordered and unordered lists in chat (thanks village-way!) ([#6095](https://github.com/RooCodeInc/Roo-Code/pull/6095)) +* **Ollama URL Handling**: Fixed API URL normalization issues with trailing slashes (thanks Naam!) ([#6079](https://github.com/RooCodeInc/Roo-Code/pull/6079)) +* **Large File Protection**: Respects maxReadFileLine setting to prevent context exhaustion (thanks sebinseban!) ([#6073](https://github.com/RooCodeInc/Roo-Code/pull/6073)) +* **Auto-Approve Safety**: Fixed critical issue where auto-approve checkbox became unresponsive (thanks KJ7LNW!) ([#6061](https://github.com/RooCodeInc/Roo-Code/pull/6061)) +* **Git Checkpoint Warning**: Added clear warning when Git is not installed for checkpoints (thanks MuriloFP!) ([#5920](https://github.com/RooCodeInc/Roo-Code/pull/5920)) +* **Bash Command Parsing**: Fixed crashes with complex bash syntax and substitutions (thanks daniel-lxs, KJ7LNW!) ([#5743](https://github.com/RooCodeInc/Roo-Code/pull/5743)) + +## Misc Improvements + +* **Merge Resolver Mode**: Added internal mode for intelligent Git conflict resolution to improve PR Fixer capabilities (thanks daniel-lxs!) ([#6090](https://github.com/RooCodeInc/Roo-Code/pull/6090)) diff --git a/apps/docs/docs/update-notes/v3.25.0.mdx b/apps/docs/docs/update-notes/v3.25.0.mdx new file mode 100644 index 00000000000..05656873857 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.0.mdx @@ -0,0 +1,107 @@ +--- +description: This release introduces custom slash commands, Gemini web tools, image support for read_file, message queueing, and many quality-of-life improvements. +keywords: + - roo code 3.25.0 + - custom slash commands + - gemini tools + - image support + - message queueing +--- + +# Roo Code 3.25.0 Release Notes (2025-07-29) + +This release brings powerful new capabilities to Roo Code, including custom slash commands for workflow automation, enhanced Gemini models with web access, comprehensive image support, and seamless message queueing for uninterrupted conversations. + +## Custom Slash Commands + +Create your own slash commands to automate repetitive workflows ([#6263](https://github.com/RooCodeInc/Roo-Code/pull/6263), [#6286](https://github.com/RooCodeInc/Roo-Code/pull/6286), [#6333](https://github.com/RooCodeInc/Roo-Code/pull/6333), [#6336](https://github.com/RooCodeInc/Roo-Code/pull/6336), [#6327](https://github.com/RooCodeInc/Roo-Code/pull/6327)): + +- **File-Based Commands**: Place markdown files in `.roo/commands/` to create custom commands instantly +- **Management UI**: New interface for creating, editing, and deleting commands with built-in fuzzy search +- **Argument Hints**: Commands display helpful hints about required arguments as you type +- **Rich Descriptions**: Add metadata and descriptions to make commands self-documenting + +Slash commands menu showing available commands + +Turn complex workflows into simple commands like `/deploy` or `/review` for faster development. + +> **📚 Documentation**: See [Slash Commands Guide](/features/slash-commands) for detailed usage instructions. + +## Message Queueing + +Continue typing while Roo processes your requests with the new message queueing system ([#6167](https://github.com/RooCodeInc/Roo-Code/pull/6167)): + +- **Non-Blocking Input**: Type and send messages even while Roo is processing previous requests +- **Sequential Processing**: Messages are queued and processed in the order they were sent +- **Visual Feedback**: See queued messages clearly displayed in the interface +- **Maintained Context**: Each message maintains proper context from the conversation + +Keeps your workflow smooth when you have multiple quick questions or corrections. + +> **📚 Documentation**: See [Message Queueing Guide](/features/message-queueing) for detailed information. + +## Image Support for read_file Tool + +The [`read_file`](/advanced-usage/available-tools/read-file) tool now supports reading and analyzing images (thanks samhvw8!) ([#5172](https://github.com/RooCodeInc/Roo-Code/pull/5172)): + +- **Multiple Formats**: Supports PNG, JPG, JPEG, GIF, WebP, SVG, BMP, ICO, and TIFF +- **OCR Capabilities**: Extract text from screenshots and scanned documents +- **Batch Processing**: Read multiple images from a folder with descriptions +- **Simple Integration**: Works just like reading text files - no special configuration needed + +Useful for analyzing UI mockups, debugging screenshot errors, or extracting code from images. + +## Gemini Tools: URL Context and Google Search + +Gemini models can now access web content and perform Google searches for more accurate, up-to-date responses (thanks HahaBill!) ([#5959](https://github.com/RooCodeInc/Roo-Code/pull/5959)): + +- **URL Context**: Directly analyze web pages, documentation, and online resources +- **Google Search Grounding**: Get fact-checked responses based on current search results +- **User Control**: Enable or disable web features based on your privacy preferences +- **Real-Time Information**: Access the latest documentation and best practices + +Perfect for researching new libraries, verifying solutions, or getting current API information. + +> **📚 Documentation**: See [Gemini Provider Guide](/providers/gemini) for setup and usage instructions. + +## Quality of Life Improvements + +Small changes that make a big difference in your daily workflow: + +* **Markdown Table Rendering**: Tables now display with proper formatting instead of raw markdown for better readability ([#6252](https://github.com/RooCodeInc/Roo-Code/pull/6252)) + Markdown table rendering in Roo Code +* **Mode Selector Popover Redesign**: Improved layout with search functionality when you have many modes installed ([#6140](https://github.com/RooCodeInc/Roo-Code/pull/6140)) + Mode Selector Popover with Search +* **API Selector Popover Redesign**: Updated to match the new mode selector design with improved layout ([#6148](https://github.com/RooCodeInc/Roo-Code/pull/6148)) + API Configuration Selector Redesign +* **Sticky Task Modes**: Tasks remember their last-used mode and restore it automatically ([#6177](https://github.com/RooCodeInc/Roo-Code/pull/6177)) +* **ESC Key Support**: Close popovers with ESC for better keyboard navigation ([#6175](https://github.com/RooCodeInc/Roo-Code/pull/6175)) +* **Improved Command Highlighting**: Only valid commands are highlighted in the input field ([#6336](https://github.com/RooCodeInc/Roo-Code/pull/6336)) + +## Bug Fixes + +Critical fixes that improve stability and compatibility: + +* **Multi-file Edit Fix**: Fixed issue where Git diff views interfered with file operations (thanks hassoncs, szermatt!) ([#6350](https://github.com/RooCodeInc/Roo-Code/pull/6350)) +* **Non-QWERTY Keyboard Support**: Fixed keyboard shortcuts for Dvorak, AZERTY, and other layouts (thanks shlgug!) ([#6162](https://github.com/RooCodeInc/Roo-Code/pull/6162)) +* **Mode Export/Import**: Fixed custom mode export to handle slug changes correctly ([#6186](https://github.com/RooCodeInc/Roo-Code/pull/6186)) +* **Hidden Directory Support**: [`list_files`](/advanced-usage/available-tools/list-files) now properly shows contents of dot directories (thanks MuriloFP, avtc, zhang157686!) ([#5176](https://github.com/RooCodeInc/Roo-Code/pull/5176)) +* **Scrollbar Stability**: Fixed flickering scrollbar when streaming tables and code blocks ([#6266](https://github.com/RooCodeInc/Roo-Code/pull/6266)) +* **Settings Link Fix**: Restored working "View Settings" link in command permissions tooltip ([#6253](https://github.com/RooCodeInc/Roo-Code/pull/6253)) +* **@mention Parsing**: Fixed mentions to work in all input contexts including follow-up questions ([#6331](https://github.com/RooCodeInc/Roo-Code/pull/6331)) +* **Debug Button Removal**: Hidden test error boundary button in production builds (thanks bangjohn!) ([#6216](https://github.com/RooCodeInc/Roo-Code/pull/6216)) +* **Command Highlighting Fix**: Fixed inconsistent slash command highlighting behavior ([#6325](https://github.com/RooCodeInc/Roo-Code/pull/6325)) +* **Text Wrapping**: Fixed text overflow for long command patterns in permissions UI ([#6255](https://github.com/RooCodeInc/Roo-Code/pull/6255)) +* **Cross-Platform Mode Export**: Windows path separators now convert correctly for Unix systems ([#6308](https://github.com/RooCodeInc/Roo-Code/pull/6308)) + +## Provider Updates + +* **Prompt Caching for LiteLLM**: Reduce API costs and improve response times with caching support for Claude 3.5 Sonnet and compatible models (thanks MuriloFP, steve-gore-snapdocs!) ([#6074](https://github.com/RooCodeInc/Roo-Code/pull/6074)) + +## Misc. Improvements + +* **Background Editing (Experimental)**: Work uninterrupted while Roo edits files in the background—no more losing focus from automatic diff views ([#6214](https://github.com/RooCodeInc/Roo-Code/pull/6214)). Files change silently while you keep coding, with diagnostics and error checking still active. See [Background Editing](/features/experimental/background-editing) for details. +* **Security Update**: Updated form-data dependency to address security vulnerability ([#6332](https://github.com/RooCodeInc/Roo-Code/pull/6332)) +* **Contributor Updates**: Refreshed contributor acknowledgments across all localizations ([#6302](https://github.com/RooCodeInc/Roo-Code/pull/6302)) +* **Release Engineering**: Converted release engineer role to slash command for easier releases ([#6333](https://github.com/RooCodeInc/Roo-Code/pull/6333)) +* **PR Reviewer Improvements**: Made PR reviewer mode generic for any GitHub repository ([#6357](https://github.com/RooCodeInc/Roo-Code/pull/6357), [#6328](https://github.com/RooCodeInc/Roo-Code/pull/6328), [#6324](https://github.com/RooCodeInc/Roo-Code/pull/6324)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.1.mdx b/apps/docs/docs/update-notes/v3.25.1.mdx new file mode 100644 index 00000000000..3386a9a407d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.1.mdx @@ -0,0 +1,20 @@ +--- +description: Adds GLM-4.5-Air model to Chutes AI provider and improves subshell validation. +keywords: + - roo code 3.25.1 + - Chutes AI GLM-4.5-Air model + - subshell validation + - bug fixes +--- + +# Roo Code 3.25.1 Release Notes (2025-07-29) + +This release adds a powerful new AI model to the Chutes AI provider and improves command execution reliability. + +## Provider Updates + +* **Chutes AI - GLM-4.5-Air Model**: Added support for the GLM-4.5-Air model to the Chutes AI provider with 151K token context window for complex reasoning tasks and large codebase analysis - completely free to use (thanks matbgn!) ([#6377](https://github.com/RooCodeInc/Roo-Code/pull/6377)) + +## QOL Improvements + +* **Subshell Validation**: Improved handling and validation of complex shell commands with subshells, preventing potential errors when using command substitution patterns ([#6379](https://github.com/RooCodeInc/Roo-Code/pull/6379)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.10.mdx b/apps/docs/docs/update-notes/v3.25.10.mdx new file mode 100644 index 00000000000..6453336dad3 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.10.mdx @@ -0,0 +1,33 @@ +--- +description: Introduces GPT-5 model support with verbosity controls and fixes XML parsing and MCP error display issues. +keywords: + - roo code 3.25.10 + - gpt-5 + - openai models + - verbosity controls + - bug fixes +--- + +# Roo Code 3.25.10 Release Notes (2025-08-07) + +This release introduces support for OpenAI's GPT-5 models with verbosity controls and fixes important bugs in XML parsing and error message display. + +## GPT-5 Model Support + +We've added support for OpenAI's latest GPT-5 model family ([#6819](https://github.com/RooCodeInc/Roo-Code/pull/6819)): + +- **GPT-5 Models**: Three new model variants are now available: + - `gpt-5-2025-08-07`: The full GPT-5 model, now set as the default for OpenAI Native provider + - `gpt-5-mini-2025-08-07`: A smaller, faster variant for quick responses + - `gpt-5-nano-2025-08-07`: The most compact version for resource-constrained scenarios + +- **Verbosity Controls**: New settings to control model output detail levels (low, medium, high), allowing you to fine-tune response length and detail based on your needs + +All GPT-5 models support streaming responses for real-time interaction. + +> **📚 Documentation**: See [OpenAI Provider Guide](/providers/openai) for detailed information about GPT-5 models and verbosity settings. + +## Bug Fixes + +* **XML Parsing**: Fixed errors when using the apply_diff tool with complex XML files containing special characters by implementing proper CDATA sections ([#6811](https://github.com/RooCodeInc/Roo-Code/pull/6811)) +* **MCP Error Messages**: Fixed an issue where MCP server errors displayed raw translation keys instead of proper error messages ([#6821](https://github.com/RooCodeInc/Roo-Code/pull/6821)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.11.mdx b/apps/docs/docs/update-notes/v3.25.11.mdx new file mode 100644 index 00000000000..c7d142507e1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.11.mdx @@ -0,0 +1,51 @@ +--- +description: This release enhances GPT-5 support, adds the new IO Intelligence provider, and includes several new features, QOL improvements, and bug fixes. +keywords: + - roo code 3.25.11 + - new features + - bug fixes + - gpt-5 + - io intelligence +--- + +# Roo Code 3.25.11 Release Notes (2025-08-11) + +This release enhances GPT-5 support, adds the new IO Intelligence provider, and includes several new features, quality-of-life improvements, and bug fixes. + +## Enhanced GPT-5 Support + +We've enhanced our GPT-5 integration, enabling you to leverage more advanced capabilities for streaming, multi-turn conversations, and efficient token management. This release also adds support for the new GPT-5 models from OpenAI, including `gpt-5-2025-08-07`, `gpt-5-mini-2025-08-07`, and `gpt-5-nano-2025-08-07`. + +> **📚 Documentation**: See the [OpenAI Provider documentation](/providers/openai) for more details. + +## New IO Intelligence Provider + +We've added IO Intelligence as a new provider, giving you access to a wide range of AI models like Llama, DeepSeek, Qwen, and Mistral through a unified API ([#6875](https://github.com/RooCodeInc/Roo-Code/pull/6875)). + +> **📚 Documentation**: See the [IO Intelligence Provider documentation](/providers/io-intelligence) for more information. + +## Codex Mini Model Support + +We've added support for the `codex-mini-latest` model in the OpenAI Native provider, allowing you to leverage its specialized code-related capabilities directly (thanks KJ7LNW!) ([#6931](https://github.com/RooCodeInc/Roo-Code/pull/6931)). + +## QOL Improvements + +* **`codebase_search` Tool**: Clarified that the `path` parameter is optional and the tool searches the entire workspace by default ([#6877](https://github.com/RooCodeInc/Roo-Code/pull/6877)). +* **`@roo-code/cloud` Linking**: Improved the developer workflow by allowing `@roo-code/cloud` to be directly linked from a local repository, with HMR support ([#6799](https://github.com/RooCodeInc/Roo-Code/pull/6799)). +* **Chat Input Focus**: The chat input is now automatically focused when creating a new chat from the extension's top menu ([#6689](https://github.com/RooCodeInc/Roo-Code/pull/6689)). +* **Token Usage Reporting**: Fixed an issue where token usage and cost were underreported, providing more accurate cost tracking (thanks chrarnoldus!) ([#6122](https://github.com/RooCodeInc/Roo-Code/pull/6122)). + +## Bug Fixes + +* **MCP Server Startup**: Fixed an issue where MCP servers would fail to start and removed unnecessary refresh notifications ([#6878](https://github.com/RooCodeInc/Roo-Code/pull/6878)). +* **Tool Repetition Detector**: Fixed a bug where setting the "Errors and Repetition Limit" to 1 would incorrectly block the first tool call (thanks NaccOll!) ([#6836](https://github.com/RooCodeInc/Roo-Code/pull/6836)). +* **MCP Error Messages**: Fixed an issue where MCP server error messages were displaying raw translation keys ([#6821](https://github.com/RooCodeInc/Roo-Code/pull/6821)). +* **`apply_diff` Tool**: Fixed a bug that caused XML parsing errors when working with complex XML content ([#6811](https://github.com/RooCodeInc/Roo-Code/pull/6811)). +* **`max_tokens` Calculation**: Fixed an error for models with very large context windows where requests would fail due to incorrect calculation of maximum output tokens (thanks markp018!) ([#6808](https://github.com/RooCodeInc/Roo-Code/pull/6808)). +* **Scroll Jitter**: Fixed a scroll jitter issue that occurred during message streaming, especially with code blocks ([#6780](https://github.com/RooCodeInc/Roo-Code/pull/6780)). +* **MCP Server Refresh**: Fixed an issue where MCP servers would unnecessarily refresh when unrelated settings were saved ([#6779](https://github.com/RooCodeInc/Roo-Code/pull/6779)). +* **AWS Bedrock Connection**: Fixed a connection issue when using AWS Bedrock with LiteLLM ([#6778](https://github.com/RooCodeInc/Roo-Code/pull/6778)). + +## Provider Updates + +* **Fireworks**: Added support for four new models: GLM-4.5, GLM-4.5-Air, gpt-oss-20b, and gpt-oss-120b (thanks alexfarlander!) ([#6784](https://github.com/RooCodeInc/Roo-Code/pull/6784)). diff --git a/apps/docs/docs/update-notes/v3.25.12.mdx b/apps/docs/docs/update-notes/v3.25.12.mdx new file mode 100644 index 00000000000..16fab530239 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.12.mdx @@ -0,0 +1,73 @@ +--- +description: Claude Sonnet 4 gets a massive 1 million token context window, configurable API timeouts for local providers, and minimal reasoning support for OpenRouter. +keywords: + - roo code 3.25.12 + - claude sonnet 4 1 million tokens + - api timeout configuration + - openrouter reasoning + - local providers +--- + +# Roo Code 3.25.12 Release Notes (2025-08-12) + +This release brings a massive context window upgrade for Claude Sonnet 4, configurable timeouts for local providers, and minimal reasoning support for OpenRouter. + +## Claude Sonnet 4: 1 Million Token Context Window + +We've upgraded our Claude Sonnet 4 integration to support [Anthropic's latest API update](https://www.anthropic.com/news/1m-context), increasing the context window from 200,000 tokens to 1 million tokens - a 5x increase ([#7005](https://github.com/RooCodeInc/Roo-Code/pull/7005)): + +- **Massive Context**: Work with entire codebases, extensive documentation, or multiple large files in a single conversation +- **Tiered Pricing Support**: Automatically handles Anthropic's tiered pricing for extended context usage +- **UI Integration**: Context window size now displays in the model info view with a toggle to enable the 1M context feature + +This significant upgrade enables you to tackle much larger projects and maintain context across extensive codebases without splitting conversations. + +> **📚 Documentation**: See [Anthropic Provider Guide](/providers/anthropic) for setup and usage instructions. + +## Configurable API Timeout for Local Providers + +Local AI providers running large models can now configure custom timeout settings to prevent premature disconnections ([#6531](https://github.com/RooCodeInc/Roo-Code/pull/6531)): + +- **Flexible Timeouts**: Set timeouts from 0 to 3600 seconds (default: 600 seconds) +- **Provider Support**: Works with LM Studio, Ollama, and OpenAI-compatible providers + +Configure in your VSCode settings: +```json +{ + "roo-cline.apiRequestTimeout": 1200 // 20 minutes for very large models +} +``` + +## OpenRouter Minimal Reasoning Support + +OpenRouter now supports minimal reasoning effort for compatible models ([#6998](https://github.com/RooCodeInc/Roo-Code/pull/6998)): + +- **New Reasoning Level**: 'Minimal' option available for specific models +- **UI Updates**: Thinking budget interface shows minimal option when applicable +- **Optimized Performance**: Better control over reasoning intensity for different tasks + +This addition provides more granular control over model reasoning, allowing you to optimize for speed or depth based on your needs. + +## QOL Improvements + +* **GPT-5 Model Optimization**: GPT-5 models excluded from 20% context window output token cap for better performance ([#6963](https://github.com/RooCodeInc/Roo-Code/pull/6963)) +* **Task Management**: Added expand/collapse translations for better task organization ([#6962](https://github.com/RooCodeInc/Roo-Code/pull/6962)) +* **Localization**: Improved Traditional Chinese locale with better translations (thanks PeterDaveHello!) ([#6946](https://github.com/RooCodeInc/Roo-Code/pull/6946)) + +## Bug Fixes + +* **File Indexing**: JSON files now properly respect .rooignore settings during indexing ([#6691](https://github.com/RooCodeInc/Roo-Code/pull/6691)) +* **Tool Usage**: Fixed tool repetition detector to allow first tool call when limit is 1 ([#6836](https://github.com/RooCodeInc/Roo-Code/pull/6836)) +* **Service Initialization**: Improved checkpoint service initialization handling (thanks NaccOll!) ([#6860](https://github.com/RooCodeInc/Roo-Code/pull/6860)) +* **Browser Compatibility**: Added --no-sandbox flag to browser launch options for better compatibility (thanks QuinsZouls!) ([#6686](https://github.com/RooCodeInc/Roo-Code/pull/6686)) +* **UI Display**: Fixed long model names truncation in model selector to prevent overflow ([#6985](https://github.com/RooCodeInc/Roo-Code/pull/6985)) +* **Error Handling**: Improved bridge config fetch error handling ([#6961](https://github.com/RooCodeInc/Roo-Code/pull/6961)) + +## Provider Updates + +* **Amazon Bedrock**: Added OpenAI GPT-OSS models to the dropdown selection ([#6783](https://github.com/RooCodeInc/Roo-Code/pull/6783)) +* **Chutes Provider**: Added support for new Chutes provider models ([#6699](https://github.com/RooCodeInc/Roo-Code/pull/6699)) +* **Requesty Integration**: Added Requesty base URL support ([#6992](https://github.com/RooCodeInc/Roo-Code/pull/6992)) +* **Cloud Service**: Updated to versions 0.9.0 and 0.10.0 with improved stability ([#6964](https://github.com/RooCodeInc/Roo-Code/pull/6964), [#6968](https://github.com/RooCodeInc/Roo-Code/pull/6968)) +* **Bridge Service**: Switched to UnifiedBridgeService for better integration ([#6976](https://github.com/RooCodeInc/Roo-Code/pull/6976)) +* **Roomote Control**: Restored roomote control functionality ([#6796](https://github.com/RooCodeInc/Roo-Code/pull/6796)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.13.mdx b/apps/docs/docs/update-notes/v3.25.13.mdx new file mode 100644 index 00000000000..fb8a449ab20 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.13.mdx @@ -0,0 +1,30 @@ +--- +description: Adds Sonnet 1M context support for AWS Bedrock, improves internationalization, and fixes search functionality. +keywords: + - roo code 3.25.13 + - sonnet 1m context + - aws bedrock + - internationalization + - agent.md support +--- + +# Roo Code 3.25.13 Release Notes (2025-08-13) + +This release adds Sonnet 1M context support for AWS Bedrock, improves internationalization, and fixes search functionality. + +## Features + +* **Sonnet 1M Context Support**: Enable 1M token context window for Claude Sonnet 4 when using AWS Bedrock, allowing you to process much larger documents and have longer conversations ([#7032](https://github.com/RooCodeInc/Roo-Code/pull/7032)) + +## QOL Improvements + +* **Internationalization**: The Account button now displays in your selected language instead of always showing in English (thanks zhangtony239!) ([#6978](https://github.com/RooCodeInc/Roo-Code/pull/6978)) +* **Agent File Flexibility**: Roo Code now recognizes both AGENT.md and AGENTS.md files for agent rules, with AGENTS.md checked first for compatibility (thanks Brendan-Z!) ([#6913](https://github.com/RooCodeInc/Roo-Code/pull/6913)) + +## Bug Fixes + +* **Search Tool Reliability**: Fixed the search_files tool failing when encountering permission-denied files - it now continues working and returns results from accessible files (thanks R-omk!) ([#6757](https://github.com/RooCodeInc/Roo-Code/pull/6757)) + +## Provider Updates + +* **OpenAI**: Removed the deprecated GPT-4.5 Preview model from available options as it was removed from the OpenAI API (thanks PeterDaveHello!) ([#6948](https://github.com/RooCodeInc/Roo-Code/pull/6948)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.14.mdx b/apps/docs/docs/update-notes/v3.25.14.mdx new file mode 100644 index 00000000000..2b360ea04c9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.14.mdx @@ -0,0 +1,23 @@ +--- +description: Bug fixes for AWS Bedrock 1M context, OpenAI model switching, and development environment improvements. +keywords: + - roo code 3.25.14 + - aws bedrock fix + - openai verbosity fix + - bug fixes +--- + +# Roo Code 3.25.14 Release Notes (2025-08-13) + +This release fixes critical issues with AWS Bedrock 1M context support, OpenAI model switching, and improves the development environment. + +## Bug Fixes + +* **AWS Bedrock 1M Context**: Fixed parameter placement for Claude Sonnet 4 models to properly enable 1M context window support ([#7056](https://github.com/RooCodeInc/Roo-Code/pull/7056)) +* **OpenAI Model Switching**: Fixed API errors when switching from GPT-5 models to GPT-4.1 or other models that don't support the verbosity parameter (thanks eastonmeth!) ([#7055](https://github.com/RooCodeInc/Roo-Code/pull/7055)) +* **Development Environment**: Fixed webview functionality in development mode ([#7044](https://github.com/RooCodeInc/Roo-Code/pull/7044)) +* **Token Usage Reporting**: Reverted previous changes to prioritize user experience by allowing request interruption over precise cost reporting ([#7039](https://github.com/RooCodeInc/Roo-Code/pull/7039)) + +## Internal Improvements + +* **Code Organization**: Moved cloud-related types from @roo-code/types to dedicated @roo-code/cloud package ([#7038](https://github.com/RooCodeInc/Roo-Code/pull/7038)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.15.mdx b/apps/docs/docs/update-notes/v3.25.15.mdx new file mode 100644 index 00000000000..745b40e92f6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.15.mdx @@ -0,0 +1,37 @@ +--- +description: Bug fixes for scrollbar jumping, multi-folder workspaces, provider settings, and various stability improvements. +keywords: + - roo code 3.25.15 + - scrollbar fix + - multi-folder workspace + - bug fixes +--- + +# Roo Code 3.25.15 Release Notes (2025-08-14) + +This release fixes scrollbar jumping in long conversations, improves multi-folder workspace support, and includes various stability and quality-of-life improvements. + +## QOL Improvements + +* **SEO Improvements**: Enhanced website discoverability with proper metadata and social media preview cards (thanks elianiva, abumalick!) ([#7096](https://github.com/RooCodeInc/Roo-Code/pull/7096)) +* **Sitemap Generation**: Implemented TypeScript-based sitemap generation for better search engine indexing (thanks abumalick!) ([#6206](https://github.com/RooCodeInc/Roo-Code/pull/6206)) +* **Account Button Localization**: The Account button now displays in your selected language across 18 supported languages (thanks zhangtony239!) ([#6978](https://github.com/RooCodeInc/Roo-Code/pull/6978)) +* **AGENT.md Support**: Now recognizes both AGENT.md and AGENTS.md files for agent rules configuration (thanks Brendan-Z!) ([#6913](https://github.com/RooCodeInc/Roo-Code/pull/6913)) + +## Bug Fixes + +* **Scrollbar Jumping**: Fixed the frustrating scrollbar jumping issue in long conversations over 500 messages (thanks shlgug, adambrand!) ([#7064](https://github.com/RooCodeInc/Roo-Code/pull/7064)) +* **Multi-Folder Workspaces**: Fixed workspace path handling and "file not found" errors in multi-folder VS Code workspaces (thanks NaccOll!) ([#6903](https://github.com/RooCodeInc/Roo-Code/pull/6903), [#6902](https://github.com/RooCodeInc/Roo-Code/pull/6902)) +* **Task Execution Stability**: Improved stability during long-running tasks, helping with the "grey screen" issue (thanks catrielmuller, MuriloFP!) ([#7035](https://github.com/RooCodeInc/Roo-Code/pull/7035)) +* **Provider Settings Save Button**: The save button now properly enables when changing provider dropdowns and checkboxes ([#7113](https://github.com/RooCodeInc/Roo-Code/pull/7113)) +* **XML Entity Decoding**: Fixed apply_diff tool failures when processing files with special characters like "&" (thanks indiesewell!) ([#7108](https://github.com/RooCodeInc/Roo-Code/pull/7108)) +* **Settings Display**: Fixed Max Requests and Max Cost values not displaying in the settings UI (thanks chrarnoldus, possible055!) ([#6925](https://github.com/RooCodeInc/Roo-Code/pull/6925)) +* **Context Condensing Indicator**: Fixed the condensing indicator incorrectly persisting when switching tasks (thanks f14XuanLv!) ([#6922](https://github.com/RooCodeInc/Roo-Code/pull/6922)) +* **Sitemap /evals Page**: Added missing /evals page to sitemap generation ([#7102](https://github.com/RooCodeInc/Roo-Code/pull/7102)) +* **NPM Publishing**: Fixed the npm publishing script for the types package ([#7093](https://github.com/RooCodeInc/Roo-Code/pull/7093)) + +## Provider Updates + +* **AWS Bedrock 1M Context**: Added checkbox to enable 1M token context window for Claude Sonnet 4 ([#7032](https://github.com/RooCodeInc/Roo-Code/pull/7032)) +* **GPT-4.5 Preview Removal**: Removed deprecated GPT-4.5 Preview model from OpenAI provider options (thanks PeterDaveHello!) ([#6948](https://github.com/RooCodeInc/Roo-Code/pull/6948)) +* **Task Metadata**: Improved compatibility with Roo Code Cloud services ([#7092](https://github.com/RooCodeInc/Roo-Code/pull/7092)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.16.mdx b/apps/docs/docs/update-notes/v3.25.16.mdx new file mode 100644 index 00000000000..173b01fd5bb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.16.mdx @@ -0,0 +1,38 @@ +--- +description: Improves Ollama integration, adds GPT-5 chat support, and fixes multiple UI and stability issues. +keywords: + - roo code 3.25.16 + - ollama native api + - gpt-5 chat + - bug fixes +--- + +# Roo Code 3.25.16 Release Notes (2025-08-17) + +This release improves provider integrations with native Ollama API support and GPT-5 chat model, enhances task history handling, and fixes several UI and stability issues. + +## Provider Updates + +* **Native Ollama API**: Fixed Ollama models to use native API instead of OpenAI compatibility layer for improved performance and reliability ([#7137](https://github.com/RooCodeInc/Roo-Code/pull/7137)) +* **OpenAI GPT-5 Chat**: Added support for gpt-5-chat-latest model optimized for conversational AI and non-reasoning tasks ([#7058](https://github.com/RooCodeInc/Roo-Code/pull/7058)) + +## QOL Improvements + +* **Enhanced Task History**: Made "enhance with task history" default to true for better context retention in conversations (thanks liwilliam2021!) ([#7140](https://github.com/RooCodeInc/Roo-Code/pull/7140)) +* **Improved Scrollbar**: Fixed scrollbar jumping in long conversations by removing the 500-message limit ([#7064](https://github.com/RooCodeInc/Roo-Code/pull/7064)) + +## Bug Fixes + +* **Settings UI**: Fixed allowedMaxRequests and allowedMaxCost values not displaying properly (thanks chrarnoldus!) ([#6925](https://github.com/RooCodeInc/Roo-Code/pull/6925)) +* **Provider Settings**: Fixed save button not enabling for provider dropdown and checkbox changes ([#7113](https://github.com/RooCodeInc/Roo-Code/pull/7113)) +* **XML Entity Handling**: Fixed XML entity decoding issues in diff tools that caused content mismatches ([#7108](https://github.com/RooCodeInc/Roo-Code/pull/7108)) +* **Condensing State**: Fixed condensing state not resetting when switching between tasks (thanks f14XuanLv!) ([#6922](https://github.com/RooCodeInc/Roo-Code/pull/6922)) +* **Workspace Paths**: Fixed workspace path resolution in codebase search tool (thanks NaccOll!) ([#6902](https://github.com/RooCodeInc/Roo-Code/pull/6902)) +* **Multi-folder Workspaces**: Fixed checkpoint handling for multi-folder workspace configurations (thanks NaccOll!) ([#6903](https://github.com/RooCodeInc/Roo-Code/pull/6903)) +* **Diff Processing**: Added type checking to prevent errors when processing diff content ([#6906](https://github.com/RooCodeInc/Roo-Code/pull/6906)) + +## Misc Improvements + +* **Task System**: Added API for resuming tasks, improved event handling, and enhanced metadata support ([#7122](https://github.com/RooCodeInc/Roo-Code/pull/7122), [#7128](https://github.com/RooCodeInc/Roo-Code/pull/7128), [#7117](https://github.com/RooCodeInc/Roo-Code/pull/7117), [#7092](https://github.com/RooCodeInc/Roo-Code/pull/7092)) +* **Web Infrastructure**: Improved sitemap generation and SEO metadata (thanks elianiva, abumalick!) ([#7102](https://github.com/RooCodeInc/Roo-Code/pull/7102), [#7096](https://github.com/RooCodeInc/Roo-Code/pull/7096), [#6206](https://github.com/RooCodeInc/Roo-Code/pull/6206)) +* **Task Execution**: Refactored task execution system for better call stack management (thanks catrielmuller!) ([#7035](https://github.com/RooCodeInc/Roo-Code/pull/7035)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.17.mdx b/apps/docs/docs/update-notes/v3.25.17.mdx new file mode 100644 index 00000000000..e998edb4ae5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.17.mdx @@ -0,0 +1,16 @@ +--- +description: Fixes LM Studio model duplication and terminal reuse issues. +keywords: + - roo code 3.25.17 + - lm studio + - bug fixes +--- + +# Roo Code 3.25.17 Release Notes (2025-08-18) + +This release fixes issues with LM Studio model management and terminal reuse logic. + +## Bug Fixes + +* **LM Studio Models**: Fixed duplicate model entries by implementing case-insensitive deduplication, ensuring models appear only once in the provider configuration ([#7185](https://github.com/RooCodeInc/Roo-Code/pull/7185)) +* **Terminal Reuse**: Fixed terminal reuse logic to properly handle terminal lifecycle management ([#7157](https://github.com/RooCodeInc/Roo-Code/pull/7157)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.18.mdx b/apps/docs/docs/update-notes/v3.25.18.mdx new file mode 100644 index 00000000000..215e314a46a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.18.mdx @@ -0,0 +1,40 @@ +--- +description: Update to Roo Code 3.25.18 to access Sonic — a stealth model from a major AI provider — featuring a 262,144‑token context and a 72‑hour free access window, plus provider improvements and bug fixes. +keywords: + - roo code 3.25.18 + - sonic model + - provider updates + - bug fixes +--- + +# Roo Code 3.25.18 Release Notes (2025-08-19) + +Update to Roo Code 3.25.18 to access Sonic — a stealth model from a major AI provider — with a massive 262,144‑token context and FREE 72‑hour access. This release also includes provider enhancements and reliability fixes. + +## Sonic (Stealth Model) + +Sonic is now available in Roo Code ([#7207](https://github.com/RooCodeInc/Roo-Code/pull/7207)) ([#7212](https://github.com/RooCodeInc/Roo-Code/pull/7212)) ([#7218](https://github.com/RooCodeInc/Roo-Code/pull/7218)) — a stealth model from a major AI provider designed for long‑range, context‑rich work: + +- 262,144‑token context lets you work across very large codebases, logs, and transcripts in one session. +- FREE for 72 hours so you can try Sonic with real tasks. + +> Important: Sonic is delivered via Roo Code Cloud. To get this model to work, you must connect your IDE to Roo Code Cloud. See [Connect to Roo Code Cloud](/roo-code-cloud/connect). + +**Prerequisites** +- Roo Code v3.25.18 or later +- Connected to Roo Code Cloud account — see [Connect to Roo Code Cloud](/roo-code-cloud/connect) + +**How to enable Sonic** +1. Open Settings → Providers and set Provider to **Roo Code Router**. +2. In the model selector, choose **Sonic**. + +> 📚 Documentation: See [Connect to Roo Code Cloud](/roo-code-cloud/connect) and [Roo Code Router](/providers/roo-code-router). + +## Bug Fixes + +- LM Studio models: prevents duplicate entries (case‑insensitive) (thanks fbuechler!) ([#7185](https://github.com/RooCodeInc/Roo-Code/pull/7185)) +- Reasoning usage: respects enableReasoningEffort setting, avoiding unintended reasoning costs (thanks ikbencasdoei!) ([#7049](https://github.com/RooCodeInc/Roo-Code/pull/7049)) + +## Documentation Updates + +- ask_followup_question: simplifies the prompt guidance for clearer authoring ([#7191](https://github.com/RooCodeInc/Roo-Code/pull/7191)) — see [ask_followup_question tool](/advanced-usage/available-tools/ask-followup-question). diff --git a/apps/docs/docs/update-notes/v3.25.19.mdx b/apps/docs/docs/update-notes/v3.25.19.mdx new file mode 100644 index 00000000000..cc0254df333 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.19.mdx @@ -0,0 +1,15 @@ +--- +description: Bug fix for Roo Code Cloud provider welcome screen +keywords: + - roo code 3.25.19 + - bug fixes + - roo code cloud +--- + +# Roo Code 3.25.19 Release Notes (2025-08-19) + +This release fixes an issue with the Roo Code Cloud provider on the welcome screen. + +## Bug Fixes + +* **Welcome Screen**: Fixed the "Let's go" button not working for Roo Code Cloud provider ([#7239](https://github.com/RooCodeInc/Roo-Code/pull/7239)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.2.mdx b/apps/docs/docs/update-notes/v3.25.2.mdx new file mode 100644 index 00000000000..18ffcc8eef8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.2.mdx @@ -0,0 +1,24 @@ +--- +description: Fixes diff view display and slash command icon hover state, adds organization-level MCP controls. +keywords: + - roo code 3.25.2 + - diff view fix + - organization MCP controls + - UI improvements +--- + +# Roo Code 3.25.2 Release Notes (2025-07-29) + +This release fixes the diff view display when background edits are disabled, adds organization-level MCP controls, and improves UI interactions. + +## QOL Improvements + +* **Slash Command Icon Hover State**: Fixed the hover state for the slash command icon to provide better visual feedback during interactions ([#6388](https://github.com/RooCodeInc/Roo-Code/pull/6388)) + +## Bug Fixes + +* **Diff View Display**: Fixed an issue where the diff view wasn't showing before approval when background edits were disabled ([#6386](https://github.com/RooCodeInc/Roo-Code/pull/6386)) + +## Misc Improvements + +* **Organization MCP Controls**: Added support for managing MCP servers at the organization level, allowing centralized configuration across teams ([#6378](https://github.com/RooCodeInc/Roo-Code/pull/6378)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.20.mdx b/apps/docs/docs/update-notes/v3.25.20.mdx new file mode 100644 index 00000000000..66a5099c0cb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.20.mdx @@ -0,0 +1,21 @@ +--- +description: This release introduces the Sonic model to Roo Code users with announcements to help discover the new model. +keywords: + - roo code v3.25.20 + - sonic model + - model announcements + - provider updates +--- + +# Roo Code v3.25.20 Release Notes (2025-08-20) + +This release introduces the Sonic model to Roo Code users with announcements to help discover the new model. + +## QOL Improvements + +* **Sonic Model Announcement**: Added announcements to inform users about the Sonic model availability, making it easier to discover new model options (thanks mrubens!) ([#7244](https://github.com/RooCodeInc/Roo-Code/pull/7244)) +* **Release Management**: Added changeset for v3.25.20 to ensure proper version management (thanks mrubens!) ([#7245](https://github.com/RooCodeInc/Roo-Code/pull/7245)) + +## Provider Updates + +* **Sonic Model Support**: Added support for the Sonic model in the provider system (thanks mrubens!) ([#7246](https://github.com/RooCodeInc/Roo-Code/pull/7246)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.21.mdx b/apps/docs/docs/update-notes/v3.25.21.mdx new file mode 100644 index 00000000000..5e77685593a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.21.mdx @@ -0,0 +1,65 @@ +--- +description: Vertex AI grounding features, subtask todo lists, and the new Featherless provider. +keywords: + - roo code 3.25.21 + - vertex ai grounding + - subtask todos + - featherless provider +--- + +# Roo Code 3.25.21 Release Notes (2025-08-22) + +This release enables grounding features for Vertex AI, adds subtask todo list support, and includes the new Featherless provider. + +## Subtask Todo Lists + +Streamline hierarchical task planning with the new optional todo list parameter for subtasks ([#6775](https://github.com/RooCodeInc/Roo-Code/pull/6775)): + +- **Pass Todo Lists**: Include predefined todo lists when creating subtasks +- **Maintain Context**: Pass along context to the subtask in the form of a todo list +- **Optional Enforcement**: The "New Task Require Todos" setting in VS Code can enforce todo lists for all new subtasks if desired + +Subtask todo lists configuration in VS Code settings + +This feature works out of the box, and you can optionally configure VS Code settings to require todos for all new tasks. + +> **📚 Documentation**: See [Task Todo List](/features/task-todo-list) for detailed information about todo list management. + +## Vertex AI Grounding Features + +Vertex AI users can now access powerful grounding capabilities previously exclusive to the Gemini provider (thanks anguslees!) ([#6777](https://github.com/RooCodeInc/Roo-Code/pull/6777)): + +- **Google Search Grounding**: Get real-time information from web searches directly in your AI responses +- **URL Context**: Provide specific web pages as context for more accurate, up-to-date responses +- **Enhanced Accuracy**: Combine AI capabilities with current web information for better results + +These features bring Vertex AI to feature parity with Gemini for grounding capabilities. + +> **📚 Documentation**: See [Vertex AI Provider](/providers/vertex) for configuration details. + +## Provider Updates + +* **Featherless Provider**: Access a wide range of open-source models through the new Featherless AI platform (thanks DarinVerheijke!) ([#7235](https://github.com/RooCodeInc/Roo-Code/pull/7235)) + +## QOL Improvements + +* **Context Window Error Handling**: Improved error detection and automatic recovery when hitting context limits - the system now detects errors from multiple providers (OpenAI, Anthropic, Cerebras) and automatically truncates context by 25% before retrying (up to 3 attempts) ([#6967](https://github.com/RooCodeInc/Roo-Code/pull/6967)) +* **Marketplace Filter**: New "Show installed only" checkbox to easily view and manage your installed MCPs and modes (thanks semidark!) ([#7007](https://github.com/RooCodeInc/Roo-Code/pull/7007)) +* **DeepSeek Context**: Updated DeepSeek models to support 128k context window ([#7269](https://github.com/RooCodeInc/Roo-Code/pull/7269)) + +## Bug Fixes + +* **OpenAI Responses**: Fixed GPT-5 subtask results not being provided correctly in OpenAI Responses API ([#7305](https://github.com/RooCodeInc/Roo-Code/pull/7305)) +* **Temperature Handling**: Fixed temperature parameter issues for OpenAI Compatible providers ([#7188](https://github.com/RooCodeInc/Roo-Code/pull/7188)) +* **Provider Validation**: Added 'roo' provider to key validation function ([#7239](https://github.com/RooCodeInc/Roo-Code/pull/7239)) +* **UI Stability**: Fixed context condense UI crash when handling null/undefined token values ([#6916](https://github.com/RooCodeInc/Roo-Code/pull/6916)) +* **Storage Checks**: Improved filesystem checks for better storage handling (thanks elianiva!) ([#7164](https://github.com/RooCodeInc/Roo-Code/pull/7164)) + +## Misc Improvements + +* **MDM Authentication**: Clear feedback when authentication is required by your organization's MDM policy ([#7291](https://github.com/RooCodeInc/Roo-Code/pull/7291)) +* **Security Updates**: Updated mermaid dependency to v11.10.0 ([#7231](https://github.com/RooCodeInc/Roo-Code/pull/7231)) and tmp dependency to v0.2.4 ([#6762](https://github.com/RooCodeInc/Roo-Code/pull/6762)) +* **Task Tracking**: Pass task ID in Roo provider request headers ([#7303](https://github.com/RooCodeInc/Roo-Code/pull/7303)) +* **Error Handling**: Removed exceptions from RooHandler constructor ([#7302](https://github.com/RooCodeInc/Roo-Code/pull/7302)) +* **Cloud Services**: Various internal improvements for cloud services ([#7299](https://github.com/RooCodeInc/Roo-Code/pull/7299), [#7258](https://github.com/RooCodeInc/Roo-Code/pull/7258)) +* **Build Optimization**: Marked non-English package files as linguist-generated ([#7271](https://github.com/RooCodeInc/Roo-Code/pull/7271)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.22.mdx b/apps/docs/docs/update-notes/v3.25.22.mdx new file mode 100644 index 00000000000..5c33007f6fe --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.22.mdx @@ -0,0 +1,19 @@ +--- +description: Adds prompt caching for Kimi K2 on Groq and improves discoverability of global custom instructions. +keywords: + - roo code 3.25.22 + - kimi k2 groq caching + - global custom instructions +--- + +# Roo Code 3.25.22 Release Notes (2025-08-22) + +This release adds prompt caching support for Kimi K2 on Groq and improves the discoverability of global custom instructions. + +## Features + +* **Prompt Caching for Kimi K2 on Groq**: Added support for prompt caching with the Kimi K2 model on Groq, providing a 50% discount on cached input tokens for improved cost efficiency ([#7324](https://github.com/RooCodeInc/Roo-Code/pull/7324)) + +## QOL Improvements + +* **Global Custom Instructions Documentation**: Added helpful documentation links in the UI to make global custom instructions more discoverable and easier to understand ([#7114](https://github.com/RooCodeInc/Roo-Code/pull/7114)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.23.mdx b/apps/docs/docs/update-notes/v3.25.23.mdx new file mode 100644 index 00000000000..0fd399b7cdb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.23.mdx @@ -0,0 +1,17 @@ +--- +description: This release adds custom base URL support for Requesty and DeepSeek V3.1 model to Chutes AI. +keywords: + - roo code 3.25.23 + - requesty provider + - deepseek v3.1 + - chutes ai +--- + +# Roo Code 3.25.23 Release Notes (2025-08-22) + +This release adds custom base URL support for Requesty and DeepSeek V3.1 model to Chutes AI. + +## Provider Updates + +* **Requesty Provider**: Added support for custom base URLs, allowing you to connect to self-hosted or alternative Requesty endpoints ([#7337](https://github.com/RooCodeInc/Roo-Code/pull/7337)) +* **Chutes AI**: Added DeepSeek V3.1 model support, expanding the available model options for Chutes AI users ([#7295](https://github.com/RooCodeInc/Roo-Code/pull/7295)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.3.mdx b/apps/docs/docs/update-notes/v3.25.3.mdx new file mode 100644 index 00000000000..b999496085e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.3.mdx @@ -0,0 +1,30 @@ +--- +description: Roo Code 3.25.3 improves Claude Code output limits, enhances UI elements, and fixes chat interaction issues. +keywords: + - roo code 3.25.3 + - claude code tokens + - image queueing + - ui improvements +--- + +# Roo Code 3.25.3 Release Notes (2025-07-30) + +This release increases Claude Code's output capacity, improves UI elements, and fixes chat interaction issues. + +## QOL Improvements + +* **Cleaner Welcome View**: Gemini checkboxes are now hidden on the welcome screen for a cleaner interface ([#6415](https://github.com/RooCodeInc/Roo-Code/pull/6415)) +* **Slash Commands Documentation**: Added a direct link to slash commands documentation for easier access ([#6409](https://github.com/RooCodeInc/Roo-Code/pull/6409)) +* **Documentation Updates**: Clarified apply_diff tool descriptions to emphasize surgical edits ([#6278](https://github.com/RooCodeInc/Roo-Code/pull/6278)) + +## Bug Fixes + +* **Chat Input Preservation**: Fixed an issue where clicking chat buttons would clear your typed message (thanks hassoncs!) ([#6222](https://github.com/RooCodeInc/Roo-Code/pull/6222)) +* **Image Queueing**: Fixed image queueing functionality that was not working properly ([#6414](https://github.com/RooCodeInc/Roo-Code/pull/6414)) +* **Claude Code Output Tokens**: Fixed truncated responses by increasing default max output tokens from 8k to 16k (thanks bpeterson1991!) ([#6312](https://github.com/RooCodeInc/Roo-Code/pull/6312)) + +## Misc Improvements + +* **Extension Title Update**: Removed "(prev Roo Cline)" from the extension title across all languages ([#6426](https://github.com/RooCodeInc/Roo-Code/pull/6426)) +* **Translation Improvements**: Updated auto-translate prompt and added translation check action ([#6430](https://github.com/RooCodeInc/Roo-Code/pull/6430), [#6393](https://github.com/RooCodeInc/Roo-Code/pull/6393)) +* **Mode Configuration**: Updated PR reviewer rules and mode configuration ([#6391](https://github.com/RooCodeInc/Roo-Code/pull/6391), [#6428](https://github.com/RooCodeInc/Roo-Code/pull/6428)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.4.mdx b/apps/docs/docs/update-notes/v3.25.4.mdx new file mode 100644 index 00000000000..86f95e0d19b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.4.mdx @@ -0,0 +1,72 @@ +--- +description: Roo Code 3.25.4 adds Doubao and SambaNova providers, introduces context-aware prompt enhancement, and improves tool functionality. +keywords: + - roo code 3.25.4 + - doubao provider + - sambanova provider + - task history context + - prompt enhancement +--- + +# Roo Code 3.25.4 Release Notes (2025-07-31) + +This release introduces two new AI providers, enhances prompt suggestions with conversation context, and improves various tool functionalities. + +## Doubao Provider Support + +We've added support for Doubao, ByteDance's AI model provider (thanks AntiMoron!) ([#6345](https://github.com/RooCodeInc/Roo-Code/pull/6345)): + +- **Access to ByteDance AI Models**: Connect to Doubao's language models for your AI-powered development tasks +- **Full Integration**: Complete provider implementation with API handling +- **Easy Configuration**: Simple setup through Roo Code's provider settings with internationalized prompts + +Doubao expands your AI model options, giving you access to ByteDance's competitive language models alongside existing providers. + +> **📚 Documentation**: See [Doubao Provider Guide](/providers/doubao) for setup instructions and available models. + +## SambaNova Provider Integration + +We've integrated SambaNova as a new LLM provider (thanks snova-jorgep!) ([#6188](https://github.com/RooCodeInc/Roo-Code/pull/6188)): + +- **High-Speed Inference**: Experience competitive inference speeds for faster AI responses +- **Broader Model Selection**: Access SambaNova's diverse range of language models +- **Seamless Integration**: Configure and use SambaNova models just like any other provider + +SambaNova brings enterprise-grade AI infrastructure to Roo Code, offering powerful alternatives for your development workflows. + +> **📚 Documentation**: See [SambaNova Provider Guide](/providers/sambanova) for configuration details. + +## Context-Aware Prompt Enhancement + +Prompt enhancement now uses your conversation history for better suggestions (thanks liwilliam2021!) ([#6343](https://github.com/RooCodeInc/Roo-Code/pull/6343)): + +- **Smarter Suggestions**: Enhancement considers your last 10 messages to generate more relevant prompts +- **Reduced Hallucinations**: Context awareness prevents the AI from making unfounded suggestions +- **Flexible Configuration**: Use a separate API configuration for enhancement operations +- **Toggle Control**: Enable or disable task history inclusion based on your needs + +To enable this feature: Settings → Prompts tab → Select "ENHANCE" → Check "Include task history in enhancement" for better context. + +> **📚 Documentation**: See [Prompt Enhancement Guide](/features/enhance-prompt) for configuration options. + +## QOL Improvements + +* **Task Resumption Message**: Improved LLM instructions by removing misleading message about resuming tasks (thanks KJ7LNW!) ([#5851](https://github.com/RooCodeInc/Roo-Code/pull/5851)) +* **AGENTS.md Support**: Added symlink support for AGENTS.md file loading ([#6326](https://github.com/RooCodeInc/Roo-Code/pull/6326)) +* **Marketplace Updates**: Auto-refresh marketplace data when organization settings change ([#6446](https://github.com/RooCodeInc/Roo-Code/pull/6446)) + +## Bug Fixes + +* **Execute Command Kill Button**: Fixed the kill button functionality for the execute_command tool ([#6457](https://github.com/RooCodeInc/Roo-Code/pull/6457)) +* **Token Counting**: Fixed accuracy issues by extracting text from messages using VSCode LM API (thanks NaccOll!) ([#6424](https://github.com/RooCodeInc/Roo-Code/pull/6424)) + +## Provider Updates + +* **Chutes AI**: Added zai-org/GLM-4.5-FP8 model support ([#6441](https://github.com/RooCodeInc/Roo-Code/pull/6441)) +* **OpenRouter**: Set horizon-alpha model max tokens to 32k ([#6470](https://github.com/RooCodeInc/Roo-Code/pull/6470)) +* **Databricks**: Added support for /invocations endpoints pattern (thanks adambrand!) ([#6317](https://github.com/RooCodeInc/Roo-Code/pull/6317)) + +## Misc Improvements + +* **Navigator Global Error**: Resolved errors by updating mammoth and bluebird dependencies ([#6363](https://github.com/RooCodeInc/Roo-Code/pull/6363)) +* **Nightly Build Fixes**: Resolved marketplace freezing issues with separate changelog ([#6449](https://github.com/RooCodeInc/Roo-Code/pull/6449)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.5.mdx b/apps/docs/docs/update-notes/v3.25.5.mdx new file mode 100644 index 00000000000..46a44c00c16 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.5.mdx @@ -0,0 +1,60 @@ +--- +description: Roo Code 3.25.5 adds Cerebras AI provider support with Qwen 3 Coder models, introduces auto-approved cost limits for budget control, and fixes VB.NET indexing along with several other improvements. +keywords: + - roo code 3.25.5 + - cerebras provider + - qwen 3 coder + - cost limits + - vb.net indexing + - bug fixes +--- + +# Roo Code 3.25.5 Release Notes (2025-08-01) + +This release adds Cerebras AI provider support with powerful Qwen 3 Coder models, introduces auto-approved cost limits for better budget control, and includes important bug fixes for VB.NET indexing and message handling. + +## Cerebras Provider Support + +We've added support for Cerebras as a new AI provider (thanks kevint-cerebras!) ([#6392](https://github.com/RooCodeInc/Roo-Code/pull/6392), [#6562](https://github.com/RooCodeInc/Roo-Code/pull/6562)): + +- **Qwen 3 Coder Models**: Access to Qwen 3 Coder with both free and paid tier options +- **Multiple Model Variants**: Includes Llama 3.3 70B and various Qwen 3 configurations (32B, 235B) +- **Automatic Thinking Token Filtering**: Cerebras reasoning models automatically filter thinking tokens for cleaner output + +The Cerebras provider offers competitive performance with flexible pricing tiers, making it an excellent choice for both experimentation and production use. + +> **📚 Documentation**: See [Cerebras Provider Guide](/providers/cerebras) for setup instructions and available models. + +## Auto-approved Cost Limits + +We've introduced a new cost control feature in the auto-approve settings to help manage API spending (thanks hassoncs!) ([#6484](https://github.com/RooCodeInc/Roo-Code/pull/6484)): + +- **Budget Protection**: Set a maximum cost limit in your auto-approve settings to control total API spending +- **Automatic Prompting**: Roo Code will prompt for approval when approaching your cost limit +- **Complements Request Limits**: Works alongside existing request count limits for comprehensive control + +Auto-approve settings showing the new Max Cost field + +This feature provides peace of mind when using expensive models or running long sessions, ensuring you stay within budget. You can find this new "Max Cost" setting alongside the existing "Max Count" in the auto-approve configuration panel. + +## QOL Improvements + +* **Auto-approve UI**: Cleaner and more streamlined interface with improved localization ([#6538](https://github.com/RooCodeInc/Roo-Code/pull/6538)) +![alt text](../../static/img/v3.25.5/v3.25.5-1.png) +* **Command Validation**: Better handling of background execution (`&`) and subshell patterns like `(cmd1; cmd2)` ([#6486](https://github.com/RooCodeInc/Roo-Code/pull/6486)) + +## Bug Fixes + +* **VB.NET Indexing**: Files are now properly indexed in large monorepos using fallback chunking (thanks JensvanZutphen!) ([#6552](https://github.com/RooCodeInc/Roo-Code/pull/6552)) +* **Message Sending**: Restored functionality when clicking the save button ([#6487](https://github.com/RooCodeInc/Roo-Code/pull/6487)) +* **Search/Replace Tolerance**: More forgiving of AI-generated diffs with extra `>` characters ([#6537](https://github.com/RooCodeInc/Roo-Code/pull/6537)) +* **Qdrant Deletion**: Gracefully handles deletion errors to prevent indexing interruption ([#6296](https://github.com/RooCodeInc/Roo-Code/pull/6296)) +* **LM Studio Context Length**: Models now correctly display their actual context length instead of "1" (thanks pwilkin, Angular-Angel!) ([#6183](https://github.com/RooCodeInc/Roo-Code/pull/6183)) +* **Claude Code Errors**: ENOENT errors now show helpful installation guidance (thanks JamieJ1!) ([#5867](https://github.com/RooCodeInc/Roo-Code/pull/5867)) + +## Misc Improvements + +* **Slash Command Interpolation**: Skip interpolation for non-existent commands ([#6475](https://github.com/RooCodeInc/Roo-Code/pull/6475)) +* **Linter Coverage**: Applied to locale README files (thanks liwilliam2021!) ([#6477](https://github.com/RooCodeInc/Roo-Code/pull/6477)) +* **Cloud Service Events**: Migrated from callbacks to event-based architecture ([#6519](https://github.com/RooCodeInc/Roo-Code/pull/6519)) +* **Website Updates**: Phase 1 improvements (thanks thill2323!) ([#6085](https://github.com/RooCodeInc/Roo-Code/pull/6085)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.6.mdx b/apps/docs/docs/update-notes/v3.25.6.mdx new file mode 100644 index 00000000000..54d3c96627c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.6.mdx @@ -0,0 +1,32 @@ +--- +description: Support for the new Horizon Beta stealth model on OpenRouter, plus cloud provider profile sync and bug fixes. +keywords: + - roo code 3.25.6 + - horizon beta + - stealth model + - cloud provider sync + - bug fixes +--- + +# Roo Code 3.25.6 Release Notes (2025-08-02) + +This release features support for the new Horizon Beta stealth model, cloud provider profile synchronization, and bug fixes. + +## Horizon Beta Stealth Model via OpenRouter + +We've optimized support for OpenRouter's new stealth model Horizon Beta ([#6577](https://github.com/RooCodeInc/Roo-Code/pull/6577)): + +- **Improved Performance**: Set max tokens to 32k (reduced from 128k default) +- **Free to Use**: Thanks to OpenRouter, Horizon Beta is an improved version of Horizon Alpha and remains free + +A big thanks to OpenRouter for providing this innovative stealth model to the community! + +## Bug Fixes + +* **Claude Code Error Handling**: Fixed "spawn claude ENOENT" error when using Claude Code provider, now provides better error handling and installation guidance (thanks JamieJ1!) ([#6565](https://github.com/RooCodeInc/Roo-Code/pull/6565)) + +## Misc Improvements + +* **Cloud Provider Profile Sync**: Added support for syncing provider profiles from the cloud, enabling automatic synchronization across devices and team collaboration ([#6540](https://github.com/RooCodeInc/Roo-Code/pull/6540)) +* **Type Definitions**: Updated @roo-code/types to v1.41.0 for latest type compatibility ([#6568](https://github.com/RooCodeInc/Roo-Code/pull/6568)) + diff --git a/apps/docs/docs/update-notes/v3.25.7.mdx b/apps/docs/docs/update-notes/v3.25.7.mdx new file mode 100644 index 00000000000..5b12019b968 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.7.mdx @@ -0,0 +1,67 @@ +--- +description: Three new AI providers join Roo Code - Claude Opus 4.1, Z AI, and Fireworks AI - plus quality of life improvements and bug fixes. +keywords: + - roo code 3.25.7 + - claude opus 4.1 + - z ai provider + - fireworks ai + - multi-folder workspace + - checkpoint improvements +--- + +# Roo Code 3.25.7 Release Notes (2025-08-05) + +This release introduces Groq's GPT-OSS models, adds support for Claude Opus 4.1, brings two new AI providers (Z AI and Fireworks AI), and includes numerous quality of life improvements. + +## Groq GPT-OSS Models + +Groq now offers OpenAI's GPT-OSS models with impressive capabilities ([#6732](https://github.com/RooCodeInc/Roo-Code/pull/6732)): + +- **GPT-OSS-120b and GPT-OSS-20b**: Mixture of Experts models with 131K context windows +- **High Performance**: Optimized for fast inference on Groq's infrastructure + +These models bring powerful open-source alternatives to Groq's already impressive lineup. + +## Z AI Provider + +Z AI (formerly Zhipu AI) is now available as a provider (thanks jues!) ([#6657](https://github.com/RooCodeInc/Roo-Code/pull/6657)): + +- **GLM-4.5 Series Models**: Access to GLM-4.5 and GLM-4.5-Air models +- **Dual Regional Support**: Choose between international and mainland China endpoints +- **Flexible Configuration**: Easy API key setup with regional selection + +> **📚 Documentation**: See [Z AI Provider Guide](/providers/zai) for setup instructions. + +## Claude Opus 4.1 Support + +We've added support for the new Claude Opus 4.1 model across multiple providers ([#6728](https://github.com/RooCodeInc/Roo-Code/pull/6728)): + +- **Available Providers**: Anthropic, Claude Code, Bedrock, Vertex AI, and LiteLLM +- **Enhanced Capabilities**: 8192 max tokens, reasoning budget support, and prompt caching +- **Pricing**: $15/M input, $75/M output, $18.75/M cache writes, $1.5/M cache reads + +Note: OpenRouter support for Claude Opus 4.1 is not yet available. + +## QOL Improvements + +* **Multi-Folder Workspace Support**: Code indexing now works correctly across all folders in multi-folder workspaces (thanks NaccOll!) ([#6204](https://github.com/RooCodeInc/Roo-Code/pull/6204)) - [Learn more](/features/codebase-indexing) +* **Checkpoint Timing**: Checkpoints now save before file changes are made, allowing easy undo of unwanted modifications (thanks NaccOll!) ([#6359](https://github.com/RooCodeInc/Roo-Code/pull/6359)) - [Learn more](/features/checkpoints) +* **Redesigned Task Header**: Cleaner, more intuitive interface with improved visual hierarchy (thanks brunobergher!) ([#6561](https://github.com/RooCodeInc/Roo-Code/pull/6561)) +* **Consistent Checkpoint Terminology**: Removed "Initial Checkpoint" terminology for better consistency ([#6643](https://github.com/RooCodeInc/Roo-Code/pull/6643)) +* **Responsive Mode Dropdowns**: Mode selection dropdowns now resize properly with the window (thanks AyazKaan!) ([#6422](https://github.com/RooCodeInc/Roo-Code/pull/6422)) +* **Performance Boost**: Significantly improved performance when processing long AI responses (thanks qdaxb!) ([#5341](https://github.com/RooCodeInc/Roo-Code/pull/5341)) +* **Cleaner Command Approval UI**: Simplified interface shows only unique command patterns ([#6623](https://github.com/RooCodeInc/Roo-Code/pull/6623)) +* **Smart Todo List Reminder**: Todo list reminder now respects configuration settings (thanks NaccOll!) ([#6411](https://github.com/RooCodeInc/Roo-Code/pull/6411)) - [Learn more](/features/task-todo-list) +* **Cleaner Task History**: Improved task history display showing more content (3 lines), up to 5 tasks in preview, and simplified footer ([#6687](https://github.com/RooCodeInc/Roo-Code/pull/6687)) +* **Internal Architecture**: Improved event handling for better extensibility ([#6606](https://github.com/RooCodeInc/Roo-Code/pull/6606)) + +## Provider Updates + +* **Fireworks AI Provider**: New provider offering hosted versions of popular open-source models like Kimi and Qwen (thanks ershang-fireworks!) ([#6652](https://github.com/RooCodeInc/Roo-Code/pull/6652)) +* **Cerebras GPT-OSS-120b**: Added OpenAI's GPT-OSS-120b model to Cerebras provider - free to use with 64K context and ~2800 tokens/sec ([#6734](https://github.com/RooCodeInc/Roo-Code/pull/6734)) + +## Bug Fixes + +* **Mode Name Validation**: Prevents empty mode names from causing YAML parsing errors (thanks kfxmvp!) ([#5767](https://github.com/RooCodeInc/Roo-Code/pull/5767)) +* **Text Highlight Alignment**: Fixed misalignment in chat input area highlights (thanks NaccOll!) ([#6648](https://github.com/RooCodeInc/Roo-Code/pull/6648)) +* **MCP Server Setting**: Properly respects the "Enable MCP Server Creation" setting (thanks characharm!) ([#6613](https://github.com/RooCodeInc/Roo-Code/pull/6613)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.8.mdx b/apps/docs/docs/update-notes/v3.25.8.mdx new file mode 100644 index 00000000000..4a700dc0a18 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.8.mdx @@ -0,0 +1,53 @@ +--- +description: Memory leak fix for long conversations and Gemini 2.5 Pro thinking budget flexibility, plus multiple stability improvements. +keywords: + - roo code 3.25.8 + - memory leak fix + - gemini thinking budget + - bug fixes +--- + +# Roo Code 3.25.8 Release Notes (2025-08-06) + +This release fixes a critical memory leak in long conversations, prevents disabled MCP servers from starting, and provides more flexibility for Gemini 2.5 Pro thinking budgets, along with numerous stability improvements. + +## Disabled MCP Servers No Longer Start + +We've fixed a significant issue where disabled MCP servers were still starting processes and consuming resources ([#6084](https://github.com/RooCodeInc/Roo-Code/pull/6084)): + +- **No Wasted Resources**: Disabled servers now truly stay disabled and don't start background processes +- **Clear Status Indicators**: Server status now accurately reflects whether a server is enabled or disabled +- **Immediate Cleanup**: When MCP is globally disabled, all servers immediately disconnect + +This ensures your system resources are only used for the MCP servers you actually want to run. + +## Memory Leak Fix for Long Conversations + +We've resolved a critical memory leak that was causing excessive memory usage and grey screens in long conversations (thanks xyOz-dev!) ([#6697](https://github.com/RooCodeInc/Roo-Code/pull/6697)): + +- **Bounded Memory Usage**: Virtual scrolling now limits viewport rendering to 1000px below the current view instead of rendering infinitely +- **Optimized Caching**: Reduced cache size and TTL to prevent memory accumulation +- **Stable Performance**: Memory usage remains constant regardless of conversation length + +Your long conversations will now remain responsive and stable without the dreaded grey screen appearing. + +## Gemini 2.5 Pro Thinking Budget Flexibility + +Gemini 2.5 Pro users now have much more control over the thinking budget ([#6588](https://github.com/RooCodeInc/Roo-Code/pull/6588)): + +- **Lower Minimum**: The minimum thinking budget is reduced from 1024 to 128 tokens +- **More Concise Coding**: Perfect for tasks that need quick, focused responses without extensive reasoning +- **Manual Adjustment Required**: You'll need to manually adjust the thinking budget to 128 in your settings to take advantage of this feature + +This change gives you the flexibility to optimize for either deep reasoning or more concise, rapid responses depending on your needs. + +## Bug Fixes + +* **MCP Server Refresh**: Settings changes no longer trigger unnecessary MCP server refreshes ([#6779](https://github.com/RooCodeInc/Roo-Code/pull/6779)) +* **Codebase Search**: The tool now correctly searches the entire workspace when using "." as the path ([#6517](https://github.com/RooCodeInc/Roo-Code/pull/6517)) +* **Swift File Support**: Fixed VS Code crashes when indexing projects containing Swift files (thanks niteshbalusu11, sealad886!) ([#6724](https://github.com/RooCodeInc/Roo-Code/pull/6724)) +* **Context Management**: Model max tokens now intelligently capped at 20% of context window to prevent excessive condensing ([#6761](https://github.com/RooCodeInc/Roo-Code/pull/6761)) +* **OpenAI Configuration**: Extra whitespace in base URLs no longer breaks model detection (thanks vauhochzett!) ([#6560](https://github.com/RooCodeInc/Roo-Code/pull/6560)) +* **URL Fetching**: Better error recovery when fetching content from URLs (thanks QuinsZouls!) ([#6635](https://github.com/RooCodeInc/Roo-Code/pull/6635)) +* **Qdrant Recovery**: Code indexing automatically recovers when Qdrant becomes available after startup errors ([#6661](https://github.com/RooCodeInc/Roo-Code/pull/6661)) +* **Chat Scrolling**: Eliminated scroll jitter during message streaming ([#6780](https://github.com/RooCodeInc/Roo-Code/pull/6780)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.9.mdx b/apps/docs/docs/update-notes/v3.25.9.mdx new file mode 100644 index 00000000000..15796511569 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.9.mdx @@ -0,0 +1,28 @@ +--- +description: Adds new Fireworks AI models, fixes token calculation, and improves chat input focus. +keywords: + - roo code 3.25.9 + - fireworks ai models + - glm-4.5 + - bug fixes +--- + +# Roo Code 3.25.9 Release Notes (2025-08-07) + +This release adds new AI models to the Fireworks provider, fixes token calculation issues, and improves the chat creation experience. + +## Provider Updates + +* **Fireworks AI Models**: Added GLM-4.5 series models (355B and 106B parameters with 128K context) and OpenAI gpt-oss models (20b for edge deployments, 120b for production use) to expand model selection options (thanks alexfarlander!) ([#6784](https://github.com/RooCodeInc/Roo-Code/pull/6784)) + +## QOL Improvements + +* **Chat Input Focus**: The chat input now automatically focuses when creating a new chat via the + button, allowing you to start typing immediately ([#6689](https://github.com/RooCodeInc/Roo-Code/pull/6689)) + +## Bug Fixes + +* **Token Calculation**: Fixed rounding errors that prevented certain models like GLM-4.5 from working properly by ensuring max output tokens are correctly rounded up (thanks markp018!) ([#6808](https://github.com/RooCodeInc/Roo-Code/pull/6808)) + +## Misc Improvements + +* **Cloud Integration**: Reverted to using the npm package version of @roo-code/cloud for improved build stability and maintenance ([#6795](https://github.com/RooCodeInc/Roo-Code/pull/6795)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.25.mdx b/apps/docs/docs/update-notes/v3.25.mdx new file mode 100644 index 00000000000..a71dae09913 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.25.mdx @@ -0,0 +1,306 @@ +--- +description: Roo Code 3.25 introduces Sonic stealth model with 262K context, custom slash commands, Gemini web tools, image support, message queueing, Cerebras AI provider, cost limits, Vertex AI grounding, subtask todo lists, and many quality-of-life improvements. +keywords: + - roo code 3.25 + - sonic model + - custom slash commands + - gemini tools + - image support + - message queueing + - cerebras provider + - cost limits + - vertex ai grounding + - subtask todos +--- + +# Roo Code 3.25 Release Notes + +This release brings powerful new capabilities to Roo Code, including the Sonic stealth model with 262,144-token context and 72-hour free access, custom slash commands for workflow automation, enhanced Gemini models with web access, comprehensive image support, seamless message queueing for uninterrupted conversations, the new Cerebras AI provider, auto-approved cost limits for budget control, Vertex AI grounding features, and subtask todo list support. + +### Vertex AI Grounding Features + +Vertex AI users can now access powerful grounding capabilities previously exclusive to the Gemini provider (thanks anguslees!) ([#6777](https://github.com/RooCodeInc/Roo-Code/pull/6777)): + +- **Google Search Grounding**: Get real-time information from web searches directly in your AI responses +- **URL Context**: Provide specific web pages as context for more accurate, up-to-date responses +- **Enhanced Accuracy**: Combine AI capabilities with current web information for better results + +These features bring Vertex AI to feature parity with Gemini for grounding capabilities. + +> **📚 Documentation**: See [Vertex AI Provider](/providers/vertex) for configuration details. + +### Subtask Todo Lists + +Streamline hierarchical task planning with the new optional todo list parameter for subtasks ([#6775](https://github.com/RooCodeInc/Roo-Code/pull/6775)): + +- **Pass Todo Lists**: Include predefined todo lists when creating subtasks +- **Maintain Context**: Pass along context to the subtask in the form of a todo list +- **Optional Enforcement**: The "New Task Require Todos" setting in VS Code can enforce todo lists for all new subtasks if desired + +Subtask todo lists configuration in VS Code settings + +This feature works out of the box, and you can optionally configure VS Code settings to require todos for all new tasks. + +> **📚 Documentation**: See [Task Todo List](/features/task-todo-list) for detailed information about todo list management. + +### Custom Slash Commands + +Create your own slash commands to automate repetitive workflows ([#6263](https://github.com/RooCodeInc/Roo-Code/pull/6263), [#6286](https://github.com/RooCodeInc/Roo-Code/pull/6286), [#6333](https://github.com/RooCodeInc/Roo-Code/pull/6333), [#6336](https://github.com/RooCodeInc/Roo-Code/pull/6336), [#6327](https://github.com/RooCodeInc/Roo-Code/pull/6327)): + +- **File-Based Commands**: Place markdown files in `.roo/commands/` to create custom commands instantly +- **Management UI**: New interface for creating, editing, and deleting commands with built-in fuzzy search +- **Argument Hints**: Commands display helpful hints about required arguments as you type +- **Rich Descriptions**: Add metadata and descriptions to make commands self-documenting + +Slash commands menu showing available commands + +Turn complex workflows into simple commands like `/deploy` or `/review` for faster development. + +> **📚 Documentation**: See [Slash Commands Guide](/features/slash-commands) for detailed usage instructions. + +### Message Queueing + +Continue typing while Roo processes your requests with the new message queueing system ([#6167](https://github.com/RooCodeInc/Roo-Code/pull/6167)): + +- **Non-Blocking Input**: Type and send messages even while Roo is processing previous requests +- **Sequential Processing**: Messages are queued and processed in the order they were sent +- **Visual Feedback**: See queued messages clearly displayed in the interface +- **Maintained Context**: Each message maintains proper context from the conversation + +Keeps your workflow smooth when you have multiple quick questions or corrections. + +> **📚 Documentation**: See [Message Queueing Guide](/features/message-queueing) for detailed information. + +### Image Support for read_file Tool + +The [`read_file`](/advanced-usage/available-tools/read-file) tool now supports reading and analyzing images (thanks samhvw8!) ([#5172](https://github.com/RooCodeInc/Roo-Code/pull/5172)): + +- **Multiple Formats**: Supports PNG, JPG, JPEG, GIF, WebP, SVG, BMP, ICO, and TIFF +- **OCR Capabilities**: Extract text from screenshots and scanned documents +- **Batch Processing**: Read multiple images from a folder with descriptions +- **Simple Integration**: Works just like reading text files - no special configuration needed + +Useful for analyzing UI mockups, debugging screenshot errors, or extracting code from images. + +### Gemini Tools: URL Context and Google Search + +Gemini models can now access web content and perform Google searches for more accurate, up-to-date responses (thanks HahaBill!) ([#5959](https://github.com/RooCodeInc/Roo-Code/pull/5959)): + +- **URL Context**: Directly analyze web pages, documentation, and online resources +- **Google Search Grounding**: Get fact-checked responses based on current search results +- **User Control**: Enable or disable web features based on your privacy preferences +- **Real-Time Information**: Access the latest documentation and best practices + +Perfect for researching new libraries, verifying solutions, or getting current API information. + +> **📚 Documentation**: See [Gemini Provider Guide](/providers/gemini) for setup and usage instructions. + +### Context-Aware Prompt Enhancement + +Prompt enhancement now uses your conversation history for better suggestions (thanks liwilliam2021!) ([#6343](https://github.com/RooCodeInc/Roo-Code/pull/6343)): + +- **Smarter Suggestions**: Enhancement considers your last 10 messages to generate more relevant prompts +- **Reduced Hallucinations**: Context awareness prevents the AI from making unfounded suggestions +- **Flexible Configuration**: Use a separate API configuration for enhancement operations +- **Toggle Control**: Enable or disable task history inclusion based on your needs + +To enable this feature: Settings → Prompts tab → Select "ENHANCE" → Check "Include task history in enhancement" for better context. + +> **📚 Documentation**: See [Prompt Enhancement Guide](/features/enhance-prompt) for configuration options. + +### Auto-approved Cost Limits + +We've introduced a new cost control feature in the auto-approve settings to help manage API spending: + +- **Budget Protection**: Set a maximum cost limit in your auto-approve settings to control total API spending +- **Automatic Prompting**: Roo Code will prompt for approval when approaching your cost limit +- **Complements Request Limits**: Works alongside existing request count limits for comprehensive control + +Auto-approve settings showing the new Max Cost field + +This feature provides peace of mind when using expensive models or running long sessions, ensuring you stay within budget. You can find this new "Max Cost" setting alongside the existing "Max Count" in the auto-approve configuration panel. + +### Quality of Life Improvements + +Small changes that make a big difference in your daily workflow: + +* **Prompt Caching for Kimi K2 on Groq**: Added support for prompt caching with the Kimi K2 model on Groq, providing a 50% discount on cached input tokens for improved cost efficiency ([#7324](https://github.com/RooCodeInc/Roo-Code/pull/7324)) +* **Global Custom Instructions Documentation**: Added helpful documentation links in the UI to make global custom instructions more discoverable and easier to understand ([#7114](https://github.com/RooCodeInc/Roo-Code/pull/7114)) +* **Context Window Error Handling**: Improved error detection and automatic recovery when hitting context limits - the system now detects errors from multiple providers (OpenAI, Anthropic, Cerebras) and automatically truncates context by 25% before retrying (up to 3 attempts) ([#6967](https://github.com/RooCodeInc/Roo-Code/pull/6967)) +* **Marketplace Filter**: New "Show installed only" checkbox to easily view and manage your installed MCPs and modes (thanks semidark!) ([#7007](https://github.com/RooCodeInc/Roo-Code/pull/7007)) +* **DeepSeek Context**: Updated DeepSeek models to support 128k context window ([#7269](https://github.com/RooCodeInc/Roo-Code/pull/7269)) +* **Sonnet 1M Context Support**: Enable 1M token context window for Claude 3.5 Sonnet and Claude Sonnet 4 when using AWS Bedrock, allowing you to process much larger documents and have longer conversations ([#7032](https://github.com/RooCodeInc/Roo-Code/pull/7032)) +* **Internationalization**: The Account button now displays in your selected language instead of always showing in English (thanks zhangtony239!) ([#6978](https://github.com/RooCodeInc/Roo-Code/pull/6978)) +* **Agent File Flexibility**: Roo Code now recognizes both AGENT.md and AGENTS.md files for agent rules, with AGENTS.md checked first for compatibility (thanks Brendan-Z!) ([#6913](https://github.com/RooCodeInc/Roo-Code/pull/6913)) +* **SEO Improvements**: Enhanced website discoverability with proper metadata and social media preview cards (thanks elianiva, abumalick!) ([#7096](https://github.com/RooCodeInc/Roo-Code/pull/7096)) +* **Sitemap Generation**: Implemented TypeScript-based sitemap generation for better search engine indexing (thanks abumalick!) ([#6206](https://github.com/RooCodeInc/Roo-Code/pull/6206)) +* **Chat Input Focus**: The chat input now automatically focuses when creating a new chat via the + button, allowing you to start typing immediately ([#6689](https://github.com/RooCodeInc/Roo-Code/pull/6689)) +* **Gemini 2.5 Pro Thinking Budget Flexibility**: The minimum thinking budget is reduced from 1024 to 128 tokens, perfect for tasks that need quick, focused responses without extensive reasoning. You'll need to manually adjust the thinking budget to 128 in your settings to take advantage of this feature. ([#6588](https://github.com/RooCodeInc/Roo-Code/pull/6588)) +* **Multi-Folder Workspace Support**: Code indexing now works correctly across all folders in multi-folder workspaces (thanks NaccOll!) ([#6204](https://github.com/RooCodeInc/Roo-Code/pull/6204)) +* **Checkpoint Timing**: Checkpoints now save before file changes are made, allowing easy undo of unwanted modifications (thanks NaccOll!) ([#6359](https://github.com/RooCodeInc/Roo-Code/pull/6359)) +* **Redesigned Task Header**: Cleaner, more intuitive interface with improved visual hierarchy (thanks brunobergher!) ([#6561](https://github.com/RooCodeInc/Roo-Code/pull/6561)) +* **Consistent Checkpoint Terminology**: Removed "Initial Checkpoint" terminology for better consistency ([#6643](https://github.com/RooCodeInc/Roo-Code/pull/6643)) +* **Responsive Mode Dropdowns**: Mode selection dropdowns now resize properly with the window (thanks AyazKaan!) ([#6422](https://github.com/RooCodeInc/Roo-Code/pull/6422)) +* **Performance Boost**: Significantly improved performance when processing long AI responses (thanks qdaxb!) ([#5341](https://github.com/RooCodeInc/Roo-Code/pull/5341)) +* **Cleaner Command Approval UI**: Simplified interface shows only unique command patterns ([#6623](https://github.com/RooCodeInc/Roo-Code/pull/6623)) +* **Smart Todo List Reminder**: Todo list reminder now respects configuration settings (thanks NaccOll!) ([#6411](https://github.com/RooCodeInc/Roo-Code/pull/6411)) +* **Cleaner Task History**: Improved task history display showing more content (3 lines), up to 5 tasks in preview, and simplified footer ([#6687](https://github.com/RooCodeInc/Roo-Code/pull/6687)) +* **Markdown Table Rendering**: Tables now display with proper formatting instead of raw markdown for better readability ([#6252](https://github.com/RooCodeInc/Roo-Code/pull/6252)) + Markdown table rendering in Roo Code +* **Mode Selector Popover Redesign**: Improved layout with search functionality when you have many modes installed ([#6140](https://github.com/RooCodeInc/Roo-Code/pull/6140)) + Mode Selector Popover with Search +* **API Selector Popover Redesign**: Updated to match the new mode selector design with improved layout ([#6148](https://github.com/RooCodeInc/Roo-Code/pull/6148)) + API Configuration Selector Redesign +* **Auto-approve UI**: Cleaner and more streamlined interface with improved localization ([#6538](https://github.com/RooCodeInc/Roo-Code/pull/6538)) +* **Sticky Task Modes**: Tasks remember their last-used mode and restore it automatically ([#6177](https://github.com/RooCodeInc/Roo-Code/pull/6177)) +* **ESC Key Support**: Close popovers with ESC for better keyboard navigation ([#6175](https://github.com/RooCodeInc/Roo-Code/pull/6175)) +* **Improved Command Highlighting**: Only valid commands are highlighted in the input field ([#6336](https://github.com/RooCodeInc/Roo-Code/pull/6336)) +* **Command Validation**: Better handling of background execution (`&`) and subshell patterns like `(cmd1; cmd2)` ([#6486](https://github.com/RooCodeInc/Roo-Code/pull/6486)) +* **Subshell Validation**: Improved handling and validation of complex shell commands with subshells, preventing potential errors when using command substitution patterns ([#6379](https://github.com/RooCodeInc/Roo-Code/pull/6379)) +* **Slash Command Icon Hover State**: Fixed the hover state for the slash command icon to provide better visual feedback during interactions ([#6388](https://github.com/RooCodeInc/Roo-Code/pull/6388)) +* **Cleaner Welcome View**: Gemini checkboxes are now hidden on the welcome screen for a cleaner interface ([#6415](https://github.com/RooCodeInc/Roo-Code/pull/6415)) +* **Slash Commands Documentation**: Added a direct link to slash commands documentation for easier access ([#6409](https://github.com/RooCodeInc/Roo-Code/pull/6409)) +* **Documentation Updates**: Clarified apply_diff tool descriptions to emphasize surgical edits ([#6278](https://github.com/RooCodeInc/Roo-Code/pull/6278)) +* **Task Resumption Message**: Improved LLM instructions by removing misleading message about resuming tasks (thanks KJ7LNW!) ([#5851](https://github.com/RooCodeInc/Roo-Code/pull/5851)) +* **AGENTS.md Support**: Added symlink support for AGENTS.md file loading ([#6326](https://github.com/RooCodeInc/Roo-Code/pull/6326)) +* **Marketplace Updates**: Auto-refresh marketplace data when organization settings change ([#6446](https://github.com/RooCodeInc/Roo-Code/pull/6446)) +* **`codebase_search` Tool**: Clarified that the `path` parameter is optional and the tool searches the entire workspace by default ([#6877](https://github.com/RooCodeInc/Roo-Code/pull/6877)) +* **Token Usage Reporting**: Fixed an issue where token usage and cost were underreported, providing more accurate cost tracking (thanks chrarnoldus!) ([#6122](https://github.com/RooCodeInc/Roo-Code/pull/6122)) +* **Enhanced Task History**: Made "enhance with task history" default to true for better context retention in conversations (thanks liwilliam2021!) ([#7140](https://github.com/RooCodeInc/Roo-Code/pull/7140)) +* **Improved Scrollbar**: Fixed scrollbar jumping in long conversations by removing the 500-message limit ([#7064](https://github.com/RooCodeInc/Roo-Code/pull/7064)) +* **Sonic Model Announcement**: Added announcements to inform users about the Sonic model availability, making it easier to discover new model options (thanks mrubens!) ([#7244](https://github.com/RooCodeInc/Roo-Code/pull/7244)) +* **Release Management**: Added changeset for v3.25.20 to ensure proper version management (thanks mrubens!) ([#7245](https://github.com/RooCodeInc/Roo-Code/pull/7245)) + +### Bug Fixes + +Critical fixes that improve stability and compatibility: + +* **OpenAI Responses**: Fixed GPT-5 subtask results not being provided correctly in OpenAI Responses API ([#7305](https://github.com/RooCodeInc/Roo-Code/pull/7305)) +* **Temperature Handling**: Fixed temperature parameter issues for OpenAI Compatible providers ([#7188](https://github.com/RooCodeInc/Roo-Code/pull/7188)) +* **Provider Validation**: Added 'roo' provider to key validation function ([#7239](https://github.com/RooCodeInc/Roo-Code/pull/7239)) +* **UI Stability**: Fixed context condense UI crash when handling null/undefined token values ([#6916](https://github.com/RooCodeInc/Roo-Code/pull/6916)) +* **Storage Checks**: Improved filesystem checks for better storage handling (thanks elianiva!) ([#7164](https://github.com/RooCodeInc/Roo-Code/pull/7164)) +* **Scrollbar Jumping**: Fixed the frustrating scrollbar jumping issue in long conversations over 500 messages (thanks shlgug, adambrand!) ([#7064](https://github.com/RooCodeInc/Roo-Code/pull/7064)) +* **Multi-Folder Workspaces**: Fixed workspace path handling and "file not found" errors in multi-folder VS Code workspaces (thanks NaccOll!) ([#6903](https://github.com/RooCodeInc/Roo-Code/pull/6903), [#6902](https://github.com/RooCodeInc/Roo-Code/pull/6902)) +* **Task Execution Stability**: Improved stability during long-running tasks, helping with the "grey screen" issue (thanks catrielmuller, MuriloFP!) ([#7035](https://github.com/RooCodeInc/Roo-Code/pull/7035)) +* **Provider Settings Save Button**: The save button now properly enables when changing provider dropdowns and checkboxes ([#7113](https://github.com/RooCodeInc/Roo-Code/pull/7113)) +* **XML Entity Decoding**: Fixed apply_diff tool failures when processing files with special characters like "&" (thanks indiesewell!) ([#7108](https://github.com/RooCodeInc/Roo-Code/pull/7108)) +* **Settings Display**: Fixed Max Requests and Max Cost values not displaying in the settings UI (thanks chrarnoldus, possible055!) ([#6925](https://github.com/RooCodeInc/Roo-Code/pull/6925)) +* **Context Condensing Indicator**: Fixed the condensing indicator incorrectly persisting when switching tasks (thanks f14XuanLv!) ([#6922](https://github.com/RooCodeInc/Roo-Code/pull/6922)) +* **Token Calculation**: Fixed rounding errors that prevented certain models like GLM-4.5 from working properly by ensuring max output tokens are correctly rounded up (thanks markp018!) ([#6808](https://github.com/RooCodeInc/Roo-Code/pull/6808)) +* **XML Parsing**: Fixed errors when using the apply_diff tool with complex XML files containing special characters by implementing proper CDATA sections ([#6811](https://github.com/RooCodeInc/Roo-Code/pull/6811)) +* **MCP Error Messages**: Fixed an issue where MCP server errors displayed raw translation keys instead of proper error messages ([#6821](https://github.com/RooCodeInc/Roo-Code/pull/6821)) +* **Memory Leak Fix**: Resolved a critical memory leak in long conversations that was causing excessive memory usage and grey screens. Virtual scrolling now limits viewport rendering and optimizes caching for stable performance regardless of conversation length. (thanks xyOz-dev!) ([#6697](https://github.com/RooCodeInc/Roo-Code/pull/6697)) +* **Disabled MCP Servers**: Fixed issue where disabled MCP servers were still starting processes and consuming resources. Disabled servers now truly stay disabled with clear status indicators and immediate cleanup when MCP is globally disabled. ([#6084](https://github.com/RooCodeInc/Roo-Code/pull/6084)) +* **MCP Server Refresh**: Settings changes no longer trigger unnecessary MCP server refreshes ([#6779](https://github.com/RooCodeInc/Roo-Code/pull/6779)) +* **Codebase Search**: The tool now correctly searches the entire workspace when using "." as the path ([#6517](https://github.com/RooCodeInc/Roo-Code/pull/6517)) +* **Swift File Support**: Fixed VS Code crashes when indexing projects containing Swift files (thanks niteshbalusu11, sealad886!) ([#6724](https://github.com/RooCodeInc/Roo-Code/pull/6724)) +* **Context Management**: Model max tokens now intelligently capped at 20% of context window to prevent excessive condensing ([#6761](https://github.com/RooCodeInc/Roo-Code/pull/6761)) +* **OpenAI Configuration**: Extra whitespace in base URLs no longer breaks model detection (thanks vauhochzett!) ([#6560](https://github.com/RooCodeInc/Roo-Code/pull/6560)) +* **URL Fetching**: Better error recovery when fetching content from URLs (thanks QuinsZouls!) ([#6635](https://github.com/RooCodeInc/Roo-Code/pull/6635)) +* **Qdrant Recovery**: Code indexing automatically recovers when Qdrant becomes available after startup errors ([#6661](https://github.com/RooCodeInc/Roo-Code/pull/6661)) +* **Chat Scrolling**: Eliminated scroll jitter during message streaming ([#6780](https://github.com/RooCodeInc/Roo-Code/pull/6780)) +* **Mode Name Validation**: Prevents empty mode names from causing YAML parsing errors (thanks kfxmvp!) ([#5767](https://github.com/RooCodeInc/Roo-Code/pull/5767)) +* **Text Highlight Alignment**: Fixed misalignment in chat input area highlights (thanks NaccOll!) ([#6648](https://github.com/RooCodeInc/Roo-Code/pull/6648)) +* **MCP Server Setting**: Properly respects the "Enable MCP Server Creation" setting (thanks characharm!) ([#6613](https://github.com/RooCodeInc/Roo-Code/pull/6613)) +* **VB.NET Indexing**: Files are now properly indexed in large monorepos using fallback chunking (thanks JensvanZutphen!) ([#6552](https://github.com/RooCodeInc/Roo-Code/pull/6552)) +* **Message Sending**: Restored functionality when clicking the save button ([#6487](https://github.com/RooCodeInc/Roo-Code/pull/6487)) +* **Search/Replace Tolerance**: More forgiving of AI-generated diffs with extra `>` characters ([#6537](https://github.com/RooCodeInc/Roo-Code/pull/6537)) +* **Qdrant Deletion**: Gracefully handles deletion errors to prevent indexing interruption ([#6296](https://github.com/RooCodeInc/Roo-Code/pull/6296)) +* **LM Studio Context Length**: Models now correctly display their actual context length instead of "1" (thanks pwilkin, Angular-Angel!) ([#6183](https://github.com/RooCodeInc/Roo-Code/pull/6183)) +* **Claude Code Errors**: ENOENT errors now show helpful installation guidance (thanks JamieJ1!) ([#5867](https://github.com/RooCodeInc/Roo-Code/pull/5867)) +* **Claude Code Error Handling**: Fixed "spawn claude ENOENT" error when using Claude Code provider, now provides better error handling and installation guidance (thanks JamieJ1!) ([#6565](https://github.com/RooCodeInc/Roo-Code/pull/6565)) +* **Multi-file Edit Fix**: Fixed issue where Git diff views interfered with file operations (thanks hassoncs, szermatt!) ([#6350](https://github.com/RooCodeInc/Roo-Code/pull/6350)) +* **Non-QWERTY Keyboard Support**: Fixed keyboard shortcuts for Dvorak, AZERTY, and other layouts (thanks shlgug!) ([#6162](https://github.com/RooCodeInc/Roo-Code/pull/6162)) +* **Mode Export/Import**: Fixed custom mode export to handle slug changes correctly ([#6186](https://github.com/RooCodeInc/Roo-Code/pull/6186)) +* **Hidden Directory Support**: [`list_files`](/advanced-usage/available-tools/list-files) now properly shows contents of dot directories (thanks MuriloFP, avtc, zhang157686!) ([#5176](https://github.com/RooCodeInc/Roo-Code/pull/5176)) +* **Scrollbar Stability**: Fixed flickering scrollbar when streaming tables and code blocks ([#6266](https://github.com/RooCodeInc/Roo-Code/pull/6266)) +* **Settings Link Fix**: Restored working "View Settings" link in command permissions tooltip ([#6253](https://github.com/RooCodeInc/Roo-Code/pull/6253)) +* **@mention Parsing**: Fixed mentions to work in all input contexts including follow-up questions ([#6331](https://github.com/RooCodeInc/Roo-Code/pull/6331)) +* **Debug Button Removal**: Hidden test error boundary button in production builds (thanks bangjohn!) ([#6216](https://github.com/RooCodeInc/Roo-Code/pull/6216)) +* **Command Highlighting Fix**: Fixed inconsistent slash command highlighting behavior ([#6325](https://github.com/RooCodeInc/Roo-Code/pull/6325)) +* **Text Wrapping**: Fixed text overflow for long command patterns in permissions UI ([#6255](https://github.com/RooCodeInc/Roo-Code/pull/6255)) +* **Cross-Platform Mode Export**: Windows path separators now convert correctly for Unix systems ([#6308](https://github.com/RooCodeInc/Roo-Code/pull/6308)) +* **Diff View Display**: Fixed an issue where the diff view wasn't showing before approval when background edits were disabled ([#6386](https://github.com/RooCodeInc/Roo-Code/pull/6386)) +* **Chat Input Preservation**: Fixed an issue where clicking chat buttons would clear your typed message (thanks hassoncs!) ([#6222](https://github.com/RooCodeInc/Roo-Code/pull/6222)) +* **Image Queueing**: Fixed image queueing functionality that was not working properly ([#6414](https://github.com/RooCodeInc/Roo-Code/pull/6414)) +* **Claude Code Output Tokens**: Fixed truncated responses by increasing default max output tokens from 8k to 16k (thanks bpeterson1991!) ([#6312](https://github.com/RooCodeInc/Roo-Code/pull/6312)) +* **Execute Command Kill Button**: Fixed the kill button functionality for the execute_command tool ([#6457](https://github.com/RooCodeInc/Roo-Code/pull/6457)) +* **Token Counting**: Fixed accuracy issues by extracting text from messages using VSCode LM API (thanks NaccOll!) ([#6424](https://github.com/RooCodeInc/Roo-Code/pull/6424)) +* **Tool Repetition Detector**: Fixed a bug where setting the "Errors and Repetition Limit" to 1 would incorrectly block the first tool call (thanks NaccOll!) ([#6836](https://github.com/RooCodeInc/Roo-Code/pull/6836)) +* **`max_tokens` Calculation**: Fixed an error for models with very large context windows where requests would fail due to incorrect calculation of maximum output tokens (thanks markp018!) ([#6808](https://github.com/RooCodeInc/Roo-Code/pull/6808)) +* **AWS Bedrock Connection**: Fixed a connection issue when using AWS Bedrock with LiteLLM ([#6778](https://github.com/RooCodeInc/Roo-Code/pull/6778)) +* **Search Tool Reliability**: Fixed the search_files tool failing when encountering permission-denied files - it now continues working and returns results from accessible files (thanks R-omk!) ([#6757](https://github.com/RooCodeInc/Roo-Code/pull/6757)) +* **Native Ollama API**: Fixed Ollama models to use native API instead of OpenAI compatibility layer for improved performance and reliability ([#7137](https://github.com/RooCodeInc/Roo-Code/pull/7137)) +* **Terminal Reuse**: Fixed terminal reuse logic to properly handle terminal lifecycle management ([#7157](https://github.com/RooCodeInc/Roo-Code/pull/7157)) +* **LM Studio Models**: Fixed duplicate model entries by implementing case-insensitive deduplication, ensuring models appear only once in the provider configuration (thanks fbuechler!) ([#7185](https://github.com/RooCodeInc/Roo-Code/pull/7185)) +* **Reasoning Usage**: Fixed enableReasoningEffort setting not being respected when determining reasoning usage, avoiding unintended reasoning costs (thanks ikbencasdoei!) ([#7049](https://github.com/RooCodeInc/Roo-Code/pull/7049)) +* **Welcome Screen**: Fixed the "Let's go" button not working for Roo Code Cloud provider ([#7239](https://github.com/RooCodeInc/Roo-Code/pull/7239)) + +### Provider Updates + +* **Requesty Provider**: Added support for custom base URLs, allowing you to connect to self-hosted or alternative Requesty endpoints ([#7337](https://github.com/RooCodeInc/Roo-Code/pull/7337)) +* **Chutes AI**: Added DeepSeek V3.1 model support, expanding the available model options for Chutes AI users ([#7295](https://github.com/RooCodeInc/Roo-Code/pull/7295)) +* **Featherless Provider**: Access a wide range of open-source models through the new Featherless AI platform (thanks DarinVerheijke!) ([#7235](https://github.com/RooCodeInc/Roo-Code/pull/7235)) +* **Sonic Model Integration**: Added support for the Sonic stealth model through Roo Code Cloud provider ([#7207](https://github.com/RooCodeInc/Roo-Code/pull/7207), [#7212](https://github.com/RooCodeInc/Roo-Code/pull/7212), [#7218](https://github.com/RooCodeInc/Roo-Code/pull/7218)): + - 262,144-token context window for processing large documents and codebases + - Free 72-hour access period for evaluation + - Thinking token controls for managing reasoning budget + - Max output tokens increased to 16,384 for longer responses +* **GPT-5 Model Support**: Added support for OpenAI's latest GPT-5 model family ([#6819](https://github.com/RooCodeInc/Roo-Code/pull/6819)): + - `gpt-5-2025-08-07`: The full GPT-5 model, now set as the default for OpenAI Native provider + - `gpt-5-mini-2025-08-07`: A smaller, faster variant for quick responses + - `gpt-5-nano-2025-08-07`: The most compact version for resource-constrained scenarios + - `gpt-5-chat-latest`: Optimized for conversational AI and non-reasoning tasks ([#7058](https://github.com/RooCodeInc/Roo-Code/pull/7058)) +* **GPT-5 Verbosity Controls**: New settings to control model output detail levels (low, medium, high), allowing you to fine-tune response length and detail based on your needs ([#6819](https://github.com/RooCodeInc/Roo-Code/pull/6819)) +* **Fireworks AI Models**: Added GLM-4.5 series models (355B and 106B parameters with 128K context) and OpenAI gpt-oss models (20b for edge deployments, 120b for production use) to expand model selection options (thanks alexfarlander!) ([#6784](https://github.com/RooCodeInc/Roo-Code/pull/6784)) +* **Claude Opus 4.1 Support**: Added support for the new Claude Opus 4.1 model across Anthropic, Claude Code, Bedrock, Vertex AI, and LiteLLM providers with 8192 max tokens, reasoning budget support, and prompt caching ([#6728](https://github.com/RooCodeInc/Roo-Code/pull/6728)) +* **Z AI Provider**: Z AI (formerly Zhipu AI) is now available with GLM-4.5 series models, offering dual regional support for both international and mainland China users (thanks jues!) ([#6657](https://github.com/RooCodeInc/Roo-Code/pull/6657)) +* **Fireworks AI Provider**: New provider offering hosted versions of popular open-source models like Kimi and Qwen (thanks ershang-fireworks!) ([#6652](https://github.com/RooCodeInc/Roo-Code/pull/6652)) +* **Groq GPT-OSS Models**: Added GPT-OSS-120b and GPT-OSS-20b models with 131K context windows and support for tool use, browser search, code execution, and JSON object mode ([#6732](https://github.com/RooCodeInc/Roo-Code/pull/6732)) +* **Cerebras GPT-OSS-120b**: Added OpenAI's GPT-OSS-120b model - free to use with 64K context and ~2800 tokens/sec ([#6734](https://github.com/RooCodeInc/Roo-Code/pull/6734)) +* **Cerebras Provider**: Added support for Cerebras as a new AI provider with Qwen 3 Coder models, offering both free and paid tier options with automatic thinking token filtering (thanks kevint-cerebras!) ([#6392](https://github.com/RooCodeInc/Roo-Code/pull/6392), [#6562](https://github.com/RooCodeInc/Roo-Code/pull/6562)) +* **Prompt Caching for LiteLLM**: Reduce API costs and improve response times with caching support for Claude 3.5 Sonnet and compatible models (thanks MuriloFP, steve-gore-snapdocs!) ([#6074](https://github.com/RooCodeInc/Roo-Code/pull/6074)) +* **Chutes AI - GLM-4.5-Air Model**: Added support for the GLM-4.5-Air model to the Chutes AI provider with 151K token context window for complex reasoning tasks and large codebase analysis - completely free to use (thanks matbgn!) ([#6377](https://github.com/RooCodeInc/Roo-Code/pull/6377)) +* **Doubao Provider**: Added support for ByteDance's AI model provider with full integration including API handling (thanks AntiMoron!) ([#6345](https://github.com/RooCodeInc/Roo-Code/pull/6345)) +* **SambaNova Provider**: Integrated SambaNova as a new LLM provider offering high-speed inference and broader model selection (thanks snova-jorgep!) ([#6188](https://github.com/RooCodeInc/Roo-Code/pull/6188)) +* **Chutes AI**: Added zai-org/GLM-4.5-FP8 model support ([#6441](https://github.com/RooCodeInc/Roo-Code/pull/6441)) +* **OpenRouter**: Set horizon-alpha model max tokens to 32k ([#6470](https://github.com/RooCodeInc/Roo-Code/pull/6470)) +* **Horizon Beta Stealth Model via OpenRouter**: Optimized support for OpenRouter's new stealth model Horizon Beta with 32k max tokens for better response times. Thanks to OpenRouter for providing this free, improved version of Horizon Alpha! ([#6577](https://github.com/RooCodeInc/Roo-Code/pull/6577)) +* **Type Definitions**: Updated @roo-code/types to v1.41.0 for latest type compatibility ([#6568](https://github.com/RooCodeInc/Roo-Code/pull/6568)) +* **Databricks**: Added support for /invocations endpoints pattern (thanks adambrand!) ([#6317](https://github.com/RooCodeInc/Roo-Code/pull/6317)) +* **Codex Mini Model Support**: Added support for the `codex-mini-latest` model in the OpenAI Native provider (thanks KJ7LNW!) ([#6931](https://github.com/RooCodeInc/Roo-Code/pull/6931)) +* **IO Intelligence Provider**: Added IO Intelligence as a new provider, giving users access to a wide range of AI models ([#6875](https://github.com/RooCodeInc/Roo-Code/pull/6875)) +* **OpenAI**: Removed the deprecated GPT-4.5 Preview model from available options as it was removed from the OpenAI API (thanks PeterDaveHello!) ([#6948](https://github.com/RooCodeInc/Roo-Code/pull/6948)) +* **Task Metadata**: Improved compatibility with Roo Code Cloud services ([#7092](https://github.com/RooCodeInc/Roo-Code/pull/7092)) +* **Sonic Model Support**: Added support for the Sonic model in the provider system (thanks mrubens!) ([#7246](https://github.com/RooCodeInc/Roo-Code/pull/7246)) + +### Misc. Improvements + +* **MDM Authentication**: Clear feedback when authentication is required by your organization's MDM policy ([#7291](https://github.com/RooCodeInc/Roo-Code/pull/7291)) +* **Security Updates**: Updated mermaid dependency to v11.10.0 ([#7231](https://github.com/RooCodeInc/Roo-Code/pull/7231)) and tmp dependency to v0.2.4 ([#6762](https://github.com/RooCodeInc/Roo-Code/pull/6762)) +* **Task Tracking**: Pass task ID in Roo provider request headers ([#7303](https://github.com/RooCodeInc/Roo-Code/pull/7303)) +* **Error Handling**: Removed exceptions from RooHandler constructor ([#7302](https://github.com/RooCodeInc/Roo-Code/pull/7302)) +* **Cloud Services**: Various internal improvements for cloud services ([#7299](https://github.com/RooCodeInc/Roo-Code/pull/7299), [#7258](https://github.com/RooCodeInc/Roo-Code/pull/7258)) +* **Build Optimization**: Marked non-English package files as linguist-generated ([#7271](https://github.com/RooCodeInc/Roo-Code/pull/7271)) +* **Cloud Integration**: Reverted to using the npm package version of @roo-code/cloud for improved build stability and maintenance ([#6795](https://github.com/RooCodeInc/Roo-Code/pull/6795)) +* **Slash Command Interpolation**: Skip interpolation for non-existent commands ([#6475](https://github.com/RooCodeInc/Roo-Code/pull/6475)) +* **Linter Coverage**: Applied to locale README files (thanks liwilliam2021!) ([#6477](https://github.com/RooCodeInc/Roo-Code/pull/6477)) +* **Cloud Service Events**: Migrated from callbacks to event-based architecture ([#6519](https://github.com/RooCodeInc/Roo-Code/pull/6519)) +* **Website Updates**: Phase 1 improvements (thanks thill2323!) ([#6085](https://github.com/RooCodeInc/Roo-Code/pull/6085)) +* **Background Editing (Experimental)**: Work uninterrupted while Roo edits files in the background—no more losing focus from automatic diff views ([#6214](https://github.com/RooCodeInc/Roo-Code/pull/6214)). Files change silently while you keep coding, with diagnostics and error checking still active. See [Background Editing](/features/experimental/background-editing) for details. +* **Security Update**: Updated form-data dependency to address security vulnerability ([#6332](https://github.com/RooCodeInc/Roo-Code/pull/6332)) +* **Contributor Updates**: Refreshed contributor acknowledgments across all localizations ([#6302](https://github.com/RooCodeInc/Roo-Code/pull/6302)) +* **Release Engineering**: Converted release engineer role to slash command for easier releases ([#6333](https://github.com/RooCodeInc/Roo-Code/pull/6333)) +* **PR Reviewer Improvements**: Made PR reviewer mode generic for any GitHub repository ([#6357](https://github.com/RooCodeInc/Roo-Code/pull/6357), [#6328](https://github.com/RooCodeInc/Roo-Code/pull/6328), [#6324](https://github.com/RooCodeInc/Roo-Code/pull/6324)) +* **Organization MCP Controls**: Added support for managing MCP servers at the organization level, allowing centralized configuration across teams ([#6378](https://github.com/RooCodeInc/Roo-Code/pull/6378)) +* **Extension Title Update**: Removed "(prev Roo Cline)" from the extension title across all languages ([#6426](https://github.com/RooCodeInc/Roo-Code/pull/6426)) +* **Translation Improvements**: Updated auto-translate prompt and added translation check action ([#6430](https://github.com/RooCodeInc/Roo-Code/pull/6430), [#6393](https://github.com/RooCodeInc/Roo-Code/pull/6393)) +* **Mode Configuration**: Updated PR reviewer rules and mode configuration ([#6391](https://github.com/RooCodeInc/Roo-Code/pull/6391), [#6428](https://github.com/RooCodeInc/Roo-Code/pull/6428)) +* **Navigator Global Error**: Resolved errors by updating mammoth and bluebird dependencies ([#6363](https://github.com/RooCodeInc/Roo-Code/pull/6363)) +* **Nightly Build Fixes**: Resolved marketplace freezing issues with separate changelog ([#6449](https://github.com/RooCodeInc/Roo-Code/pull/6449)) +* **Cloud Provider Profile Sync**: Added support for syncing provider profiles from the cloud, enabling automatic synchronization across devices and team collaboration ([#6540](https://github.com/RooCodeInc/Roo-Code/pull/6540)) + +### Documentation Updates + +* **ask_followup_question Tool**: Simplified the prompt guidance for clearer authoring, making it faster to create effective follow-up questions ([#7191](https://github.com/RooCodeInc/Roo-Code/pull/7191)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.0.mdx b/apps/docs/docs/update-notes/v3.26.0.mdx new file mode 100644 index 00000000000..bccf1ce26ab --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.0.mdx @@ -0,0 +1,81 @@ +--- +description: Roo Code v3.26.0 introduces Grok Code Fast, built-in /init command, and Qwen Code CLI API support. +keywords: + - roo code 3.26.0 + - grok code fast + - init command + - qwen code cli +image: /img/v3.26.0/v3.26.0.png +--- + +# Roo Code 3.26.0 Release Notes (2025-08-26) + +This release introduces Grok Code Fast (formerly Sonic), a built-in /init command, and Qwen Code CLI API support. + +Roo Code v3.26.0 Release +## Grok Code Fast +As you may have already figured out, our stealth model Sonic has officially been uncloaked! ([#7426](https://github.com/RooCodeInc/Roo-Code/pull/7426)) + +From xAI, this model is optimized for coding tasks and already beloved by the community in Code Mode for its: +- **Sharp reasoning** capabilities +- **Plan execution at scale** +- **Code suggestions with UI taste and intuition** + +If you've already been enjoying Sonic in Roo Code Cloud, you'll be transitioned to Grok Code Fast. The model `xai/grok-code-fast-1` is also available under the [xAI Provider](/providers/xai) and is not free (for when the free period ends on Aug 28th, 2025). + +A massive thank-you to our partners at xAI and to all of you — over 100B tokens (and counting!) ran through Sonic during stealth! Your incredible adoption and helpful feedback shaped Grok Code Fast into the powerful model it is today. + +**Important:** Grok Code Fast remains **FREE** when accessed through [Roo Code Router](/providers/roo-code-router) during the promotional period. Using it directly through the xAI provider will incur standard charges once pricing is established. + +> **📚 Documentation**: See [Roo Code Router](/providers/roo-code-router) for free access or [xAI Provider](/providers/xai) for direct configuration. + +## Built-in /init Command + +We've added a new /init slash command for project onboarding ([#7381](https://github.com/RooCodeInc/Roo-Code/pull/7381), [#7400](https://github.com/RooCodeInc/Roo-Code/pull/7400)): + +- **Automatic Project Analysis**: Analyzes your entire codebase and creates comprehensive AGENTS.md files +- **AI Assistant Optimization**: Generates documentation that enables AI assistants to be immediately productive in your codebase +- **Mode-Specific Guidance**: Creates tailored documentation for different Roo Code modes (code, debug, architect, etc.) + +The /init command helps LLMs understand your project's unique patterns and conventions by documenting project-specific information that isn't obvious from the code structure alone. + +> 📚 Documentation: See [Slash Commands - The init command](/features/slash-commands#the-init-command) for details. + +## Qwen Code CLI API Support + +We've integrated with the Qwen Code CLI tool, allowing Roo Code to leverage its free access tier for Alibaba's Qwen3 Coder models ([#7380](https://github.com/RooCodeInc/Roo-Code/pull/7380)): + +- **Free Inference**: Piggybacks off the Qwen Code CLI's generous free tier (2,000 requests/day and 60 requests/minute with no token limits) via OAuth, available during a promotional period. +- **1M Context Windows**: Handle entire codebases in a single conversation. +- **Seamless Setup**: Works automatically if you've already authenticated the Qwen Code CLI tool. + +This integration provides free access to the Qwen3 Coder models by using the local authentication from the Qwen Code CLI. + +> **📚 Documentation**: See [Qwen Code CLI Provider](/providers/qwen-code) for setup and configuration. + +## Provider Updates + +* **DeepSeek V3.1 on Fireworks**: Added support for DeepSeek V3.1 model in the Fireworks AI provider (thanks dmarkey!) ([#7375](https://github.com/RooCodeInc/Roo-Code/pull/7375)) +* **Provider Visibility**: Static providers with no models are now hidden from the provider list for a cleaner interface ([#7392](https://github.com/RooCodeInc/Roo-Code/pull/7392)) + +## QOL Improvements + +* **Auto-Approve Toggle UI**: The auto-approve toggle now stays at the bottom when expanded, reducing mouse movements (thanks elianiva, kyle-apex!) ([#7318](https://github.com/RooCodeInc/Roo-Code/pull/7318)) +* **OpenRouter Cache Pricing**: Cache read and write prices are now displayed for OpenRouter models (thanks chrarnoldus!) ([#7176](https://github.com/RooCodeInc/Roo-Code/pull/7176)) +* **Protected Workspace Files**: VS Code workspace configuration files (*.code-workspace) are now protected from accidental modification (thanks thelicato!) ([#7403](https://github.com/RooCodeInc/Roo-Code/pull/7403)) + +## Bug Fixes + +* **Security - Symlink Handling**: Fixed security vulnerability where symlinks could bypass rooignore patterns ([#7405](https://github.com/RooCodeInc/Roo-Code/pull/7405)) +* **Security - Default Commands**: Removed potentially unsafe commands (`npm test`, `npm install`, `tsc`) from default allowed list (thanks thelicato, SGudbrandsson!) ([#7404](https://github.com/RooCodeInc/Roo-Code/pull/7404)) +* **Command Validation**: Fixed handling of substitution patterns in command validation ([#7390](https://github.com/RooCodeInc/Roo-Code/pull/7390)) +* **Follow-up Input Preservation**: Fixed issue where user input wasn't preserved when selecting follow-up choices ([#7394](https://github.com/RooCodeInc/Roo-Code/pull/7394)) +* **Mistral Thinking Content**: Fixed validation errors when using Mistral models that send thinking content (thanks Biotrioo!) ([#7106](https://github.com/RooCodeInc/Roo-Code/pull/7106)) +* **Requesty Model Listing**: Fixed model listing for Requesty provider when using custom base URLs (thanks dtrugman!) ([#7378](https://github.com/RooCodeInc/Roo-Code/pull/7378)) +* **Todo List Setting**: Fixed newTaskRequireTodos setting to properly enforce todo list requirements ([#7363](https://github.com/RooCodeInc/Roo-Code/pull/7363)) + +## Misc Improvements + +* **Issue Fixer Mode**: Added missing todos parameter in new_task tool usage ([#7391](https://github.com/RooCodeInc/Roo-Code/pull/7391)) +* **Privacy Policy Update**: Updated privacy policy to clarify proxy mode data handling (thanks jdilla1277!) ([#7255](https://github.com/RooCodeInc/Roo-Code/pull/7255)) +* **Dependencies**: Updated drizzle-kit to v0.31.4 ([#5453](https://github.com/RooCodeInc/Roo-Code/pull/5453)) diff --git a/apps/docs/docs/update-notes/v3.26.1.mdx b/apps/docs/docs/update-notes/v3.26.1.mdx new file mode 100644 index 00000000000..cac8e8e58c0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.1.mdx @@ -0,0 +1,34 @@ +--- +description: This release adds comprehensive Vercel AI Gateway support as a full provider with embeddings integration, along with cloud agent remote control improvements and UI consistency enhancements. +keywords: + - roo code v3.26.1 + - vercel ai gateway + - vercel provider + - vercel embeddings + - cloud remote control + - ui improvements +image: /img/v3.26.1/v3.26.1.png +--- + +# Roo Code v3.26.1 Release Notes (2025-08-27) + +This release adds comprehensive Vercel AI Gateway support as a full provider with embeddings integration, improves cloud agent remote control, and enhances UI consistency. + +Roo Code v3.26.1 Release +## Vercel AI Gateway Provider + +We've added Vercel AI Gateway as a complete provider integration (thanks joshualipman123!) ([#7396](https://github.com/RooCodeInc/Roo-Code/pull/7396), [#7433](https://github.com/RooCodeInc/Roo-Code/pull/7433)): + +- **Full Provider Support**: Use Vercel AI Gateway as a comprehensive AI model provider alongside existing options +- **Model Access**: Access Vercel's wide range of AI models through their optimized gateway infrastructure +- **Embeddings Support**: Includes built-in support for Vercel AI Gateway embeddings ([#7445](https://github.com/RooCodeInc/Roo-Code/pull/7445)) + +> **📚 Documentation**: See [Vercel AI Gateway](/providers/vercel-ai-gateway) for detailed setup instructions. + +## QOL Improvements + +* **Cleaner Model Display**: Removed dot separator in API configuration dropdown for cleaner appearance ([#7461](https://github.com/RooCodeInc/Roo-Code/pull/7461)) +* **Better Tooltips**: Updated tooltip styling to match VSCode native shadows for improved visual consistency ([#7457](https://github.com/RooCodeInc/Roo-Code/pull/7457)) +* **Model ID Visibility**: API configuration dropdown now shows model IDs alongside profile names for easier identification ([#7423](https://github.com/RooCodeInc/Roo-Code/pull/7423)) +* **Chat UI Cleanup**: Improved consistency in chat input controls and fixed tooltip behavior ([#7436](https://github.com/RooCodeInc/Roo-Code/pull/7436)) +* **Clearer Task Headers**: Removed duplicate cache display in task headers to eliminate confusion ([#7443](https://github.com/RooCodeInc/Roo-Code/pull/7443)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.2.mdx b/apps/docs/docs/update-notes/v3.26.2.mdx new file mode 100644 index 00000000000..cce187c350c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.2.mdx @@ -0,0 +1,70 @@ +--- +description: Adds built-in image generation (OpenRouter), a free Gemini preview option, GPT-5 usage without BYOK rate limit blockers, plus QOL improvements and fixes. +keywords: + - roo code 3.26.2 + - release notes + - image generation + - openrouter + - gemini 2.5 flash image preview + - free image generation + - prompt to image + - image viewer + - approvals flow + - gpt-5 + - rate limits + - byok + - openai provider + - model picker + - input modalities + - output modalities + - provider updates + - qol improvements + - bug fixes + - release automation + - taskspawned event +image: /img/v3.26.2/v3.26.2.png +--- + +# Roo Code 3.26.2 Release Notes (2025-08-28) + +This release adds integrated image generation, a free Gemini image preview option, improved GPT-5 availability without BYOK rate limit blockers, and multiple quality-of-life improvements and fixes. + +Roo Code v3.26.2 Release +## Image Generation (OpenRouter) — Free option: Gemini 2.5 Flash Image Preview + +Generate images from natural‑language prompts directly inside Roo Code using OpenRouter’s image generation models. Configure your OpenRouter API key, pick a supported model, and preview results in the built‑in Image Viewer. See [Image Generation](/features/image-generation) and [OpenRouter Provider](/providers/openrouter) for setup and model selection. + +- **Free option available: Gemini 2.5 Flash Image Preview** — try image generation without paid credits for faster onboarding and quick experiments +- Prompt‑to‑image workflow inside the editor with approvals flow (supports auto‑approval when write permissions are granted) +- Image Viewer with zoom, copy, and save for quick reuse in docs and prototypes + +PRs: [#7474](https://github.com/RooCodeInc/Roo-Code/pull/7474), [#7492](https://github.com/RooCodeInc/Roo-Code/pull/7492), [#7493](https://github.com/RooCodeInc/Roo-Code/pull/7493) + + +## GPT-5 usage without BYOK rate limit blockers + +If you’re being rate limited with GPT‑5, you can now use GPT‑5 models without bringing your own key. This improves availability and reduces interruptions during development. See [OpenAI Provider](/providers/openai) for model support and guidance. + + +## QOL Improvements + +- Improved padding and click targets in the image model picker for easier selection and fewer misclicks. (#[7494](https://github.com/RooCodeInc/Roo-Code/pull/7494)) +- Generic default filename for saved images (e.g., `img_`) instead of `mermaid_diagram_`. (#[7479](https://github.com/RooCodeInc/Roo-Code/pull/7479)) + +## Bug Fixes + +- ImageGenerationSettings no longer shows a dirty state on first open; the save button only enables after an actual change. (#[7495](https://github.com/RooCodeInc/Roo-Code/pull/7495)) +- GPT‑5 reliability improvements: + - Manual condense preserves conversation continuity by correctly handling `previous_response_id` on the next request + - Image inputs work reliably with structured text+image payloads + - Temperature control is shown only for models that support it + - Fewer GPT‑5–specific errors with updated provider definitions and SDK (thanks nlbuescher!) + + (#[7067](https://github.com/RooCodeInc/Roo-Code/pull/7067)) + + +## Misc Improvements + +- Release automation: version bumps, changelog updates, and auto-publishing on merge for a faster, more reliable release process. (#[7490](https://github.com/RooCodeInc/Roo-Code/pull/7490)) +- New TaskSpawned developer event so integrations can detect when a subtask is created and capture its ID for chaining or monitoring. (#[7465](https://github.com/RooCodeInc/Roo-Code/pull/7465)) +- Roo Code Cloud SDK bumped to 0.25.0. (#[7475](https://github.com/RooCodeInc/Roo-Code/pull/7475)) diff --git a/apps/docs/docs/update-notes/v3.26.3.mdx b/apps/docs/docs/update-notes/v3.26.3.mdx new file mode 100644 index 00000000000..9027015e778 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.3.mdx @@ -0,0 +1,34 @@ +--- +description: This release adds image editing capabilities to the image generation tool and improves developer experience. +keywords: + - roo code 3.26.3 + - image editing + - image generation +image: /img/v3.26.3/v3.26.3.png +--- + +# Roo Code 3.26.3 Release Notes (2025-08-29) + +This release adds image editing capabilities to the image generation tool and improves developer experience. + +Roo Code v3.26.3 Release +## Image Editing with Input Images + +We've enhanced the image generation tool with the ability to edit and transform existing images ([#7525](https://github.com/RooCodeInc/Roo-Code/pull/7525)): + +- **Transform Existing Images**: Apply artistic styles, convert photos to paintings, or create variations of existing artwork +- **Style Transfer**: Convert images into watercolor, oil painting, sketch, or other artistic styles +- **Image Enhancement**: Upscale and enhance existing images to higher resolution while maintaining composition +- **Creative Editing**: Use text prompts to modify specific aspects of an image while preserving the rest + +The tool now accepts an optional `image` parameter for transforming existing images in your workspace. Supported input formats include PNG, JPG, JPEG, GIF, and WEBP. + +> **📚 Documentation**: See [Image Generation - Editing Existing Images](/features/image-generation#editing-existing-images) for detailed usage and transformation examples. + +## Bug Fixes + +* **Image Generation Settings**: Fixed issue where the saved API key would clear when switching modes ([#7536](https://github.com/RooCodeInc/Roo-Code/pull/7536)) + +## Misc Improvements + +* **Test Debugging**: Console logs now visible in tests when using the --no-silent flag (thanks hassoncs!) ([#7467](https://github.com/RooCodeInc/Roo-Code/pull/7467)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.4.mdx b/apps/docs/docs/update-notes/v3.26.4.mdx new file mode 100644 index 00000000000..1cbb5e1ee1f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.4.mdx @@ -0,0 +1,33 @@ +--- +description: Memory optimization for image handling and bug fixes. +keywords: + - roo code 3.26.4 + - memory optimization + - ollama turbo +image: /img/v3.26.4/v3.26.4.png +--- + +# Roo Code 3.26.4 Release Notes (2025-09-01) + +This release focuses on memory optimization for image handling and includes several improvements. + +Roo Code v3.26.4 Release +## QOL Improvements + +* **Memory Optimization**: Optimize memory usage for image handling in webview ([#7556](https://github.com/RooCodeInc/Roo-Code/pull/7556)) + +## Bug Fixes + +* **Special Tokens Handling**: Fixed issue where special tokens would break task processing (thanks pwilkin!) ([#7540](https://github.com/RooCodeInc/Roo-Code/pull/7540)) + +## Provider Updates + +* **Ollama Turbo Mode**: Added API key support for Turbo mode (thanks LivioGama!) ([#7425](https://github.com/RooCodeInc/Roo-Code/pull/7425)) + +## UI Updates + +* **Cloud Tab Rename**: Renamed Account tab to Cloud tab for clarity ([#7558](https://github.com/RooCodeInc/Roo-Code/pull/7558)) + +## Misc Improvements + +* **Release Image**: Added kangaroo-themed release image generation ([#7546](https://github.com/RooCodeInc/Roo-Code/pull/7546)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.5.mdx b/apps/docs/docs/update-notes/v3.26.5.mdx new file mode 100644 index 00000000000..e08ecd3f5e8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.5.mdx @@ -0,0 +1,28 @@ +--- +description: Adds Qwen3 235B Thinking model support, configurable embedding batch size for code indexing, and MCP resource auto-approval. +keywords: + - roo code 3.26.5 + - qwen3 thinking model + - code indexing batch size + - mcp auto-approve +image: /img/v3.26.5/v3.26.5.png +--- + +# Roo Code 3.26.5 Release Notes (2025-09-03) + +This release adds support for the Qwen3 235B Thinking model with a 262K context window, introduces configurable embedding batch sizes for code indexing, and improves MCP resource auto-approval. + +Roo Code v3.26.5 Release +## Provider Updates + +* **Qwen3 235B Thinking Model**: Added support for Qwen3-235B-A22B-Thinking-2507 model with an impressive 262K context window, enabling processing of extremely long documents and large codebases in a single request through the Chutes provider (thanks mohammad154, apple-techie!) ([#7578](https://github.com/RooCodeInc/Roo-Code/pull/7578)) + +## QOL Improvements + +* **MCP Resource Auto-Approval**: MCP resource access requests are now automatically approved when auto-approve is enabled, eliminating manual approval steps and enabling smoother automation workflows (thanks m-ibm!) ([#7606](https://github.com/RooCodeInc/Roo-Code/pull/7606)) +* **Message Queue Performance**: Improved message queueing reliability and performance by moving the queue management to the extension host, making the interface more stable ([#7604](https://github.com/RooCodeInc/Roo-Code/pull/7604)) + +## Bug Fixes + +* **Configurable Embedding Batch Size**: Fixed an issue where users with API providers having stricter batch limits couldn't use code indexing. You can now configure the embedding batch size (1-2048, default: 400) to match your provider's limits (thanks BenLampson!) ([#7464](https://github.com/RooCodeInc/Roo-Code/pull/7464)) +* **OpenAI-Native Cache Reporting**: Fixed cache usage statistics and cost calculations when using the OpenAI-Native provider with cached content ([#7602](https://github.com/RooCodeInc/Roo-Code/pull/7602)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.6.mdx b/apps/docs/docs/update-notes/v3.26.6.mdx new file mode 100644 index 00000000000..05bc2f4f832 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.6.mdx @@ -0,0 +1,38 @@ +--- +description: Adds the run_slash_command tool for AI-driven slash command execution, fixes tool approval errors, and includes Kimi K2 Turbo model support. +keywords: + - roo code 3.26.6 + - run_slash_command tool + - kimi k2 turbo + - bug fixes +image: /img/v3.26.6/v3.26.6.png +--- + +# Roo Code 3.26.6 Release Notes (2025-09-03) + +This release adds the ability for AI to execute slash commands programmatically, fixes tool approval issues, and includes support for the high-speed Kimi K2 Turbo model. + +Roo Code v3.26.6 Release +## New run_slash_command Tool + +We've added a powerful new tool that allows the AI to execute slash commands as part of its workflow ([#7473](https://github.com/RooCodeInc/Roo-Code/pull/7473)): + +- **Automated Command Execution**: The AI can now run commands like `/init`, `/review`, and other slash commands automatically +- **Seamless Integration**: Existing slash commands work directly within AI workflows without manual intervention +- **Enhanced Automation**: Combine multiple slash commands to create complex automated sequences + +This opens up new possibilities for task automation, letting the AI leverage the full power of Roo Code's slash command ecosystem programmatically. + +> **📚 Documentation**: See the [run_slash_command tool documentation](/advanced-usage/available-tools/run-slash-command) for usage examples and integration patterns. + +## QOL Improvements + +* **Settings Scroll Position**: Settings tabs now remember their individual scroll positions when switching between them (thanks DC-Dancao!) ([#7587](https://github.com/RooCodeInc/Roo-Code/pull/7587)) + +## Bug Fixes + +* **Tool Approval Fix**: Fixed an error that occurred when using insert_content and search_and_replace tools on write-protected files - these tools now handle file protection correctly ([#7649](https://github.com/RooCodeInc/Roo-Code/pull/7649)) + +## Provider Updates + +* **Kimi K2 Turbo Model**: Added support for the high-speed Kimi K2 Turbo model with 60-100 tokens/sec processing and a 131K token context window (thanks wangxiaolong100!) ([#7593](https://github.com/RooCodeInc/Roo-Code/pull/7593)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.7.mdx b/apps/docs/docs/update-notes/v3.26.7.mdx new file mode 100644 index 00000000000..ae84690e15a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.7.mdx @@ -0,0 +1,64 @@ +--- +description: Enhanced Kimi K2 models with 256K+ context windows, OpenAI service tiers for flexible pricing, and DeepInfra as a new provider with 100+ models. +keywords: + - roo code 3.26.7 + - kimi k2 models + - openai service tiers + - deepinfra provider + - bug fixes +image: /img/v3.26.7/v3.26.7.png +--- + +# Roo Code 3.26.7 Release Notes (2025-09-05) + +This release brings enhanced Kimi K2 models with massive context windows, OpenAI service tier selection, and DeepInfra as a new provider offering 100+ models. + +Roo Code v3.26.7 Release +## Kimi K2-0905: Moonshot's Latest Open Source Model is Live in Roo Code + +We've upgraded to the latest Kimi K2-0905 models across multiple providers (thanks CellenLee!) ([#7663](https://github.com/RooCodeInc/Roo-Code/pull/7663), [#7693](https://github.com/RooCodeInc/Roo-Code/pull/7693)): + +K2-0905 comes with three major upgrades: +- **256K Context Window**: Massive context supporting up to 256K-262K tokens, doubling the previous limit for processing much larger documents and conversations +- **Improved Tool Calling**: Enhanced function calling and tool use capabilities for better agentic workflows +- **Enhanced Front-end Development**: Superior HTML, CSS, and JavaScript generation with modern framework support + +Available through Groq, Moonshot, and Fireworks providers. These models excel at handling large codebases, long conversations, and complex multi-file operations. + +## OpenAI Service Tiers + +We've added support for OpenAI's new Responses API service tiers ([#7646](https://github.com/RooCodeInc/Roo-Code/pull/7646)): + +- **Standard Tier**: Default tier with regular pricing +- **Flex Tier**: 50% discount with slightly longer response times for non-urgent tasks +- **Priority Tier**: Faster response times for time-critical operations + +Select your preferred tier directly in the UI based on your needs and budget. This gives you more control over costs while maintaining access to OpenAI's powerful models. + +> **📚 Documentation**: See [OpenAI Provider Guide](/providers/openai) for detailed tier comparison and pricing. + +## DeepInfra Provider + +DeepInfra is now available as a model provider (thanks Thachnh!) ([#7677](https://github.com/RooCodeInc/Roo-Code/pull/7677)): + +- **100+ Models**: Access to a vast selection of open-source and frontier models +- **Competitive Pricing**: Very cost-effective rates compared to other providers +- **Automatic Prompt Caching**: Built-in prompt caching for supported models like Qwen3 Coder +- **Fast Inference**: Optimized infrastructure for quick response times + +DeepInfra is an excellent choice for developers looking for variety and value in their AI model selection. + +> **📚 Documentation**: See [DeepInfra Provider Setup](/providers/deepinfra) to get started. + +## QOL Improvements + +* **Shell Security**: Added shell executable allowlist validation with platform-specific fallbacks for improved command execution safety ([#7681](https://github.com/RooCodeInc/Roo-Code/pull/7681)) + +## Bug Fixes + +* **MCP Tool Validation**: Roo now validates MCP tool existence before execution and shows helpful error messages with available tools (thanks R-omk!) ([#7632](https://github.com/RooCodeInc/Roo-Code/pull/7632)) +* **OpenAI API Key Errors**: Clear error messages now display when API keys contain invalid characters instead of cryptic ByteString errors (thanks A0nameless0man!) ([#7586](https://github.com/RooCodeInc/Roo-Code/pull/7586)) +* **Follow-up Questions**: Fixed countdown timer incorrectly reappearing in task history for already answered follow-up questions (thanks XuyiK!) ([#7686](https://github.com/RooCodeInc/Roo-Code/pull/7686)) +* **Moonshot Token Limit**: Resolved issue where Moonshot models were incorrectly limited to 1024 tokens, now properly respects configured limits (thanks wangxiaolong100, greyishsong!) ([#7673](https://github.com/RooCodeInc/Roo-Code/pull/7673)) +* **Zsh Command Safety**: Improved handling of zsh process substitution and glob qualifiers to prevent auto-execution of potentially dangerous commands ([#7658](https://github.com/RooCodeInc/Roo-Code/pull/7658), [#7667](https://github.com/RooCodeInc/Roo-Code/pull/7667)) +* **Traditional Chinese Localization**: Fixed typo in zh-TW locale text (thanks PeterDaveHello!) ([#7672](https://github.com/RooCodeInc/Roo-Code/pull/7672)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.26.mdx b/apps/docs/docs/update-notes/v3.26.mdx new file mode 100644 index 00000000000..a74bab20297 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.26.mdx @@ -0,0 +1,187 @@ +--- +description: Roo Code v3.26 series - Grok Code Fast, built-in /init command, Qwen Code CLI API support, Vercel AI Gateway integration, and image generation enhancements. +keywords: + - roo code 3.26 + - grok code fast + - init command + - qwen code cli + - vercel ai gateway + - image generation +image: /img/v3.26.0/v3.26.0.png +--- + +# Roo Code 3.26 Release Notes + +This document combines all releases in the v3.26 series. + +Roo Code v3.26 Release +### Grok Code Fast + +As you may have already figured out, our stealth model Sonic has officially been uncloaked! ([#7426](https://github.com/RooCodeInc/Roo-Code/pull/7426)) + +From xAI, this model is optimized for coding tasks and already beloved by the community in Code Mode for its: +- **Sharp reasoning** capabilities +- **Plan execution at scale** +- **Code suggestions with UI taste and intuition** + +If you've already been enjoying Sonic in Roo Code Cloud, you'll be transitioned to Grok Code Fast. The model `xai/grok-code-fast-1` is also available under the [xAI Provider](/providers/xai) and is not free (for when the free period ends on Aug 28th, 2025). + +A massive thank-you to our partners at xAI and to all of you — over 100B tokens (and counting!) ran through Sonic during stealth! Your incredible adoption and helpful feedback shaped Grok Code Fast into the powerful model it is today. + +**Important:** Grok Code Fast remains **FREE** when accessed through [Roo Code Router](/providers/roo-code-router) during the promotional period. Using it directly through the xAI provider will incur standard charges once pricing is established. + +> **📚 Documentation**: See [Roo Code Router](/providers/roo-code-router) for free access or [xAI Provider](/providers/xai) for direct configuration. + +### Built-in /init Command + +We've added a new /init slash command for project onboarding ([#7381](https://github.com/RooCodeInc/Roo-Code/pull/7381), [#7400](https://github.com/RooCodeInc/Roo-Code/pull/7400)): + +- **Automatic Project Analysis**: Analyzes your entire codebase and creates comprehensive AGENTS.md files +- **AI Assistant Optimization**: Generates documentation that enables AI assistants to be immediately productive in your codebase +- **Mode-Specific Guidance**: Creates tailored documentation for different Roo Code modes (code, debug, architect, etc.) + +The /init command helps LLMs understand your project's unique patterns and conventions by documenting project-specific information that isn't obvious from the code structure alone. + +> 📚 Documentation: See [Slash Commands - The init command](/features/slash-commands#the-init-command) for details. + +### New run_slash_command Tool + +We've added a powerful new tool that allows the AI to execute slash commands as part of its workflow ([#7473](https://github.com/RooCodeInc/Roo-Code/pull/7473)): + +- **Automated Command Execution**: The AI can now run commands like `/init`, `/review`, and other slash commands automatically +- **Seamless Integration**: Existing slash commands work directly within AI workflows without manual intervention +- **Enhanced Automation**: Combine multiple slash commands to create complex automated sequences + +This opens up new possibilities for task automation, letting the AI leverage the full power of Roo Code's slash command ecosystem programmatically. + +> **📚 Documentation**: See the [run_slash_command tool documentation](/advanced-usage/available-tools/run-slash-command) for usage examples and integration patterns. + +### Qwen Code CLI API Support + +We've integrated with the Qwen Code CLI tool, allowing Roo Code to leverage its free access tier for Alibaba's Qwen3 Coder models ([#7380](https://github.com/RooCodeInc/Roo-Code/pull/7380)): + +- **Free Inference**: Piggybacks off the Qwen Code CLI's generous free tier (2,000 requests/day and 60 requests/minute with no token limits) via OAuth, available during a promotional period. +- **1M Context Windows**: Handle entire codebases in a single conversation. +- **Seamless Setup**: Works automatically if you've already authenticated the Qwen Code CLI tool. + +This integration provides free access to the Qwen3 Coder models by using the local authentication from the Qwen Code CLI. + +> **📚 Documentation**: See [Qwen Code CLI Provider](/providers/qwen-code) for setup and configuration. + +### Vercel AI Gateway Provider + +We've added Vercel AI Gateway as a complete provider integration (thanks joshualipman123!) ([#7396](https://github.com/RooCodeInc/Roo-Code/pull/7396), [#7433](https://github.com/RooCodeInc/Roo-Code/pull/7433)): + +- **Full Provider Support**: Use Vercel AI Gateway as a comprehensive AI model provider alongside existing options +- **Model Access**: Access Vercel's wide range of AI models through their optimized gateway infrastructure +- **Embeddings Support**: Includes built-in support for Vercel AI Gateway embeddings ([#7445](https://github.com/RooCodeInc/Roo-Code/pull/7445)) + +> **📚 Documentation**: See [Vercel AI Gateway](/providers/vercel-ai-gateway) for detailed setup instructions. + +### Image Generation (OpenRouter) — Free option: Gemini 2.5 Flash Image Preview + +Generate images from natural‑language prompts directly inside Roo Code using OpenRouter's image generation models. Configure your OpenRouter API key, pick a supported model, and preview results in the built‑in Image Viewer. See [Image Generation](/features/image-generation) and [OpenRouter Provider](/providers/openrouter) for setup and model selection. + +- **Free option available: Gemini 2.5 Flash Image Preview** — try image generation without paid credits for faster onboarding and quick experiments +- Prompt‑to‑image workflow inside the editor with approvals flow (supports auto‑approval when write permissions are granted) +- Image Viewer with zoom, copy, and save for quick reuse in docs and prototypes +- **NEW in v3.26.3: Image Editing** — Transform and edit existing images in your workspace ([#7525](https://github.com/RooCodeInc/Roo-Code/pull/7525)): + - Apply artistic styles like watercolor, oil painting, or sketch + - Upscale and enhance images to higher resolution + - Modify specific aspects while preserving the rest + - Supports PNG, JPG, JPEG, GIF, and WEBP input formats + +PRs: [#7474](https://github.com/RooCodeInc/Roo-Code/pull/7474), [#7492](https://github.com/RooCodeInc/Roo-Code/pull/7492), [#7493](https://github.com/RooCodeInc/Roo-Code/pull/7493), [#7525](https://github.com/RooCodeInc/Roo-Code/pull/7525)) + +> **📚 Documentation**: See [Image Generation - Editing Existing Images](/features/image-generation#editing-existing-images) for transformation examples. + +### Kimi K2-0905: Moonshot's Latest Open Source Model is Live in Roo Code + +We've upgraded to the latest Kimi K2-0905 models across multiple providers (thanks CellenLee!) ([#7663](https://github.com/RooCodeInc/Roo-Code/pull/7663), [#7693](https://github.com/RooCodeInc/Roo-Code/pull/7693)): + +K2-0905 comes with three major upgrades: +- **256K Context Window**: Massive context supporting up to 256K-262K tokens, doubling the previous limit for processing much larger documents and conversations +- **Improved Tool Calling**: Enhanced function calling and tool use capabilities for better agentic workflows +- **Enhanced Front-end Development**: Superior HTML, CSS, and JavaScript generation with modern framework support + +Available through Groq, Moonshot, and Fireworks providers. These models excel at handling large codebases, long conversations, and complex multi-file operations. + +### OpenAI Service Tiers + +We've added support for OpenAI's new Responses API service tiers ([#7646](https://github.com/RooCodeInc/Roo-Code/pull/7646)): + +- **Standard Tier**: Default tier with regular pricing +- **Flex Tier**: 50% discount with slightly longer response times for non-urgent tasks +- **Priority Tier**: Faster response times for time-critical operations + +Select your preferred tier directly in the UI based on your needs and budget. This gives you more control over costs while maintaining access to OpenAI's powerful models. + +> **📚 Documentation**: See [OpenAI Provider Guide](/providers/openai) for detailed tier comparison and pricing. + +### Provider Updates + +* **DeepInfra Provider**: DeepInfra is now available as a model provider with 100+ open-source and frontier models, competitive pricing, and automatic prompt caching for supported models like Qwen3 Coder (thanks Thachnh!) ([#7677](https://github.com/RooCodeInc/Roo-Code/pull/7677)) +* **Kimi K2 Turbo Model**: Added support for the high-speed Kimi K2 Turbo model with 60-100 tokens/sec processing and a 131K token context window (thanks wangxiaolong100!) ([#7593](https://github.com/RooCodeInc/Roo-Code/pull/7593)) +* **Qwen3 235B Thinking Model**: Added support for Qwen3-235B-A22B-Thinking-2507 model with an impressive 262K context window, enabling processing of extremely long documents and large codebases in a single request through the Chutes provider (thanks mohammad154, apple-techie!) ([#7578](https://github.com/RooCodeInc/Roo-Code/pull/7578)) +* **Ollama Turbo Mode**: Added API key support for Turbo mode, enabling faster model execution with datacenter-grade hardware (thanks LivioGama!) ([#7425](https://github.com/RooCodeInc/Roo-Code/pull/7425)) +* **DeepSeek V3.1 on Fireworks**: Added support for DeepSeek V3.1 model in the Fireworks AI provider (thanks dmarkey!) ([#7375](https://github.com/RooCodeInc/Roo-Code/pull/7375)) +* **Provider Visibility**: Static providers with no models are now hidden from the provider list for a cleaner interface ([#7392](https://github.com/RooCodeInc/Roo-Code/pull/7392)) + +### QOL Improvements + +* **Shell Security**: Added shell executable allowlist validation with platform-specific fallbacks for improved command execution safety ([#7681](https://github.com/RooCodeInc/Roo-Code/pull/7681)) +* **Settings Scroll Position**: Settings tabs now remember their individual scroll positions when switching between them (thanks DC-Dancao!) ([#7587](https://github.com/RooCodeInc/Roo-Code/pull/7587)) +* **MCP Resource Auto-Approval**: MCP resource access requests are now automatically approved when auto-approve is enabled, eliminating manual approval steps and enabling smoother automation workflows (thanks m-ibm!) ([#7606](https://github.com/RooCodeInc/Roo-Code/pull/7606)) +* **Message Queue Performance**: Improved message queueing reliability and performance by moving the queue management to the extension host, making the interface more stable ([#7604](https://github.com/RooCodeInc/Roo-Code/pull/7604)) +* **Memory Optimization**: Optimized memory usage for image handling in webview, achieving ~75% reduction in memory consumption ([#7556](https://github.com/RooCodeInc/Roo-Code/pull/7556)) +* **Auto-Approve Toggle UI**: The auto-approve toggle now stays at the bottom when expanded, reducing mouse movements (thanks elianiva, kyle-apex!) ([#7318](https://github.com/RooCodeInc/Roo-Code/pull/7318)) +* **OpenRouter Cache Pricing**: Cache read and write prices are now displayed for OpenRouter models (thanks chrarnoldus!) ([#7176](https://github.com/RooCodeInc/Roo-Code/pull/7176)) +* **Protected Workspace Files**: VS Code workspace configuration files (*.code-workspace) are now protected from accidental modification (thanks thelicato!) ([#7403](https://github.com/RooCodeInc/Roo-Code/pull/7403)) +* **Cleaner Model Display**: Removed dot separator in API configuration dropdown for cleaner appearance ([#7461](https://github.com/RooCodeInc/Roo-Code/pull/7461)) +* **Better Tooltips**: Updated tooltip styling to match VSCode native shadows for improved visual consistency ([#7457](https://github.com/RooCodeInc/Roo-Code/pull/7457)) +* **Model ID Visibility**: API configuration dropdown now shows model IDs alongside profile names for easier identification ([#7423](https://github.com/RooCodeInc/Roo-Code/pull/7423)) +* **Chat UI Cleanup**: Improved consistency in chat input controls and fixed tooltip behavior ([#7436](https://github.com/RooCodeInc/Roo-Code/pull/7436)) +* **Clearer Task Headers**: Removed duplicate cache display in task headers to eliminate confusion ([#7443](https://github.com/RooCodeInc/Roo-Code/pull/7443)) +* **Cloud Tab Rename**: Renamed Account tab to Cloud tab for clarity ([#7558](https://github.com/RooCodeInc/Roo-Code/pull/7558)) +* Improved padding and click targets in the image model picker for easier selection and fewer misclicks ([#7494](https://github.com/RooCodeInc/Roo-Code/pull/7494)) +* Generic default filename for saved images (e.g., `img_`) instead of `mermaid_diagram_` ([#7479](https://github.com/RooCodeInc/Roo-Code/pull/7479)) + +### Bug Fixes + +* **MCP Tool Validation**: Roo now validates MCP tool existence before execution and shows helpful error messages with available tools (thanks R-omk!) ([#7632](https://github.com/RooCodeInc/Roo-Code/pull/7632)) +* **OpenAI API Key Errors**: Clear error messages now display when API keys contain invalid characters instead of cryptic ByteString errors (thanks A0nameless0man!) ([#7586](https://github.com/RooCodeInc/Roo-Code/pull/7586)) +* **Follow-up Questions**: Fixed countdown timer incorrectly reappearing in task history for already answered follow-up questions (thanks XuyiK!) ([#7686](https://github.com/RooCodeInc/Roo-Code/pull/7686)) +* **Moonshot Token Limit**: Resolved issue where Moonshot models were incorrectly limited to 1024 tokens, now properly respects configured limits (thanks wangxiaolong100, greyishsong!) ([#7673](https://github.com/RooCodeInc/Roo-Code/pull/7673)) +* **Zsh Command Safety**: Improved handling of zsh process substitution and glob qualifiers to prevent auto-execution of potentially dangerous commands ([#7658](https://github.com/RooCodeInc/Roo-Code/pull/7658), [#7667](https://github.com/RooCodeInc/Roo-Code/pull/7667)) +* **Traditional Chinese Localization**: Fixed typo in zh-TW locale text (thanks PeterDaveHello!) ([#7672](https://github.com/RooCodeInc/Roo-Code/pull/7672)) +* **Tool Approval Fix**: Fixed an error that occurred when using insert_content and search_and_replace tools on write-protected files - these tools now handle file protection correctly ([#7649](https://github.com/RooCodeInc/Roo-Code/pull/7649)) +* **Configurable Embedding Batch Size**: Fixed an issue where users with API providers having stricter batch limits couldn't use code indexing. You can now configure the embedding batch size (1-2048, default: 400) to match your provider's limits (thanks BenLampson!) ([#7464](https://github.com/RooCodeInc/Roo-Code/pull/7464)) +* **OpenAI-Native Cache Reporting**: Fixed cache usage statistics and cost calculations when using the OpenAI-Native provider with cached content ([#7602](https://github.com/RooCodeInc/Roo-Code/pull/7602)) +* **Special Tokens Handling**: Fixed issue where special tokens would break task processing (thanks pwilkin!) ([#7540](https://github.com/RooCodeInc/Roo-Code/pull/7540)) +* **Security - Symlink Handling**: Fixed security vulnerability where symlinks could bypass rooignore patterns ([#7405](https://github.com/RooCodeInc/Roo-Code/pull/7405)) +* **Security - Default Commands**: Removed potentially unsafe commands (`npm test`, `npm install`, `tsc`) from default allowed list (thanks thelicato, SGudbrandsson!) ([#7404](https://github.com/RooCodeInc/Roo-Code/pull/7404)) +* **Command Validation**: Fixed handling of substitution patterns in command validation ([#7390](https://github.com/RooCodeInc/Roo-Code/pull/7390)) +* **Follow-up Input Preservation**: Fixed issue where user input wasn't preserved when selecting follow-up choices ([#7394](https://github.com/RooCodeInc/Roo-Code/pull/7394)) +* **Mistral Thinking Content**: Fixed validation errors when using Mistral models that send thinking content (thanks Biotrioo!) ([#7106](https://github.com/RooCodeInc/Roo-Code/pull/7106)) +* **Requesty Model Listing**: Fixed model listing for Requesty provider when using custom base URLs (thanks dtrugman!) ([#7378](https://github.com/RooCodeInc/Roo-Code/pull/7378)) +* **Todo List Setting**: Fixed newTaskRequireTodos setting to properly enforce todo list requirements ([#7363](https://github.com/RooCodeInc/Roo-Code/pull/7363)) +* **Image Generation Settings** (v3.26.3): Fixed issue where the saved API key would clear when switching modes ([#7536](https://github.com/RooCodeInc/Roo-Code/pull/7536)) +* ImageGenerationSettings no longer shows a dirty state on first open; the save button only enables after an actual change ([#7495](https://github.com/RooCodeInc/Roo-Code/pull/7495)) +* GPT‑5 reliability improvements: + - Manual condense preserves conversation continuity by correctly handling `previous_response_id` on the next request + - Image inputs work reliably with structured text+image payloads + - Temperature control is shown only for models that support it + - Fewer GPT‑5–specific errors with updated provider definitions and SDK (thanks nlbuescher!) + + ([#7067](https://github.com/RooCodeInc/Roo-Code/pull/7067)) + +### Misc Improvements + +* **Release Image**: Added kangaroo-themed release image generation ([#7546](https://github.com/RooCodeInc/Roo-Code/pull/7546)) +* **Issue Fixer Mode**: Added missing todos parameter in new_task tool usage ([#7391](https://github.com/RooCodeInc/Roo-Code/pull/7391)) +* **Privacy Policy Update**: Updated privacy policy to clarify proxy mode data handling (thanks jdilla1277!) ([#7255](https://github.com/RooCodeInc/Roo-Code/pull/7255)) +* **Dependencies**: Updated drizzle-kit to v0.31.4 ([#5453](https://github.com/RooCodeInc/Roo-Code/pull/5453)) +* **Test Debugging** (v3.26.3): Console logs now visible in tests when using the --no-silent flag (thanks hassoncs!) ([#7467](https://github.com/RooCodeInc/Roo-Code/pull/7467)) +* Release automation: version bumps, changelog updates, and auto-publishing on merge for a faster, more reliable release process ([#7490](https://github.com/RooCodeInc/Roo-Code/pull/7490)) +* New TaskSpawned developer event so integrations can detect when a subtask is created and capture its ID for chaining or monitoring ([#7465](https://github.com/RooCodeInc/Roo-Code/pull/7465)) +* Roo Code Cloud SDK bumped to 0.25.0 ([#7475](https://github.com/RooCodeInc/Roo-Code/pull/7475)) diff --git a/apps/docs/docs/update-notes/v3.27.0.mdx b/apps/docs/docs/update-notes/v3.27.0.mdx new file mode 100644 index 00000000000..8f2a7ae7cf7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.27.0.mdx @@ -0,0 +1,60 @@ +--- +description: Edit or delete messages with instant rollback checkpoints, Kimi K2-0905 provider update, and stability fixes across indexing, grounding, and multi-root workspaces. +keywords: + - roo code 3.27.0 + - release notes + - edit messages + - delete messages + - checkpoints + - auto checkpoints + - rollback + - chutes provider + - kimi k2-0905 + - 256k context + - provider update + - codebase indexing + - multi-root workspace + - mcp config + - slash commands + - gemini grounding + - citations + - openai responses api + - previous_response_id + - vscode terminal profiles + - ci e2e +image: /img/v3.27.0/v3.27.0.png +--- + +# Roo Code 3.27.0 Release Notes (2025-09-05) + +This release adds message editing and deletion with instant rollback checkpoints, updates the Chutes provider with Kimi K2-0905, and improves reliability across indexing, grounding, and multi-root workspaces. + +Roo Code v3.27.0 Release +## Edit and delete messages with instant rollback checkpoints + +Edit or delete any chat message and quickly recover from mistakes using automatic checkpoints (thanks NaccOll!) ([#7447](https://github.com/RooCodeInc/Roo-Code/pull/7447), [#7713](https://github.com/RooCodeInc/Roo-Code/pull/7713)): + +- Edit or delete past messages to correct prompts without restarting the session. +- Automatic checkpoint on every user message enables instant rollback, even when no file diffs exist. +- Review changes with a Checkpoint Restore dialog before applying them. +- Runs in the background and suppresses extra chat noise. + +> 📚 Documentation: See [Checkpoints](/features/checkpoints) and [The Chat Interface](/basic-usage/the-chat-interface). + +## QOL Improvements + +* Welcome screen readability and spacing improvements for faster scanning (#[7682](https://github.com/RooCodeInc/Roo-Code/pull/7682)) + +## Bug Fixes + +* Fixes an issue where indexing very large projects could hit a stack overflow (thanks StarTrai1!) (#[7712](https://github.com/RooCodeInc/Roo-Code/pull/7712)) +* Fixes an issue where terminal launch sometimes failed when VS Code provided the shell path as an array (thanks Amosvcc!) (#[7697](https://github.com/RooCodeInc/Roo-Code/pull/7697)) +* Fixes cases where MCP and slash-command paths in multi-root workspaces resolved to the wrong folder (now uses the active folder CWD) (thanks NaccOll, kfuglsang!) (#[6904](https://github.com/RooCodeInc/Roo-Code/pull/6904)) +* Fixes an issue where Gemini grounding citations sometimes leaked or duplicated (thanks HahaBill!) (#[7434](https://github.com/RooCodeInc/Roo-Code/pull/7434)) +* Fixes an issue where conversation context could be lost when previous_response_id became invalid (now retries with full history) (#[7714](https://github.com/RooCodeInc/Roo-Code/pull/7714)) +* Fixes a CI issue where e2e runs sometimes timed out while downloading VS Code (#[7583](https://github.com/RooCodeInc/Roo-Code/pull/7583)) + +## Provider Updates + +* Chutes: Adds Kimi K2-0905 model with a 256k context window and pricing metadata (thanks pwilkin!) (#[7701](https://github.com/RooCodeInc/Roo-Code/pull/7701)) + > 📚 Documentation: See [Chutes](/providers/chutes) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.0.mdx b/apps/docs/docs/update-notes/v3.28.0.mdx new file mode 100644 index 00000000000..8956b093974 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.0.mdx @@ -0,0 +1,67 @@ +--- +description: Introduces Task Sync (free monitoring) and Roomote Control (Pro remote control) for mobile-friendly task follow-up, plus improved chat editing and multiple bug fixes. +keywords: + - roo code 3.28.0 + - roomote control + - remote control + - chat editing + - vertex ai models +image: /img/v3.28.0/v3.28.0.png +--- + +# Roo Code 3.28.0 Release Notes (2025-09-10) + +This release introduces Task Sync & Roomote Control - check on long-running tasks from your phone and keep them going without being stuck at your desk. Plus enhanced chat editing and multiple bug fixes. + +## Task Sync & Roomote Control + +Introducing our new cloud connectivity features that let you **monitor and control long-running tasks from your phone** - no more waiting at your desk! ([#7799](https://github.com/RooCodeInc/Roo-Code/pull/7799), [#7805](https://github.com/RooCodeInc/Roo-Code/pull/7805), [#7850](https://github.com/RooCodeInc/Roo-Code/pull/7850)): + +> **Important**: Roo Code remains **completely free and open source**. Task Sync and Roomote Control are optional supplementary services that connect your local VS Code to the cloud - all processing still happens in your VS Code instance. + +Roomote Control interface showing real-time task monitoring and control from browser + +**[Task Sync](/roo-code-cloud/task-sync) (FREE for All Users)**: +- **Monitor from Anywhere**: Check on long-running tasks from your phone while away from your desk +- **Real-time Updates**: Live streaming of your local task messages and progress +- **Task History**: Your tasks are saved to the cloud for later reference +- **Cloud Visibility**: View your VS Code tasks from any browser + +**[Roomote Control](/roo-code-cloud/roomote-control)**: +- **Continue Tasks Remotely**: Keep tasks going from your phone - respond to prompts, fix errors, approve actions +- **Full Chat Control**: Interact with the chatbox as though you were in your IDE +- **Start/Stop Tasks**: Launch new tasks or terminate running ones from anywhere +- **Complete Control**: Full bidirectional control of your local VS Code from anywhere + +Task Sync enables monitoring your local development environment from any device. Add Roomote Control for full remote control capabilities - whether you're on another computer, tablet, or smartphone. + + +> **📚 Documentation**: See [Task Sync](/roo-code-cloud/task-sync) and [Roomote Control Guide](/roo-code-cloud/roomote-control). + +## QOL Improvements + +* **Click-to-Edit Chat Messages**: Click directly on any message text to edit it, with ESC to cancel and improved padding consistency ([#7790](https://github.com/RooCodeInc/Roo-Code/pull/7790)) +* **Enhanced Reasoning Display**: The AI's thinking process now shows a persistent timer and displays reasoning content in clean italic text ([#7752](https://github.com/RooCodeInc/Roo-Code/pull/7752)) +* **Manual Auth URL Input**: Users in containerized environments can now paste authentication redirect URLs manually when automatic redirection fails ([#7805](https://github.com/RooCodeInc/Roo-Code/pull/7805)) + +## Bug Fixes + +* **Groq Context Window**: Fixed incorrect display of cached tokens in context window ([#7839](https://github.com/RooCodeInc/Roo-Code/pull/7839)) +* **Chat Message Operations**: Resolved duplication issues when editing messages and "Couldn't find timestamp" errors when deleting ([#7793](https://github.com/RooCodeInc/Roo-Code/pull/7793)) +* **UI Overlap**: Fixed CodeBlock button z-index to prevent overlap with popovers and configuration panels (thanks A0nameless0man!) ([#7783](https://github.com/RooCodeInc/Roo-Code/pull/7783)) +* **Temperature Parameter**: Restored temperature parameter to fix crashes in TabbyApi and ExLlamaV2 backends (thanks drknyt!) ([#7594](https://github.com/RooCodeInc/Roo-Code/pull/7594)) +* **Ollama Model Info**: Fixed max context window display for Ollama models (thanks ItsOnlyBinary!) ([#7679](https://github.com/RooCodeInc/Roo-Code/pull/7679)) + +## Provider Updates + +* **Vertex AI Models**: Added support for 6 new models including DeepSeek-V3, GPT-OSS, and Qwen models, plus the us-south1 region (thanks ssweens!) ([#7727](https://github.com/RooCodeInc/Roo-Code/pull/7727)) +* **DeepSeek Pricing**: Updated to new unified rates effective September 5, 2025 - $0.56/M input tokens, $1.68/M output tokens (thanks NaccOll!) ([#7687](https://github.com/RooCodeInc/Roo-Code/pull/7687)) + +## Misc Improvements + +* **Merge Resolver Mode**: Added GIT_EDITOR environment variable to prevent hanging during non-interactive rebase operations ([#7819](https://github.com/RooCodeInc/Roo-Code/pull/7819)) +* Updated dependency esbuild to v0.25.9 for improved build performance ([#5455](https://github.com/RooCodeInc/Roo-Code/pull/5455)) +* Updated dependency @changesets/cli to v2.29.6 ([#7376](https://github.com/RooCodeInc/Roo-Code/pull/7376)) +* Updated dependency nock to v14.0.10 ([#6465](https://github.com/RooCodeInc/Roo-Code/pull/6465)) +* Updated dependency eslint-config-prettier to v10.1.8 ([#6464](https://github.com/RooCodeInc/Roo-Code/pull/6464)) +* Updated dependency eslint-plugin-turbo to v2.5.6 ([#7764](https://github.com/RooCodeInc/Roo-Code/pull/7764)) diff --git a/apps/docs/docs/update-notes/v3.28.1.mdx b/apps/docs/docs/update-notes/v3.28.1.mdx new file mode 100644 index 00000000000..c6ddc0e1611 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.1.mdx @@ -0,0 +1,29 @@ +--- +description: Small patch release with QOL improvements and Roo Code Cloud announcements. +keywords: + - roo code 3.28.1 + - qol improvements + - cloud features +image: /img/v3.28.1/v3.28.1.png +--- + +# Roo Code 3.28.1 Release Notes (2025-09-11) + +This release adds Roo Code Cloud integration features, improves conversation condensing, and includes various quality-of-life improvements. + +Roo Code v3.28.1 Release +## QOL Improvements + +* **Active Mode Centering**: The mode selector dropdown now automatically centers the active mode when opened ([#7883](https://github.com/RooCodeInc/Roo-Code/pull/7883)) +* **Preserve First Message**: The first message containing slash commands or initial context is now preserved during conversation condensing instead of being replaced with a summary ([#7910](https://github.com/RooCodeInc/Roo-Code/pull/7910)) +* **Checkpoint Initialization Notifications**: You'll now receive clear notifications when checkpoint initialization fails, particularly with nested Git repositories ([#7766](https://github.com/RooCodeInc/Roo-Code/pull/7766)) + +## Bug Fixes + +* **Image Preview Caching**: This ensures the chat always displays the newly generated image instead of a cached version ([#7860](https://github.com/RooCodeInc/Roo-Code/pull/7860)) + +## Misc Improvements + +* **Cloud Task Button**: Added a new button for opening tasks in Roo Code Cloud with QR codes and shareable URLs ([#7572](https://github.com/RooCodeInc/Roo-Code/pull/7572)) +* **Telemetry Default**: Posthog telemetry is now enabled by default with easy opt-out options in settings ([#7909](https://github.com/RooCodeInc/Roo-Code/pull/7909)) +* **Roo Code Cloud Announcement**: Updated in-app announcements about Roo Code Cloud features, localized in 18 languages ([#7914](https://github.com/RooCodeInc/Roo-Code/pull/7914)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.10.mdx b/apps/docs/docs/update-notes/v3.28.10.mdx new file mode 100644 index 00000000000..827e622ec38 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.10.mdx @@ -0,0 +1,44 @@ +--- +description: Claude 4.5 Sonnet support, GPT-5 LiteLLM fix, and UI improvements. +keywords: + - roo code 3.28.10 + - claude 4.5 sonnet + - gpt-5 litellm + - bug fixes +image: /img/v3.28.10/v3.28.10.png +--- + +# Roo Code 3.28.10 Release Notes (2025-09-29) + +This release adds support for Claude 4.5 Sonnet across all providers, fixes GPT-5 compatibility with LiteLLM, and includes UI improvements. + +Roo Code v3.28.10 Release + +## Claude 4.5 Sonnet Support + +We've added support for Anthropic's latest Claude 4.5 Sonnet model across all Claude-supporting providers ([#8368](https://github.com/RooCodeInc/Roo-Code/pull/8368)). + +According to [Anthropic's announcement](https://www.anthropic.com/news/claude-sonnet-4-5), Claude 4.5 Sonnet is: + +- State-of-the-art on SWE-bench Verified, maintaining focus for more than 30 hours on complex, multi-step tasks +- Showing a significant leap forward on computer use with 61.4% on OSWorld benchmark (up from 42.2% just four months ago) +- Delivering substantial gains in reasoning, math, and domain-specific knowledge across finance, law, medicine, and STEM + +Claude 4.5 Sonnet model selection + +The model is now available in the model selection dropdown for all supported providers. + +## Bug Fixes + +* **AWS Bedrock Claude Sonnet 4.5**: Corrected model identifier for Claude Sonnet 4.5 on AWS Bedrock (thanks sunhyung!) ([#8371](https://github.com/RooCodeInc/Roo-Code/pull/8371)) +* **GPT-5 LiteLLM Compatibility**: Fixed GPT-5 models failing with LiteLLM provider by using correct `max_completion_tokens` parameter (thanks lx1054331851!) ([#6980](https://github.com/RooCodeInc/Roo-Code/pull/6980)) + +## QOL Improvements + +* **Chat Icon Sizing**: Chat interface icons now maintain consistent size in limited space ([#8343](https://github.com/RooCodeInc/Roo-Code/pull/8343)) + +## Misc Improvements + +* **Telemetry Tracking**: Enhanced analytics to track when users change telemetry settings ([#8339](https://github.com/RooCodeInc/Roo-Code/pull/8339)) +* **Website Testimonials**: Updated website with enhanced testimonials section ([#8360](https://github.com/RooCodeInc/Roo-Code/pull/8360)) +* **Contributor Recognition**: Improved contributor badge workflow with automated cache refreshing ([#8083](https://github.com/RooCodeInc/Roo-Code/pull/8083)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.11.mdx b/apps/docs/docs/update-notes/v3.28.11.mdx new file mode 100644 index 00000000000..95a339aacae --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.11.mdx @@ -0,0 +1,18 @@ +--- +description: Fixes Claude Sonnet 4.5 model identifiers for AWS Bedrock and OpenRouter to prevent model ID errors. +keywords: + - roo code 3.28.11 + - bug fixes + - bedrock + - claude sonnet 4.5 + - openrouter +--- + +# Roo Code 3.28.11 Release Notes (2025-09-29) + +This patch fixes model identifier issues for Claude Sonnet 4.5 across AWS Bedrock and OpenRouter, so prompts run reliably without ID or selection errors. + +## Bug Fixes + +* AWS Bedrock: Use the correct Claude Sonnet 4.5 model ID so prompts run without “model not found” errors (thanks sunhyung!) ([#8372](https://github.com/RooCodeInc/Roo-Code/pull/8372)) +* OpenRouter: Correct Claude Sonnet 4.5 model ID format to align with naming and prevent selection/API mismatches ([#8373](https://github.com/RooCodeInc/Roo-Code/pull/8373)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.12.mdx b/apps/docs/docs/update-notes/v3.28.12.mdx new file mode 100644 index 00000000000..ec30cc2e9d1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.12.mdx @@ -0,0 +1,20 @@ +--- +description: Fixes Anthropic Sonnet 4.5 model ID and adds Bedrock 1M context checkbox. +keywords: + - roo code 3.28.12 + - anthropic sonnet 4.5 + - bedrock 1m context + - bug fixes +--- + +# Roo Code 3.28.12 Release Notes (2025-09-29) + +This release fixes the Anthropic Sonnet 4.5 model ID and adds Bedrock 1M context checkbox support. + +## Bug Fixes + +* **Anthropic Sonnet 4.5 Model ID**: Corrects the model ID to the official `claude-sonnet-4-5`, resolving API errors when using Claude Sonnet 4.5 ([#8384](https://github.com/RooCodeInc/Roo-Code/pull/8384)) + +## QOL Improvements + +* **Bedrock 1M Context Checkbox**: Adds checkbox to enable 1M context window support for Claude Sonnet 4 and 4.5 on Bedrock, providing more flexibility for large-scale projects ([#8384](https://github.com/RooCodeInc/Roo-Code/pull/8384)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.13.mdx b/apps/docs/docs/update-notes/v3.28.13.mdx new file mode 100644 index 00000000000..0ae2914b097 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.13.mdx @@ -0,0 +1,17 @@ +--- +description: Fixes Vertex AI Sonnet 4.5 configuration and removes AWS Bedrock topP to improve reliability. +keywords: + - roo code 3.28.13 + - new features + - bug fixes +--- + +# Roo Code 3.28.13 Release Notes (2025-09-29) + +This patch improves provider reliability: Vertex AI Sonnet 4.5 now works with the correct model ID and AWS Bedrock requests avoid conflicts by removing topP. + + +## Bug Fixes + +* Vertex AI: Fix Sonnet 4.5 model configuration so requests no longer 404; sets the correct default ID and enables computer‑use via LiteLLM (thanks nickcatal!) ([#8391](https://github.com/RooCodeInc/Roo-Code/pull/8391)) +* AWS Bedrock: Remove topP parameter to avoid conflicts with extended thinking, improving reliability for streaming and non‑streaming responses (thanks ronyblum!) ([#8388](https://github.com/RooCodeInc/Roo-Code/pull/8388)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.14.mdx b/apps/docs/docs/update-notes/v3.28.14.mdx new file mode 100644 index 00000000000..78b7ca25266 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.14.mdx @@ -0,0 +1,27 @@ +--- +description: Adds GLM-4.6 support for the z.ai provider with a 200k context window and availability across international and mainland APIs. +keywords: + - roo code 3.28.14 + - new features + - bug fixes +image: /img/v3.28.14/v3.28.14.png +--- + +# Roo Code 3.28.14 Release Notes (2025-09-30) + +This patch adds GLM-4.6 support for the z.ai provider, enabling a 200k context window and availability across both international and mainland APIs. + +Roo Code v3.28.14 Release + +## Provider Updates + +### GLM‑4.6 on Z.ai + +We’ve added the GLM‑4.6 model to the Z.ai provider (thanks dmarkey!) ([#8408](https://github.com/RooCodeInc/Roo-Code/pull/8408)). What you get: + +- 200k (204,800) token context window for longer files and multi‑turn conversations +- Better real‑world coding performance, including cleaner front‑end output +- Improved reasoning with tool‑use support for steadier multi‑step tasks +- Stronger agent behavior for search/tool workflows + +To use it, select GLM‑4.6 under the Z.ai provider in Settings. diff --git a/apps/docs/docs/update-notes/v3.28.15.mdx b/apps/docs/docs/update-notes/v3.28.15.mdx new file mode 100644 index 00000000000..a4e778e8329 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.15.mdx @@ -0,0 +1,40 @@ +--- +description: Adds new Chutes models, finalized cloud reasoning messages, deprecates Grok 4 Fast, and includes fixes and a Vite security update. +keywords: + - roo code 3.28.15 + - new models + - bug fixes + - security update +image: /img/v3.28.15/v3.28.15.png +--- + +# Roo Code 3.28.15 Release Notes (2025-10-03) + +This release adds new Chutes models, shows finalized reasoning in cloud tasks, deprecates Grok 4 Fast, and includes UI fixes and security updates. + +Roo Code v3.28.15 Release + +## QOL Improvements + +* Include reasoning messages in cloud task histories so you can review complete thinking after runs ([#8401](https://github.com/RooCodeInc/Roo-Code/pull/8401)) +* Add structured data to the homepage to improve SEO and discoverability ([#8427](https://github.com/RooCodeInc/Roo-Code/pull/8427)) + +## Bug Fixes + +* “Reset and Continue” now truly resets cost tracking; subsequent requests only count new costs (thanks alecoot!) ([#6890](https://github.com/RooCodeInc/Roo-Code/pull/6890)) +* Prompts settings: Save button activates on first change and preserves empty strings (thanks beccare!) ([#8267](https://github.com/RooCodeInc/Roo-Code/pull/8267)) +* Remove overeager “unsaved changes” dialog in Settings when nothing changed ([#8410](https://github.com/RooCodeInc/Roo-Code/pull/8410)) +* Show the Send button when only images are attached ([#8423](https://github.com/RooCodeInc/Roo-Code/pull/8423)) + +## Provider Updates + +* Chutes: Add new models for speed, longer context, and multimodal reasoning (DeepSeek V3.1 Terminus, V3.1 turbo, V3.2-Exp; GLM‑4.6‑FP8; Qwen3‑VL‑235B‑A22B‑Thinking) (thanks mohammad154!) ([#8467](https://github.com/RooCodeInc/Roo-Code/pull/8467)) +* Gemini: Remove unsupported free “2.5 Flash Image Preview”; paid path unaffected (thanks SannidhyaSah!) ([#8359](https://github.com/RooCodeInc/Roo-Code/pull/8359)) +* Bedrock: Treat Claude Sonnet 4 as 1M context to reduce truncation and mis-selection ([#8421](https://github.com/RooCodeInc/Roo-Code/pull/8421)) +* Roo Code Cloud: Deprecate “Grok 4 Fast”; show warning if selected and hide when not selected ([#8481](https://github.com/RooCodeInc/Roo-Code/pull/8481)) + +## Misc Improvements + +* Add internal UsageStats schema and type to enable future dashboards and clearer usage insights ([#8441](https://github.com/RooCodeInc/Roo-Code/pull/8441)) +* Security: Update Vite dev server to 6.3.6 to address path traversal (GHSA-g4jq-h2w9-997c) (thanks app/renovate!) ([#7838](https://github.com/RooCodeInc/Roo-Code/pull/7838)) +* Dependency: Update glob to 11.0.3 for stability (thanks app/renovate!) ([#7767](https://github.com/RooCodeInc/Roo-Code/pull/7767)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.16.mdx b/apps/docs/docs/update-notes/v3.28.16.mdx new file mode 100644 index 00000000000..0283376cc2f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.16.mdx @@ -0,0 +1,32 @@ +--- +description: Adds Claude Sonnet 4.5 1M context for Claude Code, improves Cloud task routing telemetry, and fixes Ollama/LM Studio visibility. +keywords: + - roo code 3.28.16 + - new features + - bug fixes +image: /img/v3.28.16/v3.28.16.png +--- + +# Roo Code 3.28.16 Release Notes (2025-10-10) + +This release adds a 1M‑context variant for Claude Sonnet 4.5 in Claude Code, improves Cloud task routing telemetry, and fixes Ollama/LM Studio provider visibility. + +Roo Code v3.28.16 Release + +## 1M context for Claude Sonnet 4.5 in Claude Code + +We've added a 1M‑token context variant of Claude Sonnet 4.5 to Claude Code (thanks ColbySerpa!) ([#8586](https://github.com/RooCodeInc/Roo-Code/pull/8586)): + +- Fit very large projects and long logs with fewer truncations. +- Select it via the [1m] suffix when choosing the model; reduces splitting and manual chunking. + +This makes it easier to work across big repos and lengthy traces without losing context. + +## QOL Improvements + +* Identify Cloud tasks in the extension bridge to improve diagnostics, logging, and future UI behavior ([#8539](https://github.com/RooCodeInc/Roo-Code/pull/8539)) +* Add the parent task ID in telemetry to improve traceability ([#8532](https://github.com/RooCodeInc/Roo-Code/pull/8532)) + +## Bug Fixes + +* Make Ollama and LM Studio appear as dynamic providers in provider lists so they can be selected and configured like others ([#8511](https://github.com/RooCodeInc/Roo-Code/pull/8511)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.17.mdx b/apps/docs/docs/update-notes/v3.28.17.mdx new file mode 100644 index 00000000000..1e2879a6ae1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.17.mdx @@ -0,0 +1,20 @@ +--- +description: Adds Claude Haiku 4.5 model across Anthropic, Bedrock, and Vertex with 200k context and prompt caching, plus a zh‑TW UI label fix. +keywords: + - roo code 3.28.17 + - provider updates + - qol improvements +--- + +# Roo Code 3.28.17 Release Notes (2025-10-15) + +This release adds Claude Haiku 4.5 (200k context, prompt caching) and clarifies the zh‑TW “Run command” label. + + +## QOL Improvements + +* Clarify the zh‑TW “Run command” label to match the tooltip and reduce confusion (thanks PeterDaveHello!) ([#8631](https://github.com/RooCodeInc/Roo-Code/pull/8631)) + +## Provider Updates + +* Add Claude Haiku 4.5 across Anthropic, AWS Bedrock, and Vertex AI with 200k context, up to 64k output tokens, images, and prompt caching support ([#8673](https://github.com/RooCodeInc/Roo-Code/pull/8673)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.18.mdx b/apps/docs/docs/update-notes/v3.28.18.mdx new file mode 100644 index 00000000000..70b1417c9f0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.18.mdx @@ -0,0 +1,29 @@ +--- +description: Fixes grey screen UI crashes, improves image generation defaults, and updates provider settings. +keywords: + - roo code 3.28.18 + - bug fixes + - image generation + - provider updates +--- +# Roo Code 3.28.18 Release Notes (2025-10-17) + +This patch fixes the grey screen issue, improves image generation defaults, and updates provider settings. + + +## Grey Screen of Death Fix + +This should fix grey screens caused by long context task sessions ([#8696](https://github.com/RooCodeInc/Roo-Code/pull/8696)). + +## QOL Improvements + +* Image generation model selection update: defaults to Gemini 2.5 Flash Image; adds OpenAI GPT‑5 Image and GPT‑5 Image Mini; clearer settings dropdown (thanks chrarnoldus!) ([#8698](https://github.com/RooCodeInc/Roo-Code/pull/8698)) + +## Bug Fixes + +* Editor targeting fix: avoids editing read‑only git diff views; edits the actual file (thanks hassoncs!) ([#8676](https://github.com/RooCodeInc/Roo-Code/pull/8676)) + +## Provider Updates + +* Bedrock: add versioned user agent for per‑version metrics and error tracking; no action needed (thanks ajjuaire!) ([#8663](https://github.com/RooCodeInc/Roo-Code/pull/8663)) +* Z AI: only two coding endpoints (International/China) are supported; defaults to International; legacy non‑coding endpoints unsupported ([#8693](https://github.com/RooCodeInc/Roo-Code/pull/8693)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.2.mdx b/apps/docs/docs/update-notes/v3.28.2.mdx new file mode 100644 index 00000000000..9166db1aa3e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.2.mdx @@ -0,0 +1,32 @@ +--- +description: Improves auto-approve UI, adds Qwen3 Next 80B A3B models via chutes, and fixes @-mentions, nested repo warning, authenticated Ollama tags, and message queue performance. +keywords: + - roo code 3.28.2 + - new features + - bug fixes +image: /img/v3.28.2/v3.28.2.png +--- + +# Roo Code 3.28.2 Release Notes (2025-09-14) + +This release improves the auto-approve UI, adds Qwen3 Next 80B A3B models via the chutes provider, and fixes issues with @-mentions, nested git warnings, authenticated Ollama tag fetches, and message queue performance. + +Roo Code v3.28.2 Release +## QOL Improvements + +* Smaller and more subtle auto-approve UI (thanks brunobergher!) ([#7894](https://github.com/RooCodeInc/Roo-Code/pull/7894)) +* Disable Roomote Control on logout for better security ([#7976](https://github.com/RooCodeInc/Roo-Code/pull/7976)) +* Add padding to the cloudview for better visual spacing ([#7954](https://github.com/RooCodeInc/Roo-Code/pull/7954)) + +## Bug Fixes + +* Fix message queue re-queue loop in Task.ask() that could degrade performance ([#7823](https://github.com/RooCodeInc/Roo-Code/pull/7823)) +* Restrict @-mention parsing to line-start or whitespace boundaries to prevent false triggers ([#7876](https://github.com/RooCodeInc/Roo-Code/pull/7876)) +* Make nested git repository warning persistent with path info for better visibility ([#7885](https://github.com/RooCodeInc/Roo-Code/pull/7885)) +* Include API key in Ollama /api/tags requests to support authenticated instances (thanks ItsOnlyBinary!) ([#7903](https://github.com/RooCodeInc/Roo-Code/pull/7903)) +* Preserve original first message context during conversation condensing for more coherent long chats ([#7939](https://github.com/RooCodeInc/Roo-Code/pull/7939)) + +## Provider Updates + +* Add Qwen3 Next 80B A3B models to the chutes provider ([#7948](https://github.com/RooCodeInc/Roo-Code/pull/7948)) + > See [Chutes provider](/providers/chutes) for setup and usage. \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.3.mdx b/apps/docs/docs/update-notes/v3.28.3.mdx new file mode 100644 index 00000000000..44d8be4eadd --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.3.mdx @@ -0,0 +1,42 @@ +--- +description: This patch adds UI polish and shortcuts, improves provider configuration, and fixes issues affecting Gemini, Claude Code tools, the editor context menu, and C# parsing. +keywords: + - roo code 3.28.3 + - new features + - bug fixes +image: /img/v3.28.3/v3.28.3.png +--- + +# Roo Code 3.28.3 Release Notes (2025-09-16) + +This release improves slash command discoverability, adds a global pause for auto-approve, introduces an "Add to Context" shortcut, refines the composer UI, adds region-aware Z.ai plans, and fixes Gemini bracket rendering, Claude Code tool filtering, an editing context menu issue, embedder key errors, and C# parsing. + +Roo Code v3.28.3 Release +## QOL Improvements + +* Temporarily pause auto-approve with a global “Enabled” switch so you can pause without losing your per-toggle selections; the UI clearly distinguishes global vs. per-toggle states ([#8024](https://github.com/RooCodeInc/Roo-Code/pull/8024)) +* Slash commands management moved to Settings > Slash Commands with a gear shortcut from the chat popover; the popover is now selection-only for quick use ([#7988](https://github.com/RooCodeInc/Roo-Code/pull/7988)) +* Keyboard shortcut to quickly “Add to Context” (macOS: Cmd+Y; Windows/Linux: Ctrl+Y) ([#7908](https://github.com/RooCodeInc/Roo-Code/pull/7908)) +* Add Image button moved inside the text area (top-right) and Enhance Prompt positioned above Send to reduce pointer travel and clarify layout ([#7989](https://github.com/RooCodeInc/Roo-Code/pull/7989)) +* Composer action buttons now appear only when there’s text input, reducing visual clutter and accidental clicks ([#7987](https://github.com/RooCodeInc/Roo-Code/pull/7987)) +* New Task button icon switched from “+” to a compose/pencil icon to better match its purpose and align with codicon standards ([#7942](https://github.com/RooCodeInc/Roo-Code/pull/7942)) + +## Bug Fixes + +* Restore square brackets in Gemini-generated code so arrays/indexers render correctly (e.g., `string[] items = new string[5];`) (thanks AtkinsDynamicObjects!) ([#7577](https://github.com/RooCodeInc/Roo-Code/pull/7577)) +* Filter out Claude Code built-in tools (ExitPlanMode, BashOutput, KillBash) to avoid erroneous tool calls and distracting warnings (thanks juliettefournier-econ!) ([#7818](https://github.com/RooCodeInc/Roo-Code/pull/7818)) +* Fix an issue where the context menu could be obscured while editing messages; the menu stays visible and usable across screen sizes (thanks NaccOll, mini2s!) ([#7951](https://github.com/RooCodeInc/Roo-Code/pull/7951)) +* Surface a clear, actionable error instead of cryptic ByteString conversion failures during code indexing when API keys contain invalid/special characters (thanks PavelA85!) ([#8008](https://github.com/RooCodeInc/Roo-Code/pull/8008)) +* Correct C# tree-sitter query so C# files are parsed and indexed properly, improving semantic search, navigation, and context quality (thanks mubeen-zulfiqar, vadash, Source-GuyCoder!) ([#7813](https://github.com/RooCodeInc/Roo-Code/pull/7813)) + +## Misc Improvements + +* Dependency update: bump axios to 1.12.0 to improve reliability and security of HTTP requests (thanks dependabot!) ([#7963](https://github.com/RooCodeInc/Roo-Code/pull/7963)) + +## Provider Updates + +* Z.ai coding plan support with region-aware options (International/China), automatic base URL selection, and sensible defaults to simplify setup (thanks chrarnoldus!) ([#8003](https://github.com/RooCodeInc/Roo-Code/pull/8003)) + +## Documentation Updates + +* Contributor workflow: internal CONTRIBUTING templates refined for clearer bug reports and feature requests (no user-facing docs change) ([#8014](https://github.com/RooCodeInc/Roo-Code/pull/8014)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.4.mdx b/apps/docs/docs/update-notes/v3.28.4.mdx new file mode 100644 index 00000000000..b3f50120db8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.4.mdx @@ -0,0 +1,38 @@ +--- +description: Introducing the Supernova model, redesigned message feed, and improved auto-approve UI. +keywords: + - roo code 3.28.4 + - supernova model + - message feed redesign + - responsive auto-approve +image: /img/v3.28.4/v3.28.4.png +--- + +# Roo Code 3.28.4 Release Notes (2025-09-19) + +This release introduces the Supernova model to Roo Code Cloud, enhances the user interface with a redesigned message feed, and improves workflow efficiency with responsive auto-approve. + +Roo Code v3.28.4 Release +## Supernova Model - FREE Access + +We've added the new **roo/code-supernova** stealth model to the Roo Code Cloud provider - **completely FREE during the promotional period** ([#8175](https://github.com/RooCodeInc/Roo-Code/pull/8175)): + +- **FREE ACCESS**: No API keys, no costs - completely free through Roo Code Cloud +- **Advanced Capabilities**: Powerful AI model with **image support** for multimodal coding tasks +- **Not So Massive Context**: 200,000 token context window with 16,384 max output +- **Stealth Performance**: Experience cutting-edge model performance with the code-supernova variant +- **Zero Setup**: Just select it from your Roo Code Cloud provider - no configuration needed + +Select the **FREE** code-supernova model from the Roo provider to start using this powerful new capability at **no cost**. + +> **Documentation**: See the [Roo Code Router guide](/providers/roo-code-router) for model selection details. + +## QOL Improvements + +* **Redesigned Message Feed**: Enjoy a cleaner, more readable chat interface with improved visual hierarchy that helps you focus on what matters ([#7985](https://github.com/RooCodeInc/Roo-Code/pull/7985)) +* **Responsive Auto-Approve**: The auto-approve dropdown now adapts to different window sizes with smart 1-2 column layouts, and tooltips show all enabled actions without truncation ([#8032](https://github.com/RooCodeInc/Roo-Code/pull/8032)) +* **Network Resilience**: Telemetry data now automatically retries on network failures, ensuring analytics and diagnostics aren't lost during connectivity issues ([#7597](https://github.com/RooCodeInc/Roo-Code/pull/7597)) + +## Bug Fixes + +* **Keyboard Shortcut**: Fixed the command+y shortcut in Nightly builds, restoring quick content addition to context ([#8070](https://github.com/RooCodeInc/Roo-Code/pull/8070)) diff --git a/apps/docs/docs/update-notes/v3.28.5.mdx b/apps/docs/docs/update-notes/v3.28.5.mdx new file mode 100644 index 00000000000..d8d3a46be37 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.5.mdx @@ -0,0 +1,32 @@ +--- +description: Bug fixes for todo lists and Vertex AI pricing, plus QOL improvements. +keywords: + - roo code 3.28.5 + - bug fixes + - provider updates +image: /img/v3.28.5/v3.28.5.png +--- + +# Roo Code 3.28.5 Release Notes (2025-09-20) + +This release includes bug fixes for todo lists and Vertex AI pricing, improved code block wrapping, and SambaNova model updates. + +Roo Code v3.28.5 Release +## QOL Improvements + +* **Code blocks wrap by default**: Code blocks now wrap text by default, improving readability when viewing long commands and code snippets ([#8194](https://github.com/RooCodeInc/Roo-Code/pull/8194)) + +## Bug Fixes + +* **Todo list compatibility**: Todo lists now display correctly when AI models return checklists with dash prefixes (`- [ ] Task`), improving compatibility with various models (thanks NaccOll!) ([#8055](https://github.com/RooCodeInc/Roo-Code/pull/8055)) +* **Vertex AI pricing accuracy**: Fixed local cost calculation for Gemini models via Vertex AI to properly apply tiered pricing and cache discounts, ensuring displayed costs match actual Google Cloud billing (thanks ikumi3!) ([#8018](https://github.com/RooCodeInc/Roo-Code/pull/8018)) +* **Conversation history preservation**: Fixed duplicate/overlaid tasks and lost conversation history when canceling during model responses, especially during reasoning phases ([#8171](https://github.com/RooCodeInc/Roo-Code/pull/8171)) + +## Provider Updates + +* **SambaNova models**: Added DeepSeek-V3.1 and GPT-OSS 120B to the SambaNova provider (thanks snova-jorgep!) ([#8186](https://github.com/RooCodeInc/Roo-Code/pull/8186)) + +## Misc Improvements + +* **Code Supernova announcement**: Added announcement for the new Code Supernova model with improved authentication flow and landing page redirection ([#8197](https://github.com/RooCodeInc/Roo-Code/pull/8197)) +* **Privacy policy update**: Updated privacy policy to include provisions for optional marketing emails with clear opt-out options (thanks jdilla1277!) ([#8180](https://github.com/RooCodeInc/Roo-Code/pull/8180)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.6.mdx b/apps/docs/docs/update-notes/v3.28.6.mdx new file mode 100644 index 00000000000..20ec1a2793e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.6.mdx @@ -0,0 +1,40 @@ +--- +description: GPT-5-Codex arrives in OpenAI Native alongside localization tooling and UI refinements. +keywords: + - roo code 3.28.6 + - gpt-5-codex + - localization + - bug fixes + - release notes +image: /img/v3.28.6/v3.28.6.png +--- + +# Roo Code 3.28.6 Release Notes (2025-09-23) + +This release adds GPT-5-Codex to OpenAI Native, sharpens localization coverage, and smooths UI workflows across languages. + +Roo Code v3.28.6 Release + +## GPT-5-Codex lands in OpenAI Native + +- **Work with repository-scale context**: Keep multi-file specs and long reviews in a single thread thanks to a 400k token window. +- **Reuse prompts faster and include visuals**: Prompt caching and image support help you iterate on UI fixes without re-uploading context. +- **Let the model adapt its effort**: GPT-5-Codex automatically balances quick responses for simple questions with deeper reasoning on complex builds. + +This gives teams a higher-capacity OpenAI option without extra configuration.[#8260](https://github.com/RooCodeInc/Roo-Code/pull/8260): + + +> **📚 Documentation**: See [OpenAI Provider Guide](/providers/openai) for capabilities and setup guidance. + +## QOL Improvements + +* **Keyboard shortcut for auto-approve**: Toggle approvals with Cmd/Ctrl+Alt+A from anywhere in the editor, keeping focus on the code review flow (via [#8214](https://github.com/RooCodeInc/Roo-Code/pull/8214)) +* **Cleaner code blocks**: Removed the snippet language picker and word-wrap toggle so wrapped code is easier to read and copy across locales (via [#8208](https://github.com/RooCodeInc/Roo-Code/pull/8208)) +* **More readable reasoning blocks**: Added spacing before section headers inside reasoning transcripts to make long explanations easier to scan (via [#7868](https://github.com/RooCodeInc/Roo-Code/pull/7868)) +* **Translation checks cover package settings**: The missing translation finder now validates package.nls files for 17 locales to catch untranslated VS Code strings earlier (via [#8255](https://github.com/RooCodeInc/Roo-Code/pull/8255)) + +## Bug Fixes + +* **Bare-metal evals stay signed in**: Roo provider tokens refresh automatically and the local evals app binds to port 3446 for predictable scripts (via [#8224](https://github.com/RooCodeInc/Roo-Code/pull/8224)) +* **Checkpoint text stays on one line**: Prevented multi-line wrapping in languages such as Chinese, Korean, Japanese, and Russian so the checkpoint UI stays compact (via [#8207](https://github.com/RooCodeInc/Roo-Code/pull/8207); reported in [#8206](https://github.com/RooCodeInc/Roo-Code/issues/8206)) +* **Ollama respects Modelfile num_ctx**: Roo now defers to your Modelfile’s context window to avoid GPU OOMs while still allowing explicit overrides when needed (via [#7798](https://github.com/RooCodeInc/Roo-Code/pull/7798); reported in [#7797](https://github.com/RooCodeInc/Roo-Code/issues/7797)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.7.mdx b/apps/docs/docs/update-notes/v3.28.7.mdx new file mode 100644 index 00000000000..7a379486c16 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.7.mdx @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.28.7 adds a Cloud account switcher, improves conversation readability with collapsible thinking blocks, fixes a checkpoint popover issue, and updates the Chutes provider. +keywords: + - roo code 3.28.7 + - cloud account switcher + - collapsible thinking blocks + - checkpoints + - chutes provider +image: /img/v3.28.7/v3.28.7.png +--- + +# Roo Code 3.28.7 Release Notes (2025-09-23) + +One-click Cloud account switching, cleaner conversations with collapsible thinking blocks, a checkpoint UI fix, and a new GLM-4.5-turbo model in Chutes. + +Roo Code v3.28.7 Release +## QOL Improvements + +* Cloud account switcher: Easily change account context without leaving your current view ([#8223](https://github.com/RooCodeInc/Roo-Code/pull/8223)) +* Collapse thinking messages by default: Conversations are easier to scan; configurable via Settings → UI ([#8254](https://github.com/RooCodeInc/Roo-Code/pull/8254)) + +## Bug Fixes + +* Checkpoint restore popover remains anchored and interactive when moving from the saved checkpoint indicator to the menu, preventing flicker/misalignment and accidental closing (thanks NaccOll!) ([#8220](https://github.com/RooCodeInc/Roo-Code/pull/8220)) + +## Provider Updates + +* Chutes: add `zai-org/GLM-4.5-turbo` model with a 128K context window and competitive pricing (approx. $1/M input, $3/M output), enabling longer prompts with fast inference (thanks mugnimaestra!) ([#8157](https://github.com/RooCodeInc/Roo-Code/pull/8157)) + > See provider setup at [Chutes](/providers/chutes). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.8.mdx b/apps/docs/docs/update-notes/v3.28.8.mdx new file mode 100644 index 00000000000..6446d4f9f14 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.8.mdx @@ -0,0 +1,43 @@ +--- +description: Bug fixes for tool usage errors and context condensing, plus new free models and cloud account management improvements. +keywords: + - roo code 3.28.8 + - tool usage fixes + - context condensing + - free models + - cloud accounts +image: /img/v3.28.8/v3.28.8.png +--- + +# Roo Code 3.28.8 Release Notes (2025-09-25) + +This release fixes critical GPT-5-Codex tool usage errors, improves context condensing, and adds new free models to the Roo provider. + +Roo Code v3.28.8 Release + +## Fixed: GPT-5-Codex errors and more! + +We've resolved the situation where LLMs would sometimes not make tool calls in their response which improves Roo's overall flow. ([#8292](https://github.com/RooCodeInc/Roo-Code/pull/8292)) + +- **GPT-5-Codex Response Fix**: Fixes the issue where the model `gpt-5-codex` (and less frequently other models) would send a response with no assistant message +- **Completion Tool Reliability**: This fix eliminates some situations where the LLM would repeat its last text message when the attempt_completion tool was called +- **Tool Call Consistency**: Fixes where the LLM would sometimes respond without a tool call + +## QOL Improvements + +* **Cloud Account Management**: Added account switcher and "Create Team Account" option for logged-in users, making it easier to manage multiple accounts ([#8291](https://github.com/RooCodeInc/Roo-Code/pull/8291)) +* **Social Media Sharing**: Improved OpenGraph images for better preview cards when sharing Roo Code links on Slack, Twitter, and Facebook ([#8285](https://github.com/RooCodeInc/Roo-Code/pull/8285)) + +## Bug Fixes + +* **Context Condensing**: Fixed an issue where the initial task request was being lost during context condensing, causing Roo to try to re-answer the original task ask when resuming after condensing ([#8298](https://github.com/RooCodeInc/Roo-Code/pull/8298)) + +## Provider Updates + +* **New Free Models**: Added two more free models to the Roo provider ([#8304](https://github.com/RooCodeInc/Roo-Code/pull/8304)): + - xai/grok-4-fast + - deepseek/deepseek-chat-v3.1 + +## Misc Improvements + +* **Infrastructure**: Set port 3446 for web-evals service in production mode ([#8288](https://github.com/RooCodeInc/Roo-Code/pull/8288)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.9.mdx b/apps/docs/docs/update-notes/v3.28.9.mdx new file mode 100644 index 00000000000..8fb86000266 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.9.mdx @@ -0,0 +1,41 @@ +--- +description: Upgrade Supernova to a 1M‑token context, plus onboarding/UI improvements and cleaner prompts. +keywords: + - roo code 3.28.9 + - new features + - bug fixes +image: /img/v3.28.9/v3.28.9.png +--- + +# Roo Code 3.28.9 Release Notes (2025-09-26) + +This release upgrades Supernova to a 1M‑token context, improves onboarding and UI clarity, and cleans up prompts for leaner outputs. + +Roo Code v3.28.9 Release + +## Supernova upgraded to 1M-token context + +Supernova is now roo/code-supernova-1-million with a 1,000,000‑token context window. Existing settings migrate automatically; no action needed: + +- Work across very large files and long multi‑step conversations with far fewer truncations +- More stable execution on big refactors and long file read/write loops +- Auto‑migrate: previous roo/code-supernova maps to roo/code-supernova-1-million + +Quick start: https://app.roocode.com/l/supernova + +## QOL Improvements + +* **Reset logs you out of Roo Code Cloud**: Reset now also logs you out of Roo Code Cloud for a truly clean slate; the reset still completes even if logout fails. ([#8312](https://github.com/RooCodeInc/Roo-Code/pull/8312)) +* **Measure engagement with upsell messages**: Telemetry for DismissibleUpsell tracks dismiss vs click (upsellId only) to tune messaging and reduce noise; no user-facing behavior change. ([#8309](https://github.com/RooCodeInc/Roo-Code/pull/8309)) +* **Discover Roo Code Cloud faster in the welcome screen**: Experiment to show the Roo provider on the welcome screen (localized strings with click telemetry) to speed up setup. ([#8317](https://github.com/RooCodeInc/Roo-Code/pull/8317)) +* **Cleaner prompts (no “thinking” tags)**: Removes <thinking> tags for cleaner output, fewer tokens, and better model compatibility; preserves the plain‑language rule to confirm tool success. ([#8319](https://github.com/RooCodeInc/Roo-Code/pull/8319)) +* **Simpler Requesty model refresh**: Removes an unnecessary warning when refreshing the Requesty models list so you can fetch new policies without leaving the screen (thanks requesty-JohnCosta27!) ([#7710](https://github.com/RooCodeInc/Roo-Code/pull/7710)) + +## Bug Fixes + +* **Tool‑use guidance clarity**: Clarifies the retry suggestion so the model selects the correct file‑reading step during apply‑diff retries, reducing failed file edits. ([#8315](https://github.com/RooCodeInc/Roo-Code/pull/8315)) + +## Misc Improvements + +* **Website improvements**: New pricing page, clearer homepage messaging, and tighter navigation/visuals (including mobile). No changes to the extension UX. ([#8303](https://github.com/RooCodeInc/Roo-Code/pull/8303), [#8326](https://github.com/RooCodeInc/Roo-Code/pull/8326)) +* **Internal cleanup**: Removes the deprecated pr-reviewer mode. No changes to the extension UX. ([#8222](https://github.com/RooCodeInc/Roo-Code/pull/8222)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.28.mdx b/apps/docs/docs/update-notes/v3.28.mdx new file mode 100644 index 00000000000..15b995c0eab --- /dev/null +++ b/apps/docs/docs/update-notes/v3.28.mdx @@ -0,0 +1,198 @@ +--- +description: Combined release notes for Roo Code v3.28, featuring the Supernova model, Task Sync & Roomote Control for mobile task management, Roo Code Cloud integration, improved chat editing, and various bug fixes. +keywords: + - roo code 3.28 + - supernova model + - roomote control + - task sync + - cloud integration + - chat editing +image: /img/v3.28.0/v3.28.0.png +--- + +# Roo Code 3.28 Combined Release Notes + +This version introduces the Supernova model to Roo Code Cloud, Task Sync & Roomote Control for monitoring and controlling tasks from your phone, plus Roo Code Cloud integration features, enhanced chat editing, conversation preservation improvements, and multiple bug fixes. + +## Supernova Model - FREE Access + +We've added the new **roo/code-supernova** stealth model to the Roo Code Cloud provider - **completely FREE during the promotional period** ([#8175](https://github.com/RooCodeInc/Roo-Code/pull/8175)): + +- **FREE ACCESS**: No API keys, no costs - completely free through Roo Code Cloud +- **Advanced Capabilities**: Powerful AI model with **image support** for multimodal coding tasks +- **Not So Massive Context**: 200,000 token context window with 16,384 max output +- **Stealth Performance**: Experience cutting-edge model performance with the code-supernova variant +- **Zero Setup**: Just select it from your Roo Code Cloud provider - no configuration needed + +Select the **FREE** code-supernova model from the Roo provider to start using this powerful new capability at **no cost**. + +> **Documentation**: See the [Roo Code Router guide](/providers/roo-code-router) for model selection details. + +## Task Sync & Roomote Control + +Introducing our new cloud connectivity features that let you **monitor and control long-running tasks from your phone** - no more waiting at your desk! ([#7799](https://github.com/RooCodeInc/Roo-Code/pull/7799), [#7805](https://github.com/RooCodeInc/Roo-Code/pull/7805), [#7850](https://github.com/RooCodeInc/Roo-Code/pull/7850)): + +> **Important**: Roo Code remains **completely free and open source**. Task Sync and Roomote Control are optional supplementary services that connect your local VS Code to the cloud - all processing still happens in your VS Code instance. + +Roomote Control interface showing real-time task monitoring and control from browser + +**[Task Sync](/roo-code-cloud/task-sync) (FREE for All Users)**: +- **Monitor from Anywhere**: Check on long-running tasks from your phone while away from your desk +- **Real-time Updates**: Live streaming of your local task messages and progress +- **Task History**: Your tasks are saved to the cloud for later reference +- **Cloud Visibility**: View your VS Code tasks from any browser + +**[Roomote Control](/roo-code-cloud/roomote-control)**: +- **Continue Tasks Remotely**: Keep tasks going from your phone - respond to prompts, fix errors, approve actions +- **Full Chat Control**: Interact with the chatbox as though you were in your IDE +- **Start/Stop Tasks**: Launch new tasks or terminate running ones from anywhere +- **Complete Control**: Full bidirectional control of your local VS Code from anywhere + +Task Sync enables monitoring your local development environment from any device. Add Roomote Control for full remote control capabilities - whether you're on another computer, tablet, or smartphone. + +> **Documentation**: See [Task Sync](/roo-code-cloud/task-sync) and [Roomote Control Guide](/roo-code-cloud/roomote-control). + +## GPT-5-Codex lands in OpenAI Native + +- **Work with repository-scale context**: Keep multi-file specs and long reviews in a single thread thanks to a 400k token window. +- **Reuse prompts faster and include visuals**: Prompt caching and image support help you iterate on UI fixes without re-uploading context. +- **Let the model adapt its effort**: GPT-5-Codex automatically balances quick responses for simple questions with deeper reasoning on complex builds. + +This gives teams a higher-capacity OpenAI option without extra configuration.[#8260](https://github.com/RooCodeInc/Roo-Code/pull/8260): + +> **Documentation**: See [OpenAI Provider Guide](/providers/openai) for capabilities and setup guidance. + +## QOL Improvements + +* **Cloud Account Management**: Added account switcher and "Create Team Account" option for logged-in users, making it easier to manage multiple accounts ([#8291](https://github.com/RooCodeInc/Roo-Code/pull/8291)) +* **Chat Icon Sizing**: Chat interface icons now maintain consistent size in limited space ([#8343](https://github.com/RooCodeInc/Roo-Code/pull/8343)) +* **Social Media Sharing**: Improved OpenGraph images for better preview cards when sharing Roo Code links on Slack, Twitter, and Facebook ([#8285](https://github.com/RooCodeInc/Roo-Code/pull/8285)) +* **Auto-approve keyboard shortcut**: Toggle approvals with Cmd/Ctrl+Alt+A from anywhere in the editor so you can stay in the flow while reviewing changes (via [#8214](https://github.com/RooCodeInc/Roo-Code/pull/8214)) +* **Click-to-Edit Chat Messages**: Click directly on any message text to edit it, with ESC to cancel and improved padding consistency ([#7790](https://github.com/RooCodeInc/Roo-Code/pull/7790)) +* **Enhanced Reasoning Display**: The AI's thinking process now shows a persistent timer and displays reasoning content in clean italic text ([#7752](https://github.com/RooCodeInc/Roo-Code/pull/7752)) +* **Easier-to-scan reasoning transcripts**: Added clear line breaks before reasoning headers inside the UI so long thoughts are easier to skim (via [#7868](https://github.com/RooCodeInc/Roo-Code/pull/7868)) +* **Manual Auth URL Input**: Users in containerized environments can now paste authentication redirect URLs manually when automatic redirection fails ([#7805](https://github.com/RooCodeInc/Roo-Code/pull/7805)) +* **Active Mode Centering**: The mode selector dropdown now automatically centers the active mode when opened ([#7883](https://github.com/RooCodeInc/Roo-Code/pull/7883)) +* **Preserve First Message**: The first message containing slash commands or initial context is now preserved during conversation condensing instead of being replaced with a summary ([#7910](https://github.com/RooCodeInc/Roo-Code/pull/7910)) +* **Checkpoint Initialization Notifications**: You'll now receive clear notifications when checkpoint initialization fails, particularly with nested Git repositories ([#7766](https://github.com/RooCodeInc/Roo-Code/pull/7766)) +* **Translation coverage auditing**: The translation checker now validates package.nls locales by default to catch missing strings before release (via [#8255](https://github.com/RooCodeInc/Roo-Code/pull/8255)) + +* Smaller and more subtle auto-approve UI (thanks brunobergher!) ([#7894](https://github.com/RooCodeInc/Roo-Code/pull/7894)) +* Disable Roomote Control on logout for better security ([#7976](https://github.com/RooCodeInc/Roo-Code/pull/7976)) +* Add padding to the cloudview for better visual spacing ([#7954](https://github.com/RooCodeInc/Roo-Code/pull/7954)) + +* Temporarily pause auto-approve with a global “Enabled” switch so you can pause without losing your per-toggle selections; the UI clearly distinguishes global vs. per-toggle states ([#8024](https://github.com/RooCodeInc/Roo-Code/pull/8024)) +* Slash commands management moved to Settings > Slash Commands with a gear shortcut from the chat popover; the popover is now selection-only for quick use ([#7988](https://github.com/RooCodeInc/Roo-Code/pull/7988)) +* Keyboard shortcut to quickly “Add to Context” (macOS: Cmd+Y; Windows/Linux: Ctrl+Y) ([#7908](https://github.com/RooCodeInc/Roo-Code/pull/7908)) +* Add Image button moved inside the text area (top-right) and Enhance Prompt positioned above Send to reduce pointer travel and clarify layout ([#7989](https://github.com/RooCodeInc/Roo-Code/pull/7989)) +* Composer action buttons now appear only when there's text input, reducing visual clutter and accidental clicks ([#7987](https://github.com/RooCodeInc/Roo-Code/pull/7987)) +* New Task button icon switched from "+" to a compose/pencil icon to better match its purpose and align with codicon standards ([#7942](https://github.com/RooCodeInc/Roo-Code/pull/7942)) +* **Redesigned Message Feed**: Enjoy a cleaner, more readable chat interface with improved visual hierarchy that helps you focus on what matters ([#7985](https://github.com/RooCodeInc/Roo-Code/pull/7985)) +* **Responsive Auto-Approve**: The auto-approve dropdown now adapts to different window sizes with smart 1-2 column layouts, and tooltips show all enabled actions without truncation ([#8032](https://github.com/RooCodeInc/Roo-Code/pull/8032)) +* **Network Resilience**: Telemetry data now automatically retries on network failures, ensuring analytics and diagnostics aren't lost during connectivity issues ([#7597](https://github.com/RooCodeInc/Roo-Code/pull/7597)) +* **Code blocks wrap by default**: Code blocks now wrap text by default, and the snippet toolbar no longer includes language or wrap toggles, keeping snippets readable across locales (via [#8194](https://github.com/RooCodeInc/Roo-Code/pull/8194); [#8208](https://github.com/RooCodeInc/Roo-Code/pull/8208)) + +* **Reset logs you out of Roo Code Cloud**: Reset now also logs you out of Roo Code Cloud for a truly clean slate; the reset still completes even if logout fails. ([#8312](https://github.com/RooCodeInc/Roo-Code/pull/8312)) +* **Measure engagement with upsell messages**: Telemetry for DismissibleUpsell tracks dismiss vs click (upsellId only) to tune messaging and reduce noise; no user-facing behavior change. ([#8309](https://github.com/RooCodeInc/Roo-Code/pull/8309)) +* **Welcome screen Roo provider experiment**: Surfaces the Roo provider on the welcome screen (localized, with click telemetry) to speed up setup. ([#8317](https://github.com/RooCodeInc/Roo-Code/pull/8317)) +* **Cleaner prompts (no “thinking” tags)**: Removes `` tags for cleaner output, fewer tokens, and better model compatibility; preserves the plain‑language rule to confirm tool success. ([#8319](https://github.com/RooCodeInc/Roo-Code/pull/8319)) +* **Simpler Requesty model refresh**: Removes an unnecessary warning when refreshing the Requesty models list so you can fetch new policies without leaving the screen. ([#7710](https://github.com/RooCodeInc/Roo-Code/pull/7710)) +* **Bedrock 1M Context Checkbox**: Adds checkbox to enable 1M context window support for Claude Sonnet 4 and 4.5 on Bedrock, providing more flexibility for large-scale projects ([#8384](https://github.com/RooCodeInc/Roo-Code/pull/8384)) +* Include reasoning messages in cloud task histories so you can review complete thinking after runs ([#8401](https://github.com/RooCodeInc/Roo-Code/pull/8401)) + +* Identify Cloud tasks in the extension bridge to improve diagnostics, logging, and future UI behavior ([#8539](https://github.com/RooCodeInc/Roo-Code/pull/8539)) +* Add the parent task ID in telemetry to improve traceability ([#8532](https://github.com/RooCodeInc/Roo-Code/pull/8532)) +* Clarify the zh‑TW “Run command” label to match the tooltip and reduce confusion (thanks PeterDaveHello!) ([#8631](https://github.com/RooCodeInc/Roo-Code/pull/8631)) + +* Image generation model selection update: defaults to Gemini 2.5 Flash Image; adds OpenAI GPT‑5 Image and GPT‑5 Image Mini; clearer settings dropdown (thanks chrarnoldus!) ([#8698](https://github.com/RooCodeInc/Roo-Code/pull/8698)) + +## Bug Fixes + +* **AWS Bedrock Claude Sonnet 4.5**: Corrected model identifier for Claude Sonnet 4.5 on AWS Bedrock (thanks sunhyung!) ([#8371](https://github.com/RooCodeInc/Roo-Code/pull/8371)) +* **OpenRouter Claude Sonnet 4.5**: Corrected model ID format to align with naming and prevent selection/API mismatches ([#8373](https://github.com/RooCodeInc/Roo-Code/pull/8373)) +* **GPT-5 LiteLLM Compatibility**: Fixed GPT-5 models failing with LiteLLM provider by using correct `max_completion_tokens` parameter (thanks lx1054331851!) ([#6980](https://github.com/RooCodeInc/Roo-Code/pull/6980)) +* **Fixed "No tool used" Errors**: Resolved the situation where LLMs would sometimes not make tool calls in their response which improves Roo's overall flow. ([#8292](https://github.com/RooCodeInc/Roo-Code/pull/8292)) +* **Context Condensing**: Fixed an issue where the initial task request was being lost during context condensing, causing Roo to try to re-answer the original task ask when resuming after condensing ([#8298](https://github.com/RooCodeInc/Roo-Code/pull/8298)) +* **Roo provider stays signed in**: Roo provider tokens refresh automatically and the local evals app binds to port 3446 for predictable scripts (via [#8224](https://github.com/RooCodeInc/Roo-Code/pull/8224)) +* **Checkpoint text stays on one line**: Prevented multi-line wrapping in languages such as Chinese, Korean, Japanese, and Russian so the checkpoint UI stays compact (via [#8207](https://github.com/RooCodeInc/Roo-Code/pull/8207); reported in [#8206](https://github.com/RooCodeInc/Roo-Code/issues/8206)) +* **Ollama respects Modelfile num_ctx**: Roo now defers to your Modelfile’s context window to avoid GPU OOMs while still allowing explicit overrides when needed (via [#7798](https://github.com/RooCodeInc/Roo-Code/pull/7798); reported in [#7797](https://github.com/RooCodeInc/Roo-Code/issues/7797)) +* **Groq Context Window**: Fixed incorrect display of cached tokens in context window ([#7839](https://github.com/RooCodeInc/Roo-Code/pull/7839)) +* **Chat Message Operations**: Resolved duplication issues when editing messages and "Couldn't find timestamp" errors when deleting ([#7793](https://github.com/RooCodeInc/Roo-Code/pull/7793)) +* **UI Overlap**: Fixed CodeBlock button z-index to prevent overlap with popovers and configuration panels (thanks A0nameless0man!) ([#7783](https://github.com/RooCodeInc/Roo-Code/pull/7783)) +* Fix message queue re-queue loop in Task.ask() that could degrade performance ([#7823](https://github.com/RooCodeInc/Roo-Code/pull/7823)) +* Restrict @-mention parsing to line-start or whitespace boundaries to prevent false triggers ([#7876](https://github.com/RooCodeInc/Roo-Code/pull/7876)) +* Make nested git repository warning persistent with path info for better visibility ([#7885](https://github.com/RooCodeInc/Roo-Code/pull/7885)) +* Include API key in Ollama /api/tags requests to support authenticated instances (thanks ItsOnlyBinary!) ([#7903](https://github.com/RooCodeInc/Roo-Code/pull/7903)) +* Preserve original first message context during conversation condensing for more coherent long chats ([#7939](https://github.com/RooCodeInc/Roo-Code/pull/7939)) + +* **Temperature Parameter**: Restored temperature parameter to fix crashes in TabbyApi and ExLlamaV2 backends (thanks drknyt!) ([#7594](https://github.com/RooCodeInc/Roo-Code/pull/7594)) +* **Ollama Model Info**: Fixed max context window display for Ollama models (thanks ItsOnlyBinary!) ([#7679](https://github.com/RooCodeInc/Roo-Code/pull/7679)) +* **Image Preview Caching**: This ensures the chat always displays the newly generated image instead of a cached version ([#7860](https://github.com/RooCodeInc/Roo-Code/pull/7860)) + +* Restore square brackets in Gemini-generated code so arrays/indexers render correctly (e.g., `string[] items = new string[5];`) (thanks AtkinsDynamicObjects!) ([#7577](https://github.com/RooCodeInc/Roo-Code/pull/7577)) +* Filter out Claude Code built-in tools (ExitPlanMode, BashOutput, KillBash) to avoid erroneous tool calls and distracting warnings (thanks juliettefournier-econ!) ([#7818](https://github.com/RooCodeInc/Roo-Code/pull/7818)) +* Fix an issue where the context menu could be obscured while editing messages; the menu stays visible and usable across screen sizes (thanks NaccOll, mini2s!) ([#7951](https://github.com/RooCodeInc/Roo-Code/pull/7951)) +* Surface a clear, actionable error instead of cryptic ByteString conversion failures during code indexing when API keys contain invalid/special characters (thanks PavelA85!) ([#8008](https://github.com/RooCodeInc/Roo-Code/pull/8008)) +* Correct C# tree-sitter query so C# files are parsed and indexed properly, improving semantic search, navigation, and context quality (thanks mubeen-zulfiqar, vadash, Source-GuyCoder!) ([#7813](https://github.com/RooCodeInc/Roo-Code/pull/7813)) +* **Keyboard Shortcut**: Fixed the command+y shortcut in Nightly builds, restoring quick content addition to context ([#8070](https://github.com/RooCodeInc/Roo-Code/pull/8070)) +* **Todo list compatibility**: Todo lists now display correctly when AI models return checklists with dash prefixes (`- [ ] Task`), improving compatibility with various models (thanks NaccOll!) ([#8055](https://github.com/RooCodeInc/Roo-Code/pull/8055)) +* **Vertex AI pricing accuracy**: Fixed local cost calculation for Gemini models via Vertex AI to properly apply tiered pricing and cache discounts, ensuring displayed costs match actual Google Cloud billing (thanks ikumi3!) ([#8018](https://github.com/RooCodeInc/Roo-Code/pull/8018)) +* **Conversation history preservation**: Fixed duplicate/overlaid tasks and lost conversation history when canceling during model responses, especially during reasoning phases ([#8171](https://github.com/RooCodeInc/Roo-Code/pull/8171)) + + +* **Tool‑use guidance clarity**: Clarifies the retry suggestion so the model selects the correct file‑reading step during apply‑diff retries, reducing failed file edits. ([#8315](https://github.com/RooCodeInc/Roo-Code/pull/8315)) +* **Anthropic Sonnet 4.5 Model ID**: Corrects the model ID to the official `claude-sonnet-4-5`, resolving API errors when using Claude Sonnet 4.5 ([#8384](https://github.com/RooCodeInc/Roo-Code/pull/8384)) + +* **AWS Bedrock**: Removed `topP` parameter to avoid conflicts with extended thinking, improving reliability for streaming and non‑streaming responses (thanks ronyblum!) ([#8388](https://github.com/RooCodeInc/Roo-Code/pull/8388)) +* **Vertex AI**: Fixed Sonnet 4.5 model configuration to prevent 404s and align with the correct default model ID (thanks nickcatal!) ([#8391](https://github.com/RooCodeInc/Roo-Code/pull/8391)) +* "Reset and Continue" now truly resets cost tracking; subsequent requests only count new message costs ([#6890](https://github.com/RooCodeInc/Roo-Code/pull/6890)) +* Prompts settings: Save button activates on first change and preserves empty strings ([#8267](https://github.com/RooCodeInc/Roo-Code/pull/8267)) +* Settings: Remove overeager "unsaved changes" dialog when nothing changed ([#8410](https://github.com/RooCodeInc/Roo-Code/pull/8410)) +* Show the Send button when only images are attached ([#8423](https://github.com/RooCodeInc/Roo-Code/pull/8423)) + +* Fix grey screens caused by long context task sessions ([#8696](https://github.com/RooCodeInc/Roo-Code/pull/8696)) +* Editor targeting fix: avoids editing read‑only git diff views; edits the actual file (thanks hassoncs!) ([#8676](https://github.com/RooCodeInc/Roo-Code/pull/8676)) + +## Provider Updates + +* **Claude 4.5 Sonnet**: Added support for Anthropic's latest Claude 4.5 Sonnet model across all providers (Anthropic, AWS Bedrock, Claude Code, Google Vertex AI, and OpenRouter) with 1M context window support ([#8368](https://github.com/RooCodeInc/Roo-Code/pull/8368)) +* **New Free Models**: Added two more free models to the Roo provider - xai/grok-4-fast and deepseek/deepseek-chat-v3.1 ([#8304](https://github.com/RooCodeInc/Roo-Code/pull/8304)) +* **Vertex AI Models**: Added support for 6 new models including DeepSeek-V3, GPT-OSS, and Qwen models, plus the us-south1 region (thanks ssweens!) ([#7727](https://github.com/RooCodeInc/Roo-Code/pull/7727)) +* **DeepSeek Pricing**: Updated to new unified rates effective September 5, 2025 - $0.56/M input tokens, $1.68/M output tokens (thanks NaccOll!) ([#7687](https://github.com/RooCodeInc/Roo-Code/pull/7687)) + +* **Chutes Provider**: Add Qwen3 Next 80B A3B models ([#7948](https://github.com/RooCodeInc/Roo-Code/pull/7948)) +* **Z.ai Coding Plans**: Region-aware options (International/China) with automatic base URL selection and sensible defaults to simplify setup (thanks chrarnoldus!) ([#8003](https://github.com/RooCodeInc/Roo-Code/pull/8003)) +* **SambaNova models**: Added DeepSeek-V3.1 and GPT-OSS 120B to the SambaNova provider (thanks snova-jorgep!) ([#8186](https://github.com/RooCodeInc/Roo-Code/pull/8186)) + +* **Supernova 1M context**: Upgrades the default Supernova to roo/code-supernova-1-million (1,000,000‑token context). Existing settings auto‑migrate; expect fewer truncations on long tasks. ([#8330](https://github.com/RooCodeInc/Roo-Code/pull/8330)) +* **Z.ai GLM‑4.6**: Adds GLM‑4.6 model support with a 200k (204,800) context window and availability across both international and mainland API lines (thanks dmarkey!) ([#8408](https://github.com/RooCodeInc/Roo-Code/pull/8408)) +* **Chutes**: Add DeepSeek‑V3.1‑Terminus, DeepSeek‑V3.1‑turbo, DeepSeek‑V3.2‑Exp, GLM‑4.6‑FP8, and Qwen3‑VL‑235B‑A22B‑Thinking to the provider picker ([#8467](https://github.com/RooCodeInc/Roo-Code/pull/8467)) +* **Claude Code**: Added a 1M‑context variant of Claude Sonnet 4.5; select via the `[1m]` suffix to fit larger repos and logs with fewer truncations (thanks ColbySerpa!) ([#8586](https://github.com/RooCodeInc/Roo-Code/pull/8586)) +* **Claude Haiku 4.5**: Available across Anthropic, AWS Bedrock, and Vertex AI with 200k context, up to 64k output, image input, and prompt caching support ([#8673](https://github.com/RooCodeInc/Roo-Code/pull/8673)) +* **Gemini**: Remove unsupported free “2.5 Flash Image Preview”; paid path unaffected ([#8359](https://github.com/RooCodeInc/Roo-Code/pull/8359)) +* **Roo Code Cloud**: Deprecate “Grok 4 Fast”; show warning if selected and hide when not selected ([#8481](https://github.com/RooCodeInc/Roo-Code/pull/8481)) +* **Bedrock**: Claude Sonnet 4 1M‑context handling and compatibility improvements ([#8421](https://github.com/RooCodeInc/Roo-Code/pull/8421)) + +* Bedrock: add versioned user agent for per‑version metrics and error tracking; no action needed (thanks ajjuaire!) ([#8663](https://github.com/RooCodeInc/Roo-Code/pull/8663)) +* Z AI: only two coding endpoints (International/China) are supported; defaults to International; legacy non‑coding endpoints unsupported ([#8693](https://github.com/RooCodeInc/Roo-Code/pull/8693)) + +## Misc Improvements + +* **Website improvements**: New pricing page, clearer homepage messaging, and tighter navigation/visuals (including mobile). No changes to the extension UX. ([#8303](https://github.com/RooCodeInc/Roo-Code/pull/8303), [#8326](https://github.com/RooCodeInc/Roo-Code/pull/8326)) +* **Telemetry Tracking**: Enhanced analytics to track when users change telemetry settings ([#8339](https://github.com/RooCodeInc/Roo-Code/pull/8339)) +* **Website Testimonials**: Updated website with enhanced testimonials section ([#8360](https://github.com/RooCodeInc/Roo-Code/pull/8360)) +* **Contributor Recognition**: Improved contributor badge workflow with automated cache refreshing ([#8083](https://github.com/RooCodeInc/Roo-Code/pull/8083)) +* **Internal cleanup**: Removes the deprecated pr-reviewer mode. No changes to the extension UX. ([#8222](https://github.com/RooCodeInc/Roo-Code/pull/8222)) +* **Infrastructure**: Set port 3446 for web-evals service in production mode ([#8288](https://github.com/RooCodeInc/Roo-Code/pull/8288)) +* **Cloud Task Button**: Added a new button for opening tasks in Roo Code Cloud with QR codes and shareable URLs ([#7572](https://github.com/RooCodeInc/Roo-Code/pull/7572)) +* **Telemetry Default**: Posthog telemetry is now enabled by default with easy opt-out options in settings ([#7909](https://github.com/RooCodeInc/Roo-Code/pull/7909)) +* **Roo Code Cloud Announcement**: Updated in-app announcements about Roo Code Cloud features, localized in 18 languages ([#7914](https://github.com/RooCodeInc/Roo-Code/pull/7914)) +* **Merge Resolver Mode**: Added GIT_EDITOR environment variable to prevent hanging during non-interactive rebase operations ([#7819](https://github.com/RooCodeInc/Roo-Code/pull/7819)) +* Updated dependency esbuild to v0.25.9 for improved build performance ([#5455](https://github.com/RooCodeInc/Roo-Code/pull/5455)) +* Updated dependency @changesets/cli to v2.29.6 ([#7376](https://github.com/RooCodeInc/Roo-Code/pull/7376)) +* Updated dependency nock to v14.0.10 ([#6465](https://github.com/RooCodeInc/Roo-Code/pull/6465)) +* Updated dependency eslint-config-prettier to v10.1.8 ([#6464](https://github.com/RooCodeInc/Roo-Code/pull/6464)) +* Updated dependency eslint-plugin-turbo to v2.5.6 ([#7764](https://github.com/RooCodeInc/Roo-Code/pull/7764)) +* Updated dependency axios to v1.12.0 for improved reliability and security of HTTP requests ([#7963](https://github.com/RooCodeInc/Roo-Code/pull/7963)) +* **Code Supernova announcement**: Added announcement for the new Code Supernova model with improved authentication flow and landing page redirection ([#8197](https://github.com/RooCodeInc/Roo-Code/pull/8197)) +* **Privacy policy update**: Updated privacy policy to include provisions for optional marketing emails with clear opt-out options (thanks jdilla1277!) ([#8180](https://github.com/RooCodeInc/Roo-Code/pull/8180)) diff --git a/apps/docs/docs/update-notes/v3.29.0.mdx b/apps/docs/docs/update-notes/v3.29.0.mdx new file mode 100644 index 00000000000..4e17b7121db --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.0.mdx @@ -0,0 +1,56 @@ +--- +description: Intelligent file reading, browser-use on image-capable models, dynamic Roo Code Cloud model loading, plus fixes and provider updates. +keywords: + - roo code 3.29.0 + - new features + - bug fixes +image: /img/v3.29.0/v3.29.0.png +--- + +# Roo Code 3.29.0 Release Notes (2025-10-24) + +This release adds intelligent file reading, enables browser-use for all image-capable models, and adds dynamic Roo Code Cloud model loading — plus many fixes and model updates. + +Roo Code v3.29.0 Release + +## Introducing Roo Code's first Cloud Agent, the PR Reviewer + +It runs Roo in the cloud, giving extremely high quality code reviews instantly. We’ve been using it heavily to build Roo and now it's also available to the community. + +Learn more: https://roocode.com/reviewer + +## QOL Improvements + +* Intelligent file reading with token‑budget management and a 100KB preview for very large files (thanks daniel-lxs, liwilliam2021!) ([#8789](https://github.com/RooCodeInc/Roo-Code/pull/8789)) +* Browser‑use enabled for all image‑capable models (thanks app/roomote, hannesrudolph!) ([#8121](https://github.com/RooCodeInc/Roo-Code/pull/8121), issue #8116) +* Reduce ui_messages.json bloat by removing GPT‑5 instructions/reasoning_summary ([#8756](https://github.com/RooCodeInc/Roo-Code/pull/8756)) +* Adjustable checkpoint initialization timeout and clearer warnings (thanks NaccOll!) ([#8019](https://github.com/RooCodeInc/Roo-Code/pull/8019), issue #7843) +* Improve auto‑approve button responsiveness ([#8798](https://github.com/RooCodeInc/Roo-Code/pull/8798)) +* Retry API requests on stream failures instead of aborting the task ([#8794](https://github.com/RooCodeInc/Roo-Code/pull/8794)) +* Improve checkpoint menu translations ([#8796](https://github.com/RooCodeInc/Roo-Code/pull/8796)) +* Try a 5s status mutation timeout to reduce flaky status changes ([#8734](https://github.com/RooCodeInc/Roo-Code/pull/8734)) + +## Bug Fixes + +* search_files now respects .gitignore (including nested) by default; override when needed ([#8804](https://github.com/RooCodeInc/Roo-Code/pull/8804), issue #7921) +* apply_diff export preserves trailing newlines (fix stripLineNumbers) ([#8227](https://github.com/RooCodeInc/Roo-Code/pull/8227), issue #8020) +* Export: exclude max tokens for models that don’t support it (thanks elianiva!) ([#8464](https://github.com/RooCodeInc/Roo-Code/pull/8464), issue #7944) +* Checkpoints: always show restore options regardless of change detection ([#8758](https://github.com/RooCodeInc/Roo-Code/pull/8758)) + +## Provider Updates + +* Roo Code Cloud: dynamic model loading in the Model Picker with 5‑minute caching, auth‑state refresh, and graceful fallback to static models on failure ([#8728](https://github.com/RooCodeInc/Roo-Code/pull/8728)) +* Chutes: add zai‑org/GLM‑4.6‑turbo (204.8K context; clear pricing) (thanks mohammad154!) ([#8502](https://github.com/RooCodeInc/Roo-Code/pull/8502)) +* OpenRouter: add Anthropic Claude Haiku 4.5 to prompt‑caching models ([#8764](https://github.com/RooCodeInc/Roo-Code/pull/8764)) +* Z.ai: expand model coverage with GLM‑4.5‑X, AirX, Flash ([#8745](https://github.com/RooCodeInc/Roo-Code/pull/8745)) +* Mistral: update “Medium” model name (thanks ThomsenDrake!) ([#8364](https://github.com/RooCodeInc/Roo-Code/pull/8364)) + + +## Misc Updates + +* Reviewer page copy clarifications for clearer expectations ([#8753](https://github.com/RooCodeInc/Roo-Code/pull/8753)) +* Dynamic OpenGraph images for clean link previews ([#8773](https://github.com/RooCodeInc/Roo-Code/pull/8773)) +* Fix link text to “Roomote Control” in README (thanks laz-001!) ([#8742](https://github.com/RooCodeInc/Roo-Code/pull/8742)) +* Remove a very verbose cloud‑agents error ([#8795](https://github.com/RooCodeInc/Roo-Code/pull/8795)) +* Update X/Twitter username from roo_code to roocode ([#8780](https://github.com/RooCodeInc/Roo-Code/pull/8780)) +* Update “Configuring Profiles” video link across localized READMEs ([#8189](https://github.com/RooCodeInc/Roo-Code/pull/8189)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.29.1.mdx b/apps/docs/docs/update-notes/v3.29.1.mdx new file mode 100644 index 00000000000..0c964c19654 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.1.mdx @@ -0,0 +1,27 @@ +--- +description: Bug-fix patch that prevents context overruns, restores standard Redo keybinding, and improves provider model loading reliability. +keywords: + - roo code 3.29.1 + - new features + - bug fixes +image: /img/v3.29.1/v3.29.1.png +--- + +# Roo Code 3.29.1 Release Notes (2025-10-27) + +This patch prevents context overruns on long generations, restores the standard Redo keybinding, and reduces intermittent provider model loading errors. + +Roo Code v3.29.1 Release + +## QOL Improvements + +* Keyboard shortcut update: “Add to Context” moved to Ctrl+K Ctrl+A (Windows/Linux) / Cmd+K Cmd+A (macOS) to avoid Redo conflict and restore standard Redo (thanks swythan!) ([#8653](https://github.com/RooCodeInc/Roo-Code/pull/8653)) + +## Bug Fixes + +* Clean up max output token calculations to prevent context window overruns (thanks enerage!) ([#8822](https://github.com/RooCodeInc/Roo-Code/pull/8822)) +* Fix provider model loading race conditions to reduce timeouts and intermittent errors ([#8836](https://github.com/RooCodeInc/Roo-Code/pull/8836)) + +## Provider Updates + +* OpenAI-compatible: centralized ~20% maxTokens cap to prevent context overruns; GLM‑4.6‑turbo default 40,960 for reliable long-context runs (thanks enerage!) ([#8822](https://github.com/RooCodeInc/Roo-Code/pull/8822)) diff --git a/apps/docs/docs/update-notes/v3.29.2.mdx b/apps/docs/docs/update-notes/v3.29.2.mdx new file mode 100644 index 00000000000..20bfd22aff0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.2.mdx @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.29.2 adds higher-context Chutes AI models, improves settings text, and fixes provider caching and free-model pricing display. +keywords: + - roo code 3.29.2 + - chutes ai + - longcat + - provider update + - bug fixes + - free models + - pricing display +--- + +# Roo Code 3.29.2 Release Notes (2025-10-27) + +This patch adds higher-context Chutes AI models, cleans up settings text, and fixes provider caching and free‑model pricing display. + + +## Provider Updates + +* Chutes AI: Add LongCat‑Flash‑Thinking‑FP8 models (200K, 128K) for longer coding sessions with faster, cost‑effective performance (thanks leakless21!) ([#8426](https://github.com/RooCodeInc/Roo-Code/pull/8426)) + +## QOL Improvements + +* Settings descriptions: Remove specific "Claude 3.7 Sonnet" version across locales to keep guidance current (thanks rwydaegh!) ([#8437](https://github.com/RooCodeInc/Roo-Code/pull/8437)) + +## Bug Fixes + +* Roo provider: Fix caching logic to emit correct usage data and apply proper protocol ([#8860](https://github.com/RooCodeInc/Roo-Code/pull/8860)) +* Free models: Hide pricing info and show zero cost to avoid confusion ([#8864](https://github.com/RooCodeInc/Roo-Code/pull/8864)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.29.3.mdx b/apps/docs/docs/update-notes/v3.29.3.mdx new file mode 100644 index 00000000000..65a06ab446f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.3.mdx @@ -0,0 +1,32 @@ +--- +description: Adds Roo provider reasoning control, Z.ai Deep Thinking toggle, Gemini model updates, plus fixes for rate limiting, retries, and UI polish. +keywords: + - roo code 3.29.3 + - release notes + - bug fixes + - provider updates + - qol improvements +--- + +# Roo Code 3.29.3 Release Notes (2025-10-28) + +This patch adds reasoning controls for Roo and Z.ai providers, updates Gemini "latest" models, and delivers stability and UI fixes. + +## QOL Improvements + +* Toggle time and cost display in the system prompt to reduce model distraction during long runs (thanks jaxnb!) ([#8451](https://github.com/RooCodeInc/Roo-Code/pull/8451)) +* After “Add to Context,” input auto‑focuses and two newlines are inserted for clearer separation, so you can keep typing immediately ([#8877](https://github.com/RooCodeInc/Roo-Code/pull/8877)) + +## Bug Fixes + +* LiteLLM: Prefer max_output_tokens (with fallback to max_tokens) to prevent 400 errors on Claude Sonnet 4.5 via Vertex (thanks fabb!) ([#8455](https://github.com/RooCodeInc/Roo-Code/pull/8455)) +* Messages typed during context condensing now send automatically once condensing finishes; per‑task queues no longer cross‑drain (thanks JosXa!) ([#8478](https://github.com/RooCodeInc/Roo-Code/pull/8478)) +* Rate limiting now uses a monotonic clock and enforces a hard cap at the configured limit to avoid long lockouts (thanks chrarnoldus, intermarkec!) ([#8456](https://github.com/RooCodeInc/Roo-Code/pull/8456)) +* Restore green tests and TypeScript build for LiteLLM after interface changes; keeps monotonic clock fix and token limit behavior ([#8870](https://github.com/RooCodeInc/Roo-Code/pull/8870)) +* Checkpoint menu popover no longer clips long option text; items remain fully visible ([#8867](https://github.com/RooCodeInc/Roo-Code/pull/8867)) + +## Provider Updates + +* Roo provider: Reasoning effort control lets you choose deeper step‑by‑step thinking vs. faster/cheaper responses. See [Roo Code Router](/providers/roo-code-router) for details. ([#8874](https://github.com/RooCodeInc/Roo-Code/pull/8874)) +* Z.ai (GLM‑4.5/4.6): “Enable reasoning” toggle to activate Deep Thinking; hidden on unsupported models (thanks BeWater799!). See [Z.ai provider](/providers/zai). ([#8872](https://github.com/RooCodeInc/Roo-Code/pull/8872)) +* Gemini: Updated model list and “latest” aliases for easier selection (thanks cleacos!). See [Gemini provider](/providers/gemini). ([#8486](https://github.com/RooCodeInc/Roo-Code/pull/8486)) diff --git a/apps/docs/docs/update-notes/v3.29.4.mdx b/apps/docs/docs/update-notes/v3.29.4.mdx new file mode 100644 index 00000000000..29b1ec68511 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.4.mdx @@ -0,0 +1,44 @@ +--- +description: Adds MiniMax provider, improves @ file search for large repos, clarifies Logs tab and VS Code LM guidance, and fixes indexing/startup issues. +keywords: + - roo code 3.29.4 + - new features + - bug fixes +image: /img/v3.29.4/v3.29.4.png +--- +# Roo Code 3.29.4 Release Notes (2025-10-31) + +This release adds the MiniMax provider, improves @ file search on large projects, clarifies the Logs tab and VS Code LM guidance, and delivers multiple stability fixes. + +Roo Code v3.29.4 Release + +## We’re hiring + +We added a “We’re hiring” link to the announcement modal. Explore open roles at [careers.roocode.com](https://careers.roocode.com). + +## MiniMax provider + +We've added the MiniMax provider so you can run coding and reasoning tasks with strong Chinese language support and competitive pricing (thanks Maosghoul!) ([#8820](https://github.com/RooCodeInc/Roo-Code/pull/8820)): + +## QOL Improvements + +* Improve @ file search for large projects with a higher default index limit and respect for VS Code ignore settings; add the roo-cline.maximumIndexedFilesForFileSearch setting for tunable limits (thanks Naituw!) ([#8805](https://github.com/RooCodeInc/Roo-Code/pull/8805)) +* Rename MCP “Errors” tab to “Logs” to match mixed-level messages; clearer empty state (“No logs yet”) ([#8894](https://github.com/RooCodeInc/Roo-Code/pull/8894)) +* Custom modes now load from your configured storage path and persist after restart (thanks elianiva!) ([#8499](https://github.com/RooCodeInc/Roo-Code/pull/8499)) +* Breaking: Removed search_and_replace tool. Use [apply_diff](/advanced-usage/available-tools/apply-diff) instead. Migration notes below. ([#8892](https://github.com/RooCodeInc/Roo-Code/pull/8892)) +* Clarified VS Code LM API integration warning in Settings to reduce “model not supported” errors ([#8493](https://github.com/RooCodeInc/Roo-Code/pull/8493)) + +## Bug Fixes + +* Reasoning effort selection now auto-enables reasoning when needed so UI and behavior stay in sync ([#8890](https://github.com/RooCodeInc/Roo-Code/pull/8890)) +* Reduce noisy cloud-agent exceptions by suppressing repeated auth messages ([#8577](https://github.com/RooCodeInc/Roo-Code/pull/8577)) +* Prevent MCP server restart when toggling “Always allow” for MCP tools (thanks heyseth!) ([#8633](https://github.com/RooCodeInc/Roo-Code/pull/8633)) +* Reuse existing Qdrant index after outages to avoid full reindex and cut restart time (thanks heyseth, jaroslaw-weber!) ([#8588](https://github.com/RooCodeInc/Roo-Code/pull/8588)) +* Make code index initialization non‑blocking at activation to avoid startup hangs (thanks cjlawson02!) ([#8933](https://github.com/RooCodeInc/Roo-Code/pull/8933)) +* Honor maxReadFileLine across code definition listing and file reads to prevent context overflows (thanks elianiva, chenxluo!) ([#8509](https://github.com/RooCodeInc/Roo-Code/pull/8509)) +* Prevent infinite retry loop when canceling during auto‑retry (thanks mini2s!) ([#8902](https://github.com/RooCodeInc/Roo-Code/pull/8902)) +* Gate auth‑driven Roo model refresh to the active provider only to reduce background work ([#8915](https://github.com/RooCodeInc/Roo-Code/pull/8915)) + +## Provider Updates + +* Cerebras: add zai‑glm‑4.6 and change default to gpt‑oss‑120b; deprecate qwen‑3‑coder models ([#8920](https://github.com/RooCodeInc/Roo-Code/pull/8920)) diff --git a/apps/docs/docs/update-notes/v3.29.5.mdx b/apps/docs/docs/update-notes/v3.29.5.mdx new file mode 100644 index 00000000000..f01e9a30239 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.5.mdx @@ -0,0 +1,18 @@ +--- +description: Reliability fixes for code search with Qdrant and more accurate cost/token usage metrics across providers. +keywords: + - roo code 3.29.5 + - bug fixes + - qdrant + - codebase search +--- + +# Roo Code 3.29.5 Release Notes (2025-11-01) + +This patch improves code search reliability with Qdrant and ensures accurate usage and cost reporting across providers. + + +## Bug Fixes + +* Qdrant codebase_search reliability: Indexes the type field to prevent errors when using Qdrant hosted instances (thanks rossdonald!) ([#8964](https://github.com/RooCodeInc/Roo-Code/pull/8964)) +* Accurate cost and token tracking across providers: Ensures consistent usage metrics and billing in Roo Code Cloud dashboards ([#8954](https://github.com/RooCodeInc/Roo-Code/pull/8954)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.29.mdx b/apps/docs/docs/update-notes/v3.29.mdx new file mode 100644 index 00000000000..b7d67f5ce10 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.29.mdx @@ -0,0 +1,66 @@ +--- +description: Combined notes for the 3.29 release cycle. Highlights MiniMax provider, large-repo @ file search improvements, UI/UX refinements, and stability fixes. +keywords: + - roo code 3.29 + - release notes + - combined +--- + +# Roo Code 3.29 Release Notes (2025-10-31) + +This combined summary covers the 3.29.x releases. It introduces the MiniMax provider, improves @ file search on large projects, clarifies the Logs tab and VS Code LM guidance, and includes multiple stability fixes. + +## Feature Highlights + +* Cloud Agent: PR Reviewer for instant high‑quality code reviews (learn more: https://roocode.com/reviewer) +* Intelligent file reading with token‑budget management and a 100 KB preview for very large files ([#8789](https://github.com/RooCodeInc/Roo-Code/pull/8789)) +* MiniMax provider for coding and reasoning with strong Chinese language support and competitive pricing (thanks Maosghoul!) ([#8820](https://github.com/RooCodeInc/Roo-Code/pull/8820)) +* Faster and more reliable @ file search on large repositories with configurable indexing limits and respect for VS Code ignore settings (thanks Naituw!) ([#8805](https://github.com/RooCodeInc/Roo-Code/pull/8805)) +* MCP tab renamed to “Logs” to match mixed-level messages (thanks hannesrudolph!) ([#8894](https://github.com/RooCodeInc/Roo-Code/pull/8894)) + +## QOL Improvements + +* Improve @ file search for large projects; add the roo-cline.maximumIndexedFilesForFileSearch setting with guidance on memory tradeoffs ([#8805](https://github.com/RooCodeInc/Roo-Code/pull/8805)) +* Rename MCP “Errors” tab to “Logs” to match info/warning/error messages; clearer empty state (“No logs yet”) ([#8894](https://github.com/RooCodeInc/Roo-Code/pull/8894)) +* Custom modes load from the configured storage path and persist across restarts (thanks elianiva!) ([#8499](https://github.com/RooCodeInc/Roo-Code/pull/8499)) +* Clarify VS Code LM API integration warning in Settings to reduce “model not supported” errors ([#8493](https://github.com/RooCodeInc/Roo-Code/pull/8493)) +* Keyboard shortcut: “Add to Context” moved to avoid Redo conflict; restores standard Redo ([#8653](https://github.com/RooCodeInc/Roo-Code/pull/8653)) +* Auto‑approve button responsiveness improved ([#8798](https://github.com/RooCodeInc/Roo-Code/pull/8798)) +* After “Add to Context,” input auto‑focuses and inserts two newlines to keep typing immediately ([#8877](https://github.com/RooCodeInc/Roo-Code/pull/8877)) + +## Bug Fixes + +* Reasoning effort selection auto-enables reasoning when needed so UI and behavior stay in sync ([#8890](https://github.com/RooCodeInc/Roo-Code/pull/8890)) +* Suppress noisy cloud‑agent exceptions for cleaner logs ([#8577](https://github.com/RooCodeInc/Roo-Code/pull/8577)) +* Prevent MCP server restart when toggling “Always allow” for MCP tools ([#8633](https://github.com/RooCodeInc/Roo-Code/pull/8633)) +* Reuse existing Qdrant index after outages to avoid full reindex and cut restart time ([#8588](https://github.com/RooCodeInc/Roo-Code/pull/8588)) +* Make code index initialization non‑blocking at activation to avoid startup hangs ([#8933](https://github.com/RooCodeInc/Roo-Code/pull/8933)) +* Honor maxReadFileLine across code definition listing and file reads to prevent context overflows ([#8509](https://github.com/RooCodeInc/Roo-Code/pull/8509)) +* Prevent infinite retry loop when canceling during auto‑retry ([#8902](https://github.com/RooCodeInc/Roo-Code/pull/8902)) +* Gate auth‑driven Roo model refresh to the active provider only to reduce background work ([#8915](https://github.com/RooCodeInc/Roo-Code/pull/8915)) +* search_files now respects .gitignore (including nested) by default; override when needed ([#8804](https://github.com/RooCodeInc/Roo-Code/pull/8804)) +* apply_diff export preserves trailing newlines (fix stripLineNumbers) ([#8227](https://github.com/RooCodeInc/Roo-Code/pull/8227)) +* Fix provider model loading race conditions to reduce timeouts and intermittent errors ([#8836](https://github.com/RooCodeInc/Roo-Code/pull/8836)) +* Rate limiting now uses a monotonic clock and enforces a hard cap to avoid long lockouts ([#8456](https://github.com/RooCodeInc/Roo-Code/pull/8456)) +* Messages typed during context condensing now send automatically once condensing finishes; per‑task queues no longer cross‑drain ([#8478](https://github.com/RooCodeInc/Roo-Code/pull/8478)) +* Checkpoint menu popover no longer clips long option text; items remain fully visible ([#8867](https://github.com/RooCodeInc/Roo-Code/pull/8867)) + +## Provider Updates + +* MiniMax provider added (MiniMax‑M2) with API key setup and model selection in UI ([#8820](https://github.com/RooCodeInc/Roo-Code/pull/8820)) +* Cerebras: add zai‑glm‑4.6 and change default to gpt‑oss‑120b; deprecate qwen‑3‑coder models ([#8920](https://github.com/RooCodeInc/Roo-Code/pull/8920)) +* Roo Code Cloud: dynamic model loading in the Model Picker with caching and graceful fallback ([#8728](https://github.com/RooCodeInc/Roo-Code/pull/8728)) +* Chutes AI: LongCat‑Flash‑Thinking‑FP8 models (200K, 128K) for longer coding sessions ([#8426](https://github.com/RooCodeInc/Roo-Code/pull/8426)) +* OpenRouter: add Anthropic Claude Haiku 4.5 to prompt‑caching models ([#8764](https://github.com/RooCodeInc/Roo-Code/pull/8764)) +* Z.ai (GLM‑4.5/4.6): “Enable reasoning” Deep Thinking toggle in UI ([#8872](https://github.com/RooCodeInc/Roo-Code/pull/8872)) +* Roo provider: Reasoning effort control to choose deeper thinking vs. faster/cheaper ([#8874](https://github.com/RooCodeInc/Roo-Code/pull/8874)) +* OpenAI‑compatible: centralized ~20% maxTokens cap to prevent context overruns ([#8822](https://github.com/RooCodeInc/Roo-Code/pull/8822)) +* Gemini: updated model list and “latest” aliases for easier selection ([#8486](https://github.com/RooCodeInc/Roo-Code/pull/8486)) + +## Documentation Updates + +* New: [MiniMax Provider](/providers/minimax) +* Update: VS Code LM guidance [VS Code LM](/providers/vscode-lm) +* Update: Custom Modes path and persistence [Custom Modes](/features/custom-modes) +* Update: Tools truncation behavior [list_code_definition_names](/advanced-usage/available-tools/list-code-definition-names) and [read_file](/advanced-usage/available-tools/read-file) +* Update: MCP UI wording to “Logs” [Using MCP in Roo](/features/mcp/using-mcp-in-roo) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.3.0.md b/apps/docs/docs/update-notes/v3.3.0.md new file mode 100644 index 00000000000..b56a9c2bceb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.0.md @@ -0,0 +1,26 @@ +--- +description: Roo Code 3.3.0 introduces native VS Code actions, intelligent mode switching, enhanced Markdown support, and AWS profile configuration for Bedrock provider. +keywords: + - roo code 3.3.0 + - code actions + - mode switching + - markdown support + - aws bedrock + - vs code extension + - ai coding assistant + - release notes +--- + +# Roo Code 3.3.0 Release Notes + +This release introduces native Code Actions, smarter mode switching, enhanced Markdown support for specific modes, and AWS profile support for Bedrock. + +--- + +## Feature Highlights + +- **Code Actions Support:** Integrated native VS Code code actions for quick fixes and refactoring suggestions directly within the editor. +- **Smarter Mode Switching:** Modes can now intelligently request switches to other modes when appropriate (e.g., suggesting Code mode when needing to edit code from Architect mode). +- **Enhanced Markdown Support:** Ask and Architect modes now support editing Markdown files. +- **Custom File Pattern Restrictions:** Added the ability to restrict custom modes to specific file patterns (e.g., allowing a "Technical Writer" mode to only edit `.md` files). +- **AWS Profiles for Bedrock:** Added support for configuring the Bedrock provider using AWS Profiles, beneficial for SSO or integrations without long-term credentials. diff --git a/apps/docs/docs/update-notes/v3.3.1.md b/apps/docs/docs/update-notes/v3.3.1.md new file mode 100644 index 00000000000..67a0d194c82 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.1.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.3.1 patch release fixes terminal management issues and mode switching bugs for improved stability and performance. +keywords: + - roo code 3.3.1 + - terminal management + - mode switching + - bug fixes + - patch release + - vs code extension + - ai assistant +--- + +# Roo Code 3.3.1 Release Notes + +This patch release includes important fixes for terminal management and mode switching. + +--- + +## Bug Fixes + +- Resolved an issue where the terminal management system created unnecessary new terminals. (thanks evan-fannin!) +- Fixed a bug where the saved API provider for a mode wasn't selected correctly after a mode switch command. diff --git a/apps/docs/docs/update-notes/v3.3.10.md b/apps/docs/docs/update-notes/v3.3.10.md new file mode 100644 index 00000000000..4be11171137 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.10.md @@ -0,0 +1,33 @@ +--- +description: This release includes notable changes to mode switching and prompts, experimental diff improvements, and various general fixes. +--- + +# Roo Code 3.3.10 Release Notes + +This release includes notable changes to mode switching and prompts, experimental diff improvements, and various general fixes. + +--- + +## Notable Changes + +- Improved default prompts for Architect and Ask modes. +- Allowed switching between modes using slash commands (e.g., `/ask why is the sky blue?`). + +--- + +## Experimental + +- Improved experimental unified diff strategy and selection logic in code actions. (thanks nissa-seru!) + +--- + +## General Improvements & Fixes + +- Added shortcuts to currently open tabs in the `@`-mention file suggestions. (thanks olup!) +- Enabled markdown formatting in `o3` and `o1` model responses. (thanks nissa-seru!) +- Improved terminal shell detection logic. (thanks canvrno, nissa-seru!) +- Applied visual improvements/cleanup to the list of modes on the Prompts tab. +- Fixed pricing for `o1-mini`. (thanks hesara!) +- Fixed context window size calculation. (thanks MuriloFP!) +- Fixed occasional errors when switching between API profiles. (thanks samhwv8!) +- Fixed double-scrollbar issue in the provider dropdown. diff --git a/apps/docs/docs/update-notes/v3.3.11.md b/apps/docs/docs/update-notes/v3.3.11.md new file mode 100644 index 00000000000..538d0d58232 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.11.md @@ -0,0 +1,14 @@ +--- +description: This patch release includes shell integration improvements and slash command autocomplete. +--- + +# Roo Code 3.3.11 Release Notes + +This patch release includes shell integration improvements and slash command autocomplete. + +--- + +## Improvements & Fixes + +- Implemented safer shell profile path checking to avoid errors on Windows. +- Added autocomplete suggestions for slash commands (e.g., `/ask`). diff --git a/apps/docs/docs/update-notes/v3.3.12.md b/apps/docs/docs/update-notes/v3.3.12.md new file mode 100644 index 00000000000..47706774030 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.12.md @@ -0,0 +1,16 @@ +--- +description: Roo Code 3.3.12 adds new Gemini 2.0 models including Flash, Flash Lite Preview, and Pro Experimental, plus fixes mode API configuration bugs. +keywords: + [roo code 3.3.12, gemini 2.0, flash model, flash lite, pro experimental, mode configuration, api settings, bug fix] +--- + +# Roo Code 3.3.12 Release Notes + +This patch release adds new Gemini models and fixes a mode configuration bug. + +--- + +## Updates & Fixes + +- Added new Gemini 2.0 models (Flash, Flash Lite Preview, Pro Experimental). +- Fixed a bug related to changing a mode's API configuration on the Prompts tab. diff --git a/apps/docs/docs/update-notes/v3.3.13.md b/apps/docs/docs/update-notes/v3.3.13.md new file mode 100644 index 00000000000..b79ac904002 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.13.md @@ -0,0 +1,25 @@ +--- +description: Roo Code 3.3.13 ensures DeepSeek R1 works with Ollama, enables terminal context menus, improves sliding window truncation, and fixes API profile switching bugs. +keywords: + - roo code 3.3.13 + - deepseek r1 + - ollama + - terminal context menu + - sliding window + - api profile + - prompt caching + - bug fixes +--- + +# Roo Code 3.3.13 Release Notes + +This release includes provider support updates, terminal improvements, and fixes. + +--- + +## Improvements & Fixes + +- Ensured the DeepSeek R1 model works correctly with Ollama. (thanks sammcj!) +- Enabled context menu commands (like copy/paste) within the integrated terminal used by Roo Code. (thanks samhvw8!) +- Improved sliding window truncation strategy for models that do not support prompt caching. (thanks nissa-seru!) +- Implemented initial fixes for bugs related to switching API profiles (further improvements planned). diff --git a/apps/docs/docs/update-notes/v3.3.14.md b/apps/docs/docs/update-notes/v3.3.14.md new file mode 100644 index 00000000000..5df20eb2718 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.14.md @@ -0,0 +1,13 @@ +--- +description: This release addresses issues from the previous 3.3.13 release. +--- + +# Roo Code 3.3.14 Release Notes + +This release addresses issues from the previous 3.3.13 release. + +--- + +## Fixes + +- Reverted deployment script changes that caused issues in the 3.3.13 release, restoring stability. diff --git a/apps/docs/docs/update-notes/v3.3.15.md b/apps/docs/docs/update-notes/v3.3.15.md new file mode 100644 index 00000000000..bc86f930da2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.15.md @@ -0,0 +1,36 @@ +--- +description: Roo Code 3.3.15 introduces experimental Checkpoints for tracking project changes, adds copy button to recent tasks, enhances API profile flow, and fixes MCP initialization. +keywords: + - roo code 3.3.15 + - checkpoints + - experimental feature + - project tracking + - rollback + - api profile + - mcp initialization + - ux improvements +--- + +# Roo Code 3.3.15 Release Notes (2025-02-08) + +This release introduces Checkpoints as an opt-in experimental feature and includes UX improvements and bug fixes. + +--- + +## Feature Highlights + +- **Checkpoints (Experimental Opt-in):** Introduced Checkpoints as an opt-in feature in Advanced Settings. This allows tracking project changes during tasks for review or rollback. User feedback is requested during this experimental phase. + +--- + +## UX Improvements + +- Added a copy button to the recent tasks list. (thanks hannesrudolph!) +- Enhanced the flow for adding a new API profile. + +--- + +## Bug Fixes + +- Resolved API profile switching issues on the settings screen. +- Improved MCP initialization and server restarts. (thanks MuriloFP, hannesrudolph!) diff --git a/apps/docs/docs/update-notes/v3.3.16.md b/apps/docs/docs/update-notes/v3.3.16.md new file mode 100644 index 00000000000..0304577c6c5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.16.md @@ -0,0 +1,30 @@ +--- +description: Roo Code 3.3.16 fixes API configuration jumpiness, adds checkpoint tooltips, resolves git settings issues, and adds support for Volcano Ark platform. +keywords: + - roo code 3.3.16 + - checkpoints + - api configuration + - volcano ark + - git settings + - tooltips + - openai compatible + - bug fixes +--- + +# Roo Code 3.3.16 Release Notes (2025-02-09) + +This release includes fixes for Checkpoints and API configuration, plus support for Volcano Ark. + +--- + +## Bug Fixes & Improvements + +- Fixed jumpiness when entering API configuration by updating on blur instead of input. +- Added tooltips to Checkpoint actions. +- Fixed an issue where Checkpoints were overwriting existing git name/email settings. + +--- + +## Provider Support + +- Added support for the Volcano Ark platform via the OpenAI-compatible provider. diff --git a/apps/docs/docs/update-notes/v3.3.17.md b/apps/docs/docs/update-notes/v3.3.17.md new file mode 100644 index 00000000000..20cdb95eabf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.17.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.3.17 patch release fixes the restore checkpoint popover UI and unsets git configuration settings incorrectly set by previous Checkpoints feature. +keywords: + - roo code 3.3.17 + - checkpoints + - git configuration + - popover ui + - restore checkpoint + - patch release + - bug fixes +--- + +# Roo Code 3.3.17 Release Notes (2025-02-09) + +This patch release includes fixes for the Checkpoints feature. + +--- + +## Bug Fixes + +- Fixed the restore checkpoint popover UI. +- Unset git configuration settings that were previously set incorrectly by the Checkpoints feature. diff --git a/apps/docs/docs/update-notes/v3.3.18.md b/apps/docs/docs/update-notes/v3.3.18.md new file mode 100644 index 00000000000..f3649f32ad8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.18.md @@ -0,0 +1,39 @@ +--- +description: Roo Code 3.3.18 adds per-API temperature settings for model creativity control, Requesty provider support, copy button for system prompts, and Windows checkpoint fixes. +keywords: + - roo code 3.3.18 + - temperature control + - requesty provider + - system prompt copy + - openrouter stats + - mcp servers + - checkpoint windows + - bug fixes +--- + +# Roo Code 3.3.18 Release Notes (2025-02-11) + +This release introduces model temperature control, Requesty provider support, and various UX improvements and bug fixes. + +--- + +## Feature Highlights + +- **Temperature Control:** Added a per-API-configuration setting for model temperature, allowing different creativity levels for the same model depending on the mode. (thanks joemanley201!) +- **Requesty Provider Support:** Added support for the Requesty provider. (thanks samhvw8!) + +--- + +## UX Improvements + +- Added a copy button to the Prompts tab for system prompts. (thanks mamertofabian!) + +--- + +## Bug Fixes + +- Added retries for fetching OpenRouter usage stats. (thanks jcbdev!) +- Fixed disabled MCP servers sometimes not showing in settings on startup. (thanks MuriloFP!) +- Fixed Ollama/LMStudio URL flickering issue in settings. +- Fixed incorrect API retry timing calculations. +- Fixed Checkpoint issues on Windows. (thanks CTE!) diff --git a/apps/docs/docs/update-notes/v3.3.19.md b/apps/docs/docs/update-notes/v3.3.19.md new file mode 100644 index 00000000000..64522871838 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.19.md @@ -0,0 +1,26 @@ +--- +description: Roo Code 3.3.19 fixes file write abort reverting, honors VS Code themes in dialogs, allows clearing default custom instructions, and uses shadow git for checkpoints. +keywords: + - roo code 3.3.19 + - file write abort + - vs code theme + - custom instructions + - shadow git + - checkpoints + - help button + - bug fixes +--- + +# Roo Code 3.3.19 Release Notes (2025-02-12) + +This release includes bug fixes and improvements related to file writes, UI themes, custom instructions, and checkpoints. + +--- + +## Bug Fixes & Improvements + +- Fixed a bug where aborting during file writes would not revert the changes. +- Ensured dialog backgrounds honor the VS Code theme. +- Made it possible to clear default custom instructions for built-in modes. +- Added a help button linking to the documentation site. +- Switched checkpoints logic to use a shadow git repository to avoid issues with hot reloads and polluting existing repositories. (thanks Cline!) diff --git a/apps/docs/docs/update-notes/v3.3.2.md b/apps/docs/docs/update-notes/v3.3.2.md new file mode 100644 index 00000000000..f77b4f20a93 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.2.md @@ -0,0 +1,25 @@ +--- +description: Roo Code 3.3.2 improves mode configuration with API dropdowns, fixes MCP tools, enhances OpenRouter DeepSeek-R1 support, and refines UI elements. +keywords: + - roo code 3.3.2 + - mode configuration + - openrouter + - deepseek r1 + - mcp tools + - ui improvements + - api configuration +--- + +# Roo Code 3.3.2 Release Notes + +This release improves mode configuration, OpenRouter integration, and UI elements. + +--- + +## Improvements & Fixes + +- Added a dropdown to select the API configuration for a specific mode in the Prompts tab. +- Fixed a bug where the "Always Allow" checkbox wasn't showing up for MCP tools. +- Improved OpenRouter DeepSeek-R1 integration: set temperature to 0.6 and displayed reasoning output. (thanks Szpadel!) +- Allowed specifying a custom OpenRouter base URL. (thanks dairui1!) +- Improved the UI for nested settings. (thanks PretzelVector!) diff --git a/apps/docs/docs/update-notes/v3.3.20.md b/apps/docs/docs/update-notes/v3.3.20.md new file mode 100644 index 00000000000..1b876ae1cdf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.20.md @@ -0,0 +1,27 @@ +--- +description: This release includes minor bug fixes and performance improvements. +--- + +# Roo Code 3.3.20 Release Notes (2025-02-14) + +This release introduces project-level custom modes and updates to Ask mode. + +--- + +## Feature Highlights + +- **Project-Level Custom Modes:** Added support for defining project-specific custom modes in a `.roomodes` file within the workspace. +- **Ask Mode Update:** Ask mode is now focused purely on chat interactions and no longer supports editing Markdown files. + +--- + +## Provider Support + +- Added new Mistral models. (thanks d-oit, bramburn!) + +--- + +## General Improvements + +- Added a setting to control the number of visible editor tabs included in the context. +- Improved the initial setup experience by fixing API key entry on the welcome screen. diff --git a/apps/docs/docs/update-notes/v3.3.21.md b/apps/docs/docs/update-notes/v3.3.21.md new file mode 100644 index 00000000000..d9b30f08944 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.21.md @@ -0,0 +1,33 @@ +--- +description: Roo Code 3.3.21 introduces @terminal mention to pull recent terminal output into context, enables o1 model streaming, and fixes language settings and Mistral provider. +keywords: + - roo code 3.3.21 + - terminal mention + - o1 streaming + - mistral fix + - language settings + - zh-cn + - zh-tw + - input box + - profile switching +--- + +# Roo Code 3.3.21 Release Notes (2025-02-17) + +This release introduces the `@terminal` mention feature and includes various improvements and fixes. + +--- + +## Feature Highlights + +- **@terminal Mention:** Added the ability to mention `@terminal` in the chat input to pull recent terminal output directly into the context. (thanks Cline!) + +--- + +## General Improvements & Fixes + +- Enabled streaming mode for OpenAI `o1` models. +- Fixed the system prompt to ensure Roo is aware of all available modes. +- Fixed default preferred language settings for `zh-cn` and `zh-tw`. (thanks System233!) +- Fixed input box revert issue and configuration loss during profile switching. (thanks System233!) +- Fixed Mistral provider integration. (thanks d-oit!) diff --git a/apps/docs/docs/update-notes/v3.3.22.md b/apps/docs/docs/update-notes/v3.3.22.md new file mode 100644 index 00000000000..651b8c2bdc9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.22.md @@ -0,0 +1,39 @@ +--- +description: Roo Code 3.3.22 adds MCP server deletion, wildcard command auto-approval, enhanced provider settings UI, custom language preferences, Catalan support, and Ollama reasoning tags. +keywords: + - roo code 3.3.22 + - mcp server delete + - command auto-approval + - provider settings + - custom languages + - catalan + - ollama think tags + - roomodes +--- + +# Roo Code 3.3.22 Release Notes (2025-02-20) + +This release includes general improvements to settings, MCP server management, language support, and bug fixes. + +--- + +## General Improvements + +- Added a button to delete MCP servers. (thanks hannesrudolph!) +- Added a wildcard (`*`) option for command execution auto-approval (use with caution!). +- Enhanced the Provider Settings UI with clear Save buttons and warnings about unsaved changes. (thanks System233!) +- Added support for setting custom preferred languages on the Prompts tab. +- Added Catalan language support. (thanks alarno!) + +--- + +## Provider Support + +- Improved parsing of `` reasoning tags from Ollama models. (thanks System233!) + +--- + +## Bug Fixes + +- Fixed the system prompt preview copy button always copying the Code mode version. +- Fixed the `.roomodes` file not being automatically created when adding custom modes from the Prompts tab. diff --git a/apps/docs/docs/update-notes/v3.3.23.md b/apps/docs/docs/update-notes/v3.3.23.md new file mode 100644 index 00000000000..468e8815b4d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.23.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.3.23 patch release fixes issues with unsaved changes on settings page and improves error handling when reading custom instructions from files. +keywords: + - roo code 3.3.23 + - settings management + - unsaved changes + - custom instructions + - error handling + - patch release + - bug fixes +--- + +# Roo Code 3.3.23 Release Notes (2025-02-20) + +This patch release includes bug fixes related to settings management. + +--- + +## Bug Fixes + +- Fixed an issue with hitting "Done" on the settings page with unsaved changes. (thanks System233!) +- Handled errors more gracefully when reading custom instructions from files. (thanks joemanley201!) diff --git a/apps/docs/docs/update-notes/v3.3.24.md b/apps/docs/docs/update-notes/v3.3.24.md new file mode 100644 index 00000000000..2b57ab7a580 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.24.md @@ -0,0 +1,14 @@ +--- +description: This release includes minor bug fixes and performance improvements. +--- + +# Roo Code 3.3.24 Release Notes (2025-02-20) + +This patch release includes fixes for AWS Bedrock and model pricing. + +--- + +## Bug Fixes + +- Fixed a bug with region selection that prevented AWS Bedrock profiles from being saved. (thanks oprstchn!) +- Updated the price for `gpt-4o`. (thanks marvijo-code!) diff --git a/apps/docs/docs/update-notes/v3.3.25.md b/apps/docs/docs/update-notes/v3.3.25.md new file mode 100644 index 00000000000..0312bb98363 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.25.md @@ -0,0 +1,14 @@ +--- +description: This release introduces the Debug mode and an experimental "Power Steering" option. +--- + +# Roo Code 3.3.25 Release Notes (2025-02-21) + +This release introduces the Debug mode and an experimental "Power Steering" option. + +--- + +## Feature Highlights + +- **Debug Mode:** Added a new "Debug" mode specializing in diagnosing and fixing tricky problems. (thanks Ted Werbel, Carlos E. Perez!) +- **Experimental Power Steering:** Added an optional "Power Steering" setting to improve model adherence to role definitions and custom instructions by more frequently reminding the model of its current mode details (uses additional tokens). Enable via the checkbox at the bottom of the main settings view. diff --git a/apps/docs/docs/update-notes/v3.3.26.md b/apps/docs/docs/update-notes/v3.3.26.md new file mode 100644 index 00000000000..4fcef2e220b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.26.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.3.26 patch release adjusts the default Debug mode prompt to focus on diagnosis and require user confirmation before implementation. +keywords: + - roo code 3.3.26 + - debug mode + - prompt update + - diagnosis focus + - user confirmation + - quality of life + - patch release +--- + +# Roo Code 3.3.26 Release Notes (2025-02-27) + +This patch release updates the default prompt for Debug mode. + +--- + +## General and QOL Improvements + +- Adjusted the default prompt for Debug mode to focus more on diagnosis and require user confirmation before proceeding to implementation. diff --git a/apps/docs/docs/update-notes/v3.3.3.md b/apps/docs/docs/update-notes/v3.3.3.md new file mode 100644 index 00000000000..d7a51bf7fcf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.3.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.3.3 patch release enhances error handling for restricted file writes and improves mode/configuration dropdown styling. +keywords: + - roo code 3.3.3 + - error handling + - ui styling + - dropdown improvements + - restricted files + - patch release +--- + +# Roo Code 3.3.3 Release Notes + +This patch release includes error handling and styling improvements. + +--- + +## Improvements & Fixes + +- Improved error handling when a mode attempts to write to a restricted file. +- Improved styling for mode/configuration dropdowns. (thanks psv2522!) diff --git a/apps/docs/docs/update-notes/v3.3.4.md b/apps/docs/docs/update-notes/v3.3.4.md new file mode 100644 index 00000000000..7f601b43574 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.4.md @@ -0,0 +1,23 @@ +--- +description: Roo Code 3.3.4 delivers up to 10x faster diff editing performance, configurable MCP server timeouts, and enhanced code actions with context menu integration. +keywords: + - roo code 3.3.4 + - diff editing + - performance improvement + - mcp timeout + - code actions + - context menu + - vs code extension +--- + +# Roo Code 3.3.4 Release Notes + +This release brings significantly faster diff editing performance, configurable MCP timeouts, and enhanced Code Actions. + +--- + +## Feature Highlights + +- **Faster Diff Edits:** Drastically improved the speed of applying diff edits (up to 10x faster). (thanks hannesrudolph, KyleHerndon!) +- **Configurable MCP Timeout:** Added per-server network timeout configuration for MCP, ranging from 15 seconds to an hour. +- **Enhanced Code Actions:** Added explain/improve/fix code actions to the context menu, problems tab, and lightbulb indicators. Added an option to perform these actions in the current task or a new one. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.3.5.md b/apps/docs/docs/update-notes/v3.3.5.md new file mode 100644 index 00000000000..0521334b993 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.5.md @@ -0,0 +1,30 @@ +--- +description: Roo Code 3.3.5 adds context window token visibility, auto-approve mode switching, experimental insert_content and search_and_replace tools, plus DeepSeek R1 improvements. +keywords: + - roo code 3.3.5 + - context window + - token count + - mode switching + - insert content + - search replace + - deepseek r1 + - experimental tools +--- + +# Roo Code 3.3.5 Release Notes + +This release brings context window visibility, auto-approval for mode switching, new experimental editing tools, and DeepSeek improvements. + +--- + +## Feature Highlights + +- **Context Window Visibility:** Made information about the conversation's token count and context capacity visible in the task header and available to models. (thanks MuriloFP!) +- **Auto-Approve Mode Switching:** Added checkboxes to auto-approve mode switch requests. (thanks MuriloFP!) +- **Experimental Editing Tools:** Added new experimental tools: `insert_content` (insert text at line number) and `search_and_replace` (replace text/regex). (thanks samhvw8!) + +--- + +## Provider Improvements + +- **DeepSeek R1:** Improved support by capturing reasoning, supporting more OpenRouter variants, fixing crashes on empty chunks, and avoiding system messages. (thanks Szpadel!) diff --git a/apps/docs/docs/update-notes/v3.3.6.md b/apps/docs/docs/update-notes/v3.3.6.md new file mode 100644 index 00000000000..06d013c6974 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.6.md @@ -0,0 +1,40 @@ +--- +description: Roo Code 3.3.6 introduces the new_task tool for programmatic task creation, enhanced dropdown UI, and adds support for Perplexity Sonar Reasoning and Unbound providers. +keywords: + - roo code 3.3.6 + - new task tool + - perplexity sonar + - unbound provider + - ui improvements + - qwen-max fix + - programmatic tasks +--- + +# Roo Code 3.3.6 Release Notes + +This release introduces the `new_task` tool, UI improvements, and new provider support. + +--- + +## Feature Highlights + +- **New Task Tool:** Added a `new_task` tool allowing Roo to start new tasks programmatically with an initial message and mode, enabling workflows like context continuation or memory bank updates. + +--- + +## UI Improvements + +- Enhanced dropdown visuals for a better user experience. (thanks psv2522!) + +--- + +## Provider Support + +- Added support for Perplexity Sonar Reasoning models. (thanks Szpadel!) +- Added support for the Unbound provider. (thanks vigneshsubbiah16!) + +--- + +## Bug Fixes + +- Fixed a critical bug affecting `qwen-max` and potentially other OpenAI-compatible providers. (thanks Szpadel!) diff --git a/apps/docs/docs/update-notes/v3.3.7.md b/apps/docs/docs/update-notes/v3.3.7.md new file mode 100644 index 00000000000..57a19b99840 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.7.md @@ -0,0 +1,34 @@ +--- +description: Roo Code 3.3.7 adds o3-mini model support, improves Code Actions with direct context addition, introduces API rate limiting with exponential backoff, and enhances tool interactions. +keywords: + - roo code 3.3.7 + - o3-mini + - code actions + - api rate limiting + - exponential backoff + - tool interactions + - deepseek r1 + - custom modes +--- + +# Roo Code 3.3.7 Release Notes + +This release adds support for `o3-mini`, improves Code Actions and tool interactions, and introduces API rate limiting. + +--- + +## Feature Highlights + +- Added support for the `o3-mini` model. (thanks shpigunov!) +- Improved Code Actions: Added ability to select code and add it directly to context, plus bug fixes. (thanks samhvw8!) +- Added the ability to include a message when approving or rejecting tool use. (thanks napter!) +- Added an exponential backoff strategy for API retries. +- Added an optional slider in Advanced Settings to enable rate limiting API requests (e.g., wait at least X seconds between requests). + +--- + +## Improvements & Fixes + +- Improved chat input box styling. (thanks psv2522!) +- Captured reasoning from more variants of DeepSeek R1. (thanks Szpadel!) +- Tweaked prompts to improve Roo's ability to create new custom modes. diff --git a/apps/docs/docs/update-notes/v3.3.8.md b/apps/docs/docs/update-notes/v3.3.8.md new file mode 100644 index 00000000000..a084503f6e1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.8.md @@ -0,0 +1,15 @@ +--- +description: This patch release includes provider fixes and a new prompt customization option. +--- + +# Roo Code 3.3.8 Release Notes + +This patch release includes provider fixes and a new prompt customization option. + +--- + +## Fixes & Improvements + +- Fixed `o3-mini` model support in the Glama provider. (thanks Punkpeye!) +- Added an option to omit instructions for creating MCP servers from the system prompt. (thanks samhvw8!) +- Fixed a bug where renaming API profiles without actually changing the name could delete them. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.3.9.md b/apps/docs/docs/update-notes/v3.3.9.md new file mode 100644 index 00000000000..1f522577f01 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.9.md @@ -0,0 +1,14 @@ +--- +description: Roo Code 3.3.9 adds support for OpenAI's o3-mini-high and o3-mini-low model variants, expanding AI model options for different performance needs. +keywords: [roo code 3.3.9, o3-mini-high, o3-mini-low, openai models, ai model support, vs code extension] +--- + +# Roo Code 3.3.9 Release Notes + +This release adds support for new OpenAI models. + +--- + +## Provider Updates + +- Added support for `o3-mini-high` and `o3-mini-low` models. diff --git a/apps/docs/docs/update-notes/v3.3.md b/apps/docs/docs/update-notes/v3.3.md new file mode 100644 index 00000000000..818044515c1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.3.md @@ -0,0 +1,113 @@ +--- +description: Roo Code 3.3 brings VS Code code actions, mode switching, Debug mode, experimental checkpoints, @terminal mentions, enhanced Markdown editing, and extensive provider updates. +keywords: + - roo code 3.3 + - code actions + - debug mode + - checkpoints + - terminal mention + - mode switching + - power steering + - custom modes + - aws bedrock + - deepseek r1 +--- + +# Roo Code 3.3 Release Notes (2025-02-27) + +This extensive release cycle brings a wealth of features including native VS Code code actions, mode-to-mode switching, enhanced Markdown editing for Ask/Architect modes, custom mode file restrictions, Bedrock AWS Profile support, the new "Debug" mode, experimental "Power Steering", project-specific custom modes, `@terminal` context mentions, improved API profile management, and a vast number of QOL improvements, provider updates, and bug fixes. + +--- + +## Key Features & Enhancements + +- **Native VS Code Code Actions:** Implemented native VS Code code actions for quick fixes and refactoring options. +- **Mode Switching Requests:** Modes can now request to switch to other modes when needed. +- **Enhanced Ask & Architect Modes:** Ask and Architect modes can now edit Markdown files. +- **Custom Mode File Restrictions:** Custom modes can now be restricted to specific file patterns. +- **"Debug" Mode:** Added a new "Debug" mode specializing in diagnosing and fixing problems. +- **Experimental "Power Steering":** Introduced an experimental option to significantly improve adherence to role definitions and custom instructions. +- **Project-Specific Custom Modes:** Support for project-specific custom modes in a `.roomodes` file. +- **`@terminal` Context Mention:** Added the ability to mention `@terminal` to pull terminal output into the chat context. (thanks Cline!) +- **Experimental Editing Tools:** Introduced `insert_content` and `search_and_replace` tools. (thanks @samhvw8!) +- **Context Window Usage Display:** Made context window usage visible in the task header. (thanks @MuriloFP!) +- **Auto-Approve Mode Switch:** Added checkboxes to auto-approve mode switch requests. (thanks @MuriloFP!) +- **New Task Tool:** Added a `new_task` tool that allows Roo to start new tasks with an initial message and mode. +- **Checkpoints (Experimental & Improved):** Introduced experimental checkpoints using a shadow git repository, with subsequent fixes for Windows file locks and UI. (thanks Cline!) +- **Per-Server MCP Network Timeout:** Added per-server MCP network timeout configuration. +- **Code Action Task Destination:** Option to perform explain/improve/fix code actions in the existing task or a new one. (thanks @samhvw8!) + +--- + +## Provider Updates + +- **Bedrock AWS Profiles:** Support for configuring the Bedrock provider with AWS Profiles. +- **Mistral Models:** Added more Mistral models. (thanks @d-oit, @bramburn!) +- **Requesty Provider:** Added the Requesty provider. (thanks @samhvw8!) +- **Volcano Ark Platform:** Support for Volcano Ark platform through the OpenAI-compatible provider. +- **New Gemini Models:** Added new Gemini models. +- **o3-mini Models:** Added o3-mini-high, o3-mini-low, and general o3-mini support. (thanks @shpigunov!) +- **Perplexity/Sonar-Reasoning:** Added support for perplexity/sonar-reasoning. (thanks @Szpadel!) +- **Unbound Provider:** Added the Unbound provider. (thanks @vigneshsubbiah16!) +- **OpenRouter DeepSeek-R1 Integration:** Improved integration by setting recommended temperature and displaying reasoning output. (thanks @Szpadel!) +- **Custom OpenRouter Base URL:** Allowed specifying a custom OpenRouter base URL. (thanks @dairui1!) + +--- + +## QOL Improvements & UI + +- **Improved Provider Settings UI:** Clearer Save buttons and warnings for unsaved changes in Provider Settings. (thanks @System233!) +- **Custom Preferred Languages:** Added support for setting custom preferred languages on the Prompts tab, including Catalan. (thanks @alarno!) +- **MCP Server Deletion:** Added a button to delete MCP servers. (thanks @hannesrudolph!) +- **API Config Dropdown for Modes:** Added a dropdown to select API configuration for a mode in the Prompts tab. +- **Nicer Nested Settings UI:** Improved the UI for nested settings. (thanks @PretzelVector!) +- **Autocomplete for Slash Commands.** +- **Open Tabs in @-Mentions:** Added shortcuts to currently open tabs in @-mentions. (thanks @olup!) +- **Improved Terminal Shell Detection.** (thanks @canvrno, @nissa-seru!) +- **Visual Improvements:** Various visual fixes to dropdowns, mode lists, and chat input styling. (thanks @psv2522!) +- **Include Message with Tool Approval/Rejection.** (thanks @napter!) +- **API Retries with Exponential Backoff & Rate Limiting.** +- **Help Button to Docs Site.** +- **Per-API Model Temperature Setting.** (thanks @joemanley201!) +- **Copy Button for Recent Tasks & System Prompt.** (thanks @hannesrudolph, @mamertofabian!) +- **Improved New API Profile UX.** +- **Terminal Context Menu.** (thanks @samhvw8!) +- **Sliding Window Truncation for Non-Caching Models.** (thanks @nissa-seru!) + +--- + +## Bug Fixes + +- Fixed numerous API profile switching bugs. (thanks @System233, @samhvw8!) +- Fixed AWS Bedrock region selection. (thanks @oprstchn!) +- Fixed custom instruction file read errors. (thanks @joemanley201!) +- Fixed `.roomodes` auto-creation. +- Fixed Mistral integration. (thanks @d-oit!) +- Fixed system prompt mode awareness. +- Fixed welcome screen API key race condition. +- Fixed file write aborts not reverting. +- Fixed disabled MCP server display. (thanks @MuriloFP!) +- Fixed Ollama/LMStudio URL input flicker. +- Fixed o1-mini pricing. (thanks @hesara!) +- Fixed context window size calculation. (thanks @MuriloFP!) +- Fixed o3-mini in Glama provider. (thanks @Punkpeye!) +- Fixed qwen-max and other OpenAI-compatible provider issues. (thanks @Szpadel!) +- Fixed terminal management creating unnecessary terminals. (thanks @evan-fannin!) +- Fixed saved API provider not selected after mode switch. + +--- + +## Misc Improvements + +- Updated gpt-4o price. (thanks @marvijo-code!) +- Enabled streaming for OpenAI o1. +- Made Ask mode read-only for Markdown files. +- Added setting for open tabs context count. +- Honored VS Code theme for dialog backgrounds. +- Allowed clearing default custom instructions for built-in modes. +- Added OpenRouter usage stats retries. (thanks @jcbdev!) +- Prompt tweaks for custom mode creation. +- Improved DeepSeek R1 support. (thanks @Szpadel!) +- Sped up diff editing. (thanks @hannesrudolph, @KyleHerndon!) +- Thrown errors sooner for restricted file writes. +- New Roo Code community Discord. diff --git a/apps/docs/docs/update-notes/v3.30.0.mdx b/apps/docs/docs/update-notes/v3.30.0.mdx new file mode 100644 index 00000000000..e6e528ffebf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.30.0.mdx @@ -0,0 +1,46 @@ +--- +description: Roo Code 3.30.0 adds OpenRouter embeddings, reasoning handling improvements, and stability/UI fixes. +keywords: + - roo code 3.30.0 + - new features + - bug fixes +image: /img/v3.30.0/v3.30.0.png +--- + +# Roo Code 3.30.0 Release Notes (2025-11-03) + +This patch introduces OpenRouter embeddings, improves reasoning handling, and delivers stability and UI fixes. + +Roo Code v3.30.0 Release + +## OpenRouter Embeddings + +We've added OpenRouter as an embedding provider for codebase indexing in Roo Code (thanks dmarkey!) ([#8973](https://github.com/RooCodeInc/Roo-Code/pull/8973)). + +OpenRouter currently supports 7 embedding models, including the top‑ranking Qwen3 Embedding. + +> **📚 Documentation**: See [Codebase Indexing](/features/codebase-indexing) and [OpenRouter Provider](/providers/openrouter). + +## QOL Improvements + +* Terminal settings cleanup with Inline as the default terminal and clearer options; shell integration default is disabled to reduce environment conflicts ([#8342](https://github.com/RooCodeInc/Roo-Code/pull/8342)) + +## Bug Fixes + +* Prevent message loss during queue drain race conditions to preserve message order and reliable chats ([#8955](https://github.com/RooCodeInc/Roo-Code/pull/8955)) +* Requesty OAuth: auto-create a stable "Requesty" profile with a default model so sign-in completes reliably (thanks Thibault00!) ([#8699](https://github.com/RooCodeInc/Roo-Code/pull/8699)) +* Cancel during streaming no longer causes flicker; you can resume in place, input stays enabled, and the spinner stops deterministically ([#8986](https://github.com/RooCodeInc/Roo-Code/pull/8986)) +* Remove newline-only reasoning blocks from OpenAI-compatible responses for cleaner output and logs ([#8990](https://github.com/RooCodeInc/Roo-Code/pull/8990)) +* "Disable Terminal Shell Integration" now links to the correct documentation section ([#8997](https://github.com/RooCodeInc/Roo-Code/pull/8997)) + +## Misc Improvements + +* Add preserveReasoning flag to optionally include reasoning in API history so later turns can leverage prior reasoning; off by default and model‑gated ([#8934](https://github.com/RooCodeInc/Roo-Code/pull/8934)) + +## Provider Updates + +* Chutes: dynamic/router provider so new models appear automatically; safer error logging and temperature applied only when supported ([#8980](https://github.com/RooCodeInc/Roo-Code/pull/8980)) +* OpenAI‑compatible providers: handle `` reasoning tags in streaming for consistent reasoning chunk handling ([#8989](https://github.com/RooCodeInc/Roo-Code/pull/8989)) +* GLM 4.6: capture reasoning content in base OpenAI‑compatible provider during streaming ([#8976](https://github.com/RooCodeInc/Roo-Code/pull/8976)) +* Fireworks: add GLM‑4.6 to the model dropdown for stronger coding performance and longer context (thanks mmealman!) ([#8754](https://github.com/RooCodeInc/Roo-Code/pull/8754)) +* Fireworks: add MiniMax M2 with 204.8K context and 4K output tokens; correct pricing metadata (thanks dmarkey!) ([#8962](https://github.com/RooCodeInc/Roo-Code/pull/8962)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.30.1.mdx b/apps/docs/docs/update-notes/v3.30.1.mdx new file mode 100644 index 00000000000..dd17e5cefc6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.30.1.mdx @@ -0,0 +1,19 @@ +--- +description: Roo Code 3.30.1 fixes an embedding dimension mismatch and reverts a problematic cancel/resume change to restore stability. +keywords: + - roo code 3.30.1 + - bug fixes + - embeddings + - OpenRouter + - Mistral + - UI flicker +--- +# Roo Code 3.30.1 Release Notes (2025-11-04) + +This patch improves reliability by fixing an embedding dimension mismatch and restoring stable cancel/resume behavior. + + +## Bug Fixes + +* Correct OpenRouter Mistral embedding dimension to 1536 to prevent vector size errors; existing Qdrant collections are recreated with the correct size for consistent similarity search ([#9028](https://github.com/RooCodeInc/Roo-Code/pull/9028)) +* Revert recent cancel/resume change that caused UI flicker and unreliable resumption, restoring the previous stable behavior while a safer fix is prepared ([#9032](https://github.com/RooCodeInc/Roo-Code/pull/9032)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.30.2.mdx b/apps/docs/docs/update-notes/v3.30.2.mdx new file mode 100644 index 00000000000..64b139e28df --- /dev/null +++ b/apps/docs/docs/update-notes/v3.30.2.mdx @@ -0,0 +1,42 @@ +--- +description: Bedrock Global Inference, expanded model support and limits, and QOL fixes for UI clarity and provider reliability. +keywords: + - roo code 3.30.2 + - new features + - bug fixes + - provider updates + - bedrock global inference + - claude sonnet 4.5 defaults + - qwen3 embeddings + - cerebras zai-glm-4.6 +image: /img/v3.30.2/v3.30.2.png +--- + +# Roo Code 3.30.2 Release Notes (2025-11-06) + +This patch adds Bedrock Global Inference, expands model options and limits, improves UI clarity, and fixes provider selection and auditing issues. + +Roo Code v3.30.2 Release + +## QOL Improvements + +* File path tooltips show full paths on hover across reads/edits, directory listings, and search, reducing confusion in narrow layouts (thanks da2ce7!) ([#9030](https://github.com/RooCodeInc/Roo-Code/pull/9030)) + +## Bug Fixes + +* Eliminates brief UI flicker when cancelling a task; the task view remains stable ([#9037](https://github.com/RooCodeInc/Roo-Code/pull/9037)) +* Pinned models remain visible at the top while scrolling long lists for quicker access (thanks XiaoYingYo!) ([#8813](https://github.com/RooCodeInc/Roo-Code/pull/8813)) +* Checkpoints always commit to Roo’s shadow repository even when GIT_DIR is set in Dev Containers, preventing leaks to external repos (thanks heyseth, nonsleepr!) ([#8811](https://github.com/RooCodeInc/Roo-Code/pull/8811)) +* Restores correct 32K maxTokens for Claude Opus 4.1 to avoid premature truncation on long generations (thanks kaveh-deriv!) ([#9046](https://github.com/RooCodeInc/Roo-Code/pull/9046)) +* Fixes dynamic provider model validation so switching providers uses a valid default model and avoids TypeErrors (thanks NotADev137!) ([#9054](https://github.com/RooCodeInc/Roo-Code/pull/9054)) +* AWS Bedrock requests now report full user agent details in CloudTrail for better auditing and troubleshooting (thanks ajjuaire!) ([#9043](https://github.com/RooCodeInc/Roo-Code/pull/9043)) + +## Misc Improvements + +* Optional pre-push full test run via RUN_TESTS_ON_PUSH=true in .env.local; default behavior keeps pushes fast (tests skipped) ([#9055](https://github.com/RooCodeInc/Roo-Code/pull/9055)) + +## Provider Updates + +* Sets Claude Sonnet 4.5 as the default where available across Anthropic, Bedrock, OpenRouter, Claude Code, and Unbound ([#8922](https://github.com/RooCodeInc/Roo-Code/pull/8922)) +* Updates Cerebras zai‑glm‑4.6 limits to 40,960 output tokens with a 131,072‑token context window; reflects faster response rates (~1,000 tokens/s) (thanks sebastiand-cerebras!) ([#9024](https://github.com/RooCodeInc/Roo-Code/pull/9024)) +* Adds Qwen3-Embedding-0.6B (1024‑dim) and Qwen3-Embedding-4B (2560‑dim) to OpenRouter for code indexing (thanks dmarkey!) ([#9060](https://github.com/RooCodeInc/Roo-Code/pull/9060)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.30.3.mdx b/apps/docs/docs/update-notes/v3.30.3.mdx new file mode 100644 index 00000000000..9eb747d75fa --- /dev/null +++ b/apps/docs/docs/update-notes/v3.30.3.mdx @@ -0,0 +1,37 @@ +--- +description: Adds Moonshot kimi-k2-thinking and MiniMax-M2-Stable with prompt caching, smoother mode import flow, and multiple UI and reliability fixes. +keywords: + - roo code 3.30.3 + - new features + - bug fixes + - provider updates +image: /img/v3.30.3/v3.30.3.png +--- + +# Roo Code 3.30.3 Release Notes (2025-11-07) + +This release adds support for Moonshot's newest model, kimi‑k2‑thinking, and includes several UI improvements and a few bug fixes. + +Roo Code v3.30.3 Release + +## New models and caching: Moonshot kimi‑k2‑thinking and MiniMax‑M2‑Stable + +kimi‑k2‑thinking: Moonshot's latest & best‑performing model. Plus MiniMax‑M2‑Stable with prompt caching to cut latency and cost on repeated prompts (thanks nokaka!) ([#9079](https://github.com/RooCodeInc/Roo-Code/pull/9079), [#9072](https://github.com/RooCodeInc/Roo-Code/pull/9072)). + +## UI and workflow improvements + +We’ve batched several UX updates to make everyday use smoother ([#9057](https://github.com/RooCodeInc/Roo-Code/pull/9057), [#8932](https://github.com/RooCodeInc/Roo-Code/pull/8932), [#8965](https://github.com/RooCodeInc/Roo-Code/pull/8965), [#9003](https://github.com/RooCodeInc/Roo-Code/pull/9003)): + +- Home screen: cleaner left‑aligned layout, clearer recent history (up to 4), tips auto‑dismiss after 6 tasks, improved spacing on large windows. +- Diff view in chat: unified format with line numbers and inline added/removed counts for faster, more accurate reviews. +- Settings clarity: setting Error & Repetition Limit to 0 explicitly disables that safety mechanism, avoiding unexpected auto‑stops. +- Mode import flow: after importing a mode, Roo auto‑switches to it; if the mode data hasn’t loaded yet, Roo briefly falls back to Architect mode to avoid UI desync. + +Together these reduce clicks, improve readability, and make behavior more predictable. + +## Bug Fixes + +* Auto‑retry on empty assistant response to prevent task cancellations (reporter: Akillatech) ([#9083](https://github.com/RooCodeInc/Roo-Code/pull/9083)) +* Use “system” role for non‑streaming OpenAI‑compatible requests to prevent provider errors (reporter: whitfin) ([#8216](https://github.com/RooCodeInc/Roo-Code/pull/8216)) +* Prevent notification sound when messages are queued to auto‑continue ([#8540](https://github.com/RooCodeInc/Roo-Code/pull/8540)) + diff --git a/apps/docs/docs/update-notes/v3.30.mdx b/apps/docs/docs/update-notes/v3.30.mdx new file mode 100644 index 00000000000..78aed709b1d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.30.mdx @@ -0,0 +1,67 @@ +--- +description: Adds OpenRouter embeddings, Bedrock Global Inference, provider defaults/limits updates, and stability/UI fixes. +keywords: + - roo code 3.30 + - new features + - bug fixes +image: /img/v3.30.0/v3.30.0.png +--- + +# Roo Code 3.30 Release Notes (2025-11-03) + +This release adds OpenRouter embeddings and Bedrock Global Inference, updates provider defaults and limits, and delivers stability and UI improvements. + +Roo Code v3.30 Release + +## OpenRouter Embeddings + +We've added OpenRouter as an embedding provider for codebase indexing in Roo Code (thanks dmarkey!) ([#8973](https://github.com/RooCodeInc/Roo-Code/pull/8973)). + +OpenRouter currently supports 7 embedding models, including the top‑ranking Qwen3 Embedding. + +> **📚 Documentation**: See [Codebase Indexing](/features/codebase-indexing) and [OpenRouter Provider](/providers/openrouter). + +## QOL Improvements + +* Terminal settings cleanup with Inline as the default terminal and clearer options; shell integration default is disabled to reduce environment conflicts ([#8342](https://github.com/RooCodeInc/Roo-Code/pull/8342)) +* File path tooltips show full paths on hover across reads/edits, directory listings, and search, reducing confusion in narrow layouts (thanks da2ce7!) ([#9030](https://github.com/RooCodeInc/Roo-Code/pull/9030)) +* Home screen visuals refined for clarity and space usage ([#9057](https://github.com/RooCodeInc/Roo-Code/pull/9057)) +* Chat diff appearance is clearer and easier to scan ([#8932](https://github.com/RooCodeInc/Roo-Code/pull/8932)) +* Settings copy clarifies that an Error & Repetition Limit of 0 disables the mechanism ([#8965](https://github.com/RooCodeInc/Roo-Code/pull/8965)) + +## Bug Fixes + +* Prevent message loss during queue drain race conditions to preserve message order and reliable chats ([#8955](https://github.com/RooCodeInc/Roo-Code/pull/8955)) +* Requesty OAuth: auto-create a stable "Requesty" profile with a default model so sign-in completes reliably (thanks Thibault00!) ([#8699](https://github.com/RooCodeInc/Roo-Code/pull/8699)) +* Cancel during streaming no longer causes flicker; you can resume in place, input stays enabled, and the spinner stops deterministically ([#8986](https://github.com/RooCodeInc/Roo-Code/pull/8986)) +* Remove newline-only reasoning blocks from OpenAI-compatible responses for cleaner output and logs ([#8990](https://github.com/RooCodeInc/Roo-Code/pull/8990)) +* "Disable Terminal Shell Integration" now links to the correct documentation section ([#8997](https://github.com/RooCodeInc/Roo-Code/pull/8997)) +* Correct OpenRouter Mistral embedding dimension to 1536 to prevent vector size errors; existing Qdrant collections are recreated with the correct size for consistent similarity search ([#9028](https://github.com/RooCodeInc/Roo-Code/pull/9028)) +* Revert the recent cancel/resume change that caused UI flicker and unreliable resumption, restoring the previous stable behavior ([#9032](https://github.com/RooCodeInc/Roo-Code/pull/9032)) +* Eliminate UI flicker during task cancellation; the task view remains stable ([#9037](https://github.com/RooCodeInc/Roo-Code/pull/9037)) +* Keep pinned models fixed at the top of long lists for faster access (thanks XiaoYingYo!) ([#8813](https://github.com/RooCodeInc/Roo-Code/pull/8813)) +* Ensure Checkpoints commit to Roo’s shadow repository even when GIT_DIR is set in Dev Containers (thanks nonsleepr!) ([#8811](https://github.com/RooCodeInc/Roo-Code/pull/8811)) +* Restore correct 32K maxTokens for Claude Opus 4.1 to avoid premature truncation (thanks kaveh-deriv!) ([#9046](https://github.com/RooCodeInc/Roo-Code/pull/9046)) +* Fix dynamic provider model validation so provider switches use a valid default model without TypeErrors (thanks NotADev137!) ([#9054](https://github.com/RooCodeInc/Roo-Code/pull/9054)) +* Include full user agent details in AWS Bedrock requests for better auditing and troubleshooting (thanks ajjuaire!) ([#9043](https://github.com/RooCodeInc/Roo-Code/pull/9043)) +* Auto‑retry on empty assistant response to prevent task cancellations (reporter: Akillatech) ([#9083](https://github.com/RooCodeInc/Roo-Code/pull/9083)) +* Use “system” role for non‑streaming OpenAI‑compatible requests to prevent provider errors (reporter: whitfin) ([#8216](https://github.com/RooCodeInc/Roo-Code/pull/8216)) +* Prevent notification sound when messages are queued to auto‑continue ([#8540](https://github.com/RooCodeInc/Roo-Code/pull/8540)) + +## Misc Improvements + +* Add preserveReasoning flag to optionally include reasoning in API history so later turns can leverage prior reasoning; off by default and model‑gated ([#8934](https://github.com/RooCodeInc/Roo-Code/pull/8934)) +* Optional pre-push full test run via RUN_TESTS_ON_PUSH=true in .env.local; default behavior keeps pushes fast (tests skipped) ([#9055](https://github.com/RooCodeInc/Roo-Code/pull/9055)) + +## Provider Updates + +* Chutes: dynamic/router provider so new models appear automatically; safer error logging and temperature applied only when supported ([#8980](https://github.com/RooCodeInc/Roo-Code/pull/8980)) +* OpenAI‑compatible providers: handle `` reasoning tags in streaming for consistent reasoning chunk handling ([#8989](https://github.com/RooCodeInc/Roo-Code/pull/8989)) +* GLM 4.6: capture reasoning content in base OpenAI‑compatible provider during streaming ([#8976](https://github.com/RooCodeInc/Roo-Code/pull/8976)) +* Fireworks: add GLM‑4.6 to the model dropdown for stronger coding performance and longer context (thanks mmealman!) ([#8754](https://github.com/RooCodeInc/Roo-Code/pull/8754)) +* Fireworks: add MiniMax M2 with 204.8K context and 4K output tokens; correct pricing metadata (thanks dmarkey!) ([#8962](https://github.com/RooCodeInc/Roo-Code/pull/8962)) +* Set Claude Sonnet 4.5 as the default where available across Anthropic, Bedrock, OpenRouter, Claude Code, and Unbound ([#8922](https://github.com/RooCodeInc/Roo-Code/pull/8922)) +* Cerebras zai‑glm‑4.6: 40,960 max output tokens and a 131,072‑token context window; faster responses (~1,000 tok/s) (thanks sebastiand-cerebras!) ([#9024](https://github.com/RooCodeInc/Roo-Code/pull/9024)) +* OpenRouter: add Qwen3‑Embedding‑0.6B (1024‑dim) and 4B (2560‑dim) for code indexing (thanks dmarkey!) ([#9060](https://github.com/RooCodeInc/Roo-Code/pull/9060)) +* Moonshot: add kimi‑k2‑thinking (262k context) ([#9079](https://github.com/RooCodeInc/Roo-Code/pull/9079)) +* MiniMax: add MiniMax‑M2‑Stable and enable prompt caching for MiniMax models ([#9072](https://github.com/RooCodeInc/Roo-Code/pull/9072)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.31.0.mdx b/apps/docs/docs/update-notes/v3.31.0.mdx new file mode 100644 index 00000000000..ffa1322dd55 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.31.0.mdx @@ -0,0 +1,39 @@ +--- +description: Focused UX, logging, and stability improvements for Roo Code tasks, providers, and context handling. +keywords: + - roo code 3.31.0 + - new features + - bug fixes + - stability + - roo code cloud +image: /img/v3.31.0/v3.31.0.png +--- + +# Roo Code 3.31.0 Release Notes (2025-11-08) + +This release refines task and to-do workflows, improves Roo Code Cloud diagnostics, tightens OpenRouter routing, and delivers key stability fixes for long-running sessions. + +Roo Code v3.31.0 Release + +## Integrated task header and to-do list + +The task header and to-do list now work together so you can see progress at a glance without juggling extra UI: + +- Integrated to-dos directly into the task header so active work is always visible. +- Show only relevant to-do changes in chat instead of noisy full-list updates. +- Simplified header layout to reduce distractions while keeping key controls in reach. + + +## QOL Improvements + +- **Less caffeinated welcome animation** ([#9104](https://github.com/RooCodeInc/Roo-Code/pull/9104)): Smooths the Roo hover animation to be less distracting during long sessions while keeping the interface responsive. + +## Bug Fixes + +- **Respect custom OpenRouter-compatible URLs everywhere** ([#8951](https://github.com/RooCodeInc/Roo-Code/pull/8951)): Ensures all OpenRouter-related operations (model lists, pricing, image generation, CSP checks) consistently use your configured custom base URL for better privacy, compliance, and predictable billing (thanks sstraus!). +- **Prevent crashes from null streaming chunks** ([#9105](https://github.com/RooCodeInc/Roo-Code/pull/9105)): Handles provider responses with null choices arrays correctly, improving stability for long-running generations across MiniMax M2 Stable and other OpenAI-compatible endpoints. (Contributors: daniel-lxs) +- **Stop unwanted context condensing on settings save** ([#9108](https://github.com/RooCodeInc/Roo-Code/pull/9108)): Saving settings no longer triggers early context condensing when your provider/model is unchanged, so active tasks retain history until thresholds are truly reached. (Contributors: daniel-lxs, hannesrudolph) + +## Misc Improvements + +- Improved Roo Code Cloud error logging to capture richer context (status codes, response bodies, and request details), making it easier to understand and resolve provider and configuration issues. ([#9098](https://github.com/RooCodeInc/Roo-Code/pull/9098)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.31.1.mdx b/apps/docs/docs/update-notes/v3.31.1.mdx new file mode 100644 index 00000000000..4df81c69199 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.31.1.mdx @@ -0,0 +1,31 @@ +--- +description: New polished button UI, smoother auto-approvals, safer cloud execution, model profile sync fix, and a new IPC command for posting messages to the current task. +keywords: + - roo code 3.31.1 + - new features + - bug fixes +image: /img/v3.31.1/v3.31.1.png +--- + +# Roo Code 3.31.1 Release Notes (2025-11-12) + +This release highlights a refreshed button look across the UI, improves auto-approvals reliability, prevents cloud tasks from stalling, keeps model profiles in sync on switch, and adds an IPC command to post messages into the current task. + +Roo Code v3.31.1 Release + +## New Button Look + +A consistent, rounded Button component with clear variants and sizes now appears across the UI. The result is a cleaner, more modern interface with predictable interactions where buttons are used ([#9150](https://github.com/RooCodeInc/Roo-Code/pull/9150)). + +## Features + +* IPC command to send messages (text/images) to the current task for automations and richer context ([#9149](https://github.com/RooCodeInc/Roo-Code/pull/9149)) + +## QOL Improvements + +* Move auto-approval logic from ChatView to Task for more reliable handling and clearer UI safeguards ([#9157](https://github.com/RooCodeInc/Roo-Code/pull/9157)) + +## Bug Fixes + +* Prevent command_output asks from blocking in cloud/headless environments, so tasks no longer stall ([#9152](https://github.com/RooCodeInc/Roo-Code/pull/9152)) +* Ensure model switch re-applies the selected profile so task configuration stays in sync ([#9181](https://github.com/RooCodeInc/Roo-Code/pull/9181)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.31.2.mdx b/apps/docs/docs/update-notes/v3.31.2.mdx new file mode 100644 index 00000000000..fd6cc49d67e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.31.2.mdx @@ -0,0 +1,27 @@ +--- +description: Stateless continuity via OpenAI Responses API, faster settings saves, and key fixes for API profiles, auto-approval, and Issue Fixer. +keywords: + - roo code 3.31.2 + - new features + - bug fixes +--- + +# Roo Code 3.31.2 Release Notes (2025-11-13) + +This patch improves stateless conversation continuity, speeds up settings updates, and fixes API profiles, Issue Fixer, and auto‑approval behavior. + + +## QOL Improvements + +* Batched settings updates: saves apply faster with less UI flicker across Settings, Auto Approve, Command Execution, and MCP toggles ([#9165](https://github.com/RooCodeInc/Roo-Code/pull/9165)) +* README badges: switched to badgen.net so badges render reliably; Installs and Rating are visible at a glance ([#9200](https://github.com/RooCodeInc/Roo-Code/pull/9200)) + +## Bug Fixes + +* API Profiles: apply updated headers, baseUrl, service tier, and reasoning budget even when provider/model stay the same ([#9210](https://github.com/RooCodeInc/Roo-Code/pull/9210)) +* Auto-approval: include MCP server state so tool auto-approval works as configured (thanks bozoweed!) ([#9199](https://github.com/RooCodeInc/Roo-Code/pull/9199)) +* Issue Fixer: migrated to GitHub REST + ProjectsV2 to resolve sync errors and restore reliable triage ([#9207](https://github.com/RooCodeInc/Roo-Code/pull/9207)) + +## Provider Updates + +* Conversation continuity via encrypted reasoning items (OpenAI Responses API): preserves context locally while requests remain stateless for better privacy and reliability; removes previous_response_id complexity ([#9203](https://github.com/RooCodeInc/Roo-Code/pull/9203)) diff --git a/apps/docs/docs/update-notes/v3.31.3.mdx b/apps/docs/docs/update-notes/v3.31.3.mdx new file mode 100644 index 00000000000..84ac9333248 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.31.3.mdx @@ -0,0 +1,23 @@ +--- +description: Patch fixes for OpenAI native encrypted reasoning and Anthropic token normalization, plus terminology cleanup for context management. +keywords: + - roo code 3.31.3 + - new features + - bug fixes +image: /img/v3.31.3/v3.31.3.png +--- + +# Roo Code 3.31.3 Release Notes (2025-11-13) + +This patch fixes OpenAI native encrypted reasoning handling, corrects Anthropic input token normalization, and cleans up context management terminology. + +Roo Code v3.31.3 Release + +## Bug Fixes + +* OpenAI native encrypted reasoning parameters: Restores usability of gpt-5-chat-latest by including encrypted reasoning only when a reasoning effort is set and enforcing medium-only verbosity to prevent invalid parameter errors (thanks politsin!) ([#9231](https://github.com/RooCodeInc/Roo-Code/pull/9231)) +* Roo Anthropic token normalization: Prevents double-counting cached tokens so usage metrics, cost estimates, and context calculations are accurate across providers ([#9224](https://github.com/RooCodeInc/Roo-Code/pull/9224)) + +## Misc Improvements + +* Terminology cleanup for context handling: Rename "sliding window" to "context management" and unify the code path under a single entry point, manageContext, for clearer behavior and documentation alignment ([#9206](https://github.com/RooCodeInc/Roo-Code/pull/9206)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.31.mdx b/apps/docs/docs/update-notes/v3.31.mdx new file mode 100644 index 00000000000..3d6be70919c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.31.mdx @@ -0,0 +1,55 @@ +--- +description: Combined notes for Roo Code 3.31, highlighting task UX refinements, better diagnostics, and key stability fixes. +keywords: + - roo code 3.31 + - release notes + - combined updates + - bug fixes + - stability +image: /img/v3.31.0/v3.31.0.png +--- + +# Roo Code 3.31 Release Notes (2025-11-08) + +Roo Code 3.31 focuses on a smoother task and to-do experience, clearer diagnostics, safer routing for custom endpoints, and more resilient long-running generations. + +Roo Code v3.31 Release + +## Integrated task header and to-do list + +The task header and to-do list now work together so you can see progress at a glance without juggling extra UI: + +- Integrated to-dos directly into the task header so active work is always visible. (From [#9096](https://github.com/RooCodeInc/Roo-Code/pull/9096)) +- Show only relevant to-do changes in chat instead of noisy full-list updates, making progress easier to track. (From [#9096](https://github.com/RooCodeInc/Roo-Code/pull/9096)) +- Simplified header layout to reduce distractions while keeping key controls in reach. (From [#9096](https://github.com/RooCodeInc/Roo-Code/pull/9096)) + +## QOL Improvements + +- **Less caffeinated welcome animation** ([#9104](https://github.com/RooCodeInc/Roo-Code/pull/9104)): Smooths the Roo hover animation so it is less distracting during long sessions while keeping the interface responsive. +- **Auto-approval is now handled by Task** ([#9157](https://github.com/RooCodeInc/Roo-Code/pull/9157)): Centralizes approval logic for commands, tools, MCP, and subtasks, reducing blocked prompts and making safeguards clearer. +- **Consistent rounded buttons across the UI** ([#9150](https://github.com/RooCodeInc/Roo-Code/pull/9150)): New Button component with variants/sizes delivers a cleaner, more predictable interface. +- **Batched settings updates** ([#9165](https://github.com/RooCodeInc/Roo-Code/pull/9165)): Applies multiple setting changes in one go, making saves faster and reducing UI flicker across Settings, Auto Approve, Command Execution, and MCP toggles. +- **README badges render reliably** ([#9200](https://github.com/RooCodeInc/Roo-Code/pull/9200)): Switched to badgen.net so badges are consistently visible; Installs and Rating are clear at a glance. + +## Bug Fixes + +- **Respect custom OpenRouter-compatible URLs everywhere** ([#8951](https://github.com/RooCodeInc/Roo-Code/pull/8951)): Ensures all OpenRouter-related operations (model lists, pricing, image generation, CSP checks) consistently use your configured custom base URL for better privacy, compliance, and predictable billing (thanks sstraus!). +- **Prevent crashes from null streaming chunks** ([#9105](https://github.com/RooCodeInc/Roo-Code/pull/9105)): Handles provider responses with null choices arrays correctly, improving stability for long-running generations across MiniMax M2 Stable and other OpenAI-compatible endpoints. +- **Stop unwanted context condensing on settings save** ([#9108](https://github.com/RooCodeInc/Roo-Code/pull/9108)): Saving settings no longer triggers early context condensing when your provider/model is unchanged, so active tasks retain history until thresholds are truly reached. +- **Cloud/headless: prevent command_output from blocking** ([#9152](https://github.com/RooCodeInc/Roo-Code/pull/9152)): Non‑blocking behavior avoids stalled tasks and intermittent timeouts. +- **Model switch re‑applies selected profile** ([#9181](https://github.com/RooCodeInc/Roo-Code/pull/9181)): Ensures task configuration stays in sync when switching providers/models. +- **API Profiles apply immediately when provider/model unchanged** ([#9210](https://github.com/RooCodeInc/Roo-Code/pull/9210)): Updates headers, baseUrl, service tier, and reasoning budgets without requiring a model change. +- **Auto‑approval honors MCP server state** ([#9199](https://github.com/RooCodeInc/Roo-Code/pull/9199)): Restores expected tool auto‑approval behavior (thanks bozoweed!). +- **Issue Fixer reliability via REST + ProjectsV2** ([#9207](https://github.com/RooCodeInc/Roo-Code/pull/9207)): Resolves sync errors and restores dependable triage. +- **OpenAI (native) encrypted reasoning handling** ([#9231](https://github.com/RooCodeInc/Roo-Code/pull/9231)): Includes encrypted reasoning only when a reasoning effort is set and enforces medium‑only verbosity for gpt‑5‑chat‑latest to prevent invalid parameter errors (thanks politsin!). +- **Roo Anthropic input token normalization** ([#9224](https://github.com/RooCodeInc/Roo-Code/pull/9224)): Prevents double‑counting cached tokens so usage metrics, cost estimates, and context calculations are accurate across providers. + +## Misc Improvements + +- **Roo Code Cloud error logging** ([#9098](https://github.com/RooCodeInc/Roo-Code/pull/9098)): Captures richer context for failed requests (status codes, response bodies, and request details), making it easier to understand and resolve provider and configuration issues. +- **IPC: send messages to the current task** ([#9149](https://github.com/RooCodeInc/Roo-Code/pull/9149)): Programmatically post text and images into an active task for automations and richer context. +- **Context management terminology** ([#9206](https://github.com/RooCodeInc/Roo-Code/pull/9206)): Rename “sliding window” to “context management” and unify handling under a single entry point for clearer behavior and documentation alignment. + +## Provider Updates + +- **Stateless conversation continuity via OpenAI Responses API** ([#9203](https://github.com/RooCodeInc/Roo-Code/pull/9203)): Preserves context locally with encrypted reasoning items while requests remain stateless, improving privacy and reliability and simplifying behavior (no previous_response_id). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.32.0.mdx b/apps/docs/docs/update-notes/v3.32.0.mdx new file mode 100644 index 00000000000..f1cd1b2a433 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.32.0.mdx @@ -0,0 +1,32 @@ +--- +description: Roo Code 3.32.0 adds GPT-5.1 models, enables OpenAI Responses prompt caching, fixes the share button, and improves release-note traceability. +keywords: + - roo code 3.32.0 + - gpt-5.1 + - openai prompt caching + - reasoning summaries + - bug fixes +image: /img/v3.32.0/v3.32.0.png +--- + +# Roo Code 3.32.0 Release Notes (2025-11-14) + +This release adds GPT-5.1 models, enables OpenAI Responses prompt caching, fixes the share button, and improves release-note traceability. + +Roo Code v3.32.0 Release + +## Features & Improvements + +* **GPT-5.1 in Roo Code** ([#9252](https://github.com/RooCodeInc/Roo-Code/pull/9252), [#9258](https://github.com/RooCodeInc/Roo-Code/pull/9258), [#9261](https://github.com/RooCodeInc/Roo-Code/pull/9261), [#9259](https://github.com/RooCodeInc/Roo-Code/pull/9259)): Adds all new GPT-5.1 models to the OpenAI Native provider with extended 24‑hour prompt caching support, all new GPT-5.1 models and overall support for 51 throughout other supported providers. + + - **Adaptive reasoning**: GPT-5.1 includes adaptive reasoning that adjusts effort based on task complexity for faster and more efficient results. + - **Better tone and instruction following**: GPT-5.1 provides improved tone control and stronger instruction following so outputs match your brand voice more naturally. + - **Stronger software engineering performance**: GPT-5.1 delivers more reliable software engineering performance with better code generation, stronger edge case handling, and improved logic planning. + +## Bug Fixes + +- **Share button works reliably again**: Fixes the Share button so you can open the share popover and send shared tasks and messages without failures ([#9253](https://github.com/RooCodeInc/Roo-Code/pull/9253)). + +### Misc + +- **Release notes are easier to audit**: The internal release guide now requires PR numbers in release notes so each documented change can be traced back to its source PR ([#9236](https://github.com/RooCodeInc/Roo-Code/pull/9236)). \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.32.1.mdx b/apps/docs/docs/update-notes/v3.32.1.mdx new file mode 100644 index 00000000000..d87180fc9f9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.32.1.mdx @@ -0,0 +1,31 @@ +--- +description: Improves reliability for OpenAI Native and native tool protocol by fixing reasoning handling, duplicate tool blocks, and cancellation behavior. +keywords: + - roo code 3.32.1 + - new features + - bug fixes +image: /img/v3.32.1/v3.32.1.png +--- + +# Roo Code 3.32.1 Release Notes (2025-11-14) + +This patch improves reliability for OpenAI Native and native tool protocol by fixing reasoning handling, duplicate tool blocks, and cancellation behavior. + +Roo Code v3.32.1 Release + +## Bug Fixes + +* **Keep OpenAI Native reasoning stable during condensing** ([#9263](https://github.com/RooCodeInc/Roo-Code/pull/9263)) + Keeps encrypted reasoning blocks paired with the assistant messages that produced them so OpenAI Native condensing no longer throws errors and long-running tasks with reasoning stay stable even as history is trimmed. + +* **Prevent duplicate tool_result blocks for read_file in native protocol** ([#9272](https://github.com/RooCodeInc/Roo-Code/pull/9272)) + Ensures read_file emits exactly one tool_result per tool_call_id in native protocol, preventing 400 errors while still surfacing clear error messages to both the agent and the user. + +* **Fix duplicate tool blocks causing "tool has already been used" errors** ([#9275](https://github.com/RooCodeInc/Roo-Code/pull/9275)) + Stops XML protocol runs from merging duplicate tool blocks into assistant messages so each tool block executes only once per turn and tool-driven tasks no longer get stuck behind false “tool has already been used” errors. + +* **Make OpenAI Native cancellation stop streaming immediately** ([#9276](https://github.com/RooCodeInc/Roo-Code/pull/9276)) + Adds an abort controller so cancelling an OpenAI Native request stops streaming promptly, avoiding extra tokens after cancellation and reducing wasted usage. + +* **Disable XML parser for native tool protocol** ([#9277](https://github.com/RooCodeInc/Roo-Code/pull/9277)) + Bypasses XML parsing when toolProtocol is set to native and relies on structured tool_call chunks instead, avoiding mis-parsed XML-like snippets and making native tool runs more reliable—especially for models that sometimes mix formats. diff --git a/apps/docs/docs/update-notes/v3.32.mdx b/apps/docs/docs/update-notes/v3.32.mdx new file mode 100644 index 00000000000..3afcfb8e2e0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.32.mdx @@ -0,0 +1,41 @@ +--- +description: Combined notes for Roo Code 3.32, including GPT-5.1 model support, OpenAI Responses prompt caching, and reliability fixes for OpenAI Native and native tools. +keywords: + - roo code 3.32 + - release notes + - gpt-5.1 + - openai prompt caching + - bug fixes +image: /img/v3.32.0/v3.32.0.png +--- + +# Roo Code 3.32 Release Notes (2025-11-14) + +Roo Code 3.32 combines GPT-5.1 model support and OpenAI Responses prompt caching with reliability fixes for OpenAI Native and native tool protocol. + +Roo Code v3.32 Release + +## GPT-5.1 models and OpenAI prompt caching + +* **GPT-5.1 in Roo Code** ([#9252](https://github.com/RooCodeInc/Roo-Code/pull/9252), [#9258](https://github.com/RooCodeInc/Roo-Code/pull/9258), [#9261](https://github.com/RooCodeInc/Roo-Code/pull/9261), [#9259](https://github.com/RooCodeInc/Roo-Code/pull/9259)) + Adds the new GPT-5.1 models across supported providers, with extended 24‑hour prompt caching support in the OpenAI Native provider and improved overall software‑engineering performance. + +## Bug Fixes + +* **Share button works reliably again** ([#9253](https://github.com/RooCodeInc/Roo-Code/pull/9253)) + Fixes the Share button so you can open the share popover and send shared tasks and messages without failures. + +* **Keep OpenAI Native reasoning stable during condensing** ([#9263](https://github.com/RooCodeInc/Roo-Code/pull/9263)) + Keeps encrypted reasoning blocks paired with the assistant messages that produced them so OpenAI Native condensing no longer throws errors and long-running tasks with reasoning stay stable even as history is trimmed. + +* **Prevent duplicate tool_result blocks for read_file in native protocol** ([#9272](https://github.com/RooCodeInc/Roo-Code/pull/9272)) + Ensures read_file emits exactly one tool_result per tool_call_id in native protocol, preventing 400 errors while still surfacing clear error messages to both the agent and the user. + +* **Fix duplicate tool blocks causing "tool has already been used" errors** ([#9275](https://github.com/RooCodeInc/Roo-Code/pull/9275)) + Stops XML protocol runs from merging duplicate tool blocks into assistant messages so each tool block executes only once per turn and tool-driven tasks no longer get stuck behind false “tool has already been used” errors. + +* **Make OpenAI Native cancellation stop streaming immediately** ([#9276](https://github.com/RooCodeInc/Roo-Code/pull/9276)) + Adds an abort controller so cancelling an OpenAI Native request stops streaming promptly, avoiding extra tokens after cancellation and reducing wasted usage. + +* **Disable XML parser for native tool protocol** ([#9277](https://github.com/RooCodeInc/Roo-Code/pull/9277)) + Bypasses XML parsing when toolProtocol is set to native and relies on structured tool_call chunks instead, avoiding mis-parsed XML-like snippets and making native tool runs more reliable—especially for models that sometimes mix formats. \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.33.0.mdx b/apps/docs/docs/update-notes/v3.33.0.mdx new file mode 100644 index 00000000000..41fb0417ede --- /dev/null +++ b/apps/docs/docs/update-notes/v3.33.0.mdx @@ -0,0 +1,45 @@ +--- +description: Roo Code 3.33.0 adds Gemini 3 Pro Preview, improves Gemini defaults and cost reporting, and enables native tool calling for the OpenAI-native provider. +keywords: + - roo code 3.33.0 + - new features + - bug fixes +image: /img/v3.33.0/v3.33.0.png +--- + +# Roo Code 3.33.0 Release Notes (2025-11-18) + +Gemini 3 Pro Preview is now available in Roo Code and already performing extremely well in real-world coding tasks, alongside 16 tweaks and fixes—thanks to everyone in the Roo Code community who helped shape this release. + +Roo Code v3.33.0 Release + +## Gemini 3 Pro Preview + +Roo Code now supports Google’s Gemini 3 Pro Preview model through direct Gemini, Vertex AI, and aggregator providers like OpenRouter and Requesty ([#9357](https://github.com/RooCodeInc/Roo-Code/pull/9357), [#9327](https://github.com/RooCodeInc/Roo-Code/pull/9327)): + +- **1M-token, reasoning-capable model**: Handles very large conversations while providing higher-quality multi-step reasoning on complex coding and refactoring tasks. +- **Strong eval performance**: Achieves a 100% score on internal Roo Code evals and 76.2% on SWE-bench Verified, giving more consistent solutions on real-world coding tasks. +- **Reliable tool usage**: Executes complex multi-step tool workflows without getting stuck or losing track, especially in long, tool-heavy tasks. +- **Better out-of-the-box defaults**: Uses `gemini-2.5-pro` by default where supported, sets a more natural temperature of 1, cleans up the Gemini model list, and includes reasoning / “thought” tokens in cost reporting so usage numbers better match provider billing. + +## QOL Improvements + +- **Git status in environment details** ([#9310](https://github.com/RooCodeInc/Roo-Code/pull/9310)): Shows git status information in environment details so agents have more context about untracked, modified, and staged files when reasoning about your workspace. +- **Tool protocol selector in advanced settings** ([#9324](https://github.com/RooCodeInc/Roo-Code/pull/9324)): Lets you choose which tool protocol to use (such as XML vs native) without editing config files, making it easier to experiment with different tool behaviors. +- **Dynamic tool protocol resolution** ([#9286](https://github.com/RooCodeInc/Roo-Code/pull/9286)): Resolves the active tool protocol using a clear precedence hierarchy, so provider defaults, mode settings, and user overrides interact in a predictable way. +- **Improved Modes view toolbar** ([#9077](https://github.com/RooCodeInc/Roo-Code/pull/9077)): Moves Import/Export into the Modes view toolbar and cleans up the Mode edit view, making it easier to manage and share modes from a single place. +- **Cloud agent CTA points to setup page** ([#9338](https://github.com/RooCodeInc/Roo-Code/pull/9338)): Updates the cloud agent call-to-action to link directly to the setup page so new users can get started faster. +- **Roo Code Cloud provider pricing page** ([#9195](https://github.com/RooCodeInc/Roo-Code/pull/9195)): Adds a pricing page and related Cloud provider tweaks so pricing is easier to understand before you enable Roo Code Cloud. + +## Bug Fixes + +- **Prevent duplicate tool_result blocks in native protocol** ([#9248](https://github.com/RooCodeInc/Roo-Code/pull/9248)): Ensures each native tool call emits a single tool_result block, avoiding 400 errors and duplicated tool executions. +- **Format tool responses for native protocol** ([#9270](https://github.com/RooCodeInc/Roo-Code/pull/9270)): Normalizes the structure of tool responses so native protocol runs are easier for models to follow and less likely to error. +- **Centralize toolProtocol configuration checks** ([#9279](https://github.com/RooCodeInc/Roo-Code/pull/9279)): Uses a single source of truth for toolProtocol configuration, reducing configuration drift and subtle behavior differences. +- **Preserve tool blocks in conversation history** ([#9319](https://github.com/RooCodeInc/Roo-Code/pull/9319)): Keeps native protocol tool blocks intact in history so follow-up turns can reason correctly about prior tool calls. +- **Prevent infinite loops after successful finalization** ([#9325](https://github.com/RooCodeInc/Roo-Code/pull/9325)): Fixes a regression where certain native tool flows could loop after successful completion instead of stopping cleanly. +- **Sync parser state with profile and model changes** ([#9355](https://github.com/RooCodeInc/Roo-Code/pull/9355)): Keeps the conversation parser aligned with the active profile and model so switching models or profiles does not leave the parser in an inconsistent state. +- **Pass tool protocol to truncation errors** ([#9358](https://github.com/RooCodeInc/Roo-Code/pull/9358)): Ensures truncation errors know which tool protocol is active so error handling and messaging stay accurate. +- **VS Code theme-colored outline button borders** ([#9336](https://github.com/RooCodeInc/Roo-Code/pull/9336)): Aligns outline button borders with the current VS Code theme for a more consistent UI. +- **Use shields.io badges instead of badgen.net** ([#9318](https://github.com/RooCodeInc/Roo-Code/pull/9318)): Replaces broken badge URLs with shields.io so badges render reliably again. +- **Cap git status file sampling in evals** ([#9322](https://github.com/RooCodeInc/Roo-Code/pull/9322)): Adds a maximum for git status files in eval settings so evaluations don’t pull excessively large environment details. \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.33.1.mdx b/apps/docs/docs/update-notes/v3.33.1.mdx new file mode 100644 index 00000000000..4b4809a9f89 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.33.1.mdx @@ -0,0 +1,29 @@ +--- +description: Native Tool Calling for OpenAI-compatible providers, improved Gemini reasoning support, and various bug fixes. +keywords: + - roo code 3.33.1 + - openai compatible native tools + - gemini reasoning fixes + - native tool protocol +image: /img/v3.33.1/v3.33.1.png +--- + +# Roo Code 3.33.1 Release Notes (2025-11-18) + +This release introduces native tool calling support for OpenAI-compatible providers, improves Gemini reasoning reliability, and fixes several native tool protocol issues. + +Roo Code v3.33.1 Release + +## Provider Updates + +- **Native Tool Calling for OpenAI-compatible Providers**: Enables native tool use with a wider range of models and providers that support the OpenAI format, offering more robust tool interactions in both streaming and non-streaming modes ([#9369](https://github.com/RooCodeInc/Roo-Code/pull/9369)) + +## Bug Fixes + +- **Native Tool Protocol Race Condition**: Fixed a race condition where switching profiles or changing API configuration could cause tool results to be formatted incorrectly, leading to 400 errors ([#9363](https://github.com/RooCodeInc/Roo-Code/pull/9363)) +- **Native Tool Repetition Detection**: Fixed false positive "stuck in a loop" errors when using native tools repeatedly with different arguments ([#9377](https://github.com/RooCodeInc/Roo-Code/pull/9377)) +- **Strict Native Protocol Parsing**: Ensured no XML parsing occurs when the native protocol is active, preventing model confusion ([#9371](https://github.com/RooCodeInc/Roo-Code/pull/9371)) +- **Prompt Cleanliness**: Removed incompatible XML tool examples from the system prompt when native tool calling is enabled ([#9367](https://github.com/RooCodeInc/Roo-Code/pull/9367)) +- **Gemini Reasoning Config**: Fixed an issue where high/low reasoning effort configuration was not being applied correctly ([#9375](https://github.com/RooCodeInc/Roo-Code/pull/9375)) +- **Gemini Thought Validation**: Resolved integration errors with Gemini reasoning models by correctly handling thought signatures and token counting ([#9380](https://github.com/RooCodeInc/Roo-Code/pull/9380)) +- **Structured JSON Returns**: Updated tools to consistently return structured JSON when using the native protocol ([#9373](https://github.com/RooCodeInc/Roo-Code/pull/9373)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.33.2.mdx b/apps/docs/docs/update-notes/v3.33.2.mdx new file mode 100644 index 00000000000..54e00fb3cb7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.33.2.mdx @@ -0,0 +1,25 @@ +--- +description: Patch release adding Gemini native tool calling, in-extension Roo Code Cloud credit visibility, clearer free model pricing, and native tool reliability fixes. +keywords: + - roo code 3.33.2 + - new features + - bug fixes + - performance improvements + - gemini provider + - roo code cloud +--- + +# Roo Code 3.33.2 Release Notes (2025-11-20) + +This patch release focuses on Gemini native tool calling, making Roo Code Cloud usage more visible, clarifying which models are free, and improving native tool reliability and performance. + +## QOL Improvements + +* **Gemini native tool calling (experimental, Google Gemini provider only)**: Add an experimental option for the Google Gemini provider to call tools through the native tool protocol (off by default), so Gemini-based workflows that rely on tools can behave more like other native-tool providers without going through XML translation. ([#9343](https://github.com/RooCodeInc/Roo-Code/pull/9343)) +* **Roo Code Cloud credit balance in the extension**: Show your Roo Code Cloud RCC credit balance directly in the Roo provider settings when signed in, helping you track usage and avoid unexpected interruptions. ([#9386](https://github.com/RooCodeInc/Roo-Code/pull/9386)) +* **Explicit 0 pricing for free models**: Display a 0 price for both input and output tokens on free models in the pricing UI so it is obvious which options are free instead of leaving prices blank. ([#9419](https://github.com/RooCodeInc/Roo-Code/pull/9419)) + +## Bug Fixes + +* **Preserve images in native tool call results**: Ensure images attached to messages are preserved and passed through native tool calls to the model, so follow-up reasoning can still use important visual context instead of losing it as plain text only. ([#9401](https://github.com/RooCodeInc/Roo-Code/pull/9401)) +* **Faster router model metadata loading**: Cut redundant getModel() calls and add a disk cache fallback for router-based providers, making capability metadata available on startup and reducing latency and flakiness when loading model info. ([#9410](https://github.com/RooCodeInc/Roo-Code/pull/9410)) diff --git a/apps/docs/docs/update-notes/v3.33.3.mdx b/apps/docs/docs/update-notes/v3.33.3.mdx new file mode 100644 index 00000000000..1ddf2828bc6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.33.3.mdx @@ -0,0 +1,40 @@ +--- +description: A patch release adding Google Gemini 3 Pro Image Preview support, Minimax provider support, and various bug fixes. +keywords: + - roo code 3.33.3 + - google gemini 3 pro + - image preview + - minimax + - bug fixes +image: /img/v3.33.3/v3.33.3.png +--- + +# Roo Code 3.33.3 Release Notes (2025-11-20) + +This release introduces image preview support for Google Gemini 3 Pro, adds Minimax as a new provider, and includes several important bug fixes and quality of life improvements. + +Roo Code v3.33.3 Release + +## Google Gemini 3 Pro Image Preview + +We've added support for image generation with Google Gemini 3 Pro image generation model ([#9440](https://github.com/RooCodeInc/Roo-Code/pull/9440)) + +## QOL Improvements + +* **Minimax Provider Support**: Added support for Minimax as an Anthropic-compatible provider ([#9455](https://github.com/RooCodeInc/Roo-Code/pull/9455)) +* **Reasoning History**: Reasoning is now stored in conversation history for all providers ([#9451](https://github.com/RooCodeInc/Roo-Code/pull/9451)) +* **Improved Read File Tool**: Enhanced the `read_file` tool description with clearer examples ([#9422](https://github.com/RooCodeInc/Roo-Code/pull/9422)) + +## Bug Fixes + +* **Environment Details Duplication**: Fixed an issue where `environment_details` were duplicated when resuming cancelled tasks ([#9442](https://github.com/RooCodeInc/Roo-Code/pull/9442)) +* **Preserve Reasoning Flag**: Fixed the `preserveReasoning` flag to correctly control API reasoning inclusion ([#9453](https://github.com/RooCodeInc/Roo-Code/pull/9453)) +* **OpenAI Parallel Tool Calls**: Prevented OpenAI Native parallel tool calls when using native tool calling to avoid errors ([#9433](https://github.com/RooCodeInc/Roo-Code/pull/9433)) +* **Search and Replace Parsing**: Improved symbol parsing in the search and replace functionality ([#9456](https://github.com/RooCodeInc/Roo-Code/pull/9456)) +* **Skipped Tool Results**: Fixed an issue where `tool_result` blocks were not sent for skipped tools in the native protocol ([#9457](https://github.com/RooCodeInc/Roo-Code/pull/9457)) +* **Markdown Formatting**: Improved markdown formatting and added reasoning support ([#9458](https://github.com/RooCodeInc/Roo-Code/pull/9458)) + +## Misc Improvements + +* **Dependency Update**: Updated `glob` dependency to ^11.1.0 ([#9449](https://github.com/RooCodeInc/Roo-Code/pull/9449)) +* **Dependency Update**: Updated `tar-fs` to 3.1.1 via pnpm override ([#9450](https://github.com/RooCodeInc/Roo-Code/pull/9450)) diff --git a/apps/docs/docs/update-notes/v3.33.mdx b/apps/docs/docs/update-notes/v3.33.mdx new file mode 100644 index 00000000000..efe606c8418 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.33.mdx @@ -0,0 +1,70 @@ +--- +description: Combined notes for Roo Code 3.33, including Gemini 3 Pro Preview support, native tool calling for OpenAI-compatible providers, and various native tool reliability fixes. +keywords: + - roo code 3.33 + - release notes + - gemini 3 pro + - native tool protocol + - openai compatible + - bug fixes +--- + +# Roo Code 3.33 Release Notes (2025-11-18) + +Roo Code 3.33 introduces support for Gemini 3 Pro Preview and native tool calling for OpenAI-compatible providers, along with improved Gemini defaults and numerous native tool protocol fixes. + +## Major Features + +### Gemini 3 Pro Preview + +Roo Code now supports Google’s Gemini 3 Pro Preview model through direct Gemini, Vertex AI, and aggregator providers like OpenRouter and Requesty ([#9357](https://github.com/RooCodeInc/Roo-Code/pull/9357), [#9327](https://github.com/RooCodeInc/Roo-Code/pull/9327)): + +- **1M-token, reasoning-capable model**: Handles very large conversations while providing higher-quality multi-step reasoning on complex coding and refactoring tasks. +- **Strong eval performance**: Achieves a 100% score on internal Roo Code evals and 76.2% on SWE-bench Verified, giving more consistent solutions on real-world coding tasks. +- **Reliable tool usage**: Executes complex multi-step tool workflows without getting stuck or losing track, especially in long, tool-heavy tasks. +- **Better out-of-the-box defaults**: Uses `gemini-2.5-pro` by default where supported, sets a more natural temperature of 1, cleans up the Gemini model list, and includes reasoning / “thought” tokens in cost reporting so usage numbers better match provider billing. +- **Image Preview Support**: Added support for image previews with Google Gemini 3 Pro image generation models ([#9440](https://github.com/RooCodeInc/Roo-Code/pull/9440)). + +## QOL Improvements + +- **Native Tool Calling for OpenAI-compatible Providers** ([#9369](https://github.com/RooCodeInc/Roo-Code/pull/9369)): Enables native tool use with a wider range of models and providers that support the OpenAI format, offering more robust tool interactions in both streaming and non-streaming modes. +- **Minimax Provider Support** ([#9455](https://github.com/RooCodeInc/Roo-Code/pull/9455)): Added support for Minimax as an Anthropic-compatible provider. +- **Reasoning History** ([#9451](https://github.com/RooCodeInc/Roo-Code/pull/9451)): Reasoning is now stored in conversation history for all providers. +- **Improved Read File Tool** ([#9422](https://github.com/RooCodeInc/Roo-Code/pull/9422)): Enhanced the `read_file` tool description with clearer examples. + +- **Git status in environment details** ([#9310](https://github.com/RooCodeInc/Roo-Code/pull/9310)): Shows git status information in environment details so agents have more context about untracked, modified, and staged files. +- **Tool protocol selector in advanced settings** ([#9324](https://github.com/RooCodeInc/Roo-Code/pull/9324)): Lets you choose which tool protocol to use (such as XML vs native) without editing config files. +- **Dynamic tool protocol resolution** ([#9286](https://github.com/RooCodeInc/Roo-Code/pull/9286)): Resolves the active tool protocol using a clear precedence hierarchy. +- **Improved Modes view toolbar** ([#9077](https://github.com/RooCodeInc/Roo-Code/pull/9077)): Moves Import/Export into the Modes view toolbar and cleans up the Mode edit view. +- **Cloud agent CTA points to setup page** ([#9338](https://github.com/RooCodeInc/Roo-Code/pull/9338)): Updates the cloud agent call-to-action to link directly to the setup page. +- **Roo Code Cloud provider pricing page** ([#9195](https://github.com/RooCodeInc/Roo-Code/pull/9195)): Adds a pricing page and related Cloud provider tweaks. +- **Gemini native tool calling (experimental, Google Gemini provider only)** ([#9343](https://github.com/RooCodeInc/Roo-Code/pull/9343)): Adds an experimental native tool option (off by default) for the Google Gemini provider so Gemini-based workflows can use tools without XML translation and behave more like other native-tool providers. +- **Roo Code Cloud credit balance in the extension** ([#9386](https://github.com/RooCodeInc/Roo-Code/pull/9386)): Shows your Roo Code Cloud RCC credit balance directly in the Roo provider settings so you can track usage and avoid unexpected interruptions. +- **Explicit 0 pricing for free models** ([#9419](https://github.com/RooCodeInc/Roo-Code/pull/9419)): Displays explicit 0 input/output token prices for free models in the pricing UI so it is always clear which options are free. + +## Bug Fixes + +- **Native Tool Protocol Race Condition** ([#9363](https://github.com/RooCodeInc/Roo-Code/pull/9363)): Fixed a race condition where switching profiles or changing API configuration could cause 400 errors. +- **Native Tool Repetition Detection** ([#9377](https://github.com/RooCodeInc/Roo-Code/pull/9377)): Fixed false positive "stuck in a loop" errors when using native tools repeatedly. +- **Strict Native Protocol Parsing** ([#9371](https://github.com/RooCodeInc/Roo-Code/pull/9371)): Ensured no XML parsing occurs when the native protocol is active. +- **Gemini Reasoning Config** ([#9375](https://github.com/RooCodeInc/Roo-Code/pull/9375)): Fixed an issue where high/low reasoning effort configuration was not being applied correctly. +- **Gemini Thought Validation** ([#9380](https://github.com/RooCodeInc/Roo-Code/pull/9380)): Resolved integration errors with Gemini reasoning models. +- **Prevent duplicate tool_result blocks in native protocol** ([#9248](https://github.com/RooCodeInc/Roo-Code/pull/9248)): Ensures each native tool call emits a single tool_result block. +- **Format tool responses for native protocol** ([#9270](https://github.com/RooCodeInc/Roo-Code/pull/9270)): Normalizes the structure of tool responses for easier model comprehension. +- **Centralize toolProtocol configuration checks** ([#9279](https://github.com/RooCodeInc/Roo-Code/pull/9279)): Uses a single source of truth for toolProtocol configuration. +- **Preserve tool blocks in conversation history** ([#9319](https://github.com/RooCodeInc/Roo-Code/pull/9319)): Keeps native protocol tool blocks intact in history. +- **Prevent infinite loops after successful finalization** ([#9325](https://github.com/RooCodeInc/Roo-Code/pull/9325)): Fixes a regression where certain native tool flows could loop. +- **Sync parser state with profile and model changes** ([#9355](https://github.com/RooCodeInc/Roo-Code/pull/9355)): Keeps the conversation parser aligned with the active profile and model. +- **Pass tool protocol to truncation errors** ([#9358](https://github.com/RooCodeInc/Roo-Code/pull/9358)): Ensures truncation errors know which tool protocol is active. +- **Structured JSON Returns** ([#9373](https://github.com/RooCodeInc/Roo-Code/pull/9373)): Updated tools to consistently return structured JSON when using the native protocol. +- **VS Code theme-colored outline button borders** ([#9336](https://github.com/RooCodeInc/Roo-Code/pull/9336)): Aligns outline button borders with the current VS Code theme. +- **Use shields.io badges instead of badgen.net** ([#9318](https://github.com/RooCodeInc/Roo-Code/pull/9318)): Replaces broken badge URLs with shields.io. +- **Cap git status file sampling in evals** ([#9322](https://github.com/RooCodeInc/Roo-Code/pull/9322)): Adds a maximum for git status files in eval settings. +- **Preserve images in native tool call results** ([#9401](https://github.com/RooCodeInc/Roo-Code/pull/9401)): Ensures images attached to messages are preserved and passed through native tool calls so follow-up reasoning can still use visual context instead of losing it as plain text only. +- **Faster router model metadata loading** ([#9410](https://github.com/RooCodeInc/Roo-Code/pull/9410)): Reduces redundant getModel() calls and adds a disk-backed metadata cache so router-based providers start faster and are more reliable when loading model info. +- **Environment Details Duplication** ([#9442](https://github.com/RooCodeInc/Roo-Code/pull/9442)): Fixed an issue where `environment_details` were duplicated when resuming cancelled tasks. +- **Preserve Reasoning Flag** ([#9453](https://github.com/RooCodeInc/Roo-Code/pull/9453)): Fixed the `preserveReasoning` flag to correctly control API reasoning inclusion. +- **OpenAI Parallel Tool Calls** ([#9433](https://github.com/RooCodeInc/Roo-Code/pull/9433)): Prevented OpenAI Native parallel tool calls when using native tool calling to avoid errors. +- **Search and Replace Parsing** ([#9456](https://github.com/RooCodeInc/Roo-Code/pull/9456)): Improved symbol parsing in the search and replace functionality. +- **Skipped Tool Results** ([#9457](https://github.com/RooCodeInc/Roo-Code/pull/9457)): Fixed an issue where `tool_result` blocks were not sent for skipped tools in the native protocol. +- **Markdown Formatting** ([#9458](https://github.com/RooCodeInc/Roo-Code/pull/9458)): Improved markdown formatting and added reasoning support. \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.34.0.mdx b/apps/docs/docs/update-notes/v3.34.0.mdx new file mode 100644 index 00000000000..46ff2fc70c1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.0.mdx @@ -0,0 +1,46 @@ +--- +description: This release introduces Browser Use 2.0, adds the Baseten provider, improves OpenAI-compatible behavior, and refines onboarding and tool descriptions. +keywords: + - roo code 3.34.0 + - browser use 2.0 + - baseten provider + - openai compatible + - onboarding + - native tools +image: /img/v3.34.0/v3.34.0.png +--- + +# Roo Code 3.34.0 Release Notes (2025-11-21) + +This release introduces Browser Use 2.0 for richer web automation, adds the Baseten provider, improves OpenAI-compatible behavior, and refines onboarding and native tool descriptions to make it easier for Roo to understand and use your tools effectively. + +Roo Code v3.34.0 Release + +## Browser Use 2.0 + +Browser Use now supports a more capable "2.0" experience ([#8941](https://github.com/RooCodeInc/Roo-Code/pull/8941)): + +- **Richer browser interaction**: Enables more advanced navigation and interaction patterns so Roo can better follow multi-step web workflows. +- **More reliable automation**: Improves stability for sequences of clicks, typing, and scrolling, reducing the chance of flaky browser runs. +- **Better fit for complex sites**: Makes it easier to work with modern web apps that require multiple steps or stateful interactions. + +> **📚 Documentation**: See [Browser Use](/features/browser-use) for details on how to enable and use browser workflows. Note: We have not yet updated these docs with images and a video of the new experience. + +## QOL Improvements + +- **Provider-Oriented Welcome Screen**: Added a provider-focused welcome screen so new users can more quickly choose and configure a working model setup ([#9484](https://github.com/RooCodeInc/Roo-Code/pull/9484)). +- **Pinned Roo Provider**: Pinned the Roo provider to the top of the provider list so it is easier to discover and select ([#9485](https://github.com/RooCodeInc/Roo-Code/pull/9485)). +- **Clearer Native Tool Descriptions**: Enhanced built-in tool descriptions with examples and clarifications so Roo can choose the right tools and use them more accurately ([#9486](https://github.com/RooCodeInc/Roo-Code/pull/9486)). + +## Bug Fixes + +- **Streaming Cancel Responsiveness**: Fixed the cancel button so it responds immediately during streaming, making it easier to stop long or unwanted runs (thanks jwadow!) ([#9448](https://github.com/RooCodeInc/Roo-Code/pull/9448)). +- **apply_diff Performance Regression**: Resolved a recent performance regression in `apply_diff`, restoring fast patch application on larger edits ([#9474](https://github.com/RooCodeInc/Roo-Code/pull/9474)). +- **Model Cache Refresh**: Implemented cache refreshing to avoid using stale disk-cached models, ensuring configuration updates are picked up correctly ([#9478](https://github.com/RooCodeInc/Roo-Code/pull/9478)). +- **Tool Call Fallbacks**: Added a fallback to always yield tool calls regardless of `finish_reason`, preventing cases where valid tool calls were dropped ([#9476](https://github.com/RooCodeInc/Roo-Code/pull/9476)). + +## Provider Updates + +- **Baseten Provider**: Added Baseten as a new AI provider, giving you another option for hosted models and deployments (thanks AlexKer!) ([#9461](https://github.com/RooCodeInc/Roo-Code/pull/9461)). +- **OpenAI-Compatible Improvements**: Improved the base OpenAI-compatible provider configuration and error handling so more OpenAI-style endpoints work smoothly without special tweaks ([#9462](https://github.com/RooCodeInc/Roo-Code/pull/9462)). +- **OpenRouter Capabilities**: Improved copying of model-level capabilities onto OpenRouter endpoint models so routing respects each model's real abilities ([#9483](https://github.com/RooCodeInc/Roo-Code/pull/9483)). diff --git a/apps/docs/docs/update-notes/v3.34.1.mdx b/apps/docs/docs/update-notes/v3.34.1.mdx new file mode 100644 index 00000000000..837931acd14 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.1.mdx @@ -0,0 +1,23 @@ +--- +description: This patch release lets eval jobs run on Roo Code Cloud models, clarifies image generation prompts, cleans up todo list updates, and fixes duplicate cloud message sync. +keywords: + - roo code 3.34.1 + - evals roo code cloud + - image generation ui + - todo list ui + - cloud sync bug fix +--- + +# Roo Code 3.34.1 Release Notes (2025-11-23) + +This patch release lets evaluation jobs run on Roo Code Cloud models, makes image generation prompts easier to read, cleans up todo list updates, and prevents duplicate cloud-synced messages. + +## Bug Fixes + +* **Single todo list in updates**: Removed a redundant todo list block from chat updates so you only see one clean, focused list when the updateTodoList tool runs ([#9517](https://github.com/RooCodeInc/Roo-Code/pull/9517), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +* **Cloud message deduplication**: Fixed cloud message syncing so duplicate copies of the same reasoning or assistant message are no longer re-synced, keeping task histories cleaner and less confusing ([#9518](https://github.com/RooCodeInc/Roo-Code/pull/9518), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). + +## QOL Improvements + +* **Clearer image generation prompts**: The full prompt and path for image generation now appear directly in the chat UI with clearer spacing and typography, making it easier to inspect, debug, and reuse prompts ([#9505](https://github.com/RooCodeInc/Roo-Code/pull/9505), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +* **Eval jobs on Roo Code Cloud**: You can now run evaluation jobs directly on Roo Code Cloud models, reusing the same managed models and job tokens as regular cloud runs ([#9492](https://github.com/RooCodeInc/Roo-Code/pull/9492), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). diff --git a/apps/docs/docs/update-notes/v3.34.2.mdx b/apps/docs/docs/update-notes/v3.34.2.mdx new file mode 100644 index 00000000000..e4230592660 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.2.mdx @@ -0,0 +1,41 @@ +--- +description: This patch release adds Claude Opus 4.5 across multiple providers, introduces Roo Code Cloud image generation, hardens Gemini and LiteLLM behavior, and refreshes Cerebras models. +keywords: + - roo code 3.34.2 + - claude opus 4.5 + - roo code cloud image generation + - gemini 3 reasoning_details + - litellm cache refresh + - cerebras models +image: /img/v3.34.2/v3.34.2.png +--- + +# Roo Code 3.34.2 Release Notes (2025-11-24) + +This patch release adds Claude Opus 4.5 support across OpenRouter, Anthropic, and Vertex, introduces Roo Code Cloud image generation, and improves provider reliability for Gemini, Cerebras, and LiteLLM-backed models. + +Roo Code v3.34.2 Release + +## Claude Opus 4.5 across providers + +Claude Opus 4.5 is now available through multiple providers with support for large context windows, prompt caching, and reasoning budgets ([#9540](https://github.com/RooCodeInc/Roo-Code/pull/9540), [#9541](https://github.com/RooCodeInc/Roo-Code/pull/9541)): + +- **Roo Code Cloud**: Run Claude Opus 4.5 as a managed cloud model for long, reasoning-heavy tasks without managing API keys yourself. +- **OpenRouter**: Use the `anthropic/claude-opus-4.5` model with prompt caching and reasoning budget support so you can run longer or more complex tasks with lower latency and cost. +- **Anthropic**: Access `claude-opus-4-5-20251101` directly via the Anthropic provider with full support for large context windows and reasoning budgets. +- **Vertex AI**: Use `claude-opus-4-5@20251101` on Vertex AI for managed, region-aware deployments with reasoning budget support. + +## Provider Updates + +- **Roo Code Cloud image generation provider**: Roo Code Cloud is now available as an image generation provider, so you can generate images directly through Roo Code Cloud instead of relying only on third-party image APIs ([#9528](https://github.com/RooCodeInc/Roo-Code/pull/9528))). +- **Cerebras model list clean-up**: The Cerebras provider model list now only shows currently supported models, reducing errors from deprecated Cerebras/Qwen variants and keeping the model picker aligned with what the API actually serves ([#9527](https://github.com/RooCodeInc/Roo-Code/pull/9527))). +- **Reliable LiteLLM model refresh after credential changes**: Clicking **Refresh Models** after changing your LiteLLM API key or base URL now immediately reloads the model list using the new credentials, so you do not need to clear caches or restart VS Code, while background refreshes still benefit from caching for speed ([#9536](https://github.com/RooCodeInc/Roo-Code/pull/9536))). + +## QOL Improvements + +- **XML tool protocol stays in sync with configuration**: Tool runs that use the XML protocol now correctly track the configured tool protocol after configuration updates, preventing rare parser-state errors when switching between XML and native tools ([#9535](https://github.com/RooCodeInc/Roo-Code/pull/9535))). + +## Bug Fixes + +- **Gemini 3 reasoning_details support**: Fixes 400 INVALID_ARGUMENT errors when using Gemini 3 models via OpenRouter by fully supporting the newer `reasoning_details` format, so multi-turn and tool-calling conversations now work reliably without dropping reasoning context ([#9506](https://github.com/RooCodeInc/Roo-Code/pull/9506))). +- **Skip unsupported Gemini content blocks safely**: Gemini conversations on Vertex AI now skip unsupported metadata blocks (such as certain reasoning or document types) with a warning instead of failing the entire thread, keeping long-running chats stable ([#9537](https://github.com/RooCodeInc/Roo-Code/pull/9537))). diff --git a/apps/docs/docs/update-notes/v3.34.3.mdx b/apps/docs/docs/update-notes/v3.34.3.mdx new file mode 100644 index 00000000000..c5e7437d077 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.3.mdx @@ -0,0 +1,35 @@ +--- +description: This patch adds Roo Code Cloud embeddings for codebase indexing, streams native tool calls, expands Claude Opus 4.5 coverage, and includes UI and reliability improvements. +keywords: + - roo code 3.34.3 + - new features + - bug fixes + - provider updates + - codebase indexing + - roo code cloud +image: /img/v3.34.3/v3.34.3.png +--- + +# Roo Code 3.34.3 Release Notes (2025-11-25) + +This release adds Roo Code Cloud as an embeddings provider for codebase indexing, streams native tool calls, expands Claude Opus 4.5 support, and includes UI, reliability, and cost improvements. + +Roo Code v3.34.3 Release + +* **Roo Code Cloud embeddings for codebase indexing**: Use Roo Code Cloud as a managed embeddings provider for codebase indexing so you can build semantic search over your project without running your own embedding service or managing separate API keys. The Code Index UI now exposes Roo Code Cloud as an embedder option and batches, rate-limits, and authenticates embedding requests through Roo Code Cloud for more reliable indexing. ([#9543](https://github.com/RooCodeInc/Roo-Code/pull/9543)) ([#9542](https://github.com/RooCodeInc/Roo-Code/pull/9542)) See [Codebase Indexing](/features/codebase-indexing) and [Roo Code Router](/providers/roo-code-router) for setup and usage details. +* **Streaming native tool calls**: Native tools (including Roo Code Cloud and OpenRouter helpers) now stream arguments and partial results into the UI, matching the streaming experience of XML tools so you can watch long-running operations progress and debug tool behavior more easily. ([#9542](https://github.com/RooCodeInc/Roo-Code/pull/9542)) + +## QOL Improvements + +* **Simpler bare‑metal evals setup with mise**: Standardizes the bare‑metal evals setup script on the `mise` runtime manager instead of `asdf`, reducing setup friction and avoiding version mismatches for contributors running local evals. ([#9548](https://github.com/RooCodeInc/Roo-Code/pull/9548)) +* **Contact links in the About Roo Code page**: Adds clear contact options directly to the About Roo Code settings page so you can quickly report bugs, request features, disclose security issues, or email the team without leaving the extension. ([#9570](https://github.com/RooCodeInc/Roo-Code/pull/9570)) + +## Bug Fixes + +* **Streaming follow‑up questions**: Fixes `ask_followup_question` streaming so the UI shows only the intended question text instead of raw JSON, and ensures all native tools emit and handle partial tool calls correctly when streaming is enabled, preventing confusing or missing tool output. ([#9561](https://github.com/RooCodeInc/Roo-Code/pull/9561)) +* **Prompt caching for Claude Opus 4.5**: Ensures Anthropic Claude Opus 4.5 requests now use prompt caching like other Claude models, significantly reducing ongoing API costs for users who rely on Opus 4.5 (thanks iainRedro!). ([#9568](https://github.com/RooCodeInc/Roo-Code/pull/9568)) + +## Provider Updates + +* **Claude Opus 4.5 in Claude Code**: Adds the `claude-opus-4-5-20251101` model to the Claude Code provider so you can select it like other Claude code models, with prompt caching support, no image support, and no reasoning effort/budget controls in the UI. ([#9560](https://github.com/RooCodeInc/Roo-Code/pull/9560)) +* **Claude Opus 4.5 in AWS Bedrock**: Exposes Claude Opus 4.5 through the AWS Bedrock provider so Bedrock users can access the same 200k-context, 8192-token limits, prompt caching, and reasoning capabilities as the existing Claude Opus 4 model (thanks pisicode!). ([#9572](https://github.com/RooCodeInc/Roo-Code/pull/9572)) See [AWS Bedrock](/providers/bedrock) for details on enabling and configuring this model. diff --git a/apps/docs/docs/update-notes/v3.34.4.mdx b/apps/docs/docs/update-notes/v3.34.4.mdx new file mode 100644 index 00000000000..3b43c30dfd5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.4.mdx @@ -0,0 +1,34 @@ +--- +description: This patch release adds free Black Forest Labs image generation models on Roo Code Cloud and OpenRouter and improves reliability when using native MCP tools with context condensing. +keywords: + - roo code 3.34.4 + - black forest labs flux 2 + - image generation + - mcp native tools + - context condensing +image: /img/v3.34.4/v3.34.4.png +--- + +# Roo Code 3.34.4 Release Notes (2025-11-25) + +This patch release adds free Black Forest Labs image generation models on Roo Code Cloud and OpenRouter, and makes native MCP tools more reliable by preserving tool names and tool_use blocks during context condensing. + +Roo Code v3.34.4 Release + +## Black Forest Labs image generation on Roo Code Cloud + +New Black Forest Labs FLUX.2 models are now wired through Roo Code’s image pipeline for Roo Code Cloud image generation ([#9587](https://github.com/RooCodeInc/Roo-Code/pull/9587)): + +- **Free image generation on Roo Code Cloud**: Use the `bfl/flux-2-pro:free` model on Roo Code Cloud for high-quality image generation without worrying about unexpected image charges. +- **Native images API support**: The `images_api` image generation method is supported for compatible models, improving parity with provider-native image APIs and giving better forwards compatibility as providers add new features. + +> **📚 Documentation**: See [Image Generation](/features/image-generation) for how to use image generation in Roo Code. + +## Bug Fixes + +- **Native MCP tool names preserved in history**: Native mode now keeps the real dynamic MCP tool names (such as `mcp_serverName_toolName`) in the API history instead of teaching the model a fake `use_mcp_tool` name, so follow-up calls pick the right tools and tool suggestions stay consistent ([#9559](https://github.com/RooCodeInc/Roo-Code/pull/9559)). +- **Native tools condensing keeps tool_use context**: When condensing long conversations that use native tools, required `tool_use` and `tool_result` blocks are preserved in the summary message, preventing 400 errors and avoiding lost context during follow-up turns ([#9582](https://github.com/RooCodeInc/Roo-Code/pull/9582)). + +## Provider Updates + +- **Black Forest Labs models on OpenRouter**: Adds Black Forest Labs FLUX.2 Flex and FLUX.2 Pro image generation models via OpenRouter, giving you additional high-quality options when you prefer to use your OpenRouter account for image generation ([#9589](https://github.com/RooCodeInc/Roo-Code/pull/9589)). diff --git a/apps/docs/docs/update-notes/v3.34.5.mdx b/apps/docs/docs/update-notes/v3.34.5.mdx new file mode 100644 index 00000000000..af12ce80fe2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.5.mdx @@ -0,0 +1,30 @@ +--- +description: This patch release improves native tool workflows, enhances the web-evals dashboard, and fixes tooling reliability issues. +keywords: + - roo code 3.34.5 + - new features + - bug fixes +image: /img/v3.34.5/v3.34.5.png +--- + +# Roo Code 3.34.5 Release Notes (2025-11-25) + +This release improves native tool calling workflows, enhances the web-evals dashboard, and refines provider and embeddings behavior. + +Roo Code v3.34.5 Release + +## QOL Improvements + +* **Experimental multiple native tool calls per turn with guardrails**: Lets the native tool protocol run multiple tools in a single assistant turn and blocks `attempt_completion()` if any tool fails in that turn, reducing the risk of partial or incorrect completions ([#9273](https://github.com/RooCodeInc/Roo-Code/pull/9273)). +* **Web-evals dashboard enhancements with dynamic tool columns and UX improvements**: Adds aggregate run statistics, per-tool success metrics, and dynamic tool usage columns so you can quickly spot failing tools or exercises and compare runs without rebuilding configs ([#9592](https://github.com/RooCodeInc/Roo-Code/pull/9592)). +* **Native tools as default for specific Roo Code Cloud models**: Sets the providers’ native tool protocol as the default for `minimax/minimax-m2` and `anthropic/claude-haiku-4.5` on Roo Code Cloud to reduce configuration overhead and improve tool-calling reliability ([#9586](https://github.com/RooCodeInc/Roo-Code/pull/9586)). + +## Bug Fixes + +* **API handler refresh on tool protocol changes**: Ensures switching API profiles that only change the tool protocol still refreshes the underlying handler and parser so tool calls always use the correct configuration ([#9599](https://github.com/RooCodeInc/Roo-Code/pull/9599)). +* **Native tools file reading regression for Grok Code Fast**: Restricts the single-file read behavior to XML tools so native tool calls use the standard multi-file-aware file reader and can access the workspace as expected ([#9600](https://github.com/RooCodeInc/Roo-Code/pull/9600)). +* **Roo Code Cloud embeddings revert and reliability**: Removes Roo Code Cloud as an embeddings provider to prevent `codebase_search` from appearing when it is not configured and to avoid indexing getting stuck in a standby state ([#9602](https://github.com/RooCodeInc/Roo-Code/pull/9602)). + +## Provider Updates + +* **Bedrock Anthropic Claude Opus 4.5 for global inference**: Adds the Anthropic Claude Opus 4.5 Bedrock model to the global inference model list so it can be used automatically anywhere global inference is supported, with no extra setup ([#9595](https://github.com/RooCodeInc/Roo-Code/pull/9595)). diff --git a/apps/docs/docs/update-notes/v3.34.6.mdx b/apps/docs/docs/update-notes/v3.34.6.mdx new file mode 100644 index 00000000000..03d27147988 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.6.mdx @@ -0,0 +1,34 @@ +--- +description: This patch release adds AWS Bedrock embeddings support, improves native tool and provider behavior, and fixes several reliability issues. +keywords: + - roo code 3.34.6 + - new features + - bug fixes +image: /img/v3.34.6/v3.34.6.png +--- + +# Roo Code 3.34.6 Release Notes (2025-11-26) + +This release adds AWS Bedrock embeddings support for code indexing, improves native tool and provider behavior, and fixes several reliability issues across Bedrock, Vertex, and native tooling. + +Roo Code v3.34.6 Release + +## Features + +* **AWS Bedrock embeddings for code indexing**: Adds support for using AWS Bedrock embeddings in code indexing so teams that standardize on Bedrock can reuse their existing infrastructure when indexing repos for Roo-based navigation and search (PR #9475). + +## QOL Improvements + +* **Native tool calling for Mistral**: Adds native tool calling support for the Mistral provider, enabling more reliable tool workflows and better multi-step automation when using Mistral models (PR #9625). +* **Parallel native tool execution via OpenAI protocol**: Wires the `MULTIPLE_NATIVE_TOOL_CALLS` experiment to OpenAI's `parallel_tool_calls` capability so multiple tools can run in parallel under the OpenAI-compatible protocol, improving throughput for tool-heavy tasks (PR #9621). +* **Fine-grained tool streaming for OpenRouter Anthropic**: Adds fine-grained tool streaming support for Anthropic models on OpenRouter so tool call responses stream more smoothly and stay aligned with Anthropic's tool semantics (PR #9629). +* **Global inference selection for Bedrock with cross-region**: Allows global inference to pick Bedrock models correctly even when cross-region routing is enabled, reducing the risk of mismatched regions or unavailable models during automatic selection (PR #9616). + +## Bug Fixes + +* **Vertex Anthropic content block filtering**: Filters out non-Anthropic content blocks before sending requests to the Vertex Anthropic API so mixed or unsupported blocks no longer cause request failures (#9583, PR #9618). +* **WriteToFileTool partial content safety**: Restores a missing `content` undefined check in `WriteToFileTool.handlePartial()` to prevent rare crashes or incorrect writes when partial content is unavailable (#9611, PR #9614). +* **Model cache avoids persisting empty responses**: Prevents the model cache from persisting empty API responses so configuration and model metadata do not get silently replaced with blank entries (#9597, PR #9623). +* **Skip access_mcp_resource when no resources exist**: Excludes the `access_mcp_resource` tool from native tool runs when an MCP server does not expose any resources, avoiding confusing no-op calls and making tool menus cleaner (PR #9615). +* **Inline terminal and indexing defaults**: Updates default settings for the inline terminal and codebase indexing to better match common workflows out of the box, reducing the amount of manual tuning needed after installation (PR #9622). +* **Native new_task tool_result timing**: Defers emitting the `new_task` tool_result in the native protocol until the corresponding subtask actually finishes, eliminating premature “done” signals and keeping task state accurate for downstream tools (PR #9628). diff --git a/apps/docs/docs/update-notes/v3.34.7.mdx b/apps/docs/docs/update-notes/v3.34.7.mdx new file mode 100644 index 00000000000..11e9c4d4459 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.7.mdx @@ -0,0 +1,33 @@ +--- +title: "Roo Code v3.34.7" +description: Native tool calling for Anthropic, Z.AI, and Moonshot providers, improved cloud onboarding, and bug fixes. +keywords: + - roo code 3.34.7 + - native tool calling + - provider updates + - bug fixes +image: /img/v3.34.7/v3.34.7.png +--- + +# Roo Code v3.34.7 Release Notes (2025-11-27) + +This release adds native tool calling support for Anthropic, Z.AI, and Moonshot providers, improves cloud onboarding, and fixes several bugs. + +Roo Code v3.34.7 Release + +## QOL Improvements + +* **Improved Cloud Sign-in Experience**: Adds a "taking you to cloud" screen with a progress indicator during authentication, plus a manual URL entry option as fallback for more reliable onboarding ([#9652](https://github.com/RooCodeInc/Roo-Code/pull/9652)) + +## Bug Fixes + +* **OpenRouter GPT-5 Schema Validation**: Fixes schema validation errors when using GPT-5 models via OpenRouter with the read_file tool ([#9633](https://github.com/RooCodeInc/Roo-Code/pull/9633)) +* **write_to_file Directory Creation**: Fixes ENOENT errors when creating files in non-existent subdirectories (thanks ivanenev!) ([#9640](https://github.com/RooCodeInc/Roo-Code/pull/9640)) +* **OpenRouter Tool Calls**: Fixes tool calls handling when using OpenRouter provider ([#9642](https://github.com/RooCodeInc/Roo-Code/pull/9642)) +* **Claude Code Configuration**: Fixes configuration conflicts by correctly disabling native tools and temperature support options that are managed by the Claude Code CLI ([#9643](https://github.com/RooCodeInc/Roo-Code/pull/9643)) + +## Provider Updates + +* **Anthropic Native Tool Calling**: Anthropic models now support native tool calling for improved performance and more reliable tool use ([#9644](https://github.com/RooCodeInc/Roo-Code/pull/9644)) +* **Z.AI Native Tool Calling**: Z.AI models (glm-4.5, glm-4.5-air, glm-4.5-x, glm-4.5-airx, glm-4.5-flash, glm-4.5v, glm-4.6, glm-4-32b-0414-128k) now support native tool calling ([#9645](https://github.com/RooCodeInc/Roo-Code/pull/9645)) +* **Moonshot Native Tool Calling**: Moonshot models now support native tool calling with parallel tool calls support ([#9646](https://github.com/RooCodeInc/Roo-Code/pull/9646)) diff --git a/apps/docs/docs/update-notes/v3.34.8.mdx b/apps/docs/docs/update-notes/v3.34.8.mdx new file mode 100644 index 00000000000..336e49ce8b9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.8.mdx @@ -0,0 +1,20 @@ +--- +title: "Roo Code v3.34.8 Release Notes" +description: "Roo Code v3.34.8 fixes a race condition in the new_task tool for native protocol APIs." +keywords: + - roo code 3.34.8 + - bug fixes + - new_task tool + - native protocol +image: /img/v3.34.8/v3.34.8.png +--- + +# Roo Code 3.34.8 Release Notes (2025-11-27) + +This release fixes a race condition affecting subtask handling in native protocol APIs. + +Roo Code v3.34.8 Release + +## Bug Fixes + +* **Race Condition in new_task Tool**: Fixes a timing issue where subtasks completing quickly (within 500ms) could break conversation history when using the `new_task` tool with native protocol APIs. Users on native protocol providers should now experience more reliable subtask handling. ([#9655](https://github.com/RooCodeInc/Roo-Code/pull/9655)) diff --git a/apps/docs/docs/update-notes/v3.34.mdx b/apps/docs/docs/update-notes/v3.34.mdx new file mode 100644 index 00000000000..69067bd751c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.34.mdx @@ -0,0 +1,83 @@ +--- +description: Combined notes for Roo Code 3.34, including Browser Use 2.0, the Baseten provider, OpenAI-compatible improvements, Roo Code Cloud eval jobs, image generation UI tweaks, todo list cleanup, and cloud sync fixes. +keywords: + - roo code 3.34 + - browser use 2.0 + - baseten provider + - openai compatible + - evals roo code cloud + - image generation ui + - todo list ui + - cloud sync bug fix +image: /img/v3.34.0/v3.34.0.png +--- + +# Roo Code 3.34 Release Notes (2025-11-21) + +Roo Code 3.34 combines Browser Use 2.0, the Baseten provider, OpenAI-compatible improvements, and refined onboarding and native tool descriptions with patches that add Roo Code Cloud eval support, clearer image generation prompts, todo list cleanup, cloud sync fixes, Claude Opus 4.5 across Roo Code Cloud, OpenRouter, Anthropic, and Vertex, AWS Bedrock embeddings for code indexing, improved native tool workflows for Mistral and OpenAI-compatible providers, smoother Anthropic tool streaming on OpenRouter, better Bedrock global inference selection, plus new provider reliability and model updates, free Black Forest Labs image generation on Roo Code Cloud, native MCP tool reliability fixes, native tool calling for Anthropic, Z.AI, and Moonshot providers, improved cloud sign-in experience, a race condition fix for the new_task tool on native protocol, and multiple bug fixes. + +Roo Code v3.34 Release + +## Browser Use 2.0 + +Browser Use now supports a more capable "2.0" experience ([#8941](https://github.com/RooCodeInc/Roo-Code/pull/8941)): + +- **Richer browser interaction**: Enables more advanced navigation and interaction patterns so Roo can better follow multi-step web workflows. +- **More reliable automation**: Improves stability for sequences of clicks, typing, and scrolling, reducing the chance of flaky browser runs. +- **Better fit for complex sites**: Makes it easier to work with modern web apps that require multiple steps or stateful interactions. + +> **📚 Documentation**: See [Browser Use](/features/browser-use) for details on how to enable and use browser workflows. Note: We have not yet updated these docs with images and a video of the new experience. + +## QOL Improvements + +- **Provider-oriented welcome screen**: Added a provider-focused welcome screen so new users can more quickly choose and configure a working model setup ([#9484](https://github.com/RooCodeInc/Roo-Code/pull/9484)). +- **Pinned Roo provider**: Pinned the Roo provider to the top of the provider list so it is easier to discover and select ([#9485](https://github.com/RooCodeInc/Roo-Code/pull/9485)). +- **Clearer native tool descriptions**: Enhanced built-in tool descriptions with examples and clarifications so Roo can choose the right tools and use them more accurately ([#9486](https://github.com/RooCodeInc/Roo-Code/pull/9486)). +- **Clearer image generation prompts**: The full prompt and path for image generation now appear directly in the chat UI with clearer spacing and typography, making it easier to inspect, debug, and reuse prompts ([#9505](https://github.com/RooCodeInc/Roo-Code/pull/9505), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +- **Eval jobs on Roo Code Cloud**: You can now run evaluation jobs directly on Roo Code Cloud models, reusing the same managed models and job tokens as regular cloud runs ([#9492](https://github.com/RooCodeInc/Roo-Code/pull/9492), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +- **XML tool protocol stays in sync with configuration**: Tool runs that use the XML protocol now correctly track the configured tool protocol after configuration updates, preventing rare parser-state errors when switching between XML and native tools ([#9535](https://github.com/RooCodeInc/Roo-Code/pull/9535))). +- **Experimental multiple native tool calls per turn with guardrails**: Lets the native tool protocol run multiple tools in a single assistant turn and blocks `attempt_completion()` if any tool fails in that turn, reducing the risk of partial or incorrect completions ([#9273](https://github.com/RooCodeInc/Roo-Code/pull/9273)). +- **Web-evals dashboard enhancements with dynamic tool columns and UX improvements**: Adds aggregate run statistics, per-tool success metrics, and dynamic tool usage columns so you can quickly spot failing tools or exercises and compare runs without rebuilding configs ([#9592](https://github.com/RooCodeInc/Roo-Code/pull/9592)). +- **Native tools as default for specific Roo Code Cloud models**: Sets the providers’ native tool protocol as the default for `minimax/minimax-m2` and `anthropic/claude-haiku-4.5` on Roo Code Cloud to reduce configuration overhead and improve tool-calling reliability ([#9586](https://github.com/RooCodeInc/Roo-Code/pull/9586)). +- **Native tool calling for Mistral**: Adds native tool calling support for the Mistral provider, enabling more reliable tool workflows and better multi-step automation when using Mistral models ([#9625](https://github.com/RooCodeInc/Roo-Code/pull/9625)). +- **Parallel native tool execution via OpenAI protocol**: Wires the `MULTIPLE_NATIVE_TOOL_CALLS` experiment to OpenAI's `parallel_tool_calls` capability so multiple tools can run in parallel under the OpenAI-compatible protocol, improving throughput for tool-heavy tasks ([#9621](https://github.com/RooCodeInc/Roo-Code/pull/9621)). +- **Fine-grained tool streaming for OpenRouter Anthropic**: Adds fine-grained tool streaming support for Anthropic models on OpenRouter so tool call responses stream more smoothly and stay aligned with Anthropic's tool semantics ([#9629](https://github.com/RooCodeInc/Roo-Code/pull/9629)). +- **Global inference selection for Bedrock with cross-region**: Allows global inference to pick Bedrock models correctly even when cross-region routing is enabled, reducing the risk of mismatched regions or unavailable models during automatic selection ([#9616](https://github.com/RooCodeInc/Roo-Code/pull/9616)). +- **Improved Cloud Sign-in Experience**: Adds a "taking you to cloud" screen with a progress indicator during authentication, plus a manual URL entry option as fallback for more reliable onboarding ([#9652](https://github.com/RooCodeInc/Roo-Code/pull/9652)). + +## Bug Fixes + +- **Streaming cancel responsiveness**: Fixed the cancel button so it responds immediately during streaming, making it easier to stop long or unwanted runs ([#9448](https://github.com/RooCodeInc/Roo-Code/pull/9448)). +- **apply_diff performance regression**: Resolved a recent performance regression in `apply_diff`, restoring fast patch application on larger edits ([#9474](https://github.com/RooCodeInc/Roo-Code/pull/9474)). +- **Model cache refresh**: Implemented cache refreshing to avoid using stale disk-cached models, ensuring configuration updates are picked up correctly ([#9478](https://github.com/RooCodeInc/Roo-Code/pull/9478)). +- **Tool call fallbacks**: Added a fallback to always yield tool calls regardless of `finish_reason`, preventing cases where valid tool calls were dropped ([#9476](https://github.com/RooCodeInc/Roo-Code/pull/9476)). +- **Single todo list in updates**: Removed a redundant todo list block from chat updates so you only see one clean, focused list when the updateTodoList tool runs ([#9517](https://github.com/RooCodeInc/Roo-Code/pull/9517), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +- **Cloud message deduplication**: Fixed cloud message syncing so duplicate copies of the same reasoning or assistant message are no longer re-synced, keeping task histories cleaner and less confusing ([#9518](https://github.com/RooCodeInc/Roo-Code/pull/9518), [#9522](https://github.com/RooCodeInc/Roo-Code/pull/9522)). +- **Gemini 3 reasoning_details support**: Fixes 400 INVALID_ARGUMENT errors when using Gemini 3 models via OpenRouter by fully supporting the newer `reasoning_details` format, so multi-turn and tool-calling conversations now work reliably without dropping reasoning context ([#9506](https://github.com/RooCodeInc/Roo-Code/pull/9506))). +- **Skip unsupported Gemini content blocks safely**: Gemini conversations on Vertex AI now skip unsupported metadata blocks (such as certain reasoning or document types) with a warning instead of failing the entire thread, keeping long-running chats stable ([#9537](https://github.com/RooCodeInc/Roo-Code/pull/9537))). +- **Native MCP tool names preserved in history**: Native mode now keeps the real dynamic MCP tool names (such as `mcp_serverName_toolName`) in the API history instead of teaching the model a fake `use_mcp_tool` name, so follow-up calls pick the right tools and tool suggestions stay consistent ([#9559](https://github.com/RooCodeInc/Roo-Code/pull/9559)). +- **Native tools condensing keeps tool_use context**: When condensing long conversations that use native tools, required `tool_use` and `tool_result` blocks are preserved in the summary message, preventing 400 errors and avoiding lost context during follow-up turns ([#9582](https://github.com/RooCodeInc/Roo-Code/pull/9582)). +- **API handler refresh on tool protocol changes**: Ensures switching API profiles that only change the tool protocol still refreshes the underlying handler and parser so tool calls always use the correct configuration ([#9599](https://github.com/RooCodeInc/Roo-Code/pull/9599)). +- **Native tools file reading regression for Grok Code Fast**: Restricts the single-file read behavior to XML tools so native tool calls use the standard multi-file-aware file reader and can access the workspace as expected ([#9600](https://github.com/RooCodeInc/Roo-Code/pull/9600)). +- **Roo Code Cloud embeddings revert and reliability**: Removes Roo Code Cloud as an embeddings provider to prevent `codebase_search` from appearing when it is not configured and to avoid indexing getting stuck in a standby state ([#9602](https://github.com/RooCodeInc/Roo-Code/pull/9602)). +- **OpenRouter GPT-5 Schema Validation**: Fixes schema validation errors when using GPT-5 models via OpenRouter with the read_file tool ([#9633](https://github.com/RooCodeInc/Roo-Code/pull/9633)). +- **write_to_file Directory Creation**: Fixes ENOENT errors when creating files in non-existent subdirectories (thanks ivanenev!) ([#9640](https://github.com/RooCodeInc/Roo-Code/pull/9640)). +- **OpenRouter Tool Calls**: Fixes tool calls handling when using OpenRouter provider ([#9642](https://github.com/RooCodeInc/Roo-Code/pull/9642)). +- **Claude Code Configuration**: Fixes configuration conflicts by correctly disabling native tools and temperature support options that are managed by the Claude Code CLI ([#9643](https://github.com/RooCodeInc/Roo-Code/pull/9643)). +- **Race Condition in new_task Tool**: Fixes a timing issue where subtasks completing quickly (within 500ms) could break conversation history when using the `new_task` tool with native protocol APIs ([#9655](https://github.com/RooCodeInc/Roo-Code/pull/9655)). + +## Provider Updates + +- **Baseten provider**: Added Baseten as a new AI provider, giving you another option for hosted models and deployments ([#9461](https://github.com/RooCodeInc/Roo-Code/pull/9461)). +- **OpenAI-compatible improvements**: Improved the base OpenAI-compatible provider configuration and error handling so more OpenAI-style endpoints work smoothly without special tweaks ([#9462](https://github.com/RooCodeInc/Roo-Code/pull/9462)). +- **OpenRouter capabilities**: Improved copying of model-level capabilities onto OpenRouter endpoint models so routing respects each model's real abilities ([#9483](https://github.com/RooCodeInc/Roo-Code/pull/9483)). +- **Roo Code Cloud image generation provider**: Roo Code Cloud is now available as an image generation provider, so you can generate images directly through Roo Code Cloud instead of relying only on third-party image APIs ([#9528](https://github.com/RooCodeInc/Roo-Code/pull/9528))). +- **Cerebras model list clean-up**: The Cerebras provider model list now only shows currently supported models, reducing errors from deprecated Cerebras/Qwen variants and keeping the model picker aligned with what the API actually serves ([#9527](https://github.com/RooCodeInc/Roo-Code/pull/9527))). +- **Reliable LiteLLM model refresh after credential changes**: Clicking **Refresh Models** after changing your LiteLLM API key or base URL now immediately reloads the model list using the new credentials, so you do not need to clear caches or restart VS Code, while background refreshes still benefit from caching for speed ([#9536](https://github.com/RooCodeInc/Roo-Code/pull/9536))). +- **Black Forest Labs image generation on Roo Code Cloud**: Use the free `bfl/flux-2-pro:free` model on Roo Code Cloud for high-quality image generation without unexpected charges, powered by the `images_api` image generation method for compatible models ([#9587](https://github.com/RooCodeInc/Roo-Code/pull/9587)). +- **Black Forest Labs models on OpenRouter**: Adds Black Forest Labs FLUX.2 Flex and FLUX.2 Pro image generation models via OpenRouter, giving you additional high-quality options when you prefer to use your OpenRouter account for image generation ([#9589](https://github.com/RooCodeInc/Roo-Code/pull/9589)). +- **Bedrock Anthropic Claude Opus 4.5 for global inference**: Adds the Anthropic Claude Opus 4.5 Bedrock model to the global inference model list so it can be used automatically anywhere global inference is supported, with no extra setup ([#9595](https://github.com/RooCodeInc/Roo-Code/pull/9595)). +- **AWS Bedrock embeddings for code indexing**: Adds support for using AWS Bedrock embeddings in code indexing so teams that standardize on Bedrock can reuse their existing infrastructure when indexing repos for Roo-based navigation and search ([#9475](https://github.com/RooCodeInc/Roo-Code/pull/9475)). +- **Anthropic Native Tool Calling**: Anthropic models now support native tool calling for improved performance and more reliable tool use ([#9644](https://github.com/RooCodeInc/Roo-Code/pull/9644)). +- **Z.AI Native Tool Calling**: Z.AI models (glm-4.5, glm-4.5-air, glm-4.5-x, glm-4.5-airx, glm-4.5-flash, glm-4.5v, glm-4.6, glm-4-32b-0414-128k) now support native tool calling ([#9645](https://github.com/RooCodeInc/Roo-Code/pull/9645)). +- **Moonshot Native Tool Calling**: Moonshot models now support native tool calling with parallel tool calls support ([#9646](https://github.com/RooCodeInc/Roo-Code/pull/9646)). diff --git a/apps/docs/docs/update-notes/v3.35.0.mdx b/apps/docs/docs/update-notes/v3.35.0.mdx new file mode 100644 index 00000000000..31d07ce74d3 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.0.mdx @@ -0,0 +1,57 @@ +--- +description: Roo Code 3.35.0 introduces resilient subtasks that persist across reloads and massive native tool calling expansion across 15+ providers. +keywords: + - roo code 3.35.0 + - subtasks + - native tool calling + - provider updates +image: /img/v3.35.0/v3.35.0.png +--- + +# Roo Code 3.35.0 Release Notes (2025-12-01) + +This release introduces metadata-driven subtasks that never lose their parent connection, plus native tool calling support for 15+ providers. + +Roo Code v3.35.0 Release + +## Metadata-Driven Subtasks + +The connection between subtasks and parent tasks no longer breaks when you exit a task, crash, reboot, or reload VS Code ([#9090](https://github.com/RooCodeInc/Roo-Code/pull/9090)). Subtask relationships are now controlled by metadata, so the parent-child link persists through any interruption. + +## Native Tool Calling Expansion + +Native tool calling support has been expanded to 15+ providers: + +* Bedrock ([#9698](https://github.com/RooCodeInc/Roo-Code/pull/9698)) +* Cerebras ([#9692](https://github.com/RooCodeInc/Roo-Code/pull/9692)) +* Chutes ([#9715](https://github.com/RooCodeInc/Roo-Code/pull/9715)) +* DeepInfra ([#9691](https://github.com/RooCodeInc/Roo-Code/pull/9691)) +* DeepSeek & Doubao ([#9671](https://github.com/RooCodeInc/Roo-Code/pull/9671)) +* Groq ([#9673](https://github.com/RooCodeInc/Roo-Code/pull/9673)) +* LiteLLM ([#9719](https://github.com/RooCodeInc/Roo-Code/pull/9719)) +* Ollama ([#9696](https://github.com/RooCodeInc/Roo-Code/pull/9696)) +* OpenAI-compatible: Fireworks, SambaNova, Featherless, IO Intelligence ([#9676](https://github.com/RooCodeInc/Roo-Code/pull/9676)) +* Requesty ([#9672](https://github.com/RooCodeInc/Roo-Code/pull/9672)) +* Unbound ([#9699](https://github.com/RooCodeInc/Roo-Code/pull/9699)) +* Vercel AI Gateway ([#9697](https://github.com/RooCodeInc/Roo-Code/pull/9697)) +* Vertex Gemini ([#9678](https://github.com/RooCodeInc/Roo-Code/pull/9678)) +* xAI with new Grok 4 Fast models ([#9690](https://github.com/RooCodeInc/Roo-Code/pull/9690)) + +## QOL Improvements + +* **Improved Onboarding**: Simplified provider settings during initial setup—advanced options remain in Settings ([#9709](https://github.com/RooCodeInc/Roo-Code/pull/9709)) +* **Cleaner Toolbar**: Modes and MCP settings consolidated into the main settings panel for better discoverability ([#9710](https://github.com/RooCodeInc/Roo-Code/pull/9710)) +* **Tool Format in Environment Details**: Models now receive tool format information, improving behavior when switching between XML and native tools ([#9661](https://github.com/RooCodeInc/Roo-Code/pull/9661)) +* **Debug Buttons**: View API and UI history with new debug buttons (requires `roo-cline.debug: true`) ([#9684](https://github.com/RooCodeInc/Roo-Code/pull/9684)) +* **Grok Code Fast Default**: Native tools now default for xai/grok-code-fast-1 ([#9717](https://github.com/RooCodeInc/Roo-Code/pull/9717)) + +## Bug Fixes + +* **Parallel Tool Calls Fix**: Preserve tool_use blocks in summary during context condensation, fixing 400 errors with Anthropic's parallel tool calls feature (thanks SilentFlower!) ([#9714](https://github.com/RooCodeInc/Roo-Code/pull/9714)) +* **Navigation Button Wrapping**: Prevent navigation buttons from wrapping on smaller screens ([#9721](https://github.com/RooCodeInc/Roo-Code/pull/9721)) + +## Misc Improvements + +* **Model-specific Tool Customization**: Configure `excludedTools` and `includedTools` per model for fine-grained tool availability control ([#9641](https://github.com/RooCodeInc/Roo-Code/pull/9641)) +* **apply_patch Tool**: New native tool for file editing using simplified diff format with fuzzy matching and file rename support ([#9663](https://github.com/RooCodeInc/Roo-Code/pull/9663)) +* **search_and_replace Tool**: Batch text replacements with partial matching and error recovery ([#9549](https://github.com/RooCodeInc/Roo-Code/pull/9549)) diff --git a/apps/docs/docs/update-notes/v3.35.1.mdx b/apps/docs/docs/update-notes/v3.35.1.mdx new file mode 100644 index 00000000000..4d21cd15aab --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.1.mdx @@ -0,0 +1,19 @@ +--- +description: Bug fix for parallel tool calls during task delegation and improved error logging. +keywords: + - roo code 3.35.1 + - bug fixes + - error logging +--- + +# Roo Code v3.35.1 Release Notes (2025-12-01) + +This patch release fixes an issue with parallel tool calls during task delegation and improves error diagnostics. + +## Bug Fixes + +* **Parallel Tool Call Fix**: Fixes 400 errors that occurred when using native tool protocol with parallel tool calls (e.g., `update_todo_list` + `new_task`). Pending tool results are now properly flushed before task delegation ([#9726](https://github.com/RooCodeInc/Roo-Code/pull/9726)) + +## Misc Improvements + +* **Better IPC Error Logging**: Error logs now display detailed structured data instead of unhelpful `[object Object]` messages, making debugging extension issues easier ([#9727](https://github.com/RooCodeInc/Roo-Code/pull/9727)) diff --git a/apps/docs/docs/update-notes/v3.35.2.mdx b/apps/docs/docs/update-notes/v3.35.2.mdx new file mode 100644 index 00000000000..a84e6ca5103 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.2.mdx @@ -0,0 +1,26 @@ +--- +description: Provider updates including model default temperatures and improved native tool support. +keywords: + - roo code 3.35.2 + - provider updates + - model temperature + - native tools + - litellm +image: /img/v3.35.2/v3.35.2.png +--- + +# Roo Code 3.35.2 Release Notes (2025-12-01) + +This release improves provider behavior with model default temperatures and enhanced native tool support across providers. + +Roo Code v3.35.2 Release + +## Provider Updates + +* **Model Default Temperatures**: Models can now specify their own default temperature settings. Temperature precedence is: user's custom setting → model's default → system default ([#9734](https://github.com/RooCodeInc/Roo-Code/pull/9734)) + +* **Roo Provider Native Tools**: Models with the `default-native-tools` tag automatically use native tool calling by default for improved tool-based interactions ([#9735](https://github.com/RooCodeInc/Roo-Code/pull/9735)) + +* **LiteLLM Native Tool Support**: All LiteLLM models now assume native tool support by default, improving tool compatibility and reducing configuration issues ([#9736](https://github.com/RooCodeInc/Roo-Code/pull/9736)) + +* **App Version Tracking**: The Roo provider now sends app version information with API requests for improved request tracking and analytics ([#9730](https://github.com/RooCodeInc/Roo-Code/pull/9730)) diff --git a/apps/docs/docs/update-notes/v3.35.3.mdx b/apps/docs/docs/update-notes/v3.35.3.mdx new file mode 100644 index 00000000000..a6f789e9650 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.3.mdx @@ -0,0 +1,20 @@ +--- +description: Roo Code 3.35.3 features an improved welcome view and stealth model privacy for API configurations. +keywords: + - roo code 3.35.3 + - welcome view + - stealth models + - privacy +--- + +# Roo Code 3.35.3 Release Notes (2025-12-02) + +This release improves the onboarding experience with a simplified welcome view and adds stealth model support for API providers. + +## QOL Improvements + +* **New Welcome View**: Simplified welcome view with consolidated components for a cleaner, more consistent onboarding experience ([#9741](https://github.com/RooCodeInc/Roo-Code/pull/9741)) + +## Misc Improvements + +* **Stealth Model Privacy**: Models tagged with "stealth" in the Roo API now receive vendor confidentiality instructions in their system prompt, enabling white-label or anonymous model experiences ([#9742](https://github.com/RooCodeInc/Roo-Code/pull/9742)) diff --git a/apps/docs/docs/update-notes/v3.35.4.mdx b/apps/docs/docs/update-notes/v3.35.4.mdx new file mode 100644 index 00000000000..ca28ae59e88 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.4.mdx @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.35.4 fixes tool call handling, simplifies the write_to_file tool, and updates z.ai provider settings. +keywords: + - roo code 3.35.4 + - bug fixes + - write_to_file + - z.ai +--- + +# Roo Code 3.35.4 Release Notes (2025-12-02) + +This release fixes a tool call handling regression, simplifies the write_to_file tool, and corrects z.ai provider UI. + +## QOL Improvements + +* **Simplified write_to_file Tool**: The `line_count` parameter has been removed from the write_to_file tool, making tool calls cleaner and reducing potential errors from incorrect line counts ([#9667](https://github.com/RooCodeInc/Roo-Code/pull/9667)) + +## Bug Fixes + +* **Malformed Tool Call Fix**: Fixed a regression where malformed native tool calls would cause Roo Code to hang indefinitely. Tool calls now proceed to validation which catches and reports the missing parameters properly ([#9758](https://github.com/RooCodeInc/Roo-Code/pull/9758)) + +## Provider Updates + +* **z.ai GLM Model Fix**: Removed misleading reasoning toggle UI for GLM-4.5 and GLM-4.6 models on z.ai provider, as these models don't support think/reasoning data for coding agents ([#9752](https://github.com/RooCodeInc/Roo-Code/pull/9752)) diff --git a/apps/docs/docs/update-notes/v3.35.5.mdx b/apps/docs/docs/update-notes/v3.35.5.mdx new file mode 100644 index 00000000000..2764536272d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.5.mdx @@ -0,0 +1,25 @@ +--- +description: Adds OpenRouter embedding provider routing, updates CloudView UI, and improves provider compatibility. +keywords: + - roo code 3.35.5 + - openrouter embeddings + - provider routing + - cloudview +--- + +# Roo Code v3.35.5 Release Notes (2025-12-03) + +This release adds provider routing selection for OpenRouter embeddings, updates the CloudView interface, and improves provider compatibility. + +## Features + +* **OpenRouter Embeddings Provider Routing**: Select specific routing providers for OpenRouter embeddings in code indexing settings, enabling cost optimization since providers can vary by 4-5x in price for the same embedding model (thanks SannidhyaSah!) ([#9693](https://github.com/RooCodeInc/Roo-Code/pull/9693)) + +## QOL Improvements + +* **CloudView Interface Updates**: Cleaner UI with refreshed marketing copy, updated button styling with rounded corners for a more modern look ([#9776](https://github.com/RooCodeInc/Roo-Code/pull/9776)) + +## Provider Updates + +* **Roo Provider Tool Compatibility**: Improved tool conversion for OpenAI-compatible API endpoints, ensuring tools work correctly with OpenAI-style request formats ([#9769](https://github.com/RooCodeInc/Roo-Code/pull/9769)) +* **MiniMax M2 Free Tier Default**: MiniMax M2 model now defaults to the free tier when using OpenRouter ([#9778](https://github.com/RooCodeInc/Roo-Code/pull/9778)) diff --git a/apps/docs/docs/update-notes/v3.35.mdx b/apps/docs/docs/update-notes/v3.35.mdx new file mode 100644 index 00000000000..d4f1dc62aa8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.35.mdx @@ -0,0 +1,75 @@ +--- +description: Roo Code 3.35 introduces resilient subtasks that persist across reloads and massive native tool calling expansion across 15+ providers. +keywords: + - roo code 3.35 + - subtasks + - native tool calling + - provider updates +image: /img/v3.35.0/v3.35.0.png +--- + +# Roo Code 3.35 Release Notes (Combined) + +This release introduces metadata-driven subtasks that never lose their parent connection, plus native tool calling support for 15+ providers. + +Roo Code v3.35 Release + +## Metadata-Driven Subtasks + +The connection between subtasks and parent tasks no longer breaks when you exit a task, crash, reboot, or reload VS Code ([#9090](https://github.com/RooCodeInc/Roo-Code/pull/9090)). Subtask relationships are now controlled by metadata, so the parent-child link persists through any interruption. + +## Native Tool Calling Expansion + +Native tool calling support has been expanded to 15+ providers: + +* Bedrock ([#9698](https://github.com/RooCodeInc/Roo-Code/pull/9698)) +* Cerebras ([#9692](https://github.com/RooCodeInc/Roo-Code/pull/9692)) +* Chutes ([#9715](https://github.com/RooCodeInc/Roo-Code/pull/9715)) +* DeepInfra ([#9691](https://github.com/RooCodeInc/Roo-Code/pull/9691)) +* DeepSeek & Doubao ([#9671](https://github.com/RooCodeInc/Roo-Code/pull/9671)) +* Groq ([#9673](https://github.com/RooCodeInc/Roo-Code/pull/9673)) +* LiteLLM ([#9719](https://github.com/RooCodeInc/Roo-Code/pull/9719)) +* Ollama ([#9696](https://github.com/RooCodeInc/Roo-Code/pull/9696)) +* OpenAI-compatible: Fireworks, SambaNova, Featherless, IO Intelligence ([#9676](https://github.com/RooCodeInc/Roo-Code/pull/9676)) +* Requesty ([#9672](https://github.com/RooCodeInc/Roo-Code/pull/9672)) +* Unbound ([#9699](https://github.com/RooCodeInc/Roo-Code/pull/9699)) +* Vercel AI Gateway ([#9697](https://github.com/RooCodeInc/Roo-Code/pull/9697)) +* Vertex Gemini ([#9678](https://github.com/RooCodeInc/Roo-Code/pull/9678)) +* xAI with new Grok 4 Fast models ([#9690](https://github.com/RooCodeInc/Roo-Code/pull/9690)) + +## QOL Improvements + +* **Improved Onboarding**: Simplified provider settings during initial setup—advanced options remain in Settings ([#9709](https://github.com/RooCodeInc/Roo-Code/pull/9709)) +* **Cleaner Toolbar**: Modes and MCP settings consolidated into the main settings panel for better discoverability ([#9710](https://github.com/RooCodeInc/Roo-Code/pull/9710)) +* **Tool Format in Environment Details**: Models now receive tool format information, improving behavior when switching between XML and native tools ([#9661](https://github.com/RooCodeInc/Roo-Code/pull/9661)) +* **Debug Buttons**: View API and UI history with new debug buttons (requires `roo-cline.debug: true`) ([#9684](https://github.com/RooCodeInc/Roo-Code/pull/9684)) +* **Grok Code Fast Default**: Native tools now default for xai/grok-code-fast-1 ([#9717](https://github.com/RooCodeInc/Roo-Code/pull/9717)) +* **New Welcome View**: Simplified welcome view with consolidated components for a cleaner, more consistent onboarding experience ([#9741](https://github.com/RooCodeInc/Roo-Code/pull/9741)) +* **Simplified write_to_file Tool**: The `line_count` parameter has been removed from the write_to_file tool, making tool calls cleaner and reducing potential errors from incorrect line counts ([#9667](https://github.com/RooCodeInc/Roo-Code/pull/9667)) +* **OpenRouter Embeddings Provider Routing**: Select specific routing providers for OpenRouter embeddings in code indexing settings, enabling cost optimization since providers can vary by 4-5x in price for the same embedding model (thanks SannidhyaSah!) ([#9693](https://github.com/RooCodeInc/Roo-Code/pull/9693)) +* **CloudView Interface Updates**: Cleaner UI with refreshed marketing copy, updated button styling with rounded corners for a more modern look ([#9776](https://github.com/RooCodeInc/Roo-Code/pull/9776)) + +## Bug Fixes + +* **Parallel Tool Calls Fix**: Preserve tool_use blocks in summary during context condensation, fixing 400 errors with Anthropic's parallel tool calls feature (thanks SilentFlower!) ([#9714](https://github.com/RooCodeInc/Roo-Code/pull/9714)) +* **Navigation Button Wrapping**: Prevent navigation buttons from wrapping on smaller screens ([#9721](https://github.com/RooCodeInc/Roo-Code/pull/9721)) +* **Task Delegation Tool Flush**: Fixes 400 errors that occurred when using native tool protocol with parallel tool calls (e.g., `update_todo_list` + `new_task`). Pending tool results are now properly flushed before task delegation ([#9726](https://github.com/RooCodeInc/Roo-Code/pull/9726)) +* **Malformed Tool Call Fix**: Fixed a regression where malformed native tool calls would cause Roo Code to hang indefinitely. Tool calls now proceed to validation which catches and reports the missing parameters properly ([#9758](https://github.com/RooCodeInc/Roo-Code/pull/9758)) + +## Misc Improvements + +* **Model-specific Tool Customization**: Configure `excludedTools` and `includedTools` per model for fine-grained tool availability control ([#9641](https://github.com/RooCodeInc/Roo-Code/pull/9641)) +* **apply_patch Tool**: New native tool for file editing using simplified diff format with fuzzy matching and file rename support ([#9663](https://github.com/RooCodeInc/Roo-Code/pull/9663)) +* **search_and_replace Tool**: Batch text replacements with partial matching and error recovery ([#9549](https://github.com/RooCodeInc/Roo-Code/pull/9549)) +* **Better IPC Error Logging**: Error logs now display detailed structured data instead of unhelpful `[object Object]` messages, making debugging extension issues easier ([#9727](https://github.com/RooCodeInc/Roo-Code/pull/9727)) +* **Stealth Model Privacy**: Models tagged with "stealth" in the Roo API now receive vendor confidentiality instructions in their system prompt, enabling white-label or anonymous model experiences ([#9742](https://github.com/RooCodeInc/Roo-Code/pull/9742)) + +## Provider Updates + +* **Model Default Temperatures**: Models can now specify their own default temperature settings. Temperature precedence is: user's custom setting → model's default → system default ([#9734](https://github.com/RooCodeInc/Roo-Code/pull/9734)) +* **Roo Provider Native Tools**: Models with the `default-native-tools` tag automatically use native tool calling by default ([#9735](https://github.com/RooCodeInc/Roo-Code/pull/9735)) +* **LiteLLM Native Tool Support**: All LiteLLM models now assume native tool support by default, improving tool compatibility ([#9736](https://github.com/RooCodeInc/Roo-Code/pull/9736)) +* **App Version Tracking**: The Roo provider now sends app version information with API requests for improved request tracking ([#9730](https://github.com/RooCodeInc/Roo-Code/pull/9730)) +* **z.ai GLM Model Fix**: Removed misleading reasoning toggle UI for GLM-4.5 and GLM-4.6 models on z.ai provider, as these models don't support think/reasoning data for coding agents ([#9752](https://github.com/RooCodeInc/Roo-Code/pull/9752)) +* **Roo Provider Tool Compatibility**: Improved tool conversion for OpenAI-compatible API endpoints, ensuring tools work correctly with OpenAI-style request formats ([#9769](https://github.com/RooCodeInc/Roo-Code/pull/9769)) +* **MiniMax M2 Free Tier Default**: MiniMax M2 model now defaults to the free tier when using OpenRouter ([#9778](https://github.com/RooCodeInc/Roo-Code/pull/9778)) diff --git a/apps/docs/docs/update-notes/v3.36.0.mdx b/apps/docs/docs/update-notes/v3.36.0.mdx new file mode 100644 index 00000000000..e2596b574f5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.0.mdx @@ -0,0 +1,47 @@ +--- +description: Roo Code 3.36.0 introduces non-destructive context management for reliable checkpoint restoration, plus Roo provider enhancements and provider improvements. +keywords: + - roo code 3.36.0 + - context condensing + - checkpoint restoration + - rewind + - roo provider + - reasoning details +image: /img/v3.36.0/v3.36.0.png +--- + +# Roo Code 3.36.0 Release Notes (2025-12-04) + +This release introduces non-destructive context management for reliable checkpoint restoration, adds reasoning visibility for supported models, and improves provider reliability across Roo, Minimax, Cerebras, and Vercel AI Gateway. + +Roo Code v3.36.0 Release + +## Non-Destructive Context Management + +Context condensing and sliding window truncation now preserve your original messages internally rather than deleting them ([#9665](https://github.com/RooCodeInc/Roo-Code/pull/9665)). When you rewind to an earlier checkpoint, the full conversation history is restored automatically. This applies to both automatic condensing and sliding window operations. + +## Provider Updates + +* **Reasoning Details Support**: The Roo provider now displays reasoning details from models with extended thinking capabilities, giving you visibility into how the model approaches your requests ([#9796](https://github.com/RooCodeInc/Roo-Code/pull/9796)) + +* **Native Tools Default**: All Roo provider models now default to native tool protocol for improved reliability and performance ([#9811](https://github.com/RooCodeInc/Roo-Code/pull/9811)) + +* **Minimax search_and_replace**: The Minimax M2 model now uses search_and_replace for more reliable file editing operations ([#9780](https://github.com/RooCodeInc/Roo-Code/pull/9780)) + +* **Cerebras Token Optimization**: Conservative 8K token limits prevent premature rate limiting (thanks sebastiand-cerebras!), plus deprecated model cleanup ([#9804](https://github.com/RooCodeInc/Roo-Code/pull/9804)) + +* **Vercel AI Gateway**: More reliable model fetching for models without complete pricing information ([#9791](https://github.com/RooCodeInc/Roo-Code/pull/9791)) + +## Bug Fixes + +* **Write Tool Validation**: Resolved false positives where `write_to_file` incorrectly rejected complete markdown files containing inline code comments like `# NEW:` or `// Step 1:` (thanks Michaelzag!) ([#9787](https://github.com/RooCodeInc/Roo-Code/pull/9787)) + +* **Download Count Display**: Fixed homepage download count to display with proper precision for million-scale numbers ([#9807](https://github.com/RooCodeInc/Roo-Code/pull/9807)) + +## Misc Improvements + +* **Tool Consolidation**: Removed the deprecated `insert_content` tool; use `apply_diff` or `write_to_file` for file modifications ([#9751](https://github.com/RooCodeInc/Roo-Code/pull/9751)) + +* **Experimental Settings**: Temporarily disabled the parallel tool calls experiment while improvements are in progress ([#9798](https://github.com/RooCodeInc/Roo-Code/pull/9798)) + +* **Infrastructure**: Updated Next.js dependencies for web applications ([#9799](https://github.com/RooCodeInc/Roo-Code/pull/9799)) diff --git a/apps/docs/docs/update-notes/v3.36.1.mdx b/apps/docs/docs/update-notes/v3.36.1.mdx new file mode 100644 index 00000000000..056d7253b67 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.1.mdx @@ -0,0 +1,44 @@ +--- +description: Message management improvements, GPT-5.1 Codex Max support, symlink support for slash commands, and stability fixes. +keywords: + - roo code 3.36.1 + - gpt-5.1 codex max + - slash commands symlinks + - message management + - bug fixes +image: /img/v3.36.1/v3.36.1.png +--- + +# Roo Code 3.36.1 Release Notes (2025-12-04) + +This release adds GPT-5.1 Codex Max support, enables symlinks for slash commands, improves message management with better checkpoint restore, and fixes several stability issues. + +Roo Code v3.36.1 Release + +## GPT-5.1 Codex Max Support + +Roo Code now supports GPT-5.1 Codex Max ([#9848](https://github.com/RooCodeInc/Roo-Code/pull/9848)), OpenAI's most intelligent coding model optimized for long-horizon, agentic coding tasks. This release also adds model defaults for gpt-5.1, gpt-5, and gpt-5-mini variants with optimized configurations. + +> **📚 Documentation**: See [OpenAI Provider](/providers/openai) for configuration details. + +## QOL Improvements + +* **Symlink support for slash commands**: Share and organize commands across projects using symlinks for individual files or directories, with command names derived from symlink names for easy aliasing ([#9838](https://github.com/RooCodeInc/Roo-Code/pull/9838)) +* **Smoother chat scroll**: Chat view maintains scroll position more reliably during streaming, eliminating disruptive jumps ([#8999](https://github.com/RooCodeInc/Roo-Code/pull/8999)) +* **Improved error messages**: Clearer, more actionable error messages with proper attribution and direct links to documentation ([#9777](https://github.com/RooCodeInc/Roo-Code/pull/9777)) + +## Bug Fixes + +* **Extension freeze prevention**: The extension no longer freezes when a model attempts to call a non-existent tool (thanks daniel-lxs!) ([#9834](https://github.com/RooCodeInc/Roo-Code/pull/9834)) +* **Checkpoint restore reliability**: MessageManager layer ensures consistent message history handling across all rewind operations ([#9842](https://github.com/RooCodeInc/Roo-Code/pull/9842)) +* **Context truncation fix**: Prevent cascading truncation loops by only truncating visible messages ([#9844](https://github.com/RooCodeInc/Roo-Code/pull/9844)) +* **Reasoning models**: Models that require reasoning now always receive valid reasoning effort values ([#9836](https://github.com/RooCodeInc/Roo-Code/pull/9836)) +* **Terminal input handling**: Inline terminal no longer hangs when commands require user input ([#9827](https://github.com/RooCodeInc/Roo-Code/pull/9827)) +* **Large file safety**: Safer large file reads with proper token budget accounting for model output ([#9843](https://github.com/RooCodeInc/Roo-Code/pull/9843)) +* **Follow-up button styling**: Fixed overly rounded corners on follow-up question suggestions ([#9829](https://github.com/RooCodeInc/Roo-Code/pull/9829)) + +## Misc Improvements + +* **Evals UI enhancements**: Added filtering by timeframe/model/provider, bulk delete actions, tool column consolidation, and run notes ([#9837](https://github.com/RooCodeInc/Roo-Code/pull/9837)) +* **Multi-model evals launch**: Launch identical test runs across multiple models with automatic staggering ([#9845](https://github.com/RooCodeInc/Roo-Code/pull/9845)) +* **New pricing page**: Updated website pricing page with clearer feature explanations ([#9821](https://github.com/RooCodeInc/Roo-Code/pull/9821)) diff --git a/apps/docs/docs/update-notes/v3.36.10.mdx b/apps/docs/docs/update-notes/v3.36.10.mdx new file mode 100644 index 00000000000..57715481c19 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.10.mdx @@ -0,0 +1,30 @@ +--- +description: This release adds a new Gemini 3 Flash preview model across more providers, improves DeepSeek tool calling, and fixes token count display issues. +keywords: + - roo code 3.36.10 + - new features + - bug fixes +image: /img/v3.36.10/v3.36.10.png +--- + +# Roo Code 3.36.10 Release Notes (2025-12-17) + +This release adds the Gemini 3 Flash preview model to more providers, improves DeepSeek reasoner “thinking” behavior during tool use, and fixes a context token-count display issue. + +Roo Code v3.36.10 Release + +## Gemini 3 Flash preview model + +The `gemini-3-flash-preview` model is now available in the Roo Code Cloud provider, Google Gemini, GCP Vertex AI, Requesty, and OpenRouter providers. It’s the latest model from Google, released this morning (thanks contributors!) ([#10151](https://github.com/RooCodeInc/Roo-Code/pull/10151)). + +## DeepSeek reasoner: interleaved thinking during tool use + +The DeepSeek provider’s `deepseek-reasoner` model now supports “interleaved thinking” and native tool calling. In our internal evals, tool calling succeeded 100% of the time, and the extended-run score improved to 93.4% (thanks zbww_!) ([#9969](https://github.com/RooCodeInc/Roo-Code/pull/9969), [#10141](https://github.com/RooCodeInc/Roo-Code/pull/10141)). + +## Bug Fixes + +* **Context truncation token display**: Fixes an issue where the context truncation UI could show incorrect before/after token totals, especially in tool-heavy conversations ([#9961](https://github.com/RooCodeInc/Roo-Code/pull/9961)) + +## Misc Improvements + +* **Framework updates**: Updates Next.js to `~15.2.8` for improved compatibility with upstream fixes ([#10140](https://github.com/RooCodeInc/Roo-Code/pull/10140)) diff --git a/apps/docs/docs/update-notes/v3.36.11.mdx b/apps/docs/docs/update-notes/v3.36.11.mdx new file mode 100644 index 00000000000..12cbe0a594c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.11.mdx @@ -0,0 +1,29 @@ +--- +description: Native tool calling now enabled by default for Claude Code, Z.ai, and OpenAI Compatible providers, plus several Bedrock and MCP compatibility fixes. +keywords: + - roo code 3.36.11 + - native tool calling + - claude code provider + - z.ai + - openai compatible + - bedrock fixes +image: /img/v3.36.11/v3.36.11.png +--- + +# Roo Code 3.36.11 Release Notes (2025-12-17) + +This release brings native tool calling to more providers by default and fixes several compatibility issues with Bedrock and MCP tools. + +Roo Code v3.36.11 Release + +## Native Tool Calling Enhancements + +Native tool calling is now enabled by default for three additional providers: Claude Code, Z.ai models (GLM-4.5 series, GLM-4.6, etc.), and OpenAI Compatible providers. This provides more direct and efficient communication with these models, improving reliability and performance when using tools ([#10077](https://github.com/RooCodeInc/Roo-Code/pull/10077), [#10158](https://github.com/RooCodeInc/Roo-Code/pull/10158), [#10159](https://github.com/RooCodeInc/Roo-Code/pull/10159)). + +## Bug Fixes + +* **MCP Tool Schema Normalization**: Fixes an issue where MCP tool schemas could fail validation when used with Amazon Bedrock or OpenAI in strict mode by normalizing JSON Schema formats ([#10148](https://github.com/RooCodeInc/Roo-Code/pull/10148)) +* **MCP Tool Names with Bedrock**: Fixes validation errors when using MCP servers with dots or colons in their names (like `awslabs.aws-documentation-mcp-server`) with Amazon Bedrock ([#10152](https://github.com/RooCodeInc/Roo-Code/pull/10152)) +* **Bedrock Task Resumption**: Fixes an error when resuming tasks with Amazon Bedrock when native tools are disabled, where users would encounter `The toolConfig field must be defined` errors ([#10155](https://github.com/RooCodeInc/Roo-Code/pull/10155)) +* **Roo Code Cloud Model Refresh**: Fixes an issue where authentication-required models (like `google/gemini-3-flash`) wouldn't appear immediately after logging into Roo Code Cloud ([#10156](https://github.com/RooCodeInc/Roo-Code/pull/10156)) +* **AWS GovCloud and China Region Support**: Fixes an issue where users in AWS GovCloud and China regions couldn't use custom ARNs with the Bedrock provider (thanks wisestmumbler!) ([#10157](https://github.com/RooCodeInc/Roo-Code/pull/10157)) \ No newline at end of file diff --git a/apps/docs/docs/update-notes/v3.36.12.mdx b/apps/docs/docs/update-notes/v3.36.12.mdx new file mode 100644 index 00000000000..894446d00e9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.12.mdx @@ -0,0 +1,27 @@ +--- +description: Improved tool preferences for Gemini and OpenAI models, Bedrock embedder fix, and better error tracking. +keywords: + - roo code 3.36.12 + - gemini tool preferences + - openai tool preferences + - bedrock embedder +image: /img/v3.36.12/v3.36.12.png +--- + +# Roo Code 3.36.12 Release Notes (2025-12-18) + +This release improves default tool preferences for Gemini and OpenAI models, fixes Bedrock embedder identification, and enhances error tracking. + +Roo Code v3.36.12 Release + +## QOL Improvements + +* **Smarter Tool Defaults for Gemini and OpenAI**: Gemini and OpenAI models now use better default tools for file editing, improving reliability out of the box. ([#10170](https://github.com/RooCodeInc/Roo-Code/pull/10170)) + +## Bug Fixes + +* **Bedrock Embedder CloudTrail Fix**: AWS Bedrock users now see Roo Code identified in CloudTrail logs when using Codebase Indexing. (thanks jackrein!) ([#10166](https://github.com/RooCodeInc/Roo-Code/pull/10166)) + +## Misc Improvements + +* **Better Error Grouping**: Improved error tracking for faster issue resolution. ([#10163](https://github.com/RooCodeInc/Roo-Code/pull/10163)) diff --git a/apps/docs/docs/update-notes/v3.36.13.mdx b/apps/docs/docs/update-notes/v3.36.13.mdx new file mode 100644 index 00000000000..cc625d51e82 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.13.mdx @@ -0,0 +1,34 @@ +--- +description: Native tool protocol becomes the new default for compatible models, plus new edit_file tool and VS Code LM native tool support. +keywords: + - roo code 3.36.13 + - native tool protocol + - edit_file tool + - vs code language model + - litellm +image: /img/v3.36.13/v3.36.13.png +--- + +# Roo Code 3.36.13 Release Notes (2025-12-18) + +This release switches to native tool protocol by default, improves file editing for Gemini models, and adds native tool support for VS Code Language Model providers. + +Roo Code v3.36.13 Release + +## Native Tool Protocol Default + +Models that support native tool calling now default to using native protocol instead of XML. The XML protocol is still available in provider settings ([#10186](https://github.com/RooCodeInc/Roo-Code/pull/10186)). + +## QOL Improvements + +* **Improved File Editing with Gemini Models**: New edit_file tool makes Gemini models more effective at editing files ([#9983](https://github.com/RooCodeInc/Roo-Code/pull/9983)) +* **VS Code LM Native Tools**: Native tool calling now works with VS Code's built-in Copilot models ([#10191](https://github.com/RooCodeInc/Roo-Code/pull/10191)) + +## Bug Fixes + +* **LiteLLM Tool Protocol Dropdown**: The Native/XML protocol selector now appears correctly for LiteLLM models ([#10187](https://github.com/RooCodeInc/Roo-Code/pull/10187)) +* **Task Resumption**: Tasks no longer break when resuming after changing the Native Tool Calling setting ([#10192](https://github.com/RooCodeInc/Roo-Code/pull/10192)) + +## Misc Improvements + +* **Error Monitoring**: Improved tracking of consecutive mistake errors ([#10193](https://github.com/RooCodeInc/Roo-Code/pull/10193)) diff --git a/apps/docs/docs/update-notes/v3.36.14.mdx b/apps/docs/docs/update-notes/v3.36.14.mdx new file mode 100644 index 00000000000..768b9953a76 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.14.mdx @@ -0,0 +1,28 @@ +--- +description: Native tool calling for Claude models on Vertex AI, improved error handling with grace retry, and MCP compatibility fixes for OpenAI providers. +keywords: + - roo code 3.36.14 + - vertex ai + - native tool calling + - error handling + - mcp compatibility +image: /img/v3.36.14/v3.36.14.png +--- + +# Roo Code v3.36.14 Release Notes (2025-12-18) + +This release adds native tool calling for Claude models on Vertex AI, improves error handling with a grace retry mechanism, and fixes MCP compatibility with OpenAI providers. + +Roo Code v3.36.14 Release + +## Provider Updates + +* **Native Tool Calling for Claude on Vertex AI**: All Claude models on Vertex AI now use native tool calling by default, matching the behavior of direct Anthropic API access ([#10197](https://github.com/RooCodeInc/Roo-Code/pull/10197)) + +## QOL Improvements + +* **Grace Retry for Tool Errors**: When models fail to use tools, Roo Code now silently retries before showing errors. Clearer "Model Response Incomplete" messages appear only after consecutive failures ([#10196](https://github.com/RooCodeInc/Roo-Code/pull/10196)) + +## Bug Fixes + +* **MCP Compatibility with OpenAI Providers**: Fixes an issue where MCP servers using `format: "uri"` in their tool schemas would fail with OpenAI providers ([#10198](https://github.com/RooCodeInc/Roo-Code/pull/10198)) diff --git a/apps/docs/docs/update-notes/v3.36.15.mdx b/apps/docs/docs/update-notes/v3.36.15.mdx new file mode 100644 index 00000000000..d4d54644cb2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.15.mdx @@ -0,0 +1,36 @@ +--- +description: Roo Code 3.36.15 adds a 1M context window option for Claude Sonnet 4.5 on Vertex AI, improves chat error troubleshooting, and expands native tool calling support. +keywords: + - roo code 3.36.15 + - vertex ai + - 1m context + - native tool calling + - error diagnostics + - bug fixes +image: /img/v3.36.15/v3.36.15.png +--- + +# Roo Code 3.36.15 Release Notes (2025-12-19) + +This release adds a 1M context window option for Claude Sonnet 4.5 on Vertex AI, improves chat error troubleshooting, and expands native tool calling support. + +Roo Code v3.36.15 Release + +## Vertex AI: 1M context window for Claude Sonnet 4.5 + +When you use **Claude Sonnet 4.5** on **Vertex AI**, you can now enable a **1M context window** option for supported models ([#10209](https://github.com/RooCodeInc/Roo-Code/pull/10209)). + +## Chat error troubleshooting improvements + +Chat error states now make it easier to understand what went wrong and to share the right details when filing a bug report: + +* **Clearer error visibility**: Error rows more consistently surface full error details (including status codes) via a more obvious **View details** affordance ([#10204](https://github.com/RooCodeInc/Roo-Code/pull/10204)) +* **Downloadable diagnostics**: You can generate a local diagnostics file from a chat error (including error metadata and the API conversation history) so you can review/redact and share it with an issue report ([#10188](https://github.com/RooCodeInc/Roo-Code/pull/10188)) + +## Bug Fixes + +* **Native tool calling support for LM Studio and Qwen-Code**: Fixes an issue where these providers were missing OpenAI-style native tool call support, which could make tool use unreliable compared to other providers ([#10208](https://github.com/RooCodeInc/Roo-Code/pull/10208)) +* **More reliable tool defaults for OpenAI Compatible providers**: Fixes cases where tool calling could be inconsistent unless you manually adjusted custom model info, by applying native tool defaults unless you’ve explicitly overridden them ([#10213](https://github.com/RooCodeInc/Roo-Code/pull/10213)) +* **Requesty native tool calls enabled**: Fixes native tool calling defaults for the Requesty provider (and aligns behavior for Unbound) so tool use is more consistent, especially when model metadata is cached ([#10211](https://github.com/RooCodeInc/Roo-Code/pull/10211)) +* **Strict JSON Schema compatibility**: Fixes an issue where some MCP tool schemas could fail strict validation due to missing `additionalProperties: false` on object schemas ([#10210](https://github.com/RooCodeInc/Roo-Code/pull/10210)) +* **Refresh models cache reliability**: Fixes an issue where **Refresh models** could fail to fully flush/refresh cached model lists for some providers, and improves correctness of initial model selection when starting a new task ([#9870](https://github.com/RooCodeInc/Roo-Code/pull/9870)) diff --git a/apps/docs/docs/update-notes/v3.36.16.mdx b/apps/docs/docs/update-notes/v3.36.16.mdx new file mode 100644 index 00000000000..45cebfc0a74 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.16.mdx @@ -0,0 +1,14 @@ +--- +description: Fixes a VS Code LM provider error that could break native tool calling. +keywords: + - roo code 3.36.16 + - bug fixes +--- + +# Roo Code 3.36.16 Release Notes (2025-12-19) + +This release fixes a VS Code LM provider issue that could fail with an HTTP 400 error when using native tool calling. + +## Bug Fixes + +* Fixes an issue where using the VS Code LM provider (GitHub Copilot) could fail with an HTTP 400 error when Roo attempted native tool calling, by normalizing tool input schemas to the format Copilot expects ([#10221](https://github.com/RooCodeInc/Roo-Code/pull/10221)) diff --git a/apps/docs/docs/update-notes/v3.36.2.mdx b/apps/docs/docs/update-notes/v3.36.2.mdx new file mode 100644 index 00000000000..cab1b7510f6 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.2.mdx @@ -0,0 +1,24 @@ +--- +description: Dynamic API settings for Roo models, optimized GPT-5 tool configuration, and Chutes provider fix. +keywords: + - roo code 3.36.2 + - dynamic settings + - gpt-5 apply_patch + - chutes provider +image: /img/v3.36.2/v3.36.2.png +--- + +# Roo Code 3.36.2 Release Notes (2025-12-05) + +This release adds dynamic API settings support for Roo models, optimizes GPT-5 model configurations, and fixes Chutes provider model fetching. + +Roo Code v3.36.2 Release + +## Provider Updates + +* **Dynamic model settings**: Roo models now receive configuration dynamically from the API, enabling faster iteration on model-specific settings without extension updates ([#9852](https://github.com/RooCodeInc/Roo-Code/pull/9852)) +* **Optimized GPT-5 tool configuration**: GPT-5.x, GPT-5.1.x, and GPT-4.1 models now use only the `apply_patch` tool for file editing, improving code editing performance ([#9853](https://github.com/RooCodeInc/Roo-Code/pull/9853)) + +## Bug Fixes + +* **Chutes provider fix**: Resolved model fetching errors for the Chutes provider by making schema validation more robust for optional fields ([#9854](https://github.com/RooCodeInc/Roo-Code/pull/9854)) diff --git a/apps/docs/docs/update-notes/v3.36.3.mdx b/apps/docs/docs/update-notes/v3.36.3.mdx new file mode 100644 index 00000000000..25d0f55083b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.3.mdx @@ -0,0 +1,67 @@ +--- +description: Browser screenshots, xhigh reasoning effort, native tools default for OpenRouter, provider updates, and fixes +keywords: + - roo code 3.36.3 + - browser screenshots + - openrouter native tools + - deepseek v3.2 +image: /img/v3.36.3/v3.36.3.png +--- + +# Roo Code 3.36.3 Release Notes (2025-12-10) + +This release adds browser screenshot saving, xhigh reasoning effort support, native tools default for OpenRouter, plus provider updates and bug fixes. + +Roo Code v3.36.3 Release + +## Browser Screenshot Saving + +The browser tool now supports saving screenshots to a specified file path with a new `screenshot` action, enabling you to capture visual state during browser automation tasks. ([#9963](https://github.com/RooCodeInc/Roo-Code/pull/9963)) + +## Extra-High Reasoning Effort + +Users of the gpt-5.1-codex-max model with the OpenAI provider can now select "Extra High" as a reasoning effort level, enabling maximum reasoning capability for complex tasks (thanks andrewginns!) ([#9900](https://github.com/RooCodeInc/Roo-Code/pull/9900)) + +## OpenRouter Native Tools Default + +OpenRouter models that support native tools now automatically use native tool calling by default, improving tool calling reliability without manual configuration. ([#9878](https://github.com/RooCodeInc/Roo-Code/pull/9878)) + +## QOL Improvements + +* **Unified Context-Management UX**: Real-time feedback for context operations with truncation notifications and condensation summaries ([#9795](https://github.com/RooCodeInc/Roo-Code/pull/9795)) +* **Better OpenAI Error Messages**: Enhanced error handler extracts detailed information from API errors for easier troubleshooting ([#9639](https://github.com/RooCodeInc/Roo-Code/pull/9639)) +* **Token Counting Optimization**: Removed separate API calls for token counting, improving performance ([#9884](https://github.com/RooCodeInc/Roo-Code/pull/9884)) +* **Tools Decoupled from System Prompt**: Tool-specific instructions are now self-contained in tool descriptions ([#9784](https://github.com/RooCodeInc/Roo-Code/pull/9784)) + +## Bug Fixes + +* **Tool Protocol Selector**: Always show tool protocol selector for OpenAI-compatible providers (thanks bozoweed!) ([#9966](https://github.com/RooCodeInc/Roo-Code/pull/9966)) +* **apply_diff Filtering**: Properly exclude apply_diff from native tools when diff is disabled (thanks denis-kudelin!) ([#9920](https://github.com/RooCodeInc/Roo-Code/pull/9920)) +* **API Timeout Handling**: Fixed disabled API timeout (set to 0) causing immediate request failures (thanks dcbartlett!) ([#9960](https://github.com/RooCodeInc/Roo-Code/pull/9960)) +* **Reasoning Effort Dropdown**: Respect explicit supportsReasoningEffort array values and fix disable handling ([#9970](https://github.com/RooCodeInc/Roo-Code/pull/9970), [#9930](https://github.com/RooCodeInc/Roo-Code/pull/9930)) +* **Actual Error Messages**: Display actual API error messages instead of generic text on retry ([#9954](https://github.com/RooCodeInc/Roo-Code/pull/9954)) +* **Stream Hanging Fix**: Process finish_reason to emit tool_call_end events for OpenRouter, Roo, and xAI providers ([#9927](https://github.com/RooCodeInc/Roo-Code/pull/9927), [#9929](https://github.com/RooCodeInc/Roo-Code/pull/9929)) +* **tool_result ID Validation**: Validate and fix tool_result IDs before API requests to prevent Anthropic rejections ([#9952](https://github.com/RooCodeInc/Roo-Code/pull/9952)) +* **Suppressed Internal Error**: Fixed 'ask promise was ignored' error leaking to LLM conversations ([#9914](https://github.com/RooCodeInc/Roo-Code/pull/9914)) +* **Provider Sanitization**: Fixed infinite loop when using removed/invalid API providers ([#9869](https://github.com/RooCodeInc/Roo-Code/pull/9869)) +* **Context Icons Theme**: Context-management icons now use foreground color to match VSCode themes ([#9912](https://github.com/RooCodeInc/Roo-Code/pull/9912)) +* **Eval Runs Deletion**: Fixed foreign key constraint preventing eval run deletions ([#9909](https://github.com/RooCodeInc/Roo-Code/pull/9909)) +* **OpenAI-Compatible Timeout Reliability**: Added timeout handling to OpenAI-compatible providers to prevent indefinite hangs (thanks dcbartlett!) ([#9898](https://github.com/RooCodeInc/Roo-Code/pull/9898)) + +## Provider Updates + +* **DeepSeek V3.2**: Updated to V3.2 with 50% price reduction, native tools enabled by default, and 8K max output ([#9962](https://github.com/RooCodeInc/Roo-Code/pull/9962)) +* **xAI Models Catalog**: Updated catalog with corrected context windows, image support for grok-3/grok-3-mini, and removed deprecated models ([#9872](https://github.com/RooCodeInc/Roo-Code/pull/9872)) +* **xAI Tool Preferences**: Configured xAI models to use search_replace for better file editing compatibility ([#9923](https://github.com/RooCodeInc/Roo-Code/pull/9923)) +* **DeepSeek V3.2 for Baseten**: Added DeepSeek V3.2 model support (thanks AlexKer!) ([#9861](https://github.com/RooCodeInc/Roo-Code/pull/9861)) +* **Baseten Model Tweaks**: Improved maxTokens limits and native tools support for stability ([#9866](https://github.com/RooCodeInc/Roo-Code/pull/9866)) +* **Bedrock Models**: Added Kimi, MiniMax, and Qwen model configurations (thanks jbearak!) ([#9905](https://github.com/RooCodeInc/Roo-Code/pull/9905)) + +## Misc Improvements + +* **Announcement UI Updates**: Improved announcement visuals with updated social icons and GitHub stars CTA ([#9945](https://github.com/RooCodeInc/Roo-Code/pull/9945)) +* **Improved Error Logging**: Better error context for parseToolCall exceptions and cloud job errors ([#9857](https://github.com/RooCodeInc/Roo-Code/pull/9857), [#9924](https://github.com/RooCodeInc/Roo-Code/pull/9924)) +* **search_replace Native Tool**: New tool for single-replacement file operations with precise targeting via unique text matching ([#9918](https://github.com/RooCodeInc/Roo-Code/pull/9918)) +* **Versioned Settings Support**: Internal infrastructure for API-side versioning of model settings with minimum plugin version gating ([#9934](https://github.com/RooCodeInc/Roo-Code/pull/9934)) +* **OpenRouter Telemetry**: Added API error telemetry for better diagnostics ([#9953](https://github.com/RooCodeInc/Roo-Code/pull/9953)) +* **Evals Streaming Stats**: Tool usage stats now stream in real-time with token usage throttling ([#9926](https://github.com/RooCodeInc/Roo-Code/pull/9926)) diff --git a/apps/docs/docs/update-notes/v3.36.4.mdx b/apps/docs/docs/update-notes/v3.36.4.mdx new file mode 100644 index 00000000000..75e6f46fda8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.4.mdx @@ -0,0 +1,25 @@ +--- +description: Adds error details modal with on-demand display and fixes for MCP tools, TODO list display, and telemetry. +keywords: + - roo code 3.36.4 + - error details modal + - mcp tools fix + - bug fixes +image: /img/v3.36.4/v3.36.4.png +--- + +# Roo Code 3.36.4 Release Notes (2025-12-10) + +This release adds an on-demand error details modal for improved debugging and fixes issues with MCP tool streaming, TODO list display order, and telemetry error filtering. + +Roo Code v3.36.4 Release + +## Error Details Modal + +Hover over error rows to reveal an info icon that opens a modal with full error details and a copy button ([#9985](https://github.com/RooCodeInc/Roo-Code/pull/9985)). + +## Bug Fixes + +* **MCP Tool Streaming**: Fixes an issue where MCP tools failed with "unknown tool" errors due to premature clearing of internal streaming data ([#9993](https://github.com/RooCodeInc/Roo-Code/pull/9993)) +* **TODO List Display Order**: The TODO list in the chat view now displays items in their correct execution order instead of being grouped by status ([#9991](https://github.com/RooCodeInc/Roo-Code/pull/9991)) +* **Telemetry Improvements**: Filters out 429 rate limit errors from API error telemetry for cleaner metrics and better error tracking ([#9987](https://github.com/RooCodeInc/Roo-Code/pull/9987)) diff --git a/apps/docs/docs/update-notes/v3.36.5.mdx b/apps/docs/docs/update-notes/v3.36.5.mdx new file mode 100644 index 00000000000..e845854e2a2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.5.mdx @@ -0,0 +1,49 @@ +--- +description: GPT-5.2 support, configurable Enter key behavior, Gemini stability fixes, and provider updates. +keywords: + - roo code 3.36.5 + - gpt-5.2 + - enter key behavior + - gemini fixes +image: /img/v3.36.5/v3.36.5.png +--- + +# Roo Code 3.36.5 Release Notes (2025-12-11) + +This release adds GPT-5.2 model support, a toggle to configure Enter key behavior in chat, and several bug fixes. + +Roo Code v3.36.5 Release + +## GPT-5.2 Model Support + +GPT-5.2 is now available and set as the default model for the OpenAI provider ([#10024](https://github.com/RooCodeInc/Roo-Code/pull/10024)): + +- 400K context window +- 128K max output tokens +- Configurable reasoning levels (none, low, medium, high, xhigh) +- 24-hour prompt cache retention + +## Enter Key Behavior Toggle + +New setting to configure how Enter works in chat input (thanks lmtr0!) ([#10002](https://github.com/RooCodeInc/Roo-Code/pull/10002)): + +- **Default**: Enter sends, Shift+Enter for newline +- **Alternative**: Enter for newline, Ctrl/Cmd+Enter sends + +Find it in **Settings > UI > Enter Key Behavior**. Useful for multiline prompts and CJK input methods where Enter confirms character composition. + +## Bug Fixes + +* **Gemini**: Fixed reasoning loops and empty response errors ([#10007](https://github.com/RooCodeInc/Roo-Code/pull/10007)) + +* **API errors**: Fixed "Expected toolResult blocks at messages" errors during parallel tool execution ([#10015](https://github.com/RooCodeInc/Roo-Code/pull/10015)) + +* **API errors**: Fixed `ToolResultIdMismatchError` when conversation history has orphaned tool_result blocks ([#10027](https://github.com/RooCodeInc/Roo-Code/pull/10027)) + +## Provider Updates + +* **Z.ai**: Added API endpoint options for users on API billing instead of Coding plan (thanks richtong!) ([#9894](https://github.com/RooCodeInc/Roo-Code/pull/9894)) + +## Misc Improvements + +* Removed deprecated `list_code_definition_names` tool ([#10005](https://github.com/RooCodeInc/Roo-Code/pull/10005)) diff --git a/apps/docs/docs/update-notes/v3.36.6.mdx b/apps/docs/docs/update-notes/v3.36.6.mdx new file mode 100644 index 00000000000..edf5e6608eb --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.6.mdx @@ -0,0 +1,30 @@ +--- +description: This release improves follow-up auto-approval behavior, expands tool customization options, and fixes provider settings and error reporting. +keywords: + - roo code 3.36.6 + - new features + - bug fixes +image: /img/v3.36.6/v3.36.6.png +--- + +# Roo Code 3.36.6 Release Notes (2025-12-12) + +This release improves follow-up auto-approval behavior, expands tool customization options, and fixes provider settings and error reporting. + +Roo Code v3.36.6 Release + +## QOL Improvements + +* **Clearer auto-approve timing in follow-up suggestions**: Makes the auto-approve countdown harder to miss ([#10048](https://github.com/RooCodeInc/Roo-Code/pull/10048)) + +## Bug Fixes + +* **Auto-approval stops when you start typing**: Fixes an issue where an auto-approve timer could still fire after you began writing a response ([#9937](https://github.com/RooCodeInc/Roo-Code/pull/9937)) +* **More actionable OpenRouter error messages**: Fixes an issue where failures could show only generic errors by surfacing upstream details when available ([#10039](https://github.com/RooCodeInc/Roo-Code/pull/10039)) +* **LiteLLM tool protocol dropdown always appears**: Restores the tool protocol dropdown in the provider’s Advanced settings even when LiteLLM model metadata isn’t available yet ([#10053](https://github.com/RooCodeInc/Roo-Code/pull/10053)) +* **MCP tool calls work with stricter providers**: Fixes failures caused by special characters in MCP server/tool names by sanitizing names and using an unambiguous `mcp--server--tool` ID format ([#10054](https://github.com/RooCodeInc/Roo-Code/pull/10054)) + +## Misc Improvements + +* **Tool aliases for model-specific tool naming**: Adds support for alternative tool names so different models can call the same tool using the naming they expect ([#9989](https://github.com/RooCodeInc/Roo-Code/pull/9989)) +* **Workspace task visibility controls for organizations**: Adds an org-level setting for how visible Roo Code Cloud “extension tasks” are across the workspace ([#10020](https://github.com/RooCodeInc/Roo-Code/pull/10020)) diff --git a/apps/docs/docs/update-notes/v3.36.7.mdx b/apps/docs/docs/update-notes/v3.36.7.mdx new file mode 100644 index 00000000000..a99f6fedcb5 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.7.mdx @@ -0,0 +1,39 @@ +--- +description: Roo Code 3.36.7 simplifies Auto-Approve settings, improves OpenRouter behavior for OpenAI models, and expands Amazon Bedrock options. +keywords: + - roo code 3.36.7 + - auto-approve + - openrouter + - bedrock + - bug fixes +--- + +# Roo Code 3.36.7 Release Notes (2025-12-15) + +This release simplifies Auto-Approve settings, improves OpenRouter behavior for OpenAI models, and expands Amazon Bedrock options. + +## OpenRouter tool support for OpenAI models + +When you use **OpenAI models via OpenRouter**, Roo now makes tool usage more predictable by explicitly enabling `apply_patch` and avoiding file-writing tools that aren’t supported in that context ([#10082](https://github.com/RooCodeInc/Roo-Code/pull/10082)). + +This reduces friction when tool availability differs between providers/models and helps keep edits moving without unexpected interruptions. + +## Simplified Auto-Approve settings + +Auto-Approve no longer has separate toggles for **Retry failed requests** and **Update todo list**—when Auto-Approve is enabled, retries and todo updates run automatically ([#10062](https://github.com/RooCodeInc/Roo-Code/pull/10062)). + +If you relied on those individual switches, this reduces configuration overhead and makes the Auto-Approve behavior easier to understand. + +## Bug Fixes + +* **More consistent tool validation for modes**: Improves reliability by consolidating mode tool-availability checks in one place ([#10089](https://github.com/RooCodeInc/Roo-Code/pull/10089)) + +## Provider Updates + +* **More detailed OpenRouter error reporting**: Captures more provider-specific error metadata so failures are easier to diagnose ([#10073](https://github.com/RooCodeInc/Roo-Code/pull/10073)) +* **AWS Bedrock service tier support**: Adds a Bedrock **Service tier** option (Standard/Flex/Priority) for supported models (thanks Smartsheet-JB-Brown!) ([#9955](https://github.com/RooCodeInc/Roo-Code/pull/9955)) +* **Amazon Nova 2 Lite in Bedrock**: Adds the Nova 2 Lite model to the Bedrock provider model list (thanks Smartsheet-JB-Brown!) ([#9830](https://github.com/RooCodeInc/Roo-Code/pull/9830)) + +## Misc Improvements + +* **Improved web-evals run logs**: Makes evaluation runs easier to inspect by improving run logs and formatting ([#10081](https://github.com/RooCodeInc/Roo-Code/pull/10081)) diff --git a/apps/docs/docs/update-notes/v3.36.9.mdx b/apps/docs/docs/update-notes/v3.36.9.mdx new file mode 100644 index 00000000000..2994b4c8488 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.9.mdx @@ -0,0 +1,58 @@ +--- +description: Roo Code 3.36.9 defaults more providers to native tools, improves reliability for tool calls and MCP schemas, and makes error details easier to debug. +keywords: + - roo code 3.36.9 + - native tools + - mcp + - bug fixes + - provider updates +image: /img/v3.36.9/v3.36.9.png +--- + +# Roo Code 3.36.9 Release Notes (2025-12-16) + +This release defaults more providers to native tools, improves tool-call reliability across providers, and makes errors easier to debug. + +Roo Code v3.36.9 Release + +## Native tools by default (more providers) + +Roo now defaults to the **Native** tool protocol for more providers—so tool use is more consistent out of the box on: + +* OpenAI +* Azure OpenAI +* OpenAI Compatible +* Anthropic +* Google Gemini +* Vertex AI +* xAI +* Mistral +* Groq +* Amazon Bedrock + +If you’re already using **OpenRouter**, you’ve been getting native tool calling by default. This release extends that same default behavior across the providers listed above. You can still switch back to XML tools in your profile’s advanced settings if you need to. ([#10059](https://github.com/RooCodeInc/Roo-Code/pull/10059), [#10021](https://github.com/RooCodeInc/Roo-Code/pull/10021)) + +## QOL Improvements + +* **More complete streaming failure details**: Improves the streaming failure UI so you can view/copy full error details directly in Roo instead of relying on the developer console ([#10131](https://github.com/RooCodeInc/Roo-Code/pull/10131)) +* **Richer error details dialog**: Adds extra context (extension version, provider/model, timestamp, etc.) to the error details dialog to make debugging and reporting issues faster ([#10050](https://github.com/RooCodeInc/Roo-Code/pull/10050)) +* **Fewer read_file failures on large files**: Improves large-file reading by incrementally reading up to a token budget and returning cleaner truncation when needed ([#10052](https://github.com/RooCodeInc/Roo-Code/pull/10052)) + +## Bug Fixes + +* **Cross-provider tool-call ID compatibility**: Fixes an issue where tool calls could fail when routing via OpenRouter to providers/models with stricter tool-call ID requirements ([#10102](https://github.com/RooCodeInc/Roo-Code/pull/10102)) +* **MCP nested schema compatibility**: Fixes an issue where MCP tools could fail against stricter schema validation by ensuring nested tool schemas set `additionalProperties: false` ([#10109](https://github.com/RooCodeInc/Roo-Code/pull/10109)) +* **More reliable delegation resume**: Fixes an issue where resuming a parent task after delegation could fail due to mismatched tool result IDs ([#10135](https://github.com/RooCodeInc/Roo-Code/pull/10135)) +* **Avoid deleting the wrong API messages**: Fixes a race condition where deleting a user message could remove earlier assistant API messages, especially during streaming/tool use ([#10113](https://github.com/RooCodeInc/Roo-Code/pull/10113)) +* **Deduplicate MCP tools across configs**: Fixes a “tool is already defined” error when the same MCP server exists in both global and project configs ([#10096](https://github.com/RooCodeInc/Roo-Code/pull/10096)) +* **Fix provider pricing page link**: Fixes a broken route so the provider pricing link takes you to the correct destination ([#10107](https://github.com/RooCodeInc/Roo-Code/pull/10107)) + +## Misc Improvements + +* **Control public task sharing**: Adds an organization-level setting to disable public task sharing links ([#10105](https://github.com/RooCodeInc/Roo-Code/pull/10105)) +* **Evals UI: clearer tool grouping + duration fixes**: Improves the evals UI by grouping related tools and fixing cases where run duration could be missing or incorrect ([#10133](https://github.com/RooCodeInc/Roo-Code/pull/10133)) + +## Provider Updates + +* **Bedrock custom ARNs are less restrictive**: Removes overly strict ARN validation that could block valid AWS Bedrock custom ARNs, while keeping a non-blocking region mismatch warning (thanks wisestmumbler!) ([#10110](https://github.com/RooCodeInc/Roo-Code/pull/10110)) +* **Cleaner Bedrock service tier UI**: Removes extra description text under the Bedrock service tier selector to make the UI easier to scan ([#10118](https://github.com/RooCodeInc/Roo-Code/pull/10118)) diff --git a/apps/docs/docs/update-notes/v3.36.mdx b/apps/docs/docs/update-notes/v3.36.mdx new file mode 100644 index 00000000000..a016e114061 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.36.mdx @@ -0,0 +1,204 @@ +--- +description: Roo Code 3.36 introduces non-destructive context management, new debugging and UI controls, and a steady stream of reliability fixes and provider improvements. +keywords: + - roo code 3.36 + - release notes + - new features + - bug fixes + - provider updates +image: /img/v3.36.0/v3.36.0.png +--- + +# Roo Code 3.36 Release Notes (Combined) + +Roo Code 3.36 introduces non-destructive context management, new debugging and UI controls, and a steady stream of reliability fixes and provider improvements. + +Roo Code v3.36 Release + +## Non-Destructive Context Management + +Context condensing and sliding window truncation now preserve your original messages internally rather than deleting them ([#9665](https://github.com/RooCodeInc/Roo-Code/pull/9665)). When you rewind to an earlier checkpoint, the full conversation history is restored automatically. + +## GPT-5.1 Codex Max Support + +Roo Code supports GPT-5.1 Codex Max, OpenAI’s long-horizon coding model, including model defaults for gpt-5.1 / gpt-5 / gpt-5-mini variants ([#9848](https://github.com/RooCodeInc/Roo-Code/pull/9848)). + +## Browser Screenshot Saving + +The browser tool can now save screenshots to a specified file path with a new `screenshot` action, so you can capture visual state during browser automation tasks ([#9963](https://github.com/RooCodeInc/Roo-Code/pull/9963)). + +## Extra-High Reasoning Effort + +If you use gpt-5.1-codex-max with the OpenAI provider, you can now select an “Extra High” reasoning effort level for maximum reasoning depth on complex tasks ([#9900](https://github.com/RooCodeInc/Roo-Code/pull/9900)). + +## OpenRouter Native Tools Default + +OpenRouter models that support native tools now use native tool calling by default, improving tool calling reliability without manual configuration ([#9878](https://github.com/RooCodeInc/Roo-Code/pull/9878)). + +## Error Details Modal + +Hover over error rows to reveal an info icon that opens a modal with full error details and a copy button ([#9985](https://github.com/RooCodeInc/Roo-Code/pull/9985)). + +## GPT-5.2 Model Support + +GPT-5.2 is available in the OpenAI provider and set as the default model ([#10024](https://github.com/RooCodeInc/Roo-Code/pull/10024)). + +## Enter Key Behavior Toggle + +You can now configure how Enter behaves in the chat input so it better fits multiline prompts and different input methods ([#10002](https://github.com/RooCodeInc/Roo-Code/pull/10002)). + +## Gemini 3 Flash preview model + +The `gemini-3-flash-preview` model is now available in the Roo Code Cloud provider, Google Gemini, GCP Vertex AI, Requesty, and OpenRouter providers. It’s the latest model from Google, released this morning (thanks contributors!) ([#10151](https://github.com/RooCodeInc/Roo-Code/pull/10151)). + +## DeepSeek reasoner: interleaved thinking during tool use + +The DeepSeek provider's `deepseek-reasoner` model now supports "interleaved thinking" and native tool calling. In our internal evals, tool calling succeeded 100% of the time, and the extended-run score improved to 93.4% (thanks zbww_!) ([#9969](https://github.com/RooCodeInc/Roo-Code/pull/9969), [#10141](https://github.com/RooCodeInc/Roo-Code/pull/10141)). + +## Native Tool Protocol Default + +Models that support native tool calling now default to using native protocol instead of XML. The XML protocol is still available in provider settings ([#10186](https://github.com/RooCodeInc/Roo-Code/pull/10186)). + +## Vertex AI: 1M context window for Claude Sonnet 4.5 + +When you use **Claude Sonnet 4.5** on **Vertex AI**, you can enable a **1M context window** option for supported models ([#10209](https://github.com/RooCodeInc/Roo-Code/pull/10209)). + +## Chat error troubleshooting improvements + +Chat error states now make it easier to understand what went wrong and to share the right details when filing a bug report: + +* **Clearer error visibility**: Error rows more consistently surface full error details (including status codes) via a more obvious **View details** affordance ([#10204](https://github.com/RooCodeInc/Roo-Code/pull/10204)) +* **Downloadable diagnostics**: You can generate a local diagnostics file from a chat error (including error metadata and the API conversation history) so you can review/redact and share it with an issue report ([#10188](https://github.com/RooCodeInc/Roo-Code/pull/10188)) + +## QOL Improvements + +* **Symlink support for slash commands**: Share and organize commands across projects using symlinks for individual files or directories, with command names derived from symlink names ([#9838](https://github.com/RooCodeInc/Roo-Code/pull/9838)) +* **Smoother chat scroll**: Chat view maintains scroll position more reliably during streaming ([#8999](https://github.com/RooCodeInc/Roo-Code/pull/8999)) +* **Clearer error messages**: More actionable errors with direct links to documentation ([#9777](https://github.com/RooCodeInc/Roo-Code/pull/9777)) +* **Enter key behavior toggle**: Configure whether Enter sends or inserts a newline in chat input ([#10002](https://github.com/RooCodeInc/Roo-Code/pull/10002)) +* **Unified context-management UX**: Real-time feedback for truncation notifications and condensation summaries ([#9795](https://github.com/RooCodeInc/Roo-Code/pull/9795)) +* **Better OpenAI error messages**: Extracts more detail from API errors for easier troubleshooting ([#9639](https://github.com/RooCodeInc/Roo-Code/pull/9639)) +* **Token counting optimization**: Removes separate API calls for token counting to improve performance ([#9884](https://github.com/RooCodeInc/Roo-Code/pull/9884)) +* **Tool instructions decoupled from system prompts**: Tool-specific guidance is self-contained in tool descriptions ([#9784](https://github.com/RooCodeInc/Roo-Code/pull/9784)) +* **Clearer auto-approve timing in follow-up suggestions**: Makes the auto-approve countdown harder to miss ([#10048](https://github.com/RooCodeInc/Roo-Code/pull/10048)) +* **Simplified Auto-Approve settings**: Removes separate toggles for retry and todo updates, reducing configuration overhead ([#10062](https://github.com/RooCodeInc/Roo-Code/pull/10062)) +* **Richer error details dialog**: Adds extra context (extension version, provider/model, timestamp, etc.) to the error details dialog to make debugging and reporting issues faster ([#10050](https://github.com/RooCodeInc/Roo-Code/pull/10050)) +* **Fewer read_file failures on large files**: Improves large-file reading by incrementally reading up to a token budget and returning cleaner truncation when needed ([#10052](https://github.com/RooCodeInc/Roo-Code/pull/10052)) +* **Improved File Editing with Gemini Models**: New edit_file tool makes Gemini models more effective at editing files ([#9983](https://github.com/RooCodeInc/Roo-Code/pull/9983)) +* **VS Code LM Native Tools**: Native tool calling now works with VS Code's built-in Copilot models ([#10191](https://github.com/RooCodeInc/Roo-Code/pull/10191)) +* **Smarter Tool Defaults for Gemini and OpenAI**: Gemini and OpenAI models now use better default tools for file editing, improving reliability out of the box. ([#10170](https://github.com/RooCodeInc/Roo-Code/pull/10170)) +* **Grace Retry for Tool Errors**: When models fail to use tools, Roo Code now silently retries before showing errors. Clearer "Model Response Incomplete" messages appear only after consecutive failures ([#10196](https://github.com/RooCodeInc/Roo-Code/pull/10196)) + +## Bug Fixes + +* **Write tool validation**: Avoids false positives where `write_to_file` rejected complete markdown files containing inline code comments like `# NEW:` or `// Step 1:` ([#9787](https://github.com/RooCodeInc/Roo-Code/pull/9787)) +* **Context truncation token display**: Fixes an issue where the context truncation UI could show incorrect before/after token totals, especially in tool-heavy conversations ([#9961](https://github.com/RooCodeInc/Roo-Code/pull/9961)) +* **Download count display**: Fixes homepage download count precision for million-scale numbers ([#9807](https://github.com/RooCodeInc/Roo-Code/pull/9807)) +* **Extension freeze prevention**: Avoids freezes when a model attempts to call a non-existent tool ([#9834](https://github.com/RooCodeInc/Roo-Code/pull/9834)) +* **Checkpoint restore reliability**: Message history handling is consistent across rewind operations ([#9842](https://github.com/RooCodeInc/Roo-Code/pull/9842)) +* **Context truncation fix**: Prevents cascading truncation loops by truncating only visible messages ([#9844](https://github.com/RooCodeInc/Roo-Code/pull/9844)) +* **Reasoning models**: Models that require reasoning always receive valid reasoning-effort values ([#9836](https://github.com/RooCodeInc/Roo-Code/pull/9836)) +* **Terminal input handling**: Inline terminal no longer hangs when commands require user input ([#9827](https://github.com/RooCodeInc/Roo-Code/pull/9827)) +* **Large file safety**: Large file reads handle token budgets more safely ([#9843](https://github.com/RooCodeInc/Roo-Code/pull/9843)) +* **Follow-up button styling**: Fixes overly rounded corners on follow-up suggestions ([#9829](https://github.com/RooCodeInc/Roo-Code/pull/9829)) +* **Chutes provider fix**: Resolves model fetching errors by making schema validation more robust for optional fields ([#9854](https://github.com/RooCodeInc/Roo-Code/pull/9854)) +* **Tool protocol selector**: Always shows the tool protocol selector for OpenAI-compatible providers ([#9966](https://github.com/RooCodeInc/Roo-Code/pull/9966)) +* **apply_diff filtering**: Properly excludes apply_diff from native tools when diff is disabled ([#9920](https://github.com/RooCodeInc/Roo-Code/pull/9920)) +* **API timeout handling**: Fixes a disabled timeout (set to 0) causing immediate request failures ([#9960](https://github.com/RooCodeInc/Roo-Code/pull/9960)) +* **Reasoning effort dropdown**: Respects explicit supportsReasoningEffort values and fixes disable handling ([#9970](https://github.com/RooCodeInc/Roo-Code/pull/9970), [#9930](https://github.com/RooCodeInc/Roo-Code/pull/9930)) +* **Actual error messages on retry**: Displays the provider’s error details instead of generic text ([#9954](https://github.com/RooCodeInc/Roo-Code/pull/9954)) +* **Stream hanging fix**: Ensures finish_reason triggers tool_call_end events for multiple providers ([#9927](https://github.com/RooCodeInc/Roo-Code/pull/9927), [#9929](https://github.com/RooCodeInc/Roo-Code/pull/9929)) +* **tool_result ID validation**: Validates and fixes tool_result IDs before requests to prevent provider rejections ([#9952](https://github.com/RooCodeInc/Roo-Code/pull/9952)) +* **Suppressed internal error**: Fixes an internal “ask promise was ignored” error leaking to conversations ([#9914](https://github.com/RooCodeInc/Roo-Code/pull/9914)) +* **Provider sanitization**: Fixes an infinite loop when using removed/invalid API providers ([#9869](https://github.com/RooCodeInc/Roo-Code/pull/9869)) +* **Context icons theme**: Context-management icons now use foreground color to match VS Code themes ([#9912](https://github.com/RooCodeInc/Roo-Code/pull/9912)) +* **Eval runs deletion**: Fixes a foreign key constraint preventing eval run deletions ([#9909](https://github.com/RooCodeInc/Roo-Code/pull/9909)) +* **OpenAI-compatible timeout reliability**: Adds timeout handling to prevent indefinite hangs ([#9898](https://github.com/RooCodeInc/Roo-Code/pull/9898)) +* **MCP tool streaming**: Fixes MCP tools failing with “unknown tool” errors due to premature clearing of internal streaming data ([#9993](https://github.com/RooCodeInc/Roo-Code/pull/9993)) +* **TODO list display order**: TODO items display in execution order instead of being grouped by status ([#9991](https://github.com/RooCodeInc/Roo-Code/pull/9991)) +* **Telemetry improvements**: Filters out 429 rate limit errors from API error telemetry for cleaner metrics ([#9987](https://github.com/RooCodeInc/Roo-Code/pull/9987)) +* **Gemini stability**: Fixes reasoning loops and empty response errors ([#10007](https://github.com/RooCodeInc/Roo-Code/pull/10007)) +* **Parallel tool execution**: Fixes “Expected toolResult blocks at messages” errors during parallel tool use ([#10015](https://github.com/RooCodeInc/Roo-Code/pull/10015)) +* **tool_result ID mismatch**: Fixes ToolResultIdMismatchError when history has orphaned tool_result blocks ([#10027](https://github.com/RooCodeInc/Roo-Code/pull/10027)) +* **Parallel tool calls fix**: Preserves tool_use blocks in summaries during context condensation to avoid API errors with parallel tool calling ([#9714](https://github.com/RooCodeInc/Roo-Code/pull/9714)) +* **Navigation button wrapping**: Prevents navigation buttons from wrapping on smaller screens ([#9721](https://github.com/RooCodeInc/Roo-Code/pull/9721)) +* **Task delegation tool flush**: Ensures pending tool results are flushed before delegating tasks to avoid provider 400 errors ([#9726](https://github.com/RooCodeInc/Roo-Code/pull/9726)) +* **Malformed tool call handling**: Prevents the extension from hanging indefinitely on malformed tool calls by validating and reporting missing parameters ([#9758](https://github.com/RooCodeInc/Roo-Code/pull/9758)) +* **Auto-approval stops when you start typing**: Fixes an issue where an auto-approve timer could still fire after you began writing a response ([#9937](https://github.com/RooCodeInc/Roo-Code/pull/9937)) +* **More actionable OpenRouter error messages**: Surfaces upstream error details when available ([#10039](https://github.com/RooCodeInc/Roo-Code/pull/10039)) +* **LiteLLM tool protocol dropdown always appears**: Restores the tool protocol dropdown in Advanced settings even when model metadata isn’t available yet ([#10053](https://github.com/RooCodeInc/Roo-Code/pull/10053)) +* **MCP tool calls work with stricter providers**: Avoids failures caused by special characters in MCP server/tool names by sanitizing names and using an unambiguous `mcp--server--tool` ID format ([#10054](https://github.com/RooCodeInc/Roo-Code/pull/10054)) +* **More consistent tool validation for modes**: Improves reliability by consolidating mode tool-availability checks in one place ([#10089](https://github.com/RooCodeInc/Roo-Code/pull/10089)) +* **Cross-provider tool-call ID compatibility**: Fixes an issue where tool calls could fail when routing via OpenRouter to providers/models with stricter tool-call ID requirements ([#10102](https://github.com/RooCodeInc/Roo-Code/pull/10102)) +* **MCP nested schema compatibility**: Fixes an issue where MCP tools could fail against stricter schema validation by ensuring nested tool schemas set `additionalProperties: false` ([#10109](https://github.com/RooCodeInc/Roo-Code/pull/10109)) +* **More reliable delegation resume**: Fixes an issue where resuming a parent task after delegation could fail due to mismatched tool result IDs ([#10135](https://github.com/RooCodeInc/Roo-Code/pull/10135)) +* **VS Code LM tool schema compatibility**: Fixes an issue where using the VS Code LM provider (GitHub Copilot) could fail with an HTTP 400 error when Roo attempted native tool calling, by normalizing tool input schemas to the format Copilot expects ([#10221](https://github.com/RooCodeInc/Roo-Code/pull/10221)) +* **Avoid deleting the wrong API messages**: Fixes a race condition where deleting a user message could remove earlier assistant API messages, especially during streaming/tool use ([#10113](https://github.com/RooCodeInc/Roo-Code/pull/10113)) +* **Deduplicate MCP tools across configs**: Fixes a “tool is already defined” error when the same MCP server exists in both global and project configs ([#10096](https://github.com/RooCodeInc/Roo-Code/pull/10096)) +* **Fix provider pricing page link**: Fixes a broken route so the provider pricing link takes you to the correct destination ([#10107](https://github.com/RooCodeInc/Roo-Code/pull/10107)) +* **MCP Tool Schema Normalization**: Fixes an issue where MCP tool schemas could fail validation when used with Amazon Bedrock or OpenAI in strict mode by normalizing JSON Schema formats ([#10148](https://github.com/RooCodeInc/Roo-Code/pull/10148)) +* **MCP Tool Names with Bedrock**: Fixes validation errors when using MCP servers with dots or colons in their names (like `awslabs.aws-documentation-mcp-server`) with Amazon Bedrock ([#10152](https://github.com/RooCodeInc/Roo-Code/pull/10152)) +* **Bedrock Task Resumption**: Fixes an error when resuming tasks with Amazon Bedrock when native tools are disabled, where users would encounter `The toolConfig field must be defined` errors ([#10155](https://github.com/RooCodeInc/Roo-Code/pull/10155)) +* **Roo Code Cloud Model Refresh**: Fixes an issue where authentication-required models (like `google/gemini-3-flash`) wouldn't appear immediately after logging into Roo Code Cloud ([#10156](https://github.com/RooCodeInc/Roo-Code/pull/10156)) +* **LiteLLM Tool Protocol Dropdown**: The Native/XML protocol selector now appears correctly for LiteLLM models ([#10187](https://github.com/RooCodeInc/Roo-Code/pull/10187)) +* **Task Resumption**: Tasks no longer break when resuming after changing the Native Tool Calling setting ([#10192](https://github.com/RooCodeInc/Roo-Code/pull/10192)) +* **Bedrock Embedder CloudTrail Fix**: AWS Bedrock users now see Roo Code identified in CloudTrail logs when using Codebase Indexing. (thanks jackrein!) ([#10166](https://github.com/RooCodeInc/Roo-Code/pull/10166)) +* **MCP Compatibility with OpenAI Providers**: Fixes an issue where MCP servers using `format: "uri"` in their tool schemas would fail with OpenAI providers ([#10198](https://github.com/RooCodeInc/Roo-Code/pull/10198)) +* **Native tool calling support for LM Studio and Qwen-Code**: Fixes an issue where these providers were missing OpenAI-style native tool call support, which could make tool use unreliable compared to other providers ([#10208](https://github.com/RooCodeInc/Roo-Code/pull/10208)) +* **More reliable tool defaults for OpenAI Compatible providers**: Fixes cases where tool calling could be inconsistent unless you manually adjusted custom model info, by applying native tool defaults unless you've explicitly overridden them ([#10213](https://github.com/RooCodeInc/Roo-Code/pull/10213)) +* **Requesty native tool calls enabled**: Fixes native tool calling defaults for the Requesty provider (and aligns behavior for Unbound) so tool use is more consistent, especially when model metadata is cached ([#10211](https://github.com/RooCodeInc/Roo-Code/pull/10211)) +* **MCP tool schemas work with stricter validation**: Fixes an issue where some MCP tool schemas could fail strict validation due to missing `additionalProperties: false` on object schemas ([#10210](https://github.com/RooCodeInc/Roo-Code/pull/10210)) +* **Refresh models cache reliability**: Fixes an issue where **Refresh models** could fail to fully flush/refresh cached model lists for some providers, and improves correctness of initial model selection when starting a new task ([#9870](https://github.com/RooCodeInc/Roo-Code/pull/9870)) + +## Misc Improvements + +* **Evals UI enhancements**: Adds better filtering, bulk delete actions, tool column consolidation, and run notes ([#9837](https://github.com/RooCodeInc/Roo-Code/pull/9837)) +* **Framework updates**: Updates Next.js to `~15.2.8` for improved compatibility with upstream fixes ([#10140](https://github.com/RooCodeInc/Roo-Code/pull/10140)) +* **Multi-model evals launch**: Launches identical test runs across multiple models with automatic staggering ([#9845](https://github.com/RooCodeInc/Roo-Code/pull/9845)) +* **New pricing page**: Updates the website pricing page with clearer feature explanations ([#9821](https://github.com/RooCodeInc/Roo-Code/pull/9821)) +* **Announcement UI updates**: Improves announcement visuals with updated social icons and GitHub stars CTA ([#9945](https://github.com/RooCodeInc/Roo-Code/pull/9945)) +* **Improved error logging**: Adds better context for parseToolCall exceptions and cloud job errors ([#9857](https://github.com/RooCodeInc/Roo-Code/pull/9857), [#9924](https://github.com/RooCodeInc/Roo-Code/pull/9924)) +* **search_replace native tool**: Adds a tool for single-replacement file operations with precise targeting via unique text matching ([#9918](https://github.com/RooCodeInc/Roo-Code/pull/9918)) +* **Versioned settings support**: Adds internal infrastructure for API-side versioning of model settings with minimum plugin version gating ([#9934](https://github.com/RooCodeInc/Roo-Code/pull/9934)) +* **OpenRouter telemetry**: Adds API error telemetry for better diagnostics ([#9953](https://github.com/RooCodeInc/Roo-Code/pull/9953)) +* **Evals streaming stats**: Tool usage stats stream in real time with token usage throttling ([#9926](https://github.com/RooCodeInc/Roo-Code/pull/9926)) +* **Tool consolidation**: Removes the deprecated `insert_content` tool (use apply_diff or write_to_file) ([#9751](https://github.com/RooCodeInc/Roo-Code/pull/9751)) +* **Experimental settings**: Temporarily disables the parallel tool calls experiment while improvements are in progress ([#9798](https://github.com/RooCodeInc/Roo-Code/pull/9798)) +* **Infrastructure**: Updates Next.js dependencies for web applications ([#9799](https://github.com/RooCodeInc/Roo-Code/pull/9799)) +* **Removed deprecated tool**: Removes the deprecated `list_code_definition_names` tool ([#10005](https://github.com/RooCodeInc/Roo-Code/pull/10005)) +* **Tool aliases for model-specific tool naming**: Adds support for alternative tool names so different models can call the same tool using the naming they expect ([#9989](https://github.com/RooCodeInc/Roo-Code/pull/9989)) +* **Workspace task visibility controls for organizations**: Adds an org-level setting for how visible Roo Code Cloud “extension tasks” are across the workspace ([#10020](https://github.com/RooCodeInc/Roo-Code/pull/10020)) +* **Improved web-evals run logs**: Makes evaluation runs easier to inspect by improving run logs and formatting ([#10081](https://github.com/RooCodeInc/Roo-Code/pull/10081)) +* **Control public task sharing**: Adds an organization-level setting to disable public task sharing links ([#10105](https://github.com/RooCodeInc/Roo-Code/pull/10105)) +* **Evals UI: clearer tool grouping + duration fixes**: Improves the evals UI by grouping related tools and fixing cases where run duration could be missing or incorrect ([#10133](https://github.com/RooCodeInc/Roo-Code/pull/10133)) +* **Error Monitoring**: Improved tracking of consecutive mistake errors ([#10193](https://github.com/RooCodeInc/Roo-Code/pull/10193)) +* **Better Error Grouping**: Improved error tracking for faster issue resolution. ([#10163](https://github.com/RooCodeInc/Roo-Code/pull/10163)) + +## Provider Updates + +* **Reasoning details support (Roo provider)**: Displays reasoning details from supported models ([#9796](https://github.com/RooCodeInc/Roo-Code/pull/9796)) +* **Native tools default (Roo provider)**: Roo provider models default to native tool protocol ([#9811](https://github.com/RooCodeInc/Roo-Code/pull/9811)) +* **MiniMax search_and_replace**: MiniMax M2 uses search_and_replace for more reliable file edits ([#9780](https://github.com/RooCodeInc/Roo-Code/pull/9780)) +* **Cerebras token optimization**: Prevents premature rate limiting and cleans up deprecated models ([#9804](https://github.com/RooCodeInc/Roo-Code/pull/9804)) +* **Vercel AI Gateway**: More reliable model fetching when pricing data is incomplete ([#9791](https://github.com/RooCodeInc/Roo-Code/pull/9791)) +* **Dynamic model settings (Roo provider)**: Roo models receive configuration dynamically from the API ([#9852](https://github.com/RooCodeInc/Roo-Code/pull/9852)) +* **Optimized GPT-5 tool configuration**: GPT-5.x, GPT-5.1.x, and GPT-4.1 use only apply_patch for file edits ([#9853](https://github.com/RooCodeInc/Roo-Code/pull/9853)) +* **DeepSeek V3.2**: Updates to V3.2 with a price reduction, native tools by default, and 8K max output ([#9962](https://github.com/RooCodeInc/Roo-Code/pull/9962)) +* **xAI models catalog**: Corrects context windows, adds image support for grok-3/grok-3-mini, and removes deprecated models ([#9872](https://github.com/RooCodeInc/Roo-Code/pull/9872)) +* **xAI tool preferences**: Configures xAI models to use search_replace for better file editing compatibility ([#9923](https://github.com/RooCodeInc/Roo-Code/pull/9923)) +* **DeepSeek V3.2 for Baseten**: Adds DeepSeek V3.2 model support ([#9861](https://github.com/RooCodeInc/Roo-Code/pull/9861)) +* **Baseten model tweaks**: Improves maxTokens limits and native tools support for stability ([#9866](https://github.com/RooCodeInc/Roo-Code/pull/9866)) +* **Bedrock models**: Adds Kimi, MiniMax, and Qwen model configurations ([#9905](https://github.com/RooCodeInc/Roo-Code/pull/9905)) +* **Z.ai endpoint options**: Adds endpoint options for users on API billing instead of the Coding plan ([#9894](https://github.com/RooCodeInc/Roo-Code/pull/9894)) +* **More detailed OpenRouter error reporting**: Captures more provider-specific error metadata so failures are easier to diagnose ([#10073](https://github.com/RooCodeInc/Roo-Code/pull/10073)) +* **OpenRouter tool support for OpenAI models**: Makes tool usage more predictable by explicitly enabling `apply_patch` and avoiding unsupported file-writing tools ([#10082](https://github.com/RooCodeInc/Roo-Code/pull/10082)) +* **AWS Bedrock service tier support**: Adds a Bedrock service tier option (Standard/Flex/Priority) for supported models ([#9955](https://github.com/RooCodeInc/Roo-Code/pull/9955)) +* **Amazon Nova 2 Lite in Bedrock**: Adds the Nova 2 Lite model to the Bedrock provider model list ([#9830](https://github.com/RooCodeInc/Roo-Code/pull/9830)) +* **Native tools by default (more providers)**: Defaults more providers to the native tool protocol for more consistent tool calling across providers ([#10059](https://github.com/RooCodeInc/Roo-Code/pull/10059), [#10021](https://github.com/RooCodeInc/Roo-Code/pull/10021)) +* **Bedrock custom ARNs are less restrictive**: Removes overly strict ARN validation that could block valid AWS Bedrock custom ARNs, while keeping a non-blocking region mismatch warning ([#10110](https://github.com/RooCodeInc/Roo-Code/pull/10110)) +* **Cleaner Bedrock service tier UI**: Removes extra description text under the Bedrock service tier selector to make the UI easier to scan ([#10118](https://github.com/RooCodeInc/Roo-Code/pull/10118)) +* **Claude Code Provider Native Tool Calling**: The Claude Code provider now supports native tool calling for more direct and efficient communication with Claude ([#10077](https://github.com/RooCodeInc/Roo-Code/pull/10077)) +* **Z.ai Native Tool Calling**: Z.ai models (GLM-4.5 series, GLM-4.6, etc.) now use native tool calling by default ([#10158](https://github.com/RooCodeInc/Roo-Code/pull/10158)) +* **OpenAI Compatible Native Tools**: OpenAI Compatible providers now use native tool calling by default ([#10159](https://github.com/RooCodeInc/Roo-Code/pull/10159)) +* **AWS GovCloud and China Region Support**: Users in AWS GovCloud and China regions can now use custom ARNs with the Bedrock provider (thanks wisestmumbler!) ([#10157](https://github.com/RooCodeInc/Roo-Code/pull/10157)) +* **Native Tool Calling for Claude on Vertex AI**: All Claude models on Vertex AI now use native tool calling by default, matching the behavior of direct Anthropic API access ([#10197](https://github.com/RooCodeInc/Roo-Code/pull/10197)) diff --git a/apps/docs/docs/update-notes/v3.37.0.mdx b/apps/docs/docs/update-notes/v3.37.0.mdx new file mode 100644 index 00000000000..32f3910c9b1 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.37.0.mdx @@ -0,0 +1,58 @@ +--- +description: Roo Code 3.37 introduces custom tool calling, expands provider support, and improves tool-call reliability. +keywords: + - roo code 3.37.0 + - new features + - bug fixes +image: /img/v3.37.0/v3.37.0.png +--- + +# Roo Code 3.37.0 Release Notes (2025-12-22) + +Roo Code 3.37 introduces experimental custom tools, adds new provider capabilities, and improves tool-call reliability. + +Roo Code v3.37.0 Release + +## New models + +## Z.ai GLM-4.7 (thinking mode) + +GLM-4.7 is now available directly through the Z.ai provider in Roo Code, as well as via the Roo Code Cloud provider (and other provider routes that surface Z.ai). It’s a strong coding model for agentic workflows, with improved multilingual coding, terminal tasks, tool use, and complex reasoning compared to GLM-4.6 ([#10282](https://github.com/RooCodeInc/Roo-Code/pull/10282)). + +GLM-4.7 benchmark performance + +## MiniMax M2.1 improvements + +MiniMax M2.1 is now available directly through the MiniMax provider in Roo Code, as well as via the Roo Code Cloud provider (and other provider routes that surface MiniMax). It’s a strong pick for agentic coding workflows, with better tool use, instruction following, and long-horizon planning for multi-step tasks—and it’s fast ([#10284](https://github.com/RooCodeInc/Roo-Code/pull/10284)). + +MiniMax M2.1 Benchmark Performance + +## Experimental custom tools + +You can now define and use **custom tools** so Roo can call your project- or team-specific actions like built-in tools. This makes it easier to standardize workflows across a team by shipping tool schemas alongside your project, instead of repeatedly re-prompting the same steps ([#10083](https://github.com/RooCodeInc/Roo-Code/pull/10083)). + +## Bug Fixes + +* Fixes an issue where Roo could appear stuck after a tool call with some OpenAI-compatible providers when streaming ended at the tool-calls boundary (thanks torxeon!) ([#10280](https://github.com/RooCodeInc/Roo-Code/pull/10280)) +* Fixes an issue where Roo could appear stuck after a tool call with some OpenAI-compatible providers by ensuring final tool-call completion events are emitted ([#10293](https://github.com/RooCodeInc/Roo-Code/pull/10293)) +* Fixes an issue where MCP tools could break under strict schema mode when optional parameters were treated as required ([#10220](https://github.com/RooCodeInc/Roo-Code/pull/10220)) +* Fixes an issue where the built-in `read_file` tool could fail on some models due to invalid schema normalization for optional array parameters ([#10276](https://github.com/RooCodeInc/Roo-Code/pull/10276)) +* Fixes an issue where `search_replace` / `search_and_replace` could miss matches on CRLF files, improving cross-platform search-and-replace reliability ([#10288](https://github.com/RooCodeInc/Roo-Code/pull/10288)) +* Fixes an issue where Requesty’s **Refresh Models** could leave the model list stale by not including credentials in the refresh flow (thanks requesty-JohnCosta27!) ([#10273](https://github.com/RooCodeInc/Roo-Code/pull/10273)) +* Fixes an issue where Chutes model loading could fail if the provider returned malformed model entries ([#10279](https://github.com/RooCodeInc/Roo-Code/pull/10279)) +* Fixes an issue where `reasoning_details` could be merged/ordered incorrectly during streaming, improving reliability for providers that depend on strict reasoning serialization ([#10285](https://github.com/RooCodeInc/Roo-Code/pull/10285)) +* Fixes an issue where DeepSeek-reasoner could error after condensation if the condensed summary lacked required reasoning fields ([#10292](https://github.com/RooCodeInc/Roo-Code/pull/10292)) + +## Misc Improvements + +* **Cleaner eval logs**: Deduplicates repetitive message log entries so eval traces are easier to read ([#10286](https://github.com/RooCodeInc/Roo-Code/pull/10286)) + +## QOL Improvements + +* New tasks now default to native tool calling on models that support it, reducing the need for manual tool protocol selection ([#10281](https://github.com/RooCodeInc/Roo-Code/pull/10281)) + +## Provider Updates + +* Improves Z.ai thinking model message formatting by attaching `environment_details` to tool results instead of emitting separate system messages ([#10289](https://github.com/RooCodeInc/Roo-Code/pull/10289)) +* LiteLLM no longer sends `parallel_tool_calls`, improving tool-call compatibility (thanks farazoman!) ([#10274](https://github.com/RooCodeInc/Roo-Code/pull/10274)) + diff --git a/apps/docs/docs/update-notes/v3.37.1.mdx b/apps/docs/docs/update-notes/v3.37.1.mdx new file mode 100644 index 00000000000..73f038bb51b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.37.1.mdx @@ -0,0 +1,31 @@ +--- +description: Roo Code 3.37.1 refreshes the signup flow, improves OpenAI-compatible tool calling, and fixes several reliability issues. +keywords: + - roo code 3.37.1 + - signup + - openai compatible + - bug fixes +image: /img/v3.37.1/v3.37.1.png +--- + +# Roo Code 3.37.1 Release Notes (2025-12-23) + +This release refreshes the signup flow, improves tool-calling reliability for OpenAI-compatible providers, and fixes several chat reliability issues. + +Roo Code v3.37.1 Release + +## QOL Improvements + +* Improves tool-calling reliability for Roo Code Cloud by preventing tool-result metadata (like `environment_details`) from interrupting tool call sequences ([#10301](https://github.com/RooCodeInc/Roo-Code/pull/10301)) +* Improves tool-calling reliability across OpenAI-compatible providers by merging trailing tool-result text into the last tool message, reducing cases where tool call sequences get interrupted ([#10299](https://github.com/RooCodeInc/Roo-Code/pull/10299)) + +## Bug Fixes + +* Fixes an issue where Roo could show errors when a provider returned an empty assistant message by retrying once and only showing an error if the problem repeats ([#10297](https://github.com/RooCodeInc/Roo-Code/pull/10297)) +* Fixes an issue where OpenAI/OpenAI-compatible chats could fail to use native tools when custom model info didn’t explicitly set tool support, by sending native tool definitions by default ([#10314](https://github.com/RooCodeInc/Roo-Code/pull/10314)) +* Fixes an issue where Roo could send malformed `reasoning_details` data after transforming conversation history, preventing provider-side errors and improving compatibility with OpenAI Responses-style reasoning blocks ([#10313](https://github.com/RooCodeInc/Roo-Code/pull/10313)) +* Fixes an issue where “ask” flows could hang if your reply was queued instead of being delivered as an ask response, so conversations continue reliably ([#10315](https://github.com/RooCodeInc/Roo-Code/pull/10315)) + +## Misc Improvements + +* **Provider-centric signup**: Makes Roo easier to get started with by defaulting the welcome/sign-up flow to the Roo provider (while keeping other providers available), so you can reach a working setup faster with fewer choices up front ([#10306](https://github.com/RooCodeInc/Roo-Code/pull/10306)) diff --git a/apps/docs/docs/update-notes/v3.37.mdx b/apps/docs/docs/update-notes/v3.37.mdx new file mode 100644 index 00000000000..40842a1e4a3 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.37.mdx @@ -0,0 +1,64 @@ +--- +description: Roo Code 3.37 introduces custom tool calling, expands provider support, and improves tool-call reliability. +keywords: + - roo code 3.37 + - new features + - bug fixes +image: /img/v3.37.0/v3.37.0.png +--- + +# Roo Code 3.37 Release Notes (2025-12-22) + +Roo Code 3.37 introduces experimental custom tools, adds new provider capabilities, and improves tool-call reliability. + +Roo Code v3.37.0 Release + +## New models + +## Z.ai GLM-4.7 (thinking mode) + +GLM-4.7 is now available directly through the Z.ai provider in Roo Code, as well as via the Roo Code Cloud provider (and other provider routes that surface Z.ai). It’s a strong coding model for agentic workflows, with improved multilingual coding, terminal tasks, tool use, and complex reasoning compared to GLM-4.6 ([#10282](https://github.com/RooCodeInc/Roo-Code/pull/10282)). + +GLM-4.7 benchmark performance + +## MiniMax M2.1 improvements + +MiniMax M2.1 is now available directly through the MiniMax provider in Roo Code, as well as via the Roo Code Cloud provider (and other provider routes that surface MiniMax). It’s a strong pick for agentic coding workflows, with better tool use, instruction following, and long-horizon planning for multi-step tasks—and it’s fast ([#10284](https://github.com/RooCodeInc/Roo-Code/pull/10284)). + +MiniMax M2.1 Benchmark Performance + +## Experimental custom tools + +You can now define and use **custom tools** so Roo can call your project- or team-specific actions like built-in tools. This makes it easier to standardize workflows across a team by shipping tool schemas alongside your project, instead of repeatedly re-prompting the same steps ([#10083](https://github.com/RooCodeInc/Roo-Code/pull/10083)). + +## Bug Fixes + +* Fixes an issue where Roo could appear stuck after a tool call with some OpenAI-compatible providers when streaming ended at the tool-calls boundary (thanks torxeon!) ([#10280](https://github.com/RooCodeInc/Roo-Code/pull/10280)) +* Fixes an issue where Roo could appear stuck after a tool call with some OpenAI-compatible providers by ensuring final tool-call completion events are emitted ([#10293](https://github.com/RooCodeInc/Roo-Code/pull/10293)) +* Fixes an issue where MCP tools could break under strict schema mode when optional parameters were treated as required ([#10220](https://github.com/RooCodeInc/Roo-Code/pull/10220)) +* Fixes an issue where the built-in `read_file` tool could fail on some models due to invalid schema normalization for optional array parameters ([#10276](https://github.com/RooCodeInc/Roo-Code/pull/10276)) +* Fixes an issue where `search_replace` / `search_and_replace` could miss matches on CRLF files, improving cross-platform search-and-replace reliability ([#10288](https://github.com/RooCodeInc/Roo-Code/pull/10288)) +* Fixes an issue where Requesty’s **Refresh Models** could leave the model list stale by not including credentials in the refresh flow (thanks requesty-JohnCosta27!) ([#10273](https://github.com/RooCodeInc/Roo-Code/pull/10273)) +* Fixes an issue where Chutes model loading could fail if the provider returned malformed model entries ([#10279](https://github.com/RooCodeInc/Roo-Code/pull/10279)) +* Fixes an issue where `reasoning_details` could be merged/ordered incorrectly during streaming, improving reliability for providers that depend on strict reasoning serialization ([#10285](https://github.com/RooCodeInc/Roo-Code/pull/10285)) +* Fixes an issue where DeepSeek-reasoner could error after condensation if the condensed summary lacked required reasoning fields ([#10292](https://github.com/RooCodeInc/Roo-Code/pull/10292)) +* Fixes an issue where Roo could show errors when a provider returned an empty assistant message by retrying once and only showing an error if the problem repeats ([#10297](https://github.com/RooCodeInc/Roo-Code/pull/10297)) +* Fixes an issue where OpenAI/OpenAI-compatible chats could fail to use native tools when custom model info didn’t explicitly set tool support, by sending native tool definitions by default ([#10314](https://github.com/RooCodeInc/Roo-Code/pull/10314)) +* Fixes an issue where Roo could send malformed `reasoning_details` data after transforming conversation history, preventing provider-side errors and improving compatibility with OpenAI Responses-style reasoning blocks ([#10313](https://github.com/RooCodeInc/Roo-Code/pull/10313)) +* Fixes an issue where “ask” flows could hang if your reply was queued instead of being delivered as an ask response, so conversations continue reliably ([#10315](https://github.com/RooCodeInc/Roo-Code/pull/10315)) + +## Misc Improvements + +* **Cleaner eval logs**: Deduplicates repetitive message log entries so eval traces are easier to read ([#10286](https://github.com/RooCodeInc/Roo-Code/pull/10286)) +* **Provider-centric signup**: Makes Roo easier to get started with by defaulting the welcome/sign-up flow to the Roo provider (while keeping other providers available), so you can reach a working setup faster with fewer choices up front ([#10306](https://github.com/RooCodeInc/Roo-Code/pull/10306)) + +## QOL Improvements + +* New tasks now default to native tool calling on models that support it, reducing the need for manual tool protocol selection ([#10281](https://github.com/RooCodeInc/Roo-Code/pull/10281)) +* Improves tool-calling reliability for Roo Code Cloud by preventing tool-result metadata (like `environment_details`) from interrupting tool call sequences ([#10301](https://github.com/RooCodeInc/Roo-Code/pull/10301)) +* Improves tool-calling reliability across OpenAI-compatible providers by merging trailing tool-result text into the last tool message, reducing cases where tool call sequences get interrupted ([#10299](https://github.com/RooCodeInc/Roo-Code/pull/10299)) + +## Provider Updates + +* Improves Z.ai thinking model message formatting by attaching `environment_details` to tool results instead of emitting separate system messages ([#10289](https://github.com/RooCodeInc/Roo-Code/pull/10289)) +* LiteLLM no longer sends `parallel_tool_calls`, improving tool-call compatibility (thanks farazoman!) ([#10274](https://github.com/RooCodeInc/Roo-Code/pull/10274)) diff --git a/apps/docs/docs/update-notes/v3.38.0.mdx b/apps/docs/docs/update-notes/v3.38.0.mdx new file mode 100644 index 00000000000..9385b3403d0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.38.0.mdx @@ -0,0 +1,37 @@ +--- +description: Adds Agent Skills, improves slash command behavior, and streamlines providers and file reading. +keywords: + - roo code 3.38.0 + - new features + - bug fixes +image: /img/v3.38.0/v3.38.0.png +--- + +# Roo Code 3.38.0 Release Notes (2025-12-27) + +This release adds Agent Skills, improves slash command behavior, and streamlines providers and file reading. + +Roo Code v3.38.0 Release + +## Agent Skills + +Roo now supports Agent Skills, which are portable skill folders containing instructions, scripts, and resources that the agent can discover and load on demand. This lets you package repeatable workflows and domain knowledge once and reuse them across projects to make results more consistent and reliable. ([#10335](https://github.com/RooCodeInc/Roo-Code/pull/10335)): + +> **📚 Documentation**: See [Skills](/features/skills) for setup and usage. + +## QOL Improvements + +* Slash commands can declare a target mode in their front matter, so triggering a command can switch Roo to the right mode first ([#10344](https://github.com/RooCodeInc/Roo-Code/pull/10344)). +* Removes the legacy “simple read file” tool path so file reading consistently uses the standard `read_file` tool ([#10254](https://github.com/RooCodeInc/Roo-Code/pull/10254)). + +## Bug Fixes + +* Fixes an issue where some Claude Sonnet 4.5 requests could fail with HTTP 400 errors after context condensing ([#10359](https://github.com/RooCodeInc/Roo-Code/pull/10359)). + +## Misc Improvements + +* Custom tools can import npm packages, and can load secrets from a same-folder `.env` file ([#10336](https://github.com/RooCodeInc/Roo-Code/pull/10336)). + +## Provider Updates + +* Removes the “OpenRouter Transforms” setting and stops sending the `transforms` parameter on OpenRouter requests ([#10341](https://github.com/RooCodeInc/Roo-Code/pull/10341)). diff --git a/apps/docs/docs/update-notes/v3.38.1.mdx b/apps/docs/docs/update-notes/v3.38.1.mdx new file mode 100644 index 00000000000..a74ca1e736e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.38.1.mdx @@ -0,0 +1,27 @@ +--- +description: This patch release improves reliability when using tools and context condensing, refines tool error messages, and fixes a few small UI/link issues. +keywords: + - roo code 3.38.1 + - bug fixes + - qol improvements +image: /img/v3.38.1/v3.38.1.png +--- + +# Roo Code 3.38.1 Release Notes (2025-12-29) + +This patch release improves reliability when using tools and context condensing, refines tool error messages, and fixes a few small UI/link issues. + +Roo Code v3.38.1 Release + +## QOL Improvements + +* Clarifies the navigation path for deleting a Roo Code Cloud account in the privacy policy, so you can find Security Settings faster ([#10367](https://github.com/RooCodeInc/Roo-Code/pull/10367)) +* Improves internal analytics consistency by recording custom tools the same way as MCP tools, which helps tool usage and error tracking stay accurate ([#10364](https://github.com/RooCodeInc/Roo-Code/pull/10364)) + +## Bug Fixes + +* Fixes an issue where manually condensing context while a tool is still running could trigger provider protocol errors, so tool runs and manual condenses can safely overlap ([#10379](https://github.com/RooCodeInc/Roo-Code/pull/10379)) +* Reverts a change for OpenAI-compatible providers to avoid message-format regressions related to text appearing after tool results ([#10381](https://github.com/RooCodeInc/Roo-Code/pull/10381)) +* Enforces the `maxConcurrentFileReads` limit for `read_file`, returning a clear error instead of silently ignoring the setting ([#10363](https://github.com/RooCodeInc/Roo-Code/pull/10363)) +* Improves the error shown when `read_file` is run on a directory by explicitly explaining the issue and suggesting `list_files` instead ([#10371](https://github.com/RooCodeInc/Roo-Code/pull/10371)) +* Fixes an issue where the "open source" link on roocode.com could point to a non-existent GitHub organization, so it reliably opens the correct repository (thanks jishnuteegala!) ([#10377](https://github.com/RooCodeInc/Roo-Code/pull/10377)) diff --git a/apps/docs/docs/update-notes/v3.38.2.mdx b/apps/docs/docs/update-notes/v3.38.2.mdx new file mode 100644 index 00000000000..e4a715649b2 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.38.2.mdx @@ -0,0 +1,29 @@ +--- +description: This release improves Agent Skills compatibility, clarifies rate-limit status, and updates provider defaults. +keywords: + - roo code 3.38.2 + - new features + - bug fixes +image: /img/v3.38.2/v3.38.2.png +--- + +# Roo Code 3.38.2 Release Notes (2025-12-31) + +This release improves Agent Skills compatibility, clarifies rate-limit status, and updates provider defaults. + +Roo Code v3.38.2 Release + +## QOL Improvements + +* **Agent Skills load more reliably across environments** by aligning skill metadata validation and discovery with the Agent Skills specification. ([#10409](https://github.com/RooCodeInc/Roo-Code/pull/10409)) +* **The recommended onboarding video is easier to find** by updating the “Tutorial & Feature Videos” README section to point to the newer Context Management tutorial (including localized READMEs) (thanks SannidhyaSah!). ([#10375](https://github.com/RooCodeInc/Roo-Code/pull/10375)) + +## Bug Fixes + +* **Fixes an issue where rate limiting looked like a provider error** so a client-side rate limit now shows as a normal “rate limit wait” status row and completes cleanly. ([#10389](https://github.com/RooCodeInc/Roo-Code/pull/10389)) +* **Fixes an issue where `write_to_file` could create files at an unintended truncated path**, reducing accidental file placement and cleanup. ([#10415](https://github.com/RooCodeInc/Roo-Code/pull/10415)) + +## Provider Updates + +* **Removes the Human Relay provider** so it no longer appears as a configurable option in Providers. ([#10388](https://github.com/RooCodeInc/Roo-Code/pull/10388)) +* **Updates the Cerebras default max completion tokens to 16,384** to reduce premature rate-limit estimation issues (thanks sebastiand-cerebras!). ([#10387](https://github.com/RooCodeInc/Roo-Code/pull/10387)) diff --git a/apps/docs/docs/update-notes/v3.38.3.mdx b/apps/docs/docs/update-notes/v3.38.3.mdx new file mode 100644 index 00000000000..17dc36762d7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.38.3.mdx @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.38.3 adds optional recursive rules loading for multi-folder setups and fixes several reliability issues. +keywords: + - roo code 3.38.3 + - rules + - agents.md + - bug fixes +--- + +# Roo Code 3.38.3 Release Notes (2026-01-03) + +This release adds an option to recursively load project rules in subfolders and fixes several reliability issues. + +## QOL Improvements + +* **Recursive subfolder rules loading (optional)**: Adds a Context setting that can automatically load additional `.roo/rules` and `AGENTS.md` files from subdirectories, making it easier to work in multi-repo/monorepo folders without manually switching roots ([#10446](https://github.com/RooCodeInc/Roo-Code/pull/10446)) + +## Bug Fixes + +* Fixes an issue where Claude Code users could be forced to sign in again roughly daily, improving session reliability and reducing interruptions ([#10410](https://github.com/RooCodeInc/Roo-Code/pull/10410)) +* Fixes an issue where the in-chat text-to-speech (TTS) flow could crash if a message’s `text` value wasn’t a string, preventing the chat panel from breaking mid-task (thanks notglossy!) ([#10431](https://github.com/RooCodeInc/Roo-Code/pull/10431)) +* Fixes an issue where Roo’s native `read_file` tool schema didn’t advertise a maximum number of files per call, reducing failed tool calls in environments that enforce low limits ([#10449](https://github.com/RooCodeInc/Roo-Code/pull/10449)) diff --git a/apps/docs/docs/update-notes/v3.38.mdx b/apps/docs/docs/update-notes/v3.38.mdx new file mode 100644 index 00000000000..03c7985e244 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.38.mdx @@ -0,0 +1,54 @@ +--- +description: Roo Code 3.38 adds Agent Skills and includes follow-up fixes for tool reliability, provider message formatting, and file reading. +keywords: + - roo code 3.38 + - new features + - bug fixes + - qol improvements +image: /img/v3.38.0/v3.38.0.png +--- + +# Roo Code 3.38 Release Notes (Combined) + +Roo Code 3.38 adds Agent Skills and includes follow-up fixes for tool reliability, provider message formatting, and file reading. + +Roo Code v3.38 Release + +## Agent Skills + +Roo now supports Agent Skills, which are portable skill folders containing instructions, scripts, and resources that the agent can discover and load on demand. This lets you package repeatable workflows and domain knowledge once and reuse them across projects to make results more consistent and reliable. ([#10335](https://github.com/RooCodeInc/Roo-Code/pull/10335)): + +> **📚 Documentation**: See [Skills](/features/skills) for setup and usage. + +## QOL Improvements + +* Slash commands can declare a target mode in their front matter, so triggering a command can switch Roo to the right mode first ([#10344](https://github.com/RooCodeInc/Roo-Code/pull/10344)). +* Removes the legacy “simple read file” tool path so file reading consistently uses the standard `read_file` tool ([#10254](https://github.com/RooCodeInc/Roo-Code/pull/10254)). +* Agent Skills load more reliably across environments by aligning skill metadata validation and discovery with the Agent Skills specification ([#10409](https://github.com/RooCodeInc/Roo-Code/pull/10409)). +* Adds an optional Context setting that can automatically load additional `.roo/rules` and `AGENTS.md` files from subdirectories, making it easier to work in multi-repo/monorepo folders without manually switching roots ([#10446](https://github.com/RooCodeInc/Roo-Code/pull/10446)). +* Clarifies the navigation path for deleting a Roo Code Cloud account in the privacy policy, so you can find Security Settings faster ([#10367](https://github.com/RooCodeInc/Roo-Code/pull/10367)). +* Improves internal analytics consistency by recording custom tools the same way as MCP tools, which helps tool usage and error tracking stay accurate ([#10364](https://github.com/RooCodeInc/Roo-Code/pull/10364)). + +## Bug Fixes + +* Fixes an issue where some Claude Sonnet 4.5 requests could fail with HTTP 400 errors after context condensing ([#10359](https://github.com/RooCodeInc/Roo-Code/pull/10359)). +* Fixes an issue where manually condensing context while a tool is still running could trigger provider protocol errors, so tool runs and manual condenses can safely overlap ([#10379](https://github.com/RooCodeInc/Roo-Code/pull/10379)). +* Reverts a change for OpenAI-compatible providers to avoid message-format regressions related to text appearing after tool results ([#10381](https://github.com/RooCodeInc/Roo-Code/pull/10381)). +* Fixes an issue where Claude Code users could be forced to sign in again roughly daily, improving session reliability and reducing interruptions ([#10410](https://github.com/RooCodeInc/Roo-Code/pull/10410)). +* Enforces the `maxConcurrentFileReads` limit for `read_file`, returning a clear error instead of silently ignoring the setting ([#10363](https://github.com/RooCodeInc/Roo-Code/pull/10363)). +* Fixes an issue where the in-chat text-to-speech (TTS) flow could crash if a message’s `text` value wasn’t a string, preventing the chat panel from breaking mid-task (thanks notglossy!) ([#10431](https://github.com/RooCodeInc/Roo-Code/pull/10431)). +* Improves the error shown when `read_file` is run on a directory by explicitly explaining the issue and suggesting `list_files` instead ([#10371](https://github.com/RooCodeInc/Roo-Code/pull/10371)). +* Fixes an issue where Roo’s native `read_file` tool schema didn’t advertise a maximum number of files per call, reducing failed tool calls in environments that enforce low limits ([#10449](https://github.com/RooCodeInc/Roo-Code/pull/10449)). +* Fixes an issue where the "open source" link on roocode.com could point to a non-existent GitHub organization, so it reliably opens the correct repository (thanks jishnuteegala!) ([#10377](https://github.com/RooCodeInc/Roo-Code/pull/10377)). +* Fixes an issue where rate limiting looked like a provider error so a client-side rate limit now shows as a normal “rate limit wait” status row and completes cleanly ([#10389](https://github.com/RooCodeInc/Roo-Code/pull/10389)). +* Fixes an issue where `write_to_file` could create files at an unintended truncated path, reducing accidental file placement and cleanup ([#10415](https://github.com/RooCodeInc/Roo-Code/pull/10415)). + +## Misc Improvements + +* Custom tools can import npm packages, and can load secrets from a same-folder `.env` file ([#10336](https://github.com/RooCodeInc/Roo-Code/pull/10336)). + +## Provider Updates + +* Removes the “OpenRouter Transforms” setting and stops sending the `transforms` parameter on OpenRouter requests ([#10341](https://github.com/RooCodeInc/Roo-Code/pull/10341)). +* Removes the Human Relay provider so it no longer appears as a configurable option in Providers ([#10388](https://github.com/RooCodeInc/Roo-Code/pull/10388)). +* Updates the Cerebras default max completion tokens to 16,384 to reduce premature rate-limit estimation issues (thanks sebastiand-cerebras!) ([#10387](https://github.com/RooCodeInc/Roo-Code/pull/10387)). diff --git a/apps/docs/docs/update-notes/v3.39.0.mdx b/apps/docs/docs/update-notes/v3.39.0.mdx new file mode 100644 index 00000000000..856d2d2b2ba --- /dev/null +++ b/apps/docs/docs/update-notes/v3.39.0.mdx @@ -0,0 +1,64 @@ +--- +description: Roo Code 3.39.0 adds image file @mentions, makes provider profiles stick to tasks, and updates key UI labels. +keywords: + - roo code 3.39.0 + - image @mentions + - providers + - qol improvements + - bug fixes +image: /img/v3.39.0/v3.39.0.png +--- + +# Roo Code 3.39.0 Release Notes (2026-01-08) + +This release adds image file @mentions, makes provider profiles stick to tasks, and updates key UI labels. + +Roo Code v3.39.0 Release + +## Image file @mentions + +You can now @mention image files to include them as inline images in your message, making it easier to share screenshots and UI mockups without manually attaching files (thanks hannesrudolph!) ([#10189](https://github.com/RooCodeInc/Roo-Code/pull/10189)). + +> **📚 Documentation**: See [Context Mentions](/basic-usage/context-mentions) for usage details. + +## Sticky provider profiles + +Tasks now remember the provider profile (API configuration) they started with, so switching profiles elsewhere doesn’t affect running tasks or resumed tasks (thanks hannesrudolph!) ([#10018](https://github.com/RooCodeInc/Roo-Code/pull/10018)). + +> **📚 Documentation**: See [API Configuration Profiles](/features/api-configuration-profiles) for details. + +## YOLO → BRRRRRRRRRR + +The auto-approve mode label has been renamed from “YOLO” to “BRRRRRRRRRR” across the UI (thanks app/roomote!) ([#10507](https://github.com/RooCodeInc/Roo-Code/pull/10507)). + +> **📚 Documentation**: See [Auto-Approving Actions](/features/auto-approving-actions) for details. + +## QOL Improvements + +* The `@` file picker now respects `.rooignore`, reducing noise in large workspaces and helping you avoid accidentally attaching ignored/generated files (thanks app/roomote, jerrill-johnson-bitwerx!) ([#10174](https://github.com/RooCodeInc/Roo-Code/pull/10174)) +* Adds debug-only proxy routing settings so you can inspect extension network traffic while running under the VS Code debugger (F5) (thanks hannesrudolph, SleeperSmith!) ([#10467](https://github.com/RooCodeInc/Roo-Code/pull/10467)) +* Improves the follow-up suggestion mode badge styling for better readability (thanks mrubens!) ([#9260](https://github.com/RooCodeInc/Roo-Code/pull/9260)) +* Clarifies in the native `read_file` tool description that image formats are supported when the model supports vision (thanks app/roomote, nabilfreeman!) ([#10442](https://github.com/RooCodeInc/Roo-Code/pull/10442)) + +## Bug Fixes + +* Fixes an issue where conversations could fail after condensation due to missing/mismatched tool call IDs, improving reliability in longer chats (thanks daniel-lxs!) ([#10471](https://github.com/RooCodeInc/Roo-Code/pull/10471)) +* Fixes an issue where duplicate `tool_result` blocks could cause provider API errors (including Anthropic “duplicate toolResult” failures), improving reliability in tool-heavy workflows (thanks daniel-lxs!) ([#10497](https://github.com/RooCodeInc/Roo-Code/pull/10497)) +* Fixes an edge case where switching terminals mid-run could produce duplicate tool results and trigger protocol errors, reducing unattended-mode soft-locks (thanks app/roomote, nabilfreeman!) ([#10466](https://github.com/RooCodeInc/Roo-Code/pull/10466)) +* Fixes an issue where Roo could generate the wrong command chaining syntax on Windows, making suggested terminal commands more likely to work without edits (thanks app/roomote, AlexNek!) ([#10434](https://github.com/RooCodeInc/Roo-Code/pull/10434)) +* Fixes an issue where chat requests could fail on Windows systems without PowerShell in PATH (“spawnSync powershell ENOENT”) (thanks app/roomote, Yang-strive!) ([#9897](https://github.com/RooCodeInc/Roo-Code/pull/9897)) +* Fixes a rare edge case where an API rate limit setting could be ignored when provider state is temporarily unavailable (thanks app/roomote!) ([#10266](https://github.com/RooCodeInc/Roo-Code/pull/10266)) +* Fixes validation failures in nightly builds by adding missing setting descriptions for debug proxy configuration (thanks app/roomote!) ([#10505](https://github.com/RooCodeInc/Roo-Code/pull/10505)) + +## Provider Updates + +* Adds the `kimi-k2-thinking` model to the Fireworks AI provider (thanks app/roomote, kavehsfv!) ([#9202](https://github.com/RooCodeInc/Roo-Code/pull/9202)) +* Adds an “Extra High (xhigh)” reasoning effort option for OpenAI-compatible providers when supported by the endpoint/model (thanks app/roomote, Soorma718!) ([#10061](https://github.com/RooCodeInc/Roo-Code/pull/10061)) +* Adds `zai-glm-4.7` to the Cerebras model list (thanks sebastiand-cerebras!) ([#10500](https://github.com/RooCodeInc/Roo-Code/pull/10500)) +* Removes legacy Claude 2 models from AWS Bedrock to prevent selecting unsupported options (thanks app/roomote, KevinZhao!) ([#10501](https://github.com/RooCodeInc/Roo-Code/pull/10501)) +* Improves compatibility with OpenAI’s Responses API for MCP tool schemas, reducing tool-calling failures when schemas omit `additionalProperties: false` (thanks daniel-lxs!) ([#10472](https://github.com/RooCodeInc/Roo-Code/pull/10472)) + +## Misc Improvements + +* Adds a one-line CLI installer workflow to simplify installing/upgrading the Roo Code CLI (thanks cte!) ([#10474](https://github.com/RooCodeInc/Roo-Code/pull/10474)) +* Adds early-stage CLI support used by eval tooling, including a new “CLI” execution option for eval runs (thanks cte!) ([#10452](https://github.com/RooCodeInc/Roo-Code/pull/10452), [#10456](https://github.com/RooCodeInc/Roo-Code/pull/10456)) diff --git a/apps/docs/docs/update-notes/v3.39.1.mdx b/apps/docs/docs/update-notes/v3.39.1.mdx new file mode 100644 index 00000000000..2ae16c8d61e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.39.1.mdx @@ -0,0 +1,17 @@ +--- +description: This patch release improves native tool-call reliability and fixes task resume issues for Gemini. +keywords: + - roo code 3.39.1 + - bug fixes +--- + +# Roo Code 3.39.1 Release Notes (2026-01-08) + +This patch release improves native tool-call reliability and fixes task resume issues for Gemini. + +## Bug Fixes + +* Fixes an issue where file paths shown during native tool-call streaming could appear incorrect or truncated, making it harder to confirm which file Roo is reading or editing ([#10555](https://github.com/RooCodeInc/Roo-Code/pull/10555)). +* Fixes an issue where resuming a task with Gemini models that use extended thinking could fail with a “Corrupted thought signature” / INVALID_ARGUMENT error ([#10554](https://github.com/RooCodeInc/Roo-Code/pull/10554)). +* Fixes an issue where `ask_followup_question` could fail with some Anthropic-backed setups due to strict tool schema validation ([#10551](https://github.com/RooCodeInc/Roo-Code/pull/10551)). + diff --git a/apps/docs/docs/update-notes/v3.39.2.mdx b/apps/docs/docs/update-notes/v3.39.2.mdx new file mode 100644 index 00000000000..d6ba53deccf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.39.2.mdx @@ -0,0 +1,39 @@ +--- +description: Adds a debug toggle, improves provider error messaging, and fixes tool calling issues. +keywords: + - roo code 3.39.2 + - new features + - bug fixes +--- + +# Roo Code 3.39.2 Release Notes (2026-01-09) + +This release adds a new debug toggle in settings, improves provider error messaging, and fixes multiple tool-calling issues. + +## Bug Fixes + +* Fixes an issue where Cerebras could fail tool calling with a 422 error when a chat included both built-in tools and MCP tools, by ensuring tools sent to Cerebras use consistent strict-mode values (thanks brianboysen51!) ([#10589](https://github.com/RooCodeInc/Roo-Code/pull/10589)) +* Fixes an issue where OpenAI-compatible providers could break tool calling, causing models to describe tool usage instead of invoking tools ([#10575](https://github.com/RooCodeInc/Roo-Code/pull/10575)) +* Fixes cases where file edits could fail to apply due to overly strict `edit_file` matching, improving edit reliability ([#10585](https://github.com/RooCodeInc/Roo-Code/pull/10585)) +* Fixes an issue where the VS Code Language Model (vscode-lm) integration could error when tool-call parts were ordered before text parts in assistant messages ([#10573](https://github.com/RooCodeInc/Roo-Code/pull/10573)) +* Fixes an issue where Gemini requests via OpenRouter could fail when an assistant message contained only tool calls ([#10559](https://github.com/RooCodeInc/Roo-Code/pull/10559)) +* Fixes an issue where approving a tool run while adding feedback could produce duplicate tool results, improving reliability for unattended runs (thanks nabilfreeman!) ([#10519](https://github.com/RooCodeInc/Roo-Code/pull/10519)) +* Fixes an issue where Gemini tool calling could behave inconsistently across turns due to thought signatures not being preserved correctly ([#10590](https://github.com/RooCodeInc/Roo-Code/pull/10590)) + +## Provider Updates + +* Improves file-edit reliability for Gemini and Vertex models by disabling the `edit_file` tool for those providers so Roo can route edits through the more appropriate patch-based flow when available ([#10594](https://github.com/RooCodeInc/Roo-Code/pull/10594)) +* Improves Gemini tool selection behavior by no longer overriding tool allow/deny lists, letting Roo’s routing decide more consistently ([#10592](https://github.com/RooCodeInc/Roo-Code/pull/10592)) + +## QOL Improvements + +* Adds an **Enable debug mode** toggle in Roo Code settings (About Roo Code) so you can turn debug logging on/off from the extension UI ([#10580](https://github.com/RooCodeInc/Roo-Code/pull/10580)) +* Improves the error message shown when a provider terminates a streaming response early (for example timeouts or rate limits), making it clearer the interruption came from the provider ([#10548](https://github.com/RooCodeInc/Roo-Code/pull/10548)) + +## Misc Improvements + +* Improves CLI defaults by switching the default model to `anthropic/claude-opus-4.5` ([#10544](https://github.com/RooCodeInc/Roo-Code/pull/10544)) +* Updates Roo Code Cloud’s Terms of Service (effective 2026-01-09) ([#10568](https://github.com/RooCodeInc/Roo-Code/pull/10568)) +* Improves internal CLI development and maintenance by moving more shared types to `@roo-code/types` (thanks cte!) ([#10583](https://github.com/RooCodeInc/Roo-Code/pull/10583)) +* Improves internal CLI stability by adding new functionality to `@roo-code/core` (thanks cte!) ([#10584](https://github.com/RooCodeInc/Roo-Code/pull/10584)) +* Improves internal CLI workflows by adding additional slash commands for CLI development (thanks cte!) ([#10586](https://github.com/RooCodeInc/Roo-Code/pull/10586)) diff --git a/apps/docs/docs/update-notes/v3.39.3.mdx b/apps/docs/docs/update-notes/v3.39.3.mdx new file mode 100644 index 00000000000..6a9c5006590 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.39.3.mdx @@ -0,0 +1,30 @@ +--- +description: This release renames Roo Code Cloud Provider to Roo Code Router and improves CLI and internal organization. +keywords: + - roo code 3.39.3 + - new features + - bug fixes +image: /img/v3.39.3/v3.39.3.png +--- + +# Roo Code 3.39.3 Release Notes (2026-01-10) + +This release renames Roo Code Cloud Provider to Roo Code Router and improves CLI and internal organization. + +Roo Code v3.39.3 Release + +## Roo Code Router rename + +Roo Code now shows **Roo Code Router** anywhere the extension previously referred to the **Roo Code Cloud Provider**. The new name is meant to make the intent clearer: Roo Code Router is a router-style provider (similar in idea to other router/aggregator services), but with a **curated set of models we’ve tested with Roo Code**. ([#10560](https://github.com/RooCodeInc/Roo-Code/pull/10560)). + +## QOL Improvements + +* **Roo Code Router naming consistency**: Updates the Roo Code Router service name and link so the UI points at the correct destination ([#10607](https://github.com/RooCodeInc/Roo-Code/pull/10607)) +* **Roo Code Router naming consistency**: Updates router naming in shared types so labels stay consistent across the UI ([#10605](https://github.com/RooCodeInc/Roo-Code/pull/10605)) +* **ExtensionHost organization**: Improves internal organization around mode changes and related events to help keep behavior consistent ([#10600](https://github.com/RooCodeInc/Roo-Code/pull/10600)) +* **CLI release testing**: Adds options to build and install the CLI release locally for testing ([#10597](https://github.com/RooCodeInc/Roo-Code/pull/10597)) +* **CLI organization**: Reorganizes the CLI file structure to make future changes easier to maintain ([#10599](https://github.com/RooCodeInc/Roo-Code/pull/10599)) + +## Misc Improvements + +* **CLI TUI**: Adds an interactive terminal UI mode to the Roo CLI ([#10480](https://github.com/RooCodeInc/Roo-Code/pull/10480)) diff --git a/apps/docs/docs/update-notes/v3.39.mdx b/apps/docs/docs/update-notes/v3.39.mdx new file mode 100644 index 00000000000..1ab18590b4e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.39.mdx @@ -0,0 +1,70 @@ +--- +description: Roo Code 3.39 includes task-level provider profile persistence, improved multimodal workflows, new provider/model options, and reliability fixes across tool calling. +keywords: + - roo code 3.39 + - new features + - bug fixes +--- + +# Roo Code 3.39 Release Notes (Combined) + +Roo Code 3.39 includes task-level provider profile persistence, improved multimodal workflows, new provider/model options, and reliability fixes across tool calling. + +## Features + +* **Task-level API configuration profiles**: Roo can persist the selected provider profile per task so follow-up sessions keep using the same provider/model settings. +* **Image file @mentions**: You can mention images in your workspace to give the model visual context directly from chat. +* **Headless Roo Code (CLI + VS Code shim)**: Run Roo Code in a headless environment with a basic CLI, plus an installer and an option to use the CLI for evals. +* **Debug proxy routing**: Adds debug-mode proxy routing to help troubleshoot API calls. + +## QOL Improvements + +* **BRRR naming update**: Renames YOLO to BRRR. +* **Smarter file @mention search**: Filters file @mention results using `.rooignore`. +* **Better tooling docs**: Improves the native `read_file` tool description and examples. +* **Web evals usability**: Remembers your last model selection in web evals and adds an evals skill. + +## Bug Fixes + +* Fixes PowerShell ENOENT issues on Windows. +* Fixes shell-aware command chaining examples for Windows. +* Fixes tool-result preservation/deduplication issues that could lead to API errors. +* Fixes issues around tool protocol UI and provider configuration details. + +## Provider Updates + +* Adds new/updated models across multiple providers (e.g., Fireworks AI, OpenAI-compatible endpoints, Cerebras). + +--- + +## Patch Releases + +### 3.39.3 (2026-01-10) + +* Renames Roo Code Cloud Provider to **Roo Code Router** for clearer branding. +* Updates Roo Code Router service name and related wording so the UI uses consistent naming. +* Improves ExtensionHost internal organization around mode changes. +* Adds options to build and install the CLI release locally for testing. +* Reorganizes the CLI file structure for better maintainability. +* Adds an interactive TUI mode to the Roo CLI. + +### 3.39.2 (2026-01-09) + +* Adds an **Enable debug mode** toggle in Roo Code settings (About Roo Code) so you can turn debug logging on/off from the extension UI. +* Improves the error message shown when a provider terminates a streaming response early, making it clearer the interruption came from the provider. +* Fixes an issue where Cerebras could fail tool calling when a chat included both built-in tools and MCP tools. +* Fixes tool calling for OpenAI-compatible providers. +* Fixes cases where file edits could fail to apply due to overly strict `edit_file` matching. +* Fixes an issue where the VS Code Language Model (vscode-lm) integration could error due to message part ordering. +* Fixes an issue where Gemini requests via OpenRouter could fail when an assistant message contained only tool calls. +* Fixes an issue where approving a tool run while adding feedback could produce duplicate tool results. +* Improves Gemini tool calling reliability by preserving thought signatures correctly. +* Improves file-edit reliability for Gemini and Vertex models. +* Updates Roo Code CLI defaults by switching the default model to `anthropic/claude-opus-4.5`. +* Updates Roo Code Cloud’s Terms of Service (effective 2026-01-09). + +### 3.39.1 (2026-01-08) + +* Fixes an issue where file paths shown during native tool-call streaming could appear incorrect or truncated. +* Fixes an issue where resuming a task with Gemini extended thinking could fail with a “Corrupted thought signature” / INVALID_ARGUMENT error. +* Fixes an Anthropic tool schema compatibility issue affecting `ask_followup_question`. diff --git a/apps/docs/docs/update-notes/v3.40.0.mdx b/apps/docs/docs/update-notes/v3.40.0.mdx new file mode 100644 index 00000000000..ad7bf4aee4d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.40.0.mdx @@ -0,0 +1,37 @@ +--- +description: This release adds settings search, improves the stop button and error display, and fixes tool-calling compatibility issues. +keywords: + - roo code 3.40.0 + - new features + - bug fixes +image: /img/v3.40.0/v3.40.0.png +--- + +# Roo Code 3.40.0 Release Notes (2026-01-13) + +This release adds settings search, improves the stop button and error display, and fixes tool-calling compatibility issues. + +Roo Code v3.40.0 Release + +## Settings search + +You can now quickly find and jump to the setting you need with a dedicated search inside Roo Code settings. Instead of hunting through sections, you can search by keyword and jump straight to the right setting, with a cleaner results layout that’s easier to scan. ([#10619](https://github.com/RooCodeInc/Roo-Code/pull/10619), [#10633](https://github.com/RooCodeInc/Roo-Code/pull/10633)) + +## Stop button improvements + +Stopping a streaming response is now clearer and more consistent with a standard stop button, with better visibility while editing messages. The stop action stays visible in more situations and replaces the old, oversized cancel UI, so interrupting long responses feels more familiar and less visually disruptive. ([#10639](https://github.com/RooCodeInc/Roo-Code/pull/10639), [#10696](https://github.com/RooCodeInc/Roo-Code/pull/10696)) + +## Tool-calling compatibility fixes + +This release improves compatibility across providers (especially Gemini and OpenAI-compatible backends) by addressing request/response validation edge cases (thanks Idlebrand!). Roo now avoids sending tool-calling parameters that some backends reject and handles cases where tool output is empty, reducing validation failures that could previously break tool-using chats mid-run. ([#10671](https://github.com/RooCodeInc/Roo-Code/pull/10671), [#10672](https://github.com/RooCodeInc/Roo-Code/pull/10672)) + +## QOL Improvements + +* Errors in chat are easier to interpret, with improved styling/visibility and more complete details when something goes wrong. ([#10692](https://github.com/RooCodeInc/Roo-Code/pull/10692)) +* The stop button stays visible and more consistent while editing messages, making it easier to interrupt long responses when needed. ([#10696](https://github.com/RooCodeInc/Roo-Code/pull/10696)) +* Roo uses a standard stop button while streaming, making task cancellation more familiar and less visually disruptive. ([#10639](https://github.com/RooCodeInc/Roo-Code/pull/10639)) + +## Bug Fixes + +* Fixes an issue where some LiteLLM routes could fail during native tool use because an unsupported tool-calling parameter was always being sent. ([#10671](https://github.com/RooCodeInc/Roo-Code/pull/10671)) +* Fixes an issue where Gemini-based providers could reject tool results when the tool output was empty, causing request validation errors mid-run. ([#10672](https://github.com/RooCodeInc/Roo-Code/pull/10672)) diff --git a/apps/docs/docs/update-notes/v3.40.1.mdx b/apps/docs/docs/update-notes/v3.40.1.mdx new file mode 100644 index 00000000000..a055e63bbe7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.40.1.mdx @@ -0,0 +1,14 @@ +--- +description: This release fixes a mode-switching error when using Gemini. +keywords: + - roo code 3.40.1 + - bug fixes +--- + +# Roo Code 3.40.1 Release Notes (2026-01-14) + +This release fixes a mode-switching error when using Gemini. + +## Bug Fixes + +* Fixes an issue where switching modes (e.g., from Code to Architect) while using Gemini would cause API errors due to tool permission conflicts in the conversation history. ([#10708](https://github.com/RooCodeInc/Roo-Code/pull/10708)) diff --git a/apps/docs/docs/update-notes/v3.40.mdx b/apps/docs/docs/update-notes/v3.40.mdx new file mode 100644 index 00000000000..811c358bcde --- /dev/null +++ b/apps/docs/docs/update-notes/v3.40.mdx @@ -0,0 +1,38 @@ +--- +description: This release adds settings search, improves the stop button and error display, fixes tool-calling compatibility issues, and resolves a mode-switching error with Gemini. +keywords: + - roo code 3.40 + - new features + - bug fixes +image: /img/v3.40.0/v3.40.0.png +--- + +# Roo Code 3.40 Release Notes (2026-01-14) + +This release adds settings search, improves the stop button and error display, fixes tool-calling compatibility issues, and resolves a mode-switching error with Gemini. + +Roo Code v3.40 Release + +## Settings search + +You can now quickly find and jump to the setting you need with a dedicated search inside Roo Code settings. Instead of hunting through sections, you can search by keyword and jump straight to the right setting, with a cleaner results layout that’s easier to scan. ([#10619](https://github.com/RooCodeInc/Roo-Code/pull/10619), [#10633](https://github.com/RooCodeInc/Roo-Code/pull/10633)) + +## Stop button improvements + +Stopping a streaming response is now clearer and more consistent with a standard stop button, with better visibility while editing messages. The stop action stays visible in more situations and replaces the old, oversized cancel UI, so interrupting long responses feels more familiar and less visually disruptive. ([#10639](https://github.com/RooCodeInc/Roo-Code/pull/10639), [#10696](https://github.com/RooCodeInc/Roo-Code/pull/10696)) + +## Tool-calling compatibility fixes + +This release improves compatibility across providers (especially Gemini and OpenAI-compatible backends) by addressing request/response validation edge cases (thanks Idlebrand!). Roo now avoids sending tool-calling parameters that some backends reject and handles cases where tool output is empty, reducing validation failures that could previously break tool-using chats mid-run. ([#10671](https://github.com/RooCodeInc/Roo-Code/pull/10671), [#10672](https://github.com/RooCodeInc/Roo-Code/pull/10672)) + +## QOL Improvements + +* Errors in chat are easier to interpret, with improved styling/visibility and more complete details when something goes wrong. ([#10692](https://github.com/RooCodeInc/Roo-Code/pull/10692)) +* The stop button stays visible and more consistent while editing messages, making it easier to interrupt long responses when needed. ([#10696](https://github.com/RooCodeInc/Roo-Code/pull/10696)) +* Roo uses a standard stop button while streaming, making task cancellation more familiar and less visually disruptive. ([#10639](https://github.com/RooCodeInc/Roo-Code/pull/10639)) + +## Bug Fixes + +* Fixes an issue where switching modes (e.g., from Code to Architect) while using Gemini would cause API errors due to tool permission conflicts in the conversation history. ([#10708](https://github.com/RooCodeInc/Roo-Code/pull/10708)) +* Fixes an issue where some LiteLLM routes could fail during native tool use because an unsupported tool-calling parameter was always being sent. ([#10671](https://github.com/RooCodeInc/Roo-Code/pull/10671)) +* Fixes an issue where Gemini-based providers could reject tool results when the tool output was empty, causing request validation errors mid-run. ([#10672](https://github.com/RooCodeInc/Roo-Code/pull/10672)) diff --git a/apps/docs/docs/update-notes/v3.41.0.mdx b/apps/docs/docs/update-notes/v3.41.0.mdx new file mode 100644 index 00000000000..8e809f426e3 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.41.0.mdx @@ -0,0 +1,32 @@ +--- +description: Adds OpenAI Codex access via OAuth subscriptions, expands OpenAI model options, and fixes stability issues. +keywords: + - roo code 3.41.0 + - new features + - bug fixes +image: /img/v3.41.0/v3.41.0.png +--- + +# Roo Code 3.41.0 Release Notes (2026-01-15) + +This release adds OpenAI Codex subscription access, expands OpenAI model choices, and improves stability. + +Roo Code v3.41.0 Release + +## OpenAI Codex provider with OAuth subscription access + +Adds the OpenAI Codex provider with subscription-based OAuth sign-in, so you can connect a ChatGPT Plus/Pro account to use Codex models without API keys or per-token billing. Just select `OpenAI - ChatGPT Plus/Pro` in the provider settings! ([#10736](https://github.com/RooCodeInc/Roo-Code/pull/10736)) + +## GPT-5.2-Codex model option for OpenAI (Native) + +Adds the GPT-5.2-Codex model to the OpenAI (Native) provider so you can select the coding-optimized model with its expanded context window and reasoning effort controls. ([#10731](https://github.com/RooCodeInc/Roo-Code/pull/10731)) + +## Bug Fixes + +* **Gemini sessions no longer fail after a provider switch**: Resolves a streaming error where LiteLLM Gemini tool calls could fail with corrupted thought signatures when switching models mid-task. ([#10743](https://github.com/RooCodeInc/Roo-Code/pull/10743)) +* **Long terminal runs no longer degrade memory**: Fixes a memory leak where large command outputs could keep growing buffers after completion, leading to gray screens during long sessions. ([#7666](https://github.com/RooCodeInc/Roo-Code/pull/7666)) + +## Misc Improvements + +* **End-to-end tests run reliably again**: Restores MCP and subtask coverage and fixes flaky tool tests so contributors can run CI-like checks locally and catch regressions earlier. (thanks ArchimedesCrypto, dcbartlett!) ([#10720](https://github.com/RooCodeInc/Roo-Code/pull/10720)) +* **Automated tests no longer stall on tool approvals**: Fixes a problem where MCP end-to-end tests could hang on manual approval prompts by auto-approving time server tools. (thanks ArchimedesCrypto!) ([#10733](https://github.com/RooCodeInc/Roo-Code/pull/10733)) diff --git a/apps/docs/docs/update-notes/v3.41.1.mdx b/apps/docs/docs/update-notes/v3.41.1.mdx new file mode 100644 index 00000000000..7970d843f6f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.41.1.mdx @@ -0,0 +1,40 @@ +--- +description: Improves Orchestrator cost visibility, enhances settings navigation, and fixes provider compatibility issues. +keywords: + - roo code 3.41.1 + - new features + - bug fixes + - provider updates +image: /img/v3.41.1/v3.41.1.png +--- + +# Roo Code 3.41.1 Release Notes (2026-01-16) + +This patch release improves Orchestrator cost visibility, makes settings navigation faster, and fixes multiple provider compatibility issues. + +Roo Code v3.41.1 Release + +## Aggregated Orchestrator subtask costs + +Orchestrator parent tasks now show a cumulative cost total that aggregates spend across the full subtask tree, making it easier to understand the true end-to-end cost of an orchestrated workflow at a glance. (thanks taltas!) ([#10757](https://github.com/RooCodeInc/Roo-Code/pull/10757)) + +## Settings search now includes tab titles + +Settings search now indexes tab/section titles (like “MCP” or “Providers”), so you can search for a section name and jump directly to the right part of the settings UI instead of hunting through individual settings. ([#10761](https://github.com/RooCodeInc/Roo-Code/pull/10761)) + +## QOL Improvements + +* Clarifies that Slack and Linear integrations are only available on the Roo Code Cloud Team plan, reducing confusion when comparing plans. ([#10748](https://github.com/RooCodeInc/Roo-Code/pull/10748)) + +## Bug Fixes + +* Fixes an issue where Anthropic native tool calling could fail with a 400 error after stream retries/reconnections due to duplicate tool call IDs. ([#10760](https://github.com/RooCodeInc/Roo-Code/pull/10760)) +* Fixes an issue where OpenAI Native streaming could drop tool identity fields mid-stream, causing tool calls to be missed or fail in some OpenAI-compatible streams. ([#10719](https://github.com/RooCodeInc/Roo-Code/pull/10719)) +* Fixes an issue where the OpenAI Responses API could reject tool calls when `call_id` exceeded the 64-character limit, preventing 400 validation errors during tool use. ([#10763](https://github.com/RooCodeInc/Roo-Code/pull/10763)) +* Fixes an issue where Gemini requests (for example via OpenRouter) could fail with thought-signature validation errors mid-task, improving reliability for Gemini tool-calling chats. ([#10694](https://github.com/RooCodeInc/Roo-Code/pull/10694)) +* Fixes an issue where Gemini requests could fail when a user message contained an empty text block, ensuring only non-empty content is sent while preserving images. ([#10728](https://github.com/RooCodeInc/Roo-Code/pull/10728)) +* Fixes an issue where some MCP tool schemas could be rejected by providers when they used top-level `anyOf`/`oneOf`/`allOf`, improving cross-provider tool schema compatibility. ([#10726](https://github.com/RooCodeInc/Roo-Code/pull/10726)) + +## Provider Updates + +* Prevents Ollama setups from offering models that can’t use native tool calling, avoiding loops where the model outputs tool JSON as text instead of actually invoking tools. ([#10735](https://github.com/RooCodeInc/Roo-Code/pull/10735)) diff --git a/apps/docs/docs/update-notes/v3.41.2.mdx b/apps/docs/docs/update-notes/v3.41.2.mdx new file mode 100644 index 00000000000..269a18a7f61 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.41.2.mdx @@ -0,0 +1,25 @@ +--- +description: Adds a Markdown preview button, fixes OpenAI Codex setup issues, and improves Gemini compatibility in LiteLLM. +keywords: + - roo code 3.41.2 + - new features + - bug fixes + - provider updates +--- + +# Roo Code 3.41.2 Release Notes (2026-01-16) + +This patch release makes long markdown replies easier to read, fixes OpenAI Codex setup issues, and improves Gemini compatibility in LiteLLM. + +## Open markdown replies in VS Code preview + +Markdown responses in chat can now be opened directly in VS Code’s Markdown Preview, making longer formatted replies easier to read and navigate without scrolling through the chat bubble. ([#10773](https://github.com/RooCodeInc/Roo-Code/pull/10773)) + +## Bug Fixes + +* Fixes an issue where OpenAI – ChatGPT Plus/Pro could incorrectly require an API key during setup, blocking you on provider selection even though it uses OAuth sign-in. ([#10786](https://github.com/RooCodeInc/Roo-Code/pull/10786)) +* Fixes an issue where the OpenAI Codex provider could keep an invalid model selection after switching providers, restoring a valid model choice automatically. ([#10777](https://github.com/RooCodeInc/Roo-Code/pull/10777)) + +## Provider Updates + +* Fixes an issue where Gemini requests routed through LiteLLM could fail when the model name contained spaces, improving compatibility for Gemini model group naming. ([#10787](https://github.com/RooCodeInc/Roo-Code/pull/10787)) diff --git a/apps/docs/docs/update-notes/v3.42.0.mdx b/apps/docs/docs/update-notes/v3.42.0.mdx new file mode 100644 index 00000000000..4c3ad72f6c9 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.42.0.mdx @@ -0,0 +1,44 @@ +--- +description: This release adds ChatGPT usage tracking for the OpenAI Codex provider, refreshes provider options and model selection UX, and improves reliability for prompts, exporting, and editing safety. +keywords: + - roo code 3.42.0 + - new features + - bug fixes +image: /img/v3.42.0/v3.42.0.png +--- + +# Roo Code 3.42.0 Release Notes (2026-01-22) + +This release adds ChatGPT usage tracking for the OpenAI Codex provider, refreshes provider options and model selection UX, and improves reliability for prompts, exporting, and editing safety. + +Roo Code v3.42.0 Release + +## QOL Improvements + +* Adds a usage limits dashboard in the OpenAI Codex provider so you can track your ChatGPT subscription usage and avoid unexpected slowdowns or blocks. ([#10813](https://github.com/RooCodeInc/Roo-Code/pull/10813)) +* Standardizes the model picker UI across providers, reducing friction when switching providers or comparing models. ([#10294](https://github.com/RooCodeInc/Roo-Code/pull/10294)) +* Warns you when too many MCP tools are enabled, helping you avoid bloated prompts and unexpected tool behavior. ([#10772](https://github.com/RooCodeInc/Roo-Code/pull/10772)) +* Makes exports easier to find by defaulting export destinations to your Downloads folder. ([#10882](https://github.com/RooCodeInc/Roo-Code/pull/10882)) +* Clarifies how linked `SKILL.md` files should be handled in prompts. ([#10907](https://github.com/RooCodeInc/Roo-Code/pull/10907)) + +## Bug Fixes + +* Fixes an issue where switching workspaces could temporarily show an empty Mode selector, making it harder to confirm which mode you’re in. ([#9674](https://github.com/RooCodeInc/Roo-Code/pull/9674)) +* Fixes a race condition where the context condensing prompt input could become inconsistent, improving reliability when condensing runs. ([#10876](https://github.com/RooCodeInc/Roo-Code/pull/10876)) +* Fixes an issue where OpenAI native and Codex handlers could emit duplicated text/reasoning, reducing repeated output in streaming responses. ([#10888](https://github.com/RooCodeInc/Roo-Code/pull/10888)) +* Fixes an issue where resuming a task via the IPC/bridge layer could abort unexpectedly, improving stability for resumed sessions. ([#10892](https://github.com/RooCodeInc/Roo-Code/pull/10892)) +* Fixes an issue where file restrictions were not enforced consistently across all editing tools, improving safety when using restricted workflows. ([#10896](https://github.com/RooCodeInc/Roo-Code/pull/10896)) +* Fixes an issue where a “custom condensing model” option could appear even when it was no longer supported, simplifying the condense configuration UI. ([#10901](https://github.com/RooCodeInc/Roo-Code/pull/10901)) +* Fixes gray-screen performance issues by avoiding redundant task history payloads during webview state updates. ([#10842](https://github.com/RooCodeInc/Roo-Code/pull/10842)) + +## Misc Improvements + +* Improves prompt formatting consistency by standardizing user content tags to ``. ([#10723](https://github.com/RooCodeInc/Roo-Code/pull/10723)) +* Removes legacy XML tool-calling support so new tasks use the native tool format only, reducing confusion and preventing mismatched tool formatting across providers. ([#10841](https://github.com/RooCodeInc/Roo-Code/pull/10841)) +* Refactors internal prompt plumbing by migrating the context condensing prompt into `customSupportPrompts`. ([#10881](https://github.com/RooCodeInc/Roo-Code/pull/10881)) + +## Provider Updates + +* Removes the deprecated Claude Code provider from the provider list. ([#10883](https://github.com/RooCodeInc/Roo-Code/pull/10883)) +* Enables prompt caching for the Cerebras `zai-glm-4.7` model to reduce latency and repeat costs on repeated prompts. ([#10670](https://github.com/RooCodeInc/Roo-Code/pull/10670)) +* Adds the Kimi K2 thinking model to the Vertex AI provider. ([#9269](https://github.com/RooCodeInc/Roo-Code/pull/9269)) diff --git a/apps/docs/docs/update-notes/v3.43.0.mdx b/apps/docs/docs/update-notes/v3.43.0.mdx new file mode 100644 index 00000000000..dda1d8116bc --- /dev/null +++ b/apps/docs/docs/update-notes/v3.43.0.mdx @@ -0,0 +1,44 @@ +--- +description: This release improves Intelligent Context Condensation, updates providers, and fixes export and settings issues. +keywords: + - roo code 3.43.0 + - new features + - bug fixes +image: /img/v3.43.0/v3.43.0.png +--- + +# Roo Code 3.43.0 Release Notes (2026-01-23) + +This release updates Intelligent Context Condensation, removes deprecated settings, and fixes export and settings issues. + +Roo Code v3.43.0 Release + +## Intelligent Context Condensation v2 + +Intelligent Context Condensation runs when the conversation is near the model’s context limit. It summarizes earlier messages instead of dropping them. After a condense, Roo continues from a single summary, not a mix of summary plus a long tail of older messages. If your task starts with a slash command, Roo preserves those slash-command-driven directives across condenses. Roo is less likely to break tool-heavy chats during a condense, which reduces failed requests and missing tool results. + +Settings changes: the Condense prompt editor is now under **Context Management** and Reset clears your override. Condensing uses the active conversation model/provider. There is no separate model/provider selector for condensing. + +([#10873](https://github.com/RooCodeInc/Roo-Code/pull/10873), [#10920](https://github.com/RooCodeInc/Roo-Code/pull/10920), [#10909](https://github.com/RooCodeInc/Roo-Code/pull/10909), [#10927](https://github.com/RooCodeInc/Roo-Code/pull/10927), [#10931](https://github.com/RooCodeInc/Roo-Code/pull/10931), [#10876](https://github.com/RooCodeInc/Roo-Code/pull/10876), [#10881](https://github.com/RooCodeInc/Roo-Code/pull/10881), [#10901](https://github.com/RooCodeInc/Roo-Code/pull/10901)) + +## QOL Improvements + +* Removes the unused “Enable concurrent file edits” experimental toggle to reduce settings clutter. ([#10925](https://github.com/RooCodeInc/Roo-Code/pull/10925)) +* Removes the experimental **Power Steering** setting (a deprecated experiment that no longer improves results). ([#10926](https://github.com/RooCodeInc/Roo-Code/pull/10926)) +* Removes obsolete diff/match-precision provider settings that no longer affect behavior. ([#10298](https://github.com/RooCodeInc/Roo-Code/pull/10298)) +* Adds a `pnpm install:vsix:nightly` command to make installing nightly VSIX builds easier. ([#10912](https://github.com/RooCodeInc/Roo-Code/pull/10912)) + +## Bug Fixes + +* Fixes an issue where MCP config files saved via the UI could be rewritten as a single minified line. Files are now pretty-printed. (thanks Michaelzag!) ([#9864](https://github.com/RooCodeInc/Roo-Code/pull/9864)) +* Fixes an issue where exporting tasks to Markdown could include `[Unexpected content type: thoughtSignature]` lines for some models. Exports are now clean. (thanks rossdonald!) ([#10932](https://github.com/RooCodeInc/Roo-Code/pull/10932)) +* Fixes an issue where the **Model** section could appear twice in the OpenAI Codex provider settings. ([#10930](https://github.com/RooCodeInc/Roo-Code/pull/10930)) + +## Misc Improvements + +* Removes legacy XML tool-calling code paths that are no longer used, reducing maintenance surface area. ([#10929](https://github.com/RooCodeInc/Roo-Code/pull/10929)) + +## Provider Updates + +* Updates Z.AI models with new variants and pricing metadata. (thanks ErdemGKSL!) ([#10860](https://github.com/RooCodeInc/Roo-Code/pull/10860)) +* Corrects Gemini 3 pricing for Flash and Pro models to match published pricing. (thanks rossdonald!) ([#10487](https://github.com/RooCodeInc/Roo-Code/pull/10487)) diff --git a/apps/docs/docs/update-notes/v3.44.0.mdx b/apps/docs/docs/update-notes/v3.44.0.mdx new file mode 100644 index 00000000000..e2cc2a60bfa --- /dev/null +++ b/apps/docs/docs/update-notes/v3.44.0.mdx @@ -0,0 +1,43 @@ +--- +description: This release improves worktree workflows, adds MCP configuration flexibility, and fixes context condensing issues. +keywords: + - roo code 3.44.0 + - new features + - bug fixes +image: /img/v3.44.0/v3.44.0.png +--- + +# Roo Code 3.44.0 Release Notes (2026-01-27) + +This release improves worktree workflows, adds MCP configuration flexibility, and fixes context condensing issues. + +Roo Code v3.44.0 Release + +## Worktrees + +Worktrees are easier to work with in chat. The Worktree selector is more prominent, creating a worktree takes fewer steps, and the Create Worktree flow is clearer (including a native folder picker), so it’s faster to spin up an isolated branch/workspace and switch between worktrees while you work. ([#10940](https://github.com/RooCodeInc/Roo-Code/pull/10940)) + +> **📚 Documentation**: See [Worktrees](/features/worktrees) for detailed usage. + +## QOL Improvements + +* Makes subtasks easier to find and navigate by improving parent/child visibility across History and Chat (including clearer “back to parent” navigation), so you can move between related tasks faster. ([#10864](https://github.com/RooCodeInc/Roo-Code/pull/10864)) +* Lets you auto-approve all tools from a trusted MCP server by using `alwaysAllow: ["*"]`, so you don’t have to list each tool name individually. ([#10948](https://github.com/RooCodeInc/Roo-Code/pull/10948)) +* Reduces token overhead in prompts by removing a duplicate MCP server/tools section from internal instructions, leaving more room for your conversation context. ([#10895](https://github.com/RooCodeInc/Roo-Code/pull/10895)) +* Improves Traditional Chinese (zh-TW) UI text for better clarity and consistency. (thanks PeterDaveHello!) ([#10953](https://github.com/RooCodeInc/Roo-Code/pull/10953)) + +## Bug Fixes + +* Fixes an issue where context condensing could accidentally pull in content that was already condensed earlier, which could reduce the effectiveness of long-conversation summaries. ([#10985](https://github.com/RooCodeInc/Roo-Code/pull/10985)) +* Fixes an issue where automatic context condensing could silently fail for VS Code LM API users when token counting returned 0 outside active requests, which could lead to unexpected context-limit errors. (thanks srulyt!) ([#10983](https://github.com/RooCodeInc/Roo-Code/pull/10983)) +* Fixes an issue where Roo didn’t record a successful truncation fallback when condensation failed, which could make Rewind restores unreliable after a condensing error. ([#10984](https://github.com/RooCodeInc/Roo-Code/pull/10984)) +* Fixes an issue where MCP tools with hyphens in their names could fail to resolve in native tool calling (for example when a provider/model rewrites `-` as `_`). (thanks hori-so!) ([#10775](https://github.com/RooCodeInc/Roo-Code/pull/10775)) +* Fixes an issue where tool calls could fail validation through AWS Bedrock when `toolUseId` exceeded Bedrock’s 64-character limit, improving reliability for longer tool-heavy sessions. ([#10902](https://github.com/RooCodeInc/Roo-Code/pull/10902)) +* Fixes an issue where Settings section headers could look transparent while scrolling, restoring an opaque background so the UI stays legible. ([#10951](https://github.com/RooCodeInc/Roo-Code/pull/10951)) +* Fixes a Fireworks provider type mismatch by removing unsupported model tool fields, keeping provider model metadata consistent and preventing breakage from schema changes. ([#10937](https://github.com/RooCodeInc/Roo-Code/pull/10937)) +* Fixes an issue where the `new_task` tool could miss creating a checkpoint before handing off, making task state more consistent and recoverable. ([#10982](https://github.com/RooCodeInc/Roo-Code/pull/10982)) +* Fixes an issue where leftover Power Steering experiment references could display raw translation keys in the UI. ([#10980](https://github.com/RooCodeInc/Roo-Code/pull/10980)) + +## Provider Updates + +* Adds the latest Fireworks models to the Fireworks provider’s model list. (thanks ThanhNguyxn!) ([#10679](https://github.com/RooCodeInc/Roo-Code/pull/10679)) diff --git a/apps/docs/docs/update-notes/v3.44.1.mdx b/apps/docs/docs/update-notes/v3.44.1.mdx new file mode 100644 index 00000000000..f58037e36f0 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.44.1.mdx @@ -0,0 +1,16 @@ +--- +description: This patch fixes LiteLLM + Amazon Bedrock proxy tool calling, adjusts Cerebras model defaults, and improves website deployment checks. +keywords: + - roo code 3.44.1 + - provider updates + - bug fixes +--- + +# Roo Code 3.44.1 Release Notes (2026-01-27) + +This patch fixes LiteLLM + Amazon Bedrock proxy tool calling, adjusts Cerebras model defaults, and improves website deployment checks. + +## Provider Updates + +* Fixes an issue where tool-enabled chats could fail when using LiteLLM as a proxy to Amazon Bedrock due to Bedrock tool call ID validation limits. ([#10990](https://github.com/RooCodeInc/Roo-Code/pull/10990)) +* Sets default sampling parameters for the Cerebras `zai-glm-4.7` model (temperature and top_p) so outputs are more consistent without extra configuration. (thanks sebastiand-cerebras!) ([#10945](https://github.com/RooCodeInc/Roo-Code/pull/10945)) diff --git a/apps/docs/docs/update-notes/v3.44.2.mdx b/apps/docs/docs/update-notes/v3.44.2.mdx new file mode 100644 index 00000000000..3691a69d012 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.44.2.mdx @@ -0,0 +1,25 @@ +--- +description: This patch re-enables the “Parallel tool calls” experiment and fixes worktree indexing and provider tool-calling issues. +keywords: + - roo code 3.44.2 + - experimental features + - bug fixes + - provider updates +--- + +# Roo Code 3.44.2 Release Notes (2026-01-27) + +This patch re-enables the “Parallel tool calls” experiment and fixes worktree indexing and provider tool-calling issues. + +## Parallel tool calls (Experimental) + +Re-enables parallel tool calling (with new_task isolation safeguards) so you can use the experimental “Parallel tool calls” setting again without breaking task delegation workflows. ([#11006](https://github.com/RooCodeInc/Roo-Code/pull/11006)) + +## Bug Fixes + +* Fixes an issue where Roo could fail to index code in worktrees stored inside hidden directories (for example `~/.roo/worktrees/`), which could break search and other codebase features in those worktrees. ([#11009](https://github.com/RooCodeInc/Roo-Code/pull/11009)) + +## Provider Updates + +* Fixes an issue where local Ollama models could be incorrectly flagged as unavailable due to validation running against an empty router model list. ([#10893](https://github.com/RooCodeInc/Roo-Code/pull/10893)) +* Fixes an issue where tools could appear twice when using OpenAI Responses API-based providers, reducing duplicate tool output and making results easier to follow. ([#11008](https://github.com/RooCodeInc/Roo-Code/pull/11008)) diff --git a/apps/docs/docs/update-notes/v3.44.mdx b/apps/docs/docs/update-notes/v3.44.mdx new file mode 100644 index 00000000000..45a8321f35e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.44.mdx @@ -0,0 +1,51 @@ +--- +description: This release improves worktree workflows, adds MCP configuration flexibility, and fixes context condensing and provider issues. +keywords: + - roo code 3.44 + - new features + - bug fixes +image: /img/v3.44.0/v3.44.0.png +--- + +# Roo Code 3.44 Release Notes (2026-01-27) + +This release improves worktree workflows, adds MCP configuration flexibility, and fixes context condensing and provider issues. + +Roo Code v3.44 Release + +## Worktrees + +Worktrees are easier to work with in chat. The Worktree selector is more prominent, creating a worktree takes fewer steps, and the Create Worktree flow is clearer (including a native folder picker), so it’s faster to spin up an isolated branch/workspace and switch between worktrees while you work. ([#10940](https://github.com/RooCodeInc/Roo-Code/pull/10940)) + +> **📚 Documentation**: See [Worktrees](/features/worktrees) for detailed usage. + +## Parallel tool calls (Experimental) + +Re-enables parallel tool calling (with new_task isolation safeguards) so you can use the experimental “Parallel tool calls” setting again without breaking task delegation workflows. ([#11006](https://github.com/RooCodeInc/Roo-Code/pull/11006)) + +## QOL Improvements + +* Makes subtasks easier to find and navigate by improving parent/child visibility across History and Chat (including clearer “back to parent” navigation), so you can move between related tasks faster. ([#10864](https://github.com/RooCodeInc/Roo-Code/pull/10864)) +* Lets you auto-approve all tools from a trusted MCP server by using `alwaysAllow: ["*"]`, so you don’t have to list each tool name individually. ([#10948](https://github.com/RooCodeInc/Roo-Code/pull/10948)) +* Reduces token overhead in prompts by removing a duplicate MCP server/tools section from internal instructions, leaving more room for your conversation context. ([#10895](https://github.com/RooCodeInc/Roo-Code/pull/10895)) +* Improves Traditional Chinese (zh-TW) UI text for better clarity and consistency. (thanks PeterDaveHello!) ([#10953](https://github.com/RooCodeInc/Roo-Code/pull/10953)) + +## Bug Fixes + +* Fixes an issue where context condensing could accidentally pull in content that was already condensed earlier, which could reduce the effectiveness of long-conversation summaries. ([#10985](https://github.com/RooCodeInc/Roo-Code/pull/10985)) +* Fixes an issue where automatic context condensing could silently fail for VS Code LM API users when token counting returned 0 outside active requests, which could lead to unexpected context-limit errors. (thanks srulyt!) ([#10983](https://github.com/RooCodeInc/Roo-Code/pull/10983)) +* Fixes an issue where Roo didn’t record a successful truncation fallback when condensation failed, which could make Rewind restores unreliable after a condensing error. ([#10984](https://github.com/RooCodeInc/Roo-Code/pull/10984)) +* Fixes an issue where MCP tools with hyphens in their names could fail to resolve in native tool calling (for example when a provider/model rewrites `-` as `_`). (thanks hori-so!) ([#10775](https://github.com/RooCodeInc/Roo-Code/pull/10775)) +* Fixes an issue where tool calls could fail validation through AWS Bedrock when `toolUseId` exceeded Bedrock’s 64-character limit, improving reliability for longer tool-heavy sessions. ([#10902](https://github.com/RooCodeInc/Roo-Code/pull/10902)) +* Fixes an issue where Settings section headers could look transparent while scrolling, restoring an opaque background so the UI stays legible. ([#10951](https://github.com/RooCodeInc/Roo-Code/pull/10951)) +* Fixes a Fireworks provider type mismatch by removing unsupported model tool fields, keeping provider model metadata consistent and preventing breakage from schema changes. ([#10937](https://github.com/RooCodeInc/Roo-Code/pull/10937)) +* Fixes an issue where the `new_task` tool could miss creating a checkpoint before handing off, making task state more consistent and recoverable. ([#10982](https://github.com/RooCodeInc/Roo-Code/pull/10982)) +* Fixes an issue where leftover Power Steering experiment references could display raw translation keys in the UI. ([#10980](https://github.com/RooCodeInc/Roo-Code/pull/10980)) +* Fixes an issue where Roo could fail to index code in worktrees stored inside hidden directories (for example `~/.roo/worktrees/`), which could break search and other codebase features in those worktrees. ([#11009](https://github.com/RooCodeInc/Roo-Code/pull/11009)) +## Provider Updates + +* Adds the latest Fireworks models to the Fireworks provider’s model list. (thanks ThanhNguyxn!) ([#10679](https://github.com/RooCodeInc/Roo-Code/pull/10679)) +* Fixes an issue where tool-enabled chats could fail when using LiteLLM as a proxy to Amazon Bedrock due to Bedrock tool call ID validation limits. ([#10990](https://github.com/RooCodeInc/Roo-Code/pull/10990)) +* Sets default sampling parameters for the Cerebras `zai-glm-4.7` model (temperature and top_p) so outputs are more consistent without extra configuration. (thanks sebastiand-cerebras!) ([#10945](https://github.com/RooCodeInc/Roo-Code/pull/10945)) +* Fixes an issue where local Ollama models could be incorrectly flagged as unavailable due to validation running against an empty router model list. ([#10893](https://github.com/RooCodeInc/Roo-Code/pull/10893)) +* Fixes an issue where tools could appear twice when using OpenAI Responses API-based providers, reducing duplicate tool output and making results easier to follow. ([#11008](https://github.com/RooCodeInc/Roo-Code/pull/11008)) diff --git a/apps/docs/docs/update-notes/v3.45.0.mdx b/apps/docs/docs/update-notes/v3.45.0.mdx new file mode 100644 index 00000000000..c7db5b7e851 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.45.0.mdx @@ -0,0 +1,25 @@ +--- +description: This release adds Smart Code Folding so context condensing preserves a lightweight map of the code you were working on. +image: /img/v3.45.0/v3.45.0.png +keywords: + - roo code 3.45.0 + - smart code folding + - context condensing + - new features +--- + +# Roo Code 3.45.0 Release Notes (2026-01-28) + +This release adds Smart Code Folding so context condensing preserves a lightweight map of the code you were working on. + +Roo Code v3.45.0 Release + +## Smart Code Folding + +When Roo condenses a long conversation, it now keeps a lightweight “code outline” for recently used files—things like function signatures, class declarations, and type definitions—so you can keep referring to code accurately after condensing without re-sharing files. (thanks shariqriazz!) ([#10942](https://github.com/RooCodeInc/Roo-Code/pull/10942)) + +> **📚 Documentation**: See [Intelligent Context Condensing](/features/intelligent-context-condensing) for details on configuring and using context condensing. diff --git a/apps/docs/docs/update-notes/v3.7.0.md b/apps/docs/docs/update-notes/v3.7.0.md new file mode 100644 index 00000000000..17e5fb50c0f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.0.md @@ -0,0 +1,13 @@ +--- +description: This release introduces support for Claude Sonnet 3.7. +--- + +# Roo Code 3.7.0 Release Notes (2025-02-24) + +This release introduces support for Claude Sonnet 3.7. + +--- + +## Provider Updates + +- Added support for the Claude Sonnet 3.7 model, which shows improvements in front-end/full-stack development, agentic workflows, math, coding, and instruction-following. (thanks lupuletic, cte!) diff --git a/apps/docs/docs/update-notes/v3.7.1.md b/apps/docs/docs/update-notes/v3.7.1.md new file mode 100644 index 00000000000..faaa18b793e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.1.md @@ -0,0 +1,22 @@ +--- +description: Roo Code 3.7.1 adds AWS Bedrock support for Claude Sonnet 3.7 and updates default model selections to use Sonnet 3.7 instead of 3.5 where applicable. +keywords: + - roo code 3.7.1 + - aws bedrock + - claude sonnet 3.7 + - anthropic + - model update + - default model + - ai assistant +--- + +# Roo Code 3.7.1 Release Notes (2025-02-24) + +This release adds AWS Bedrock support for Claude Sonnet 3.7. + +--- + +## Provider Updates + +- Added AWS Bedrock support for Claude Sonnet 3.7. +- Updated default model selections to use Sonnet 3.7 instead of 3.5 where applicable. diff --git a/apps/docs/docs/update-notes/v3.7.10.md b/apps/docs/docs/update-notes/v3.7.10.md new file mode 100644 index 00000000000..5467a8ddf21 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.10.md @@ -0,0 +1,15 @@ +--- +description: This release adds support for Mermaid diagrams, expands model options, and introduces mode switching shortcuts. +--- + +# Roo Code 3.7.10 Release Notes (2025-03-01) + +This release adds support for Mermaid diagrams, expands model options, and introduces mode switching shortcuts. + +--- + +## Feature Highlights + +- **Mermaid Diagrams Support:** Added support for rendering Mermaid diagrams directly in chat conversations. (thanks Cline!) +- **Vertex AI Gemini Models:** Added Gemini models on Vertex AI provider. (thanks ashktn!) +- **Mode Switching Shortcuts:** Introduced keyboard shortcuts for switching between modes. Click the mode popup menu to view available shortcuts. (thanks aheizi!) diff --git a/apps/docs/docs/update-notes/v3.7.11.md b/apps/docs/docs/update-notes/v3.7.11.md new file mode 100644 index 00000000000..591c7adc4bf --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.11.md @@ -0,0 +1,15 @@ +--- +description: This patch release includes fixes for model compatibility and mode handling. +--- + +# Roo Code 3.7.11 Release Notes (2025-03-02) + +This patch release includes fixes for model compatibility and mode handling. + +--- + +## Updates & Fixes + +- Fixed compatibility issues with some Claude models. +- Included custom modes in the mode switching keyboard shortcut list. +- Supported read-only modes that can still execute commands. diff --git a/apps/docs/docs/update-notes/v3.7.12.md b/apps/docs/docs/update-notes/v3.7.12.md new file mode 100644 index 00000000000..75e171b45df --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.12.md @@ -0,0 +1,40 @@ +--- +description: Roo Code 3.7.12 expands thinking model capabilities to 128k tokens, improves context management with Anthropic count_tokens API, and adds browser tool controls. +keywords: + - roo code 3.7.12 + - thinking models + - 128k tokens + - context management + - anthropic api + - browser tool + - openrouter compression + - release notes +--- + +# Roo Code 3.7.12 Release Notes (2025-03-03) + +This release enhances context handling, thinking capabilities, and configuration options. + +--- + +## Thinking & Context Management + +- Expanded max tokens for thinking models to 128k and max thinking budget to over 100k. (thanks monotykamary!) +- Used the `count_tokens` API in the Anthropic provider for more accurate context window management. +- Defaulted middle-out compression to 'on' for OpenRouter. +- Excluded MCP instructions from the prompt if the mode doesn't support MCP. + +--- + +## Configuration Improvements + +- Added a checkbox to disable the browser tool. +- Showed a warning if checkpoints are taking too long to load. +- Updated the warning text for the VS Code Language Models API. + +--- + +## Bug Fixes + +- Fixed an issue where the keyboard mode switcher wasn't updating the API profile. (thanks aheizi!) +- Correctly populated the default OpenRouter model on the welcome screen. diff --git a/apps/docs/docs/update-notes/v3.7.2.md b/apps/docs/docs/update-notes/v3.7.2.md new file mode 100644 index 00000000000..73574ff7f25 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.2.md @@ -0,0 +1,24 @@ +--- +description: Roo Code 3.7.2 fixes computer use and prompt caching for OpenRouter's Claude 3.7, resolves context window overflows, and encourages diff editing in prompts. +keywords: + - roo code 3.7.2 + - claude sonnet 3.7 + - openrouter + - computer use + - prompt caching + - sliding window + - diff editing + - bug fixes +--- + +# Roo Code 3.7.2 Release Notes (2025-02-24) + +This patch release includes fixes related to Claude Sonnet 3.7 integration and prompt adjustments. + +--- + +## Bug Fixes & Improvements + +- Fixed computer use and prompt caching for OpenRouter's `anthropic/claude-3.7-sonnet:beta`. (thanks cte!) +- Fixed sliding window calculations for Sonnet 3.7 that were causing context window overflows. (thanks cte!) +- Encouraged diff editing more strongly in the system prompt. (thanks hannesrudolph!) diff --git a/apps/docs/docs/update-notes/v3.7.3.md b/apps/docs/docs/update-notes/v3.7.3.md new file mode 100644 index 00000000000..6aac1222c0f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.3.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.7.3 adds support for Claude Sonnet 3.7's extended "Thinking" capability via Anthropic API, allowing more tokens for internal reasoning on complex tasks. +keywords: + - roo code 3.7.3 + - claude sonnet 3.7 + - extended thinking + - anthropic api + - reasoning tokens + - complex tasks + - ai reasoning +--- + +# Roo Code 3.7.3 Release Notes (2025-02-25) + +This release introduces support for Claude Sonnet 3.7's extended "Thinking" capability via the Anthropic API. + +--- + +## Feature Highlights + +- **Extended "Thinking" Support:** Added support for extended ["Thinking"](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking) with Claude Sonnet 3.7 via the Anthropic provider. This allows the model to allocate more tokens to internal reasoning for complex tasks, potentially improving response quality. (thanks cte!) diff --git a/apps/docs/docs/update-notes/v3.7.4.md b/apps/docs/docs/update-notes/v3.7.4.md new file mode 100644 index 00000000000..92d47e4543c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.4.md @@ -0,0 +1,13 @@ +--- +description: This release includes minor bug fixes and performance improvements. +--- + +# Roo Code 3.7.4 Release Notes (2025-02-25) + +This patch release addresses a bug related to profile switching. + +--- + +## Bug Fixes + +- Fixed a bug that prevented the "Thinking" setting from properly updating when switching API configuration profiles. diff --git a/apps/docs/docs/update-notes/v3.7.5.md b/apps/docs/docs/update-notes/v3.7.5.md new file mode 100644 index 00000000000..b581e0decb8 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.5.md @@ -0,0 +1,27 @@ +--- +description: This release includes important updates to model configuration for thinking models and bug fixes. +--- + +# Roo Code 3.7.5 Release Notes (2025-02-26) + +This release includes important updates to model configuration for thinking models and bug fixes. + +--- + +## Model Configuration Updates + +- **Thinking Model Versions:** Introduced separate `:thinking` versions for Anthropic and OpenRouter Sonnet 3.7 models to support configurable thinking budgets. Users previously using the thinking feature need to select these new model versions in their provider settings and adjust the thinking budget slider as needed. + +--- + +## Bug Fixes + +- Fixed context window calculation errors ("input length and max_tokens exceed context limit"). +- Fixed various issues with the model picker UI. (thanks System233!) +- Fixed model input/output cost parsing. (thanks System233!) + +--- + +## Feature Highlights + +- Added the ability to @-mention files by holding Shift while dragging them from the File Explorer into the chat input. diff --git a/apps/docs/docs/update-notes/v3.7.6.md b/apps/docs/docs/update-notes/v3.7.6.md new file mode 100644 index 00000000000..afde4c20590 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.6.md @@ -0,0 +1,30 @@ +--- +description: Roo Code 3.7.6 adds multi-file drag-and-drop support, configurable output tokens for thinking models, improves long text handling, and enhances OpenRouter error messages. +keywords: + - roo code 3.7.6 + - multi-file drag drop + - thinking models + - output tokens + - search files truncation + - openrouter errors + - long text handling +--- + +# Roo Code 3.7.6 Release Notes (2025-02-26) + +This release introduces multi-file drag-and-drop, configurable output tokens for thinking models, and bug fixes. + +--- + +## Feature Highlights + +- Added support for dragging and dropping multiple files into the chat input. +- Added a slider to control the maximum output tokens specifically for thinking models. + +--- + +## Bug Fixes + +- Improved handling of very long text in chat messages. (thanks joemanley201!) +- Truncated `search_files` output to prevent potential extension crashes. +- Improved OpenRouter error handling (replaced generic "Provider Error"). diff --git a/apps/docs/docs/update-notes/v3.7.7.md b/apps/docs/docs/update-notes/v3.7.7.md new file mode 100644 index 00000000000..51609f6c4df --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.7.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.7.7 graduates Checkpoints out of beta, enabling automatic project change tracking by default, plus fixes for Enhance Prompt and UI tooltips. +keywords: + - roo code 3.7.7 + - checkpoints feature + - project tracking + - enhance prompt fix + - thinking sonnet + - ui tooltips + - release notes +--- + +# Roo Code 3.7.7 Release Notes (2025-02-27) + +This release graduates the Checkpoints feature out of beta and includes minor fixes and UX tweaks. + +--- + +## Feature Highlights + +- **Checkpoints Enabled by Default:** The Checkpoints feature, which automatically tracks project changes during tasks for review or rollback, is now enabled by default. It can be disabled in Advanced Settings. + +--- + +## Bug Fixes & UX Tweaks + +- Fixed the "Enhance Prompt" button functionality when using Thinking Sonnet models. +- Added tooltips to various buttons for clarity. diff --git a/apps/docs/docs/update-notes/v3.7.8.md b/apps/docs/docs/update-notes/v3.7.8.md new file mode 100644 index 00000000000..4ebc7d4a17a --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.8.md @@ -0,0 +1,28 @@ +--- +description: Roo Code 3.7.8 adds GPT-4.5 Preview support, Vertex AI prompt caching for Claude, and advanced custom system prompt capabilities for power users. +keywords: + - roo code 3.7.8 + - gpt-4.5 preview + - vertex ai + - claude prompt caching + - custom system prompts + - advanced features + - release notes +--- + +# Roo Code 3.7.8 Release Notes (2025-02-27) + +This release adds support for GPT-4.5 Preview, Claude optimizations, and an advanced system prompt customization feature. + +--- + +## Provider & Model Support + +- Added support for `gpt-4.5-preview`. +- Added Vertex AI prompt caching support for Claude models. (thanks aitoroses, lupuletic!) + +--- + +## Advanced Feature + +- **Custom System Prompts (Advanced Users Only):** Added the ability to completely replace the system prompt for modes by creating a file at `.roo/system-prompt-[slug]` in the workspace. **Warning:** This bypasses built-in safeguards and carries a high risk of unexpected behavior. Use with extreme caution. diff --git a/apps/docs/docs/update-notes/v3.7.9.md b/apps/docs/docs/update-notes/v3.7.9.md new file mode 100644 index 00000000000..7082a95832b --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.9.md @@ -0,0 +1,27 @@ +--- +description: Roo Code 3.7.9 improves context window management, fixes terminal output parsing, adds Claude Sonnet 3.7 thinking support, and enhances UI elements. +keywords: + - roo code 3.7.9 + - context management + - terminal parsing + - claude sonnet 3.7 + - vertex ai thinking + - ui improvements + - release notes +--- + +# Roo Code 3.7.9 Release Notes (2025-03-01) + +This release includes smarter context management, terminal parsing improvements, and UI enhancements. + +--- + +## Improvements & Fixes + +- Implemented smarter context window management to reduce context limit errors. +- Improved terminal output parsing logic to work around a VSCode bug affecting command output visibility. (thanks KJ7LNW!) +- Added support for Claude Sonnet 3.7 thinking via Vertex AI. (thanks lupuletic!) +- Fixed `maxTokens` defaults for Claude 3.7 Sonnet models. +- Fixed UI dropdown hover colors. (thanks SamirSaji!) +- Improved appearance of thinking blocks. +- Enhanced the delete task confirmation dialog. diff --git a/apps/docs/docs/update-notes/v3.7.md b/apps/docs/docs/update-notes/v3.7.md new file mode 100644 index 00000000000..74d9605589f --- /dev/null +++ b/apps/docs/docs/update-notes/v3.7.md @@ -0,0 +1,78 @@ +--- +description: Roo Code 3.7 introduces Claude Sonnet 3.7 support, expanded thinking models with 128k tokens, Mermaid diagrams, keyboard shortcuts, and numerous improvements. +keywords: + - roo code 3.7 + - claude sonnet 3.7 + - thinking models + - mermaid diagrams + - keyboard shortcuts + - vertex ai + - openrouter + - release notes +--- + +# Roo Code 3.7 Release Notes (2025-03-03) + +This release cycle introduces Roo Code 3.7 with Claude Sonnet 3.7 support, expanded model capabilities (including "Thinking" Sonnet and increased token limits), Vertex AI enhancements, improved context window management, UI refinements like Mermaid diagrams and drag-and-drop, and numerous bug fixes. + +--- + +## Provider Updates & Model Enhancements + +- **Claude Sonnet 3.7 Support:** Introduced support for Claude Sonnet 3.7 across Anthropic, Vertex AI (including "Thinking" mode), and AWS Bedrock providers. Updated some defaults to Sonnet 3.7. (thanks lupuletic, cte, aitoroses!) +- **Expanded Model Capabilities:** + - Increased max tokens for thinking models to 128k and max thinking budget to over 100k. (thanks monotykamary!) + - Added a slider to control max output tokens for thinking models. + - Enabled the "Thinking Budget" slider for Claude 3.7 Sonnet on OpenRouter. +- **Vertex AI:** + - Added Gemini models on Vertex AI. (thanks ashktn!) + - Added prompt caching support for Claude models on Vertex AI. (thanks aitoroses, lupuletic!) +- **OpenRouter:** + - Defaulted middle-out compression to on. + - Correctly populated the default OpenRouter model on the welcome screen. + - Improved error handling (no more "Provider Error"). +- **Anthropic:** Used the `count_tokens` API for more accurate context window management. +- **OpenAI:** Added `gpt-4.5-preview`. + +--- + +## QOL Improvements & UI Enhancements + +- **Keyboard Shortcuts:** Added keyboard shortcuts to switch modes, including custom modes. (thanks aheizi!) +- **Mermaid Diagram Support:** Added support for rendering Mermaid diagrams in chat. (thanks Cline!) +- **Drag-and-Drop:** Supported dragging and dropping multiple files into the chat. +- **Context Window Management:** Implemented smarter context window management and fixed truncation math. +- **UI Refinements:** + - Enhanced delete task confirmation. + - Prettier thinking blocks. + - Fixed dropdown hover colors. (thanks SamirSaji!) + - Added tooltips for button clarity. + - Improved handling of long text in ChatRow. (thanks joemanley201!) +- **System Prompt Customization:** Added an advanced feature to customize the system prompt. +- **Checkpoints:** Graduated checkpoints out of beta and added warnings for slow loading. +- **Browser Tool:** Added a checkbox to disable the browser tool. + +--- + +## Bug Fixes + +- Fixed issue where keyboard mode switcher wasn't updating API profile. (thanks aheizi!) +- Fixed maxTokens defaults for Claude 3.7 Sonnet models. +- Fixed "Thinking" setting not updating when switching profiles. +- Fixed computer use and prompt caching for OpenRouter's `anthropic/claude-3.7-sonnet:beta`. (thanks cte!) +- Fixed sliding window calculations for Sonnet 3.7. (thanks cte!) +- Fixed enhance prompt button when using Thinking Sonnet. +- Fixed various issues with the model picker. (thanks System233!) +- Fixed model input / output cost parsing. (thanks System233!) +- Fixed terminal output parsing improvements. (thanks KJ7LNW!) +- Fixed custom max tokens not being honored for non-thinking models. + +--- + +## Misc Improvements + +- Encouraged diff editing more strongly in the system prompt. (thanks hannesrudolph!) +- Excluded MCP instructions from the prompt if the mode doesn't support MCP. +- Updated the warning text for the VS LM API. +- Supported read-only modes that can run commands. +- Truncated `search_files` output to prevent crashes. diff --git a/apps/docs/docs/update-notes/v3.8.0.md b/apps/docs/docs/update-notes/v3.8.0.md new file mode 100644 index 00000000000..0f3af383b45 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.0.md @@ -0,0 +1,52 @@ +--- +description: Roo Code 3.8.0 introduces Boomerang Tasks for automated handoffs, multi-block diff editing, multi-window support, .rooignore, Human Relay provider, and opt-in telemetry. +keywords: + - roo code 3.8.0 + - boomerang tasks + - multi-block diff + - multi-window support + - rooignore + - human relay + - telemetry + - release notes +--- + +# Roo Code 3.8.0 Release Notes (2025-03-07) + +This major release introduces Boomerang Tasks, multi-block diff editing, multi-window support, `.rooignore`, Human Relay provider, and opt-in telemetry, alongside numerous improvements and fixes. + +--- + +## Feature Highlights + +- **Boomerang Tasks:** When using the `new_task` tool, child tasks now return a summary to the parent task upon completion, enabling automated hand-offs and results retrieval. (thanks shaybc!) +- **Multi-Block Diff Strategy (Experimental):** Added a new experimental diff editing strategy that applies multiple diff edits simultaneously for potentially faster and more complex changes. (thanks qdaxb!) +- **Multi-Window Support:** Roo Code can now run in multiple VS Code editor windows simultaneously. (thanks samhvw8!) +- **.rooignore Support:** Added support for a `.rooignore` file to prevent Roo Code from reading/writing specified files, with an option to exclude them from search/list results as well. (thanks mrubens, Cline!) +- **Human Relay Provider:** Introduced a new provider allowing manual copying of information to a Web AI and pasting the response back into Roo Code when direct integration isn't possible. (thanks NyxJae!) +- **Telemetry (Opt-in):** Added opt-in telemetry to collect anonymous usage data, helping improve Roo Code faster. Can be disabled anytime. [Privacy Policy](https://github.com/RooCodeInc/Roo-Code/blob/main/PRIVACY.md). (thanks mrubens, Cline!) + +--- + +## UX Improvements + +- Redesigned the settings page for easier navigation. (thanks cte!) +- Made checkpoints asynchronous and excluded more files to speed them up. (thanks cte!) +- Improved UI for mode/provider selectors in chat. (thanks mrubens!) +- Improved styling of task headers. (thanks monotykamary!) + +--- + +## Provider Support + +- Added credential-based authentication for Vertex AI, allowing easy switching between Google Cloud accounts. (thanks eonghk!) +- Updated the DeepSeek provider with the correct `baseUrl` and fixed caching tracking. (thanks olweraltuve!) +- Added observability for OpenAI providers. (thanks refactorthis!) +- Supported speculative decoding for LM Studio local models. (thanks adamwlarson!) + +--- + +## Bug Fixes + +- Fixed terminal overload issues ("gray screen of death") and other terminal problems. (thanks cte!) +- Improved context mention path handling on Windows. (thanks samhvw8!) diff --git a/apps/docs/docs/update-notes/v3.8.1.md b/apps/docs/docs/update-notes/v3.8.1.md new file mode 100644 index 00000000000..fe6ae415f61 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.1.md @@ -0,0 +1,29 @@ +--- +description: Roo Code 3.8.1 improves context window visualization, configuration profile UI, and fixes bugs with custom temperature, decimal prices, and enhance prompt features. +keywords: + - roo code 3.8.1 + - context window + - configuration profile + - temperature fix + - decimal prices + - enhance prompt + - telemetry + - release notes +--- + +# Roo Code 3.8.1 Release Notes (2025-03-07) + +This patch release includes UI improvements, bug fixes, and added telemetry. + +--- + +## Improvements & Fixes + +- Showed the reserved output tokens in the context window visualization. +- Improved the UI of the configuration profile dropdown. (thanks DeXtroTip!) +- Fixed a bug where custom temperature could not be unchecked. (thanks System233!) +- Fixed a bug where decimal prices could not be entered for OpenAI-compatible providers. (thanks System233!) +- Fixed a bug with the enhance prompt feature on Sonnet 3.7 with a high thinking budget. (thanks moqimoqidea!) +- Fixed a bug with context window management for thinking models. (thanks ReadyPlayerEmma!) +- Fixed a bug where checkpoints were no longer enabled by default. +- Added extension and VSCode versions to telemetry data. diff --git a/apps/docs/docs/update-notes/v3.8.2.md b/apps/docs/docs/update-notes/v3.8.2.md new file mode 100644 index 00000000000..da2a7ae217c --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.2.md @@ -0,0 +1,31 @@ +--- +description: Roo Code 3.8.2 adds auto-approval toggle for Boomerang Tasks, progress indicators for multi-diff editing, o3-mini support, and fixes encoding issues. +keywords: + - roo code 3.8.2 + - auto-approval + - boomerang tasks + - subtasks + - o3-mini + - multi-diff progress + - encoding fix + - release notes +--- + +# Roo Code 3.8.2 Release Notes (2025-03-08) + +This release introduces auto-approval for subtasks, UI improvements, and bug fixes. + +--- + +## Feature Highlights + +- Added an auto-approval toggle for Boomerang Task (subtask) creation and completion. (thanks shaybc!) +- Added a progress indicator when using the multi-diff editing strategy. (thanks qdaxb!) +- Added `o3-mini` support to the OpenAI-compatible provider. (thanks yt3trees!) + +--- + +## Bug Fixes + +- Fixed an encoding issue causing unreadable characters at the beginning of files sometimes. +- Fixed an issue where settings dropdowns were truncated in some cases. diff --git a/apps/docs/docs/update-notes/v3.8.3.md b/apps/docs/docs/update-notes/v3.8.3.md new file mode 100644 index 00000000000..8b050b6fa53 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.3.md @@ -0,0 +1,13 @@ +--- +description: This release includes bug fixes for checkpoints and UI improvements. +--- + +# Roo Code 3.8.3 Release Notes (2025-03-09) + +This patch release addresses a UI issue. + +--- + +## Bug Fixes + +- Fixed an issue where the VS Code LM API model picker dropdown was truncated. diff --git a/apps/docs/docs/update-notes/v3.8.4.md b/apps/docs/docs/update-notes/v3.8.4.md new file mode 100644 index 00000000000..c8c96619b65 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.4.md @@ -0,0 +1,21 @@ +--- +description: Roo Code 3.8.4 temporarily rolls back multi-diff progress indicator and adds option to disable custom mode instructions for token savings. +keywords: + - roo code 3.8.4 + - multi-diff rollback + - custom mode instructions + - token savings + - prompts tab + - release notes +--- + +# Roo Code 3.8.4 Release Notes (2025-03-09) + +This patch release includes a temporary rollback and a new prompt option. + +--- + +## Updates + +- Rolled back the multi-diff progress indicator temporarily to fix a double-confirmation issue when saving edits. +- Added an option in the Prompts tab to disable instructions for creating/editing custom modes, saving tokens. (thanks hannesrudolph!) diff --git a/apps/docs/docs/update-notes/v3.8.5.md b/apps/docs/docs/update-notes/v3.8.5.md new file mode 100644 index 00000000000..56d2f58d6c7 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.5.md @@ -0,0 +1,56 @@ +--- +description: Roo Code 3.8.5 features major terminal architecture improvements, MCP over SSE support, remote browser connectivity, and expanded provider capabilities. +keywords: + - roo code 3.8.5 + - terminal refactor + - mcp sse + - remote browser + - deepseek r1 + - gemini baseurl + - openai compatible + - release notes +--- + +# Roo Code 3.8.5 Release Notes (2025-03-12) + +This release introduces significant refactoring, remote browser support, MCP over SSE, and various provider/model updates. + +--- + +## Feature Highlights + +- **Terminal Architecture Refactor:** Addressed critical issues with the terminal architecture for improved stability and performance. (thanks KJ7LNW!) +- **MCP over SSE:** Added support for Model Context Protocol (MCP) communication over Server-Sent Events (SSE). (thanks aheizi!) +- **Remote Browser Support:** Added the ability to connect to a remote Chrome browser instance. (thanks afshawnlotfi!) + +--- + +## Provider & Model Support + +- Added custom `baseUrl` support for Google AI Studio Gemini. (thanks dqroid!) +- Added OpenAI-compatible DeepSeek/QwQ reasoning support. (thanks lightrabbit!) +- Added Anthropic-style prompt caching in the OpenAI-compatible provider. (thanks dleen!) +- Added Deepseek R1 model for AWS Bedrock. (thanks ATempsch!) +- Added `gemini-2.0-pro-exp-02-05` model to Vertex AI provider. (thanks shohei-ihaya!) +- Added support for custom ARNs in AWS Bedrock. (thanks Smartsheet-JB-Brown!) +- Updated Bedrock prices to the latest. (thanks Smartsheet-JB-Brown!) + +--- + +## Improvements & Fixes + +- Preserved parent-child relationship when cancelling Boomerang Tasks (subtasks). (thanks cannuri!) +- Added PowerShell-specific command handling. (thanks KJ7LNW!) +- Fixed MarkdownBlock text color for Dark High Contrast theme. (thanks cannuri!) +- Brought back progress status indicator for multi-diff edits. (thanks qdaxb!) +- Refactored alert dialog styles to use the correct VSCode theme. (thanks cannuri!) +- Updated MCP servers directory path for platform compatibility. (thanks hannesrudolph!) +- Fixed browser system prompt inclusion rules. (thanks cannuri!) +- Fixed OpenAI-style cost calculations. (thanks dtrugman!) +- Fixed issue allowing use of an excluded directory as the working directory. (thanks Szpadel!) +- Added Kotlin language support in `list_code_definition_names` tool. (thanks kohii!) +- Improved handling of diff application errors. (thanks qdaxb!) +- Fixed OpenRouter custom `baseUrl` support. +- Fixed usage tracking for SiliconFlow and other providers that include usage on every chunk. +- Added telemetry for checkpoint save/restore/diff and diff strategies. +- Published git tags to GitHub from CI. (thanks pdecat!) diff --git a/apps/docs/docs/update-notes/v3.8.6.md b/apps/docs/docs/update-notes/v3.8.6.md new file mode 100644 index 00000000000..03ccf408c3e --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.6.md @@ -0,0 +1,13 @@ +--- +description: This patch release temporarily reverts a feature for stability. +--- + +# Roo Code 3.8.6 Release Notes (2025-03-13) + +This patch release temporarily reverts a feature for stability. + +--- + +## Updates + +- Reverted SSE MCP support temporarily while investigating configuration validation issues. diff --git a/apps/docs/docs/update-notes/v3.8.md b/apps/docs/docs/update-notes/v3.8.md new file mode 100644 index 00000000000..d2527e59231 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.8.md @@ -0,0 +1,81 @@ +--- +description: This release cycle introduces opt-in telemetry, significant terminal architecture improvements, a multi-diff editing strategy, .rooignore support, and a redesigned settings page, alongside numerous provider updates and bug fixes. +--- + +# Roo Code 3.8 Release Notes (2025-03-13) + +This release cycle introduces opt-in telemetry, significant terminal architecture improvements, a multi-diff editing strategy, `.rooignore` support, and a redesigned settings page, alongside numerous provider updates and bug fixes. + +--- + +## Key Features & Enhancements + +- **Opt-in Telemetry:** Added opt-in telemetry to help improve Roo Code faster. (thanks Cline!) +- **Terminal Architecture Refactor:** Major refactor of the terminal architecture to address critical issues, including terminal overload and gray screen problems. (thanks @KJ7LNW!) +- **Multi-Diff Editing Strategy (Experimental):** Introduced a new experimental diff editing strategy that applies multiple diff edits at once. (thanks @qdaxb!) +- **`.rooignore` Support:** Added support for a `.rooignore` file to prevent Roo Code from reading/writing specified files, with an option to exclude them from search/lists. (thanks Cline!) +- **Redesigned Settings Page:** The settings page has been redesigned for easier navigation. +- **New Task Tool Enhancements:** The `new_task` tool now returns results to the parent task on completion for better orchestration. (thanks @shaybc!) +- **Simultaneous Roo Instances:** Support for running Roo Code in multiple editor windows simultaneously. (thanks @samhvw8!) +- **Asynchronous Checkpoints:** Checkpoints are now asynchronous and exclude more files to speed them up. +- **Human Relay Provider:** Added a new "Human Relay" provider to manually copy information to a Web AI and paste the response back. (thanks @NyxJae!) +- **MCP over SSE:** Support for MCP (Mode Communication Protocol) over Server-Sent Events. (thanks @aheizi!) +- **Remote Browser Connections:** Support for remote browser connections. (thanks @afshawnlotfi!) +- **Auto-Approval for Subtasks:** Added an auto-approval toggle for subtask creation and completion. (thanks @shaybc!) + +--- + +## Provider Updates + +- **Vertex AI Credential-Based Auth:** Added credential-based authentication for Vertex AI. (thanks @eonghk!) +- **DeepSeek Provider Updates:** Updated DeepSeek provider with correct baseUrl and caching. (thanks @olweraltuve!) +- **OpenAI Observability:** Added observability for OpenAI providers. (thanks @refactorthis!) +- **LM Studio Speculative Decoding:** Supported speculative decoding for LM Studio local models. (thanks @adamwlarson!) +- **PowerShell Command Handling:** PowerShell-specific command handling. (thanks @KJ7LNW!) +- **OpenAI-Compatible DeepSeek/QwQ Reasoning:** Support for reasoning with DeepSeek/QwQ via OpenAI-compatible provider. (thanks @lightrabbit!) +- **Anthropic-Style Prompt Caching (OpenAI-Compatible):** Added Anthropic-style prompt caching in the OpenAI-compatible provider. (thanks @dleen!) +- **Deepseek R1 for AWS Bedrock:** Added Deepseek R1 support for AWS Bedrock. (thanks @ATempsch!) +- **Gemini 2.0 Pro Exp (Vertex):** Added `gemini-2.0-pro-exp-02-05` model to Vertex. (thanks @shohei-ihaya!) +- **Custom ARNs in AWS Bedrock:** Support for custom ARNs in AWS Bedrock. (thanks @Smartsheet-JB-Brown!) +- **o3-mini Support (OpenAI-Compatible):** Added o3-mini support to the OpenAI-compatible provider. (thanks @yt3trees!) + +--- + +## QOL Improvements + +- **Improved UI for Selectors & Headers:** Enhancements to mode/provider selectors in chat and task headers. (thanks @monotykamary!) +- **Context Mention Path Handling (Windows):** Improved context mention path handling on Windows. (thanks @samhvw8!) +- **Configuration Profile Dropdown UI:** Improved UI for the configuration profile dropdown. (thanks @DeXtroTip!) +- **Reserved Output Tokens Display:** Showed reserved output tokens in the context window visualization. +- **Disable Create/Edit Custom Modes Instructions:** Added an option to save tokens by disabling instructions for creating/editing custom modes. (thanks @hannesrudolph!) + +--- + +## Bug Fixes + +- Fixed VS Code LM API model picker truncation. +- Fixed encoding issue causing unreadable characters at the beginning of files. +- Fixed settings dropdown truncation. +- Fixed bug where custom temperature could not be unchecked (thanks @System233!). +- Fixed bug with decimal price entry for OpenAI-compatible providers (thanks @System233!). +- Fixed bug with enhance prompt on Sonnet 3.7 (thanks @moqimoqidea!). +- Fixed bug with context window management for thinking models (thanks @ReadyPlayerEmma!). +- Fixed bug where checkpoints were no longer enabled by default. +- Fixed MarkdownBlock text color for Dark High Contrast theme (thanks @cannuri!). +- Fixed browser system prompt inclusion rules (thanks @cannuri!). +- Fixed OpenAI-style cost calculations (thanks @dtrugman!). +- Fixed issue allowing use of an excluded directory as working directory (thanks @Szpadel!). +- Fixed OpenRouter custom baseUrl support. +- Fixed usage tracking for SiliconFlow and other providers. +- Rolled back multi-diff progress indicator temporarily to fix double-confirmation. + +--- + +## Misc Improvements + +- **Telemetry for Versions:** Added extension and VSCode versions to telemetry. +- **Kotlin Language Support:** Added Kotlin support in `list_code_definition_names` tool. (thanks @kohii!) +- **Diff Application Error Handling:** Better handling of diff application errors. (thanks @qdaxb!) +- **Updated Bedrock Prices:** Updated Bedrock prices to the latest. (thanks @Smartsheet-JB-Brown!) +- **Telemetry for Checkpoints & Diff Strategies:** Added telemetry for checkpoint save/restore/diff and diff strategies. +- **Updated MCP Servers Directory Path:** Updated path for platform compatibility. (thanks @hannesrudolph!) diff --git a/apps/docs/docs/update-notes/v3.9.0.md b/apps/docs/docs/update-notes/v3.9.0.md new file mode 100644 index 00000000000..68aa2ba6782 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.9.0.md @@ -0,0 +1,50 @@ +--- +description: Roo Code 3.9.0 introduces support for 14 languages, remote MCP connectivity via SSE, text-to-speech, OpenRouter provider selection, and batch history deletion. +keywords: + - roo code 3.9.0 + - internationalization + - i18n + - remote mcp + - sse + - text-to-speech + - openrouter + - batch deletion + - release notes +--- + +# Roo Code 3.9.0 Release Notes (2025-03-18) + +This release introduces internationalization, remote MCP connectivity via SSE, text-to-speech, and numerous other improvements. + +--- + +## Feature Highlights + +- **Internationalization:** Roo Code now supports 14 languages: Simplified Chinese, Traditional Chinese, Spanish, Hindi, French, Portuguese, German, Japanese, Korean, Italian, Turkish, Vietnamese, Polish, and Catalan. Change language in Advanced Settings > Language. (thanks feifei325!) +- **MCP Remote Connectivity (SSE):** Added support for connecting to remote MCP servers using Server-Sent Events (SSE), complementing existing stdio support. (thanks aheizi!) +- **Text-to-Speech:** Added an option for Roo to provide audio feedback alongside visual responses. Enable in Advanced Settings > Notifications. (thanks heyseth!) +- **OpenRouter Provider Selection:** Added the ability to choose a specific provider when using OpenRouter models via the "Configure Profile" settings. (thanks PhunkyBob!) +- **Batch History Deletion:** Added support for selecting and deleting multiple task history items at once via the "VIEW ALL" history screen. (thanks aheizi!) + +--- + +## Terminal Improvements + +- Made the terminal shell integration timeout configurable (1-60 seconds) via Advanced Settings to resolve issues with long shell startup times. (thanks filthy, kiwina, KJ7LNW!) +- Fixed a race condition that could cause terminal output to hang or not be recognized. (thanks KJ7LNW!) + +--- + +## Bug Fixes & General Improvements + +- Improved task deletion when underlying files are missing. (thanks GitlyHallows!) +- Improved support for NixOS & direnv. (thanks wkordalski!) +- Exposed task stack in `RooCodeAPI`. (thanks franekp!) +- Fixed Human Relay to work on the welcome screen and added internationalization support. (thanks NyxJae!) +- Fixed display updating for Bedrock custom ARNs that are prompt routers. (thanks Smartsheet-JB-Brown!) +- Fixed exclusion of search highlighting when copying items from task history. (thanks im47cn!) +- Fixed context mentions to work with multiple-workspace projects. (thanks teddyOOXX!) +- Fixed task history saving when running multiple Roo instances. (thanks samhvw8!) +- Fixed wheel scrolling when Roo is opened in editor tabs. (thanks GitlyHallows!) +- Fixed file mentions when using the "Add to context" code action. (thanks qdaxb!) +- Gave models visibility into the current task's API cost. diff --git a/apps/docs/docs/update-notes/v3.9.1.md b/apps/docs/docs/update-notes/v3.9.1.md new file mode 100644 index 00000000000..99ffbef78e4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.9.1.md @@ -0,0 +1,20 @@ +--- +description: Roo Code 3.9.1 fixes language handling in system prompts, ensuring Roo thinks and responds in the selected language for better internationalization support. +keywords: + - roo code 3.9.1 + - language handling + - system prompt + - internationalization + - i18n fix + - release notes +--- + +# Roo Code 3.9.1 Release Notes (2025-03-18) + +This patch release improves language handling in system prompts. + +--- + +## Updates + +- Ensured the current language setting is correctly passed to the system prompt, allowing Roo to think and respond in the selected language. diff --git a/apps/docs/docs/update-notes/v3.9.2.md b/apps/docs/docs/update-notes/v3.9.2.md new file mode 100644 index 00000000000..327b6784d1d --- /dev/null +++ b/apps/docs/docs/update-notes/v3.9.2.md @@ -0,0 +1,19 @@ +--- +description: This patch release includes workflow updates, UI fixes, and build optimizations. +--- + +# Roo Code 3.9.2 Release Notes (2025-03-19) + +This patch release includes workflow updates, UI fixes, and build optimizations. + +--- + +## Updates & Fixes + +- Updated GitHub Actions workflow to automatically create GitHub Releases. (thanks pdecat!) +- Correctly persisted the text-to-speech speed state. (thanks heyseth!) +- Fixed French translations. (thanks arthurauffray!) +- Optimized build time for local development. (thanks KJ7LNW!) +- Applied VSCode theme fixes for select, dropdown, and command components. +- Reinstated the ability to manually enter a model name in the model picker. +- Fixed internationalization of the announcement title and the browser UI. diff --git a/apps/docs/docs/update-notes/v3.9.md b/apps/docs/docs/update-notes/v3.9.md new file mode 100644 index 00000000000..041cfd3dcf4 --- /dev/null +++ b/apps/docs/docs/update-notes/v3.9.md @@ -0,0 +1,55 @@ +--- +description: Roo Code v3.9 enhances usability by allowing concurrent file reads for faster context gathering, improving diff view readability, and refining UI elements for a smoother user experience. +--- + +# Roo Code 3.9 Release Notes (2025-03-19) + +This release cycle introduces broad internationalization, text-to-speech functionality, MCP over SSE, and numerous improvements to translations, UI, and bug fixes. + +--- + +## Internationalization & Accessibility + +- **Broad Language Support:** Roo Code has been internationalized into Catalan, German, Spanish, French, Hindi, Italian, Japanese, Korean, Polish, Portuguese, Turkish, Vietnamese, Simplified Chinese, and Traditional Chinese. (thanks @feifei325!) +- **Text-to-Speech:** Added an option to have Roo talk to you as it works, including persisting the speed state. (thanks @heyseth!) +- **Correct Language in System Prompt:** Ensured the current language is passed to the system prompt correctly. +- **Translation Fixes:** Addressed issues in French translations (thanks @arthurauffray!) and fixed internationalization of the announcement title and browser. +- **Human Relay Internationalization:** Internationalized the Human Relay feature, adjusted its layout, and made it functional on the welcome screen. (thanks @NyxJae!) + +--- + +## Provider & API Enhancements + +- **MCP over SSE:** Reintroduced support for MCP (Mode Communication Protocol) over Server-Sent Events. (thanks @aheizi!) +- **Specific Provider on OpenRouter:** Added the ability to choose a specific provider when using OpenRouter. (thanks PhunkyBob!) +- **Bedrock Custom ARN Display:** Fixed display updating for Bedrock custom ARNs that are prompt routers. (thanks @Smartsheet-JB-Brown!) +- **Expose Task Stack in API:** The task stack is now exposed in the `RooCodeAPI`. (thanks @franekp!) +- **Model Visibility of API Cost:** Models now have visibility into the current task's API cost. + +--- + +## QOL Improvements + +- **Batch Task History Deletion:** Supported batch deletion of task history items. (thanks @aheizi!) +- **Manual Model Name Entry:** Reinstated the ability to manually enter a model name in the model picker. +- **VSCode Theme Fixes:** Addressed theme inconsistencies for select, dropdown, and command components. + +--- + +## Bug Fixes + +- **Shell Integration Race Condition:** Fixed a race condition in shell integration. (thanks @KJ7LNW!) +- **Task History Copying:** Fixed an issue to exclude search highlighting when copying items from task history. (thanks @im47cn!) +- **Multi-Workspace Context Mentions:** Context mentions now work correctly with multiple-workspace projects. (thanks @teddyOOXX!) +- **Task History Saving (Multiple Roos):** Fixed task history saving when running multiple instances of Roo Code. (thanks @samhvw8!) +- **Task Deletion with Missing Files:** Improved task deletion when underlying files are missing. (thanks @GitlyHallows!) +- **NixOS & direnv Support:** Improved support for NixOS and direnv environments. (thanks @wkordalski!) +- **Wheel Scrolling in Editor Tabs:** Fixed wheel scrolling when Roo is opened in editor tabs. (thanks @GitlyHallows!) +- **"Add to Context" Auto-Mention:** Prevented automatic file mentioning when using the "Add to context" code action. (thanks @qdaxb!) + +--- + +## Misc Improvements + +- **GitHub Releases Workflow:** Updated GitHub Actions workflow to automatically create GitHub Releases. (thanks @pdecat!) +- **Optimized Build Time:** Optimized build time for local development. (thanks @KJ7LNW!) diff --git a/apps/docs/docusaurus.config.ts b/apps/docs/docusaurus.config.ts new file mode 100644 index 00000000000..8552bf621ba --- /dev/null +++ b/apps/docs/docusaurus.config.ts @@ -0,0 +1,461 @@ +import { themes as prismThemes } from "prism-react-renderer" +import type { Config } from "@docusaurus/types" +import type * as Preset from "@docusaurus/preset-classic" +import { + DISCORD_URL, + REDDIT_URL, + TWITTER_URL, + BLUESKY_URL, + LINKEDIN_URL, + TIKTOK_URL, + GITHUB_MAIN_REPO_URL, + GITHUB_ISSUES_MAIN_URL, + GITHUB_FEATURES_URL, + VSCODE_MARKETPLACE_URL, + OPEN_VSX_URL, + CONTACT_EMAIL, + CAREERS_URL, + WEBSITE_PRIVACY_URL, + EXTENSION_PRIVACY_URL, + GITHUB_REPO_URL, + SIGN_IN_URL, + SIGN_UP_URL, +} from "./src/constants" + +// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) + +const config: Config = { + title: "Roo Code Documentation", + tagline: "AI-powered autonomous coding agent for VS Code - Complete documentation, guides, and tutorials", + favicon: "img/favicon.ico", + + // Set the production url of your site here + url: "https://docs.roocode.com", + // Set the // pathname under which your site is served + // For GitHub pages deployment, it is often '//' + baseUrl: "/", + + // GitHub pages deployment config (if needed) + organizationName: "RooCodeInc", + projectName: "Roo-Code", + + onBrokenLinks: "warn", + markdown: { + hooks: { + onBrokenMarkdownLinks: "warn", + }, + }, + + // Custom fields for client-side access + customFields: { + intercomAppId: process.env.INTERCOM_APP_ID, + }, + + // Even if you don't use internationalization, you can use this field to set + // useful metadata like html lang. For example, if your site is Chinese, you + // may want to replace "en" with "zh-Hans". + i18n: { + defaultLocale: "en", + locales: ["en"], + }, + + presets: [ + [ + "classic", + { + docs: { + sidebarPath: "./sidebars.ts", + routeBasePath: "/", + editUrl: `${GITHUB_REPO_URL}/edit/main/apps/docs/`, + showLastUpdateTime: true, + }, + blog: false, // Disable blog feature + theme: { + customCss: "./src/css/custom.css", + }, + sitemap: false, // Disable the built-in sitemap plugin to avoid conflicts + } satisfies Preset.Options, + ], + ], + + themes: [ + [ + require.resolve("@easyops-cn/docusaurus-search-local"), + { + hashed: true, + language: ["en"], + highlightSearchTermsOnTargetPage: true, + explicitSearchResultPath: true, + docsRouteBasePath: "/", + indexBlog: false, + searchContextByPaths: [ + { label: "Getting Started", path: "getting-started" }, + { label: "Basic Usage", path: "basic-usage" }, + { label: "Features", path: "features" }, + { label: "Advanced Usage", path: "advanced-usage" }, + { label: "Providers", path: "providers" }, + { label: "Roo Code Cloud", path: "roo-code-cloud" }, + { label: "Release Notes", path: "update-notes" }, + ], + useAllContextsWithNoSearchContext: true, + }, + ], + ], + + plugins: [ + // Plugin to resolve TypeScript source files from monorepo packages + // This matches the pattern used by web-roo-code and web-evals + function extensionAliasPlugin() { + return { + name: "extension-alias-plugin", + configureWebpack() { + return { + resolve: { + extensionAlias: { + ".js": [".ts", ".tsx", ".js", ".jsx"], + }, + }, + } + }, + } + }, + ...(process.env.POSTHOG_API_KEY + ? [ + [ + "posthog-docusaurus", + { + apiKey: process.env.POSTHOG_API_KEY, + appUrl: "https://ph.roocode.com", + enableInDevelopment: true, + }, + ], + ] + : []), + [ + "@docusaurus/plugin-sitemap", + { + changefreq: "weekly", + priority: 0.5, + ignorePatterns: ["/tags/**"], + filename: "sitemap.xml", + createSitemapItems: async (params) => { + const { defaultCreateSitemapItems, ...rest } = params + const items = await defaultCreateSitemapItems(rest) + return items.filter((item) => !item.url.includes("/page/")) + }, + }, + ], + [ + "@docusaurus/plugin-client-redirects", + { + redirects: [ + // Files moved from advanced-usage to features + { + to: "/features/checkpoints", + from: ["/advanced-usage/checkpoints"], + }, + { + to: "/features/code-actions", + from: ["/advanced-usage/code-actions"], + }, + { + to: "/features/custom-instructions", + from: ["/advanced-usage/custom-instructions"], + }, + { + to: "/features/custom-modes", + from: ["/advanced-usage/custom-modes"], + }, + { + to: "/features/enhance-prompt", + from: ["/advanced-usage/enhance-prompt"], + }, + { + to: "/features/experimental/experimental-features", + from: ["/advanced-usage/experimental-features"], + }, + { + to: "/features/concurrent-file-reads", + from: ["/features/experimental/concurrent-file-reads"], + }, + { + to: "/features/model-temperature", + from: ["/advanced-usage/model-temperature"], + }, + { + to: "/features/auto-approving-actions", + from: ["/advanced-usage/auto-approving-actions"], + }, + { + to: "/features/api-configuration-profiles", + from: ["/advanced-usage/api-configuration-profiles"], + }, + { + to: "/features/intelligent-context-condensing", + from: [ + "/features/experimental/intelligent-context-condensing", + "/features/experimental/intelligent-context-condensation", + ], + }, + { + to: "/advanced-usage/footgun-prompting", + from: ["/features/footgun-prompting"], + }, + { + to: "/features/codebase-indexing", + from: ["/features/experimental/codebase-indexing"], + }, + + // MCP related redirects + { + to: "/features/mcp/overview", + from: ["/advanced-usage/mcp", "/mcp/overview"], + }, + { + to: "/features/mcp/using-mcp-in-roo", + from: ["/mcp/using-mcp-in-roo"], + }, + { + to: "/features/mcp/what-is-mcp", + from: ["/mcp/what-is-mcp"], + }, + { + to: "/features/mcp/server-transports", + from: ["/mcp/server-transports"], + }, + { + to: "/features/mcp/mcp-vs-api", + from: ["/mcp/mcp-vs-api"], + }, + { + to: "/features/shell-integration", + from: ["/troubleshooting/shell-integration"], + }, + + // Tools folder moved from features to advanced-usage + { + to: "/advanced-usage/available-tools/access-mcp-resource", + from: ["/features/tools/access-mcp-resource"], + }, + { + to: "/advanced-usage/available-tools/apply-diff", + from: ["/features/tools/apply-diff"], + }, + { + to: "/advanced-usage/available-tools/ask-followup-question", + from: ["/features/tools/ask-followup-question"], + }, + { + to: "/advanced-usage/available-tools/attempt-completion", + from: ["/features/tools/attempt-completion"], + }, + { + to: "/advanced-usage/available-tools/browser-action", + from: ["/features/tools/browser-action"], + }, + { + to: "/advanced-usage/available-tools/execute-command", + from: ["/features/tools/execute-command"], + }, + { + to: "/advanced-usage/available-tools/tool-use-overview", + from: ["/features/tools/insert-content", "/advanced-usage/available-tools/insert-content"], + }, + { + to: "/advanced-usage/available-tools/list-code-definition-names", + from: ["/features/tools/list-code-definition-names"], + }, + { + to: "/advanced-usage/available-tools/list-files", + from: ["/features/tools/list-files"], + }, + { + to: "/advanced-usage/available-tools/new-task", + from: ["/features/tools/new-task"], + }, + { + to: "/advanced-usage/available-tools/read-file", + from: ["/features/tools/read-file"], + }, + { + to: "/advanced-usage/available-tools/search-files", + from: ["/features/tools/search-files"], + }, + { + to: "/advanced-usage/available-tools/switch-mode", + from: ["/features/tools/switch-mode"], + }, + { + to: "/advanced-usage/available-tools/tool-use-overview", + from: ["/features/tools/tool-use-overview"], + }, + { + to: "/advanced-usage/available-tools/use-mcp-tool", + from: ["/features/tools/use-mcp-tool"], + }, + { + to: "/advanced-usage/available-tools/write-to-file", + from: ["/features/tools/write-to-file"], + }, + { + to: "/advanced-usage/roo-code-nightly", + from: ["/advanced-usage/prerelease-build"], + }, + // Redirect /roo to Roo Code Cloud documentation + { + to: "/providers/roo-code-router", + from: ["/providers/roo"], + }, + // Roo Code Router rename redirects + { + to: "/providers/roo-code-router", + from: ["/providers/roo-code-cloud"], + }, + { + to: "/roo-code-router/overview", + from: ["/roo-code-provider", "/roo-code-provider/overview"], + }, + // Redirect deleted billing-subscriptions page + { + to: "/credits/overview", + from: ["/roo-code-cloud/billing-subscriptions"], + }, + ], + }, + ], + ], + + themeConfig: { + // SEO metadata + metadata: [ + { + name: "keywords", + content: + "Roo Code, AI coding assistant, VS Code extension, autonomous coding agent, AI pair programmer, code generation, documentation", + }, + { name: "twitter:card", content: "summary_large_image" }, + { name: "twitter:site", content: "@roocode" }, + { name: "twitter:creator", content: "@roocode" }, + { property: "og:type", content: "website" }, + { property: "og:locale", content: "en_US" }, + ], + colorMode: { + defaultMode: "dark", + disableSwitch: false, + respectPrefersColorScheme: false, + }, + image: "/img/social-share.png", // Default Open Graph image + navbar: { + logo: { + alt: "Roo Code Logo", + src: "img/roo-code-logo-dark.svg", + srcDark: "img/roo-code-logo-white.svg", + }, + items: [ + { + type: "search", + position: "left", + }, + ], + }, + footer: { + style: "dark", + logo: { + alt: "Roo Code Logo", + src: "img/roo-code-logo-dark.svg", + srcDark: "img/roo-code-logo-white.svg", + width: 120, + height: 24, + }, + links: [ + { + title: "Community", + items: [ + { + label: "Discord", + href: DISCORD_URL, + }, + { + label: "Reddit", + href: REDDIT_URL, + }, + { + label: "Twitter", + href: TWITTER_URL, + }, + { + label: "Bluesky", + href: BLUESKY_URL, + }, + { + label: "GitHub", + href: GITHUB_MAIN_REPO_URL, + }, + { + label: "LinkedIn", + href: LINKEDIN_URL, + }, + { + label: "TikTok", + href: TIKTOK_URL, + }, + ], + }, + { + title: "GitHub", + items: [ + { + label: "Issues", + href: GITHUB_ISSUES_MAIN_URL, + }, + { + label: "Feature Requests", + href: GITHUB_FEATURES_URL, + }, + ], + }, + { + title: "Download", + items: [ + { + label: "VS Code Marketplace", + href: VSCODE_MARKETPLACE_URL, + }, + { + label: "Open VSX Registry", + href: OPEN_VSX_URL, + }, + ], + }, + { + title: "Company", + items: [ + { + label: "Contact", + href: CONTACT_EMAIL, + target: "_self", + }, + { + label: "Careers", + href: CAREERS_URL, + }, + { + label: "Website Privacy Policy", + href: WEBSITE_PRIVACY_URL, + }, + { + label: "Extension Privacy Policy", + href: EXTENSION_PRIVACY_URL, + }, + ], + }, + ], + }, + prism: { + theme: prismThemes.github, + darkTheme: prismThemes.dracula, + }, + } satisfies Preset.ThemeConfig, +} + +export default config diff --git a/apps/docs/eslint.config.mjs b/apps/docs/eslint.config.mjs new file mode 100644 index 00000000000..8ffef2733fa --- /dev/null +++ b/apps/docs/eslint.config.mjs @@ -0,0 +1,82 @@ +import js from "@eslint/js" +import tseslint from "@typescript-eslint/eslint-plugin" +import tsparser from "@typescript-eslint/parser" +import react from "eslint-plugin-react" +import reactHooks from "eslint-plugin-react-hooks" +import unusedImports from "eslint-plugin-unused-imports" + +export default [ + js.configs.recommended, + { + files: ["src/**/*.{js,jsx,ts,tsx}"], + languageOptions: { + parser: tsparser, + parserOptions: { + ecmaVersion: "latest", + sourceType: "module", + ecmaFeatures: { + jsx: true, + }, + }, + globals: { + console: "readonly", + document: "readonly", + window: "readonly", + process: "readonly", + module: "readonly", + require: "readonly", + setTimeout: "readonly", + clearTimeout: "readonly", + setInterval: "readonly", + clearInterval: "readonly", + fetch: "readonly", + URL: "readonly", + HTMLElement: "readonly", + HTMLDivElement: "readonly", + Element: "readonly", + Node: "readonly", + NodeList: "readonly", + Event: "readonly", + KeyboardEvent: "readonly", + MouseEvent: "readonly", + CustomEvent: "readonly", + localStorage: "readonly", + sessionStorage: "readonly", + navigator: "readonly", + location: "readonly", + history: "readonly", + MutationObserver: "readonly", + ResizeObserver: "readonly", + IntersectionObserver: "readonly", + requestAnimationFrame: "readonly", + cancelAnimationFrame: "readonly", + JSX: "readonly", + SVGSVGElement: "readonly", + }, + }, + plugins: { + "@typescript-eslint": tseslint, + react, + "react-hooks": reactHooks, + "unused-imports": unusedImports, + }, + rules: { + ...tseslint.configs.recommended.rules, + ...react.configs.recommended.rules, + ...reactHooks.configs.recommended.rules, + "react/react-in-jsx-scope": "off", + "react/prop-types": "off", + "@typescript-eslint/no-unused-vars": "warn", + "@typescript-eslint/no-explicit-any": "warn", + "no-unused-vars": "off", + }, + settings: { + react: { + version: "detect", + }, + }, + }, + { + ignores: ["node_modules/**", "build/**", ".docusaurus/**"], + }, +] diff --git a/apps/docs/package.json b/apps/docs/package.json new file mode 100644 index 00000000000..e42af1adb74 --- /dev/null +++ b/apps/docs/package.json @@ -0,0 +1,71 @@ +{ + "name": "@roo-code/docs", + "version": "0.0.0", + "private": true, + "scripts": { + "docusaurus": "docusaurus", + "start": "node -r dotenv/config ./node_modules/@docusaurus/core/bin/docusaurus.mjs start", + "build": "node -r dotenv/config ./node_modules/@docusaurus/core/bin/docusaurus.mjs build", + "swizzle": "docusaurus swizzle", + "deploy": "docusaurus deploy", + "clear": "docusaurus clear", + "serve": "docusaurus serve", + "write-translations": "docusaurus write-translations", + "write-heading-ids": "docusaurus write-heading-ids", + "check-types": "tsc --noEmit", + "lint": "eslint src --ext .js,.jsx,.ts,.tsx", + "lint:fix": "eslint src --ext .js,.jsx,.ts,.tsx --fix", + "lint:unused": "eslint src --ext .js,.jsx,.ts,.tsx --rule 'unused-imports/no-unused-imports: error'" + }, + "dependencies": { + "@docusaurus/core": "^3.9.2", + "@docusaurus/plugin-client-redirects": "^3.9.2", + "@docusaurus/plugin-content-docs": "^3.9.2", + "@docusaurus/plugin-sitemap": "^3.9.2", + "@docusaurus/preset-classic": "^3.9.2", + "@docusaurus/theme-common": "^3.9.2", + "@easyops-cn/autocomplete.js": "^0.38.1", + "@easyops-cn/docusaurus-search-local": "^0.48.5", + "@mdx-js/react": "^3.0.0", + "@roo-code/types": "workspace:^", + "@vscode/codicons": "^0.0.36", + "clsx": "^2.0.0", + "lucide-react": "^0.559.0", + "posthog-docusaurus": "^2.0.4", + "prism-react-renderer": "^2.3.0", + "react": "^19.0.0", + "react-cookie-consent": "^9.0.0", + "react-dom": "^19.0.0", + "react-icons": "^5.5.0", + "tldts": "^7.0.14" + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "^3.9.2", + "@docusaurus/tsconfig": "^3.9.2", + "@docusaurus/types": "^3.9.2", + "@eslint/js": "^9.29.0", + "@typescript-eslint/eslint-plugin": "^8.34.0", + "@typescript-eslint/parser": "^8.34.0", + "dotenv": "^16.4.7", + "eslint": "^9.29.0", + "eslint-plugin-react": "^7.37.5", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-unused-imports": "^4.1.4", + "typescript": "~5.6.2" + }, + "browserslist": { + "production": [ + ">0.5%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 3 chrome version", + "last 3 firefox version", + "last 5 safari version" + ] + }, + "engines": { + "node": ">=18.0" + } +} diff --git a/apps/docs/sidebars.ts b/apps/docs/sidebars.ts new file mode 100644 index 00000000000..753a8a80860 --- /dev/null +++ b/apps/docs/sidebars.ts @@ -0,0 +1,840 @@ +import type { SidebarsConfig } from "@docusaurus/plugin-content-docs" +import modelProviders from "./docs/providers/index.json" + +const sidebars: SidebarsConfig = { + tutorialSidebar: [ + "index", + { + type: "category", + label: "Roo Code VSCode Extension", + items: [ + "getting-started/installing", + "getting-started/connecting-api-provider", + "getting-started/your-first-task", + "basic-usage/the-chat-interface", + "basic-usage/typing-your-requests", + "basic-usage/how-tools-work", + "basic-usage/context-mentions", + "basic-usage/using-modes", + "tips-and-tricks", + "reporting-errors", + { + label: "Features", + type: "category", + items: [ + "features/api-configuration-profiles", + "features/auto-approving-actions", + "features/boomerang-tasks", + "features/browser-use", + "features/checkpoints", + "features/code-actions", + "features/codebase-indexing", + "features/custom-instructions", + "features/diagnostics-integration", + "features/custom-modes", + "features/enhance-prompt", + "features/settings-management", + "features/intelligent-context-condensing", + "features/keyboard-shortcuts", + "features/marketplace", + "features/message-queueing", + "features/model-temperature", + "features/concurrent-file-reads", + "features/rooignore", + "features/skills", + "features/slash-commands", + "features/suggested-responses", + "features/task-todo-list", + "features/worktrees", + "features/shell-integration", + "features/more-features", + ], + }, + { + type: "category", + label: "MCP", + items: [ + { + type: "doc", + id: "features/mcp/overview", + label: "MCP Overview", + }, + "features/mcp/using-mcp-in-roo", + "features/mcp/what-is-mcp", + "features/mcp/server-transports", + "features/mcp/mcp-vs-api", + "features/mcp/recommended-mcp-servers", + ], + }, + { + type: "category", + label: "Experimental", + items: [ + "features/experimental/experimental-features", + "features/experimental/custom-tools", + "features/experimental/concurrent-file-edits", + "features/experimental/background-editing", + "features/image-generation", + "advanced-usage/available-tools/run-slash-command", + ], + }, + { + type: "category", + label: "Advanced Usage", + items: [ + { + type: "category", + label: "Available Tools", + items: [ + "advanced-usage/available-tools/tool-use-overview", + "advanced-usage/available-tools/access-mcp-resource", + "advanced-usage/available-tools/apply-diff", + "advanced-usage/available-tools/ask-followup-question", + "advanced-usage/available-tools/attempt-completion", + "advanced-usage/available-tools/browser-action", + "advanced-usage/available-tools/codebase-search", + "advanced-usage/available-tools/execute-command", + "advanced-usage/available-tools/list-code-definition-names", + "advanced-usage/available-tools/list-files", + "advanced-usage/available-tools/new-task", + "advanced-usage/available-tools/read-file", + "advanced-usage/available-tools/run-slash-command", + "advanced-usage/available-tools/search-files", + "advanced-usage/available-tools/switch-mode", + "advanced-usage/available-tools/update-todo-list", + "advanced-usage/available-tools/use-mcp-tool", + "advanced-usage/available-tools/write-to-file", + ], + }, + "advanced-usage/context-poisoning", + "advanced-usage/large-projects", + "advanced-usage/local-models", + "advanced-usage/local-development-setup", + "advanced-usage/prompt-engineering", + "advanced-usage/prompt-structure", + "advanced-usage/rate-limits-costs", + "advanced-usage/footgun-prompting", + "advanced-usage/roo-code-nightly", + ], + }, + ], + }, + { + type: "category", + label: "Roo Code Cloud", + items: [ + "roo-code-cloud/overview", + "roo-code-cloud/login", + "roo-code-cloud/cloud-agents", + "roo-code-cloud/environments", + "roo-code-cloud/task-sync", + "roo-code-cloud/roomote-control", + "roo-code-cloud/task-sharing", + "roo-code-cloud/analytics", + "roo-code-cloud/github-integration", + "roo-code-cloud/slack-integration", + "roo-code-cloud/team-plan", + ], + }, + { + type: "doc", + label: "Roo Code Router", + id: "roo-code-router/overview", + }, + { + type: "doc", + label: "Roo Code Credits", + id: "credits/overview", + }, + { + type: "doc", + label: "Tutorial Videos", + id: "tutorial-videos", + }, + { + type: "category", + label: "Model Providers", + items: [ + { + type: "doc", + id: "providers/index", + label: "About Model Providers", + }, + ...modelProviders.providers.map((provider) => ({ + type: "doc" as const, + id: provider.id, + label: provider.title, + })), + ], + }, + { + type: "category", + label: "Extension Release Notes", + items: [ + "update-notes/index", + { + type: "category", + label: "3.45", + items: [{ type: "doc", id: "update-notes/v3.45.0", label: "3.45.0" }], + }, + { + type: "category", + label: "3.44", + items: [ + { type: "doc", id: "update-notes/v3.44", label: "3.44 Combined" }, + { type: "doc", id: "update-notes/v3.44.2", label: "3.44.2" }, + { type: "doc", id: "update-notes/v3.44.1", label: "3.44.1" }, + { type: "doc", id: "update-notes/v3.44.0", label: "3.44.0" }, + ], + }, + { + type: "category", + label: "3.43", + items: [{ type: "doc", id: "update-notes/v3.43.0", label: "3.43.0" }], + }, + { + type: "category", + label: "3.42", + items: [{ type: "doc", id: "update-notes/v3.42.0", label: "3.42.0" }], + }, + { + type: "category", + label: "3.41", + items: [ + { type: "doc", id: "update-notes/v3.41.2", label: "3.41.2" }, + { type: "doc", id: "update-notes/v3.41.1", label: "3.41.1" }, + { type: "doc", id: "update-notes/v3.41.0", label: "3.41.0" }, + ], + }, + { + type: "category", + label: "3.40", + items: [ + { type: "doc", id: "update-notes/v3.40", label: "3.40 Combined" }, + { type: "doc", id: "update-notes/v3.40.1", label: "3.40.1" }, + { type: "doc", id: "update-notes/v3.40.0", label: "3.40.0" }, + ], + }, + { + type: "category", + label: "3.39", + items: [ + { type: "doc", id: "update-notes/v3.39", label: "3.39 Combined" }, + { type: "doc", id: "update-notes/v3.39.3", label: "3.39.3" }, + { type: "doc", id: "update-notes/v3.39.2", label: "3.39.2" }, + { type: "doc", id: "update-notes/v3.39.1", label: "3.39.1" }, + { type: "doc", id: "update-notes/v3.39.0", label: "3.39.0" }, + ], + }, + { + type: "category", + label: "3.38", + items: [ + { type: "doc", id: "update-notes/v3.38", label: "3.38 Combined" }, + { type: "doc", id: "update-notes/v3.38.3", label: "3.38.3" }, + { type: "doc", id: "update-notes/v3.38.2", label: "3.38.2" }, + { type: "doc", id: "update-notes/v3.38.1", label: "3.38.1" }, + { type: "doc", id: "update-notes/v3.38.0", label: "3.38.0" }, + ], + }, + { + type: "category", + label: "3.37", + items: [ + { type: "doc", id: "update-notes/v3.37", label: "3.37 Combined" }, + { type: "doc", id: "update-notes/v3.37.0", label: "3.37.0" }, + { type: "doc", id: "update-notes/v3.37.1", label: "3.37.1" }, + ], + }, + { + type: "category", + label: "3.36", + items: [ + { type: "doc", id: "update-notes/v3.36", label: "3.36 Combined" }, + { type: "doc", id: "update-notes/v3.36.16", label: "3.36.16" }, + { type: "doc", id: "update-notes/v3.36.15", label: "3.36.15" }, + { type: "doc", id: "update-notes/v3.36.14", label: "3.36.14" }, + { type: "doc", id: "update-notes/v3.36.13", label: "3.36.13" }, + { type: "doc", id: "update-notes/v3.36.12", label: "3.36.12" }, + { type: "doc", id: "update-notes/v3.36.11", label: "3.36.11" }, + { type: "doc", id: "update-notes/v3.36.10", label: "3.36.10" }, + { type: "doc", id: "update-notes/v3.36.9", label: "3.36.9" }, + { type: "doc", id: "update-notes/v3.36.7", label: "3.36.7" }, + { type: "doc", id: "update-notes/v3.36.6", label: "3.36.6" }, + { type: "doc", id: "update-notes/v3.36.5", label: "3.36.5" }, + { type: "doc", id: "update-notes/v3.36.4", label: "3.36.4" }, + { type: "doc", id: "update-notes/v3.36.3", label: "3.36.3" }, + { type: "doc", id: "update-notes/v3.36.2", label: "3.36.2" }, + { type: "doc", id: "update-notes/v3.36.1", label: "3.36.1" }, + { type: "doc", id: "update-notes/v3.36.0", label: "3.36.0" }, + ], + }, + { + type: "category", + label: "3.35", + items: [ + { type: "doc", id: "update-notes/v3.35", label: "3.35 Combined" }, + { type: "doc", id: "update-notes/v3.35.5", label: "3.35.5" }, + { type: "doc", id: "update-notes/v3.35.4", label: "3.35.4" }, + { type: "doc", id: "update-notes/v3.35.3", label: "3.35.3" }, + { type: "doc", id: "update-notes/v3.35.2", label: "3.35.2" }, + { type: "doc", id: "update-notes/v3.35.1", label: "3.35.1" }, + { type: "doc", id: "update-notes/v3.35.0", label: "3.35.0" }, + ], + }, + { + type: "category", + label: "3.34", + items: [ + { type: "doc", id: "update-notes/v3.34", label: "3.34 Combined" }, + { type: "doc", id: "update-notes/v3.34.8", label: "3.34.8" }, + { type: "doc", id: "update-notes/v3.34.7", label: "3.34.7" }, + { type: "doc", id: "update-notes/v3.34.6", label: "3.34.6" }, + { type: "doc", id: "update-notes/v3.34.5", label: "3.34.5" }, + { type: "doc", id: "update-notes/v3.34.4", label: "3.34.4" }, + { type: "doc", id: "update-notes/v3.34.3", label: "3.34.3" }, + { type: "doc", id: "update-notes/v3.34.2", label: "3.34.2" }, + { type: "doc", id: "update-notes/v3.34.1", label: "3.34.1" }, + { type: "doc", id: "update-notes/v3.34.0", label: "3.34.0" }, + ], + }, + { + type: "category", + label: "3.33", + items: [ + { type: "doc", id: "update-notes/v3.33", label: "3.33 Combined" }, + { type: "doc", id: "update-notes/v3.33.3", label: "3.33.3" }, + { type: "doc", id: "update-notes/v3.33.2", label: "3.33.2" }, + { type: "doc", id: "update-notes/v3.33.1", label: "3.33.1" }, + { type: "doc", id: "update-notes/v3.33.0", label: "3.33.0" }, + ], + }, + { + type: "category", + label: "3.32", + items: [ + { type: "doc", id: "update-notes/v3.32", label: "3.32 Combined" }, + { type: "doc", id: "update-notes/v3.32.1", label: "3.32.1" }, + { type: "doc", id: "update-notes/v3.32.0", label: "3.32.0" }, + ], + }, + { + type: "category", + label: "3.31", + items: [ + { type: "doc", id: "update-notes/v3.31", label: "3.31 Combined" }, + { type: "doc", id: "update-notes/v3.31.3", label: "3.31.3" }, + { type: "doc", id: "update-notes/v3.31.2", label: "3.31.2" }, + { type: "doc", id: "update-notes/v3.31.1", label: "3.31.1" }, + { type: "doc", id: "update-notes/v3.31.0", label: "3.31.0" }, + ], + }, + { + type: "category", + label: "3.30", + items: [ + { type: "doc", id: "update-notes/v3.30", label: "3.30 Combined" }, + { type: "doc", id: "update-notes/v3.30.3", label: "3.30.3" }, + { type: "doc", id: "update-notes/v3.30.2", label: "3.30.2" }, + { type: "doc", id: "update-notes/v3.30.1", label: "3.30.1" }, + { type: "doc", id: "update-notes/v3.30.0", label: "3.30.0" }, + ], + }, + { + type: "category", + label: "3.29", + items: [ + { type: "doc", id: "update-notes/v3.29", label: "3.29 Combined" }, + { type: "doc", id: "update-notes/v3.29.5", label: "3.29.5" }, + { type: "doc", id: "update-notes/v3.29.4", label: "3.29.4" }, + { type: "doc", id: "update-notes/v3.29.3", label: "3.29.3" }, + { type: "doc", id: "update-notes/v3.29.2", label: "3.29.2" }, + { type: "doc", id: "update-notes/v3.29.1", label: "3.29.1" }, + { type: "doc", id: "update-notes/v3.29.0", label: "3.29.0" }, + ], + }, + { + type: "category", + label: "3.28", + items: [ + { type: "doc", id: "update-notes/v3.28", label: "3.28 Combined" }, + { type: "doc", id: "update-notes/v3.28.8", label: "3.28.8" }, + { type: "doc", id: "update-notes/v3.28.7", label: "3.28.7" }, + { type: "doc", id: "update-notes/v3.28.6", label: "3.28.6" }, + { type: "doc", id: "update-notes/v3.28.5", label: "3.28.5" }, + { type: "doc", id: "update-notes/v3.28.4", label: "3.28.4" }, + { type: "doc", id: "update-notes/v3.28.3", label: "3.28.3" }, + { type: "doc", id: "update-notes/v3.28.2", label: "3.28.2" }, + { type: "doc", id: "update-notes/v3.28.1", label: "3.28.1" }, + { type: "doc", id: "update-notes/v3.28.0", label: "3.28.0" }, + ], + }, + { + type: "category", + label: "3.27", + items: [{ type: "doc", id: "update-notes/v3.27.0", label: "3.27.0" }], + }, + { + type: "category", + label: "3.26", + items: [ + { type: "doc", id: "update-notes/v3.26", label: "3.26 Combined" }, + { type: "doc", id: "update-notes/v3.26.7", label: "3.26.7" }, + { type: "doc", id: "update-notes/v3.26.6", label: "3.26.6" }, + { type: "doc", id: "update-notes/v3.26.5", label: "3.26.5" }, + { type: "doc", id: "update-notes/v3.26.4", label: "3.26.4" }, + { type: "doc", id: "update-notes/v3.26.3", label: "3.26.3" }, + { type: "doc", id: "update-notes/v3.26.2", label: "3.26.2" }, + { type: "doc", id: "update-notes/v3.26.1", label: "3.26.1" }, + { type: "doc", id: "update-notes/v3.26.0", label: "3.26.0" }, + ], + }, + { + type: "category", + label: "3.25", + items: [ + { type: "doc", id: "update-notes/v3.25", label: "3.25 Combined" }, + { type: "doc", id: "update-notes/v3.25.23", label: "3.25.23" }, + { type: "doc", id: "update-notes/v3.25.22", label: "3.25.22" }, + { type: "doc", id: "update-notes/v3.25.21", label: "3.25.21" }, + { type: "doc", id: "update-notes/v3.25.20", label: "3.25.20" }, + { type: "doc", id: "update-notes/v3.25.19", label: "3.25.19" }, + { type: "doc", id: "update-notes/v3.25.18", label: "3.25.18" }, + { type: "doc", id: "update-notes/v3.25.17", label: "3.25.17" }, + { type: "doc", id: "update-notes/v3.25.16", label: "3.25.16" }, + { type: "doc", id: "update-notes/v3.25.15", label: "3.25.15" }, + { type: "doc", id: "update-notes/v3.25.14", label: "3.25.14" }, + { type: "doc", id: "update-notes/v3.25.13", label: "3.25.13" }, + { type: "doc", id: "update-notes/v3.25.12", label: "3.25.12" }, + { type: "doc", id: "update-notes/v3.25.11", label: "3.25.11" }, + { type: "doc", id: "update-notes/v3.25.10", label: "3.25.10" }, + { type: "doc", id: "update-notes/v3.25.9", label: "3.25.9" }, + { type: "doc", id: "update-notes/v3.25.8", label: "3.25.8" }, + { type: "doc", id: "update-notes/v3.25.7", label: "3.25.7" }, + { type: "doc", id: "update-notes/v3.25.6", label: "3.25.6" }, + { type: "doc", id: "update-notes/v3.25.5", label: "3.25.5" }, + { type: "doc", id: "update-notes/v3.25.4", label: "3.25.4" }, + { type: "doc", id: "update-notes/v3.25.3", label: "3.25.3" }, + { type: "doc", id: "update-notes/v3.25.2", label: "3.25.2" }, + { type: "doc", id: "update-notes/v3.25.1", label: "3.25.1" }, + { type: "doc", id: "update-notes/v3.25.0", label: "3.25.0" }, + ], + }, + { + type: "category", + label: "3.24", + items: [{ type: "doc", id: "update-notes/v3.24.0", label: "3.24.0" }], + }, + { + type: "category", + label: "3.23", + items: [ + { type: "doc", id: "update-notes/v3.23", label: "3.23 Combined" }, + { type: "doc", id: "update-notes/v3.23.19", label: "3.23.19" }, + { type: "doc", id: "update-notes/v3.23.18", label: "3.23.18" }, + { type: "doc", id: "update-notes/v3.23.17", label: "3.23.17" }, + { type: "doc", id: "update-notes/v3.23.16", label: "3.23.16" }, + { type: "doc", id: "update-notes/v3.23.15", label: "3.23.15" }, + { type: "doc", id: "update-notes/v3.23.14", label: "3.23.14" }, + { type: "doc", id: "update-notes/v3.23.13", label: "3.23.13" }, + { type: "doc", id: "update-notes/v3.23.12", label: "3.23.12" }, + { type: "doc", id: "update-notes/v3.23.11", label: "3.23.11" }, + { type: "doc", id: "update-notes/v3.23.10", label: "3.23.10" }, + { type: "doc", id: "update-notes/v3.23.9", label: "3.23.9" }, + { type: "doc", id: "update-notes/v3.23.8", label: "3.23.8" }, + { type: "doc", id: "update-notes/v3.23.7", label: "3.23.7" }, + { type: "doc", id: "update-notes/v3.23.6", label: "3.23.6" }, + { type: "doc", id: "update-notes/v3.23.5", label: "3.23.5" }, + { type: "doc", id: "update-notes/v3.23.4", label: "3.23.4" }, + { type: "doc", id: "update-notes/v3.23.3", label: "3.23.3" }, + { type: "doc", id: "update-notes/v3.23.2", label: "3.23.2" }, + { type: "doc", id: "update-notes/v3.23.1", label: "3.23.1" }, + { type: "doc", id: "update-notes/v3.23.0", label: "3.23.0" }, + ], + }, + { + type: "category", + label: "3.22", + items: [ + { type: "doc", id: "update-notes/v3.22.6", label: "3.22.6" }, + { type: "doc", id: "update-notes/v3.22.5", label: "3.22.5" }, + { type: "doc", id: "update-notes/v3.22.4", label: "3.22.4" }, + { type: "doc", id: "update-notes/v3.22.3", label: "3.22.3" }, + { type: "doc", id: "update-notes/v3.22.2", label: "3.22.2" }, + { type: "doc", id: "update-notes/v3.22.1", label: "3.22.1" }, + { type: "doc", id: "update-notes/v3.22", label: "3.22 Combined" }, + { type: "doc", id: "update-notes/v3.22.0", label: "3.22.0" }, + ], + }, + { + type: "category", + label: "3.21", + items: [ + { type: "doc", id: "update-notes/v3.21", label: "3.21 Combined" }, + { type: "doc", id: "update-notes/v3.21.5", label: "3.21.5" }, + { type: "doc", id: "update-notes/v3.21.4", label: "3.21.4" }, + { type: "doc", id: "update-notes/v3.21.3", label: "3.21.3" }, + { type: "doc", id: "update-notes/v3.21.2", label: "3.21.2" }, + { type: "doc", id: "update-notes/v3.21.1", label: "3.21.1" }, + { type: "doc", id: "update-notes/v3.21.0", label: "3.21.0" }, + ], + }, + { + type: "category", + label: "3.20", + items: [ + { type: "doc", id: "update-notes/v3.20", label: "3.20 Combined" }, + { type: "doc", id: "update-notes/v3.20.3", label: "3.20.3" }, + { type: "doc", id: "update-notes/v3.20.2", label: "3.20.2" }, + { type: "doc", id: "update-notes/v3.20.1", label: "3.20.1" }, + { type: "doc", id: "update-notes/v3.20.0", label: "3.20.0" }, + ], + }, + { + type: "category", + label: "3.19", + items: [ + { type: "doc", id: "update-notes/v3.19", label: "3.19 Combined" }, + { type: "doc", id: "update-notes/v3.19.0", label: "3.19.0" }, + { type: "doc", id: "update-notes/v3.19.1", label: "3.19.1" }, + { type: "doc", id: "update-notes/v3.19.2", label: "3.19.2" }, + { type: "doc", id: "update-notes/v3.19.3", label: "3.19.3" }, + { type: "doc", id: "update-notes/v3.19.4", label: "3.19.4" }, + { type: "doc", id: "update-notes/v3.19.5", label: "3.19.5" }, + { type: "doc", id: "update-notes/v3.19.6", label: "3.19.6" }, + { type: "doc", id: "update-notes/v3.19.7", label: "3.19.7" }, + ], + }, + { + type: "category", + label: "3.18", + items: [ + { type: "doc", id: "update-notes/v3.18", label: "3.18 Combined" }, + { type: "doc", id: "update-notes/v3.18.0", label: "3.18.0" }, + { type: "doc", id: "update-notes/v3.18.1", label: "3.18.1" }, + { type: "doc", id: "update-notes/v3.18.2", label: "3.18.2" }, + { type: "doc", id: "update-notes/v3.18.3", label: "3.18.3" }, + { type: "doc", id: "update-notes/v3.18.4", label: "3.18.4" }, + { type: "doc", id: "update-notes/v3.18.5", label: "3.18.5" }, + ], + }, + { + type: "category", + label: "3.17", + items: [ + { type: "doc", id: "update-notes/v3.17", label: "3.17 Combined" }, + { type: "doc", id: "update-notes/v3.17.0", label: "3.17.0" }, + { type: "doc", id: "update-notes/v3.17.1", label: "3.17.1" }, + { type: "doc", id: "update-notes/v3.17.2", label: "3.17.2" }, + ], + }, + { + type: "category", + label: "3.16", + items: [ + { type: "doc", id: "update-notes/v3.16", label: "3.16 Combined" }, + { type: "doc", id: "update-notes/v3.16.0", label: "3.16.0" }, + { type: "doc", id: "update-notes/v3.16.1", label: "3.16.1" }, + { type: "doc", id: "update-notes/v3.16.2", label: "3.16.2" }, + { type: "doc", id: "update-notes/v3.16.3", label: "3.16.3" }, + { type: "doc", id: "update-notes/v3.16.4", label: "3.16.4" }, + { type: "doc", id: "update-notes/v3.16.5", label: "3.16.5" }, + { type: "doc", id: "update-notes/v3.16.6", label: "3.16.6" }, + ], + }, + { + type: "category", + label: "3.15", + items: [ + { type: "doc", id: "update-notes/v3.15", label: "3.15 Combined" }, + { type: "doc", id: "update-notes/v3.15.0", label: "3.15.0" }, + { type: "doc", id: "update-notes/v3.15.1", label: "3.15.1" }, + { type: "doc", id: "update-notes/v3.15.2", label: "3.15.2" }, + { type: "doc", id: "update-notes/v3.15.3", label: "3.15.3" }, + { type: "doc", id: "update-notes/v3.15.4", label: "3.15.4" }, + { type: "doc", id: "update-notes/v3.15.5", label: "3.15.5" }, + ], + }, + { + type: "category", + label: "3.14", + items: [ + { type: "doc", id: "update-notes/v3.14", label: "3.14 Combined" }, + { type: "doc", id: "update-notes/v3.14.0", label: "3.14.0" }, + { type: "doc", id: "update-notes/v3.14.1", label: "3.14.1" }, + { type: "doc", id: "update-notes/v3.14.2", label: "3.14.2" }, + { type: "doc", id: "update-notes/v3.14.3", label: "3.14.3" }, + ], + }, + { + type: "category", + label: "3.13", + items: [ + { type: "doc", id: "update-notes/v3.13", label: "3.13 Combined" }, + { type: "doc", id: "update-notes/v3.13.0", label: "3.13.0" }, + { type: "doc", id: "update-notes/v3.13.1", label: "3.13.1" }, + { type: "doc", id: "update-notes/v3.13.2", label: "3.13.2" }, + ], + }, + { + type: "category", + label: "3.12", + items: [ + { type: "doc", id: "update-notes/v3.12", label: "3.12 Combined" }, + { type: "doc", id: "update-notes/v3.12.0", label: "3.12.0" }, + { type: "doc", id: "update-notes/v3.12.1", label: "3.12.1" }, + { type: "doc", id: "update-notes/v3.12.2", label: "3.12.2" }, + { type: "doc", id: "update-notes/v3.12.3", label: "3.12.3" }, + ], + }, + { + type: "category", + label: "3.11", + items: [ + { type: "doc", id: "update-notes/v3.11", label: "3.11 Combined" }, + { type: "doc", id: "update-notes/v3.11.0", label: "3.11.0" }, + { type: "doc", id: "update-notes/v3.11.1", label: "3.11.1" }, + { type: "doc", id: "update-notes/v3.11.2", label: "3.11.2" }, + { type: "doc", id: "update-notes/v3.11.3", label: "3.11.3" }, + { type: "doc", id: "update-notes/v3.11.4", label: "3.11.4" }, + { type: "doc", id: "update-notes/v3.11.5", label: "3.11.5" }, + { type: "doc", id: "update-notes/v3.11.6", label: "3.11.6" }, + { type: "doc", id: "update-notes/v3.11.7", label: "3.11.7" }, + { type: "doc", id: "update-notes/v3.11.8", label: "3.11.8" }, + { type: "doc", id: "update-notes/v3.11.9", label: "3.11.9" }, + { type: "doc", id: "update-notes/v3.11.10", label: "3.11.10" }, + { type: "doc", id: "update-notes/v3.11.11", label: "3.11.11" }, + { type: "doc", id: "update-notes/v3.11.12", label: "3.11.12" }, + { type: "doc", id: "update-notes/v3.11.13", label: "3.11.13" }, + { type: "doc", id: "update-notes/v3.11.14", label: "3.11.14" }, + { type: "doc", id: "update-notes/v3.11.15", label: "3.11.15" }, + { type: "doc", id: "update-notes/v3.11.16", label: "3.11.16" }, + { type: "doc", id: "update-notes/v3.11.17", label: "3.11.17" }, + ], + }, + { + type: "category", + label: "3.10", + items: [ + { type: "doc", id: "update-notes/v3.10", label: "3.10 Combined" }, + { type: "doc", id: "update-notes/v3.10.0", label: "3.10.0" }, + { type: "doc", id: "update-notes/v3.10.1", label: "3.10.1" }, + { type: "doc", id: "update-notes/v3.10.2", label: "3.10.2" }, + { type: "doc", id: "update-notes/v3.10.3", label: "3.10.3" }, + { type: "doc", id: "update-notes/v3.10.4", label: "3.10.4" }, + { type: "doc", id: "update-notes/v3.10.5", label: "3.10.5" }, + ], + }, + { + type: "category", + label: "3.9", + items: [ + { type: "doc", id: "update-notes/v3.9", label: "3.9 Combined" }, + { type: "doc", id: "update-notes/v3.9.0", label: "3.9.0" }, + { type: "doc", id: "update-notes/v3.9.1", label: "3.9.1" }, + { type: "doc", id: "update-notes/v3.9.2", label: "3.9.2" }, + ], + }, + { + type: "category", + label: "3.8", + items: [ + { type: "doc", id: "update-notes/v3.8", label: "3.8 Combined" }, + { type: "doc", id: "update-notes/v3.8.0", label: "3.8.0" }, + { type: "doc", id: "update-notes/v3.8.1", label: "3.8.1" }, + { type: "doc", id: "update-notes/v3.8.2", label: "3.8.2" }, + { type: "doc", id: "update-notes/v3.8.3", label: "3.8.3" }, + { type: "doc", id: "update-notes/v3.8.4", label: "3.8.4" }, + { type: "doc", id: "update-notes/v3.8.5", label: "3.8.5" }, + { type: "doc", id: "update-notes/v3.8.6", label: "3.8.6" }, + ], + }, + { + type: "category", + label: "3.7", + items: [ + { type: "doc", id: "update-notes/v3.7", label: "3.7 Combined" }, + { type: "doc", id: "update-notes/v3.7.0", label: "3.7.0" }, + { type: "doc", id: "update-notes/v3.7.1", label: "3.7.1" }, + { type: "doc", id: "update-notes/v3.7.2", label: "3.7.2" }, + { type: "doc", id: "update-notes/v3.7.3", label: "3.7.3" }, + { type: "doc", id: "update-notes/v3.7.4", label: "3.7.4" }, + { type: "doc", id: "update-notes/v3.7.5", label: "3.7.5" }, + { type: "doc", id: "update-notes/v3.7.6", label: "3.7.6" }, + { type: "doc", id: "update-notes/v3.7.7", label: "3.7.7" }, + { type: "doc", id: "update-notes/v3.7.8", label: "3.7.8" }, + { type: "doc", id: "update-notes/v3.7.9", label: "3.7.9" }, + { type: "doc", id: "update-notes/v3.7.10", label: "3.7.10" }, + { type: "doc", id: "update-notes/v3.7.11", label: "3.7.11" }, + { type: "doc", id: "update-notes/v3.7.12", label: "3.7.12" }, + ], + }, + { + type: "category", + label: "3.3", + items: [ + { type: "doc", id: "update-notes/v3.3", label: "3.3 Combined" }, + { type: "doc", id: "update-notes/v3.3.0", label: "3.3.0" }, + { type: "doc", id: "update-notes/v3.3.1", label: "3.3.1" }, + { type: "doc", id: "update-notes/v3.3.2", label: "3.3.2" }, + { type: "doc", id: "update-notes/v3.3.3", label: "3.3.3" }, + { type: "doc", id: "update-notes/v3.3.4", label: "3.3.4" }, + { type: "doc", id: "update-notes/v3.3.5", label: "3.3.5" }, + { type: "doc", id: "update-notes/v3.3.6", label: "3.3.6" }, + { type: "doc", id: "update-notes/v3.3.7", label: "3.3.7" }, + { type: "doc", id: "update-notes/v3.3.8", label: "3.3.8" }, + { type: "doc", id: "update-notes/v3.3.9", label: "3.3.9" }, + { type: "doc", id: "update-notes/v3.3.10", label: "3.3.10" }, + { type: "doc", id: "update-notes/v3.3.11", label: "3.3.11" }, + { type: "doc", id: "update-notes/v3.3.12", label: "3.3.12" }, + { type: "doc", id: "update-notes/v3.3.13", label: "3.3.13" }, + { type: "doc", id: "update-notes/v3.3.14", label: "3.3.14" }, + { type: "doc", id: "update-notes/v3.3.15", label: "3.3.15" }, + { type: "doc", id: "update-notes/v3.3.16", label: "3.3.16" }, + { type: "doc", id: "update-notes/v3.3.17", label: "3.3.17" }, + { type: "doc", id: "update-notes/v3.3.18", label: "3.3.18" }, + { type: "doc", id: "update-notes/v3.3.19", label: "3.3.19" }, + { type: "doc", id: "update-notes/v3.3.20", label: "3.3.20" }, + { type: "doc", id: "update-notes/v3.3.21", label: "3.3.21" }, + { type: "doc", id: "update-notes/v3.3.22", label: "3.3.22" }, + { type: "doc", id: "update-notes/v3.3.23", label: "3.3.23" }, + { type: "doc", id: "update-notes/v3.3.24", label: "3.3.24" }, + { type: "doc", id: "update-notes/v3.3.25", label: "3.3.25" }, + { type: "doc", id: "update-notes/v3.3.26", label: "3.3.26" }, + ], + }, + { + type: "category", + label: "3.1", + items: [ + { type: "doc", id: "update-notes/v3.1", label: "3.1 Combined" }, + { type: "doc", id: "update-notes/v3.1.0", label: "3.1.0" }, + { type: "doc", id: "update-notes/v3.1.1", label: "3.1.1" }, + { type: "doc", id: "update-notes/v3.1.2", label: "3.1.2" }, + { type: "doc", id: "update-notes/v3.1.3", label: "3.1.3" }, + { type: "doc", id: "update-notes/v3.1.4", label: "3.1.4" }, // Includes 3.1.5 fix + { type: "doc", id: "update-notes/v3.1.6", label: "3.1.6" }, + { type: "doc", id: "update-notes/v3.1.7", label: "3.1.7" }, + ], + }, + { + type: "category", + label: "3.0", + items: [ + { type: "doc", id: "update-notes/v3.0", label: "3.0 Combined" }, + { type: "doc", id: "update-notes/v3.0.0", label: "3.0.0" }, + { type: "doc", id: "update-notes/v3.0.1", label: "3.0.1" }, + { type: "doc", id: "update-notes/v3.0.2", label: "3.0.2" }, + { type: "doc", id: "update-notes/v3.0.3", label: "3.0.3" }, + ], + }, + { + type: "category", + label: "3.2", + items: [ + { type: "doc", id: "update-notes/v3.2", label: "3.2 Combined" }, + { type: "doc", id: "update-notes/v3.2.0", label: "3.2.0" }, // Includes 3.2.1, 3.2.2 + { type: "doc", id: "update-notes/v3.2.3", label: "3.2.3" }, + { type: "doc", id: "update-notes/v3.2.4", label: "3.2.4" }, + { type: "doc", id: "update-notes/v3.2.5", label: "3.2.5" }, + { type: "doc", id: "update-notes/v3.2.6", label: "3.2.6" }, + { type: "doc", id: "update-notes/v3.2.7", label: "3.2.7" }, + { type: "doc", id: "update-notes/v3.2.8", label: "3.2.8" }, + ], + }, + { + type: "category", + label: "2.2", + items: [ + { type: "doc", id: "update-notes/v2.2", label: "2.2 Combined" }, + { type: "doc", id: "update-notes/v2.2.0", label: "2.2.0" }, + { type: "doc", id: "update-notes/v2.2.1", label: "2.2.1" }, + { type: "doc", id: "update-notes/v2.2.2", label: "2.2.2" }, + { type: "doc", id: "update-notes/v2.2.3", label: "2.2.3" }, + { type: "doc", id: "update-notes/v2.2.4", label: "2.2.4" }, + { type: "doc", id: "update-notes/v2.2.5", label: "2.2.5" }, + { type: "doc", id: "update-notes/v2.2.6", label: "2.2.6" }, // Includes 2.2.7-2.2.10 + { type: "doc", id: "update-notes/v2.2.11", label: "2.2.11" }, + { type: "doc", id: "update-notes/v2.2.12", label: "2.2.12" }, + { type: "doc", id: "update-notes/v2.2.13", label: "2.2.13" }, + { type: "doc", id: "update-notes/v2.2.14", label: "2.2.14" }, // Includes 2.2.15 + { type: "doc", id: "update-notes/v2.2.16", label: "2.2.16" }, + { type: "doc", id: "update-notes/v2.2.17", label: "2.2.17" }, + { type: "doc", id: "update-notes/v2.2.18", label: "2.2.18" }, + { type: "doc", id: "update-notes/v2.2.19", label: "2.2.19" }, + { type: "doc", id: "update-notes/v2.2.20", label: "2.2.20" }, + { type: "doc", id: "update-notes/v2.2.21", label: "2.2.21" }, + { type: "doc", id: "update-notes/v2.2.22", label: "2.2.22" }, + { type: "doc", id: "update-notes/v2.2.23", label: "2.2.23" }, + { type: "doc", id: "update-notes/v2.2.24", label: "2.2.24" }, + { type: "doc", id: "update-notes/v2.2.25", label: "2.2.25" }, + { type: "doc", id: "update-notes/v2.2.26", label: "2.2.26" }, + { type: "doc", id: "update-notes/v2.2.27", label: "2.2.27" }, + { type: "doc", id: "update-notes/v2.2.28", label: "2.2.28" }, + { type: "doc", id: "update-notes/v2.2.29", label: "2.2.29" }, + { type: "doc", id: "update-notes/v2.2.30", label: "2.2.30" }, + { type: "doc", id: "update-notes/v2.2.31", label: "2.2.31" }, + { type: "doc", id: "update-notes/v2.2.32", label: "2.2.32" }, + { type: "doc", id: "update-notes/v2.2.33", label: "2.2.33" }, + { type: "doc", id: "update-notes/v2.2.34", label: "2.2.34" }, + { type: "doc", id: "update-notes/v2.2.35", label: "2.2.35" }, + { type: "doc", id: "update-notes/v2.2.36", label: "2.2.36" }, // Includes 2.2.37 + { type: "doc", id: "update-notes/v2.2.38", label: "2.2.38" }, + { type: "doc", id: "update-notes/v2.2.39", label: "2.2.39" }, + { type: "doc", id: "update-notes/v2.2.40", label: "2.2.40" }, + { type: "doc", id: "update-notes/v2.2.41", label: "2.2.41" }, + { type: "doc", id: "update-notes/v2.2.42", label: "2.2.42" }, + { type: "doc", id: "update-notes/v2.2.43", label: "2.2.43" }, + { type: "doc", id: "update-notes/v2.2.44", label: "2.2.44" }, + { type: "doc", id: "update-notes/v2.2.45", label: "2.2.45" }, + { type: "doc", id: "update-notes/v2.2.46", label: "2.2.46" }, + ], + }, + { + type: "category", + label: "2.1", + items: [ + { type: "doc", id: "update-notes/v2.1", label: "2.1 Combined" }, + { type: "doc", id: "update-notes/v2.1.2", label: "2.1.2" }, + { type: "doc", id: "update-notes/v2.1.3", label: "2.1.3" }, + { type: "doc", id: "update-notes/v2.1.4", label: "2.1.4" }, + { type: "doc", id: "update-notes/v2.1.5", label: "2.1.5" }, + { type: "doc", id: "update-notes/v2.1.6", label: "2.1.6" }, + { type: "doc", id: "update-notes/v2.1.7", label: "2.1.7" }, + { type: "doc", id: "update-notes/v2.1.8", label: "2.1.8" }, + { type: "doc", id: "update-notes/v2.1.9", label: "2.1.9" }, + { type: "doc", id: "update-notes/v2.1.10", label: "2.1.10" }, + { type: "doc", id: "update-notes/v2.1.11", label: "2.1.11" }, + { type: "doc", id: "update-notes/v2.1.12", label: "2.1.12" }, + { type: "doc", id: "update-notes/v2.1.13", label: "2.1.13" }, + { type: "doc", id: "update-notes/v2.1.14", label: "2.1.14" }, + { type: "doc", id: "update-notes/v2.1.15", label: "2.1.15" }, + { type: "doc", id: "update-notes/v2.1.16", label: "2.1.16" }, + { type: "doc", id: "update-notes/v2.1.17", label: "2.1.17" }, + { type: "doc", id: "update-notes/v2.1.18", label: "2.1.18" }, + { type: "doc", id: "update-notes/v2.1.19", label: "2.1.19" }, + { type: "doc", id: "update-notes/v2.1.20", label: "2.1.20" }, + { type: "doc", id: "update-notes/v2.1.21", label: "2.1.21" }, + ], + }, + ], + }, + { + type: "doc", + label: "FAQ", + id: "faq", + }, + { + type: "link", + label: "Contributing (GitHub)", + href: "https://github.com/RooCodeInc/Roo-Code/blob/main/CONTRIBUTING.md", + }, + { + type: "link", + label: "Roocabulary (GitHub)", + href: "https://github.com/cannuri/Roocabulary", + }, + ], +} + +export default sidebars diff --git a/apps/docs/src/components/AnnouncementBanner/index.tsx b/apps/docs/src/components/AnnouncementBanner/index.tsx new file mode 100644 index 00000000000..e3bc3b22324 --- /dev/null +++ b/apps/docs/src/components/AnnouncementBanner/index.tsx @@ -0,0 +1,53 @@ +import React, { useState, useEffect } from "react" +import { VscGitPullRequest, VscClose } from "react-icons/vsc" +import styles from "./styles.module.css" + +// Change this key whenever you change the banner +// to announce something new +const BANNER_DISMISSED_KEY = "reviewer-banner-dismissed" + +export function AnnouncementBanner() { + const [isVisible, setIsVisible] = useState(false) + + useEffect(() => { + // Check if banner was previously dismissed + const isDismissed = localStorage.getItem(BANNER_DISMISSED_KEY) + if (!isDismissed) { + setIsVisible(true) + } + }, []) + + const handleDismiss = () => { + setIsVisible(false) + localStorage.setItem(BANNER_DISMISSED_KEY, "true") + } + + if (!isVisible) { + return null + } + + return ( +
+
+ + + Get comprehensive, actionable reviews directly in your PRs. + + + Try Roo's PR Reviewer + + +
+
+ ) +} diff --git a/apps/docs/src/components/AnnouncementBanner/styles.module.css b/apps/docs/src/components/AnnouncementBanner/styles.module.css new file mode 100644 index 00000000000..6b0638f0e54 --- /dev/null +++ b/apps/docs/src/components/AnnouncementBanner/styles.module.css @@ -0,0 +1,84 @@ +.announcementBanner { + position: relative; + width: 100%; + background: linear-gradient(90deg, #4f46e5, #2563eb); + border-bottom: 1px solid rgba(147, 197, 253, 0.5); + box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15); +} + +.bannerContent { + display: flex; + align-items: center; + justify-content: center; + gap: 0.75rem; + padding: 0.75rem 3rem; + color: #ffffff; + position: relative; +} + +.bannerHeadline { + font-weight: 600; + font-size: 0.95rem; +} + +.bannerLink { + color: #ffffff; + font-weight: 600; + font-size: 0.95rem; + text-decoration: underline; + text-decoration-color: rgba(255, 255, 255, 0.7); + text-decoration-thickness: 2px; + transition: text-decoration-color 0.2s ease; +} + +.bannerLink:hover { + color: #ffffff; + text-decoration-color: rgba(255, 255, 255, 0.95); +} + +.dismissButton { + position: absolute; + right: 1rem; + top: 1.5rem; + transform: translateY(-50%); + background: transparent; + border: none; + color: #ffffff; + cursor: pointer; + padding: 0.25rem; + display: flex; + align-items: center; + justify-content: center; + border-radius: 4px; + transition: background-color 0.2s ease; +} + +.dismissButton:hover { + background-color: rgba(255, 255, 255, 0.1); +} + +.dismissButton:focus { + outline: 2px solid rgba(255, 255, 255, 0.5); + outline-offset: 2px; +} + +@media (max-width: 768px) { + .bannerContent { + flex-direction: column; + gap: 0.5rem; + padding: 1rem 3rem 1rem 1rem; + align-items: flex-start; + } + + .bannerHeadline { + font-size: 0.875rem; + } + + .bannerLink { + font-size: 0.875rem; + } + + .dismissButton { + right: 0.5rem; + } +} diff --git a/apps/docs/src/components/Codicon.tsx b/apps/docs/src/components/Codicon.tsx new file mode 100644 index 00000000000..c375fac604b --- /dev/null +++ b/apps/docs/src/components/Codicon.tsx @@ -0,0 +1,10 @@ +import React from "react" +import "@vscode/codicons/dist/codicon.css" + +interface CodiconProps { + name: string +} + +export default function Codicon({ name }: CodiconProps): React.JSX.Element { + return