Developer tooling · Open-source product · 2026
scriptdrift
README commands should survive changes in the codebase.

scriptdrift validates shell blocks in Markdown against the applicable package.json, follows literal directory changes, and surfaces drift before it reaches a reader.
Deliverables
- Markdown scanner
- Monorepo path resolution
- Package-manager detection
- Source locations
- SARIF output
- CI integration
01 / Documentation breaks without a build error.
A script is renamed, the project moves from yarn to pnpm, or a package changes location. The code still works while the setup guide becomes a trap.
For technical products where a broken command means lost time and reduced trust.
02 / Commands become statically testable.
The CLI parses relevant code fences, detects the package manager, and validates each command against the nearest manifest without executing anything.
Every finding retains the document, line, column, resolved directory, and cause: missing script, wrong manager, missing directory, or missing manifest.
03 / Trust in the first project experience.
Onboarding, internal documentation, and developer portals can bring command checks into the same CI discipline as the rest of the code.
scriptdrift never runs documentation commands. It skips dynamic directories and explicitly states the limits it cannot resolve statically.

01SARIF output

02Monorepo resolution

The next signal
Have a project that needs to grow?
Tell us what you are building, what you want to improve, and where you feel stuck.
Start the conversation