Effigy is a unified task runner and repo runtime for developer work: one
CLI discovers and runs what each repo declares, instead of you memorizing whether
something lives in package.json, Cargo, a shell script, a nested workspace,
or a local container stack.
Each repo opts in with effigy.toml (often split across included files).
Effigy loads that manifest, merges composition, and routes effigy <selector> to
the right task or built-in.
One command to run anything in your repo:
# See what this repo can do
effigy tasks
# Run this repo's dev task (name is defined in effigy.toml — not a special CLI verb)
effigy dev
# Run all tests, across all languages (built-in test runner unless tasks.test overrides)
effigy testNo more hunting through package.json, Makefiles, or shell scripts.
Before: New team members need to know that tests run with npm test in the
web directory, cargo test in the api directory, and ./scripts/e2e.sh from
the repo root — and that the database needs to be running first.
After: effigy test runs everything (via the built-in test orchestration
unless the manifest defines tasks.test). effigy dev runs whatever dev
task the repo declared—often your whole local stack. One command from any
directory.
Effigy gives you:
- Run repo and nested tasks with
effigy <task>oreffigy <catalog>/<task> - Discover what's available with
effigy tasks - Keep local services off your host with
container,system, andworkspace - Scriptable output for CI and automation with
--json - Proof demos and release flows built into the same CLI instead of repo-local shell wrappers
macOS with Homebrew:
brew install inflatable-cookie/tap/effigyLinux with a prebuilt binary:
curl -fsSL https://github.com/inflatable-cookie/effigy/releases/latest/download/effigy-x86_64-unknown-linux-gnu -o /usr/local/bin/effigy && chmod +x /usr/local/bin/effigyLinux ARM64:
curl -fsSL https://github.com/inflatable-cookie/effigy/releases/latest/download/effigy-aarch64-unknown-linux-gnu -o /usr/local/bin/effigy && chmod +x /usr/local/bin/effigymacOS direct binary:
# Apple Silicon
curl -fsSL https://github.com/inflatable-cookie/effigy/releases/latest/download/effigy-aarch64-apple-darwin -o /usr/local/bin/effigy && chmod +x /usr/local/bin/effigy
# Intel
curl -fsSL https://github.com/inflatable-cookie/effigy/releases/latest/download/effigy-x86_64-apple-darwin -o /usr/local/bin/effigy && chmod +x /usr/local/bin/effigyLinux note: release binaries currently target an Ubuntu 22.04 baseline and expect
glibc >= 2.35. If your distro is older, install from source instead.
From source:
cargo install --git https://github.com/inflatable-cookie/effigy --tag v0.3.3Most people hit Effigy in one of two states:
- the repo already uses Effigy
- the repo is adopting it for the first time
If the repo already has effigy.toml, start here:
effigy tasks
effigy tasks --resolve test
effigy test --plan
effigy doctor --verboseIf the repo does not use Effigy yet, start here:
effigy initFor a brand-new repo, add a few obvious tasks to effigy.toml:
[catalog]
alias = "app"
[tasks]
dev = "bun run dev"
build = "bun run build"
"db:reset" = "./scripts/reset-db.sh"Then ask the repo what exists, and run something small:
effigy tasks
effigy tasks --resolve test
effigy test --plan
effigy devLeave test to the built-in runner unless you intentionally want
tasks.test to override it.
effigy tasks
effigy tasks --resolve test
effigy api/build
effigy --json tasksRead next:
effigy init
effigy migrate --from package.json
effigy config --inspect
effigy config --schema --minimalRead next:
Use containers when a repo needs databases, queues, or language workspaces without installing that full stack directly on your machine.
macOS prerequisites (Homebrew):
brew install colima
brew install mkcert # only needed when using HTTPS gateway routes
mkcert -install # one-time host trust-store install (may prompt)Docker is optional. If you want docker available on your host too:
brew install docker docker-composeeffigy container up
effigy gateway status
effigy dev # still the repo's dev task; containers are started separatelyRead next:
For demos, CI automation, release workflows, and advanced topics, see the docs front door.
Cross-repo agent skill teaches Claude Code, OpenAI Codex, Cursor (and 50+ other agents) how to use Effigy in any repo:
npx skills add inflatable-cookie/effigy -gDrop -g for project-local install. Source: skills/effigy/.
- Goal paths (read this next):
docs/README.md— short “choose your job” links into the guides. - Quick start:
021-quick-start-and-command-cookbook.md - Everyday workflows:
055-everyday-workflows.md - Full practical guide map (inventory + journeys):
docs/guides/README.md - Command lookup:
025-command-reference-matrix.md - Release history:
CHANGELOG.md
The Effigy source tree uses its own effigy.toml tasks (names like qa:…
exist only here). For day-to-day work on the project, not for consumers of the
tool in other repos:
effigy qa:ci:fast
effigy qa:ci:local
effigy release status --check-gatesIf effigy is not on PATH yet:
cargo run --bin effigy -- bootstrap:localLocal maintainer install and PATH-first usage: