Skip to main content
Diagnose project readiness without running an analysis. fallow doctor checks the things that have to be right before any command produces trustworthy output: whether the root is readable, which config actually resolved, whether workspace discovery found what you expect, whether external plugins load, and whether the optional type-aware companion is present. Every check is a local read, which makes this safe as the very first command on a repository you have never analyzed, and cheap enough to leave in a CI preflight step.
doctor only tells you whether Fallow can see your project properly. Once it reports ready, fallow dead-code and fallow health are what actually look at your code.

Checks

A check that is not required reports skipped when it cannot run, and a skipped check never fails the command. The type-aware check is skipped whenever type-aware analysis is off, which is the default.

Options

Exit codes

There is no exit 1 here. That code means error-severity findings, and doctor looks at your setup rather than your code, so it has no findings to report.

Human output

The trailing status line is ready, ready with warnings, or not ready.

JSON output

Top-level status is pass, warn, or fail; a check’s own status adds skipped to that set.

For agents

Run fallow doctor --format json --quiet before the first analysis on an unfamiliar repository. A clean report and a misconfigured project both come back looking empty, and this is the cheapest way to tell them apart. Branch on the top-level status, then read checks[].message to report what the user needs to fix.