@agentty-xyz/testty 0.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,2288 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
6
+ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [v0.10.4] - 2026-06-13
11
+
12
+ ### Added
13
+
14
+ - agentty: show installed agent CLI versions on the projects dashboard.
15
+
16
+ ### Changed
17
+
18
+ - testty: publish the npm installer under the `@agentty-xyz` scope.
19
+ - Bump workspace crate metadata and lockfile package versions to `0.10.4`.
20
+
21
+ ### Contributors
22
+
23
+ - @minev-dev
24
+
25
+ ## [v0.10.3] - 2026-06-13
26
+
27
+ This release supersedes `v0.10.2`, whose release workflow did not complete successfully.
28
+
29
+ ### Added
30
+
31
+ - agentty: add the process-local Logs tab.
32
+ - agentty: show requested review comments in the review detail view.
33
+ - agentty: manage Antigravity hidden worktree aliases.
34
+ - agentty: support CSI-u `Shift+Enter` input in tmux.
35
+
36
+ ### Changed
37
+
38
+ - agentty: split project refresh from session refresh.
39
+ - agentty: cache diff layouts and reduce render-state cloning in hot render paths.
40
+ - Add regression coverage for forge and Codex helper behavior.
41
+ - Bump GitHub Actions, npm publishing, and version-update automation dependencies.
42
+ - Bump workspace crate metadata and lockfile package versions to `0.10.3`.
43
+
44
+ ### Fixed
45
+
46
+ - agentty: fix Logs tab navigation and lifetime cleanup.
47
+ - agentty: fix review list section spacing.
48
+
49
+ ### Contributors
50
+
51
+ - @minev-dev
52
+
53
+ ## [v0.10.2] - 2026-06-12
54
+
55
+ ### Added
56
+
57
+ - agentty: add the process-local Logs tab.
58
+ - agentty: show requested review comments in the review detail view.
59
+ - agentty: manage Antigravity hidden worktree aliases.
60
+ - agentty: support CSI-u `Shift+Enter` input in tmux.
61
+
62
+ ### Changed
63
+
64
+ - agentty: split project refresh from session refresh.
65
+ - agentty: cache diff layouts and reduce render-state cloning in hot render paths.
66
+ - Add regression coverage for forge and Codex helper behavior.
67
+ - Bump GitHub Actions, npm publishing, and version-update automation dependencies.
68
+ - Bump workspace crate metadata and lockfile package versions to `0.10.2`.
69
+
70
+ ### Fixed
71
+
72
+ - agentty: fix Logs tab navigation and lifetime cleanup.
73
+ - agentty: fix review list section spacing.
74
+
75
+ ### Contributors
76
+
77
+ - @dependabot
78
+ - @minev-dev
79
+
80
+ ## [v0.10.1] - 2026-06-09
81
+
82
+ ### Added
83
+
84
+ - agentty: add requested review detail navigation.
85
+ - agentty: add Claude Fable 5 model support.
86
+ - testty: add `proof::junit::JunitBackend`, a `ProofBackend` that renders a
87
+ `ProofReport` to JUnit-XML so non-Rust CIs can ingest testty proof results as test
88
+ cases and failures.
89
+ - testty: add a proof gallery that aggregates run artifacts into an index page.
90
+ - testty: the `testty` crate now ships the language-agnostic `testty` command-line
91
+ binary (`cargo install testty`), folding in the previously separate, never-published
92
+ `testty-cli` crate. The command tree is in place but the verbs remain stubbed.
93
+
94
+ ### Changed
95
+
96
+ - agentty: colorize reasoning labels and show session size markers as title prefixes in
97
+ the session list.
98
+ - agentty: expand Antigravity model selection to individual Gemini model variants.
99
+ - agentty: preserve popup clearing semantics for overlay backgrounds.
100
+ - agentty: retire `gpt-5.4` Codex model selection and promote `gpt-5.5` as the default.
101
+ - agentty: route project sync through a shared orchestrator.
102
+ - agentty: use non-interactive Codex app-server approvals.
103
+ - Bump GitHub Actions and version-update automation dependencies.
104
+ - Bump workspace crate metadata and lockfile package versions to `0.10.1`.
105
+ - testty: `ProofBackend::render` now takes a single `RenderContext` argument instead of
106
+ `(&ProofReport, &Path)`, so future render inputs can be added without breaking
107
+ external backends. Callers using `ProofReport::save` are unaffected. (Breaking for
108
+ custom `ProofBackend` implementations.)
109
+ - testty: `ProofError` is now `#[non_exhaustive]`. (Breaking for exhaustive matches.)
110
+ - testty: gate the CLI binary tests in the source-test hook.
111
+
112
+ ### Removed
113
+
114
+ - agentty: remove the sessions list header bottom margin.
115
+ - testty: `CellStyle::from_cell` is no longer public; it leaked the `vt100::Cell`
116
+ implementation-detail type. Use `TerminalFrame::cell_style` instead. (Breaking.)
117
+
118
+ ### Contributors
119
+
120
+ - @andagaev
121
+ - @dependabot
122
+ - @minev-dev
123
+
124
+ ## [v0.10.0] - 2026-06-02
125
+
126
+ ### Added
127
+
128
+ - agentty: add stacked draft session lineage and restack behavior.
129
+ - agentty: show reasoning levels next to model names in the session list.
130
+
131
+ ### Changed
132
+
133
+ - agentty: beautify provider command failure output.
134
+ - agentty: select protocol schema guidance by provider capability and require temporary
135
+ artifact cleanup in protocol prompts.
136
+ - agentty: preserve the Antigravity session worktree as the first `agy --add-dir` root.
137
+ - agentty: skip published-branch auto-push while follow-up messages are queued.
138
+ - agentty: move the runtime render throttle behind the shared `Clock` trait boundary.
139
+ - Bump GitHub Actions and version-update automation dependencies.
140
+ - Bump workspace crate metadata and lockfile package versions to `0.10.0`.
141
+
142
+ ### Contributors
143
+
144
+ - @andagaev
145
+ - @dependabot
146
+ - @minev-dev
147
+
148
+ ## [v0.9.6] - 2026-06-01
149
+
150
+ ### Added
151
+
152
+ - agentty: show linked review request URLs in session headers.
153
+ - agentty: persist merged review hashes so continuation can keep review context.
154
+
155
+ ### Changed
156
+
157
+ - agentty: reject progress-style generated session titles and tighten the title
158
+ generation prompt.
159
+ - agentty: restrict continuation to completed sessions; canceled sessions remain
160
+ terminal read-only.
161
+ - Refresh the README demo GIF for the current interface.
162
+ - testty: complete the explicit-import migration across docs, tests, and upgrade
163
+ guidance.
164
+ - Bump workspace crate metadata and lockfile package versions to `0.9.6`.
165
+
166
+ ### Contributors
167
+
168
+ - @andagaev
169
+ - @minev-dev
170
+
171
+ ## [v0.9.5] - 2026-05-28
172
+
173
+ This release supersedes `v0.9.4`, whose release workflow did not complete successfully.
174
+
175
+ ### Added
176
+
177
+ - agentty: add Antigravity CLI backend support.
178
+ - Add SonarCloud, SonarQube, cargo-audit, Dependabot GitHub Actions update checks, and
179
+ rust-toolchain update checks to repository automation.
180
+
181
+ ### Changed
182
+
183
+ - agentty: adopt Claude Opus 4.8 as the active Opus model.
184
+ - agentty: deliver Antigravity prompts with `--print`, fix print-timeout flag ordering,
185
+ defer cancellation cleanup, support turn interruption, and sync linked review-request
186
+ metadata after auto-push.
187
+ - agentty: disallow commit creation guidance in session-turn protocol responses.
188
+ - Migrate release and crates.io workflows to scoped OIDC credentials, add reusable
189
+ GitHub Actions OIDC publishing workflow support for npm release jobs, and adjust
190
+ release workflow permissions so publish escalation can complete.
191
+ - Pin shared CI `prek` installs and hook calls to explicit `prek` v0.4.3 no-build mode,
192
+ normalize hyphenated GitHub Action inputs, and keep the security scan workflow on
193
+ read-only contents permissions.
194
+ - Bump workspace crate metadata and lockfile package versions to `0.9.5`.
195
+
196
+ ### Removed
197
+
198
+ - agentty: remove the roadmap-backed `Tasks` tab.
199
+
200
+ ### Contributors
201
+
202
+ - @dependabot
203
+ - @minev-dev
204
+
205
+ ## [v0.9.4] - 2026-05-28
206
+
207
+ ### Added
208
+
209
+ - agentty: add Antigravity CLI backend support.
210
+ - Add SonarCloud, SonarQube, cargo-audit, Dependabot GitHub Actions update checks, and
211
+ rust-toolchain update checks to repository automation.
212
+
213
+ ### Changed
214
+
215
+ - agentty: adopt Claude Opus 4.8 as the active Opus model.
216
+ - agentty: deliver Antigravity prompts with `--print`, fix print-timeout flag ordering,
217
+ defer cancellation cleanup, support turn interruption, and sync linked review-request
218
+ metadata after auto-push.
219
+ - agentty: disallow commit creation guidance in session-turn protocol responses.
220
+ - Migrate release and crates.io workflows to scoped OIDC credentials and add reusable
221
+ GitHub Actions OIDC publishing workflow support for npm release jobs.
222
+ - Pin shared CI `prek` installs and hook calls to explicit `prek` v0.4.3 no-build mode,
223
+ normalize hyphenated GitHub Action inputs, and keep the security scan workflow on
224
+ read-only contents permissions.
225
+ - Bump workspace crate metadata and lockfile package versions to `0.9.4`.
226
+
227
+ ### Removed
228
+
229
+ - agentty: remove the roadmap-backed `Tasks` tab.
230
+ - testty: remove the `testty::prelude` wildcard re-export module. Public items are now
231
+ reached only through their owning module paths (for example,
232
+ `use testty::scenario::Scenario;`); see
233
+ [`crates/testty/docs/upgrading.md`](crates/testty/docs/upgrading.md) for the migration
234
+ note.
235
+
236
+ ### Contributors
237
+
238
+ - @dependabot
239
+ - @minev-dev
240
+
241
+ ## [v0.9.3] - 2026-05-20
242
+
243
+ ### Added
244
+
245
+ - agentty: add Gemini 3.5 Flash as a selectable Gemini model.
246
+
247
+ ### Changed
248
+
249
+ - Bump workspace crate metadata and lockfile package versions to `0.9.3`.
250
+
251
+ ### Contributors
252
+
253
+ - @minev-dev
254
+
255
+ ## [v0.9.2] - 2026-05-20
256
+
257
+ ### Added
258
+
259
+ - agentty: add `/qe:check` as a prompt slash command that sends a checked-in
260
+ quality-enforcement audit prompt instead of running an in-process audit engine.
261
+ - Add reusable GitHub Actions OIDC publishing workflow support for npm release jobs.
262
+ - testty: split the README into a quick-start landing page plus focused docs for
263
+ assertions, frame diffing, journeys, proof reports, scenarios, snapshots, and
264
+ upgrades.
265
+
266
+ ### Changed
267
+
268
+ - agentty: switch Gemini prompt delivery from standard input to argument transport.
269
+ - agentty: warn on main-checkout drift and require clean preflight state before merge
270
+ workflows continue.
271
+ - agentty: split requested reviews into personal and group sections.
272
+ - agentty: refactor session state, prompt routing, UI formatting, and database access
273
+ into more focused modules.
274
+ - Update workspace guidance, docs, roadmap slices, and validation expectations.
275
+ - Bump workspace crate metadata and lockfile package versions to `0.9.2`.
276
+ - Bump dependency versions, including `askama` to `0.16.0` and `pulldown-cmark` to
277
+ `0.13.4`.
278
+
279
+ ### Removed
280
+
281
+ - agentty: remove the `Stats` tab and provider usage polling.
282
+
283
+ ### Contributors
284
+
285
+ - @andagaev
286
+ - @dependabot
287
+ - @minev-dev
288
+
289
+ ## [v0.9.1] - 2026-05-02
290
+
291
+ ### Changed
292
+
293
+ - agentty: enable the `arboard` `wayland-data-control` backend so clipboard image
294
+ capture works on Wayland compositors such as Hyprland, and update runtime-flow,
295
+ keybinding, and workflow docs to describe X11 and Wayland clipboard sources.
296
+ - Clarify workspace crate names, validation guidance, UI helper guidance, and
297
+ constructor guidance in agent instructions while removing obsolete nested instruction
298
+ files from stale example/proof directories.
299
+ - Bump workspace crate metadata and lockfile package versions to `0.9.1`.
300
+
301
+ ### Contributors
302
+
303
+ - @minev-dev
304
+
305
+ ## [v0.9.0] - 2026-05-02
306
+
307
+ ### Added
308
+
309
+ - agentty: accept image paste payloads from `Ctrl+Shift+V` and copied PNG files in the
310
+ prompt input flow.
311
+ - agentty: add branch and path columns to the `Projects` table so repository identity is
312
+ visible without opening a project.
313
+ - testty: add the named `StartupWait` preset enum (`Default`, `FastNative`, `SlowNode`,
314
+ `Custom { stable_ms, timeout_ms }`) plus the `Journey::wait_for_startup_preset` and
315
+ `Journey::wait_for_startup_default` constructors so test authors can pick a documented
316
+ startup-wait profile instead of hand-tuning raw `(stable_ms, timeout_ms)` numbers per
317
+ project. `StartupWait` is re-exported from `testty::prelude`. The historical
318
+ `Journey::wait_for_startup(stable_ms, timeout_ms)` entry point keeps working and now
319
+ routes through `StartupWait::Custom`.
320
+ - testty: add `match_*` recipe siblings for composing reusable frame assertions.
321
+
322
+ ### Changed
323
+
324
+ - agentty: move the activity heatmap into the `Projects` tab, add aggregate work stats
325
+ to the `Projects` table, keep the `Stats` tab focused on global aggregates, and hide
326
+ non-repository workspaces from the project list.
327
+ - agentty: tighten shared tab-page spacing and split project activity from project info
328
+ so the `Projects` tab has denser, clearer panels.
329
+ - testty: HTML proof report now renders structured `match_*` failures (those carried on
330
+ `AssertionResult::failure`) with a side-by-side context-and-frame block. The context
331
+ column surfaces the `Expected` variant, the optional `Region` coordinates, and the
332
+ matched-span list; the frame column shows `AssertionFailure::frame_excerpt` inside a
333
+ `<pre>` with a column ruler and per-row gutters whose labels are anchored to the
334
+ region's `(col, row)` so reported coordinates match the live frame. The ruler defaults
335
+ to the compact two-row tens-and-ones layout and adds a hundreds row above the tens row
336
+ whenever the excerpt extends past column 99, so absolute coordinates beyond column 99
337
+ can be recovered by stacking the digits at any tens-marked column instead of being
338
+ truncated by `(col / 10) % 10`. The column ruler is sized by terminal cell width (via
339
+ `unicode-width`) so wide glyphs in the excerpt do not desync the labels from real
340
+ terminal positions. Needle highlighting in the excerpt is scoped to what the
341
+ underlying matcher actually validated: every-match matchers (`TextInRegion`,
342
+ `NotVisible`, `MatchCount`) wrap every occurrence of the needle in a `needle-hit` span
343
+ using the same one-character advance as `TerminalFrame::find_text`, so overlapping
344
+ matches like `ana` in `banana` are no longer silently dropped, while first-match-only
345
+ matchers (`ForegroundColor`, `BackgroundColor`, `Highlighted`, `NotHighlighted`) only
346
+ highlight the first occurrence so the report does not imply that secondary occurrences
347
+ were checked. For every-match matchers, strictly overlapping byte ranges are merged
348
+ into a single span so the emitted HTML stays well-formed, while adjacent matches like
349
+ `ab` in `abab` keep their distinct spans so the report shows both hits. The
350
+ `needle-hit` style uses background color only with no horizontal padding so
351
+ highlighted cells stay aligned with the column ruler. The matched-span list now also
352
+ surfaces the actual `foreground`, `background`, and style flags (`bold`, `italic`,
353
+ `underline`, `inverse`, `dim`) carried on each `MatchedSpan`, so color- and
354
+ highlight-style failures expose the actual cell state next to the structured
355
+ `Expected` description instead of forcing readers back to the assertion-line summary.
356
+ The `Expected` description for color and highlight expectations is also reworded to
357
+ read as "first match of '<needle>' with foreground color ..." (and the equivalent for
358
+ background, highlight, and not-highlight) so the report makes it explicit that the
359
+ underlying matchers only validate the first matched span. Legacy entries pushed
360
+ through `ProofReport::add_assertion` keep the historical one-line `pass`/`fail` shape
361
+ unchanged.
362
+ - Bump workspace crate metadata and lockfile package versions to `0.9.0`.
363
+
364
+ ### Fixed
365
+
366
+ - agentty: isolate E2E project discovery from the host home directory so tests only see
367
+ repositories created for the current scenario.
368
+
369
+ ### Contributors
370
+
371
+ - @andagaev
372
+ - @minev-dev
373
+
374
+ ## [v0.8.11] - 2026-05-02
375
+
376
+ ### Added
377
+
378
+ - testty: add `SoftAssertions` accumulator that batches `match_*` failures and panics
379
+ once at scope end with every recorded message. When constructed with
380
+ `SoftAssertions::with_report`, each recorded `AssertionFailure` is also routed into
381
+ the most recent `ProofCapture::assertions` entry through the new
382
+ `ProofReport::record_soft_failure` plumbing so a single capture can carry every
383
+ batched failure for the proof report. `SoftAssertions` is re-exported from
384
+ `testty::prelude`.
385
+ - testty: re-export `AssertionResult` from `testty::prelude` so downstream code can
386
+ inspect `ProofCapture::assertions` entries (including the structured `failure`
387
+ payload) without naming the full module path.
388
+ - testty: add `Step::Eventually` plus the `Step::eventually` and `Scenario::eventually`
389
+ constructors so test authors can poll any `MatchResult`-returning frame predicate
390
+ against the live PTY frame and surface the last `AssertionFailure` on timeout instead
391
+ of a generic timeout panic. The `FramePredicate` alias is re-exported from
392
+ `testty::prelude`. VHS recordings approximate the new step with a fallback `Sleep` for
393
+ the full timeout because VHS has no predicate-driven wait primitive, keeping GIF
394
+ playback bounded by the same worst-case window the PTY executor would have observed.
395
+
396
+ ### Changed
397
+
398
+ - testty: add the new `AssertionResult::failure: Option<Box<AssertionFailure>>` field so
399
+ soft-batched failures preserve the full structured context (`Expected` variant,
400
+ optional `Region`, matched spans, frame excerpt) for HTML and other structured proof
401
+ backends instead of collapsing every failure into a formatted string. The annotated
402
+ text backend renders the first line of `description` next to `[PASS]`/`[FAIL]` and
403
+ indents continuation lines under the marker. `AssertionResult` stays a regular (not
404
+ `#[non_exhaustive]`) struct so downstream crates can both destructure entries on
405
+ `ProofCapture::assertions` and push their own entries with struct literals; existing
406
+ field reads through `assertion.passed` and `assertion.description` stay
407
+ source-compatible, but two downstream patterns break at compile time and must be
408
+ updated together: any caller constructing `AssertionResult` directly must add the new
409
+ `failure: None` field, and any caller exhaustively destructuring `AssertionResult`
410
+ with a `let AssertionResult { passed, description } = ...` pattern (the destructuring
411
+ contract pinned in `crates/testty/tests/public_api.rs`) must add the new `failure`
412
+ binding (or a `..` rest pattern).
413
+ - testty: mark `PtySessionError` as `#[non_exhaustive]` and add the new
414
+ `PtySessionError::Assertion(Box<AssertionFailure>)` variant so structured predicate
415
+ failures from `Step::Eventually` flow through the existing executor return type.
416
+ Downstream `match` arms must include a fallback `_` arm.
417
+ - agentty: replace the fixed `Step::sleep` waits in the shared E2E session-creation
418
+ journeys (`create_session_and_return_to_list` and
419
+ `create_session_with_prompt_and_return_to_list`) with predicate-driven
420
+ `Step::eventually` waiters keyed off the in-session and sessions-list footer markers
421
+ so the journeys settle as soon as the UI transitions and surface a structured
422
+ `AssertionFailure` on timeout instead of an opaque over-sleep.
423
+ - Bump workspace crate metadata and lockfile package versions to `0.8.11`.
424
+
425
+ ### Contributors
426
+
427
+ - @andagaev
428
+ - @minev-dev
429
+
430
+ ## [v0.8.10] - 2026-04-28
431
+
432
+ ### Added
433
+
434
+ - agentty: add `gemini-3.1-flash-lite-preview` as a selectable Gemini model with parser,
435
+ provider metadata, docs, and E2E model-picker coverage.
436
+ - agentty: add a project-scoped `Review` tab that lists open GitHub pull requests and
437
+ GitLab merge requests requesting the current user's review, with refresh handling,
438
+ navigation, help text, docs, and E2E coverage.
439
+ - testty: `PtySessionBuilder::args` forwards CLI arguments to the spawned binary so
440
+ non-interactive subcommand flows such as `--help` and `--version` are testable through
441
+ the existing builder pipeline.
442
+ - testty: add GIF freshness modes, hash sidecars, read-only check mode, forced
443
+ regeneration, public API re-exports, and `TESTTY_GIF_MODE` support in the agentty
444
+ feature-test harness.
445
+
446
+ ### Changed
447
+
448
+ - agentty: start new session worktrees from the active local branch, keep published
449
+ session rebases on the remote base ref, remove unused upstream lookup plumbing, and
450
+ keep git command execution non-interactive.
451
+ - agentty: reuse existing open same-branch GitHub pull requests or GitLab merge requests
452
+ for review requests, and keep requested-review cache refreshes fresher.
453
+ - agentty: route `Esc` in question mode as an end-turn shortcut when no `@`-mention
454
+ overlay is open, while keeping overlay dismissal on `Esc`.
455
+ - agentty: preserve legacy plain-`Enter` encoding under tmux on ghostty by keeping kitty
456
+ keyboard enhancement flags to disambiguation and alternate-key reporting.
457
+ - Bump workspace crate metadata and lockfile package versions to `0.8.10`.
458
+
459
+ ### Fixed
460
+
461
+ - testty: `Frame::row_text`, `Frame::all_text`, and `Frame::text_in_region` skip
462
+ wide-character continuation cells so wide glyphs stay contiguous with their neighbors,
463
+ while real blank columns are preserved as spaces so substring searches cannot collapse
464
+ text across distant columns.
465
+
466
+ ### Contributors
467
+
468
+ - @andagaev
469
+ - @minev-dev
470
+
471
+ ## [v0.8.9] - 2026-04-27
472
+
473
+ ### Changed
474
+
475
+ - Prefer one-shot Gemini app-server permission approvals while preserving
476
+ policy-specific approval handling.
477
+ - Remove standalone strict lint CI steps now covered by repository-defined `prek` hooks.
478
+ - Disable `uv` caching in the shared Rust/`prek` setup to avoid stale cache
479
+ interactions.
480
+ - Bump workspace crate metadata and lockfile package versions to `0.8.9`.
481
+
482
+ ### Contributors
483
+
484
+ - @minev-dev
485
+
486
+ ## [v0.8.8] - 2026-04-26
487
+
488
+ ### Changed
489
+
490
+ - Install `rustfmt` in the shared Rust/`prek` setup action for both default and LLVM
491
+ tools nightly toolchains.
492
+ - Bump workspace crate metadata and lockfile package versions to `0.8.8`.
493
+
494
+ ### Contributors
495
+
496
+ - @minev-dev
497
+
498
+ ## [v0.8.7] - 2026-04-26
499
+
500
+ ### Changed
501
+
502
+ - Bump workspace crate metadata and lockfile package versions to `0.8.7`.
503
+ - Preserve the generated release workflow permissions needed by the crates.io publish
504
+ job.
505
+
506
+ ### Contributors
507
+
508
+ - @minev-dev
509
+
510
+ ## [v0.8.6] - 2026-04-26
511
+
512
+ ### Changed
513
+
514
+ - Rename the pre-start session status from `New` to `Draft` across runtime state,
515
+ persistence, UI labels, and user documentation.
516
+ - Rename theme settings from `Current` and `Hacker` to `Agentty Default` and
517
+ `Agentty Green`.
518
+ - Publish workspace crates through the release workflow and wait for crates.io
519
+ publication before release announcement.
520
+ - Run strict lint checks in postsubmit, install clippy in the shared Rust/`prek` setup,
521
+ and align CI hook usage with release checks.
522
+ - Clarify testty public API tripwire tests and session isolation documentation.
523
+
524
+ ### Contributors
525
+
526
+ - @minev-dev
527
+
528
+ ## [v0.8.5] - 2026-04-27
529
+
530
+ ### Added
531
+
532
+ - Add a regular/draft session creation selector, plus feature-test coverage for
533
+ draft-session cancellation and terminal-session continuation.
534
+ - Allow running sessions to be canceled from the sessions list, and allow unstarted
535
+ draft sessions to be canceled before their worktree is created.
536
+ - Queue follow-up chat messages while a turn is running, render queued messages inline,
537
+ and retract them one at a time with `Ctrl+C` before canceling the active turn.
538
+ - Add GitHub and GitLab review-comment previews in diff mode, background review-request
539
+ refresh, and persisted focused-review output across restarts.
540
+ - Add `gpt-5.4-mini` as a selectable Codex model and show model-specific focused-review
541
+ loading text.
542
+ - Add the `Dark Horizon` theme and refine theme tokens, status colors, and footer
543
+ branch/path styling.
544
+ - Add session worktree isolation checks, main-checkout dirtiness detection, and scoped
545
+ app-server provider approval handling.
546
+ - Add transient workflow notices and committing progress rows for auto-commit, rebase,
547
+ and merge flows.
548
+ - Add the `bump-version` workflow skill and shared release-check setup for
549
+ `prek`-managed CI validation.
550
+ - testty: add the curated `testty::prelude` surface, public API tripwire coverage,
551
+ `SnapshotConfig::with_update_mode`, and Result-returning `match_*` assertion APIs.
552
+
553
+ ### Changed
554
+
555
+ - Question input now uses `Ctrl+C` to end the turn without answering and `q` to return
556
+ to the sessions list from non-text focus, while `Esc` no longer discards in-progress
557
+ question text.
558
+ - Session worktrees and publishes now start from upstream-tracked refs so unpublished
559
+ local base-branch commits stay out of session pull requests and merge requests.
560
+ - Auto-commit handling now treats empty amend results as no-change notices and keeps
561
+ commit/rebase workflow notices outside the final transcript body.
562
+ - `/apply` now requires actionable focused-review suggestions before it can send an
563
+ apply prompt.
564
+ - Open-worktree actions stay hidden while sessions are active, queued, rebasing, or
565
+ merging.
566
+ - Documentation and release automation now use `mdformat` wrapping, a shared Rust/`prek`
567
+ CI setup action, and release guidance in `AGENTS.md` plus `bump-version`.
568
+ - testty: prepare the crate for independent crates.io publication, document the upgrade
569
+ path from earlier `0.x` releases, and make the public snapshot error/config surfaces
570
+ non-exhaustive.
571
+
572
+ ### Removed
573
+
574
+ - testty: remove the public `artifact`, `calibration`, and `overlay` modules, and remove
575
+ `testty::snapshot::is_update_mode()` in favor of per-config update-mode methods.
576
+ - Remove the old `release` skill in favor of the repository release guidance and
577
+ `bump-version` workflow.
578
+
579
+ ### Fixed
580
+
581
+ - Wrap agent prompt diffs before rendering so long diff lines do not overflow the
582
+ session output view.
583
+ - Render queued chat messages without a UI delay.
584
+ - Preserve focused-review cache and visibility across restarts, diff mode, and
585
+ clarification flows.
586
+ - Refresh session tests and end-to-end assertions for cancellation, `/apply` guidance,
587
+ question input, and the new feature demos.
588
+
589
+ ### Contributors
590
+
591
+ - @andagaev
592
+ - @minev-dev
593
+
594
+ ## [v0.8.4] - 2026-04-25
595
+
596
+ ### Added
597
+
598
+ - Queue chat messages while a turn is running and include them in session output.
599
+ - Animate in-progress session output with a Tachyonfx loader.
600
+ - Split settings into global and project sections.
601
+ - Surface FYI guidance for opening commands in the sessions list.
602
+ - Gate `/apply` to verify focused-review suggestions before applying.
603
+
604
+ ### Changed
605
+
606
+ - Render done-session transcript and summary as a single stream.
607
+ - Use semantic text foreground for persisted user prompt content.
608
+ - Align summary markdown spacing with the section layout.
609
+ - Align UI component foreground style with session list text color.
610
+ - Use a stable bar glyph for spinner status indicators.
611
+ - Adopt theme-driven session status colors and broader theme styling refresh.
612
+ - Return interrupted in-progress turns to `Review`.
613
+ - Update `testty` crate description and document the feature module.
614
+
615
+ ### Fixed
616
+
617
+ - Hide focused review output in terminal `Done` and `Canceled` sessions.
618
+
619
+ ### Contributors
620
+
621
+ - @andagaev
622
+ - @minev-dev
623
+
624
+ ## [v0.8.3] - 2026-04-24
625
+
626
+ ### Changed
627
+
628
+ - build: remove pinned version comments from release.yml
629
+
630
+ ### Contributors
631
+
632
+ - @minev-dev
633
+
634
+ ## [v0.8.2] - 2026-04-24
635
+
636
+ ### Added
637
+
638
+ - Animate session loaders with frame-aware rendering.
639
+ - Preserve source session context when creating continuation drafts.
640
+
641
+ ### Changed
642
+
643
+ - Recess clarification prompt background with dedicated palette surface.
644
+ - Route coverage and end-to-end checks to postsubmit.
645
+ - Adopt `cargo-nextest` for workspace tests and coverage.
646
+ - Pin GitHub workflows to immutable action SHAs.
647
+ - Update Context7 setup command.
648
+ - Raise pre-commit source-test coverage thresholds.
649
+
650
+ ### Fixed
651
+
652
+ - Show review fallback status when no review text is available and refresh staged-draft
653
+ sessions immediately.
654
+ - Preserve focused review visibility after completion across prompt, question, and done
655
+ sessions.
656
+ - Preserve user-cancelled turns as canceled sessions.
657
+ - Track turn prompt source to preserve agent payload text.
658
+ - Restrict protocol questions to genuine clarifications.
659
+
660
+ ### Contributors
661
+
662
+ - @andagaev
663
+ - @minev-dev
664
+
665
+ ## [v0.8.1] - 2026-04-24
666
+
667
+ ### Added
668
+
669
+ - Preview review-request comments inside the diff page. Press `d` from a review-ready
670
+ session to open the diff page, then press `c` inside the page to toggle the right
671
+ panel between the git diff and the cached comments. The comments panel lists inline
672
+ threads and pull-request-level "General discussion" comments for GitHub-linked
673
+ sessions; GitLab support is tracked as a follow-up.
674
+ - Add theme setting and theme-aware palette rendering.
675
+ - Add `gpt-5.5` Codex model support.
676
+ - Render session summary above active prompt during in-progress turns.
677
+ - Add session chat FYI action hints.
678
+
679
+ ### Changed
680
+
681
+ - Share session-output layout caching across render and metric paths.
682
+ - Load session transcript details lazily.
683
+ - Refine roadmap linting and planning conventions.
684
+
685
+ ### Fixed
686
+
687
+ - Harden pre-commit validation and fix compile errors.
688
+ - Shut down router sessions concurrently.
689
+
690
+ ### Contributors
691
+
692
+ - @andagaev
693
+ - @dependabot[bot]
694
+ - @minev-dev
695
+
696
+ ## [v0.8.0] - 2026-04-21
697
+
698
+ ### Added
699
+
700
+ - Add terminal session continuation that seeds a new session from completed or canceled
701
+ work.
702
+ - Add `/apply` so focused-review suggestions can be sent back to the agent as a new
703
+ prompt.
704
+ - Add background review-request polling plus refreshed session-view guidance and demo
705
+ coverage.
706
+
707
+ ### Changed
708
+
709
+ - Refactor app orchestration, database repositories, and UI layout/state into narrower
710
+ modules with typed `SessionId` handling.
711
+ - Improve forge workflow handling, including remote working-directory GitHub CLI
712
+ execution and stacked review-request planning.
713
+ - Refresh release-policy, workflow, keybinding, and architecture documentation for the
714
+ new session and review flows.
715
+
716
+ ### Fixed
717
+
718
+ - Add SQLite busy-timeout handling and align WAL persistence settings for more reliable
719
+ session storage.
720
+ - Debounce stale `@`-mention loading, clear pending session tasks correctly, and
721
+ preserve focused-review output through clarification flows.
722
+
723
+ ### Contributors
724
+
725
+ - @andagaev
726
+ - @minev-dev
727
+
728
+ ## [v0.7.9] - 2026-04-18
729
+
730
+ ### Changed
731
+
732
+ - Switch session worktree and branch naming from `agentty/` to `wt/` for brevity.
733
+ - Use detected session branch names in status and footer display.
734
+
735
+ ### Contributors
736
+
737
+ - @minev-dev
738
+
739
+ ## [v0.7.8] - 2026-04-17
740
+
741
+ ### Changed
742
+
743
+ - Migrate retired `claude-opus-4-6` model IDs to `claude-opus-4-7`.
744
+ - Disable Agentty coauthor trailer by default for new projects.
745
+ - Replace `pre-commit` references with `prek` across CI and documentation.
746
+ - Unify review publish input handling in session view.
747
+ - Update `README.md` project overview and installation guidance.
748
+
749
+ ### Removed
750
+
751
+ - Remove selectable `claude-opus-4-6` model (migrated to `claude-opus-4-7`).
752
+
753
+ ### Contributors
754
+
755
+ - @minev-dev
756
+
757
+ ## [v0.7.7] - 2026-04-16
758
+
759
+ ### Added
760
+
761
+ - Add `ClaudeOpus47` model variant and set it as the default Claude model.
762
+ - Allow canceling unstarted draft sessions from the session list.
763
+ - Add render hot-path documentation for shared markdown caches.
764
+
765
+ ### Changed
766
+
767
+ - Reorder session output rendering by chronological state.
768
+ - Update `setup-uv` GitHub Action to v8.1.0 in CI workflows.
769
+ - Review commit workflow guidance and align CI with pre-commit validation.
770
+
771
+ ### Fixed
772
+
773
+ - Load @-mention entries from project root for unmaterialized draft sessions.
774
+ - Stabilize settings navigation E2E with seeded model settings.
775
+
776
+ ### Contributors
777
+
778
+ - @andagaev
779
+ - @minev-dev
780
+
781
+ ## [v0.7.6] - 2026-04-16
782
+
783
+ ### Changed
784
+
785
+ - Upgrade `cargo-dist` to 0.31.0.
786
+
787
+ ### Contributors
788
+
789
+ - @minev-dev
790
+
791
+ ## [v0.7.5] - 2026-04-15
792
+
793
+ ### Added
794
+
795
+ - Add Gemini `--acp` command invocations with cached app-session identifiers.
796
+ - Add session-output status updates for post-turn published-branch auto-pushes.
797
+
798
+ ### Changed
799
+
800
+ - Delay draft-session worktree creation until the staged bundle starts so the branch is
801
+ based on the latest local base branch.
802
+ - Split branch publishing onto `p` and forge review-request publishing onto `Shift+P`,
803
+ with the same optional custom branch-name flow.
804
+
805
+ ### Fixed
806
+
807
+ - Improve directory fuzzy matching in agent prompt path lookups.
808
+ - Hide stale focused-review output after merge and stabilize auto-review startup timing.
809
+
810
+ ### Removed
811
+
812
+ - Remove the session deletion confirmation flow.
813
+
814
+ ### Contributors
815
+
816
+ - @andagaev
817
+ - @minev-dev
818
+
819
+ ## [v0.7.4] - 2026-04-13
820
+
821
+ ### Added
822
+
823
+ - Add GitLab support to forge review requests.
824
+ - Add `feature-test` skill for E2E tests with VHS GIF generation.
825
+
826
+ ### Changed
827
+
828
+ - Auto-sync already-published session branches after completed turns.
829
+ - Consolidate review-request publishing under `p`.
830
+
831
+ ### Contributors
832
+
833
+ - @andagaev
834
+ - @minev-dev
835
+
836
+ ## [v0.7.3] - 2026-04-08
837
+
838
+ ### Added
839
+
840
+ - Render roadmap-backed Tasks tab.
841
+ - Display active model in session header.
842
+
843
+ ### Changed
844
+
845
+ - Clarify Forge roadmap for GitHub Shift+P publish shortcut.
846
+
847
+ ### Contributors
848
+
849
+ - @minev-dev
850
+
851
+ ## [v0.7.2] - 2026-04-07
852
+
853
+ ### Added
854
+
855
+ - Add review request sync action and forge indicators in session view.
856
+ - Add `Ctrl+c` stop-session shortcut in session view.
857
+ - Render inline markdown formatting in session titles.
858
+
859
+ ### Changed
860
+
861
+ - Color forge indicators by review-request state in session list.
862
+ - Add `FeatureDemo` builder to testty and migrate E2E tests to `FeatureTest`.
863
+ - Add stub agent executables to e2e test environment for CI compatibility.
864
+
865
+ ### Contributors
866
+
867
+ - @minev-dev
868
+
869
+ ## [v0.7.1] - 2026-04-04
870
+
871
+ ### Added
872
+
873
+ - Add session-scoped reasoning overrides.
874
+ - Add conditional Tasks tab for roadmap-enabled projects.
875
+ - Add interactive Mermaid controls and fit behavior to docs pages.
876
+ - Add prefilled slash composer from session view.
877
+ - Add transient `AgentReview` status for focused review generation.
878
+
879
+ ### Changed
880
+
881
+ - Trigger immediate git status refresh after successful workflow outcomes.
882
+ - Synchronize staged draft titles with active prompt snapshots.
883
+ - Rename slash prompt action to commands menu.
884
+ - Improve selected session list status contrast.
885
+ - Constrain draft prompt routing to new sessions.
886
+ - Normalize @lookups for agent delivery while preserving raw prompt text.
887
+ - Refactor prompt composer into shared domain module.
888
+ - Preserve focused review when exiting diff mode and suppress rebase during
889
+ `AgentReview`.
890
+ - Refine docs table wrapping, runtime-flow guidance, and session workflow diagrams.
891
+ - Adopt promotion-based roadmap ownership process.
892
+
893
+ ### Fixed
894
+
895
+ - Fix legacy Codex usage migration (`gpt-5.3-codex` to `gpt-5.4`).
896
+ - Handle Gemini ACP usage parsing for additional quota payload formats.
897
+
898
+ ### Dependencies
899
+
900
+ - Bump `agent-client-protocol` from 0.10.3 to 0.10.4.
901
+
902
+ ### Contributors
903
+
904
+ - @dependabot[bot]
905
+ - @minev-dev
906
+
907
+ ## [v0.7.0] - 2026-04-02
908
+
909
+ ### Added
910
+
911
+ - Add diff preview from question mode with state snapshot restoration.
912
+ - Add protocol-repair retry for malformed agent responses.
913
+ - Add session lifecycle E2E tests and shared git/session helpers.
914
+ - Add quality check guidance to protocol instructions.
915
+ - Add VHS feature GIF generation from E2E tests with content-hash caching.
916
+
917
+ ### Changed
918
+
919
+ - Keep completed-turn metadata above active streaming prompt.
920
+ - Batch reducer handling of repeated `AgentResponseReceived` events.
921
+ - Refine branch push authentication guidance and cancel summary handling.
922
+ - Cache turn applied state in reducer batch.
923
+ - Modularize app startup, review, and persistence helpers.
924
+ - Refactor app-server runtimes into focused modules.
925
+ - Apply reducer projection for completed turns.
926
+ - Queue VHS feature GIF generation and Zola auto-discovery roadmap slices.
927
+
928
+ ### Contributors
929
+
930
+ - @andagaev
931
+ - @minev-dev
932
+
933
+ ## [v0.6.12] - 2026-04-01
934
+
935
+ ### Added
936
+
937
+ - Add draft session workflow state and staged draft metadata handling.
938
+ - Add session diff stats plus base and remote git status tracking in the UI.
939
+ - Add broader unit and E2E coverage, including modular `testty`-backed session,
940
+ navigation, confirmation, and showcase flows.
941
+ - Add a features page with per-feature GIF demos to the docs site.
942
+
943
+ ### Changed
944
+
945
+ - Persist and reuse app-server instruction bootstrap state across restored sessions.
946
+ - Scope model selection and auto-commit defaults to locally runnable backends and
947
+ project setting names.
948
+ - Propagate typed error enums through app, session, app-server transport, and CLI
949
+ boundaries.
950
+ - Restrict follow-up tasks to code changes and default new follow-up prompts to the
951
+ first available task.
952
+ - Restructure E2E coverage into multi-module tests and refresh roadmap planning
953
+ guidance.
954
+
955
+ ### Contributors
956
+
957
+ - @andagaev
958
+ - @minev-dev
959
+
960
+ ## [v0.6.11] - 2026-03-28
961
+
962
+ ### Added
963
+
964
+ - Launch and reopen sibling sessions from follow-up tasks.
965
+ - Show session active-work timers and metadata in UI lists.
966
+ - Add `testty` E2E proof pipeline with native rendering and frame diffing.
967
+ - Add roadmap queue tooling and planning workflows.
968
+
969
+ ### Changed
970
+
971
+ - Migrate E2E tests to the `testty` proof pipeline and remove the `check-indexes` hook.
972
+ - Propagate typed errors through app, session, and infra layers.
973
+ - Keep unchanged review sessions in view mode.
974
+ - Remove GitLab review request support.
975
+ - Streamline prompt suggestion handling and question-mode interactions.
976
+ - Replace directory indexes with semantic agent guidance.
977
+
978
+ ### Contributors
979
+
980
+ - @andagaev
981
+ - @dependabot
982
+ - @minev-dev
983
+
984
+ ## [v0.6.10] - 2026-03-26
985
+
986
+ ### Added
987
+
988
+ - Add a docs-site blog section.
989
+ - Add roadmap metadata requirements for step headings, IDs, assignees, and claim
990
+ commits.
991
+
992
+ ### Changed
993
+
994
+ - Rename the Rust-native TUI E2E crate from `ag-tui-test` to `testty` and prepare it for
995
+ crates.io publishing.
996
+ - Remove the manual review-request sync flow and keep `end_turn_no_answer` aligned with
997
+ `Review`.
998
+ - Refocus implementation-roadmap guidance on active follow-up work and simpler step
999
+ operations.
1000
+ - Remove `#[ignore]` gates from E2E tests.
1001
+ - Clarify session commit prompt guidance to consult repository commit conventions.
1002
+
1003
+ ### Contributors
1004
+
1005
+ - @andagaev
1006
+ - @minev-dev
1007
+
1008
+ ## [v0.6.9] - 2026-03-25
1009
+
1010
+ ### Added
1011
+
1012
+ - Add `s` keybinding to sync review request status in session view.
1013
+ - Add `testty` TUI E2E testing framework with PTY-driven semantic assertions.
1014
+
1015
+ ### Changed
1016
+
1017
+ - Migrate git infrastructure module from `Result<..., String>` to typed `GitError`.
1018
+ - Tolerate extra fields in protocol deserialization while keeping schema strict.
1019
+ - Improve protocol parse diagnostics.
1020
+ - Separate summary transcript from streamed output.
1021
+ - Strip markdown fences in protocol parser.
1022
+ - Dim question panel when chat input is focused.
1023
+
1024
+ ### Fixed
1025
+
1026
+ - Fix wrapped plain-text utility output test assertion after diagnostics refactor.
1027
+
1028
+ ### Contributors
1029
+
1030
+ - @andagaev
1031
+ - @minev-dev
1032
+
1033
+ ## [v0.6.8] - 2026-03-19
1034
+
1035
+ ### Added
1036
+
1037
+ - Add a scrollbar to long diffs.
1038
+
1039
+ ### Changed
1040
+
1041
+ - Change Esc in question mode to end the turn instead of skipping one question.
1042
+ - Clarify read-only git command guidance in agent prompts.
1043
+ - Refine Rust-native TUI E2E framework plan.
1044
+
1045
+ ### Fixed
1046
+
1047
+ - Recover trailing protocol payload from wrapped provider output.
1048
+
1049
+ ### Contributors
1050
+
1051
+ - @andagaev
1052
+ - @minev-dev
1053
+
1054
+ ## [v0.6.7] - 2026-03-19
1055
+
1056
+ ### Added
1057
+
1058
+ - Add session follow-up task implementation plan.
1059
+
1060
+ ### Changed
1061
+
1062
+ - Require strict protocol JSON for Codex, utility, and all agent responses.
1063
+ - Prefer structured Gemini completion payload and accept wire-type defaults.
1064
+ - Track published session branch git statuses across refreshes.
1065
+ - Support keyboard enhancement flags in terminal runtime.
1066
+ - Optimize session activity and refresh queries.
1067
+ - Limit home-directory project scans to startup.
1068
+ - Clarify that agents do not create commits automatically.
1069
+
1070
+ ### Contributors
1071
+
1072
+ - @minev-dev
1073
+
1074
+ ## [v0.6.6] - 2026-03-18
1075
+
1076
+ ### Added
1077
+
1078
+ - Add VHS-based E2E testing framework with screenshot comparison.
1079
+
1080
+ ### Changed
1081
+
1082
+ - Refresh session workflow and settings docs.
1083
+ - Keep tracked upstream branches current in the footer.
1084
+ - Keep prompt file index unbounded within max depth.
1085
+ - Keep publish branch shortcut keys in the input field.
1086
+ - Extract shared input key utilities and add emacs-style editing to question input.
1087
+ - Document shared-host test thread budget.
1088
+
1089
+ ### Refactored
1090
+
1091
+ - Introduce typed `DbError` for database operations.
1092
+
1093
+ ### Fixed
1094
+
1095
+ - Confirm review session cancellation.
1096
+
1097
+ ### Contributors
1098
+
1099
+ - @andagaev
1100
+ - @minev-dev
1101
+
1102
+ ## [v0.6.5] - 2026-03-17
1103
+
1104
+ ### Added
1105
+
1106
+ - Add `AGENTS.md` files for app-server, CLI, and shared modules.
1107
+ - Add the tech debt error handling implementation plan.
1108
+
1109
+ ### Changed
1110
+
1111
+ - Publish session branches with `git push --force-with-lease`.
1112
+ - Update agent test expectations for generic agent wording and the current commit
1113
+ message model.
1114
+
1115
+ ### Contributors
1116
+
1117
+ - @andagaev
1118
+ - @minev-dev
1119
+
1120
+ ## [v0.6.4] - 2026-03-16
1121
+
1122
+ ### Refactored
1123
+
1124
+ - Refactor provider routing and shared app-server helpers.
1125
+ - Stream Claude responses with live schema-validated events.
1126
+
1127
+ ### Contributors
1128
+
1129
+ - @minev-dev
1130
+
1131
+ ## [v0.6.3] - 2026-03-16
1132
+
1133
+ ### Added
1134
+
1135
+ - Add tech-debt and security-audit analysis skills.
1136
+ - Add at-mention file completion to question mode.
1137
+ - Pass `--effort` flag to Claude CLI based on reasoning level.
1138
+ - Generate protocol profiles with self-descriptive schemas.
1139
+
1140
+ ### Changed
1141
+
1142
+ - Refactor agent prompt preparation and split protocol subsystem.
1143
+ - Move app-server clients under agent backends.
1144
+ - Append change summaries and preserve summary payloads.
1145
+ - Format done session summary as markdown sections.
1146
+ - Parameterize runtime over generic `Backend` for in-process TUI testing.
1147
+ - Restrict `a` (new session) shortcut to the Sessions tab.
1148
+ - Finish typed SQLx query mapping cleanup.
1149
+ - Refine implementation plans for meta-agent skills and execution backends.
1150
+
1151
+ ### Fixed
1152
+
1153
+ - Keep prompt mention state in sync with cursor.
1154
+ - Fix footer bar branch rendering.
1155
+
1156
+ ### Contributors
1157
+
1158
+ - @andagaev
1159
+ - @minev-dev
1160
+
1161
+ ## [v0.6.2] - 2026-03-12
1162
+
1163
+ ### Added
1164
+
1165
+ - Add multi-installer auto-update implementation plans.
1166
+
1167
+ ### Changed
1168
+
1169
+ - Make filesystem reads asynchronous.
1170
+ - Unify protocol instruction prompt templates.
1171
+ - Refactor publish branch input mode handling.
1172
+ - Document setting keys and simplify publish updates.
1173
+ - Refine session commit coauthor trailer handling.
1174
+ - Expand session database and app regression test coverage.
1175
+ - Handle startup app initialization errors gracefully.
1176
+
1177
+ ### Fixed
1178
+
1179
+ - Fix test and rebase mock failures on main.
1180
+
1181
+ ### Contributors
1182
+
1183
+ - @andagaev
1184
+ - @minev-dev
1185
+
1186
+ ## [v0.6.1] - 2026-03-12
1187
+
1188
+ ### Added
1189
+
1190
+ - Add background auto-update with status bar progress and `--no-update` flag.
1191
+ - Add codecov badge to README.
1192
+ - Add postsubmit coverage workflow.
1193
+ - Add chat output scrolling to question-answer mode.
1194
+
1195
+ ### Contributors
1196
+
1197
+ - @andagaev
1198
+ - @minev-dev
1199
+
1200
+ ## [v0.6.0] - 2026-03-11
1201
+
1202
+ ### Added
1203
+
1204
+ - Support pasted prompt images across all session backends.
1205
+ - Add auto-update implementation plan.
1206
+
1207
+ ### Changed
1208
+
1209
+ - Session prompt footer uses shared help styling.
1210
+ - Simplify auto-update plan to background npm install with status bar progress.
1211
+ - Add test failure protocol to quality gates in AGENTS.md.
1212
+ - Update test prompt assignments to use `.into()` conversion.
1213
+ - Plan docs omit rendered size sections.
1214
+ - Stream Claude and Gemini prompts through stdin.
1215
+ - Surface Claude auth guidance for command failures.
1216
+ - Harden prompt image workflow lifecycle.
1217
+
1218
+ ### Contributors
1219
+
1220
+ - @andagaev
1221
+ - @minev-dev
1222
+
1223
+ ## [v0.5.11] - 2026-03-11
1224
+
1225
+ ### Changed
1226
+
1227
+ - Track prompt image attachments in prompt mode.
1228
+ - Add size budgets to implementation plans.
1229
+ - Clarify implementation-plan AGENTS purpose.
1230
+ - Rename implementation plan priorities to steps.
1231
+ - Standardize titled substeps in implementation plans.
1232
+ - Consolidate architecture guide map into landing page.
1233
+ - Document single evolving session commit flow.
1234
+
1235
+ ### Contributors
1236
+
1237
+ - @minev-dev
1238
+
1239
+ ## [v0.5.10] - 2026-03-10
1240
+
1241
+ ### Changed
1242
+
1243
+ - Refine detached session rollout plan.
1244
+ - Branch push adds forge review request links.
1245
+ - Refine prompt image paste plan.
1246
+
1247
+ ### Contributors
1248
+
1249
+ - @minev-dev
1250
+
1251
+ ## [v0.5.9] - 2026-03-10
1252
+
1253
+ ### Changed
1254
+
1255
+ - Align implementation plans with updated skill rules.
1256
+ - Scope prompt image paste plan to session chat composer.
1257
+ - Generate session commit messages from cumulative diffs.
1258
+ - Prefer shallower file index matches.
1259
+
1260
+ ### Contributors
1261
+
1262
+ - @minev-dev
1263
+
1264
+ ## [v0.5.8] - 2026-03-10
1265
+
1266
+ ### Fixed
1267
+
1268
+ - **Git:** Ignore HTTPS userinfo in remote parsing.
1269
+
1270
+ ### Contributors
1271
+
1272
+ - @minev-dev
1273
+
1274
+ ## [v0.5.7] - 2026-03-10
1275
+
1276
+ ### Added
1277
+
1278
+ - **Plan:** Add session commit message flow plan.
1279
+ - **UI:** Add branch publish popup for custom remote targets.
1280
+ - **Session:** Persist published upstream refs for sessions.
1281
+ - **Architecture:** Extract forge review-request code into `ag-forge`.
1282
+
1283
+ ### Changed
1284
+
1285
+ - **UI:** Replace review request flow with manual branch publish.
1286
+ - **Projects:** Skip stale project directories in project list.
1287
+ - **Docs:** Replace docs plan symlinks with explicit indexes and format plan headings.
1288
+
1289
+ ### Contributors
1290
+
1291
+ - @minev-dev
1292
+
1293
+ ## [v0.5.6] - 2026-03-09
1294
+
1295
+ ### Added
1296
+
1297
+ - **Agent:** Add predefined answer options for agent questions.
1298
+ - **Agent:** Add mandatory per-turn change summaries to agent protocol.
1299
+ - **Infra:** Implement forge CLI review-request adapters (GitHub/GitLab PR/MR
1300
+ workflows).
1301
+ - **UI:** Add session view review request workflows (create, open, refresh).
1302
+ - **UI:** Show project scope in list tabs.
1303
+ - **Settings:** Scope settings per project.
1304
+ - **Review:** Auto-start focused review generation on session Review transition and
1305
+ cache results.
1306
+
1307
+ ### Changed
1308
+
1309
+ - **UI:** Change focused review navigation to open/regenerate with exit key.
1310
+ - **UI:** Remove external editor shortcut (`e`).
1311
+ - **Git:** Remove session worktrees when review sessions are canceled.
1312
+
1313
+ ### Contributors
1314
+
1315
+ - @andagaev
1316
+ - @dependabot[bot]
1317
+ - @minev-dev
1318
+
1319
+ ## [v0.5.5] - 2026-03-07
1320
+
1321
+ ### Added
1322
+
1323
+ - **Skill:** Add `implementation-plan` skill for managing project plans.
1324
+ - **Docs:** Add Forge review request support plan.
1325
+ - **Docs:** Add GitHub issue form templates and directory indexing.
1326
+ - **Infra:** Add default pull request template for the repository.
1327
+ - **UI:** Add Agentty info panel to the project list.
1328
+ - **UI:** Chat panel gets polished chrome and unified overlay styling with dimmed
1329
+ backdrop.
1330
+
1331
+ ### Changed
1332
+
1333
+ - **Codex:** Promote `gpt-5.4` as the default Codex model.
1334
+ - **UI:** Keep question input visible in tight terminal layouts.
1335
+ - **Docs:** Refine Agentty description.
1336
+
1337
+ ### Fixed
1338
+
1339
+ - **Skill:** Clarify requirements and plan structure for `implementation-plan` skill.
1340
+
1341
+ ### Contributors
1342
+
1343
+ - @minev-dev
1344
+
1345
+ ## [v0.5.4] - 2026-03-06
1346
+
1347
+ ### Added
1348
+
1349
+ - **Docs:** Define plan template and add test coverage improvement plan.
1350
+ - **UI:** Add background tints for changed lines in diff view.
1351
+
1352
+ ### Changed
1353
+
1354
+ - **UI:** Tab bar gains separators and muted border styling.
1355
+
1356
+ ### Contributors
1357
+
1358
+ - @minev-dev
1359
+
1360
+ ## [v0.5.3] - 2026-03-06
1361
+
1362
+ ### Added
1363
+
1364
+ - **UI:** Support `Alt+Enter` and `Shift+Enter` newline entry across settings and
1365
+ prompt.
1366
+ - **Session:** Generate session titles from user intent when the first start turn
1367
+ begins.
1368
+
1369
+ ### Changed
1370
+
1371
+ - **UI:** Migrate UI color usage to semantic palette tokens.
1372
+ - **UI:** Refresh table visual styling across list and stats pages.
1373
+ - **UI:** Render clarification prompts with distinct spacing and styling.
1374
+ - **UI:** Render footer help as styled keybinding lines.
1375
+ - **UI:** Session list uses shared page margin.
1376
+ - **UI:** Stop `@mention` highlighting before trailing punctuation.
1377
+ - **Session Output:** Improve verbatim markdown wrapping and Unicode width handling.
1378
+ - **Session Output:** Preserve multiline user prompts across persistence and rendering.
1379
+ - **Review:** Tighten review suggestion severity criteria and require concise actionable
1380
+ suggestions.
1381
+ - **Architecture:** Refactor module roots into router-only modules.
1382
+ - **Claude:** Enforce strict MCP config for Claude backend.
1383
+ - **Docs:** Reframe UI beautification plan around implementation status.
1384
+
1385
+ ### Fixed
1386
+
1387
+ - **Session Output:** Prevent duplicate final assistant output after streaming.
1388
+
1389
+ ### Contributors
1390
+
1391
+ - @minev-dev
1392
+
1393
+ ## [v0.5.2] - 2026-03-05
1394
+
1395
+ ### Added
1396
+
1397
+ - **UI:** Support multiline open command editing in the settings tab.
1398
+ - **UI:** Render session status header directly above the output panel.
1399
+ - **Session:** Add open command selector when multiple launch commands are configured
1400
+ for a worktree.
1401
+ - **Docs:** Add `CLAUDE` and `GEMINI` symlinks for module-level `AGENTS.md` files.
1402
+
1403
+ ### Changed
1404
+
1405
+ - **Architecture:** Rename `app` and `ui` module roots to singular names (`app.rs`,
1406
+ `ui.rs`, `domain.rs`, `infra.rs`, `runtime.rs`).
1407
+ - **Architecture:** Parse merge commit messages from structured protocol output.
1408
+ - **Architecture:** Harden `AGENTS.md` index validation and normalize directory index
1409
+ links.
1410
+ - **Docs:** Prevent content and table-of-contents text overflow on the documentation
1411
+ site.
1412
+ - **Docs:** Expand runtime flow documentation and add doc comments across migration,
1413
+ runtime, UI, and database helpers.
1414
+
1415
+ ### Contributors
1416
+
1417
+ - @minev-dev
1418
+
1419
+ ## [v0.5.1] - 2026-03-04
1420
+
1421
+ ### Added
1422
+
1423
+ - **UI:** Show active session count in the project list.
1424
+ - **Review:** Run focused review assist in isolated start mode.
1425
+ - **Docs:** Split architecture documentation into a dedicated section and document
1426
+ structured response protocol.
1427
+
1428
+ ### Changed
1429
+
1430
+ - **Protocol:** Harden structured protocol handling across providers.
1431
+ - **Architecture:** Standardize module-oriented imports across the `app` and `ui`
1432
+ layers.
1433
+ - **Architecture:** Align architecture docs with runtime mode, channel schema, and test
1434
+ boundaries.
1435
+ - **Quality:** Require explicit user approval to retain legacy behavior during
1436
+ development.
1437
+
1438
+ ### Fixed
1439
+
1440
+ - **UI:** Fix active session count calculation to exclude `Question` status and ensure
1441
+ projects reload on session refresh.
1442
+
1443
+ ### Contributors
1444
+
1445
+ - @minev-dev
1446
+ - @andagaev
1447
+
1448
+ ## [v0.5.0] - 2026-03-04
1449
+
1450
+ ### Added
1451
+
1452
+ - **UI:** Handle agent clarification questions in a dedicated question mode with
1453
+ persistent history.
1454
+ - **UI:** Highlight `@mention` tokens in chat input.
1455
+ - **UI:** Improve chat input wrapping and viewport scrolling.
1456
+ - **UI:** Align session output wrapping with panel borders.
1457
+ - **Architecture:** Switch agent output to schema-validated JSON messages and normalize
1458
+ assist protocol output.
1459
+ - **Architecture:** Inject `FsClient` and `Clock` dependencies into session workflows
1460
+ for better testability.
1461
+ - **Architecture:** Route session stats and filesystem workflows through the app layer.
1462
+ - **Docs:** Add diff-first verification guidance and refine site responsiveness.
1463
+
1464
+ ### Changed
1465
+
1466
+ - **Session:** Move first-turn title generation to the start-turn worker and use plain
1467
+ text.
1468
+ - **Session:** Filter Codex thought/reasoning text from persisted assistant output and
1469
+ handle it separately during streaming.
1470
+ - **Session:** Remove plan messages from the agent response protocol.
1471
+ - **Session:** Prefer active sessions for initial selection in the UI.
1472
+ - **Protocol:** Prefer agent message content over trailing reasoning payloads.
1473
+
1474
+ ### Removed
1475
+
1476
+ - **UI:** Remove session stop shortcut (`Ctrl+c`) and stop-session flow.
1477
+ - **Architecture:** Remove unused `nix` dependency.
1478
+
1479
+ ### Fixed
1480
+
1481
+ - **Session:** Ensure merge cleanup (worktree/branch removal) completes before marking
1482
+ session as `Done`.
1483
+ - **Sync:** Optimize session output synchronization for append-heavy updates.
1484
+ - **Review:** Parse structured agent responses in focused review assist correctly.
1485
+
1486
+ ### Contributors
1487
+
1488
+ - @minev-dev
1489
+ - @andagaev
1490
+
1491
+ ## [v0.4.7] - 2026-03-04
1492
+
1493
+ ### Added
1494
+
1495
+ - **UI:** Add `Ctrl+u` prompt-line deletion and intent-aware confirmations for merge,
1496
+ delete, and quit actions.
1497
+ - **Settings:** Persist Codex reasoning levels and propagate reasoning identifiers
1498
+ through runtime integrations.
1499
+ - **Environment:** Allow `AGENTTY_ROOT` to override the default agentty data root.
1500
+
1501
+ ### Changed
1502
+
1503
+ - **UI:** Remove the session list project column and highlight the active project name
1504
+ in the `Sessions` tab.
1505
+ - **Session:** Preserve live session state during reload and unify child PID propagation
1506
+ across assist/rebase/merge flows.
1507
+ - **Docs:** Split usage docs into dedicated workflow and keybindings pages and refine
1508
+ rebase conflict guidance.
1509
+ - **Quality:** Require full validation checks during execution and standardize the full
1510
+ test command to single-threaded runs.
1511
+
1512
+ ### Fixed
1513
+
1514
+ - **Tests:** Refresh stale assertions after settings/help text updates.
1515
+
1516
+ ### Contributors
1517
+
1518
+ - @minev-dev
1519
+ - @andagaev
1520
+
1521
+ ## [v0.4.6] - 2026-03-02
1522
+
1523
+ ### Added
1524
+
1525
+ - **UI:** Add structured question-answer flow between agents and users.
1526
+ - **UI:** Add stable paragraph anchor links and dual sidebars in docs.
1527
+ - **UI:** Colorize added/removed line counts in diff page title.
1528
+ - **UI:** Project list highlights active project.
1529
+ - **Docs:** Add design and architecture documentation page.
1530
+ - **Docs:** Add GitHub metadata badges and right-side anchor links.
1531
+ - **Docs:** Add tooling setup instructions for `uv` and `pre-commit`.
1532
+ - **Session:** Generate session titles once in background and refine generation
1533
+ instructions.
1534
+ - **Session:** Persist and resume provider-native conversation identifiers across
1535
+ restarts.
1536
+ - **Architecture:** Add structured agent response protocol with metadata delimiter.
1537
+ - **Architecture:** Unify session turn execution through agent channels.
1538
+
1539
+ ### Changed
1540
+
1541
+ - **Codex:** Load usage limits lazily and remove usage panel/polling.
1542
+ - **Codex:** Update model defaults and remove `gpt-5.2-codex`.
1543
+ - **UI:** Refine info overlay and session list padding.
1544
+ - **Architecture:** Extract process boundaries (tmux, editor, sync) and inject
1545
+ dependencies (clock, sleeper, git) for better testability.
1546
+ - **Architecture:** Propagate assistant phase metadata in app-server streams.
1547
+ - **Sync:** Render sync success details as markdown sections.
1548
+
1549
+ ### Fixed
1550
+
1551
+ - **Session:** Harden runtime shutdown I/O and handle Claude partial streaming.
1552
+ - **UI:** Harden diff selection fallback and simplify sync commit title formatting.
1553
+
1554
+ ### Contributors
1555
+
1556
+ - @minev-dev
1557
+ - @andagaev
1558
+
1559
+ ## [v0.4.5] - 2026-03-01
1560
+
1561
+ ### Added
1562
+
1563
+ - **UI:** Add Cmd+Backspace current-line deletion in prompt.
1564
+ - **Settings:** Add default review model and separate default smart/fast model settings.
1565
+ - **Review:** Enforce read-only constraints for focused review assist and refine prompt
1566
+ structure.
1567
+
1568
+ ### Changed
1569
+
1570
+ - **UI:** Show diff line-change totals in diff panel title.
1571
+ - **UI:** Center loading sync text in info overlay and show only OK action.
1572
+ - **Sync:** Improve sync completion details and info overlay presentation; show newly
1573
+ pulled commit titles.
1574
+ - **Settings:** Rename DevServer setting to OpenCommand.
1575
+ - **Session:** Session manager replays review history after restart.
1576
+ - **Tokens:** Read turn usage from thread token usage updates.
1577
+ - **Codex:** Adjust auto-compaction threshold by model.
1578
+ - **Docs:** Style docs tables with borders, hover states, and responsive scrolling.
1579
+
1580
+ ### Removed
1581
+
1582
+ - **Backend:** Remove env-based backend selection (`AGENTTY_AGENT`).
1583
+ - **Startup:** Remove lock module from runtime startup.
1584
+
1585
+ ### Fixed
1586
+
1587
+ - **Review:** Prevent runtime leaks and simplify focused review handling.
1588
+
1589
+ ### Contributors
1590
+
1591
+ - @minev-dev
1592
+ - @andagaev
1593
+
1594
+ ## [v0.4.4] - 2026-02-28
1595
+
1596
+ ### Added
1597
+
1598
+ - **UI:** Add focused review mode to session view and diff mode.
1599
+ - **Docs:** Add MCP docs section, Context7 setup guide, and workflow documentation.
1600
+ - **Codex:** Enable live web search and network access.
1601
+ - **Docs:** Redirect docs landing page to getting started overview.
1602
+
1603
+ ### Changed
1604
+
1605
+ - **UI:** Keep info overlay action row visible for multiline messages.
1606
+ - **UI:** Handle shifted J/K scrolling in diff mode and block actions for canceled
1607
+ sessions.
1608
+ - **Sync:** Improve sync popup guidance for push authentication failures and render sync
1609
+ success metrics on separate lines.
1610
+ - **Git:** Set non-interactive git prompt defaults for repo commands.
1611
+ - **Architecture:** Backend command construction uses one build API.
1612
+
1613
+ ### Contributors
1614
+
1615
+ - @minev-dev
1616
+
1617
+ ## [v0.4.3] - 2026-02-26
1618
+
1619
+ ### Added
1620
+
1621
+ - **ACP:** Integrate typed Gemini ACP protocol transport and tests.
1622
+ - **ACP:** Send empty Gemini ACP client capabilities on initialize.
1623
+ - **Session:** Use Askama templates for session prompts and propagate render errors.
1624
+
1625
+ ### Changed
1626
+
1627
+ - **Gemini:** Remove reconnect banner and rename Gemini stdout reader.
1628
+
1629
+ ### Contributors
1630
+
1631
+ - @minev-dev
1632
+ - @andagaev
1633
+
1634
+ ## [v0.4.2] - 2026-02-26
1635
+
1636
+ ### Added
1637
+
1638
+ - **Codex:** Add auto-compact support for Codex app-server sessions.
1639
+
1640
+ ### Contributors
1641
+
1642
+ - @minev-dev
1643
+
1644
+ ## [v0.4.1] - 2026-02-26
1645
+
1646
+ ### Added
1647
+
1648
+ - **UI:** Add `Shift+Arrow` and `Alt/Shift+Backspace` word-wise cursor movement in
1649
+ prompt mode.
1650
+ - **Models:** Stream Gemini assistant chunks to the UI during turns and handle ACP
1651
+ permission requests.
1652
+ - **Skills:** Add code review skill.
1653
+ - **Tests:** Add regression tests and improve coverage with mocked clients.
1654
+
1655
+ ### Changed
1656
+
1657
+ - **UI:** Project switcher supports `j`/`k` navigation, unfiltered list navigation, and
1658
+ visible selection.
1659
+ - **UI:** Report sync outcome details in completion popup and keep confirmation choices
1660
+ visible.
1661
+ - **UX:** List mode opens canceled sessions on `Enter`.
1662
+ - **Models:** Codex resume uses `--last` only without replay history and enforces high
1663
+ reasoning effort.
1664
+ - **Models:** Rename Gemini Pro preview variant to Gemini 3.1.
1665
+ - **Session Output:** Keep clean auto-commit silent, report no-op states, and ignore
1666
+ synthetic Codex completion messages.
1667
+ - **Architecture:** Centralize git command execution and isolate Codex usage-limit
1668
+ loading.
1669
+ - **Docs:** Update documentation to highlight Agentty self-hosting and align docs page
1670
+ widths.
1671
+
1672
+ ### Fixed
1673
+
1674
+ - **Models:** Handle Gemini `session/new` error responses explicitly and ignore empty
1675
+ assistant chunks.
1676
+ - **UI:** Stabilize site header across routes.
1677
+
1678
+ ### Removed
1679
+
1680
+ - **UI:** Remove quick project switcher mode and overlay.
1681
+
1682
+ ### Contributors
1683
+
1684
+ - @andagaev
1685
+ - @minev-dev
1686
+
1687
+ ## [v0.4.0] - 2026-02-24
1688
+
1689
+ ### Added
1690
+
1691
+ - **Projects:** Add a projects tab with quick project switching.
1692
+ - **Navigation:** Add backward tab navigation with `Shift+Tab`.
1693
+ - **Docs:** Add the getting started overview guide.
1694
+
1695
+ ### Changed
1696
+
1697
+ - **App:** Resolve main repository roots via git and exclude session worktrees.
1698
+ - **UI:** Switch to `Sessions` after project selection and compact footer help actions.
1699
+ - **Runtime:** Route app-server turns by provider, include root `AGENTS.md`
1700
+ instructions, and pass session folder/model in Codex payloads.
1701
+ - **Docs:** Reorganize site sections, standardize skill headers, and migrate the docs
1702
+ site to compiled Sass styling.
1703
+ - **Models:** Add support for the `gpt-5.3-codex-spark` model.
1704
+
1705
+ ### Fixed
1706
+
1707
+ - **Database:** Fix SQLite migration `025` to avoid non-constant defaults.
1708
+ - **Templates:** Fix malformed Tera block syntax in the base template.
1709
+ - **Docs:** Remove duplicate front matter delimiters in overview content.
1710
+
1711
+ ### Removed
1712
+
1713
+ - **Onboarding:** Remove the onboarding page from the list-mode flow.
1714
+ - **Projects:** Remove project favorite controls from the project list.
1715
+
1716
+ ### Contributors
1717
+
1718
+ - @andagaev
1719
+ - @minev-dev
1720
+
1721
+ ## [v0.3.0] - 2026-02-23
1722
+
1723
+ ### Added
1724
+
1725
+ - **Docs:** Add copy button to code blocks.
1726
+ - **Docs:** Add theme selector and favicon to site.
1727
+ - **Docs:** Add contributing guide and templates.
1728
+ - **Claude:** Enable Bash tool for Claude agent.
1729
+ - **Output:** Stream Codex turn events to session output.
1730
+
1731
+ ### Changed
1732
+
1733
+ - **Sync:** Fix pull rebase to target explicit upstream.
1734
+ - **UI:** Cap chat input panel height and scroll prompt viewport.
1735
+ - **Architecture:** Generalize app-server session handling.
1736
+ - **Architecture:** Refactor site templates to use base layout.
1737
+ - **UI:** Update docs sidebar styling.
1738
+ - **Project:** Update repository URLs to new organization.
1739
+ - **Architecture:** Move UI rendering into a dedicated render module.
1740
+ - **Architecture:** Extract shared stdio JSON-RPC transport utilities.
1741
+ - **UI:** Adopt Builder Lite pattern for UI components.
1742
+ - **Project:** Update description to "Agentic Development Environment (ADE)".
1743
+ - **Runtime:** Track active turn usage from completion and stream events.
1744
+ - **UX:** Align view mode shortcuts with session state rules.
1745
+ - **Runtime:** Require strict turn ID matching and make prompt char handling sync.
1746
+ - **Output:** Filter synthetic completion status lines from chat output.
1747
+ - **Deps:** Bump pulldown-cmark from 0.13.0 to 0.13.1.
1748
+
1749
+ ### Removed
1750
+
1751
+ - **Command Palette:** Remove command palette and multi-project switching.
1752
+ - **Docs:** Remove documentation sections and demo assets from README.
1753
+ - **Slash Commands:** Remove `/clear` slash command and session history clearing logic.
1754
+
1755
+ ### Contributors
1756
+
1757
+ - @andagaev
1758
+ - @dependabot[bot]
1759
+ - @minev-dev
1760
+
1761
+ ## [v0.2.2] - 2026-02-22
1762
+
1763
+ ### Added
1764
+
1765
+ - **Release:** Add crates.io publish workflow for release tags.
1766
+
1767
+ ### Changed
1768
+
1769
+ - **Metadata:** Add full workspace author metadata.
1770
+
1771
+ ### Contributors
1772
+
1773
+ - @minev-dev
1774
+
1775
+ ## [v0.2.1] - 2026-02-22
1776
+
1777
+ ### Added
1778
+
1779
+ - **Session Output:** Add toggle to switch between summary and full output for completed
1780
+ sessions.
1781
+ - **Release:** Require explicit confirmation for version bump type in release skill.
1782
+ - **Runtime:** Track active turn ID to prevent race conditions during turn completion.
1783
+
1784
+ ### Changed
1785
+
1786
+ - **Architecture:** Refactor UI routing and overlays into dedicated modules and
1787
+ centralize frame drawing.
1788
+ - **Session:** Defer session cleanup and load at-mention entries asynchronously for
1789
+ faster startup.
1790
+ - **Git:** Retry git commands on index lock contention and simplify session view
1791
+ handling.
1792
+ - **Settings:** Only persist default model when the "last-used" option is enabled.
1793
+ - **Rebase:** Improve recovery from stale metadata during rebase assist.
1794
+ - **Permissions:** Consolidate permission handling into a single "Auto Edit" mode.
1795
+
1796
+ ### Removed
1797
+
1798
+ - **Permissions:** Remove legacy permission mode column from database and UI.
1799
+ - **Permissions:** Remove non-auto permission modes and plan follow-up functionality.
1800
+
1801
+ ### Contributors
1802
+
1803
+ - @andagaev
1804
+ - @minev-dev
1805
+
1806
+ ## [v0.2.0] - 2026-02-22
1807
+
1808
+ ### Added
1809
+
1810
+ - **Plan:** Add iterative plan question flow with per-question answer options.
1811
+ - **Sync:** Run branch sync in background with loading popup and outcome display.
1812
+ - **Sync:** Add session branch sync action with sync-blocked popup.
1813
+ - **Sync:** Add assisted conflict resolution for sync main rebase.
1814
+ - **Stats:** Add Codex usage limits to stats dashboard.
1815
+ - **Stats:** Persist session-creation activity and render by local day.
1816
+ - **Stats:** Persist and display all-time model usage and longest session duration.
1817
+ - **Help:** Help system uses state-aware action projection.
1818
+ - **Dev Server:** Add editable Dev Server setting and run when opening session tmux
1819
+ window.
1820
+ - **UX:** Add `h`/`l` shortcuts for confirmation selection.
1821
+
1822
+ ### Changed
1823
+
1824
+ - **Architecture:** Refactor agent infrastructure into provider modules.
1825
+ - **Architecture:** Split git infrastructure and UI utilities into focused modules.
1826
+ - **Architecture:** Inject `GitClient` into app workflows and isolate multi-command git
1827
+ tests.
1828
+ - **Refactor:** Move file indexing into infra module and parse using `pulldown-cmark`.
1829
+ - **Refactor:** Rename state, file, and mode modules for clarity.
1830
+ - **Refactor:** Move module roots from `mod.rs` to sibling files.
1831
+ - **Sync:** Add project and branch context to sync popups.
1832
+ - **Sync:** Sync main branch by pushing after rebase.
1833
+ - **Plan:** Improve plan follow-ups and Codex stats limit rendering.
1834
+ - **UX:** Use shared confirmation mode for quit and session deletion.
1835
+ - **UX:** Confirmation prompts default to "No" selection.
1836
+ - **UX:** Hide open-worktree shortcut for done sessions and restrict view actions while
1837
+ running.
1838
+ - **Commit:** Preserve a single evolving session commit.
1839
+ - **Search:** Prioritize basename matches in file list fuzzy scoring.
1840
+
1841
+ ### Fixed
1842
+
1843
+ - **Codex:** Fix app-server error status recovery and wait for responses before parsing
1844
+ limits.
1845
+ - **Stability:** Fix launch and lint regressions after rebase.
1846
+ - **UI:** Deduplicate list background rendering and reset grouped session table offset.
1847
+
1848
+ ### Removed
1849
+
1850
+ - **Refactor:** Remove orphaned top-level source files from `src/`.
1851
+ - **Refactor:** Remove `pr-testing` directory references.
1852
+
1853
+ ### Contributors
1854
+
1855
+ - @andagaev
1856
+ - @minev-dev
1857
+
1858
+ ## [v0.1.14] - 2026-02-21
1859
+
1860
+ ### Added
1861
+
1862
+ - **Stats:** Add activity heatmap to the Stats tab.
1863
+ - **Stats:** Track per-model session usage and render usage summaries.
1864
+ - **Settings:** Add settings tab and persist default model.
1865
+ - **Diff View:** Split diff view into file list and content panels with file explorer
1866
+ navigation.
1867
+ - **Diff View:** Render changed files as a tree in the file explorer.
1868
+ - **Diff View:** Filter diff view content by selected file explorer item.
1869
+ - **Site:** Add agentty.xyz documentation site with GitHub Pages deployment workflow.
1870
+
1871
+ ### Changed
1872
+
1873
+ - **Architecture:** Refactor codebase into domain, infrastructure, and UI state modules.
1874
+ - **Architecture:** Move tab state into a dedicated tab manager.
1875
+ - **Session List:** Group sessions by merge queue and separate archived sessions with
1876
+ placeholders.
1877
+ - **Session List:** Align session navigation with grouped list order.
1878
+ - **Session Output:** Render session output and user prompt blocks as markdown.
1879
+ - **Session Output:** Preserve multiline user prompt block spacing and verbatim
1880
+ rendering.
1881
+ - **Merge Queue:** Queue session merges in FIFO order and handle queued sessions across
1882
+ app and UI.
1883
+ - **Merge Queue:** Advance merge queue progression and retry on git index lock failures.
1884
+ - **Merge:** Treat already-applied squash merges as successful.
1885
+ - **Rebase:** Harden rebase assist loop against partially resolved conflicts.
1886
+ - **Output:** Task service batches streamed output before flushing.
1887
+ - **Output:** Separate streamed response messages for Codex output spacing.
1888
+ - **Models:** Load default session model from persisted setting.
1889
+ - **Models:** Use npm semver for version checks and restore version display in status
1890
+ bar.
1891
+ - **Prompt:** Handle multiline paste and control-key newlines in prompt input.
1892
+ - **Site:** Redesign landing page with dark terminal theme, Tailwind CSS v4, and theme
1893
+ selector.
1894
+ - **Deps:** Bump dependency versions.
1895
+
1896
+ ### Fixed
1897
+
1898
+ - **Build:** Fix refactor regressions and restore build stability after module
1899
+ restructure.
1900
+
1901
+ ### Contributors
1902
+
1903
+ - @andagaev
1904
+ - @dependabot[bot]
1905
+ - @minev-dev
1906
+
1907
+ ## [v0.1.13] - 2026-02-19
1908
+
1909
+ ### Added
1910
+
1911
+ - **Session Output:** Render styled markdown in session chat output.
1912
+ - **Session Output:** Switch to stream-json output and parse Gemini stream events.
1913
+ - **Session Output:** Extract session output into dedicated UI component.
1914
+ - **Update Check:** Show update availability in status bar and onboarding page.
1915
+ - **Models:** Update Gemini Pro to version 3.1 and Claude Sonnet to version 4.6.
1916
+ - **Models:** Add verbose flag to Claude stream-json commands.
1917
+
1918
+ ### Changed
1919
+
1920
+ - **Session Metadata:** Move session status to output panel title and metadata to chat
1921
+ input border.
1922
+ - **Session Titles:** Persist session title and summary from squash commit message.
1923
+ - **Session Titles:** Use full prompt as session title for new sessions.
1924
+ - **Session Replay:** Replay session transcript once after model switch.
1925
+ - **Git Actions:** Remove session commit count and always show git actions.
1926
+ - **Diff View:** Use merge-base for session diff to accurately exclude base branch
1927
+ updates.
1928
+ - **Rebase:** Refactor rebase logic into a reusable workflow.
1929
+ - **Database:** Make session token stats non-nullable with zero defaults.
1930
+ - **NPM:** Update package name to `agentty` in docs and badges.
1931
+
1932
+ ### Fixed
1933
+
1934
+ - **UI:** Fix session list table column layout constraints.
1935
+ - **Runtime:** Add shutdown signal to event reader thread for cleaner exit.
1936
+
1937
+ ### Contributors
1938
+
1939
+ - @andagaev
1940
+ - @minev-dev
1941
+
1942
+ ## [v0.1.12] - 2026-02-19
1943
+
1944
+ ### Added
1945
+
1946
+ - **Session UX:** Added a delete confirmation mode with selectable actions for session
1947
+ deletion.
1948
+ - **Output Streaming:** Added a live single-line progress indicator in chat and spacing
1949
+ before the first streamed response chunk.
1950
+ - **Agent Runtime:** Added Codex output streaming during non-interactive runs and
1951
+ follow-up actions for plan mode replies.
1952
+
1953
+ ### Changed
1954
+
1955
+ - **Git Runtime:** Completed async `git` module transition to `spawn_blocking` and
1956
+ updated call sites.
1957
+ - **Session Model:** Refactored sessions to derive `AgentKind` from `AgentModel`,
1958
+ removed the session `agent` column, and migrated legacy PR statuses to `Review`.
1959
+ - **Merge/Rebase:** Improved merge and rebase robustness by auto-committing pending
1960
+ changes before merge/rebase and broadening auto-commit assistance handling.
1961
+ - **UI:** Improved session list layout with minimum-width columns and title truncation,
1962
+ and added spacing around user input in session chat output.
1963
+ - **Automation:** Split pre-commit workflow into separate autofix and validation phases.
1964
+ - **Config:** Removed `npm-scope` from `dist-workspace.toml`.
1965
+
1966
+ ### Removed
1967
+
1968
+ - **Pull Requests:** Removed pull request functionality.
1969
+ - **UI Cleanup:** Removed delete confirmation bottom hints.
1970
+
1971
+ ### Contributors
1972
+
1973
+ - @andagaev
1974
+ - @minev-dev
1975
+
1976
+ ## [v0.1.11] - 2026-02-16
1977
+
1978
+ ### Added
1979
+
1980
+ - **Permissions:** Add per-session permission mode toggle and `Plan` permission mode
1981
+ with denial-gated response parsing.
1982
+ - **Session Control:** Add `Ctrl+c` to stop running agent sessions.
1983
+ - **Prompt History:** Implement prompt history navigation with up/down arrows.
1984
+ - **Stats Page:** Add project and model columns to the stats page.
1985
+ - **Session Size:** Compute session size from diff and display it in the session list.
1986
+ - **File Listing:** Include directories in `@` mention dropdown with trailing slash.
1987
+ - **Session Status:** Add `Rebasing` status to session lifecycle.
1988
+ - **Terminal Summaries:** Persist terminal summaries for session outcomes.
1989
+
1990
+ ### Changed
1991
+
1992
+ - **Architecture:** Refactor app into manager composition with event-driven session
1993
+ state updates and reducer-based routing for git status, PR control, and session
1994
+ mutations.
1995
+ - **Architecture:** Split session module and centralize lookups; separate session
1996
+ snapshots from runtime handles.
1997
+ - **Session Defaults:** New sessions inherit the latest session's agent, model, and
1998
+ permission mode.
1999
+ - **File Listing:** Include non-ignored dotfiles in file listing.
2000
+ - **Merge Flow:** Run session merges asynchronously, harden merge messaging, and
2001
+ increase merge commit message timeout.
2002
+ - **Rebase Flow:** Improve assisted rebase continuation flow and auto-commit pending
2003
+ changes before rebasing.
2004
+ - **Auto-Commit:** Improve auto-commit recovery with agent assistance.
2005
+ - **Session Summary:** Backfill and use session summary for finished sessions.
2006
+ - **UI:** Move open worktree keybinding to chat view and update session size color
2007
+ palette.
2008
+ - **Docs:** Document app module architecture and public API docs; add cargo install
2009
+ instructions to README.
2010
+
2011
+ ### Removed
2012
+
2013
+ - **Health Module:** Remove health check module and wiring.
2014
+
2015
+ ### Contributors
2016
+
2017
+ - @andagaev
2018
+ - @minev-dev
2019
+
2020
+ ## [v0.1.10] - 2026-02-15
2021
+
2022
+ ### Added
2023
+
2024
+ - **Review Workflow:** Added an explicit `Merging` session status and a review-session
2025
+ rebase action.
2026
+ - **Session UX:** Added read-only controls for done sessions and a `/clear` slash
2027
+ command.
2028
+ - **Help UI:** Added a `?` keybinding with an updated overlay and descriptive
2029
+ slash-command menu.
2030
+
2031
+ ### Changed
2032
+
2033
+ - **Session List:** Split session metadata into `Project`, `Model`, and `Status` columns
2034
+ with dynamic width sizing.
2035
+ - **Runtime:** Run session commands through per-session workers and restore interrupted
2036
+ sessions into `Review`.
2037
+ - **Stats:** Accumulate token usage over time and preserve stats after `/clear`.
2038
+ - **Merge Flow:** Enforce merge commit message formatting and normalize co-author
2039
+ trailer handling.
2040
+ - **UI Cleanup:** Removed agent labels from session list rows and session chat titles.
2041
+
2042
+ ### Contributors
2043
+
2044
+ - @andagaev
2045
+ - @dependabot[bot]
2046
+ - @minev-dev
2047
+
2048
+ ## [v0.1.9] - 2026-02-13
2049
+
2050
+ ### Added
2051
+
2052
+ - **Diff View:** Added diff content wrapping to render long changed lines without
2053
+ truncation.
2054
+ - **Diff View:** Added structured parsing with line-number gutters (`old│new`) for
2055
+ unified diffs.
2056
+ - **Docs:** Added a demo GIF to the README and documented GIF generation with VHS.
2057
+
2058
+ ### Changed
2059
+
2060
+ - **Diff View:** Compare against each session's base branch so review shows all
2061
+ accumulated changes.
2062
+ - **Workflow:** Simplified commit flow by auto-committing after agent iterations and
2063
+ removing manual commit mode.
2064
+ - **Release Docs:** Added contributor-list requirements and examples to the release
2065
+ workflow documentation.
2066
+
2067
+ ### Contributors
2068
+
2069
+ - @minev-dev
2070
+
2071
+ ## [v0.1.8] - 2026-02-13
2072
+
2073
+ ### Added
2074
+
2075
+ - **Onboarding:** Added a full-screen onboarding page shown when no sessions exist.
2076
+ - **Tests:** Added onboarding behavior coverage for app state, list mode `Enter`
2077
+ handling, and UI rendering conditions.
2078
+
2079
+ ### Changed
2080
+
2081
+ - **UX:** Pressing `Enter` from the onboarding view now creates a new session and opens
2082
+ prompt mode directly.
2083
+ - **Error Handling:** Session creation errors in list mode are now surfaced instead of
2084
+ being silently ignored.
2085
+ - **UI:** Kept the footer visible during onboarding and simplified session list
2086
+ rendering to consistently use the table layout.
2087
+
2088
+ ### Contributors
2089
+
2090
+ - @minev-dev
2091
+
2092
+ ## [v0.1.7] - 2026-02-12
2093
+
2094
+ ### Added
2095
+
2096
+ - **UI:** Show session worktree path and branch in the footer bar for better context
2097
+ awareness.
2098
+ - **UI:** Display commit count in the session chat title.
2099
+ - **Stats:** Add session token usage statistics to the Stats page.
2100
+
2101
+ ### Changed
2102
+
2103
+ - **Persistence:** Moved application data directory from `/var/tmp/.agentty` to
2104
+ `~/.agentty` for better persistence and standard compliance.
2105
+ - **UX:** Renamed "Roadmap" tab to "Stats" to better reflect its content.
2106
+ - **UX:** Use shortened 8-character UUIDs for session folders and git branches to reduce
2107
+ clutter.
2108
+ - **Internal:** Standardized session ID variable naming across the codebase.
2109
+
2110
+ ### Contributors
2111
+
2112
+ - @andagaev
2113
+ - @minev-dev
2114
+
2115
+ ## [v0.1.6] - 2026-02-10
2116
+
2117
+ ### Added
2118
+
2119
+ - **Session Status:** Added a `Committing` status to make commit progress explicit in
2120
+ the session lifecycle.
2121
+
2122
+ ### Changed
2123
+
2124
+ - **Persistence:** Persist session prompt/output history in SQLite and load it on
2125
+ startup so chat history survives app reloads.
2126
+ - **Session Output:** Parse agent JSON output and display only the response message in
2127
+ session output.
2128
+ - **GitHub Integration:** Parse GitHub PR responses using typed serde structs and move
2129
+ GitHub CLI logic into a dedicated `gh` module.
2130
+ - **PR Workflow:** Treat closed pull requests as canceled sessions and show a loader
2131
+ while PR creation is in flight.
2132
+ - **Commit Flow:** Improve asynchronous session commit handling and remove placeholder
2133
+ commit output in view mode.
2134
+ - **Documentation:** Extract git commit guidance into the shared skills documentation.
2135
+
2136
+ ### Fixed
2137
+
2138
+ - **Tests:** Stabilized merge cleanup testing to avoid environment-dependent blocking
2139
+ during release verification.
2140
+
2141
+ ### Contributors
2142
+
2143
+ - @andagaev
2144
+ - @minev-dev
2145
+
2146
+ ## [v0.1.5] - 2026-02-08
2147
+
2148
+ ### Added
2149
+
2150
+ - **Tests:** Added runtime mode handler coverage tests.
2151
+ - **Documentation:** Added local `AGENTS.md` files and enforced folder index checks.
2152
+ - **Documentation:** Added Context7-first rule for retrieving latest tool info.
2153
+ - **Documentation:** Documented dependency injection testability guidance.
2154
+
2155
+ ### Changed
2156
+
2157
+ - **Architecture:** Modularized app and runtime into focused modules (`app/` and
2158
+ `runtime/`).
2159
+ - **Runtime:** Injected event source into the runtime event loop for better testability.
2160
+ - **Session:** Made agent and model configurations session-scoped.
2161
+ - **Linting:** Refined clippy lint configuration, tightening policies and re-enabling
2162
+ pedantic rules.
2163
+ - **Skills:** Symlinked the entire skills directory for agents and refactored release
2164
+ skill.
2165
+ - **Refactor:** Refactored long handlers to enforce clippy line limits.
2166
+
2167
+ ### Contributors
2168
+
2169
+ - @minev-dev
2170
+
2171
+ ## [v0.1.4] - 2026-02-08
2172
+
2173
+ ### Added
2174
+
2175
+ - **Session Identity:** Migrated session IDs to UUIDs for stable identification.
2176
+ - **Session Management:** Added a forward-only migration system for schema changes.
2177
+ - **UI:** Added nullable title support to sessions.
2178
+ - **UI:** Improved chat input with indentation preservation on wrapped lines.
2179
+
2180
+ ### Changed
2181
+
2182
+ - **Session Ordering:** Sessions are now strictly ordered by `updated_at` (latest
2183
+ first).
2184
+ - **Performance:** Implemented incremental session state refresh to reduce database
2185
+ load.
2186
+ - **UX:** Moved prompt cursor by visual wrapped lines for better navigation.
2187
+ - **Internal:** Use `String` directly for session IDs in `AppMode` and command flows.
2188
+ - **Internal:** Refactored health checks into flat pass/fail checks.
2189
+ - **Database:** Manage session timestamps directly in SQLite.
2190
+ - **Database:** Use multiline SQL strings for better query readability.
2191
+
2192
+ ### Removed
2193
+
2194
+ - Removed project-filtered session loader.
2195
+ - Removed git worktree suffix from initial session prompt.
2196
+ - Removed Reply mode; unified into session chat page.
2197
+
2198
+ ### Contributors
2199
+
2200
+ - @minev-dev
2201
+
2202
+ ## [v0.1.3] - 2026-02-08
2203
+
2204
+ ### Added
2205
+
2206
+ - **Backends:** Added Codex backend support.
2207
+ - **Project Management:** Added project switching with automatic sibling discovery.
2208
+ - **Diff View:** Show all file changes in diff view.
2209
+ - **Status:** Show status as text in session list and chat title.
2210
+ - **Health:** Added version normalization for agent checks.
2211
+
2212
+ ### Changed
2213
+
2214
+ - **Concurrency:** Converted event loop to async to fix TUI freezing on macOS.
2215
+ - **Input:** Improved multiline input editing.
2216
+ - **Workflow:** Enforced review-based session status transitions.
2217
+ - **Performance:** Reduced tick rate to 50ms for smoother output.
2218
+ - **Locking:** Replaced `fs2` with `std` file locking.
2219
+ - **Formatting:** Added code formatting rules and applied to `ag-xtask`.
2220
+
2221
+ ### Fixed
2222
+
2223
+ - Fixed UI freezing on macOS during agent execution.
2224
+ - Clarified git worktree requirements in README.
2225
+
2226
+ ### Contributors
2227
+
2228
+ - @andagaev
2229
+ - @minev-dev
2230
+
2231
+ ## [v0.1.2] - 2026-02-08
2232
+
2233
+ ### Added
2234
+
2235
+ - **GitHub Integration:** Added 'p' command to create GitHub Pull Requests (draft by
2236
+ default).
2237
+ - **GitHub Integration:** Added GitHub CLI health check with nested auth sub-check.
2238
+ - **UI:** Centralized icons into a reusable `Icon` enum.
2239
+ - **UI:** Improve command palette with arrow navigation and auto-select.
2240
+ - **Database:** Persist session status to the database.
2241
+
2242
+ ### Changed
2243
+
2244
+ - **UX:** Use `/` selector in command palette dropdowns.
2245
+ - **UX:** Ensure exactly one blank line before the spinner in chat view.
2246
+ - **Health:** Rename Claude health check label to Claude Code.
2247
+ - **Internal:** Refactor PR creation logic and tests.
2248
+ - **Internal:** Optimize quality gates for AI agents.
2249
+
2250
+ ### Removed
2251
+
2252
+ - Remove custom Gemini configuration creation.
2253
+
2254
+ ### Contributors
2255
+
2256
+ - @minev-dev
2257
+
2258
+ ## [v0.1.1] - 2026-02-08
2259
+
2260
+ ### Added
2261
+
2262
+ - **Database:** Introduce SQLite via SQLx for session metadata.
2263
+ - **UI:** Add command palette with agents selection.
2264
+ - **UI:** Add health check splash screen via `/health` command.
2265
+ - **UI:** Add git status indicator to footer bar.
2266
+ - **Docs:** Add installation guide to README.
2267
+
2268
+ ### Changed
2269
+
2270
+ - **Async:** Convert sync DB wrapper and thread spawns to native async.
2271
+ - **Tooling:** Replace `cargo-machete` with `cargo-shear` in quality gates.
2272
+ - **UI:** Use tilde for home directory in footer.
2273
+ - **Internal:** Reorder struct fields by visibility and name.
2274
+
2275
+ ### Contributors
2276
+
2277
+ - @andagaev
2278
+ - @minev-dev
2279
+
2280
+ ## [v0.1.0] - 2026-02-08
2281
+
2282
+ - Initial release.
2283
+
2284
+ ### Contributors
2285
+
2286
+ - @andagaev
2287
+ - @dependabot[bot]
2288
+ - @minev-dev