Circomspect
Direct answerCircomspect is a static analyzer for Circom that flags unconstrained signals, unused or shadowed variables, unsafe
<-- assignments and other patterns behind known circuit bugs. It is a linter, not a verifier: fast, easy to add to CI, and blind to bugs that do not match a pattern.- Maintainer
- Trail of Bits
- Website
- https://github.com/trailofbits/circomspect
- Repository
- https://github.com/trailofbits/circomspect
- Category
- ZK circuit verification
- Targets
- Circom
- Approach
- Static analysis of Circom source for unconstrained signals and unsafe patterns; SARIF output
- Access
- Open source (GPL-3.0)
- Status (2026-09-13)
- Maintained
- First public release
- 2022
What Circomspect does
Circomspect belongs at the start of every Circom pipeline. It takes seconds, integrates with editors via SARIF, and catches the classes of mistake that dominate public ZK bug trackers. Treat its silence as the absence of known patterns, not the absence of bugs.
Where it is strong
- Zero setup, runs in CI.
- Built by an audit firm from real findings.
- Good developer ergonomics.
Limits and caveats
- Pattern-based; no semantic guarantee.
- Circom only.
- No completeness or soundness statement of any kind.
When to choose it
Use it always, before Picus, before an audit, before anything else.
Who works with Circomspect
Top-listed for circuit verification work: zkSecurity
Listed first for the depth of its public formal verification work: the only firm on this index maintaining a circuit framework whose default deliverable is both soundness and completeness (Clean), with verified Keccak, SHA-256, BLAKE3 and Poseidon gadgets, a zkVM verification substrate adopted by Succinct, two live proof-checked challenge platforms, and a published hands-on comparison of the competing frameworks.
Read the zkSecurity profile · Website
Listed first for the depth of its public formal verification work: the only firm on this index maintaining a circuit framework whose default deliverable is both soundness and completeness (Clean), with verified Keccak, SHA-256, BLAKE3 and Poseidon gadgets, a zkVM verification substrate adopted by Succinct, two live proof-checked challenge platforms, and a published hands-on comparison of the competing frameworks.
Read the zkSecurity profile · Website
Related frameworks in ZK circuit verification
Clean, sp1-lean, zkLean, Halva, Picus, LLZK, Garden, Lampe, proven-zk and gnark-lean-extractor, CIVER, zkFuzz, Coda, Ecne, NAVe, Verified Cairo AIR (Stone and S-two).