JavaScript Plugin Loader
加载用 JavaScript 写的 TurboDL 插件。每个脚本一个 QuickJS runtime 与 context、一套稳定的 `host`/`plugin` ABI,以及一套「绝不在脚本还在执行时关掉 runtime」的加载/卸载流程。
清单
| 字段 | 值 |
|---|---|
| Id | loader.js |
| Category | turbodl-loader |
| Protocols | — |
| Capabilities | dev.turbodl.cap.js dev.turbodl.cap.quickjs |
| Artifact | dev.turbodl:turbo-plugin-js:0.2.2.0 |
| API version | 1.0.0 |
| Source | turbo-plugin-js |
| Manifest | turbodl-plugin.json |
明确拒绝的情况
- 注册 `DownloadBackend`(字节面留在 Kotlin 一侧)
- 发布服务(服务是 Kotlin 对象图)
- `require` / npm / `fetch` —— 宿主 ABI 就是全部可用面
- `jar:` 与远程脚本源(目前只支持本地文件 / `inline:` / `data:`)
脚本负责算 URL、请求头和签名,**从不**经手下载数据流。这条边界正是它不会变成带宽瓶颈的原因。
源码
在仓库里读源码 —— 上面的清单就是从那个文件里读出来的。