[BUG] Specific project directory stuck on deprecated model claude-3-sonnet-20240229 after reinstalling via Homebrew

Resolved 💬 6 comments Opened Nov 4, 2025 by chakan81 Closed Jan 5, 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?

Problem

After reinstalling Claude Code from npm to Homebrew cask, one specific project directory is stuck using the deprecated model claude-3-sonnet-20240229, which returns 404 errors. This issue persists even after clearing all configuration files.

Environment

Claude Code version: 2.0.32
Installation method: Homebrew cask (previously npm)
OS: macOS
Model shown: claude-3-sonnet-20240229 (deprecated)
Expected model: Sonnet 4.5

What I've Tried

✅ Used /model command to select Sonnet 4.5 (reverts on restart)
✅ Added "model": "claude-sonnet-4.5-20250929" to .claude/settings.local.json
✅ Searched all config files: grep -r "claude-3-sonnet-20240229" ~/.claude/ (no results)
✅ Deleted project entry from ~/.claude.json
✅ Removed entire .claude/ directory in project
✅ Modified all agents to use model: inherit
✅ Uninstalled all plugins
✅ Cleared session history: rm ~/.claude/history.jsonl*
✅ Tested with --model flag: claude --model claude-sonnet-4.5-20250929
✅ Removed npm installation remnants

Key Observations

Other directories work fine - same user, same installation, different directory = correct model
No config files contain the old model name - searched entire ~/.claude/ and $project_dir/.claude/ directories
Settings are loaded correctly - debug logs show settings files being read
Issue is directory-specific - not user-wide or installation-wide
Creating a new empty directory in the same path works fine - the issue is not related to the directory path or name
Renaming the problematic directory doesn't fix it - the issue persists even after renaming the directory
This suggests the issue is tied to something within the project files themselves, not the directory metadata or path

Workaround

None found. I have to manually change the model using the /model command every time after restarting Claude Code.

What Should Happen?

Should use the latest default model (Sonnet 4.5) like in other directories.

Error Messages/Logs

▐▛███▜▌   Claude Code v2.0.32
▝▜█████▛▘  claude-3-sonnet-20240229 · Claude Max
  ▘▘ ▝▝    /Users/chakan/Dev/WebDev/linux-daily-tips

  Debug mode enabled
  Logging to: /Users/chakan/.claude/debug/ef54821f-2d9c-4b29-9d76-ceec8cf63dab.txt

Steps to Reproduce

  1. Had Claude Code installed via npm
  2. Uninstalled npm version and installed via
brew install --cask claude-code
  1. Installed all 8 plugins of anthropics/claude-code
  2. Navigate to specific project:
cd ~/project_dir
claude

Observe it starts with claude-3-sonnet-20240229

Claude Model

Sonnet (default)

Is this a regression?

Yes, this worked in a previous version

Last Working Version

2.0.30

Claude Code Version

2.0.32

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

iTerm2

Additional Information

Additional Context

This started happening immediately after:

Switching from npm to Homebrew cask installation
Installing plugins via /plugin install

Could there be some directory-based caching or hashing mechanism that's persisting the old model choice beyond the config files?

View original on GitHub ↗

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