前言¶
DeepSeek Harness (DSH) 的核心設計理念是“一切皆插件”。在使用智能體處理 GitHub 任務時,傳統方案往往需要依賴 gh CLI,這要求環境配置 PATH 並管理版本兼容性。vclike/dsh-github-companion 插件通過直接調用 GitHub REST/GraphQL API,消除了外部依賴,爲 DSH 代理提供了完整的 GitHub 集成能力。
核心功能¶
該插件以三個 cordis bundle 的形式掛載,共享同一安裝包。
- 33 個 REST/GraphQL 工具:註冊在
ctx.tools下,分爲只讀發現(21 個)和可寫操作(Issue、Git 數據、Repo 創建)。 - 零外部依賴:不依賴
ghCLI,直接使用fetch/undici,支持 Windows/Linux/macOS 無需配置 PATH。 - 進程內權限門:提供
github-companion-gatebundle 作爲權限校驗的實現示例。 - 成本紀律 companion skill:內置能力地圖和工作流,幫助控制操作成本。
安裝與組成¶
插件通過目錄 ~/.dsh/skills/dsh-github-companion/ 管理以下組件:
github-companion:註冊工具,默認開啓只讀/發現,可配置開啓寫操作。github-companion-gate:權限校驗邏輯。github-companion-usage:包含 SKILL.md,定義結果規範、工作流和失敗處理策略。
典型用法¶
通過自然語言指令,代理會自動選擇工具:
- 項目洞察:總結本週 starred 項目的變更(使用
list_starred,latest_release,list_commits)。 - 倉庫管理:查看 owner/repo 的最新更新、上傳本地文件夾爲新私有倉庫、修復 README 錯誤併發布版本。
- 代碼同步:對比 fork 與上游的差異,同步落後的 fork。
- 協作與搜索:針對 bug 在上游創建 issue,或直接搜索代碼展示實現方式。
適用場景與注意事項¶
- Repo 創建限制:
github_create_repository永遠創建私有倉庫,沒有公開選項。 - 認證方式:使用 PAT,通過
ctx.credentials.resolve或 settings UI 存儲在$DSH_HOME/.credentials.yaml中。 - 推薦權限:Metadata R, Contents RW, Issues RW, Pull requests RW, Workflows RW, Administration RW(僅在啓用 Repo 創建時需要)。
- 錯誤處理:所有工具返回 JSON-safe 對象,GitHub API 錯誤返回
{ ok: false, status, message },而非拋出異常。
結語¶
該插件通過直接 API 調用替代 CLI,降低了智能體與 GitHub 交互的複雜度和維護成本。更多細節請訪問社區目錄或查看GitHub 倉庫。