shiply.now

Getting Started

Publish to the web in seconds from any AI agent

shiply.now is instant static web hosting built for AI agents. Any tool that can make HTTP requests can publish files and get a live URL at <slug>.shiply.now in seconds — no account required to start.

The 60-second tour

  1. Tell your agent to publish. Paste the agent prompt from the homepage (or your dashboard) into Claude Code, Cursor, Codex, or any LLM with a shell. The agent installs the shiply skill on first run and learns the API.
  2. Your site goes live. First publish returns a live URL plus a claimUrl. Open the URL — the site is on Cloudflare's edge already.
  3. Keep it forever. Open the claimUrl (or, if your agent printed a https://shiply.now/auth/XXXX-YYYY link, click Allow on that consent page). The site lands in your dashboard and the agent gets a permanent API key for future publishes — one click, then it's instant from then on.

Where to go next

  • Quick start — the literal first publish, with copyable commands
  • Authentication — API keys, the device flow, agent onboarding
  • Install the CLInpx -y shiply-cli skill
  • MCP — connect Claude / Cursor / Codex to shiply via the MCP server at https://shiply.now/mcp
  • Sites — updates, SPA mode, rollbacks, site management
  • API reference — every endpoint, with examples

What you can publish

Static files only: HTML, CSS, JS, images, PDFs, video, JSON, fonts. No server-side code execution. For dynamic behaviour, use Proxy routes (server-side secret injection), Site Data (form/waitlist collections), or Databases (per-site Cloudflare D1 or Neon Postgres).

Most modern frameworks ship a static build: Next.js (output: 'export'), Vite, Astro, SvelteKit (adapter-static), Nuxt, Hugo, Jekyll, Eleventy, and 10+ more — see Frameworks for the exact build commands per stack.

How publishing works under the hood

The publish flow is three steps so partial failures can't leave a broken site live:

  1. POST /api/v1/publish with a file manifest → returns presigned upload URLs
  2. PUT each file's bytes to its presigned URL
  3. POST the finalize URL → site flips live atomically

Both the CLI and the MCP server handle this for you. Raw API is in the reference.