feat: add multi-repository batch install support
This commit is contained in:
@@ -8,8 +8,9 @@ One-click batch install plugins from GitHub repositories to your OpenWebUI insta
|
||||
|
||||
- **One-Click Install**: Install all plugins with a single command
|
||||
- **Auto-Update**: Automatically updates previously installed plugins
|
||||
- **Public GitHub Support**: Install plugins from any public GitHub repository
|
||||
- **Public GitHub Support**: Install plugins from one or many public GitHub repositories
|
||||
- **Multi-Type Support**: Supports Pipe, Action, Filter, and Tool plugins
|
||||
- **Multi-Repository Picker**: Combine multiple repositories in one request and review them in a single grouped dialog
|
||||
- **Interactive Selection Dialog**: Filter by type, search by keyword, review plugin descriptions, then install only the checked subset
|
||||
- **i18n**: Supports 11 languages
|
||||
|
||||
@@ -20,7 +21,7 @@ User Input
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ Discover Plugins from GitHub │
|
||||
│ Discover Plugins from GitHub Repos │
|
||||
│ (fetch file tree + parse .py) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
@@ -33,7 +34,7 @@ User Input
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ Show Selection Dialog │
|
||||
│ (type filter + search + desc) │
|
||||
│ (repo groups + filters + search) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
├── [Cancel] → End
|
||||
@@ -57,9 +58,9 @@ User Input
|
||||
|
||||
## Interactive Installation Workflow
|
||||
|
||||
Each request handles one repository. To mix repositories, send another request after the previous installation completes.
|
||||
The `repo` parameter accepts one or more `owner/repo` values separated by commas, semicolons, or new lines.
|
||||
|
||||
After plugin discovery and filtering, OpenWebUI opens a browser dialog built with the `execute` event so you can filter by plugin type, search by keyword, review plugin descriptions, and check exactly which plugins to install before the API calls start.
|
||||
After plugin discovery and filtering, OpenWebUI opens a browser dialog built with the `execute` event. The dialog merges results from every requested repository, groups them by repository, supports type filters and keyword search, and lets you check exactly which plugins to install before the API calls start.
|
||||
|
||||
## Quick Start: Install Popular Collections
|
||||
|
||||
@@ -83,21 +84,27 @@ Install all plugins from suurt8ll/open_webui_functions
|
||||
|
||||
# Add OpenRouter pipe integration
|
||||
Install all plugins from rbb-dev/Open-WebUI-OpenRouter-pipe
|
||||
|
||||
# Mix multiple repositories in one request
|
||||
Install all plugins from Fu-Jie/openwebui-extensions, Classic298/open-webui-plugins
|
||||
```
|
||||
|
||||
Each line is a separate request. Already installed plugins are automatically updated.
|
||||
Use any line as-is, or combine repositories in one request. Already installed plugins are automatically updated.
|
||||
|
||||
## Usage Examples
|
||||
|
||||
For more advanced usage patterns:
|
||||
|
||||
```
|
||||
# Combine repositories in one request
|
||||
"Install all plugins from Fu-Jie/openwebui-extensions, iChristGit/OpenWebui-Tools"
|
||||
|
||||
# Filter by plugin type
|
||||
"Install only tool plugins from iChristGit/OpenWebui-Tools"
|
||||
"Install only action plugins from Classic298/open-webui-plugins"
|
||||
"Install only action plugins from Classic298/open-webui-plugins, Haervwe/open-webui-tools"
|
||||
|
||||
# Exclude specific plugins
|
||||
"Install all plugins from Haervwe/open-webui-tools, exclude_keywords=test,deprecated"
|
||||
"Install all plugins from Haervwe/open-webui-tools, Classic298/open-webui-plugins, exclude_keywords=test,deprecated"
|
||||
|
||||
# Install from your own repository
|
||||
"Install all plugins from your-username/my-plugin-collection"
|
||||
@@ -105,7 +112,7 @@ For more advanced usage patterns:
|
||||
|
||||
## Default Repository
|
||||
|
||||
When no repository is specified, the tool uses `Fu-Jie/openwebui-extensions` (my personal collection).
|
||||
When no repository is specified, the tool uses `Fu-Jie/openwebui-extensions` (my personal collection). You can also combine it with additional repositories in the same request.
|
||||
|
||||
## Plugin Detection Rules
|
||||
|
||||
|
||||
@@ -8,8 +8,9 @@
|
||||
|
||||
- 一键安装:单个命令安装所有插件
|
||||
- 自动更新:自动更新之前安装过的插件
|
||||
- 公开 GitHub 支持:支持从任何公开 GitHub 仓库安装插件
|
||||
- 公开 GitHub 支持:支持从一个或多个公开 GitHub 仓库安装插件
|
||||
- 多类型支持:支持 Pipe、Action、Filter 和 Tool 插件
|
||||
- 多仓库选择器:一次请求可合并多个仓库,并在同一个分组对话框中查看
|
||||
- 交互式选择对话框:先按类型筛选、按关键词搜索并查看描述信息,再勾选要安装的插件,只安装所选子集
|
||||
- 国际化:支持 11 种语言
|
||||
|
||||
@@ -20,7 +21,7 @@
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 从 GitHub 发现插件 │
|
||||
│ 从 GitHub 多仓库发现插件 │
|
||||
│ (获取文件树 + 解析 .py 文件) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
@@ -33,7 +34,7 @@
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 显示选择对话框 │
|
||||
│ (类型筛选 + 搜索 + 描述) │
|
||||
│ (仓库分组 + 筛选 + 搜索) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
├── [取消] → 结束
|
||||
@@ -57,9 +58,9 @@
|
||||
|
||||
## 交互式安装工作流
|
||||
|
||||
每次请求处理一个仓库。如需混合多个来源,请在上一次安装完成后再发起下一次请求。
|
||||
`repo` 参数现在支持多个 `owner/repo`,可用逗号、分号或换行分隔。
|
||||
|
||||
在插件发现和过滤完成后,OpenWebUI 会通过 `execute` 事件打开浏览器选择对话框。你可以先按类型筛选、通过关键词搜索、查看插件描述,再开始调用安装 API。
|
||||
在插件发现和过滤完成后,OpenWebUI 会通过 `execute` 事件打开浏览器选择对话框。对话框会合并所有目标仓库的结果,按仓库分组展示,并支持类型筛选、关键词搜索和描述查看,再开始调用安装 API。
|
||||
|
||||
## 快速开始:安装热门插件集
|
||||
|
||||
@@ -83,21 +84,27 @@
|
||||
|
||||
# 添加 OpenRouter 管道集成
|
||||
从 rbb-dev/Open-WebUI-OpenRouter-pipe 安装所有插件
|
||||
|
||||
# 一次请求混合多个仓库
|
||||
从 Fu-Jie/openwebui-extensions、Classic298/open-webui-plugins 安装所有插件
|
||||
```
|
||||
|
||||
每一行是一个独立的请求。已安装的插件会自动更新。
|
||||
你可以直接使用任意一行,也可以在一次请求里组合多个仓库。已安装的插件会自动更新。
|
||||
|
||||
## 使用示例
|
||||
|
||||
更多高级用法:
|
||||
|
||||
```
|
||||
# 一次请求组合多个仓库
|
||||
"从 Fu-Jie/openwebui-extensions、iChristGit/OpenWebui-Tools 安装所有插件"
|
||||
|
||||
# 按插件类型过滤
|
||||
"从 iChristGit/OpenWebui-Tools 仅安装 tool 插件"
|
||||
"从 Classic298/open-webui-plugins 仅安装 action 插件"
|
||||
"从 Classic298/open-webui-plugins、Haervwe/open-webui-tools 仅安装 action 插件"
|
||||
|
||||
# 排除特定插件
|
||||
"从 Haervwe/open-webui-tools 安装所有插件, exclude_keywords=test,deprecated"
|
||||
"从 Haervwe/open-webui-tools、Classic298/open-webui-plugins 安装所有插件, exclude_keywords=test,deprecated"
|
||||
|
||||
# 从你自己的仓库安装
|
||||
"从 your-username/my-plugin-collection 安装所有插件"
|
||||
@@ -105,7 +112,7 @@
|
||||
|
||||
## 默认仓库
|
||||
|
||||
未指定仓库时,工具会使用 `Fu-Jie/openwebui-extensions`(我的个人合集)。
|
||||
未指定仓库时,工具会使用 `Fu-Jie/openwebui-extensions`(我的个人合集)。你也可以在同一次请求里把它和其他仓库一起传入。
|
||||
|
||||
## 插件检测规则
|
||||
|
||||
|
||||
@@ -12,8 +12,9 @@ One-click batch install plugins from GitHub repositories to your OpenWebUI insta
|
||||
|
||||
- **One-Click Install**: Install all plugins with a single command
|
||||
- **Auto-Update**: Automatically updates previously installed plugins
|
||||
- **Public GitHub Support**: Install plugins from any public GitHub repository
|
||||
- **Public GitHub Support**: Install plugins from one or many public GitHub repositories
|
||||
- **Multi-Type Support**: Supports Pipe, Action, Filter, and Tool plugins
|
||||
- **Multi-Repository Picker**: Combine multiple repositories in one request and review them in a single grouped dialog
|
||||
- **Interactive Selection Dialog**: Filter by type, search by keyword, review plugin descriptions, then install only the checked subset
|
||||
- **i18n**: Supports 11 languages
|
||||
|
||||
@@ -24,7 +25,7 @@ User Input
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ Discover Plugins from GitHub │
|
||||
│ Discover Plugins from GitHub Repos │
|
||||
│ (fetch file tree + parse .py) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
@@ -37,7 +38,7 @@ User Input
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ Show Selection Dialog │
|
||||
│ (type filter + search + desc) │
|
||||
│ (repo groups + filters + search) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
├── [Cancel] → End
|
||||
@@ -61,9 +62,9 @@ User Input
|
||||
|
||||
## Interactive Installation Workflow
|
||||
|
||||
Each request handles one repository. To mix repositories, send another request after the previous installation completes.
|
||||
The `repo` parameter accepts one or more `owner/repo` values separated by commas, semicolons, or new lines.
|
||||
|
||||
After plugin discovery and filtering, OpenWebUI opens a browser dialog built with the `execute` event so you can filter by plugin type, search by keyword, review plugin descriptions, and check exactly which plugins to install before the API calls start.
|
||||
After plugin discovery and filtering, OpenWebUI opens a browser dialog built with the `execute` event. The dialog merges results from every requested repository, groups them by repository, supports type filters and keyword search, and lets you check exactly which plugins to install before the API calls start.
|
||||
|
||||
## Quick Start: Install Popular Collections
|
||||
|
||||
@@ -87,21 +88,27 @@ Install all plugins from suurt8ll/open_webui_functions
|
||||
|
||||
# Add OpenRouter pipe integration
|
||||
Install all plugins from rbb-dev/Open-WebUI-OpenRouter-pipe
|
||||
|
||||
# Mix multiple repositories in one request
|
||||
Install all plugins from Fu-Jie/openwebui-extensions, Classic298/open-webui-plugins
|
||||
```
|
||||
|
||||
Each line is a separate request. Already installed plugins are automatically updated.
|
||||
Use any line as-is, or combine repositories in one request. Already installed plugins are automatically updated.
|
||||
|
||||
## Usage Examples
|
||||
|
||||
For more advanced usage patterns:
|
||||
|
||||
```
|
||||
# Combine repositories in one request
|
||||
"Install all plugins from Fu-Jie/openwebui-extensions, iChristGit/OpenWebui-Tools"
|
||||
|
||||
# Filter by plugin type
|
||||
"Install only tool plugins from iChristGit/OpenWebui-Tools"
|
||||
"Install only action plugins from Classic298/open-webui-plugins"
|
||||
"Install only action plugins from Classic298/open-webui-plugins, Haervwe/open-webui-tools"
|
||||
|
||||
# Exclude specific plugins
|
||||
"Install all plugins from Haervwe/open-webui-tools, exclude_keywords=test,deprecated"
|
||||
"Install all plugins from Haervwe/open-webui-tools, Classic298/open-webui-plugins, exclude_keywords=test,deprecated"
|
||||
|
||||
# Install from your own repository
|
||||
"Install all plugins from your-username/my-plugin-collection"
|
||||
@@ -109,7 +116,7 @@ For more advanced usage patterns:
|
||||
|
||||
## Default Repository
|
||||
|
||||
When no repository is specified, the tool uses `Fu-Jie/openwebui-extensions` (my personal collection).
|
||||
When no repository is specified, the tool uses `Fu-Jie/openwebui-extensions` (my personal collection). You can also combine it with additional repositories in the same request.
|
||||
|
||||
## Plugin Detection Rules
|
||||
|
||||
|
||||
@@ -12,8 +12,9 @@
|
||||
|
||||
- 一键安装:单个命令安装所有插件
|
||||
- 自动更新:自动更新之前安装过的插件
|
||||
- 公开 GitHub 支持:支持从任何公开 GitHub 仓库安装插件
|
||||
- 公开 GitHub 支持:支持从一个或多个公开 GitHub 仓库安装插件
|
||||
- 多类型支持:支持 Pipe、Action、Filter 和 Tool 插件
|
||||
- 多仓库选择器:一次请求可合并多个仓库,并在同一个分组对话框中查看
|
||||
- 交互式选择对话框:先按类型筛选、按关键词搜索并查看描述信息,再勾选要安装的插件,只安装所选子集
|
||||
- 国际化:支持 11 种语言
|
||||
|
||||
@@ -24,7 +25,7 @@
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 从 GitHub 发现插件 │
|
||||
│ 从 GitHub 多仓库发现插件 │
|
||||
│ (获取文件树 + 解析 .py 文件) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
@@ -37,7 +38,7 @@
|
||||
▼
|
||||
┌─────────────────────────────────────┐
|
||||
│ 显示选择对话框 │
|
||||
│ (类型筛选 + 搜索 + 描述) │
|
||||
│ (仓库分组 + 筛选 + 搜索) │
|
||||
└─────────────────────────────────────┘
|
||||
│
|
||||
├── [取消] → 结束
|
||||
@@ -61,9 +62,9 @@
|
||||
|
||||
## 交互式安装工作流
|
||||
|
||||
每次请求处理一个仓库。如需混合多个来源,请在上一次安装完成后再发起下一次请求。
|
||||
`repo` 参数现在支持多个 `owner/repo`,可用逗号、分号或换行分隔。
|
||||
|
||||
在插件发现和过滤完成后,OpenWebUI 会通过 `execute` 事件打开浏览器选择对话框。你可以先按类型筛选、通过关键词搜索、查看插件描述,再开始调用安装 API。
|
||||
在插件发现和过滤完成后,OpenWebUI 会通过 `execute` 事件打开浏览器选择对话框。对话框会合并所有目标仓库的结果,按仓库分组展示,并支持类型筛选、关键词搜索和描述查看,再开始调用安装 API。
|
||||
|
||||
## 快速开始:安装热门插件集
|
||||
|
||||
@@ -87,21 +88,27 @@
|
||||
|
||||
# 添加 OpenRouter 管道集成
|
||||
从 rbb-dev/Open-WebUI-OpenRouter-pipe 安装所有插件
|
||||
|
||||
# 一次请求混合多个仓库
|
||||
从 Fu-Jie/openwebui-extensions、Classic298/open-webui-plugins 安装所有插件
|
||||
```
|
||||
|
||||
每一行是一个独立的请求。已安装的插件会自动更新。
|
||||
你可以直接使用任意一行,也可以在一次请求里组合多个仓库。已安装的插件会自动更新。
|
||||
|
||||
## 使用示例
|
||||
|
||||
更多高级用法:
|
||||
|
||||
```
|
||||
# 一次请求组合多个仓库
|
||||
"从 Fu-Jie/openwebui-extensions、iChristGit/OpenWebui-Tools 安装所有插件"
|
||||
|
||||
# 按插件类型过滤
|
||||
"从 iChristGit/OpenWebui-Tools 仅安装 tool 插件"
|
||||
"从 Classic298/open-webui-plugins 仅安装 action 插件"
|
||||
"从 Classic298/open-webui-plugins、Haervwe/open-webui-tools 仅安装 action 插件"
|
||||
|
||||
# 排除特定插件
|
||||
"从 Haervwe/open-webui-tools 安装所有插件, exclude_keywords=test,deprecated"
|
||||
"从 Haervwe/open-webui-tools、Classic298/open-webui-plugins 安装所有插件, exclude_keywords=test,deprecated"
|
||||
|
||||
# 从你自己的仓库安装
|
||||
"从 your-username/my-plugin-collection 安装所有插件"
|
||||
@@ -109,7 +116,7 @@
|
||||
|
||||
## 默认仓库
|
||||
|
||||
未指定仓库时,工具会使用 `Fu-Jie/openwebui-extensions`(我的个人合集)。
|
||||
未指定仓库时,工具会使用 `Fu-Jie/openwebui-extensions`(我的个人合集)。你也可以在同一次请求里把它和其他仓库一起传入。
|
||||
|
||||
## 插件检测规则
|
||||
|
||||
|
||||
Reference in New Issue
Block a user