APIs change.
Your code adapts.

Updates to the software your product relies on can break important features. Emendant helps your team find the affected code, prepare a fix, and check the result.

emendant / scanIllustrative example
openai4.104.0 5.0.0

1 change
affects this project

src/lib/chat.ts:14Possible fix available
14 client.beta.chat
15   .completions.parse()
From a supported SDK change to the code that needs attention.

Start with a supported SDK.

Emendant covers selected changes in JavaScript and TypeScript projects. Check your package and release before you scan. Start with the AI SDK migration guide or see the supported projects guide for current coverage.

OOpenAIopenai
AAnthropic@anthropic-ai/sdk
▲Vercel AI SDKai
LLangChainlangchain, @langchain/core
GGoogle Gen AI@google/genai
Request an API or SDK

Read the finding,
field by field.

Here is the OpenAI finding from above, expanded. Match the labels to see what the scan tells you before generating a patch.

A The SDK and release
See which upgrade the finding describes.
B The affected use
Go straight to the file, line and code that need attention.
C A possible next step
See whether a fix is available or manual work is needed.
Understand a finding
finding / detail local
$ npx emendant scan
Aopenai4.104.0 5.0.0
1 change affects this project
B src/lib/chat.ts:14
OpenAI moved a chat feature
14client.beta.chat
15 .completions.parse()
C Possible fix available
Detailed view of the illustrative finding above. A scan reports affected uses without editing your files.

Review the change.
Read the evidence.

For this finding, Emendant can prepare a focused patch without using AI. Other changes may need manual work or optional AI help.

src/lib/chat.tsIllustrative patch · OpenAI SDK
BEFOREopenai@4.104.0
14 client.beta.chat
15   .completions.parse()
^AMEND
AFTERopenai@5.0.0
14 client.chat
15   .completions.parse()

Illustrative check results

Example output, not a recorded run.

Structural
Passed
Typecheck
Passed
Tests
Not run No test command available

A proposed fix and its checks are different pieces of evidence.

Emendant checks the patch in a separate copy of your project. Its report tells you what ran, what passed and what could not be checked.

  • Structural checksDoes the edit parse, and does the affected use change as expected?
  • Project checksWhen available, your project’s typecheck and tests add evidence.
  • Checks that could not runMissing checks and inconclusive results stay visible.

Illustrative example. Actual check results depend on your project and the checks that run.

See how fixes are checked

See the work behind an upgrade.

Find the affected code, review a proposed fix and see what was checked.

60%

More productive on SDK upgrades

300%

More breaking changes found in one repository

Stay in control of your code.

Your code stays local during a scan

Scan without editing files

Review findings before generating patches.

Choose optional AI help

Only a provider you choose receives an excerpt for an assisted fix.

Fixes and optional AI help can use the network. Learn when and what is shared in the privacy notice.

In the wild

heysagnik/diy-analytics
“We ran one Emendant report, turned it into a PR, and the maintainer merged it the same day.”
Emendant team3.7 hours from issue to merge
99apps-id/termigo
“We really appreciate the heads-up and your work on Emendant.”
Termigo maintainerThree affected code sites fixed in one day

Spend less time
on broken updates.

See which supported changes affect your project, then decide what to fix.

Developer guide