Skip to content
Run your servers from AI assistants

Spin up production‑ready PHP
on your own servers.

Connect a clean Ubuntu server and have Laravel, WordPress or any PHP app live in production in minutes. Hanoo handles runtimes, packages, domains, certificates and deploys — and if you ever stop using us, your apps keep running on a server that is entirely yours.

  • Free plan
  • No card required
  • Full root access
  • Leave any time — apps keep running
ubuntu@production-1: ~An example: connecting a server to Hanoo, then deploying an application to it.
$ curl -fsSL https://app.hanoo.io/api/v1/install.sh \  | sudo bash -s -- --url https://app.hanoo.io/api \      --token hne_••••••✓ Agent installed · outbound mTLS, no open port✓ production-1 approved in your dashboard# then, from the dashboard: an app and a domain✓ Laravel app shop · PHP 8.4 FPM pool running✓ Release 1 built and activated✓ shop.northwind.dev · certificate issued (Let's Encrypt)https://shop.northwind.dev is live
The Hanoo dashboard, Applications page: Shop and Billing API (Laravel), Northwind Blog and a staging copy (WordPress) and a Status page (plain PHP), all healthy on server production-1.
To connect a server
One command
Management ports opened
None
PHP versions, side by side
8.0 – 8.5
Deploys and rollbacks
Zero downtime

Built on the open-source stack you already trust

  • Ubuntu 22.04–26.04 LTS
  • Caddy
  • PHP 8.0–8.5
  • Composer
  • Node.js
  • MariaDB
  • Valkey
  • Let's Encrypt

How it works

From a blank server to HTTPS
in three steps.

Bring a server from any provider. We turn it into a secure home for your PHP applications — and show you every step as it happens.

  1. 1

    Connect a server

    Paste one command on a fresh Ubuntu server from any provider. It installs a small agent that dials out to us — no inbound port, no root password shared.

    ubuntu@server
    One-time install command generated in your Hanoo dashboard
    Token expires after 10 minutes · review server details before approval
  2. 2

    Create an application

    Pick Laravel, WordPress or plain PHP, or point at a GitHub, GitLab or Bitbucket repository. The server generates a read-only deploy key; its private half never leaves your machine.

    hanoo
    ✓ Isolated user app_7f3c created
    ✓ PHP 8.4 FPM pool running
    ✓ Deploy key registered (read-only)
    ✓ Release 1 built and activated
  3. 3

    Go live on your domain

    Add your domain. We check that DNS points at your server, issue a trusted certificate, and switch the site over with zero downtime.

    hanoo
    ✓ shop.northwind.dev → 203.0.113.24
    ✓ Certificate issued (Let's Encrypt)
    ✓ HTTPS 200 · HTTP/2

AI native · MCP

Your AI assistant can run your servers —
only as far as you allow.

Hanoo has a built-in MCP server. Connect Claude, ChatGPT, Cursor or VS Code and ask about your servers in plain English, or let the assistant deploy and roll back for you. Every action goes through the same checks as the dashboard.

Works with
  • Claude Code
  • Claude
  • ChatGPT
  • Cursor
  • VS Code
Example conversation · your assistant, connected to Hanoo

Deploy the latest main of Shop and tell me when it is live.

  1. list_applicationsShop · Laravel · production-1
  2. deploy_applicationDeployment queued · main @ 9e42d7e
  3. get_jobSucceeded · 4 pipeline steps · health check passed

Shop is live on commit 9e42d7e. Migrations ran before the switch and the queue workers were restarted afterwards.

  • Ask, don’t dig

    Which servers are down? Why did the last deploy fail? Which apps are still on PHP 8.2? Answers come from live data, not a stale export.

  • Act with typed tools

    Create apps, deploy, roll back and change settings through named tools. There is no shell, no delete and no way to read a secret.

  • Scoped, expiring access

    Sign in with OAuth or use a token that lists exactly which actions, servers and apps it covers. It expires, and you can revoke it in one click.

  • Every call is on record

    Changes made by an assistant show up in the audit log with the token that made them, just like changes made by a person.

You choose what it may touch.

Each connection gets its own token. Reading is on by default; creating, deploying, rolling back and changing settings are separate boxes you tick. Limit it to a few servers or apps, and pick when it expires.

Connect your assistant in two minutes
Hanoo dashboard, New API token form: a token named “Claude Code on my laptop” that expires after 30 days, with read access selected and deploy, rollback and create left off.

Deployment workflow

Every deploy is a new release.
The live site is never half-built.

Hanoo builds each commit in its own release folder next to the one that is serving traffic. It switches over only when everything has passed, and puts the previous release back if the new one does not respond.

  1. 1

    Pick a commit

    Deploy the latest commit on a branch from GitHub, GitLab or Bitbucket — from the dashboard, the API or your AI assistant. Code is fetched with a read-only deploy key.

  2. 2

    Build it on the side

    Composer and your JavaScript package manager install dependencies and build assets in a new release folder. The live site keeps serving the whole time.

  3. 3

    Run your pipeline

    Migrations, storage links and caches run before go-live and can stop the deploy if they fail. Queue restarts and similar steps run after the switch.

  4. 4

    Switch with no downtime

    One atomic switch makes the new release live. No request ever lands on a half-copied folder.

  5. 5

    Check it, or put it back

    Hanoo calls the site right after the switch. If it does not answer, the previous release goes back automatically.

Hanoo dashboard, Deployments tab for the Shop app: repository northwind/shop on main, a four-step deploy pipeline, and the live deployment with each step succeeded and timed in milliseconds.
  • One-click rollback

    Earlier releases stay on the server. Rolling back is the same instant switch, with the same health check.

  • Every step, timed

    Each deploy shows its steps, how long each took and the output of any that failed — no SSH needed.

Developer workflow

Composer, Node and builds —
handled, and shown to you.

No more SSH-ing in to install the right Node version or wondering why a build failed. Hanoo reads your repository, installs exactly the toolchains it needs, and walks every deploy through visible, reversible steps.

  1. 1

    Detected from your code

    composer.lock means Composer. pnpm-lock.yaml, package-lock.json or yarn.lock pick the right JavaScript package manager.

  2. 2

    Pinned and verified

    Node.js 20, 22 and 24, npm, pnpm, Yarn and Composer are checksum-verified and shared across apps, then run as each app’s own user.

  3. 3

    Builds before go-live

    Dependencies install and assets build before a release is activated. A failed build never touches the running site.

Hanoo dashboard, App Packages tab for a Laravel app: Node.js 22.23.2 and npm installed and built, pnpm and Yarn available, Composer 2.10.3 installed.

Inside the dashboard

Every server,
and how it is doing.

See which servers are online, what runs on each one and how busy it is — without logging in over SSH.

  • Hanoo dashboard, Servers list: production-1, staging and client-sites, all live, with vCPU, memory, IP address, Ubuntu 24.04 and app counts.

    Servers

    Every connected server with its size, address, OS and number of apps.

  • Hanoo dashboard, production-1 overview: CPU 27%, memory 46% (3.6 of 7.8 GiB), up 19 days, 112 GiB disk free, 5 applications.

    Server health

    CPU and memory over the last hour, uptime, free disk space and the apps it hosts.

Fast by default

A modern stack,
tuned for PHP from the edge in.

Caddy at the edge, a dedicated PHP-FPM pool per application behind it, and a worker-mode runtime for the apps that can take it.

Available

Caddy with built-in SSL

Caddy · Let’s Encrypt

A modern, memory-safe web server in front of every app. Certificates are issued and renewed automatically, HTTP redirects to HTTPS, and configuration changes reload without dropping a request.

  • Automatic HTTPS and renewals
  • HTTP/2 and compression out of the box
  • Last-known-good config if a change fails
Available

Blazing-fast WordPress

PHP-FPM · OPcache · Valkey

One-step WordPress with its own database and isolated PHP pool, served by Caddy with OPcache on — no shared-hosting neighbours eating your CPU.

  • OPcache and Caddy static-file serving
  • Dedicated database and PHP pool per site
  • Valkey object cache, one click to turn on
Coming soon

FrankenPHP Performance Runtime

Caddy + FrankenPHP workers

Boot your Laravel app once and keep it warm in persistent workers. Hanoo checks compatibility before it lets you switch, measures the difference on your own workload, and lets you go back to the standard runtime in one click.

  • Compatibility analysis before enabling
  • Measured on your traffic, not a benchmark
  • One-click switch back to PHP-FPM

Full control, no lock-in

Stop using us tomorrow.
Your apps keep running.

Traditional panels expose a login page on every machine. Managed platforms keep your cloud account. Hanoo sits in between: a small agent on your server, a dashboard in the browser, and nothing you cannot walk away from.

  • Leave any time

    Standard Ubuntu packages, standard Caddy and PHP-FPM, files where you expect them. Cancel, and every site keeps serving — you simply manage it yourself.

  • Full root access

    It is your server in your cloud account. SSH in, change what you like, and bring your own tools. We never hold your root password.

  • Outbound only

    The agent connects out over mutually authenticated TLS. There is no management port to open, scan or brute-force.

  • Your sites outlive us

    Configuration lives on the server. If Hanoo is unreachable, your applications keep serving exactly as they were.

How Hanoo connects to your serverThe agent on your server opens an outbound, mutually authenticated TLS connection to Hanoo. Signed operations come back over that connection. Your applications serve visitors directly from your server.HanooDashboard · API · audit logoutbound mTLSno open portsigned operationsno remote shellYOUR SERVER · YOUR CLOUD ACCOUNTAgentCaddyPHP-FPMYour apps
If the connection drops, your sites keep serving. Nothing inside the dashed line depends on us.

Batteries included

Everything a PHP application
needs in production.

Sensible, secure defaults for Laravel, WordPress and plain PHP — with the underlying state always one click away.

  • Git deployments

    Deploy any branch from GitHub, GitLab or Bitbucket with a server-generated read-only deploy key, and roll back to a previous release in one click.

  • Isolated applications

    Every app gets its own Unix user and PHP-FPM pool. A compromised plugin in one app cannot read the files of another.

  • PHP 8.0 through 8.5

    Run supported and explicitly acknowledged legacy PHP versions side by side, with isolated pools and honest lifecycle warnings.

  • MariaDB and Valkey

    Install and harden managed database and cache services, with credentials generated on the server and kept out of your logs.

  • Cron jobs, readable

    Presets, a visual builder or a raw expression — with plain-English schedules and the next run times shown before you save.

  • SSH access per app

    Grant developers SSH keys scoped to a single application, and revoke them in one click.

  • Staging in a few clicks

    Clone production into a staging copy on the same server or a different one — files, database and configuration — and the copy gets a database of its own.

  • Built for large teams

    Set up a project for the whole team in minutes: invite people, grant each one only the servers, apps and actions they need, and see who did what, and when.

  • Typed operations only

    Every change is a validated operation with progress, output and an actor — never an opaque remote shell.

Pricing

Simple pricing.
Your servers, your bill.

Pay us for the software. Pay your provider for the server. No markup on infrastructure, ever.

  • Free Forever

    For a side project on a single server.

    Free

    Start free
    • 1 server
    • 8 applications
    • Just you
    • Git deploys with build steps
    • Custom domains with automatic HTTPS
    • MariaDB and Valkey databases
    • Cron jobs
    • Background workers (Supervisor)
    • Clone apps, on one server or across servers
    • Create DigitalOcean servers from the dashboard
    • Limit members to specific servers and apps
    • Basic support
  • Starter

    For freelancers running a handful of sites.

    $4/ month

    Start with Starter
    • 3 servers
    • 50 applications
    • Up to 3 team members
    • Everything in Free Forever
    • Encrypted application backups and restore
    • Email support
  • Most popular

    Pro

    For teams shipping production PHP apps.

    $8/ month

    Start with Pro
    • 10 servers
    • Unlimited applications
    • Up to 10 team members
    • Everything in Starter
    • Audit trail
  • Agency

    For agencies managing servers for many clients.

    $15/ month

    Start with Agency
    • Unlimited servers
    • Unlimited applications
    • Unlimited team members
    • Everything in Pro
    • Priority support

Prices in USD, excluding tax. Cancel any time — your servers keep running.

FAQ

Questions,
answered honestly.

Anything else? We're happy to talk it through before you connect a server.

Read the docs
Which servers can I connect?

A clean Ubuntu 22.04, 24.04 or 26.04 LTS server from any provider — DigitalOcean, Hetzner, AWS, Vultr, your own hardware — on amd64 or arm64. It needs outbound internet access; no inbound management port is required.

Do I keep root access to my server?

Yes. It is your server, in your cloud account. Hanoo never asks for your root password and never stores your SSH private keys.

Is the agent safe to run?

The agent only accepts signed, typed operations from the control plane over mutually authenticated TLS. There is no command that runs arbitrary shell, and every operation is attributed to the person who requested it.

What happens to my sites if Hanoo goes down?

Nothing. Configuration is applied on the server itself, so Caddy and PHP keep serving your applications whether or not the dashboard is reachable.

Can I still change things on the server by hand?

Yes. We use standard Ubuntu packages and standard configuration locations. Files Hanoo manages are clearly marked, and everything else is yours to change.

What happens if I stop using Hanoo?

Your servers and applications keep running, unchanged. Everything is standard Ubuntu, Caddy and PHP-FPM in the usual places, so you keep full control and manage the sites yourself — no export, no migration, no downtime.

Do you handle Composer, Node.js, npm and pnpm?

Yes. Hanoo detects them from your repository — composer.lock, package-lock.json, pnpm-lock.yaml or yarn.lock — installs checksum-verified versions, and runs dependency installs and builds before a release goes live. Each application also gets an editable deploy pipeline — test runs, database migrations, cache and queue restarts — with the result of every step shown.

Can a large team share staging and production?

Yes. Invite your team to one organization and grant each person only the servers, applications and actions they need. Clone a production app into a staging copy — on the same server or another one, with its own database — and every change is recorded in the audit log.

Which applications are supported?

Laravel, WordPress and general PHP applications, including anything you deploy from a Git repository. WordPress sites get a one-click Valkey object cache and an Optimize tab that scans for common slowdowns.

Can Hanoo manage my Laravel queues, workers and scheduled jobs?

Absolutely. You can manage long-running queue workers with Supervisor and scheduled tasks with cron jobs, including running a job on demand and seeing its latest result — all from the dashboard.

How do I connect to my application database?

Remote database access is off by default. Turn it on, allowlist the IP addresses that may connect, then use the connection details in your preferred database client.

Can I manage Hanoo from ChatGPT, Claude Code, Codex or another AI assistant?

Yes. Connect any compatible assistant to Hanoo’s built-in MCP server, then talk to it naturally about your servers and applications. Depending on the access you grant, it can inspect resources, create applications, deploy, roll back and change settings — with every action scoped and audited.

Connect your first server
in minutes.

Start on the free plan with a server you already have. No card, no lock-in, no surprises.

  • Free plan
  • No card required
  • Full root access
  • Leave any time — apps keep running