GitHub 配置指南¶
你可以用它做什么¶
让智能体查询仓库、Issue、PR 等;也可配置 GitHub 事件接收。首次建议从只读查询开始。
配置前准备¶
请仓库负责人确认目标仓库范围。在 GitHub 个人设置的 Developer settings → Personal access tokens 创建适用 Token,优先选择限定仓库和最小所需权限的凭证,并设置有效期。组织可能需要批准。不要为了测试直接授予所有仓库写权限。
需要能够在当前 MOI 工作区创建或编辑工具配置。若没有入口或提示无权操作,请联系工作区管理员,不要借用他人的账号。
创建 GitHub Token¶
本指南使用细粒度个人访问令牌,以便把权限限制到指定仓库和操作。
打开 GitHub 创建细粒度 Token 页面。也可以依次进入头像菜单中的 Settings > Developer settings > Personal access tokens > Fine-grained tokens。
从 GitHub 个人设置进入 Developer settings。¶
点击 Generate new token,填写名称和有效期。
选择 Fine-grained tokens;它可以把仓库和权限限制到本次接入所需的范围。¶
在 Repository access 中选择 Only select repositories,再选择要连接的仓库。
在细粒度 Token 表单中限制可访问的仓库,并只添加实际需要的权限。¶
按智能体需要执行的操作设置仓库权限。只读取仓库、Issue 或 Pull Request 时授予只读权限;需要创建或更新 Issue 时,将 Issues 设置为 Read and write。
生成 Token 后立即复制并妥善保存。GitHub 不会再次显示完整值。
组织仓库可能要求管理员批准 Token。在批准完成前,MOI 无法使用该 Token 访问对应仓库。
GitHub 也保留 Tokens classic 管理入口;新建接入时优先使用前文的细粒度 Token。¶
配置页面¶
从 资源中心 > 工具库 打开 GitHub 工具。¶
MOI GitHub API 实例:Access Token 必填,仓库范围按需填写。¶
在 MOI 中操作¶
进入 资源中心 > 工具库 > GitHub,先选择 API 调用能力,创建实例。
填写 Access Token;为减少误用,填写准备测试的 Owner 与 Repository。保存并测试连接。
在智能体的工具配置中绑定 GitHub 工具,并选择该实例。先做只读验收。
如需事件触发,再选择 Webhook 能力。填写匹配的 Webhook Secret 与所需字段,保存后从实例详情复制回调 URL。
在目标仓库或组织的 Webhooks 设置中填写该 URL 和相同 Secret,选择真正需要的事件。不要使用 127.0.0.1 作为第三方回调地址。
在 MOI 配置相应事件路由规则及目标智能体/任务,并用测试仓库事件验证。PR Review 场景按页面提示订阅 Check suites、Check runs 等所需事件。
按实际任务选择 GitHub 事件,不要订阅无关事件:
需要处理的场景 |
GitHub 事件 |
|---|---|
Issue 新建、编辑或关闭 |
Issues |
Pull Request 创建、更新或关闭 |
Pull requests |
PR 评论或审核 |
Issue comments、Pull request reviews、Pull request review comments |
CI 检查完成后处理 PR |
Check suites、Check runs |
GitHub 使用 Webhook Secret 为投递生成 X-Hub-Signature-256 签名,MOI 使用同一个 Secret 验证请求。两边的值必须一致,具体机制见 GitHub Webhook 签名验证说明。
字段怎么填写¶
字段 |
何时需要 |
填写说明 |
|---|---|---|
实例名称 |
必填 |
例如「产品测试仓库」。 |
Access Token |
仓库 API 与 Webhook 入口均必填 |
用于实际调用 GitHub API,不能用 Webhook Secret 替代。 |
Owner / Repository |
可选 |
例如 Owner=example-team、Repository=demo;分别填写,不填完整网址。 |
App ID / Installation ID |
API 入口可选 |
只有确实采用 GitHub App 时才填写;仅填 ID 不能替代 Token。 |
Webhook Secret |
Webhook 入口可选 |
与 GitHub Webhook 配置保持一致,用于验签;不要当成 API Token。 |
MOI GitHub Webhook 实例表单:API 调用仍需填写 Access Token;Webhook Secret 用于验证 GitHub 的事件签名。¶
让智能体实际使用¶
回到目标智能体详情,在工具区域检查对应能力是否已绑定;提供实例选择时,核对目标连接。具体步骤见绑定并验证工具。
先让智能体「读取 example-team/demo 的最近三个 Issue,只查询,不创建评论」。核对 Issue 链接和工具结果。事件场景另外核对 GitHub delivery 是否成功、MOI 是否接收并触发正确目标;连接测试不能代替事件验收。
验收时逐项确认:
保存成功,重新打开后配置仍存在。
测试连接返回成功,而不是只有「已配置」标签。
对话的工具调用记录显示实际调用,结果与目标平台一致。
如启用事件接收,还验证了事件投递和正确目标触发。
常见问题¶
现象 |
检查方法 |
|---|---|
能连接但查不到仓库 |
检查 Token 仓库范围、组织批准及 Owner/Repository。 |
读取成功但写入失败 |
核对目标操作所需权限;只有明确需要写操作时才增加相应权限。 |
Webhook 不触发 |
检查公网回调、Secret 一致性、事件订阅及 MOI 路由规则,查看 delivery 记录。 |