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 renderer-main application traffic uses `@emdash/wire`:
All renderer-main application traffic uses `@emdash/wire`:
seeds the connection once (`seedWireConnection`, via `src/renderer/lib/runtime/seed-desktop-wire.ts`); core code never acquires a connection itself.
and the slice's exported domain constant.
// Contract (api/contract.ts)
export const exampleDomain = 'example' as const;
export const exampleContract = defineContract({
doSomething: procedure({
input: z.object({ id: z.string() }),
output: z.custom<Result>(),
}),
});
// Domain client (api/client.ts)
export type ExampleClient = ContractClient<typeof exampleContract>;
export function getExampleClient(): Promise<ExampleClient> {
return domainClient<ExampleClient>(exampleDomain, exampleContract);
}
// Consumer
const client = await getExampleClient();
const result = await client.doSomething({ id: '123' });The preload bridge in `src/entry/preload.ts` exposes only `requestWirePort` and `getPathForFile` on `window.electronAPI`. Add renderer-main operations to a Wire contract instead of extending the bridge.
`resourcedStream`; never encode readiness as a one-shot no-retention event. See the [Wire event-stream attachment law](../../packages/wire/docs/README.md#event-stream-attachment-law).
`src/renderer/lib/runtime/desktop-wire-client.ts` is renderer-internal only.
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.