From 36feb73bfdaddd5e6397e62bdb8c19b4c5c03eee Mon Sep 17 00:00:00 2001 From: Sandy Tao Date: Thu, 6 Nov 2025 12:21:53 -0800 Subject: [PATCH] Revert "Enable WriteTodos tool by default (#12500)" (#12658) --- docs/get-started/configuration.md | 2 +- docs/tools/todos.md | 7 +++---- packages/cli/src/config/settingsSchema.ts | 2 +- packages/core/src/config/config.ts | 2 +- schemas/settings.schema.json | 4 ++-- 5 files changed, 8 insertions(+), 9 deletions(-) diff --git a/docs/get-started/configuration.md b/docs/get-started/configuration.md index 8d17f10c78..477ddeff5a 100644 --- a/docs/get-started/configuration.md +++ b/docs/get-started/configuration.md @@ -481,7 +481,7 @@ their corresponding top-level category object in your `settings.json` file. - **`useWriteTodos`** (boolean): - **Description:** Enable the write_todos_list tool. - - **Default:** `true` + - **Default:** `false` #### `security` diff --git a/docs/tools/todos.md b/docs/tools/todos.md index 4c11482089..b345094412 100644 --- a/docs/tools/todos.md +++ b/docs/tools/todos.md @@ -6,8 +6,7 @@ This document describes the `write_todos` tool for the Gemini CLI. The `write_todos` tool allows the Gemini agent to create and manage a list of subtasks for complex user requests. This provides you, the user, with greater -visibility into the agent's plan and its current progress. It also helps with -alignment where the agent is less likely to lose track of its current goal. +visibility into the agent's plan and its current progress. ### Arguments @@ -50,8 +49,8 @@ write_todos({ ## Important notes -- **Enabling:** This tool is enabled by default. You can disable it in your - `settings.json` file by setting `"useWriteTodos": false`. +- **Enabling:** This tool is disabled by default. To use it, you must enable it + in your `settings.json` file by setting `"useWriteTodos": true`. - **Intended Use:** This tool is primarily used by the agent for complex, multi-turn tasks. It is generally not used for simple, single-turn questions. diff --git a/packages/cli/src/config/settingsSchema.ts b/packages/cli/src/config/settingsSchema.ts index 8d4e459f58..29c4211557 100644 --- a/packages/cli/src/config/settingsSchema.ts +++ b/packages/cli/src/config/settingsSchema.ts @@ -1080,7 +1080,7 @@ const SETTINGS_SCHEMA = { label: 'Use Write Todos', category: 'Advanced', requiresRestart: false, - default: true, + default: false, description: 'Enable the write_todos_list tool.', showInDialog: false, }, diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 5dcaf503e0..cbe26bf7d3 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -499,7 +499,7 @@ export class Config { params.truncateToolOutputLines ?? DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES; this.enableToolOutputTruncation = params.enableToolOutputTruncation ?? true; this.useSmartEdit = params.useSmartEdit ?? true; - this.useWriteTodos = params.useWriteTodos ?? true; + this.useWriteTodos = params.useWriteTodos ?? false; this.initialUseModelRouter = params.useModelRouter ?? false; this.useModelRouter = this.initialUseModelRouter; this.disableModelRouterForAuth = params.disableModelRouterForAuth ?? []; diff --git a/schemas/settings.schema.json b/schemas/settings.schema.json index 055164cd4e..0633784aa3 100644 --- a/schemas/settings.schema.json +++ b/schemas/settings.schema.json @@ -939,8 +939,8 @@ "useWriteTodos": { "title": "Use Write Todos", "description": "Enable the write_todos_list tool.", - "markdownDescription": "Enable the write_todos_list tool.\n\n- Category: `Advanced`\n- Requires restart: `no`\n- Default: `true`", - "default": true, + "markdownDescription": "Enable the write_todos_list tool.\n\n- Category: `Advanced`\n- Requires restart: `no`\n- Default: `false`", + "default": false, "type": "boolean" }, "security": {