Skip to content
← Back to release · 2.1.268
Improvements / v2.1.268

Gate task-tracking tools by model

CHANGELOG · original

Changed the task-tracking tools (TaskCreate/Get/Update/List, TodoWrite) to be offered only on Claude 3.x, Opus 4.0–4.7, Sonnet 4.0–4.6, Haiku 4.5; set CLAUDE_CODE_ENABLE_TODO_TOOLS=1 elsewhere
Open official changelog ↗

Documentation

Documentation excerpt

Task tool availability

The task-tracking tools, TaskCreate, TaskGet, TaskUpdate, TaskList, and TodoWrite, are available by default only on Claude 3.x models, Opus 4 through 4.7, Sonnet 4 through 4.6, and Haiku 4.5. Wherever the tools are available, you get the four Task tools, or TodoWrite instead when you set CLAUDE_CODE_ENABLE_TASKS=0.

On every other model, Claude Code leaves the tools out unless you opt in. The same applies to a model ID Claude Code doesn't recognize, such as a custom model name served through an LLM gateway. On newer models, Claude keeps track of multi-step work without a written checklist, and the tools' definitions and reminders take up context. Without the tools, Claude adds nothing to the task list while it works.

If you'd like to use these tools on a model that doesn't have them by default, do one of the following:

  • Export CLAUDE_CODE_ENABLE_TODO_TOOLS=1 before you start Claude Code, for example CLAUDE_CODE_ENABLE_TODO_TOOLS=1 claude. Claude Code then provides the same tools on every model and every provider
  • Name one of the tools in --allowedTools, for example claude --allowedTools TaskCreate
  • List the tools in --tools, which restricts the session's built-in tools to the ones it names. Include the tools you want alongside the other built-in tools you use
  • In the Agent SDK, the allowedTools and tools options work the same way as the two flags

In background sessions and in cloud sessions, Claude Code provides the same tools on every model, listed or not.

Claude Code gives a subagent the tools only when your session has them, even when the subagent runs a different model. An in-process agent team teammate follows your session the same way, while a teammate in its own split pane runs as a separate Claude Code process, so its own model decides. Without the Task tools, an agent coordinates with its team through messages instead of the shared task list.

The default set described here applies in Claude Code v2.1.268 and later.

Documentation snapshot · 2026-09-23

Change details