DeepSeek Harness plugin

dsh-github-moxingov

DeepSeek Harness plugin: GitHub repository/issue search, repo and issue details, and file reading tools (github_search / github_get). Anonymous by default; an optional read-only fine-grained token

Jump to install

Source facts

Repository
moxingovo/dsh-github
Latest update
Aug 15, 2026
Category
Tools & Capabilities
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/moxingovo/dsh-github
Plugin: dsh-github-moxingov
Author: moxingovo

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.mdSource · read only
README language

dsh-plugin-github

中文 | English

A GitHub retrieval plugin for DeepSeek Harness. After install the agent gains two tools:

  • github_search — find repositories and issues/PRs with native GitHub search syntax (e.g. repo:vercel/next.js is:issue).
  • github_get — read one resource in full: repository metadata, an issue or pull-request body, or a decoded file.

Anonymous by default (60 requests per hour per IP). Set a read-only fine-grained token to unlock code search and raise the limit to 5000 per hour. Read-only by design: the plugin never creates issues, comments, or code.

Install

dsh plugin --profile web add dsh-plugin-github

# or directly from Git:
dsh plugin --profile web add git+https://github.com/moxingovo/dsh-github

Restart dsh web. New conversations gain github_search and github_get automatically.

Optional token

Create a fine-grained personal access token with Repository access = Public Repositories (read-only) and put it in the environment (or in your $DSH_HOME/.env):

GITHUB_TOKEN=github_pat_...

Without a token everything still works anonymously; only code search and the higher rate limit need the token.

Configuration

KeyDefaultMeaning
tokenEnvGITHUB_TOKENEnvironment variable naming the optional token.
requestTimeoutMs30000Per-request timeout (ms).
searchMaxPerPage30Page-size ceiling for github_search (API maximum 100).
fileMaxChars200000File character cap for github_get (value-level, with a truncated flag).

Override any field in profiles/web/cordis.patch.yml — later layers win per row.

Error codes

Tools fail with structured errors carrying these codes: GITHUB_UNAUTHORIZED (401, typically code search without a token), GITHUB_FORBIDDEN (403, rate limit or permissions), GITHUB_NOT_FOUND (404), GITHUB_API_ERROR (422 or other non-2xx), GITHUB_BAD_RESPONSE (non-JSON body), GITHUB_REDIRECT_REFUSED (credential-safety guard), GITHUB_REQUEST_FAILED (network), GITHUB_FILE_TOO_LARGE (files over 1MB are not inlined by the API).

Security

  • The token is read from the environment only; it never enters configuration files, logs, or tool output.
  • Every request refuses redirects, so the token can never be forwarded to another origin.
  • The token is sent only to api.github.com.

Skills

Two companion skills ship in skills/: plugin-tool-github (tool usage) and plugin-web-github (service configuration and error codes). Copy them into your harness skills directory to make the agent consult them before calling the tools.

Development

Node 22 or newer:

npm ci
npm test

The repo pins its dependency tree in package-lock.json. The test suite runs fully offline (mocked HTTP); the typecheck runs against the published DeepSeek Harness packages.

Known issue

Early rc releases of the official DeepSeek Harness packages declare an unpublished peer dependency: dsh-agent 0.0.1-rc.1/rc.2 and dsh-session 0.0.1-rc.1/rc.2 list @deepseek-ai/dsh-type-meta, which is not on the npm registry. A fresh install whose resolver lands on those versions fails with a 404 for @deepseek-ai/dsh-type-meta (reproduced with pnpm 11 and the npmmirror mirror; npm resolves 0.0.1-rc.5 and succeeds). Workarounds: npm with the committed package-lock.json (npm ci), or dsh plugin add inside an already-installed harness workspace, whose lockfile pins resolvable versions. This is an upstream rc-stage publishing issue and disappears once upstream fixes the metadata.

License

[MIT](LICENSE)