Skip to content
Pilotoo
v0.1

Packages

The kit is split into small packages so a host takes only the parts it needs. A hosted web app needs a server package and a few client packages. A mobile app needs only client packages. A desktop app adds a backend that runs on the user’s machine. Workflows, Connections and Brain each add their own packages on top. Dependencies point one way: apps/* -> packages/* -> chat-protocol. See Packages and boundaries.

Package Side What it is for
@pilotoo/server Server The NestJS module: conversations, streaming, human-in-the-loop and persistence on PostgreSQL.
@pilotoo/agent-runtime Server Agent graph, tool and skill registries, and the ports for identity, knowledge, models and usage.
@pilotoo/local-server Server The same backend on SQLite, for a user’s own machine.
@pilotoo/chat-protocol Both The wire contract: commands, events and errors as Zod schemas.
@pilotoo/chat-core Client The environment-agnostic chat client: session, catalogs, stores, transport port.
@pilotoo/ui Client DOM React components and design tokens (Tailwind v4).
@pilotoo/chat-ui Client React Native chat components, also rendered on the web.
@pilotoo/voice Client Reading replies aloud and dictation, behind ports.
@pilotoo/voice-native Client Native speech engines for Tauri apps.
@pilotoo/workflow Server The workflow engine: node graph, validation, expressions and a QuickJS sandbox.
@pilotoo/connections-core Server Connections without a framework: vault, OAuth, provider catalog and the storage port.
@pilotoo/connections-server Server Connections as a NestJS module on PostgreSQL, with the user and admin routes.
@pilotoo/connections-mail Server The SMTP and IMAP transport behind the Email provider.
@pilotoo/memory-protocol Both Brain’s HTTP API and MCP tool contract as zod schemas.
@pilotoo/memory-core Server Brain without a framework: memories, sources, pages, access and review over ports.
@pilotoo/memory-server Server Brain on PostgreSQL and pgvector, with REST routes, an MCP endpoint and model adapters.
@pilotoo/web-auth Server Google sign-in, session cookies and personal tokens for a NestJS product.

A NestJS backend plus a React front end.

  • Server: @pilotoo/server (it brings @pilotoo/agent-runtime and @pilotoo/chat-protocol).
  • Client: @pilotoo/chat-core and @pilotoo/ui. @pilotoo/ui brings @pilotoo/voice.

An Expo / React Native app talking to a hosted backend.

  • Client: @pilotoo/chat-core and @pilotoo/chat-ui.
  • Server: the hosted backend from the web setup. The mobile demo app depends on no other kit package.

A Tauri shell that runs the backend on the user’s machine.

  • Backend: @pilotoo/local-server, started as a sidecar process. It brings @pilotoo/server and @pilotoo/agent-runtime.
  • Front end: the same packages as the web app, @pilotoo/chat-core and @pilotoo/ui.
  • Optional: @pilotoo/voice-native for on-device speech.

See Local backend.

  • @pilotoo/workflow runs the engine. @pilotoo/server and @pilotoo/local-server already mount it, so a host on either needs nothing else.
  • Import @pilotoo/workflow/definition in a browser for validation and layout.

See Workflows.

  • Inside the agent server: nothing extra, the connections option of PilotooModule.forRoot uses @pilotoo/connections-core and @pilotoo/connections-server.
  • In your own NestJS app: @pilotoo/connections-core and @pilotoo/connections-server. Add @pilotoo/connections-mail for the Email provider.
  • Without NestJS: @pilotoo/connections-core and your own ConnectionStorage.

See Connections.

  • Inside a NestJS host: @pilotoo/memory-server, which brings @pilotoo/memory-core and @pilotoo/memory-protocol.
  • A web client of the Brain API: @pilotoo/memory-protocol for the request and response types.
  • With a sign-in of its own: add @pilotoo/web-auth.

See Brain.

Changesets versions chat-protocol, chat-core, chat-ui, ui, agent-runtime, server and local-server as one fixed set: a release bumps them all to the same version. The other packages (voice, voice-native, workflow, connections-*, memory-* and web-auth) are versioned on their own, and the Workflows, Connections and Brain packages are not among the tarballs pnpm release:check packs: they are used from the kit workspace. No package is published to a registry yet; each page shows how to install from the repository.