Skip to content
Back to skills

Frontend Iteration Planner

ASecurity

前端项目二开 / 增量改进的入口路由器——已定稿 design.md 的项目要加新页面 / 新 section / 微改 token 时,先读老资产(design.md + visual-anchors/ + motion-prompts/),按三档 tier 判定(T1 新页面 / T2 新 section / T3 微改)输出本轮最小流程路径,阻止模型"假装新项目"把已定风格冲掉。本 skill 只做路由和前置防呆,不自己执行具体阶段——执行仍委给 dualround / visual-reference / design-writer / design-review 等原 skill。触发:用户说"加个新页面""在首页加一个 section""改一下这个按钮颜色""design.md 已经有了,现在要扩展 X""新路由 /blog / /pricing"。不用于全新项目从零启动(那是阶段 1-7 完整流程,走 frontend-interview-dualround 前轮)、不用于整站视觉重写(全站重写需要回阶段 2-4 重跑)、不用于纯 bug 修复(那是开发实现剧本)。

  • 7 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 26, 2026
designfrontend

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add kkunkunya/ai-frontend-design-kit --skill frontend-iteration-planner --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Frontend Iteration Planner?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Frontend Iteration Planner
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kkunkunya-frontend-iteration-planner/badge)](https://www.skillsdirectory.com/skills/kkunkunya-frontend-iteration-planner)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: frontend-iteration-planner
description: 前端项目二开 / 增量改进的入口路由器——已定稿 design.md 的项目要加新页面 / 新 section / 微改 token 时,先读老资产(design.md + visual-anchors/ + motion-prompts/),按三档 tier 判定(T1 新页面 / T2 新 section / T3 微改)输出本轮最小流程路径,阻止模型"假装新项目"把已定风格冲掉。本 skill 只做路由和前置防呆,不自己执行具体阶段——执行仍委给 dualround / visual-reference / design-writer / design-review 等原 skill。触发:用户说"加个新页面""在首页加一个 section""改一下这个按钮颜色""design.md 已经有了,现在要扩展 X""新路由 /blog / /pricing"。不用于全新项目从零启动(那是阶段 1-7 完整流程,走 frontend-interview-dualround 前轮)、不用于整站视觉重写(全站重写需要回阶段 2-4 重跑)、不用于纯 bug 修复(那是开发实现剧本)。
---

<!-- PACKAGED_KNOWLEDGE_START -->
## Packaged Knowledge Snapshot

This packaged copy includes local note snapshots for portability.
When the original Obsidian absolute path is unavailable, use the packaged snapshot instead:

- `/Users/kunkun/note/01-AI工程/AI设计与前端/01-认知框架/AI前端设计认知框架.md` -> `references/packaged-knowledge/AI前端设计认知框架.md`
<!-- PACKAGED_KNOWLEDGE_END -->

# Frontend Iteration Planner

## 这个 skill 在做什么

**二开场景的入口路由器**。已有 design.md 定稿 + visual-anchors/ 选定 + motion-prompts/ 产出的项目要扩展时,先强制读老资产(防"假装新项目"),再按三档 tier 输出本轮的**最小执行路径**,避免每次扩展都从阶段 1 重跑。

本 skill 不自己跑采访 / 出图 / 写代码——它只**决定**本轮走哪几步、跳哪几步、老资产怎么读、新产出往哪写,然后移交给对应的原 skill 执行。

## 在阶段化流程里的位置

本 skill 是**场景 C(二开 / 增量)的专用入口**,横入于阶段 1 前。原 7 阶段流程的 skill 都在它下游:

```
场景 A:全新项目
  阶段 1 → 2 → 3 → 4 → 5 → 6 → 7(完整 7 阶段)

场景 B:整站视觉重写
  回阶段 2 重跑六维 + 阶段 3 后轮 + 阶段 4 视觉锚定三件套(全量重生)

场景 C:二开 / 增量(本 skill)
  ★ frontend-iteration-planner
     ↓(读老资产 + tier 判定)
  按 Tier 1/2/3 输出最小路径:
     T1 新页面  :轻量后轮 → 4B 局部 mockup → 6 代码 → 7 review + 反写 design.md
     T2 新 section:最小后轮 → 可选 4B → 6 代码 → 7 review + 反写
     T3 微改    :直接 6 代码 → 7 review + 反写对应段
```

## 核心赌局

**老 design.md 是资产,不是债务**。用户已经花过一轮心思钉死主语言 / 六维 token / 动效双向性,二开必须**沿用**不能**重新发明**。模型默认倾向"看到任务就从零开始"——本 skill 是这条倾向的硬杀手。

## 何时进入本 skill

**要进**:

- 用户说:"加个新页面" / "新路由 /X" / "在首页加一个 section" / "改一下这个按钮 / token / 动效参数"
- 用户说:"design.md 已经有了,现在要扩展 / 迭代 / 加功能"
- 项目根目录存在 `knowledge/design-docs/design.md` 且 frontmatter `stage` ≥ `3-finalized` 或等价状态
- `frontend-anti-slop-gate` / `frontend-design-review` 等下游 skill 检查时发现本次任务是**增量**而非新建

**不要进**:

- 项目是全新的(没有 `knowledge/design-docs/` 目录或只有空骨架) → `frontend-interview-dualround` 前轮
- 用户明确说要**整站视觉重写**(主语言不变但视觉方向换) → 回阶段 2-4 重跑
- 纯 bug 修复 / 纯脚本改动 / 无 UI 表面 → 开发实现剧本
- 单纯改 copy 文案(不涉及视觉 / 交互 / 架构) → 直接改代码 + 反写 design.md §9

## 知识库依赖

| 文件 | 用途 | 何时读 |
|------|------|--------|
| `/Users/kunkun/note/01-AI工程/AI设计与前端/01-认知框架/AI前端设计认知框架.md` | 阶段化流程总图(场景 C 在总图的位置) | **启动必读** |
| 项目内 `knowledge/design-docs/design.md` | 主语言 + 六维 token + §9 Agent Prompt Guide + §14 Motion Prompts 索引 | **步骤 0 必读** |
| 项目内 `knowledge/design-docs/visual-anchors/` | Moodboard 选定版 + 已有页面 mockup + 帧序列图 | 步骤 0 若存在必扫目录清单 |
| 项目内 `knowledge/design-docs/motion-prompts/` | 已有核心动效的微观 prompt | 步骤 0 若存在必扫目录清单 |

启动时只拉总图 + 项目 design.md,visual-anchors / motion-prompts 扫目录索引(不读全文)。

## 执行顺序

```
步骤 0 老资产前置读取 + 成熟度判定
  ↓
步骤 1 tier 判定(用户一次问答定档)
  ↓
步骤 2 输出最小流程路径 + 移交下游 skill
  ↓
步骤 3 回写 design.md 迭代日志段
```

---

## 步骤 0:老资产前置读取(硬防呆)

### 0.1 必读三件套

不管 tier 是什么,进入本 skill 后**必须**先做:

| 动作 | 目标 | 缺失时处理 |
|---|---|---|
| Read `knowledge/design-docs/design.md` | 拿到主语言 / 六维 token / §9 Agent Prompt Guide / §10 Motion Spec / §14 Motion Prompts 索引 | **中止**——告知用户"没找到 design.md,这是新项目,请走 `frontend-interview-dualround` 前轮" |
| Glob `knowledge/design-docs/visual-anchors/*.md` 和 `*.png` | 拿到 Moodboard 选定版 + 已有 mockup + 帧序列图清单 | 若目录不存在——**降级标记**"visual-anchors 缺失",但不中止(早期项目可能跳过了阶段 4) |
| Glob `knowledge/design-docs/motion-prompts/*.md` | 拿到已写的微观动效 prompt 清单 | 若目录不存在——**降级标记**"motion-prompts 缺失",但不中止 |

### 0.2 老资产摘要回显

读完后给用户一段**摘要回显**(让用户确认老资产没读错):

```
已读老资产:
- 主语言(§0):<从 design.md §0 复制动词句式一句>
- 设计阶段:<frontmatter stage 字段>
- Moodboard:<visual-anchors/ 下的 locked 版本文件名>
- 核心动效:<motion-prompts/ 下的组件名清单>
- 产品类型:<展示型 / 工具型,从 research 阶段或后轮记录判断>
```

如果用户说"这里读错了" → 先纠正再往下,不直接进步骤 1。

### 0.3 deadline trigger

**中止条件**:
- design.md 不存在 → 中止,路由到 `frontend-interview-dualround` 前轮
- design.md 的主语言(§0)为空或是形容词堆砌 → 中止,路由到 `frontend-interview-dualround` 前轮
- design.md frontmatter 标记 `stage: 2-initial-draft` 或更早 → 中止,路由回 `frontend-design-research` + 后轮采访定稿

**警告但不中止**:
- visual-anchors/ 缺失 → 告知用户"这个项目跳过了阶段 4,本次若需出图建议补",但让用户决定
- motion-prompts/ 缺失且当前是展示型 → 告知用户"核心动效微观 prompt 缺失,若本次涉及动效建议现场生成"

---

## 步骤 1:Tier 判定

### 1.1 单问题判定

对用户问一次:

```
这次要加 / 改什么?选一个最贴近的:
A. 新增独立页面 / 路由(例:加 /blog、/pricing、全新 section 组)
B. 在已有页面加新 section / feature block(例:home 加 testimonials、product 加 compare 表)
C. 改现有 token / 单组件 / 动效参数(例:改主按钮颜色、调 hero duration 从 0.8s 到 0.6s)
```

用户答什么 → 对应进 T1 / T2 / T3。如果用户答不准:

- **跨档**(比如"加一个新页面,而且想改主色")→ 拆成两次执行:先 T1 加页面(不改主色),再 T3 调主色。**禁止**把两档合成一次,否则流程预算失控
- **介于中间**("加一个很大的 section,大到像小页面")→ 看是否独立路由,有独立路由走 T1,没独立路由走 T2
- **完全说不清**("就是想改改看")→ 回 `frontend-design-review` 做三段式追问,先把反馈语言化

### 1.2 判定记录

把 tier + 本轮范围描述写到 design.md §15 迭代日志段(见步骤 3)。

---

## 步骤 2:按 Tier 输出最小流程路径

### Tier 1:新页面(独立路由 / 全新 section 组)

**最小路径**:

```
读老资产(步骤 0 已完成)
  ↓
Gate 1:主语言沿用吗?
  → 沿用 → 继续
  → 想换方向 → 回场景 B(整站重写),不走 T1
  ↓
轻量后轮采访 ← frontend-interview-dualround(后轮,但只问新页面的架构/section/文案/交互)
  ↓
阶段 4B 局部 mockup ← frontend-visual-reference
  (跳 A Moodboard——方向已钉;跳 C 帧序列除非新页面引入新核心动效)
  ↓
阶段 6 代码 ← 开发实现剧本 + frontend-anti-slop-gate
  (读取顺序:design.md §0-§14 + visual-anchors/ 新 mockup + 已有 motion-prompts/)
  ↓
阶段 7 review + 反写 ← frontend-design-review
  (反写回 design.md:新增路由写 §5 Layout + §9 Example Prompts;新组件追加 §4;新动效追加 §14)
```

**老资产保护**:
- §0 主语言锁定,新页面必须在该语言下
- §2 Colors / §3 Typography / §5 Spacing 直接沿用,不改
- §4 Component Stylings 只增不改(可加新变体,不动老变体)
- §14 Motion Prompts 若新页面引入新核心动效,调用 `frontend-motion-prompt-writer` 新增一份

**完成标准**:
- [ ] 新页面 mockup 在 `visual-anchors/mockup-{new-page}.png` 就位
- [ ] 代码实现通过 `frontend-anti-slop-gate` 扫描
- [ ] design.md §5/§9 新增引用、§14 新动效(如有)入表
- [ ] design.md §15 迭代日志追加一条(tier / 范围 / 日期 / 影响段)

---

### Tier 2:新 section / feature block

**最小路径**:

```
读老资产(步骤 0 已完成)
  ↓
最小后轮采访 ← frontend-interview-dualround(后轮轻量模式,只问三类)
  - section 类:这个 section 的目标 / 主元素 / 视觉层级
  - 文案调性类:是否沿用既定调性?有没有参考句?
  - 交互路径类:用户从这个 section 期望做什么?(CTA / 继续滚 / 跳转)
  ↓
可选阶段 4B 单 section mockup ← frontend-visual-reference
  - 复杂 section(多列 / 有插图 / 有动效)→ 出图
  - 简单 section(标题 + 文字 + CTA)→ 跳过,直接进代码
  ↓
阶段 6 代码 ← 开发实现剧本 + frontend-anti-slop-gate
  (读取 design.md §4 Component Stylings + §9 Example Prompts + 该页已有 mockup)
  ↓
阶段 7 review + 反写 ← frontend-design-review
  (反写回 design.md:新 section 写入 §9 Example Prompts 对应页面;新组件变体追加 §4;新增文案调性参考句追加 §1 / §9)
```

**老资产保护**:
- §0-§3 所有 token 锁定
- §4 Component Stylings 优先复用已有组件,不为单个 section 新建组件
- §5 Layout Principles spacing 体系沿用,新 section 只能从已有 spacing scale 里选值

**完成标准**:
- [ ] 代码实现通过 `frontend-anti-slop-gate` 扫描
- [ ] 新 section 用的是 §4 已有组件或合理变体
- [ ] design.md §4 / §9 更新(若引入新组件变体)
- [ ] design.md §15 迭代日志追加一条

---

### Tier 3:微改(token / 单组件 / 单动效参数)

**最小路径**:

```
读老资产(只读 design.md 对应段,不扫 visual-anchors 全目录)
  ↓
直接阶段 6 改代码 ← 开发实现剧本 + frontend-anti-slop-gate
  (不做采访 / 不出图 / 不重 review 老方向)
  ↓
阶段 7 轻量 review + 反写 ← frontend-design-review(微改模式)
  (反写回 design.md 对应段:改 token 更新 §2/§3/§5/§6;改动效参数更新 §10 / §14 对应行)
```

**老资产保护**:
- 改的是**该段内部的值**,不改结构
- 改 token 必须同步所有引用处(用 Grep 扫用该 token 的组件)
- 改动效 duration / easing 必须更新 §10 量化语法 + §14 对应组件 prompt

**警戒边界**:
- Tier 3 看起来最小,但**最容易滑向 Tier 2**("改一个按钮颜色"→"加一个新按钮 variant"→"加一个带新按钮的新 section")。如果改着改着超出单 token / 单组件 / 单参数范围,**立即中止 Tier 3,回步骤 1 重判**

**完成标准**:
- [ ] 改动范围确实是单 token / 单组件 / 单参数
- [ ] design.md 对应段更新(hex / size / duration 等具体值)
- [ ] 所有引用处同步(用 Grep 扫)
- [ ] design.md §15 迭代日志追加一条

---

## 步骤 3:design.md §15 迭代日志

二开场景必须留痕。在 design.md 末尾加一段(如不存在则创建):

```markdown
## 15. Iteration Log

| Date | Tier | Scope | Affected Sections | Planner |
|---|---|---|---|---|
| 2026-04-21 | T1 | 加 /blog 路由 + 列表页 | §5 / §9 / §14 | frontend-iteration-planner |
| 2026-04-25 | T2 | home 加 testimonials section | §4 / §9 | frontend-iteration-planner |
| 2026-04-27 | T3 | 主按钮 primary 色从 #2b6cb0 → #1a4d8f | §2 | frontend-iteration-planner |
```

日志意义:
- 下次二开可以看历史避免撞车
- entropy-scan 和 project-retrospective-closedloop 可以从这里提取"本阶段视觉层变动"
- 老资产腐化判定的锚点(看 Affected Sections 集中在哪里)

---

## 场景 C 的硬边界

- **禁止合并 tier**:一次任务只走一档,跨档拆成多次
- **禁止绕过步骤 0**:即便用户说"我知道 design.md 里写什么",也要 Read 一次(模型记忆不可靠)
- **禁止在 T3 微改里加新组件**:那是 T2
- **禁止在 T1/T2 里换主语言或换 Moodboard 方向**:那是场景 B 整站重写
- **样板不入笔记库**:沿用阶段 4 的硬规则,本 skill 不产出任何需要住在 Obsidian 的样板
- **反 slop 横切仍生效**:T1/T2/T3 的阶段 6 代码环节都挂 `frontend-anti-slop-gate`

## 完成标准

- [ ] 步骤 0 三件套读取完成,摘要回显获用户确认
- [ ] 步骤 1 tier 判定明确(T1 / T2 / T3 之一),跨档情况已拆分
- [ ] 步骤 2 最小流程路径按 tier 执行,不多做、不少做
- [ ] 下游 skill(dualround 后轮 / visual-reference / design-review)已按流程触发
- [ ] design.md §15 迭代日志追加条目(tier / scope / affected sections / date)
- [ ] 所有产出(代码 / 新 mockup / 新 motion-prompts)回写到 design.md 对应段

## 与其他 skill / 剧本的边界

| 场景 | 走谁 |
|---|---|
| 全新项目从零启动 | `frontend-interview-dualround` 前轮(阶段 1) |
| 整站视觉重写(换主 Moodboard 方向) | 回阶段 2-4 重跑(research → dualround 后轮 → visual-reference) |
| 本 skill 判定完的后轮采访 | `frontend-interview-dualround`(按 tier 裁剪问题) |
| 本 skill 判定完的局部 mockup | `frontend-visual-reference`(跳 A 阶段,只走 B 单页 / 单 section) |
| 本 skill 判定完的动效微观 prompt 新增 | `frontend-motion-prompt-writer` |
| 本 skill 判定完的代码实现 | 开发实现剧本 + `frontend-anti-slop-gate` |
| 本 skill 判定完的 review | `frontend-design-review` |
| 本 skill 判定完的 design.md 反写 | `frontend-design-writer`(Round 2/3/4 对应段增量更新) |
| 六维骨架本身需要重做 | `frontend-design-research`(回阶段 2) |
| 纯 bug 修复 / 无 UI 表面 | 开发实现剧本 |
| 对外说明书 / README / 客户交付文档 | 走独立 `docs/` / `deliverables/`,不进 knowledge/ |

## 本 skill 的 deletion-spec

- **触发删除条件**:当模型能默认稳定识别"已定稿项目的扩展任务" + 主动执行"先读老资产再扩展"且三档 tier 裁剪被下游 skill 自行吸收(比如 dualround 能自己判定前轮/后轮/二开轻量后轮)时,本 skill 可降级为剧本层提醒或退场。若三档 tier 被证伪(实际执行发现两档够 / 四档更准)需重写。若二开场景整体被 req-suite 吸收进项目生命周期管理,本 skill 可并入 req-suite。
- **禁用方式**:从 `plugins/frontend-suite/skills/` 删除本目录即自动停止发现;下游 skill 的"边界表"里本 skill 对应行也要一并清理。
- **卸载清单**:
  - `plugins/frontend-suite/README.md` 的 8 skill 表格需回退到 7 skill
  - `plugins/frontend-suite/.claude-plugin/plugin.json` description 需回退
  - `plugins/.claude-plugin/marketplace.json` frontend-suite 描述需回退
  - `~/.agents/agent_prompt_core/shared/playbooks/前端设计_剧本.md` 场景 C 路由段需删除
  - 下游 skill(`frontend-design-research` / `frontend-interview-dualround` / `frontend-visual-reference` / `frontend-motion-prompt-writer` / `frontend-design-writer` / `frontend-design-review` / `frontend-anti-slop-gate`)的"边界表"里"二开 / 新页面 / 新 section / 微改"对应行需改回直接路由老版
  - 项目内 `knowledge/design-docs/design.md` §15 迭代日志段由用户自行决定保留或删除

Files in this skill

  • SKILL.md16.7 KB
  • references/packaged-knowledge/AI前端设计认知框架.md25 KB
  • references/packaged-knowledge/manifest.json228 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.