tsc, but for specifications.
Specter validates specification files the way a type checker validates source code: parse, resolve dependencies, type-check constraints, measure coverage, gate CI.
The toolchain we use to build OpenWatch and Kensa — open to anyone.
$ brew install hanalyx/tap/specterThe pipeline
Five stages, each catching a different class of error
Specter treats .spec.yaml files as first-class artifacts in a dependency graph — authoritative, testable contracts the codebase is derived from.
specter watchspecter diffspecter doctorspecter explainspecter reversespecter initWhy it exists
When an auditor asks “how do you know your rules are correct?”
The answer most vendors give is “we have a code review process.” Ours is verifiable:
“Every rule has a spec. Every spec has acceptance criteria. Every criterion has a test. A compiler gates CI to enforce 100% coverage. Here is the tool. Read it yourself.”
Maps to controls auditors evaluate
Process credibility, as a NIST artifact
Specter also validates Kensa's and OpenWatch's specs. Every Hanalyx product's spec compliance is enforced by a tool that is itself spec-compliant. The trust chain is recursive — and auditable.
For AI coding agents
As AI agents write more production code, the question shifts from “can the AI write it?” to “can anyone verify the AI wrote it correctly?” Specter is that verification layer.
Specs as code. Enforced by a compiler.
MIT licensed. Single static binary, zero runtime dependencies. Use it whether or not you use anything else from Hanalyx.
$ brew install hanalyx/tap/specter