Skip to main content
List every active fallow-ignore-next-line and fallow-ignore-file marker in the analyzed files, grouped per file with line, kind, level, and reason, plus project totals and a stale count cross-referenced against this run’s stale-suppression findings. A governance surface, not a detector: it always exits 0. Teams governing tech debt (and agents that should distrust a “clean” verdict) previously had to grep for fallow-ignore by hand; every full run materialized this information without exposing it.
fallow suppressions
● Suppression inventory (1)
  src/util.ts
    :1 unused-export (file-wide) reason: legacy surface for the v2 SDK migration window

● Totals by kind
  unused-export: 1
Markers declare a reason with a -- separator; the inventory reports markers without one so reason coverage is enforceable:
// fallow-ignore-file unused-export -- legacy surface for the v2 SDK migration window

Options

FlagDescription
--file <PATH>Only list suppressions in the specified files. Repeatable.
-w, --workspace <PATTERNS>Scope to one or more workspace packages
--changed-workspaces <REF>Scope to workspaces containing any file changed since REF
--changed-since <REF>Scope to files changed since a git ref
-f, --format <FORMAT>human (default) or json
-r, --root <ROOT>Project root directory
-q, --quietSuppress progress output on stderr

JSON output

--format json emits the suppression-inventory envelope (schema version 1). Blanket markers (no kind, suppressing everything) carry kind: null; human output reads “blanket”.
{
  "kind": "suppression-inventory",
  "schema_version": "1",
  "summary": {
    "total": 1,
    "files": 1,
    "without_reason": 0,
    "stale": 0,
    "by_kind": [
      { "kind": "unused-export", "count": 1 }
    ]
  },
  "files": [
    {
      "path": "src/util.ts",
      "suppressions": [
        {
          "line": 1,
          "kind": "unused-export",
          "level": "file",
          "origin": "comment",
          "reason": "legacy surface for the v2 SDK migration window",
          "reason_present": true
        }
      ]
    }
  ]
}
The stale count is a cross-reference (a join against this run’s stale-suppression findings), not a new detection: a marker is stale when it no longer matches any issue.

MCP tool

Agents on the MCP surface reach the same inventory through the list_suppressions tool, which returns this envelope verbatim. It runs a full analysis, so raise FALLOW_TIMEOUT_SECS on large repositories. See MCP integration.

See also

Suppression comments

Inline suppression syntax and rule severities

Global flags

Flags available on all commands