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.246 Home All releases olderv2.1.245 v2.1.247newer
Claude Code v2.1.246

Plugin provenance can be supplied via CLAUDE_CODE_PLUGIN_ATTRIBUTION

Use it now
Useful2 Signal4
Plugins Notable not in their notes

You can declare where a plugin came from via a JSON file or an environment variable.

CLAUDE_CODE_PLUGIN_ATTRIBUTION
What

Claude Code can now read where a plugin came from, either from a JSON file placed next to the plugin or from a map in the CLAUDE_CODE_PLUGIN_ATTRIBUTION environment variable. It yields a server-side plugin id (plugin_ plus letters and digits), a marketplace name and an installation preference. The variable is unset by default, and it is now stripped from the environment handed to spawned subprocesses so it does not leak into tools.

Details
  • Malformed input is ignored with a warning rather than failing plugin load, for example when the value is not a JSON object.
  • Presence of the variable is itself a reason to build a scrubbed child environment before spawning.
Evidence

Ignoring CLAUDE_CODE_PLUGIN_ATTRIBUTION: not a JSON object

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