Skip to content

Packages

Shared libraries of Maia OS. Each package has one clear owner and is extracted only when at least two real consumers need it.

PackagenpmWhat it is
protocol@maiaos/protocolOperation registry, Effect schemas, errors, events and receipts
sdk@maiaos/sdkTyped TypeScript client for Maia Node
agent@maiaos/agentmaia agent and the managed worker on the official Pi SDK
client-coreprivatePlatform-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