Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All of v2.1.200 Home All releases olderv2.1.199 v2.1.201newer

Observer Agents [Gradual Rollout]

Feature flag
tengu_observer_agents_enabled Not enough to say

Nothing here resolved what this flag was doing on this version, so nothing here should be read as on or off.

This account: no value returned · anonymous baseline: no value returned · compiled default in v2.1.200: off

These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.

Read once, for one account on one subscription tier, against v2.1.200. It isn't a statement about your account. What a flag value here can and cannot tell you

What

A background observer agent can now be paired with any running subagent. The observer receives read-only activity digests of the observed agent's turns and can report back via the new ObserverReport tool. It never participates in the task directly — its only output channel is the report tool.

Details
  • Declared in an agent definition with two new fields: observer (the agent type to spawn as observer) and observerMessage (supplemental postamble to append to each digest)
  • The observer receives digests wrapped in <agentName-activity> tags after each of the observed agent's turns
  • Observers report via ObserverReport with a concise message; the observed agent receives it as a one-way meta message
  • The system enforces no chaining: an observer cannot itself declare an observer
  • Observer agents start fresh mid-task if their context is lost (with a note indicating the restart)
  • Controlled by three gates: CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS env var, CLAUDE_CODE_DISABLE_BACKGROUND_TASKS env var (disables), and tengu_observer_agents_enabled feature flag (default true)
  • Permission gate runs at arm time and on each delivery — if denied, the pairing is retired
Status

Feature-flagged — requires CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS=1 to enable.

Evidence

Observer spawn system (search for "[agentObserver] arm-time permission denied", "observer-gate-", "ObserverReport") — fWn() at ~line 351131 checks all three gates

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

See this entry in the whole of v2.1.200 →