aboutsummaryrefslogtreecommitdiff
path: root/src/cli
AgeCommit message (Collapse)Author
2026-08-08feat(input): add per-pane right-click routing (#2504)Can Celik
2026-08-06fix(cli): accept --flag=value and reordered options in pane read/wait-output ↵Kyle Corbeille
(#2183) * fix(cli): accept --flag=value and reordered options in pane read/wait-output * test(cli): trim redundant pane parser coverage --------- Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-08-04fix(cli): resolve pane query --current from caller (#2298)akbash
refs #2297 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-01fix: stop advertising worktree json flag (#2174)akbash
refs #2171 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-08-01feat: add antigravity-cli integration (#2087)Ludovico Magnocavallo
* 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-01fix: report a clear cli error when no herdr server is running (#1963)Season Saw
* 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-07-31fix: read alternate-screen agent historyOgulcan Celik
2026-07-28fix: resolve relative plugin commands from plugin rootOgulcan Celik
refs #1949
2026-07-26feat: print bundled agent skill and hint next cli stepsOgulcan Celik
2026-07-24feat: add grok cli integration for native session restore (#1807)Enrico Carlesso
* feat: add grok cli integration for native session restore tl;dr: adds `herdr integration install grok` (session-identity tier: a SessionStart hook reports the grok session id for native restore; state stays screen-detected via the bundled manifest). Grok merges every ~/.grok/hooks/*.json, so install writes a self-contained hooks/herdr.json registering a SessionStart hook next to hooks/herdr-agent-state.sh, and never touches other hook files. The hook prefers $GROK_SESSION_ID (injected into every grok hook process) and reports through the socket API; herdr:grok is a reserved-native-state source so screen detection stays authoritative. Restore uses `grok --resume <id>`. Additive JSON API change; no protocol bump; the schema artifact is regenerated. refs #1800 * fix: honor GROK_HOME and validate grok hook config in status Review follow-ups: grok_dir now resolves GROK_CONFIG_DIR (herdr test seam) before GROK_HOME (the grok CLI's own config-home override) before ~/.grok, so hook installs land where grok actually looks. Integration status now also validates the herdr-owned hooks/herdr.json next to the hook script — missing, corrupt, or no-longer-referencing configs report the install as outdated instead of masking a hook grok never invokes. refs #1800 * fix: validate the exact grok session hook command in status The config validator matched on a filename substring, so a SessionStart command like `echo herdr-agent-state.sh`, or one invoking the script without the `session` action, still reported the integration as current while grok never delivered a session id. Status now compares against the exact command the installer writes, via a shared builder, and the degradation tests cover both nonfunctional shapes. refs #1800 * fix: require a command-type grok session hook in status validation A config entry carrying the exact generated command under a non-command hook type (e.g. "http") is never executed by grok, so it must not report the integration as current. The validator now also requires type = "command", with a degradation test for the mismatched-type shape. refs #1800 * fix: validate the complete grok hook config refs #1800 --------- Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-07-21fix: link plugins without a running serverOgulcan Celik
refs #1670
2026-07-20fix: make plugin state global across sessionsOgulcan Celik
refs #1174
2026-07-20fix: show agent targets before options in helpOgulcan Celik
2026-07-20fix: bound stalled agent prompt waitsOgulcan Celik
2026-07-20feat: add plugin-driven agent views and startup hooksOgulcan Celik
2026-07-19feat: make agent automation a first-class cli primitiveOgulcan Celik
2026-07-17feat: harden named agent cli workflowsOgulcan Celik
refs #1525
2026-07-17fix(windows): prevent remaining subprocess console flashesOgulcan Celik
refs #1468
2026-07-15fix: guard cli requests against protocol mismatches (#1453)akbash
refs #1435 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-07-15feat: add floating popup panesOgulcan Celik
refs #1125
2026-07-13feat: add configurable sidebar metadata tokensOgulcan Celik
2026-07-10fix: improve config diagnostic deliveryOgulcan Celik
2026-07-05fix: wait for server stop socket cleanupOgulcan Celik
2026-07-04refactor: route cli pane placement through runtime adaptersOgulcan Celik
2026-07-04refactor: route cli workspace tab worktree through runtime adaptersOgulcan Celik
2026-07-04feat: expose session snapshot through cliOgulcan Celik
2026-07-04feat: add mastracode integration (#788)Ward Peeters
* feat: add mastracode integration refs #337 Co-authored-by: Mastra Code (openai/gpt-5.5) <noreply@mastra.ai> Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-06-30fix: keep remote sessions alive across disconnectsOgulcan Celik
2026-06-30fix: resolve split current from caller paneOgulcan Celik
refs #902
2026-06-30feat: add shell completionsOgulcan Celik
refs #435
2026-06-29feat: expose api schema from cliOgulcan Celik
2026-06-15feat: add devin cli detection and restore support (#622)Eric Yue
* feat: add devin cli detection and restore support refs #606 * fix: keep devin integration session-only --------- Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-06-15fix: preserve claude session rotationsOgulcan Celik
refs #620
2026-06-15fix: require plugin min herdr versionOgulcan Celik
2026-06-14fix: stabilize plugin config directoriesOgulcan Celik
2026-06-14fix: add best-effort windows plugin supportOgulcan 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-13feat: add pane move api and cliOgulcan Celik
refs #299
2026-06-10feat: add agent manifest update commandOgulcan Celik
2026-06-10feat: add manifest-based detection engineOgulcan Celik
2026-06-10feat: distribute agent detection manifestsOgulcan Celik
2026-06-09feat: update agent lifecycle integrationsOgulcan Celik
2026-06-08feat: add cursor agent cli integration for session restore (#506)udirom
Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-06-07fix: support windows agent hooks and input pathsOgulcan Celik
2026-06-06feat: improve toast ergonomicsOgulcan Celik
refs #486
2026-06-06feat: expose pane zoom apiOgulcan 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-04feat: add droid integrationOgulcan Celik
2026-06-04feat: add kimi code cli integration (#463)qer
* feat: add kimi code cli integration refs #431 * fix: improve kimi code screen detection refs #431
2026-06-02feat: add preview update channelOgulcan Celik