JianFeeeee
de7553eaa2
feat(lua)!: 插件只通过 modelrouter SDK 与内核交互,且不再随内核安装
- 新增唯一公开接口表 `modelrouter`(sdk_version=1.0):http / secrets /
kernel / adapters / plugin_dir。成员与内部桥是**同一对象**而非副本 ——
复制会让凭据保险库分叉(插件写 A、内核读 B)。
- `llmsproxy` 与 `__llmsproxy_*` 降为同对象兼容别名,只为已装插件继续可用。
仓库内 4 个插件(channels / billing / quota / usage)全部改用
`modelrouter.*`:此前它们直接依赖内核私有全局,内核无法在不炸插件的前提下
改实现(重命名、加守卫、换实现都算破坏性变更)。
- 插件不再由网关安装:`SeedBundled()` 变彻底 no-op,`core.New` 不再调用;
`ReadBundledPlugin` 改为按源文件定位(脱离 cwd),只服务测试与开发工具。
- 桌面端删除 `BUILTIN_PLUGINS` 与 `syncBundledPluginsOnUpgrade`:升级不再
删除、改名或覆盖用户插件文件。插件是运维资产,不是内核资源。
- `Builtin` 不再靠"源码与仓库示例逐字节相同"推断,插件一律视为外部文件。
- 判据:SDK 存在/版本/形状、别名与内部桥同一张表、适配器 VM 拿不到 SDK、
经 SDK 真实写读凭据并驱动内核动作、GUI 升级不动插件文件、release 包不含插件。
说明:channels.lua / quota.lua 同时带有此前的渠道与额度改动(含 OpenCode 免费池
监控),与 SDK 改名同处一个文件,无法文件级拆分,故一并纳入。
2026-10-26 22:27:12 +08:00
..
2026-10-14 15:43:09 +08:00
2026-10-14 15:35:49 +08:00
2026-10-13 13:42:45 +08:00
2026-10-14 20:00:58 +08:00
2026-10-14 20:00:58 +08:00
2026-10-14 15:24:24 +08:00
2026-10-16 20:47:14 +08:00
2026-10-13 13:42:45 +08:00
2026-10-14 16:18:27 +08:00
2026-10-14 16:18:27 +08:00
2026-10-16 07:51:21 +08:00
2026-10-14 20:00:58 +08:00
2026-10-19 16:26:59 +08:00
2026-10-16 00:56:14 +08:00
2026-10-13 16:51:15 +08:00
2026-10-13 16:51:15 +08:00
2026-10-19 13:43:18 +08:00
2026-10-13 16:51:15 +08:00
2026-10-20 09:13:56 +08:00
2026-10-11 20:50:52 +08:00
2026-10-19 16:26:59 +08:00
2026-10-16 13:51:36 +08:00
2026-10-14 20:00:58 +08:00
2026-10-19 16:26:59 +08:00
2026-10-19 17:21:22 +08:00
2026-10-13 15:44:51 +08:00
2026-10-13 13:42:45 +08:00
2026-10-13 13:42:45 +08:00
2026-10-19 16:26:59 +08:00
2026-10-13 13:42:57 +08:00
2026-10-16 21:49:12 +08:00
2026-10-13 13:42:45 +08:00
2026-10-13 07:41:42 +08:00
2026-10-15 22:43:08 +08:00
2026-10-19 16:26:59 +08:00
2026-10-20 09:54:06 +08:00
2026-10-13 13:42:57 +08:00
2026-10-20 08:27:28 +08:00
2026-10-19 16:26:59 +08:00
2026-10-19 16:26:59 +08:00
2026-10-14 20:00:58 +08:00
2026-10-19 22:32:18 +08:00
2026-10-13 15:52:26 +08:00
2026-10-13 13:42:57 +08:00
2026-10-20 08:27:28 +08:00
2026-10-20 08:27:28 +08:00
2026-10-19 16:26:59 +08:00
2026-10-20 08:27:28 +08:00
2026-10-14 20:12:10 +08:00
2026-10-13 13:42:57 +08:00
2026-10-13 13:42:57 +08:00
2026-10-20 10:12:51 +08:00
2026-10-17 17:38:23 +08:00
2026-10-13 13:42:45 +08:00
2026-10-17 17:38:23 +08:00
2026-10-13 13:42:45 +08:00
2026-10-17 17:38:23 +08:00
2026-10-20 09:38:39 +08:00
2026-10-20 09:13:56 +08:00
2026-10-16 00:56:14 +08:00
2026-10-17 17:38:23 +08:00
2026-10-17 17:38:23 +08:00
2026-10-14 16:09:22 +08:00
2026-10-16 13:51:36 +08:00
2026-10-16 17:44:04 +08:00
2026-10-15 08:22:57 +08:00
2026-10-15 08:22:57 +08:00
2026-10-15 20:30:33 +08:00
2026-10-15 08:22:57 +08:00
2026-10-16 01:38:34 +08:00
2026-10-17 00:01:00 +08:00
2026-10-13 13:42:57 +08:00
2026-10-13 15:38:35 +08:00
2026-10-13 15:38:35 +08:00
2026-10-19 16:26:59 +08:00
2026-10-26 22:27:12 +08:00
2026-10-11 20:50:52 +08:00
2026-10-13 13:42:57 +08:00
2026-10-15 08:22:57 +08:00
2026-10-14 16:00:34 +08:00
2026-10-13 13:42:57 +08:00
2026-10-11 13:52:29 +08:00
2026-10-19 16:26:59 +08:00
2026-10-19 16:26:59 +08:00
2026-10-13 16:11:11 +08:00
2026-10-07 17:37:22 +08:00
2026-10-19 16:26:59 +08:00
2026-10-13 13:42:45 +08:00