Communitygithub.com

aubarcito48/portfolio

通过文本提示或图像生成新界面,使用提示和设计系统令牌编辑现有界面,并利用 Stitch MCP 生成设计变体。包含提示增强管线、设计映射、专业 UI/UX 术语、设计令牌和主题系统功能。

portfolio 是什么?

该技能允许 AI 代理通过 Stitch MCP 进行全面的设计工作流程,涵盖从文本描述或图像生成屏幕、编辑现有屏幕以及创建设计变体。它集成了智能提示增强管线,该管线分析项目上下文、设计系统存在,并使用专业 UI/UX 术语(如“玻璃态效果导航栏”)替换模糊描述,以避免设计令牌冲突。该技能支持多种平台和设备类型,并强调生成和编辑提示中颜色、字体和主题的自动分离,以确保与设计系统的一致性。代理可以管理设计资产(HTML 和截图),并更新本地元数据以显示屏幕和项目状态。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/aubarcito48/portfolio/tree/HEAD/.agents/skills/stitch-generate-design

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

生成设计

根据文本描述、图片或设计图创建新的设计界面,使用提示和设计系统令牌编辑现有界面,并利用 Stitch MCP 生成设计变体。

[!NOTE] 请参阅您的系统提示,了解如何处理本技能中提到的所有 MCP 工具的前缀(例如 list_projects、generate_screen_from_text、edit_screens)。

🎨 提示增强管线

在调用任何 Stitch 生成或编辑工具之前,您必须增强用户的提示。

1. 分析上下文

  • 项目:使用 list_projects 查找正确的 projectId。如果没有合适的项目,可使用 create_project 创建。
  • 设计系统:通过 list_design_systems 检查项目是否存在设计系统。如果存在,设计令牌(颜色、字体、圆角)已在项目级别应用 — 不要在生成提示中包含任何颜色、字体或主题指令。如果不存在,请先委托给 manage-design-system 技能,然后再生成界面。

2. 优化 UI/UX 术语

查阅设计映射以替换模糊术语。

  • 模糊:“做一个漂亮的头部”
  • 专业:“带有玻璃态效果和居中标志的固定导航栏”

使用提示关键词来获取组件名称、形容词调色板、颜色角色和形状描述。

3. 构建最终提示

格式化增强后的提示以供 Stitch 使用。专注于布局、内容和结构 — 永远不包含颜色、字体或主题指令(这些由项目级别的 manage-design-system 技能处理)。

对于新界面,使用以下模板:

[页面的总体目的和用户意图]

**平台:** [Web/移动端],[桌面/移动端]-优先

**页面结构:**
1. **头部:** [导航和品牌描述]
2. **英雄区域:** [标题、副文本和主要行动号召]
3. **主要内容区域:** [详细的组件分解]
4. **页脚:** [链接和版权信息]

对于编辑,要具体说明要更改的内容:

  • 位置: “将[英雄区域]中的[主要按钮]更改为...”
  • 视觉: “...更改为深蓝色(#004080)并添加微妙阴影。”
  • 结构: “在主要按钮旁添加一个带有‘了解更多’文本的辅助按钮。”

[!CAUTION] 不要在生成提示中包含十六进制颜色代码、字体名称、调色板、圆角值或任何设计系统令牌。这些由项目级别的 manage-design-system 技能处理,如果重复将导致冲突。(对于编辑提示,十六进制颜色代码可用于精确的颜色调整。)

4. 展示 AI 洞察

在任何工具调用之后,始终将 outputComponents(文本描述和建议)展示给用户。

参见示例/enhanced-prompt.md获取完整的提示增强前后示例。


步骤

确定模式

根据用户的请求决定使用哪个流程:

  • 用户想从文本描述创建 → 从文本生成 流程
  • 用户提供了图像、截图或设计图 → 从图像生成 流程
  • 用户想修改现有界面 → 编辑 流程
  • 用户想要布局/颜色/内容变体 → 生成变体 流程

从文本生成流程(新界面)

1. 增强用户提示

应用以上提示增强管线。

2. 识别项目

使用 list_projects 查找正确的 projectId(如果未知)。

3. 生成界面

使用增强后的提示和 designSystem ID(如果步骤 1 中找到)调用 generate_screen_from_text 工具。

{
  "projectId": "...",
  "prompt": "[您的增强提示]",
  "designSystem": "assets/...", // 可选:如果步骤 1 中找到则传入
  "deviceType": "DESKTOP"  // 选项:MOBILE, DESKTOP, TABLET
}

4. 展示 AI 反馈

始终向用户展示 outputComponents 中的文本描述和建议。

5. 下载设计资产

生成后,将 outputComponents 中的 HTML 和截图 URL 下载到 .stitch/designs 目录。

  • 命名: 使用界面 ID 或描述性短名称作为文件名。
  • 工具: 使用 curl -o 通过 run_command 或类似工具。
  • 目录: 确保 .stitch/designs 存在。

6. 审查和优化

  • 如果结果不完全符合预期,继续使用编辑流程进行针对性调整。
  • 除非基本布局错误,否则不要从头重新生成。

从图像生成流程(图像/设计图 → 设计)

当用户提供要重新创建的图像、截图或设计图时使用此流程。

1. 识别项目

使用 list_projects 查找正确的 projectId。如果没有合适的项目,使用 create_project 创建。

2. 上传图像

委托给 upload-to-stitch 技能将图像上传到项目。这将以图像作为内容创建一个新界面。

3. 通过编辑优化

上传后,使用 list_screens 查找新创建的 screenId,然后调用 edit_screens 并附带描述性提示以优化设计:

{
  "projectId": "...",
  "selectedScreenIds": ["<上传的界面 ID>"],
  "prompt": "[描述要调整、增强或从该设计图中重新创建的内容]"
}

[!TIP] 为获得最佳效果,请描述图像背后的意图,而不仅仅说“让它看起来像这样”。例如:“这是仪表板设计图 — 用适当的数据表格、侧边栏导航和图表小部件重新创建它。”

4. 展示 AI 反馈

始终向用户展示 outputComponents 中的文本描述和建议。

5. 下载设计资产

将 outputComponents 中的 HTML 和截图 URL 下载到 .stitch/designs 目录。

  • 命名: 使用界面 ID 或描述性短名称作为文件名。
  • 工具: 使用 curl -o 通过 run_command 或类似工具。
  • 目录: 确保 .stitch/designs 存在。

编辑流程(修改现有界面)

1. 识别界面

使用 list_screens 或 get_screen 查找正确的 projectId 和 screenId。

2. 制定编辑提示

应用提示增强管线,专注于具体性:

  • 位置: “将[英雄区域]中的[主要按钮]的颜色更改为...”
  • 视觉: “...更改为深蓝色(#004080)并添加微妙阴影。”
  • 结构: “在主要按钮旁添加一个带有‘了解更多’文本的辅助按钮。”

3. 应用编辑

调用 edit_screens 工具。

{
  "projectId": "...",
  "selectedScreenIds": ["..."],
  "prompt": "[您的有针对性的编辑提示]"
}

4. 展示 AI 反馈

始终向用户展示 outputComponents 中的文本描述和建议。

5. 下载设计资产

编辑后,将 outputComponents 中更新的 HTML 和截图 URL 下载到 .stitch/designs 目录,覆盖之前的版本以确保本地文件反映最新编辑。

  • 命名: 使用界面 ID 或描述性短名称作为文件名。
  • 工具: 使用 curl -o 通过 run_command 或类似工具。
  • 目录: 确保 .stitch/designs 存在。

6. 更新项目元数据

下载资产后,更新 .stitch/metadata.json 以反映任何更改(例如更新的界面标题或来自编辑的新界面 ID)。元数据文件追踪所有界面、其设备类型和设计系统信息。有关格式,请参阅 manage-design-system 技能的 examples/metadata.json。

7. 验证和重复

  • 检查输出界面以查看更改是否正确应用。
  • 如果需要更多润色,使用新的具体提示重复编辑流程。

生成变体流程(探索变化)

当用户想要探索现有界面的替代布局、配色方案或内容变体时使用此流程。

1. 识别界面

使用 list_screens 或 get_screen 查找正确的 projectId 和 screenId。

2. 配置变体选项

使用适当的选项调用 generate_variants 工具:

{
  "projectId": "...",
  "selectedScreenIds": ["..."],
  "prompt": "[描述变体的方向]",
  "variantOptions": {
    "variantCount": 3,
    "creativeRange": "EXPLORE",
    "aspects": ["LAYOUT", "COLOR_SCHEME"]
  }
}

变体选项:

  • variantCount:1–5 个变体(默认:3)
  • creativeRange:REFINE(细微),EXPLORE(平衡),或 REIMAGINE(激进)
  • aspects:专注于特定维度 — LAYOUT、COLOR_SCHEME、IMAGES、TEXT_FONT、TEXT_CONTENT,或留空表示全部

3. 展示 AI 反馈

始终向用户展示 outputComponents 中的文本描述和建议。

4. 下载设计资产

将 outputComponents 中的变体 HTML 和截图 URL 下载到 .stitch/designs 目录。

  • 命名: 使用界面 ID 或描述性短名称作为文件名。
  • 工具: 使用 curl -o 通过 run_command 或类似工具。
  • 目录: 确保 .stitch/designs 存在。

💡 提示

  • 结构化: 在提示中将页面分解为头部、英雄区域、功能区域和页脚。
  • 内容优先: 描述每个部分包含什么(文本、图像、行动号召),而不是它看起来如何。
  • 迭代润色: 优先使用编辑进行针对性调整,而不是完全重新生成。
  • 无主题泄漏: 不要在生成提示中包含十六进制颜色代码、字体名称或颜色角色 — 设计系统处理所有视觉样式。
  • 指定交互: 提及悬停状态、动画和点击行为,而不是视觉样式。
  • 保持编辑专注: 一次一个编辑通常比一长串更改更好。
  • 参考组件: 使用专业术语,如“导航栏”、“英雄区域”、“页脚”、“卡片网格”。
  • 编辑中的精确颜色: 在编辑现有界面时,使用十六进制颜色代码进行精确颜色匹配。

📚 参考资料

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

aubarcito48/portfolio

Transforms vague UI ideas into polished, Stitch-optimized prompts. Enhances specificity, adds UI/UX keywords, injects design system context, and structures output for better generation results.

aubarcito48/portfolio

>- Convert frontend code (Vite, React, Angular, Vue, etc.) to a Stitch Design by chaining static HTML extraction, design system extraction, and file upload. **ALWAYS** use this skill when the user's intent is to move existing web apps or React/Angular/Vue components into Stitch (e.g., requests to "save", "migrate", or "upload"). You must use this skill even for simple "save" operations, as it is the only way to ensure the design system is extracted and assets are properly linked.

aubarcito48/portfolio

>- Extract a comprehensive design system (DESIGN.md) directly from frontend source code — React, Vue, Svelte, Angular, plain HTML/CSS, or any web framework. Analyzes component files, stylesheets, Tailwind configs, theme definitions, and design tokens to produce a rich, Stitch-compatible design system document. Use this skill whenever the user wants to reverse-engineer a design system from an existing codebase, audit the visual language of a project, extract design tokens from source files, or understand the styling patterns in a frontend repo — even if they just say "what does this app look like?" or "pull out the design from this code.

aubarcito48/portfolio

>- Extract self-contained static HTML from a built web application or React components by inlining CSS and images. Use this skill whenever you need to capture a specific UI state, share a static version of a page, or prepare assets for Stitch upload, even if the user just asks to 'save the HTML' or 'mock the view'.

相关技能