← Blog
Customers

Deploy your app from Claude Code in one command

Yura OakMikhail Erin
Yura Oak and Mikhail ErinAugust 3, 2026

Claude Code writes the app. That part is solved. The problem is what comes next: where does it actually run?

Most people end up wiring Railway, Vercel, or a VPS together by hand, provisioning a database, copying connection strings into environment variables, and hoping the logs make sense when something breaks at 2am. Lizard is built for that moment. One command puts your Claude Code app in production with managed services behind it, and every command answers in JSON so the agent can keep working without you.


What "Claude Code deployment" actually means

Claude Code is a coding agent. It reads your codebase, writes code, runs tests, and iterates. What it does not do is provision a server, start a Postgres instance, or configure a Redis cache. That is a separate problem, and most tutorials quietly skip it.

The gap usually looks like this:

  • Claude Code writes the app → your machine has a working codebase

  • You need production infrastructure → a server, a database, object storage, secrets, logs

  • Most guides stop at "push to GitHub" → the rest is on you

Anthropic's own docs cover deploying Claude Code itself inside a company: SSO, permissions, cloud routing. Useful if you're rolling the agent out to 500 engineers. Not useful if you're one person who wants the app the agent just wrote to be live tonight.

That second half, the servers and databases and the logs that come back from them, is what Lizard handles.


How Lizard handles Claude Code deployment

Lizard is built around the agent loop rather than bolted onto a human one. The point is that Claude Code can deploy, read what happened, and fix it without handing you a stack trace.

  • One command to deploy, one to add services. lizard up detects your stack, builds it on Lizard's build nodes, and boots it in a Firecracker micro-VM with a *.onlizard.com domain and TLS. lizard add postgres redis s3 provisions all three and sets the environment variables on the service. No Dockerfile needed, no YAML.

  • Git push to deploy. Attach a repo with lizard add -r owner/repo and every push to the tracked branch rebuilds and redeploys.

  • JSON on every command. Deploys, logs, events, metrics, secrets, scaling: add --json and the agent parses the answer instead of scraping a terminal. lizard logs --level error, lizard logs --restarts, and lizard events give it the crash history without a dashboard.

  • The agent guide ships inside the CLI. lizard skills get core returns instructions matched to the installed version, so your agent never works from a stale copy of the docs.

  • A command inside the running app. lizard ssh "printenv" runs a command inside the live micro-VM. When production behaves differently from local, the agent can look instead of guessing.

  • Sandboxes for generated code. Throwaway Firecracker micro-VMs you create on demand and pause. Pausing snapshots memory, filesystem, and running processes, so resuming continues where it stopped rather than reinstalling packages. When the code works, promote it to a real service with lizard up.

  • Per-second billing you can watch. lizard metrics shows CPU, memory, network, disk, and cost per service while it runs, so the bill is something the agent can read mid-session, not a surprise at the end of the month.

Claude Code hosting shouldn't need a platform team. With Lizard it doesn't.


Deploy from Claude Code in 3 steps

Step 1: Install the CLI and the skill

Tell Claude Code to run these, or run them yourself:

npm i -g @lizard-build/cli
npx skills add lizard-build/skill -g

The skill teaches any agent the whole lifecycle and pulls its instructions from the installed CLI. The free plan comes with $5 of credit and no credit card. Paid plans start at $5 a month.

Step 2: Deploy the app

From the project directory:

lizard up

lizardpack detects the stack (Go, Node, Python, Rust, Ruby, PHP, Java, or a static site), writes a real multi-stage Dockerfile on the build node, and boots the result in its own micro-VM. If your repo already has a Dockerfile with a build step, that one is used as is. Backing services are one more line:

lizard add postgres redis s3

All three are provisioned and wired in as environment variables. Keep them in the same region as the app, which lizard regions will list.

Step 3: Let the agent read what happened

lizard logs                   # runtime logs, streaming
lizard logs --build --json    # why the build failed
lizard logs --level error     # errors only
lizard logs --restarts        # restart history, for crash loops
lizard metrics --json         # CPU, memory, network, disk, and cost
lizard ssh "printenv"         # look inside the running VM
lizard redeploy               # try again

Every one of these takes --json. The agent reads the output, changes the code or the config, and redeploys in the same session. That is the loop: write, deploy, look, fix, repeat.


Claude Code deployment compared with the alternatives

An honest table. Railway, Vercel, and Fly are all good products, and the marketing version of this comparison would not survive ten minutes on Hacker News.

LizardRailwayVercelFly.io
Unit of deploymentLong-lived process in a Firecracker micro-VM, plus ephemeral sandboxesLong-lived containerFunction, 300s by default, 800s max on ProLong-lived micro-VM
Managed Postgres, Redis, S3All three, first-party, one commandPostgres and Redis, first-partyMarketplace: Neon, Upstash, SupabaseManaged Postgres, Upstash Redis, Tigris
Structured output for agents--json on every command, plus a version-matched skill inside the CLIMCP server and CLI--json on CLI subcommands, MCP serverCLI, JSON on many commands
Shell into a running applizard sshrailway sshNo shell into a functionfly ssh console
Sandboxes for generated codeYes, with snapshot pause and resume, same CLINoVercel Sandbox, separate productNo
Billing granularityPer secondPer secondActive CPU by the millisecondPer second while running

Railway is the closest thing to a like-for-like alternative and has excellent DX. Vercel is the right answer for a Next.js frontend with light backend needs. Fly gives you more control over placement and networking if you want to operate it.

What is actually different here: sandboxes and production services are the same platform and the same CLI, the agent can open a shell in the running VM, and its instructions come out of the CLI itself, so they never drift from the version installed. If your workflow is write, deploy, iterate, that shortens the loop more than any feature checkbox.


Works with Cursor and Codex too

Nothing above is Claude-specific. In Cursor the deploy step is the same lizard up from the project root, and the same --json output comes back for the agent to read. With OpenAI Codex it is identical again: Codex writes the code, Lizard runs it, provisions the services, and reports what happened in a format a program can parse. One platform, any agent, same commands.


Frequently asked questions

Do I need to configure anything before deploying from Claude Code?

No config files. Run lizard up and the stack is detected, built, and booted. Databases are one extra line, lizard add postgres redis s3, and their connection strings arrive as environment variables on the service. Both commands are things the agent can run on its own.

What happens when my Claude Code app crashes in production?

The agent has three places to look, all of them --json capable: lizard logs --level error for what the app printed, lizard logs --restarts for the restart history when it is a crash loop, and lizard events for deploy history and replica status. If that is not enough, lizard ssh opens a shell inside the running micro-VM. The fix and the redeploy happen in the same session, with nothing pasted into a chat window.

Can I migrate an existing app from Railway or Render to Lizard?

Yes, and the agent can do most of it. Install the skill with npx skills add lizard-build/skill -g, then ask it to migrate: it recreates the services, provisions Postgres, Redis, and S3, moves the secrets, attaches the domains, and imports the data. You review the result.

Is there a free tier?

The free plan includes $5 of credit and asks for no card. A small side project, one web service and one Postgres instance with light traffic, fits inside it. Paid plans start at $5 a month.

Does Lizard work with any language or framework?

lizardpack reads the repo and detects Go, Node, Python, Rust, Ruby, PHP, Java, and static sites, then writes a multi-stage Dockerfile for it. Start command comes from a Procfile or package.json, and the port from EXPOSE, a framework default, or PORT. If you would rather control the build yourself, commit a Dockerfile with a real build step and it is used unchanged.

Can my agent run untrusted code somewhere safe?

That is what sandboxes are for. Each one is a Firecracker micro-VM created on demand, isolated by hardware virtualization, and disposable. Pause it and the full state is snapshotted; resume and it continues. Promote a working sandbox to a service with lizard up.


Ship your Claude Code app in one command. Try Lizard free → No credit card required.


Useful sources

Build with AI. Ship with Lizard.

You don't need a platform team to go live. Your whole cloud, one CLI command away.

Try for free

No credit card required

We use cookies for essential site functionality and analytics. See our Cookie Policy.