Token导航 LogoToken导航TokenDH.com
待分类权限需确认github未标认证来源可访问许可证需确认审计通过

create-wot-ui-themecreate WOT UI 主题

Agent Skill

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

总安装

1,640

周安装

67

GitHub Stars

10

下载量

531
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:create-wot-ui-theme(create WOT UI 主题)
来源仓库:https://github.com/wot-ui/open-wot
仓库路径:skills/create-wot-ui-theme
安装命令:
npx skills add https://github.com/wot-ui/open-wot --skill create-wot-ui-theme
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/wot-ui/open-wot --skill create-wot-ui-theme

简介

该技能专为 wot-ui 项目生成单文件主题 SCSS 方案,定义语义化变量并挂载样式。

  • 适用于为 wot-ui 定制品牌主题或业务主题,且要求 App.vue 仅保留引入语句。
  • 约束输出结构:主题文件存于 src/themes/styles/,不修改内置入口或拆分为双主题。
  • 安装方式:GitHub 仓库,使用 npx 命令添加;注意目标工程路径是否存在相关目录结构。
  • create-wot-ui-theme 属于待分类类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Create Wot-ui Theme Skill

这个 skill 用于在 wot-ui 项目中生成“单文件主题 SCSS”方案。它约束主题文件在 src/themes/styles 下完成语义变量定义与挂载,App.vue 只负责 @use 引入,不扩展成 light/dark 双文件结构,也不改造 uni_modules/wot-ui/styles/theme/index.scss

适用场景

  • 用户明确要求为 wot-ui 生成品牌主题、业务主题或定制语义变量主题。
  • 用户希望新增 src/themes/styles/{主题名}.scss,并把挂载逻辑也收进主题文件。
  • 用户要求 App.vue 只保留 @use './themes/styles/{主题名}.scss' as {主题名}; 这一类引入。
  • 用户强调不要生成 dark 主题文件、不要拆成双文件主题结构、不要改内置主题入口。

不适用场景

  • 用户只是想知道 wd-config-provider 或普通 CSS 变量怎么用,这种情况优先使用 wot-ui-v2 skill。
  • 用户要做 light/dark 双主题、动态换肤系统、运行时 token 注入,这不属于本 skill 的目标结构。
  • 当前仓库没有实际业务 src/App.vue 或主题目录时,不要臆造文件;应基于用户目标项目路径执行,或先向用户确认目标工程位置。

核心约束

  • 只生成一个主题文件:src/themes/styles/{主题名}.scss
  • 主题文件内必须同时包含:

- 一个 @mixin {主题名}-theme-vars - page.wot-theme-{主题名}.wot-theme-{主题名}.wd-root-portal 的挂载选择器

  • App.vue 只负责 @use 引入,不重复写挂载选择器。
  • 所有语义变量都必须填写固定色值或 transparent,不要写成 var(--wot-xxx)
  • 不生成 dark.scss,不修改 uni_modules/wot-ui/styles/theme/index.scss
  • 如果用户没有明确要求接入 App.vue,默认只生成主题文件并给出应追加的 @use 语句。

执行前确认

生成前优先确认这些信息;缺少时先问清楚再动手:

  1. 主题名称,例如 antdoceanforest
  2. 主题风格描述,例如品牌化、偏中性、偏高对比
  3. 主色 10 阶是否全部自定义
  4. dangersuccesswarning 是否沿用默认值
  5. 文本、边框、填充、反馈态是否需要整体调性调整
  6. 是否需要同步接入 src/App.vue

推荐流程

  1. 先查看项目里是否已存在 src/themes/styles/*.scsssrc/App.vue,确认接入位置和现有顺序。
  2. 若用户未给足主题信息,先收集主题名、风格和 token 调整范围。
  3. 创建 src/themes/styles/{主题名}.scss,按本 skill 的完整模板输出全部语义变量。
  4. 如用户明确要求接入,再在 src/App.vue<style lang="scss"> 中只追加 @use './themes/styles/{主题名}.scss' as {主题名};
  5. 检查变量是否完整、值是否全为固定色值、挂载选择器是否在主题文件内。

主题文件要求

结构要求

  • 只保留一个 mixin,命名为 {主题名}-theme-vars
  • 注释风格尽量贴近 antd.scss 这种语义分组写法
  • 挂载选择器直接写在同一文件末尾
  • mixin 调用形式固定为 @include {主题名}-theme-vars();

App.vue 要求

  • 只追加 @use './themes/styles/{主题名}.scss' as {主题名};
  • 不在 App.vue 里重复写 page,.wot-theme-{主题名} 这些挂载块
  • 如果已有其他主题 @use,保持原有顺序和已有块不被破坏,只追加当前主题

完整变量模板

@mixin {主题名}-theme-vars {
  /* {主题描述} semantic tokens */
  /* Primary */
  --wot-primary-1: #F5F8FFFF;
  --wot-primary-2: #E5EDFFFF;
  --wot-primary-3: #B8CFFFFF;
  --wot-primary-4: #7CA4FFFF;
  --wot-primary-5: #4480FFFF;
  --wot-primary-6: #1C64FDFF;
  --wot-primary-7: #164ED1FF;
  --wot-primary-8: #1341ADFF;
  --wot-primary-9: #0F3285FF;
  --wot-primary-10: #0A235CFF;

  /* Danger */
  --wot-danger-main: #F14646FF;
  --wot-danger-hover: #FB7C7CFF;
  --wot-danger-clicked: #DC2C2CFF;
  --wot-danger-disabled: #FFC9C9FF;
  --wot-danger-particular: #FFE3E3FF;
  --wot-danger-surface: #FFF5F5FF;

  /* Success */
  --wot-success-main: #12B886FF;
  --wot-success-hover: #59CDAAFF;
  --wot-success-clicked: #0F956CFF;
  --wot-success-disabled: #B8EADBFF;
  --wot-success-particular: #E7F8F3FF;
  --wot-success-surface: #F3FBF9FF;

  /* Warning */
  --wot-warning-main: #F57F00FF;
  --wot-warning-hover: #FFA94DFF;
  --wot-warning-clicked: #D05706FF;
  --wot-warning-disabled: #FFD8A8FF;
  --wot-warning-particular: #FFE8CCFF;
  --wot-warning-surface: #FFF6EBFF;

  /* Text */
  --wot-text-main: #1D1F29FF;
  --wot-text-secondary: #4E5369FF;
  --wot-text-auxiliary: #868A9CFF;
  --wot-text-disabled: #C9CBD4FF;
  --wot-text-placeholder: #A9ACB8FF;
  --wot-text-white: #FFFFFFFF;

  /* Icon */
  --wot-icon-main: #1D1F29FF;
  --wot-icon-secondary: #4E5369FF;
  --wot-icon-auxiliary: #868A9CFF;
  --wot-icon-disabled: #C9CBD4FF;
  --wot-icon-placeholder: #A9ACB8FF;
  --wot-icon-white: #FFFFFFFF;

  /* Border */
  --wot-border-extra-strong: #868A9CFF;
  --wot-border-strong: #C9CBD4FF;
  --wot-border-main: #E5E6EBFF;
  --wot-border-light: #F2F3F5FF;
  --wot-border-white: #FFFFFFFF;
  --wot-border-zero: transparent;

  /* Filled */
  --wot-filled-extra-strong: #C9CBD4FF;
  --wot-filled-strong: #E5E6EBFF;
  --wot-filled-content: #F2F3F5FF;
  --wot-filled-bottom: #F7F8FAFF;
  --wot-filled-oppo: #FFFFFFFF;
  --wot-filled-zero: transparent;

  /* Divider */
  --wot-divider-main: #00000014;
  --wot-divider-light: #0000000A;
  --wot-divider-strong: #00000026;
  --wot-divider-white: #FFFFFFFF;

  /* Feedback */
  --wot-feedback-hover: #0000000A;
  --wot-feedback-active: #00000014;
  --wot-feedback-accent: #1C64FD14;

  /* Opacity filled */
  --wot-opacfilled-tooltip-toast-cover: #000000BF;
  --wot-opacfilled-main-cover: #0000008C;
  --wot-opacfilled-light-cover: #0000004D;

  /* Picker view mask */
  --wot-picker-view-mask-start-color: #FFFFFFD9;
  --wot-picker-view-mask-end-color: #FFFFFF33;

  /* Classify application */
  --wot-classifyapplication-yellow-background: #FFFAF1FF;
  --wot-classifyapplication-yellow-border: #FDD78CFF;
  --wot-classifyapplication-yellow-content: #FAAD14FF;
  --wot-classifyapplication-Cyan-background: #F4FBFDFF;
  --wot-classifyapplication-Cyan-border: #BDEAF1FF;
  --wot-classifyapplication-Cyan-content: #22B8CFFF;
  --wot-classifyapplication-Purple-background: #F9F8FFFF;
  --wot-classifyapplication-Purple-border: #D0BFFFFF;
  --wot-classifyapplication-Purple-content: #8059F3FF;
  --wot-classifyapplication-Grape-background: #FBF6FDFF;
  --wot-classifyapplication-Grape-border: #EEBEFAFF;
  --wot-classifyapplication-Grape-content: #AE3EC9FF;
  --wot-classifyapplication-Pink-background: #FFF0F6FF;
  --wot-classifyapplication-Pink-border: #FCC2D7FF;
  --wot-classifyapplication-Pink-content: #FF357CFF;
}

page,
.wot-theme-{主题名},
.wot-theme-{主题名} .wd-root-portal {
  @include {主题名}-theme-vars();
}

输出检查清单

  • 主题文件位于 src/themes/styles/{主题名}.scss
  • 文件包含一个 @mixin {主题名}-theme-vars
  • 文件内完成 page.wot-theme-{主题名}.wot-theme-{主题名}.wd-root-portal 挂载
  • 包含主色、功能色、文字、图标、边框、填充、分割线、反馈、透明填充、Picker View 遮罩、分类色全部变量
  • 所有值都是固定色值或 transparent
  • App.vue 中若接入,只追加 @use './themes/styles/{主题名}.scss' as {主题名};
  • mixin 调用形式为 @include {主题名}-theme-vars();

回答与实现规则

  • 用户未明确要求接入时,不要主动改 App.vue
  • 用户未明确要求时,不要顺手生成 dark 主题、变量映射层或额外目录结构
  • 生成代码时优先保持最小改动,不破坏现有主题文件顺序、选择器范围和项目风格
  • 如果发现项目里已有不同主题体系,先说明差异,再确认是否仍按本单文件结构落地

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.47%
按下载量换算199

Claude

30.24%
按下载量换算161

Cursor

19.8%
按下载量换算105

Gemini CLI

8.63%
按下载量换算46

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

权限需确认

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills