Getting started
Emendant tells you which call sites a known API or SDK change affects. It starts from the packages your repository actually declares, then reports only structurally verified uses.
Requirements
Section titled “Requirements”- Node.js 20 or later.
- A TypeScript or JavaScript repository.
- A supported manifest such as
package.json. - For exact version placement, a supported lockfile.
Emendant supports declared monorepo workspaces. Run it once from the repository root; each workspace is detected and reported separately.
Run your first scan
Section titled “Run your first scan”From the repository root:
npx emendant scanEmendant then:
- Reads manifests and lockfiles to identify packages and installed versions.
- Selects relevant changes from the feed bundled with the CLI.
- Filters out ignored, generated, oversized, and irrelevant files.
- Parses candidate TypeScript and JavaScript files and traces package values across local modules.
- Prints findings grouped by workspace, package, and change.
The scan is read-only. It does not execute your project or make a network request.
Read the result
Section titled “Read the result”A finding looks broadly like this:
openai 5.0.0 installed 4.104.0
breaking fileFromPath helper removed high confidenceopenai-npm-5.0.0-filefrompath-removed src/uploads.ts:9:10 call return fileFromPath(path);The package heading explains which release the change belongs to and what your project has installed. The call site is a terminal-clickable path:line:column, and the change ID leads to the source and migration guidance:
npx emendant explain openai-npm-5.0.0-filefrompath-removedExit codes
Section titled “Exit codes”| Code | Meaning |
|---|---|
0 |
The scan completed with no findings. |
1 |
The scan completed and found affected code. |
2 |
Emendant could not complete the scan. |
Exit code 1 is a result, not a crash. This distinction matters when you run Emendant in CI.

