DEV Community

Cover image for ClaudeTUI v0.3: Claude Code statusline gets a unified CLI, interactive configurator, and a proper splash screen
Slim
Slim

Posted on

ClaudeTUI v0.3: Claude Code statusline gets a unified CLI, interactive configurator, and a proper splash screen

A couple of days ago I shared ClaudeTUI — a real-time statusline, live monitor, and session analytics for Claude Code. Since then, a lot has changed. Here's what's new in v0.3.

One command to rule them all

The biggest change: instead of six separate CLI commands for managing the Claude Code statusline, monitor, and analytics, there's now a single claudetui dispatcher.

# before
claude-ui-monitor
claude-stats --days 7
claude-sessions list
claude-ui-mode compact

# after
claudetui monitor
claudetui stats --days 7
claudetui sessions list
claudetui mode compact
Enter fullscreen mode Exit fullscreen mode

Every subcommand passes arguments straight through — claudetui is just a 60-line Python script that resolves the right tool and execs it. No overhead, no framework. If you type claudetui --help, you get the full menu:

claudetui — CLI for ClaudeTUI (Claude Code utilities)

Commands:
  monitor     Live session dashboard (separate terminal)
  stats       Post-session analytics
  sessions    Browse, compare, resume, export sessions
  mode        Switch statusline mode (full/compact/custom)
  setup       Configure statusline, hooks, and commands
  uninstall   Remove ClaudeTUI configuration
Enter fullscreen mode Exit fullscreen mode

The old command names (claude-ui-monitor, claude-stats, etc.) are gone. Clean break, clean namespace.

Interactive statusline configurator

The Claude Code statusline has 20+ components across three lines — context usage, cost, model, git stats, tool trace, and more. Previously you could only choose between "everything" (full mode) and "almost nothing" (compact mode). Now there's a third option:

claudetui mode custom
Enter fullscreen mode Exit fullscreen mode

This opens a curses TUI where you can toggle individual components with arrow keys and spacebar:

Statusline Configurator

Each component shows a live preview of what it looks like — colored progress bars, sparklines, git stats — right in the menu. You can pick from five widget styles for the matrix rain area, or apply presets (all, minimal, focused).

Don't like interactive menus? Use flags:

claudetui mode custom --hide model,cost,session_id
claudetui mode custom -w hex -p focused
claudetui mode custom -l   # show what's currently hidden
Enter fullscreen mode Exit fullscreen mode

Config saves to ~/.claude/claudeui.json and hot-reloads — no restart needed.

Monitor got a facelift

The live monitor (claudetui monitor) picked up several improvements:

Splash screen — the monitor now shows an ASCII art logo while it loads the session in the background. Looks cool, masks the 1-2 second discovery time.

Pinned layout — the header (context, cost, stats) and footer (hotkey bar) are now fixed. Only the log section scrolls. No more hunting for the help bar when the log fills up.

Configurable log size — add "monitor": {"log_lines": 12} to your claudeui.json, or set it to 0 to hide the log entirely. Default is 8. Adjustable from the settings panel too (press c in the monitor).

Responsive footer — the hotkey bar adapts to terminal width. Full labels at 60+ columns, abbreviated at 40+, minimal below that.

The rebrand

You might have noticed: it's ClaudeTUI now, not ClaudeUI. The old name was too generic and clashed with other projects. Everything got renamed — repo, Homebrew tap, slash commands (/ui:*/tui:*), CLI tools, docs, landing page, and all the screenshots.

The installer handles migration automatically — if you have the old claudeui Homebrew tap, it untaps it and points you to the new one.

brew tap slima4/claude-tui
brew install claude-tui
claudetui setup
Enter fullscreen mode Exit fullscreen mode

Or the one-liner:

curl -sSL https://raw.githubusercontent.com/slima4/claude-tui/main/install.sh | bash
Enter fullscreen mode Exit fullscreen mode

What's next

The transcript parsing approach works surprisingly well, but it's still reverse-engineering an undocumented format. Every Claude Code update is a small gamble. I'd love to see an official API for session metadata — even just a stable JSON schema for the transcript would help.

In the meantime, if you use Claude Code and want a statusline with real-time context tracking, cost monitoring, and session analytics: github.com/slima4/claude-tui

Stars and issues welcome.

Top comments (0)