When your project is ready to share, click Publish in the dashboard. The harness builds the project and deploys it to Cloudflare Pages, giving you a permanent public URL.

Publishing is a deliberate user action — it's triggered from the dashboard, not by Claude. Claude has no ability to publish on its own.

How to publish

  1. Open the dashboard Go to your VM's URL and make sure the project you want to publish is the active one.
  2. Click Publish The Publish button is on the project card. The dashboard shows a progress indicator while the build runs.
  3. Get your URL Once deployed, the dashboard shows the live URL. It's also sent to you on Discord.

Your published URL

Published projects are always at:

https://<account-name>-<project-id>.pages.dev

Where:

So a project called my-app on an account named alice publishes to alice-my-app.pages.dev. The URL is stable — republishing updates the same deployment rather than creating a new one.

What happens behind the scenes

  1. Build The harness runs npm run build inside the project container. The output goes to the build/ directory.
  2. Package The harness tarballs the build/ directory and sends it to the publish server, authenticated with your VM's publish token.
  3. Deploy The publish server calls wrangler pages deploy with your Cloudflare credentials. If the Pages project doesn't exist yet it's created automatically.
  4. Done The live URL is returned to the dashboard and sent to you on Discord.

Keeping the build script working

Publishing requires a working npm run build command. The default starter template has a simple build that copies src/ to build/:

{
  "scripts": {
    "build": "rm -rf build && cp -r src build"
  }
}

If you switch to a framework like Vite or webpack, ask Claude to update package.json accordingly. The final output must always land in the build/ directory.

!
If npm run build fails, the dashboard will show the error output. Ask Claude to fix the build error, then try publishing again.

Republishing

Every publish replaces the previous deployment. There's no rollback on the published side — but all code changes are committed to git inside the container, so you can always ask Claude to revert to an earlier version, then publish again from the dashboard.

Custom domains

Cloudflare Pages supports custom domains. To point your own domain at a published project:

  1. Go to dash.cloudflare.com
  2. Navigate to Pages → your project → Custom domains
  3. Add your domain and follow the DNS instructions

This doesn't affect how publishing works — click Publish in the dashboard as normal and both the .pages.dev URL and your custom domain stay up to date.