You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AGENTS.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,15 +23,15 @@
23
23
24
24
- Desktop checks:
25
25
-`npm --prefix apps/desktop run typecheck`
26
-
-`npm --prefix apps/desktop run test`
26
+
-`npm run test:desktop:sharded`
27
27
-`npm --prefix apps/desktop run build`
28
28
-`npm --prefix apps/desktop run lint`
29
29
- ADE CLI checks:
30
30
-`npm --prefix apps/ade-cli run typecheck`
31
31
-`npm --prefix apps/ade-cli run test`
32
32
-`npm --prefix apps/ade-cli run build`
33
33
- Run the smallest relevant subset first when iterating, then finish with the broader checks that cover the touched surfaces.
34
-
-If even running the full desktop test suit, u ahve to shard like ci
34
+
-Run full desktop tests with the root `npm run test:desktop:sharded` command; use single-file or single-shard Vitest commands for iteration.
35
35
36
36
## Terminology
37
37
@@ -81,7 +81,7 @@ Desktop release:
81
81
-**Node.js 22.x** is required (`node:sqlite` is used as the primary database engine).
82
82
- Each app under `apps/` has its own independent `node_modules` and `package-lock.json` (no npm workspaces).
83
83
- Validation commands are documented in the "Validation" section above.
84
-
- The desktop test suite (265 test files) is large; CI shards it. For local iteration, run targeted tests (e.g. `npm --prefix apps/desktop run test:unit`) or a single file rather than the full suite.
84
+
- The desktop test suite is large; CI shards it. For local iteration, run a single file or one CI-style shard rather than the full suite.
85
85
86
86
### Inspecting the local Electron desktop app with Codex Computer Use on macOS
87
87
@@ -111,7 +111,7 @@ Desktop release:
111
111
- The `ADE_PROJECT_ROOT=/workspace` env var tells the main process to auto-open a project at startup. However, there is a timing race: the renderer's initial `getProject()` call may return null before the async project switch completes, causing the welcome screen to appear even though the backend loaded the project. A workaround is to open the project manually via the "Open a project" button in the top bar.
112
112
- Computer-use features (screenshot, video capture, GUI automation) are macOS-only (`screencapture`, `osascript`). On Linux these gracefully degrade — the app returns `blocked_by_capability`.
113
113
-`electron-builder` config only defines a `mac` target. Distributable Linux builds (deb/AppImage) are not configured, but dev mode works fine.
114
-
- The `test:unit` script (`npm --prefix apps/desktop run test:unit`) uses `--project unit` which the pinned vitest 0.34.6 doesn't support. Use `npx vitest run <specific-test-file>` in `apps/desktop` for targeted tests, or `npm --prefix apps/desktop run test`for the full suite.
114
+
- The pinned Vitest 0.34.6 does not support `--project`. Use `npx vitest run <specific-test-file>` in `apps/desktop` for targeted tests, `npx vitest run --shard=<n>/8` for a CI-style shard, or `npm run test:desktop:sharded` from the repo root for the full desktop unit workspace.
115
115
- In the Cursor Cloud VM the active X display is `:1`, not `:99`. When launching Electron set `DISPLAY=:1`.
116
116
- To launch the desktop dev app quickly when the CLI is already built: `npm run dev:desktop -- --skip-runtime-build`.
117
117
- To launch the TUI against an already-running dev runtime: `npm run dev:code -- --skip-runtime-build --attach --project-root <path> --workspace-root <path>`.
Copy file name to clipboardExpand all lines: README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -154,7 +154,7 @@ Daily desktop dev:
154
154
npm run dev
155
155
```
156
156
157
-
That aliases to `npm run dev:desktop`: it rebuilds `apps/ade-cli`, launches the Electron desktop app, and points it at the dev runtime socket`/tmp/ade-runtime-dev.sock`. If no dev runtime is listening, desktop is allowed to create it. This is the normal desktop-dev flow.
157
+
That aliases to `npm run dev:desktop`: it rebuilds `apps/ade-cli`, refreshes the shared dev runtime at`/tmp/ade-runtime-dev.sock` when needed, launches the Electron desktop app, and points desktop at that runtime. This is the normal desktop-dev flow.
158
158
159
159
When these commands are run from an ADE lane worktree under `.ade/worktrees/`,
160
160
they still run code from that lane checkout, but they open the primary checkout's
@@ -165,7 +165,7 @@ and uses the lane path as the workspace root for `dev:code`.
165
165
Dev command matrix:
166
166
167
167
```bash
168
-
npm run dev:desktop #desktop only; dev socket; desktop may auto-create runtime
168
+
npm run dev:desktop #refresh shared dev runtime, then launch desktop
169
169
npm run dev:desktop:attach # desktop only; fail if dev runtime is not already running
170
170
npm run dev:desktop:clean # desktop only; clear Vite cache before launch
171
171
npm run dev:code:web # `ade code` in the browser (PTY + inspector WebSocket)
@@ -192,11 +192,11 @@ ADE_DEV_RUNTIME_SOCKET_PATH=/tmp/my-ade-dev.sock npm run dev:runtime
192
192
ADE_DESKTOP_BRIDGE_SOCKET_PATH=/tmp/my-bridge.sock npm run dev:desktop
193
193
```
194
194
195
-
To test auto-runtime creation, use the `:auto`/default commands after stopping the dev runtime:
195
+
To test auto-runtime creation, use the default dev commands after stopping the dev runtime:
196
196
197
197
```bash
198
198
npm run dev:stop
199
-
npm run dev:desktop # tests desktop creating the dev runtime
199
+
npm run dev:desktop # tests the desktop wrapper creating the dev runtime
200
200
npm run dev:stop
201
201
npm run dev:code # tests TUI wrapper creating the dev runtime
These are unsigned local macOS app builds under `apps/desktop/release-alpha` and `apps/desktop/release-beta`. Beta fetches `origin/main`, fast-forwards the local `main` checkout when possible, and builds that checkout as `ADE Beta`. It does not create a packaging worktree. These builds do not replace the production `ADE.app`, production `ade`, or `~/.ade` runtime/state. Alpha and Beta also use separate Electron profile directories (`ade-desktop-alpha` / `ade-desktop-beta`) so their browser storage and window state do not collide with dev or stable.
212
212
Local channel packages include the host runtime binary for this Mac. Release builds still require the full cross-platform runtime artifact set used by remote runtime bootstrap.
213
213
214
-
Validate with `npm --prefix apps/desktop run typecheck` and `run test`. The desktop test suite is large — run the smallest relevant subset first.
214
+
Validate with `npm --prefix apps/desktop run typecheck` and `npm run test:desktop:sharded` for the full desktop suite. The desktop test suite is large, so run the smallest relevant subset first.
0 commit comments