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
羽毛球分组比赛记分
小程序二维码

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

小夜