[Bug] Task tools gated OFF in real-TTY CLI; CLAUDE_CODE_ENABLE_TASKS env var ineffective

Status Open
Reported on v2.1.217
Maintainer reply None cached
Activity 6 comments · opened Jul 22, 2026

Bug Description
Task tools gated OFF in real-TTY CLI (v2.1.217); CLAUDE_CODE_ENABLE_TASKS=1 has no effect; only workaround disables paid entitlements.

SUMMARY
TaskCreate/TaskUpdate/TaskList/TaskGet are unavailable at runtime in a genuine interactive CLI session on latest release. The documented override CLAUDE_CODE_ENABLE_TASKS=1 does NOT restore them. The only working re-enable is disabling telemetry/GrowthBook, which also drops 1M context, /remote-control, --bg, Agent View, and the 1h prompt-cache TTL. Users must trade paid features + safety killswitches to get a first-party tool.

ENVIRONMENT (observed)

  • Version: 2.1.217
  • Entrypoint: cli
  • Host: macOS Darwin 25.5.0, Ghostty terminal (TERM_PROGRAM=ghostty), real interactive TTY (not VSCode, not piped)
  • CLAUDE_CODE_ENABLE_TASKS: unset by default
  • Task tools: absent from tool registry

REPRODUCTION (observed)

  • claude -> task tools NOT available
  • CLAUDE_CODE_ENABLE_TASKS=1 claude -> still NOT available (documented override ineffective)
  • DISABLE_TELEMETRY=1 claude -> available
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 claude -> available

DISCRIMINATING CONCLUSION
Because the explicit enable flag has no effect while cutting the flag-fetch works, the blocker is the OUTER remote GrowthBook flag, not the inner isTTY/interactive check. Baked-in default is ON; the remote flag evaluates OFF for this account/cohort/version and is only bypassed by suppressing flag delivery entirely.

IMPACT OF THE ONLY WORKAROUND (coupling defect)
Disabling GrowthBook to gain task tools forces other flag-gated features to OFF defaults: 1M context, /remote-control, 1h prompt-cache TTL, --bg/background, Agent View, and remote killswitches. The two groups have opposite needs on one switch (task tools need GrowthBook OFF; remote-control/1M need it ON), so no single env var satisfies both.

REQUESTS (ranked)

  1. Decouple flag-value delivery from telemetry/exposure logging: telemetry opt-out must not disable GrowthBook flag evaluation.
  2. Make CLAUDE_CODE_ENABLE_TASKS=1 authoritative over the outer remote gate, not only the inner interactive check.
  3. Surface gate state in /doctor or --debug (task-tool availability + reason: remote flag OFF / rollout cohort / killswitch / interactive check).
  4. Clarify in release notes whether latest-version CLI users are in the task-tools rollout, or under a temporary killswitch.

RELATED (dedupe; this adds the real-TTY CLI + ineffective ENABLE_TASKS angle)
#58383, #45381, #53899, #23816, #23874

OPEN QUESTION
Is a real-TTY CLI on 2.1.217 intended to have task tools by default? If yes, this is a flag-targeting bug; if no, CLAUDE_CODE_ENABLE_TASKS should work and currently does not.

Environment Info

  • Platform: darwin
  • Terminal: ghostty
  • Version: 2.1.217
  • Feedback ID: 6e9312ad-a2d0-49d5-bfac-94e2f089f07a

Errors

[]

View original on GitHub ↗

5 Comments

alpapan · 1 month ago

likewise. here is my report:

Date: 2026-07-23
Claude Code version: 2.1.218 (identical on all machines)
Account tier: claude_max (default_claude_max_20x)

Summary

On one machine ("rough"), the task-tracker tools are unavailable to the main agent and to subagents under Opus and Sonnet. The legacy TodoWrite and the structured TaskCreate/TaskUpdate/TaskList/TaskGet are BOTH reported as "exists but is not enabled in this context". Only a Haiku session surfaces TaskCreate. A second machine ("machine2") with an identical account, org, CLI version, and settings.json does not have the problem. The differentiator is the per-device GrowthBook feature-flag resolution.

The prior workaround, DISABLE_GROWTHBOOK=1, used to restore the task tools. As of today (2026-07-23) that same env var breaks Remote Control (phone push / remote session). So there is now no env-only configuration that yields both working task tools and working Remote Control on the affected machine.

Impact

With CLAUDE_CODE_ENABLE_TASKS set to either "0" or "1" (both tested, both live-confirmed via printenv), the main agent under Opus and Sonnet has NO task-tracking tool at all - not TaskCreate, not TodoWrite. This removes task tracking for any non-Haiku session on that machine.

Reproduction (machine "rough")

  1. Session model Opus 4.8 or Sonnet 5.
  2. Attempt TodoWrite -> "Error: No such tool available: TodoWrite. TodoWrite exists but is not enabled in this context."
  3. ToolSearch select:TaskCreate,TaskUpdate,TaskList,TaskGet -> "No matching deferred tools found".
  4. Switch session model to Haiku 4.5 -> the four Task tools appear as deferred tools and TaskCreate succeeds (created a task).
  5. Same failure reproduced inside dispatched subagents (coding-agent = Sonnet, general-purpose = Sonnet): both report TaskCreate absent and TodoWrite "not enabled in this context".
  6. CLAUDE_CODE_ENABLE_TASKS=0 and =1 both tested after full session restart; neither changes the outcome under Opus/Sonnet.
  7. Full uninstall + reinstall of Claude Code CLI did not fix it.

Root-cause evidence (cross-machine comparison via ssh)

Identical on both machines:

  • claude --version = 2.1.218 on both.
  • ~/.claude/settings.json .env block byte-identical (including CLAUDE_CODE_ENABLE_TASKS: "1").
  • accountUuid, organizationUuid, organizationName, organizationType (claude_max), organizationRateLimitTier (default_claude_max_20x) all identical.
  • Top-level ~/.claude.json keys, hasSeenTasksHint, hasUsedBackgroundTask identical. No enableTasks-style key anywhere.

Different:

  • Per-device userID differs (expected; machine-scoped install id):
  • rough (broken): REDACTED
  • machine2 (works): REDACTED
  • cachedGrowthBookFeatures in ~/.claude.json: 433 keys on rough vs 428 on machine2. Five flags present on rough and absent on machine2
  • tengu_auto_mode_classifier_queue = true
  • tengu_bison_cairn = false
  • tengu_juniper_sundial = 10
  • tengu_larch_pavise = false
  • tengu_parchment_fern = false
  • cachedExperimentFeatures: one extra numeric bucket key ("13") on machine2

The codenamed flags could not be mapped to task-tool gating from the client side (names are obfuscated; two of the five appear as literal strings in the compiled CLI bundle but were not deobfuscated). The behaviour is consistent with GrowthBook rollout/targeting that buckets on per-device userID and evaluates with the session model as an input attribute (Haiku passes on rough; Opus/Sonnet do not).

The DISABLE_GROWTHBOOK regression (new, primary concern)

  • Before today: DISABLE_GROWTHBOOK=1 disabled GrowthBook evaluation entirely and restored the task tools (consistent with the tools being default-on once the flag gate is removed).
  • As of today (2026-07-23): with DISABLE_GROWTHBOOK=1, Remote Control stops working. This indicates a recent change made Remote Control depend on a GrowthBook flag being evaluated, so disabling GrowthBook now takes Remote Control down with it.
  • Net effect: the two features (task tools, Remote Control) now have mutually exclusive env-var requirements on the affected machine. There is no env-only setting that yields both.

Requests

  1. Enable the task-tool feature flag for this account/device (userID REDACTED), or expose a supported, model-independent toggle that actually forces the Task tools on regardless of GrowthBook bucketing.
  2. Decouple Remote Control from GrowthBook so that DISABLE_GROWTHBOOK=1 no longer disables Remote Control (regression introduced 2026-07-23).
  3. Clarify whether task-tool availability is intended to depend on the session model (Haiku vs Opus/Sonnet); current behaviour appears unintended and is undocumented.
thehikers · 1 month ago

Same problem here. Claude Code has no access to "TaskCreate,TaskUpdate,TaskList,TaskGet" on Opus 4.8 and Fable. I changed nothing, just using the terminal on my Mac.

thehikers · 15 days ago

This is happening again.

Galaf · 15 days ago

Yep, same since today for me.

thehikers · 15 days ago

From changelog; "Todo/task-tracking tools (TaskCreate/Get/Update/List, TodoWrite) are no longer available on Opus 4.8, Sonnet 5, Fable 5, Mythos 5, and newer models; set CLAUDE_CODE_ENABLE_TODO_TOOLS=1 to bring them back"

Showing cached comments. Read the full discussion on GitHub ↗