Overview¶
The ecosystem is easiest to understand as layers. Each layer builds on the one below it, and each is owned by one or more repositories.
| Layer | What it is | Main repositories |
|---|---|---|
| Upstream | pi itself, third-party pi packages, and MemPalace | see Repositories |
| Image | a Docker image that bakes pi, the packages, our extensions and tools into one reproducible environment | pi-devbox |
| Harness | extensions, settings and toolkits that change how pi behaves | pi-extensions, pi-toolkit, mempalace-toolkit |
| Knowledge | skills that teach the agent procedures, plus the instructions it loads at start | skillset, pi-devbox (baked skills), pi-toolkit (global instructions) |
| Fleet | how each machine runs the image, what the machines share, and how agents on different machines coordinate | docker-compose-repo, fleet-ops, mempalace-toolkit |
Words used throughout¶
- pi
- The coding agent. It runs in a terminal, talks to a language model, and acts
through tools such as
bash,readandedit. - Harness
- Everything around the model that decides what the agent can see and do: pi's tools, our extensions, settings, skills and instructions.
- Extension
- A TypeScript file that pi loads at start. It can add tools, intercept tool calls, or change what the user sees.
- Skill
- A Markdown file that describes a procedure. The agent reads it when a task matches the skill's description.
- Device
- One machine that runs the pi-devbox image, for example a Mac or a Linux VM.
- Fleet
- All devices together, plus the services they share.
- Palace
- A MemPalace store of memories. The fleet shares one central palace.
- Mailbox
- Events in the central palace that are addressed to one agent on one device. Agents use it to hand work to each other.