前言¶
在開發智能體時,直接操作 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 倉庫。