Skip to content

Commit 88b692b

Browse files
committed
fix(docs): update links for codebase indexing and add task todo list documentation
feat(docs): introduce task todo list feature documentation with detailed usage and benefits chore(docs): add version 3.23 release notes and update index for new features fix(docs): correct links in experimental features and update sidebar for codebase indexing feat(docs): add images for codebase indexing and task todo list to enhance documentation fix(docs): improve update notes for version 3.22 and 3.18 with accurate links and descriptions feat(docs): add new orchestrator modes and message editing features in release notes for version 3.23
1 parent 75a00fc commit 88b692b

25 files changed

+973
-328
lines changed

docs/advanced-usage/available-tools/codebase-search.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# codebase_search
22

3-
:::warning Experimental Feature
4-
The `codebase_search` tool is part of the experimental [Codebase Indexing](/features/experimental/codebase-indexing) feature. This feature is under active development and may change significantly in future releases. It requires additional setup including an embedding provider and vector database.
3+
:::info Setup Required
4+
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.
55
:::
66

77
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.
@@ -48,9 +48,9 @@ This tool searches through your indexed codebase using semantic similarity rathe
4848

4949
## Requirements
5050

51-
This tool is only available when the experimental Codebase Indexing feature is properly configured:
51+
This tool is only available when the Codebase Indexing feature is properly configured:
5252

53-
- **Feature Enabled**: Codebase Indexing must be enabled in experimental settings
53+
- **Feature Configured**: Codebase Indexing must be configured in settings
5454
- **Embedding Provider**: OpenAI API key or Ollama configuration required
5555
- **Vector Database**: Qdrant instance running and accessible
5656
- **Index Status**: Codebase must be indexed (status: "Indexed" or "Indexing")
@@ -59,11 +59,10 @@ This tool is only available when the experimental Codebase Indexing feature is p
5959

6060
## Limitations
6161

62-
- **Experimental Feature**: Part of the experimental codebase indexing system
6362
- **Requires Configuration**: Depends on external services (embedding provider + Qdrant)
6463
- **Index Dependency**: Only searches through indexed code blocks
6564
- **Result Limits**: Maximum of 50 results per search to maintain performance
66-
- **Similarity Threshold**: Only returns results above 0.4 similarity score
65+
- **Similarity Threshold**: Only returns results above similarity threshold (default: 0.4, configurable)
6766
- **File Size Limits**: Limited to files under 1MB that were successfully indexed
6867
- **Language Support**: Effectiveness depends on Tree-sitter language support
6968

@@ -87,7 +86,7 @@ When the `codebase_search` tool is invoked, it follows this process:
8786
3. **Vector Search Execution**:
8887
- Searches the Qdrant vector database for similar code embeddings
8988
- Uses cosine similarity to find the most relevant code blocks
90-
- Applies the minimum similarity threshold (0.4) to filter results
89+
- Applies the minimum similarity threshold (default: 0.4, configurable) to filter results
9190
- Limits results to 50 matches for optimal performance
9291

9392
4. **Path Filtering** (if specified):
Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
# update_todo_list
2+
3+
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.
4+
5+
---
6+
7+
## Parameters
8+
9+
The tool accepts these parameters:
10+
11+
- `todos` (required): A markdown-formatted string representing the complete checklist with status indicators
12+
13+
---
14+
15+
## What It Does
16+
17+
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.
18+
19+
---
20+
21+
## When is it used?
22+
23+
- When managing complex, multi-step tasks that benefit from structured tracking
24+
- When Roo needs to show progress through a series of related activities
25+
- When tasks require step-by-step completion verification before proceeding
26+
- When new actionable items are discovered during long or complex workflows
27+
- When providing clear checkpoints and progress visibility to users
28+
29+
---
30+
31+
## Key Features
32+
33+
- **Full Checklist Replacement**: Overwrites the existing todo list with the updated version provided
34+
- **Interactive UI Component**: Displays as an editable interface element in the chat
35+
- **Multiple Status Types**: Supports pending, in-progress, and completed task states
36+
- **Dynamic Task Management**: Add new tasks as they arise during workflow execution
37+
- **User-Friendly Editing**: Provides direct editing capabilities within the chat interface
38+
- **Step-by-Step Tracking**: Enables confirmation of each step before updating and proceeding
39+
- **Progress Visualization**: Clear visual indicators for task completion status
40+
- **Workflow Integration**: Seamlessly integrates with task execution and completion flows
41+
42+
---
43+
44+
## Limitations
45+
46+
- **Complete Replacement**: Replaces the entire list rather than making incremental updates
47+
- **Single-Level Structure**: Uses single-level markdown checklists without nesting support
48+
- **Format Requirements**: Requires specific markdown checkbox syntax for proper parsing
49+
- **Manual Updates**: Requires explicit tool calls to update the list status
50+
- **State Management**: Todo list state is tied to the current task and conversation context
51+
52+
---
53+
54+
## How It Works
55+
56+
When the `update_todo_list` tool is invoked, it follows this process:
57+
58+
1. **Input Validation**:
59+
- Validates the required `todos` parameter is provided
60+
- Parses the markdown checklist format for syntax correctness
61+
- Checks for valid status indicators: `[ ]`, `[-]`, and `[x]`
62+
63+
2. **List Processing**:
64+
- Processes the markdown-formatted checklist
65+
- Extracts individual todo items with their status indicators
66+
- Validates the structure and format of each item
67+
68+
3. **UI Integration**:
69+
- Presents the updated todo list to the user for approval
70+
- Replaces any existing todo list with the new version
71+
- Renders the list as an interactive component in the chat interface
72+
73+
4. **User Interaction**:
74+
- Allows users to edit todos directly in the UI when in editing mode
75+
- Provides "Add Todo" functionality for real-time list expansion
76+
- Synchronizes changes back to the extension to maintain state consistency
77+
78+
5. **State Management**:
79+
- Updates the task's internal todo list representation
80+
- Maintains synchronization between UI state and backend data
81+
- Preserves todo list state across conversation interactions
82+
83+
---
84+
85+
## Checklist Format Requirements
86+
87+
The tool uses a specific markdown format for todo items:
88+
89+
### Status Options
90+
- `[ ]` - Pending task (not started)
91+
- `[-]` - In progress task (currently being worked on)
92+
- `[x]` - Completed task (fully finished)
93+
94+
### Format Rules
95+
- Use single-level markdown checklist (no nesting or subtasks)
96+
- List todos in intended execution order
97+
- Each todo item should be clear and actionable
98+
- Status should accurately reflect current task state
99+
100+
---
101+
102+
## Task Management Guidelines
103+
104+
### Status Updates
105+
- Mark tasks as completed immediately after all work is finished
106+
- Start the next task by marking it as in progress
107+
- Use pending status for tasks not yet started
108+
- Only mark tasks as completed when fully accomplished with no unresolved dependencies
109+
110+
### Dynamic List Management
111+
- Add new todos as soon as they are identified during task execution
112+
- Remove tasks only if they are no longer relevant or explicitly requested
113+
- Retain all unfinished tasks and update their status as needed
114+
- If a task is blocked, keep it as in progress and add new todos for resolution steps
115+
116+
---
117+
118+
## Examples When Used
119+
120+
- When developing a web application, Roo creates a todo list tracking design, implementation, testing, and deployment phases.
121+
- When setting up a development environment, Roo tracks installation of dependencies, configuration steps, and verification tasks.
122+
- When debugging complex issues, Roo maintains a list of investigation steps, potential causes, and testing procedures.
123+
- When refactoring code, Roo tracks which files need updates, what tests need modification, and documentation changes required.
124+
- When implementing new features, Roo manages tasks for planning, coding, testing, and integration steps.
125+
126+
---
127+
128+
## Usage Examples
129+
130+
Creating an initial todo list for a development task:
131+
```xml
132+
<update_todo_list>
133+
<todos>
134+
[ ] Analyze requirements
135+
[ ] Design architecture
136+
[ ] Implement core logic
137+
[ ] Write tests
138+
[ ] Update documentation
139+
</todos>
140+
</update_todo_list>
141+
```
142+
143+
Updating progress after completing the first task:
144+
```xml
145+
<update_todo_list>
146+
<todos>
147+
[x] Analyze requirements
148+
[-] Design architecture
149+
[ ] Implement core logic
150+
[ ] Write tests
151+
[ ] Update documentation
152+
</todos>
153+
</update_todo_list>
154+
```
155+
156+
Adding new tasks discovered during implementation:
157+
```xml
158+
<update_todo_list>
159+
<todos>
160+
[x] Analyze requirements
161+
[x] Design architecture
162+
[x] Implement core logic
163+
[-] Write tests
164+
[ ] Update documentation
165+
[ ] Add performance benchmarks
166+
[ ] Create deployment script
167+
</todos>
168+
</update_todo_list>
169+
```
170+
171+
Managing a complex debugging workflow:
172+
```xml
173+
<update_todo_list>
174+
<todos>
175+
[x] Reproduce the issue
176+
[x] Check recent code changes
177+
[-] Analyze error logs
178+
[ ] Test with different configurations
179+
[ ] Check database queries
180+
[ ] Verify network connectivity
181+
[ ] Create fix and test
182+
</todos>
183+
</update_todo_list>

docs/faq.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ Yes, you can create your own MCP servers to add custom functionality to Roo Code
146146

147147
### What is Codebase Indexing?
148148

149-
[Codebase Indexing](/features/experimental/codebase-indexing) is an experimental feature that 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.
149+
[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.
150150

151151
### How much does Codebase Indexing cost?
152152

0 commit comments

Comments
 (0)