esc
Type to search the docs
Back to catalog

paperclip

Tested

Open-source orchestration for zero-human companies

paperclip screenshot

Run locally

Tested and verified to launch successfully.

Terminal
$ npx launchfile up paperclip

Requires Docker Desktop. No source code needed — pulls pre-built images and starts paperclip with all dependencies.

Image: ghcr.io/paperclipai/paperclip:latest
Launchfile View on GitHub
# yaml-language-server: $schema=https://launchfile.dev/schema/v1
version: launch/v1
name: paperclip
description: "Open-source orchestration for zero-human companies"
repository: https://github.com/paperclipai/paperclip
logo: https://avatars.githubusercontent.com/u/264498616?v=4&s=64

image: ghcr.io/paperclipai/paperclip:latest
provides:
  - protocol: http
    port: 3100
    exposed: true
requires:
  - type: postgres
    set_env:
      DATABASE_URL: $url
env:
  HOST:
    default: "0.0.0.0"
  BETTER_AUTH_SECRET:
    generator: secret
    sensitive: true
  BETTER_AUTH_URL:
    default: $app.url
    description: "Public URL for better-auth callbacks (email links, OAuth redirects)"
  PAPERCLIP_HOME:
    default: "/paperclip"
  SERVE_UI:
    default: "true"
  ANTHROPIC_API_KEY:
    description: "Anthropic API key for Claude agents"
    sensitive: true
  OPENAI_API_KEY:
    description: "OpenAI API key for Codex agents"
    sensitive: true
storage:
  data:
    path: /paperclip
    persistent: true
health: /api/health
restart: always

commands:
  # Post-start setup: provision the first admin (CEO) and capture the
  # one-time invite link. Re-runnable — each run issues a fresh invite,
  # which is also the recovery path when a previous invite expires.
  #
  # The first run must create the CLI's config.json before it can issue
  # invites: `onboard --yes` writes it but then starts an embedded
  # quickstart server that never exits (hence the timeout), and it
  # hardcodes deploymentMode=local_trusted while this deployment runs
  # authenticated (hence the sed). When the templated file-placement
  # primitive lands (held proposal, see issue #16), those two steps
  # collapse into a declarative file write.
  bootstrap:
    command: >-
      CFG="$PAPERCLIP_HOME/instances/default/config.json";
      test -f "$CFG" || {
      timeout 30 pnpm paperclipai onboard --yes >/dev/null 2>&1;
      sed -i "s/\"deploymentMode\": \"local_trusted\"/\"deploymentMode\": \"authenticated\"/" "$CFG"; };
      pnpm paperclipai auth bootstrap-ceo --base-url "$BETTER_AUTH_URL"
    capture:
      invite_link:
        pattern: "https?://\\S+invite\\S*"
        description: "One-time invite link — open in your browser to register the CEO account"
        sensitive: true

Test Results

Last Tested

2026-06-09

Health Check

Passing

Startup Time

11s

Total Disk

2098 MB

Required Services

postgres

Learn More

Spec references for features used in this Launchfile.

© 2026 High Bridge Enterprises AB