Skip to content

Commit 39c5cf7

Browse files
authored
Merge branch 'RooCodeInc:main' into main
2 parents ab10140 + 7645aad commit 39c5cf7

File tree

75 files changed

+3611
-97
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+3611
-97
lines changed

.changeset/large-olives-wink.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"roo-cline": patch
3+
---
4+
5+
Fix model search being prefilled in dropdown to prevent confusion in available models

packages/types/src/codebase-index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,16 @@ export const codebaseIndexConfigSchema = z.object({
2424
codebaseIndexEmbedderProvider: z.enum(["openai", "ollama", "openai-compatible", "gemini"]).optional(),
2525
codebaseIndexEmbedderBaseUrl: z.string().optional(),
2626
codebaseIndexEmbedderModelId: z.string().optional(),
27+
codebaseIndexEmbedderModelDimension: z.number().optional(),
2728
codebaseIndexSearchMinScore: z.number().min(0).max(1).optional(),
2829
codebaseIndexSearchMaxResults: z
2930
.number()
3031
.min(CODEBASE_INDEX_DEFAULTS.MIN_SEARCH_RESULTS)
3132
.max(CODEBASE_INDEX_DEFAULTS.MAX_SEARCH_RESULTS)
3233
.optional(),
34+
// OpenAI Compatible specific fields
35+
codebaseIndexOpenAiCompatibleBaseUrl: z.string().optional(),
36+
codebaseIndexOpenAiCompatibleModelDimension: z.number().optional(),
3337
})
3438

3539
export type CodebaseIndexConfig = z.infer<typeof codebaseIndexConfigSchema>

packages/types/src/global-settings.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ export const globalSettingsSchema = z.object({
4747
alwaysAllowExecute: z.boolean().optional(),
4848
alwaysAllowFollowupQuestions: z.boolean().optional(),
4949
followupAutoApproveTimeoutMs: z.number().optional(),
50+
alwaysAllowUpdateTodoList: z.boolean().optional(),
5051
allowedCommands: z.array(z.string()).optional(),
5152
allowedMaxRequests: z.number().nullish(),
5253
autoCondenseContext: z.boolean().optional(),
@@ -195,6 +196,7 @@ export const EVALS_SETTINGS: RooCodeSettings = {
195196
alwaysAllowSubtasks: true,
196197
alwaysAllowExecute: true,
197198
alwaysAllowFollowupQuestions: true,
199+
alwaysAllowUpdateTodoList: true,
198200
followupAutoApproveTimeoutMs: 0,
199201
allowedCommands: ["*"],
200202

packages/types/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,4 @@ export * from "./terminal.js"
2020
export * from "./tool.js"
2121
export * from "./type-fu.js"
2222
export * from "./vscode.js"
23+
export * from "./todo.js"

packages/types/src/message.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ export const clineSays = [
106106
"condense_context",
107107
"condense_context_error",
108108
"codebase_search_result",
109+
"user_edit_todos",
109110
] as const
110111

111112
export const clineSaySchema = z.enum(clineSays)

packages/types/src/todo.ts

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { z } from "zod"
2+
3+
/**
4+
* TodoStatus
5+
*/
6+
export const todoStatusSchema = z.enum(["pending", "in_progress", "completed"] as const)
7+
8+
export type TodoStatus = z.infer<typeof todoStatusSchema>
9+
10+
/**
11+
* TodoItem
12+
*/
13+
export const todoItemSchema = z.object({
14+
id: z.string(),
15+
content: z.string(),
16+
status: todoStatusSchema,
17+
})
18+
19+
export type TodoItem = z.infer<typeof todoItemSchema>

packages/types/src/tool.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ export const toolNames = [
3333
"new_task",
3434
"fetch_instructions",
3535
"codebase_search",
36+
"update_todo_list",
3637
] as const
3738

3839
export const toolNamesSchema = z.enum(toolNames)

src/core/assistant-message/presentAssistantMessage.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import { attemptCompletionTool } from "../tools/attemptCompletionTool"
2626
import { newTaskTool } from "../tools/newTaskTool"
2727

2828
import { checkpointSave } from "../checkpoints"
29+
import { updateTodoListTool } from "../tools/updateTodoListTool"
2930

3031
import { formatResponse } from "../prompts/responses"
3132
import { validateToolUse } from "../tools/validateToolUse"
@@ -205,6 +206,8 @@ export async function presentAssistantMessage(cline: Task) {
205206
return `[${block.name} to '${block.params.mode_slug}'${block.params.reason ? ` because: ${block.params.reason}` : ""}]`
206207
case "codebase_search": // Add case for the new tool
207208
return `[${block.name} for '${block.params.query}']`
209+
case "update_todo_list":
210+
return `[${block.name}]`
208211
case "new_task": {
209212
const mode = block.params.mode ?? defaultModeSlug
210213
const message = block.params.message ?? "(no message)"
@@ -410,6 +413,9 @@ export async function presentAssistantMessage(cline: Task) {
410413
case "write_to_file":
411414
await writeToFileTool(cline, block, askApproval, handleError, pushToolResult, removeClosingTag)
412415
break
416+
case "update_todo_list":
417+
await updateTodoListTool(cline, block, askApproval, handleError, pushToolResult, removeClosingTag)
418+
break
413419
case "apply_diff": {
414420
// Get the provider and state to check experiment settings
415421
const provider = cline.providerRef.deref()

0 commit comments

Comments
 (0)