Skip to main content

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, to make more informed decisions when orchestrating tasks (e.g., via the new_task tool) or when automatically switching modes (e.g., via the 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. You can learn more about configuring this in the Custom Modes documentation.

'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 tool (used by Roo to initiate new tasks) has been simplified for better AI comprehension. This internal refinement ensures the Boomerang (Orchestrator) functionality 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 experimental feature, including how to enable it, please see the Intelligent Context Condensation documentation.

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!)