Desktop Code tab cannot see any local sessions — packaging defect (%40ant folder) plus device-registry failure; CLI reads same files fine

Status Open
Reported on v2.1.239
Maintainer reply None cached
Activity 0 comments · opened Aug 22, 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?

Title: Desktop Code tab cannot see any local sessions — packaging defect (%40ant folder) plus device-registry failure; CLI reads same files fine

Environment: Windows 11 · Claude Desktop manual build (installed 8/21 after MSIX staged-package failure) at %LOCALAPPDATA%\ClaudeManual · Claude Code CLI 2.1.239 · Max plan

Summary:
Desktop Code tab's /resume picker reports "No Claude Code sessions found on this computer" while ~/.claude/projects/ contains 185 transcript files across 7 project folders. The CLI (claude --resume) from the same working directory lists and resumes all of them normally. Sessions affected include ones originally created in the desktop app itself.

Defect 1 — packaging:
The manual build unpacked its native module to a URL-encoded folder name:
app.asar.unpacked\node_modules\%40ant\claude-native\claude-native-binding.node
The app requires @ant/claude-native and fails to load it, producing on every session-list attempt:

Error: @ant/claude-native is required for safe-fs containment but failed to load;
refusing to fall back to a path-based open (CC-2885)
code: ERR_SAFE_FS_ROOT — Root is not an accessible directory: C:\Users\Bill\AppData\Roaming\Claude

Manually renaming %40ant → @ant eliminates CC-2885 (confirmed via main.log before/after).

Defect 2 — device registry:
With safe-fs fixed, the picker still returns zero sessions. main.log shows repeating:

[device-registry] enclave key unavailable — refusing cached row-PK
[device-registry] enclave key unavailable — refusing to resolve row-PK
[remote-tools-device] row PK re-check 3: still no id to present

Not resolved by: full process kill + restart, sign-out/sign-in (fresh oauth token confirmed in log), fresh test project with space-free path containing a valid .jsonl.

Working evidence:

[CCD] /stats (worker) scanned 185/185 transcript files since 2026-03-13 — the stats worker reads all transcripts fine
CLI --resume lists and opens every session
/desktop handoff from CLI successfully opens a session in the desktop app, which then functions normally

Expected: Code tab lists local sessions from ~/.claude/projects/, as CLI does.

Impact: All pre-existing sessions unreachable from the desktop UI; app search doesn't cover code session content, so months of work is undiscoverable without CLI workarounds.

What Should Happen?

<img width="859" height="196" alt="Image" src="https://github.com/user-attachments/assets/384be902-9c96-4a41-8d1f-3834a8e08328" />
<img width="608" height="469" alt="Image" src="https://github.com/user-attachments/assets/b89ba609-43e5-42e1-8948-6c74b8e17a69" />
<img width="1207" height="803" alt="Image" src="https://github.com/user-attachments/assets/32104763-ebb1-49d5-a519-2d5621d55f0d" />

Error Messages/Logs

Error: @ant/claude-native is required for safe-fs containment but failed to load;
refusing to fall back to a path-based open (CC-2885)
code: ERR_SAFE_FS_ROOT — Root is not an accessible directory: C:\Users\Bill\AppData\Roaming\Claude

[device-registry] enclave key unavailable — refusing cached row-PK
[device-registry] enclave key unavailable — refusing to resolve row-PK
[remote-tools-device] row PK re-check 3: still no id to present

Steps to Reproduce

I wouldn't wish this on anyone and after 4 hours with Claude can't fix it. So screw reproducing it.

Claude Model

Not sure / Multiple models

Is this a regression?

Yes, this worked in a previous version

Last Working Version

The latest version crashed in the middle of nothing...

Claude Code Version

Latest one

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

I worked with Claude chat for four hours in fable mode making a hundred screenshots. It was CLAUDE CODE HELL!

View original on GitHub ↗