Skip to content

Commit 443ad76

Browse files
committed
Release v2.14.0
1 parent 17832ac commit 443ad76

5 files changed

Lines changed: 86 additions & 5 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@
4848

4949
Grab the latest release from the [releases page](https://github.com/frenchie4111/harness/releases/latest).
5050

51-
- **Apple Silicon (M1/M2/M3/M4):** [Harness-2.13.2-arm64.dmg](https://github.com/frenchie4111/harness/releases/download/v2.13.2/Harness-2.13.2-arm64.dmg)
52-
- **Intel Mac:** [Harness-2.13.2.dmg](https://github.com/frenchie4111/harness/releases/download/v2.13.2/Harness-2.13.2.dmg)
51+
- **Apple Silicon (M1/M2/M3/M4):** [Harness-2.14.0-arm64.dmg](https://github.com/frenchie4111/harness/releases/download/v2.14.0/Harness-2.14.0-arm64.dmg)
52+
- **Intel Mac:** [Harness-2.14.0.dmg](https://github.com/frenchie4111/harness/releases/download/v2.14.0/Harness-2.14.0.dmg)
5353

5454
## Installation
5555

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "harness",
3-
"version": "2.13.2",
3+
"version": "2.14.0",
44
"main": "./out/main/index.js",
55
"author": {
66
"name": "Mike Lyons",

release-notes/v2.14.0.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
## Harness v2.14.0
2+
3+
### Changes
4+
- fix(browser): screenshot and inspect tabs that aren't on screen (#264)
5+
- Tag other worktrees from the @ menu in Chat tabs (#257)
6+
- Mark agent-authored kickoff prompts as automated turns (#262)
7+
- fix(cleanup): don't let opening a worktree reset its age (#260)
8+
- Persist per-repo sidebar collapse across reloads (#259)
9+
- Mobile: wake slept tabs so idle chats show their history (#258)
10+
- Renderer-side perf instrumentation: catch GC pauses and commit storms (#256)
11+
- Expose Claude Code's auto permission mode in Chat tabs (#255)
12+
- Render background (run_in_background) sub-agents correctly in Chat (#249)
13+
- fix(ssh): recover dropped tunnels instead of crashing or going quietly dead (#250)
14+
- Add a setting to open PRs in a Harness browser tab (#254)
15+
- Mobile: create worktrees, add tabs, bigger approval buttons (#251)
16+
- perf(chat): fix UI stutter from markdown re-rendering on tool calls (#253)
17+
- Don't flash a worktree red while the auto-approver is still deciding (#252)
18+
- Notify the agent chat when a PR's CI goes red (#234)
19+
- fix(git): stop background polling from contending with index.lock (#247)
20+
- perf: stop the profiler and duplicate git reads from causing the lag (#248)
21+
- Fork a Claude conversation into a new worktree (#237)
22+
- Fix light-theme code block contrast (#134) (#241)
23+
- Unify the desktop sidebar and mobile worktree picker onto one list (#235)
24+
- feat(chat): interrupt & send in the json-mode composer (#239)
25+
- fix(worktrees): stop dropping the kickoff prompt when pane init races
26+
- fix(sessions): track Claude session id across /clear so restart resumes the current one (#233)
27+
- fix(chat): make AskUserQuestion answerable instead of silently unanswered
28+
- feat(remote): offer an opt-in harness-server upgrade when an SSH remote is stale
29+
30+
### Installing
31+
32+
- **Apple Silicon:** `Harness-2.14.0-arm64.dmg`
33+
- **Intel:** `Harness-2.14.0.dmg`
34+
35+
Drag `Harness.app` to Applications, then launch it. Existing installs will auto-update.

site/public/releases.html

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,52 @@ <h1 class="text-5xl md:text-6xl font-extrabold tracking-tight mb-6 leading-tight
102102
<!-- Releases -->
103103
<div class="max-w-3xl mx-auto px-6 pb-24">
104104

105+
<!-- v2.14.0 -->
106+
<section id="v2.14.0" class="release-section py-10">
107+
<div class="flex flex-col sm:flex-row sm:items-baseline gap-2 sm:gap-4 mb-1">
108+
<h2 class="text-3xl font-bold tracking-tight"><a href="#v2.14.0" class="release-anchor">v2.14.0<span class="anchor-icon">🔗</span></a></h2>
109+
<span class="text-sm text-neutral-500">August 17, 2026</span>
110+
</div>
111+
<a href="https://github.com/frenchie4111/harness/releases/tag/v2.14.0" class="text-sm text-amber-400/80 hover:text-amber-300 transition-colors">Download &rarr;</a>
112+
<p class="text-neutral-400 mt-4 mb-4 leading-relaxed">Chat gets @-mention tagging for worktrees, an auto permission mode toggle, PR CI-failure notifications, and conversation forking into a new worktree; mobile can now create worktrees and add tabs — plus SSH tunnel recovery and a wide set of reliability fixes.</p>
113+
<div class="note-body">
114+
<h4>New features</h4>
115+
<ul>
116+
<li><strong>Tag other worktrees from the @ menu in Chat</strong> — type <code>@</code> in a Chat tab to reference another worktree directly in your message.</li>
117+
<li><strong>Auto permission mode in Chat</strong> — Claude Code's auto permission mode is now exposed as a toggle in Chat tabs.</li>
118+
<li><strong>Open PRs in a Harness browser tab</strong> — a new setting opens pull requests inside a Harness browser tab instead of your external browser.</li>
119+
<li><strong>Mobile: create worktrees and add tabs</strong> — the mobile client can now create worktrees and add tabs, with bigger, easier-to-tap approval buttons.</li>
120+
<li><strong>CI-failure notifications in Chat</strong> — Chat now notifies you when a PR's CI checks go red.</li>
121+
<li><strong>Fork a conversation into a new worktree</strong> — fork a Chat conversation into a brand-new worktree that continues from that point.</li>
122+
<li><strong>Interrupt & send in Chat</strong> — send a new message to interrupt a response that's still streaming, instead of waiting for it to finish.</li>
123+
<li><strong>Stale SSH remote upgrade prompt</strong> — Harness now offers an opt-in upgrade when a remote's <code>harness-server</code> is out of date.</li>
124+
<li><strong>Better performance diagnostics</strong> — new renderer instrumentation catches GC pauses and rendering storms, making UI stutter easier to track down.</li>
125+
</ul>
126+
<h4>Improvements</h4>
127+
<ul>
128+
<li><strong>Automated kickoff prompts are labeled</strong> — kickoff prompts sent by another agent now show as automated turns in Chat instead of looking like something you typed.</li>
129+
<li><strong>Sidebar collapse state persists per repo</strong> — collapsed/expanded state for each repo's worktree group is now remembered across restarts.</li>
130+
<li><strong>Unified worktree list</strong> — the desktop sidebar and mobile worktree picker now share the same list, for more consistent behavior across both.</li>
131+
<li>Fixed a UI stutter in Chat caused by markdown re-rendering on every tool call.</li>
132+
<li>The performance profiler and duplicate git status reads no longer cause the lag they were meant to help diagnose.</li>
133+
</ul>
134+
<h4>Fixes</h4>
135+
<ul>
136+
<li>Browser tabs can now be screenshotted and inspected even when they aren't the currently visible tab.</li>
137+
<li>Opening a worktree no longer resets its age, so it doesn't dodge cleanup by looking recently used.</li>
138+
<li>Mobile: idle chat tabs now wake up and show their full history instead of appearing empty.</li>
139+
<li>Sub-agents launched in the background now render correctly in Chat.</li>
140+
<li>Dropped SSH tunnels now recover automatically instead of crashing Harness or going silently dead.</li>
141+
<li>Worktrees no longer flash red while the auto-approver is still deciding on a tool call.</li>
142+
<li>Background git polling no longer contends with other git operations for the index lock.</li>
143+
<li>Fixed low-contrast code blocks in light theme.</li>
144+
<li>Fixed a race where a new worktree's kickoff prompt could get silently dropped during pane setup.</li>
145+
<li>Restarting Harness now resumes the correct Claude session after using <code>/clear</code>, instead of an old one.</li>
146+
<li>Claude's clarifying questions in Chat are now answerable instead of silently going unanswered.</li>
147+
</ul>
148+
</div>
149+
</section>
150+
105151
<!-- v2.13.2 -->
106152
<section id="v2.13.2" class="release-section py-10">
107153
<div class="flex flex-col sm:flex-row sm:items-baseline gap-2 sm:gap-4 mb-1">

0 commit comments

Comments
 (0)