termy
← all releases

v0.1.80

Overview

This pre-release focuses on keeping Termy responsive under heavier terminal workloads while polishing the core terminal chrome. It includes the macOS thermal crash mitigation, smoother terminal input handling, better split balancing, Simple Mode, redesigned tabs, stacked update toasts, and cleaner search/resize UI.

Stability and performance

  • Added a macOS thermal observer guard that neutralizes the GPUI thermal-state callback path responsible for crashes seen under heavy Claude Code/Codex CLI split-tab workloads.
  • Wired the thermal observer guard into startup so the mitigation is active before the main terminal UI begins running.
  • Improved terminal runtime batching and wake-up behavior so bursty PTY output does less redundant work.
  • Reduced unnecessary redraws while typing by avoiding unconditional view notifications after normal key writes.
  • Reduced extra IME/input redraws by only notifying the UI when input composition, cursor state, or selection state actually changes.
  • Kept terminal interactions fast when multiple splits and tabs are active by narrowing redraw triggers around key release and PTY writes.

Tabs

  • Redesigned the tab strip with a cleaner Ghostty-inspired pill style while keeping Termy’s own visual direction.
  • Made active tabs feel less cramped and removed the heavy border line under the tab bar.
  • Moved tab close buttons to the right side of each tab.
  • Added tab hover and press animation state for a smoother interaction feel.
  • Added drag/reorder animation support so tabs can be moved into new positions more naturally.
  • Made the tab bar horizontally scrollable when many tabs are open.
  • Added top spacing around the tab bar so it sits more comfortably in the window chrome.
  • Adjusted tab sizing so tabs shrink as more tabs are opened, closer to browser behavior.
  • Reworked horizontal and vertical tab rendering to share the updated state and sizing behavior.
  • Simplified shared tab rendering helpers after the new tab item rendering path took over more of the layout work.
  • Updated tab palette rendering to match the redesigned tab visuals.

Split panes

  • Added automatic split rebalancing so newly created split panes resize existing panes into a more symmetrical layout.
  • Added native pane sizing helpers to support balanced split layouts.
  • Updated tab lifecycle behavior so new splits participate in the balanced sizing flow.
  • Improved split persistence/transition handling so restored and tmux-backed panes preserve the expected layout behavior.

Simple Mode

  • Added a new simple_mode config setting, off by default.
  • Added Simple Mode to the default config, config schema, parser, and strongly typed config model.
  • Added parser tests for Simple Mode.
  • When Simple Mode is enabled, Settings opens the config file directly instead of opening the settings window.
  • Disabled command palette/menu access while Simple Mode is enabled.
  • Updated app actions, menu routing, keybindings, terminal actions, and command palette behavior to respect Simple Mode.
  • Added Settings UI wiring for the new option while keeping the default behavior unchanged for existing users.

Search

  • Redesigned the Cmd+F terminal search field with a cleaner floating layout.
  • Removed the broken search icon from the search input.
  • Improved search panel spacing, sizing, and control styling.
  • Kept search controls compact while preserving previous search behavior.

Update toasts

  • Reworked update toast layout so multiple update notifications stack vertically instead of overlapping.
  • Added cleaner toast spacing, sizing, and visual hierarchy.
  • Improved update-ready and update-available toast rendering so both states can be visible together.

Resize overlay

  • Replaced the plain resize status box with a cleaner compact resize badge.
  • Improved resize overlay styling, spacing, and background treatment so it feels less heavy over terminal content.

Mouse and selection behavior

  • Fixed blank-area terminal clicks causing cursor-position bugs when clicking where there is no content.
  • Preserved the text-selection cursor style after the blank-click fix.
  • Added selection bounds handling so click-to-position behavior only applies when the target terminal cell is valid content.

CLI, app, and integration updates

  • Updated app action routing for settings, config-file opening, command palette availability, and Simple Mode behavior.
  • Updated menu construction so disabled Simple Mode actions do not expose command surfaces unexpectedly.
  • Updated install-CLI interaction wiring to match the current action surface.
  • Updated terminal app interaction code for the new action and mode checks.
  • Updated keybinding routing around command palette/settings behavior.
  • Updated package versions for the app and CLI crates to 0.1.80.
  • Updated Cargo.lock for the new package versions.
  • Removed the previous GitHub release workflow file from this branch.

Validation

  • cargo fmt --check
  • cargo check
  • git diff --check