Plugin directory / Developer / dsh-git-nexus
dsh-git-nexus
Verified · install-tested on dsh JFWaskin
What it does
Unified Git + GitHub + workflow + files panel for the DeepSeek Harness (DSH) web profile. Community plugin tagged dsh-plugin.
Works — verified, early-stage project
Unified Git + GitHub + workflow + files panel for the DeepSeek Harness (DSH) web profile. Community plugin tagged dsh-plugin. It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-git-nexus
A single, self-contained DeepSeek Harness (DSH) web plugin that merges the
git-management features of the popular dsh-web-ui plugin (SCM change panel +
branch management) with GitHub access, a workflow board, and file browsing —
one panel instead of several plugins.
Features
- Changes (SCM) — working-tree status, per-file diff, stage / unstage / discard, commit.
- Branches — list, switch, create, delete.
- Remote — push, pull, sync (pull then push), fetch.
- Log — bounded, structured commit history.
- Files — list tracked files with search, read any text file.
- Workflow — persistent step board (Claude Code-style plan tracking).
- GitHub — OAuth Device Flow login (full
repoaccess, revocable), scope seal, PR creation.
Install
dsh plugin --profile web add "file:/absolute/path/to/dsh-git-nexus"
# then restart the web profile
dsh web
The plugin appears under Settings → Plugins and the panel pill appears in
the session header of git-managed workspaces.
Compatibility
Targets DSH 0.1.0-rc.6 (web profile). The plugin ships a strict
Typert host manifest
(./typert) and mounts strict client codecs, matching the conventions of the
plugins inside the official repository.
This is a community plugin published under the dsh-plugin
topic — the channel the DeepSeek Harness
maintainers ask community extensions to use (see the project's
CONTRIBUTING.md).
GitHub OAuth
GitHub auth uses the device flow,
so no long-lived PAT is written to disk. You need a GitHub OAuth App client id:
- Go to GitHub → Settings → Developer settings → OAuth Apps → New OAuth App.
- Any name / homepage / callback will do (device flow ignores the callback).
- Paste the resulting Client ID into the panel's GitHub tab, click Connect,
then open the printed URL and enter the user code.
The resulting token requests the repo, workflow, read:user and user:email
scopes and is stored with 0600 permissions under~/.dsh/storages/dsh-git-nexus/. If the gh CLI is already authenticated, the
plugin uses it automatically and no client id is required.
Security notes
- Every git/file command runs through a fresh
/bin/sh -cchild process with a
30s timeout and a 2 MiB output cap. The web profile scopes DSH'sshell
service to per-session agent realms, so the host-plane gateway executes
directly instead of injecting it. - Branch names, paths, and commit messages are shell-quoted; control characters are rejected.
- GitHub tokens live only under
~/.dsh/storages/dsh-git-nexus/settings.json(mode0600).
License
MIT
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-git-nexus for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
This plugin is GitHub source (not published to npm) — install it straight from the repo:
Web profile:
dsh plugin --profile web add github:JFWaskin/dsh-git-nexus Headless (CLI) profile:
dsh plugin --profile headless add github:JFWaskin/dsh-git-nexus Test report
Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.