From 020ec5d55ab32b4a39c14f37eaa1fe6fcd2c21ce Mon Sep 17 00:00:00 2001 From: Mike Lyons Date: Fri, 9 Oct 2026 08:40:27 -0400 Subject: [PATCH] Release v2.17.0 --- README.md | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- release-notes/v2.17.0.md | 44 ++++++++++++++++++++++++++++++++++ site/public/releases.html | 50 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 99 insertions(+), 5 deletions(-) create mode 100644 release-notes/v2.17.0.md diff --git a/README.md b/README.md index 8a1893ae4..9328a7af7 100644 --- a/README.md +++ b/README.md @@ -48,8 +48,8 @@ Grab the latest release from the [releases page](https://github.com/ness-dev/ness/releases/latest). -- **Apple Silicon (M1/M2/M3/M4):** [Ness-2.16.0-arm64.dmg](https://github.com/ness-dev/ness/releases/download/v2.16.0/Ness-2.16.0-arm64.dmg) -- **Intel Mac:** [Ness-2.16.0.dmg](https://github.com/ness-dev/ness/releases/download/v2.16.0/Ness-2.16.0.dmg) +- **Apple Silicon (M1/M2/M3/M4):** [Ness-2.17.0-arm64.dmg](https://github.com/ness-dev/ness/releases/download/v2.17.0/Ness-2.17.0-arm64.dmg) +- **Intel Mac:** [Ness-2.17.0.dmg](https://github.com/ness-dev/ness/releases/download/v2.17.0/Ness-2.17.0.dmg) ## Installation diff --git a/package-lock.json b/package-lock.json index f3c2b927f..c09665952 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "harness", - "version": "2.16.0", + "version": "2.17.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "harness", - "version": "2.16.0", + "version": "2.17.0", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index bf33f1a05..63ce64b68 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "harness", - "version": "2.16.0", + "version": "2.17.0", "main": "./out/main/index.js", "author": { "name": "Mike Lyons", diff --git a/release-notes/v2.17.0.md b/release-notes/v2.17.0.md new file mode 100644 index 000000000..b7ba6b039 --- /dev/null +++ b/release-notes/v2.17.0.md @@ -0,0 +1,44 @@ +## Ness v2.17.0 + +### Changes +- Open a per-file diff tab from a commit's file list (#318) +- fix(browser): capture the tab that was asked for, not the park window (#317) +- Own the "Always allow" list in Ness instead of Claude's settings files (#316) +- feat(browser): emulate viewport sizes for browser tabs (#315) +- Compact screenshot timeline in collapsed tool groups (#314) +- Render only the tail of a long chat transcript, with a configurable window (#313) +- perf(activity): async debounced save + 90d retention for removed worktrees (#312) +- feat(models): add Opus 5.5, prefer CLI aliases, bump bundled Claude Code (#308) +- test: stop vitest from running compiled tests out of build output (#311) +- feat(sidebar): pinned worktrees section + Pin/Unpin action (#309) +- Show browser screenshots in the chat transcript (#303) +- feat(chat): drag the divider to resize the prompt box (#310) +- Improve diff visibility by brightening colors (#307) +- feat(tools): user-defined right-column panels backed by a markdown-emitting script (#243) +- feat(editor): per-repo and per-worktree editor overrides (#306) +- Fix PWA Home Screen icon still showing the old Harness artwork (#302) +- Show "Ness" instead of "harness" in the macOS app menu (#300) +- Fix three renderer perf metrics that lied, and the bug they hid (#290) +- Stop browser evals from hanging a tool call forever (#299) +- Stop restored shell tabs from re-running their command (#292) +- Add a button to hand PR merge conflicts to the agent (#294) +- Fix rename_worktree refusing every freshly created worktree (#293) +- Cut worktree-switch latency by capping and deferring git reads (#291) +- Stop worktrees flickering out of Needs Attention on UNKNOWN mergeability (#289) +- Add a setting to swap click / ⌘-click on terminal links (#286) +- site(chat-forking): HN thread link and reworded announcement summary (#287) +- site: add the "Exploring chat forking" announcement post (#277) +- Fix deletion of worktrees containing submodules (#285) +- Name new worktrees from the kickoff prompt (#284) +- Stop hotkeys from stealing keystrokes from text inputs (#283) +- Cap the context panel height and scroll its category list (#282) +### Contributors + +Huge thanks to @blindpirate and @tresat for their contributions to this release. + +### Installing + +- **Apple Silicon:** `Ness-2.17.0-arm64.dmg` +- **Intel:** `Ness-2.17.0.dmg` + +Drag `Ness.app` to Applications, then launch it. Existing installs will auto-update. diff --git a/site/public/releases.html b/site/public/releases.html index 98b83247d..c0536e008 100644 --- a/site/public/releases.html +++ b/site/public/releases.html @@ -102,6 +102,56 @@

+ +
+
+

v2.17.0🔗

+ October 9, 2026 +
+ Download → +

A big one: custom right-column panels backed by your own script, pinned worktrees, browser viewport emulation, and per-repo editor overrides — plus Opus 5.5 support and a wide set of chat, browser, and worktree reliability fixes.

+
+

New features

+
    +
  • Custom right-column panels — build your own right-column panel backed by a script that emits markdown, for whatever project-specific info you want visible alongside your worktrees.
  • +
  • Pin worktrees — pin any worktree to keep it at the top of the sidebar, with a new Pin/Unpin action.
  • +
  • Emulate viewport sizes in browser tabs — test responsive layouts by emulating specific device viewport sizes in browser tabs.
  • +
  • Per-repo and per-worktree editor overrides — override Ness's default code editor on a per-repo or per-worktree basis.
  • +
  • Claude Opus 5.5 support — Opus 5.5 is now available in the model picker, Ness prefers your CLI's model aliases, and the bundled Claude Code has been updated. (thanks @tresat, #308)
  • +
  • Open a per-file diff tab from a commit — click a file in a commit's file list to open a dedicated diff tab for just that file. (thanks @tresat, #318)
  • +
  • Browser screenshots in the chat transcript — screenshots taken by an agent's browser tool now appear inline in the chat transcript.
  • +
  • Resize the chat prompt box — drag the divider above the chat input to resize the prompt box. (thanks @tresat, #310)
  • +
  • Hand PR merge conflicts to the agent — a new button lets you hand a pull request's merge conflicts directly to the agent to resolve.
  • +
  • Swap click / ⌘-click for terminal links — a new setting lets you swap which modifier opens links clicked in the terminal.
  • +
  • Worktrees named from the kickoff prompt — new worktrees are now automatically named based on the kickoff prompt you give them.
  • +
+

Improvements

+
    +
  • Ness owns its own "Always allow" list — Ness now manages the "Always allow" permission list itself instead of writing to Claude Code's settings files, for more reliable permission handling.
  • +
  • Faster worktree switching — switching between worktrees is faster, thanks to capped and deferred git reads.
  • +
  • Brighter diff colors — diff colors are brighter and easier to read. (thanks @tresat, #307)
  • +
  • Faster activity tracking — activity history saves are now async and debounced, and a removed worktree's activity is retained for 90 days instead of being dropped immediately.
  • +
  • Compact screenshot timeline — screenshot timelines in collapsed tool-call groups are now more compact.
  • +
  • Faster long chat transcripts — Chat now renders only the visible tail of a long transcript, with a configurable window, instead of the entire history.
  • +
+

Fixes

+
    +
  • Browser tool actions now capture the tab that was actually asked for, instead of occasionally grabbing a hidden parking window.
  • +
  • The installed PWA's home-screen icon no longer shows the old Harness artwork.
  • +
  • The macOS app menu now says "Ness" instead of "harness". (thanks @blindpirate, #300)
  • +
  • Fixed three renderer performance metrics that were reporting misleading values, along with the underlying bug they were hiding.
  • +
  • Browser tool evaluations no longer hang a tool call forever.
  • +
  • Restored shell tabs no longer re-run their last command on reopen.
  • +
  • The rename_worktree MCP tool no longer refuses to rename freshly created worktrees.
  • +
  • Worktrees no longer flicker in and out of the Needs Attention group when GitHub reports an unknown mergeability state.
  • +
  • Deleting a worktree that contains submodules now works correctly. (thanks @blindpirate, #285)
  • +
  • Hotkeys no longer steal keystrokes while typing in a text input.
  • +
  • The context panel is now capped in height, with its category list scrolling instead of pushing other content off-screen.
  • +
+

Huge thanks to @blindpirate and @tresat for their contributions to this release.

+
+
+