在Trae 工具里,"上下文(Context)“是指A|工具,在回答你的问题或帮助你编程时所能"看到"和"理解”,信息的范围,有助于Trae能精准响应。
1.代码索引管理
对工作区中的代码进行全局索引构建,发起 #Workspace问答时将自动全局检索与问题相关的跨文件上下文,给出与项目更相关的回复。
统计当前项目包括哪些文件:
- 到github上克隆一个开源项目,这里我克隆了
dify项目 - 使用 trae 打开
- 检查索引是否构建完成。 操作路径 : 设置-> 上下文, 点击[构建]
如果项目文件比较多,构建索引的速度就会很慢,耐心等待
- 引用 workspace. 使用
#workspace,表示针对当前项目。
2.忽略文件
#workspace是针对当前项目下的所有文件,但是有些文件我们是不需要Trae关注的,就需要将他们加入到忽略文件。
通过将.ignore文件添加到根目录来控制哪些文件/文件夹被忽略。
这样可以提升索引速度, 排除依赖目录(比如: node_modules/、vendor/)、构建输出目录(比如: build/、out/)、大型媒体/数据文件(比如:.mp4、.mov、*.avi)
操作路径:配置->上下文 -> [忽略配置文件]
注意这个.ignore 文件不要与 git 的
.ignore搞混淆了。 trae的.ignore文件是存放在.trae目录下的。
改动了忽略文件后,注意要重新构建工作区索引:
然后引用workspace 输入提示词 : “有多少个文件被忽略了”。它会编写一些python代码来进行统计:
3.文档集
大模型是不具备当前项目相关知识的,文档集就相当于是给大模型外挂的知识库。Trae 会先召回文档集中的知识内容,然后再交给大模型进行思考回答。
通过URL、本地上传的方式添加常用的文档集作为上下文与AI问答。
操作路径: 设置-> 上下文 -> 【添加文档集】
这里我们将dify的官方文档URL:https://docs.dify.ai/zh/use-dify/getting-started/introduction 添加到 文档集中, 添加完后,会自动加入最多三层页面的内容到文档集中。
等待一会后,可以看到加入了三个文档。如果觉得不够,可以继续添加。
当然也可以添加本地文件到文档库中。
现在来测试一下,使用#Doc可以引用文档集
4.规则
Rules是给Trae AI功能生成结果添加规则和限制让Trae生成的代码贴合团队规范,主要的作用如下:
- 约束代码风格(如强制用驼峰命名、要求方法写注释等)
- 能限定技术选型(如指定优先使用某技术/框架/库,禁止使用某组件/框架/库)
- 提前指定配置参数(如提前设置连接数据库方式、账号密码等)
操作路径:配置->规则
4.1 个人规则
在此处定义一些使用习惯例如:TRAE输出语言、代码生成时默认添加代码注释等,TRAE 在对话时将
通看您的个人规则,切换项目依然生效。
4.2 项目规则
规则存放在.trae/rules/project_rules.md文件中,只在当前项目中有效。
4.3 举例
这里以项目规则为例,为SpringBoot项目制定一些规则:
- 本项目是一个基于Spring Boot 3.2 的 RESTful 后端服务。 - 包结构遵循: com.kaifamiao.mydemo |-config |-modules |- users |- controller |- service |- mapper |- entity |-common - Controller层只负责HTTP映射和参数校验,不包含业务逻辑。所有请求/响应使用 DTO (Data Transfer Object),禁止直接暴露Entity. - 遵循标准的Java命名规范:类名用 PascalCase,方法和变量用 camelCase,常量全大写加下划线 - 所有public 方法必须包含完整的 Javadoc注释,包括@param、Creturn 和@throws. - 优先使用不可变对象和final关键字(如 final class、 final fields) - 避免使用Lombok;显式编写 getter/setter和构造函数。 - 异常处理应具体,避免捕获通用 Exception,优先抛出或记录有意义的异常。 - 使用SLF4J进行日志记录,而不是System.out. - 依赖注入使用 Spring Framework (如适用),偏好构造器注入而非字段注入。 - 单元测试使用JUnit 5 + Mockito,每个业务类都应有对应的测试类。写好规则后,输入提示词: “为我编写一个简单的用户注册功能”,生成完毕后,可以看到,它基本上就是按照设定的规则来生成代码的:
5.#符号
- #File和#Folder : 引用项目中特定文件/文件夹作为上下文
- #Code :可以将函数或类的相关代码作为与AI助手对话的上下文
- #Doc:引用文档集
- #Workspace: 引用整个工作空间
- #Web: 可以将线上web站点的内容作为AI的上下文
- #Problems : 在对话框中使用 #Problems符号并发送给AI后,AI会分析问题页签中报告的所有问题并提供解决方案