Axiom Scan

Axiom Scan reads your code as a structure, not as text. It parses every file into an Abstract Syntax Tree and runs 15 detectors looking for the rot and duplication that linters and formatters step straight past — then gives each file a waste score and a grade.

What It Finds

  • Dead code — declared, never referenced
  • Structural waste — parallel arrays that should be one struct, branch chains that should be a table
  • Near-duplicates — copy-pasted logic wearing different variable names
  • Magic numbers and strings — values that should be named constants
  • God methods and deep nesting — functions that have quietly become unmaintainable
  • Boolean blindness, cryptic names, mixed abstraction levels

Languages

AST-level analysis across 10 languages: Python, JavaScript, TypeScript, Rust, Go, Java, Kotlin, Swift, C, and Solidity. Shell scripts get pattern-level analysis only — we don’t parse them into an AST, so we say so rather than implying equal depth.

Why AST Instead of Regex

A regex sees if (x) twice and calls it duplication. An AST knows one is inside a loop and the other is a guard clause. Structural detection is what lets Scan flag “these two functions are the same shape with renamed variables” — which no pattern match can do reliably.

Where the Waste Score Came From

We built the score against a study of 740 open-source repositories — 28,455 files, 80,053 bug-fix commits — checking whether structurally wasteful files actually attract more bug fixes.

They do, but the effect is modest, and we’d rather you hear that from us: files in the worst waste band averaged 4.38 bug-fix commits against 1.83 in the cleanest band, at a Spearman correlation of ρ = 0.13. That’s a real association and a weak one. Treat the waste score as a maintainability signal, not a bug predictor — it tells you what will be expensive to live with, not what will break tomorrow.

Full study and method →

Status

Built and tested — not yet open for signup.

The scanner is complete and we run it on our own codebases. Company setup, not engineering, is what stands between it and a signup button. Pricing isn’t published yet.

If you want to be told when it opens, email us.

Built under the 10 Immutable Rules.