paperclipai/paperclip
The open-source app everyone uses to manage agents at work
How paperclip is put together
Paperclip is a self-hosted AI agent orchestration platform ('orchestrate AI agent teams to run a business') built as a pnpm TypeScript ESM monorepo targeting Node >=24.11.0. The core is an Express 5 server (@paperclipai/server) that persists to an embedded PostgreSQL instance via Drizzle ORM, serves a React 19/Vite 'board' UI, and drives pluggable local/cloud coding-agent adapters (Claude, Codex, Cursor, Gemini, Grok, Kimi, OpenCode, pi, OpenClaw gateway). A Commander-based CLI (paperclipai) handles onboarding, service management, backups, and client operations against the server API. Supporting infrastructure includes per-agent Docker runtime images, Quadlet/Podman and ECS deployment definitions, MCP server packages, a plugin SDK, and a 'paperclip-page' skill that publishes static sites to a private S3 bucket fronted by CloudFront with Origin Access Control.
Languages
Frameworks
Datastores
Infrastructure
Major components
CLI (cli/)
The published 'paperclipai' npm binary providing onboarding wizard, doctor diagnostics, service install/update/rollback, config, db backup, and many client subcommands (issues, agents, secrets, teams, pipelines, routines, auth, tokens) that talk to the server API.
Server (@paperclipai/server)
Express 5 HTTP/WebSocket backend hosting the REST API, better-auth authentication, agent JWT auth, attachments/uploads, embedded Postgres supervision, OpenTelemetry instrumentation, and static UI asset serving.
Board UI (ui/)
React 19 + Vite + Tailwind single-page dashboard with Lexical rich text, xterm terminals, dnd-kit boards, i18next localization, and Storybook component stories.
Agent adapters (packages/adapters/*)
Workspace packages that wrap external coding agents (claude-local, codex-local, cursor-local/cursor-cloud, gemini-local, grok-local, kimi-local, opencode-local, pi-local, openclaw-gateway) behind a common adapter interface, plus shared adapter-utils bundling acpx.
Database layer (packages/db)
Drizzle schema, migrations (drizzle.config.ts, db:generate/db:migrate scripts), and backup tooling over the embedded PostgreSQL instance.
Plugin/MCP ecosystem (packages/plugins/sdk, packages/mcp-server, google-sheets-mcp-server, kv-demo-mcp-server, paperclip-runner)
Plugin SDK and scaffold for third-party plugins, Model Context Protocol servers, and a runner package defining semantic actions for agent execution.
Skills & catalogs (packages/skills-catalog, packages/teams-catalog, .agents/skills/paperclip-page)
Built-in skill/team definitions including the paperclip-page publish helper that validates source trees and uploads static pages to the S3/CloudFront pages infrastructure.
Deployment & infra (Dockerfile, docker/, releases/, scripts/)
Container images for the app and each agent runtime, compose/Quadlet/ECS deployment artifacts, release channel scripts (canary/stable/rollback), and repo guardrail checks (forbidden tokens, node version policy, no-git-push).
The week centered on building out the Paperclip Runner — semantic action catalogs, PRP schemas, durable transport, and provider bridges — plus smoother CLI onboarding and release-notes automation.
4 weeksWeek of 2026-08-24
Week of 2026-08-24latest
The week centered on building out the Paperclip Runner — semantic action catalogs, PRP schemas, durable transport, and provider bridges — plus smoother CLI onboarding and release-notes automation.
Week of 2026-08-17
A very busy week that rebuilt the onboarding wizard arc, introduced the duplex sandbox bridge broker, and hardened duplex transports against resource exhaustion and frame-size violations.
Week of 2026-08-10
The focus was correctness and trust: review policies got real enforcement against bypasses, ACP run lifecycles were corrected, and blocker visibility landed in task chat.
Week of 2026-08-03
A feature-rich week: Notion connected via MCP OAuth, Daytona sandbox sessions became persistent with streamed logs, and human-approved secret proposals arrived.
Over the past month, Paperclip's development moved from hardening the core task and review pipeline (early August) to a major rebuild of the onboarding experience and the introduction of a duplex sandbox bridge (mid August), then shifted toward a new 'Runner' architecture with semantic tool dispatch, PRP transport, and release automation (late August). Alongside these big arcs, the team consistently shipped security fixes, reliability improvements for sandboxes and recovery, and steady UI polish.
Week by week
2026-08-24The week centered on building out the Paperclip Runner — semantic action catalogs, PRP schemas, durable transport, and provider bridges — plus smoother CLI onboarding and release-notes automation.latest6 changes
Feature
Runner semantic tool dispatch
The Runner gained an authorized semantic action catalog so tools can be dispatched by meaning rather than ad-hoc commands.
Feature
PRP v1 schemas and durable transport
New versioned PRP schemas, fixtures, TypeScript replay contracts, and a durable transport with recovery were added to make runner communication reliable.
Feature
Codex provider bridge
A bridge now lets the Runner work with the Codex provider alongside existing integrations.
Fix
Smoother CLI onboarding
The managed install is materialized before service setup, and the foreground-start prompt is skipped once the background service starts.
Docs
Release notes skeletons
Release notes are now scaffolded automatically with each pull request's summary nested at creation time.
Refactor
Telemetry vs. observability split
The Telemetry and Observability data paths were disambiguated, and environment capabilities are now classified from static driver definitions.
2026-08-17A very busy week that rebuilt the onboarding wizard arc, introduced the duplex sandbox bridge broker, and hardened duplex transports against resource exhaustion and frame-size violations.6 changes
Feature
Duplex sandbox bridge broker
A new broker with gated transport selection connects hosts and sandboxes over a duplex channel, with bounded resource consumption via a process-owned byte ledger.
Feature
Onboarding wizard rebuild
The onboarding agent arc was rebuilt on the prototype's step design, dropping the mission step from the wizard flow.
Fix
Node 24 enforced everywhere
Paperclip standardized on Node 24 across packages, including aligning the kimi package with the policy.
Fix
Safer recovery behavior
Automatic takeovers of stranded tasks were stopped, and issue-update writes are now verified rather than assumed successful.
Feature
Environment delete with consented cleanup
Environments can now be deleted with agent reassignment and explicit consent before destroying their sandboxes.
Chore
Dependency upgrades
Key dependencies like zod (to 4.4.3) and @vitejs/plugin-react were bumped, along with routine lockfile refreshes.
2026-08-10The focus was correctness and trust: review policies got real enforcement against bypasses, ACP run lifecycles were corrected, and blocker visibility landed in task chat.6 changes
Fix
Review policy enforcement
Review verdicts are now serialized and policy-enforced server-side, closing downgrade-bypass holes so approvals can't be quietly weakened.
Fix
ACP run lifecycle corrections
Failure settlement, workspace sync-back, and lease cleanup in ACP runs were fixed, with characterization baselines added as tests.
Feature
Blocker visibility in task chat
Task chat now shows ordered live blocker work with links, plus a calm notice when a run is in flight on an issue.
Fix
Security: safe npx guidance
CLI guidance was routed through a safe npx form to close a command-injection risk (CWE-78).
Fix
Account-scoped cache hygiene
Sign-out now clears account-scoped query caches, and company selection stays scoped to the signed-in account.
Fix
Onboarding ownership checks
Draft ownership is verified against a session-fetched list, and wizard state isn't restored for companies the user doesn't own.
2026-08-03A feature-rich week: Notion connected via MCP OAuth, Daytona sandbox sessions became persistent with streamed logs, and human-approved secret proposals arrived.6 changes
Feature
Notion via MCP OAuth
Apps can now connect to Notion through MCP OAuth, with multiple provider connections supported per app.
Feature
Persistent Daytona sessions
Daytona plugin sessions became persistent with plain command dispatch, streaming session command logs and live agent output into the UI.
Feature
Human-approved secret proposals
Agents can propose secrets, but they only take effect after a human approves them.
Fix
Explicit review verdict policies
Server-side review verdict policies were made explicit, and agents can resolve review confirmations directly.
Refactor
Dashboard database hot paths trimmed
Steady-state database queries in dashboard, attention, and productivity sweeps were cut, with new indexes for recovery sweep lookups.
Feature
Onboarding flow ported from prototype
The onboarding flow was ported from the prototype with cloud and local variants, though it was briefly reverted before re-landing later in the month.
Dependencies and code review
Dependency advisories
Security Watch
No known advisories across 5 scanned dependencies.
No known advisories in the scanned dependencies.
Code review
No concrete code-level issues confirmed.
Get this report every week for your repos.
GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.
$19 a month, flat · First 10 outputs free · No card required