Skip to content

v2.18.0

Choose a tag to compare

@github-actions github-actions released this 15 Sep 10:39
· 49 commits to main since this release
2774555

What's changed

  • Undo/redo snapshot repositories no longer keep a second full copy of your workspace. New snapshot repos borrow objects from the workspace repository instead of duplicating them, and every snapshot is anchored by a ref so background repacking can never drop a live undo point. Existing repos are not retroactively deduplicated; because snapshots borrow from the workspace repo, rewriting its history or running git gc --prune=now can make a restore fail instead of silently corrupting it, and SNAPSHOT_SEED_OBJECTS=false restores self-contained repos.
  • Snapshot repos are now pruned in the background: snapshots that no message references are reclaimed, and a per-session size cap (SNAPSHOT_MAX_BYTES, default 256 MiB) drops the oldest snapshots once a repo outgrows it. Undone turns keep their snapshots so redo continues to work; /undo to a snapshot already reclaimed by the cap returns the existing 409.
  • openagentd cleanup --apply --vacuum rebuilds the SQLite database so pages freed by the deleted rows are returned to disk in a single step. A lock held by a running server is reported instead of failing the pass, and dry runs never touch the file.
  • Desktop windows keep their own theme preference across reloads. Previously a reload dropped the per-window scope, so reloaded windows shared one theme key and a theme change in one window propagated to the others; the same fix restores the per-window last-route scope.
  • Proposed plans in the transcript now render with the same font size, leading, and paragraph rhythm as normal assistant responses.
  • The transcript scroll-to-bottom / attach-to-stream control is a consistent 28px at every breakpoint, with press feedback on touch.

Full changelog: v2.17.0...v2.18.0