Back to Signal Feed
CodeTracked since May 19, 2026

Fix Claude project key normalization for dots and at-signs

A pull request updates Claude project key generation to treat `.` and `@` as replaceable characters when deriving project IDs, aligning generated keys with Claude Code’s on-disk directory naming and preventing session lookup mismatches that made `/list` return empty for certain workspaces.

encodeClaudeProjectKeyfindProjectDirClaude Code project keys/.claude/projects/

What Happened

  • A pull request updates Claude project key generation to treat `.` and `@` as replaceable characters when deriving project IDs, aligning generated keys with Claude Code’s on-disk directory naming and preventing session lookup mismatches that made `/list` return empty for certain workspaces.
  • A pull request updates Claude project key generation to treat `.` and `@` as replaceable characters when deriving project IDs, aligning generated keys with Claude Code’s on-disk directory naming and preventing session lookup mismatches that made `/list` return empty for certain workspaces.
  • 1 evidence item attached for review.

What is Different

Before

Scattered source updates, isolated context, and manual follow-up across multiple feeds.

Now

Corrects the project-directory key normalization logic so `encodeClaudeProjectKey()` escapes `.` and `@`, making `findProjectDir()` generate keys that match Claude Code’s saved project folders and restoring session lookup behavior.

Why Track This

Why It Matters

Developers using Claude in directories like `.nvm` or scoped package paths such as `@anthropic-ai/claude-code` can now get accurate `/list` session results instead of empty output, which prevents silent failures when they need to resume the right project context. The update keeps session discovery consistent with Claude Code’s naming scheme, and operators should still watch for any other special characters in workspace paths that could remain unmatched and reintroduce silent key drift.

Impact

Developers using Claude in directories like `.nvm` or scoped package paths such as `@anthropic-ai/claude-code` can now get accurate `/list` session results instead of empty output, which prevents silent failures when they need to resume the right project context. The update keeps session discovery consistent with Claude Code’s naming scheme, and operators should still watch for any other special characters in workspace paths that could remain unmatched and reintroduce silent key drift.

What To Watch Next

  • Watch whether encodeClaudeProjectKey becomes a repeated pattern.
  • Track follow-up changes around AI Debugging and Error Localization.
  • Compare future signals against this evidence trail.
  • Re-check risk flags: project_key_normalization_gaps_for_other_special_chars, silent_lookup_failure_on_unseen_path_formats.
Open Topic TimelineOpen Technical EventOpen Original Sourceproject_key_normalization_gaps_for_other_special_chars / silent_lookup_failure_on_unseen_path_formats

Supporting Evidence