github-tools
将 GitHub API 全面封装为 AI SDK 兼容工具集,含 7 种预设场景与人工审批机制,让 AI Agent 安全可控地操控 GitHub
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
将 GitHub API 全面封装为 AI SDK 兼容工具集,含 7 种预设场景与人工审批机制,让 AI Agent 安全可控地操控 GitHub
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

深夜,你的 AI 助手突然发来一条消息:"检测到 vercel/ai 仓库有 3 个未处理的 PR,我已自动审查了第一个 PR 的代码变更,发现了 2 处潜在 bug,要不要我直接在 PR 下回复评审意见?"
这不是科幻。这是 @github-tools/sdk 正在实现的能力。
GitHub 是全球最大的代码协作平台,开发者每天在 PR、Issue、代码审查之间疲于奔命。当 AI Agent 开始介入开发工作流,一个根本性问题浮现了:Agent 凭什么操作你的 GitHub 仓库? 现有的 MCP Server 太底层,gh CLI 需要 shell 解析,Octokit 又过于底层——没有一个工具是为 Agent 原生设计的。
Vercel Labs 给出了答案:将 GitHub API 封装成 AI SDK 的工具集,让任何基于 AI SDK 构建的 Agent 都能直接"操控" GitHub。
GitHub MCP Server 提供了底层 API 访问,gh CLI 提供命令行界面,Octokit 提供原始 SDK——但这三者都不是为 AI Agent 设计的。Agent 真正需要的,是可靠的结构化工具 schema、操作前的人工审批门控、以及任务中断后的恢复能力。
@github-tools/sdk 填补了这个空白。它将 GitHub REST API 全面封装为 53 个 AI SDK 兼容工具,每个工具都有 Zod 验证的输入 schema、token 感知的输出截断,以及开箱即用的人工审批机制。这意味着:Agent 不再只是"能读 GitHub",而是能以受控方式执行 PR 审查、Issue 管理、代码发布等全链路操作。
SDK 的核心价值在于预设(Preset)机制——针对不同场景,精选工具组合,形成专用 Agent:
| 预设名称 | 包含工具 | 适用场景 |
|---|---|---|
code-review | PR 信息、文件变更、审查意见、提交历史等 | AI 代码审查助手 |
issue-triage | Issue 读写、标签管理、指派、搜索 | 智能 Issue 分诊 |
repo-explorer | 全量只读工具(仓库/分支/gist/workflow等) | 代码库探索助手 |
security-audit | 只读浏览 + PR/CI 可见 + 发现报告写入 | 安全审计 Agent |
release-manager | 发布管理、diff 对比、工作流运行 | 自动化发布流程 |
maintainer | 全部工具 | 全能维护助手 |
ci-ops | 工作流查看、运行状态、Artifacts | CI/CD 监控 |
这些预设可以自由组合:createGithubTools({ preset: ['code-review', 'issue-triage'] }),满足复合场景。
项目采用 pnpm workspaces + Turbo 构建 monorepo,分为四层:
packages/github-tools — 核心 SDK 层,导出 @github-tools/sdk 主包及 /workflow、/eve、/connect 子路径。核心依赖只有 zod(参数验证)和 @octokit/plugin-throttling-rxjs(GitHub API 限流处理),极轻量。通过 tsdown 打包为 ESM 模块,类型导出完整。
packages/github-tools-eve-extension — eve 平台专用扩展,通过 eve extension build 打包为可挂载扩展。要求 Node.js 24.x,是 Vercel 官方推荐的"3 文件快速上手"方案。
apps/chat — 基于 Nuxt.js 4 的 Web 聊天界面,集成了 @ai-sdk/vue(AI UI 组件)、@workflow/ai(Vercel Workflow)和 Drizzle ORM + LibSQL(本地数据库),支持对话持久化。属于演示应用,也是一个完整的功能产品。
examples/ — 三个完整可运行的 Agent 示例(eve-agent、pr-review-agent、eve-extension-agent),每个都是一个独立项目,可直接 pnpm install && pnpm dev 运行。
整个项目以 TypeScript 为唯一语言,类型定义贯穿始终。每个工具函数都有完整的参数类型和 JSDoc 注释,生成的工具 schema 直接可用于 AI 模型调用。构建流程集成 Vitest(测试)、ESLint(代码风格)和 TypeScript 类型检查,三位一体保障质量。
包管理使用 pnpm 11.1.3,版本管理使用 Changesets,自动生成 CHANGELOG 并关联 GitHub Releases。
路径一:SDK 集成(适合有 AI SDK 经验的开发者)
pnpm add @github-tools/sdk ai zod
# 3 行代码即可让 Agent 具备 GitHub 读写能力
路径二:eve 扩展(推荐新手) eve-extension 提供完整的人机协作界面,包含 durable execution(任务中断可恢复)和内置审批流,最快 3 个文件即可跑通。
路径三:独立 PR 审查 Agent(示例,可直接 fork) examples/pr-review-agent 基于 Nitro(Node.js 服务框架)和 Vite,前端使用 Vue.js,是完整的生产级参考实现。
注意:eve-extension 明确要求 Node.js 24.x,其他部分对 Node 版本无特殊限制,兼容主流 LTS 版本。
无 Docker 支持:项目没有提供 Dockerfile 或 docker-compose,无法容器化一键部署,Web UI 需手动配置 Node 环境。
GitHub Token 安全:所有写操作都需要 GitHub Personal Access Token,需妥善保管,建议仅授予最小必要权限范围。
Vercel 生态绑定:深度集成 Vercel AI SDK、Vercel Workflow 和 Vercel Connect,对非 Vercel 用户有额外的学习成本。
eve 扩展 Node 版本要求:强制 Node 24.x,限制了部分部署环境的兼容性。
GitHub 是 AI Agent 进入真实软件开发流程的最重要入口。@github-tools/sdk 的出现,标志着 Agent 工具层从"能调用 API"进化到"安全、可控、生产可用"的阶段。随着 AI 编程助手(Cursor、Copilot、Devin)的普及,这类工具层将成为每条 Agent 流水线的标配基础设施。