github stablyai/orca v1.4.227

3 hours ago

Thank you so much for using Orca and for your continued support! ❤️

The short version

  • Native chats have their own permission mode. Choose permissions for each new Claude or Codex chat from Settings → Chat → Behavior; existing chats keep the mode they were already using, and changing models no longer resets it.
  • Native chat sessions are easier to continue. You can resume large terminal conversations in a new native chat, recover chats whose only work ran in the background after a restart, and see every supported chat provider accurately in Session History.
  • Claude accounts and Codex chat setup are smoother. Claude accounts again use separate folders, the sign-in link can be copied, Codex chats require version 0.136.0 or later, and Codex Ultrafast is available as a speed choice.
  • Browser automation gives your keyboard back reliably. Agent browser commands target the intended page, and browser popups behave more like Chrome.
  • Also: worktree cleanup is safer, read macOS notifications disappear from Notification Center, long chats load better on phones, and cold session-history reads avoid unnecessary reindexing.

Product experience

UI / workspace

Safer worktree cleanup, tidier macOS notifications and small translation cleanup.

  • fix(worktrees): never delete a folder git no longer tracks by @brennanb2025 in #25075
  • fix(notifications): remove read macOS notifications from Notification Center by pane thread by @Jinwoo-H in #28425
  • fix(i18n): drop chat-mode keys removed from en.json in #28113 by @nwparker in #28131

Orchestration

Retries no longer leave failed worker starts piling up as live agents.

  • fix(orchestration): stop retried failed worker starts from piling up live agents by @brennanb2025 in #27795

Agents / native chat

Each Claude and Codex chat keeps its own permission mode, chats are easier to resume and manage, Claude accounts return with safer sign-in, and chat settings and model handling are more consistent.

  • feat(native-chat): each Claude/Codex chat gets its own permission mode by @brennanb2025 in #26116
  • fix(native-chat): chats from before permission modes keep the mode they were running with by @brennanb2025 in #28099
  • fix(native-chat): seed the chat permission default from Claude's and Codex's own arguments by @brennanb2025 in #28100
  • feat(settings): move Permissions for new chats into the Chat page's Behavior section by @brennanb2025 in #28212
  • fix(native-chat): store a chat's permission mode on its own, so a model pick can't reset it by @brennanb2025 in #28268
  • feat(native-chat): require Codex 0.136.0 for chats by @brennanb2025 in #26684
  • feat(native-chat): offer Codex Ultrafast as a speed choice by @brennanb2025 in #26962
  • Re-land Claude per-account folders (#24434, #26405) with the upgrade and proxy fixes by @Jinwoo-H in #26801
  • Add "Copy sign-in link instead" for Claude accounts (STA-9912) by @Jinwoo-H in #26990
  • fix(native-chat): offer resume after restart for chats whose only work was in the background by @brennanb2025 in #27167
  • fix(native-chat): resume large terminal conversations in a new native chat by @brennanb2025 in #29056
  • Terminal header button: Resume in New Native Chat replaces Show chat view by @brennanb2025 in #27184
  • fix(tab-bar): offer Resume in New Native Chat only while the tab's agent is running by @brennanb2025 in #27520
  • Session History shows OpenCode, Grok, OMP and Pi chats as chats and refuses a second terminal writer by @brennanb2025 in #27183
  • Session History: resume folder workspace chats in their own folder by @brennanb2025 in #27209
  • Resume dialog: show a finished resume as a result, not a picker by @brennanb2025 in #27732
  • Save a new chat's first message during create by @brennanb2025 in #26332
  • fix(native-chat): settle a reply cut off by a server restart by @brennanb2025 in #26460
  • Open a chat visual in its own tab instead of the sidebar by @brennanb2025 in #26728
  • Let a Codex chat stop a command it left running in the background by @brennanb2025 in #26780
  • fix(native-chat): preserve running subagent rows in long chats by @brennanb2025 in #26798
  • A new Pi chat names the model it will run on its first frame by @brennanb2025 in #26821
  • Keep Chat UI users with a Terminal default on the terminal, with a chat mode switch in the upgrade tip by @brennanb2025 in #26915
  • Floating-workspace chats of every native-chat agent keep links in the folder they started in by @brennanb2025 in #26981
  • Every agent reports its learned default model once, when a chat starts by @brennanb2025 in #26982
  • Let a Grok chat list and stop the commands it left running in the background by @brennanb2025 in #27022
  • Let a Codex chat stop a sub-agent from the background-tasks strip by @brennanb2025 in #27026
  • fix(native-chat): a new chat's model and effort pickers match their first frame before the agent starts by @brennanb2025 in #27031
  • Native chat: every agent launches through one composed launch path by @brennanb2025 in #27204
  • Edit agent launch settings on the workspace host by @brennanb2025 in #26479
  • One shared subagent tracker for Claude, Codex and Grok chat rows by @brennanb2025 in #27228
  • Native chat: read one saved row per subagent (part 1 of 2) by @brennanb2025 in #27914
  • feat(chat): host writes one saved row per subagent by @brennanb2025 in #27947
  • feat(settings): move Chat UI's chat settings from Experimental to the Chat page by @brennanb2025 in #28050
  • fix(tab-bar): native chat tabs show their recorded provider, not one guessed from the title by @brennanb2025 in #28082
  • Replace chat upgrade switch with primary Enable Now button by @nwparker in #28113
  • Make Enable Now the full-width action in the chat upgrade tip by @brennanb2025 in #28199

Remote server / SSH

Paired devices are identified by their device ID instead of a credential.

  • native chat: identify a paired device by its device id, never its credential by @brennanb2025 in #26777

Browser

Popups follow Chrome’s behavior more closely, while agent browser actions stay focused on the intended page and return the keyboard when they finish.

  • Open links and window.open in Orca tabs the way Chrome does by @Jinwoo-H in #26976
  • Fix browser login popups and menu actions in native windows by @AmethystLiang in #28474
  • Auto-hide menu bar in web popups and re-layout when revealed by @AmethystLiang in #28388
  • fix(browser): agent bringToFront and activateTarget no longer take your keyboard (1/3) by @nwparker in #28452
  • fix(browser): agent keys and text go to the page, never into your terminal (2/3) by @nwparker in #28453
  • fix(browser): agent clicks give your keyboard back (3/3) by @nwparker in #28454
  • fix(browser): require a target for ambiguous keypress commands by @nwparker in #28221
  • fix(browser): refuse web pages on the agent-browser CDP proxy by @OrcaWin in #27415

GitHub / source control

AI commit messages now start from the same shell environment that chats use.

  • Start AI commit messages from the same shell environment chats use by @Jinwoo-H in #26808

Performance

Windows notifications no longer freeze Orca, and cold session-history reads skip unchanged transcript reindexing.

Mobile

Long chats preserve each update within its limit, remember the reader’s place, and open every supported native-chat provider on the phone.

  • fix(native-chat): load long chats on the phone by keeping every update within its limit by @Jinwoo-H in #28203
  • fix(mobile): keep the chat where the reader scrolled to by @AmoabaKelvin in #28413
  • fix(mobile): open Grok, OpenCode, OMP and Pi chats on the phone by @brennanb2025 in #27212

Full Changelog: v1.4.224...v1.4.227

Don't miss a new orca release

NewReleases is sending notifications on new releases.