Commit Graph
1287 Commits
Author SHA1 Message Date
Ogulcan Celik 4f51604778 fix(windows): detect agents across git bash exec boundaries
refs #2107
2026-08-01 21:08:10 +03:00
serhat dolmaci 885c9a6b5b fix(socket_paths): remove dead if-branch in derive_client_socket_from_api_socket (#2157) 2026-08-01 19:38:43 +03:00
serhat dolmaci d950fdfe7d fix(input): decode 0x1f as Ctrl+_ not Ctrl+- per ASCII standard (#2165)
* fix(input): decode 0x1f as Ctrl+_ not Ctrl+- per ASCII standard

refs #2164

* fix(input): update control-byte matrix test for 0x1f -> Ctrl+_
2026-08-01 19:34:29 +03:00
Ludovico MagnocavalloandCan Celik 679584fdd4 feat: add antigravity-cli integration (#2087)
* feat: add antigravity_cli integration harness

Register the `antigravity_cli` target, resolve its configuration
directory to `~/.gemini/antigravity-cli/`, wire target actions,
and add lifecycle hook scripts for Unix and Windows.

* feat: support session resume for antigravity-cli

* fix: correct antigravity-cli hook config path, shape, and agent label

Antigravity CLI reads global customizations from ~/.gemini/config, keys
hooks.json by hook name, and only accepts the matcher/hooks wrapper for
the tool events. The previous install wrote event arrays at the top level
of ~/.gemini/antigravity-cli/hooks.json, which agy never reads and would
reject anyway, so no Herdr hook ever ran.

Session reports were dropped for a third reason: the hooks reported the
agent as antigravity-cli, but the server normalizes that to the canonical
label agy before matching, so is_official_agent_source never matched and
agy --conversation resume was unreachable.

- Resolve the config dir to ~/.gemini/config
- Nest Herdr entries under a Herdr-owned "herdr" block that install
  rewrites and uninstall removes, leaving other named hooks untouched
- Emit grouped entries for PreToolUse/PostToolUse and flat handler lists
  for PreInvocation/PostInvocation/Stop
- Report the canonical agy label from both hook assets and match it in
  agent_resume
- Compile-gate the hook asset constants and stop shadowing $args in the
  PowerShell hook
- Document the real directory, that it must already exist, and the
  named-block behavior

refs #1011
refs #1571

* fix: make antigravity-cli integration session-only

antigravity cli cannot express lifecycle safely: there is no blocked
event, postinvocation is skipped on interruption, and stop fires at the
end of a turn rather than on process exit, which left stale state and
released authority at the wrong time.

report only the conversation on preinvocation and let screen detection
own agent state. resume via `agy --conversation <id>` is unchanged.

* fix: update antigravity session after conversation switch

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-01 19:32:47 +03:00
Ogulcan Celik 219e0be351 fix(ci): skip pr gate in forks 2026-08-01 18:21:42 +03:00
Can Celik f6031f7fb0 feat(ui): make pane scrollbars optional (#2166)
refs #2167
2026-08-01 17:25:43 +03:00
Akira TSURUDAandCan Celik f459a0df31 fix: expand copy-mode word-end window past a final wide glyph (#2145)
point_is_final_atom compared an atom's terminating column against a
word-motion target's starting column. The two are equal for narrow
cells but never for wide ones, so the read window stopped expanding
and copy-mode `e` halted at the soft-wrap boundary on CJK text.

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-01 16:40:57 +03:00
Season Saw f99647b2c2 fix: report a clear cli error when no herdr server is running (#1963)
* fix: report a clear cli error when no herdr server is running

socket cli commands surfaced a raw io::Error debug string
(`Error: Os { code: 2, ... }`) when nothing was listening on the
api socket, which read like a bad --cwd path. map dead-socket
connect failures to a `server_not_running` json error carrying the
resolved socket path, printed once at the edge that surfaces the
error; recovering callers (plugin offline registry fallback, agent
start polling) recognize the marker and keep their existing
behavior.

refs #1941

* fix: map dead-socket errors on the unchecked cli request path

refs #1941

* fix: make server-not-running guidance session-aware

refs #1941
2026-08-01 16:17:23 +03:00
Ogulcan Celik 26a7bc860e fix(windows): preserve semantic escape key taps 2026-08-01 05:08:17 +03:00
Can CelikandJonathan Liebig b76adc155d fix(input): preserve native key lifecycle across routing (#2142)
refs #2077

Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com>
2026-08-01 04:27:50 +03:00
Ogulcan Celik 8d190eddda chore: remove experiments from settings tui 2026-08-01 03:36:11 +03:00
Can Celik 02fe7d7659 feat: support bottom tab bar placement (#2118)
* feat: support bottom tab bar placement

* fix: preserve mouse cleanup under bottom mode bar

refs #2117
2026-07-31 18:15:55 +03:00
Ogulcan Celik b1d14fe984 chore: update agentmd for protocol changes 2026-07-31 16:28:15 +03:00
Ogulcan Celik bc1c052d15 fix: read alternate-screen agent history 2026-07-31 16:22:04 +03:00
Ogulcan Celik 7db744ab47 fix(sidebar): keep worktree groups packed 2026-07-31 15:40:20 +03:00
Matt ColesandMatt Coles b4112743cf fix(client): restore terminal on sighup and sigterm
Enable termination-signal handling so SIGHUP and SIGTERM follow the graceful
quit path and restore terminal state. Log handler registration failures and
add PTY coverage for direct SIGHUP and server EOF restoration

Co-authored-by: Matt Coles <macols@amazon.com>
2026-07-31 00:46:01 +03:00
Can Celik 0732039eaf fix: preserve windows sessions after ssh logout (#2098)
* fix: preserve windows sessions after ssh logout

refs #2008

* chore: document windows wmi safety

refs #2008
2026-07-30 23:39:03 +03:00
Wiedzmin a07871a55e fix(omp): support Windows session paths (#2092) 2026-07-30 21:44:25 +03:00
Can Celik ac47b9e679 fix: resume agents after headless restore (#2088)
refs #2064
2026-07-30 19:15:00 +03:00
Ogulcan Celik 9135ffe10b ci: consolidate ai review trigger label 2026-07-30 18:47:56 +03:00
Can Celik 53199270f6 fix: launch argument-free agents on windows (#2075)
refs #2072
2026-07-30 15:38:56 +03:00
Can Celik 38b7b540e1 fix: add opt-in child-group process detection (#2052)
* fix: add opt-in child-group process detection

refs #1982

* fix: preserve lifecycle probes without foreground groups

refs #1982
2026-07-30 15:14:27 +03:00
akbashandakbash-bot cfa112e741 fix: preserve kitty associated text (#2051)
refs #2020

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-07-30 03:18:16 +03:00
Ogulcan Celik b44b5b1013 chore: finish repository organization migration 2026-07-30 02:45:05 +03:00
BradleyandCan Celik 4cd1481a08 Update rose pine surface_dim colour to "Overlay" (#2002)
Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-30 01:23:15 +03:00
Ogulcan Celik 3563f5c56e chore: update repository links after organization transfer 2026-07-29 23:29:29 +03:00
Ogulcan Celik 2313fb8ac3 ci: allow repository organization migration 2026-07-29 22:23:20 +03:00
Ogulcan Celik f6060cf682 fix: scope agent skill installation
refs #2022
2026-07-29 21:21:22 +03:00
kangal-bot 514e4465ee docs: update preview manifest 2026-07-29 13:47:22 +00:00
Ogulcan Celik 44b3adb125 fix(windows): preserve parent agent ownership
refs #1514
preview-2026-07-29-44b3adb12552
2026-07-29 16:24:23 +03:00
Ogulcan Celik 8ed742da26 fix: preserve windows path variables during install
refs #1947
2026-07-29 15:43:38 +03:00
Ogulcan Celik 14df4d219d test(windows): remove flaky sound timing assertion
refs #1330
2026-07-29 15:16:37 +03:00
Can Celik 5b0be42e04 fix(windows): restore system notifications and sound playback (#2019) 2026-07-29 15:02:32 +03:00
Ogulcan Celik 73d92004f5 ci: remove approved contributor bypass 2026-07-29 02:54:53 +03:00
kangal-bot a5920bee86 chore: approve merged contributor we11adam 2026-07-28 23:36:24 +00:00
Adam LauandCan Celik a4b18b6e21 fix: preserve navigate mode after pane focus (#1993)
refs #1850

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-29 02:36:16 +03:00
kangal-bot 807033b8fc chore: approve merged contributor patrick-xin 2026-07-28 23:18:46 +00:00
Patrick XinandCan Celik b7317c97ef docs: add simplified chinese readme (#1990)
* docs: add simplified chinese readme

* fix: publish simplified chinese readme

* fix: require localized readme for releases

* docs: publish simplified chinese readme

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-29 02:18:30 +03:00
Ogulcan Celik bbe78f518b fix: restore python3 commit hook 2026-07-29 01:29:14 +03:00
JJ Liebig 9354761112 fix: select windows python command in commit hook (#1994) 2026-07-29 01:22:07 +03:00
kangal-bot 6a0ba22615 chore: approve merged contributor bioform 2026-07-28 22:21:07 +00:00
Andrew Krasnoff a0a6e13f11 fix: count ptmx master fds under devpts layouts (#1984)
live_server_holds_one_pty_master_fd_per_pane counted only /proc/<pid>/fd links
resolving to exactly /dev/ptmx. On devpts setups such as WSL2 and many
containers, a PTY master fd resolves to /dev/pts/ptmx instead, so the test found
zero masters and failed with "had 0 ptmx master fds; expected 1" even though the
server held the pane's master fd. Match both ptmx node paths; pty slaves still
resolve to /dev/pts/<N> and stay uncounted, so the one-master-per-pane invariant
is unchanged.
2026-07-29 01:20:58 +03:00
Ogulcan Celik e27a4ea427 perf: skip rendering hidden pty updates 2026-07-28 23:29:11 +03:00
Ogulcan Celik e16d7d8c07 fix: preserve linked worktree workspace labels 2026-07-28 15:34:13 +03:00
Ogulcan Celik 81f355fada perf: replace agent spinners with static status marks 2026-07-28 14:56:53 +03:00
JJ LiebigandCan Celik 1491b7dd9c fix: ignore nested codex session reports (#1927)
* fix: ignore nested codex session reports

refs #1789

* test: cover matching codex thread id

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-28 04:13:35 +03:00
Ogulcan Celik b499e611b6 fix: resolve relative plugin commands from plugin root
refs #1949
2026-07-28 02:19:33 +03:00
Ogulcan Celik 7383f120c6 docs: update sponsor acknowledgements 2026-07-28 00:59:17 +03:00
Season SawandCan Celik a979916568 fix: keep focus on the current workspace when another self-closes (#1912)
handle_pane_died only clamped the stale active/selected indices after
removing a workspace that closed itself, so it never shifted them down
when the removed workspace sat before the focused one. With workspaces
[x, y, z] and focus on y, removing x left active pointing at z, silently
moving the user into a workspace they did not select.

Resolve both indices by workspace id across the removal, as
close_selected_workspace already does, keeping the clamp as the fallback
for when the removed workspace was the focused one. Also scroll the
focused workspace back into view, which the explicit-close path already
did and this one did not.

refs #1621

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-27 16:17:14 +03:00
JJ Liebig 6d1bedee3e fix: make native windows checks reliable (#1925) 2026-07-27 14:15:23 +03:00