dsh-github-mirror
Manifest valid★ 1A GitHub repositories launcher for the DSH Web client, with mirror browsing and accelerated clone/download routes.
dsh-github-mirror
A GitHub repository launcher panel for the DeepSeek Harness Web GUI. It puts a GitHub entry in the sidebar, lists your repositories, and opens them through a configurable mirror instead of github.com.
Features
- Sidebar panel — a GitHub icon in the DSH sidebar opens the repository browser.
- Repository list — reads up to 100 recently updated repositories and shows description, language, stars, update time, and private/fork/archived badges.
- Mirror browsing — repository links are rewritten to the selected mirror (
bgithub.xyzby default). Also supportsgitclone.com, official GitHub, or a custom mirror. - Mirror health check — when the panel opens, it probes the selected browse mirror once. If the mirror is unreachable, links temporarily fall back to official GitHub and a banner explains what happened.
- Accelerated clone/download —
git clonecommands and zip downloads use a separate route (ghfast.topby default,gh-proxy.com,gitclone.com, or official). - Quick open — paste
owner/repo,https://github.com/owner/repo,git@github.com:owner/repo.git, or a mirror URL into the search box and press Enter. - Optional private repositories — a read-only personal access token enables
/user/repos, including private and organization repositories, and raises the API limit from 60 to 5,000 requests per hour. - Offline cache — the last successful list is cached for 6 hours and remains visible when a refresh fails.
Requirements
- A DSH build with client plugin support (tested with
0.2.1-rc.2). - Network access to
api.github.com. If it is blocked, the panel automatically tries thegh-proxy.comAPI mirror for unauthenticated requests. - No build step:
client.jsis the browser bundle.
Install
From the DSH Plugins page
-
Open Settings → Plugins.
-
Choose Add plugin → Install a third-party plugin.
-
Enter the Git address:
https://github.com/Jianmo-R/dsh-github-mirror -
Enable the bundle and restart DSH if the host asks for a restart.
The plugin is installed into the active DSH profile. It does not require npm publishing.
Manual install
Clone the repository somewhere stable, then add it to the profile as a linked package:
// <DSH_HOME>/profiles/<profile>/package.json
{
"dependencies": {
"dsh-github-mirror": "link:C:/path/to/dsh-github-mirror"
},
"dsh": {
"profile": {
"bundles": [
"...",
"dsh-github-mirror"
]
}
}
}
Run pnpm install in the profile directory and restart DSH. The plugin's own cordis.patch.yml inserts the github-mirror Loader entry.
From the CLI
If your DSH installation exposes the dsh CLI:
dsh plugin add https://github.com/Jianmo-R/dsh-github-mirror
Usage
- Click the GitHub icon in the DSH sidebar.
- Enter a GitHub username on first use. Only a username is needed; do not paste an email or a full URL.
- Public repositories work without logging in. For private repositories, open the gear menu and add a token with
reporead access. - Use the two route selectors at the top of the panel:
- Browse via rewrites repository and profile links.
- Clone / download rewrites
git cloneand zip URLs.
- Each repository row has three actions: copy clone command, download the default branch zip, and open in the selected mirror.
The username, routes, and cache are stored in the browser. The token is session-only unless Remember the token is checked.
Routes
| Route | Used for | Notes |
|---|---|---|
bgithub.xyz | Browse | GitHub-style web mirror; availability varies |
gitclone.com | Browse / Git | Web mirror and clone acceleration |
ghfast.top | Clone / downloads | Proxies github.com and raw.githubusercontent.com |
gh-proxy.com | Clone / downloads / API | Also used as the unauthenticated API fallback |
| Official GitHub | Fallback | Direct connection |
Mirrors are third-party services and can change or disappear. Every route is selectable at runtime, and the settings dialog accepts custom mirror and acceleration prefixes, so no code change is needed when a mirror goes down.
Privacy and security
- The username, route choices, and repository cache live in
localStorage. - The token is kept in
sessionStorageby default and is written tolocalStorageonly when Remember the token is enabled. - The token is sent only to
https://api.github.com. It is never forwarded togh-proxy.comor any other mirror. - The cache can contain private repository names and descriptions. Clear local settings removes it.
- The plugin opens links in the system browser; it does not proxy git traffic or store repositories locally.
Limitations
- Only the first 100 repositories are read (sorted by recent update); there is no pagination yet.
- Without a token,
/users/:name/reposreturns public repositories owned by that account. Organization and collaborator repositories require a token and/user/repos. - A mirror page is only as fresh as the mirror; it may lag behind GitHub.
- Fetched repository data comes from the GitHub REST API. The panel is a launcher, not a full GitHub client.
Development
client.js Browser bundle (plain CJS factory registered with window.__ModuleLoader__)
index.js Empty host half; gives the bundle a Loader entry
cordis.patch.yml Inserts the github-mirror entry
package.json DSH client declaration and package metadata
There is no bundler or build step. After editing client.js, DSH's client module system reloads it by file revision; refresh the page if needed.
Useful checks:
node --check client.js
node -e "JSON.parse(require('fs').readFileSync('package.json','utf8'))"
See CONTRIBUTING.md for the manual test checklist.
License
Comments
Loading…
From the same category
by awesome-dsh-plugin
A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表
★ 19.6k
CC0-1.0
Python
Oct 19, 2026
by 0xsline
DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.
★ 1.2k
CC0-1.0
Python
Oct 16, 2026
by pax-beehive
Open-source CLI, schemas, resolver, and DSH agent tools for DSH Plugin Hub
★ 388
MIT
TypeScript
Oct 6, 2026
by xiajiajun516
DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.
★ 215
MIT
TypeScript
Oct 18, 2026
dsh plugin --profile web add dsh-config-managerby yjh051108
推荐组件(非必须):DeepSeek Harness 运行时注入器;已随 dsh-routing-suite 单仓库化保留,本仓库继续维护/发布。
★ 166
TypeScript
Oct 16, 2026
dsh plugin --profile web add @dsh-external/dsh-super-injectorby jigjoy-ai
A CLI that turns a goal into a pull request - and a sandbox for testing concurrent AI coding agents on the Mozaik runtime.
★ 124
MIT
TypeScript
Oct 13, 2026