Suppress recurring TaskCreate "task tools haven't been used" system-reminder in plan-mode or when plans/ files are active
Summary
Request a documented setting (or auto-detection) to suppress the recurring <system-reminder> that nags about using TaskCreate / TaskUpdate when the user is already tracking work via other mechanisms (plan-mode files, short linear sessions, etc.).
The reminder, verbatim
The task tools haven't been used recently. If you're working on tasks that would benefit from tracking progress, consider using TaskCreate to add new tasks and TaskUpdate to update task status (set to in_progress when starting, completed when done). Also consider cleaning up the task list if it has become stale. Only use these if relevant to the current work. This is just a gentle reminder - ignore if not applicable.
This injects mid-conversation as a <system-reminder> tag.
Friction
In aggregate, this is the single highest-friction pattern across the last 5 retrospectives in our internal continuous-improvement queue (score 2.80/2.80 — max — for 5 consecutive sessions). Individual sessions see this reminder fire 5–30 times.
Trigger contexts where the reminder is consistently non-actionable:
- Plan-mode is active — the harness already restricts write tools; a
~/.claude/plans/*.mdfile is the active tracker. Tasks are redundant. - Pure-research segments — exploring/grepping the codebase, no implementation in flight.
- Short linear sessions — one read → one edit → one test → commit. The Task tool is heavier than the work.
- Sessions actively reading or editing
~/.claude/plans/*.md— the plan file IS the task list.
In all four contexts, creating a task list to silence the reminder would be ceremony rather than signal, and the existing behavior (decline-and-ignore) becomes muscle memory and pollutes the conversation with non-actionable system text.
What we tried locally that did NOT work
Setting "todoFeatureEnabled": false in ~/.claude/settings.local.json. The reminder kept firing in a fresh session (validated by repeating the conversation pattern). Best hypothesis: todoFeatureEnabled gates the tool registration, not the system-reminder hook — they appear to be separate code paths. If todoFeatureEnabled: false is intended to also disable this reminder, that's a bug worth fixing on its own.
What we'd ideally like
Any one of these would resolve it cleanly:
- Auto-suppress when plan mode is active. Plan mode is already a strong signal that the user has switched to a plan-file tracker.
- Auto-suppress when a
~/.claude/plans/*.mdfile has been read or edited in the current session. Same logical signal as (1), broader trigger. - A documented setting:
settings.systemReminders.taskTools: false, orsettings.systemReminders: "minimal", or similar per-reminder opt-out. - Fix
todoFeatureEnabled: falseto also suppress the reminder if that's the intended behavior.
Question / probe
Is there an undocumented environment variable (CLAUDE_DISABLE_TASK_REMINDERS, CLAUDE_SUPPRESS_SYSTEM_REMINDERS, or similar) that already does this? Happy to test if you can point at one.
Context
This is filed from a Laravel project (empire-booking) at version claude-code 2.1.150. The continuous-improvement queue tracking this is at .claude/skills/IMPROVEMENT-PLAN.md in the project repo; happy to share more context on request.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗