Run Claude Code on a 5 euro VPS as a dev box for several projects

Hafiz ran Claude Code in one tmux session per project on a €5 VPS for 52 days, working from a Mac and an iPhone, with two instances using about 1.3 GB of RAM.

Done withClaude Code· Oct 19, 2026

What they did

Hafiz, a Laravel developer, moved his projects onto a single €5 a month VPS and ran Claude Code inside a tmux session for each one, attaching from a Mac or an iPhone. Staging sites run on the box behind a Cloudflare Tunnel with an Access login, and production goes out through a deploy.sh per project. Each project's CLAUDE.md tells the agent to pull when a session starts and push after every commit, and the deploy script refuses to run with unpushed commits. He compared the setup with Taylor Otwell's plan to work only from Laravel Cloud and Amp's cloud machines.

How it went

After 52 days without a reboot the box used 1.3 GB of 3.9 GB of RAM with two Claude Code instances open, each at about 330 to 355 MB, and the load average sat near zero. Daily use turned up a list of failures: Livewire buttons silently broken behind the tunnel, a queue worker holding stale config, a deploy that deleted a production credential, an expired Tailscale key, Reddit blocking the host's IP range, and Playwright missing its browser path inside the agent's shell. He is not fully cloud-only; some work stays on the Mac.

Worth knowing

The €5 covers development only; production runs on servers he already paid for. A persistent box means isolating projects by hand: he gave one bot its own system user, PHP-FPM pool and queue unit. Watch for kernel updates that never get booted and Tailscale's 180-day key expiry on servers.

Try it

With Claude Code· 3 parts to fill in

Set up [VPS host] as my remote dev box for [list of projects]. For each project, check it out once, create a named tmux session and a CLAUDE.md that says to pull at session start and push after every commit. Write a deploy script for each that refuses to run when there are unpushed commits. Put staging behind [tunnel or VPN tool] with a login in front. Report memory use per agent session at the end. Ask me before changing SSH, firewall or DNS settings.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related