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

Introduction

Status: Current Last modified: 2026-06-21 21:33 EDT

TalkBank is the world’s largest open repository of spoken language data. This repository (TalkBank/chatter) is the standalone home of the CHAT format authority and the chatter tool family: the chatter CLI, the Rust crates for parsing/validation/transformation, the tree-sitter-talkbank grammar, the talkbank-lsp language server, and the desktop validation app.

chatter is publicly released. To get it right away:

  • Command-line tool (macOS / Linux): curl --proto '=https' --tlsv1.2 -LsSf https://github.com/TalkBank/chatter/releases/latest/download/chatter-installer.sh | sh (Windows and other options: Install).
  • Desktop app: download for your platform from the latest release.
  • Full installation guide (all platforms, package details): Install.

The Rust crates are source-available from this repository (not yet published to crates.io). As a 0.x release, APIs and flags may change before 1.0.

Choose the right surface

TaskRecommended Surface
CHAT validation, normalization, or conversionchatter CLI
LSP integration in editorstalkbank-lsp standalone
Build CHAT tooling in RustRust crates (talkbank-model, talkbank-parser, etc.)
Reuse grammar in other toolstree-sitter-talkbank
Standalone desktop GUI for CHAT validationChatter Desktop (apps/chatter-desktop/)

What’s In This Repo

  • chatter CLI: validate, convert, normalize, and analyze CHAT files from the command line, with an interactive TUI for corpus-scale workflows
  • Language Server (LSP): works with any LSP-compatible editor (Neovim, Emacs, Helix, Zed, etc.) to provide live validation and cross-tier alignment
  • JSON data model: every CHAT structure as typed JSON with lossless roundtrip fidelity, backed by a published JSON Schema
  • Rust API: parse, validate, inspect, and transform CHAT files programmatically via library crates

Who This Book Is For

AudienceStart HereThen Go To
CLI users validating, normalizing, or converting CHATInstallchatter Quick Start, CLI Reference
Rust library consumers parsing or transforming CHATLibrary Usagecrate-root rustdoc for talkbank-model, talkbank-parser, and talkbank-transform
Grammar / format consumers embedding CHAT parsing in other toolsCHAT Format Overviewtree-sitter-talkbank docs and the grammar/reference chapters
Contributors / maintainers working in this repoContributing setupCI and release

Repository Layout

grammar/        Tree-sitter grammar for CHAT
spec/           Source of truth: CHAT specification + error specs
crates/         Rust crates for model, parser, transform, cache, CLI, LSP, tests, and FFI support
apps/           Tauri v2 desktop app (`chatter-desktop`)
corpus/         Reference corpus (must stay 100% valid under the regression gate)
schema/         JSON Schema for the CHAT AST
tests/          Integration tests and fixtures
fuzz/           Fuzz testing targets (separate Cargo workspace)
docs/           Strategy docs, proposals, and investigations for this repo
book/           This documentation (mdBook)

Data flows: spec (source of truth) → grammar (tree-sitter) → Rust crates (parsers, model, validation, CLI, LSP) → applications (chatter, desktop app).