# 管理代码库索引
代码库索引帮助您在代码库中快速检索并获取相关信息。您可在控制台对云端索引执行创建和删除操作，创建后的索引可同步至华为云码道代码智能体客户端使用。
华为云码道代码智能体支持创建**本地** 和**云端**两种类型的索引：本地索引在客户端创建，云端索引在控制台创建。
本章节介绍企业成员在控制台管理云端索引的操作，如需在客户端管理本地索引，请参考[代码库索引](https://support.huaweicloud.com/usermanual-codeartsagent/codeartsagent_ug_0001.html)。
表1本地索引和云端索引功能对比 
| 对比维度 | 本地索引                                    | 云端索引                                                                           |
|:---|:---|:---|
| 存储位置   | 索引文件存储在你的本地设备（当前项目根目录的".codegraph"路径下） | 首次构建索引，完整索引包上传存储至云端；代码变更生成的增量索引，保存在本地设备（当前项目根目录的".codeartsdoer/.codebase"路径下） |
| 搜索能力  | 支持关键词、符号、文件名检索                         | 语义理解，全库代码逻辑分析                                                                  |
| 构建规则  | - 文件数\<50000的项目：打开项目时自动构建索引  - 文件数≥50000的项目：首次构建需手动触发   ||
| 更新规则  | 文件发生变更自动更新                             | **开启自动更新** 且代码库**文件数量小于50000**时自动更新，其余场景需手动操作                                    |
   
#### 约束与限制
表2约束与限制 
| 限制类别     | 新版套餐版本                  | 旧版套餐版本   | 具体限制                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| 语言     | -                      | -        | 支持Java、JavaScript、TypeScript、Go、ArkTS、C、C++、Python、Vue和Lua。                                                                                                                                                                                         |
| 席位限制      | -                        | -          | 仅**已启用席位**的账号可创建和删除云端代码库索引。 购买新版套餐个人版的账号默认已启用席位。                                                                                                                                                      |
| 代码文件总数 | 个人体验版                  | 体验版     | 最多支持检索**5千**个代码文件。                                                                                                                                                                                                                                   |
| 代码文件总数 | 个人标准版/个人高级版/个人旗舰版     | 基础版       | 最多支持检索**5万**个代码文件。                                                                                                                                                                                                                                  |
| 代码文件总数 | 企业专业版                  | 专业版     | - 企业专业版：最多支持检索**20万**个代码文件。  - 专业版：最多支持检索**10万**个代码文件。   |
| 功能限制    | 个人版（含体验版/标准版/高级版/旗舰版） | 体验版     | 仅支持创建云端**个人级**代码库索引。                                                                                                                                                                                                                                |
| 功能限制    | 企业专业版                  | 基础版/专业版 | 可创建云端企业级、团队级、个人级代码库索引。                                                                                                                                                                                                                               |
   
#### 创建云端索引
你可以借助代码库索引构建**向量索引**，基于代码语义，实现功能维度的智能检索与精准匹配。
1. 套餐版本是否为新版套餐的个人版（个人体验版、个人标准版、个人高级版、个人旗舰版）？ 
   - 是，使用**购买套餐的账号** 登录[码道代码智能体控制台](https://codearts.huaweicloud.com/portal)。
   
   - 否，使用**企业成员或企业管理员** 登录[码道代码智能体控制台](https://codearts.huaweicloud.com/portal)。
   
   
   
   
2. 选择"智能体设置 \> 代码库索引"，进入代码库索引页面。
3. 单击"新建索引"，设置索引基本信息，完成后单击"下一步"。 
   表3代码库索引参数说明 
   | 参数    | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   |:---|:---|
   | 可见范围 | 仅企业版（新版套餐）或基础版、专业版（旧版套餐），支持配置该参数。 定义代码库索引的可见范围。 - 个人：仅成员本人可用。  - 团队：仅本团队成员可用，由企业管理员、团队管理员或团队成员创建。  - 企业：所有企业成员都可用，由企业管理员、团队管理员、团队成员或企业成员创建。                                                                          |
   | 可用团队  | 仅"可见范围"设置为"团队"时，才会显示该配置项。 企业管理员可查看所有团队，但只能选择其中一个团队，团队管理员仅可查看并选择其所属团队。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | 代码源  | 选择您想要索引的代码仓库来源。 - Repo：[代码托管（CodeArts Repo）](https://support.huaweicloud.com/codeartsrepo/index.html)中的仓库。  - Git：通用Git仓库。  - Github：GitHub平台仓库，支持公开仓库及经授权的私有仓库。                                               |
   | 选择项目 | "代码源"设置为"Repo"时，才会显示该配置项。 从已关联的代码源中，选择具体要索引的项目。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | 获取授权 | 选择一种方式来授权系统访问你的代码源。 - 通过服务授权：在下拉框中选择服务扩展点，该扩展点对应Repo、Github或Git仓库的连接信息。 若还未创建服务扩展点，单击"添加"，参考[表4]创建服务扩展点。   - 通过个人访问令牌：使用你个人账户生成的访问令牌进行认证。   |
   | 默认分支 | "代码源"设置为"Git"时，才会显示该配置项。 输入Git仓库的分支名称，分支名称不能超过200个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
      
    表4服务扩展点参数说明 
   | 参数           | 说明                                                                                                                                                       |
   |:---|:---|
   | 连接名称            | 自定义连接仓库的名称。 命名规范：由中文、英文、数字、下划线和中划线组成，不能以下划线开头。 |
   | Git仓库Url       | "代码源"设置为"Repo"或"Git"时，才显示该配置项。 Repo/Git仓库的HTTPS访问地址。                        |
   | 用户名           | "代码源"设置为"Repo"或"Git"时，才显示该配置项。 Repo/Git仓库HTTPS协议的认证用户名。                       |
   | 密码或Access Token | "代码源"设置为"Git"时，才显示该配置项。 Git仓库HTTPS协议的认证密码或Access Token。                   |
   | Access Token | "代码源"设置为"Repo"或"Github"时，才显示该配置项。 Repo/Github仓库HTTPS协议的Access Token。    |
      
   
   
4. 选择你的代码库和语言，单击"确定"，完成代码库索引的创建。 
   当该代码库索引的状态由"解析中"变为"解析完成"时，说明代码解析并构建索引成功。
   
   
5. 返回到客户端，打开目标仓库项目，系统会自动从云端同步代码库索引。 
   当进度显示为**100%**，说明代码库索引已同步完成。
   
   
6. 验证索引是否构建成功。 
   直接用自然语言描述你的诉求。系统会调用CodeSemanticSearch工具，基于自然语言语义进行深度代码检索，突破关键词限制。
   ```
   请求状态处理是如何实现的
   ```
   图1代码库索引检索结果   
   ![](https://support.huaweicloud.com/usermanual-enterprise/zh-cn_image_0000002723266985.png "点击放大")
   
   
 
#### 删除云端代码库索引
[表5]展示了不同角色对删除代码库索引的操作权限差异，具体如下：
 表5不同角色对删除代码库索引的操作权限说明 
| 角色    | 企业级代码库索引        | 团队级代码库索引                | 个人级代码库索引     |
|:---|:---|:---|:---|
| 企业管理员 | 可删除所有代码库索引      | 可删除所有代码库索引              | 可删除所有代码库索引    |
| 团队管理员 | 可删除本人创建的代码库索引   | 可删除本团队成员（含团队管理员）创建的代码库索引 | 可删除本人创建的代码库索引  |
| 团队成员  | 可删除本人创建的代码库索引 | 可删除本人创建的代码库索引            | 可删除本人创建的代码库索引 |
| 企业成员   | 可删除本人创建的代码库索引   | 无任何操作权限                 | 可删除本人创建的代码库索引  |
   
![](https://support.huaweicloud.com/usermanual-enterprise/public_sys-resources/note_3.0-zh-cn.png)
仅企业版（新版套餐）或体验版、基础版、专业版（旧版套餐），涉及[表5]的操作权限。
表6管理云端代码库索引 
| 操作          | 具体步骤                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|
| 删除指定代码库索引 | 索引数量较少时，逐条删除操作更直观灵活，便于精准定位并清除目标索引。 1. 单击目标索引后的"删除"，弹出"删除代码库索引"对话框。  2. 输入"DELETE"或单击"一键输入"，然后单击"确定"，即可删除该索引。 目标索引已从代码库索引页面移除，表示删除成功。 注意： 删除操作执行后，索引将会被永久清除，且无法恢复。请谨慎操作。                                                                       |
| 批量删除代码库索引 | 手动逐条删除索引效率较低，您还可以通过以下方式批量删除索引，快速清理冗余索引。 1. 勾选目标索引，单击右上角的"批量删除"，弹出"删除代码库索引"对话框。  2. 输入"DELETE"或单击"一键输入"，然后单击"确定"，即可删除选中的目标索引。 目标索引已从代码库索引页面移除，表示删除成功。 注意： 删除操作执行后，索引将会被永久清除，且无法恢复。请谨慎操作。    |
   
