Skip to main content
聊天窗口右侧是工作区。它不是一块固定的区域,而是一组可以并存的标签页——专家干活的时候,相应的面板会自己冒出来;你也可以主动打开需要的那个。

面板一览

「+」菜单里能手动新建的只有:轨迹、文件、预览、浏览器、视频,桌面端多一个代码。其余面板由具体动作触发。

预览面板

网站开发时最常打开的一个。
面板不负责启动 dev server。 启动的唯一入口是专家的 website_init 工具(懒启动,不做网站就永远不付这份开销)。面板做的是「拿到 URL 并显示」。

启动流程

面板挂载后先探测(probe)当前端口(默认 5173):探测返回 ready 就直接用;否则走一次启动请求。启动失败按错误类型分两类处理: 自动重试最多 3 次,间隔 2 秒。重试期间你会看到「仍在启动(第 N/3 次检查)…」。 预览起来之后还有一道漂移守卫:每 20 秒心跳一次,最短 15 秒探测一次,确认 iframe 里跑的还是你这个项目。

你会看到的状态

一个沙盒同一时刻只有一份预览。多个网站项目在同一会话里轮流预览会互相顶掉——这就是「预览正被另一个项目占用」的来源,不是故障。

文件面板

按类别(表格、幻灯片、文档、代码、图片、视频、音乐、音频、数据、其它)列出会话里的全部文件,并区分来源:你上传的AI 交付的 每个文件可以下载、内联预览、复制内容、新窗口打开、查看历史版本,也可以框选文字直接引用回聊天。

内联预览支持的类型

Office 预览的边界:优先走 Office Online 在线渲染,8 秒没响应就回落到本地渲染库。体积上限:xlsx 5 MB,其它 Office 文档 10 MB,超过直接走本地渲染。PDF 不走 Office Online(微软已下线该能力),一律用 pdf.js。

Widget 面板

MCP 插件返回带 UI 的结果时自动打开。也可以在工具卡片上点「打开 Widget」重新唤出。 Widget 内容按四级优先级取源:
  1. 沙盒实时 URL —— 会话还活着时的实时地址
  2. 对象存储直连 URL —— 大于 256KB 的 HTML 已持久化,经 /storage/ 反代直出
  3. 内容引用 —— 经服务端中转的兜底路径
  4. 内联 HTML —— 小体积 HTML 直接内嵌
Widget 一律以 sandbox="allow-scripts" 渲染,不给 allow-same-origin。因为对象存储直连路径与主站同源,给了同源权限等于把主站 cookie 交给第三方 widget。代价是 widget 不能用浏览器本地存储——它需要持久化时走 MCP 工具调用写沙盒文件。
加载超过 60 秒会提示「Widget 加载时间过长」。没有活跃 widget 时面板显示「Widget 会在调用带界面的 MCP 工具时出现」。

浏览器面板

显示的是沙盒内那个隔离浏览器的远程画面(profy-browser 插件驱动的那个),不是你自己的 Chrome。面板挂载且沙盒可用时会自动拉起浏览器栈,带地址栏和前进后退。 没有沙盒时提示「沙盒未就绪,请先开始对话」。

面板与沙盒生命周期

几乎所有面板都依赖活着的沙盒。沙盒闲置 15 分钟后回收,之后:
  • 预览面板需要重新启动
  • 只存在沙盒里的文件不可访问
  • 浏览器面板需要重新拉起
产物重要就让专家交付到云端。已上传云端的文件在文件面板里始终可下载,不受沙盒回收影响。

继续阅读

沙盒

沙盒的生命周期与资源边界

文件与云盘

沙盒文件与云端文件的区别

网站发布

从预览到正式发布

对话回放与分叉

回放里哪些面板还能用