← ClaudeAtlas

dxkit-checkslisted

Declare and operate custom repo invariants as first-class guardrail gates — a project rule (a "no imports from X" check, an architecture script, a license audit) or the built-in per-language lint gate. Use when the user says "make our lint errors block the PR", "gate our custom check", "add a repo rule to the guardrail", "enforce our architecture script", "why isn't my check running", "block net-new lint but grandfather the backlog", or "run our checks without gating". For suppressing an individual finding, defer to dxkit-allowlist; for the fix-vs-suppress decision, dxkit-action.
vyuh-labs/dxkit · ★ 10 · Code & Development · score 72
Install: claude install-skill vyuh-labs/dxkit
# dxkit-checks A **custom check** is any repo command dxkit runs as a first-class gate citizen. Two sources feed one seam: - **User checks** you declare in `.dxkit/policy.json:checks` — a project invariant (`check:no-cross-layer-imports`, `make lint`, a license audit, `scripts/arch-gate.sh`). - The **built-in lint gate** — each active language pack's linter (eslint, ruff, golangci-lint, rubocop, clippy, ktlint, dotnet analyzers), enabled with one policy flag. Both normalize to the *same* runner and inherit the *same* machine every native finding gets: fingerprint → baseline → git-aware matcher → brownfield classify → allowlist → guardrail verdict. So the guardrail blocks only a **net-new** failure and **grandfathers pre-existing debt** — you can turn on a lint gate against a repo with a thousand existing warnings and it will only ever block the error *this change* introduced. It is **opt-in, default-off**. A repo that declares nothing pays nothing (the runner spawns no process). ## See what's configured ```bash npx vyuh-dxkit checks # list configured user checks + active lint gates npx vyuh-dxkit checks --json # the same, machine-readable (agent-queryable) npx vyuh-dxkit checks run # DRY-RUN: execute each check, show pass/fail/skip + findings npx vyuh-dxkit checks run --json ``` `checks run` is a diagnostic — it runs the checks and shows *what the gate would see right now*, but it never blocks and never touches the baseline. Net-new-ness is decide