Skip to content

PerryLink/dsh-github

31Last commit Aug 14, 2026

dsh-github DSH plugin

dsh-github is a bundle plugin for DeepSeek Harness that provides 12 tools and 3 command families to interact with GitHub. It enables AI agents to perform GitHub operations such as creating pull requests, reviewing PRs with inline or summary comments, managing issues, and searching repositories, all while requiring human approval for write actions and keeping tokens secret.

How to install the dsh-github DSH plugin

dsh plugin --profile <name> add @perrylink/dsh-github

This source command needs manual review. Copying does not run it.

dsh-github DSH plugin data source

dsh-github DSH plugin snapshot date: Aug 16, 2026

discovered

What the dsh-github DSH plugin can do

  • Create pull requests with full lifecycle (create, update, merge) using `/pr create`, `pr_create`, `pr_merge`, `pr_update`.
  • Review PRs with inline or summary comments, including background review jobs via `/review` and `review_post`.
  • Manage issues: open, comment, close using `/issue open`, `issue_open`, `issue_comment`, `issue_close`.
  • Read repository metadata and files via `gh_repo` and `gh_file`.
  • Search issues and pull requests using GitHub search syntax via `gh_search`.
  • Human approval for all write operations, with customizable `allowedActions` whitelist.
  • Token secrecy: credentials resolved per operation, never logged or exposed in errors, renders, or events.
  • 429 retry backoff with quota surfacing; errors reported per section.
  • Model review option via subagent seam (`reviewMode: 'model'`).
  • 5-language documentation and multi-channel installation (npm registry, tarball, git source, local link).

Where the dsh-github DSH plugin fits

  • An AI agent reviews a PR and posts inline comments after human approval, using background review jobs.
  • Automatically create and merge PRs based on user instructions, with approval gating at each write step.
  • Search for issues and PRs using GitHub search syntax to find relevant items without leaving the DSH interface.
  • Fetch repository metadata and file contents to inform agent decisions, such as understanding code structure before making changes.
  • Manage issue lifecycle (open, comment, close) directly from assistant conversations, with human approval for each write action.

Who the dsh-github DSH plugin is for

  • Developers who use DeepSeek Harness and want to integrate GitHub operations into their agent workflows.
  • Teams that need AI-assisted PR review and issue management with approval gates to ensure security.
  • Users seeking a secure, token-secret way to let AI agents interact with GitHub repositories.

dsh-github DSH plugin limitations

  • Requires a GitHub token with appropriate permissions; token must be configured via credentials seam, environment variable, or `gh` CLI.
  • Some features (e.g., model review mode) require the host's subagents seam and may fail if absent.
  • Depends on the GitHub REST API and may be affected by rate limits; the plugin surfaces remaining quota but does not bypass them.
  • Git source installation requires pnpm allowBuilds configuration; npm registry or tarball channels are simpler.
  • Only works within DeepSeek Harness (DSH) environment; cannot be used standalone.

dsh-github DSH plugin: from the repository README

Quoted from the PerryLink/dsh-github README, the upstream source of the dsh-github DSH plugin. Copyright remains with the original authors.

Create pull requests · review PRs with inline or summary comments · manage issues · search — every write gated by human approval, token never logged. </p> <p align="center"> <a href="README.zh-CN.md">中文</a> · <a href="README.es.md">Español</a> · <a href="README.pt.md">Português</a> · <a href="README.hi.md">हिन्दी</a> </p> <p align="center"> <img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License: Apache 2.0"> <img src="https://img.shields.io/badge/dsh-0.1.0--rc.6-4D6BFE" alt="dsh: 0.1.0-rc.6"> <img src="https://img.shields.io/badge/dsh-dsh--plugin-4D6BFE" alt="dsh-plugin"> <img src="https://img.shields.io/badge/node-%5E22.19%20%7C%7C%20%3E%3D24-brightgreen" alt="Node: ^22.19 || >=24"> <img src="https://github.com/PerryLink/dsh-github/actions/workflows/ci.yml/badge.svg" alt="CI"> <img src="https://img.shields.io/badge/documents-EN%2FZH%2FES%2FPT%2FHI-8257D0" alt="Documents: EN/ZH/ES/PT/HI"> </p> --- **dsh-github** is a bundle plugin for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (`dsh`) — the "everything is a plugin" agent harness. It fills the GitHub gap between dsh and tools like [Claude Code](https://gith

Read the full READMERepository license: Apache-2.0

dsh-github DSH plugin questions

How do I install dsh-github?

You can install it via the npm registry by running `dsh plugin --profile <name> add @perrylink/dsh-github`. Alternatively, you can use the tarball channel by packing the plugin with `pnpm pack` and then adding the generated `.tgz` file. For git source installation, use `dsh plugin --profile <name> add 'github:PerryLink/dsh-github#<sha>'` and ensure pnpm allowBuilds is configured.

How do I configure a GitHub token for dsh-github?

The recommended way is to set the token in the credentials seam: create or edit `$DSH_HOME/.credentials.yaml` and add `GITHUB_TOKEN: <your token>`. You can also set it as an environment variable named `GITHUB_TOKEN` (or custom via `tokenRef`), or let the plugin use the `gh` CLI credentials. The `tokenSource` config key controls the priority: `auto` (credentials → env → gh) or a specific source.

Can dsh-github create a pull request?

Yes, it can. Use the `/pr create [title]` command or the `pr_create` tool. The agent will read the current git state (branch, changed files, commits ahead) and draft a PR. After human approval, the PR is opened and the URL is returned. You can also set `autoCommit: true` in the config to allow the agent to commit and push before creating the PR.

How do I review a PR with dsh-github?

You can use the `/review <pr>` command to start a background review job. The agent fetches metadata, diff, comments, CI status, and static findings. The completion output shows a summary. To publish the review, use `/review post <jobId>` and the review will be posted as a summary comment or inline comments (depending on `review_mode`). Each write action requires human approval.

How do I uninstall dsh-github?

Run `dsh plugin --profile <name> remove @perrylink/dsh-github`. This will remove the plugin from the profile. If you installed via git source or tarball, the same command works. After removal, you can verify with `dsh --profile <name> --dump-config` to ensure the plugin section is gone.