Skip to content
flypod

What is flypod

flypod is a zero-auth deploy primitive. POST a directory of static files, get a live URL back in seconds. No account, no config, no build pipeline.

flypod turns a directory of files into a live URL.

npx flypod ./dist
# → https://a3f1c2d4e5b60789.flypod.page

No account. No config file. No build pipeline. You point it at a folder of static files and it returns a URL you can open immediately.

Let a coding agent do it

Run this once in a repository and the agents working in it know how to deploy without being told again:

npx flypod install skill

It writes an Agent Skill into .claude/skills/flypod/ for Claude Code and .agents/skills/flypod/ for Codex, Cursor, Gemini CLI, and GitHub Copilot. Details: flypod install skill.

What you can deploy

flypod serves static sites: HTML, CSS, browser JavaScript, images, fonts, anything that runs in a browser. A folder of Markdown also works: if there is no index.html, flypod renders the .md files into a small styled docs site.

There is no server-side code: no functions, no databases, no backend. If your app needs a server, flypod is not the host for it.

How it works in one breath

  • Every deploy is an immutable, content-hashed version. Updating a site with byte-identical files reuses the version it already has instead of adding another.
  • Anonymous deploys are ephemeral: they expire after 14 days. Sign in to make new deploys permanent.
  • Ship a new version with flypod update, list history with flypod versions, and undo with flypod rollback. flypod remembers which site a folder belongs to, so you rarely pass an ID.

Three ways to use it

Start here

For AI agents

This site ships /llms.txt (index) and /llms-full.txt (full text). Append .md to any docs URL to get raw Markdown. When working with flypod programmatically:

  • Deploy: run npx flypod <dir>. The live URL is printed to stdout; everything else goes to stderr. For structured output use npx flypod <dir> --json and parse stdout.
  • Ship a change to the same site: run flypod again in the same folder, or flypod update; both add a version at the same URL. flypod links the working directory to its site automatically. Only flypod --new makes a separate site.
  • Authenticate with flypod login. The CLI gives you a short code, opens a browser approval page, and saves the session outside the repo. Stateless jobs can receive an existing session through FLYPOD_TOKEN; otherwise the deploy is anonymous.
  • Assume deploys are temporary (14-day TTL) unless the site is owned by an authenticated account. A token that is sent but not accepted fails with token_rejected rather than deploying anonymously.
  • Exit code is 0 on success; on failure it follows the error code: 1 runtime, 2 usage, 3 auth, 4 retryable. Under --json a failure is one line {"ok":false,"code":…,"error":…,"fix":…} on stdout. See Use with agents & CI.
  • Onboard a repo's agents to flypod with npx flypod install skill (reference). It writes an Agent Skill into .claude/skills/flypod/ (Claude Code) and .agents/skills/flypod/ (Codex, Cursor, Gemini CLI, Copilot).
  • Every deployed site is public. There is no password or access control on the site itself (a comments passcode gates only the comments). See what flypod can't do.

On this page