Follow Discord
Sweep 25 Sep 2026 · 19:33Z Build v2.1.283 504 read Stable v2.1.274 Latest v2.1.283 Next v2.1.283 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.281 ·

Headless: telemetry init deferred and a parked-spare mode

In print mode, telemetry setup now waits unless CLAUDE_CODE_ENABLE_TELEMETRY is set, and a new parked-spare state skips session-start hooks

Entry
JSON All of v2.1.281
EntryKind: in v2.1.281,
ChangesSection of the release
What

In print mode, where Claude Code handles a request without its interactive screen, telemetry (the collection of usage and performance data) is now set up straight away only when CLAUDE_CODE_ENABLE_TELEMETRY is set or one other internal condition holds. Otherwise its setup is deferred through a host callback named telemetry_init, and that callback is skipped if the process is shutting down. Other startup housekeeping has moved into a separate idle_startup_work callback.

A process can now also be a "parked spare" (spareClaimState() === "parked"). In that state:

  • Session-start hooks, which are commands you configure to run when a session begins, are skipped.
  • MCP servers (outside tools connected through the Model Context Protocol) configured at neither project nor local scope are held back from the first round of connections.

The run also now waits on earlyRemoteLink.

Why

If you set CLAUDE_CODE_ENABLE_TELEMETRY, telemetry still starts immediately. Without it, telemetry setup happens later in the run instead of at startup. If you rely on session-start hooks, note that they do not run while a process is parked.

How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtThe finding does not say what a parked spare process is, how one is created, or when the held-back MCP servers are connected.

See this entry in the whole of v2.1.281 →

Feedback