Claude-File-Recovery: CLI-инструмент для извлечения файлов из истории сессий Claude Code

Что делает этот инструмент
claude-file-recovery — это инструмент командной строки на Python с интерактивным TUI, который извлекает файлы из истории сессий Claude Code. Он был создан после того, как автор случайно удалил файлы через символическую ссылку, которую Claude Code не распознал, а резервное копирование не выполнялось месяц. Инструмент восстанавливает файлы, анализируя JSONL-транскрипты сессий, хранящиеся в ~/.claude/projects/.
Ключевые возможности и функции
Инструмент может восстановить любой файл, который когда-либо читал, редактировал или создавал Claude Code, включая более ранние версии файлов на определённые моменты времени. Он предлагает:
- Интерактивный TUI с нечётким поиском и привязками клавиш vim (j/k/g/G, / для поиска)
- Восстановление на определённый момент времени — воссоздание файлов в любом историческом снимке, а не только последнем
- Цветное представление различий, показывающее, как файлы менялись со временем (режимы unified, full-context и raw)
- Пакетное извлечение — выбор нескольких файлов и их одновременное извлечение
- Быстрое сканирование — параллельный анализ сессий с использованием orjson и быстрых проверок байтов, которые пропускают ~77% строк перед анализом
- Дедупликация символических ссылок — обнаружение псевдонимов путей и их объединение в канонические записи
- Умный регистр поиска — чувствительность к регистру только тогда, когда запрос содержит заглавные буквы (как в ripgrep)
Установка и использование
Требуется Python 3.10+. Варианты установки:
# Рекомендуется
uv tool install claude-file-recovery
Или с pipx
pipx install claude-file-recovery
Или с pip
pip install claude-file-recovery
Основные команды:
# Запуск интерактивного TUI (команда по умолчанию)
claude-file-recovery
Список всех восстанавливаемых файлов
claude-file-recovery list-files
Фильтрация по шаблону
claude-file-recovery list-files --filter '*.py'
Экспорт в CSV
claude-file-recovery list-files --filter '*.ts' --csv
Извлечение файлов на диск
claude-file-recovery extract-files --output ./recovered --filter '*.py'
Восстановление файлов в состоянии до определённого времени
claude-file-recovery list-files --before '2025-02-20 14:00'
Указание другого каталога данных Claude
claude-file-recovery --claude-dir /path/to/claude-backup
Как это работает
Инструмент сканирует все JSONL-файлы сессий в ~/.claude/projects/ и анализирует их параллельно с использованием пула потоков. Он связывает запросы tool-use в сообщениях ассистента с их результатами в сообщениях пользователя через tool_use_id, затем восстанавливает файлы, воспроизводя операции в хронологическом порядке для каждого пути файла: операции Write устанавливают содержимое, операции Edit применяют замены строк, а операции Read фиксируют снимки. Флаг --before использует двоичный поиск для обрезки в любой момент времени.
Привязки клавиш TUI
- j/k: Перемещение вверх/вниз
- g/G: Переход к началу/концу
- /: Поиск
- Ctrl+R: Переключение режима поиска (нечёткий / glob / regex)
- x или Space: Переключение выбора файла
- Enter: Просмотр деталей файла + различий
- d: Переключение режима различий (unified / full-context / raw)
- Ctrl+E: Извлечение выбранных файлов
- q: Назад / выход
Такой инструмент восстановления полезен для разработчиков, которые активно используют Claude Code и хотят защититься от случайного удаления или повреждения файлов. Проект с лицензией MIT имеет 26 звёзд и 1 форк на GitHub на момент написания.
📖 Read the full source: HN AI Agents
👀 Смотрите также

Плагин Pair Programmer добавляет в Claude Code живую трансляцию экрана, голосовое и аудио-сопровождение.
Разработчик создал плагин под названием Pair Programmer, который предоставляет Claude Code восприятие рабочего стола в реальном времени, захватывая потоки экрана, микрофона и системного аудио. Архитектура использует специализированные агенты, работающие параллельно для различных типов ввода, при этом индексация в настоящее время обрабатывается облачными моделями, но спроектирована так, чтобы быть независимой от модели.

E2a: Открытый почтовый шлюз для ИИ-агентов с верификацией SPF/DKIM и доставкой через Webhook/WebSocket
E2a — это аутентифицированный почтовый шлюз для AI-агентов, который проверяет SPF/DKIM для входящих писем, доставляет их через вебхук или WebSocket и поддерживает исходящую почту с подтверждением человеком.

OpenClaw-Superpowers: Нативный порт фреймворка Superpowers от Джесси Винсента без зависимости от Claude Code
Пользователь Reddit портировал obra/superpowers на OpenClaw с выделенными агентами (координатор кодирования, исполнитель, рецензент) и нативными командами, такими как sessions_spawn и update_plan, полностью убрав зависимость от Claude Code.

Запуск Agnost AI: Аналитика продуктов для чат- и голосовых агентов
Agnost AI анализирует производственные диалоги, чтобы выявить поведенческие сбои, такие как rageprompting, повторные переформулировки и скрытые запросы функций.