Back to home@wang-junjian

dsh-github-trending

DeepSeek Harness 插件 GitHub Trending

Stars
0
Language
TypeScript
Created
Aug 23, 2026
Updated
Aug 24, 2026
GitHub repo

Introduction

@wang-junjian/dsh-github-trending

A DeepSeek Harness bundle plugin that exposes a github_trending tool backed by https://github.com/trending.

What it does

The plugin registers one model-facing tool, github_trending, that fetches the public GitHub Trending page for a given language and time window and returns a structured list of trending repositories.

Each result includes:

  • rank — 1-based position on the page
  • owner / name / fullName
  • url — absolute GitHub repository URL
  • description — repository tagline
  • language — primary language
  • stars — total star count
  • forks — fork count
  • starsToday — stars gained today (or this week/month)

Installation

Install the plugin into a DeepSeek Harness profile. The plugin does not modify the deepseek-harness repository itself.

# From a local checkout
dsh plugin --profile headless add /Users/junjian/GitHub/wang-junjian/github-trending

# Or from a registry, once published
dsh plugin --profile headless add @wang-junjian/dsh-github-trending

The bundle is appended to dsh.profile.bundles automatically.

Usage

Ask the agent to list trending repositories:

Show me today's trending Python repositories.

Tool parameters

ParameterTypeRequiredDescription
languagestringnoProgramming language filter, e.g. python, typescript, go.
sincestringnodaily (default), weekly, or monthly.
maxResultsintegernoMaximum repositories to return (1–25, default 10).

Cordis config

The bundle patch inserts one row by default. You can override its config in your profile's cordis.patch.yml:

- id: github-trending
  config:
    enabled: true
    timeoutMs: 30000
    maxResults: 10

Development

pnpm install
pnpm run build
pnpm run test

Known limitations

  • GitHub Trending has no official API. The parser targets the current server-rendered HTML layout and may need updates if GitHub changes markup.
  • Unauthenticated requests are subject to GitHub's IP rate limits.
  • The plugin fetches GitHub directly rather than through ctx.web, so it does not inherit the harness web capability's fetch policies.