Artifacts 发布
Artifacts 把一份自包含的 HTML 变成一个稳定链接。数字员工产出的看板、计算器、分析报告、演示页,不用再靠截图转发或者在群里发附件——发一个链接,对方手机直接打开。
// 一句话理解
发布是一个动作,不是一次部署。粘贴 HTML、点发布、拿到链接;更新替换内容但链接不变;删除后链接立即失效。整个过程不涉及服务器、域名或构建。
发布物的边界
每个发布物严格挂在一家公司名下,链接里带着公司标识。列表、更新、删除都以公司为边界——一家公司的发布物不会出现在另一家的控制台里,也不共享任何存储。
| 归属 | 发布物属于某家公司的某个工作区,URL 包含公司标识与随机短标识。 |
| 可见性 | 两档:登录可见(成员账号登录后可看)与公开链接(凭链接任何人可看)。 |
| 更新 | 替换 HTML,链接不变,版本号自增。下游收藏的链接始终有效。 |
| 撤回 | 删除后链接立即返回 404。撤回是显式动作,不留半可用状态。 |
| 索引 | 默认不进搜索引擎,链接不可被遍历猜出。 |
沙箱:为什么发布是安全的
发布物是别人(包括数字员工)写的 HTML,直接托管在自己的域名下是有风险的——它可能读取同源下的登录状态。系统的处理是让发布物在受限沙箱中渲染:
- 不共享同源。发布物没有与控制台相同的源,因此拿不到控制台的会话信息,也无法代替用户发起请求。
- 脚本可以跑,但拿不到身份。页面内的交互(图表、计算、筛选)正常工作,因为它们不需要用户身份。
- 可见性由门禁前置判定。登录可见的发布物在渲染之前就完成身份校验,未通过者看到登录页而不是内容。
这套设计的意义在于:客户可以放心地把数字员工生成的任何页面发布出去,而不必先做一次安全审查。
读取数据的发布物
静态页面很快会遇到限制:数据一变就要重新生成。Artifacts 支持在发布时声明这个页面需要读取哪些受管数据文件。系统在门禁通过后,向页面注入这些文件的临时访问地址,页面自己去取。
- 数据文件的访问地址是限时的,随每次访问单独签发,不可转发复用。
- 声明了数据依赖的发布物不允许设为公开链接——数据可见性不能低于其承载页面的可见性。
- 页面上会显示「数据」标识,让查看者知道自己看到的数字来自受管数据源,而不是硬编码在页面里。
典型用法
| 场景 | 做法 |
|---|---|
| 月度经营看板 | 定时任务每月生成并更新同一个发布物,链接固定发给管理层 |
| 报价计算器 | 一次性发布,销售在客户现场直接打开,参数在页面里调 |
| 方案演示页 | 公开链接,发给尚未开通账号的外部人员 |
| 内部分析报告 | 登录可见,只有本公司成员能打开 |
// 单文件约束
发布物必须是单个自包含的 HTML 文件。不支持多文件站点与资源目录——这个限制是刻意的:它让每个发布物都是一个可以整体替换、整体撤回、整体审计的单元。