一个智能的 Trae IDE 项目规则管理系统,支持从 GitHub 或本地缓存自动拉取规则,根据项目类型自动匹配,实现规则的一键导入和自动化管理。
本项目旨在实现一个智能的 Trae 项目规则自动化管理系统。当你打开或新建一个 Trae 项目时,系统能够:
- 🔍 自动检测项目类型:识别 Android、Flutter、Python、PHP 等项目类型
- 📥 自动拉取规则:从 GitHub 仓库或本地缓存文件夹获取对应的规则文件
- 🎯 智能匹配规则:根据项目类型自动匹配并导入相应的规则
- 🚀 一键导入:支持用户通过自然语言指令触发规则导入
- 🎨 UI 设计还原:支持蓝湖设计图的一比一像素还原规则
系统能够自动识别以下项目类型:
移动端/跨平台:
- Flutter 项目:存在
pubspec.yaml(支持多平台:Android、iOS、Web 等,包含 Platform Channel 相关内容) - Android 项目:存在
settings.gradle或根目录build.gradle - React Native 项目:存在
package.json且依赖中包含react-native - iOS 项目:存在
*.xcodeproj或*.xcworkspace文件
Web 前端:
- Next.js 项目:存在
package.json且依赖中包含next - React 项目:存在
package.json且依赖中包含react - Vue 项目:存在
package.json且依赖中包含vue
后端/全栈:
- Node.js 项目:存在
package.json且为后端项目 - Spring Boot 项目:存在
pom.xml或build.gradle且包含 Spring Boot 依赖
其他:
- Python 项目:存在
requirements.txt或pyproject.toml - PHP 项目:存在
composer.json - TypeScript 项目:存在
tsconfig.json - Kotlin/Java 项目:根据主要代码文件类型判断
- GitHub 仓库:
https://github.com/yfcyfc123234/trae-rules - 本地缓存:
C:\Users\Administrator\Desktop\trae-rules
- 优先从本地缓存拉取:如果本地存在规则文件,直接使用
- GitHub 作为备用:本地不存在时从 GitHub 拉取
- 自动更新缓存:从 GitHub 拉取成功后更新本地缓存
位于 common-project-rules/ 目录,适用于所有项目,自动导入到用户项目:
user-base-rule.mdc- 用户基础规则(个人偏好、沟通风格等)git-automation.mdc- Git 自动化规则ui-design-reconstruction.mdc- UI 设计图还原规则documentation-format.mdc- 文档格式规范规则batch-file-operations.mdc- 批量文件操作优化规则hardware-limitations.mdc- 硬件限制规则
位于 rules-management/ 目录,不导入到用户项目,只用于 AI 分析如何导入规则:
auto-import-rules.mdc- 规则自动导入规则project-rules-auto-management.mdc- 项目规则管理规则rules-conflict-management.mdc- 规则冲突管理规则github-rules-sync.mdc- GitHub 同步规则
位于根目录,根据项目类型匹配:
移动端/跨平台:
android-project.mdc- Android 项目规则flutter-project.mdc- Flutter 项目规则(支持多平台,包含 Platform Channel 相关内容)react-native-project.mdc- React Native 项目规则ios-project.mdc- iOS 项目规则
Web 前端:
react-project.mdc- React 项目规则vue-project.mdc- Vue 项目规则nextjs-project.mdc- Next.js 项目规则
后端/全栈:
nodejs-project.mdc- Node.js 项目规则spring-boot-project.mdc- Spring Boot 项目规则
其他:
python-project.mdc- Python 项目规则php-project.mdc- PHP 项目规则typescript-project.mdc- TypeScript 项目规则kotlin-project.mdc- Kotlin 项目规则java-project.mdc- Java 项目规则
- 打开项目时:检测到
.trae/rules/目录为空时自动执行 - 提示模式:自动检测后提示用户确认是否导入
支持以下自然语言指令:
导入规则:
- "导入规则"
- "帮我导入规则"
- "导入安卓规则"
- "导入 Flutter 规则"
- "这是 Flutter 项目,导入规则"
- "这是一个 Android 项目"
更新规则:
- "更新规则"
- "同步规则"
- "刷新规则"
- "重新导入规则"
- 当规则项目数据发生变化时,使用这些指令更新当前项目的规则文件
当用户提供蓝湖 UI 设计图(效果图 + 切图)时:
- 自动识别:AI 自动识别图片中的设计元素和尺寸
- 一比一还原:尽量按照设计图一比一还原页面
- 沉浸式栏处理:针对 APP 项目的沉浸式状态栏进行特殊处理
- 用户补充:支持用户补充描述,AI 根据描述和图片还原
trae-rules/
├── README.md # 项目说明文档(本文件)
├── common-project-rules/ # 通用规则(适用于所有项目,自动导入)
│ ├── user-base-rule.mdc # 用户基础规则
│ ├── git-automation.mdc # Git 自动化规则
│ ├── ui-design-reconstruction.mdc # UI 设计图还原规则
│ ├── batch-file-operations.mdc # 批量文件操作优化规则
│ ├── hardware-limitations.mdc # 硬件限制规则
│ └── documentation-format.mdc # 文档格式规范规则
├── rules-management/ # 规则管理文件(不导入到用户项目)
│ ├── auto-import-rules.mdc # 规则自动导入规则
│ ├── project-rules-auto-management.mdc # 项目规则管理规则
│ ├── rules-conflict-management.mdc # 规则冲突管理规则
│ └── github-rules-sync.mdc # GitHub 同步规则
├── android-project.mdc # Android 项目规则
├── flutter-project.mdc # Flutter 项目规则(支持多平台)
├── react-native-project.mdc # React Native 项目规则
├── ios-project.mdc # iOS 项目规则
├── react-project.mdc # React 项目规则
├── vue-project.mdc # Vue 项目规则
├── nextjs-project.mdc # Next.js 项目规则
├── typescript-project.mdc # TypeScript 项目规则
├── nodejs-project.mdc # Node.js 项目规则
├── spring-boot-project.mdc # Spring Boot 项目规则
├── python-project.mdc # Python 项目规则
├── php-project.mdc # PHP 项目规则
├── kotlin-project.mdc # Kotlin 项目规则
└── java-project.mdc # Java 项目规则
当你打开一个新的 Trae 项目时:
- 系统自动检测项目类型
- 如果
.trae/rules/目录为空,自动提示是否导入规则 - 确认后自动从 GitHub 或本地缓存拉取规则
- 规则文件自动保存到
.trae/rules/目录
在 Trae 中与 AI 对话:
用户:帮我导入规则
AI:检测到这是一个 Flutter 项目,正在从 GitHub 拉取规则...
AI:✅ 已成功导入规则文件到 .trae/rules/ 目录
在空白文件夹中:
用户:这是一个 Flutter 项目,导入规则
AI:正在为 Flutter 项目导入规则...
AI:✅ 已成功导入 Flutter 项目规则
用户:[上传蓝湖设计图]
用户:帮我根据这个设计图还原页面,这是沉浸式栏的 APP 项目
AI:正在分析设计图,将按照一比一像素还原...
- 仓库地址:
https://github.com/yfcyfc123234/trae-rules - 默认分支:
main - Raw Content URL:
https://raw.githubusercontent.com/yfcyfc123234/trae-rules/main/
- Windows:
C:\Users\Administrator\Desktop\trae-rules - 如需修改,可在规则文件中更新路径配置
所有规则文件必须包含 frontmatter 元数据:
---
alwaysApply: true
---
# 规则标题
规则内容...项目中的所有文档(包括 Markdown 文档、代码注释、配置文件注释等)都应该遵循统一的格式规范,避免格式警告。
详细规范请参考 documentation-format.mdc 文件,主要包括:
- Markdown 文档格式:标题、列表、代码块、链接、表格等格式规范
- 代码注释格式:函数注释、类注释、API 文档注释格式
- 配置文件注释:配置文件中的注释格式
- 格式检查清单:文档创建和修改后的检查项
- 常见问题避免:避免 Markdown lint 等工具的格式警告
遵循这些规范可以:
- ✅ 保持文档格式统一
- ✅ 避免格式警告
- ✅ 提高文档可读性
- ✅ 便于维护和更新
-
触发检测
- 检测
.trae/rules/目录状态 - 识别用户指令或自动触发
- 检测
-
项目类型识别
- 自动检测项目类型
- 支持用户明确指定
-
冲突检测(重要)
- 如果
.trae/rules/目录已存在且不为空,执行冲突检测 - 识别用户自定义规则文件(绝对不触碰)
- 检测规则文件是否被用户修改
- 如果
-
规则来源选择
- 优先从本地缓存拉取
- 本地不存在时从 GitHub 拉取
-
规则文件拉取
- 拉取通用规则(
common-project-rules/目录,自动导入到用户项目) - 拉取项目规则(根据项目类型)
- 不拉取规则管理文件(
rules-management/目录,只用于 AI 分析如何导入规则)
- 拉取通用规则(
-
冲突处理
- 未修改的文件:直接更新
- 已修改的文件:询问用户处理方式(覆盖还原/保留/智能合并)
- 用户自定义规则:跳过,不触碰
-
文件验证和处理
- 验证 frontmatter 格式
- 处理文件名冲突(使用递增后缀)
-
保存到项目
- 创建
.trae/rules/目录 - 保存所有规则文件
- 创建
-
完成提示
- 显示成功导入的规则文件列表
- 说明哪些文件已更新、哪些已保留、哪些已合并
系统能够智能处理规则文件冲突,保护用户自定义规则:
项目中的规则文件分为三类:
- 本项目规则文件:从规则库导入的项目类型规则(如
flutter-rules.mdc) - 通用规则文件:从规则库导入的通用规则(如
user-base-rule.mdc) - 用户自定义规则文件:不属于规则库的文件(如
custom-rules.mdc)
- 用户自定义规则文件:绝对不触碰,完全保留
- 未修改的规则文件:可以直接更新
- 已修改的规则文件:需要用户确认处理方式
当检测到规则文件被用户修改时,提供三种处理选项:
- 覆盖还原:放弃用户修改,恢复到规则库最新版本
- 保留用户版本:保留用户修改,不更新该文件
- 智能合并:在用户修改基础上,合并规则库的更新内容(推荐)
- 保留用户新增的内容
- 保留用户修改的内容
- 合并规则库的新增和更新内容
- 生成合并报告供用户确认
详细说明请参考 rules-management/rules-conflict-management.mdc 文件。
-
一比一像素还原
- 严格按照设计图的尺寸、颜色、字体、间距还原
- 使用精确的像素值,避免近似值
-
沉浸式状态栏处理
- APP 项目通常使用沉浸式状态栏
- 状态栏颜色与页面背景色一致
- 内容区域需要考虑状态栏高度
-
切图资源使用
- 优先使用提供的切图资源
- 切图命名规范,便于引用
- 考虑不同屏幕密度的适配
-
响应式适配
- 在保证设计还原的前提下,考虑不同屏幕尺寸
- 使用相对单位(dp、sp)而非固定像素
- 关键元素保持设计图比例
-
设计图分析
- AI 自动识别设计图中的元素
- 提取颜色、字体、尺寸、间距等信息
-
用户补充
- 支持用户补充描述(如特殊交互、动画效果等)
- AI 结合设计图和用户描述进行还原
-
代码生成
- 生成符合项目规范的代码
- 确保代码可运行、可维护
移动端/跨平台:
-
Flutter 项目
- 条件:
pubspec.yaml - 规则:
flutter-project.mdc - 说明:Flutter 项目天然支持多平台(Android、iOS、Web 等),Platform Channel 相关内容已包含在规则中
- 条件:
-
React Native 项目
- 条件:
package.json+ 依赖包含react-native - 规则:
react-native-project.mdc
- 条件:
-
Android 项目
- 条件:
settings.gradle或build.gradle,且无pubspec.yaml - 规则:
android-project.mdc
- 条件:
-
iOS 项目
- 条件:
*.xcodeproj或*.xcworkspace或Podfile - 规则:
ios-project.mdc
- 条件:
Web 前端:
-
Next.js 项目
- 条件:
package.json+ 依赖包含next - 规则:
nextjs-project.mdc
- 条件:
-
React 项目
- 条件:
package.json+ 依赖包含react,且无react-native和next - 规则:
react-project.mdc
- 条件:
-
Vue 项目
- 条件:
package.json+ 依赖包含vue - 规则:
vue-project.mdc
- 条件:
后端/全栈:
-
Spring Boot 项目
- 条件:
pom.xml或build.gradle+ 包含 Spring Boot 依赖 - 规则:
spring-boot-project.mdc
- 条件:
-
Node.js 项目
- 条件:
package.json+ 后端项目 - 规则:
nodejs-project.mdc
- 条件:
其他:
-
Python 项目
- 条件:
requirements.txt或pyproject.toml - 规则:
python-project.mdc
- 条件:
-
PHP 项目
- 条件:
composer.json - 规则:
php-project.mdc
- 条件:
-
TypeScript 项目
- 条件:
tsconfig.json - 规则:
typescript-project.mdc
- 条件:
-
其他类型
- 根据主要代码文件类型判断
.kt文件为主 →kotlin-project.mdc.java文件为主 →java-project.mdc
- ✅ 项目类型自动检测
- ✅ GitHub 规则拉取
- ✅ 本地缓存支持
- ✅ 规则文件自动导入
- ✅ 用户指令识别
⚠️ 蓝湖 UI 设计图还原规则(需要进一步完善)
-
规则版本管理
- 支持规则文件版本控制
- 规则更新通知机制
-
多仓库支持
- 支持配置多个 GitHub 仓库
- 支持私有仓库(需要认证)
-
规则模板系统
- 支持自定义规则模板
- 规则模板市场
-
规则冲突处理 ✅ 已实现
- ✅ 智能合并规则冲突
- ✅ 规则优先级管理
- ✅ 用户自定义规则保护机制
-
性能优化
- 规则文件缓存机制
- 增量更新支持
- 在根目录创建新的规则文件,如
react-project.mdc - 在
rules-management/project-rules-auto-management.mdc中添加项目类型检测逻辑 - 在
rules-management/github-rules-sync.mdc中添加项目类型映射 - 更新本 README 文档
- 直接编辑对应的
.mdc文件 - 确保包含完整的 frontmatter
- 遵循现有的规则文件格式
- 提交到 GitHub 仓库
本项目采用 MIT 许可证。
- 首次使用:建议先手动导入一次规则,熟悉流程
- 规则更新:定期从 GitHub 同步最新规则
- 自定义规则:可以在项目本地
.trae/rules/目录添加项目特定规则 - 规则优先级:项目规则 > 通用规则(项目特定规则优先)
如遇到问题,请:
- 检查网络连接(GitHub 拉取需要网络)
- 检查规则文件格式(必须包含 frontmatter)
- 检查项目类型检测是否正确
- 在 GitHub 仓库提交 Issue
最后更新:2025-01-27
维护者:yfcyfc123234