OpenUI 是以 OpenUI Lang 为核心的全栈生成式 UI 框架,OpenUI Lang 是一种紧凑、流式优先、面向模型生成 UI 的语言。它不是仅限 React:核心语言、解析器、提示生成、运行时求值和类型位于 @openuidev/lang-core,React、Vue、Svelte 和无构建浏览器集成位于该核心之上。
用途与能力:可构建、调试、集成、迁移或记录 OpenUI、OpenUI Lang、Agent Interface、OpenUI Cloud 与 @openuidev 包。包按运行时划分:@openuidev/lang-core 用于框架无关的解析、流式解析、提示生成、运行时求值、Query/Mutation、store、绑定、JSON schema 与类型;@openuidev/react-lang、@openuidev/vue-lang、@openuidev/svelte-lang 分别提供各框架的 defineComponent、createLibrary、Renderer 与解析器再导出;@openuidev/react-ui 提供默认 React 组件库(openuiLibrary、openuiChatLibrary)、AgentInterface、聊天布局与样式;@openuidev/react-headless 提供自带状态的 React 聊天 hooks、存储/LLM 适配器、流式适配器与消息转换;@openuidev/react-email 用于生成邮件;@openuidev/browser-bundle 提供 CDN/iframe 无构建渲染器;@openuidev/cli 用于脚手架与系统提示、库规范生成;@openuidev/thesys 与 @openuidev/thesys-server 提供版本敏感的 OpenUI Cloud 客户端与服务端辅助。
使用方式:回答前先检查项目 package.json 与 lockfile,确认安装的 @openuidev/* 包与版本,优先使用已安装包导出与生成模板;无项目时仅用第一方来源(GitHub 仓库与 docs)。新建 OpenUI/GenUI 应用可用 npx @openuidev/cli@latest create --name genui-chat-app --template openui-self-hosted --no-skill --no-interactive 脚手架。集成到已有 React 应用时可用 @openuidev/react-ui 的 AgentInterface,通过 llm(如 fetchLLM({ url, streamAdapter, messageFormat }))和可选 storage(restStorage({ baseUrl }) 或 Cloud storage)两个独立通道配置后端。Cloud 能力包括生成式 UI、输出校验与纠正、托管模型访问、幻灯片/报告 artifact、Web 搜索、图像搜索、远程 MCP、应用自有函数工具、会话与 artifact 持久化、多用户/多应用隔离及元数据。
适用场景:新建生成式 UI 应用、在已有 React/Next 应用中接入渲染或完整聊天界面、为 Vue/Svelte 项目接入渲染、仅后端解析或提示/模式生成、从自托管迁移到 Cloud。
限制:不用于普通 React UI 问题、通用设计系统建议、无关 AI agent 框架或一般前端调试,除非涉及 OpenUI 或 @openuidev 包。Cloud 密钥须仅存放服务端,不得暴露到浏览器;不要沿用演示身份,需接入宿主认证与限流;Cloud 相关导出与路由辅助为版本敏感,须以已安装包为准;不得臆造 Cloud 历史导入 API、自定义工具执行循环或自定义库指令 API。部分功能与价格等资料暂未提供。