Bug: Invalid Version error in 2.1.0 - changelog date parsed as semver

Resolved 💬 3 comments Opened Jan 8, 2026 by davidpharrington Closed Jan 11, 2026

Description

Claude Code 2.1.0 fails to start with the error:

ERROR  Invalid Version: 2.1.0 (2026-01-07)

//root/claude:813:8909

Root Cause

The changelog cache file (~/.claude/cache/changelog.md) contains entries like:

## 2.1.0 (2026-01-07)

Somewhere in the code, the full string 2.1.0 (2026-01-07) is being passed to the semver parser, which fails because the date in parentheses is not valid semver syntax.

The semver library expects versions like 2.1.0 or 2.1.0-beta.1, not 2.1.0 (2026-01-07).

Stack Trace

- Pw (//root/claude:813:8909) [semver constructor]
- CfD (//root/claude:813:14035)
- LfD (//root/claude:813:14587)
- <anonymous> (//root/claude:3025:4324)
- DKB (//root/claude:3025:4310)
- wKB (//root/claude:3025:13859)

Workaround

Downgrade to 2.0.76:

ln -sf ~/.local/share/claude/versions/2.0.76 ~/.local/bin/claude

Environment

  • OS: macOS (Darwin 24.2.0)
  • Claude Code version: 2.1.0
  • Install method: native
  • Node version: v18.19.1

View original on GitHub ↗

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