WASM 资源包

宿主只负责运行 WASM 资源。每个资源都是独立包,可以按服务器类型任意组合。

1. 独立资源包

包内容典型用途
@keragi/resxresx控制面与 /status
@keragi/msgxmsgx消息、会话与频道
@keragi/userxuserx账号、联系人与认证
@keragi/connconn连接器服务器
@keragi/agixagixAI 服务器

资源包内只有预编译 .wasm、资源声明和说明文档,不包含源码。

2. 服务器类型组合

类型安装的资源
连接器服务器conn
用户服务器userx
消息服务器msgx
AI 服务器agix
主服务器resx + msgx + userx(可再加 conn / agix)
全量服务器全部资源

3. 安装

从下载页获取所需 .tgz,放到部署目录(或使用相对路径),在部署目录执行:

wasmx add ./keragi-resx.tgz
wasmx add ./keragi-msgx.tgz
wasmx add ./keragi-userx.tgz
wasmx add ./keragi-conn.tgz
wasmx add ./keragi-agix.tgz

只安装需要的资源即可。add 会:

  1. 从本地 .tgz 安装资源包;
  2. 把 .wasm 复制到部署目录的 wasm/;
  3. 把资源条目合并到 wasmx.json 的 resources。

也可以使用 preset(--offline 指向存放 .tgz 的目录):

wasmx init ./connector --preset connector --offline .   # 宿主 + conn
wasmx init ./main --preset main --offline .             # 宿主 + resx + msgx + userx
wasmx init ./full --preset full --offline .             # 宿主 + 全部资源

当前版本使用下载页的 .tgz 离线安装;npm 目前提供宿主与 userx,其他资源包将在后续版本提供。

4. 查看已安装资源

wasmx list

会列出资源名和对应的 wasm/ 路径。

5. 升级

  1. 停止宿主:

    wasmx stop
  2. 用下载页的新版 .tgz 替换:

    wasmx add ./keragi-userx.tgz
  3. 启动并检查:

    wasmx start
    wasmx status

资源包与宿主需要保持兼容;升级资源时建议同时确认宿主版本。

6. 移除资源

当前版本没有自动移除命令。可以:

  1. 停止宿主;
  2. 从 wasmx.json 的 resources 中删除对应条目;
  3. 删除 wasm/ 下对应的 .wasm;
  4. 重新启动。

7. 下一步