参考

Package 与入口矩阵

区分公开包、仅供仓库内部使用的能力和不可直接导入的实现入口。

先按你要完成的任务选包;插件作者从 @pluxel/core 和实际所需能力包开始,创建应用用 @pluxel/create,装配宿主使用 Host 与显式 service 列表。

本页说明各包的用途和公开入口。private 和 exports 决定源码中的导入边界;实际可安装版本以 npm registry 和发布记录为准。

公开包

Package用途从哪里开始
@pluxel/create创建包含宿主、插件、前端和测试的示例项目快速开始
@pluxel/context为独立宿主组合固定能力与惰性服务组合 Context host
@pluxel/core插件依赖、启动停止和资源生命周期Plugin 模型
@pluxel/services官方服务、日志、管理面与应用组合组合 Host 服务
@pluxel/workbenchContent、View、Attachment、浏览器 SDK 与官方 ShellView
@pluxel/hostcatalog、运行意图、图更新与原生来源启动配置插件宿主
@pluxel/host-viteVite 开发/生产执行、更新与开发控制台CLI 与工具链
@pluxel/cli脚手架、构建、数据库、发行物、开发控制台与源码工作区命令CLI 与工具链
@pluxel/rolldownPlugin 构建集成与源码查询开发和发布插件包
@pluxel/test统一插件测试 host、Vitest/Vite preset 与文件 fixture测试 Plugin
@pluxel/async零依赖异步组合、并发限制、重试与等待Async 异步组合工具
@pluxel/commandscommand 定义、校验、live registry 与 argv/message 参数路由Commands
valibot-formValibot 表单 metadata 与可选 Web adapterValibot 配置表单
@pluxel/plugin-authWorkbench 与 Management API 认证 providerManagement 认证
@pluxel/plugin-wretchPlugin-owned HTTP clientWretch HTTP client
@pluxel/plugin-playwright外部 CDP / Playwright 浏览器连接与原生 BrowserContext浏览器连接
@pluxel/plugin-invoice财政票据与数电发票的图片提取、网站适配和统一查验图片票据提取与查验
@pluxel/plugin-fonts服务端字体注册与 provider字体
@pluxel/plugin-canvas有预算约束的服务端 Canvas、Pretext 文字准备与静态表格工具Canvas
@pluxel/plugin-echarts服务端 ECharts 渲染ECharts
@pluxel/plugin-takumi原生 JSX/HTML/node-tree 渲染与共享 Worker adapterTakumi
@pluxel/plugin-takumi-markdownGFM、静态代码高亮与可选 Typst 数学渲染Markdown / Typst

这些 package 未标记为 private,并声明了面向消费者的入口。消费者只从 package exports 导入;版本可用性以 registry 和 release metadata 为准。

@pluxel/services/management/client、/session 和 /protocol 提供浏览器管理客户端、认证会话与 DTO;/react 只提供 React Context adapter。@pluxel/workbench 提供 browser-safe Content、Direct View 与 Attachment definition,/client 提供 Shell layout/opened-handle client,/react 提供 exact descriptor hook、host facade 与 per-open renderer resources。React 入口使用宿主提供的 singleton。RPC object model 直接从 capnweb 导入。

@pluxel/commands/capnweb 与 @pluxel/commands/mcp 分别把选定 Command 投影为原生 Cap’n Web 方法与 MCP Tool;适配器不安装 server 或会话,协议依赖按入口隔离。

@pluxel/plugin-takumi/worker 供业务 Worker task 使用,在该线程内解析 JSX/HTML 并复用有界的 Renderer 缓存。宿主中的 Plugin 使用 TakumiPlugin;只传 HTML 或 node tree 时可直接调用其 *InWorker() 方法。两者都使用已有的共享 Workers 服务,详见 Takumi。

宿主服务、preset 与开发附件的组合见服务参考。开发脚本从 @pluxel/host-vite/console 导入 defineDevConsole(),调用方法见devconsole。

@pluxel/services/elysia/node 提供标准 Host launcher 使用的 listenElysia();srvx/crossws carrier 为包内实现。createElysiaHandler() 与 HTTP 服务共用 @pluxel/services/elysia 入口。Plugin 业务 HTTP 通过 @pluxel/services/elysia 的 owner capability 声明。@pluxel/services/management/http 将管理入口挂到所选 carrier;管理服务、Workbench publication 和浏览器 shell 都需显式选择。

源码查询从 @pluxel/rolldown/inspect 导入 openProject(),定位声明、依赖、配置和所选应用的输入; 不启动 Host 或执行应用模块,详见inspect 源码查询。

同包的可选入口

@pluxel/services/logging、/management、/preset 与 /vite 都属于 @pluxel/services;@pluxel/host/sources 属于 Host。安装包不等于启用所有领域:基础入口不加载未选择的日志、管理面、Workbench 或开发后端。浏览器协议、开发工具与服务安装器通过各自入口保持求值边界。

Workspace-only 能力

以下 package 标记为 private: true,不能作为普通 npm 安装依赖。只有在支持这些包的源码 workspace 中才能集成;跨仓库联调先看源码开发:

Package能力文档
@pluxel/plugin-typst文档会话、stateless SVG 与 Vector/PDF;/browser 预览Typst
@pluxel/plugin-cacheowner-scoped cache、single-flight、backend缓存
@pluxel/plugin-rates按 identity 计费的频率限制请求频率控制
@pluxel/plugin-redisRedis client、script 与 backendRedis
@pluxel/plugin-storagelocal/remote object storage对象存储
@pluxel/plugin-oteltraces、metrics 与 exportersOpenTelemetry
@pluxel/plugin-package-managerNative/Vite 插件包管理Package manager

仓库外项目不得把这些 package 视为可安装的公共依赖,也不得用源码相对路径绕过 package boundary。

实现入口

  • 官方 Shell 源码位于 packages/workbench/shell/,与 Workbench SDK 同包维护,编译后作为静态资源交付。
  • @pluxel/host/internal* 等带 internal 的 export 由框架自身使用,不承诺作者兼容性。

业务代码不得依赖这些实现入口。缺失的公开能力需要通过稳定 public contract 提供。

最后更新于

本页目录