Skip to content

Necro

Find dead code with evidence, not guesses. A local, free, polyglot CLI that surfaces anti-pattern code and proposes LLM-assisted fixes — and refuses to guess where pure-static tools can't.

Every analysis axis already has a strong incumbent — but no free, local tool combines them with fix reasoning across languages. Necro targets that gap:

free + local + multi-axis + LLM-assisted-fix + polyglot.

Refuses to guess

Pure-static tools must make a binary alive/dead call and eat the false positive when unsure. Necro adds a third maybe tier and quarantines ambiguous code with reasons instead of falsely killing it.

Evidence chains

Every finding ships its reasoning — static references, package exports, dynamic-import taint — so you audit the verdict instead of trusting blind.

The `test-only` verdict

Code that’s production-dead but kept warm by tests gets its own verdict — a signal no incumbent surfaces cleanly.

Semantic, not textual

Dead-code detection runs on the TypeScript compiler API (via ts-morph), following re-exports, type-only imports, and barrel files.

Install from npm, or run it with no install at all:

Terminal window
# global install
npm install -g @manehorizons/necro
# scan your project (or: npx -y @manehorizons/necro scan src/)
necro scan src/

You’ll get tiered findings, each with an evidence chain — see the Quickstart to read the output.