Getting Started

Everything you need to deploy any repo to your own server in one command.

What is EZKeel?

EZKeel is a deploy-anything CLI. Point it at a repo, and it auto-detects your framework, generates a Dockerfile, provisions databases, and deploys to your VPS with SSL — all in one command.

Need more? EZKeel also includes a full self-hosted platform mode with Forgejo (unlimited CI), Infisical (secrets), and Dev Containers.

See it live: todolist.apps.ezkeel.com — A todo dashboard deployed with EZKeel. Express + PostgreSQL + auto-TLS on a $5/month VPS.

Quick Start

Get up and running in three steps.

1

Install the CLI

Build from source using Go:

terminal
$ curl -fsSL https://raw.githubusercontent.com/ferax564/ezkeel/main/install.sh | bash
2

Add Your Server

Point EZKeel at any VPS with SSH access. One-time setup:

terminal
$ ezkeel server add \ --host 168.119.x.x \ --domain deploy.mysite.com Server "server-168-119-x-x" saved.

Point *.deploy.mysite.com to your server IP via a DNS A record.

3

Deploy Any Repo

One command. Zero config:

terminal
$ ezkeel up github.com/user/my-app ✓ Detected: Next.js 15 + Prisma ✓ Generated Dockerfile ✓ Built image ✓ Deployed to server ✓ Health check passed Live at https://my-app.deploy.mysite.com

Subsequent deploys from the same repo directory are even simpler:

terminal
$ ezkeel up # Re-detects, rebuilds, zero-downtime redeploy

Core Concepts

workspace.yaml

The single configuration file that drives everything. It defines your project's visibility rules, secrets requirements, AI model configuration, CI setup, and deployment. See the full schema reference.

Visibility

Secrets

Secrets are managed through Infisical and declared in your workspace.yaml. EZKeel injects them into your shell or passes them directly to AI tools. No more .env files scattered across machines. See Secrets.

AI Persona

Each project gets a .claude/ directory containing AI configuration — model preferences, MCP servers, and a persona prompt. The ezkeel sync push/pull commands keep this persona consistent across machines via a dedicated Git branch. See AI Configuration.

Web Dashboard

Alongside the CLI, EZKeel ships with a web dashboard at app.ezkeel.com (or your self-hosted copy). It is a three-panel layout: project sidebar on the left, project detail in the middle, agent chat on the right.

Agent chat

Three built-in agents: app-builder scaffolds, writes code, and deploys. code-reviewer reads your repo and flags bugs/security issues without modifying anything. devops runs docker commands, reads logs, and restarts containers. Each agent streams tool events (scaffold, write_files, deploy) back to the chat in real time.

The welcome message offers four clickable example prompts (todo app, URL shortener, guestbook, Go hello-world). Clicking an example drops the full prompt into the textarea so you can edit it or send as-is.

When you ask the agent to build something with a database ("Express + Postgres", "todo app", "save to a database"), it sets needs_database=true on the scaffold call — EZKeel auto-provisions a dedicated Postgres user + database for the app and injects DATABASE_URL as an environment variable at deploy time. Your app code only needs to read process.env.DATABASE_URL.

Project tabs

Navigation

Every project detail view has a ← Dashboard button in the top-left that tears down any open log/terminal streams and returns you to the empty state. The empty state widens the chat panel to 640px so the agent prompts are prominent; clicking any project collapses it back to 320px to give the detail view room.

Pricing tiers

The dashboard is tier-gated via your EZKeel account:

Next step: Follow the Installation guide for detailed setup instructions, or jump to the CLI Reference if you are ready to explore commands.