[Feature] 插件市场支持同时勾选多个插件源,合并搜索与展示

オープン
#10,919 コメント 0 件 リアクション 1 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
python
領域
full-stack

調査の方向性

The payload names no files, so begin by locating the plugin marketplace view and the plugin-source management dialog in the dashboard, and the code that fetches a single registry today. Read how install_source.registry_url is stored and used when installing, since the issue relies on it. Done means several sources can be checked at once, their results merge into one searchable list with a source badge, and one failing source shows an error without blanking the page. The open choices, such as keeping at least one source selected, are not settled, so ask the maintainers before starting.

索引モデルが issue の本文から書いたものです。

説明

enhancement
功能描述

目前「扩展 → 插件市场」一次只能查看一个插件源(默认源,或「插件源管理」里手动添加的某一个自定义源),切换源需要点开对话框重新选一次,市场列表、搜索、分类、排序都只作用于当前这一个源。

希望改成多源同时加载:用复选框(checkbox)勾选任意多个源,市场页把选中的源合并成一个列表,然后在这个合并集合上统一搜索 / 筛选 / 排序,插件卡片上标注它来自哪个源。

期望行为
  1. 源选择改为多选:「插件源管理」中每个源左侧加复选框,默认源同样可勾选;提供"全选 / 取消全选";至少保留一个源(全不选时回退到默认源,或明确提示)。
  2. 合并展示:勾选的源并发拉取,合并为一份插件列表;搜索框、分类、排序、分页都作用于合并后的集合。
  3. 来源可辨识:每张插件卡片显示来源徽标(源名称);同一插件同时存在于多个源时合并为一条并标注"来自 N 个源"。
  4. 部分失败不影响整体:某个源请求失败时,其余源正常展示,并提示"XX 源加载失败",而不是整页报错或空白。
  5. 安装/更新回源正确:从某个源点"安装"时携带该条目的 registry_url(现有 install_source.registry_url 机制已支持),更新检查继续按源分组。
使用场景
  • 插件生态是分散的:默认市场只上架了一部分插件,很多作者的插件只发布在自建的第三方源(或某个社区源)里。想找"某个功能有没有现成插件",现在必须逐个源切过去搜一遍,切一次就重载一次列表,很费事。
  • 想对比:同一个插件在不同源的版本、描述、更新时间可能不一致,现在无法并排比较。
  • 想在合并视角下按"下载量 / 更新时间"排序挑最新的,或统一按分类浏览。
  • 已经收藏了多个第三方源的用户,日常希望"一次看全",而不关心它属于哪个源。
检查清单
  • 我已在 Issue 列表中搜索过相关功能,确认该功能想法从未被提出过。
  • 我建议的功能与 AstrBot 本体相关,而非在建议某一插件的功能。
  • 我已阅读并同意本项目的贡献者行为准则。
  • (可选)我愿意提交 PR 以帮助实现该功能。
主要言語
Python
スター
46.4k
フォーク
3.4k
平均マージ
1日 11時間
マージ済み PR(30日)
120

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

AstrBotDevs/AstrBot のほかの issue

AstrBotDevs/AstrBot の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。