본문으로 건너뛰기
cccskills
무료GitHub에 공개

lobe-ui-v6-migration

Use this skill to migrate an app from @lobehub/ui 5.x to 6.x. It helps remove obsolete dependencies, update theme setup and imports, address changed component props, and verify the migration with codemod reports and project checks.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Upgrade an app from @lobehub/ui 5.x to 6.x: remove antd and antd-style, replace ThemeProvider with theme.css + data-theme attributes, move @lobehub/ui/base-ui imports to @lobehub/ui, and fix the component prop changes, driven by the @lobehub/ui-codemod report. Trigger on: upgrade or migrate @lobehub/ui to v6, lobe-ui v6 / 6.0 beta, remove antd from a lobe-ui app, "ThemeProvider is not exported", "Cannot find module '@lobehub/ui/base-ui'", antd-style removal, 升级 lobe-ui 6, 迁移 lobe-ui.

lobehub/lobe-ui스타 2,246(GitHub 2,246 + cccskills 0)

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • Upgrade an app from @lobehub/ui 5.x to 6.x
  • Replace ThemeProvider and update theme setup
  • Review codemod findings and fix changed component props

포함된 파일(4)

  • SKILL.md6.8 KB
  • references/components.md51.9 KB
  • references/styling.md5.9 KB
  • references/theming.md6.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

lobe-ui v6 migration

v6 has no antd, no antd-style, no ThemeProvider and no @lobehub/ui/base-ui subpath. The codemod does the mechanical part; this skill covers the rest. The human guide is https://ui.lobehub.com/migration-v6 — every codemod report item links to a section of it.

Workflow

Work in order. Type-check after each step; do not batch several steps into one unverified change.

  1. Inventory. Read package.json (and workspace packages in a monorepo). Find the app entry points (main.tsx, app/layout.tsx, _app.tsx), SSR shells, and every place that renders ThemeProvider, StyleProvider, antd App or antd ConfigProvider. Note the package manager.

  2. Dependencies. Install @lobehub/ui@^6, @lobehub/icons@^6, @lobehub/fluent-emoji@^5 and motion@^14 (13 also works; keep motion@^13 if the app uses @lobehub/editor, whose peer range is ^13), plus @lobehub/charts@^6 / @lobehub/editor@^5 / @lobehub/tts@^6 if used. All of them are on the latest tag; do not install @beta. Use --registry=https://registry.npmjs.org and verify the resolved UI version in every consuming workspace (pnpm -r list @lobehub/ui --depth 0 for pnpm workspaces). Remove antd, antd-style, @ant-design/* and rc-* unless code outside lobe-ui still needs them (then keep them and say so in your summary). Check mirror synchronization, pnpm minimumReleaseAge and stale Vite optimization separately from source failures.

  3. Codemod. Run from the repository root (. also reaches build config and test mocks), then the project formatter:

    npx --registry=https://registry.npmjs.org @lobehub/ui-codemod@latest v6 . --dry
    

    The CLI prints a summary, next action and paths to Markdown / JSON reports and a preview patch in a fresh .lobe-ui-codemod/v6-*/ directory. Review the patch and rerun without --dry. Reports are always saved; --report <file.md> changes their paths, and existing output files are never overwritten. Use --json only when stdout must be JSON.

    Start with JSON schemaVersion, codemodVersion, mode, scope, summary and nextAction, then inspect task IDs, messages and occurrence counts before loading one task's locations. Resolve finding paths against scope.root; reports may live outside the project. Tasks group repeated instructions with stable IDs and retain every location; handle manual-fix before review, and do not interpret review hints as confirmed bugs. changed lists proposed files in dry-run and rewritten files in write mode. items preserves raw findings, errors lists parse failures, and nextSteps lists manual verification. Line numbers refer to transformed source even in dry-run. Exit code 0 does not mean migration success, and zero findings still requires nextSteps. IDs are not completion tracking; verify fixes against source on rerun.

  4. Theming (R1, R2, R3). Replace ThemeProvider with the stylesheets and attributes, delete StyleProvider and static-css wiring. Templates per setup in references/theming.md.

  5. Imports and components (R4, R5, R6, R10, R11, R12). Replace removed exports and antd components, then check props of every changed component. Mappings in references/components.md. R5 includes both specific prop findings and general review hints: inspect the task kind, open its locations and fix what changed. R10 / R11 / R12 name each removed Video / Table / ProTable / DatePicker prop with its replacement.

  6. Styling leftovers (R6 antd-style, R8, R9). createStyles, themeMode / setThemeMode, .ant-* selectors and --ant-* variables. The codemod scans JS/TS strings and CSS / Less / Sass without rewriting stylesheets, and gives verified slot / token hints where known. Search other file types, dynamically built selectors and ignored consumed sources manually. See references/styling.md.

  7. Forms. Grep submit paths that use @lobehub/ui/form (getValues(), onSubmit, onValuesChange). They receive the whole store, not only mounted fields; pick the fields you send explicitly. Do this even when type-check is clean — it is a silent behavior change.

  8. Tests and verification (R13). Compare relevant tests with a pre-upgrade baseline. Wrap motion consumers in MotionProvider motion={motion} / the app's ConfigProvider; keep real exports in partial mocks; query InputNumber by role instead of input order. Follow https://ui.lobehub.com/migration-v6#test-migration. Type-check and lint to zero errors. Re-run the codemod: it must rewrite nothing except merging @lobehub/ui imports you added, and every remaining item must be resolved or explained. Then compare light/dark × desktop/mobile, one popup, one form submit, accessible names, app-owned neutral scales and one page per changed component family. On 6.0.1 and later, check Switch aria attributes and InputPassword toggle localization explicitly. Remove temporary overrides only after verifying the replacement.

Rules

  • Never re-add antd or antd-style to silence an error. If a component has no counterpart, rebuild it from @lobehub/ui parts or ask the user.
  • Never target generated class names (StyleX hashes) or .ant-*. Customize through className, style, classNames / styles slots and documented data-* attributes.
  • Never pass ThemeProvider props to ConfigProvider; only customFonts, enableCustomFonts, direction, config, locale, resources and motion exist there.
  • Keep behavior, not markup: when a v6 component renders different DOM, fix the app's CSS that depended on the old DOM instead of forcing the old structure.
  • Unlayered global CSS in the app now beats component styles. If buttons or inputs look reset after the upgrade, move the app's resets into a layer (see references/styling.md).
  • Report what you could not migrate, with file and reason, instead of leaving a silent TODO.

Done when

  • No import from antd, antd-style, @ant-design/*, rc-* or @lobehub/ui/base-ui remains.
  • theme.css and style.css are imported once at the app root; data-theme is set before first paint on server-rendered pages.
  • Type-check, lint and tests pass; the codemod re-run rewrites nothing.
  • You listed every manual decision (removed component replaced, prop semantics changed, form submit narrowed) in your summary to the user.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Build a product or documentation landing page by arranging @lobehub/ui/awesome components for the hero, live examples, feature sections, and install call to action. Wire links and theming, then review the page for responsive layout and accessibility preferences.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Create a product landing page from existing components
  • Build a home page for a lobedocs documentation site
  • Add live component examples and feature sections
lobehub/lobe-ui2.2천2026년 10월 26일 업데이트

Verify the local lobe-ui component library and documentation site in a browser using agent-browser. Check documented routes, standalone demos, interactions, light and dark themes, responsive layouts, screenshots, and browser or server errors.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Checking a component change in the local documentation site
  • Testing a standalone demo’s interactions and appearance
  • Verifying responsive layouts and capturing screenshot evidence
lobehub/lobe-ui2.2천2026년 10월 26일 업데이트

Use this skill to tune lobe-ui color tokens for brand palettes, status colors, and light or dark themes. It audits contrast and color values, generates scales from new inputs, and prepares a visual review board so people can assess the results.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Adjust status colors that look pink, gray, muddy, or too dark
  • Create a brand palette for lobe-ui
  • Review contrast in light and dark themes
lobehub/lobe-ui2.2천2026년 10월 26일 업데이트

Use this skill to set up and write a static documentation site with @lobehub/docs-kit. It covers site configuration, component pages, interactive demos, API tables, guides, and changelogs, along with the validations that catch documentation issues during a build.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Set up a documentation site with @lobehub/docs-kit
  • Write component pages with demos and API tables
  • Migrate documentation pages from dumi
lobehub/lobe-ui2.2천2026년 10월 26일 업데이트

lobehub의 스킬 모두 보기

이 스킬의 문제 신고