蓝天空协议服务正式推出:Jetstream v2、SDK 等多项更新带来哪些新体验?
蓝天空协议服务正式上线
2026 年 8 月 13 日,蓝天空正式推出蓝天空协议服务,这是蓝天空在 AT 协议网络上运营的公共基础设施的全新品牌和网站。蓝天空的业务范畴不止于蓝天空应用程序,还运营着 Jetstream 实例、中继器以及基于 atproto 构建的蓝天空 API 端点。但以往文档难以让开发者清晰了解服务内容和找到入手点,如今蓝天空协议服务整合了开发者所需文档,明确了服务协议,取代旧网站,并为后续发布新版本提供清晰方式。
Jetstream v2:网络重放功能升级
与新网站一同发布的 Jetstream v2 是重磅版本。对大多数开发者而言,Jetstream 是大规模使用网络的最佳方式,可通过 WebSocket 以纯 JSON 格式接收所需数据片段,但之前无法提供网络历史数据。Jetstream v2 在服务器端增加此功能,保存整个网络的压缩存档,并新增“网络重放”功能,让开发者可从过去任意时间点开始同步数据,无缝切换到实时数据流。开发者只需向 `planSnapshot` 发送 POST 请求并附上过滤器,通过普通 HTTP 下载返回的已密封数据段,到达最新数据点后再连接实时 WebSocket 即可。重放功能在服务器端无状态,无需为每个消费者设置游标、注册订阅,客户端也无需进行数据准备,Jetstream 会充当数据缓冲区。开发者还可仅对网络进行快照操作,通过 HTTP 获取存档的某个时间点的副本,无需连接实时数据流。这使得开发者无需在本地进行数据回填,就能实现更复杂的服务器端数据切片操作,如启动应用程序对一个月内的帖子进行分析或在服务中断后恢复。不过,提供存档数据会消耗大量带宽,为确保服务可靠性和低成本运行,现在要求对这些请求使用 API 令牌,实时数据流仍开放且无需认证,目前也无对实时数据流添加认证要求的计划。v2 实例现已在 `wss://jetstream.us - west.bsky.network` 和 `wss://jetstream.us - east.bsky.network` 上线,现有的 v1 实例将在一段时间内继续正常运行,两个版本的实时数据流功能相同,开发者无需急于迁移,详细流程可参阅网络重放文档。此外,这些基础设施都是开源的,支持自建服务,具体细节可参考自建 Jetstream。
Jetstream SDK 推出
由于 Jetstream 采用纯 JSON 格式,开发者并非必须使用 SDK,但实际开发中有一些常见操作,如重连、去重、游标管理以及将事件解码为类型化记录等。因此,推出了全新的 Jetstream SDK,包括 TypeScript 和 Go 客户端。开发者可创建 `Jetstream` 对象,传入过滤器,然后通过 `for await` 循环处理解码后的类型化事件。TypeScript SDK 可从 npm 获取,Go SDK 是 Jetstream 项目的一部分,更多详细信息可参阅 Jetstream SDK 文档。
基于 lex 重构的蓝天空 TypeScript SDK 完成
早在 5 月就宣布 `lex` SDK 进入稳定预览阶段,并承诺更新独立的蓝天空文档。现在,蓝天空 TypeScript SDK 已基于 `@atproto/lex` 进行重构,不再维护针对蓝天空特定辅助工具的旧代码路径。这是一个端到端的全类型化词汇表工具链,涵盖从协议层到 `app.bsky` 记录的所有内容。新网站上的每个 TypeScript 示例都是基于这个新 SDK 编写的,这有助于保持代码的健康状态,避免大语言模型推荐已弃用的 SDK。如果开发者仍在使用 `@atproto/api` 代码,它将继续正常工作,蓝天空 API 指南可作为迁移参考。
endpoints.bsky.app 更新
HTTP 参考文档进行了更新,将这些文档从 中分离出来是此次全面更新的第一步,现在完成了其余部分的更新。支持重放功能的新 `network.bsky.jetstream.*` 方法(如 `planBackfill`、`listSegments`、`getSegment` 和 `getBlock`)现在可查看完整的请求和响应模式,参考文档还对 Jetstream 的 WebSocket 端点进行了详细说明,整个 Jetstream v2 的功能都集中在一个地方。
后续计划与展望
上述所有更新内容现已上线,包括新网站、v2 Jetstream 实例、SDK 预览版以及更新后的 HTTP 参考文档。刚接触该网络的开发者可从工作原理开始了解,这是一个关于记录、词汇表和实时数据流如何协同工作的可视化指南。如果开发者正在基于蓝天空应用程序的数据模型进行开发,蓝天空 API 指南仍然可用,并且已经过全新改写。如果开发者在接下来的几周内基于重放功能开发出了新应用,蓝天空希望听到分享,开发者展示如何将数据流融入应用,是影响 SDK 编排功能发展方向的最快方式。那么,开发者们会基于这些更新开发出怎样的新应用呢?