gh-nika
August 7, 2026 · View on GitHub
Nika · intent-as-code for AI workflows: author a reviewable DAG in YAML, audit cost/permits before running, keep tamper-evident traces after.
A GitHub CLI extension for the
Nika workflow engine: the whole
nika CLI behind gh, with zero separate install step.
gh extension install supernovae-st/gh-nika
gh nika check flow.nika.yaml # static audit · DAG, cost floor, secret flows, permits
gh nika run flow.nika.yaml # execute · budget-cappable · hash-chained trace
gh nika trace verify .nika/traces/*.ndjson

How it resolves the binary
- A
nikaalready on yourPATHwins · the extension is a pass-through. - Otherwise it downloads the latest release binary once (macOS/Linux ·
x64/arm64), verifies it against the release
SHA256SUMS, caches it under${XDG_DATA_HOME:-~/.local/share}/gh-nika/, and runs it from there.GH_NIKA_DIRoverrides the cache location.
Handy where gh is already the tooling spine · Actions runners, Codespaces,
locked-down laptops:
- run: |
gh extension install supernovae-st/gh-nika
gh nika check flows/report.nika.yaml
env:
GH_TOKEN: ${{ github.token }}
(For PR comments with the check verdict + DAG, the purpose-built nika-action is the richer lane.)
Upgrade
gh extension upgrade nika
That upgrades the wrapper. The cached engine binary stays where it is ·
GH_NIKA_REFRESH=1 gh nika --version discards it and re-fetches the latest
release, checksum-verified like the first install.
Uninstall
gh extension remove nika
rm -rf "${XDG_DATA_HOME:-$HOME/.local/share}/gh-nika"
License
Apache-2.0 (this wrapper). The engine it fetches is AGPL-3.0-or-later; the language spec is Apache-2.0.
🦋 SuperNovae Studio · nika.sh · docs.nika.sh
The city · where this repo sits
📜 nika-spec ──── the civil code · the law tables, the corpus, the exam
│ sync-pack: byte-gated mirror │ projectors: drift-gated
▼ ▼
⚙️ nika ───────── the engine + the catalog (the yellow pages)
│ the release train 🖥️ nika.sh · 📖 nika-docs
▼ the showroom · the manual
📦 homebrew-tap · npm · Docker ── the docks
🔌 nika-client · 🎨 nika-vscode · 🤖 nika-plugins · ⚡ gh-nika ── the doors ◀── you are here
🏭 nika-action · 🧪 nika-actions-starter ── the CI district
🏪 nika-registry ── the market · 🏛 nika-estate ── the land registry
This building · THE GH DOOR · gh nika check and gh nika run from any terminal that already has the GitHub CLI.
Root · neither · this building is a shim. It finds the ENGINE or fetches it, then gets out of the way · nothing authoritative is typed here.
Consumes · nika on PATH when present · otherwise the latest release asset, verified against the release SHA256SUMS before it is ever executed.
Serves · every gh user · CI runners that already carry the GitHub CLI.
Truth lives · the binary answers, this script only routes · an asset missing from SHA256SUMS makes the install refuse rather than guess.
All the buildings: nika-spec · nika · nika.sh · nika-docs · nika-client · nika-vscode · nika-plugins · gh-nika · homebrew-tap · nika-action · nika-actions-starter · nika-registry · nika-estate
Every fact has one home · everything else is a gated projection. The living map: nika.sh/map.