a teeny weeny, simple wimple cloud for coding agents
weeny gives your coding agent a real Linux server — root, SSH, systemd, a normal computer — and turns whatever it runs into an app with a public HTTPS URL. No Docker, no framework, no config. flat plans from $3/mo (founding), 7-day free trial.
Two places, two CLIs — this is the one thing to get right:
npx weeny-cloud … — log in, create a server, push code.weeny … — start and expose apps.Your code must physically be on the server — build locally and npx weeny-cloud push it (or git clone on the server).
On your laptop (your agent can run all of this):
npx weeny-cloud login # email → 6-digit code npx weeny-cloud create # a server in ~2 min npx weeny-cloud push ./myapp # your folder → /apps/myapp (re-push = update + restart) npx weeny-cloud ssh # go to the server
Then on the server:
cd /apps/myapp npm install weeny start myapp -- npm start # supervise it weeny expose myapp 3000 # → https://myapp-xxxx.onweeny.com
Lost? Bare weeny shows your apps, their URLs, and what to type next; weeny help <command> explains any command.
Machine-readable: /llms.txt · /llms-full.txt. Claude Code: npx weeny-cloud skill installs a skill so your agent just knows weeny.
Worked, copy-paste guides. Start with the default stack (Node + SQLite, any frontend), or teeny boxes (1 GB — no server-side builds). Stateful services have a few non-obvious gotchas — IPv4-only, run-as-root, TLS at the edge: Next.js · Python · PostgreSQL · n8n · Docker.
After you SSH in — not on your laptop.
weeny start <name> -- <cmd> — turns any command into a supervised app (survives crashes, reboots, disconnects; logs captured). Run it from the app's directory. Workers and crons are the same thing without a URL.weeny expose <name> <port> — attaches a public HTTPS URL to an app. <port> is the localhost port your app listens on. Add --private to require a weeny login; weeny allow <name> [email protected] grants access (weeny allow <name> everyone makes it public again).Then confirm it works: curl localhost:<port> on the server, and open the returned URL. Apps are systemd units named weeny-<name>, so if it's not up, check the logs: journalctl -u weeny-<name> -f.
/apps/<name>weeny env <name> KEY=value — encrypted, survive rebuilds, auto-restarts the app; bare weeny env <name> shows them. A .env in the app dir is also auto-loaded, but managed vars win over it--private — don't expose secretsweeny domain myapp app.example.com prints a CNAME; bare weeny domain myapp until it's liveIt's a normal computer — everything you do persists. The whole machine is snapshotted and backed up off-machine every few hours. If a server breaks, the dashboard's rebuild button restores the entire machine from the latest snapshot — apps, data, and everything else come back, same URLs.
Serve a /llms.txt from your app (what it does, its API base, how to auth, key endpoints). Then anyone's agent can drive it directly.
home · terms · privacy · [email protected]