Skip to content

Releases

v0.3.1

Choose a tag to compare

@ZIye1208 ZIye1208 released this 05 Sep 17:05

变更

  • 恢复面板可视化仓库列表:输入 GitHub 用户名即可视化展示该用户公开仓库的 ⭐星 / 🍴fork / 语言,点击跳转仓库。(上一版 v0.3.0 为消除 403 把面板改成了纯引导,反而让面板不可用,本版恢复。)
  • 本地缓存降频:仓库统计结果存 localStorage,30 分钟内不重复请求,几乎不消耗 GitHub 未认证(每 IP 每小时 60 次)的配额,从源头避免触发 403/限流。
  • 失败回退缓存:遇到 403 / 429 / 网络失败时回退展示上次缓存数据并标注“展示缓存”,而不是空白或报错。
  • 保留宿主侧带 token 工具:gh_repo_stats / gh_current_user 继续负责克隆量、含私有仓库等需鉴权数据;token 始终只在 Node 宿主侧,不在浏览器。
  • 文档与描述同步:更新 package.json description、README.md / README.en.md(功能说明、防 403 原理、更新日志)。版本 0.3.0 -> 0.3.1。

说明

  • 经源码核实,DSH 无「宿主带 token 拉取 → 推给前端面板」的干净通道:sessions.provide 是浏览器端方法、宿主进程调不到;session projection 只能折叠会话事件、无法承载外部 fetch 数据,且设置面板(settings.plugins.tab)也拿不到 useProjection;host.call 对 bundled 插件被禁用。
  • 因此采用「前端直连公开 API + 本地缓存降频 + 失败回退缓存」这一现实可行的可视化方案:公开仓库的星/fork 无需 token 即可读取,配合 30 分钟缓存几乎不消耗配额,403 基本不再出现。
  • 需鉴权的数据(克隆量、私有仓库)请用宿主侧带 token 的 gh_repo_stats / gh_current_user 在对话里获取。

v0.3.0

Choose a tag to compare

@ZIye1208 ZIye1208 released this 05 Sep 16:51

变更

  • 彻底根治面板 403:移除浏览器侧对 api.github.com/users/{user}/repos 的未认证直连(未认证请求受 GitHub 每 IP 每小时 60 次限流,超限返回 403,与 DSH 宿主共享 IP 极易耗尽——即『昨天正常、今天 403』的根因)。
  • 前端不再直连任何 GitHub API:lib/client.js 删除 loadStats/fetch/用户名输入/localStorage 逻辑,改为纯示例提示 + 引导;仓库统计全部改走宿主侧带 token 的工具,前端零未认证请求。
  • lib/index.mjs 增强:fetchJson 区分 429(限流)/ 401(token 无效或过期)/ 403(缺 scope 或账号受限),错误提示更语义化。
  • 仓库统计改为对话工具:引导用户在对话里调用宿主侧带 token 的 gh_repo_stats / gh_current_user(限额 5000/小时、持久),浏览器不再承担拉取公开仓库数据。
  • 文档与描述同步:更新 package.json description、README.md / README.en.md(功能说明、移除浏览器直连的原因、更新日志)。版本 0.2.0 -> 0.3.0。

说明

  • 出于安全考虑,token 只保留在 Node 宿主侧,绝不下发到浏览器(浏览器持有 token 会暴露凭证)。
  • 浏览器端(面板)只做示例提示与引导;所有需鉴权的仓库数据(星/fork/克隆量)一律通过宿主侧模型工具 gh_repo_stats / gh_current_user 在对话里提供。
  • 若 mcp__github__* 工具未出现:先在对话里运行 github_token_status 确认 token,再重启 DSH。

v0.2.0

Choose a tag to compare

@ZIye1208 ZIye1208 released this 04 Sep 15:05

变更

  • gh_repo_stats 增强:并发拉取克隆量(限 5 并发,降低限流风险);标注「共 N 个 / 仅列前 30」;区分 429 限流 / 无权限 / 无数据;错误信息更友好(提示 token 无效)。
  • 新增 gh_current_user 工具:返回当前 token 对应的 GitHub 账号 login,便于在面板手动查询时填入。
  • 示例池标注写操作:30 条逐条标注 w:true,写/破坏性操作在 UI 显示 ⚠️。
  • 面板状态增强:mcp__github__* 未出现时给出排查指引(先 github_token_status 再重启)。
  • 剪贴板兜底:增加 document.execCommand('copy'),非 https / iframe 环境也能复制。
  • 用户名占位:输入框提示可用 gh_current_user 查询当前账号。

说明

  • 浏览器端无法安全读取宿主 token(避免凭证泄露),因此「当前账号」通过宿主侧模型工具提供。