|
1 | 1 | # AI 开发助手行为准则 |
2 | 2 |
|
3 | 3 | ## 项目技术栈与环境 |
| 4 | + |
4 | 5 | - **核心框架**: Vue 3 + Electron |
5 | 6 | - **UI 组件库**: **Naive UI** (严禁混用其他 UI 库) |
6 | 7 | - **包管理器**: **严格使用 `pnpm`** (严禁使用 npm/yarn) |
|
10 | 11 | ## 代码风格与规范 |
11 | 12 |
|
12 | 13 | ### 1. 注释规范 |
| 14 | + |
13 | 15 | - **语言**: 必须使用**中文**。 |
14 | 16 | - **格式**: 保持简洁,禁止长句、英文长文或带序号的注释。 |
15 | 17 | - 正确: `// 监听主进程消息` |
16 | 18 | - 错误: `// 1. listen to main process`, `// this function handles ipc...` |
17 | 19 |
|
18 | 20 | ### 2. UI 组件使用Naive UI |
| 21 | + |
19 | 22 | - **原则**: 严禁重复造轮子。所有通用交互必须优先使用 Naive UI 组件。 |
20 | 23 | - **处理方式**: 如果未找到合适组件,必须先询问用户,禁止擅自手写原生 CSS/HTML 组件。 |
21 | 24 | - 正确: 使用 `<n-button type="primary">`, `<n-modal>`, `<n-message-provider>` |
22 | 25 | - 错误: 手写 `<div class="my-btn">` 或引入 Element Plus 等其他库。 |
23 | 26 |
|
24 | 27 | ### 3. 图标 |
| 28 | + |
25 | 29 | - **原则**: 优先复用项目 `src/icons` 或现有图标方案。 |
26 | 30 | - **具体实现**: 严格遵循项目现有的图标组件用法。 |
27 | 31 | - 正确: `<SvgIcon :name="isLikeAlbum ? 'Favorite' : 'FavoriteBorder'" />` |
28 | 32 | - 错误: 擅自引入 `xicons` (除非用户明确允许) 或手写 SVG 代码。 |
29 | 33 |
|
30 | 34 | ### 4. Electron 特性规范 |
| 35 | + |
31 | 36 | - **进程安全**: 明确代码运行环境(Main vs Renderer)。不要在渲染进程中直接调用不安全的 Node.js API,应优先使用 IPC 通信或 Preload 脚本暴露的 API。 |
32 | 37 | - **通信规范**: 涉及 IPC 通信时,保持频道命名清晰且常量化。 |
33 | 38 |
|
34 | 39 | ### 5. 测试与清理 |
| 40 | + |
35 | 41 | - **临时文件**: 任务过程中生成的临时测试文件(如 `test_lrc.ts`),必须在任务结束前自动删除,严禁推送到代码库。 |
36 | 42 |
|
37 | 43 | ## 交互与思维链 |
38 | 44 |
|
39 | 45 | ### 1. 遇到困难多确认 |
| 46 | + |
40 | 47 | - **原则**: 禁止假设。当遇到不理解的概念(特别是 Electron 的通信逻辑或原生能力调用)时,**必须**暂停并向用户提问。 |
41 | 48 | - 禁止: “我猜用户是想在渲染进程直接读文件...” -> 导致安全报错。 |
42 | 49 | - 建议: “此处涉及文件系统操作,请确认是通过 IPC 调用主进程处理,还是使用现有的工具函数?” |
43 | 50 |
|
44 | 51 | ### 2. 复杂任务先规划 |
| 52 | + |
45 | 53 | - **文档驱动开发**: 遇到复杂功能(如窗口管理、系统托盘、复杂逻辑重构)时,**必须**先创建一个临时的 Markdown 文档(如 `name_of_task.md`)。 |
46 | 54 | - **流程**: 在文档中梳理思路 -> 展示给用户 -> 用户同意 -> 开始写代码。 |
47 | 55 |
|
48 | 56 | ### 3. 复用优先DRY原则 |
| 57 | + |
49 | 58 | - **原则**: 在编写新功能前,强制检索项目现存代码。 |
50 | 59 | - **自检**: “项目中是否已经有类似的 IPC 封装或 UI 组件?”如果是,直接复用。 |
51 | 60 |
|
52 | 61 | ### 4. 聊天方式 |
| 62 | + |
53 | 63 | - **原则**: 与用户保持中文对话,禁止使用英文或其他语言。 |
54 | 64 | - **具体实现**: 所有与用户的交互(包括问题、指令、代码展示等)都必须用中文进行。 |
55 | 65 |
|
56 | 66 | ## 严格合规声明 |
| 67 | + |
57 | 68 | - **指令等级**: Critical。 |
58 | | -- **违规后果**: 违反以上任何一条规则将被定义为**任务失败**,代码将被直接拒绝。请务必严格执行上述标准。 |
| 69 | +- **违规后果**: 违反以上任何一条规则将被定义为**任务失败**,代码将被直接拒绝。请务必严格执行上述标准。 |
0 commit comments