Everything you need for local dev staging
One operator. One CLI. From git push to running app on localhost.
Zero Cloud CI Minutes
Your laptop is the runner. No queuing behind other jobs, no paying for compute you already own. Builds happen locally in seconds.
AI-Generated Workflows
Point kindling generate at any repo. It scans Dockerfiles, docker-compose, Helm charts, and source code, then produces a complete GitHub Actions workflow.
15 Auto-Provisioned Dependencies
Declare postgres, redis, rabbitmq, kafka, elasticsearch, and 10 more in your workflow. The operator provisions them and injects connection URLs automatically.
Kaniko Builds — No Docker Daemon
Images are built inside the cluster using Kaniko. No Docker-in-Docker, no privileged containers. Layer caching makes rebuilds fast.
Instant localhost Staging
Every push deploys a full staging environment with Deployment, Service, and Ingress — accessible at http://you-app.localhost immediately.
Secrets & OAuth Built In
Manage API keys with kindling secrets. Need OAuth callbacks? kindling expose creates a public HTTPS tunnel with one command.
How it works
Bootstrap
kindling init creates a Kind cluster with an in-cluster registry, ingress controller, and the kindling operator.
Connect
kindling runners registers a self-hosted GitHub Actions runner bound to your repo and username.
Generate
kindling generate scans your repo and uses AI to produce a complete workflow with builds, deploys, and dependencies.
Push & Deploy
git push triggers the workflow. Your laptop builds the image and deploys a full staging environment on localhost.
Quick start
# Install
brew install kindling-sh/tap/kindling
# — or build from source —
git clone https://github.com/kindling-sh/kindling.git
cd kindling && make cli
sudo mv bin/kindling /usr/local/bin/
# Bootstrap a local cluster
kindling init
# Register a GitHub Actions runner
kindling runners -u <github-user> \
-r <owner/repo> -t <pat>
# AI-generate a workflow for your app
kindling generate -k <api-key> -r /path/to/app
# Push and watch it deploy
git push origin main
# Access your app
curl http://<user>-<app>.localhostPrerequisites
- Docker Desktop — container runtime
- Kind — local Kubernetes clusters
- kubectl — Kubernetes CLI