npx skills add ...
npx skills add heroui-inc/heroui --skill heroui-migration
HeroUI v2 to v3 migration guide for agents. Use when migrating HeroUI v2 apps to v3, upgrading components, or accessing migration documentation. Keywords: HeroUI migration, v2 to v3, migration guide, upgrade HeroUI.
npx skills add heroui-inc/heroui --skill heroui-migration
This skill helps agents migrate HeroUI v2 applications to v3. HeroUI v3 introduces breaking changes: compound components, no Provider, Tailwind v4, and removed hooks.
Do NOT assume v2 patterns work in v3. Always fetch migration guides before implementing changes.
| Feature | v2 (Migrate From) | v3 (Migrate To) |
|---|---|---|
| Provider | <HeroUIProvider> required | No Provider needed |
| Component API | Flat props: <Card title="x"> | Compound: <Card><Card.Header> |
| Event handlers | onClick | onPress |
| Styling | classNames prop | className prop |
| Hooks | useSwitch, useDisclosure, etc. | Compound components, useOverlayState |
| Packages | @heroui/system, @heroui/theme | @heroui/react, @heroui/styles |
For migration details, examples, and step-by-step guides, always fetch documentation:
Migration docs (preview): use a concrete guide URL from the examples below, and never fetch a URL that still contains a placeholder.
Examples:
.../agent-guide-full.mdx.../agent-guide-incremental.mdx.../button.mdx.../styling.mdx.../hooks.mdxOverride base URL with HEROUI_MIGRATION_DOCS_BASE when docs are merged to production.
When using Cursor or other MCP clients, configure the Migration MCP server for tool-based access:
Always fetch the agent guide before starting: node scripts/get_migration_guide.mjs full or incremental
Card.Header, Card.Title, Button with children—not flat propsHeroUIProvider when migratingonPressnode scripts/get_migration_guide.mjs fullnode scripts/get_styling_migration_guide.mjsThis skill targets the staging deployment of the docs/migration branch. Once docs are merged to main and live on heroui.com, set HEROUI_MIGRATION_DOCS_BASE=https://heroui.com/docs/react/migration or update the default in scripts.
{
"mcpServers": {
"heroui-migration": {
"url": "https://migration-mcp.heroui.com"
}
}
}