DeepSeek Harness 插件:dsh-github-companion

前言

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 创建)。
  • 零外部依赖:不依赖 gh CLI,直接使用 fetch/undici,支持 Windows/Linux/macOS 无需配置 PATH。
  • 进程内权限门:提供 github-companion-gate bundle 作为权限校验的实现示例。
  • 成本纪律 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 仓库。

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

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

小夜