Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
cee4fc2
docs: publish preview documentation
kangal-bot Sep 16, 2026
956f23f
release: synchronize metadata for v0.9.1
github-actions[bot] Sep 16, 2026
266d6f6
fix: respect opencode tui.json registrations (#4250)
akbash-bot Sep 16, 2026
5f3763d
fix: cache saved machine connection metadata (#4256)
ogulcancelik Sep 16, 2026
20c15dd
fix(windows): preserve VT input during mouse refresh (#4257)
JJLiebig Sep 16, 2026
063e937
fix(windows): restore terminal after setup errors (#4261)
JJLiebig Sep 17, 2026
e7e3dfa
fix(windows): recover VT input without changing readers (#4269)
JJLiebig Sep 17, 2026
529eeca
test: make windows config backup legacy fixture explicit (#4290)
JJLiebig Sep 17, 2026
5c61d8e
fix(windows): temporarily revert VT only mode on Windows (#4295)
JJLiebig Sep 17, 2026
101ccc2
fix(windows): prefer pwsh for the default pane shell (#4297)
JJLiebig Sep 17, 2026
14351f1
test: skip windows symlink tests without symlink privilege (#4311)
JJLiebig Sep 17, 2026
b88e811
test: add local windows input gauntlet (#4298)
akbash-bot Sep 17, 2026
da6bcd5
fix(windows): preserve mouse capture during refresh (#4319)
JJLiebig Sep 18, 2026
7df919d
fix: correct grok activity detection with custom or disabled osc sign…
ogulcancelik Sep 18, 2026
7201907
test: focus agent detection coverage on engine contracts (#4338)
ogulcancelik Sep 18, 2026
68dd6ed
test(windows): qualify remote clipboard image paste (#4324)
JJLiebig Sep 18, 2026
a19a595
perf: enable ssh compression for remote connections (#4340)
ogulcancelik Sep 18, 2026
241063f
fix: preserve request ids in socket error responses (#4353)
akbash-bot Sep 18, 2026
028780c
fix: reveal selected agent when cycling the sidebar (#4355)
ogulcancelik Sep 18, 2026
3f2a6e7
test: isolate integration assets from inherited omp environment (#4351)
akbash-bot Sep 18, 2026
cc7c696
feat: add configurable pane screen and scrollback clearing (#4383)
ogulcancelik Sep 19, 2026
e050723
feat: show every agent and terminal in the go to picker (#4384)
ogulcancelik Sep 19, 2026
856b64b
fix: stabilize windows cursor redraws and settle deadlines (#4389)
JJLiebig Sep 19, 2026
9d29441
test(windows): distinguish clipboard paste origin in input gauntlet (…
JJLiebig Sep 19, 2026
d59d060
fix: recover the cursor during animated redraws (#4404)
JJLiebig Sep 20, 2026
a3a1c94
fix: detect kiro status from live controls and osc signals (#4372)
vinayshah1998 Sep 20, 2026
29f9f40
fix: detect codex status with custom interrupt keys (#4196)
unmanbearpig Sep 20, 2026
c00a62d
fix: preserve delayed mouse reports with confirmed keyboard input (#4…
akbash-bot Sep 20, 2026
7450586
fix: keep workspace navigation visible in terminal theme (#4408)
minatoaquaMK2 Sep 20, 2026
6c62707
fix: preserve explicit worktree workspace membership (#4301)
akbash-bot Sep 20, 2026
65927ce
fix: drain event subscriptions and report history loss (#4225)
minatoaquaMK2 Sep 20, 2026
f10df75
fix: reject terminal-less attach before starting a session (#4395)
akbash-bot Sep 20, 2026
f090ce9
fix: confirm closing the last tab in the tui (#4409)
minatoaquaMK2 Sep 20, 2026
0ff0f27
fix: preserve session layouts across shutdown and restore failures (#…
ogulcancelik Sep 20, 2026
95e97bf
docs: publish preview documentation
kangal-bot Sep 20, 2026
7e91c4c
perf: index navigator tabs and panes per endpoint (#4426)
minatoaquaMK2 Sep 21, 2026
5a64914
chore: approve ain3sh contributor accounts
ogulcancelik Sep 21, 2026
3602c75
fix: refresh forwarded ssh agents after reconnect (#4443)
ogulcancelik Sep 21, 2026
309749a
fix: honor droid scrollback clear requests in panes (#4432)
factory-ain3sh Sep 21, 2026
2836010
fix: distinguish agent completion from startup and session changes (#…
ogulcancelik Sep 21, 2026
8ac9542
fix: clear inherited terminal and agent session identity (#4461)
ogulcancelik Sep 21, 2026
46a5091
fix: stagger restored agent startups (#4487)
JJLiebig Sep 22, 2026
f639075
fix: track opencode subagent status per pane (#4357)
ogulcancelik Sep 22, 2026
90b0e40
fix: preserve hook agent status across live handoff (#4493)
ogulcancelik Sep 22, 2026
7237703
fix: recognize codex mention completion popups (#4495)
JJLiebig Sep 22, 2026
1c6397b
fix: reuse ssh authentication and add machine recovery commands (#4490)
ogulcancelik Sep 22, 2026
dd33ddf
fix: move worktree lookups async (#4492)
JJLiebig Sep 22, 2026
621e6b7
fix: recognize Windows daemons in non-killing jobs (#4489)
JJLiebig Sep 22, 2026
cd8306d
fix: detect npm-installed omp on windows (#4502)
JJLiebig Sep 22, 2026
440a8bd
fix: keep synchronized pane frames atomic (#4508)
JJLiebig Sep 23, 2026
23479dd
fix: prevent Windows non-text keys from triggering the space prefix (…
akbash-bot Sep 23, 2026
9903007
test(windows): capture native console input records (#4520)
JJLiebig Sep 23, 2026
c958833
test: wait for complete handoff pid markers (#4538)
minatoaquaMK2 Sep 23, 2026
21fd121
fix: prevent cursor flicker on status redraw (#4554)
JJLiebig Sep 23, 2026
9c96f7d
fix: avoid inferring codex idle from terminal output (#4563)
JJLiebig Sep 24, 2026
b7781a6
fix: match navigator search terms independently (#4535)
minatoaquaMK2 Sep 24, 2026
d11c0c3
fix: report partial Windows input coverage and clear clipboard for te…
JJLiebig Sep 24, 2026
11a7ab4
test: qualify Win32 and Kitty input paths by default (#4587)
JJLiebig Sep 24, 2026
c411883
feat!: replace the custom graphics api with optimized native kitty re…
ogulcancelik Sep 24, 2026
afd9e19
perf: avoid redundant client ANSI encoding work (#4552)
JJLiebig Sep 24, 2026
8d64c34
perf: avoid repeated scrollback page lookups (#4553)
JJLiebig Sep 24, 2026
a28bed2
docs: explain tmux auto-attach guard in herdr panes (#4592)
JJLiebig Sep 24, 2026
8d95e9b
fix: keep copy mode active during projection updates (#4281)
marcomayer Sep 24, 2026
21d0ce6
fix: preserve shift on ctrl+shift+letter for legacy panes (#4597)
factory-ain3sh Sep 25, 2026
7184be4
fix: retain mouse input grace for split csi prefixes (#4636)
akbash-bot Sep 25, 2026
81ddfc6
fix: accept plugin install options before the repository (#4453)
akbash-bot Sep 26, 2026
804a4aa
fix: crop kitty images around overlays instead of hiding them (#4652)
ogulcancelik Sep 26, 2026
c34dd6b
fix: create a symlink on non-elevated windows in docs test (#4654)
JJLiebig Sep 26, 2026
bd69871
fix: refresh host palette on terminal redraw (#4349)
dhh Sep 26, 2026
ccd5194
refactor: encode kitty placements in a single pass (#4657)
ogulcancelik Sep 26, 2026
bde4526
fix: keep api listener alive after transient accept errors (#4659)
ogulcancelik Sep 26, 2026
c33fd40
ci: reuse compiler state on every os and save caches only from master
ogulcancelik Sep 26, 2026
fff6c82
refactor: extract libghostty-vt binding into ghostty-vt workspace cra…
ogulcancelik Sep 26, 2026
316d176
feat: default machine add label to the ssh host (#4678)
dhh Sep 27, 2026
0d1a39d
feat: accept mouse events on terminal session control (#4685)
ogulcancelik Sep 27, 2026
2552d10
feat: let agents report their own resume command (#4687)
ogulcancelik Sep 27, 2026
25aaa0b
fix: keep offscreen kitty images loaded instead of resending them on …
ogulcancelik Sep 27, 2026
21d71a0
docs: add a guide for adding herdr support to your agent
ogulcancelik Sep 27, 2026
0b9c8ea
feat: simplify ssh machine setup discovery (#4204)
JJLiebig Sep 27, 2026
7945e91
perf: use keyed terminal lookup for named targets (#4669)
minatoaquaMK2 Sep 27, 2026
6502492
perf: avoid rebuilding bsp subtrees when splitting panes (#4670)
minatoaquaMK2 Sep 27, 2026
87c08c6
perf: skip frame clones for unchanged retained graphics (#4672)
minatoaquaMK2 Sep 27, 2026
c210c95
fix: bound external event batches in the server loop (#4671)
minatoaquaMK2 Sep 27, 2026
2527eed
fix: make release test robust to diff.noPrefix git config (#4663)
HackAttack Sep 27, 2026
0d5d6f1
test: fix pane shell idle foreground-command race (#4691)
JJLiebig Sep 27, 2026
7f89b11
feat: support multiple prefix keys (#4653)
JJLiebig Sep 28, 2026
8c8cb49
fix(windows): read agent command lines without PROCESS_VM_READ (#4708)
JJLiebig Sep 28, 2026
80c0c07
perf: send scrolling pane output as row shifts and skip blank cells (…
ogulcancelik Sep 28, 2026
267d47f
docs: publish preview documentation
kangal-bot Sep 28, 2026
d5680d8
fix: capture Windows host default colors at startup (#4710)
JJLiebig Sep 28, 2026
9dc3a1d
fix: summarize old servers and saved machines after herdr update (#4722)
ogulcancelik Sep 29, 2026
0d49b1c
docs: prepare 0.9.2 release documentation
ogulcancelik Sep 29, 2026
48292af
release: v0.9.2
ogulcancelik Sep 29, 2026
8e78f92
fix: keep escape-prefixed terminal key bindings intact (#4759)
ogulcancelik Sep 29, 2026
7049726
docs: prepare 0.9.3 release notes
ogulcancelik Sep 29, 2026
7b116c0
release: v0.9.3
ogulcancelik Sep 29, 2026
7c416ab
chore(upstream): merge herdr v0.9.3 with conflicts
jsonMartin Oct 7, 2026
001153e
chore(release): complete the herdr v0.9.3 sync
jsonMartin Oct 8, 2026
59becaf
feat(whats-new): show the full merged release history
jsonMartin Oct 8, 2026
545c636
style: format the headless snooze test module list
jsonMartin Oct 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .zed/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
"exclude": [
"target",
"vendor",
"src/ghostty/bindings.rs"
"crates/ghostty-vt/src/bindings.rs"
]
},
"lru": {
Expand Down
6 changes: 5 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,11 @@ Detection rules are evidence-based. When changing `src/detect/manifests/`, first

Inspect matching with `herdr agent explain <pane> --json`, test a rule through a local override in `~/.config/herdr-dev/agent-detection/<agent>.toml` (debug) or `~/.config/herdr/agent-detection/<agent>.toml`, and apply it with `herdr server reload-agent-manifests`. Never overwrite or remove an existing override without the owner's agreement, and remove the temporary override afterwards so the bundled manifest stays the source of truth.

Detection fixes that apply equally to Herdr belong upstream. Keep `distribution/agent-detection/` aligned with the bundled manifests; `scripts/agent_detection_manifest_check.py` enforces this. Do not add large agent-specific full-screen fixture suites for routine tuning; keep Rust tests focused on manifest parsing, rule semantics, source precedence, reload, and update behavior.
Detection fixes that apply equally to Herdr belong upstream. Keep `distribution/agent-detection/` aligned with the bundled manifests; `scripts/agent_detection_manifest_check.py` enforces this.

Unit-test the detection engine, not individual CLI agents' screen or title conventions. Use synthetic manifests and minimal input strings to test parsing, regions, matching, AND/OR/NOT gates, rule priority, skip-state semantics, source precedence, cache reload behavior, and update flow. Keep bundled-manifest schema validation, process identification, and integration hook/protocol tests. Do not add tests that classify captured or invented CLI screens against bundled agent rules, or freeze an agent's specific detection rule IDs and priorities.

Validate agent-specific detection behavior with live smoke tests through the manifest hot-reload loop above. Exercise the changed state and nearby transitions (idle, working, blocked, and background work where supported), including relevant optional OSC settings. Record the CLI version, observed signals, and outcomes. Passing engine tests proves the rules execute as written; it does not prove compatibility with the current CLI.

## Vendored libghostty-vt

Expand Down
133 changes: 131 additions & 2 deletions CHANGELOG.md

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ Superherdr is a fork of [Herdr](https://github.com/herdrdev/herdr), a terminal r

Most of Superherdr's runtime comes from Herdr, and upstream releases are merged regularly. If a bug also exists in Herdr and is not caused by Superherdr's changes, consider reporting it [upstream](https://github.com/herdrdev/herdr) so both projects benefit. Superherdr-specific behavior (Focus, Snooze, the Top-level Agents view, installation, and compatibility rules) belongs here. See the [behavior baseline](openspec/README.md).

Every upstream sync must graft the merged release bodies into `CHANGELOG.md` as `### Inherited from Herdr <version>` sections at the end of the file, newest first. The What's New view renders this file in installed builds, so a skipped graft leaves upgraded installs without the new release's notes. Keep each section free of `##`-level headings, `####` headings, emphasis markers, and markdown links: the release-notes renderer styles only `###` headings and renders everything else literally. The full-history tests fail when the newest inherited section is missing, which is the reminder for this step.

## Choose the contribution path

Search existing issues, pull requests, and [specifications](openspec/specs/) first. Link related work instead of opening duplicates.
Expand Down
Loading
Loading