Skip to content

v0.12.0

Choose a tag to compare

@zanetworker zanetworker released this 06 Jun 11:24
· 87 commits to main since this release
8f32ff9

Highlights

Session Hygiene — tmux sessions are now cleaned up reliably across all kill paths (TUI, web UI, CLI), orphaned sessions are auto-detected, and the UI navigates back to the agents list after a session ends or is killed.

Accurate Session Timing — sessions display by creation time (not last activity), with absolute dates for older sessions so you can find them after a restart.

Session Lifecycle

  • Tmux cleanup on kill: KillLocalAgent now kills the tmux session before terminating the process. Previously the process was killed but the tmux session was left orphaned.
  • Orphan detection: discovery tick automatically cleans stale aimux-* tmux sessions whose agent process is no longer running.
  • Navigate back after kill (TUI): killing a session while zoomed/split now exits back to the agents list instead of leaving you on a blank pane.
  • Auto-deselect on exit (Web): when an agent exits or is killed, the web UI detects it's gone and closes the empty panel, returning to the agents grid.
  • CLI tmux cleanup: `aimux kill ` now kills the associated tmux session.

Session Timing & Sorting

  • Filesystem mtime fallback: sessions with no JSONL timestamps fall back to file modification time instead of showing "?".
  • Sort by StartTime: sessions sort by creation time, not last activity. "When did I start this?" is more useful than "when was the last message?".
  • Absolute dates: sessions older than 24h show the actual date (Mon 15:04, May 24 15:04, Jan 02 2006) instead of relative "3d ago".
  • Sort toggle fixed: pressing `s` now toggles direction first (newest/oldest), then advances to the next sort field on the second press.
  • Sort inversion bug fixed: the previous `!less` pattern violated Go's sort contract when elements were equal, causing undefined order.
  • Wider AGE column: 12 chars (was 9) to fit date+time formats.

Trace View Keybindings

  • Star (*) in trace views: toggle star from the standalone trace view or split-mode trace pane.
  • Copy (C) in trace views: copy session ID from trace/split views.
  • Hint bar updated: trace view now shows `*:pin C:copy-id` alongside existing keybindings.

Other

  • Shared `formatAge` utility in web UI (deduplicated from SessionsTable and CardGrid).
  • Sessions CLI: `aimux sessions star ` subcommand for toggling stars from the command line.
  • Dependency bumps: golang.org/x/term, mcp-go, pflag, k8s.io/api.