用途:这是 Panda CSS 项目的架构层技能,处理 token 命名、所在层级,以及样式何时从调用点升级为 recipe。核心判断是:值是否有语义(有则放 semanticTokens),以及文件外是否有人需要改变它(有则是 recipe,无则是 css())。
主要能力:区分并规范使用 primitive token、semantic token、composite style、recipe、slot、anatomy、variant axis、compound variant、pattern、condition 等术语;按四层组织 token(theme.tokens 原始刻度、theme.semanticTokens 语义与明暗、textStyles/layerStyles/animationStyles 组合样式、recipes 组件样式);用 _dark 条件统一处理明暗模式,避免在调用点分支;用 themes 定义多主题,通过 data-panda-theme 属性切换,主题与模式是两个独立轴;主题可通过 staticCss.themes 打进主样式表,或用 getTheme / injectTheme 按需加载。
使用方式:先读 panda.config.ts、<outdir>/types/tokens.d.ts、<outdir>/specs/design-system.json、<outdir>/recipes/ 及现有调用点;扩展 @pandacss/preset-base、@pandacss/preset-panda 而非替换。样式升级阶梯为:css() 调用点 → 同一样式出现三处以上用 cva → 外部消费者需要变体或属于设计系统用 defineRecipe → 组件渲染多个元素用 defineSlotRecipe 或 sva。JSX 消费用 createRecipeContext / createSlotRecipeContext。改配置后运行 panda codegen(或 panda build)。设计系统 spec 需显式传 --spec,如 panda codegen --spec。
适用场景:搭建主题、添加品牌色、接入暗色模式、设计组件变体 API、审计主题漂移、生成 DESIGN.md。
限制:资料未提供具体版本兼容范围、性能数据与收费信息;spec 文件不会自动刷新,panda dev 不接受 --spec;compound variant 会增加 CSS 体积,可用 optimize.smartCompoundVariants 收窄。