24 连接 GitLab
将 GitLab 连接到 Claude Tag,使其可以通过 GitLab API 读取代码、管理 Issue、评论 Merge Request 和检查流水线。涵盖令牌权限、自托管主机名以及与 GitHub 的区别。
export const BetaNote = () => Claude Tag is in public beta. Features and behavior described here may change before general availability.;
连接在 Access bundle 中添加。在 claude.ai/admin-settings/claude-tag 打开左侧导航的 Access bundles,点击进入一个包(或 Create 一个),转到其 Credentials 标签。
连接 GitLab 让 Claude 通过 GitLab REST API 读取和搜索项目、管理 Issue、评论 Merge Request 和检查流水线状态。连接是添加到包中的单个访问令牌。
本页是凭据字段参考。完整的设置指南(包括为 Claude 创建专用 GitLab 服务账号和范围控制其组访问)在配置 GitLab 访问中。
如果你的插件市场包含 GitLab 插件,将其与此连接配对让 Claude 知道如何调用 API。参见附加插件。没有插件的连接也能工作。
推荐使用[专用服务账号](../admins/configure-gitlab.qmd#create-a-dedicated-gitlab-account-for-claude)的个人访问令牌,这样一个身份覆盖你添加它的每个组。如果只需要单个项目或组,项目和组访问令牌也可用。授予 `api` scope 以获得读写权限,或 `read_api` 以获得只读权限。令牌以 `glpat-` 开头。
在包的 **Credentials** 标签上,点击 **GitLab** 旁边的 **Connect** 并粘贴令牌。对于自托管 GitLab,切换到表单的 **Advanced** 标签,在 **Allowed websites** 下添加你实例的主机名。
你将看到: GitLab 列在包的连接中,且在包作用域下的新话题中 @Claude what can you access from this channel? 返回它。新话题会自动获取连接;在已有话题中,通过名称要求 Claude 使用该服务。
| 字段 | 值 |
|---|---|
| Personal access token | 来自 GitLab 的令牌,以 glpat- 开头。项目和组访问令牌也可在此使用;标签是字段名,不是令牌类型约束。 |
| Allowed websites | gitlab.com(预设)。对于自托管 GitLab,打开 Advanced 标签并在此添加你实例的主机名。 |
GitLab 创建令牌的指南在 docs.gitlab.com。
24.1 GitLab 与 GitHub 的区别
| GitLab | GitHub | |
|---|---|---|
| 认证 | 服务账号的个人访问令牌 | Claude GitHub App,单独安装 |
| 在话题中引用项目 | 给 Claude 完整的项目 URL;它通过 API 读取 | 在消息中输入 owner/repo 会自动附加 |
| 自托管 | Advanced → Allowed websites 下的你的主机名 | GitHub Enterprise 设置 |
| 返回更改 | 通过 API 管理 Issue 和 Merge Request 评论 | 由 Claude GitHub App 署名的草稿 Pull Request |
令牌在每次向你的 GitLab 主机的 API 请求时自动注入。模型和沙箱不会获得密钥;参见 Agent Proxy 的工作原理。
24.2 相关资源
- 配置 GitHub 访问:GitHub App 路径,两者不同
- 为 Claude 配置访问:完整的凭据类型和允许主机参考