# goosedump
`goosedump` is a coding agent context data browser. It supports Claude, Codex,
Crush, Gemini, Goose, OpenCode, and Pi. It builds on top of the ideas of
[`lllyasviel/VCC`](https://github.com/lllyasviel/VCC).
Features:
* Structured JSON output on stdout, so you can render it however you like.
* BM25 keyword ranking (with scores) for natural queries.
* Glob matching for filtering messages.
* Format conversion: re-render any context in another provider's native format.
## Usage
```sh
# List contexts across all providers (optionally filtered by a glob).
goosedump list
goosedump list goose:*
# Show a full transcript as structured goosedump JSON (default).
goosedump show goose:abc123
# Rank or filter messages; search hits carry BM25 scores.
goosedump grep claude:abc123 "TODO"
goosedump search claude:abc123 "race condition" -p2
# Produce a compaction summary (always emitted in its own fixed schema).
goosedump compact goose:abc123
# Delete contexts matching a glob (same matching as list); --dry-run previews.
goosedump delete goose:abc123
goosedump delete 'goose:*'
goosedump delete '*' --dry-run
# Convert a context to another provider's native format with --output-format.
# JSONL backends (claude, codex, pi) emit the exact native session file;
# SQLite backends (crush, goose, opencode) emit a row-oriented JSON projection
# of their tables that is straightforward to insert into the live store.
goosedump show claude:abc123 --output-format goose
```
A natively converted context round-trips: the output re-reads through the
target provider's reader to the same internal representation. Session metadata
the internal representation does not carry (per-message timestamps, model
names) is omitted or synthesized.
## Build
```sh
cargo build
cargo test
```
## Licensing
The JavaScript npm wrapper is licensed under `Apache-2.0`. The Rust source and
native binaries are licensed under `LGPL-2.1-or-later`.
Corresponding source for each published native binary is available from the
GitHub repository tag that matches the package version.