Skip to main content

A CLI supervisor for Claude Code sessions

Project description

Betty

Betty

A real-time TUI monitor for Claude Code sessions.

Install

curl -fsSL https://betty4.sh/install.sh | bash

Or directly with uv / pip:

uvx --from betty-cli betty  # run without installing
uv tool install betty-cli   # install permanently
pip install betty-cli       # with pip

Use

# Start betty
betty

# In another terminal, run Claude Code as usual
claude

The companion auto-detects your session. No hooks or configuration needed.

Options

Flag Description
--global, -g Watch all projects
--worktree, -w Watch across git worktrees
--style UI style (rich or claude-code)
--version, -v Show version

Commands

Command Description
config Configure LLM summarization and UI settings
mock --demo Generate mock sessions for development

Keybindings

Navigation

Key Action
j/k Navigate turns
g/G Jump to beginning/end
1-9 Switch sessions
h/l Switch panels (manager expand mode)

Display

Key Action
o / Space / Enter Expand/collapse turn or span
e/c Expand/collapse all
f Cycle filters (All, Spans, Tools, Read, Write, Edit, Bash)
s/S Toggle summaries / Summarize all

Views

Key Action
M Toggle manager view
T Toggle tasks view
P Toggle plan view
I Toggle insights (analysis) panel

Analysis & Annotations

Key Action
A Analyze selected turn/span/session
[/] Zoom analysis level (turn / span / session)
n Annotate selected turn
a Toggle/clear alerts

Agent

Key Action
B Toggle agent panel (closed / full / compact)
? Ask Betty a question about the session

Other

Key Action
O Open PR in browser
x Export to Markdown
m Edit monitor instructions
D Delete session
Esc Close panel / clear selection
q Quit

Betty Agent

Betty Agent is a continuous session observer that tracks what Claude Code is doing and flags problems in real time. It combines heuristic detectors with optional LLM-powered narrative and drift detection.

Enable

betty config --agent

Or set the environment variable BETTY_AGENT_ENABLED=true.

What it does

  • Goal tracking — extracts the session goal and current objective, updating as the user gives new instructions
  • Progress assessment — classifies sessions as on_track, stalled, or spinning using error rates, retry patterns, and tool diversity
  • Error spike detection — warns when error rate exceeds 40% in recent tool calls
  • Retry loop detection — flags when the same tool is called 3+ times consecutively
  • Stall detection — notices gaps of 2+ minutes between turns
  • File change tracking — logs Read/Write/Edit operations with line counts
  • Milestones — marks every 10th tool call and 5th user message
  • LLM narrative (optional) — generates a 2-3 sentence situation report describing current activity
  • Goal drift detection (optional) — compares recent activity against the session goal and warns if the assistant has gone off track
  • Ask Betty — press ? to ask a natural-language question about the session; Betty answers citing turn numbers and file paths

Configuration

The agent uses your existing LLM configuration (set via betty config). LLM features (narrative, drift detection, goal determination, Ask Betty) require a configured LLM provider. Heuristic detectors work without one.

Setting Default Description
enabled false Enable the agent (opt-in)
update_interval 5 Minimum turns between LLM updates
max_observations 50 Max observations kept per session

Observations and reports are cached to disk (~/.cache/betty/) and persist across restarts.

License

MIT

Project details


Download files

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

Source Distribution

betty_cli-0.15.0.tar.gz (107.9 kB view details)

Uploaded Source

Built Distribution

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

betty_cli-0.15.0-py3-none-any.whl (122.7 kB view details)

Uploaded Python 3

File details

Details for the file betty_cli-0.15.0.tar.gz.

File metadata

  • Download URL: betty_cli-0.15.0.tar.gz
  • Upload date:
  • Size: 107.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for betty_cli-0.15.0.tar.gz
Algorithm Hash digest
SHA256 9cb72900903b168b86848954b568aa5a710a10ab3816def41e56dd314a282113
MD5 ceb3fea12d74f6af9a424df2ebbe5ac2
BLAKE2b-256 a99daffe90a9789109c1bc32cccdc4a05a75b5e0143736dfea5a4c6b0fae5b3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for betty_cli-0.15.0.tar.gz:

Publisher: publish.yml on ai-companion/betty

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

File details

Details for the file betty_cli-0.15.0-py3-none-any.whl.

File metadata

  • Download URL: betty_cli-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 122.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for betty_cli-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 98ed382063b8905665e78e9eec6c6ab39253b2f8981aa71ed96b302512c31cfb
MD5 a91bc36d2035762c45ce526dbb7171b9
BLAKE2b-256 c2634e77cbe4ae37048952fea20ab4e16916ba83cf95fa6c27540703749cb3c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for betty_cli-0.15.0-py3-none-any.whl:

Publisher: publish.yml on ai-companion/betty

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