andyfan1094/dsh-github0

dsh-github

GitHub authentication and local Git workflow plugin for the dsh web GUI: accounts, repository browsing, clone, pull, push, status, commit, and a settings panel. Token is stored in ~/.dsh/dsh-github.json (0600, atomic write); push is disabled by default. Standalone Cordis plugin — mounted via cordis.patch.yml + a profile node_modules link, no dsh source changes.

包名
dsh-github
版本
0.1.2
许可证
Apache-2.0
最近更新
2026年8月22日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:andyfan1094/dsh-github

dsh-github

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.8 or newer compatible release.
  • Node.js 22.19.0 or 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.