Claude-File-Recovery: CLI tool extracts files from Claude Code session history

✍️ OpenClawRadar📅 Published: February 28, 2026🔗 Source
Claude-File-Recovery: CLI tool extracts files from Claude Code session history
Ad

What this tool does

claude-file-recovery is a Python command-line tool with an interactive TUI that extracts files from Claude Code's session history. It was created after the author accidentally deleted files through a symlink that Claude Code didn't recognize, and their backup hadn't run for a month. The tool reconstructs files by parsing JSONL session transcripts stored in ~/.claude/projects/.

Key features and functionality

The tool can recover any file that Claude Code ever read, edited, or wrote, including earlier versions of files at specific points in time. It offers:

  • Interactive TUI with fuzzy search and vim keybindings (j/k/g/G, / to search)
  • Point-in-time recovery — reconstruct files at any historical snapshot, not just the latest
  • Colored diff view showing how files changed over time (unified, full-context, and raw modes)
  • Batch extraction — select multiple files and extract them all at once
  • Fast scanning — parallel session parsing with orjson and fast-reject byte checks that skip ~77% of lines before parsing
  • Symlink deduplication — detects aliased paths and merges them into canonical entries
  • Smart-case search — case-sensitive only when your query contains uppercase (like ripgrep)

Installation and usage

Requires Python 3.10+. Installation options:

# Recommended
uv tool install claude-file-recovery

Or with pipx

pipx install claude-file-recovery

Or with pip

pip install claude-file-recovery

Basic commands:

# Launch the interactive TUI (default command)
claude-file-recovery

List all recoverable files

claude-file-recovery list-files

Filter by pattern

claude-file-recovery list-files --filter '*.py'

Export as CSV

claude-file-recovery list-files --filter '*.ts' --csv

Extract files to disk

claude-file-recovery extract-files --output ./recovered --filter '*.py'

Recover files as they were before a certain time

claude-file-recovery list-files --before '2025-02-20 14:00'

Point to a different Claude data directory

claude-file-recovery --claude-dir /path/to/claude-backup

Ad

How it works

The tool scans all JSONL session files under ~/.claude/projects/ and parses them in parallel using a thread pool. It correlates tool-use requests in assistant messages to their results in user messages via tool_use_id, then reconstructs files by replaying operations in chronological order per file path: Write operations set content, Edit operations apply string replacements, and Read operations capture snapshots. The --before flag uses binary search to cut off at any point in time.

TUI keybindings

  • j/k: Move up/down
  • g/G: Jump to top/bottom
  • /: Search
  • Ctrl+R: Cycle search mode (fuzzy / glob / regex)
  • x or Space: Toggle file selection
  • Enter: View file detail + diffs
  • d: Cycle diff mode (unified / full-context / raw)
  • Ctrl+E: Extract selected files
  • q: Back / quit

This type of recovery tool is useful for developers who use Claude Code extensively and want insurance against accidental file deletion or corruption. The MIT-licensed project has 26 stars and 1 fork on GitHub as of this writing.

📖 Read the full source: HN AI Agents

Ad

👀 See Also

AutoBe: How Weak Local LLMs Fixed an AI Backend Generator's Architecture
Tools

AutoBe: How Weak Local LLMs Fixed an AI Backend Generator's Architecture

AutoBe is an open-source AI agent that generates complete backend apps using TypeScript, NestJS, and Prisma. The team discovered their initial 100% compilation success produced unmaintainable code, then rebuilt with modular generation—crashing success to 40%—and used weak local LLMs like qwen3-30b-a3b-thinking to debug schema ambiguities.

OpenClawRadar
GitAgent: An Open Standard for Portable AI Agents in Git Repos
Tools

GitAgent: An Open Standard for Portable AI Agents in Git Repos

GitAgent is an open specification that defines AI agents through three core files in a git repository: agent.yaml for configuration, SOUL.md for personality/instructions, and SKILL.md for capabilities. The CLI allows running any agent repo directly with commands like npx @open-gitagent/gitagent run -r https://github.com/user/agent -a claude.

OpenClawRadar
rawq: Local CLI Tool for AI Agent Semantic Code Search
Tools

rawq: Local CLI Tool for AI Agent Semantic Code Search

rawq is an open-source CLI tool that helps AI agents find relevant code using semantic search with a 33MB local model via ONNX runtime and BM25 lexical search via tantivy. In testing, AI agents using rawq consumed 4x fewer tokens and completed tasks 2x faster compared to blind read/grep tools.

OpenClawRadar
ReRouted: macOS Menu Bar App to Auto-Fallback Across Claude, Codex, Grok, and More
Tools

ReRouted: macOS Menu Bar App to Auto-Fallback Across Claude, Codex, Grok, and More

ReRouted is a lightweight macOS menu bar app that acts as a local gateway. Point your AI tools to one endpoint; it routes and auto-fallbacks across your accounts when providers hit limits.

OpenClawRadar