tapes

module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 26, 2026 License: AGPL-3.0

README

Tapes Logo
tapes

Transparent agentic telemetry and instrumentation for content-addressable LLM interactions.
About · Download · Documentation · Contributing

· ·

tapes is an Agentic telemetry system for content-addressable LLM interactions. It provides durable storage of agent sessions, plug-and-play OpenTelemetry instrumentation, and deterministic replay of past agent messages.


📼 Quickstart

Install tapes:

curl -fsSL https://download.tapes.dev/install | bash

Run Ollama and the tapes services. By default, tapes targets embeddings on Ollama with the embeddinggema:latest model - pull this model with ollama pull embeddinggema:

ollama serve
tapes serve

Start a chat session:

tapes chat --model gemma3

Search conversation turns:

tapes search "What's the weather like in New York?"

Checkout a previous conversation state for context check-pointing and retry:

tapes checkout abc123xyz987
tapes chat

Directories

Path Synopsis
api
Package api provides an HTTP API server for inspecting and managing the Merkle DAG.
Package api provides an HTTP API server for inspecting and managing the Merkle DAG.
mcp
Package mcp provides an MCP (Model Context Protocol) server for the Tapes system.
Package mcp provides an MCP (Model Context Protocol) server for the Tapes system.
search
Package search provides shared search types and logic for semantic search over stored LLM sessions.
Package search provides shared search types and logic for semantic search over stored LLM sessions.
cli
tapes command
tapesapi command
tapesprox command
cmd
tapes
Package tapescmder
Package tapescmder
tapes/auth
Package authcmder provides the auth command for storing API credentials.
Package authcmder provides the auth command for storing API credentials.
tapes/chat
Package chatcmder provides the chat command for interactive LLM chat through the tapes proxy.
Package chatcmder provides the chat command for interactive LLM chat through the tapes proxy.
tapes/checkout
Package checkoutcmder provides the checkout subcommand for checking out a point in the conversation DAG.
Package checkoutcmder provides the checkout subcommand for checking out a point in the conversation DAG.
tapes/config
Package configcmder provides the config command for managing persistent tapes configuration stored in the .tapes/ directory.
Package configcmder provides the config command for managing persistent tapes configuration stored in the .tapes/ directory.
tapes/deck
Package deckcmder provides the deck command for session ROI dashboards.
Package deckcmder provides the deck command for session ROI dashboards.
tapes/init
Package initcmder provides the init command for initializing a local .tapes directory in the current working directory.
Package initcmder provides the init command for initializing a local .tapes directory in the current working directory.
tapes/migrate
Package migratecmder provides the hidden tapes migrate command for running schema migrations independently of starting services.
Package migratecmder provides the hidden tapes migrate command for running schema migrations independently of starting services.
tapes/search
Package searchcmder provides the search command for semantic search over sessions.
Package searchcmder provides the search command for semantic search over sessions.
tapes/serve
Package servecmder provides the serve command with subcommands for running services.
Package servecmder provides the serve command with subcommands for running services.
tapes/serve/api
Package apicmder provides the API tapes server cobra command.
Package apicmder provides the API tapes server cobra command.
tapes/serve/ingest
Package ingestcmder provides the ingest server cobra command.
Package ingestcmder provides the ingest server cobra command.
tapes/serve/proxy
Package proxycmder provides the proxy server command.
Package proxycmder provides the proxy server command.
tapes/skill
Package skillcmder provides the `tapes skill` CLI commands for generating, listing, and syncing agent skills from session data.
Package skillcmder provides the `tapes skill` CLI commands for generating, listing, and syncing agent skills from session data.
tapes/start
Package startcmder provides the start command for launching tapes and agents.
Package startcmder provides the start command for launching tapes and agents.
tapes/status
Package statuscmder provides the status command for displaying the current checkout state of the local .tapes directory.
Package statuscmder provides the status command for displaying the current checkout state of the local .tapes directory.
tapes/sync
Package synccmder provides the `tapes sync` CLI command.
Package synccmder provides the `tapes sync` CLI command.
version
Package versioncmder
Package versioncmder
Package ingest provides an HTTP server that accepts completed LLM conversation turns for storage in the Merkle DAG.
Package ingest provides an HTTP server that accepts completed LLM conversation turns for storage in the Merkle DAG.
pkg
backfill
Package backfill extracts token usage from Claude Code transcripts and backfills historical nodes in the tapes database.
Package backfill extracts token usage from Claude Code transcripts and backfills historical nodes in the tapes database.
cliui
Package cliui provides reusable terminal UI helpers (spinners, step indicators, markdown rendering) for tapes CLI commands.
Package cliui provides reusable terminal UI helpers (spinners, step indicators, markdown rendering) for tapes CLI commands.
dotdir
Package dotdir manages the .tapes/ and ~/.tapes directories.
Package dotdir manages the .tapes/ and ~/.tapes directories.
embeddings
Package embeddings
Package embeddings
embeddings/ollama
Package ollama implements pkg/embedding's Embedder client for Ollama's embedding APIs
Package ollama implements pkg/embedding's Embedder client for Ollama's embedding APIs
embeddings/utils
Package embeddingutils is the embeddings utility package
Package embeddingutils is the embeddings utility package
git
Package git provides utilities for detecting git repository information.
Package git provides utilities for detecting git repository information.
llm
Package llm provides a internal representations of LLM inference API requests and responses which are then further mutated and handled.
Package llm provides a internal representations of LLM inference API requests and responses which are then further mutated and handled.
llm/provider/anthropic
Package anthropic
Package anthropic
llm/provider/ollama
Package ollama
Package ollama
llm/provider/openai
Package openai
Package openai
logger
Package logger provides opinionated logging capabilities for the tapes system.
Package logger provides opinionated logging capabilities for the tapes system.
merkle
Package merkle is an implementation of a Merkel DAG
Package merkle is an implementation of a Merkel DAG
publisher
Package publisher provides interfaces and implementations for publishing Merkle DAG nodes to external event streaming systems.
Package publisher provides interfaces and implementations for publishing Merkle DAG nodes to external event streaming systems.
publisher/kafka
Package kafka provides a Kafka-backed Publisher implementation.
Package kafka provides a Kafka-backed Publisher implementation.
skill
Package skill provides LLM-powered extraction of reusable patterns from tapes sessions, outputting Claude Code SKILL.md files.
Package skill provides LLM-powered extraction of reusable patterns from tapes sessions, outputting Claude Code SKILL.md files.
sse
Package sse provides a minimal, purpose-built SSE (Server-Sent Events) tee-reader for use in the tapes proxy.
Package sse provides a minimal, purpose-built SSE (Server-Sent Events) tee-reader for use in the tapes proxy.
storage
Package storage
Package storage
storage/ent/driver
Package entdriver
Package entdriver
storage/migrate
Package migrate provides a versioned schema migration engine for tapes storage backends.
Package migrate provides a versioned schema migration engine for tapes storage backends.
storage/postgres
Package postgres provides a PostgreSQL-backed storage driver using ent ORM.
Package postgres provides a PostgreSQL-backed storage driver using ent ORM.
storage/sqlite
Package sqlite provides a SQLite-backed storage driver using ent ORM.
Package sqlite provides a SQLite-backed storage driver using ent ORM.
telemetry
Package telemetry provides anonymous usage tracking for the tapes CLI using PostHog.
Package telemetry provides anonymous usage tracking for the tapes CLI using PostHog.
update
Package update provides a best-effort mechanism for checking whether a newer version of tapes is available.
Package update provides a best-effort mechanism for checking whether a newer version of tapes is available.
utils
Package utils provides bespoke, one off utils that don't make sense to be their own package
Package utils provides bespoke, one off utils that don't make sense to be their own package
vector
Package vector provides interfaces and implementations for vector storage and embedding.
Package vector provides interfaces and implementations for vector storage and embedding.
vector/chroma
Package chroma provides a Chroma vector database driver implementation.
Package chroma provides a Chroma vector database driver implementation.
vector/pgvector
Package pgvector provides a PostgreSQL-backed vector driver using the pgvector extension.
Package pgvector provides a PostgreSQL-backed vector driver using the pgvector extension.
vector/sqlitevec
Package sqlitevec provides a SQLite-backed vector driver using sqlite-vec.
Package sqlitevec provides a SQLite-backed vector driver using sqlite-vec.
Package proxy provides an LLM inference proxy that stores conversations in a Merkle DAG.
Package proxy provides an LLM inference proxy that stores conversations in a Merkle DAG.
header
Package header provides header filtering for the tapes proxy.
Package header provides header filtering for the tapes proxy.
worker
Package worker provides an asynchronous worker pool and utils for persisting conversation turns using the provided storage.Driver and generating embeddings using the provided embeddings.Embedder.
Package worker provides an asynchronous worker pool and utils for persisting conversation turns using the provided storage.Driver and generating embeddings using the provided embeddings.Embedder.
web

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL