CLI Reference
Complete reference for every ezkeel command, with usage, flags, and examples.
ezkeel init
Initialize a new EZKeel project. Scaffolds the directory structure, creates a workspace.yaml, sets up Dev Container and AI persona configuration, and optionally creates a Forgejo repository.
| Flag | Default | Description |
|---|---|---|
--forgejo-url | none | Forgejo instance URL (e.g. https://git.ezkeel.com) |
--forgejo-token | none | Forgejo API token for creating the repository |
--infisical-url | none | Infisical instance URL (e.g. https://secrets.ezkeel.com) |
--infisical-token | none | Infisical API token for creating the project |
--infisical-org | none | Infisical organization ID to create the project in |
Example:
ezkeel clone
Clone an EZKeel project and set it up locally. Clones the Git repo, injects secrets for the specified environment, and scaffolds the AI config.
| Flag | Default | Description |
|---|---|---|
--forgejo-url | none | Forgejo instance base URL (e.g. https://git.ezkeel.com/myorg) |
--env | dev | Environment to inject secrets for |
Example:
ezkeel secrets inject
Export secrets for the given environment as shell export statements. Reads the Infisical project from workspace.yaml and outputs key-value pairs to stdout.
Example:
ezkeel ai
Run an AI tool with automatically injected secrets. Resolves model names from workspace.yaml, injects the required API key from Infisical, and launches the tool with your prompt.
| Flag | Default | Description |
|---|---|---|
--env | dev | Environment to inject secrets for |
The <tool> argument maps to known AI tools:
claude— Claude Code (requiresANTHROPIC_API_KEY)codex— OpenAI Codex (requiresOPENAI_API_KEY)local— resolves to theai.models.localvalue inworkspace.yaml(e.g.ollama/llama3)
Examples:
ezkeel sync push / pull
Synchronize the AI persona configuration (.claude/ directory) between your local machine and a dedicated ezkeel/persona Git branch. This keeps your AI configuration portable across machines.
Push stashes your current work, checks out the ezkeel/persona branch, commits the .claude/ directory, force-pushes, then returns you to your previous branch.
Pull fetches the remote branch and checks out just the .claude/ subtree into your working directory.
ezkeel plan new / diff
Manage project planning documents in the plans/ directory.
plan new
Create a new dated plan document and open it in $EDITOR:
plan diff
Show the diff of plan changes since the last Git tag:
ezkeel publish
Publish public paths to a separate open-source repository. Reads the visibility rules from workspace.yaml, copies only public paths to a temp directory, and force-pushes to the public repo.
| Flag | Default | Description |
|---|---|---|
--forgejo-url | none | Public repository URL to push to |
--dry-run | false | List files that would be published without pushing |
--diff | false | Show configured public/private paths |
Examples:
ezkeel platform install
Install the full EZKeel platform (Forgejo, Infisical, PostgreSQL, Redis, Caddy, Runner) on a server using Docker Compose. Generates secrets, writes config files, and starts all services.
| Flag | Default | Description |
|---|---|---|
--dir | /opt/ezkeel | Directory to install the platform into |
--forgejo-domain | git.ezkeel.com | Domain for the Forgejo instance |
--infisical-domain | secrets.ezkeel.com | Domain for the Infisical instance |
See Installation and Platform Setup for detailed deployment instructions.
ezkeel environment
Manage the project's dev container. Build the container image, start it, or execute commands inside it. Aliased as ezkeel env.
environment build
Build the dev container image defined in .devcontainer/devcontainer.json.
environment start
Start the dev container (runs devcontainer up).
environment exec
Execute a command inside the running dev container.
| Flag | Default | Description |
|---|---|---|
--dir | current directory | Project directory containing .devcontainer/ |
Prerequisite: Requires the Dev Containers CLI. Install with npm install -g @devcontainers/cli.
ezkeel platform setup
Print a step-by-step guide for creating admin accounts after ezkeel platform install. Reads credentials from the platform's .env file.
| Flag | Default | Description |
|---|---|---|
--dir | /opt/ezkeel | Platform install directory containing .env |
This guide is also printed automatically at the end of ezkeel platform install.