一键导入
app-ui-migration
app 側のページ実装を `@playlistwizard/ui` へページ単位で移行するための方針。`@/components/ui/*` import の置換、共通コンポーネント化、既存表示差分の抑制、packages/ui 側の variant 設計を伴う作業で参照すること。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
app 側のページ実装を `@playlistwizard/ui` へページ単位で移行するための方針。`@/components/ui/*` import の置換、共通コンポーネント化、既存表示差分の抑制、packages/ui 側の variant 設計を伴う作業で参照すること。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | app-ui-migration |
| description | app 側のページ実装を `@playlistwizard/ui` へページ単位で移行するための方針。`@/components/ui/*` import の置換、共通コンポーネント化、既存表示差分の抑制、packages/ui 側の variant 設計を伴う作業で参照すること。 |
app 側のページ実装を @playlistwizard/ui へ移行するときのルール。
--home-*, --settings-* のような token は作らない。Button など汎用 component の default variant を、特定ページの CTA や marketing 表現に合わせて変更しないこと。/settings のように既存の主要デザインパターンから明らかにズレている場合は、現状維持ではなく既存パターンに合わせて変更するかユーザーに確認すること。packages/ui の現行スタイルのどちらを共通 component のベースにするか、ユーザーに確認すること。@/components/ui/* import が残っていないことを確認すること。biome check と TypeScript check を対象範囲で実行すること。@/components/ui/* import を洗い出す。
rg -n "@/components/ui" apps/www/src/features/<page> apps/www/src/app -g '*.{ts,tsx}'
apps/www/src/components/ui/* と packages/ui/src/components/* の差分を確認する。
@playlistwizard/ui に置換する。@playlistwizard/ui に置換する。biome check、pnpm --filter @playlistwizard/ui build、pnpm --filter @playlistwizard/www exec tsc --noEmit を実行する。default は汎用 UI のデフォルトとして維持する。variant="cta" のような明示的 variant を追加する。className に残す。
variant="cta" + className="px-8 py-4 font-semibold text-lg"。variant="outline" に明示 class がある場合、その class が既存表示を守るための指定である可能性が高い。勝手に削らない。default は小さい汎用 badge として維持する。
MultipleSelector などフォーム系 UI は default badge に依存することがある。variant="marketing" のように明示する。packages/ui 側実装を diff する。packages/ui の MultipleSelector は named export。
import { MultipleSelector, type Option } from "@playlistwizard/ui";import MultipleSelector from "@playlistwizard/ui";Badge を使うため、Badge default の変更は Multi Select の見た目に波及する。packages/ui に追加する。gray-* 系なのに、そのページだけ zinc-* 系でカード/境界線が浮いている。packages/ui の variant として追加する。対象ページに応じて範囲を絞って実行する。
./node_modules/.bin/biome check apps/www/src/features/<page> packages/ui/src/components/<component>.tsx
pnpm --filter @playlistwizard/ui build
pnpm --filter @playlistwizard/www exec tsc --noEmit
biome check apps/www/src/features/<page> で既存 warning が出る場合は、今回 touched file かどうかを切り分ける。touched file の軽微な未使用引数などは修正してよいが、無関係な大規模修正はしない。
GitHub に関する全ての操作やこのプロジェクトの GitHub に関する情報が欲しい時に呼び出されるスキル(PR, Issue)
git に関する全ての操作やこのプロジェクトのgitに関する情報が欲しい時に呼び出されるスキル(branch, commit, push, pull, merge ...)
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
Next.js AppRouter における、データフェッチング、データベースへのクエリ発行のベストプラクティス。データフェッチを伴う処理を実装、変更する場合はこのドキュメントを参照すること。
Notion の仕様ページをレビューし、セキュリティ・考慮漏れ・既存実装との整合性などの問題点をコメントとして報告するスキル。「仕様をレビューして」「スペックをチェックして」「review-spec」などの指示で呼び出される。
ユーザーと対話しながら機能仕様を策定し、Notion に自動でドキュメント化するスキル。「仕様を作ろう」「スペックを書いて」「仕様を詰めよう」などの指示で呼び出される。