跳到主要内容

代码库索引(Codebase Indexing)

为代码库建立索引

为了获得更优质、更精准的代码库问答,您可以为代码库建立索引。在后台,Cursor 会为代码库中的每个文件计算嵌入向量(embeddings),并利用这些数据提升代码库问答的准确性。

当项目被打开时,每个 Cursor 实例都会为该工作区初始化索引建立流程。完成初始索引设置后,Cursor 会自动索引工作区中新增的所有文件,确保代码库上下文始终保持最新状态。

您可以通过 Cursor Settings > Features > Codebase Indexing 查看代码库索引的建立状态。

代码库索引

高级设置

默认情况下,Cursor 会索引代码库中的所有文件。

您可以展开 Show Settings(显示设置)区域访问更多高级选项。在此处,您可以决定是否要为新建的代码仓库启用自动索引功能,并配置 Cursor 在仓库索引过程中需要忽略的文件。

Cursor 使用与 VS Code 相同的处理包来实现文件忽略功能,这意味着它会遵循所有 .gitignore 文件(包括子目录中的文件)。您还可以创建 .cursorignore 文件来设置用户特定的忽略模式,建议将此文件添加到全局 .gitignore 中以避免将其提交至代码仓库。

如果项目中存在 AI 完全不需要读取的大型内容文件,忽略这些文件可能会提升回答的准确性。

处理大型单体仓库(large monorepos)

当处理包含数十万个文件的大型单体仓库时,需要合理规划索引范围。

  • 使用 .cursorignore 文件让每位开发者配置他们在单体仓库中需要处理的文件夹和路径
  • .cursorignore 添加到全局 .gitignore 文件中

这样每位开发者都能针对自己在单体仓库中的特定工作区域优化索引效率。

使用多根工作区(Multi-Root Workspaces)

Cursor 支持多根工作区配置,允许您同时处理多个代码库。当创建多根工作区时:

  • Cursor 会自动索引所有加入工作区的代码库
  • 每个代码库的上下文都将对 Cursor 可用
  • 所有添加的文件夹都支持 .cursor/rules 配置
  • 特别适合处理位于不同文件夹的关联项目

当您需要在同一工作区中跨多个项目协作时,此功能尤其有用,它能确保 Cursor 随时获取所有代码上下文。

常见问题解答

如何查看所有已索引的代码库?

目前无法查看所有已索引代码库的完整列表。您需要手动检查每个项目的索引状态:在 Cursor 中打开项目后,前往「代码库索引」设置查看具体信息。

如何删除所有已索引的代码库?

您可以通过两种方式操作:在「设置」中删除 Cursor 账户(将清除所有已索引代码库),或在各项目的「代码库索引」设置中手动删除单个代码库。目前不支持批量删除所有代码库而不删除账户的功能。

已索引代码库会保留多久?

已索引的代码库在最后一次使用后会自动保留 6 周。若在此期间后重新在 Cursor 中打开同一项目,系统将创建新代码库并重新进行索引。

项目索引有文件数量限制吗?

专业版用户最多支持自动索引 50,000 个文件,企业版用户的默认上限为 250,000 个文件。