github modem-dev/hunk v0.18.0-beta.0

pre-release2 hours ago

What's Changed

Minor Changes

  • #570 - Add exact Shiki/TextMate overrides via custom_theme.syntax_scopes, with compatibility for deprecated custom_theme.syntax.

  • #629 - Add live ctx.navigation.selectFile and selectHunk APIs for guarded review-stream navigation.

  • #616 - Give extension commands a frozen snapshot of the current review selection through ctx.selection.

  • #588 - Render tabs at four-column stops by default, configurable through tab_width, -x, or --tab-width.

  • #632 - Advance the extension API to v2 with experimental fixed-height React/OpenTUI file-view rows and semantic theme painting.

  • #617 - Add queued ctx.dialogs.confirm, select, and input prompts to extension commands.

  • #619 - Add extension UI lifecycle events, sidebar controls for event handlers, and an inter-extension event bus.

  • #599 - Add experimental TypeScript extensions, bundled VCS adapters, multiple custom themes, trust controls, and configurable loading paths.

  • #615 - Expose resolved command keybindings to custom extension sidebars so they honor remapping and unbinding.

  • #512 - Add experimental STML agent-note markup, hunk markup guide/render, and live note-width validation APIs.

  • #614 - Make menus and help reflect remapped keys, add an Extensions menu, and expose formerly menu-only actions as commands.

  • #611 - Add extension commands, multiple sidebar views, configurable [keybindings], shared key APIs, and namespaced command/view IDs.

  • #647 - Give hunk pager the full review controls while keeping its menu bar and sidebar initially hidden.

  • #626 - Expose ordered ExtensionDiffHunk summaries with headers, indexes, and inclusive line spans in public file views.

  • #632 - Add an experimental host-rendered extension file-view contract and an optional Markdown preview example.

  • #468 - Offer to save changed view preferences on quit, with a persistent “never ask” option.

  • #609 - Let extensions replace file navigation with React sidebars that receive live review props and safe navigation actions.

Patch Changes

  • #531 - Reduce Git polling and CPU use in watch mode while preserving continuous refreshes with a polling fallback.

  • #599 - Store repo-extension trust by canonical root so trusted extensions load through symlinked and Windows short paths.

  • #625 - Discover .tsx and .jsx extension entries alongside TypeScript and JavaScript entries.

  • #606 - Support folder-extension entry points and multiple entries through package.json hunk.extensions manifests.

  • #599 - Harden extension types, themes, lifecycle data, reloads, VCS detection, configured paths, and user-facing failures.

  • #606 - Load directories with index.ts, index.js, or index.mjs as single folder extensions.

  • #649 - Prevent one keypress from triggering both a modal action and the focused widget beneath it.

  • #589 - Require --experimental for STML note rendering and advertise the stml capability only in opted-in sessions.

  • #519 - Label repo-root file runs with a ./ sidebar header without changing review order.

  • #531 - Reduce watch-mode startup cost on macOS and Windows with bounded native recursive filesystem observation.

  • #574 - Show a startup notice when deprecated custom_theme.syntax colors are translated to approximate Shiki scopes.

  • #572 - Restart stale session daemons during upgrades so rich STML comments reach live reviews.

  • #627 - Upgrade shell-quote against a denial-of-service flaw and keep file-watch refreshes responsive after missed events.

  • #630 - Document the supported scrollbox ref, stable row IDs, selection following, and pane geometry APIs for custom sidebars.

  • #596 - Generate the hunk-review skill from typed session commands and document missing note, markup, rationale, and author flags.

  • #652 - Skip inactive custom file-view preparation to reduce rerenders and retained memory in raw-diff reviews.

  • #655 - Keep delayed scroll alignment from changing the file selected by navigation.

  • #645 - Preserve one-line keyboard scrolling after clicking in the review stream.

  • #599 - Write state.json atomically and preserve unreadable state as state.json.corrupt.

  • #573 - Teach STML authors to compose within Hunk’s native note frame while preserving focused inset boxes.

  • #598 - Show Nix-aware update guidance instead of suggesting npm installation for the Nix package.

Full Changelog: v0.17.7...v0.18.0-beta.0

Don't miss a new hunk release

NewReleases is sending notifications on new releases.