954 Commits
Author SHA1 Message Date
Leynier Gutiérrez GonzálezandClaude Opus 4.7 37b2996ee0 feat(editor): add toggle to show minimap in file editor (#1346)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-02 00:40:53 -07:00
f2d58e06e4 fix(browser): clean up closed browser sessions and webviews (#1321)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: Nikolatesla-lj <Nikolatesla-lj@users.noreply.github.com>
Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com>
2026-05-02 00:04:33 -07:00
Neil 9f2ab5ed0d fix(terminal): mirror VS Code GPU rendering controls (#1344) 2026-05-02 00:04:14 -07:00
NeilandOrca 1db7839570 revert(sidebar): restore unread bell, keep bold-title treatment (#1340)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 22:13:06 -07:00
NeilandOrca e6d61d2f6c feat(sidebar): add Search button to nav, restore task-provider icons (#1339)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 22:04:55 -07:00
Brennan BensonandOrca 70befde774 feat(github): per-repo issue-source selector (#1317)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 21:48:51 -07:00
2c7dddbbc4 fix(terminal): dirty-file close prompts for split, bulk, and quit flows (#1338)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: shamounY <shamoun.yousuf04@gmail.com>
2026-05-01 21:39:15 -07:00
Leynier Gutiérrez GonzálezandAmp 6faf406511 fix(claude-hook): use forward slashes in Windows managed hook command path (#1329)
Co-authored-by: Amp <amp@ampcode.com>
2026-05-01 18:50:22 -07:00
JinjingandOrca 547448e15c refactor: rename pet → sidekick across codebase (#1334)
Renames the experimental pet overlay to "sidekick" with themed character
names (Claude the Mage, OpenCode the Rogue, Gremlin the Trickster).
Covers IPC channels, preload API, persisted UI state, settings flag,
on-disk userData path, components, and types.

Deletes the standalone pet-overlay design mock.

Co-authored-by: Orca <help@stably.ai>
2026-05-01 18:40:52 -07:00
Brennan BensonandOrca f12c3005ed feat(sidebar): bold unread workspaces instead of bell icon (#1330)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 16:20:58 -07:00
JinjingandOrca d287342f99 feat: add experimental pet overlay (#1331)
* feat: add experimental pet overlay

Adds an opt-in 3D pet overlay pinned to the bottom-right. Gated behind
an experimental flag so three.js + GLB models stay out of the renderer
bundle for users who never enable the feature. Ships with four bundled
models plus user-uploaded custom GLBs via a pet:import IPC; a status-bar
segment provides model picker + hide toggle.

See docs/design/pet-overlay.md for the full design.

Co-authored-by: Orca <help@stably.ai>

* refactor(pet): replace 3D GLB models with 2D webp images

Co-authored-by: Orca <help@stably.ai>

* chore(pet): compress pet webp images and remove unused assets

Reduce resources/claude.webp, gremlin.webp, opencode.webp sizes; drop
the obsolete pet-overlay design doc and compress-pet-glb script now
that the GLB pipeline has been replaced by 2D webp images.

Co-authored-by: Orca <help@stably.ai>

---------

Co-authored-by: Orca <help@stably.ai>
2026-05-01 16:18:21 -07:00
bbd77c2449 fix(worktree): restore sparse checkout without per-poll git subprocesses (#1316)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: Colin <colin.chambachan@gmail.com>
2026-05-01 13:25:22 -07:00
d4bbf473c1 Support wiki-style Markdown document links (#1282)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com>
2026-05-01 13:15:08 -07:00
Brennan BensonandOrca 19c4888e17 feat(titlebar): Cmd+J search icon next to agent badge (#1314)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 12:56:00 -07:00
Brennan BensonandOrca 6dc2e9e751 fix(tabs): align tab row bottom with sidebar header (#1318)
* fix(tabs): align tab row bottom with sidebar header

The center column's top band was 6px drag strip + 34px tab row = 40px,
while the sibling `titlebar-left` above the sidebar is 42px. The tab row
sat 2px high, making the seam between the two columns visibly off.

Bump the drag strip from 6px to 8px so the top band totals 42px and the
tab row's bottom border lines up with the sidebar header.

Co-authored-by: Orca <help@stably.ai>

* fix(tabs): shrink tab row to 32px, pad drag strip to 10px

Keep the total top-band at 42px (matching the sidebar's titlebar-left)
while making the tabs themselves 2px shorter, so the tab chrome feels a
touch more compact without breaking alignment with the sidebar header.

Co-authored-by: Orca <help@stably.ai>

* fix(tabs): drop doubled border on leftmost split pane

The TabGroupSplitLayout wrapper paints a full-height `border-l` at the
sidebar seam, and every split pane paints its own `border-l`. On the
leftmost pane those stacked at the same x, reading as a ~2px bar just
below the drag strip where the wrapper's 1px line continues alone above.

Mirror the right-edge handling: skip the pane's `border-l` when it
touches the left edge, leaving the single wrapper border to draw the
seam — same visual weight as the right edge.

Co-authored-by: Orca <help@stably.ai>

* docs(tabs): refresh stale wrapper border-l comment

Why: `border-l` on the wrapper comment still described the pre-fix
overlap behavior. After `touchesLeftEdge`, the leftmost pane drops
its own `border-l`, so the seam is exactly 1px — the old comment
contradicted the code.

Co-authored-by: Orca <help@stably.ai>

---------

Co-authored-by: Orca <help@stably.ai>
2026-05-01 12:53:45 -07:00
Jinwoo HongandOrca 22b80f8ce5 fix(terminal): split panes lose source cwd when shell omits OSC 7 (#1313)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 12:25:41 -07:00
Brennan BensonandOrca 5bf114787f feat(sidebar): move worktree filter out of search bar into header (#1303)
Co-authored-by: Orca <help@stably.ai>
2026-05-01 11:53:20 -07:00
NeilandOrca b8ded7e9fe feat(tabs): stronger tab icons — blue browser globe, bold terminal tile (#1305)
- BrowserTab: Globe icon uses text-blue-500 on both active and inactive tabs
  for a distinct, recognizable anchor in the tab strip.
- shell-icons: GenericTerminalIcon now renders a pitch-black tile with a
  thick stroked >_ (chevron at 3.2px, underscore at 2.6px, taller chevron)
  so mac/linux/default terminal tabs match the colored-badge treatment of
  the PowerShell/CMD/WSL icons instead of a flat lucide chevron.
- SortableTab: all terminal tabs use ShellIcon. On Windows, tabs without a
  per-tab shellOverride fall back to the user's configured default
  Windows shell so the tab-strip icon reflects what's actually running.

Co-authored-by: Orca <help@stably.ai>
2026-05-01 00:33:46 -07:00
Brennan BensonandOrca 639e65f774 fix(sidebar): smoothly animate off-screen worktree reveal on click (#1301)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 23:52:25 -07:00
Brennan BensonandOrca 12858f37e3 feat(github): source-repo indicator + surface issue fetch errors (#1250)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 22:53:37 -07:00
Jinwoo HongandOrca 03e7284e3c fix: prevent 401 errors from CLI-refreshed tokens being clobbered (#1286)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 22:24:10 -07:00
Jinwoo HongandOrca b4f1f0ea6a fix(terminal): prevent dead terminal after split via WebGL lifecycle and worktree dedup (#1298)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 22:24:03 -07:00
JinjingandOrca be0e3c2fa7 fix: handle unhydrated store in file-explorer→terminal drop (#1296)
getConnectionId returns undefined during store hydration, which was
misclassified as remote by `!== null` check. Changed to `typeof === 'string'`
so unhydrated state falls through to client-OS quoting, consistent with
terminal-drop-handler.ts behavior.

Co-authored-by: Orca <help@stably.ai>
2026-04-30 20:39:04 -07:00
JinjingandOrca 3ef62afcdb fix(sidebar): avoid re-centering on worktree selection unless out of view (#1295)
Switch the reveal scroll from align:'center' to align:'auto' so clicking
a worktree only scrolls the sidebar when its card is not already visible.
Centering on every click made the list feel jumpy during normal navigation.

Co-authored-by: Orca <help@stably.ai>
2026-04-30 20:18:04 -07:00
Brennan BensonandOrca ff8771b609 revert(sidebar): restore emerald dot for workspace 'done' status (#1294)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 20:17:55 -07:00
Brennan BensonandOrca 2e372779b6 fix(persistence): add 'inline-agents' to cardProps for existing experiment opt-ins (#1293)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 18:49:09 -07:00
NeilandOrca dcf46e367e fix(browser): route in-app webcam/mic requests through macOS TCC (#1291)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 17:19:07 -07:00
caee6f91f8 fix(sidebar): differentiate 'active' vs 'done' status colors (#1277)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: brennanb2025 <brennankbenson@gmail.com>
2026-04-30 16:09:10 -07:00
Brennan BensonandOrca 35c4b63ac3 feat(settings): add status bar toggles to Appearance pane (#1289)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 16:03:59 -07:00
Jinwoo Hong 000d4dc08b Revert sparse checkout worktree creation (#1290) 2026-04-30 15:47:40 -07:00
Brennan BensonandOrca df31f40f1e fix(window): meaningful visible area + atomic bounds/maximized persist (#1288)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 13:54:32 -07:00
Brennan BensonandOrca 8b56b16b9a fix(window): discard off-screen saved bounds and refuse to persist min-size bounds (#1287)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 13:38:54 -07:00
Brennan BensonandOrca 0f3aaab9f8 feat: default sidebar sort to 'recent' instead of alphabetical (#1285)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 11:07:54 -07:00
8e5114a7bf feat: implement hierarchical tree view for PR diff file list fixes #1109 (#1278)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com>
2026-04-30 01:28:52 -07:00
Jinwoo HongandOrca cb73b372ff feat(file-explorer): support drag-and-drop file import over SSH (#1279)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 01:28:43 -07:00
79faafcc98 Add sparse checkout worktree creation (#1131)
Co-authored-by: Orca <help@stably.ai>
Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com>
2026-04-30 00:43:00 -07:00
NeilandOrca 8c83c8c971 chore: move dev-app-update.yml into config/ (#1276)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 00:11:14 -07:00
NeilandOrca 4318f3bfa7 chore: reduce root-directory clutter (#1275)
Co-authored-by: Orca <help@stably.ai>
2026-04-30 00:09:46 -07:00
JinjingandOrca 61909fff03 fix(tab-bar): dismiss tab context menu on window blur for webview clicks (#1274)
Electron <webview> elements run in a separate process, so clicks inside
them don't dispatch pointerdown on the renderer document. Radix
DropdownMenu relies on document pointerdown for outside-click detection
and therefore misses webview clicks, leaving the menu stuck open.
Listening for window blur catches the moment focus leaves the renderer
(including into a webview) and closes the menu.

Co-authored-by: Orca <help@stably.ai>
2026-04-30 00:02:46 -07:00
NeilandOrca fb3d46710b fix(mac-perms): fall through to Privacy pane when in-app prompt is a no-op (#1273)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 23:50:41 -07:00
Jinwoo HongandOrca 066c245d14 fix(terminal): force WebGL repaint after split when dimensions match (#1272)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 23:33:36 -07:00
NeilandOrca a02987e604 feat(settings): replace task-icon toggle with Tasks-button toggle, expose in View menu (#1271)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 21:13:13 -07:00
Neil 020780c4dd feat(hooks): restore always-trust repo option
Restores repo-level always-trust for orca.yaml hooks and surfaces CLI warnings when --run-hooks is omitted and a hook is skipped.
2026-04-29 20:47:04 -07:00
JinjingandOrca db956ed6db fix(window): prevent teardown resize events from clobbering saved window bounds (#1269)
On close/quit (especially auto-updater relaunch via quitAndInstall),
Electron/OS emit resize/move/unmaximize while the window is torn down.
The debounced persistence was capturing those near-minimum bounds, so
the next launch came up at minWidth x minHeight.

- Freeze bounds persistence on window 'close' and app 'before-quit'
  (updater strips the window 'close' listener before quitting, so
  the app-level latch is needed as a second line of defense).
- Release the freeze on will-prevent-unload so aborted Cmd+Q keeps
  saving bounds.
- On restore, discard saved bounds at/below the min dimensions to
  recover users who already persisted corrupt bounds.

Co-authored-by: Orca <help@stably.ai>
2026-04-29 20:37:19 -07:00
JinjingandOrca 6f9c97ef99 fix(browser-pane): keep focus in Orca window when destroying focused webview (#1270)
Before removing a <webview> that currently owns focus, blur the active
element and refocus the window. Without this, macOS hands activation to
the previously-active app (e.g. Slack) because the focused webContents
is gone with no replacement, pulling the user out of Orca on worktree
delete.

Co-authored-by: Orca <help@stably.ai>
2026-04-29 20:30:28 -07:00
Jinwoo HongandOrca 7993fb5aaa feat(status-bar): show inline usage for inactive accounts in switcher (#1259)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 19:29:11 -07:00
Brennan BensonandOrca b5d8eb6d31 fix(sidebar): restore green dot for 'active' worktree status (#1266)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 19:03:52 -07:00
Brennan BensonandOrca c1620496cf feat(agent-cockpit): replace bottom-panel dashboard with inline per-card agents list (#1251)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 18:51:24 -07:00
mcd77 89f41bfda2 feat(hooks): gate orca.yaml execution on trust
Audited and rebased PR 1138. Squashed to remove the original untrusted commit stack; hook execution now requires explicit UI trust or CLI --run-hooks opt-in.
2026-04-29 18:29:53 -07:00
Jinwoo HongandOrca 2329f56180 Exit beta: SSH badge removal + always-on daemon PTY (#1253)
Co-authored-by: Orca <help@stably.ai>
2026-04-29 17:48:24 -07:00