This commit is contained in:
smart
2026-06-12 01:27:11 +08:00
commit bbe619d386
33 changed files with 6234 additions and 0 deletions
+178
View File
@@ -0,0 +1,178 @@
# 第 1 天到第 2 天
<div class="grid grid-cols-2 gap-8 mt-8">
<div class="p-4 rounded-xl bg-white/5 border border-white/10">
**第 1 天:** 让 TRAE 看懂若依代码
</div>
<div class="p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30">
**第 2 天:** 让 TRAE 按团队规则改若依代码
核心变化:从代码理解到研发治理
</div>
</div>
<!--
昨天我们使用若依作为真实开源项目,学习了如何让 TRAE 理解陌生代码库。
今天我们进入第二阶段:上下文工程与规则体系。
如果说第一天是“让 AI 看懂若依”,今天就是“让 AI 按团队规则分析、修改和检查若依”。
当团队多人都使用 AI 时,必须有统一上下文、统一 rules、统一验收标准,否则 AI 会带来不一致甚至风险。
-->
---
# 若依场景下的团队规则问题
<div class="mt-6 text-sm">
**若依类后台项目常见风险:**
- 绕过权限,页面直接调接口
- 按钮权限当安全边界
- 接口缺少权限注解
- 操作日志缺失
- 代码生成后直接上线
- 敏感信息进入日志
</div>
<!--
若依这类后台系统,最容易出现的问题不是页面不好看,而是权限、日志、接口边界和生成代码质量。
AI 可能在页面里直接新增接口调用;只做前端按钮隐藏;没有检查后端权限注解;新增敏感操作但没有操作日志;用代码生成器生成 CRUD 后直接上线。
今天要把这些隐性开发要求写成中文规则,让 TRAE 在后续协作中长期遵守。
-->
---
# 今天三个关键词
<div class="grid grid-cols-3 gap-6 mt-10">
<div class="text-center p-4 rounded-xl bg-blue-500/10 border border-blue-500/30">
<div class="text-2xl mb-2">🎯</div>
<div class="font-bold">上下文</div>
<div class="text-xs text-gray-400">决定 AI 看什么</div>
</div>
<div class="text-center p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30">
<div class="text-2xl mb-2">📏</div>
<div class="font-bold">规则</div>
<div class="text-xs text-gray-400">决定 AI 怎么做</div>
</div>
<div class="text-center p-4 rounded-xl bg-amber-500/10 border border-amber-500/30">
<div class="text-2xl mb-2">📦</div>
<div class="font-bold">资产化</div>
<div class="text-xs text-gray-400">决定团队怎么复用</div>
</div>
</div>
<!--
今天仍然是三个关键词。
上下文决定 AI 看什么:看整个若依项目,还是只看用户管理模块,还是只看某个 Controller。
规则决定 AI 怎么做:不能绕过权限、不能遗漏操作日志、不能把前端权限当安全边界。
资产化决定团队怎么复用:好的 Prompt、rules、报告模板都应该进入团队资产库。
-->
---
# 模块 1:若依任务为什么要讲清楚?
<div class="mt-6 p-4 rounded-xl bg-red-500/10 border border-red-500/30 text-sm">
**模糊任务:** 帮我优化用户管理模块
**问题:** 目标不清 · 范围不清 · 约束不清 · 输出不清 · 验收不清
</div>
<!--
在若依项目里,如果你直接问“帮我优化用户管理模块”,AI 很难给出可靠结果。
优化什么?权限?接口?页面?表单?数据权限?操作日志?代码结构?测试?
范围不清,AI 就会自由发挥。
所以若依这种后台系统,更需要上下文工程。
-->
---
# 好任务五要素
<div class="mt-8 text-center">
<div class="inline-block p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 px-8 text-lg font-bold">
好任务 = 目标 + 范围 + 约束 + 输出格式 + 验收标准
</div>
</div>
<!--
一个合格的 AI 编程任务,必须包含五要素。
目标:到底要分析或修改什么。
范围:只看哪些模块,不看哪些模块。
约束:不能做什么,必须遵守什么。
输出格式:报告、表格、代码 diff、测试用例。
验收标准:什么结果算合格。
这五项越清楚,AI 输出越稳定。
-->
---
# 若依坏 Prompt 示例
<div class="mt-6 p-4 rounded-xl bg-red-500/10 border border-red-500/30 text-sm">
```
@workspace 帮我检查若依权限有没有问题。
```
问题:权限包含页面权限、按钮权限、接口权限、数据权限。"有没有问题"太泛。
</div>
<!--
这个 Prompt 看起来合理,但其实太大。
“权限”包含页面权限、按钮权限、接口权限、数据权限。
“有没有问题”也太泛:是安全风险、实现缺陷、配置问题,还是调用链路不清?
没有范围,没有约束,没有输出格式,也没有验收标准。
-->
---
# 若依好 Prompt 示例
<div class="mt-4 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm">
```
@workspace 请分析若依"用户管理页面按钮权限"的调用链路。
范围:只分析用户管理页面的新增、修改、删除按钮权限。
约束:不修改代码;结论标注文件和函数;区分前端权限和后端接口权限。
输出:表格。
验收:覆盖按钮、权限字符、前端判断、后端接口、权限注解、不确定点。
```
</div>
<!--
这个 Prompt 就清楚很多。
目标是用户管理页面按钮权限,不是整个权限系统。
范围限定新增、修改、删除按钮。
约束要求不修改代码,结论标注文件和函数,区分前端权限和后端权限。
验收标准要求覆盖按钮、权限字符、前端判断、后端接口、权限注解和不确定点。
这就是合格任务。
-->
---
# 上下文组织清单
<div class="mt-6 text-sm">
| 要素 | 说明 |
|------|------|
| 目标 | 到底要分析或修改什么 |
| 范围 | 只看哪些模块 |
| 输入文件 | 提供哪些文件 |
| 约束 | 不能做什么 |
| 输出格式 | 报告/表格/diff |
| 验收标准 | 什么结果算合格 |
| 不确定点 | 需要人工判断的 |
</div>
<!--
以后大家在若依项目里使用 TRAE,可以先填这张清单。
比如分析角色权限保存链路,需要提供角色页面、角色 API、后端角色 Controller、Service、菜单关系表、操作日志相关代码。
同时要约束 AI:不要改代码,不要猜,不要把按钮权限当安全边界。
-->
+76
View File
@@ -0,0 +1,76 @@
# 若依版 rules 核心条款
<div class="mt-4 space-y-2 text-sm">
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">1. 前端按钮权限不是安全边界</div>
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">2. 敏感接口必须检查后端权限</div>
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">3. 敏感操作必须检查操作日志</div>
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">4. 列表查询必须考虑数据权限</div>
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">5. 代码生成结果不得直接上线</div>
<div class="p-2 rounded-lg bg-blue-900/20 border border-blue-500/30">6. 不确定内容必须标注</div>
</div>
<!--
若依版 rules 的核心条款可以浓缩成六句:
前端按钮权限不是安全边界。
敏感接口必须检查后端权限。
敏感操作必须检查操作日志。
列表查询必须考虑数据权限。
代码生成结果不得直接上线。
不确定内容必须标注。
只要这六条落实,AI 在若依项目里的使用风险会明显降低。
-->
---
# 第 2 天交付物
<div class="grid grid-cols-2 gap-3 mt-6 text-sm">
<div class="p-3 rounded-xl bg-blue-500/10 border border-blue-500/30">01 上下文组织清单</div>
<div class="p-3 rounded-xl bg-blue-500/10 border border-blue-500/30">02 上下文引用模板</div>
<div class="p-3 rounded-xl bg-blue-500/10 border border-blue-500/30">03 幻觉控制 Prompt</div>
<div class="p-3 rounded-xl bg-blue-500/10 border border-blue-500/30">04 gitignore 忽略配置样例</div>
<div class="p-3 rounded-xl bg-emerald-500/10 border border-emerald-500/30">05 若依中文安全规则</div>
<div class="p-3 rounded-xl bg-emerald-500/10 border border-emerald-500/30">06 若依编码测试规则</div>
<div class="p-3 rounded-xl bg-emerald-500/10 border border-emerald-500/30">07 若依前端规则</div>
<div class="p-3 rounded-xl bg-amber-500/10 border border-amber-500/30">08 若依 AI 资产库目录</div>
<div class="p-3 rounded-xl bg-amber-500/10 border border-amber-500/30">09 规则验收清单</div>
<div class="p-3 rounded-xl bg-amber-500/10 border border-amber-500/30">10 若依版 rules.md v0.1</div>
</div>
<!--
第 2 天最终交付十个产物。
它们不是零散作业,而是一套若依项目 AI 协作规范资产。
以后团队在若依或类似后台系统中使用 TRAE,就可以复用这些清单、Prompt、规则和模板。
-->
---
layout: center
class: text-center
---
# 两天课程总结
<div class="grid grid-cols-2 gap-8 mt-8 text-left max-w-3xl mx-auto">
<div class="p-4 rounded-xl bg-white/5 border border-white/10">
**第 1 天:用 TRAE 看懂若依**
- 看结构 · 找入口 · 追链路 · 查依据
</div>
<div class="p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30">
**第 2 天:让 TRAE 按规则参与若依研发**
- 组织上下文 · 控制幻觉 · 编写 rules · 沉淀资产
</div>
</div>
<br/>
> **最终能力:读得懂 · 问得准 · 查得实 · 改得稳 · 可复用**
<!--
两天课程到这里形成闭环。
第一天,我们学习如何用 TRAE 看懂若依代码:看结构、找入口、追链路、查依据。
第二天,我们学习如何让 TRAE 按团队规则参与若依研发:组织上下文、控制幻觉、编写 rules、沉淀资产。
最终目标是五个字:读得懂,问得准,查得实,改得稳,可复用。
这就是 AI 编程在企业研发里的真正价值。
-->
+106
View File
@@ -0,0 +1,106 @@
# 模块 2:四类上下文
<div class="grid grid-cols-2 gap-4 mt-6 text-sm">
<div class="p-3 rounded-xl bg-blue-500/10 border border-blue-500/30">
**@workspace:找路** — 找入口、文件、模块
</div>
<div class="p-3 rounded-xl bg-emerald-500/10 border border-emerald-500/30">
**#File:看文件** — 分析文件间调用关系
</div>
<div class="p-3 rounded-xl bg-amber-500/10 border border-amber-500/30">
**#Code:抠细节** — 分析某个方法
</div>
<div class="p-3 rounded-xl bg-purple-500/10 border border-purple-500/30">
**#Web:查外部** — 查框架文档,但必须回代码验证
</div>
</div>
<!--
若依项目比较大,所以更要正确选择上下文。
@workspace 用来找入口,比如找 getInfo、getRouters、按钮权限指令。
#File 用来分析相关文件,比如用户管理页面和用户 Controller。
#Code 用来分析某个方法,比如 handleLogin 或某个权限判断函数。
#Web 用来查框架文档或最佳实践,但不能替代项目代码依据。
-->
---
# @workspace 找路示例
<div class="mt-4 p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 text-sm">
```
@workspace 请找出若依中与"用户登录后菜单路由生成"相关的前后端文件。
要求:标注文件路径 · 标注函数或类名 · 区分事实和推测 · 列出不确定点
```
</div>
<!--
这个 Prompt 适合任务早期。
我们不知道具体文件在哪里,就让 @workspace 先找入口。
它应该帮我们找出前端登录、权限 store、路由守卫、getRouters API,以及后端菜单路由接口相关文件。
但所有结论都必须标注依据。
-->
---
# #File 聚焦示例
<div class="mt-4 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm">
```
#File 请分析这些文件中登录、用户信息、菜单路由的调用关系。
重点:谁调用login · 谁调用getInfo · 谁调用getRouters ·
权限信息保存在哪里 · 路由在哪里动态生成
```
</div>
<!--
当我们找到相关文件后,就用 #File 聚焦。
这时目标不是全局找,而是分析这些文件之间的调用关系。
谁调用 login,谁调用 getInfo,谁调用 getRouters,权限信息保存在哪里,路由在哪里动态生成。
-->
---
# #Code 抠细节示例
<div class="mt-4 p-4 rounded-xl bg-amber-500/10 border border-amber-500/30 text-sm">
```
#Code 请分析 handleLogin 函数。
重点:参数来源 · 调用哪个API · token如何保存 ·
失败如何处理 · loading是否恢复 · 登录成功后跳转哪里
```
</div>
<!--
如果我们只分析登录函数,就用 #Code。
重点看参数来源、API 调用、token 保存、失败处理、loading 恢复和登录成功后的跳转。
这类函数级分析非常适合发现细节风险。
-->
---
# #Web 使用边界
<div class="mt-6 text-sm">
**可查:** Spring Security 权限实践 · Vue Router 动态路由 · 前端按钮权限最佳实践
**但:** 若依当前实现必须回到代码验证。外部资料只能提供参考,不能替代项目事实。
</div>
<!--
#Web 可以查外部资料,比如 Spring Security 权限实践、Vue Router 动态路由、按钮权限最佳实践。
但若依当前实现如何,必须回到代码里验证。
外部资料只能提供参考,不能替代项目事实。
-->
+113
View File
@@ -0,0 +1,113 @@
# 模块 3:若依场景中的幻觉死循环
<div class="mt-6 text-sm">
**常见表现:**
- AI 说所有接口都有权限校验 → 但不给 Controller 依据
- AI 说操作日志完整 → 但不给注解或 AOP 依据
- AI 说按钮权限安全 → 但只看到前端代码
</div>
<!--
在若依项目里,AI 很容易因为它“知道若依是权限系统”就过度自信。
它说所有接口都有权限校验,但不给 Controller 依据。
它说操作日志完整,但不给注解或 AOP 依据。
它说按钮权限安全,但只看到了前端按钮隐藏。
这就是需要切断的幻觉。
-->
---
# 幻觉控制顺序
<div class="grid grid-cols-3 gap-4 mt-10">
<div class="text-center p-6 rounded-xl bg-blue-500/10 border border-blue-500/30">
<div class="text-2xl mb-2">1️⃣</div>
<div class="font-bold">先找证据</div>
</div>
<div class="text-center p-6 rounded-xl bg-emerald-500/10 border border-emerald-500/30">
<div class="text-2xl mb-2">2️⃣</div>
<div class="font-bold">再判断原因</div>
</div>
<div class="text-center p-6 rounded-xl bg-amber-500/10 border border-amber-500/30">
<div class="text-2xl mb-2">3️⃣</div>
<div class="font-bold">最后给方案</div>
</div>
</div>
<!--
遇到这种情况,不要继续让 AI 给结论。
先让它找证据:文件、类、方法、注解、调用关系。
然后再判断问题。
最后才给方案。
-->
---
# 若依证据收集 Prompt
<div class="mt-4 p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 text-sm">
```
请先不要修改代码。请围绕"用户管理删除按钮权限"收集证据:
1. 前端按钮在哪个页面
2. 使用了哪个权限字符
3. 前端如何判断按钮显示
4. 后端删除接口在哪里
5. Controller 是否有权限注解
6. 是否记录操作日志
7. 无法确认的内容
```
</div>
<!--
这是若依场景下的证据收集 Prompt。
它没有直接问“有没有风险”,而是先要求 AI 找证据。
前端按钮在哪里,权限字符是什么,前端怎么判断,后端删除接口在哪里,Controller 是否有权限注解,是否记录操作日志,哪些无法确认。
这些证据收集完,才能判断风险。
-->
---
# 原因判断 Prompt
<div class="mt-4 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm">
```
请基于证据判断风险:
- 每个风险必须对应文件、函数或注解
- 区分已确认事实和推测
- 无法确认的内容写入不确定点
- 不要直接下安全结论
```
</div>
<!--
第二步是原因判断。
比如发现前端按钮有权限字符,但后端删除接口没有找到权限注解。
这时可以说“存在接口级权限待确认风险”,但不能直接说“系统不安全”。
如果没有看到后端文件,也要写无法确认,而不是猜测。
-->
---
# 方案生成 Prompt
<div class="mt-4 p-4 rounded-xl bg-amber-500/10 border border-amber-500/30 text-sm">
```
请基于已确认风险给出方案:
修改文件 · 修改方法 · 新增或调整权限注解 ·
是否需要操作日志 · 影响范围 · 验证方式 · 测试建议
```
</div>
<!--
第三步才给方案。
如果确认证据显示后端接口缺少权限注解,才建议补权限注解。
如果敏感操作缺少日志,才建议补操作日志。
每个方案都要说明文件、方法、影响范围、验证方式和测试建议。
-->
+34
View File
@@ -0,0 +1,34 @@
# 模块 4:若依项目哪些文件不能提交?
<div class="mt-6 text-sm">
- .env · application-dev.yml 中真实密码 · 数据库账号 · Redis 密码
- target/ · node_modules/ · dist/
- 日志文件 · IDE 本地配置
</div>
<!--
若依项目里,忽略配置同样重要。
后端可能有 application-dev.yml、本地数据库账号、Redis 密码。前端有 node_modules、dist。后端有 target。还有日志文件和 IDE 配置。
这些都不应该进入仓库,更不应该进入 AI 上下文。
-->
---
# 若依忽略配置检查 Prompt
<div class="mt-4 p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 text-sm">
```
@workspace 请检查若依项目的 .gitignore 是否完整。
重点检查:后端target · 前端node_modules/dist ·
日志文件 · 本地配置 · 数据库密码 · Redis密码 · IDE配置
```
</div>
<!--
可以让 TRAE 检查若依项目的 .gitignore。
重点看后端 target、前端 node_modules 和 dist、日志文件、本地配置、数据库密码、Redis 密码、IDE 配置。
同样,不要让 AI 直接改,先给审查报告。
-->
+49
View File
@@ -0,0 +1,49 @@
# 模块 5:若依安全规则重点
<div class="mt-6 text-sm">
账号密码 · Token · 接口权限注解 · 菜单与按钮权限 · 数据权限 · 操作日志 · 敏感配置 · 日志脱敏
</div>
<!--
若依安全规则和一般前端项目不完全一样。
它必须重点关注账号密码、token、接口权限注解、菜单与按钮权限、数据权限、操作日志、敏感配置、日志脱敏。
尤其是权限与日志,是后台管理系统的核心。
-->
---
# 中文安全规则示例
<div class="mt-4 space-y-3 text-sm">
<div class="p-3 rounded-lg bg-blue-900/20 border border-blue-500/30">前端按钮权限只能作为交互控制,不能作为安全边界</div>
<div class="p-3 rounded-lg bg-blue-900/20 border border-blue-500/30">涉及用户、角色、菜单、部门、岗位等敏感接口时,必须检查后端 Controller 是否存在权限控制</div>
<div class="p-3 rounded-lg bg-blue-900/20 border border-blue-500/30">涉及新增、修改、删除、导出等操作时,必须检查是否记录操作日志</div>
</div>
<!--
这些规则可以直接写进 .trae/rules.md。
第一,前端按钮权限只能作为交互控制,不能作为安全边界。
第二,涉及用户、角色、菜单、部门、岗位等敏感接口时,必须检查后端 Controller 是否存在权限控制。
第三,涉及新增、修改、删除、导出等操作时,必须检查是否记录操作日志。
这些规则非常适合若依。
-->
---
# 敏感配置规则
<div class="mt-6 text-sm">
- 禁止在源码中硬编码数据库密码、Redis 密码、JWT 密钥、第三方密钥
- 不得提交真实 application-dev.yml、.env、本地配置文件
- 示例配置必须使用占位符
</div>
<!--
若依项目通常有后端配置文件,所以敏感配置规则也很重要。
禁止在源码中硬编码数据库密码、Redis 密码、JWT 密钥、第三方密钥。
不得提交真实 application-dev.yml、.env、本地配置文件。
示例配置必须使用占位符。
-->
+43
View File
@@ -0,0 +1,43 @@
# 模块 6:若依编码规则重点
<div class="mt-6 text-sm">
前端 api 分层 · 后端 Controller/Service/Mapper 分层 · 权限注解 · 操作日志注解 · 数据权限 · 字典使用 · 代码生成规范
</div>
<!--
若依的编码规则要结合它的项目结构。
前端接口应放在 api 目录,不应该页面里直接写请求。
后端要遵守 Controller、Service、Mapper 分层。
敏感接口要关注权限注解和操作日志注解。
列表查询要关注数据权限。
固定枚举值尽量使用字典。
代码生成结果不能直接上线,要人工检查权限、日志、校验和测试。
-->
---
# 若依测试规则重点
<div class="mt-6 text-sm">
- 登录成功/失败
- 无权限访问接口
- 按钮权限显示
- 角色授权变化
- 数据权限范围
- 操作日志记录
- 代码生成 CRUD
</div>
<!--
若依测试规则应该围绕权限和后台管理流程。
登录要测成功和失败。
无权限访问接口要返回拒绝。
按钮权限显示要和权限字符匹配。
角色授权变化后,菜单和按钮权限应变化。
数据权限要验证不同角色看到的数据范围。
敏感操作要验证操作日志记录。
代码生成 CRUD 要验证增删改查、权限和日志。
-->
+41
View File
@@ -0,0 +1,41 @@
# 模块 7:若依前端规则重点
<div class="mt-6 text-sm">
api 目录调用 · 权限指令 · 动态路由 · 列表 loading · 表单校验 · 删除二次确认 · 导出权限 · 字典显示
</div>
<!--
若依前端规则应覆盖这些点。
接口调用要放 api 目录。
按钮权限要使用项目已有权限指令或权限方法。
动态路由不能随意绕过。
列表页必须有 loading、空状态、错误处理。
表单必须有校验。
删除必须二次确认。
导出按钮要有权限控制。
字典字段要使用统一字典显示。
-->
---
# 用户管理页面规则示例
<div class="mt-6 text-sm">
- 新增、修改、删除、导出按钮必须使用权限控制
- 删除必须二次确认
- 提交失败后恢复 loading
- 修改用户后刷新列表
- 敏感字段不得明文展示或输出日志
</div>
<!--
以用户管理页面为例。
新增、修改、删除、导出按钮必须使用权限控制。
删除必须二次确认。
提交失败后 loading 必须恢复。
修改用户后列表必须刷新。
密码、手机号、邮箱等敏感字段不得随意明文展示或输出日志。
-->
+39
View File
@@ -0,0 +1,39 @@
# 模块 8:若依资产库建议
<div class="mt-6 text-sm">
建议沉淀:若依结构分析 Prompt · 登录权限链路 Prompt · 菜单路由分析 Prompt · 按钮权限检查 Prompt · 操作日志检查 Prompt · 代码生成 Review 清单 · 若依 rules.md
</div>
<!--
若依案例非常适合沉淀资产。
比如若依结构分析 Prompt、登录权限链路 Prompt、菜单路由分析 Prompt、按钮权限检查 Prompt、操作日志检查 Prompt、代码生成 Review 清单、若依 rules.md。
这些资产以后可以直接用于公司内部类似后台管理系统。
-->
---
# 若依资产库目录
<div class="mt-4 text-sm">
```
ai-dev-assets/
├── prompts/若依/
├── rules/若依/
├── templates/若依/
├── checklists/若依/
└── examples/若依/
```
</div>
<!--
建议企业资产库里单独有一个若依目录。
prompts 存若依相关 Prompt。
rules 存若依 rules.md。
templates 存若依代码理解报告、权限链路报告模板。
checklists 存权限检查、日志检查、代码生成检查清单。
examples 存优秀案例和反面案例。
-->
+76
View File
@@ -0,0 +1,76 @@
# 模块 9:若依坏规则示例
<div class="mt-6 p-4 rounded-xl bg-red-500/10 border border-red-500/30 text-sm">
- 注意权限安全
- 代码要规范
- 日志要完整
- 数据权限要合理
- 生成代码要检查
方向没错,但不可执行。
</div>
<!--
这些话方向没错,但不可执行。
“注意权限安全”太泛。
“日志要完整”没有说明哪些操作必须记录。
“数据权限要合理”没有判断标准。
“生成代码要检查”没有检查项。
所以要改成明确规则。
-->
---
# 若依好规则示例
<div class="mt-6 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm">
- 涉及用户、角色、菜单、部门、岗位的新增、修改、删除、导出接口时,必须检查后端权限控制和操作日志记录
- 涉及列表查询时,必须确认是否需要数据权限过滤
- 代码生成结果上线前,必须检查权限、日志、表单校验、异常处理和测试
</div>
<!--
这就是更好的规则。
它有触发场景:用户、角色、菜单、部门、岗位相关接口。
它有必须动作:检查后端权限控制和操作日志。
它能被检查:看 Controller、注解、Service 和日志配置。
这类规则才适合写进 .trae/rules.md。
-->
---
# 若依 rules 检查 Prompt
<div class="mt-4 p-4 rounded-xl bg-blue-500/10 border border-blue-500/30 text-sm">
```
@workspace 请检查当前 .trae/rules.md 是否适合若依项目。
重点检查:权限规则 · 操作日志规则 · 数据权限规则 ·
前端按钮权限规则 · 代码生成规则 · 敏感配置规则
```
</div>
<!--
这是让 TRAE 检查若依 rules 的 Prompt。
重点检查权限规则、操作日志规则、数据权限规则、前端按钮权限规则、代码生成规则和敏感配置规则。
要求 AI 先给审查报告,不要直接改文件。
-->
---
# 若依版 rules.md 结构
<div class="mt-6 text-sm">
0.基础原则 · 1.安全规则 · 2.权限规则 · 3.操作日志规则 · 4.编码规则 · 5.前端规则 · 6.测试规则 · 7.代码生成规则 · 8.不确定性处理规则
</div>
<!--
今天最终产出是若依版 .trae/rules.md v0.1。
它比通用 rules 多了几个若依特色部分:权限规则、操作日志规则、代码生成规则。
这份 rules 后续可以作为团队后台管理系统 AI 协作规范的基础。
-->