Skip to content

adinhodovic/ai-dash

Repository files navigation

AI Dash

AI Dash

A terminal UI for browsing coding sessions across multiple tools from local transcripts, session logs, and databases. It currently supports Claude Code, Codex, and OpenCode.

What it does

  • Parses Claude Code JSONL transcripts, Codex session logs, and the OpenCode SQLite database
  • Fuzzy search across sessions, live as you type
  • Filter by tool, project, or date range
  • Sort per table (last active, tool, project, summary)
  • Project overview with session counts and tool breakdown
  • Detail pane with tokens, cost, metadata, related sessions
  • Picks up subagent/child sessions (Claude subagents, OpenCode parent/child)
  • Nerd Font icons when available, falls back to Unicode
  • Resume or start sessions from the dashboard

Install

From source

git clone https://github.com/adinhodovic/ai-dash.git
cd ai-dash
make build
./ai-dash

Binary

Pre-built binaries are available on the releases page.

Linux:

curl -L https://github.com/adinhodovic/ai-dash/releases/latest/download/ai-dash-linux-amd64 -o ai-dash
chmod +x ai-dash

macOS:

curl -L https://github.com/adinhodovic/ai-dash/releases/latest/download/ai-dash-darwin-arm64 -o ai-dash
chmod +x ai-dash

For other architectures, see all binaries on the releases page.

Configuration

Config file: ~/.config/ai-dash/config.json

Sources

Sessions are discovered from default paths. Override them if needed:

Tool Default path Config key
OpenCode ~/.local/share/opencode/opencode.db or ~/Library/Application Support/opencode/opencode.db on macOS opencode_path
Codex ~/.codex/config.toml codex_path
Claude Code ~/.claude/projects/ claude_path

Options

{
  "$schema": "https://raw.githubusercontent.com/adinhodovic/ai-dash/main/config.schema.json",
  "terminal": "ghostty",
  "poll_interval": "10s",
  "default_age_filter": "14d",
  "default_tool": "claude",
  "auto_select_tool": false,
  "nerd_font": null,
  "age_presets": ["1h", "1d", "3d", "7d", "14d", "30d"]
}
Option What it does Default
terminal Terminal emulator used to open/resume sessions (e.g. ghostty, kitty) $TERMINAL
poll_interval How often sessions reload 10s
default_age_filter Default age filter used on load and when clearing filters 14d
default_tool Pre-selected tool when pressing n none
auto_select_tool Skip the tool picker for new sessions false
nerd_font Force Nerd Font on/off, null auto-detects auto
age_presets Options when cycling with D 1h,1d,3d,7d,14d,30d

Add the $schema line to get autocompletion in your editor. You can also run ai-dash schema to print it.

On macOS, terminal should be a CLI terminal binary like ghostty or kitty.

Keys

Key Action
/ Search
r Resume session
n New session
t / p Filter by tool / project
s Cycle sort
D Cycle age range
a Toggle subagents
c Clear filters/search
tab Switch focus
? Full help
q Quit

Press ? in the app to see the full context-aware keymap.

Development

Common tasks

make fmt
make build
make test
golangci-lint run ./...

Run the app locally with:

./ai-dash

Project layout

  • cmd/ai-dash - cobra entrypoint
  • internal/config - config loading and schema generation
  • internal/session - shared session model and sorting
  • internal/sources/claude - Claude Code parser
  • internal/sources/codex - Codex parser
  • internal/sources/opencode - OpenCode parser
  • internal/sources/shared - shared source discovery helpers
  • internal/ui - Bubble Tea TUI

Source support

Only official provider files are supported:

  • Claude Code transcripts
  • Codex session JSONL files
  • OpenCode SQLite database

Do not add generic or custom session JSON loaders.

Testing notes

  • Add provider-specific tests when changing importer or parser logic
  • Keep fixtures under each source package's testdata/ directory
  • Run make fmt, make build, make test, and golangci-lint run ./... before finishing changes

License

Apache License 2.0

About

A terminal UI for browsing coding sessions across multiple tools from local transcripts, session logs, and databases. It currently supports Claude Code, Codex, and OpenCode.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors