mirror of
https://github.com/stablyai/orca.git
synced 2026-10-30 16:47:34 +00:00
428 lines
32 KiB
JSON
428 lines
32 KiB
JSON
{
|
|
"name": "orca",
|
|
"version": "1.4.214",
|
|
"description": "Next-gen IDE for parallel agentic development",
|
|
"homepage": "https://github.com/stablyai/orca",
|
|
"author": "stablyai",
|
|
"bin": {
|
|
"orca": "./out/cli/index.js",
|
|
"orca-dev": "./config/scripts/orca-dev.mjs"
|
|
},
|
|
"main": "./out/main/index.js",
|
|
"scripts": {
|
|
"check:dependencies": "pnpm run build:packages && node config/scripts/check-dependency-security.mjs",
|
|
"install:release": "pnpm install --frozen-lockfile --cpu=current,x64,arm64",
|
|
"audit:perf": "oxlint --config config/oxlint-performance-audit.json --format json src",
|
|
"test:perf:contracts": "vitest run --config config/vitest.performance.config.ts",
|
|
"test:perf:benchmarks": "vitest bench --run --config config/vitest.performance.config.ts",
|
|
"format": "oxfmt --write .",
|
|
"lint": "node config/scripts/run-lint.mjs",
|
|
"audit:code-quality": "pnpm run audit:code-quality:native && pnpm run audit:code-quality:type-aware && pnpm run audit:react-doctor",
|
|
"audit:code-quality:native": "oxlint --config config/oxlint-code-quality-native-plugins.json src config tests mobile --deny-warnings",
|
|
"audit:code-quality:type-aware": "oxlint --type-aware --config config/oxlint-code-quality-type-aware.json src config tests --deny-warnings",
|
|
"audit:react-doctor": "node config/scripts/run-audit-tool.mjs react-doctor . --yes --no-supply-chain --no-telemetry --blocking none",
|
|
"audit:dead-code": "node config/scripts/run-audit-tool.mjs knip --config config/knip.json",
|
|
"check:changed": "node config/scripts/check-changed.mjs",
|
|
"check:code-quality:changed": "node config/scripts/check-changed-code-quality.mjs",
|
|
"lint:js-plugins": "oxlint --config config/oxlint-js-plugins.json src config tests mobile native .github",
|
|
"lint:ast-grep": "ast-grep scan --config config/sgconfig.yml --min-severity warning src config tests mobile",
|
|
"lint:ast-grep-gates": "node config/scripts/ast-grep-gates.mjs",
|
|
"lint:ast-grep:flaky-tests": "ast-grep scan --config config/sgconfig.yml --filter \"^test-\" src config tests mobile",
|
|
"test:ast-grep": "ast-grep test --config config/sgconfig.yml --skip-snapshot-tests",
|
|
"check:dead-classes": "oxlint --config config/oxlint-dead-classes.json src/renderer",
|
|
"lint:design-system": "oxlint --config config/oxlint-design-system.json src/renderer",
|
|
"check:react-doctor:changed": "node config/scripts/check-react-doctor-changed.mjs",
|
|
"check:zustand-selector-fanout": "node config/scripts/zustand-selector-fanout-benchmark.mjs --check",
|
|
"doctor": "node config/scripts/run-audit-tool.mjs react-doctor . --no-telemetry",
|
|
"lint:react-doctor": "oxlint --config config/oxlint-react-doctor.json",
|
|
"lint:react-doctor:changed": "node config/scripts/lint-react-doctor-changed.mjs",
|
|
"prepare": "husky",
|
|
"test": "node config/scripts/build-workspace-packages.mjs && node config/scripts/ensure-native-runtime.mjs --runtime=node && node config/scripts/run-vitest.mjs run --config config/vitest.config.ts",
|
|
"test:changed": "node config/scripts/build-workspace-packages.mjs && node config/scripts/ensure-native-runtime.mjs --runtime=node && node config/scripts/run-vitest.mjs run --config config/vitest.config.ts --changed=HEAD",
|
|
"test:node": "pnpm run build:packages && node config/scripts/ensure-native-runtime.mjs --runtime=node && vitest run --config config/vitest.config.ts",
|
|
"test:node-server": "node config/scripts/run-node-server-tests.mjs",
|
|
"test:skill-sharing:release": "vitest run --config config/vitest.config.ts src/main/skills src/main/runtime/rpc/methods/skills.test.ts src/shared/skill-bundle-install-contract.test.ts src/shared/skill-install-contract.test.ts src/shared/skill-install-failure.test.ts src/shared/skill-package-manifest.test.ts",
|
|
"test:repro:remote-agent-session": "pnpm run build:cli && pnpm run build:electron-vite && node config/scripts/remote-agent-session-authority-repro.mjs",
|
|
"capture:agent-transcript": "node config/scripts/ensure-native-runtime.mjs --runtime=node && node config/scripts/capture-agent-pty-transcript.mjs",
|
|
"check:reliability-gates": "node config/scripts/check-reliability-gates.mjs",
|
|
"check:ratchets": "node config/scripts/run-ratchets.mjs",
|
|
"check:max-lines-ratchet": "node config/scripts/check-max-lines-ratchet.mjs",
|
|
"check:ts-nocheck-ratchet": "node config/scripts/check-ts-nocheck-ratchet.mjs",
|
|
"check:host-list-render-ratchet": "node config/scripts/check-host-list-render-ratchet.mjs",
|
|
"check:flaky-test-pattern-ratchet": "node config/scripts/check-flaky-test-pattern-ratchet.mjs",
|
|
"check:path-literal-ratchet": "node config/scripts/check-path-literal-ratchet.mjs",
|
|
"check:legacy-relay-fence-ratchet": "node config/scripts/check-legacy-relay-fence-ratchet.mjs",
|
|
"check:unproven-pty-retirement-ratchet": "node config/scripts/check-unproven-pty-retirement-ratchet.mjs",
|
|
"check:id-only-store-write-ratchet": "node config/scripts/check-id-only-store-write-ratchet.mjs",
|
|
"check:repo-host-read-ratchet": "node config/scripts/check-repo-host-read-ratchet.mjs",
|
|
"check:workspace-record-read-ratchet": "node config/scripts/check-workspace-record-read-ratchet.mjs",
|
|
"check:worktree-id-composer-ratchet": "node config/scripts/check-worktree-id-composer-ratchet.mjs",
|
|
"check:e2e-typecheck-ratchet": "node config/scripts/check-e2e-typecheck-ratchet.mjs",
|
|
"check:runtime-electron-ratchet": "node config/scripts/check-runtime-electron-ratchet.mjs",
|
|
"check:focus-read-ratchet": "node config/scripts/check-focus-read-ratchet.mjs",
|
|
"check:layout-writer-ratchets": "node config/scripts/check-layout-writer-ratchets.mjs",
|
|
"check:readme-local-links": "node config/scripts/check-readme-local-links.mjs",
|
|
"check:daemon-protocol-crossing": "node config/scripts/check-daemon-protocol-crossing.mjs",
|
|
"check:runtime-launcher-protocol-ratchet": "node config/scripts/check-runtime-launcher-protocol-ratchet.mjs",
|
|
"check:node-runtime-pin": "node config/scripts/check-node-runtime-pin.mjs",
|
|
"check:test-file-runners": "node config/scripts/check-test-file-runners.mjs",
|
|
"check:mobile-shared-dependency-versions": "node config/scripts/check-mobile-shared-dependency-versions.mjs",
|
|
"build:orcad": "pnpm run build:packages && node config/scripts/build-orcad-node.mjs",
|
|
"build:orcad-template": "pnpm run build:packages && node config/scripts/build-orcad-template.mjs",
|
|
"build:orcad-prebuilds": "pnpm run build:packages && node config/scripts/build-orcad-prebuilds.mjs",
|
|
"smoke:orcad-terminal": "node config/scripts/ensure-native-runtime.mjs --runtime=node && pnpm run build:orcad && node config/scripts/runtime-serve-terminal-smoke.mjs --target orcad",
|
|
"smoke:serve-terminal": "node config/scripts/runtime-serve-terminal-smoke.mjs",
|
|
"check:feature-wall-assets": "node config/scripts/check-feature-wall-assets.mjs",
|
|
"generate:rpc-params-catalog": "node config/scripts/generate-rpc-params-catalog.mjs",
|
|
"verify:rpc-params-catalog": "node config/scripts/generate-rpc-params-catalog.mjs --check",
|
|
"generate:acp-protocol": "node config/scripts/acp/generate-protocol.mjs",
|
|
"verify:acp-protocol": "node config/scripts/acp/generate-protocol.mjs --check",
|
|
"generate:bundled-skill-guides": "node config/scripts/generate-bundled-skill-guides.mjs --write",
|
|
"verify:bundled-skill-guides": "node config/scripts/generate-bundled-skill-guides.mjs --check",
|
|
"generate:skill-bundle-manifest": "node config/scripts/generate-skill-bundle-manifest.mjs --write",
|
|
"verify:skill-bundle-manifest": "node config/scripts/generate-skill-bundle-manifest.mjs",
|
|
"verify:macos-entitlements": "node config/scripts/verify-macos-entitlements.mjs",
|
|
"vendor:feature-wall-assets": "node config/scripts/vendor-feature-wall-assets.mjs",
|
|
"tc:node": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.node.json",
|
|
"tc:cli": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.tc.cli.json",
|
|
"tc:web": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.tc.web.json",
|
|
"tc": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs",
|
|
"typecheck:node": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.node.json",
|
|
"typecheck:cli": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.tc.cli.json",
|
|
"typecheck:web": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --project=config/tsconfig.tc.web.json",
|
|
"typecheck:e2e": "pnpm run build:packages && node config/scripts/run-e2e-typecheck.mjs",
|
|
"typecheck:tsc:e2e": "pnpm run build:packages && node config/scripts/run-e2e-typecheck.mjs --compiler=native",
|
|
"typecheck": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs",
|
|
"typecheck:ci": "node config/scripts/build-workspace-packages.mjs && node config/scripts/run-typecheck-projects-in-parallel.mjs --compiler=bun",
|
|
"typecheck:tsc:node": "pnpm run build:packages && node node_modules/typescript/bin/tsc --noEmit -p config/tsconfig.node.json --composite false",
|
|
"typecheck:tsc:cli": "pnpm run build:packages && tsc --noEmit -p config/tsconfig.cli.json --composite false",
|
|
"typecheck:tsc:web": "pnpm run build:packages && tsc --noEmit -p config/tsconfig.web.json --composite false",
|
|
"typecheck:tsc": "pnpm run build:packages && tsc --noEmit -p config/tsconfig.node.json --composite false && tsc --noEmit -p config/tsconfig.cli.json --composite false && tsc --noEmit -p config/tsconfig.web.json --composite false",
|
|
"ensure:electron-runtime": "node config/scripts/ensure-native-runtime.mjs --runtime=electron",
|
|
"start": "pnpm run build:packages && pnpm run ensure:electron-runtime && electron-vite preview",
|
|
"dev": "node config/scripts/build-workspace-packages.mjs && node config/scripts/ensure-native-runtime.mjs --runtime=electron && node config/scripts/run-electron-vite-dev.mjs",
|
|
"dev-stable-name": "pnpm run build:packages && pnpm run ensure:electron-runtime && node config/scripts/run-electron-vite-dev.mjs --stable-name",
|
|
"dev:fresh": "pnpm run build:packages && node config/scripts/dev-fresh-profile.mjs",
|
|
"dev:seed-profile": "node config/scripts/dev-profile-seed.mjs",
|
|
"dev:web": "vite --config vite.web.config.ts --host 127.0.0.1",
|
|
"dev:fixtures": "vite --config config/vite.fixtures.config.ts",
|
|
"fixtures:shot": "node config/scripts/component-fixtures/fixtures-shot.mjs",
|
|
"build:wsl-guest": "pnpm run build:packages && node --disable-warning=MODULE_TYPELESS_PACKAGE_JSON config/scripts/build-wsl-guest.mjs",
|
|
"build:computer-macos": "node config/scripts/build-computer-macos.mjs",
|
|
"build:keyboard-layout-macos": "node config/scripts/build-keyboard-layout-macos.mjs",
|
|
"build:process-footprint-macos": "node config/scripts/build-process-footprint-macos.mjs",
|
|
"build:notification-status-macos": "node config/scripts/build-notification-status-macos.mjs",
|
|
"build:native": "node config/scripts/build-native-for-platform.mjs",
|
|
"smoke:computer": "node config/scripts/computer-use-smoke.mjs",
|
|
"verify:computer-native": "node config/scripts/verify-computer-native.mjs",
|
|
"verify:cli-bin": "node config/scripts/verify-cli-bin.mjs",
|
|
"verify:built-skills-cli": "node config/scripts/verify-skills-cli-runtime.cjs out",
|
|
"verify:renderer-boot-graph": "node config/scripts/verify-renderer-boot-graph.mjs",
|
|
"verify:localization-catalogs": "bun config/scripts/verify-localization-catalogs.mjs",
|
|
"verify:localization-catalog": "node config/scripts/verify-localization-catalog.mjs",
|
|
"sync:localization-catalog": "node config/scripts/verify-localization-catalog.mjs --fix",
|
|
"verify:localization-runtime-catalog": "node config/scripts/generate-runtime-required-english-catalog.mjs",
|
|
"sync:localization-runtime-catalog": "node config/scripts/generate-runtime-required-english-catalog.mjs --fix",
|
|
"verify:localization-extraction": "node config/scripts/verify-localization-extraction.mjs",
|
|
"verify:localization-coverage": "node config/scripts/audit-localization-coverage.mjs --check",
|
|
"audit:localization": "node config/scripts/audit-localization-coverage.mjs",
|
|
"build:cli": "pnpm run build:packages && node config/scripts/build-cli.mjs && pnpm run prepare:cli-output",
|
|
"prepare:cli-output": "node config/scripts/verify-cli-bin.mjs --fix-executable --fix-package-json && node config/scripts/install-dev-cli.mjs",
|
|
"test:linux-cli-contract": "node config/scripts/run-linux-cli-launch-contract-docker.mjs --appimage dist/orca-linux.AppImage",
|
|
"test:repro:skills-cli-runtime": "pnpm run build:cli && pnpm run build:electron-vite && pnpm run verify:built-skills-cli",
|
|
"build:electron-vite": "pnpm run build:packages && node config/scripts/run-electron-vite-build.mjs",
|
|
"build:electron-vite:parallel": "pnpm run build:packages && node config/scripts/run-electron-vite-targets-in-parallel.mjs",
|
|
"build:web": "pnpm run build:packages && node config/scripts/run-vite-web-build.mjs && node config/scripts/verify-web-build.mjs",
|
|
"build:web-from-renderer": "node config/scripts/project-renderer-web-client.mjs && node config/scripts/verify-web-build.mjs",
|
|
"build:mobile-web": "node config/scripts/build-mobile-web-app-bundle.mjs && node config/scripts/verify-mobile-web-app-bundle.mjs",
|
|
"build:desktop": "pnpm run typecheck && pnpm run build:desktop:assets",
|
|
"build:desktop:ci": "pnpm run typecheck:ci --bun-concurrency=2 --bun-threads=2 && pnpm run build:desktop:assets",
|
|
"build:desktop:assets": "pnpm run build:wsl-guest && pnpm run build:cli && pnpm run build:electron-vite && pnpm run verify:built-skills-cli && pnpm run build:web-from-renderer && pnpm run build:mobile-web",
|
|
"build": "pnpm run build:desktop && pnpm run build:native",
|
|
"build:release": "pnpm run build:wsl-guest && pnpm run build:native && pnpm run verify:computer-native && pnpm run build:cli && pnpm run build:electron-vite && pnpm run verify:built-skills-cli && pnpm run build:web-from-renderer && pnpm run build:mobile-web",
|
|
"build:release:javascript": "pnpm run build:cli && pnpm run build:electron-vite && pnpm run verify:built-skills-cli && pnpm run build:web-from-renderer && pnpm run build:mobile-web",
|
|
"build:release:javascript:parallel": "pnpm run build:cli && pnpm run build:electron-vite:parallel && pnpm run verify:built-skills-cli && pnpm run build:web-from-renderer && pnpm run build:mobile-web",
|
|
"build:release:host": "pnpm run build:wsl-guest && pnpm run build:native && pnpm run verify:computer-native && pnpm run verify:built-skills-cli",
|
|
"build:release:parallel": "pnpm run build:wsl-guest && pnpm run build:native && pnpm run verify:computer-native && pnpm run build:cli && pnpm run build:electron-vite:parallel && pnpm run verify:built-skills-cli && pnpm run build:web-from-renderer && pnpm run build:mobile-web",
|
|
"postinstall": "node config/scripts/build-workspace-packages.mjs && node config/scripts/rebuild-native-deps.mjs",
|
|
"rebuild:electron": "node config/scripts/rebuild-native-deps.mjs",
|
|
"reclaim-space": "node config/scripts/reclaim-worktree-space.mjs",
|
|
"rebuild:node": "node config/scripts/ensure-native-runtime.mjs --runtime=node --force",
|
|
"build:unpack": "pnpm run build && pnpm run ensure:electron-runtime && electron-builder --config config/electron-builder.config.cjs --dir",
|
|
"build:win": "pnpm run build:desktop && pnpm run ensure:electron-runtime && electron-builder --config config/electron-builder.config.cjs --win",
|
|
"build:icons": "bash resources/icon-source/generate.sh",
|
|
"build:mac": "pnpm run build:desktop && pnpm run build:computer-macos && pnpm run build:keyboard-layout-macos && pnpm run build:process-footprint-macos && pnpm run build:notification-status-macos && pnpm run ensure:electron-runtime && node config/scripts/build-mac-local.mjs",
|
|
"build:mac:release": "node config/scripts/verify-macos-release-env.mjs && ORCA_MAC_RELEASE=1 pnpm run build:desktop && ORCA_MAC_RELEASE=1 pnpm run build:computer-macos && ORCA_MAC_RELEASE=1 pnpm run build:keyboard-layout-macos && ORCA_MAC_RELEASE=1 pnpm run build:process-footprint-macos && ORCA_MAC_RELEASE=1 pnpm run build:notification-status-macos && pnpm run ensure:electron-runtime && ORCA_MAC_RELEASE=1 electron-builder --config config/electron-builder.config.cjs --mac",
|
|
"build:linux": "pnpm run build:desktop && pnpm run ensure:electron-runtime && node config/scripts/build-linux-local.mjs",
|
|
"test:e2e": "pnpm run ensure:electron-runtime && npx playwright test --config tests/playwright.config.ts --project=electron-headless",
|
|
"test:e2e:workspace-session-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-quit-relaunch-session.spec.ts tests/e2e/golden-terminal-file-link.spec.ts tests/e2e/golden-worktree-create-switch.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:multi-client-navigation": "node config/scripts/run-multi-client-navigation-e2e.mjs",
|
|
"test:e2e:terminal-layout-parity": "node config/scripts/run-terminal-layout-parity.mjs",
|
|
"test:e2e:floating-mobile-emulator": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/floating-mobile-emulator-tab.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:terminal-rendering-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/terminal-raw-emoji-table-scroll-restore.spec.ts tests/e2e/terminal-webgl-atlas-budget.spec.ts --grep @terminal-rendering-golden --config tests/playwright.config.ts --project electron-headless --project electron-headful --workers=1",
|
|
"test:e2e:source-control-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-file-open-edit-save.spec.ts tests/e2e/golden-source-control-commit.spec.ts tests/e2e/golden-source-control-open-diff.spec.ts tests/e2e/golden-source-control-reveal.spec.ts --grep @golden --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:posix-profile-index-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-posix-fresh-startup.spec.ts tests/e2e/golden-posix-profile-index-fsync.spec.ts --grep @posix-profile-index-golden --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:windows-fresh-startup-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-windows-fresh-startup.spec.ts --grep @windows-fresh-startup-golden --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:agent-tui-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-agent-tui-launch.spec.ts tests/e2e/golden-shell-after-agent-exit.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:tab-bar-agent-launch-golden": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/golden-tab-bar-agent-launch.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"test:e2e:terminal-rendering-release-evidence": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/terminal-opencode-emoji-table-rendering.spec.ts tests/e2e/terminal-long-table-scroll-restore.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=2",
|
|
"test:e2e:terminal-perf": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/terminal-typing-latency.spec.ts tests/e2e/terminal-foreground-redraw-freeze.spec.ts tests/e2e/terminal-output-scheduler.spec.ts tests/e2e/terminal-hidden-tui-visual-restore.spec.ts tests/e2e/artificial-opencode-terminal-load.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=2",
|
|
"test:e2e:terminal-perf:scale": "pnpm run ensure:electron-runtime && node config/scripts/run-terminal-scale-perf-e2e.mjs",
|
|
"test:e2e:terminal-perf:scale:report": "pnpm run ensure:electron-runtime && node config/scripts/run-terminal-scale-perf-report-gate.mjs",
|
|
"test:e2e:terminal-perf:check-report": "node config/scripts/check-terminal-perf-report-budgets.mjs",
|
|
"test:e2e:terminal-perf:summarize": "node config/scripts/summarize-terminal-perf-report.mjs",
|
|
"test:e2e:terminal-perf:html-report": "node config/scripts/generate-terminal-perf-html-report.mjs",
|
|
"test:e2e:source-control-scale": "pnpm run ensure:electron-runtime && npx playwright test tests/e2e/source-control-large-file-count.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"win-update-e2e": "node tests/tools/win-update-e2e/run.mjs",
|
|
"win-crash-survival-e2e": "node tests/tools/win-crash-survival-e2e/run.mjs",
|
|
"smoke:windows-pty-native-capability": "node tests/tools/windows-pty-native-capability-smoke/run.mjs",
|
|
"test:e2e:headful": "pnpm run ensure:electron-runtime && npx playwright test --config tests/playwright.config.ts --project electron-headful",
|
|
"test:e2e:terminal-ime-native": "node config/scripts/run-terminal-ibus-hangul-e2e.mjs",
|
|
"test:e2e:computer": "vitest run --config tests/e2e/vitest.config.ts",
|
|
"bench:idle-cpu": "pnpm run ensure:electron-runtime && node config/scripts/run-idle-cpu-benchmark.mjs",
|
|
"bench:spinners": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/spinner-rendering/run.mjs",
|
|
"bench:macos-computer-helper-owner-loss": "node config/scripts/macos-computer-helper-owner-loss-benchmark.mjs",
|
|
"bench:startup": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/startup-time-bench.mjs",
|
|
"bench:daemon-coldstart": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/daemon-coldstart-bench.mjs",
|
|
"bench:wsl-hook-relay-reattach": "pnpm run build:wsl-guest && node config/scripts/wsl-hook-relay-reattach-benchmark.mjs",
|
|
"bench:wsl-git-shell": "node config/scripts/wsl-git-shell-benchmark.mjs",
|
|
"bench:hang-watchdog-memory": "pnpm run ensure:electron-runtime && node config/scripts/hang-watchdog-memory-benchmark.mjs",
|
|
"bench:main-thread-jank": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/main-thread-jank-bench.mjs",
|
|
"bench:worktree-deletion": "node tests/tools/benchmarks/worktree-deletion-dev-bench.mjs",
|
|
"bench:zustand-selector-fanout": "node config/scripts/zustand-selector-fanout-benchmark.mjs",
|
|
"bench:agent-inspection-cadence": "node config/scripts/agent-inspection-cadence-batching-benchmark.mjs",
|
|
"bench:renderer-quadratic-scans": "node config/scripts/renderer-quadratic-scan-benchmark.mjs",
|
|
"bench:session-write-hot-path": "node config/scripts/session-write-hot-path-benchmark.mjs",
|
|
"bench:terminal-partial-escape-tail": "node config/scripts/terminal-partial-escape-tail-benchmark.mjs",
|
|
"bench:worktree-refresh-churn": "node --disable-warning=MODULE_TYPELESS_PACKAGE_JSON config/scripts/worktree-refresh-churn-benchmark.mjs",
|
|
"bench:multi-workspace-typing": "pnpm run ensure:electron-runtime && node config/scripts/run-multi-workspace-typing-bench.mjs",
|
|
"bench:ai-vault-typing": "pnpm run ensure:electron-runtime && node config/scripts/run-ai-vault-typing-bench.mjs",
|
|
"bench:cold-park-reveal": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/terminal-cold-park-reveal-bench.mjs",
|
|
"bench:cold-park-resource": "pnpm run ensure:electron-runtime && node tests/tools/benchmarks/terminal-cold-park-resource-bench.mjs",
|
|
"bench:compare": "node config/scripts/compare-benchmark-artifacts.mjs",
|
|
"test:e2e:remote-bulk-open-freeze": "pnpm run ensure:electron-runtime && pnpm exec playwright test tests/e2e/remote-session-bulk-open-freeze-repro.spec.ts --config tests/playwright.config.ts --project electron-headless --workers=1",
|
|
"repro:live-remote-bulk-open-freeze": "node config/scripts/live-remote-bulk-open-freeze-repro.mjs",
|
|
"repro:live-remote-realistic-freeze": "node config/scripts/live-remote-realistic-freeze-repro.mjs",
|
|
"audit:anti-slop": "node config/scripts/sync-anti-slop-plugin.mjs && bun --smol node_modules/oxlint/bin/oxlint --config config/oxlint-anti-slop.json src config tests mobile --deny-warnings",
|
|
"sync:anti-slop-plugin": "node config/scripts/sync-anti-slop-plugin.mjs",
|
|
"build:packages": "node config/scripts/build-workspace-packages.mjs",
|
|
"check:process-host-imports": "node config/scripts/check-process-host-imports.mjs",
|
|
"check:main-sync-spawn-ratchet": "node config/scripts/check-main-sync-spawn-ratchet.mjs",
|
|
"check:compat-boundary-imports": "node config/scripts/check-compat-boundary-imports.mjs",
|
|
"check:import-boundaries": "bun config/scripts/check-import-boundaries.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/claude-agent-sdk": "0.3.284",
|
|
"@floating-ui/dom": "1.8.0",
|
|
"@linear/sdk": "^97.0.0",
|
|
"@orca/process-host": "workspace:*",
|
|
"@parcel/watcher": "^2.5.6",
|
|
"@xterm/addon-serialize": "0.15.0-beta.301",
|
|
"@xterm/headless": "6.1.0-beta.303",
|
|
"agent-browser": "~0.27.0",
|
|
"electron-updater": "^6.8.10",
|
|
"fflate": "0.8.3",
|
|
"i18next": "^26.4.2",
|
|
"jsonc-parser": "^3.3.1",
|
|
"node-pty": "^1.1.0",
|
|
"posthog-node": "^5.52.5",
|
|
"proper-lockfile": "4.1.2",
|
|
"qrcode": "^1.5.4",
|
|
"react-i18next": "17.0.15",
|
|
"serve-sim": "0.1.47",
|
|
"smol-toml": "1.9.1",
|
|
"ssh2": "^1.17.0",
|
|
"stream-chain": "4.2.6",
|
|
"stream-json": "3.7.0",
|
|
"tldts": "7.4.18",
|
|
"tweetnacl": "^1.0.3",
|
|
"ws": "^8.22.0",
|
|
"yaml": "^2.9.1",
|
|
"zod": "~4.6.7"
|
|
},
|
|
"devDependencies": {
|
|
"@actions/expressions": "0.3.61",
|
|
"@ast-grep/cli": "0.51.0",
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@electron-toolkit/tsconfig": "^2.0.0",
|
|
"@electron/osx-sign": "2.7.0",
|
|
"@electron/rebuild": "^4.2.1",
|
|
"@monaco-editor/react": "^4.7.0",
|
|
"@noble/hashes": "1.8.0",
|
|
"@oxlint/plugins": "1.89.0",
|
|
"@playwright/test": "^1.64.1",
|
|
"@sanity/diff-match-patch": "^3.2.1",
|
|
"@shadcn/lint": "~0.1.5",
|
|
"@stablyai/playwright-test": "^2.1.16",
|
|
"@tailwindcss/vite": "^4.3.3",
|
|
"@tanstack/react-virtual": "^3.14.13",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.3",
|
|
"@testing-library/user-event": "^14.6.8",
|
|
"@tiptap/extension-code-block": "3.31.3",
|
|
"@tiptap/extension-code-block-lowlight": "3.31.3",
|
|
"@tiptap/extension-details": "3.31.3",
|
|
"@tiptap/extension-image": "3.31.3",
|
|
"@tiptap/extension-link": "3.31.3",
|
|
"@tiptap/extension-list": "3.31.3",
|
|
"@tiptap/extension-mathematics": "3.31.3",
|
|
"@tiptap/extension-placeholder": "3.31.3",
|
|
"@tiptap/extension-table": "3.31.3",
|
|
"@tiptap/markdown": "3.31.3",
|
|
"@tiptap/pm": "3.31.3",
|
|
"@tiptap/react": "3.31.3",
|
|
"@tiptap/starter-kit": "3.31.3",
|
|
"@types/hast": "^3.0.4",
|
|
"@types/mdast": "^4.0.4",
|
|
"@types/node": "^24.19.2",
|
|
"@types/proper-lockfile": "^4.1.4",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@types/react": "~19.2.18",
|
|
"@types/react-dom": "~19.2.7",
|
|
"@types/ssh2": "^1.15.6",
|
|
"@types/ws": "^8.18.2",
|
|
"@vitejs/plugin-react": "^6.1.2",
|
|
"@vscode/ripgrep-universal": "1.18.0",
|
|
"@xterm/addon-fit": "0.12.0-beta.301",
|
|
"@xterm/addon-image": "0.10.0-beta.301",
|
|
"@xterm/addon-ligatures": "0.11.0-beta.301",
|
|
"@xterm/addon-search": "0.17.0-beta.301",
|
|
"@xterm/addon-unicode11": "0.10.0-beta.301",
|
|
"@xterm/addon-web-links": "0.13.0-beta.301",
|
|
"@xterm/addon-webgl": "0.20.0-beta.300",
|
|
"@xterm/xterm": "6.1.0-beta.304",
|
|
"bun": "1.4.4",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "^1.1.1",
|
|
"devalue": "6.0.3",
|
|
"diff": "8.0.4",
|
|
"dompurify": "3.4.17",
|
|
"electron": "43.8.1",
|
|
"electron-builder": "26.15.3",
|
|
"electron-vite": "^6.0.0",
|
|
"emoji-picker-react": "^4.22.3",
|
|
"emojibase-data": "17.0.0",
|
|
"esbuild": "^0.28.2",
|
|
"happy-dom": "^21.0.4",
|
|
"hast-util-to-jsx-runtime": "2.3.6",
|
|
"html-to-image": "^1.11.13",
|
|
"husky": "^9.1.7",
|
|
"i18next-cli": "1.74.2",
|
|
"katex": "0.18.10",
|
|
"lint-staged": "^16.4.0",
|
|
"lowlight": "^3.3.0",
|
|
"lucide-react": "^0.577.0",
|
|
"marked": "^17.0.1",
|
|
"mermaid": "^11.17.2",
|
|
"monaco-editor": "^0.55.1",
|
|
"node-gyp": "12.3.0",
|
|
"oxfmt": "^0.74.0",
|
|
"oxlint": "^1.89.0",
|
|
"oxlint-plugin-anti-slop": "github:dmmulroy/anti-slop#c44ef22ca116d0ba62a3ff663a0bd13a3f3fa40b",
|
|
"oxlint-plugin-react-doctor": "0.9.14",
|
|
"oxlint-tsgolint": "7.0.2005",
|
|
"pdfjs-dist": "^6.3.289",
|
|
"playwright-core": "1.64.1",
|
|
"pngjs": "^7.0.0",
|
|
"radix-ui": "^1.6.7",
|
|
"react": "~19.2.8",
|
|
"react-colorful": "^5.7.0",
|
|
"react-dom": "~19.2.8",
|
|
"react-grab": "^0.1.33",
|
|
"react-markdown": "^10.1.0",
|
|
"rehype-highlight": "^7.0.2",
|
|
"rehype-katex": "^7.0.1",
|
|
"rehype-raw": "^7.0.0",
|
|
"rehype-sanitize": "^6.0.0",
|
|
"rehype-slug": "^6.0.0",
|
|
"remark-breaks": "^4.0.0",
|
|
"remark-cjk-friendly": "^2.3.1",
|
|
"remark-frontmatter": "^5.0.0",
|
|
"remark-gfm": "^4.0.1",
|
|
"remark-math": "^6.0.0",
|
|
"remark-parse": "^11.0.0",
|
|
"remark-rehype": "11.1.2",
|
|
"remend": "1.4.0",
|
|
"shiki": "4.5.0",
|
|
"sonner": "2.0.7",
|
|
"tailwind-merge": "^3.7.0",
|
|
"tailwindcss": "^4.3.3",
|
|
"tar": "7.5.22",
|
|
"tsrs": "0.18.0-ts7.1.0-dev.20260929",
|
|
"tw-animate-css": "^1.4.0",
|
|
"typescript": "^7.0.2",
|
|
"typescript-api": "npm:typescript@6.0.3",
|
|
"unified": "^11.0.5",
|
|
"vite": "^8.3.5",
|
|
"vitest": "5.0.5",
|
|
"vscode-oniguruma": "^2.0.1",
|
|
"zustand": "^5.0.15"
|
|
},
|
|
"optionalDependencies": {
|
|
"@orca/windows-registry": "workspace:*",
|
|
"@orca/windows-security": "workspace:*",
|
|
"@vscode/windows-process-tree": "0.8.0",
|
|
"sherpa-onnx-darwin-arm64": "1.12.37",
|
|
"sherpa-onnx-darwin-x64": "1.12.37",
|
|
"sherpa-onnx-linux-arm64": "1.12.37",
|
|
"sherpa-onnx-linux-x64": "1.12.37",
|
|
"sherpa-onnx-win-x64": "1.12.37"
|
|
},
|
|
"lint-staged": {
|
|
"{*.{ts,tsx,js,jsx,mjs,mts,cts},!(cloud)/**/*.{ts,tsx,js,jsx,mjs,mts,cts}}": [
|
|
"oxlint",
|
|
"oxlint --config config/oxlint-js-plugins.json",
|
|
"ast-grep scan --config config/sgconfig.yml --min-severity warning",
|
|
"oxlint --config config/oxlint-react-doctor.json",
|
|
"oxfmt --write --no-error-on-unmatched-pattern"
|
|
],
|
|
"{*.{json,css,md,mdx,yml,yaml},!(cloud)/**/*.{json,css,md,mdx,yml,yaml}}": [
|
|
"oxfmt --write --no-error-on-unmatched-pattern"
|
|
]
|
|
},
|
|
"engines": {
|
|
"node": "24"
|
|
},
|
|
"packageManager": "pnpm@12.14.0+sha512.c18ba6d87993d3d164cb5e8948f32b2c06ee854487e06cd8d86781342fb3e5bb4634367034711e86802baa9c37bea906ce1929ad08d70884c97d801df13389a6",
|
|
"reactDoctor": {
|
|
"ignore": {
|
|
"overrides": [
|
|
{
|
|
"files": [
|
|
"src/renderer/src/components/editor/combined-diff/review-controls/use-combined-diff-view-preferences.ts"
|
|
],
|
|
"rules": [
|
|
"react-doctor/no-derived-state-effect"
|
|
]
|
|
},
|
|
{
|
|
"files": [
|
|
"src/renderer/src/components/task-page/github/use-task-page-github-issue-draft.ts",
|
|
"src/renderer/src/components/use-task-page-jira-creation-state.ts"
|
|
],
|
|
"rules": [
|
|
"react-doctor/no-adjust-state-on-prop-change"
|
|
]
|
|
},
|
|
{
|
|
"files": [
|
|
"src/renderer/src/components/editor/combined-diff/browse-files/use-combined-diff-tree-navigation.ts",
|
|
"src/renderer/src/components/editor/combined-diff/load-sections/combined-diff-section-load-registry.ts",
|
|
"src/renderer/src/components/editor/combined-diff/review-controls/use-combined-diff-section-actions.ts"
|
|
],
|
|
"rules": [
|
|
"react-doctor/no-ref-current-in-render"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"rules": {
|
|
"react-doctor/js-combine-iterations": "off",
|
|
"react-doctor/no-initialize-state": "off",
|
|
"react-doctor/no-unstable-nested-components": "off"
|
|
}
|
|
}
|
|
}
|