acp-runtime
AgentThe ACP runtime is the domain service that serves the ACP API contract. It owns the host-scoped dependencies needed to run…
All paths are relative to `apps/emdash-desktop/`.
All paths are relative to `apps/emdash-desktop/`.
Run these before merging (from the repo root or `apps/emdash-desktop/`):
pnpm run format pnpm run lint pnpm run typecheck pnpm run test
`pnpm test` at the repository root runs every package's default test suite. Inside an app or package directory it runs only that package's suite. From the root, `pnpm --filter @emdash/plugins test` runs only the selected package's suite. All three routes use Nx to prepare required builds automatically; dependency builds do not cause dependency tests to run. Nx is installed by `pnpm install`.
Pass test-file paths or Vitest options after `test --`, for example `pnpm --filter @emdash/emdash-desktop test -- --project scripts`. The separator prevents Nx from consuming flags that both tools recognize, such as `--project`. Direct `pnpm exec vitest` is an advanced debugging escape hatch that bypasses prerequisite preparation.
Existing suite boundaries remain unchanged: fixture generation, performance measurements, benchmarks, and the opt-in remote integration flow remain explicit commands. Specialized test commands also prepare prerequisite builds. Watch and other specialized test targets do not cache their results, while their builds can use the Nx cache.
`migrations`, `scripts`, and `browser`). Setting `EMDASH_TEST_SKIP_BROWSER=1` omits the Playwright-backed `browser` project locally; CI omits it automatically.
`main-db`, `fixtures`, and `migrations` projects, `@emdash/core`, and `@emdash/workspace-server` its own empty `HOME` with a minimal global git config, drops inherited `GIT_*` and XDG home variables, and on Windows moves `APPDATA` and `LOCALAPPDATA` into that home (`isolateHomeEnv` in `tooling/vitest/isolated-home.mjs`). Tests there never see the developer's git config or write to `~/.emdash`, `~/.ssh`, and the like. A test that is about home-directory behavior builds its own environment. The app's `scripts` project and `@emdash/plugins` run the real pnpm/Nx toolchain and keep the developer's home.
format:check, typecheck, lint, and test only for projects touched by the PR. Nx computes the affected set using `nrwl/nx-set-shas` and the PR base/head SHAs.
native side project (`pnpm --dir apps/emdash-desktop/tooling/node-deps install`) for the DB-backed Vitest projects. It also rebuilds and load-checks `node-pty` from `@emdash/core`, a workspace that declares the dependency. Vitest omits the Playwright-backed `browser` projects (app and chat-ui) when it detects CI until browser provisioning is proven stable there.
Emdash is the Open-Source Agentic Development Environment (🧡 YC W26). Run multiple coding agents in parallel. Use any provider.
The ACP runtime is the domain service that serves the ACP API contract. It owns the host-scoped dependencies needed to run…
This page defines the target organization of `packages/core/src/`. Core is organized by module type so that shared domain APIs…
Git is split into a transport contract and a host-scoped runtime. Renderer, desktop, and workspace-server code share the Wire…
The main process is organized into domain modules under `src/main/core/`. Each domain typically has a `controller.ts` (RPC…
`@emdash/core/primitives/path/api` is the source of truth for portable file identity and lexical path operations. The detailed…
Validates project structure against co-location and architecture patterns defined in AGENTS.md
Deprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
Use this agent when you need to create or update technical documentation that helps developers understand the deep patterns,…
Orchestration patterns learned from experience. Review at startup and before heartbeat responses.