DeepSeek Harness GitHub 插件介绍 (harness-github)

前言

DeepSeek Harness (DSH) 采用了插件化架构。harness-github 是其中的一个 GitHub 连接器插件,旨在让智能体能够直接处理 GitHub 上的 PR、issue、CI 检查及发布流程。它不需要用户额外配置 OAuth 或 Device Flow,直接复用现有的认证态。

核心功能

该插件主要解决智能体与 GitHub 交互的认证与权限问题:
1. 全流程覆盖:支持检查 PR、分诊 issue、调试失败的 Actions 检查、处理 review 反馈、准备代码更改以供审查。
2. 连接器优先:优先使用 gh CLI,若不可用则自动回退到 REST API (fetch)。
3. 认证零额外操作:复用 gh CLI 登录态或环境变量 GITHUB_TOKEN,不做 GitHub App 或网页登录流程。
4. 安全机制:所有写操作(如评论、创建 PR、合并)在执行前都请求人工审批;token 仅在内存中使用,永不写入日志或配置文件。

安装与启用

安装前需确保 DSH 版本不低于 0.1.0-rc.6。

1、在任意 profile(web / tui / headless)下执行安装命令:

dsh plugin add harness-github

2、重启 DSH 后,插件生效。系统会注入 github:workflow 工作流指引,并注册 18 个 github_* 工具。无需额外配置即可开始使用(公开仓库立即可用,写操作需要凭据与审批)。

典型用法

通过以下场景示例了解插件工作流:

  1. 查看与分诊:查看仓库待处理的 issue。
    用户: 看看 deepseek-ai/deepseek-harness 有没有待处理的 issue
    Agent: github_issue_list repo=deepseek-ai/deepseek-harness
  1. 调试 CI:定位 PR 中失败的检查项。
    用户: 这个 PR #123 的 CI 挂了,帮我看看
    Agent: github_pr_view repo=o/r number=123 → 获取详情与检查汇总
          github_workflow_run repo=o/r runId=... → 查看失败步骤与日志
  1. 处理反馈:拉取评论并回复。
    用户: 处理一下这个 review 反馈,然后回复他们
    Agent: github_review_feedback repo=o/r number=123 → 拉取评论线程
          github_pr_comment repo=o/r number=123     → 回复 (需审批)
  1. 发布变更:准备代码变更并创建 PR。
    用户: 把我这些改动发个 PR
    Agent: github_pr_prepare repo=o/r → 检查/提交/推送 (需审批) + 建 PR (需审批)

工具清单

插件提供 18 个工具,分为读工具和写工具。

工具名称 功能 备注
github_repo_view 仓库概览 读工具
github_pr_list 列 PR 读工具
github_pr_view PR 详情 + 文件变更 + 评论 + checks 读工具
github_checks_view 头提交状态检查 + Actions run 列表 读工具
github_workflow_run 单 run 失败步骤 + 关键日志 读工具
github_issue_list 列 issue 读工具
github_issue_view issue 详情 + 评论 读工具
github_search 搜索 issue/PR/仓/代码 读工具
github_release_list 最近发布 读工具
github_review_feedback PR review 评论线程 读工具
github_pr_create 建 PR (防重复, draft 支持) 写工具 (需审批)
github_pr_comment 评论 PR/issue 写工具 (需审批)
github_review_submit approve / comment / request-changes 写工具 (需审批)
github_pr_merge merge / squash / rebase 写工具 (需审批)
github_issue_create 建 issue (标签/负责人) 写工具 (需审批)
github_issue_comment 评论 issue 写工具 (需审批)
github_issue_close 关闭 issue 写工具 (需审批)
github_pr_prepare 本地流程:检查/提交/推送/建 PR 写工具 (需审批)

认证与权限

解析顺序

  1. gh CLI 已登录(gh auth status 有效)→ 直接复用。
  2. 环境变量 GITHUB_TOKEN → REST API 带认证。
  3. 公开仓库只读 → REST API 匿名调用(速率受限,约 60 次/小时)。
  4. 都没有且需写操作 → 工具失败,需运行 gh auth login 或设置 GITHUB_TOKEN。

权限边界

  • 只读工具:公开仓库可用;私有仓库需要凭据。
  • 写工具:需要 repo 写权限,且每次执行前必须经过人工审批。默认策略为 ask,拒绝静默放行。

兼容性

  • DeepSeek Harness: >= 0.1.0-rc.6 < 0.2.0 (推荐 rc.7 / rc.8)
  • Node.js: >= 18.0.0
  • gh CLI: 可选(未安装自动走 REST)
  • Platform: web / tui / headless 通用

总结

harness-github 通过复用 gh CLI 和 REST API,为 DSH 提供了一套无需额外登录配置的 GitHub 交互方案。它将复杂的 GitHub API 转化为 18 个具体的工具,并通过严格的审批机制和内存化 token 策略,确保了在自动化流程中的安全性。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜