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.227 Home All releases olderv2.1.226 v2.1.228newer
Claude Code v2.1.227

Synced plugin archives containing .git are re-extracted safely

You'll notice
Useful2 Signal2
Plugins

Org-synced plugin archives containing a .git entry are rejected and re-extracted safely.

What

When Claude Code unpacks a plugin delivered by org plugin sync, it now rejects any archive whose contents include an entry named .git, on top of the existing symlink and oversize checks. Rejected archives are unpacked again with the built-in extractor, which drops .git path segments entirely.

Details
  • Any non-ok verdict, including the new reserved verdict for .git, logs plugins_sync_unzip_fallback with the reason before re-extracting.
  • Only affects the synced-plugins path (CLAUDE_CODE_SYNC_PLUGINS and org-synced plugins), not locally installed plugins.
Evidence

plugins_sync_unzip_fallback

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