Skip to content

fix(claude): discover migrated Claude-Data credentials - #185

Closed
paranmir wants to merge 1 commit into
CodeZeno:mainfrom
paranmir:feature/claude-data-discovery
Closed

paranmir wants to merge 1 commit into
CodeZeno:mainfrom
paranmir:feature/claude-data-discovery

Conversation

@paranmir

Copy link
Copy Markdown

Summary

Claude Desktop's Microsoft Store build can migrate its user data from %LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude to %LOCALAPPDATA%\Claude-Data\claude_pzs8sxrjxfjjc. After that migration, the monitor reports no_credentials even though the desktop app remains signed in: discovery only checks the old paths.

Discover claude_<publisher> directories under Claude-Data, prioritizing the known Store publisher and sorting other valid publishers deterministically. Preserve the ordinary roaming installation as the first candidate and try migrated Store data before legacy MSIX data. The existing reader continues to use config.json and Local State from the same directory; no credentials are copied or modified.

Add regression coverage for migrated/legacy coexistence, candidate order, malformed directory names, and files that resemble installation directories.

Testing

  • On Windows with Rust 1.95.0 (x86_64-pc-windows-gnu): cargo test --locked claude_desktop passed (12 passed, 1 existing live-credentials test ignored).
  • cargo build --locked --release passed on the same toolchain. MSVC was not available locally.
  • Formatted the changed Rust source with rustfmt.
  • Installed the patched release locally with Store Claude 3.1623.0.0 using the migrated data directory: Claude usage collection recovered from no_credentials, Codex collection remained successful, and the tray display was confirmed working.

Checklist

  • I have read CONTRIBUTING.md and CODE_OF_CONDUCT.md.
  • The change is focused and contains no credentials or sensitive data.
  • I have added or updated relevant documentation and tests, where applicable.
  • I have left changelog and version changes to maintainers unless requested.

@CodeZeno CodeZeno closed this Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants