[BUG] v2.1.109 install wiped git-tracked ~/.claude/ contents including .git

Resolved 💬 3 comments Opened Apr 15, 2026 by bengreen927 Closed Apr 19, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

On 2026-04-15 at 08:52:36 the v2.1.109 binary was installed on my MacBook. Between then and the next CC startup ~1 hour later, all git-tracked content in ~/.claude/ — CLAUDE.md, settings.json, skills/, rules/, plugins/, commands/, channels/, scheduled-tasks/, session-notes/, scripts/, launch.json, .gitignore, AND the .git directory itself — was silently deleted. Everything NOT tracked by my git repo (cache/, chrome/, sessions/, history.jsonl, backups/, session-env/, shell-snapshots/, mcp-needs-auth-cache.json, projects/*.jsonl) was preserved. ~/.claude.json was also untouched.

Forensic evidence tying this to the 2.1.109 install:

New binary mtime: 08:52:36. First observable filesystem damage: 08:53–08:56 (first failed cron run against the now-missing ~/.claude/scripts/auto-push.sh).
Deletion pattern matches git ls-tree HEAD + .git + nothing else — pointing at a migration that understood which paths were user-installed vs. CC-managed, but chose to delete user-installed content.
officialMarketplaceAutoInstallAttempted: true and officialMarketplaceAutoInstalled: true were set in ~/.claude.json before the event — so the post-wipe re-install step was short-circuited, leaving me with empty dirs and no auto-recovery.
No destructive git operations in my repo history (linear: commit 45c16e7 at 08:51 → commit 28f65db at 10:36 after I manually restored from GitHub). No manual rm in shell snapshots.
Impact: lost access to every plugin including superpowers, code-review, feature-dev, frontend-design, figma, firecrawl, skill-creator, claude-md-management, telegram, context7, Notion, asana. Restoration required cloning my personal claude-config repo from GitHub, manually running claude plugin marketplace add anthropics/claude-plugins-official, then /reload-plugins.

Happy to share full timeline + file listings if useful. MacBook, macOS, CC installed via ~/.local/bin/claude symlink into ~/.local/share/claude/versions/.

What Should Happen?

Claude shouldn't delete all those files when it updates its version. Seems like a big deal.

Error Messages/Logs

Steps to Reproduce

Reproducer likely: users whose ~/.claude/ is a git-tracked dir with a whitelist .gitignore. Ask: does 2.1.109's install migration rm tracked paths under some branch?

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

v2.1.109

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗