aboutsummaryrefslogtreecommitdiff
path: root/src/persist
AgeCommit message (Collapse)Author
2026-06-17feat: sort agent panel by priorityOgulcan Celik
refs #318
2026-06-15fix: require plugin min herdr versionOgulcan Celik
2026-06-14fix: add best-effort windows plugin supportOgulcan Celik
2026-06-14fix: preserve tab identity across restored sessionsOgulcan Celik
2026-06-14feat: add plugin v1 systemOgulcan Celik
Add manifest-driven plugin actions, event hooks, pane entrypoints, link handlers, and host APIs. Support plugin link, GitHub install, build commands, installed plugin registry, pane movement, runtime context, and plugin docs.
2026-06-12fix: stabilize public pane and tab idsOgulcan Celik
refs #569
2026-06-07feat: add native windows beta supportOgulcan Celik
2026-06-05feat: add pane navigation controlsOgulcan Celik
refs #421 refs #330 related discussions: https://github.com/ogulcancelik/herdr/discussions/422 https://github.com/ogulcancelik/herdr/discussions/438 https://github.com/ogulcancelik/herdr/discussions/442
2026-06-01fix: restore agents through pane shellsOgulcan Celik
2026-05-31fix: use portable true path in restore testOgulcan Celik
2026-05-30fix: use login shells for macos panesOgulcan Celik
refs #350
2026-05-29fix: keep restored agent panes after exitOgulcan Celik
2026-05-28fix: preserve live handoff terminal stateOgulcan Celik
2026-05-25fix: spawn restored agents directlyOgulcan Celik
2026-05-25feat: hand off ptys during updatesOgulcan Celik
2026-05-25fix: avoid pane history replay during agent restoreOgulcan Celik
2026-05-24feat: persist pane history across restarts (#248)zhugehyuk
refs #217 Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-05-23feat: restore agent sessionsOgulcan Celik
refs #233
2026-05-22feat: add git worktree workspace managementOgulcan Celik
refs #137
2026-05-21refactor: separate server client boundariesOgulcan Celik
2026-05-20feat: add configurable default shellOgulcan Celik
refs #196
2026-05-18fix: preserve symlinks when saving session.json (#147)Spicer Matthews
session.json is written via tmp + atomic rename. rename() replaces the symlink itself, so users who stow session.json from a dotfiles repo lose the link on every save. Resolve symlinks before placing the .tmp so the rename targets the canonical file and the symlink at the input path is preserved. Atomicity is preserved because the .tmp and the target stay in the same directory. refs #139
2026-05-17chore: rename fullscreen keybinding to zoomOgulcan Celik
2026-05-17fix: polish terminal-core agent semanticsOgulcan Celik
2026-05-17refactor: extract terminal state and runtime from panesOgulcan Celik
2026-05-17feat: add terminal identity and agent cli facadeOgulcan Celik
2026-05-11feat: add optional pane border labelsOgulcan Celik
2026-05-06fix: persist agent panel scope in configOgulcan 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-23feat(logging): add robust rotating support logsOgulcan Celik
2026-04-22chore: remove unused test importsOgulcan Celik
2026-04-21perf: reduce headless server render overheadOgulcan 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