{"id":43546576,"url":"https://github.com/ZENG3LD/claude-session-restore","last_synced_at":"2026-02-05T11:01:27.630Z","repository":{"id":334671597,"uuid":"1142268268","full_name":"ZENG3LD/claude-session-restore","owner":"ZENG3LD","description":"CLI tool and Claude Code skill for restoring context from previous sessions","archived":false,"fork":false,"pushed_at":"2026-01-26T07:54:26.000Z","size":173,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-01-26T21:45:02.131Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZENG3LD.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-26T07:18:58.000Z","updated_at":"2026-01-26T07:54:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ZENG3LD/claude-session-restore","commit_stats":null,"previous_names":["zeng3ld/claude-session-restore"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ZENG3LD/claude-session-restore","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZENG3LD%2Fclaude-session-restore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZENG3LD%2Fclaude-session-restore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZENG3LD%2Fclaude-session-restore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZENG3LD%2Fclaude-session-restore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZENG3LD","download_url":"https://codeload.github.com/ZENG3LD/claude-session-restore/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZENG3LD%2Fclaude-session-restore/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29120481,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T10:47:47.471Z","status":"ssl_error","status_checked_at":"2026-02-05T10:45:08.119Z","response_time":65,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-03T19:00:12.888Z","updated_at":"2026-02-05T11:01:27.622Z","avatar_url":"https://github.com/ZENG3LD.png","language":"Rust","funding_links":[],"categories":["Tooling 🧰","Code \u0026 Developer Tools","工具 🧰"],"sub_categories":["General","通用"],"readme":"# Claude Session Restore\n\nEfficiently restore context from previous Claude Code sessions by analyzing session files and git history.\n\n## Features\n\n- **Multi-Vector Data Collection**: Extracts tasks, user messages, tool operations, bash activities, and web searches\n- **Time-Based Filtering**: Filter sessions by last modification time (12-24 hours)\n- **Efficient Parsing**: Tail-based reverse parsing for large session files (2GB+)\n- **Claude Code Integration**: Works seamlessly with Claude Code skill system\n\n## Components\n\n### 1. Session Summary CLI\n\nA command-line tool for analyzing Claude Code session files.\n\n**Commands:**\n- `list` - List recent sessions with multi-vector summaries\n- `load` - Load full context from a selected session\n\n**Example:**\n```bash\n# List sessions from last 12 hours\nsession-summary list\n\n# Extend to 24 hours\nsession-summary list --max-age-hours 24\n\n# Load full context\nsession-summary load \"/path/to/session-id.jsonl\"\n```\n\n### 2. Claude Code Skill\n\nA skill for Claude Code that enables automatic session restoration.\n\n**Usage:**\nSimply say \"restore session\" or \"восстанови сессию\" and Claude will:\n1. List recent sessions with multi-vector data\n2. Let you select which session to restore\n3. Analyze the session data and provide context summary\n4. Search git history for related commits\n\n## Installation\n\n### Prerequisites\n\n- Rust 1.70+ (for building from source)\n- Claude Code CLI\n\n### Build from Source\n\n```bash\ngit clone https://github.com/ZENG3LD/claude-session-restore\ncd claude-session-restore\ncargo build --release --workspace\n```\n\nThe binary will be at `target/release/session-summary` (or `session-summary.exe` on Windows).\n\n### Install to PATH\n\n#### Linux/macOS\n```bash\ncargo install --path session-summary\n```\n\n#### Windows (Git Bash/MSYS2)\n```bash\ncargo build --release\ncp target/release/session-summary.exe ~/.local/bin/\n```\n\n### Install Claude Code Skill\n\n```bash\n# Copy skill to Claude Code skills directory\nmkdir -p ~/.claude/skills/restore-session\ncp skill/SKILL.md ~/.claude/skills/restore-session/\n```\n\n## Usage\n\n### CLI Tool\n\n**List recent sessions:**\n```bash\n$ session-summary list\n\nRecent Sessions:\n\n1. 8f59d651-cada-4484-9153-5cc577137486\n   Jan 26 04:33 | 32.42 MB | [projects] | Agent tasks\n   📋 Tasks: Fix the dropdown z-order problem... → Fix the dropdown...\n   💬 User: дропдауны либо с 0 опасити... → закомить работу...\n   🔧 Tools: Bash, Bash, Bash, Write\n\n2. 4e0b5d3d-c6d1-497d-9c6f-96e83980c7a0\n   Jan 26 05:47 | 103.69 MB | [projects] | Agent tasks\n   📋 Tasks: Implement MOEX ISS API connector...\n   💬 User: \u003cide_opened_file\u003e... → да, какие проблемы выявлены...\n   🔧 Tools: Bash, Bash, Task, Task\n\nTo load a session, use:\n  1. session-summary load \"C:\\Users\\...\\8f59d651-cada-4484-9153-5cc577137486.jsonl\"\n  2. session-summary load \"C:\\Users\\...\\4e0b5d3d-c6d1-497d-9c6f-96e83980c7a0.jsonl\"\n```\n\n**Load full context:**\n```bash\n$ session-summary load \"path/to/session.jsonl\"\n\n═══════════════════════════════════════\nSession: 8f59d651-cada-4484-9153-5cc577137486\n═══════════════════════════════════════\nDate: 2026-01-26 04:33:18\nSize: 32.42 MB\nTopic: Agent tasks\n\nAgent Tasks 📋 (126 tasks)\n  1. СРОЧНО! Dropdown перекрывается другими элементами...\n  2. Fix dropdown z-order problem in Chart Settings modal\n  ...\n\nUser Messages 💬 (2 messages)\n  1. закомить работу в ваших крейтах\n  2. итого подведи итог что мы сделали...\n\nTool Operations 🔧 (7 operations)\n  1. Task\n  2. Bash\n  ...\n\nFiles Modified 📁 (17 files)\n  1. zengeld-terminal/ui/chart_settings.rs\n  2. zengeld-terminal/ui/dropdown.rs\n  ...\n\nGit Branch: zengeld-chart\n```\n\n### Claude Code Skill\n\nIn a new Claude Code session:\n\n```\nUser: restore session\n\nClaude: I'll list recent sessions from the last 12 hours...\n[Shows multi-vector data for each session]\n\nWhich session would you like to restore? (1-3)\n\nUser: 1\n\nClaude: [Analyzes session data and provides context summary]\n```\n\n## Architecture\n\n### Multi-Vector Data Collection\n\nThe tool collects raw data from multiple event sources:\n\n- **📋 Agent Tasks** - What agents were doing\n- **💬 User Messages** - User requests and decisions\n- **🔧 Tool Operations** - Files read/edited and operations performed\n- **⚙️ Bash Activities** - Build/test commands and git operations\n- **🔍 Web Searches** - Research topics and API documentation\n\n### Efficient Parsing\n\n- Uses `tail` command to read only the end of session files\n- Parses events in reverse order\n- Stops early after collecting required data\n- Handles large session files (2GB+) without loading entire file\n\n### Design Philosophy\n\nThe parser **does not try to infer topics** - it simply collects raw data from all event types. The Claude Code skill then analyzes this data to understand what was being worked on.\n\n## Project Structure\n\n```\nclaude-session-restore/\n├── types/              # Type definitions for Claude session events\n│   ├── Cargo.toml\n│   └── src/\n│       ├── lib.rs\n│       └── events/     # Event type hierarchy\n├── session-summary/    # CLI tool\n│   ├── Cargo.toml\n│   └── src/main.rs\n├── skill/              # Claude Code skill\n│   └── SKILL.md\n├── README.md\n└── LICENSE\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nLicensed under either of:\n\n- Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n## Support the Project\n\nIf you find this tool useful, consider supporting development:\n\n| Currency | Network | Address |\n|----------|---------|---------|\n| USDT | TRC20 | `TNxMKsvVLYViQ5X5sgCYmkzH4qjhhh5U7X` |\n| USDC | Arbitrum | `0xEF3B94Fe845E21371b4C4C5F2032E1f23A13Aa6e` |\n| ETH | Ethereum | `0xEF3B94Fe845E21371b4C4C5F2032E1f23A13Aa6e` |\n| BTC | Bitcoin | `bc1qjgzthxja8umt5tvrp5tfcf9zeepmhn0f6mnt40` |\n| SOL | Solana | `DZJjmH8Cs5wEafz5Ua86wBBkurSA4xdWXa3LWnBUR94c` |\n\n## Acknowledgments\n\nBuilt for use with [Claude Code](https://claude.com/claude-code) - Anthropic's CLI tool for Claude.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZENG3LD%2Fclaude-session-restore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FZENG3LD%2Fclaude-session-restore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZENG3LD%2Fclaude-session-restore/lists"}