pi-mosaico

Mosaico identity, awareness, and lifecycle integration for Pi

Packages

Package details

extension

Install pi-mosaico from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-mosaico
Package
pi-mosaico
Version
0.3.0
Published
Aug 15, 2026
Downloads
475/mo · 7/wk
Author
pablof7z
License
MIT
Types
extension
Size
28.7 KB
Dependencies
0 dependencies · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./mosaico.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-mosaico

The official Pi extension for Mosaico. It gives Pi agents durable Mosaico identity, awareness context, lifecycle observation, and project-boundary guardrails.

Install Mosaico first, then add the package to Pi:

pi install npm:pi-mosaico

mosaico setup installs the same extension bundle under Pi's global extension directory. Both Pi's interactive PTY mode and Mosaico's native Pi RPC transport use this one extension; RPC owns its managed turn lifecycle while the extension owns lifecycle observation for PTY and manually launched sessions.

The integration fails open when Mosaico is unavailable and never changes Pi's project trust policy. It connects directly to Mosaico's existing local daemon: the extension registers its Pi-native session, leases exact directed inbox work, injects it as Pi custom context, and acknowledges only after Pi accepts it. Ambient channel chat is supplied as normal turn awareness rather than waking an agent by itself.

In interactive Pi, the extension paints its own session-status chip into the footer from the mosaico_session snapshot: handle, workspace, public title, and unhosted/headless when those change delivery. The chip is hidden when the daemon is down.

Native agent tools

The extension registers native Pi tools for ordinary agent coordination:

Tool Purpose
mosaico_session Read the agent's fabric identity and complete awareness
mosaico_wait Wait once for a matching message without polling
mosaico_channel_list List the agent-visible channel forest
mosaico_channel_read Read recent messages or one complete message
mosaico_channel_search Search observed messages
mosaico_send Send a message, attachments, tags, and optionally await a reply
mosaico_reply Reply substantively to one message
mosaico_react Acknowledge one message non-disruptively
mosaico_channel_create Create and join a leaf task channel
mosaico_channel_join Join an existing channel
mosaico_channel_leave Leave a passively joined channel
mosaico_dispatch Start an agent session when no existing session owns the work

Operator and administration operations are intentionally absent.

Tools do not scrape or spawn Mosaico's human CLI. Each call uses the daemon's versioned UDS JSON protocol with Pi's native session ID and cwd, and receives a structured Pi tool result. Expected tool failures are returned to the model; lifecycle observation remains fail-open.