跳转到主要内容

PAT 简介

要使 Kody 能够执行自动代码审查,您需要在 Azure DevOps 中生成个人访问令牌(PAT)。此令牌允许 Kody 以受控方式安全地访问您的代码库并进行代码分析。

生成 PAT(个人访问令牌)

您可以直接使用此链接访问 PAT 设置: Azure DevOps PATs 按照以下步骤正确设置令牌:
  1. 访问 Azure DevOps 并进入您的安全设置:
    • 转到 Azure DevOps 并登录。
    • 点击右上角的个人资料图片。
    • 从下拉菜单中选择**“安全”**。
  2. 创建新 PAT:
    • 个人访问令牌部分下,点击**“新令牌”**。
  3. 使用以下规格设置新令牌:
    • **名称:**选择一个容易识别的名称,例如 kody_code_review
    • **组织:**选择您的目标组织。
    • **到期时间:**选择适当的到期时间(例如,90 或 180 天)。
    • **范围:**选择以下权限:
      • **分析:**读
      • **代码:**读和写
      • **图:**读
      • **身份和组:**读
      • **项目和团队:**读
      • **用户配置文件:**读
  4. 点击创建。
复制生成的令牌并安全存储,因为您需要它来配置 Kody。
需要对代码的写访问权限,以便 Kody 发布评论和管理拉取请求反馈。

将令牌添加到 Kody

生成令牌后,将其粘贴到 Kody 自动化设置屏幕中。当您尝试启用自动化时,配置模态框将自动打开。

故障排查:Kody 没有在 Azure DevOps 中审查 PR

如果 Kody 已连接但新的拉取请求上什么都没发生 — 没有反应、没有评论、Kodus 仪表板中也看不到 PR — 原因几乎总是以下三个问题之一,按我们遇到的频率排序。

1. 检查 PAT 范围

在 Azure DevOps 中打开 PAT,确认生成 PAT 下列出的每个范围都已启用。最常被遗漏的是 Code:读和写 — 没有权限,Kody 可以读取您的代码库但无法发布审查评论,所以审查”静默运行”。 如果 PAT 在某个范围添加之前就已创建,Azure DevOps 不会追加添加该范围。请使用完整的范围列表创建新的 PAT,并在 Kody 自动化设置中更新它。

2. 检查用户的项目权限

PAT 继承创建它的 Azure DevOps 用户的权限。如果该用户无权访问目标项目、代码库或 PR 工作流,即使范围正确的 PAT 也会被 Azure 默默拒绝。 验证 PAT 拥有者能否从 Web UI:
  • 打开代码库并查看拉取请求。
  • 在拉取请求上发布评论。
  • 查看 PR 的线程和反应。
如果上述任何一项对用户失败,Kody 也做不到。在重试前授予该用户代码库上的 ContributeContribute to pull requests 权限。

3. 最后手段:将用户添加到项目集合管理员

一些 Azure DevOps 组织强制执行更严格的组织级策略,即使权限正确的用户也无法通过 PAT 发布 PR 评论。如果步骤 1 和 2 看起来都对,但 Kody 仍然不发布任何内容,请将 PAT 拥有者添加到项目集合管理员组:
  1. 打开组织设置权限(左侧边栏)。
  2. 单击项目集合管理员组。
  3. 打开成员选项卡 → 单击添加
  4. 添加生成 Kodus PAT 的用户。
项目集合管理员是高权限组 — 它授予对整个 Azure DevOps 组织的管理控制权。将其作为诊断手段来确认问题与权限有关,一旦确认,请与您的 Azure DevOps 管理员合作,只授予 PAT 拥有者所需的具体权限(通常是相关项目上的 Contribute + Contribute to pull requests),而不是让其保持为 PCA。
权限到位后,Kody 应该在下一个 PR 事件时开始反应和发布审查。无需重启。

仍然卡住?

如果以上都没解决问题,那问题通常在 webhook 侧,而不是 PAT。参见创建 Webhook — 特别是故障排查部分,其中涵盖了只有 Azure Repos 才有的 ?token= 签名 URL 要求。