<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/fallow-rs/fallow/main/assets/logo-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/fallow-rs/fallow/main/assets/logo.svg">
    <img src="https://raw.githubusercontent.com/fallow-rs/fallow/main/assets/logo.svg" alt="fallow" width="290">
  </picture><br>
  <strong>Agent skills for the fallow codebase intelligence layer for TypeScript and JavaScript.</strong><br><br>
  <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="MIT License"></a>
  <a href="https://github.com/fallow-rs/fallow-skills/actions/workflows/validate.yml"><img src="https://github.com/fallow-rs/fallow-skills/actions/workflows/validate.yml/badge.svg" alt="CI"></a>
  <a href="https://agentskills.io"><img src="https://img.shields.io/badge/Agent_Skills-compatible-8A2BE2" alt="Agent Skills"></a>
  <a href="https://github.com/fallow-rs/fallow"><img src="https://img.shields.io/badge/fallow-v3.9.0-orange" alt="fallow v3.9.0"></a>
</p>

Agent skills for [fallow](https://github.com/fallow-rs/fallow), codebase intelligence for TypeScript and JavaScript. The static layer reports quality, changed-code risk, cleanup opportunities, circular dependencies, code duplication, complexity hotspots, architecture boundary violations, and design-system styling drift in milliseconds. Optional runtime intelligence adds production execution evidence so agents can delete cold code, flag hot-path changes, and retire stale flags with proof. 123 framework plugins, zero configuration. Works with any agent that supports the [Agent Skills](https://agentskills.io) specification: Claude Code, Cursor, OpenAI Codex, Windsurf, GitHub Copilot, Gemini CLI, Amp, and [30+ more](https://agentskills.io). See [Fallow for coding agents](https://fallow.tools/plugins) for the visual overview and store links.

> **Linters enforce style. Formatters enforce consistency. Fallow enforces relevance.** Linters work file by file. TypeScript works type by type. Neither builds the full module graph, so neither can see what nothing depends on. Fallow does, in milliseconds. These skills teach agents *how* to use fallow effectively: which commands to run, what flags to use, how to interpret output, and how to avoid common pitfalls.

## Quick Start

### Agent Skills CLI

```bash
npx skills add fallow-rs/fallow-skills
```

### Claude Code

```bash
/plugin marketplace add fallow-rs/fallow-skills
/plugin install fallow@fallow-skills
```

### OpenAI Codex

```bash
codex plugin marketplace add fallow-rs/fallow-skills
codex plugin add fallow@fallow-skills
```

### Fallow Impact statusline

Fallow Impact can show the latest whole-project issue count, the comparable
trend, and everything cleared while tracking:

```text
fallow impact  7 issues in last full scan · 5 fewer than prior · 4.9k cleared while tracking
```

Claude Code users can add the compact branded segment while preserving an
existing command-based statusline:

```text
/fallow:impact-statusline setup user compose
```

Use `project` instead of `user` for private project-local configuration. The
setup previews the exact line before it changes settings, stores the previous
value for safe removal, and never enables Impact. Run
`/fallow:impact-statusline remove user` to restore the previous setting.

Codex and other agents can use the same stable local surface directly:

```bash
fallow impact statusline
```

### Agent-specific CLI shortcuts

```bash
npx skills add fallow-rs/fallow-skills --agent windsurf
npx skills add fallow-rs/fallow-skills --agent amp
gemini skills install https://github.com/fallow-rs/fallow-skills.git
```

### Manual install

```bash
tmp=$(mktemp -d)
git clone https://github.com/fallow-rs/fallow-skills.git "$tmp/fallow-skills"
```

Copy both skill directories into your agent's skills folder:

```bash
# OpenAI Codex, Amp, and agents using the shared Agent Skills location
mkdir -p ~/.agents/skills
cp -R "$tmp/fallow-skills/fallow/skills/." ~/.agents/skills/

# Claude Code
mkdir -p ~/.claude/skills
cp -R "$tmp/fallow-skills/fallow/skills/." ~/.claude/skills/

# Cursor
mkdir -p ~/.cursor/skills
cp -R "$tmp/fallow-skills/fallow/skills/." ~/.cursor/skills/

# Windsurf
mkdir -p ~/.codeium/windsurf/skills
cp -R "$tmp/fallow-skills/fallow/skills/." ~/.codeium/windsurf/skills/

# GitHub Copilot
mkdir -p .github/skills
cp -R "$tmp/fallow-skills/fallow/skills/." .github/skills/
```

<details>
<summary>Other agents</summary>

Use `npx skills add fallow-rs/fallow-skills --all` for installer-managed discovery, or copy the directories under `fallow/skills/` into your agent's skills location. These skills follow the open [Agent Skills](https://agentskills.io) specification and work with any compatible agent.

</details>

## Prerequisites

Fallow must be installed in the target project:

```bash
npm install -g fallow    # prebuilt binaries
npx fallow                   # or run without installing
```

See the [installation guide](https://docs.fallow.tools/installation) for all options including `cargo install fallow-cli`.

## Available Skills

| Skill | Description | Trigger phrases |
|---|---|---|
| [fallow](fallow/skills/fallow/) | Codebase intelligence for JS and TS, code and styles: quality, changed-code risk, cleanup opportunities, circular deps, duplication, complexity, design-system drift, and runtime evidence | "check code health", "audit this PR", "find cleanup opportunities", "find duplicates", "what code actually runs" |
| [fallow-review](fallow/skills/fallow-review/) | Graph-grounded review of changed-code risk, blast radius, and consequential structural decisions | "review this branch", "review this PR", "check changed code before merge" |

## What's Included

This repository contains portable skills for users of the released product.
Fallow's maintainer workflows stay in the main source repository, and public
user documentation stays in
[`fallow-rs/docs`](https://github.com/fallow-rs/docs).

### fallow

| Category | What it does |
|---|---|
| **Cleanup** | Find unused files, exports, types, dependencies, enum/class members, stale suppressions, and other safe cleanup candidates |
| **Duplication** | Find code clones with 4 modes: strict, mild, weak, semantic |
| **Complexity** | Function complexity analysis, hotspot detection, health scores |
| **Auto-Fix** | Remove unused exports and dependencies with dry-run preview |
| **CI** | GitHub Actions, SARIF upload, baseline comparison, PR-scoped checks |
| **Monorepo** | Per-workspace analysis with cross-package resolution |
| **Debug** | Trace export usage chains, file edges, and dependency usage |

### fallow-review

Reviews a branch or pull request with fallow's graph-grounded review brief. It
subtracts deterministic findings, focuses attention by blast radius and risk,
and frames consequential structural decisions for human judgment.

### Reference Documentation

- **[CLI Reference](fallow/skills/fallow/references/cli-reference.md)**: all commands, flags, JSON output structure, config format
- **[Gotchas](fallow/skills/fallow/references/gotchas.md)**: common pitfalls with WRONG/CORRECT examples
- **[Patterns](fallow/skills/fallow/references/patterns.md)**: workflow recipes for CI, monorepos, migration, and incremental adoption

## Example Prompts

Once installed, you can use natural language:

- "Audit the codebase quality"
- "Are there any unused dependencies?"
- "Find code duplication in the codebase"
- "Clean up unused exports"
- "Set up a CI quality gate"
- "Check the complexity of this codebase"
- "Why is this export flagged as unused?"
- "Check if this PR introduces quality risk"
- "Find unused files in the payments package"
- "What's the duplication percentage?"

## How It Works

```
User: "Find all unused exports"
  ↓
Agent loads fallow skill
  ↓
Skill instructs: run `fallow dead-code --format json --quiet --unused-exports`
  ↓
Agent executes command, parses JSON output
  ↓
Agent summarizes findings with file paths and line numbers
```

The skill provides agents with:
1. **Command knowledge**: which fallow command + flags to use for each task
2. **Output parsing**: how to interpret JSON results
3. **Guardrails**: always dry-run before fix, never run watch, use `--yes` in non-TTY
4. **Debugging**: how to trace false positives with `--trace`

## Contributing

See [AGENTS.md](AGENTS.md) for repository structure and quality standards.
`source-lock.json` pins the public Fallow contract used by the `fallow` skill.
CI checks that pin against a clean source checkout and rejects contract or
privacy-boundary drift.
Maintainers can find the versioning, packaging, and store update procedure in
[RELEASING.md](RELEASING.md).

## Related

- [fallow](https://github.com/fallow-rs/fallow): codebase intelligence for TypeScript and JavaScript, a single pass over code and styles
- [fallow-docs](https://docs.fallow.tools): Official documentation
- [VS Code extension](https://marketplace.visualstudio.com/items?itemName=fallow-rs.fallow-vscode): Real-time diagnostics in your editor
- [Agent Skills specification](https://agentskills.io): The open standard this skill follows

## License

MIT. See [LICENSE](LICENSE) for details.
