pigeon

Set up Pigeon

Pigeon creates a Cloudflare R2 bucket, configures upload access, and installs a shared agent skill.

1. Create a Cloudflare token

Pigeon needs one Cloudflare API token that carries two permissions: Workers R2 Storage · Edit (creates the bucket, public route, and lifecycle rule) and API Tokens · Write (mints the bucket-scoped upload key). The token is never stored.

  1. 1. Open dash.cloudflare.com/profile/api-tokens.
  2. 2. Click Create Token.
  3. 3. At the bottom, next to Create Custom Token, click Get started.
  4. 4. Name it p1geon.
  5. 5. Under Permissions, set the first row to Account → Workers R2 Storage → Edit.
  6. 6. Click + Add more and set the second row to User → API Tokens → Write.
  7. 7. Under Account Resources, choose Include → your account.
  8. 8. Click Continue to summary, then Create Token, and copy the token — it is shown only once.

Find your Account ID on the R2 Overview page (right sidebar), or in the dashboard URL after dash.cloudflare.com/.

2. Run setup

Paste the token when prompted (or set CLOUDFLARE_API_TOKEN). Add --dry-run to validate the token and account without creating anything. To supply pre-made bucket credentials instead, add --with-key.

3. Check it works

Doctor uploads a small file, opens it through the public route, then deletes it.

Requirements

Agents use aws-cli to upload files. Screenshot capture uses native tools or headless Chromium. Config lives at ~/.pigeon/config.

Manage it

p1geon env --shell sh

p1geon rotate

p1geon destroy