11---
22name : weapp-tailwindcss
3- description : 帮助用户在 uni-app、taro、原生小程序与 uni-app x 项目中集成 weapp-tailwindcss,并输出 Tailwind CSS 写法最佳实践(动态类、任意值 、rpx、merge、 content/@source)与排障步骤 。
3+ description : 帮助用户在 uni-app、taro、uni-app x 与原生小程序项目中接入和排障 weapp-tailwindcss。Use when 用户提到 weapp-tailwindcss、小程序 Tailwind 不生效 、rpx 任意值、JS 字符串 class、space-y/space-x、weapp-tw patch、 content/@source、twMerge/cva/tv 。
44---
55
66# weapp-tailwindcss Skill
77
88用于业务项目接入 ` weapp-tailwindcss ` ,并让 AI 稳定完成“小程序 + 多端”配置、排障与 Tailwind 写法规范落地。
99
10+ > 本 Skill 服务“项目使用者”场景,不是仓库内部二次开发指南。
11+
1012## 适用任务
1113
1214- 新项目快速启用 ` tailwindcss + weapp-tailwindcss `
@@ -15,68 +17,82 @@ description: 帮助用户在 uni-app、taro、原生小程序与 uni-app x 项
1517- 样式不生效、` rpx ` 任意值异常、` JS ` 字符串 class 未转译等问题排查
1618- 需要“Tailwind class 应该怎么写”的团队规范与代码评审清单
1719
18- ## 先收集信息
20+ ## 任务分流
21+
22+ 先判断用户当前任务类型,再进入对应流程:
23+
24+ - 集成新项目
25+ - 迁移存量项目
26+ - 排查已有问题
27+ - 沉淀 Tailwind 写法规范
1928
20- 缺少关键信息时,先补齐:
29+ ## 信息收集最小集
30+
31+ 缺少关键信息时,先补齐后再输出方案:
2132
2233- 当前框架:` uni-app ` / ` taro ` / ` uni-app x ` / 原生小程序 / 其他
23- - 构建工具:` vite ` / ` webpack5 ` / ` webpack4 `
34+ - 构建工具:` vite ` / ` webpack5 ` / ` webpack4 ` / 其他
2435- 目标端:仅小程序,还是小程序 + ` H5 ` / ` App `
25- - ` tailwindcss ` 主版本(v3 / v4)与包管理器(尤其是否为 ` pnpm@10+ ` )
26- - 当前诉求是“集成配置”、“问题排查”还是“写法规范沉淀”
36+ - ` tailwindcss ` 主版本(v3 / v4)与包管理器(重点确认是否 ` pnpm@10+ ` )
37+ - 运行环境:` node ` 版本(建议 ` ^20.19.0 || >=22.12.0 ` )
38+ - 当前诉求是“集成配置 / 问题排查 / 写法规范沉淀”中的哪一类
2739
2840## 执行流程
2941
30- 1 . 先确定 Tailwind 主版本与扫描方式
42+ ### 1) 基线配置(所有任务通用)
3143
32- - ` tailwindcss@3 ` :使用 ` tailwind.config.js ` 的 ` content `
33- - ` tailwindcss@4 ` :使用入口 CSS 的 ` @source `
34- - 确保扫描范围覆盖真实模板与脚本文件,且排除 ` dist ` / ` unpackage ` / ` node_modules `
44+ - 先判断 Tailwind 主版本与扫描方式:
45+ - ` tailwindcss@3 ` 用 ` tailwind.config.js -> content `
46+ - ` tailwindcss@4 ` 用入口 CSS 的 ` @source `
47+ - 扫描范围必须覆盖真实模板与脚本文件,并排除 ` dist ` / ` unpackage ` / ` node_modules `
48+ - 明确 ` postinstall ` 需要有 ` weapp-tw patch `
49+ - 若是 ` pnpm@10+ ` ,提醒执行 ` pnpm approve-builds weapp-tailwindcss `
50+ - 如怀疑补丁缓存或目标记录异常,可使用 ` weapp-tw patch --clear-cache `
3551
36- 2 . 安装并激活 ` weapp-tailwindcss `
52+ ### 2) 按任务类型执行
3753
38- - 安装 ` weapp-tailwindcss `
39- - 在 ` package.json ` 添加 ` postinstall: "weapp-tw patch" `
40- - 若使用 ` pnpm@10+ ` ,提醒执行 ` pnpm approve-builds weapp-tailwindcss `
41- - 补丁失效时可引导执行 ` npx weapp-tw patch --clear-cache `
54+ - 集成/迁移任务:
55+ - 优先读取 [ references/integration-playbook.md ] ( references/integration-playbook.md )
56+ - 按框架给出“可复制最小配置”,不要只给概念
57+ - 多端场景下,明确 ` disabled ` 条件,避免把小程序插件能力无条件作用到纯 ` H5 `
4258
43- 3 . 按框架注册插件并给出最小配置
59+ - 排障任务:
60+ - 优先读取 [ references/troubleshooting-playbook.md] ( references/troubleshooting-playbook.md )
61+ - 先按“症状 -> 最短排查路径”输出步骤,再给修复示例
62+ - 明确每一步“期望现象/验证点”,避免模糊建议
4463
45- - ` uni-app cli vue3 vite ` :使用 ` weapp-tailwindcss/vite ` ,并在 ` vite.config ` 内联注册 ` postcss `
46- - ` uni-app cli vue2 webpack ` :使用 ` weapp-tailwindcss/webpack ` (或历史项目按版本选 ` webpack4 ` )
47- - ` taro webpack5 ` :在 ` webpackChain ` 注册 ` UnifiedWebpackPluginV5 `
48- - ` taro vite ` :用 ` weapp-tailwindcss/vite ` + 内联 ` postcss ` ,并处理 css 变量注入
49- - ` uni-app x ` :使用 ` vite ` + ` weapp-tailwindcss/vite ` ,按官方专题配置
50- - 原生小程序:优先引导到官方模板(` gulp ` / ` webpack ` )
64+ - 写法规范任务:
65+ - 读取 [ references/tailwind-writing-best-practices.md] ( references/tailwind-writing-best-practices.md )
66+ - 按“推荐写法 / 反例 / 评审清单”输出
67+ - 需要运行时拼类时,优先 ` @weapp-tailwindcss/merge ` / ` cva ` / ` variants `
68+ - 涉及封装重命名时,提醒 ` ignoreCallExpressionIdentifiers `
5169
52- 4 . 根据任务类型补充专项指导
70+ ### 3) 回归验证(所有任务都要给)
5371
54- - 如果用户要“写法最佳实践”,读取 [ references/tailwind-writing-best-practices.md] ( references/tailwind-writing-best-practices.md ) 并按其中模板输出
55- - 如果用户要“运行时拼类”,优先推荐 ` @weapp-tailwindcss/merge ` / ` cva ` / ` variants ` 组合
56- - 如果用户反馈“压缩后失效”,提醒保留关键函数名,或补充 ` ignoreCallExpressionIdentifiers `
72+ - 先跑开发态,再跑目标端构建
73+ - 至少验证 3 类样式:基础工具类、任意值(含 ` rpx ` )、变体/伪类
74+ - 若 ` JS/TS ` 中 class 不生效,优先检查 ` content/@source ` 是否覆盖该文件与扩展名
75+ - 若 ` space-y-* ` / ` space-x-* ` 不生效,固定优先级:
76+ - 先改结构(子节点落到 ` view/text ` 或外层补 ` view ` )
77+ - 再评估 ` virtualHost `
78+ - 最后才扩展 ` cssChildCombinatorReplaceValue ` (保持最小标签集合)
5779
58- 5 . 验证与回归
80+ ## 输出格式要求
5981
60- - 先跑开发态编译,再跑目标端构建
61- - 至少验证 3 类样式:基础工具类、任意值(含 ` rpx ` )、变体/伪类
62- - 若 ` JS/TS ` 内 class 不生效,优先检查 ` content/@source ` 是否覆盖该文件与扩展名
63- - 若 ` space-y-* ` / ` space-x-* ` 不生效,按固定优先级排查:
64- 1 . 先改结构(子节点改为 ` view/text ` 或外层包裹 ` view ` )
65- 2 . 再评估 ` virtualHost `
66- 3 . 最后才扩展 ` cssChildCombinatorReplaceValue `
82+ 最终输出必须包含:
6783
68- ## 输出要求
84+ 1 . 结论(适用框架、Tailwind 版本、目标端)
85+ 2 . 修改文件清单(按文件逐条列出)
86+ 3 . 可直接复制的配置片段
87+ 4 . 安装/运行命令(默认 ` pnpm ` )
88+ 5 . 验证步骤与预期结果
89+ 6 . 回滚方案(至少一条)
6990
70- 输出结果需包含 :
91+ 若用户要求“规范沉淀”,额外补充 :
7192
72- 1 . 修改文件清单
73- 2 . 可直接复制的配置片段
74- 3 . 安装/运行命令
75- 4 . 验证步骤与预期结果
76- 5 . 若用户要求规范沉淀,额外给出:
77- - 推荐写法(Do)
78- - 禁止写法(Don't)
79- - 最小回归检查清单(Code Review Checklist)
93+ - 推荐写法(Do)
94+ - 禁止写法(Don't)
95+ - 最小回归检查清单(Code Review Checklist)
8096
8197## 关键约束
8298
@@ -89,10 +105,17 @@ description: 帮助用户在 uni-app、taro、原生小程序与 uni-app x 项
89105- 需要原样透传第三方类名时,优先使用 ` weappTwIgnore `
90106- 对 ` space-y-* ` / ` space-x-* ` ,默认按 ` view + view ` (含 ` text ` )处理,不要假设会自动覆盖全部标签
91107- ` space-y-* ` / ` space-x-* ` 的标签扩展应最小化,只加入业务确实需要的标签,避免选择器污染
108+ - 不要提供与仓库原则冲突的建议:` JS ` 转译基于 ` classNameSet ` 精确命中,禁止启发式兜底转译
92109- 对版本不确定时,优先给出与官方文档一致的最小可用方案,再做增量优化
93110
94111## 引用资料
95112
113+ - [ references/integration-playbook.md] ( references/integration-playbook.md )
114+ - 在“新接入/迁移”类问题中优先读取
115+ - 直接复用其中的最小配置骨架与验证清单
116+ - [ references/troubleshooting-playbook.md] ( references/troubleshooting-playbook.md )
117+ - 在“样式不生效/行为异常”类问题中优先读取
118+ - 按症状路径输出排查步骤,不跳步
96119- [ references/tailwind-writing-best-practices.md] ( references/tailwind-writing-best-practices.md )
97120 - 在用户要求“Tailwind 写法建议、团队规范、代码评审清单、动态类治理”时读取
98121 - 按“决策顺序 + 示例 + 反例 + 验证步骤”输出,不只给概念
0 commit comments