[FEATURE] Unarchiving a Claude Desktop session by editing the session file
Resolved 💬 2 comments Opened Jul 3, 2026 by MisterDefender Closed Jul 7, 2026
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Description
Claude Desktop lets you archive sessions, but there's no visible way to unarchive one from the UI. If a session is archived (accidentally, or via auto-archive-on-PR-merge), the only recovery path I found was to quit the app and manually flip "isArchived":true → false in the session's JSON file.
Proposed Solution
Current Workaround
- Fully quit Claude (otherwise the app overwrites the edit on its next save).
- Edit
~/Library/Application Support/Claude/claude-code-sessions/<...>/local_<sessionId>.json. - Change
"isArchived":trueto"isArchived":false. - Relaunch Claude — the session reappears.
To find the right file:
cd ~/Library/Application\ Support/Claude/claude-code-sessions
grep -rl '"isArchived":true' . # list archived sessions
grep -rl '"title":"YOUR TITLE"' . # or match by session title
### Quit Claude fully first (otherwise the app may overwrite your edit on its next save), then run this script. It backs up each file to your Desktop before changing anything:
```bash
#!/bin/bash
set -euo pipefail
# Add one or more session file paths here:
FILES=(
"$HOME/Library/Application Support/Claude/claude-code-sessions/<dir>/<dir>/local_<sessionId>.json"
)
BACKUP_DIR="$HOME/Desktop/claude-session-backups-$(date +%Y%m%d-%H%M%S)"
mkdir -p "$BACKUP_DIR"
for f in "${FILES[@]}"; do
[[ -f "$f" ]] || { echo "Missing file: $f"; exit 1; }
cp "$f" "$BACKUP_DIR/"
echo "Backed up: $f"
done
for f in "${FILES[@]}"; do
count=$(grep -o '"isArchived":true' "$f" | wc -l | tr -d ' ')
[[ "$count" == "1" ]] || { echo "Expected one isArchived:true in $f, found $count. Aborting."; exit 1; }
sed -i '' 's/"isArchived":true/"isArchived":false/' "$f"
echo "Unarchived: $f"
done
echo "Done. Backups in: $BACKUP_DIR — relaunch Claude to see the sessions."
Alternative Solutions
_No response_
Priority
Critical - Blocking my work
Feature Category
File operations
Use Case Example
_No response_
Additional Context
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗