DeepSeek Harness (DSH) 作爲一個插件化的開發環境,旨在將外部工具能力集成到統一的對話與界面中。在使用 GitHub Actions 時,開發者通常需要在瀏覽器和終端間頻繁切換,以查看構建狀態和日誌。dsh-github-ci 插件通過在 DSH Web 界面中提供實時的 Pipeline Dashboard,並將 GitHub Actions 的操作能力封裝爲 Agent 工具,解決了這一割裂問題。
插件定位¶
dsh-github-ci 是一個由 knownasmobin 維護的 GitHub Actions CI 管理插件。它爲 DeepSeek Harness Web 界面提供可視化的流水線監控面板,並支持通過 github_ci 代理工具直接在對話中操作工作流。
核心功能¶
- Pipeline Dashboard:在 Web 界面提供浮層或設置頁面的儀表盤,展示通過/失敗/運行狀態的摘要、狀態徽章以及每個運行的快捷操作按鈕(如取消、重試、打開 GitHub)。
- 認證方式:支持 GitHub OAuth Device Flow(無需客戶端密鑰)或 Personal Access Token (PAT)。Token 持久化存儲在 DSH 憑據存儲中,跨會話複用。
- 倉庫瀏覽器:支持列出自己的私有倉庫和組織倉庫,或搜索公共用戶/組織倉庫進行瀏覽。
- 運行操作:支持取消進行中的運行、重試失敗的工作以及直接在 GitHub 上打開對應頁面。
- 日誌與檢測:提供運行日誌,並具備失敗步驟檢測能力,將相關日誌推送到 Agent。
- Agent 工具:
github_ci工具可用於列出工作流/運行、檢查作業、獲取日誌、觸發、取消和重試。 - 修復與恢復:支持“Fix with Agent”功能,一鍵起草包含運行元數據和失敗日誌的結構化調試請求;支持憑據失效時的恢復與特定來源的錯誤提示。
安裝與啓用¶
通過命令行安裝。插件需要掛載到 Web 客戶端,因此必須指定 --profile web 參數。
dsh plugin --profile web add dsh-github-ci
典型用法¶
在 DSH 對話中使用 github_ci 工具,需指定 action 參數和相關參數。
- 列出工作流:
github_ci({ action: "list_workflows", owner: "vercel", repo: "next.js" })
- 獲取日誌:
github_ci({ action: "get_logs", repo: "owner/repo", run_id: 123456789 })
- 觸發工作流:
github_ci({ action: "trigger", owner, repo, workflow_id: "deploy.yml", ref: "main" })
適用場景與注意事項¶
- 適用場景:需要在 DSH Web 界面中直接監控 GitHub Actions 狀態,或通過 Agent 自動化觸發、取消和排查 CI 問題的開發者。
- 注意事項:
- 依賴檢查:需要滿足
@deepseek-ai/dsh-tools >=0.1.1-rc.1的 peer dependency 要求。 - OAuth 配置:使用 OAuth 登錄時,需在 GitHub Developer Settings 中開啓 “Device Flow”。
- PAT 權限:使用 Personal Access Token 時,必須包含
repo和workflow權限範圍。 - 匿名訪問:瀏覽公共倉庫無需登錄,匿名讀取即可。
- 安全存儲:Token 僅存儲在 DSH 憑據存儲中,不會寫入源碼樹。
- 依賴檢查:需要滿足
總結¶
dsh-github-ci 將 GitHub Actions 的控制權完整集成到了 DeepSeek Harness 生態中。通過儀表盤和 Agent 工具的結合,開發者可以在本地環境無縫管理 CI 流程。更多細節可參考 catalog 頁面或 GitHub 倉庫。