Tools · Open Source
One CLI for Terraform, Docker, and Helm
Most infrastructure work isn't one tool, it's three. You write Terraform to provision, build and push containers with Docker, then deploy with Helm. Each has its own CLI, its own flags, and its own mental model. The switching cost is real, and it adds up on every change.
We hit that friction often enough that we built a fix and open-sourced it: Smurf, a Go-based CLI that gives those three tools one consistent interface.
One verb across three tools
Smurf wraps each tool behind a unified command. The headline verb is provision, which runs the sensible end-to-end sequence for whichever tool you're targeting:
smurf stf provision, Terraform:init → validate → applysmurf sdkr provision, Docker:build → scan → publishsmurf selm provision, Helm:install → upgrade → lint
Credentials and defaults are read from a single smurf.yaml, so you're not re-typing registries, tags, and tokens across commands.
Why it matters
The point isn't novelty, it's reducing ceremony. One workflow means fewer half-remembered flags, a smaller surface for mistakes, and a build-to-deploy path that looks the same whether you're shipping infrastructure or an application. New engineers get productive faster because there's one thing to learn, not three.
Smurf is open source and written in Go. It's the same kind of leverage we build into client platforms: make the right way the easy way, then get out of the team's way.