Skip to content

PURISTA API


PURISTA API / @purista/ai / toAiSdkStreamEvents

Function: toAiSdkStreamEvents()

toAiSdkStreamEvents(source): AsyncGenerator<AiSdkStreamEvent>

Defined in: packages/ai/src/protocol/aiSdkStream.ts:67

Converts protocol envelopes into the SSE events defined by the Vercel AI SDK stream protocol.

Parameters

source

Iterable<{ actor: { agent?: string; instanceId?: string; service: string; version?: string; }; conversationId: string; frame: { content: string; final?: boolean; kind: "message"; partial?: boolean; role: "user" | "assistant" | "system" | "tool"; summary?: string; } | { artifactId: string; content: string | Record<string, unknown>; kind: "artifact"; lastChunk?: boolean; mimeType?: string; phase: "final" | "chunk"; sequence?: number; total?: number; } | { errorCode?: string; input?: unknown; kind: "tool"; message?: string; output?: unknown; status: "error" | "success" | "invoked"; toolName: string; } | { activeWorkers?: number; durationMs?: number; effectiveMaxConcurrencyHint?: number; kind: "telemetry"; maxWorkersPerInstance?: number; poolId?: string; provider?: string; replicaCountHint?: number; usage?: { completionTokens?: number; costUsd?: number; promptTokens?: number; totalTokens?: number; }; waitingWorkers?: number; waitTimeMs?: number; } | { code: string; details?: unknown; handled: boolean; kind: "error"; message: string; }; inReplyTo?: string; messageId: string; metadata?: Record<string, unknown>; role?: "user" | "assistant" | "system" | "tool"; tenantId?: string; timestamp: string; userId?: string; version: "purista.ai/1.0"; }, any, any> | AsyncIterable<{ actor: { agent?: string; instanceId?: string; service: string; version?: string; }; conversationId: string; frame: { content: string; final?: boolean; kind: "message"; partial?: boolean; role: "user" | "assistant" | "system" | "tool"; summary?: string; } | { artifactId: string; content: string | Record<string, unknown>; kind: "artifact"; lastChunk?: boolean; mimeType?: string; phase: "final" | "chunk"; sequence?: number; total?: number; } | { errorCode?: string; input?: unknown; kind: "tool"; message?: string; output?: unknown; status: "error" | "success" | "invoked"; toolName: string; } | { activeWorkers?: number; durationMs?: number; effectiveMaxConcurrencyHint?: number; kind: "telemetry"; maxWorkersPerInstance?: number; poolId?: string; provider?: string; replicaCountHint?: number; usage?: { completionTokens?: number; costUsd?: number; promptTokens?: number; totalTokens?: number; }; waitingWorkers?: number; waitTimeMs?: number; } | { code: string; details?: unknown; handled: boolean; kind: "error"; message: string; }; inReplyTo?: string; messageId: string; metadata?: Record<string, unknown>; role?: "user" | "assistant" | "system" | "tool"; tenantId?: string; timestamp: string; userId?: string; version: "purista.ai/1.0"; }, any, any>

Returns

AsyncGenerator<AiSdkStreamEvent>