dsh-allinstar:在 DSH 里给已装插件对应的 GitHub 仓库点 Star

前言

DeepSeek Harness(DSH)采用「一切皆插件」的扩展方式,profile 里往往会装不少来自 GitHub 的插件。日常给上游仓库点 Star,通常要打开浏览器、逐个搜仓库,和你在 Harness 里看到的「已安装列表」是两套界面。维护者 bfzdhld 的 dsh-allinstar(联网工具类)把这件事收进 DSH Web UI:从本机 profile 读出各插件声明的 repository,归一化成 owner/repo,在插件页新增标签页,并在详情页提供 Star 控件;需要写操作时再走 GitHub API,且 token 只发往 api.github.com。

这是什么

dsh-allinstar 让你在 DeepSeek Harness 内,为已安装 DSH 插件背后声明的 GitHub 仓库执行 Star / Unstar,无需离开界面。当前 package 版本为 1.0.0,许可证 MIT,要求 Node 20+、DSH ≥ 0.2.1,且需带 Web UI 的 DSH 环境。社区目录页:skillhub 条目;源码与说明:GitHub 仓库。

核心功能

下面按 README 已说明的行为归纳,不做额外宣称。

从 profile 推导仓库,而非读远程目录

插件遍历 profile 里 package.json 的 dependencies,读取每个已安装包的 repository 字段,并把多种写法(git+https、ssh、github:owner/repo、裸 owner/repo、完整 URL 等)统一成 owner/repo。浏览列表不依赖 GitHub token。

Web UI 扩展

  • 在插件页的 Installed 旁增加一个标签页:列出所有带 GitHub 主页的插件;没有声明 GitHub 的插件单独分组,不隐藏。
  • 在单个插件详情页增加 Star 控件。
  • Star 是公开行为(会出现在你的 GitHub 个人资料上);第一次操作会要求确认,确认结果会被记住。

GitHub API 与 Agent 工具

读取 Star 状态:GET /user/starred/{owner}/{repo}。切换 Star:PUT / DELETE,支持取消 Star,避免重复 Star。

除 DSH 插件外,任意仓库也可通过 Agent 工具操作。对外暴露工具名 github_stars,动作为 list / star / unstar,并支持 all;面板与模型调用同一套 Host 方法。

配置

无配置 schema,profile 中无需额外字段。

安装与启用

官方安装命令如下(<owner> 替换为维护者用户名,本插件为 bfzdhld):

dsh plugin add github:<owner>/dsh-allinstar

安装后需使用带 Web UI 的 DSH;仅浏览 Star 列表不需要 token,实际点 Star 需要已登录的 GitHub 身份。

典型用法

在面板里批量查看与点 Star

  1. 打开 DSH 插件页,切换到 Installed 旁新增的标签页。
  2. 查看各已装插件对应的 owner/repo;对需要支持的仓库使用 Star 按钮。
  3. 首次 Star 时按提示确认;之后同会话会记住你的选择。

配置 GitHub token(仅 Star 需要)

token 按每次调用的优先级解析,越靠前越优先:

  1. 环境变量 DSH_GITHUB_TOKEN
  2. 面板中保存的 credential(不会写入 profile YAML)
  3. 已认证的 gh CLI

保存前会用 GET /user 校验 token;无效 token 不会表现为已保存。README 建议使用 classic PAT,scope 含 public_repo;fine-grained token 对「非成员拥有的公开用户仓库」写入能力受限,多数插件上游仓库不适合该类型。

通过 Agent 调用 github_stars

在对话中让模型调用 github_stars,使用 list、star、unstar,需要时可加 all。与面板按钮共用同一实现,可对任意 owner/repo 操作,不限于 DSH 插件包名。

适用场景与注意

适合谁:经常在 DSH 里试社区插件、希望顺手给上游 GitHub 仓库 Star,又不想反复开浏览器的人;也希望在 Agent 会话里用同一套 API 查 Star 状态或切换 Star 的开发者。

网络与隐私(据 README):

  • 仅通过 HTTPS 访问 api.github.com。
  • token 仅以 bearer 形式发给该主机,不发往其他地址。
  • 只读本地 profile 目录,不上传你的插件列表。

安全与权限:插件以当前 DSH 进程权限运行,安装前请自行查看 源码 与 MIT 许可证,确认 token 范围与组织策略一致。Star 是公开社交信号,不代表安全审计或质量背书。

结尾

dsh-allinstar 把「已装插件 → GitHub 仓库 → Star 状态」连成一条在 Harness 内可完成的链路:读本地 manifest、补 UI、用标准 REST 读写 Star,并用 github_stars 把能力交给 Agent。无 profile 配置项,点 Star 前准备好 classic PAT 或 gh 即可。

  • 目录页:https://www.skillhub.cn/plugins/bfzdhld/dsh-allinstar
  • GitHub:https://github.com/bfzdhld/dsh-allinstar
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye