1. Run Fallow
From your project root:- Dead code: unused files, exports, dependencies, cycles, boundaries, and more
- Duplication: repeated logic across files
- Health: complexity hotspots and refactor targets
2. Run the focused commands you’ll use most
dead-codereports unused files, exports, types, dependencies, circular deps, and boundary violations. See the dead code guide.dupescatches AST-based duplicates in the defaultmildmode. Add--mode semanticto also catch clones with renamed variables. See the duplication guide.healthreports complexity findings, per-file maintainability, hotspots, and ranked refactor targets. See the health explanation.fix --dry-runpreviews automatic cleanup. When you’re ready, drop--dry-run. See the auto-fix guide.
3. Pick your next step
Existing repo with backlog? Read Adopt Fallow in an existing repo for a structured cleanup path, then come back here to wire up CI or VS Code.
Use it in VS Code
Real-time diagnostics, Code Lens above exports, and one-click fixes.
Use it in CI
Turn Fallow into a PR and merge gate with SARIF or MR annotations.
Use it from agents
Add MCP for structured tool calling from Claude Code, Cursor, and more.
Add runtime evidence
Layer production execution data into
fallow health.Optional: create a config
Fallow works without a config file. When you want to customize, run:.fallow/ to your .gitignore.
Optional: runtime intelligence
Fallow’s static layer is free and open source. If you want to know what actually executed in production, add the runtime layer:Next steps
Analysis overview
What Fallow analyzes, at a glance.
Configuration
Customize entry points, rules, and ignore patterns.
Explanations
Mental models for how Fallow works.
CLI reference
Every command and flag.