DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Tool Github — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
T

dsh-tool-github

Tool Github

适用于 DeepSeek Harness 的 GitHub REST API 工具:仓库、搜索、议题、拉取请求、评论、账户绑定和工作区集成,并在 Web GUI 中提供浏览器端 GitHub 面板

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:tkwkeven/dsh-tool-github#c6da2f773cb76a06457374cbe73d922ba55ce0a8
README兼容性版本

兼容性与来源证明

Tool Github 以 dsh-tool-github 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/8/22

版本

0.1.0stable
2026/8/22

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/8/22
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Sdk Minimal@deepseek-ai/dsh-sdk-minimal独立的最小 SDK 配置包:JSON-RPC、一个 DeepSeek 适配器、持久化 Shell 和 JSONL 会话Sdk App@deepseek-ai/dsh-sdk-appdsh SDK 配置包:基于 dsh-base 提供 stdio JSON-RPC 服务和进程生命周期管理Subagent Codex@deepseek-ai/dsh-subagent-codex基于官方 app-server 协议的一次性 Codex 子代理提供程序

README

dsh-tool-github

English · 中文

GitHub REST API tools for DeepSeek Harness (DSH). Registers model-facing github_* tools so the agent can bind a GitHub account, query repositories, search code/issues, read file content, create issues / pull requests / comments, and clone repositories into selectable workspaces. Also ships a browser-side GitHub panel for the web GUI (sidebar icon → account status, workspace list, bind / add-workspace actions) backed by /github-* commands.

Web GUI panel

After install and a full GUI restart (dsh web — the client plugin discovery only runs at process start and caches "not a client package" verdicts, so a running GUI will not pick up a newly added dsh.client declaration), a GitHub icon appears in the sidebar rail (next to the settings button). Click it to open the GitHub panel:

  • Status — bound account (@login, token source) and registered GitHub workspaces (from /github-status)
  • My repos — list the bound account's repositories as clickable rows; click one to clone and register it as a workspace (from /github-my-repos + /github-workspace-add)
  • Bind account… — paste a personal access token (runs /github-bind <token>)
  • Add workspace… — enter owner/repo (or owner repo [branch]) to clone and register a workspace (runs /github-workspace-add)
  • Refresh — re-read status

The panel talks to the host only through the /github-* commands (ctx.remote.commands.execute), so it never holds a token or touches the GitHub API itself. The same commands are also typed directly in the composer:

/github-status              Show account + workspace status
/github-bind ghp_xxx        Bind an account
/github-unbind              Remove the stored token
/github-workspace-add owner repo [branch]
/github-workspace-list      List cloned GitHub workspaces

Tools

Account binding

ToolDescription
github_bindValidate a personal access token against the API and persist it to the credential store. After binding, every github_* tool authenticates as that account automatically.
github_whoamiShow the bound account, token source (credential store / plugin config / environment), and public profile.
github_unbindRemove the stored token and disconnect the account.

GitHub API

ToolDescription
github_repoRepository metadata (stars, forks, language, license, topics, activity)
github_searchSearch repositories, code, or issues
github_my_reposList the bound account's repositories (public + private per token scope) — pick one to work on or add as a workspace
github_issuesList repository issues (state / label filters)
github_create_issueCreate an issue (requires a bound account / token)
github_prsList pull requests (state filter)
github_create_prCreate a pull request (requires a bound account / token)
github_contentRead a file or list a directory at any ref
github_commentComment on an issue or PR (requires a bound account / token)

Workspaces

ToolDescription
github_workspace_addClone a repository into the local workspace root (~/.dsh/github-workspaces) and register it with the harness workspace registry — it then appears in the workspace picker (sidebar / new-session hero) and can be selected as the working directory. Uses git clone when possible and falls back to a codeload tarball download when git TLS is unavailable.
github_workspace_listList repositories cloned by github_workspace_add, with local paths and registration state.

Install

# from this checkout directory
dsh plugin --profile web add .

Or via a local path:

dsh plugin --profile web add D:\keep_try\dsh-tool-github

Restart the web GUI (dsh web) after installing or updating so the new bundle loads.

Usage examples

"帮我绑定 GitHub 账号"                       → github_bind (输入 token)
"当前登录的 GitHub 账号是谁"                 → github_whoami
"把 deepseek-ai/DeepSeek-Harness 加为工作区" → github_workspace_add
"有哪些 GitHub 仓库可以作为工作区"           → github_workspace_list
"deepseek-harness 有多少 star"               → github_repo
"搜 python 的 PDF 解析库 stars:>3000"        → github_search

Configuration

The plugin accepts a Config with:

  • token — GitHub personal access token (default: ""). Prefer github_bind (credential store) or the GITHUB_TOKEN environment variable; resolution order is credential store → plugin config → environment.
  • baseUrl — API base URL (default https://api.github.com; set to your GitHub Enterprise URL, e.g. https://github.example.com/api/v3).
  • timeoutMs — per-call timeout (default 30000).
  • maxResults — list/search result cap (default 10).
  • workspaceRoot — where github_workspace_add clones repositories (default ~/.dsh/github-workspaces).

Example profile patch (~/.dsh/cordis.patch.yml or profiles/<name>/cordis.patch.yml):

- id: tool-github
  config:
    maxResults: 20
    workspaceRoot: D:\github-workspaces

How account binding works

github_bind validates the token against GET /user, then stores it through DSH's credential seam (ctx.credentials) under the GITHUB_TOKEN reference — the same store the Models page writes, persisted in $DSH_HOME/.credentials.yaml. Every other tool resolves the token per operation, so a changed credential takes effect on the next call without a restart. github_unbind removes only a credential-store binding; environment and plugin-config tokens are read-only sources.

How workspace integration works

github_workspace_add clones <owner>/<repo> into <workspaceRoot>/<owner>/<repo>, then calls ctx.workspaceRegistry.create(path, title) — the same registry the workspace picker renders. The repository immediately becomes a selectable workspace: sessions opened there use the repo as their working directory, with the agent's file tools operating inside the clone.

Development

npm install          # install dev/test dependencies
npm run check        # syntax-check both bundles
npm test             # full test suite (host + client + schema + contract)
npm run test:host    # host tests only (commands, schema, contracts)
npm run test:client  # client DOM integration test

CI (.github/workflows/ci.yml) runs on push/PR: syntax check + full test suite on Node 20 & 22, plus an npm pack --dry-run package sanity job.

License

MIT