跳到内容
Lenso
简体中文
Esc
导航打开⌘J预览
本页内容

快速开始

创建、运行、打包并校验一个强类型 Lenso Plugin。

在这个自包含 Quickstart 中,你会创建一个普通 Plugin,通过真实 Execution Adapter 调用它,并生成一个通过校验的 .lenso-plugin Bundle。完成这条路径不需要产品 Host, 也不依赖 Catalog 条目。

Rust 可由同一份源码生成可移植 Wasm 与可信 Process 实现;Bun 使用生成的 @lenso/bun Runtime Lowering。

前置条件

  • 默认脚手架需要 Rust Stable 与 wasm32-unknown-unknown Target;
  • 只有选择 --runtime bun 时才需要 Bun 1.2.21 或更新版本。

从 npm 安装 CLI:

npm install -g @lenso/cli
lenso --version

创建并运行 Plugin

下面两条路径只选一条,并从尚不存在 example.echo 的目录开始执行。

Rust

lenso plugin new example.echo
cd example.echo
lenso plugin check
lenso plugin dev \
  --implementation auto \
  --operation execute \
  --request-json '{"name":"example.echo","arguments_json":"{\"text\":\"hello\"}"}'
lenso plugin pack
cd ..

Bun / TypeScript

lenso plugin new example.echo --runtime bun
cd example.echo
lenso plugin check
lenso plugin dev \
  --implementation auto \
  --operation execute \
  --request-json '{"name":"example.echo","arguments_json":"{\"text\":\"hello\"}"}'
lenso plugin pack
cd ..

在 Bun 路径中,业务代码只需编辑 example.echo/src/plugin.ts。生成的 Entrypoint 持有 Descriptor 投影、开发调用与正式 Bun Server;业务代码不实现 JSON-RPC 或 进程生命周期。

两条路径都可以在同一个 plugin dev 命令中追加 --watch,并保留 Operation 与 Request 参数,以便源码变化后重新构建并调用。开发构建保持未优化;plugin pack 执行 Release 构建,用安装时相同的验证器重新打开生成的 .lenso-plugin Archive,并打印 dist/ 下经过校验的路径。两条路径随后都会回到父目录,因此 Bundle 位于 ./example.echo/dist/example.echo-0.1.0.lenso-plugin。到这里,本 Quickstart 已完成; 它不会假定 Catalog 中存在尚未发布的条目,也不会假定你的机器上已经有某个 产品 Host。

将 Bundle 接入 App

App 由一个精确 Host Build、与它匹配的 Host Catalog 以及可见 Plugin Root 派生。 这些 Artifact 归产品 Host 所有,并非通用 CLI 的内置资源。拿到匹配的 Artifact 后, 按修改第一个 App初始化 Workspace、加入本地 Bundle、 检查 Derived App、运行并移除改动。Catalog 安装是可选路径,并且只适用于所选 Catalog 实际返回的 Release。

设置或解析失败时运行 lenso doctor;默认输出适合人阅读,--json 输出稳定结构。

继续阅读修改第一个 App编写 Plugin编写 Bun Plugin

最后更新于 2026年9月6日

这个页面有帮助吗?