Documentation / Concepts

Concept: runtime and adapter

A runtime is the stable origin namespace attached to every canonical event: one per harness in the adapter registry, or hooks.

A runtime is the stable origin namespace attached to every canonical event: one runtime per harness in the adapter registry (claude, codex, omp, gemini, cursor, … — transcript-lake sources lists every one with its roots on this machine), or hooks. The same identifier names the harness in Oko's harness catalogue and in Tama's hook adapters.

A transcript adapter owns five operations for one vendor format: return existing roots, return the stable parents the stream watches, enumerate candidate sessions, resolve one notified path without rescanning siblings, and say how a session is read — as appended lines through a stateful parser, or whole, for stores a harness rewrites in place (JSON documents, SQLite databases, Markdown logs). It does not write, watch, mask, or query.

Vendor runtimes retain ownership of raw transcripts. Transcript Lake opens supported files read-only and never follows Claude oversized-result references. Missing roots are normal. Files outside the candidate shape and malformed/torn records are skipped rather than transformed into invented evidence.

hooks differs: Tama publishes immutable closed telemetry segments, with a legacy mutable-log fallback. The canonical runtime is still hooks, and records become hook_decision events.

Runtime selection in CLI flags is exact and validated. Unsupported values fail rather than silently yielding an empty result.

See supported inputs.