Skip to main content

clack

PyPI Python License

A terminal UI for browsing, searching, and resuming Claude Code sessions.

Browse your full session history, read past conversations, jump into stats, and resume any session — all without leaving the terminal.


Install

# pipx
pipx install clack-tui

# uvx (run without installing)
uvx clack-tui

The package name is clack-tui because clack is already taken on PyPI. The package installs both clack and clack-tui executables.

Requires Python 3.11+ and Claude Code installed.


Quick start

clack

clack reads your Claude Code session files directly from ~/.claude/projects/ — no configuration needed.


Features

Tab Key What it does
Dashboard 1 Browse all sessions, search with full-text search (DuckDB FTS / BM25)
Stats 2 Token usage and model breakdown, daily sparklines
Dialog 3 Read any conversation turn-by-turn, export to HTML
Query 4 Write SQL directly against your session data (DuckDB)

Dashboard key bindings

Key Action
/ Focus search
Esc Clear search
Enter Resume session (opens claude --resume)
v View full conversation
p Open the session's PR in a browser (gh pr view -w)
r Refresh session list
q Quit

PR column: Each session records the git branch it was working on, so clack can show the pull request that branch belongs to — repo#number with a colored icon for its state:

State
blue open
yellow commented
red changes requested
green approved
dim merged
dim closed

This needs the gh CLI on your PATH and authenticated; without it the column is simply blank. PRs are fetched in the background — one gh pr list per repo, several repos at a time, cached for five minutes — so the dashboard stays responsive and the column fills in repo by repo.

tmux / cmux: If clack is running inside a tmux session, resuming opens the session in a new tmux window (or jumps to the existing pane if that session is already live). The same behavior works inside cmux — clack opens a new cmux workspace via cmux new-workspace --cwd ... --command ..., or focuses the existing pane with cmux focus-pane. Outside any multiplexer, clack suspends the TUI, runs claude --resume, and returns when you exit.

If the DuckDB FTS extension is unavailable, dashboard search falls back to simple substring matching.

Query console

The Query console exposes your session data as DuckDB SQL views:

View Contents
v_sessions One row per session — date, project, summary, model, turn count
v_assistant_turns Individual assistant turns with token counts
v_stats Aggregated usage by model
v_sessions_by_day Daily session and token totals
raw_records Raw JSONL records

Example queries:

-- Sessions from the last week
SELECT title, cwd, turn_count FROM v_sessions
WHERE last_active > now() - INTERVAL '7 days';

-- Most token-heavy sessions
SELECT sessionId, SUM(output_tokens) AS total
FROM v_assistant_turns GROUP BY 1 ORDER BY 2 DESC LIMIT 10;

Dev setup

git clone https://github.com/jcc-ne/clack
cd clack
uv sync
uv run clack

Release notes for TestPyPI and Trusted Publishing live in docs/releasing.md.


Requirements

  • Python 3.11+
  • Claude Code (session files at ~/.claude/projects/)
  • tmux or cmux (optional — enables jumping to live sessions and opening resumed sessions in a new window/workspace)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clack_tui-0.3.0.tar.gz (37.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clack_tui-0.3.0-py3-none-any.whl (42.8 kB view details)

Uploaded Python 3

File details

Details for the file clack_tui-0.3.0.tar.gz.

File metadata

  • Download URL: clack_tui-0.3.0.tar.gz
  • Upload date:
  • Size: 37.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for clack_tui-0.3.0.tar.gz
Algorithm Hash digest
SHA256 458603a09d21b5c8efb4e017969858fb6014e70714ca37e40da1708dca0e1e9c
MD5 d2456b1d56c1598ce605548372a28832
BLAKE2b-256 def716f1e5ac2f86dbfda4c9a3cef627fdcc6c0252e6939248511c0a01cc4c9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for clack_tui-0.3.0.tar.gz:

Publisher: publish.yml on jcc-ne/clack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file clack_tui-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: clack_tui-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 42.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for clack_tui-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eaf13e35b26781969f83864139151f34cbec5f07fead2384cd566244081d4ef5
MD5 84befc9761f5c6a3b54d895093e3bc88
BLAKE2b-256 6d8577ca8d7caa457338feb8998d9cf261449103df07e5cfc8ced2b8a4aa746b

See more details on using hashes here.

Provenance

The following attestation bundles were made for clack_tui-0.3.0-py3-none-any.whl:

Publisher: publish.yml on jcc-ne/clack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page