If you only have a phone in your pocket and an idea in your head, you can still ship a public website. This walkthrough shows exactly how to build and deploy a website using only OpenClaw from phone. No laptop, no SSH, no local editor. I used a single WhatsApp thread with my OpenClaw agent to push a Next.js site to Vercel. The same recipe works for Netlify or OpenClaw’s own lightweight server.
Why trust a phone-only workflow?
Honestly, I was skeptical. Typing CSS on a touchscreen is miserable, and mobile Git UIs are all pain. But OpenClaw already sits between me and the terminal: it has shell access, GitHub API integration, and a browser driver. That means the phone just needs to relay instructions. The agent does the real work on ClawCloud’s servers running Node 22. Bandwidth is cheap; context switching to a laptop isn’t.
Community members proved it works. Stumblereads.com—a daily “article roulette” site—was scaffolded, themed, and deployed entirely from Telegram chats with an OpenClaw instance. The rest of this post recreates that path step by step.
Prerequisites: what has to be set up once
- ClawCloud account (free tier is fine). Sign in, hit “Create Agent”, pick WhatsApp (or Telegram/Signal) and note the webhook URL.
- A GitHub account with an empty repo. Name it whatever—you’ll grant OpenClaw access in a moment.
- Vercel or Netlify account with GitHub import enabled. If you want to avoid third-party hosts, skip this and use the built-in OpenClaw static server.
You only do this once. After that, every new site is just a chat thread.
Step 1 – Spin up the agent and pair your phone
1.1 Create the agent
In ClawCloud’s dashboard:
- Name:
phone-web-dev - Base model: gpt-4o (switch to anything with at least 32K context)
- Tools: enable Shell, Browser, Composio GitHub, and Scheduler
Hit “Launch”. The gateway spins up; the daemon keeps it alive. ClawCloud gives you a QR code for WhatsApp; scan it.
1.2 Verify it answers
Send a sanity ping from your phone:
You: ping
OpenClaw: pong @ 2024-06-18T14:53Z
If you see “pong”, the shell and browser are ready on the backend container.
Step 2 – Scaffold the site by chatting
The shortest path is a static Next.js site, deployed as a pure frontend app. Feel free to swap in Astro, Hugo, or plain HTML.
2.1 Initialize the project directory
You: create a new Next.js 14 project called site in ~/projects/stumble
OpenClaw will run something like:
mkdir -p ~/projects/stumble && cd $_
pnpm create next-app@14 site --ts --eslint --app --import-alias "@/*"
You’ll get the shell log back in chat. Latency is ~3-5 s.
2.2 Bootstrap content
You: add a home page that fetches the first paragraph of a random Wikipedia article server-side and renders it. Keep the UI minimal.
OpenClaw edits app/page.tsx with the fetch code, commits locally, and shows the diff.
2.3 Local dev server (optional)
If you want to eyeball the site, ask:
You: run the dev server and give me an ngrok URL
The agent drops into the shell, executes pnpm dev, starts ngrok, and replies with a public URL. Tap it in WhatsApp and you see the site on your phone. Kill it with:
You: stop all dev servers
Step 3 – Push to GitHub without leaving chat
3.1 Connect the repo via Composio
The first time, you’ll approve scopes in GitHub; OpenClaw stores the OAuth token in encrypted memory.
You: push current code to github.com/youruser/stumble-site, create main branch if absent
Behind the curtain:
git init
git remote add origin git@github.com:youruser/stumble-site.git
git add .
git commit -m "Initial commit from phone"
git push -u origin main
The agent streams push output back so you see when CI kicked off.
Step 4 – Deploy to Vercel, Netlify, or OpenClaw server
4.1 Vercel one-liner
You: deploy to Vercel, link to project stumble, prod target. use environment var NEXT_PUBLIC_WIKI_URL if needed
Because Vercel is already authorized via GitHub, the import happens automatically. OpenClaw hits the Vercel REST API to create the project if it doesn’t exist, then triggers POST /v13/deployments. You get a build URL and, 30 s later, a production URL like https://stumble.vercel.app.
4.2 Netlify variant
The Netlify flow is identical. Replace the command:
You: deploy to Netlify under team claw-demo
OpenClaw uses Composio Netlify integration: sites:create, deploys:create.
4.3 Zero-infrastructure fallback
If you want off-grid hosting, ask:
You: serve the out directory on port 4280 and keep it alive even after restarts.
OpenClaw builds with pnpm build && pnpm next export, then creates a systemd service file inside the agent container:
[Service]
ExecStart=/usr/bin/npx serve ./out -l 4280
Restart=always
The daemon persists it. ClawCloud gives you a public subdomain.
Step 5 – Iterate design and copy from the beach
Shipping isn’t the end. I did three kinds of post-launch tweaks straight from my phone:
- CSS fixes. I’d screenshot layout bugs and tell the agent to “make the heading text wrap instead of overflowing on 375 px screens”. It ran
pnpm lint-fix, editedglobals.css, committed, pushed, and triggered redeploy. - Content edits. “Replace Wikipedia with New York Times API, cache for 15 min.” The agent added
getServerSideProps, setrevalidate, stored the NYT key in Vercel env vars. - Scheduled tasks. “Every day at 04:00 UTC, snapshot the site and tweet the top headline.” Scheduler adds a cron entry, shell calls
curl+twitter-cli.
I never opened a code editor.
Community spotlight: how Stumblereads.com did it
The original creator, @xabier on GitHub, shared the raw Telegram log. Highlights:
- 173 messages, 48 shell commands, 31 file edits.
- Total human typing: 3,241 characters. OpenClaw generated 91% of the code.
- Time to first deploy on Netlify: 27 min 40 s, slowed only by mobile SSO.
- Main pain point: diff reviews on phone are cramped. They worked around it by asking for a
git showsummary rather than full patch.
The result is live at https://stumblereads.com. The repo history is unedited; every commit message starts with “🤖” so you can filter human vs agent contributions.
Trade-offs and gotchas
- Context size. Large patches can blow past model limits. Ask the agent to chunk work: “Commit files one by one”.
- Error loops. If a shell command fails, OpenClaw retries by default. For debugging, disable auto-retry:
You: set retries=0 until I say otherwise. - Auth spam. OAuth tokens occasionally expire mid-chat. Keep a password manager app handy to re-authorize GitHub or Vercel quickly.
- Mobile ergonomics. Reviewing code on 6″ screens is rough. Ask for
summaryorgit diff --statfirst, drill into files only if needed. - Rate limits. Vercel free tier caps builds. OpenClaw doesn’t know that; you need to tell it “skip deploy” when you’re iterating copy changes.
What actually happens under the hood?
OpenClaw’s execution chain looks like this:
- Your WhatsApp message hits the gateway REST endpoint.
- Gateway writes the event to the daemon’s Redis queue.
- Daemon feeds the full convo + agent memory into the LangGraph policy.
- Tool calls (
shell.run,composio.github) return streaming tokens. - Gateway cleans shell ANSI codes and relays the response chunked back to WhatsApp via Twilio API.
The shell process runs inside the same k3s pod as the agent, so you’re effectively remote-controlling a tiny container. Anything you can script on Linux is fair game.
Hard numbers: latency and cost
- Average round-trip message: 2.8 s (gateway <–> model <–> WhatsApp).
- Next.js build + Vercel deploy: 54–90 s, identical to laptop workflows.
- ClawCloud free tier runtime: 0.018 $/hr for the small container. My two-day experiment cost 0.86 $.
- Inference tokens: ~130K, under the 1M/month free allocation.
Your turn: minimal prompt to get started
Copy-paste this into your first WhatsApp message after pairing:
init website:
framework: nextjs14
repo: github.com/youruser/my-site
hosting: vercel
theme: tailwind minimal
pages:
- / (random Wikipedia paragraph)
- /about (one paragraph bio)
actions:
- push to github
- deploy
OpenClaw will parse the YAML-ish block, scaffold, commit, push, and call the Vercel API. You can watch the build log in the dashboard, but you don’t have to.
Takeaway
You don’t need a keyboard to launch a site anymore. The heavy lifting—framework scaffolding, Git, CI/CD—lives in the cloud, and OpenClaw is the chat-based orchestrator. Keep the laptop for deep work, but for quick experiments or shipping a landing page from the subway, a phone plus OpenClaw is enough.
Give it a shot and post your own build logs in the GitHub discussions. We’re still refining mobile diff ergonomics, so real-world feedback beats any roadmap spec.