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.221 Home All releases olderv2.1.220 v2.1.222newer

Artifact comment auto-reply subsystem

Not switched on
Useful4 Signal5
Artifacts Notable not in their notes

Claude can watch artifact comment threads and post replies or edits, off unless you set the env var.

Artifact comment auto-replies sit behind CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT, off by default, with new comments and reply actions.

Feature flag
tengu_sorrel_trellis On for this account, and not off by default

The flag server returned on for the one account this site reads, and nothing in this release compiles it off by default. The compiled default is shown below, and says which it is when we cannot read one: a fifth of gates compile in a string or a number rather than on or off, and most published releases have no gate table behind them at all. No client can see what the server returns for your account.

This account: on · anonymous baseline: on · compiled default in v2.1.221: on

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.221. It isn't a statement about your account. What a flag value here can and cannot tell you

CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT
What

A subsystem was added that watches comment threads on artifacts Claude published and, once a human activates Claude on a thread and posts, composes and posts a reply, optionally editing and republishing the artifact. It is switched off in this build unless explicitly enabled.

Details
  • Gate order: the environment variable CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT is read first, otherwise the gate tengu_sorrel_trellis, whose in-source fallback is false, with the real value coming from remote config.
  • It additionally requires the Artifact tool schema to expose thread_id. A session-level kill switch permanently disables it once tripped.
  • The Artifact tool gains comments and reply actions, added to the action enum only when comment verbs are wired, and treated as read-only and concurrency-safe.
  • Thread scanning uses coalesced and debounced rescans, with per-thread state covering seen comments, its own reply IDs, a breaker, and an hourly cap on turns per artifact. A permission probe runs before acting.
  • Live-watch registrations carry autoReactWiring; background tasks carry autoReactArmed and autoReactSlug; task-notification origins can come from artifact-auto-react.
  • When a thread carries edit capability a second composer runs, required to emit one JSON decision object, either {"action":"reply",...} or an edit carrying the complete new artifact source. The edit is written to a temp file, published through the Artifact tool, attribution is verified with a version echo, and only then is the summary reply posted.
  • A catalogue of user-facing refusal replies covers pinned versions, inactive edit grants, rate limits, size guards, transient errors and supersession, each stating whether the artifact changed.
  • Telemetry is emitted under the event name artifact_comments_autoreact, with outcomes including read_failed, breaker_open, stood_down_answered, denied_by_rule and hourly_cap.
Evidence

CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT, tengu_sorrel_trellis, I could not apply the requested edit: the artifact is pinned to a fixed version

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

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

See this entry in the whole of v2.1.221 →