NO SETUP REQUIRED

Describe it.
Then open it in your browser.

Say what you want — a timeclock, a booking form, a tracker for your guitar pedals. Zeltro gets everything ready behind the scenes, your AI builds it, and minutes later it’s running on your own computer.

Open source · Linux, macOS & Windows · Free forever

THE DESKTOP APP

Point and click, or stay in the terminal.

Everything the CLI does, without typing a command — create with AI, install from the app library, start and stop services, and see every project on the machine at a glance.

Agent terminals are built in. AI sessions run in real tabbed terminals inside the window, so you can watch your agent work and jump in whenever you want.

Download
Zeltro GUI showing project tiles with Start, Modify with AI, Edit and Trash actions, and the shared services panel below
Zeltro theme — one of five. Sample projects shown.

Install Zeltro

Two pieces. The CLI does the work; the GUI is an optional desktop front end. Neither ships as a package — both install from source, so what you install is what runs, and updating is a git pull.

Straight to it? The steps are below — the GUI is optional.
Every platform, and what differs on each.

Three things, reinforcing each other

Zeltro does three things, and they reinforce each other.

Shares resources across every project

One zeltro-postgres, one zeltro-redis, one zeltro-mariadb, used by every project on the machine. Run ten projects, you've still got one of each. Cross-project hostnames resolve from the browser and from inside containers, so a Laravel app and a FastAPI service can share a database with zero networking setup.

Installs frameworks & 200+ OSS apps in one command

zeltro install grafana — fully configured, running, reachable at http://grafana/ in under two minutes. Or scaffold a fresh Laravel, FastAPI, Django, or Express project with zeltro new. No env-var spelunking. No "why isn't db:5432 resolving" debugging. No copy-pasting docker-compose files from someone's gist.

Built for AI agents

Zeltro's command surface is shaped around AI-driven development. Your agent gets a stable platform — shared services, hostname routing, three known runtime images — so it focuses on the actual app instead of reinventing the runtime. Works with Claude, Codex, and Gemini.

WHY ZELTRO

“Couldn't I just ask my AI agent to do all this?”

You can. It'll just do it slowly, expensively, and a little differently every time. Zeltro is the durable substrate underneath — with or without an agent driving it.

Without Zeltro

AI agent alone

  • Re-derives nginx + framework wiring every session.
  • Burns 10-15k tokens scaffolding a single OSS app — and gets it almost right.
  • Each project bundles its own Postgres / Redis. Ports collide, RAM melts as you add projects.
  • No cross-project hostnames. "How does my Express app talk to my Django app?" becomes a debugging session.
  • Different result on every machine. "Worked on my laptop" returns.
  • When upstream drifts, your AI rediscovers the breakage inside your codebase.
With Zeltro

AI agent + Zeltro

  • Three tested runtime images. Agent skips the plumbing entirely.
  • ~800 tokens to install a curated OSS app. Verified end-to-end on a real fleet.
  • One shared Postgres, Redis, MariaDB, Mongo for every project. ~700MB → ~100MB RAM.
  • Stable hostnames in both directions: http://django-app/ from your browser and from your Express container.
  • Same hostnames, same credentials on every machine — laptop, teammate, VPS.
  • zeltro update-installer regenerates installers when upstream drifts. The platform self-maintains.

Zeltro isn't competing with your AI agent. It's the workshop your agent works in — tested tools, shared resources, predictable setup — so the agent (and you) skip rebuilding the workshop every time.

BUILT TO SAVE AI TOKENS

Your agent skips the plumbing.

Framework scaffolding, container networking, shared services, secret generation, and 200+ OSS app installs are all pre-baked. Your agent doesn't burn tokens rediscovering how to wire nginx + php-fpm, what env vars Mastodon needs, or how to generate VAPID keys every session.

Faster results. Cheaper bills. Fewer "ugh, why isn't this working" loops.

Two commands. Stupid productivity.

No Docker knowledge required. No config files to wrestle with.

zeltro install

Install a curated open-source app, fully wired up to shared services, in under two minutes.

$ zeltro install grafana
$ zeltro install gitea
$ zeltro install n8n
$ zeltro install nextcloud
$ zeltro install mastodon

200+ apps. Pinned versions. Tested end-to-end on a multi-machine fleet.

zeltro create

Describe a project in plain English. Zeltro builds and wires the whole environment; your AI agent only customizes it.

$ zeltro create "A timeclock for employees in Django"
$ zeltro create "A customer check-in system in Laravel"
$ zeltro create "An inventory tracker in Express"
$ zeltro create -f detailed-spec.md   # or pipe a big prompt in

Migrations, models, routes, templates — all wired to a real database, all running locally. Big prompt? Use -f file, < file, or pipe it in.

Get running in minutes.

Four steps. From zero to a real app on a local URL.

  1. 1

    Install the Zeltro CLI

    This is Zeltro itself — the command line tool that does all the work. Pick your platform; one curl, no manual setup.

    Choose your platform

    curl -fsSL https://raw.githubusercontent.com/CaneBayComputers/zeltro-cli/master/install-ubuntu.sh | bash

    Installs the CLI only. The desktop app is optional and comes later — see step 5.

  2. 2

    Reboot

    Picks up Docker group membership and PATH changes from the installer.

    sudo reboot
  3. 3

    Configure

    Sets up your projects directory, Docker network, hosts entries, and AI agent. Safe to re-run — existing values stay as defaults.

    zeltro configure
  4. 4

    Build something

    Pick one of three paths — whichever fits the project you have in mind.

    Install a curated OSS app
    zeltro install <app>      # click an app below for the exact command
    Have an AI agent scaffold a custom project
    zeltro create "A timeclock for employees in Django"
    Pull in a project you already have on GitHub
    zeltro create "https://github.com/your-org/your-repo"

    Clones the repo, adapts its docker-compose.yaml to use Zeltro's shared databases, and starts everything. Your AI agent reads the project's README and picks up where the upstream left off.

    Start blank with a framework you already know
    zeltro new <type> my-app

  5. 5

    Optional: the desktop app

    Everything above is the CLI and is all you need. Zeltro GUI is a separate, optional desktop front end for it — same projects, same services, just visible and clickable.

    Install the GUI

    One command, the same shape as the CLI above — it clones the repo for you and builds from source. On Linux and macOS it installs the CLI first if zeltro is missing.

    curl -fsSL https://raw.githubusercontent.com/CaneBayComputers/zeltro-gui/master/install-ubuntu.sh | bash

    Swap for install-fedora.sh, install-arch.sh or install-mac.sh. It pulls the npm dependencies, compiles the TypeScript and rebuilds the native terminal module against Electron — a few minutes, mostly npm install. Re-running it is safe, and running it from inside an existing checkout installs that checkout instead of cloning.

    Windows works differently. The GUI runs natively, but there is no local Zeltro for it to drive — it connects over SSH to machines that have one, added under Settings → SSH Hosts. Right-click PowerShell, choose Run as administrator, then: irm https://raw.githubusercontent.com/CaneBayComputers/zeltro-gui/master/scripts/install-windows.ps1 | iex  Full details →

216 apps. One command each.

Click an app to see the install command. All wired to shared databases. All reachable at http://<app-name>/.

Select an app below to see its install command.