Skip to content

deploy ​

Deploy a site to a live URL. Supports single HTML files and multi-file sites. The deploy goes live immediately.

Annotations ​

AnnotationValue
readOnlyHintfalse
destructiveHintfalse
openWorldHinttrue

Parameters ​

NameTypeRequiredDescription
htmlstringNo*Full HTML content for single-file deploys
filesarrayNo*Files for multi-file deploys (see below)
slugstringNoURL slug (lowercase, hyphens only). Becomes {slug}.based.page. Generated if omitted.
titlestringNoPage title - used for the browser tab, search results, and the auto-generated social sharing preview image. Always provide this.
descriptionstringNoMeta description - shown in search results and on the social sharing preview image. Always provide this.
faviconstringNoFavicon emoji (e.g. πŸš€). Shown in the browser tab and as a watermark on the social sharing preview image. Defaults to ⚑. For multi-file deploys, include a favicon.ico file instead.
og_imagestringNoCustom Open Graph image URL for social media previews. For multi-file deploys, include an og-image.png file instead. If omitted, a branded preview is generated.
is_spabooleanNoSet true for single-page apps with client-side routing. Enables 404β†’index.html fallback.
protectbooleanNoMake the page private. Returns a share_url for sharing access.
passwordstringNoOptional password for a typed-password gate in addition to the share link.

*Either html or files is required.

files array format ​

Each file entry:

FieldTypeRequiredDescription
pathstringYesFile path relative to site root (e.g. index.html, css/style.css)
contentstringYesFile content (UTF-8 text or base64 for binary files)
contentTypestringYesMIME type (e.g. text/html, text/css, image/png)
encoding"utf-8" | "base64"NoUse "base64" for binary files. Defaults to "utf-8".

Return format ​

Deployed successfully!

URL: https://my-site.based.page
ID: abc123
Slug: my-site

Single-file Example ​

User prompt:

"Deploy a landing page for my app called Acme at acme-launch"

What Claude does:

  1. Generates custom HTML for the page.
  2. Customizes the HTML with "Acme" branding.
  3. Calls deploy with the HTML, slug: "acme-launch", title: "Acme", and a short description.
  4. Returns: "Your page is live at https://acme-launch.based.page"

Multi-file Example ​

User prompt:

"Deploy a site with index.html, about.html, and a shared stylesheet."

What Claude does:

  1. Generates the HTML files and CSS.
  2. Calls deploy with a files array containing all three files.
  3. Returns the live URL.

React / SPA Example ​

User prompt:

"Deploy a React app with client-side routing."

What Claude does:

  1. Generates an HTML file with esm.sh React imports.
  2. Calls deploy with is_spa: true.
  3. All 404 requests fall back to index.html, enabling React Router.

Password-Protected Page Example ​

User prompt:

"Deploy a private investor update page - only my team should be able to access it."

What Claude does:

  1. Generates the HTML content.
  2. Calls deploy with protect: true and optionally a password.
  3. Returns the live URL and the private share_url.
  4. Shares the share_url with the user - recipients who click it get in automatically.

Response includes:

Deployed successfully!

URL: https://investor-update-q1.based.page
Share URL: https://investor-update-q1.based.page/?_token=xxx

Send the Share URL to your team. Anyone with it gets automatic access. Visitors who navigate directly to the URL see a password gate (if a password was set) or a 403.

Well-known files ​

For multi-file deploys, these filenames are detected automatically:

FileEffect
og-image.pngUsed as the og:image for social media previews (Twitter, Discord, Slack, etc.)
favicon.icoUsed as the site favicon instead of the emoji default

Include them in the files array and they will be picked up - no need to set the og_image or favicon parameters separately.

Notes ​

  • Metadata is injected automatically. title, description, favicon, and OG tags (including og:image) are injected into the HTML at deploy time. Always pass these fields.
  • No build step. HTML is served as-is. Use CDN links (Tailwind, Alpine, esm.sh) for frameworks.
  • Slug rules. Slugs must be lowercase and may contain hyphens. If the slug is taken, the deploy fails with a conflict error.
  • html and files are mutually exclusive. Use one or the other per deploy call.
  • is_spa is only needed for apps with client-side routing (React Router, Vue Router, etc.).

Deploy apps from conversation.