The platform loads packages, checks compositions, owns execution resources and presents committed UI frames. Product features live in plugins.
| Area | Crates |
|---|---|
| Declarations and package bytes | plugin-core, packages |
| Resource authority and persistence | capabilities, event-log |
| Service and component owners | host-runtime, ui-runtime |
| JavaScript execution | js-runtime, host-js, ui-js |
| Native presentation | presentation |
| I/O and isolation | network, process, sandbox, computer-use |
| Connections and health | transport, background-health |
Host and UI share the plugin lifecycle kernel. Optional execution adapters run JavaScript plugins. The terminal workbench uses NSH for native terminal rendering and connects through public Host services. The desktop application lives in desktop-shell and connects through public Host services.
The dependency boundary is deliberate: Host and UI lifecycle crates can compile without V8 or the Agent engine. Some platform code still depends on shared Agent facts for storage and presentation. Those data dependencies are visible in the Cargo manifests.