【要約】Claude Code のタスクリストが出ない — 原因は環境変数 ENABLE_TASKS=0 だった [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
開発者がClaude Codeを使用中、作業進捗を示すチェックリストが表示されない問題に直面した。原因は、モデルのアップデートに伴う仕様変更と、既存の環境変数設定の競合にある。
- ・新しいモデルでは、タスク管理ツールのデフォルト仕様が変更されている。
- ・親プロセスから引き継がれた
CLAUDE_CODE_ENABLE_TASKS=0が原因であった。 - ・この変数は「Taskツールを無効化しTodoWriteを使う」設定である。
- ・Taskツールを持たない新モデルでは、結果として両方の機能が消失する。
// Approach
筆者は非対話モードを用いて、環境変数とモデルの組み合わせによるツールの有無を検証した。具体的な検証ステップは以下の通りである。
- ・
claude -pを使い、モデルと環境変数の条件を変えてツールを調査した。 - ・
ENABLE_TASKSとENABLE_TODO_TOOLSの影響を実測した。 - ・モデルごとに既定で付与されるツールが異なることを突き止めた。
- ・
CLAUDE_CODE_ENABLE_TODO_TOOLS=1を設定する解決策を導き出した。
// Result
適切な環境変数の設定により、新モデルでも高度なタスク管理機能を利用可能となった。これにより、開発者は以下の恩恵を受けられる。
- ・
CLAUDE_CODE_ENABLE_TODO_TOOLS=1により、Taskツール一式が復旧した。 - ・
settings.jsonへの記述により、設定の永続化が可能となった。 - ・TodoWriteよりも高機能なTaskツール(依存関係・担当者管理)が利用可能である。
- ・モデルごとの挙動の違いを理解することで、迅速なトラブルシューティングが可能になる。
Senior Engineer Insight
> AIエージェントのツール制御が環境変数に依存しており、モデル更新時に挙動が破壊的に変わるリスクがある。特に、変数名(Todo)と実体(Task)の乖離は、運用時の混乱を招く。開発環境の構築時には、親プロセスからの環境変数継承を疑い、CLIの挙動を直接検証する姿勢が不可欠である。