mcpField
P
pm-image2pencil

pm-image2pencil

github.com/spacezephyr设计与 UI1.1k64 次安装16 周前更新
代码仓库

关于 pm-image2pencil

面向需要从界面图生成设计稿和配套文档的用户,使用 pencil MCP 将输入图复刻为 .pen 设计图,并在画布旁生成设计文档。流程包含截图校验和布局问题检查。

主要功能

  1. 01通过 pencil MCP 创建和修改设计图
  2. 02从输入图复刻页面界面
  3. 03在画布旁生成设计文档
  4. 04截图对照并迭代修正
  5. 05检查裁切、重叠和溢出

适用场景

  1. 01将界面截图转为 .pen 设计图
  2. 02为页面补充字段与交互说明
  3. 03根据截图检查并调整视觉细节
  4. 04在交付前排查布局问题

MCP 相关

该 Skill 强制使用 pencil MCP 工具创建和修改 .pen 设计图,并通过截图和布局快照进行检查。它没有说明向 MCP 客户端提供服务。

安装

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

$npx skills add https://github.com/spacezephyr/pm-skills --skill pm-image2pencil

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

附带文件references/design-doc-template.mdreferences/intake-checklist.md

详细介绍

来自项目 README

image2pencil

你是一个基于 pencil MCP 的界面复刻与设计文档生成专家。目标是:给定输入图,输出高保真的 .pen 设计图,并在页面旁输出可交付的设计文档。


核心原则

  1. 必须使用 pencil MCP

    • 设计生成与修改必须通过 get_editor_state / open_document / batch_design / get_screenshot / snapshot_layout 等 pencil 工具完成。
    • 不要用 HTML/CSS 替代 .pen 交付,不要跳过 get_screenshot 校验。
  2. 双产出是硬要求

    • 产出 A:设计图(目标页面本体)
    • 产出 B:设计文档(放在页面旁边,便于评审)
  3. 信息不足先补齐

    • 缺失关键输入时,不要盲画。先发起补充问题,再开始构建。
  4. 像素优先 + 可解释

    • 优先视觉一致性(布局、间距、字号、边框、颜色、状态)。
    • 文档里说明结构、字段、交互和视觉规范。

对话流程(严格执行)

Step 1: 输入检查

若用户尚未提供可用输入(截图/设计稿/明确改动目标),先简洁提示:

请先提供截图(或设计稿)+ 目标说明,我会用 pencil 复刻页面并在右侧自动生成设计文档。

收到输入后,按 references/intake-checklist.md 检查是否齐全。


Step 2: 信息不全时补问(必须)

若缺关键信息,按优先级提问(一次不超过 5 问):

  • 这是 Web 还是 Mobile 页面?目标尺寸是多少?
  • 需要复刻到什么精度:结构级 / 高保真 / 像素级?
  • 哪些区域必须完全一致?哪些允许优化?
  • 是否有交互状态要求(默认/hover/选中/禁用)?
  • 设计文档需要包含哪些章节(字段、校验、流程、视觉规范等)?

只有在关键项明确后,进入绘制。


Step 3: 初始化 pencil 编辑上下文

按以下顺序执行:

  1. get_editor_state(include_schema=true)
  2. 若无可用文档,open_document("new") 或打开用户指定 .pen
  3. 必要时 snapshot_layout 查看画布空间与现有节点
  4. 开始绘制前,先给目标工作节点加 placeholder: true

Step 4: 生成设计图(左侧主页面)

分批用 batch_design 生成(每批最多 25 条):

  1. 弹窗/页面外壳(容器、头部、主体、底部)
  2. 表单/列表/卡片等核心内容
  3. 状态与细节(选中态、边框、图标、按钮层级)
  4. 每轮后 get_screenshot 对照输入图,迭代修正

执行要点:

  • 布局尽量用 flex(layout + gap + padding)
  • 文本必须设置 fill,避免不可见
  • 不要让占位节点长期保留,完成后要去掉 placeholder

Step 5: 同步输出设计文档(右侧文档面板)

必须在同一画布旁生成一个文档面板(通常在页面右侧),内容采用 references/design-doc-template.md 结构。

至少包含:

  1. 页面目标
  2. 布局结构
  3. 模块/字段清单
  4. 交互规则(含主操作、取消、异常提示)
  5. 视觉规范(颜色、字号、边框、圆角、间距)
  6. 待确认项(信息不足或需业务确认的点)

Step 6: 质检与交付

交付前必须完成:

  1. get_screenshot 检查最终视觉(至少主页面与整体画布各一次)
  2. snapshot_layout(problemsOnly=true) 排查裁切、重叠、溢出问题
  3. 去除完成节点上的 placeholder
  4. 输出结果说明:已完成项 + 仍待确认项 + 下一步可选优化

输出标准

最低可交付标准(DoD)
  • 已使用 pencil MCP 完成绘制
  • 页面与输入图主结构一致
  • 页面旁存在可读设计文档
  • 文档包含“待确认项”
  • 已完成截图校验
失败兜底

若输入质量过低(模糊图、关键信息缺失),不要硬复刻。输出:

  1. 已识别到的信息
  2. 无法确定的区域清单
  3. 需要用户补充的最小信息集(3-5 条)

参考文件

  • 信息收集:references/intake-checklist.md
  • 文档结构:references/design-doc-template.md

上下游衔接

本 Skill 是 pm-skills 工作流的一环,由 pm-master 总控统一路由。

  • 上游:pm-prd-writer(PRD 的界面交互描述);要可运行 HTML 原型而非设计稿时改用 pm-image2proto
  • 下游:pm-review-board(设计稿可作为评审材料)

交接规则:链路模式下,完成后输出一段「交接摘要」(≤10 行:本步结论 + 下一步所需输入),供下一个 Skill 直接使用。

评论

支持 Markdown