{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiaiwtjfbtftobnljkqgf45d7ji5fetp26nnkyybqrgvjfcq45ybbi",
    "uri": "at://did:plc:eza3tsy3stk7a3w2ajez3sca/app.bsky.feed.post/3mlxhhnrcvx22"
  },
  "description": "Deploy a fully autonomous AI agent company on Railway with Paperclip. One-click setup, embedded or external Postgres, and your agents.",
  "path": "/stop-hiring-start-orchestrating-running-an-ai-agent-company-with-paperclip-on-railway/",
  "publishedAt": "2026-05-16T08:45:48.000Z",
  "site": "https://alphasec.io",
  "tags": [
    "Paperclip",
    "open-source",
    "companies.sh",
    "Railway",
    "DigitalOcean guide",
    "Paperclip (Lite) one-click starter",
    "Paperclip one-click starter",
    "GitHub repo"
  ],
  "textContent": "The idea of a one-person company isn't new. What's new though is the idea of a one-person company where the person isn't doing most of the actual work. AI agents are. You set the direction, define the roles and budgets, and the agents handle the execution — writing, researching, analysing, reporting — on a schedule, without being asked twice. And tools like Paperclip are making it real enough to run today.\n\n### What is Paperclip?\n\nPaperclip describes itself as \"the human control plane for AI labor.\" You define a company - give it a mission, a budget, a set of agent personas - and Paperclip runs it. Agents get heartbeats on a schedule, pick up open tasks, call their assigned large language model (LLM), and post results back as issue comments. It's effectively a project management tool for teams, where every team member is an AI agent.\n\nPaperclip started as an experiment in running fully autonomous agentic operations at scale i.e. \"open-source orchestration for zero-human companies\". It's evolving into something broader: a full agent orchestration platform for building companies that run on autonomous agents rather than headcount. The pivot is still in motion, but the core idea is already compelling enough to deploy and explore.\n\nPaperclip is an open-source agent orchestration platform\n\nThe unit of organisation is a **company**. Inside a company you have **agents** (personas with roles, adapters, and heartbeat schedules), **projects** , and **issues** (tasks). An agent wakes up when its heartbeat fires, looks at what's assigned to it, does the work, and goes back to sleep. The idea of a pre-built company is quite powerful, and the ecosystem is slowly growing around companies.sh - pre-built company definitions you can import into Paperclip with a single command. Imagine an external penetration testing team, a content agency, or a software development shop, fully staffed with AI agents, importable in seconds.\n\nTo make it concrete, here's what a lean **content agency** could looks like:\n\nAgent | Role | Heartbeat\n---|---|---\nEditor in Chief | Reviews briefs, assigns stories, sets editorial direction | Daily\nResearch Analyst | Monitors sources, surfaces stories, drafts research notes | Every 6h\nWriter | Drafts posts from research notes and briefs | On demand\nSEO Analyst | Reviews drafts for keyword coverage and structure | On demand\nPublisher | Formats and schedules final output | Daily\n\nEvery agent is backed by an LLM of your choice. The Editor in Chief might run on Claude for judgment-heavy decisions; the Research Analyst on Gemini Flash for speed and cost. Each agent has its own adapter, its own system prompt, its own task queue. Paperclip keeps them coordinated.\n\n### Deploying Paperclip on Railway\n\nThis section covers the deployment of Paperclip on Railway — a managed app hosting platform that handles infrastructure, TLS, and deployments without requiring server management. If you want a VPS approach with a fixed monthly cost, the DigitalOcean guide covers that instead.\n\n**Prerequisites:** A Railway account, and a valid API key from at least one LLM provider (Anthropic, OpenAI, or Gemini).\n\nPaperclip runs from a custom `Dockerfile` that wraps the official Paperclip image. An `entrypoint.sh` script handles first-boot configuration — writing `config.json` from environment variables, then handing off to `pnpm paperclipai run`. This approach sidesteps a handful of non-obvious issues: the Paperclip CLI's `run` command doesn't accept `--yes` or `--no-onboard` flags (those belong to `onboard`), the `$meta.source` field in config.json only accepts specific enum values (`onboard`, `configure`, `doctor`), and Railway's health check on `/` returns 403 in authenticated mode — requiring the check to point at `/api/health`, which also returns 403. Removing the health check entirely and relying on process liveness instead resolves this.\n\nPaperclip supports two database configurations on Railway:\n\n**Embedded PostgreSQL (single service)** — leave `DATABASE_URL` unset. Paperclip runs its built-in database. Lower cost (~$6-8/month), suitable for evaluation and small teams. Launch the Paperclip (Lite) one-click starter template (or click the button below) to deploy it instantly on Railway.\n\n**External PostgreSQL (two services)** — add a Railway Postgres addon and wire `DATABASE_URL` to `${{Postgres.DATABASE_URL}}`. More robust, recommended for production. Runs ~$10-12/month. Launch the Paperclip one-click starter template (or click the button below) to deploy it instantly on Railway.\n\n### Post-Deployment Setup and Connection\n\nRailway routes traffic through its edge to port 3100 internally — no port configuration needed in the public URL. Once the service is running, the admin invite URL appears in the service logs. In the Railway dashboard, go to your deployed service → **View logs** → **Deploy logs** and search for `invite`.\n\n\n    =========================================\n      Paperclip deployed\n    =========================================\n      URL:        https://paperclip.yourdomain.com\n      Invite URL: https://paperclip.yourdomain.com/invite/pcp_bootstrap_...\n    =========================================\n\n\nOpen the URL to create your admin account through Paperclip's native setup screen. For single-user mode, lock down further registrations by adding `PAPERCLIP_AUTH_DISABLE_SIGN_UP=true` to service Variables and redeploying.\n\nPaperclip dashboard\n\nA couple of adapters work out of the box with environment variables — no interactive login required:\n\nProvider| Adapter in Paperclip| Environment Variable\n---|---|---\nAnthropic| `claude_local`| `ANTHROPIC_API_KEY`\nOpenAI| `opencode_local`| `OPENAI_API_KEY`\nGemini| `opencode_local`| `GEMINI_API_KEY`\n\nFor Gemini, select `opencode_local` as the adapter and choose your model (e.g. `gemini-2.5-flash`) in the agent settings. The `gemini_local` adapter requires interactive OAuth and won't work in a Railway container. Similarly, the `codex_local` adapter needs WebSocket-based authentication that can't be completed headlessly — stick with `opencode_local` for OpenAI models.\n\n### What's Next\n\nThe deployment covered here is just the start — Paperclip running cleanly, agents wired up, ready to receive tasks. The real interesting (and fun) part lies in what you build on top of it. The GitHub repo also includes a `digitalocean/` folder with a single-script VPS deployment if you prefer a fixed-cost server. I'm fascinated by the companies.sh concept, and I'm exploring a purpose-built agent company - a threat intelligence team that monitors security advisories, extracts IOCs and TTPs, and generates detection rules - as a follow up. If that sounds exciting, it'll be next.",
  "title": "Stop Hiring, Start Orchestrating: Running an AI Agent Company with Paperclip on Railway",
  "updatedAt": "2026-05-16T08:54:05.280Z"
}