开发者文档/开始接入

创建第一个 Curio

从可运行的模板出发,完成第一次 Host 调用,并构建可安装的插件包。

核对日期:2026 年 9 月 11 日

本页目录

开始前的准备#

先在 Mac 上安装 Trove 开发预览版。在 Trove 的设置 → 命令行工具中安装或检查命令行工具,打开新终端,确认可执行文件可用:

sh
trove --version
trove --help

Web 模板需要 Node.js 20.19+ 或 22.12+,以及你选择的包管理器。以下步骤使用 npm。静态模板不需要 Node、Rust 或依赖安装。

创建并运行工程#

在父目录运行 trove new,按向导输入名称(这里使用 My Curio),选择 Web、包管理器,以及是否安装依赖。Enter 接受默认值,方向键选择,Esc 或 Ctrl-C 取消。目标目录必须不存在。

sh
trove new
cd my-curio
trove dev

进入向导显示的新目录;如果跳过了依赖安装,先运行所选包管理器的 install。CLI 会连接或启动 Host,运行开发服务并打开 Curio 窗口。起始页的两个按钮分别演示通讯与存储,点击后显示真实结果,终端同时显示本次运行输出。

找到需要修改的文件#

路径用途
curio.json身份、UI 入口、开发与构建命令
src/main.ts页面、连接状态、结果与错误展示
src/demo.ts两个独立的 Host 调用示例
src/style.css样式与主题
vendor/trove-plugin-sdk-0.0.1-alpha.1.tgz随 CLI 提供的 SDK,提交到版本控制
dist/ui/生产构建输出

Web 模板使用 TypeScript 和 Vite,无 UI 框架依赖。可以沿用它,也可以接入自己的框架。

完成第一次调用#

把代码放在前端模块或异步事件处理函数中。方法、参数和返回值由 SDK 提供类型:

ts
import { host } from "@trove/plugin-sdk";

await host.ready();
const info = await host.runtime.getHostInfo();
console.log(info.name, info.version);
console.log(host.context.curioId);

预期显示 Trove、运行中的 Host 版本,以及向导设置的 Curio ID。无需传服务名、方法名或空对象。处理失败见 SDK 错误处理。Web 模板支持 Vite 热更新。

普通浏览器不会注入 Host Bridge;真实调用在 Trove 窗口中执行,浏览器测试显式使用 Mock。

构建并验证安装包#

先按 Ctrl-C 停止开发会话,再执行:

sh
trove pack
trove install

产物位于 dist/packages/<id>-<version>-<target>.curio。只有一个候选包时,install 会自动选择。保持开发服务器停止,在 Trove 中打开已安装的 Curio,再次执行通讯示例,确认生产入口与打包资源正确。

不使用构建工具的起点#

再次运行向导,名称使用 My Static Curio,模板选择「静态 HTML」:

sh
trove new
cd my-static-curio
trove check
trove dev

静态模板的 UI 与 SDK 已预编译到 ui/index.html,无需安装依赖。修改 HTML 后重新加载窗口;它没有 Vite 热更新。需要原生 Backend 时,在向导中选择 Rust;见 Backend 指南。