SafeDisk AI

Claude ENOSPC recovery

Claude Code ENOSPC Session History Recovery

If disk space reached 0 GB and Claude's sidebar lost history, do not start by deleting app state. First prove whether the JSONL transcripts still exist, back them up, then rebuild or re-index from a copy.

Free browser cleanup

Find the biggest storage culprit first.

Run the Chrome or Edge web scan, delete one approved low-risk item free, then use the $29 Deep Cleanup only if meaningful space remains.

Start free cleanup $29 Deep Cleanup

What probably happened

When the system drive hits ENOSPC, Claude can fail while writing an index, database entry, or session metadata. That does not automatically mean the transcript files are gone. If the JSONL files are intact, the next move is to preserve them and avoid letting a later launch overwrite or prune state while you are experimenting.

Safe order of operations

  1. Free enough disk space for normal writes, then stop Claude completely.
  2. Copy `~/.claude/projects/*.jsonl` to a dated backup outside the app folder.
  3. List the largest and newest JSONL files so you know whether the missing sessions are present.
  4. If the JSONL files exist, try the CLI resume path before modifying Desktop app data.
  5. Only after backup, inspect Claude's UI index or IndexedDB state. Do not delete whole app-support folders blindly.
  6. Try recovery on a copy first if you need to reconstruct a sidebar or session list.

If the JSONL files exist, resume from the CLI first

The Desktop sidebar can be blank while the transcript files are still usable. The fastest non-destructive recovery check is to list the JSONL files, take one session id from the filename, and ask the Claude CLI to resume it.

dir "%USERPROFILE%\.claude\projects" /s /b | findstr /i ".jsonl"
claude --resume SESSION_ID_FROM_FILENAME

That does not rebuild the Desktop sidebar, but it can confirm whether the session content is still readable before you touch IndexedDB, app support, cache, or database files.

Before running a metadata rebuild script

A recovery script can be the right tool when the JSONL transcripts survived but Desktop metadata did not. Treat it like a write operation: back up the source transcripts, inspect what metadata is missing, and prefer a dry run or copy-first rebuild before changing live app folders.

  1. Copy `~/.claude/projects/**/*.jsonl` to a dated backup before running any third-party recovery tool.
  2. Count existing `local_*.json` metadata files under the Claude app data folder so you know whether metadata is sparse, empty, or only partially missing.
  3. Run diagnostics before synthesis; save the before/after counts and any generated file list.
  4. Restart Claude only after the backup and generated metadata can be explained.
  5. Keep transcript contents private. File counts, paths, sizes, timestamps, and ENOSPC errors are enough for a first review.

Windows PowerShell evidence

This is read-only except for creating a backup copy on Desktop. It does not upload file contents.

$stamp = Get-Date -Format "yyyyMMdd-HHmmss"
$backup = "$env:USERPROFILE\Desktop\claude-jsonl-backup-$stamp"
New-Item -ItemType Directory -Force -Path $backup | Out-Null
Copy-Item "$env:USERPROFILE\.claude\projects\*.jsonl" $backup -ErrorAction SilentlyContinue

Get-ChildItem "$env:USERPROFILE\.claude\projects" -Recurse -Filter *.jsonl |
  Sort-Object Length -Descending |
  Select-Object -First 30 FullName,Length,LastWriteTime

Get-PSDrive C
Write-Output "Backup: $backup"

What not to do first

Deep Cleanup

Still full after the free cleanup?

Send your email once. We reply with the $29 payment link, one clarification, or a no-pay answer if the free cleanup is enough.

Start free cleanup first