2026-10-02 xAI 公开官方 TypeScript SDK @xai-official/sdk(仓库 xai-org/xai-sdk-ts,Apache-2.0)。当天 0.2.0 把客户端改名为 SpaceXAI;npm 现为 0.2.1。一个 ESM 包覆盖 Grok 文本、语音、图视频和网页搜索、X 搜索、代码执行、远程 MCP。零运行时依赖,要求 Node 22.13+,默认禁止把密钥放进浏览器。没有公开跑分。

核心要点速览 (Key Takeaways)

  • ✓包:xai-org/xai-sdk-ts 的 @xai-official/sdk,Apache-2.0,零运行时依赖;npm 现为 0.2.1(2026-10-02 22:18 UTC),帖文写的 0.2.0 已被接上
  • ✓0.2.0 破坏性改名:客户端类 xAI → SpaceXAI(见 CHANGELOG);0.2.1 加 toJson(schema)、流式局部 JSON、retryBeforeOutput
  • ✓要求 Node.js 22.13+、ESM;默认拦浏览器/Worker。服务端工具含网页搜索、X 搜索、代码执行、远程 MCP;函数和 shell 在本机
  • ✓没有公开的 SDK 延迟或编码榜。抓取时 GitHub 约 27 star、npm 周下载 312。示例模型 grok-4.7 不是跑分
  • ✓和 Vercel @ai-sdk/xai 不是同一个包。密钥只放服务端;1.0 前接口可能变,暂不收外部 PR
🧭

阅读完核心要点?进一步了解模型实力与实际开销

7 大权威镜像天梯跑分与 29+ 款主流编程套餐横向比价测算

🔬

深度技术解析与实战评估

核心背景与行业痛点

调 Grok 的 TypeScript 项目长期用 OpenAI SDK 改 baseURL,或用 Vercel 的 @ai-sdk/xai。语音、生图、生视频、批处理和官方服务端工具各自接一套。2026-10-02,仓库 xai-org/xai-sdk-ts 公开包 @xai-official/sdk(Apache-2.0,作者栏为 SpaceXAI)。同一天连发 0.1.0、0.2.0、0.2.1。0.2.0 把客户端类从 xAI 改名为 SpaceXAI。社区帖写的是 0.2.0;npm 现为 0.2.1(2026-10-02 22:18 UTC)。README 写明实验性,1.0 前接口可能变,暂不收外部 PR。

架构亮点与底层机制

零运行时依赖,只支持 ESM,要求 Node.js 22.13+。客户端默认读 XAI_API_KEY,并默认拦住浏览器和 Worker,避免密钥进前端。client.responses.create 走 Responses API;不传 stream 时内部仍流式,以免推理久、卡在 Node fetch 等响应头的约 5 分钟上限。SDK 默认 store: false(与线协议默认不同),用 toInput() 把含加密推理的输出带进下一轮;更长对话用 responses.compact()。服务端工具在 @xai-official/sdk/tools:网页搜索、X 搜索、代码执行(Python 沙箱)、集合检索、远程 MCP、对话内生图,以及 defer_loading 用的 tool search。函数和 shell 在你自己的进程里跑。

权威 Benchmark 与实测跑分对比

仓库、CHANGELOG 和 npm 都没有 SDK 延迟、首 token 或编码榜,不能编造。能核对的是发布节奏(均为 2026-10-02 UTC):0.1.0 在 16:58,0.2.0 在 18:28,0.2.1 在 22:18。0.2.1 加上 Standard Schema 的 toJson(schema)(Zod 3.24+、Valibot 1、ArkType 2 等)、流式 "json" 事件和 parsePartialJson(),以及出字前失败才重试的 retryBeforeOutput。无 Retry-After 的 429 退避从 1 秒起、上限 30 秒,不再从 250 毫秒起。抓取时 GitHub 页面约 27 star,npm 周下载 312。README 示例模型是 grok-4.7,这不是跑分。帖文约 2100 次浏览,只说明传播。

开发者实战落地与开箱指南

到 console.x.ai 拿密钥,export XAI_API_KEY,再 npm install @xai-official/sdk。import { SpaceXAI } from "@xai-official/sdk",new SpaceXAI() 后调用 client.responses.create({ model: "grok-4.7", input }),用 toText() 取正文。流式设 stream: true,听 text 再 await stream.done()。密钥只放服务端;浏览器实时语音用短时 client secret,连 wss://api.x.ai/v1/realtime,不要下发 API key。请钉死版本并读 CHANGELOG:0.2.0 的类名是破坏性变更。这和 @ai-sdk/xai 不是同一个包。