The quality engine for your stack
One Check contract. A bundled standard library, sharable preset packs for every language and framework, and your project's own rules — all running through the same scheduler, scorer, and CI gate. Zero-config to start, fully customizable to ship.
An engine, a std-lib, and an ecosystem
Every project defines its own quality bar. Calibrate runs whatever rules you load — bundled, third-party, or local — and reduces them to one 0–100 score.
Engine, not a fixed quality bar
Calibrate runs whatever bar your team sets. A small Check contract, a registry/scheduler, a weighted scorer, a dashboard, a CI gate — that’s what calibrate is. Everything else is content.
Bundled standard library
TypeScript, ESLint, Prettier, security, tests, coverage + 6 SRP rules ship as the transitional floor. Extracted into a separate @calibrate/standard package in v1.0.
Shareable preset packs
Any team or ecosystem can ship a preset npm package — @calibrate/react, @calibrate/node-cli, @acme/calibrate-rules. One line in checks.extends imports the whole bundle.
Three kinds of check
Deterministic (pure code analysis), external (wrap any CLI — Lighthouse, ruff, golangci-lint, knip), and LLM (prompt + Zod schema + model with caching and a USD budget).
Historical commit scoring
Score any past commit via a temporary git worktree without touching your branch, stash, or workspace. Diff per-file scores across commits.
GitHub Action + CI ready
Drop-in composite action installs the CLI, runs the scan, exposes score / passed outputs, uploads the report. Or use calibrate init to scaffold a workflow.
Get started in seconds
Local + CI
Install
pnpm add -D @decoperations/calibrateRun it
npx calibrateFirst run auto-detects your project, writes .calibrate/config.json + a calibrate-rules/ directory, then analyzes.
PR / push gate
Drop into a workflow
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: decoperations/calibrate.wtf@v1
with:
thresholds: standardComposite action — installs the CLI, runs the scan, surfaces score and passed as outputs, uploads the report as an artifact.