@dbx-tools/ 共享- mastra
验证与浏览器交换的数据 @dbx-tools/appkit-mastra (英语)定义共享 路由常数、信头、嵌入标记、反馈计划、线程选择 字段、已公布的客户端配置和响应计划.
快开始
import { wire } from "@dbx-tools/shared-mastra";
const config = wire.MastraClientConfigSchema.parse(await response.json());
共同合同包括:
- 官方 AI SDK 聊天挂载和 AppKit- Mastra 的路由常数 添加,包括建议,模型列表,每代理默认模式 寻找,嵌入,反馈,和直接Genie聊天. 代理历史和线索 使用 Mastra 的本地客户端 API. 直接模式映射 Genie 对话和 在同一个UI合同上发送信件.
- 用于线程选择和模型覆盖请求的页眉/清空/身体常数.
- 嵌入标记 解析延迟图表和语句数据有效载荷 流动助手文本.
- 用于插件发布的客户端配置和路由响应的Zod schemas.
- ML流回馈请求/响应计和微量头常数.
- 让用户界面软件包与服务器保持对齐的浏览器安全类型 导入节点或 Mastra 运行时代码 .
运行时边界
这个包包含合同和纯助工. 它没有注册 AppKit 插件、 调用 Databricks 服务、 运行 Mastra 代理或坚持对话 状态。 使用 @dbx-tools/appkit-mastra (英语) 用于服务器 工作流程和 @dbx-tools/ui-mastra (英语) 用于回放聊天.
验证已发布的客户端配置
import { wire } from "@dbx-tools/shared-mastra";
const config = wire.MastraClientConfigSchema.parse(await response.json());
wire.MastraClientConfigSchema 验证插件发布的客户端
配置,包括挂载路径、默认代理、代理名册、反馈
可用性、背景-回合支持和聊天身份行为。 使用
已发布配置,而不是硬编码服务器路径.
使用路由常数
import { routes } from "@dbx-tools/shared-mastra";
const suggestionsUrl = `${basePath}${routes.MASTRA_ROUTES.suggestions}`;
const chatUrl = `${basePath}${routes.MASTRA_ROUTES.chat}/${agentId}`;
routes.MASTRA_ROUTES 使客户端获取呼叫与插件路由名称保持一致
用于聊天,模型,默认模式的查找,建议,反馈,并嵌入.
选择线索和模型
import { override, thread } from "@dbx-tools/shared-mastra";
await fetch(chatUrl, {
method: "POST",
headers: {
[thread.THREAD_ID_HEADER]: activeThreadId,
[override.MODEL_OVERRIDE_HEADER]: "claude sonnet",
},
body: JSON.stringify({ messages }),
});
使用页眉/平滑常数,而不是字符串字串,这样浏览器代码, 服务器中间软件,测试则同意请求如何选择活动 谈话和模特儿.
分析嵌入标记
import { markers } from "@dbx-tools/shared-mastra";
const parts = markers.parseMarkers("Here is the chart:\n[chart:abc123]");
const safeText = markers.stripIncompleteMarkerTail(streamingText);
标记让代理商用标识提及大型或延迟的文物,例如
[chart:<id>], (中文(简体) ), [data:<statement_id>],以及
[visualization:<statement_id>]。可视化标记选择 AppKit UI
genie 请求图表之后的本地 Genie 图表/表格渲染器 .
验证反馈
import { feedback } from "@dbx-tools/shared-mastra";
const body = feedback.MastraFeedbackRequestSchema.parse({
traceId: "tr-abc",
value: true,
comment: "Helpful",
});
反馈常数包括ML流量追踪头和默认评估名. Schemas在将拇指/评论有效载荷发送到插件之前验证.
验证插件响应
const chart = wire.ChartSchema.parse(await chartRes.json());
const event = wire.GenieWriterEventSchema.parse(writerPayload);
这个 wire 模块包含建议响应计划、示范清单、,
图表,语句数据,直接Genie线程/历史,以及Genie写作事件.
它还定义了AppKit UI所消耗的浏览器可视化有效载荷.
软件包出口
wire: Zod 策略和客户端配置的类型,模型列表,建议, 图表、报表数据和撰写事件.routes:插件路由段常数和直接Genie路由构建器.markers:嵌入-标记分解和不完全-尾条分解.feedback: ML流量反馈信头、评估名称、请求/答复 计划.override:模型覆盖头部/后部/身体常数.thread:线状ID头/平分常数.