Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Inspecting and exporting data

Check the active setup

tapes status

This reports the selected .tapes/ directory, provider and upstream, read API reachability, and a brief capture summary.

List sessions

Reading the data model is a client operation, so it lives in tapesctl:

tapesctl sessions list --tapes-url http://localhost:8081
tapesctl sessions list --limit 20
tapesctl sessions get <session-id>
tapesctl sessions traces <session-id>

Each prints the server’s JSON verbatim, so it composes with jq. --tapes-url falls back to TAPES_URL. A running read API is required; start one with tapes serve.

Browse interactively

tapesctl sessions list
tapesctl sessions get <session-id>

Deck shows session aggregates and drills into traces and spans. See Deck.

Export JSONL

tapesctl export is a thin client for GET /v1/sessions/{id}/export. It streams the API’s projection rather than maintaining a separate renderer or state store.

tapesctl export <session-id> -o session.jsonl
tapesctl export <session-id> --detail traces
tapesctl export <session-id> --tapes-url http://localhost:8081

Detail modes:

  • spans (default): trace records with full span trees and links;
  • traces: turn headers without spans or links.

A running read API is required. For a multi-session export, the API also provides GET /v1/sessions/export; consult its current OpenAPI parameters.

Inspect over HTTP

Common read operations include:

curl http://localhost:8081/v1/sessions
curl http://localhost:8081/v1/sessions/<session-uuid>
curl http://localhost:8081/v1/sessions/<session-uuid>/traces
curl http://localhost:8081/v1/sessions/<session-uuid>/raw_turns
curl http://localhost:8081/v1/traces/<trace-uuid>
curl http://localhost:8081/v1/traces/<trace-uuid>/spans/<span-uuid>
curl http://localhost:8081/v1/stats

Session IDs and trace/span IDs are UUIDs, not content hashes. GET /v1/sessions/{id} returns session metadata; conversation content is on the trace/span endpoints. Raw-turn retrieval preserves the original capture separately from the derived model.

Browse the live contract at http://localhost:8081/swagger, or fetch it from http://localhost:8081/openapi. See HTTP APIs for the surface and trust boundary.