A typechecker for your issue tracker.
npm i -D ztrack && npx ztrack initNode ≥ 22.18 · Apache-2.0
A checked box has to cite a commit that's actually in git — or the ticket fails.
Two-way GitHub Issues sync built in. Linear/Jira stay the human surface you already use — sync there is on the roadmap.
Green on day one with the default preset. Swap in a stricter one, or edit preset.mts, when you're ready.
An acceptance criterion only turns green when you attach the SHA yourself: ztrack ac patch <issue> <ac> --json '{evidence:[…]}'. There's no inference step — ztrack checks the commit you cited exists, nothing more, nothing less. Same gate everywhere: ztrack check locally, the same command in CI (exit 1 blocks the merge), or ztrack loop plus the agent Stop-hook holding the turn until it's green.
Two-way GitHub Issues sync built in. Linear and Jira stay your human surface — sync there is on the roadmap.
Four ready-made presets install a real Zod schema + rules file — plus a fifth: edit that file and write your own.
Every ztrack check ends with a real count — e.g. issues 1 · errors 0 · warnings 0 — nothing silently dropped.
Agents fix-and-retry a typechecker until it passes — turns out that's the right loop.
ztrack loop
Holds the agent's turn until check passes — fix-and-retry like a typechecker. Wire it as a CI gate, or drive it over MCP.
Every other tool records what the agent claims, or scores outputs and forgets. ztrack is the system of record where “done” is verified.
| Records claim | Validates structure | Verifies evidence of done | |
|---|---|---|---|
| Linear / Jira | ✓ | shape only | ✗ |
| Beads | ✓ | — | ✗ |
| spec-kit / OpenSpec | ✓ | ✓ | ✗ |
| Eval / observability | — | — | scores output |
| ztrack | ✓ | ✓ | ✓ |
ztrack runs our own autonomous agent fleet in production.
No — it's a verification layer. Today, validated state syncs back two-way with GitHub Issues; Linear/Jira stay the tracker you already use, with sync on the roadmap.
No. The default is green with just git + a PR host. Screenshots and video are opt-in higher tiers.
The hard checks are zero-false-positive facts — a SHA that's actually in git, a file that resolves. You can't pass without doing the work.
spec-kit validates the shape of spec prose. ztrack verifies evidence of completion, deterministically.
It shines with agents (MCP, stop-hook), but the checks work for any team that wants “done” to mean something.
Apache-2.0, local-first, no SaaS dependency.
npm i -D ztrack && npx ztrack initnpm i -D ztrack && npx ztrack init