Why did I build this? Because every time I set up a new server, it's the same pile of shell scripts — install Docker, configure a reverse proxy, generate SSL certs, move env vars around…
Neo wraps years of deploy experience into one CLI. ( with tui )
What it does:
✦ `neo deploy` — build image → SSH transfer → blue-green swap, zero downtime
✦ `neo dev` — local dev using the same config
✦ `neo domain --temp` — instant sslip.io preview URL, no DNS needed
✦ Auto-SSL via Caddy + Let's Encrypt
✦ Workers & sidecars — queues, schedulers deploy alongside your app
✦ Persistent volumes — databases & uploads survive every redeploy
✦ Env management — auto-reads docker-compose.yml + .env
✦ Server metrics, DB tunnel, built-in DB viewer — all included
and we created a neo-skills for ai agent, so agent can easily help you deploy repeatedly 😎
when i launched pullnotifier i burned a full weekend fighting caddy configs, docker networking, and manually managing ssl certs on a $5 vps. i kept looking for something that would just work the way my local compose setup did without bolting on yet another agent or dashboard to babysit.
the 'ssh-native, no control plane' bit here is what gets me. most deployment tools in this space still require you to trust their infrastructure layer to reach your servers. something that deploys docker apps and handles ssl entirely over ssh, using credentials you already have, is a much smaller trust surface. does it handle env var injection at deploy time, or is that a separate step?