Skip to main content

AI development session recorder — save and sync sessions to GitHub

Project description

session-zoo

English | 中文

Save and sync your AI development sessions to GitHub.

session-zoo automatically discovers sessions from AI coding tools (Claude Code, Codex, etc.), generates AI summaries, and syncs everything to a GitHub repo — raw data preserved for cross-device migration, plus readable Markdown for review.

session-zoo demo

Features

  • Auto-discover sessions from ~/.claude/ (Claude Code adapter built-in)
  • AI Summarize using existing Claude/Codex CLI (no API key needed) or Anthropic API
  • Git Sync raw JSONL + metadata + Markdown summaries to GitHub
  • Cross-device restore — clone on a new machine, restore sessions to ~/.claude/ for /resume
  • Tag & Search sessions by project, tool, date, or custom tags
  • Extensible adapter pattern — easy to add support for new AI tools

Quick Start

Install

pip install session-zoo

Or install from source:

git clone https://github.com/AndsGo/session-zoo.git
cd session-zoo
pip install -e .

Setup

# Initialize
zoo init

# Set your GitHub repo for syncing (create an empty repo first)
zoo config set repo git@github.com:yourname/my-sessions.git

Basic Workflow

# Import sessions from Claude Code
zoo import

# List all sessions
zoo list

# View session details
zoo show <session-id>
zoo show <session-id> --markdown

# Generate AI summary (uses installed claude/codex CLI automatically)
zoo summarize <session-id>

# Tag sessions for organization
zoo tag <session-id> bugfix security

# Sync everything to GitHub
zoo sync

Cross-Device Restore

On a new machine:

zoo init
zoo config set repo git@github.com:yourname/my-sessions.git
zoo clone      # Clone the session repo
zoo reindex    # Rebuild local index from repo
zoo restore    # Restore .jsonl files to ~/.claude/ for /resume

Commands

Command Description
zoo init Initialize configuration
zoo config show/set View or set config (repo, ai-key, ai-model)
zoo import Import new sessions from AI tools
zoo list List sessions (filter by --project, --tool, --tag, --since)
zoo show <id> Show session details (--raw, --markdown)
zoo search <query> Search sessions by summary content
zoo tag <id> [tags...] Add/remove tags
zoo tags List all tags with counts
zoo delete <id> Delete a session from index
zoo summarize [id] Generate AI summaries (--provider auto/claude-code/codex/api)
zoo sync Sync sessions to GitHub (--dry-run)
zoo clone Clone session repo to local
zoo reindex Rebuild SQLite index from repo
zoo restore Restore session files to tool directories

Summarization Providers

zoo summarize supports multiple providers, auto-detected by priority:

  1. claude-code — Uses installed claude -p CLI (no API key needed)
  2. codex — Uses installed codex -q CLI (no API key needed)
  3. api — Uses Anthropic API directly (requires zoo config set ai-key <key>)
# Auto-detect (uses whatever is available)
zoo summarize <id>

# Force a specific provider
zoo summarize --provider claude-code <id>
zoo summarize --provider api <id>

GitHub Repo Structure

your-sessions-repo/
├── raw/claude-code/my-project/
│   ├── <session-id>.jsonl          # Raw session data (preserved as-is)
│   └── <session-id>.meta.json     # Metadata (tags, summary, cwd)
└── sessions/my-project/2026-03-10/claude-code/
    └── <session-id>.md            # Readable Markdown summary

Adding Adapters

session-zoo uses an adapter pattern to support different AI tools. Currently supported:

  • Claude Code (~/.claude/projects/)

To add a new adapter, implement discover(), parse(), and get_restore_path(). See CONTRIBUTING.md for details.

Requirements

  • Python 3.12+
  • Git
  • (Optional) claude or codex CLI for summarization without API key

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

session_zoo-0.1.3.tar.gz (205.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

session_zoo-0.1.3-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file session_zoo-0.1.3.tar.gz.

File metadata

  • Download URL: session_zoo-0.1.3.tar.gz
  • Upload date:
  • Size: 205.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for session_zoo-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a646892f022af981d1f96f7ad4146152c6fc6bf1d60987a1d84fa01ab8697dbd
MD5 e019258091dbf2457e8f08748627ea81
BLAKE2b-256 e78a6a8f37cefe8e45abc769713b8848a502f9f094aeccef6dca631c03026891

See more details on using hashes here.

Provenance

The following attestation bundles were made for session_zoo-0.1.3.tar.gz:

Publisher: publish.yml on AndsGo/session-zoo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file session_zoo-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: session_zoo-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 27.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for session_zoo-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f06f097a7167d6068b5745155ada213dc8f59690ec5c7c62c0560e999838cf2a
MD5 c3e557ec151e55ddcc2b4c6014e066c5
BLAKE2b-256 b7a7b3821da6bbc2ab4c8fca1d67c2d644ec83bb7a191a2f68dc3b1167c6c863

See more details on using hashes here.

Provenance

The following attestation bundles were made for session_zoo-0.1.3-py3-none-any.whl:

Publisher: publish.yml on AndsGo/session-zoo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page