v0.1.10-nightly.20261115.4723 · 221 changes from 92 contributors
- Resume Cursor turns. Resume a stopped Cursor turn from its latest checkpoint without sending a new message.
- Cursor compaction. Manually compact Cursor conversations from the slash menu or context meter.
- Large pull request diffs. Load a pull request file’s diff on demand when it is too large to show automatically.
- Faster pull request actions. Pull request actions, title edits, and labels now update immediately across all supported hosts.
- Faster delegated tasks. Delegated tasks start and finish faster in long threads.
- Prompt recovery. Prompts awaiting provider acceptance are preserved if the server restarts.
- Scratch thread protection. Agents can no longer delete the built-in No project workspace and its threads.
Plus 205 more bug fixes and performance improvements.
Full changelog
What's Changed
- perf(server): text-only browser snapshots skip the PNG encode (66 ms → 20 ms median) by @Yuruzuu in #30305
- fix(web): diff Copy path uses Windows separators in a Windows workspace by @spoukyii in #30394
- fix(opencode): usage totals include what OpenCode 2 spends on compaction by @MarcoDotIO in #30565
- fix(web): opening a project or deleting the open thread skips delegated tasks by @spoukyii in #30428
- chore(web): upgrade @pierre/diffs to 1.7.0-beta.4 and drop patched find by @juliusmarminge in #36974
- fix(server): keep Vietnamese words readable in scratch folder names by @epistex-dev in #30311
- fix(client-runtime): a line of inline triple-backtick code no longer breaks media in PR descriptions by @MarcoDotIO in #30571
- fix(web): preserve thread identity across composer pastes by @ElliotDrel in #30583
- fix(opencode): pages a Code Mode script publishes now show inline by @DavidPerezA12 in #30492
- fix(cursor): preserve recognized transport failure diagnostics by @trevoedwards in #30631
- fix(client-runtime): a disconnected machine's scratch folder no longer lists as a second "No project" by @tiliakoos in #30597
- fix(mobile): iOS tab bar no longer covers a thread opened from the Usage tab by @juliusmarminge in #36975
- fix(cursor): stream Task subagent work into child threads live by @humbertogontijo in #30539
- fix(web): app loads in browsers without URL.canParse or URL.parse by @juliusmarminge in #36973
- fix(server): preserve the crash recovery budget across restarts by @maria-rcks in #25603
- fix(server): Claude goals no longer re-prompt while a delegated task will wake the thread by @georgenijo in #30646
- fix(codex): preserve terminal connection failure categories by @trevoedwards in #30639
- fix(client-runtime): derive MCP download names before URI suffixes by @Jo2234 in #30712
- fix(desktop): providers are found after a failed shell probe without relaunching by @nabettu in #30667
- feat(themes): theme CSS can hold 50,000 characters by @pouyarezvani in #36656
- fix(web): diff file Open and Reveal reach a file whose name has a backslash by @only21mil in #23167
- fix(release): enforce packaged Linux glibc requirements by @voltcrash in #30827
- fix(client-runtime): tool output no longer rounds integers beyond 2^53 by @geezoria in #30806
- fix(gitlab): remove reactions beyond the first award page by @Jo2234 in #30700
- fix(server): let Expo decide EAS Simulator access by @hirbod in #29490
- perf(azure-devops): opening a pull request no longer reads it twice by @amv146 in #29918
- fix(shared): the SQLite reader pool comes back after a failed start by @navidnadali in #30818
- fix(web): keep history-placed guest messages out of the footer by @Jo2234 in #30718
- fix(shared): keep Windows path separators beside ampersands by @tanav29 in #36977
- fix(cli): keep log warnings out of JSON output by @voltcrash in #30898
- fix(web,mobile): a late MCP app teardown no longer closes the app that replaced it by @seth-dixon in #30387
- fix(server): Grok usage counts turns from resumed sessions by @saphid in #30694
- test(desktop): wait for the published PATH after a fallback-shell retry by @juliusmarminge in #36991
- fix(server): checkpoint restore reverts edits inside submodules by @muhammad-auon-marham in #30829
- perf(server): delegated tasks start and finish without reading the whole parent thread by @t3dotgg in #34551
- fix(pi): resume attached sessions without reloading extensions by @juliusmarminge in #21512
- fix(provider-acp): a cancel no longer overtakes the prompt it cancels by @navidnadali in #30846
- fix(server): wake GitLab MR watches when a rebase is required by @tcrapts in #30312
- fix(server): drain queued native child continuations by @juliusmarminge in #21461
- fix(web): a send that finishes after you leave its thread no longer blanks the open thread's composer by @Isaac-b-ux in #30947
- fix(mobile): Android menus opened over the keyboard close when it hides by @Onkarj012 in #30853
- fix(client-runtime): omit machine labels from relay spans by @Mr-Neutr0n in #30940
- fix(server): MCP list tools clamp an oversized limit instead of failing by @MarcoDotIO in #30976
- perf(web): collapse all no longer remounts the diff viewer by @juliusmarminge in #36995
- fix(server): skip Codex page context in imported titles by @flexi767 in #31090
- fix(web): renaming a sidebar thread no longer shifts the row or covers it with the hover card by @shlokkhemani in #31009
- perf(server): resolve model aliases in one memoized traversal by @hieu-lee in #31197
- perf(relay): reconcile multiline env values without rescanning prefixes by @hieu-lee in #31196
- fix(server): terminals start a $SHELL whose path contains a space by @MarcoDotIO in #30969
- fix(desktop): a waiting update is no longer re-announced on every poll by @onlydole in #31154
- fix(acp): replace and remove identified plans across turns by @tanav29 in #36978
- fix(server): streamed replies keep updating after a line that starts with inline triple-backtick code by @MarcoDotIO in #30966
- fix(provider-cursor): advertise manual compaction by @defyrlt in #31203
- fix(web): preserve published theme IDs during alias lookup by @Jo2234 in #31318
- fix(mobile): iOS image viewer pages and dismisses after slow opens by @juliusmarminge in #36862
- test(server): stop Git auto-maintenance racing the shared repo template copy by @juliusmarminge in #37012
- fix(server): Open in and Reveal open ~/ file links from projects outside the home folder by @MarcoDotIO in #31246
- perf(server): Windows terminals report exit 0.9 s sooner (PowerShell 1,034 → 138 ms) by @Pyseph in #30880
- fix(web): up-arrow recall keeps thread and machine mentions by @carlosricojr in #31314
- fix(web): choosing a provider in the model picker no longer raises the phone keyboard by @vytorrennan in #36999
- fix(cursor): resume stopped turns with Cursor's native resume action by @Yash-Singh1 in #36918
- fix(web): an unreachable environment no longer hides pull requests from repositories it shares by @johns1x in #34088
- fix(web): honor right panel state in custom shortcuts by @cesarbahena in #34081
- fix(shared): decode URI paths in ghq clone folders by @Lucenx9 in #37004
- fix(web): overlapping image pastes keep their prompt order by @StiensWout in #37010
- fix(web): show failed desktop downloads in retry tooltips by @Jo2234 in #31324
- perf(right panel): normalize pr tab target once by @rgodha24 in #37002
- fix(marketing): prevent harness-grid content overflow on mobile devices. by @SimonDdungu in #31459
- fix(mobile): diagonal thread-row swipes open on Android instead of scrolling the list by @juliusmarminge in #37011
- fix(web): focus side-chat composer when selecting its tab by @joeyvandijk in #31360
- fix(claude): show monitor commands in background work details by @Yash-Singh1 in #37019
- fix(web): thread chips in the composer can no longer be dragged out as links by @NawfalAhmed in #31541
- fix(web): show drag preview inside sidebar search results by @Yash-Singh1 in #37022
- perf(desktop): the remote editor list appears in 62 ms instead of 2.5 s (17 editors, 58 PATH entries, Windows) by @Pyseph in #31033
- fix(codex): crashed handlers and transport workers no longer hang silently by @iXab3r in #31192
- fix(mobile): an answered question no longer shows its raw item JSON by @Jacksondr5 in #31330
- perf(server): message ordinals are read through an index, not a scan by @navidnadali in #30873
- perf(web): batch middle truncate fits by @rgodha24 in #37001
- fix(web): prevent stray highlights when selecting shell commands by @Yash-Singh1 in #37024
- fix(desktop): Check for Updates says when an update is available by @juliusmarminge in #31957
- fix(web): right panel shortcuts work while a side chat has focus by @juliusmarminge in #32117
- feat(github): issues and PRs from denounced authors close when opened by @maria-rcks in #37017
- fix(server): threads show the new branch's pull request after a branch switch by @juliusmarminge in #32042
- fix(server): preserve run start time when steering restarts a turn by @flamboh in #31640
- fix(cli): t3 project add brings back an archived project instead of refusing it by @MarcoDotIO in #31661
- fix(web): track switch no longer blocked when Local environment is off by @juliusmarminge in #32048
- fix(web): reopened composer drafts keep quote spacing and show the caret by @juliusmarminge in #31880
- fix(server): SSH device host probe failures say what ssh refused by @ahalekelly in #31695
- fix(provider-acp): Grok runs complete when a background dev server keeps running by @juliusmarminge in #32109
- fix(server): parallel worktree launches no longer leave all but one branch on its t3/ name by @MarcoDotIO in #31662
- fix(client): avoid worktree setup flash after editing first message by @aminevg in #31738
- fix(codex): an app-server that exits before initialize reports its exit, not EPIPE by @juliusmarminge in #37029
- fix(server): count only newly imported agent threads by @juliusmarminge in #37025
- fix(usage): a Claude hub account with an unmeasured window keeps its other limits by @MarcoDotIO in #31748
- fix(server): thread_not_found points agents at linked environments by @juliusmarminge in #31946
- perf(web): Expand all folders in the diff file tree no longer rescans every folder for each expansion by @Pyseph in #31465
- fix(server): a send to an idle thread with a queue now waits behind it by @juliusmarminge in #33857
- fix(shared): recognize SSH remotes with a single path component by @darshmahadevia in #31781
- fix(mobile): grouped projects show their own monogram in the picker and draft rows by @johns1x in #31195
- fix(shared): file mentions of init.py keep their name as the label by @matyasrathonyi in #31593
- fix(server): delegate_task model refusals name slugs to retry with by @juliusmarminge in #31905
- fix(server): clearing a terminal that keeps printing no longer hangs by @MarcoDotIO in #31752
- fix(shared): preserve Git remote headers after comments by @darshmahadevia in #31788
- fix(server): dictionary spellings apply next to Chinese and Japanese text by @zedong-peng in #31780
- fix(server): MCP tools no longer advertise non-string enums that Gemini rejects by @juliusmarminge in #37031
- fix(server): re-base worktree launches whose recorded base ref does not resolve by @sgoley in #31747
- fix(web): expand viewed checkbox click area by @Yash-Singh1 in #37033
- fix(web): Shift+F6 moves from a side chat back to the main chat by @muunkk in #31931
- fix(server): check out cloned submodules when one submodule clone fails in a new worktree by @juliusmarminge in #37030
- fix(server): MCP send errors say how to continue a finished thread by @juliusmarminge in #31908
- fix(server): open WSL-mounted Windows drives directly in File Explorer by @spoonkuh in #31816
- fix(server): PR watch wakes quote a bot comment's text, not its HTML by @juliusmarminge in #37032
- fix(web): opening a project from the command palette skips settled and snoozed threads by @spoukyii in #31894
- fix(web): the PDF preview says "1 / 1 page" for a one-page PDF by @spoukyii in #31885
- fix(server): setup script output no longer shows stray bytes of escape sequences by @spoukyii in #31882
- fix(web): the SQLite, archive and notebook previews say "1 row", "1 entry" and "1 cell" by @spoukyii in #31886
- fix(web): notebook error previews no longer show terminal color codes by @geezoria in #31929
- perf(server): skip non-image results in project icon searches by @voltcrash in #32089
- fix(server): retain scheduled dispatch refusal reasons by @macodev00 in #32115
- fix(codex): settle unfinished web searches when turns end by @Sidreyas in #32177
- fix(pi): Pi agents get T3CODE_THREAD_ID like Claude, Codex and ACP sessions by @spoukyii in #31870
- fix(cli): t3 connect and t3 service hints keep --base-dir by @spoukyii in #31906
- fix(shared): compare prerelease versions without locale or precision loss by @luke2x in #32169
- fix(server): NixOS container and systemd-nspawn veths are no longer advertised as LAN routes by @repparw in #32140
- fix(relay): slow APNs requests no longer delay other devices by @Sidreyas in #32183
- fix(server): proxied Codex usage limits keep their reset time by @EhsanulHaqueSiam in #32188
- fix(server): session cookies are Secure when the request arrived over HTTPS by @juliusmarminge in #37042
- fix(server): session import no longer counts unused sessions as failures by @mthsmb in #32122
- perf(server): reuse Find documents across query changes by @voltcrash in #29310
- fix(server): branch PRs stay matched when a remote has a second push URL by @saphid in #29625
- fix(server): Stop on a stalled run closes its approval and question cards by @saphid in #30695
- fix(pi): recognize OmO's builtin tool search by @wuhaoyujerry in #32321
- fix(server): boot-started linux servers offer and open the file manager by @Tiaxi in #33107
- fix(server): typing after a click by coordinates no longer hangs a preview tab by @Entrpi in #32845
- fix(server): Claude MCP elicitations T3 cannot show are cancelled, not declined by @buttjer in #33575
- fix(server): log canceled relay requests at debug level by @Sidreyas in #32215
- fix(acp): give Command Code T3's MCP endpoint over HTTP by @ajinkyajacob in #34004
- Fix #29433: Restore Codex MCP apps after thread unload by @amr807 in #29498
- fix(server): regenerate an empty persisted secret instead of failing startup by @juliusmarminge in #32053
- fix(server): Gemini Spark can register its six MCP OAuth redirect URIs by @juliusmarminge in #31319
- fix(cli): the already-running error names the t3 pair command that connects by @juliusmarminge in #31543
- fix(server): read_pull_request_guide reads no-checkout hosts through the caller's project by @juliusmarminge in #35913
- fix(server): Codex calls delegate_task directly instead of from Code Mode by @juliusmarminge in #30019
- fix(forgejo): review guides work for checkouts whose SSH remote is not the web host by @juliusmarminge in #29784
- fix(effect-acp): reject elicitation modes the client did not advertise by @juliusmarminge in #35839
- fix(server): MCP refuses disallowed browser origins with 403 before auth and CORS by @juliusmarminge in #35810
- fix(mcp): explain cross-thread permission rejections by @07rjain in #36934
- fix(web): Add Environment drops the old tab's error when switching mode by @kvapca in #32157
- fix(server): malformed MCP client registration returns an RFC 7591 error body by @juliusmarminge in #35809
- fix(server): pairing codes typed in hyphen- or space-separated groups are accepted by @juliusmarminge in #35069
- fix(shared): use HTTP for schemeless loopback previews by @JoaoMarcos44 in #29710
- fix(opencode): Full access subagents start without approval prompts by @juliusmarminge in #35401
- fix(desktop): saving keeps a connection catalog this build cannot read by @juliusmarminge in #34944
- fix(pi): model list loads when the server's folder has a project MCP config by @chaitanyaprem in #28557
- fix(server): Git LFS images in pull request descriptions load the object, not its pointer by @juliusmarminge in #35466
- fix(server): desktop preview uploads accept files over 50 MB by @juliusmarminge in #30299
- fix(usage): keep default-home history after the default account moves by @juliusmarminge in #36727
- fix(provider-acp): approving a Devin plan never picks its bypass-permissions option by @juliusmarminge in #34474
- fix(server): guests of a forked thread can expand the commands it inherited by @saphid in #29764
- docs(user): Tailscale HTTPS lists what the tailnet needs by @WesleySmits in #23759
- fix(client-runtime): MCP app results with images reach the app instead of waiting forever by @juliusmarminge in #31338
- fix(gitlab): a pasted repository URL is looked up by its project path on its host by @Dkm0315 in #35209
- fix(server): skip user hooks in Codex text generation by @thelogicmatrix in #35203
- fix(server): worktrees of git-annex repositories can be removed by @cardoso-neto in #34065
- fix(server): Codex model changes no longer restart a shared session from another worktree by @juliusmarminge in #34129
- fix(cursor): an aborted Cursor SDK stall no longer stops the server by @Gourav224 in #23354
- fix(forgejo): prefer the deepest-mounted login when a root login also matches by @juliusmarminge in #35916
- fix(opencode): Go-key-only instances keep OpenCode Go usage on OpenCode 2 by @juliusmarminge in #36519
- fix(client-runtime): opening an old search result keeps messages in order by @juliusmarminge in #29711
- fix(server): MCP OAuth rejects a resource with an empty fragment by @juliusmarminge in #35808
- fix(provider-core): branch-name generation no longer starts the user's task by @juliusmarminge in #36222
- fix(web): desktop window recovers when its backend restarts during a renderer reload by @juliusmarminge in #26612
- fix(server): an explicit Tailscale IPv6 bind is advertised as a tailnet route by @juliusmarminge in #34742
- fix(server): agent slice memory limits follow live memory changes by @OmarAlex24 in #30581
- fix(grok): background text generation no longer inherits Grok always-approve by @saphid in #29692
- fix(server): preview port discovery stops polling while no client is in the foreground by @juliusmarminge in #29782
- fix(web): right-panel shortcuts work on a new, unsent thread by @juliusmarminge in #35189
- fix(desktop): a backend busy right after startup no longer ends in a fatal HTTP 500 screen by @juliusmarminge in #34918
- fix(onepassword): a failed batch read no longer outlasts the 45-second bound by @juliusmarminge in #35937
- fix(server): agents get no device tools or instructions while the Device hub is off by @juliusmarminge in #32542
- fix(server): clients paired over Tailscale Serve keep their own address by @juliusmarminge in #35559
- fix(server): HTML previews load relative video and audio files by @juliusmarminge in #36199
- fix(server): a linked launch above the link's access names the link, not the parent mode by @juliusmarminge in #27334
- fix(server): Claude append launch text may start with two hyphens by @juliusmarminge in #35598
- fix(cursor): text generation retries without the sandbox when send rejects it by @juliusmarminge in #34844
- fix(server): resolve Claude WinGet launchers on Windows by @Sidreyas in #32138
- fix(server): Claude knows decline feedback is the user's message by @juliusmarminge in #27871
- fix(acp): permission answers send the agent's option id unchanged by @juliusmarminge in #35837
- fix(server): forwarded calls to a linked environment no longer wait out a silent first address by @juliusmarminge in #35546
- fix(server): Claude sessions no longer log a canUseTool shadowing warning by @mahirozdin in #31548
- fix(server): Claude text generation honors --settings launch args by @juliusmarminge in #34874
- docs: align delegation guide with current MCP contract by @jacobcorbett in #31045
- fix(server): fx threads load the user's profile MCP servers by @juliusmarminge in #29538
- fix(acp-registry): executables named like ..agent count as inside their install folder by @juliusmarminge in #35840
- fix(server): usage mapped onto a Pi, Cursor or Antigravity model prices at that model's rate by @MarcoDotIO in #32219
- fix(server): resuming a queue no longer bypasses failed worktree setup by @StiensWout in #36616
- fix(server): agents can no longer delete the built-in No project through MCP by @juliusmarminge in #33773
- fix(web): load a too-large PR file's diff on demand by @Yash-Singh1 in #37007
- fix(cli): t3 up and t3 status hints keep --base-dir by @spoukyii in #31878
- fix(server): forks of forks keep their deleted source's files by @shivamhwp in #32255
- fix(web): stashed prompt previews no longer end in a broken character by @felixlaga in #32404
- fix(web, mobile): a failed terminal resize is sent again by @juliusmarminge in #32047
- fix(gitcafe): recognize ssh:// remotes that name no user by @jancuk in #32363
- fix(server): EPUB text extraction skips the chapter head by @jancuk in #32370
- fix(mobile): queued messages show mentions and files by name, not as raw links by @MarcoDotIO in #32224
- fix(web): [NIT] SF Pro label no longer renders in a serif in the font picker by @plusk-dev in #24082
- fix(web): quieter Ready and Merge buttons on PR rows by @flamboh in #25346
- fix(prs): include Storybook files in the test filter and counts by @aminevg in #29083
- fix(web): settings section headers no longer overlap their actions on narrow screens by @M0xoo in #29503
- fix(web): theme import no longer says a file just under 1 MB is "1024 KB" by @spoukyii in #30330
- fix(web): use available space for project breadcrumbs by @bentbrain in #30503
- docs: include required Bitbucket workspace read scope by @chungweileong94 in #30593
- fix(web): subagent status dots no longer jump between corners by @markjoshwel in #30753
- fix(web): resource monitor no longer claims to sample every 0 ms by @M0xoo in #29749
- fix(web): the minimap keeps the current turn lit while reading a long reply by @Yuruzuu in #30084
- fix(desktop): voice input recovers after Linux audio restarts by @voltcrash in #32376
- perf(pr): actions, title edits and labels show the moment you click, on every host by @Bil0000 in #32774
- fix(provider-core): background work notices no longer say every task failed when one did by @felixlaga in #32407
- fix(server): restarts no longer drop prompts the provider never accepted by @Jolymmiles in #32413
- perf(web): typing no longer re-renders the composer's footer controls by @OmarAlex24 in #32323
- fix(server): task_status no longer reports a restart-continued task as cancelled by @Jolymmiles in #32414
New Contributors
- @epistex-dev made their first contribution in #30311
- @DavidPerezA12 made their first contribution in #30492
- @humbertogontijo made their first contribution in #30539
- @muhammad-auon-marham made their first contribution in #30829
- @Isaac-b-ux made their first contribution in #30947
- @flexi767 made their first contribution in #31090
- @shlokkhemani made their first contribution in #31009
- @defyrlt made their first contribution in #31203
- @vytorrennan made their first contribution in #36999
- @johns1x made their first contribution in #34088
- @cesarbahena made their first contribution in #34081
- @rgodha24 made their first contribution in #37002
- @SimonDdungu made their first contribution in #31459
- @joeyvandijk made their first contribution in #31360
- @NawfalAhmed made their first contribution in #31541
- @darshmahadevia made their first contribution in #31781
- @matyasrathonyi made their first contribution in #31593
- @zedong-peng made their first contribution in #31780
- @sgoley made their first contribution in #31747
- @muunkk made their first contribution in #31931
- @spoonkuh made their first contribution in #31816
- @mthsmb made their first contribution in #32122
- @wuhaoyujerry made their first contribution in #32321
- @Tiaxi made their first contribution in #33107
- @buttjer made their first contribution in #33575
- @ajinkyajacob made their first contribution in #34004
- @amr807 made their first contribution in #29498
- @07rjain made their first contribution in #36934
- @kvapca made their first contribution in #32157
- @JoaoMarcos44 made their first contribution in #29710
- @chaitanyaprem made their first contribution in #28557
- @Dkm0315 made their first contribution in #35209
- @OmarAlex24 made their first contribution in #30581
- @mahirozdin made their first contribution in #31548
- @jancuk made their first contribution in #32363
- @plusk-dev made their first contribution in #24082
- @chungweileong94 made their first contribution in #30593
- @markjoshwel made their first contribution in #30753
Full Changelog: v0.1.10-nightly.20261114.4709...v0.1.10-nightly.20261115.4723