Rabea Bader, CTO of payments company Quidkey, moved Claude Code from her laptop to a Hetzner server in Germany so the agent can work 24/7 independently of her computer. Access is secured by a private Tailscale network, mosh keeps the connection alive, tmux ensures sessions survive disconnections, and instead of the risky bypass permissions mode, the agent's rights are limited to scoped keys and read-only database access. The initial setup took about 30 minutes, and the working server costs €19 per month.

image

What happened

Bader rented a Hetzner server in Germany and launched Claude Code on it so the agent could work continuously and not die when her laptop lid closed. The connection goes through a private Tailscale network without exposed SSH, mosh keeps the session alive when switching networks or when the phone goes to sleep, and tmux keeps the agent's sessions alive after the client disconnects. Instead of enabling bypass permissions mode, the author limited not the agent itself, but its environment: API keys are issued with scope, database access is read-only, the agent can create PRs but not merge them to main, and incoming webhooks are received via Tailscale Funnel — a public HTTPS link to a single port. The setup itself took about 30 minutes, after which a full cycle was established: development, running code, Playwright tests, unit and integration checks, updating Notion and statuses in Linear.

Context

Agents are usually kept on a laptop and stopped with it, and 24/7 runs were considered too risky due to the broad permissions that have to be granted to an autonomous coding agent. The key trick in this case is inverting the trust model: security is achieved not by the model's obedience, but by narrowing the surface it can reach. Operations revealed the cost: the first configuration with 2 cores and 4GB for €4 a month died from lack of memory, the working minimum became 4 cores and 16GB for €19, five forgotten sessions outside tmux silently held about 1.6GB of RAM, and the real bottleneck was not CPU or memory, but API token limits.

Why this matters for the industry

For the industry, this is a field recipe for an always-on agent instead of being tied to a workstation: the combination of Hetzner, Tailscale, mosh, and tmux with scoped credentials shows how to run Claude Code on long overnight runs that were previously considered too risky. The pattern is copyable: product teams can immediately transfer permission limits — key scope, read-only database access, PRs without merging — instead of dangerous bypass permissions. The case also exposes a product gap: setting up the agent's environment, managing its sessions and permissions is currently done by hand by everyone, and this is a ready-made field for tools — the author is already preparing a CLI tool qkvps, and in the future such setups risk becoming part of the delivery loop on par with CI, forming the category of agent ops: monitoring, limits, and budgeting for farms of agent sessions. An important caveat for scaling: the limiting resource for long autonomous runs becomes the API quota, not hardware.

Why this matters for users

For those running Claude Code locally, the recipe is reproducible in one evening: a server with 4 cores and 16GB for €19 a month and about 30 minutes for initial setup — after that the agent lives its own life, even when the laptop is off. Key operational lessons: always run the agent inside tmux, because a forgotten session in a bare shell eats memory for weeks; build in RAM headroom for parallel Playwright tests; keep dotfiles and Claude memory in a separate repository for synchronization. This migration removes the fear of long overnight runs: even in an accident, the damage is limited to the access surface, not the model's good faith.

What is still unknown / limitations

The evidence base for the case is N=1: a blog post by one CTO about one workload, without methodology, without a baseline comparison with a laptop run, and without failure statistics. The end-to-end cycle is claimed, but without quality metrics: no percentage of successful tasks, no frequency of regressions, no token consumption measurements. The discussion on Hacker News does not replace measurements, so transferring conclusions to other workloads and teams should be done carefully.

Sources

Author

Look at AI, editorial team