ymirr CLI v2
The ymirr CLI v2 is the Convex-backed infrastructure CLI. It manages projects, services, environments, and Pulumi deployments from a single entry point, with an interactive menu and scriptable commands. It also integrates Netrunner for database clone management.
This doc set is named ymirr-cli-v2 until the new CLI is fully coupled and the legacy ymirr CLI is retired. The binary is still ymirr.
What it does
- Projects — Create and manage projects in Convex (
ymirr init). - Services — Add, edit, remove, and list services (image, tier, DNS, Istio routes, probes).
- Environments — Configure dev/uat/prod/preview (Cloudflare, Kubernetes, Vault, Hetzner, service overrides).
- Deploy — Generate
project_configuration.tsfrom Convex and run Pulumi (deploy,destroy). - Developer tools — Generate CI/CD YAML, preview config, logs, export env file, and Netrunner clone (create/list/destroy/status).
When you are not in a project directory, Developer Tools still shows: Logs, Export env file, and Netrunner — clone. The rest (Generate CI/CD, Generate config) require a configured project.
Installation
From the private registry:
npm config set @ymirr:registry https://npm.ivfuture.uk/
npm install -g @ymirr/ymirr-cli
One-time setup (env vars + optional global packages):
ymirr setup
Choose “Environment variables” to write ~/.ymirr-env (Pulumi, Cloudflare, Vault, Kube, Netrunner). Choose “Global packages” to install @ymirr/pulumi-infra and @ymirr/netrunner. Ensure your shell sources ~/.ymirr-env (e.g. in ~/.bashrc).
Quick start
-
Run the CLI (interactive menu):
ymirr -
Initialize a project (creates project in Convex, writes
ymirr.toml):ymirr init -
Add services and environments from the menu (Deployment Tools → Service — add, Environment — add).
-
Deploy (menu or CLI):
ymirr deploy --env dev
For full command reference and details, see Commands and Setup.