← All releases
Attyx

Attyx v0.4.0

Attyx v0.4.0

Instant session switching and vertical tabs

The headline change: switching between sessions and tabs is now near-instant. Plus a new vertical tab layout, mouse fixes for split panes, and a sizing fix for smaller screens.

What changed

  • Session switching is 10–40× faster — switching between sessions or tabs with heavy TUIs loaded (Claude Code, vim, htop, etc.) now happens in single-digit milliseconds instead of 60–200ms. The terminal engine moved to the daemon, so switching ships an already-rendered grid instead of replaying scrollback through the parser on every focus change. Existing sessions migrate seamlessly on update — no need to restart your panes (#219)
  • First prompt always renders at the right width — fresh sessions no longer launch with a wrapped first prompt that only unsticks once you start typing. Shell spawn is deferred until your real window dimensions are known, so the very first frame already matches your window (#219)
  • Vertical sidebar tabs — set tabs.side = "left" or "right" in attyx.toml to render tabs as a vertical column on the side of the window instead of a horizontal bar. The sidebar coexists with top/bottom statusbars, can be resized by dragging its inner border, and remembers its width across restarts (#225)
  • Mouse works correctly in split panes — clicking and dragging inside a mouse-aware TUI (opencode, vim, etc.) now lands on the right cell when that TUI is in any pane other than the top-left. Previously, splits sent screen-grid coordinates so the TUI saw clicks past its own viewport and selection broke (#224)
  • No more phantom rows on smaller screens — tightened the rounding when computing how many rows fit in a window, so the terminal no longer reports more rows than physically fit. Fixes the “can’t scroll to the bottom” bug on certain displays, including the 13.3” MacBook Pro (#215)