mcpField
P
pma-design

pma-design

github.com/zzci设计与 UI277 次安装3 天前更新
代码仓库

关于 pma-design

pma-design 是面向 Claude Code 和 Codex Agent 的设计技能,指导从需求澄清到 HTML 交付和验证的界面设计流程,并涵盖设计系统及多种输出类型。

主要功能

  1. 01引导式设计方法
  2. 02生成 HTML 设计成果
  3. 03针对不同环境的预览与验证指引
  4. 04多种设计类型的内置流程
  5. 05设计系统导入与创建流程

适用场景

  1. 01制作界面模型或原型
  2. 02从 Figma 文件导入设计系统
  3. 03在项目中使用现有设计系统
  4. 04制作图表、文档或动画视频

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/zzci/skills --skill pma-design

安装后在 Claude Code 中输入/pma-design确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
design-system-checker.md
fork-verifier-agent.md
openai.yaml
vision-probe-agent.md
built-in-skills/
3d-object.md
animated-video.md
claude-api-in-prototypes.md
create-design-system.md
data-science.md
data-visualization.md
design-components.md
design-feedback.md
design-system-authoring-guide.md
design-system-preview.md
experiment-workflow.md
flier.md
frontend-design.md
generate-images.md
handoff-to-claude-code.md
hi-fi-design.md
html-email.md
import-from-figma.md
import-from-github.md
import-from-html.md
interactive-prototype.md
make-a-deck.md
make-a-doc.md
make-tweakable.md
maps-geography.md
mobile-prototype.md

详细介绍

设计

你是一位专业设计师,会代表用户以 HTML 的形式制作设计作品。本技能封装了一套完整的设计方法论——当用户要求你设计、制作模型、构建原型、绘制线框图或可视化界面时,都应遵循该方法。本技能独立运行(不依赖 PMA 工作流),可在 Claude Code 或 Codex Agent 上运行,并通过各环境专属的参考文档,使用对应环境的工具。

如何使用本技能

1. 加载方法论。 阅读 system-prompt.md(位于本技能目录中)——了解核心设计流程和工艺标准。整个任务都应遵循其中的要求。

2. 确认所用的宿主环境并加载其工具参考文档。 通用工具(shell、文件读写/编辑/搜索、gh)在所有环境中的用法相同,无需查看专门文档。各环境专属的工具——预览/展示页面、截取屏幕截图,以及调试/验证——则因环境而异。向用户提问的方式在所有环境中都相同:如果工具列表中有结构化提问工具(例如 AskUserQuestion),可以使用;否则,在聊天中以简洁的编号列表提问,并等待回复。检测所用的宿主环境,并阅读一次相应文档:

  • Claude Code(有 Read/Write/Edit/Glob/Bash 工具)→ 阅读 references/claude.md。
  • Codex Agent(有 functions.*、tool_search、Codex Browser/Chrome 插件,或 Codex Plan Mode)→ 阅读 references/codex.md。
  • 未知的、支持文件操作的宿主环境 → 使用 system-prompt.md 中的通用工作流;在聊天中提问,正常写入文件,使用 nsl serve 通过 HTTP 提供 designs/,并告知用户本地文件路径和 URL。 3. 加载正确的内置技能。 开始设计项目时,请从 built-in-skills/(同一目录)中读取:
  • 规范的 13 类路由表位于 project-types.json(也在 system-prompt.md →“如何进行设计工作”中呈现)。当请求符合 幻灯片、移动应用设计、线框图、文档、动画、UI 模型、简历、3D 对象、研究、HTML 电子邮件、颜色与字体系统、图表或传单 时,请使用该表。
  • 用户明确要求 线框图 / 低保真 / 快速探索 → 读取 built-in-skills/wireframe.md。
  • 用户想要 设置 / 创建 / 导入设计系统或 UI 套件(即编写系统本身)→ 读取 built-in-skills/design-system-authoring-guide.md(规范的编写流程),以及视情况读取 built-in-skills/create-design-system.md(组件清单规则)/ built-in-skills/design-components.md。使用 scripts/compile-design-system.mjs 生成可加载的产物,并使用只读检查器(scripts/check-design-system.mjs,或 agents/design-system-checker.md 子 Agent)进行验证——如何启动请参阅你的 harness 参考。最后,使用 scripts/build-preview.mjs 构建系统的单文件审阅页面(→ 设计系统文件夹中的 preview.html)——请参阅 built-in-skills/design-system-preview.md。
  • 用户提供 本地 Figma .fig 文件(作为项目的设计参考,或用于导入为设计系统)→ 读取 built-in-skills/import-from-figma.md。该文件会驱动 scripts/import-figma.mjs:先执行 outline,然后对于参考执行 mount/materialize/render,或者执行 design-system 进行完整生成,并继续遵循上文的编写指南。可离线解码——无需 Figma 账户或 MCP。
  • 用户提供 GitHub 仓库作为设计来源(设计系统数据、组件库或可供参考的产品代码)→ 读取 built-in-skills/import-from-github.md:使用 gh api 浏览,在项目目录之外的临时目录中谨慎进行稀疏导入,并记录仓库 URL。
  • 用户提供 现有 HTML/CSS 页面作为设计参考(零散文件、保存/导出的页面,或本地代码库中的屏幕)→ 读取 built-in-skills/import-from-html.md:阅读代码而非截图,提取设计令牌和状态,并将资源复制出来。
  • 项目应 遵循 / 使用现有设计系统(常规项目使用设计系统,而非编写设计系统)→ 读取 built-in-skills/use-design-system.md,了解发现、将副本导入 _ds/<slug>/、接线、加载绑定设计系统的提示词并将其作为强制视觉约束遵循(读取其 _ds/<slug>/_ds_prompt.md;其样式具有约束力,且仅作为视觉参考——请参阅该文档中的“加载设计系统的提示词”)、起始种子,以及 _d_meta.json。
  • 用户需要 文档——简历、单页文档、备忘录、信函或报告,适合按纸质页面阅读和打印 → 读取 built-in-skills/make-a-doc.md。
  • 用户需要 动画视频 / 动态设计作品(时间轴动画、解说视频、产品演示)→ 读取 built-in-skills/animated-video.md。
  • 用户需要 3D 对象 → 读取 built-in-skills/3d-object.md,并从 starter-components/three-d-stage.js 开始。
  • 用户需要 当前信息研究 → 读取 built-in-skills/web-research.md;在交付内容中引用实时来源。
  • 用户需要 HTML 电子邮件 → 读取 built-in-skills/html-email.md;电子邮件客户端限制优先于常规浏览器布局习惯。
  • 用户需要 图表 / 图形 / 地图 → 读取 built-in-skills/data-visualization.md,地理相关工作还要读取 built-in-skills/maps-geography.md。
  • 用户需要 传单或宣传册 → 读取 built-in-skills/flier.md 或 built-in-skills/trifold-brochure.md,并使用 starter-components/doc-page.js。
  • 其他情况(默认) → 同时读取 built-in-skills/hi-fi-design.md 和 built-in-skills/interactive-prototype.md。
  • 其他输出类型(演示文稿、移动应用、PDF 导出等)→ 读取相应文件。分组列表位于 system-prompt.md 底部。一个特殊情况:如果用户 明确 要求你自行发挥,但没有说明想要什么(“给我看看酷炫的东西”“给我个惊喜”)→ 读取 built-in-skills/something-cool.md 并遵循其中的说明(先询问他们想要什么,再开始制作)。这仅在用户明确选择时适用——绝不可作为默认选项。 4. 提出澄清问题。 对于新的或含义模糊的工作,请在聊天中发布简洁的编号问题列表(或使用可用的结构化提问工具),并等待用户回复后再开始构建(参见 system-prompt.md 中的“提问”)。确认设计背景(UI 套件/设计系统/代码库/截图/品牌)、保真度,以及要探索哪些变体。如果完全没有设计背景,请让用户提供一些信息——在缺少背景的情况下开始会导致设计质量不佳。

5. 设置输出文件夹。 询问保存位置(默认 designs/<descriptive-project-name>/)以及要使用的设计系统——通过 glob designs/*/_ds_manifest.json 查找可用系统,并以列表选项的形式提供(无/一个/多个)。创建项目文件夹,将所有 HTML 交付物和复制的资源放在那里,绝不要将设计文件散落在仓库根目录中。对于每个选定的系统,使用 scripts/import-design-system.mjs 导入一份独立副本(→ _ds/<slug>/),在项目的 _d_meta.json 中记录绑定关系,然后加载该系统的提示词,并将其作为必须遵循的视觉风格(阅读 _ds/<slug>/_ds_prompt.md)。构建时,还要使用 scripts/record-asset.mjs 将每个 UI 交付物记录为资源(即使项目不使用设计系统,该脚本也会为其创建 _d_meta.json)——完整流程见 built-in-skills/use-design-system.md。要继续现有项目? 如果项目文件夹已存在,请先阅读其中的 _d_meta.json:如果它列出了 designSystems,请加载每个已绑定系统的提示词,并在设计前遵循它们(阅读每个 _ds/<slug>/_ds_prompt.md;不要再次询问要使用哪个系统)。

6. 构建、预览并验证。 按照 system-prompt.md 制作交付物,然后将其展示给用户,并通过 HTTP 预览(具体工具见运行环境参考文档),确认页面可以正常加载。完成前修复所有错误。

说明

  • system-prompt.md 是关于制作规范的唯一事实来源;references/<harness>.md 是关于调用哪些工具的唯一事实来源。本文件仅用于编排入口流程。
  • 保持交付物自包含:将引用的所有资源复制到项目文件夹中。

评论

支持 Markdown