Source Intelligence
Reading a new release v2.1.251 Analysing changes · 2/5 Sorting the findings · 1/4 steps 470 findings $18.91 so far

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.196 Home All releases olderv2.1.195 v2.1.197newer
Claude Code v2.1.196

Skill Tool Description A/B Test

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

A more concise alternative Skill tool description is rolling out, activated by the tengu_russet_linnet feature flag (or CLAUDE_CODE_SKILL_DESC_REFRAME env var). The new description is shorter and focuses on when to invoke skills versus when they auto-load, using direct language rather than a bulleted reference format.

Details
  • vNn() is a lazy accessor that returns ycp (reframe) when haa() is truthy, or the original hcp description otherwise; the flag is evaluated once and memoized via wn().
  • The reframe description (ycp) opens with the one-liner "Invoke a skill." and then defines a skill as "a packaged set of instructions the user or project has set up for a particular kind of task (deploy steps, a review checklist, a repo-specific workflow)."
  • It explains that when a listed skill matches the task, calling the tool loads its instructions into the turn for the model to follow "in place of your default approach"; it also notes that "some skills instead run in a subagent and return the finished result."
  • The two mandatory bullets in the original (skill and args) are retained in a compressed form; the scoped-directory routing logic is distilled into the skill bullet rather than a separate sub-list.
  • The original's "BLOCKING REQUIREMENT" and "NEVER mention a skill without actually calling this tool" directives are removed; the "already loaded" guard is condensed to one sentence.
  • When the flag fires, the activation source (env or growthbook) is emitted to the debug log as skill_desc_reframe_arm_active source=<source>.
Evidence

Feature-flagged alternative description (search for "skill_desc_reframe_arm_active source=") and both description strings (search for "Invoke a skill." for ycp and "Execute a skill within the main conversation" for hcp)

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.196 →