跳转到使用指南
web-component-design作者 Seth Hobson

Web Component Design Skill.

一个用于 UI 设计的 Claude Code 和 Codex skill:可复用的 React、Vue 和 Svelte 组件模式与组合策略。

  • Web & UI
  • UI 代码
wshobson/agents · plugins/ui-design/skills/web-component-design/SKILL.mdSKILL.md
--- name: web-component-design description: Master React, Vue, and Svelte component patterns including CSS-in-JS, composition strategies, and reusable component architecture. Use when building UI component libraries, designing component APIs, or implementing frontend design systems. --- ## When to Use This Skill ## Core Concepts ## Quick Start: React Component with Tailwind ## Framework Patterns ## Best Practices
从 2026-09-14 上游文件中读取的前言和章节标题 · 完整长度 7,475 字符

01 功能说明

web-component-design Skill 在 Claude Code 与 Codex 中的作用

摘要、工作流与产物,均读自该 skill 的 SKILL.md。

来自 SKILL.md读取于 2026-09-14 · 非实际运行记录

以 skill 自身的术语

运用现代组合模式、CSS-in-JS 方案以及组件 API 设计原则,跨 React、Vue 和 Svelte 构建可复用 UI 组件。涵盖复合组件、render props、slots,以及 React context、Vue composables、Svelte runes 等特定框架模式。适用于组件库、设计系统以及旧组件的重构。

强调默认即可访问的组件,具备语义化的 props、单一职责、ref 转发,以及受控与非受控模式的区分。包含使用 class-variance-authority、Tailwind CSS 及作用域样式方案实现按钮、手风琴、下拉选择和标签页等组件的具体示例。

它产出什么

  • 使用 class-variance-authority 和 Tailwind CSS 实现按钮、手风琴、下拉选择、标签页和卡片等设计系统组件。
查看示例提示词 ↗

工作方式

  1. 01
    选择一种 CSS-in-JS 方案

    可从 Tailwind CSS(用于快速原型设计)、CSS Modules(用于作用域样式)、styled-components(用于 React 动态样式)、Emotion(利于 SSR 的灵活方案),或 Vanilla Extract(零运行时性能)中选择。

  2. 02
    设计组件 API

    使用语义化的 prop 命名,例如用 isLoading 而非 loading,提供合理的默认值,通过 children 支持组合方式,并允许通过 className 或 style 属性覆盖样式。

  3. 03
    实现特定框架的模式

    对于复合组件使用 React context,对于 Vue 3 使用带有 provide 和 inject 的 composables,或对于 Svelte 5 使用带有 $props 和 $derived 的 runes 来管理响应式状态。

02 找到适合场景

何时使用 web-component-design Skill

当任务是此类 UI 设计时,在 Claude Code 或 Codex 中使用 web-component-design skill。以下适用范围和限制取自该 skill 的文件。

适合场景

  • 设计可复用的组件库或设计系统,以在产品或组织内保持一致的 UI 模式。
  • 实现复杂的组件组合模式,例如复合组件、render props 或 slots,以构建灵活的组件 API。
  • 在代码库中构建一致的组件 API,统一 prop 命名、默认值与样式约定。
  • 利用当前框架能力与组合策略,将遗留组件重构为现代模式。
  • 从一开始就内置 ARIA 支持与键盘导航,构建无障碍、响应式的 UI 组件。

了解边界

  • props 过多的组件表明需要采用组合模式,而非单一的复杂组件。

03 Skill 内部

web-component-design skill 赋予 Claude Code 和 Codex 的规则

SKILL.md 为 Agent 设定的 3 条具体指令、默认值与限制——正是这部分文件决定了结果。

  1. 提供合理的默认值

    组件 API 必须为可选 props 提供合理的默认值,如按钮示例中的 defaultVariants 所示。

  2. 通过 children 支持组合

    组件必须接受 children props,以支持灵活的组合与复用模式。

  3. 允许样式覆盖

    每个组件都必须允许父组件通过 className 或 style props 覆盖样式。

04 投入使用

在 Claude Code 或 Codex 中安装 web-component-design

一条 npx skills add 命令,然后在你的 Agent 中执行第一个任务和对结果的清单检查。

将 web-component-design 添加到 Claude Code、Codex 或你的 Agent

在你的项目中运行;安装程序会询问要把它添加到哪个 Agent。

Terminal
npx skills add https://github.com/wshobson/agents --skill web-component-design

针对 plugins/ui-design/skills/web-component-design/SKILL.md 的通用 skills CLI 形式;仓库可能会记录其自身的路径。

给 Skill 一个首次 UI 设计任务

按 skill 自身的术语撰写;把括号中的部分换成你的内容。

Starter prompt
Build a reusable Card component for our React design system that supports compound composition with Card.Header, Card.Content, and Card.Footer subcomponents. Use Tailwind CSS for styling with variants for different card sizes (sm, md, lg) and visual styles (default, outlined, elevated). Include forwardRef support and ensure the component is accessible with proper ARIA labels. Set md size and default style as the defaults.

来源:依据 SKILL.md,按 skill 自身的术语撰写。

检查首次结果

SKILL.md 本身如何描述正确的结果:

  • 使用屏幕阅读器测试组件,并验证是否完全支持键盘导航,以确保无障碍合规。
  • 使用 React DevTools 对渲染性能进行分析,并在适当情况下应用 memoization,以避免不必要的重新渲染。

在 OpenDesign 中通过其 SKILL.md 链接导入 web-component-design:Plugins → Add → Skill → Import from link,然后在顶部栏中选择它。

05 开源、可追溯

来源、许可与验证

本页面事实的来源,以及最后检查时间。

Repository
github.com/wshobson/agents 分支 main
Skill 文件
plugins/ui-design/skills/web-component-design/SKILL.md 验证时记录的内容校验和;提交 4236bb9
License
MIT 来自 LICENSE。
仓库星标数
39,635 GitHub 快照拍摄于 2026-09-14,针对整个 wshobson/agents 仓库,该仓库在本目录中包含 18 个 skills。不是 web-component-design 的评分或使用计数。
已由 OpenDesign 验证
2026-09-14 已检查源文件、路径、许可文本和 star 数量。未内置在 OpenDesign 主程序(检查日期 2026-08-28);本页面未记录实际运行。

SKILL.md 内部

  1. 何时使用此 Skill列出了七种场景,包括组件库、组合模式、CSS-in-JS、无障碍性以及重构。
  2. 核心概念涵盖组合模式、CSS-in-JS 方案对比表,以及带有 prop 命名的组件 API 设计原则。
  3. 快速开始:使用 Tailwind 的 React 组件使用 forwardRef、class-variance-authority、variants 和 size props 完成 Button 的完整实现,并支持加载状态。
  4. 框架模式使用 context 的 React 复合 Accordion、使用 composables 和 inject 的 Vue 3 tabs、使用 runes 的 Svelte 5 button。
  5. 最佳实践七项实践,包括单一职责、context 的使用、无障碍默认值、受控模式、ref 转发以及 memoization。
  6. 常见问题五个易踩的坑:prop 膨胀、样式冲突、重渲染级联、无障碍缺口和包体积顾虑。
Skill 自身的描述
"精通 React、Vue 和 Svelte 组件模式,包括 CSS-in-JS、组合策略和可复用组件架构。适用于构建 UI 组件库、设计组件 API 或实现前端设计系统。"

来自 SKILL.md 的 front-matter 描述。完整文件约 7,475 个字符。在 GitHub 上阅读完整文件。

Web Component Design

在真实 UI 设计任务上运行 web-component-design。

下载 OpenDesign,从 SKILL.md 链接导入 web-component-design,粘贴上述提示,在查看结果前先阅读计划。

终端
npx skills add https://github.com/wshobson/agents --skill web-component-design

OpenDesign 桌面客户端

一套设计系统,让每一次创作都保持品牌一致

在完整的 Vibe Design Workspace 中,用同一套品牌规则生成网页、PPT、可交互原型、数据看板、图像与 HTML 视频。连接本地 Codex、Claude Code、Cursor 等编程助手,即可免费创作。

  • 覆盖网页、PPT、原型、数据看板、图像与视频
  • 140+ 设计系统,以及完整模板与技能库
  • 连接本地 Codex 与 21+ 款编程助手 · 免费使用
免费下载

支持 macOS 与 Windows