文档

构建与发布

Sliprail 扩展以清单、JavaScript、图标和清单引用的其他资源组成分发内容。

构建建议

纯 JavaScript 或 .mjs 可以直接加载。TypeScript 项目和使用第三方依赖的项目需要构建步骤。

  • 让清单的 main 始终指向生成的 JavaScript 文件
  • 使用 import type 导入 @sliprail/sdk,避免把 SDK 类型变成运行时依赖
  • 将第三方运行时包打包到输出文件中
  • 确认最终产物不需要额外运行 npm install
  • 包含清单或扩展代码引用的全部本地图标、HTML、图片和样式文件

避免阻塞主进程

扩展处理函数运行在 Sliprail 的 Electron 主进程中。

  • 避免同步文件和网络操作
  • 避免在处理函数中执行长时间循环或大量 CPU 计算
  • 使用异步接口,并把大型任务拆分成较小单元
  • 使用 Worker 线程时,确保 Worker 代码和依赖都包含在分发产物中

阻塞扩展处理函数会让 Sliprail 变慢或失去响应。

发布公开扩展

  1. 在开发者门户将扩展注册为公开
  2. 绑定公开的 GitHub 仓库链接
  3. 在仓库中放置有效的 manifest.json 和全部运行时文件
  4. 确认清单 ID 与注册的扩展 ID 一致
  5. 将完整构建产物推送到 GitHub
  6. 从开发者门户发布扩展

已发布扩展可以出现在 Sliprail 商店和 SearchExtensions 结果中。

对于符合条件的 GitHub 扩展,Sliprail 每天检查一次新提交,除非用户关闭了该扩展的自动更新。用户也可以在扩展管理器中点击更新手动检查。

发布私有扩展

私有扩展仍然需要已注册 ID,但不需要公开 GitHub 仓库。请在每台需要使用的设备上启用开发者模式,并加载已解压目录或 ZIP 文件。

本地加载的扩展不会自动同步或更新。