前言¶
在 DeepSeek Harness(DSH)里写插件、跑会话时,GitHub 上的公开资料、仓库动态和贡献节奏,往往要单独开浏览器或换工具查看;若还要对照 DeepSeek 平台的余额与 API 消耗,又要再开一个标签页。把这几块信息收进宿主侧栏,填一次用户名就能看公开档案,需要时再配 token 读私有仓库或平台用量,能减少上下文切换。下面介绍社区插件 dsh-github-profile(维护者 wqx11235,MIT 许可,当前版本 0.1.4)。
这是什么¶
dsh-github-profile 是一个 DSH 客户端插件:在侧栏增加 GitHub 入口,聚合 GitHub 资料卡、仓库列表、一年贡献热力图,以及(可选)本地 DSH「干活」热力图和 DeepSeek 平台用量(余额、消费、请求、Tokens)。GitHub 部分只读公开 API,无需配置即可使用;用量部分依赖你在浏览器登录 platform.deepseek.com 后取得的平台 token。README 写明:非官方插件,个人维护,与 DeepSeek 官方无关。
核心功能¶
页面布局与切换¶
按 README 描述,界面大致分为:
- 顶部:头像、昵称、@账号、简介,以及公开仓库数、总星标、关注者、一年贡献、连续天数等统计。
- 中间:GitHub 贡献热力图(53 周 × 7 天,GitHub 原生五档绿色;悬停可看日期)。中间有三段切换 GitHub / DSH / 用量:
- DSH:本地会话存活区间的「干活」热力图(蓝色,按天计一次活跃)。
- 用量:DeepSeek 平台账户数据——充值余额、累计消费、近 30 天消费 / API 请求次数 / Tokens、每日柱状图、按 API Key 分组。
- 下方:仓库卡片(描述、语言、星标、最近推送时间),点击名称跳转 GitHub。
数据来源与缓存¶
| 内容 | 来源 |
|---|---|
| 用户资料 | api.github.com/users/<login> |
| 仓库列表 | api.github.com/users/<login>/repos?per_page=100&sort=pushed |
| 贡献日历 | 有 token 时用 GraphQL;否则 jogruber 公开 API;再失败才回退 github.com/users/<login>/contributions HTML |
宿主侧对三块数据各有 10 分钟缓存。DeepSeek 用量来自 platform.deepseek.com 网页登录态接口,3 分钟缓存。插件不上传数据,也不写 GitHub;可选 gh-token.txt 仅用于提高速率上限和读取私有仓库。
读取稳定性(v0.1.2 起)¶
早期版本只靠 GitHub 贡献页 HTML,本机直连 github.com 主站易 TCP 超时,会出现资料与仓库正常、热力图空白的情况。当前实现采用三路降级、分块容错:资料、仓库、热力图各自缓存与失败互不影响;24 小时内会保留上次结果并提示「部分数据没取到」、支持一键重试;token 遇 401/403 会去掉后以匿名重试;单请求 8 秒超时,网络抖动会重试一次。
DSH 0.2.x 适配(v0.1.3)¶
针对 @deepseek-ai/dsh-desktop 0.2.2-rc.1(hostProtocolVersion 4)核对过:webServer.register 的 /gh-profile/data 路由、__ModuleLoader__ 与 sidebar.panellist / main 插槽、主题 token --dsw-alias-* 均保持可用;客户端 inject 收敛为 [],仅 require('react')。
安装与启用¶
需要已安装 DeepSeek Harness(桌面端或 Web 端)及其插件管理器。
README 给出的安装方式是克隆仓库后从本地目录安装:
git clone https://github.com/wqx11235/dsh-github-profile.git
在 DSH 中:插件管理 → 从本地目录安装,选中克隆后的目录。安装后侧栏会出现 GitHub 图标(位于 AstBot 下方)。
若环境可执行 dsh 命令,可用绝对路径添加插件:
dsh plugin --profile <你的 profile> add /absolute/path/to/dsh-github-profile
插件以当前 DSH 进程权限运行,安装前建议自行查看仓库源码与 MIT 许可证。
典型用法¶
GitHub 公开档案¶
- 点击侧栏 GitHub。
- 右上角填写 GitHub 用户名,点「开始」。
- 用户名保存在浏览器
localStorage,下次自动加载。
公开信息无需额外配置。
可选:私有仓库¶
将 GitHub Personal Access Token 写入一行纯文本:
~/.dsh/gh-token.txt
仅需 repo 读权限;插件只读使用,不做写操作。也可在插件管理配置中通过 tokenFile 指定路径(默认即上述路径)。
插件配置项¶
在插件管理对应行的配置里可设置:
login: your-github-login # 默认用户名,留空则每次在页面上填
tokenFile: ~/.dsh/gh-token.txt # 可选 token 文件(默认就是它)
DeepSeek 平台用量(v0.1.4)¶
第三段 用量 需要平台 token(不是 API Key):
- 浏览器登录 https://platform.deepseek.com 。
- F12 → Network → 任选
/api/v0/...请求。 - 复制请求头
Authorization中Bearer之后的字符串。 - 存为一行到
~/.dsh/deepseek-platform-token.txt,或插件目录下的platform-token.txt。
token 过期时页面会提示,重新获取并覆盖即可。
实现要点(供开发者参考)¶
- 宿主:
index.js注册同源路由GET /gh-profile/data?login=<user>,聚合三类 GitHub 数据源。 - 客户端:
client.js通过window.__ModuleLoader__.load注册到main(keyed)与sidebar.panellist(list,order13)。 - 无构建步骤,纯 JavaScript,改代码后刷新页面即可。
适用场景与注意¶
适合希望在 DSH 工作区内快速扫一眼 GitHub 公开形象、仓库列表和贡献节奏,并可选对照 DeepSeek 平台消费的开发者。不适合把本插件当作 GitHub 或平台的官方客户端:数据口径、缓存策略与失败回退以 README 为准;用量依赖自行保管的平台 token,请勿将 token 提交到版本库或共享环境。
社区插件目录由 SkillHub 等站点维护,与 DeepSeek / 幻方无官方从属关系;本插件在 GitHub 上星标数为 1(以目录页信息为准)。
结尾¶
dsh-github-profile 把 GitHub 档案页能力与 DeepSeek 用量面板收进 DSH 侧栏,公开 GitHub 填用户名即可,私有仓库与平台用量按文档配置本地 token 文件即可。进一步了解可在社区目录页查看介绍,在 GitHub 仓库阅读完整 README 与版本说明。
- 目录页:https://www.skillhub.cn/plugins/wqx11235/dsh-github-profile
- 源码:https://github.com/wqx11235/dsh-github-profile