Skip to main content

ocgc

Analyze and reclaim storage used by OpenCode sessions, diffs, and snapshots.

OpenCode stores sessions in a SQLite file that grows without limit and has no built-in cleanup. It also writes session diffs and git snapshots to disk. ocgc shows where the space goes and reclaims it.

Install

uv tool install ocgc

Or with pip:

pip install ocgc

Usage

# Dashboard: DB size, session breakdown, storage by part type
ocgc status

# List sessions sorted by size
ocgc sessions --sort size --limit 20

# Deep analysis: top sessions, growth rate, root vs subagent
ocgc analyze

# Preview what a purge would do
ocgc purge --older-than 14d --dry-run

# Delete subagent sessions older than a week
ocgc purge --subagents --older-than 7d

# Strip reasoning tokens only (biggest space win, ~77% of storage)
ocgc purge --strip-reasoning

# Other purge options
ocgc purge --larger-than 50M
ocgc purge --keep-latest 50
ocgc purge --session ses_abc123

# Clean up orphan session diff files (no matching session in DB)
ocgc purge --clean-orphans

# Delete all snapshot directories
ocgc purge --clean-snapshots

# Reclaim disk space after purging
ocgc vacuum

Multiple purge flags combine with AND. --strip-reasoning changes the action from deleting sessions to removing reasoning parts (from matching sessions, or all sessions if no other filters are given). --clean-orphans and --clean-snapshots run independently before any session purge. --dry-run previews without touching anything. --force skips the confirmation prompt.

Filesystem storage

Beyond the SQLite database, OpenCode stores data on the filesystem:

  • Session diffs (~/.local/share/opencode/storage/session_diff/): one JSON file per session containing full file contents. Cleaned automatically when sessions are purged.
  • Snapshots (~/.local/share/opencode/snapshot/): git object packs for each project. Use --clean-snapshots to delete.
  • Tool output (~/.local/share/opencode/tool-output/): small files from tool invocations. Shown in stats but no cleanup needed.

ocgc status and ocgc analyze show sizes for all three directories. analyze also reports orphan session diff files (files with no matching session in the DB).

Safety

status, sessions, and analyze are read-only. purge asks for confirmation before deleting. ocgc warns if OpenCode is running.

Custom database path

export OCGC_DB_PATH=/path/to/opencode.db
ocgc status

Default: ~/.local/share/opencode/opencode.db

License

MIT

Metadata

Release files for ocgc 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ocgc 0.1.0
File Size Uploaded
ocgc-0.1.0.tar.gz 35.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ocgc 0.1.0
File Interpreter ABI Platform
ocgc-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 52.8 kB

Release files / ocgc-0.1.0.tar.gz

Download URL ocgc-0.1.0.tar.gz
Size 35.9 kB
Tags Source
SHA-256 checksum
How to use checksums
83ff2de86a0bf12ddac40ff993660240fd1ed9853a954c0f0d9368eda0274b7f
BLAKE2b-256 checksum
How to use checksums
b5fa5c854b1b4b0b34ddeb366ffc89794b4b61ce65422b30387e70ce0914c3c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 15, 2026.

Transparency log

Release files / ocgc-0.1.0-py3-none-any.whl

Download URL ocgc-0.1.0-py3-none-any.whl
Size 16.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
61ed60fab46e9fd484b59dc98584e983ef0446c1c7ee643c36207e859a20dd7d
BLAKE2b-256 checksum
How to use checksums
e566f298fbd80be5107078d90a0b4e77a1b7e9ba5c3e43301b5b11366e3a903e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page