* fix(terminal): repaint an alt frame the fit never lands for #13014 skips a too-wide alt frame on snapshot replay and relies on a post-fit repaint. For a pane visible but permanently below the 48x24px fit floor, readProposedTerminalCols is forever undefined, so skipIfTargetUnknown drops the frame — and the only compensating repaint lives in a safe-fit continuation that is failed rather than run for such a pane. The frame is lost until the user widens the pane. Adds a deferred repaint gated on display:none rather than on target-unknown, preserving #13014's no-clip guarantee for a pane that later fits narrower. Does NOT fix artificial-opencode-terminal-load.spec.ts:761. Two open concerns: the repaint waits out the full 40-frame safe-fit retry budget (~1.3s) against that spec's own 2s restore budget, and the cold-park reveal path at pty-connection.ts:8222/8289 still has no deferral net. Co-authored-by: Orca <help@stably.ai> * fix(terminal): restore the deferred PTY input hop Inlining forwardPtyInput into the onData handler dropped the deps.deferPtyInput dispatch, leaving the callback and its type declared and supplied but never called. Link-click mouse suppression silently stopped withholding mouse-report frames, so a click in a mouse-tracking TUI reached the PTY and the link-open fallback never fired. Covers both branches, which had no test at all. * fix(terminal): retain alt frames until final fit * fix(terminal): preserve park intent across effect replay * test(terminal): satisfy native static analysis * fix(terminal): consume park intent after layout replay * fix(terminal): re-read park intent instead of caching it per pane useTerminalParkMountIntent cached park intent in a ref for the lifetime of the component. The ref was never load-bearing: React finishes the render phase before any effect runs, so StrictMode's passive-effect replay already observes the same render-phase value. What makes the reveal work is reading at render time rather than at connect time, which a plain call already does. The ref did go stale. The pane lifecycle effect re-runs on [tabId, cwd] for the same component instance, so a worktree path or startupCwd change resupplied mountFollowsTerminalPark: true long after the park reveal, since the post-replay consume clears the per-run ptyDeps copy and not the ref. Each spurious run re-armed the pre-paint snapshot prefetch. Also scope the post-replay consume behind a tested one-shot helper so splits created after the restored-layout replay keep ordinary reconnect semantics, and correct two comments that described the removed ref. --------- Co-authored-by: Orca <help@stably.ai> Co-authored-by: Brennan Benson <79079362+brennanb2025@users.noreply.github.com>
Orca
中文 · 日本語 · 한국어 · Español · Français · Português
The AI Orchestrator for 100x builders.
Run Codex, ClaudeCode, OpenCode or Pi side-by-side — each in its own worktree, tracked in one place.
Download Orca
Features
Also in the box:
- Quick open — Search across worktrees, files, agents, commands, and repo context without leaving your flow.
- Account switcher & usage tracking — See Claude and Codex usage and rate-limit resets, and hot-swap accounts without re-logging in.
- Rich repo previews — Preview Markdown, images, PDFs, and repo docs in the workspace.
- Computer Use — Let agents operate desktop apps and visible UI when a workflow needs real interaction.
- Notifications and unread state — Know when an agent finishes or needs attention, then mark threads unread to come back later.
- And many, many more — we ship daily, so this list is perpetually behind. The changelog is the real feature list.
Supported Agents
Works with any CLI agent — if it runs in a terminal, it runs in Orca.
Claude Code
Codex
Grok
Cursor
GitHub Copilot
OpenCode
MiMo Code
Amp
OpenClaude
Antigravity
Pi
oh-my-pi
Hermes Agent
Devin
Goose
Auggie
Autohand Code
Charm
Cline
Codebuff
Command Code
Continue
Droid
Kilocode
Kimi
Kiro
Mistral Vibe
Qwen Code
Rovo Dev
+ any CLI agent
Install
Desktop — macOS, Windows, Linux
- Download from onOrca.dev
- Or grab a build directly: macOS Apple Silicon · macOS Intel · Windows (.exe) · Linux AppImage · All builds
- Running
orca serveon a headless Linux server? See the headless Linux server guide.
Or via a package manager:
# macOS (Homebrew)
brew install --cask stablyai/orca/orca
# Arch Linux (AUR) — or stably-orca-git to build from source
yay -S stably-orca-bin
Mobile Companion — iOS, Android
Pair with your desktop app to monitor and steer your agents from your phone.
- iOS: Download on the App Store or join TestFlight
- Android: Download APK 0.0.42
Community & Support
-
Discord: Join the community on Discord.
-
Twitter / X: Follow @orca_build for updates and announcements.
-
WeChat: Scan to join the Orca community WeChat group 7.
-
Feedback & Ideas: We ship fast. Missing something? Request a new feature.
-
Privacy: See the privacy & telemetry docs for what anonymous usage data Orca collects and how to opt out.
-
Show Support: Star this repo to follow along with our daily ships.
Developing
Want to contribute or run locally? See our CONTRIBUTING.md guide.
Signed Builds
Windows code signing sponored/provided by SignPath.io, certificate by SignPath Foundation.
License
Orca is free and open source under the MIT License.










