Roo Code

repository·main·Indexed 12 days ago

https://github.com/roocodeinc/roo-code

An AI-powered development assistant for editors featuring specialized modes (Code, Architect, Ask, Debug) to automate coding, refactoring, and debugging. It includes a CLI for terminal-based agent execution, an IPC package for socket-based communication, and a programmatic API for VS Code extension integration.

Tokens
264.6K
Snippets
530
Records
1.8K
Agent score
98%

What's inside Roo Code

  1. Overview of Roo Code capabilities

    main

    Roo Code is an open-source, model-agnostic AI coding agent for VS Code. It provides autonomous capabilities including file system access, terminal control, and multi-step workflows. It is designed to work locally within your IDE, allowing for deep, iterative development work.

    Key Capabilities:

    • Code Generation: Create code from natural language descriptions and specifications.
    • Refactoring & Debugging: Modify existing codebases and fix errors.
    • Documentation: Write and update project documentation.
    • Codebase Intelligence: Answer questions about your specific codebase.
    • Automation: Automate repetitive development tasks.
    • MCP Integration: Utilize Model Context Protocol (MCP) Servers to extend functionality.
  2. Overview of Roo Code Features

    main

    Roo Code is an AI-powered coding assistant that provides a suite of features designed to enhance development workflows. Key capabilities include:

    • Code Editing & Navigation: Concurrent file reads, code actions (refactoring/fixes), and diagnostics integration.
    • AI Enhancements: Codebase indexing for semantic search, prompt enhancement, suggested responses, and adjustable model temperature.
    • Workflow Management: Task todo lists, conversation checkpoints, boomerang tasks (reusable templates), and custom modes.
    • Configuration: API configuration profiles, custom instructions, reusable skills, and .rooignore for file access control.
    • Integrations: Model Context Protocol (MCP) for external tools, shell integration for terminal commands, and a marketplace for custom modes.
    • Productivity: Auto-approving actions, keyboard shortcuts, and intelligent context condensing to optimize token usage.
    • Experimental: Custom tool definitions (TS/JS) and concurrent file edits.
  3. Roo Code 3.39.2 Release Notes

    main

    The 3.39.2 release (2026-01-09) introduced several improvements and fixes:

    Bug Fixes

    • Cerebras: Fixed 422 errors when mixing built-in and MCP tools by ensuring consistent strict-mode values.
    • OpenAI-compatible providers: Fixed issues where models would describe tool usage instead of invoking tools.
    • File Edits: Improved reliability by fixing overly strict edit_file matching.
    • VS Code Language Model (vscode-lm): Fixed errors occurring when tool-call parts were ordered before text parts in assistant messages.
    • Gemini via OpenRouter: Fixed failures when assistant messages contained only tool calls.
    • Tool Execution: Fixed an issue where approving a tool run while adding feedback could produce duplicate results.
    • Gemini Tool Calling: Fixed inconsistent behavior across turns by correctly preserving thought signatures.

    Provider Updates

    • Gemini and Vertex: Improved file-edit reliability by routing edits through a patch-based flow instead of using the edit_file tool.
    • Gemini: Improved tool selection behavior by allowing Roo's routing to manage tool allow/deny lists instead of the provider overriding them.

    QOL & Misc

    • Error Messaging: Improved clarity when a provider terminates a streaming response early (e.g., due to timeouts or rate limits).
    • CLI Defaults: The default model for the CLI has been switched to anthropic/claude-opus-4.5.
  4. Provider Updates in v3.36.0

    main

    Several improvements were made to provider reliability and functionality:

    • Roo Provider: Now defaults to native tool protocol for better performance and reliability. Also supports reasoning visibility.
    • Minimax: The M2 model now utilizes search_and_replace for more reliable file editing.
    • Cerebras: Implements conservative 8K token limits to prevent premature rate limiting.
    • Vercel AI Gateway: Improved model fetching reliability for models with incomplete pricing data.
  5. QOL Improvements in v3.26.1

    main

    Version 3.26.1 includes several Quality of Life (QOL) enhancements for the user interface:

    • Model Identification: The API configuration dropdown now displays model IDs alongside profile names, making it easier to identify specific models.
    • Cleaner UI: Removed dot separators in the API configuration dropdown and improved consistency in chat input controls.
    • Visual Consistency: Tooltip styling has been updated to match native VSCode shadows.
    • Task Headers: Removed duplicate cache displays in task headers to reduce confusion.
  6. List of current experimental features

    main

    The following experimental capabilities are currently available in Roo Code:

    • Custom Tools: Define TypeScript/JavaScript tools that Roo can call similarly to built-in tools.
    • Background Editing: Allows you to continue working uninterrupted while Roo performs file edits in the background.
    • Image Generation: Enables generating images from text prompts and saving them directly to your workspace.
    • Run Slash Command: Allows executing predefined slash commands for templated instructions and workflow automation.
  7. Improvements to Tooltips and OpenRouter Cost Transparency

    main

    Version 3.22.1 includes several Quality of Life (QOL) improvements:

    • Consistent Tooltips: Tooltip delays have been standardized to 300ms across the application for predictable behavior.
    • OpenRouter Cost Transparency: Improved the accuracy of OpenRouter BYOK (Bring Your Own Key) cost calculations by using official upstream costs. Additionally, cached token count visibility has been restored.
  8. Enhanced large file handling in Roo Code 3.10.3

    main

    Roo Code 3.10.3 introduces improved capabilities for managing large files. The system now supports:

    • Explicit full file requests: The ability to request a complete file read when partial reads are insufficient.
    • Custom chunk sizes: Control over the size of data chunks during file reads to optimize performance and context window usage.
    • Improved instructions: Clearer guidance for the LLM when performing partial file operations.
  9. Roo Code 3.28.4 QOL Improvements

    main

    Version 3.28.4 introduced several Quality of Life (QOL) enhancements:

    • Redesigned Message Feed: A cleaner chat interface with improved visual hierarchy for better readability.
    • Responsive Auto-Approve: The auto-approve dropdown now uses smart 1-2 column layouts that adapt to window sizes, and tooltips for enabled actions no longer truncate.
    • Network Resilience: Telemetry data now automatically retries on network failures to prevent loss of diagnostics during connectivity issues.
  10. Understand the Roo Code chat interface components

    main

    The Roo Code chat interface is the primary interaction point, accessible via the Roo Code icon in the VS Code Activity Bar. It consists of several key functional areas:

    • Chat History: Displays the conversation, including your requests, Roo Code's responses, and actions taken (e.g., file edits, command executions).
    • Input Field: Where you type tasks and questions in plain English.
    • Action Buttons: Located above the input field; used to approve or reject proposed actions. These change based on context.
    • Send Button: A plane icon at the far right of the input field used to submit messages.
    • Plus Button: Located in the header; switches to the Chat tab and focuses the input. Use this to start a new task or clear the current session.
    • Settings Button: A gear icon used to open general settings for customizing features and behavior.
    • Mode Selector: A dropdown to the left of the input field used to select the active mode. Note that the gear icon within the Mode Selector opens the Modes tab, not the general settings.

    Messages in the history support clickable links (file paths open in the editor, URLs open in the browser), expanding/collapsing messages by clicking them, and copying text via standard commands or dedicated 'Copy' buttons on code blocks.

  11. Improved Command Handling in Roo Code

    main

    Roo Code v3.23.19 introduced improvements to how commands are validated and parsed:

    • Smarter Command Validation: The system now uses improved logic that only auto-denies subshell commands if they contain specific denied prefixes. This reduces false positives and allows more commands to be executed safely.
    • Multi-line Command Support: Commands containing newlines are now properly parsed. This ensures compatibility and ease of use for multi-line commands across Unix, Windows, and legacy Mac operating systems.