ReadonlyciReadonlycommandThe command: dev, build, info, ...
ReadonlycomponentsReadonlydevReadonlyeventsA bus between modules, for events of their own.
ReadonlyloggerReadonlymodeReadonlypresetName of the preset chosen by flag, cell.config.ts or CELL_PRESET; the resolved preset is in config:resolved.
ReadonlyrootValidates the key field of cell.config.ts with a Standard Schema; claims the field.
Answers requests under path in cell dev, before the backend.
A directory of Markdown docs for cell docs and AGENTS.md (an AGENTS.md in it is the guide snippet).
Writes a file into the output directory after the build (path relative to it).
Adds a DI module (a file path or package specifier) to a target, after the components' own.
Serves code as the module id (e.g. virtual:my-module) in both environments.
Adds a Vite plugin to every environment, or only to client (frontend) or server (backend).
Optionaloptions: { env?: "client" | "server" }Restarts cell dev when the file changes.
Runs a program without a shell.
Optionalargs: string[]Optionaloptions: { cwd?: string; signal?: AbortSignal; timeout?: number }Subscribes to a toolchain event; returns the function that unsubscribes.
Resolves a module specifier from the project root.
Uses path as the entry of target, over the preset's choice.
Adds to the toolchain configuration, only during the factory: external packages join the
project's, vite is merged under the project's vite field (the project wins). Application
configuration stays in cell.yml (docs/design/agent-first.md R1): a component ships its defaults
in its own cell.yml.
What a toolchain module gets (docs/design/modules.md §3.1). The factory only registers: it does not start processes, servers, watchers or timers (those belong after
dev:ready, closed onclose), because factories also run forcell info.