Packages
Shared libraries of Maia OS. Each package has one clear owner and is extracted only when at least two real consumers need it.
| Package | npm | What it is |
|---|---|---|
protocol | @maiaos/protocol | Operation registry, Effect schemas, errors, events and receipts |
sdk | @maiaos/sdk | Typed TypeScript client for Maia Node |
agent | @maiaos/agent | maia agent and the managed worker on the official Pi SDK |
client-core | private | Platform-neutral client use cases between renderers and the SDK |
Desktop platform adapters live with their only consumer in
apps/client/src/platform/desktop.
Effect is the default runtime for application logic. See
architecture.
Development
Run a package's checks with its filter, for example:
pnpm --filter @maiaos/sdk build
pnpm --filter @maiaos/sdk test
The development guide covers setup, worktrees and the repository gates.
Source organization
The scope-first source organization contract owns folder boundaries, export-only indexes, colocated tests and ESLint enforcement within the existing packages. A source-present implementation is not automatically verified or release-qualified.
In this section
- @maiaos/agent
Maia's own AI coding agent, maia agent, and the managed worker that Maia Node runs, both built on the official @earendil-works/pi-coding-agent SDK.
- @maiaos/client-core
Platform-neutral client use cases for Maia OS: Effect services that sit between a client's renderer and @maiaos/sdk, so every client reads Maia Node state and sends requests the same way.
- @maiaos/protocol
The operation registry and Effect Schema contracts that Maia Node and every Maia OS client agree on: operation IDs, request and response envelopes, errors, receipts and MCP tool definitions.
- @maiaos/sdk
The TypeScript SDK for Maia Node: typed, validated calls to create and drive AI coding agent Sessions, send turns, wait for results, read receipts and observe events.
Imported from Maia OS docs at a2175bb