# fallow ## Docs - [Fallow documentation](https://docs.fallow.tools/index.md): Get started with Fallow: codebase intelligence for TypeScript and JavaScript. Free static analysis of code and styles: unused code, duplication, complexity, architecture drift, and design-system consistency. Optional runtime intelligence for hot paths, cold paths, and deletion confidence. - [Installation](https://docs.fallow.tools/installation.md): Install fallow via npx, npm, pnpm, yarn, cargo, Docker, or a prebuilt binary. Binaries for macOS, Linux, and Windows. - [Quick start](https://docs.fallow.tools/quickstart.md): Run Fallow for the first time and understand the output in under a minute. One golden path, then branch into VS Code, CI, MCP, or runtime intelligence. - [Adopt Fallow in an existing repo](https://docs.fallow.tools/adoption.md): Bring an existing TypeScript or JavaScript codebase to a clean Fallow policy, then keep new changes clean with fallow audit. Drive the cleanup with an AI agent. - [Analysis](https://docs.fallow.tools/analysis/index.md): What Fallow analyzes: dead code, duplication, architecture boundaries, auto-fix, and runtime-backed runtime coverage. - [Dead code analysis](https://docs.fallow.tools/analysis/dead-code.md): Find unused files, exports, dependencies, types, class members, circular dependencies, and boundary violations in TypeScript and JavaScript. Inheritance-aware class member detection, CSS/SCSS tracking, and cycle detection built into the module graph. - [Type-aware TypeScript analysis](https://docs.fallow.tools/analysis/type-aware.md): Add exact TypeScript checker evidence to fallow for symbol usage, API leaks, affected tests, and public-signature coupling. - [Code duplication](https://docs.fallow.tools/analysis/duplication.md): Detect copy-pasted code blocks across your TypeScript and JavaScript codebase. Built in to the same binary as dead-code, dependency, complexity, and architecture analysis. - [Architecture boundaries](https://docs.fallow.tools/analysis/boundaries.md): Enforce architecture rules with directory-based import boundaries. Define zones for UI, data, and shared code. Fallow catches violations at Rust speed. - [Auto-fix](https://docs.fallow.tools/analysis/auto-fix.md): Automatically remove unused exports and dependencies from your TypeScript and JavaScript codebase. Supports dry-run preview and non-interactive agent workflows. - [Runtime coverage](https://docs.fallow.tools/analysis/runtime-coverage.md): Merge runtime coverage into fallow health to see which functions actually execute in production-like traffic, which stay cold, and which hot paths changed. - [Production mode](https://docs.fallow.tools/analysis/production-mode.md): Restrict fallow's dead code analysis to production code by excluding test files, devDependencies, and type-only imports. - [Non-JS file types](https://docs.fallow.tools/analysis/file-types.md): Fallow analyzes HTML, Vue, Svelte, Astro, MDX, GraphQL, CSS modules, SCSS, and React Native files automatically. No plugins or config needed. - [CSS, SCSS, and Tailwind analysis](https://docs.fallow.tools/analysis/css-analysis.md): How fallow tracks CSS imports, SCSS partials, Tailwind dependencies, and CSS Module class names using AST-based extraction. Zero false positives on @use, @forward, and partial imports. - [Debugging & troubleshooting](https://docs.fallow.tools/analysis/debugging.md): Trace export usage, diagnose false positives, and debug fallow's analysis pipeline with built-in tracing and performance profiling tools. - [Known limitations](https://docs.fallow.tools/analysis/limitations.md): Known limitations of fallow's syntactic analysis, including dynamic imports, runtime patterns, and framework-specific edge cases with workarounds. - [Cloud beacon setup](https://docs.fallow.tools/cloud/beacon.md): Connect a browser or Node service to Fallow Cloud, verify the first ingest, and diagnose a setup that stays empty. - [Configuration](https://docs.fallow.tools/configuration/overview.md): Configure fallow with .fallowrc.json, .fallowrc.jsonc, or fallow.toml. Customize entry points, ignore patterns, rules, and plugin settings for your project. - [Rules & severity](https://docs.fallow.tools/configuration/rules.md): Configure fallow rules to set issue severity as error, warning, or off. Use rules for incremental CI adoption and granular dead code reporting. - [Inline suppression](https://docs.fallow.tools/configuration/suppression.md): Suppress fallow findings with inline fallow-ignore comments, JSDoc visibility tags (@public, @internal, @beta, @alpha), and @expected-unused. Handle false positives, library exports, and intentional exceptions. - [Workspaces](https://docs.fallow.tools/configuration/workspaces.md): Fallow automatically detects monorepo workspaces for npm, yarn, pnpm, and Deno. Resolves cross-package imports and supports per-package configuration. - [Boundaries](https://docs.fallow.tools/configuration/boundaries.md): Configure architecture boundary zones and rules. Use built-in presets or define custom zones to enforce import direction in your codebase. - [Environment variables](https://docs.fallow.tools/configuration/environment.md): Override fallow defaults with environment variables like FALLOW_FORMAT and FALLOW_QUIET. Useful for CI pipelines, editor integrations, and MCP. - [Integrations](https://docs.fallow.tools/integrations/index.md): Use Fallow from agents, editors, and CI systems. MCP, VS Code, GitHub Actions, and GitLab CI. - [Agent integration](https://docs.fallow.tools/integrations/mcp.md): Integrate fallow with AI agents via CLI and MCP. Unused code, duplication, complexity hotspots, boundary violations, and auto-fix in Claude Code, Cursor, and Windsurf. - [Node.js bindings](https://docs.fallow.tools/integrations/node-bindings.md): Call fallow analyses directly from Node.js via NAPI bindings. No CLI subprocess, no JSON parsing, same JSON envelopes the CLI emits. - [Agent Skills](https://docs.fallow.tools/integrations/agent-skills.md): Install fallow analysis skills for Claude Code, Cursor, Windsurf, Gemini CLI, and other AI agents that support the Agent Skills specification. - [Claude Code hooks](https://docs.fallow.tools/integrations/claude-hooks.md): Block Claude Code git commits and pushes with a PreToolUse hook that runs fallow audit and feeds structured findings back to the agent. - [VS Code extension](https://docs.fallow.tools/integrations/vscode.md): Real-time codebase analysis in your editor: unused code, duplication, complexity hotspots, and boundary violations. Inline warnings, Code Lens reference counts, and one-click fixes. - [Neovim](https://docs.fallow.tools/integrations/neovim.md): Real-time fallow diagnostics in Neovim via the built-in LSP client: unused code, duplication, circular dependencies, and complexity, with hover, quick-fix code actions, and code lens. - [CI integration](https://docs.fallow.tools/integrations/ci.md): Run fallow in CI with GitHub Actions or GitLab CI to catch changed-code risk, cleanup opportunities, duplication, and complexity hotspots on every push and PR. Supports SARIF upload, Code Quality reports, rich MR comments, inline review with suggestions, and baseline diffing. - [Health badges](https://docs.fallow.tools/integrations/badges.md): Add a shields.io-compatible health badge to your README showing your project's health score and letter grade. - [Explanations](https://docs.fallow.tools/explanations/index.md): Mental models for how Fallow works and how to use it well. Static vs runtime intelligence, Fallow vs linters, health, duplication, and dead code explained. - [Static vs runtime intelligence](https://docs.fallow.tools/explanations/static-vs-runtime.md): Static analysis answers 'what is connected to what?'. Runtime intelligence answers 'what actually ran?'. Both are necessary, neither replaces the other, and they meet in fallow health. - [Fallow vs linters](https://docs.fallow.tools/explanations/fallow-vs-linters.md): Why fallow and linters (ESLint, Biome, oxlint) are complementary, not competing. Linters work at the file level. Fallow is codebase intelligence that works at the project graph level. They find fundamentally different things. - [Health explained](https://docs.fallow.tools/explanations/health.md): What each metric in fallow's health output means, how it's computed, and how to interpret the values. Complexity analysis, hotspot detection, and refactoring targets integrated with dead-code and duplication findings. - [Duplication explained](https://docs.fallow.tools/explanations/duplication.md): What fallow's duplication output means, how clone detection works, and how to interpret and act on the results. - [Dead code explained](https://docs.fallow.tools/explanations/dead-code.md): What each issue type in fallow's dead-code output means, how to interpret the results, and when to act. Covers unused class members with inheritance tracking, circular dependency detection with no depth limits, and CSS/SCSS import resolution. - [Telemetry & privacy](https://docs.fallow.tools/explanations/telemetry.md): What fallow's opt-in telemetry collects and, more importantly, what it never collects. Off by default, no identifiers, inspect it before you consent. - [React & Next.js analysis](https://docs.fallow.tools/frameworks/react.md): Fallow's cross-file React and Next.js analysis: React Server Components directive rules, App Router route checks, component health signals, and what counts as a used component or server action. - [Built-in plugins](https://docs.fallow.tools/frameworks/built-in.md): Built-in plugins for Next.js, Vite, Jest, Tailwind, ESLint, and more. Auto-detected framework conventions for accurate analysis. - [Custom plugins](https://docs.fallow.tools/frameworks/custom-plugins.md): Create custom fallow plugins for internal frameworks using declarative JSON or TOML files. Define entry points, config files, and used exports. - [Fallow vs Knip](https://docs.fallow.tools/migration/comparison.md): Compare fallow and knip for TypeScript and JavaScript codebase analysis. Side-by-side benchmarks, detection capabilities, plugin coverage, and when to choose each tool. Fallow also covers duplication, complexity, and architecture boundaries. - [Migrating from knip](https://docs.fallow.tools/migration/from-knip.md): Migrate from knip to fallow in minutes. One command converts your knip config. Fallow also covers duplication, complexity, and architecture boundaries that knip does not. - [Migrating from jscpd](https://docs.fallow.tools/migration/from-jscpd.md): Migrate from jscpd to fallow when you want duplication detection together with unused code, complexity, circular dependencies, and architecture boundaries. - [fallow dead-code](https://docs.fallow.tools/cli/dead-code.md): CLI reference for fallow dead-code. Scan entry points, trace reachable exports, and report unused files, exports, dependencies, and types. - [fallow dupes](https://docs.fallow.tools/cli/dupes.md): CLI reference for fallow dupes. Detect duplicated code blocks across your codebase using suffix-array analysis with configurable thresholds. - [fallow viz](https://docs.fallow.tools/cli/viz.md): CLI reference for fallow viz. Render your codebase as a single self-contained interactive HTML map: a file treemap and an import graph, each recolored by dead-code, duplication, boundaries, and complexity lenses. - [fallow health](https://docs.fallow.tools/cli/health.md): CLI reference for fallow health. Analyze function complexity, per-file maintainability, git-churn hotspots, refactoring targets, static coverage gaps, and runtime coverage. - [fallow license](https://docs.fallow.tools/cli/license.md): CLI reference for fallow license. Activate a trial or JWT, inspect status, refresh a license, or deactivate the local token for paid runtime coverage. - [fallow telemetry](https://docs.fallow.tools/cli/telemetry.md): CLI reference for fallow telemetry. Opt-in, off-by-default product telemetry for improving agent, CI, MCP, and editor workflows. Inspect the exact payload, enable, disable, or check status. - [fallow coverage](https://docs.fallow.tools/cli/coverage.md): CLI reference for fallow coverage. Run the resumable setup flow, analyze local or cloud runtime coverage, upload source maps, and push static inventory so the dashboard can surface untracked code. - [fallow flags](https://docs.fallow.tools/cli/flags.md): CLI reference for fallow flags. Detect feature flag patterns, environment variable gates, SDK calls, and config-based toggles across your codebase. - [fallow security](https://docs.fallow.tools/cli/security.md): CLI reference for fallow security. Surface opt-in local security candidates for agent or human verification. - [Security agent verification](https://docs.fallow.tools/cli/security-agent-verification.md): Turn fallow security candidates into verifier-filtered survivor reports without adding model calls to fallow. - [fallow audit](https://docs.fallow.tools/cli/audit.md): CLI reference for fallow audit. Combined dead code, complexity, duplication, and styling analysis scoped to changed files, with a pass/warn/fail verdict for PR quality gates and AI-generated code review. - [fallow impact](https://docs.fallow.tools/cli/impact.md): CLI reference for fallow impact. A local-only value report: what fallow is surfacing, the trend, commits contained at the gate, and findings resolved over time. - [fallow inspect](https://docs.fallow.tools/cli/inspect.md): CLI reference for fallow inspect. Compose trace, dead-code, duplication, complexity, and security evidence for one file or exported symbol. - [fallow trace](https://docs.fallow.tools/cli/trace.md): CLI reference for fallow trace. Walk the callers and callees of one exported symbol through the module graph, bounded by depth. A standalone, best-effort symbol-level surface, separate from the ranked review brief. - [fallow decision-surface](https://docs.fallow.tools/cli/decision-surface.md): CLI reference for fallow decision-surface. Surface only the few consequential structural decisions a change embeds, each as a judgment question with the routed expert to ask. The apex of the review brief, separable and cheap, and always exits 0. - [fallow explain](https://docs.fallow.tools/cli/explain.md): CLI reference for fallow explain. Print rule rationale, examples, fix guidance, and docs links for one issue type without running analysis. - [fallow fix](https://docs.fallow.tools/cli/fix.md): CLI reference for fallow fix. Automatically remove unused exports and dependencies from source files with dry-run preview and JSON output. - [fallow watch](https://docs.fallow.tools/cli/watch.md): CLI reference for fallow watch. Re-run unused code analysis automatically when files change for continuous feedback during development. - [fallow init](https://docs.fallow.tools/cli/init.md): CLI reference for fallow init. Generate a .fallowrc.json, .fallowrc.jsonc, or fallow.toml configuration file with schema support for editor autocomplete. - [fallow recommend](https://docs.fallow.tools/cli/recommend.md): CLI reference for fallow recommend. A read-only, project-tailored config recommendation: what fallow detected, a safe proposed config, and the decisions split into auto, default, and taste. - [fallow plugin-check](https://docs.fallow.tools/cli/plugin-check.md): CLI reference for fallow plugin-check. A read-only dry-run that reports whether each external plugin activated and, for manifestEntries rules, the manifests matched, entries seeded, and typed warnings. - [fallow migrate](https://docs.fallow.tools/cli/migrate.md): CLI reference for fallow migrate. Automatically convert your existing knip or jscpd configuration to fallow's config format. - [fallow list](https://docs.fallow.tools/cli/list.md): CLI reference for fallow list. Inspect discovered files, entry points, active plugins, and architecture boundary zones to debug configuration and verify project setup. - [fallow config](https://docs.fallow.tools/cli/config.md): Show the resolved fallow config and which file was loaded. Mirrors eslint --print-config and dprint output-resolved-config. - [fallow schema](https://docs.fallow.tools/cli/schema.md): CLI reference for fallow schema. Dump fallow's complete capability manifest (commands, issue types, MCP tools, plugins, environment variables) as machine-readable JSON for agent introspection. - [fallow suppressions](https://docs.fallow.tools/cli/suppressions.md): CLI reference for fallow suppressions. A read-only inventory of every active fallow-ignore marker, grouped per file with kind, level, and reason, plus project totals and a stale cross-reference. - [fallow report](https://docs.fallow.tools/cli/report.md): CLI reference for fallow report. Render a saved --format json results file in another format without re-running analysis: analyze once, emit GitHub annotations and the job summary from the same file. - [Global flags](https://docs.fallow.tools/cli/global-flags.md): Global CLI flags available on every fallow command, including root, config, format, cache, threads, workspace, changed-workspaces, score, trend, and snapshot options. ## OpenAPI Specs - [openapi](https://docs.fallow.tools/api-reference/openapi.json) ## Optional - [GitHub](https://github.com/fallow-rs/fallow) - [npm](https://www.npmjs.com/package/fallow) - [crates.io](https://crates.io/crates/fallow-cli) - [VS Code](https://marketplace.visualstudio.com/items?itemName=fallow-rs.fallow-vscode)