Skip to content

Commit 68b6b58

Browse files
Ruicursoragent
andcommitted
feat(rules): 编码类任务架构门禁与 ≥3 方案选型
新增 task-architecture-gate(L2):a–m 架构简报后须给出至少三套方案并由用户选定才可改码;登记 rules-index / AGENTS,并与多 Agent 编排衔接。 Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 85d8765 commit 68b6b58

4 files changed

Lines changed: 214 additions & 14 deletions

File tree

.cursor/rules/multi-agent-orchestration.mdc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ alwaysApply: false
55

66
# 多 Agent 编排与审计(硬性规则)
77

8-
> **规则加载**:本文件为 L2;编排类任务开始前须先完成 `rules-index.mdc` 中的「规则加载计划」。
8+
> **规则加载**:本文件为 L2;编排类任务开始前须先完成 `rules-index.mdc` 中的「规则加载计划」。
9+
> **架构门禁**:实现/修复类在派 Implementer 之前,Main/Architect 须先完成 `task-architecture-gate.mdc`(a–m 简报 + ≥3 方案)并经用户选定;未选定不得派改码。
910

1011
## 核心信条
1112

.cursor/rules/rules-index.mdc

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ alwaysApply: true
2020

2121
未输出计划不得进入实施。纯问答 / 单行 typo / 只读查文件 → 仅 L0,可跳过 L2。
2222

23+
**编码 / 改码 / 功能 / 修复 / 重构**(非豁免)→ 规则加载计划中须包含 `task-architecture-gate.mdc`;先完成该规则的架构简报(a–m)与 **≥3 套方案** 并经用户选定后,才允许改业务代码。
24+
2325
## 三层加载模型(对齐 Cursor 机制)
2426

2527
| 层 | Cursor 类型 | frontmatter | 成本 |
@@ -55,8 +57,9 @@ alwaysApply: true
5557
| 任务类型 | 必读规则 |
5658
|----------|----------|
5759
| **探索 / 查实现** | `codegraph.mdc` |
58-
| **架构 / 跨层改动** | `architecture-principles.mdc` |
59-
| **新功能 / 扩展能力** | `feature-completeness.mdc`, `requirement-clarification.mdc` |
60+
| **编码 / 修复 / 功能 / 重构(非豁免)** | `task-architecture-gate.mdc`(先于写码;≥3 方案选型) |
61+
| **架构 / 跨层改动** | `architecture-principles.mdc`(常与门禁同读) |
62+
| **新功能 / 扩展能力** | `feature-completeness.mdc`, `requirement-clarification.mdc`(选型**之后**完备交付) |
6063
| **多步骤实现 / 派 subagent** | `multi-agent-orchestration.mdc` |
6164
| **交付 / PR / 发版前** | `review-audit.mdc` |
6265
| **改代码后** | `doc-sync.mdc`(有架构/API 变更时) |
@@ -69,10 +72,11 @@ L2 未自动出现时:**Read** 对应 `.mdc`,勿凭记忆编造细则。
6972
## 核心信条(L0 极简,细则见 L2)
7073

7174
1. **先规则计划,再动手**
72-
2. **先 CodeGraph,再改码**(`codegraph_explore`;见 `codegraph.mdc`)
73-
3. **最小 diff**;新功能禁止半成品(见 `feature-completeness.mdc`)
74-
4. **密钥不进 Git**;外部输入须校验;Electron 沙箱隔离(见 `security.mdc`)
75-
5. **GitHub + Gitee** push/merge 后两端 tip 须一致(见 `dual-remote-sync.mdc`)
75+
2. **编码类先架构门禁**:a–m 简报 + ≥3 方案,用户选定后再改码(见 `task-architecture-gate.mdc`)
76+
3. **先 CodeGraph,再改码**(`codegraph_explore`;见 `codegraph.mdc`)
77+
4. **最小 diff**;新功能禁止半成品(见 `feature-completeness.mdc`)
78+
5. **密钥不进 Git**;外部输入须校验;Electron 沙箱隔离(见 `security.mdc`)
79+
6. **GitHub + Gitee** push/merge 后两端 tip 须一致(见 `dual-remote-sync.mdc`)
7680

7781
## 提交前速查(按需展开 L2)
7882

Lines changed: 193 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,193 @@
1+
---
2+
description: 编码/改码/功能/修复类任务的架构门禁 — 先 a–m 架构简报,再至少 3 套可选方案供用户选定后才动手;禁止幻想与半成品
3+
alwaysApply: false
4+
---
5+
6+
# 任务架构门禁(硬性 · 编码类前置)
7+
8+
> 本文件为 **L2**。凡编码/修改/功能实现/修复/重构(非豁免)任务,在调用写工具或改代码之前必须完成本门禁。
9+
> 与 `requirement-clarification.mdc`(方向不清先问)、`feature-completeness.mdc`(选定方案后的三维完备交付)衔接;本规则在二者之间:**建立架构观 → ≥3 方案选型 → 再实现**。
10+
11+
## 触发与豁免
12+
13+
### 必须执行(任一即触发)
14+
15+
- 功能实现、行为修复、逻辑重构
16+
- 新增/扩展能力(Hub / Provider / Agent tool / Schema / UI 主路径 / 桌面能力等)
17+
- 改动预计 ≥2 文件,或跨 ≥2 架构层,或改变用户可感知行为
18+
19+
### 豁免(须在规则加载计划中写明「架构门禁豁免:…」)
20+
21+
- 纯问答 / 只读查文件
22+
- 单行 typo、纯注释、纯文案(无逻辑变更)
23+
- 用户明确说「直接改 / 不要方案 / 跳过架构门禁」
24+
25+
**禁止**把「赶时间」当作豁免理由。
26+
27+
## 强制工作流(未完成不得写码)
28+
29+
```
30+
1. 事实采集(CodeGraph / 权威文档 / 既有接口)— 禁止凭经验臆造
31+
2. 架构简报(下方 a–m,逐项写清;未知标「待核」并查证,禁止留空臆填)
32+
3. ≥3 套可选方案(对比表)→ 请用户选定
33+
4. 用户选定后 → 再进入实现(并遵守 feature-completeness / security 等)
34+
```
35+
36+
未输出 **架构简报 + ≥3 方案** 并得到用户选择前:**禁止** Edit/Write 业务代码、禁止派 Implementer 改码。
37+
38+
## 架构简报(a–m · 必填)
39+
40+
输出时使用下列标题,每项 3~8 行要点即可;须基于**已查到的事实**(文件路径、符号、文档名),禁止「可能/大概/一般会」。
41+
42+
### a) 功能边界
43+
44+
- 本任务**做**什么 / **不做**什么
45+
- 成功标准(可验证)与非目标
46+
47+
### b) 衔接与能力归属
48+
49+
- 与现有功能的交界(谁调用谁、谁拥有状态)
50+
- 挂哪一层:UI / API / Hub / Engine / Provider / Storage / Agent(对照 `architecture-principles.mdc`)
51+
- 能力归属:复用已有注册点 vs 新注册;禁止平行另起一套
52+
53+
### c) 数据 / 类型 / 场景
54+
55+
- 涉及的现有类型与结构(列出符号/文件)
56+
- 是否新增类型/字段/Schema;场景矩阵(正常 / 空 / 部分配置 / 超限)
57+
58+
### d) 交互方式
59+
60+
- 用户 / 系统与本逻辑如何交互(UI 操作、CLI、IPC、HTTP/WS、Agent tool 等)
61+
- 同步 vs 异步;谁发起、谁响应、超时与取消
62+
63+
### e) 数据流与状态维护
64+
65+
- 数据从哪来到哪去(含缓存、持久化、内存态)
66+
- 状态机或关键状态变量;一致性与失效策略
67+
68+
### f) 内存 / CPU / 性能
69+
70+
- 对进程内存与 CPU 的影响(常驻?峰值?泄漏风险?)
71+
- 热路径是否避免多余分配/全量扫描;批处理、分页、背压、取消
72+
- 软/硬件约束下的「足够好」方案(勿过早微优,也勿无视明显浪费)
73+
74+
### g) 交互面统一
75+
76+
- UI / 命令行 / API / Agent 若多入口:语义、错误码、文案是否一致
77+
- 面向用户文案遵守 `ui-copy-standard.mdc`(若触及 UI)
78+
79+
### h) 生命周期与健康度
80+
81+
覆盖:正常运行、用户操作中、后台常驻、异常退出/崩溃、重启恢复、权限不足、弱网/离线(按场景取相关项)
82+
83+
- 数据是否可恢复 / 是否会脏写
84+
- 服务/句柄/定时器/订阅是否释放
85+
- 意外退出后的适配(幂等、迁移、降级提示)
86+
87+
### i) 产品级质量(零 BUG 取向)
88+
89+
- 主路径 + ≥1 失败/边界路径的验收点
90+
- 与相邻功能互不影响的证据
91+
- 对照 `feature-completeness.mdc`:选定后必须端到端可交付,禁止半成品
92+
93+
### j) 接口合同
94+
95+
- 列出本任务触及的 **全部** 数据/HTTP/IPC/MCP/库 API
96+
- 每个接口:参数、类型、可选/必填、错误形态、权威来源(源码或 `docs/*`)
97+
- **未在仓库/文档中核实的字段与行为,不得写入方案或代码**
98+
99+
### k) 大局观(禁止局部视野)
100+
101+
- 对调用方、被调用方、配置、发版、多平台的影响面
102+
- 明确「本次不改但必须兼容」的邻接面
103+
104+
### l) 行业最佳实践
105+
106+
- 至少对照 1 个可信做法(本仓既有模式优先,其次开源/业界惯例)
107+
- 写明采纳 / 舍弃原因(禁止只写「按最佳实践」空话)
108+
109+
### m) 基于事实,禁止幻想与偷懒
110+
111+
- 每条关键主张旁标注证据:`path` / 符号 / 文档章节
112+
- 禁止:半成品方案、凭经验编造 API、用「后续再补」换交付
113+
- 不确定 → 标「待核」并用 CodeGraph/Read/文档查证,或纳入需用户确认的问题
114+
115+
## ≥3 套可选方案(选型门禁)
116+
117+
在架构简报之后,必须给出 **至少 3 套** 可落地的互斥或差异化方案,用表对比:
118+
119+
| 维度 | 方案 1 | 方案 2 | 方案 3 |
120+
|------|--------|--------|--------|
121+
| 一句话思路 | | | |
122+
| 挂接层 / 改动面 | | | |
123+
| 对现有功能影响 | | | |
124+
| 性能 / 内存 | | | |
125+
| 风险与回滚 | | | |
126+
| 工作量(粗估) | | | |
127+
| 推荐? | 可选标注推荐及理由 | | |
128+
129+
然后明确提问:
130+
131+
```
132+
请选择方案 1 / 2 / 3(或组合说明),或补充约束后让我改方案。
133+
选定前我不会开始改代码。
134+
```
135+
136+
用户选定后,在实现开头用一行记录:`架构门禁:用户选定方案 N`。若用户要求调整,更新简报/方案表后再动手。
137+
138+
## 与其它规则的衔接
139+
140+
| 阶段 | 规则 |
141+
|------|------|
142+
| 方向/范围不清 | `requirement-clarification.mdc`(先问清,再写本简报) |
143+
| 事实采集 | `codegraph.mdc`(先 CodeGraph) |
144+
| 分层与注册 | `architecture-principles.mdc` |
145+
| 用户选定后的实现与验收 | `feature-completeness.mdc`、`security.mdc`、相关 L1 |
146+
| 多步骤派工 | `multi-agent-orchestration.mdc`(Architect/Explorer 产出须含本简报 + 三方案;Implementer 仅在选定后开工) |
147+
148+
## 反模式(禁止)
149+
150+
- ❌ 未做 a–m / 未给满 3 方案就开始写码
151+
- ❌ 方案只有「做」与「不做」凑数,或三个方案实质相同
152+
- ❌ 接口参数靠猜;文档/源码未核就当合同
153+
- ❌ 「先实现主路径,边界以后补」
154+
- ❌ 只优化局部文件,无视状态、生命周期与邻接功能
155+
- ❌ 用经验替代本仓库事实
156+
157+
## 输出骨架(复制填写)
158+
159+
```
160+
## 架构简报
161+
### a) 功能边界
162+
163+
### b) 衔接与能力归属
164+
165+
### c) 数据/类型/场景
166+
167+
### d) 交互方式
168+
169+
### e) 数据流与状态
170+
171+
### f) 内存/性能
172+
173+
### g) 交互面统一
174+
175+
### h) 生命周期与健康度
176+
177+
### i) 产品级质量
178+
179+
### j) 接口合同
180+
181+
### k) 大局观
182+
183+
### l) 最佳实践对照
184+
185+
### m) 证据与待核项
186+
187+
188+
## 可选方案(≥3)
189+
| 维度 | 方案1 | 方案2 | 方案3 |
190+
191+
192+
请选择方案 1 / 2 / 3(选定前不改代码)。
193+
```

AGENTS.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
> 细则按场景在 `.mimocode/skills/`;动手前 `skill` 加载对应 skill。
55
> `.cursor/rules/*.mdc` 为 Cursor IDE 专用,MiMoCode 不读取。
66
> **Cursor 渐进式规则**:仅 `.cursor/rules/rules-index.mdc`(L0)常驻;其余按路径 globs(L1)或任务意图 Agent 拉取 / Read(L2)。每任务须先输出「规则加载计划」再动手。
7+
> **编码门禁**:功能/修复/改码类须加载 `.cursor/rules/task-architecture-gate.mdc`,完成 a–m 架构简报与 ≥3 方案并经用户选定后才写码。
78
89
---
910

1011
## 核心信条
1112

1213
1. **先规则计划,再动手**(Cursor:见 `rules-index.mdc`;MiMoCode:见对应 skill)
13-
2. **先理解,再动手**:重要修改前必须向用户提问确认需求
14-
3. **先探索,再修改**:CodeGraph 定位后才能改代码
15-
4. **代码即文档,文档即代码**:架构/API/调用方式变更后必须同步文档
16-
5. **增量改动**:按用户最新指示做最小 diff;不顺手重构
17-
6. **禁止断代**:schema、用户数据、Hub/API 变更须兼容 + 幂等迁移
18-
7. **禁止半成品**:新功能须技术/用户/产品三维完备,兼容现有架构与安全;交付前复审回炉直至达标(见 R11)
19-
8. **多平台默认可达**:功能改动须兼顾 macOS / Linux / Windows,禁止本机单一依赖定制(见 R12)
14+
2. **编码类先架构门禁**:a–m 简报 + ≥3 方案,用户选定后再改码(Cursor:`task-architecture-gate.mdc`
15+
3. **先理解,再动手**:重要修改前必须向用户提问确认需求
16+
4. **先探索,再修改**:CodeGraph 定位后才能改代码
17+
5. **代码即文档,文档即代码**:架构/API/调用方式变更后必须同步文档
18+
6. **增量改动**:按用户最新指示做最小 diff;不顺手重构
19+
7. **禁止断代**:schema、用户数据、Hub/API 变更须兼容 + 幂等迁移
20+
8. **禁止半成品**:新功能须技术/用户/产品三维完备,兼容现有架构与安全;交付前复审回炉直至达标(见 R11)
21+
9. **多平台默认可达**:功能改动须兼顾 macOS / Linux / Windows,禁止本机单一依赖定制(见 R12)
2022

2123
---
2224

0 commit comments

Comments
 (0)