aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2026-04-29feat: add human session attach and list outputOgulcan Celik
2026-04-28Add named persistent sessions (#57)Franz Bettag
* feat: add named persistent sessions * feat: add session management commands * fix: tighten named session stop and override precedence * fix: handle session help and stop test race * test: isolate default session env test --------- Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-04-28fix: resize w claude code no flicker (#61)Yifeng He
* fix: mouse resize panel failed with claude-code no flicker * test: run pane mouse reporting drag tests inside tokio runtime Switch the new horizontal/vertical drag tests to `#[tokio::test]` so `PaneRuntime::test_with_screen_bytes` has a reactor when it calls `tokio::spawn`. CI was panicking with "there is no reactor running". * test: refresh git state in workspace drop slot test Workspace::test_new caches the parent repo's git branch at construction time. On master CI the herdr checkout has ref: refs/heads/master in HEAD, so the cache is populated and workspace_row_height returns 2. On PR CI actions/checkout uses a detached merge ref, git_branch returns None, row height becomes 1, and the drop-slot tie-break flips workspace_drop_index_at_row(2) from Some(0) to Some(1). Refresh git state after pointing identity_cwd at the per-test temp repo so the cache reflects the temp repo's HEAD.
2026-04-28feat: notify active panes when terminal is unfocusedOgulcan Celik
2026-04-27feat: add status commandOgulcan Celik
2026-04-27fix: improve claude subagent hook lifecycleOgulcan Celik
fixes #58
2026-04-27fix: ignore claude subagent hook reportsOgulcan Celik
fixes #58
2026-04-26feat: refine live config lifecycleOgulcan Celik
2026-04-26fix: keep pane background transparent when host color is unknownOgulcan Celik
2026-04-26feat: add live config reloadOgulcan Celik
2026-04-25fix: keep herdr toast delivery in-appOgulcan Celik
2026-04-25fix: reserve pane scrollbar columnOgulcan Celik
2026-04-25fix: deliver server-approved terminal toastsOgulcan Celik
2026-04-25fix: reduce default support log noiseOgulcan Celik
2026-04-25test: add libghostty upgrade contract coverageOgulcan Celik
2026-04-25fix(opencode): detect question prompt heuristicsOgulcan Celik
2026-04-25feat(opencode): report blocked state when question tool fires (#51)mspiegel31
* feat(opencode): report blocked state on question.asked event * docs: add question.asked/replied/rejected to opencode plugin mapping
2026-04-23feat(logging): add robust rotating support logsOgulcan Celik
2026-04-22fix: set a stable terminal identity for panesOgulcan Celik
2026-04-22feat: add terminal-delivered client notificationsOgulcan Celik
2026-04-22chore: remove unused test importsOgulcan Celik
2026-04-22fix: resolve transparent bg before inverse swap to prevent invisible text (#45)Yifeng He
Shells like zsh highlight pasted text using reverse video (SGR 7). The render pipeline makes the default background transparent (None) when it matches the host terminal background. When inverse swaps fg and bg, the transparent bg becomes fg=None (Color::Reset), which the host terminal renders as its default foreground — the same hue as the new bg, making the text invisible. Resolve None to the actual terminal background color before swapping so inverse produces correct contrasting colors. Fixes ogulcancelik/herdr#44 Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-04-21fix: make startup preview-release test version-independentOgulcan Celik
2026-04-21fix: restore terminal cursor state on client detachOgulcan Celik
2026-04-21fix: force repaint after headless runtime size changesOgulcan Celik
2026-04-21fix: restore headless test reliability on macosOgulcan Celik
2026-04-21test: refresh git branch cache in sidebar testOgulcan Celik
2026-04-21perf: reduce headless server render overheadOgulcan Celik
2026-04-21fix: stop headless idle spin and skip unnecessary macos probesOgulcan Celik
2026-04-21fix: close global menu before detachOgulcan Celik
2026-04-21feat: add persistent server-client sessionsCan Celik
Make herdr persistent by default. Launching herdr now starts or reattaches to a background session server. Clients can detach and reattach while panes and agent processes keep running. Session mode now supports multi-client attach, auto-detect startup, and a thin-client/headless-server split. This also refactors the large app, ui, input, pane, config, workspace, and persistence modules into smaller focused submodules, while preserving behavior and colocating tests with the code they exercise. Upgrade notes: - persistence mode is now the default - in-app quit detaches the current client instead of stopping the server - use `herdr server stop` to stop the background session - use `--no-session` for the old single-process behavior - default socket paths now live under the config directory
2026-04-16feat: allow hook-reported custom agent labelsOgulcan Celik
2026-04-16chore: clean up local repo guidanceOgulcan Celik
2026-04-16fix: only preview newer saved release notesOgulcan Celik
2026-04-16fix: switch updates to manual preview flowOgulcan Celik
2026-04-14fix treat droid mission control as idleOgulcan Celik
2026-04-14feat support double prefix passthroughOgulcan Celik
2026-04-14fix unify app key normalization for enhanced keyboard reportingOgulcan Celik
2026-04-13fix highlight active workspace in collapsed sidebarOgulcan Celik
2026-04-13refactor extract app api and runtime command modulesOgulcan Celik
2026-04-13feat add custom shell and pane keybind commandsOgulcan Celik
2026-04-13fix input encoding for ctrl+letter in kitty modeOgulcan Celik
2026-04-13fix: tighten tab bar scrolling behaviorOgulcan Celik
2026-04-13fix: reserve q for navigate quit onlyOgulcan Celik
2026-04-12fix: preserve scrollback for droid primary-screen redrawsOgulcan Celik
2026-04-11feat: support transparent panel chromeOgulcan Celik
2026-04-11fix: prefer native clipboard tools over osc52 fallbackOgulcan Celik
2026-04-10fix: harden amp blocked detectionOgulcan Celik
2026-04-10fix: preserve workspace when closing the last pane in a tabOgulcan Celik
2026-04-10fix: forward pane osc 52 clipboard writesOgulcan Celik