用户 Widget
Agent 运行时生成的 HTML+JS 组件实例,通过 Widget Marketplace 发现与安装。
用户 Widget 是 VizChat 的长尾 widget 扩展机制——Agent 在对话中生成 HTML+JS 组件实例,存入数据库作为一条 username/slug@version 记录,其他用户可在 Widget Marketplace 中浏览、安装到自己的画布,无需等版本发布。
Widget 是什么
- 一段自包含的 HTML+JS 代码,运行时渲染在 iframe 沙箱里
- 由 Agent 按对话需求生成,也可由开发者手写后发布
- 以
username/slug@version三元组唯一标识 - 有标签(tags)、简介、评分,和下载数等社区元数据
用户 Widget vs 内置 widget
| 维度 | 内置 widget(CustomWidget) | 用户 Widget |
|---|---|---|
| 存储 | repo 源码,编译时固化 | 数据库记录,运行时加载 HTML |
| 发布 | 需 VizChat 团队发版 | 任何用户都可发布 |
| 数量级 | 十余种 | 目标千级以上 |
| 状态访问 | 可读取画布状态 | iframe 沙箱隔离,无法访问画布状态 |
| 适用场景 | 常用、稳定、需要与画布深度集成 | 长尾、一次性、个性化 |
Widget 的沙箱模型保证安全性:即使是社区发布的 Widget 也不会泄漏画布数据或执行恶意脚本。
如何使用
1. 从画布内的 Widget Marketplace 安装
点击画布工具栏的 Widget Marketplace 图标打开侧边 Sheet,按热度 / 最新 / 评分排序,搜索或按标签筛选,点击 Install 即可落入画布。
2. 让 Agent 直接生成
在聊天里说:
"帮我做一个掷骰子 widget" "做一个倒计时器 widget,10 分钟"
Agent 会生成对应 HTML+JS 并直接落入画布——不进入 Marketplace,也可以事后手动发布。
3. 我的 Widget
登录后在 Widget Marketplace 切换到 My Widgets 视图,管理自己创建与收藏的 Widget。
发布自己的 Widget
Widget 的发布流程与自定义 widget 开发共享一套工作流,详见 自定义 widget 开发指南。
Tier 限制
不同订阅等级可发布的私有 Widget 数量不同,BYOK 可大幅降低 Widget 调试成本——详见 定价页面。
🔮 未来
我们正在开发公开的
/marketplace路由,未登录用户也可浏览 + 预览 Widget,登录后一键收藏;此外 chat 输入框将支持@widget:<name>直接调用已收藏的 Widget,让"千级 Widget"通过对话就能被精确触达。详见 路线图。
Next step
- 自定义 widget 开发 — 开发者视角的 widget 开发
- 自定义 widget 指南