Appearance
Changelog
All notable changes to Otty.
1.2.3
July 7, 2026
Bug fix
- The Composer now renders the text you type and keeps it readable against its background, including on macOS 15.
- Fixed open terminals only partially repainting when switching the dark-mode theme.
- Applying a theme from the Command Palette in dark mode now updates the active dark slot.
- Duplicating a theme auto-numbers the copy (Copy, Copy 2, Copy 3) instead of colliding on the same name.
- Claude session history no longer shows up empty for project paths that contain dots, underscores, or spaces.
Download for macOS (Apple Silicon)
1.2.2
July 3, 2026
New
- AppleScript automation — open tabs, run commands, read a tab's visible contents or history, check whether a tab is busy, and set custom tab titles from scripts.
- VoiceOver accessibility — the terminal viewport, selections, cursor position, tab rows, pane controls, toolbar buttons, and custom-drawn chrome are all narrated.
- BiDi / RTL text — Hebrew, Arabic, and mixed-direction lines are reordered visually, while copy, paste, find, and scrollback stay in logical order.
- Global hotkey — a system-wide shortcut brings Otty to the front, opening a window if none is open (Settings -> Key Bindings -> Global Hotkey).
- New Window When All Windows Closed — keep a fresh terminal ready after the last window closes (Settings -> General).
- Notification sounds — opt-in sounds for terminal notifications and task state changes.
- Quit
<program>— stop a stuck foreground TUI straight from the Command Palette. - Dark-mode app icon — a new app icon that follows the macOS appearance.
modifyOtherKeys(XTMODKEYS) — disambiguated key reporting for programs that request it.
Improvement
- Added an install prompt when an agent integration is missing.
- Added Git sidebar support for changed submodules, including nested submodules up to depth 2.
- Added Reset to Built-in Version for stale built-in themes.
- Added dragging a pane corner to resize its width and height at once, with a diagonal resize cursor at split junctions.
- File drags can spring-load tabs after a short dwell, making cross-tab drops faster and easier to aim.
- Files tree folders now toggle when you click the folder icon, not only the disclosure triangle.
- Open Quickly finds more agent sessions, resumes agents after session reopen, and keeps the search query when switching filters.
- Read-only mode and Vi mode survive view swaps and rebuilds.
- Terminal compatibility improved with application keypad mode, backarrow key mode, and better Kitty keyboard-mode cleanup at the shell prompt.
- Shell integration now survives zsh/bash
noclobbersettings when dumping aliases and PATH. - Reopening Otty while it is already running now opens a new window instead of doing nothing.
- Double-clicking the standard title bar now zooms the window.
- Tab names now follow the shell's OSC 1 icon title and the window title follows OSC 2, with cleaner labels for truncated working-directory titles.
- Otty stays responsive during large reflows and Git status refreshes by moving PTY writes, resize reflow, and Git subprocess calls off the main thread.
Bug fix
- Fixed transcript-wide find in agent history and re-enabled the Find menu over file panes.
- Closed tabs are no longer resurrected from cached tab order on relaunch.
- Fixed Dvorak-QWERTY Command shortcuts by resolving shortcuts with
charactersIgnoringModifiers. - Fixed legacy modified Backspace, numeric keypad Enter, and macOS function-key private-use characters being sent incorrectly to the PTY.
- Fixed Indic, Thai, and other complex-script combining marks that could render doubled, smeared, or as duplicate rows.
- Fixed OSC 7 current-working-directory URI decoding for non-ASCII paths.
- Fixed tab rename and prefix actions applying to the focused pane instead of the tab.
- Fixed natural editing chords such as
Option-Delete,Option-Forward Delete,Option-Left, andOption-Right. - New tabs now inherit the live current directory, and tab badges show the real shell/process state.
- Fixed the
glass-darktheme material on macOS. - Toggling the BiDi setting now repaints live.
- Pane drag handles are confined to the handle capsule while the rest of the title area remains usable for window drag.
- Toggling docked panels now reflows the terminal grid up front.
- Split panes now tear down individually when their shell exits.
Escis passed through to foreground programs instead of opening the autocomplete panel.open -a Otty <folder>now routes to a tab in that folder.--panetargeting now works across background tabs for send-keys, capture, and show commands.- Zoom resync no longer changes the effective font size.
- Prompt queue state survives view rebuilds and restart.
- Left/Right arrow caret movement is fixed for visually reordered BiDi text.
- File -> New Window/Tab and
Cmd-Nremain usable when no window is open. - Clear Screen no longer wipes the grid on the alternate screen.
- Custom keybindings can override
Cmd-S, and Open Quickly filter shortcuts are no longer stolen by menu bindings. - Agent history no longer shows an empty chevron on one-shot reply turns.
- Fixed UI font-size round-tripping and submodule Stage All handling.
- Shift-click now extends the selection from the last click or the caret even when nothing is selected yet.
- Trackpad momentum scrolling no longer floods full-screen pagers with a burst of arrow keys after you lift your fingers.
- Multi-row Backspace/Delete now removes the whole selection reliably, and the caret collapses to the selection edge on arrow keys.
- IME composition no longer stretches or compresses CJK glyphs on the row being composed.
- Clearing the screen over a foreground program no longer leaves a literal
^Lbehind. - Fixed a spurious Claude "task complete" notification that fired once per subagent.
Download for macOS (Apple Silicon)
1.1.0
June 23, 2026
Improvements
- File ▸ Open Recent now records non-blank windows when you close them.
- Double-click the divider line in the tabs panel to set its text.
Fixes
- Image previews now render correctly in yazi.
- Fixed a freeze that could occur while running zellij or working over SSH.
- Resizing the window no longer leaves a stranded copy of the shell prompt.
- Fixed a crash when changing the tab-bar layout in full screen.
- Opening a folder from Finder on a cold launch now opens that folder instead of your home directory.
- Tab titles now follow the focused pane in split layouts.
- Oversized glyphs no longer overflow their cells; block, sextant, and Powerline glyphs render crisply.
- Option-as-Alt now applies to letter and symbol keys.
- Fixed a reverse-video block when typing CJK at an SSH prompt.
- Git status now decodes non-ASCII filenames correctly.
- The SSH file panel refreshes after you create a folder, and shows upload progress.
- The Composer re-focuses when clicked and shows the text you type.
- Smooth scrolling no longer leaves a partial-row offset after the layout changes.
Download for macOS (Apple Silicon)
1.0.4
June 18, 2026
Fix known issues.
Download for macOS (Apple Silicon)
1.0.1
June 10, 2026
The first public release of Otty for macOS.

Highlights
- GPU-accelerated rendering on Metal — smooth scrolling, ligatures, true color, and inline images.
- Tabs, splits, and panes with drag-to-rearrange layouts, live status badges, and unread dots.
- Session recovery — close the lid, reopen, and every pane is right where you left it.
- Command Palette (
⌘⇧P), Open Quickly (⌘⇧O), and inline autocomplete. - Recipes — save commands, layouts, and snippets, then replay them.
- First-class agent affordances — session history, fork & branch, the Composer and prompt queue, and send-to-chat.
Notes
- Native on macOS (Apple Silicon and Intel). Windows and Linux are on the way.