前言¶
在开发智能体时,直接操作 GitHub 的 REST API 往往需要处理认证、错误处理和参数转换。repogate 将 GitHub 的仓库、Issue、PR 和代码审查操作封装为 MCP (Model Context Protocol) 工具,使模型可以直接通过对话完成这些操作。
插件介绍¶
- 名称:repogate
- 维护者:JohnXu22786
- 类型:联网工具
- 许可证:MIT
- 定位:GitHub Developer Workbench (agent tool set),将 GitHub REST API 包装为 MCP 工具,用于仓库、Issue、PR 和代码审查操作。
安装¶
在插件所在的目录下执行以下命令,将其安装到指定的 profile(例如 demo)中:
dsh plugin --profile demo add github:JohnXu22786/github-mcp
核心功能¶
- 零运行时依赖:使用 Node.js 内置的
fetch和node:test,无需安装额外包。 - 标准 MCP stdio 兼容:可作为 stdio server 与任何 MCP 客户端(如 dsh、Claude Code 等)通信。
- 内置 dsh bundle 支持:提供
cordis.patch.yml配置,通过dsh plugin add一步完成安装与工具注册。 - 双认证通道:支持 PAT(个人访问令牌)和 OAuth 设备授权两种方式,支持本地 Token 缓存。
- 只读模式:通过开关禁用所有写操作,适合仅用于调研的场景。
- 可操作的错误提示:针对限流、Token 无效、权限不足等错误,提供中文修复指南。
- 模型精简输出:返回简洁摘要而非完整 JSON,节省上下文 Token。
典型用法¶
安装并启用后,模型即可调用工具。以下是一个与 Issue 交互的典型工具链:
1. mcp__repogate__gh_issue_browse:浏览仓库的 open issues。
2. mcp__repogate__gh_issue_fetch:获取具体 Issue 的详细信息。
3. mcp__repogate__gh_issue_edit:编辑 Issue 的标题、状态或标签。
4. mcp__repogate__gh_issue_respond:在 Issue 下发表评论。
也可以通过以下命令直接连接:
dsh plugin --profile web add .
注意事项¶
- 环境要求:需要 Node.js >= 18.17。
- 桥接器选择:插件提供了内置的
repogate/bridge和官方的dsh-mcp-client两种桥接方式,请勿同时启用。 - Token 管理:Token 可以从 dsh 环境变量(
REPOGATE_TOKEN或GITHUB_TOKEN)继承,或在官方桥接的配置中显式写入。 - 默认禁用:DSH 不会默认启用 MCP 服务器,必须通过安装插件来启用。
结尾¶
repogate 为智能体提供了直接操作 GitHub 的标准接口,简化了认证与 API 调用流程。更多细节请参考:GitHub 仓库。