术语表
Infinia 文档中使用的领域术语,每条配有一段定义以及指向其深入讲解位置的链接。
FileRef
宿主铸造的一种不透明句柄,让沙箱化的插件能够引用某个文件或目录,却永远看不到真实路径。其结构为 {id, name, kind, access, size},其中 id 以 ref_ 开头。插件 UI 把 FileRef 直接传入某次 RPC;宿主的 PluginProcessManager 会在派发之前将其改写为绝对文件系统路径,因此 worker 收到的是一个它能打开的真实路径。授权仅存在于内存中,不会在宿主重启后保留。参见 文件 I/O。
MF(微前端)
一种自包含的 UI 包(插件的 ui/ 目录),宿主将其作为静态资产提供在 /plugin-runtime/{id}/** 下,并且只加载进处于严格内容安全策略(CSP)下的沙箱化 iframe。在 iframe 内部,@infinia/plugin-sdk 的 FengYuClient 通过共享且带版本的 postMessage 协议与宿主桥接。参见 UI 微前端。
SETUP 模式 / APP 模式
后端在启动时根据 <运行目录>/.fengyu/config/datasource.properties 处的数据源配置自动选择的两类运行时模式:
- SETUP 模式启动
SetupApplication,不带 JPA,并在/api/setup/*下提供首次启动向导(绕过令牌校验)。用于尚未配置任何数据库时。 - APP 模式启动
FengYuApplication,带上fengyu.mode=app以及完整的持久化 + AI + 插件技术栈。
如果配置存在但数据库不可达,启动器会把配置备份为一个 .bak 同名文件,并回退到 SETUP 模式。参见 后端——SETUP 与 APP 模式。
Sidecar
插件自带的 worker 进程——通常是一个以 java -jar 启动的 shaded backend/worker.jar。它作为自己的操作系统进程运行,由宿主的 PluginProcessManager 拉起并持有,通过 stdio 通信 JSON-RPC 2.0。正因为它是进程外的,一个 worker 的崩溃或挂起无法拖垮宿主,并且 worker 也无法触及宿主的 bean 或 JPA 会话。「Sidecar」一词强调它依附在宿主身旁、而非驻留在宿主内部。参见 Worker(JSON-RPC)。
虚拟用户
Infinia 在首次以 APP 模式启动时创建的本地身份:id 1,name ZFlow-Summer,role 为 admin/local。会话及其他以用户为作用域的记录都挂在这个身份上。不存在密码或登录流程——在单用户安装上,虚拟用户是隐含的。参见 数据库——虚拟用户。
JSON-RPC worker
插件后端的协议与进程模型。worker 从 stdin 读取换行分隔的 JSON-RPC 2.0 请求({jsonrpc:"2.0", id, method, params}),派发给已注册的处理器,并按行向 stdout 写入一个响应(result 或 error)。stderr 留给日志。toolchain/sdk-java 制品提供了 JsonRpcWorker——一个带 .on(method, handler) 注册、极轻量的运行时。参见 Worker(JSON-RPC)。
.fyp
插件包格式——一个 zip 归档,包含三部分:manifest.json(元数据、权限、AI 工具)、ui/(微前端资产),以及 backend/worker.jar(sidecar 可执行文件)。通过插件市场安装(针对 .fyp 用 POST /api/plugin-market/upload,针对本地路径用 upload-native)。用 fengyu build 构建。参见 插件概述 与 构建与部署。
uiEntry
InstalledPluginDescriptor 上已解析的 UI 入口 URL——即宿主在插件沙箱化 iframe 中打开的页面。它衍生自清单中的 ui.entry(通常是 ui/index.html),并被提供在 /plugin-runtime/{id}/<entry> 下。参见 插件系统——已安装插件描述符。
ToolCallback
Spring AI 对「模型可调用工具」的抽象。Infinia 把每一个内置的 @FengYuTool 与每一个已启用插件所声明的 aiTools 聚合成单个 ToolCallback[],因此插件工具与内置工具在传输上无法区分——两者都出现在 GET /api/agent/tools 中,也都能从对话或智能体运行中被调用。参见 AI 工具。
MD3
Material Design 3——由宿主 UI(Vuetify)与 @infinia/plugin-ui 共同实现的设计系统。插件 UI 在各自的 iframe 运行域中渲染,并通过 SDK 桥梁跟随宿主的主题与环境变化。紫色 #6750A4 主题色是 MD3 的基线。参见 设计系统 与 UI 微前端。
Ollama 后端
local AI 后端模式。它通过 Ollama 的本地 HTTP API 与外部的 ollama serve 进程通信——后端不会在进程内加载 GGUF 模型。要使用它,请单独运行 ollama serve,并在 AI 配置中选择 local。其余模式为 openai、anthropic 与 deepseek(兼容 OpenAI)。参见 AI 对话——后端。