fallow

Analyzes TypeScript and JavaScript codebases for dead code, duplication, complexity, and architecture violations.

Updated Sep 16, 2026
One-click install
npx skills add https://github.com/jasonviipers/vipers --skill fallow-jasonviipers
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fallow
Source: https://github.com/jasonviipers/vipers/tree/main/.agents/skills/fallow
Command: npx skills add https://github.com/jasonviipers/vipers --skill fallow-jasonviipers

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires fallow, and includes references (resource) components.

What problem does it solve? Large TypeScript and JavaScript codebases accumulate unused files, exports, dependencies, duplicated logic, and complexity hotspots that are hard to find manually. This Skill runs the fallow static analysis CLI to surface cleanup opportunities, changed-code risk, circular dependencies, and architecture boundary violations as structured JSON. ## Core Features & Use Cases - Dead Code Detection: Find unused files, exports, types, class members, dependencies, and stale feature flags, with safe auto-fix via a dry-run-then-apply cycle. - PR Risk Audits: Run fallow audit --base main to get a pass/warn/fail verdict on quality issues introduced by changed files only, ideal for CI gates and pre-commit hooks. - Duplication & Health Analysis: Detect code clones across four detection modes, rank complexity hotspots and refactoring targets, and track per-team health scores via CODEOWNERS. - Use Case: Before merging a pull request, ask the agent to audit the diff against main; it returns a JSON verdict listing only new issues, which you can gate in CI with regression baselines. ## Quick Start Ask the agent to audit this TypeScript project for unused code and duplication and report the findings as a summarized list.

Frequently Asked Questions about fallow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find unused code in a TypeScript project?

Run fallow dead-code with JSON output to list unused files, exports, types, class members, and dependencies. Filter to specific issue types with flags like --unused-exports, and trace why something was flagged using --trace with a file and export name.

How to check PR code quality before merging?

Run fallow audit --base main to analyze only files changed since the base branch and receive a pass, warn, or fail verdict. It combines dead-code, complexity, duplication, and styling checks, and supports baselines so CI fails only on new findings.

Does fallow work with monorepos and workspaces?

Yes, fallow supports pnpm, npm, and other workspace setups. Use --workspace with globs to scope output to packages, or --changed-workspaces with a git ref to analyze only workspaces containing changed files while keeping the full cross-workspace module graph.

fallow vs knip for dead code detection?

Fallow covers knip-style dead code detection plus duplication, complexity health, architecture boundaries, and security candidates in one tool. It provides a migrate command that converts existing knip.json or jscpd.json configs into fallow configuration automatically.

Why does fallow fix exit with code 2 in CI?

The fix command requires the --yes flag in non-TTY environments like CI pipelines and agent subprocesses; without it, it exits with code 2. Always preview changes with --dry-run first, then apply with fix --yes.

What are the limitations of fallow static analysis?

Fallow uses syntactic analysis without the TypeScript compiler, so fully dynamic imports with variables are not resolved. It does not replace tsc for type checking, ESLint for style linting, or verified SAST tools like CodeQL for confirmed vulnerability scanning.