用途:在 Figma 设计与 SwiftUI 代码之间做双向翻译。用户提到 Swift、SwiftUI、iOS、iPhone 或 iPad 时使用,方向由请求决定。
主要能力:设计转代码时,把 Figma 文件或画框转成 iOS 项目中的 SwiftUI;代码转设计时,把 SwiftUI 视图、屏幕或设计令牌推送到 Figma 文件。若请求方向不明确(同时出现 Figma URL 与 .swift 文件且无明确动词),应先询问用户方向再加载参考。
使用方式:本文件是路由,具体指引在 references/design-to-code.md 与 references/code-to-design.md。读取 Figma 用 get_design_context,传入 clientLanguages: "swift" 与 clientFrameworks: "swiftui"。URL 转参数:figma.com/design/:fileKey/:fileName?node-id=:nodeId 使用 fileKey,nodeId 中的 - 替换为 :;分支链接 figma.com/design/:fileKey/branch/:branchKey/:fileName 使用 branchKey 作为 fileKey。代码转设计使用 use_figma API,调用前必须先加载 figma-use;构建整屏时另加载 figma-generate-design,构建组件或设计系统时另加载 figma-generate-library。
关键约定:get_design_context 输出中的 React+Tailwind 只是结构参考,不是可直接照搬的源码,截图才是两个方向的真实依据,不要把 position: absolute、像素画框或 mix-blend-mode 堆叠直接转写。iOS HIG 语义颜色是令牌而非十六进制,如 var(--backgrounds/primary, …)、var(--labels/secondary, …)、var(--separators/non-opaque, …) 对应 SwiftUI 的 Color(.systemBackground)、Color.secondary、Color(.separator),并映射到 Figma 语义集合变量,保留映射、丢弃字面 RGBA。SF Symbols 双向按名称往返,绝不按码点:设计转代码时使用响应中 <SFSymbol>{Image(systemName: "...")}</SFSymbol> 包装内的名称;代码转设计时在 use_figma 内调用 figma.util.getSfSymbolCharacter(name) 转换,不要手工查码点。应识别底层 iOS 模式而非字面节点或视图名,例如大标题加返回箭头加尾部操作对应 NavigationStack,底部图标加标签行对应 TabView,重复等高行加首尾装饰对应 List,优先匹配系统模式而非用基础元素重建。
适用场景:iOS 应用的界面还原、设计交付、设计系统与组件同步。限制:资料未提供具体安装命令、收费、价格、平台支持范围或效果保证,这些事实暂未提供。