Skip to content

Getting started

Installation

Requires Python 3.12+.

Install from source with uv:

git clone https://github.com/aaronwolen/transcript-indexer.git
cd transcript-indexer
uv sync

Basic usage

Point txi at a directory of transcripts (defaults to ~/transcripts), sync the index, then search.

# One-off parse of a single file as a sanity check
txi parse path/to/transcript.txt

# Walk the corpus and bring the index into sync with the filesystem
# (this also computes embeddings for new/changed conversations).
txi sync

# Full-text, semantic, or hybrid search
txi search fts "release planning"
txi search semantic "how should we sequence the launch?"
txi search hybrid "release planning"

Use --help on any command or subcommand to see available options:

txi --help
txi sync --help
txi search --help
txi people --help

Command overview

Command Description
txi parse Parse a single transcript file and print it as JSON
txi sync Walk the corpus and bring the index into sync with the filesystem
txi embed Run the embedding pipeline against indexed conversations
txi serve Launch the local web dashboard
txi check Validate transcript files against a specific reader format
txi stats Print corpus statistics
txi search fts Full-text search across transcript turns
txi search semantic Vector (semantic) search across chunk embeddings
txi search hybrid Hybrid FTS + semantic search merged via RRF
txi conversations List conversations matching metadata filters
txi conversation Show a single conversation: header and turns
txi people list List every canonical person and their aliases
txi people add Add a new canonical person with optional aliases
txi people alias Add or remove an alias for an existing person
txi people merge Merge two people, reassigning all foreign keys
txi people unknown List raw values not yet resolved to a person
txi people resolve Re-run alias resolution without re-reading sources
txi config path Print the path of the active config file
txi config view Print the contents of the active config file
txi config validate Validate the config file's TOML syntax and field types
txi db path Print the path of the SQLite index database
txi db reset Delete the SQLite index database so the next sync starts fresh