aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2026-08-10fix: center tab labels for symmetric highlight padding (#2570)David Heinemeier Hansson
* fix: center tab labels for symmetric highlight padding * docs: note centered tab labels in the changelog * fix: center tab labels by display width, not char count
2026-08-10feat: add move tab keybind actions (#2561)David Heinemeier Hansson
* feat: add move tab keybind actions Add optional keys.move_tab_previous/move_tab_next actions that reorder the active tab one position, wrapping at either end. Reuses the existing tab.move runtime path that mouse drag reordering already drives. * fix: exit navigate mode on single-tab move attempts
2026-08-10feat: add configurable tab bar status (#2586)Can Celik
* feat: show a zoom indicator in the desktop tab bar Reserve the right edge of the tab row for a ZOOM pill while the focused pane is zoomed, matching the accent style of the mode bars. The per-tab Z suffix stays; the pill makes the zoomed state visible at a glance like tmux's status-right flag. * feat: optionally show the hostname in the desktop tab bar Add ui.tab_bar_hostname to display the machine's hostname at the right edge of the tab row, like tmux's #h in status-right. The value resolves where the server renders, so remote sessions show the remote host. Off by default. * fix: strip control characters from the tab bar hostname * fix: hide the hostname when it would squeeze out the tab strip * feat: add configurable tab bar status * fix: harden tab bar status updates * fix: terminate tab bar status process trees * fix: disable status commands on unsupported platforms * fix: skip unchanged status command renders * fix: keep tab bar status opt-in by default --------- Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-08-09test: guard pane-scaled render performanceOgulcan Celik
refs #2550
2026-08-09feat: add direct pane resize keybindings (#2558)David Heinemeier Hansson
2026-08-09fix(client): avoid abort on terminal hangup (#2427)akbash
* fix(client): avoid abort on terminal hangup refs #2424 * test(client): gate PTY integration on unix refs #2424 --------- Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-09perf(ui): avoid full pane mode reads for scrollbars (#2554)akbash
2026-08-09fix(input): preserve alt-prefixed control keys (#2543)Can Celik
refs #2514
2026-08-09fix(ui): reclaim scrollbar gutter in alternate screen (#2538)Can Celik
2026-08-09feat(graphics): add direct pane frame streaming (#2523)Can Celik
* feat(graphics): add direct pane frame streaming * feat(graphics): expose pane visibility * test(graphics): preserve legacy terminal image output * fix(graphics): harden streaming lifecycle * fix(input): preserve mouse releases outside panes
2026-08-09feat: make outer pane borders configurable (#2535)David Heinemeier Hansson
2026-08-08feat(input): add per-pane right-click routing (#2504)Can Celik
2026-08-08fix: forward pane terminal bells (#2498)akbash
refs #2453 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-07feat: support all agent integrations on windows (#2496)Can Celik
2026-08-07fix(windows): share Git Bash agent candidate scans (#2494)JJ Liebig
refs #2459
2026-08-07fix(config): report unknown theme names (#2488)Can Celik
refs #2452
2026-08-07fix: avoid redundant Windows recent-history snapshots (#2474)JJ Liebig
refs #962 Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-07fix(input): preserve shift in kitty alternate reports (#2479)Can Celik
refs #2435
2026-08-07fix(remote): restore blocking bridge streams (#2485)akbash
refs #2478 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-07fix: verify stable release checksumsOgulcan Celik
2026-08-06fix(theme): refresh host appearance on focus (#2417)akbash
* fix(theme): refresh host appearance on focus refs #2416 * fix(input): preserve split appearance replies refs #2416 * fix(input): retain fragmented appearance reports refs #2416 --------- Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06fix(detect): ignore Cursor Run Everything status (#2220)Jesse Zhang
* fix(detect): ignore Cursor Run Everything status refs #1763 * fix(detect): constrain Cursor approval controls refs #1763 * test(detect): remove cursor manifest behavior fixture --------- Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-08-06fix: add positive idle detection for kiro-cli prompt (#2301)Sam Biggins
* fix: add positive idle detection for kiro-cli prompt refs discussion #982 * fix: remove manifest integration tests per reviewer request --------- Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06feat(copy-mode): add big-word motions (#2270)JP Lew
Co-authored-by: Ubuntu <ubuntu@ip-172-31-252-234.ca-west-1.compute.internal> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06fix(terminal): restore keyboard reporting on detach (#2395)akbash
refs #2393 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-06fix(detect): recognize versioned Python agent wrappers (#2188)Phil Larson
Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06fix(cli): accept --flag=value and reordered options in pane read/wait-output ↵Kyle Corbeille
(#2183) * fix(cli): accept --flag=value and reordered options in pane read/wait-output * test(cli): trim redundant pane parser coverage --------- Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06fix: render OSC 4 palette overrides instead of forwarding the index (#2162)Mo
Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-06fix: avoid ctrl-tab escape sequences in legacy panesOgulcan Celik
refs #2296
2026-08-06fix(sidebar): highlight active agent in collapsed sidebar (#2382)Ian Ker-Seymer
The collapsed sidebar renders agent rows with an unconditional Style::default().fg(p.overlay0), so the active agent is indistinguishable from the others. The workspace list directly above it, and render_agent_detail in the expanded sidebar, both mark the active entry. Reuse the existing active treatment: resolve the active entry with the same is_active_pane call the expanded agent panel uses, then paint the row background with surface_dim and the position number with text, the same tokens the collapsed workspace rows already use. Assisted-By: devx/717e5259-915f-4a7b-af07-6abe46da5b90
2026-08-05feat(windows): support remote attach to unix hosts (#2329)Can Celik
* feat(windows): support remote attach to unix hosts * fix(remote): preserve unix bridge behavior
2026-08-05feat(theme): add optional sidebar backgroundOgulcan Celik
2026-08-05fix(config): accept retired agent panel scope (#2295)akbash
refs #2292 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-05fix(input): preserve modifyOtherKeys key releases (#2303)akbash
refs #2302 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-05fix(terminal): render halfwidth katakana voiced marks (#2257)Kazunari Kamata
Co-authored-by: oyoguhito <oyoguhito@kamatanoMacBook-Pro.local> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-05fix(layout): return focus to the pane a split was opened from (#2266)Jon Kinney
Closing a focused pane handed focus to the next pane in tree order. For a pane opened beside another one -- a plugin split, a file viewer, any transient tool pane -- that is rarely where the user was: it lands on some unrelated neighbour rather than the pane that opened it. Track the pane focus came from in TileLayout and prefer it when the focused pane closes, falling back to tree order when there is no history, when it points at the pane being closed, or when it points at a pane that has since gone away. The history lives in the layout, so it can only ever name a pane in the same tab. A one-slot history is only sound if internal focus excursions never write it, so the tree edits that used to bounce focus around now go through target-taking primitives instead. close_pane removes a background pane directly, so detach_pane and take_pane_for_move stop focus-close-refocusing. split_pane splits a target without moving focus: the runtime split path only focuses the new pane once the spawn succeeds, which makes a failed split a pure rollback, and the targeted and unfocused workspace split paths stop fabricating history. insert_pane_near now takes the focus intent, so an unfocused pane move leaves the target tab's history alone. The layout-level focused-split helpers become test-only; production splits all flow through the target-taking path. Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-04fix(ui): search single-tab names in navigator (#2320)akbash
2026-08-04fix(input): parse default mouse reports (#2312)akbash
* fix(input): parse default mouse reports refs #2309 * fix(input): preserve split default mouse reports refs #2309 --------- Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-04fix(cli): resolve pane query --current from caller (#2298)akbash
refs #2297 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-04fix(input): keep pending url clicks across host focus loss (#2291)Kataoka Katsuki
Opening a URL raises the browser, which takes focus away from the host terminal before the mouse release arrives. release_input_source(_headless) cleared pending_url_click_sources on that focus loss, so the release was forwarded to the pane and the agent opened the same URL again. Clear the set in clear_input_source instead, whose only production caller is remove_client. refs #2290 Co-authored-by: kataokatsuki <kataokatsuki@users.noreply.github.com>
2026-08-04feat(ui): add distinct status indicators (#2282)Can Celik
refs #2260
2026-08-04fix: detect claude confirmation promptsOgulcan Celik
refs #2268
2026-08-04fix(ui): preserve sidebar scroll across clients (#2280)akbash
refs #2255 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-04fix(input): preserve shift-tab in pane automation (#2259)Can Celik
refs #1561
2026-08-04fix(ui): keep collapsed workspace status visible (#2239)akbash
refs #2216 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-03fix: page keys scroll pane scrollback at zsh and REPL prompts (#2191)Michael Hackner
* fix: page keys scroll pane scrollback at zsh and REPL prompts PageUp/PageDown were forwarded to the pane whenever DECCKM (application cursor) was on, assuming only primary-screen pagers enable it, but zsh's line editor also enables DECCKM, as do REPLs such as python3. The result was PageUp scrolling shell history instead of Herdr scrollback. Bracketed paste discriminates the two: it means the app accepts typed or pasted text at a prompt, so line editors enable it and pagers do not. * test: update page key state fixture --------- Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-03fix(pi): restrict state reporting to tui sessions (#2159)Rhys
Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-03fix: propagate host color scheme to pane apps (#2214)Can Celik
refs #714
2026-08-03fix(input): preserve hover during extended-button dragsOgulcan Celik
2026-08-03fix: avoid blocking on foreground cwd checks (#2213)Can Celik
refs #2206