feat: 实现动态插件系统 (6阶段完成)

- 阶段1: 消息类型序列化 (Serialize/Deserialize, &'static str → String)
- 阶段2: FFI 边界类型 + Plugin SDK (plugin_abi, showen-plugin-sdk crate)
- 阶段3: PluginLoader + DynamicPlugin (libloading 动态加载 .so)
- 阶段4: 版本管理 + 错误策略 (VersionManager, PluginState, 自动回退)
- 阶段5: 远程仓库客户端 (HTTP 下载 + tar.gz 安装)
- 阶段6: 示例插件 + HTTP 管理 API + 全目录 README 文档

54/54 测试通过,0 warnings。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
showen
2026-03-13 03:38:08 +08:00
parent 5dcc1ad98e
commit 7135f28545
62 changed files with 3501 additions and 299 deletions

View File

@@ -0,0 +1,3 @@
# alipay-miniapp/ — 支付宝小程序
支付宝小程序客户端。(规划中)

View File

@@ -0,0 +1,3 @@
# android/ — Android 原生应用
Kotlin/Jetpack Compose 实现的 Android 控制应用。(规划中)

3
clients/cli/README.md Normal file
View File

@@ -0,0 +1,3 @@
# cli/ — 命令行工具
终端命令行控制工具,用于调试和自动化。(规划中)

View File

@@ -0,0 +1,3 @@
# desktop/ — 桌面应用
Electron/Tauri 实现的桌面控制应用Windows/macOS/Linux规划中

6
clients/docs/README.md Normal file
View File

@@ -0,0 +1,6 @@
# docs/ — 客户端开发文档
| 文件 | 说明 |
|------|------|
| `API.md` | ShowenV2 REST API 接口文档 |
| `DESIGN.md` | 客户端 UI/UX 设计规范 |

View File

@@ -0,0 +1,3 @@
# flutter/ — Flutter 跨平台应用
Flutter 实现的跨平台移动控制应用iOS + Android规划中

3
clients/ios/README.md Normal file
View File

@@ -0,0 +1,3 @@
# ios/ — iOS 原生应用
Swift/SwiftUI 实现的 iOS 控制应用。(规划中)

View File

@@ -0,0 +1,3 @@
# plugin-dev/ — 插件开发工具
动态插件的开发、调试和打包工具。(规划中)

3
clients/sdk/README.md Normal file
View File

@@ -0,0 +1,3 @@
# sdk/ — 多语言 SDK
各语言的 ShowenV2 客户端 SDKPython、JavaScript、Go、Rust规划中

9
clients/shared/README.md Normal file
View File

@@ -0,0 +1,9 @@
# shared/ — 客户端共享代码
跨客户端复用的代码库。
| 目录 | 说明 |
|------|------|
| `api/` | ShowenV2 HTTP/WebSocket API 客户端封装 |
| `models/` | 共享数据模型定义 |
| `utils/` | 通用工具函数 |

View File

@@ -0,0 +1,3 @@
# api/ — API 客户端库
ShowenV2 HTTP REST API 和 WebSocket 客户端的封装,供各客户端应用复用。

View File

@@ -0,0 +1,3 @@
# models/ — 共享数据模型
客户端通用的数据模型定义(设备状态、播放列表、配置等)。

View File

@@ -0,0 +1,3 @@
# utils/ — 通用工具函数
客户端共享的工具函数(网络请求、数据格式化、错误处理等)。

View File

@@ -0,0 +1,3 @@
# smarthome/ — 智能家居集成
HomeKit / 米家 / 小度等智能家居平台接入。(规划中)

3
clients/voice/README.md Normal file
View File

@@ -0,0 +1,3 @@
# voice/ — 智能音箱集成
语音控制集成(天猫精灵、小爱同学、小度等)。(规划中)

3
clients/watch/README.md Normal file
View File

@@ -0,0 +1,3 @@
# watch/ — 智能手表应用
Apple Watch / Wear OS 控制应用。(规划中)

3
clients/web/README.md Normal file
View File

@@ -0,0 +1,3 @@
# web/ — Web 应用
基于 React/Vue 的响应式 Web 控制界面。(规划中)

View File

@@ -0,0 +1,3 @@
# wechat-miniapp/ — 微信小程序
微信小程序客户端。(规划中)