Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add wot-ui/open-wot --skill create-wot-ui-themegit clone --depth 1 https://github.com/wot-ui/open-wotWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/wot-ui/open-wot/create-wot-ui-theme)<a href="https://agentmods.dev/skills/wot-ui/open-wot/create-wot-ui-theme"><img src="https://agentmods.dev/badge/skills/wot-ui/open-wot/create-wot-ui-theme/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/wot-ui/open-wot/create-wot-ui-theme"><img src="https://agentmods.dev/badge/skills/wot-ui/open-wot/create-wot-ui-theme.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00055 | $0.02629 |
| Opus 5 | $0.00028 | $0.01314 |
| Sonnet 5 | $0.00011 | $0.00526 |
| Haiku 4.5 | $0.00006 | $0.00263 |
Grade A, and why
create-wot-ui-theme scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to create-wot-ui-theme — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 203 lines — stays where its author put it; the contents beside it link to each section on GitHub.
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-v2skill。 - 用户要做 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语句。
执行前确认
生成前优先确认这些信息;缺少时先问清楚再动手:
- 主题名称,例如
antd、ocean、forest - 主题风格描述,例如品牌化、偏中性、偏高对比
- 主色 10 阶是否全部自定义
danger、success、warning是否沿用默认值- 文本、边框、填充、反馈态是否需要整体调性调整
- 是否需要同步接入
src/App.vue
推荐流程
- 先查看项目里是否已存在
src/themes/styles/*.scss与src/App.vue,确认接入位置和现有顺序。 - 若用户未给足主题信息,先收集主题名、风格和 token 调整范围。
- 创建
src/themes/styles/{主题名}.scss,按本 skill 的完整模板输出全部语义变量。 - 如用户明确要求接入,再在
src/App.vue的<style lang="scss">中只追加@use './themes/styles/{主题名}.scss' as {主题名};。 - 检查变量是否完整、值是否全为固定色值、挂载选择器是否在主题文件内。
主题文件要求
结构要求
- 只保留一个 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();
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 203 lines · 55 tokens per session scan A 9779adcbf515
create-wot-ui-theme is a skill published in the GitHub repository wot-ui/open-wot (33 stars, last pushed 11d ago), licensed MIT. It adds 55 tokens to every session and 2,629 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to create-wot-ui-theme, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
chakra-ui-builder
Build responsive, accessible UI components and layouts using Chakra UI v3, install or configure Chakra UI in new and existing projects, and design scalable themes using tokens, semantic tokens, recipes, and slot recipes. Use this skill whenever a user asks to build, create, or generate any UI component, page, form…
visual-ralph
Visual Ralph orchestration for frontend UI from generated references, static references, or live URL targets, using $ralph with built-in visual verdict and pixel-diff evidence until the implementation matches and leaves a reproducible design system.
frontend-visual-qa
Audits already-rendered web, landing-page, HTML deck/slide, browser tool/game, dashboard/admin, design-system, and desktop UIs using real-browser or native-app journeys, inspected screenshots, DOM geometry, responsive or projection viewports, and a bundled Playwright sweep. Use after UI implementation to find…
prototype-web
A clickable, high-fidelity web product prototype with navigation, a hero section, feature cards, steps, social proof, and optional pricing. It is designed to resemble a finished landing page while remaining a prototype.
waitlist-page
A simple waitlist page for collecting email addresses from people interested in a new product or early-access release.
tailwindcss
Tailwind CSS v4 conventions — semantic design tokens for theme-safe styling, mobile-first responsive layouts, and v4-first utilities. Use when styling components or writing className utilities with Tailwind. Don't use for plain CSS, CSS-in-JS (styled-components, emotion), or other utility frameworks.