---
alwaysApply: true
---

# 规则调度中心

该规则始终生效，负责识别场景并调度其他规则：

**当用户提出开发需求时：**

- 分析需求，匹配 `@scenario/*.mdc` 场景文件
- 匹配成功 → 加载场景规则 + 依赖模块
- 匹配失败 → 按文件路径加载模块规范

**当加载任何规则时：**

- 展示规则链路
- 100% 执行规则，重点关注「必须遵守」「严格禁止」

**当生成代码前：**

- 读取 @foundation/project.mdc 获取项目信息
- 检查相关规则的约束条目

---

## 📋 场景匹配

**匹配机制**：每个场景文件的 `description` 字段包含触发条件和关键词。

**匹配优先级**：

| 优先级 | 匹配方式         | 示例                           |
| ------ | ---------------- | ------------------------------ |
| 1️⃣     | 触发条件完全匹配 | 用户提供 Figma 片段 + 要求生成 |
| 2️⃣     | 关键词匹配 ≥2 个 | 用户提到「设计稿」+「转组件」  |
| 3️⃣     | 关键词匹配 1 个  | 用户提到「f2c」                |
| ❌     | 无匹配           | 走通用开发流程                 |

**通用开发场景**（无特定场景匹配时）：

| 用户需求              | 加载规则            |
| --------------------- | ------------------- |
| 添加新功能 / 实现功能 | 基础规范 + 相关模块 |
| 代码重构 / 优化代码   | 基础规范 + 相关模块 |
| 修复 Bug / 解决问题   | 基础规范            |

---

## 📦 规则加载顺序

### 1. 场景规则（如适用）

匹配到场景后，加载对应规则：

- @scenario/f2c.mdc - 设计稿转组件
- @scenario/crud-page.mdc - CRUD 页面开发

> 💡 场景规则是自包含的工作流，按其定义的流程执行。

### 2. 模块规范（按需）

根据场景声明或文件路径，加载相关模块：

| 文件路径模式       | 加载模块                |
| ------------------ | ----------------------- |
| `src/components/*` | @modules/components.mdc |
| `src/pages/*`      | @modules/pages.mdc      |
| `src/hooks/*`      | @modules/hooks.mdc      |
| `src/api/*`        | @modules/api.mdc        |
| `src/store/*`      | @modules/store.mdc      |
| `src/router/*`     | @modules/router.mdc     |
| `src/utils/*`      | @modules/utils.mdc      |

### 3. 基础规范（必须）

所有任务都必须遵循：

1. @foundation/project.mdc - 项目信息（最先加载）⭐
2. @foundation/typescript.mdc - TypeScript 规范
3. @foundation/code-quality.mdc - 代码质量
4. @foundation/naming.mdc - 命名规范
5. @foundation/style.mdc - 样式规范
6. @foundation/git.mdc - Git 规范

### 4. 思维协议（始终）

@chain-of-thought/riper-5.mdc - RIPER-5 工作模式

- 每个响应必须声明模式：`[MODE: RESEARCH]`
- 分阶段执行：RESEARCH → INNOVATE → PLAN → EXECUTE → REVIEW
- 未经批准不得进入 EXECUTE 模式

---

## ⚡ 执行任务

### 展示规则链路

**⚠️ 强制要求：开始任务前，必须向用户展示本次加载的规则链路和依赖关系**

#### 展示格式

```
📚 规则链路: 🎯meta.mdc -> 🧠riper-5.mdc -> 📊project.mdc -> 🧩components.mdc
   📐foundation: naming.mdc, style.mdc, typescript.mdc, code-quality.mdc, comment.mdc
```

**说明**：

- 第一行：主调用链路（带 `.mdc` 后缀）
- 第二行：依赖规则（按层级分组）
- **Emoji 层级标识**：
  - 🎯 `[meta]` 元规则（始终加载）
  - 🧠 `[CoT]` 思维链（始终加载）
  - 📊 `project` 数据源（始终加载）
  - 🧩 `[modules]` 模块规范（按需加载）
  - 📐 `[foundation]` 基础规范（按需加载）
  - 🎬 `[scenario]` 场景规范（按需加载）
- **加载机制**：
  - **始终加载**：meta.mdc、riper-5.mdc、project.mdc 在所有场景下都会生效
  - **按需加载**：modules、foundation、scenario 层规则根据文件路径（globs）或场景智能匹配
  - **依赖继承**：scenario 层调用 modules 层时，自动继承 modules 的 foundation 依赖

#### 展示时机

| 情况              | 何时展示   | 展示内容                    |
| ----------------- | ---------- | --------------------------- |
| RESEARCH 模式开始 | 第一次回复 | 完整链路（格式 1 或格式 2） |
| PLAN 模式开始     | 制定计划时 | 简化链路（格式 2）          |
| 用户询问规则      | 随时       | 完整链路 + 依赖详情         |

#### 示例：开发组件场景

当用户说"创建 UserCard 组件"时，在 RESEARCH 模式第一次回复展示：

```
[MODE: RESEARCH]

📚 规则链路: 🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩components.mdc
   📐foundation: naming.mdc, style.mdc, typescript.mdc, code-quality.mdc, comment.mdc

开始分析需求...
```

### 强制执行

**生成代码前，必须检查相关规则的以下部分**：

| 章节          | 说明                 |
| ------------- | -------------------- |
| `## 必须遵守` | 所有 ✅ 条目必须执行 |
| `## 严格禁止` | 所有 ❌ 条目必须避免 |

---

## 📖 规则链路参考表

### Components 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩components.mdc
📐foundation: naming.mdc, style.mdc, typescript.mdc, code-quality.mdc, comment.mdc
```

### API 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩api.mdc
📐foundation: naming.mdc, comment.mdc, typescript.mdc, code-quality.mdc
```

### Pages 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩pages.mdc
📐foundation: naming.mdc, style.mdc
🧩modules: hooks.mdc, components.mdc, api.mdc
```

### Hooks 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩hooks.mdc
📐foundation: naming.mdc, typescript.mdc, code-quality.mdc
```

### Store 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩store.mdc
📐foundation: naming.mdc, typescript.mdc, code-quality.mdc
```

### Router 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩router.mdc
📐foundation: naming.mdc, typescript.mdc
```

### Utils 开发

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🧩utils.mdc
📐foundation: naming.mdc, typescript.mdc, comment.mdc, code-quality.mdc
```

### F2C 场景

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🎬f2c.mdc -> 🧩components.mdc
```

**说明**：复用 components.mdc 的完整链路（含 foundation 依赖）

### CRUD 场景

```
🎯meta.mdc -> 🧠riper-5.mdc -> 📊project -> 🎬crud-page.mdc
🧩modules: pages.mdc, api.mdc, components.mdc, hooks.mdc
```

**说明**：调用多个 modules 规则，各自继承对应的 foundation 依赖

---

## ⚠️ 冲突优先级

当规则冲突时，按以下顺序决定：

```
1. @foundation/project.mdc   # 项目信息（最高）
2. @scenario/*.mdc           # 场景规范
3. @modules/*.mdc            # 模块规范
4. @foundation/*（其他）     # 基础规范
```

---

## ✅ 质量验证

- ✅ 是否遵循场景流程（如适用）
- ✅ 是否符合模块规范
- ✅ 是否满足「必须遵守」条目
- ✅ 是否避免「严格禁止」条目
- ✅ 代码质量、类型安全
