GitHub 工具包包含使 LLM 代理能够与 GitHub 仓库交互的工具。
该工具是 PyGitHub 库的封装。
有关所有 GithubToolkit 功能和配置的详细文档,请前往 API 参考。
设置
在高层次上,我们将:- 安装 pygithub 库
- 创建 GitHub 应用
- 设置环境变量
- 使用
toolkit.get_tools()将工具传递给您的代理
安装
1. 安装依赖项
此集成在langchain-community 中实现。我们还需要 pygithub 依赖项:
2. 创建 GitHub 应用
在此处遵循说明 以创建和注册 GitHub 应用。确保您的应用具有以下 仓库权限:- Commit statuses (只读)
- Contents (读写)
- Issues (读写)
- Metadata (只读)
- Pull requests (读写)
3. 设置环境变量
在初始化代理之前,需要设置以下环境变量:- GITHUB_APP_ID- 在应用的常规设置中找到的六位数数字
- GITHUB_APP_PRIVATE_KEY- 应用私钥 .pem 文件的位置,或该文件的完整文本字符串。
- GITHUB_REPOSITORY- 您希望机器人操作的 GitHub 仓库名称。必须遵循格式 {username}/{repo-name}。确保已先将应用添加到此仓库!
- 可选:GITHUB_BRANCH- 机器人进行提交的分支。默认为
repo.default_branch。 - 可选:GITHUB_BASE_BRANCH- PR 所基于的仓库基础分支。默认为
repo.default_branch。
实例化
现在我们可以实例化工具包:工具
查看可用工具:- Get Issues- 从仓库获取问题。
- Get Issue- 获取特定问题的详细信息。
- Comment on Issue- 在特定问题上发布评论。
- Create Pull Request- 从机器人的工作分支到基础分支创建拉取请求。
- Create File- 在仓库中创建新文件。
- Read File- 从仓库读取文件。
- Update File- 更新仓库中的文件。
- Delete File- 删除仓库中的文件。
包含发布工具
默认情况下,工具包不包含与发布相关的工具。您可以通过在初始化工具包时设置include_release_tools=True 来包含它们:
include_release_tools=True 将包含以下工具:
- Get Latest Release- 从仓库获取最新发行版。
- Get Releases- 从仓库获取最新的 5 个发行版。
-
Get Release- 通过标签名从仓库获取特定发行版,例如
v1.0.0。
在代理中使用
我们需要一个 LLM 或聊天模型:API 参考
有关所有GithubToolkit 功能和配置的详细文档,请前往 API 参考。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

