Introduction
Pile is an open-source, agent-native workspace — issues, documents, support, and CRM on Cloudflare Workers, Durable Objects, and D1.
Pile is an open-source, agent-native workspace: issues, documents, projects, support tickets, customers, deals, and agent sessions in one entity graph. Humans work in the web app; agents work through the same API — every route is an MCP tool and a CLI command.
What makes it different
- One entity graph. Every record — issue, document, ticket, customer, deal, session — can link to any other record, comment, and appear in the unified activity feed. The links are the product.
- Same API for humans and agents. Agents create, update, link, and comment through the identical workspace-scoped surface the app uses. No shadow admin API.
- Backend-first. Hono + zod-openapi generates the OpenAPI spec; the MCP server, TypeScript SDK, and CLI are generated from it. The contract can’t drift.
- Workspace isolation. Each workspace’s mutable state lives in its own Durable Object with SQLite storage; global metadata lives in D1.
If you are new here, follow this order:
Quickstart
Create a workspace, mint an API key, and file your first issue.
Understand the data model
Entities, links, comments, and the activity feed — the graph everything plugs into.
Connect an agent
Point an MCP client at /mcp, or install the CLI/SDK with a workspace key.
Self-host
Deploy the worker, run migrations, and set secrets on your own Cloudflare account.
Core surfaces
Issues
Teams, states, labels, cycles, sub-issues — Linear-compatible workflow.
Documents
Nested pages, markdown, entity links, sharing — Notion-style docs.
Support
Tickets, inbox, channels, captures, escalation — the helpdesk side.
Sales
Customers, deals, contacts — the CRM side, linked to everything else.
For agents
MCP server, CLI, SDK, and workspace-scoped API keys.
API reference
Every route, typed from the OpenAPI spec — 600+ operations.