Commit Graph

11 Commits

Author SHA1 Message Date
Alejandro Gutiérrez
972269ef20 feat: add usage panel with session, weekly, and monthly cost bars
Scan ~/.claude/projects JSONL files to compute API cost usage.
Shows 4 bars matching Claude's usage screen: current session (5h window),
weekly all models, weekly sonnet-only, and monthly total.
Configurable plan limits in PLAN_LIMITS. Refreshes every 30s.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 19:27:43 +00:00
Alejandro Gutiérrez
e56ed9bc95 fix: robust terminal focus with session targeting and code review fixes
- Extract helpers: focusTerminalTab, getTtyViaPsForPids, escapeAppleScript
- Batch ps tty lookup (single call for all PIDs instead of sequential)
- Target specific session tty when g pressed on session row
- Sort ttys by most recent activity for project-level focus
- Deduplicate tried ttys between primary and fallback paths
- Escape AppleScript interpolations to prevent injection
- Wrap flash animation in try/end try for mid-close safety
- Wrap async handleKeypress in try/catch for unhandled rejections
- Fix activeTag padding for consistent column alignment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 17:33:44 +00:00
Alejandro Gutiérrez
f8c6a5f584 feat: flash terminal background on focus and fix active tag alignment
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 12:52:10 +00:00
Alejandro Gutiérrez
6e9788804f fix: deduplicate idle sessions and refresh session data on transitions
Multiple claude processes in the same CWD share one sessionFile via
findActiveJsonl, causing duplicate idle entries. Now deduplicates by
project+sessionFile key. Also refreshes session data on busy→idle
transitions so the parser fix takes effect immediately.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 01:54:15 +00:00
Alejandro Gutiérrez
66ac50813a feat: idle panel navigation, dock bounce, and fix session text parsing
- Tab/shift-tab to select idle sessions, enter to focus terminal
- Dock bounces on busy→idle transition for attention
- Fix session parser to handle array-format user messages and skip
  system tags (<local-command-caveat>, <command-name>, etc.)
- Eagerly load session data for active projects so idle panel
  always shows title, prompt, and response
- Render idle rows as individual Text nodes to avoid t`` nesting bug

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 01:51:42 +00:00
Alejandro Gutiérrez
287d7d3228 feat: idle sessions panel toggle + session status indicators in tree view
Press 'i' to toggle bottom panel between Preview and Idle Sessions.
Auto-switches to idle mode on busy→idle transitions. Session rows now
show ● running / ◉ idle dots at the start for quick visual scanning.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 01:37:03 +00:00
Alejandro Gutiérrez
ade8034294 feat: session status in expanded rows + idle panel
Show running/idle status inline on expanded session rows, add idle
sessions panel (toggle with 'i'), auto-switch to idle panel on
busy→idle transitions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 01:33:31 +00:00
Alejandro Gutiérrez
c49de9865d Fix app closing on enter — stay open after launching sessions
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 01:10:42 +00:00
Alejandro Gutiérrez
4a68cb698f feat: live session monitoring with busy/idle indicators and sound notification
Detect active Claude sessions' real-time status by monitoring JSONL file
modification times. Shows green dot when Claude is processing, yellow dot
with elapsed time when idle. Plays Glass.aiff when sessions transition
from busy to idle. Updates website and README with new features.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 00:58:53 +00:00
Alejandro Gutiérrez
294b3f6b6c Add README with screenshots, animated GIF, and global CLI setup
Polished README with logo, demo GIF, annotated screenshots, column
legend, keybinding table, and install instructions. Added bin entry
and shebang so `bun link` registers the `cladm` command globally.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 23:07:37 +00:00
Alejandro Gutiérrez
fcafe652cf Add TUI launcher implementation and project docs
Source modules for history parsing, git metadata, project scanning,
terminal launching, and OpenTUI component layout. Remove private flag
for publishing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 22:56:54 +00:00