Commit Graph
20 Commits
Author SHA1 Message Date
Neil badf91101b fix(quality): enforce performance-safe lint baseline (#11074)
* fix(quality): clear safe existing lint findings

* fix(quality): keep lint cleanup allocation-free

* fix(quality): enforce performance-safe baseline

* test(terminal): drain deferred confirmation cleanup
2026-07-27 20:54:02 -07:00
NeilandOrca aab112933e Revert "fix(memory): bound OOM-prone accumulators (#10179)" (#10255)
Co-authored-by: Orca <help@stably.ai>
2026-07-23 18:35:31 -07:00
Neil 8f40ddf328 fix(memory): bound OOM-prone accumulators (#10179) 2026-07-23 06:22:56 -07:00
NeilandOrca 190de8223e refactor(comments): slim verbose comments in main integrations (git/providers/…) (#9543)
Collapse multi-line explanatory comment blocks into single-line "why" statements
per AGENTS.md ("Document the Why, Briefly"): drop restatements of the code and
mechanism narration; keep the non-obvious reason, external refs, and directives.

Comments-only — verified no code changed via a Babel/esbuild comment-strip
token-equality gate against origin/main; typecheck and oxlint clean.

Area: main — git, source-control, providers & integrations. 40 files changed, 1432 insertions(+), 4473 deletions(-).

Co-authored-by: Orca <help@stably.ai>
2026-07-20 03:18:28 -07:00
Jinwoo Hong 808299cd1f fix(cli): avoid Windows PATH status timeout (#9483) 2026-07-19 21:59:22 -04:00
Jinjing 302b97029a P2 windows cli hardening (#8638)
* fix(cli): harden Windows launcher transports

* Fix csc.exe compile failures on space-bearing Windows install paths

- Legacy csc.exe mangles absolute paths containing spaces, so the
  compile step now cd's into the bin directory and passes bare
  file names for /out and the source file instead of full paths
2026-07-13 18:58:21 -07:00
Neil ee82d66a35 fix(cli): preserve multiline arguments on Windows (#8374)
* fix(cli): preserve multiline Windows arguments

* test(cli): run Windows launcher regression in CI

* fix(cli): support Windows Framework C# compiler
2026-07-12 02:13:41 -07:00
NeilandOrca 11e537616c Surface a friendly error when Windows blocks the user PATH write (#6412) (#6588)
* Surface a friendly error when Windows blocks the user PATH write

When HKCU\Environment is locked (Group Policy / restricted ACL / EDR-managed
environment), the PowerShell SetEnvironmentVariable write rejects with a raw
'Command failed: powershell ...' error (often mojibake-localized) that the CLI
Settings toast displayed verbatim. Detect the permission failure via the Latin
PowerShell error-envelope tokens and rethrow an actionable message naming the
exact folder to add to PATH manually, chaining the original error on cause.

Fixes #6412

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

* Tighten Windows PATH permission detection

---------

Co-authored-by: Orca <help@stably.ai>
2026-07-11 13:43:31 -07:00
Jinjing 6729f683f6 Fix Orca CLI path resolution and improve registration UI (#6484)
* fix Orca CLI path resolution and improve registration UI

- Hydrate the shell PATH before running installer actions on macOS to
  match the user's terminal instead of launchd.
- Resolve the active macOS command path dynamically against shell PATH
  candidates, ignoring broken symlinks and non-executable files.
- Detect and report conflicts with unmanaged executables shadowing the
  configured command path.
- Add "Preparing..." and "Registering..." loading states to the settings
  and setup panels during preflight checks.

* Fix Orca CLI detection and installation path conflict checks

- Allow detecting a managed Orca command located later in PATH when the
  default path entry is missing or non-executable.
- Avoid raising installation conflicts for unmanaged commands located
  after the default install path, as they will be safely shadowed.
- Translate terminal setup and Orca CLI registration strings for
  Spanish, Japanese, Korean, and Chinese locales.

* Only open terminal when pre-install checks succeed

Prevent the terminal from opening and setting the terminal command if
onBeforeOpenTerminal or refreshPreInstallNotice throws an error.
2026-06-27 02:05:23 -07:00
Jinwoo HongandOrca 7ea359bd60 Add Claude Agent Teams native pane launcher (#4892)
* Add Claude Agent Teams native pane launcher

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

* Fix Agent Teams CI coverage checks

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

* Fix Claude Agent Teams split direction mapping

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

---------

Co-authored-by: Orca <help@stably.ai>
2026-06-08 16:11:32 -04:00
Neil df9a254393 Heal stale generated Orca CLI launchers
Detect generated Orca Unix launcher files as stale CLI registrations and replace them during install, while keeping arbitrary regular files protected as conflicts. This removes the stale /usr/local/bin/orca blocker found during memory profiling.
2026-06-01 14:56:27 -07:00
Neil 5577fb0541 fix: preserve packaged windows cli launcher (#4180) 2026-05-31 07:11:33 -07:00
Eren ÇakarandNeil fc35a0607a fix: use resources/bin/orca.cmd for packaged Windows CLI path (#4165)
* feat(ui): add instruction hints to command and prompt dialogs

Add helper text below prompt/description textareas in the quick command
dialog, automation editor dialog, and create PR dialog to inform users
about supported features like skills, file paths, and built-in commands.

Closes #3998

* fix: use resources/bin/orca.cmd for packaged Windows CLI path

resolveCommandPath() returned %LOCALAPPDATA%\\Programs\\Orca\\bin\\orca.cmd
but the actual CLI after updates lives at resources\\bin\\orca.cmd.
The bin\\orca.cmd shim is wiped on every update, breaking CLI access.

* chore: keep windows cli path PR focused

---------

Co-authored-by: Neil <4138956+nwparker@users.noreply.github.com>
2026-05-31 06:56:11 -07:00
Jinjing 73083ca2d8 fix: address review findings (#4015) 2026-05-31 01:26:34 -07:00
Emad Fussi 3647b53e00 fix(linux): support AppImage CLI registration
Support packaged Linux AppImage CLI registration with a stable wrapper that invokes the outer AppImage and resolves the CLI entry from APPDIR at runtime.

The takeover drops the already-landed Linux command rename plus unrelated perf/GPU sandbox changes from the original branch, and adds regression coverage for wrapper install, stale wrapper replacement, legacy symlink cleanup, argument forwarding, and env preservation.

Co-authored-by: Emad Fussi <43019044+omd0@users.noreply.github.com>
2026-05-31 01:06:58 -07:00
Lesley MurfinandNeil a6c658c325 fix(cli): fall back to ~/.local/bin on macOS arm64 when /usr/local/bin is absent (#3959)
* fix(cli): fall back to ~/.local/bin on macOS arm64 when /usr/local/bin is absent

/usr/local/bin does not exist by default on Apple Silicon Macs — Homebrew
moved to /opt/homebrew after the arm64 transition. The previous code called
mkdir(/usr/local/bin) inside install(), which threw EACCES (root-owned parent
directory) before installSymlink() was reached, so the existing osascript
privileged-runner fallback was never invoked. Settings permanently showed
"not installed" with no error surfaced anywhere, silently blocking all four
agent skill install flows (Orchestration, Browser Use, Computer Use, CLI).

Changes:
- resolveCommandPath() darwin branch now returns this.macCommandPath, a field
  resolved once at construction time via existsSync(dirname(candidatePath)).
  When /usr/local/bin is absent the constructor falls back to ~/.local/bin/orca
  (user-writable, no sudo, XDG standard, already on PATH via shell init on arm64).
  existsSync is not called on every getStatus() invocation.
- mkdir is moved from install() into installSymlink()'s try/catch block so any
  EACCES failure reaches the osascript privileged runner instead of propagating
  as an unhandled rejection. mkdir is kept in install() for the Windows wrapper
  path where the target directory is always user-writable.
- defaultMacCommandPath option added as a test seam so tests can simulate an
  absent /usr/local/bin without touching the real filesystem.

Fixes stablyai/orca#3557

* review: tighten macOS CLI installer coverage

- cover the macOS path-selection seam without bypassing it

- make the privileged-runner test invoke install and assert the fallback

- prove macCommandPath stays fixed after construction

---------

Co-authored-by: Neil <4138956+nwparker@users.noreply.github.com>
2026-05-31 00:21:37 -07:00
Jinjing b8ad7e6bf7 fix: harden packaging installers (#3878) 2026-05-30 16:33:09 -07:00
Neil 0fc0c7faf0 fix: time out windows cli path commands (#3825) 2026-05-30 11:35:52 -07:00
Emad Fussi 7337cab2d8 feat(linux): add RPM package target and rename CLI to orca-ide
Adds an RPM Linux package target and renames the Linux CLI command to orca-ide to avoid shadowing GNOME Orca, while preserving macOS and Windows CLI command behavior.\n\nFollow-up hardening keeps the Linux launcher executable, removes only old Orca-managed Linux/WSL orca launchers during migration, preserves AppImage/deb artifact names, and updates package/release tests for the RPM asset.
2026-05-29 16:57:56 -07:00
Jinwoo Hong 182ba156dd Add Orca runtime CLI and bundled install support (#273) 2026-04-03 16:50:28 -07:00