你将构建的内容
- 代码存储库:用于存放应用代码。你将在此存储库上设置 GitHub webhook。示例包括后端 API、前端应用、SDK 或命令行界面(CLI)工具。
- 文档存储库:用于存放文档并连接到你的 Mintlify 项目。代理会在此存储库中创建包含文档更新的拉取请求(PR)。
工作流概览
- 有人将拉取请求(PR)合并到代码存储库。
- n8n 从 GitHub 接收 webhook。
- n8n 将该拉取请求的 context 发送到代理 API。
- 代理在文档存储库中创建一个拉取请求(PR)。
先决条件
- n8n 工作区
- Mintlify 管理 API key
- Mintlify Pro 或自定义计划
- 对你代码和文档所在 GitHub 仓库的管理员权限
- GitHub 个人访问令牌
获取管理员 API key
- 在控制台中前往 API keys 页面。
- 选择 Create Admin API Key。
- 复制该 key 并妥善保存。
获取 GitHub 个人访问令牌
- 在 GitHub 中,前往 Settings。
- 点击 Developer settings。
- 点击 Personal access tokens。
- 点击 Tokens (classic)。
- 点击 Generate new token (classic)。
- 选择以下作用域(scopes):
repo(对私有仓库的完整控制)admin:repo_hook(如果你希望 n8n 创建 webhooks)
- 生成令牌并妥善保存。
构建工作流程
创建 webhook 触发器
- 在 n8n 中创建一个新工作流。
- 添加一个 webhook 节点。
- 配置该 webhook:
- HTTP 方法:
POST - 路径:
auto-update-documentation(或任意唯一路径) - 认证:无
- 响应:立即
- HTTP 方法:
- 保存该工作流。
- 复制生产环境的 webhook URL。示例:
https://your-n8n-instance.app.n8n.cloud/webhook/auto-update-documentation

设置 GitHub Webhook
- 在 GitHub 上进入你的代码存储库。
- 点击 Settings。
- 点击 Webhooks。
- 点击 Add webhook。
- 配置 Webhook:
- Payload URL:粘贴你的 n8n Webhook URL
- Content type:
application/json - Which events would you like to trigger this webhook?
- 选择 Let me select individual events.
- 仅选择 Pull requests。
- 勾选 Active
- 点击 Add webhook。
筛选已合并的拉取请求(PR)
- 添加一个代码节点。
- 将其命名为“Filter merged PRs.”
- 将模式设置为 Run Once for All Items。
- 添加以下 JavaScript:
Filter merged PRs

调用 agent API
- 添加一个 HTTP 请求节点。
- 将其命名为“Create agent job.”
-
配置该请求:
- 方法:
POST - URL:
https://api.mintlify.com/v1/agent/YOUR_PROJECT_ID/job(将YOUR_PROJECT_ID替换为你的项目 ID,可在控制台的 API keys 页面找到) - 认证:Generic Credential Type → Header Auth
- 创建新的凭证:
- 名称:
Authorization - 值:
Bearer mint_YOUR_API_KEY(替换为你的 API key)
- 名称:
- 创建新的凭证:
- 发送 Body:开启
- Body Content Type:JSON
- 指定 Body:使用 JSON
- 添加以下 JSON:
- 方法:

启用工作流
- 保存工作流。
- 将其设为启用。

测试自动化
-
在你的代码存储库中创建一个测试 branch:
-
做一个小改动并提交:
- 在 GitHub 上发起一个拉取请求(PR)。
- 合并该拉取请求。
验证自动化
- n8n 执行:你应看到一条新的执行记录,且所有节点均已成功完成。
- 文档存储库:一两分钟后,检查是否出现包含文档更新的新 branch 和拉取请求(PR;亦称“合并请求”/Merge Request)。
疑难解答
Webhook 未触发
- 确认该工作流已在 n8n 中启用。
- 在 GitHub 存储库的 Settings → Webhooks → Recent Deliveries 中检查响应代码。
- 确认 webhook 的 URL 与您的 n8n webhook URL 完全一致。
来自代理 API 的 401 错误
- 确认你的 API key 以
mint_开头。 - 检查 Authorization 头的格式是否为
Bearer mint_yourkey。 - 确认该 API key 对应正确的 Mintlify 组织。
来自 GitHub 的 401 错误
- 确认你的令牌具有
repo权限范围。 - 检查令牌是否已过期。
- 确认在发送给 GitHub 的请求中包含了
User-Agent头部。