22 Commits
Author SHA1 Message Date
kangal-bot 95e97bff3a docs: publish preview documentation 2026-09-20 21:51:02 +00:00
IvanandJJ Liebig 29f9f4056f fix: detect codex status with custom interrupt keys (#4196)
* fix: detect codex status with custom interrupt keys

* test: remove unverified codex stale-status cases

* fix(detect): match punctuation in codex interrupt hints

Accept parentheses in remapped interrupt binding labels and simplify the cheap prefilter to a single any-gate shared by both manifest copies.

---------

Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-20 14:23:58 +02:00
Vinay ShahandJJ Liebig a3a1c94ed5 fix: detect kiro status from live controls and osc signals (#4372)
* fix: detect kiro status from live controls and osc signals

refs #4203

* fix: handle variable-height kiro approval panels

refs #4203

---------

Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-20 15:55:41 +04:00
Can Celik 7df919d00e fix: correct grok activity detection with custom or disabled osc signals (#4337)
refs #4333
2026-09-18 12:52:37 +03:00
github-actions[bot] 956f23ff6b release: synchronize metadata for v0.9.1 2026-09-16 18:40:20 +00:00
kangal-bot cee4fc2dc6 docs: publish preview documentation 2026-09-16 16:38:39 +00:00
Can Celik 7fe5a7cd42 fix: detect pi working border (#4113)
refs #3629
2026-09-14 17:34:53 +03:00
Eric YueandOgulcan Celik 7e51b2832d fix: detect codex activity with static titles and queued inputs (#4099)
* fix: detect codex activity with static titles and queued inputs

refs #4092

Codex 0.154.0 can omit the activity bullet when tui.animations is false
and replace the literal Working label with a task-specific label. Its
terminal title can also remain static during an active turn, so the OSC
spinner rule is not sufficient to identify work.

The screen fallback required a bullet followed by Working in the last
three non-empty lines. It therefore missed both the animation-disabled
status line and dynamic labels. Queued follow-ups add a heading, input
text, and an edit hint below the activity line, moving that line outside
the three-line region. The lower-priority non-empty OSC title rule then
reported idle while Codex still showed an active timer and interrupt
control.

Recognize the elapsed-time and esc-to-interrupt controls in the detection
snapshot before the current composer. Allow an optional bullet, a dynamic
activity label, and queued follow-ups below that line. Require that no
later response, completion, or interruption marker supersedes the live
activity. This excludes composer text and stale output without letting an
earlier interruption suppress a subsequent active turn.

Keep OSC state precedence and transcript-viewer skip behavior unchanged.
Update the bundled and distributed manifests together to 2026.09.14.1.
Add regression coverage for optional bullets, dynamic labels, queued
inputs, resumed work after interruption, and stale or quoted controls.

Avoid discarding Regex search caches on every detection poll. The loader
previously cloned the entire compiled rule vector, and each Regex clone
created a fresh search cache pool despite sharing compiled read-only
state. Share the immutable rules through Arc instead. Reload publishes a
new array while in-flight readers retain a valid old generation, without
holding the global cache lock during matching. Add a cheap contains gate
for the required interrupt text before running the multiline expression.

Add a deterministic regression for compiled-rule sharing, reload
replacement, retained old readers, and concurrent detection. Measure the
baseline and optimized detector kernels in three alternating rounds on
CPU 24 with NUMA node 0 and CPU 25 with NUMA node 1. Real queued detection
falls from about 116 to 22 microseconds, and two evaluations per pane over
15 panes fall from about 3.45 to 0.65 milliseconds on both sockets, about
81 percent less time. No benchmark match results change. The cache
improvement requires the updated binary, not just a manifest reload.

Validate on the official Herdr 0.9.0 release with Codex 0.154.0 by toggling
the old and new manifests during the same active queued task. Confirm
working for active turns and idle after completion or interruption.
Pass 86 captured-screen and semantic checks through the optimized source
binary, 69 manifest/cache tests, CPU-pinned render scaling, and the full
native CI suite: 3535 Rust tests passed, with six default skips. Run CI
serially with inherited Herdr session context removed; no tests were
excluded or expectations relaxed to make CI pass.

* fix: detect codex pending follow-ups as working

refs #4092

* fix: handle wrapped codex follow-up hints

refs #4092

---------

Co-authored-by: Ogulcan Celik <ogulcancelik@gmail.com>
2026-09-14 17:33:30 +03:00
Can CelikandCameron fc1cb77f05 feat: add Letta Code detection and restore (#3107)
refs #3106

Co-authored-by: Cameron <cameron@pfiffer.org>
2026-09-13 17:36:47 +02:00
Can Celik e3a46f4f89 fix: recognize codex composer sparkles (#4015)
refs #3988
2026-09-13 01:36:59 +03:00
Can Celik f3cbe03fdb fix: detect cline launchers and idle states (#3959)
refs #2396
2026-09-11 17:38:52 +03:00
Can Celik a05c403881 fix: recognize claude unicode spinner during active turns (#3953)
refs #3949
2026-09-11 16:07:33 +03:00
kangal-bot 792b2baa44 docs: publish preview documentation 2026-09-07 22:04:42 +00:00
github-actions[bot] a9f3ad5fd4 docs: publish release distribution for v0.9.0 2026-09-07 19:26:50 +00:00
Ogulcan Celik 9be481fea6 docs: prepare 0.9.0 release documentation 2026-09-07 22:04:55 +03:00
caner-akca 4b5e9bda23 fix: match claude bash permission prompts at every cursor position (#3615)
Claude marks the selected option with "❯", but bash_permission_prompt did not allow that prefix on numbered branches and did not cover the three-option "don't ask again" layout. Match both two- and three-option Bash approval prompts regardless of the selected option.

refs #2650
2026-09-07 02:27:04 +03:00
kangal-bot e366a05f03 docs: publish preview documentation 2026-09-06 10:42:13 +00:00
JJ Liebig 987651a760 fix: detect codex startup update prompts (#3636)
refs #3632
2026-09-05 02:14:07 +02:00
JJ LiebigandCan Celik 8162e26509 fix(windows): use active release directory on PATH (#3618)
* fix(windows): use active release directory on PATH

refs #3611

* fix(windows): expand variables in PATH comparisons

refs #3611

* fix(windows): restrict installer channel detection

refs #3611

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-09-05 01:47:00 +03:00
akbashandakbash-bot b07ba9ced8 fix: reject Android in Unix installer (#3577)
refs #3571

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-03 20:43:42 +03:00
akbash 987b070fbf fix: stop treating claude background shells as working (#3468) 2026-09-02 18:00:44 +03:00
Ogulcan Celik 8a6d697308 refactor: separate website presentation from runtime 2026-09-01 14:48:45 +03:00