
Major Version Mode
- 12 installs
- 25.8k repo stars
- Updated July 28, 2026
- vercel-labs/ai
major-version-mode guides breaking changes for the next AI SDK major.
About
The major-version-mode skill sets context for AI SDK major version work where breaking changes are acceptable yet consumer disruption should stay minimal. Renamed exports should get deprecated package-level aliases with @deprecated JSDoc when low debt, otherwise confirm clean breaks with the user. Message type changes deprecate in @ai-sdk/provider-utils and retain old Zod shapes in packages/ai consumer layer with removal TODOs for the following major. Provider spec @ai-sdk/provider changes touch only the latest spec version, allow clean breaks for implementers, and require asking which spec version if unclear. Documentation updates go to content/docs and migration guide sections in content/docs/08-migration-guides for consumer-facing migrations. Only invoke when user explicitly calls /major-version-mode.
- Gates breaking AI SDK changes behind explicit user invocation.
- Prefers deprecated export aliases over hard removals.
- Coordinates provider-utils and consumer Zod deprecation layers.
- Restricts provider spec edits to latest version only.
- Updates docs and migration guides after code changes.
Major Version Mode by the numbers
- 12 all-time installs (skills.sh)
- Ranked #11,597 of 16,659 AI & Agent Building skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
major-version-mode capabilities & compatibility
- Capabilities
- breaking change guidelines sections · provider spec modification rules · documentation migration guide requirement
- Works with
- vercel · openai
- Use cases
- api development
What major-version-mode says it does
Breaking changes are acceptable
Do NOT trigger autonomously based on task content
npx skills add https://github.com/vercel-labs/ai --skill major-version-modeAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 12 |
|---|---|
| repo stars | ★ 25.8k |
| Security audit | 3 / 3 scanners passed |
| Last updated | July 28, 2026 |
| Repository | vercel-labs/ai ↗ |
How do I deprecate an export in the AI SDK major branch?
Apply breaking-change rules when editing the next AI SDK major release codebase.
Who is it for?
AI SDK maintainers on the next major release branch.
Skip if: Skip for routine minor fixes without breaking API surface.
When should I use this skill?
User explicitly invokes /major-version-mode on AI SDK repo.
What you get
Breaking change with aliases, docs, and migration guide updates.
Files
Context
This task is part of the next AI SDK major release. Breaking changes are acceptable.
Breaking Change Guidelines
While breaking changes are acceptable, it is still encouraged to minimize unnecessary disruption for 3P consumers of the AI SDK. Providing deprecated aliases and automated migration logic can help ease the transition.
Renamed/changed exports
If renaming or modifying an exported function or type, provide a deprecated alias as a package-level export where feasible:
/** @deprecated Use `newFunctionName` instead. */
export { newFunctionName as oldFunctionName } from './new-module';Only do this if it doesn't introduce meaningful technical debt. If it does, skip the alias — but check with the user first before making a clean break.
Modified message types (e.g. in @ai-sdk/provider-utils)
If modifying model message shapes (e.g. content part types in packages/provider-utils/src/types/content-part.ts):
1. Deprecate in `@ai-sdk/provider-utils` rather than removing immediately, if feasible. Mark deprecated types/members with a @deprecated JSDoc comment and a TODO note to remove in the following major version. 2. Keep deprecated equivalents in `packages/ai/src/prompt/content-part.ts` — this file is the consumer-facing layer and should retain the old shapes in the Zod schemas so existing consumer code continues to compile with a deprecation warning. Include a similar note about deprecation and removal in the following major version. 3. If clean deprecation isn't feasible without meaningful technical debt, a hard removal may be preferred — but check with the user first.
Provider spec changes (@ai-sdk/provider)
The provider package defines the spec that provider implementers code against. It should generally not be modified outside of major versions, so keeping the spec clean and consistent is critical.
Breaking changes _without_ maintaining temporary backward compatibility measures are more acceptable here than elsewhere, because the audience is smaller — far fewer developers implement their own providers than build features on top of the AI SDK.
Rules:
- Only modify the latest spec version. Older versioned spec interfaces must remain completely untouched.
- Deprecated aliases are not required — a clean break is preferred to preserve spec clarity.
- The current spec version is not the same as the current AI SDK major version number. If it's unclear which spec version to operate on, ask the user before proceeding.
Documentation
After implementing changes, update relevant documentation in content/docs/.
If the change requires consumers to update their code or migrate stored data, add a section to the latest migration guide:
- Find the migration guide with the highest version number in
content/docs/08-migration-guides/ - Add a concise section explaining what changed and how to migrate
Related skills
FAQ
What does major-version-mode do?
major-version-mode guides breaking changes for the next AI SDK major.
When should I use major-version-mode?
User explicitly invokes /major-version-mode on AI SDK repo.
Is this skill safe to install?
Review the Security Audits panel on this page before installing in production.