Claude Transcripts docs GitHub
Work in progressUnder active development — not tested as ready for use. Breaking changes land without notice, stored data may need to be discarded between revisions, and there is no auth or security model. These docs describe the intended design as much as the current state.

Architecture Decision Records

Lightweight records of non-obvious decisions. See 0001 for the format and what counts.

#TitleStatus
0001Record architecture decisionsAccepted
0002Single combined container serves the API and the SPAAccepted
0003Vendor-neutral S3 via Bun's S3 client; drop MinIO and rcloneAccepted
0004Bun workspace monorepo; the hook ships as a standalone pluginAccepted
0005Tag-driven image releasesAccepted (CI/registry specifics in 0012)
0006Webui consumes shared workspace types directly; no OpenAPI client codegenSuperseded by 0019
0007CouchDB as the primary storeAccepted
0008Garage as the S3 object storeAccepted
0009Meilisearch for search (Phase 2)Proposed
0010Claude-Code-specific scope (not a generic agent-session logger)Accepted
0011Read CouchDB attachments over HTTP, not nano's attachment.getSuperseded by 0014
0012GitHub Actions + GHCR for releases (pins CI/registry for 0005)Accepted
0013S3 is the transcript's home; the CouchDB attachment is opt-in (supersedes parts of 0011)Superseded by 0014
0014Transcripts live in S3 only — CouchDB attachment support removed (supersedes 0013)Accepted
0015Tiered architecture (Tier 1 / 2 / 3)Accepted
0016The webapi is the sole I/O gateway and stability columnAccepted
0017Hooks and actions are decoupled (many-to-many)Accepted
0018Application/operational logs go to CouchDB (separate database)Accepted
0019OpenAPI spec is the source of truth; clients are generated (supersedes 0006)Accepted
0020Bundled backing services default to no authAccepted
0021Self-built CouchDB migrations (up/down + views + import/export)Accepted
0022/ serves a machine-readable app manifest (agent entrypoint)Accepted
0023Lockstep versioning; components built separately, then combined into one imageAccepted
0024Mirror third-party backing-service images to the container registryAccepted
0025Claude Code compatibility is a generated, structured definitionAccepted
0026A single main branchAccepted
0027Full-content chunks in CouchDB (per-turn content, not just byte ranges)Accepted (read + write paths done)
0028External vs bundled MeilisearchOpen — undecided