GitHub account management plus a local Git workflow for the web GUI with clone, fast-forward pull, status, commit, push, and host-side push guards.
Install
# from a prebuilt release tarball
dsh plugin --profile web add "https://github.com/andyfan1094/dsh-github/releases/download/v0.1.2/dsh-github-0.1.2.tgz"
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:andyfan1094/dsh-github
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
中文文档 | English
DSH Web UI 的 GitHub 与本地 Git 工作流插件。
Features
- GitHub Personal Access Token account management with secret-free summaries.
- GitHub REST repository listing for github.com and GitHub Enterprise API URLs.
- Local Git operations: clone, fast-forward pull, status, commit, push, and force-with-lease.
- Sidebar panel with account, repository, local Git, and settings tabs.
- Push and force push are disabled by default and are guarded on the Host side.
- Token storage uses ~/.dsh/dsh-github.json with an atomic write and mode 0600.
- Git HTTP authentication uses an ephemeral http.extraheader environment configuration; tokens are not placed in clone URLs or process arguments.
Install in a profile
Download the newest dsh-github-*.tgz from Releases and add it to the profile:
dsh plugin --profile web add D:\downloads\dsh-github-0.1.2.tgz
For local development, build and install from a checkout instead:
pnpm install
pnpm run build
dsh plugin --profile web add link:D:\项目\dsh-github
Restart the existing DSH Web process after installation. Open the GitHub sidebar entry and add a replacement token there. The plugin deliberately does not ship a token in source, package metadata, logs, or documentation.
Agent tools
- github_auth_list, github_auth_test
- github_repo_list
- github_clone, github_pull, github_status
- github_commit, github_push
Compatibility
- DSH Host
0.1.0-rc.8or newer compatible release. - Node.js
22.19.0or newer. - Git must be available through the configured executable.
Security
The account file is local configuration, not a system secret vault. Use a fine-grained GitHub token with only the repositories and permissions needed by DSH. Revoke any token pasted into chat or source control and create a new one through the panel.
Links
More in this category
zhu1090093659/dsh-web#packages/dsh-git-graph★ 8440
Git branch selector and Git graph for the dsh web GUI: switch branches and explore branch-lane and commit history from the conversation header.
Akimiya-z/codex-guard#dsh★ 138
Pre-submit pull-request hygiene checks inside DeepSeek Harness: scans the current diff for TODO leftovers, hardcoded secrets, and non-conventional commit subjects.
Cerbur/clutch-dsh#clutch-dsh-worktree★ 30
Adds a Worktree view to DSH Web UI that groups Sessions by Git worktree while keeping DSH as the source of truth.
lehhair/dsh-diff-viewer★ 26
PiUI-style diff viewer replacing the stock DiffBlock for write/edit tool calls.
DamonKoy/dsh-web-ui#dsh-git-graph★ 23
Git branch selector and Git graph in the conversation header of the dsh web GUI.
PerryLink/dsh-github★ 23
Official-grade GitHub CI integration: a composite action.yml, a polling PR review bot with idempotent inline comments and a status-check gate, plus PR/issues tools with every write gated by human approval.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.