用途:iii 的 Web 控制台 worker,单个 Rust 二进制在同一端口(http_port,默认 3113)同时提供 React SPA 并代理引擎 WebSocket。它渲染基于 harness 回合循环的聊天、OpenTelemetry 追踪浏览器、worker 目录,以及可自由排布的浮动面板工作区,并作为可注入 UI 的投递宿主。
主要能力:任何 worker 可注册 console:script / console:style 触发器,其 config.path 指定资源、function_id 提供字节,打开的标签页会导入模块、调用 setup(host),并在重新注册时热重载,无需重建控制台、无需 iframe。控制台自身不承载领域数据,注入 UI 通过 host.iii 调用所属 worker 的函数,配置值存放在 configuration worker。
必要用法:在 worker 启动时、内容函数注册后,每项资源各绑定一次 script/style 触发器;用 SDK 的 Message 路径注册以获得断连时的垃圾回收,不要用 engine::register_trigger。Rust worker 使用 iii-console-ui crate;Node worker 直接注册内容函数和两个触发器。提供函数 console::status、console::ui-manifest、console::workspace::list/open/close、console::working-directory::propose 等。触发器包括 console:script、console:style、console:assets、console::workspace::changed。
适用场景:worker 需要控制台页面、渲染器或配置表单;需要证明 UI 可加载(读取 console::ui-manifest 并要求 warnings 为空);让操作员查看某屏幕(workspace::open);在别处创建或克隆项目后请求切换会话目录。
限制:注入样式作用域限定于 [data-iii-ui="<worker>"],未限定作用域会重设整个控制台并触发 manifest 警告;workspace::open 复用已有标签页,不重复面板;活动标签选择按浏览器标签页独立;原生控制台 UI 与 worker UI 在不同 PR 中变更,共享组件以 @iii-dev/console-ui 的 index.d.ts 为唯一契约。前置条件包括 configuration worker,聊天需 harness 及其栈,追踪需引擎的 OpenTelemetry 导出。具体收费与价格暂未提供。