上一篇讲过 ios-agent-skills 是干什么的。
这篇只解决一个更烦的场景:
你给了蓝湖 / 截图,Agent 页面「像那么回事」,细节全不对。
常见翻车:
- 自己加了分割线、说明文案、圆角阴影——设计里根本没有
- 标题、按钮文案被「润色」
- 列表空着,Agent 编了一屏假昵称假数据
- 字号颜色看不清,它猜一个 hex,还不问你
这不是「模型审美差」,是缺一条硬规则:先对照设计清单,不确定就问,问清再写。
仓库里对应 Skill:ios-ui-design-parity(配合 no-speculation-dev 禁止编数据)。
GitHub:github.com/mapleleaf99…
这个 Skill 强制什么
| Agent 爱干的 | Skill 要求 |
|---|---|
| 觉得空列表丑,编假数据 | 只绑真实字段,或 // TODO,禁止虚构 |
| 看不清字号间距,瞎填 | 先问你,可以连问 |
| 顺手「优化」布局 | 禁止自由发挥,设计没有就不加 |
| 恢复你删过的控件 | 不允许 |
| 跟邻页技术栈不一致 | 跟同模块 XIB / SwiftUI / 代码布局走 |
工作流大概是:
- 读截图 / 蓝湖 → 列 checklist(标题、按钮、字段顺序、显隐)
- 有疑点先问(颜色、状态、缺帧)
- 确认后再写代码
- 对照 checklist 自检
安装(可只装这一条)
全局:
git clone https://github.com/mapleleaf99/ios-agent-skills.git
cd ios-agent-skills
./install.sh --only ios-ui-design-parity,no-speculation-dev
或装进某个 App 项目:
mkdir -p YourApp/.cursor/skills
cp -R skills/ios-ui-design-parity skills/no-speculation-dev YourApp/.cursor/skills/
装完 新开 Agent 对话。
自检:./verify-install.sh --dir "$HOME/.cursor/skills"
更多安装方式见 安装说明。
直接复制用的提示词
按蓝湖 / 截图做整页
用 ios-ui-design-parity + no-speculation-dev + ios-xib-style。
严格按这张设计/截图做。不要自由发挥。
看不清的字号、颜色、状态先问我,可以一直问到清楚。
不要假列表数据。样式能放 XIB 的放 XIB。
只有设计、还没有接口
用 ios-ui-design-parity + no-speculation-dev + ios-native-dev。
只按设计做 UI 结构和静态文案。
数据绑定全部 // TODO,不要编 nickName、不要编列表条数。
做完让 Agent 自查
用 ios-ui-design-parity。
对照设计 checklist 逐项检查当前页面 diff。
多出来的 UI 标出来,不要帮我「美化」。
更多组合:PROMPT_COOKBOOK 中文
和「没装 Skill」差在哪
没约束时,Agent 常为了「页面完整」自己补:
// 设计没要求,Agent 加了
dividerView.isHidden = false
subtitleLabel.text = "暂无更多内容,去看看别的吧"
tableView.reloadData() // 假数据已在 dataSource 里写死 10 条
有 Skill 时,应变成:
// 设计有的才绑;没有的数据不编
titleLabel.text = model.title // 真实字段,字段名跟后台一致
// TODO: 空态文案等设计确认后再绑
(具体写法仍跟你们模块 XIB / SwiftUI 约定走,Skill 管的是行为,不是替你们写基类名。)
使用注意(短)
- 点名 Skill 更稳:正文里写
用 ios-ui-design-parity - 自动触发有帮助,但不保证每次带上
- 设计稿糊、缺标注时,让它问比让它猜强
- 重要页面:设计 Skill +
ios-code-review提交前过一遍
相关链接
- 仓库:github.com/mapleleaf99…
- Skill 原文:ios-ui-design-parity
- 前后对比文档:对比说明
觉得有用欢迎 Star。下一篇可以写「崩溃别对着地址猜」或「Flutter 桥接 checklist」——需要的话我另开一篇草稿。
(MIT)