Thank you so much for using Orca and for your continued support! ❤️
The short version
Agents & chat: Session search now shows the newest activity first, and launch prompts go straight to terminal agents. OpenCode, Claude, Pi, Antigravity and Devin launches are more reliable. Usage totals now price GPT-6, Opus 5.5 and Fable 5.1, and Codex usage no longer goes stale after a reset.
Terminal, editor & workspaces: Drag selection holds steady during redraws, middle-click paste works in mouse-tracking TUIs, and remote panes keep their scrollback across restarts. PDF zoom sticks across tabs and restarts, the new-worktree dialog keeps its buttons in view while you scroll, and large artifact and conflict lists stay fast.
Remote & reliability: WSL, SSH and Windows setups recover more cleanly, and relay rehomes and cell rollouts handle failures without taking a cell down.
Product experience
Agents, chat & search
Search is easier to trust, agent launches are more direct, and large workspace lists stay responsive.
- feat(agent-launch): deliver a launch prompt to a terminal agent by @brennanb2025 in #21891
- feat(session-search): sort search results by newest, and break relevance ties by recency by @Jinwoo-H in #21863
- Virtualize artifacts list with reusable component by @AmethystLiang in #22061
- Virtualize large conflict file trees by @AmethystLiang in #21920
- refactor: use generic VirtualizedList in conflict review by @AmethystLiang in #22092
- Fix stale listings when search query changes by @AmethystLiang in #22173
- refactor(agent-status): drop two superseded Codex attention workarounds by @brennanb2025 in #21844
- fix(native-chat): scope a tool row's hover reveal to that row by @brennanb2025 in #21918
- Clear website annotations after successful delivery by @AmethystLiang in #22060
Usage reporting
Codex, OpenCode, and Claude cost totals are more complete and stay fresh.
- Fix stale Codex usage after reset by @OrcaWin in #21748
- fix: read OpenCode Go usage from the console API by @innocarpe in #21462
- fix(opencode): include cache read and write usage totals by @nwparker in #21886
- fix(usage): price GPT-6 Astra, and declare when the Codex cost total omits a model by @Jinwoo-H in #22073
- fix(usage): price GPT-6 Sol/Luna, Opus 5.5 and Fable 5.1, and correct GPT-5.6 rates by @Jinwoo-H in #22350
Terminal
Input, selection, paste, composed text, and remote scrollback are more consistent.
- fix(terminal): keep Pi input visible in open synchronized frames by @nwparker in #21708
- fix(terminal): preserve Polish and Option-composed text in kitty panes by @nwparker in #21082
- fix(terminal): keep drag selection stable during redraws by @nwparker (release-branch fix, see v1.4.207...v1.4.209)
- fix(terminal): arm native-paste suppression on middle-click in mouse-tracking TUIs by @buf0-bot in #21834
- fix(terminal): let Shift+middle-click paste in mouse-tracking panes by @buf0-bot in #21858
- feat(terminal): configure interactive Unix shell arguments by @nwparker in #21904
- fix(terminal): persist a parked remote pane's scrollback across a hard restart (#21295) by @nwparker in #21367
- fix(mobile): make OMP terminal momentum refresh-rate independent by @nwparker in #21687
Editor, workspaces & source control
PDF work, Markdown navigation, worktree dialogs, and source-control hover states are more consistent.
- fix(editor): persist PDF zoom across tabs and restarts by @Jinwoo-H in #21879
- fix(editor): open plain details blocks in rich markdown mode by @SahilZ0810 in #19784
- fix(editor): preserve Markdown preview when following wiki links by @SahilZ0810 in #19790
- Keep new worktree dialog actions visible while scrolling by @nwparker in #21915
- Consolidate source control tooltips to eliminate redundant hover text by @AmethystLiang in #21733
- Fix Antigravity source-control model discovery and retired defaults by @nwparker in #21606
Providers & assistants
OpenCode, Claude, Pi, Antigravity, and Devin launches behave better.
- fix(opencode): preserve global config discovery by @nwparker in #21854
- fix(opencode): attribute shared-server sessions to their panes by @werlang in #21577
- fix(opencode): isolate v1/v2 plugins and preserve WSL config by @nwparker in #21900
- fix(opencode): support v2 plugins under plain executable name by @nwparker (release-branch fix, see v1.4.207...v1.4.209)
- fix(opencode2): auto-submit quick command prompts by @nwparker (release-branch fix, see v1.4.207...v1.4.209)
- fix(claude): stream the provider history window by @nwparker in #21742
- fix(claude): prefill continuation context for manual submission by @nwparker in #21912
- fix(pi): keep panes working while async subagents run by @nwparker in #21882
- fix(orchestration): line-settle delay for antigravity multiline paste by @seonghobae in #21665
- fix(antigravity): recognize non-Gemini tui-idle prompts by @innocarpe in #21231
- fix(devin): skip workspace trust for Orca launches by @nwparker in #21925
Remote, SSH, WSL & Windows
Guest materialization, profiles, rebuilds, and connection floors are more resilient.
- fix(wsl): await Pi and OMP guest relay materialization by @nwparker in #21721
- fix(wsl): preserve OpenCode agent variant in guest by @nwparker (release-branch fix, see v1.4.207...v1.4.209)
- fix(worktree): recognise the Windows profile through WSL's drvfs view by @nwparker in #20051
- fix(windows): prune the unpatched conpty prebuild by header, not host arch by @nwparker in #20048
- fix(ssh): keep the generation floor when a target is removed and recreated by @nwparker in #22146
- fix(remote-runtime): stop an unhydrated host graph from reading as a closed terminal by @nwparker in #21967
- fix(rebuild): refuse to compile node-pty source that lacks the MSYS breakaway denial by @nwparker in #21968
Relay & reliability
Rehomes, cells, and same-cap rollouts recover more cleanly.
- fix(relay): abort rehomes whose host never arrived, without disabling the switch by @Jinwoo-H in #21813
- fix(relay): let the rehome evidence parser read a line the director grew by @Jinwoo-H in #21823
- fix(relay): stop a terminated checked-out PostgreSQL client from killing the cell by @Jinwoo-H in #21840
- fix(relay): re-place hosts off a cell isolated for a roll by @Jinwoo-H in #21911
- perf(relay): cut the cell LB drain to 60s and widen the same-cap batch to ten cells by @Jinwoo-H in #21848
- fix(relay): land the cell backend drain and request logging inside the same-cap wave by @Jinwoo-H in #21860
- fix(relay): bound the same-cap shadow gate in time and apply a resumed backend update by @Jinwoo-H in #21865
- fix(memory): release stale session registries by @OrcaWin in #21734
- fix(runtime): an outage is not a handle-gap verdict by @nwparker in #20059
Mobile (OTA page)
The over-the-air page gains screencasting, terminal, media, preview, diagram, dictation, and route support. Listed here for visibility only; the mobile app ships on its own release schedule.
- fix(mobile): measure the keyboard from visualViewport inside the page (OTA phase C, C4.2) by @Jinwoo-H in #21735
- feat(mobile): carry browser screencast frames over the bridge as base64 (OTA phase C, C6.1) by @Jinwoo-H in #21758
- feat(mobile): paint browser screencast frames through web siblings (OTA phase C, C6.2) by @Jinwoo-H in #21754
- feat(mobile): budget the browser pane's frames and put its inputs on the web seam (OTA phase C, C6.3+C6.4) by @Jinwoo-H in #21760
- feat(mobile): add the media verbs the page's pickers and paste will use (OTA phase C, C7.4) by @Jinwoo-H in #21779
- feat(mobile): take the session screen's inputs, links, clipboard and routers through the platform seams (OTA phase C, C7.2) by @Jinwoo-H in #21790
- feat(mobile): budget the terminal snapshot on serialized bytes and hold live output instead of ending the stream (OTA phase C, C7.3) by @Jinwoo-H in #21785
- feat(mobile): put the page's pickers, paste and editor fallbacks on the media verbs (OTA phase C, C7.6) by @Jinwoo-H in #21795
- fix(mobile): settle browser dialogs on the stream that reports them, map taps through the page scale, and sweep the frame budget on the real encoder (OTA phase C, C6.7) by @Jinwoo-H in #21799
- feat(mobile): mount the terminal document in the page over its own modules (OTA phase C, C7.5) by @Jinwoo-H in #21809
- feat(mobile): fire the page's haptics over the bridge notify (OTA phase C, C7.10 E) by @Jinwoo-H in #21864
- feat(mobile): render Mermaid diagrams on the page from one deferred engine artifact (OTA phase C, C7.10 B) by @Jinwoo-H in #21871
- feat(mobile): render the HTML preview on the page in a sealed srcdoc frame (OTA phase C, C7.10 A) by @Jinwoo-H in #21862
- feat(mobile): dictation on the OTA page over native audio verbs (Phase C, C7.10 PR D) by @Jinwoo-H in #21905
- feat(mobile): register the source-control and review page routes (OTA phase C, C4.4) by @Jinwoo-H in #21957
- feat(mobile): serve any manifest route through a [...page] catch-all (OTA phase C, C8) by @Jinwoo-H in #21950
- fix(mobile): keep an in-page hop local only when the session's grants cover it (OTA phase C, C2.9) by @Jinwoo-H in #21723
- fix(mobile): admit https: images on the web shell's CSP (OTA phase C, ruling 27) by @Jinwoo-H in #21964
- fix(mobile): four pre-existing rich Markdown editor defects (OTA phase C, C1 follow-up) by @Jinwoo-H in #22054
- fix(mobile): restore query-string's named exports under the 9.5.1 override by @Jinwoo-H in #21727
Internationalization
Translated strings stay in sync with code changes.
- fix(i18n): regenerate the runtime catalog and localize the cookie example from #21462 by @Jinwoo-H in #21889
- fix(i18n): regenerate the runtime-required catalog for the source-control tooltip key by @Jinwoo-H in #21942
Full Changelog: v1.4.207...v1.4.209