dsh-github-ops: GitHub 发布与运维管理

在 DeepSeek Harness (DSH) 的生态中,现有的 GitHub 插件无法完全覆盖发布流水线中关于发布、标签及净化镜像的需求。dsh-github-ops 插件针对这些场景提供了补充。

插件简介

该插件由 GooDAnDReaDY 维护,旨在为 DSH 提供 GitHub 运维能力。它包含发布管理、标签管理、受保护的通用 API 转发、净化镜像发布、工作流运行以及仓库设置等功能。

核心功能

插件提供了以下核心工具集:

  1. 发布与标签管理

    • 发布管理:支持列表查看、单个查看、创建、编辑、删除以及资产和备注的管理。通过 gh_release_edit 并设置 makeLatest: true,可以保持仓库徽章指向当前版本。
    • 标签管理:支持列表查看、创建(支持轻量级或带注释)以及删除。
  2. 通用 API 访问

    • gh_api 工具用于访问 Typed Tools 未覆盖的接口(如 refs、rulesets、organizations、gists)。读取操作无需确认,写入操作(POST/PATCH/PUT/DELETE)需要设置 confirm: true。
  3. Issue 与 Pull Request 管理

    • 支持列表、搜索、创建、评论、关闭、合并 PR。
    • gh_review 提供代码审查打包功能,包含元数据、区域、差异、评论和 CI 汇总。
    • review_post 用于发布审查结果。
  4. CI/CD 检查

    • gh_checks 用于检查运行、遗留状态和合并审查。
    • ci_run 提供基于规则的 PR 审查。
  5. 净化镜像发布

    • gh_mirror_check 用于检查发布计划,确认哪些文件会到达镜像。
    • gh_mirror_publish 用于发布净化后的树,该操作仅在镜像分支上快进合并,不使用强制推送。

安装与启用

安装插件需要 DeepSeek Harness 环境,并确保已安装 Node 20+。

dsh plugin --profile web add @goodandready/dsh-github-ops

安装后,需要在 DSH 凭证服务中配置一个 GitHub Token,默认使用名为 GITHUB_TOKEN 的凭证。

典型用法

以下为插件提供的典型命令示例:

  1. 列出发布
    gh_release_list
  1. 创建发布
    gh_release_create
  1. 查看发布详情
    gh_release_view
  1. 生成发布备注
    gh_release_notes_generate
  1. 发布净化镜像
    gh_mirror_publish
  1. 编辑发布并保持最新
    gh_release_edit makeLatest: true

适用场景与注意

  • 开发状态:该插件目前处于开发中,尚未正式发布。
  • 权限与安全:插件以 DSH 进程的权限运行。删除仓库、转移仓库或删除组织等高风险操作会被拒绝,即使用户设置了 confirm: true。
  • 缓存策略:读取操作会使用内存缓存(默认 TTL 为 60 秒),但写入操作总是直接写入网络并清除缓存。
  • 前置条件:使用前需在 DSH 凭证服务中配置 GitHub Token。

总结

dsh-github-ops 插件填补了 DSH 在 GitHub 发布流程和镜像管理上的空白。通过提供受保护的 API 和净化发布功能,它适合需要精细化控制 GitHub 发布流程的开发者。

查看插件详情
查看源码

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

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

Xiaoye