| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-04-10 | fix: forward pane osc 52 clipboard writes | Ogulcan Celik | |
| 2026-04-10 | fix: forward OSC 52 clipboard writes from pane children | Othavio Quiliao | |
| herdr embeds `libghostty-vt` as a headless terminal emulator per pane, and its readonly stream handler silently drops `.clipboard_contents` actions. As a result, any child process that writes OSC 52 to copy to the system clipboard (for example Amp, which enables mouse reporting and handles selection internally) has its sequence swallowed before it can reach the host terminal — the user sees the child's "copied" toast but the system clipboard is never updated. This change adds an `Osc52Forwarder` that observes raw PTY bytes in `process_pty_bytes`, reconstructs completed `ESC ] 52 ; (c|) ; <base64> (BEL|ST)` sequences (write/clear only — queries are dropped since herdr has no path to reply to the child), and returns them through the existing `ProcessBytesResult`. The reader task forwards the bytes to the main loop via a new `AppEvent::ClipboardWrite`, which is written to stdout from `handle_internal_event`. Routing through the main loop keeps stdout writes serialized with `terminal.draw` and the other existing host-terminal emitters, so the new forwarder does not race with rendering. Existing herdr-native selection (mouse drag in panes without mouse reporting) is unchanged and still writes through `selection::write_osc52`. | |||
| 2026-04-09 | fix: restore terminal colors on macos after droid exit | Ogulcan Celik | |
| 2026-04-09 | fix: restore host terminal colors after fullscreen tui exit | Ogulcan Celik | |
| 2026-04-09 | fix: autoscroll and clear mouse text selections | Ogulcan Celik | |
| 2026-04-09 | fix: detect agent state from terminal tail instead of viewport | Ogulcan Celik | |
| 2026-04-09 | fix: only show cursor in focused pane | Ogulcan Celik | |
| 2026-04-07 | fix: persist ghostty key encoders per pane | Ogulcan Celik | |
| 2026-04-07 | docs: clarify herdr pane split and wait output usage | Ogulcan Celik | |
| 2026-04-07 | fix: use byte-based pane scrollback limit | Ogulcan Celik | |
| 2026-04-06 | refactor: use libghostty-native selection text reading | Ogulcan Celik | |
| 2026-04-05 | fix: respect synchronized terminal output batches | Ogulcan Celik | |
| 2026-04-05 | refactor: remove vt100 backend and make ghostty default | Can Celik | |
| 2026-04-05 | refactor: own pane mouse protocol enums outside vt100 | Can Celik | |
| 2026-04-05 | fix: prevent ghostty pane redraw corruption on wide cells | Can Celik | |
| 2026-04-05 | fix: match ghostty pane default colors to host terminal theme | Can Celik | |
| 2026-04-05 | feat: forward ghostty pane focus events on focus changes | Can Celik | |
| 2026-04-05 | feat: move ghostty pane key and mouse encoding onto live terminal state | Can Celik | |
| 2026-04-05 | feat: finish ghostty pane backend integration | Can Celik | |
| 2026-04-03 | fix onboarding spacing and preserve pane state transitions | Ogulcan Celik | |
| 2026-04-01 | feat: add authoritative pi hook integration | Can Celik | |
| 2026-04-01 | feat: show release notes after updates | Ogulcan Celik | |
| 2026-03-31 | test: cover non-top-anchored scroll regions | Ogulcan Celik | |
| 2026-03-31 | fix: align pane scrolling with tmux and ghostty | Ogulcan Celik | |
| 2026-03-31 | fix alt-screen scrollback handling | Ogulcan Celik | |
| 2026-03-31 | fix: terminate pane sessions on close | Ogulcan Celik | |
| 2026-03-31 | fix: make app rendering event-driven | Ogulcan Celik | |
| 2026-03-30 | refactor: rename agent states to working and blocked | Ogulcan Celik | |
| 2026-03-30 | feat: add interactive pane scrollbars | Ogulcan Celik | |
| 2026-03-30 | refactor keyboard protocol parsing and forwarding | Ogulcan Celik | |
| 2026-03-29 | feat: add initial socket api for workspace and pane control | Ogulcan Celik | |
| add unix socket request/response api scaffolding implement initial workspace and pane commands: - ping - workspace.list - workspace.get - workspace.create - pane.list - pane.get - pane.read - pane.send_text - pane.send_keys - pane.wait_for_output improve pane read semantics: - visible trims trailing blank viewport rows - recent reads from parser scrollback/current screen - wait_for_output returns matched snapshot plus matched_line add real subprocess integration tests for socket api | |||
| 2026-03-28 | feat: block nested herdr instances by default | Ogulcan Celik | |
| 2026-03-28 | fix: stabilize claude state detection | Ogulcan Celik | |
| 2026-03-28 | feat: add per-agent sound overrides | Ogulcan Celik | |
| 2026-03-28 | fix wrapped foreground job agent detection | Ogulcan Celik | |
| 2026-03-27 | initial release | Ogulcan Celik | |
| terminal workspace manager for AI coding agents. single rust binary, runs inside your existing terminal. workspaces, tiled panes, intelligent agent state detection. https://herdr.dev | |||
