dsh-github-login

by Noob-stupid

模型与账号接入github 检测到 manifest package.json#dsh 社区精选 收录于 08-16

零终端的 GitHub 可视化登录插件:窗口内完成设备码授权,令牌同步进 gh CLI,附宿主端状态与唤起接口。

Visual GitHub login without a terminal: in-window device flow, token synced into the gh CLI, and host status/launch endpoints.

安装

dsh plugin --profile web add github:Noob-stupid/dsh-github-login

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

预览截图

dsh-github-login 截图dsh-github-login 截图dsh-github-login 截图

README

目录

DSH GitHub Login —— 独立的 GitHub 可视化登录插件

一个零终端的 GitHub 登录小工具:打开窗口 → 生成设备码 → 授权 → 完成。 设备码流程在窗口内(Chromium 网络栈)执行,与你的浏览器共用同一网络通道—— 浏览器能打开 GitHub,这里就能完成登录,不受终端/代理配置差异影响。

安装(DSH 插件模式)

一条命令装进 DSH,并自动启用宿主端插件(提供登录状态接口 + 一键唤起登录窗口):

dsh plugin --profile web add github:Noob-stupid/dsh-github-login

宿主端环回接口:

  • GET /github-auth/status → {ok, loggedIn, login}(只含账号名,绝不下发令牌)
  • POST /github-auth/open → 唤起登录工具窗口(本机存在 exe 时直接启动)

独立工具用法(不带 DSH 也行):

功能

  • 窗口内授权:授权页直接内嵌在窗口里(<webview>),带 前进 / 后退 / 刷新 按钮, 也可以一键改用外部浏览器打开;
  • 登录成功后令牌保存在 ~/.dsh/github-auth.json;
  • 同时同步进 gh CLI 的 ~/.config/gh/hosts.yml,gh 命令行立即可用(keyring 存在时 gh 以 keyring 优先);
  • 托盘常驻:随时查看账号状态 / 一键退出登录;
  • 复用 GitHub CLI 的公开 OAuth client_id(178c6fc778ccc68e1d6a),权限范围 repo workflow gist read:org。

用法

npm install        # 安装 electron(已配置国内镜像)
npm start          # 直接运行
npm run dist       # 打包为便携版单文件 exe(dist/DSH-GitHub-Login.exe)

与 dsh-plugin-hub 配套

dsh-plugin-hub(插件管理面板)会读取 本工具写入的同一份令牌文件:登录后面板的 GitHub 市场显示"已登录 GitHub:<账号>", 且服务端回退通道自动带认证(搜索配额 10 → 30 次/分钟)。

集成到其他应用(如桌面客户端)

把它当作一个独立进程调用即可:登录状态通过同一份文件(~/.dsh/github-auth.json) 共享,任何 DSH 生态工具都能读取:

spawn('<path>/DSH-GitHub-Login.exe', [], { windowsHide: false })

之后用 gh auth status 或直接读取 ~/.dsh/github-auth.json 验证登录状态。

原理

GitHub Device Flow:

  1. POST https://github.com/login/device/code → user_code + device_code
  2. 在窗口内嵌浏览器(或外部浏览器)打开 https://github.com/login/device,输入 user_code 授权
  3. 按 GitHub 给出的 interval 轮询 POST https://github.com/login/oauth/access_token
  4. 拿到 access_token → 主进程落盘 + 写入 gh 配置

轮询严格遵循服务器间隔;网络抖动不中断(验证码 15 分钟有效期);授权成功 即完成,用户名查询是尽力而为的补充。

与桌面端的关系

本仓库只包含登录插件本身,不包含任何桌面客户端代码。桌面客户端可在本地 集成它(见上);两者通过令牌文件共享登录状态。

帮助 / Help

遇到问题先看这里;仍有疑问请到 议题 提问。

  • 一直"等待授权":轮询与浏览器共用同一网络通道,浏览器能打开 GitHub 就一定能完成; 提示行会显示轮询次数,卡住时把提示文字发到 Issue。
  • 显示 unknown:授权已成功、令牌已保存,只是用户名查询失败;重启程序后状态页会重试。
  • gh 仍显示未登录:本工具写入 ~/.config/gh/hosts.yml;若系统 keyring 里有旧凭证, gh 会优先用 keyring——先 gh auth logout 清掉旧凭证即可。
  • 浏览器打开 GitHub 显示未登录:gh/DSH 令牌登录与浏览器网页登录是两套独立会话—— 本工具认证的是 gh 命令行层(令牌写进 github-auth.json 与 hosts.yml),并不会登录你的浏览器; 浏览器需单独登录一次 github.com(或在授权时选"改用外部浏览器打开",完成授权会顺带登录该浏览器)。
  • 如何退出登录:托盘菜单 GitHub: <账号> (click to log out),或窗口中点"退出登录"。

License

MIT

原始 README: https://github.com/Noob-stupid/dsh-github-login/blob/main/README.md ↗

同类插件

查看全部 →
模型与账号接入Anionex

agent-vision-toolkit

为纯文本模型"看图“设计更好的视觉工具箱和技能,支持多图理解,图片问答,前端UI还原、GUI 自动化等,并可选无缝接入多个主流agent,直接识别粘贴图片| A vision toolkit and skill designed for text-only llms — image Q&A, long-screenshot OCR, frontend UI restoration, and GUI automation, with optional seamless integration for Codex, Claude Code, Pi, Oh My Pi, and OpenCode

查看详情
928github+08-16
模型与账号接入toby-bridges

api-relay-audit

从 DeepSeek Harness 对 AI API 中转站和 LLM 代理运行本地安全审计,生成 Markdown 报告,覆盖提示词注入、模型替换信号、工具调用改写、错误泄漏、流完整性和按 profile 启用的 Web3 风险。

查看详情
791github+08-21
模型与账号接入ZJU-LLMs

OpenStory

✨ OpenStory 现已支持 DeepSeek Harness 插件! 现在可以通过 dsh-openstory 将 OpenStory 多智能体推演接入 DeepSeek Harness,让 agent 直接启动模拟、查看角色、下达指令并逐回合推进故事。查看 DSH 插件配置与使用指南。

查看详情
377github+08-17
模型与账号接入pulseaiclub

phi

pi的编码代理 ∞ 提供者、子代理、hashline编辑和权限门

查看详情
89github+08-16
模型与账号接入anysearch-team

anysearch-dsh

DeepSeek Harness(DSH)的 AnySearch 网络搜索提供方与高级搜索工具。

查看详情
79github+08-17
模型与账号接入kuangre123

codex-switch

Codex Switch 是一个 macOS 工具,一键配置 Codex 的自定义 API,同时保留官方 OpenAI 登录。保存后 Codex 的模型选择器里只会出现你选的那个 provider 的模型。也支持 Claude Code 的官方 / 自定义 API 切换。Codex Switch is a lightweight helper for configuring multiple coding-agent API routes. For Codex, it keeps Official OpenAI and a custom API provider configured in parallel, registers the custom model in Codex's mod

查看详情
67github+08-16