@zhivex-ai/core 0.17.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-handoff.d.ts +2 -0
- package/dist/agent-handoff.d.ts.map +1 -1
- package/dist/agent-handoff.js +8 -3
- package/dist/agent-handoff.js.map +1 -1
- package/dist/agent-state.d.ts +6 -0
- package/dist/agent-state.d.ts.map +1 -0
- package/dist/agent-state.js +374 -0
- package/dist/agent-state.js.map +1 -0
- package/dist/agent-store.d.ts +5 -3
- package/dist/agent-store.d.ts.map +1 -1
- package/dist/agent-store.js +1027 -145
- package/dist/agent-store.js.map +1 -1
- package/dist/agent.d.ts +1 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +698 -229
- package/dist/agent.js.map +1 -1
- package/dist/api-stability.d.ts.map +1 -1
- package/dist/api-stability.js +10 -0
- package/dist/api-stability.js.map +1 -1
- package/dist/artifact.d.ts.map +1 -1
- package/dist/artifact.js +2 -1
- package/dist/artifact.js.map +1 -1
- package/dist/audio.d.ts +2 -1
- package/dist/audio.d.ts.map +1 -1
- package/dist/audio.js +25 -0
- package/dist/audio.js.map +1 -1
- package/dist/bounded-broadcast.d.ts +45 -0
- package/dist/bounded-broadcast.d.ts.map +1 -0
- package/dist/bounded-broadcast.js +163 -0
- package/dist/bounded-broadcast.js.map +1 -0
- package/dist/catalog.d.ts.map +1 -1
- package/dist/catalog.js +119 -14
- package/dist/catalog.js.map +1 -1
- package/dist/generate-object.d.ts.map +1 -1
- package/dist/generate-object.js +26 -88
- package/dist/generate-object.js.map +1 -1
- package/dist/generate-text.d.ts +9 -1
- package/dist/generate-text.d.ts.map +1 -1
- package/dist/generate-text.js +118 -55
- package/dist/generate-text.js.map +1 -1
- package/dist/google.d.ts +12 -1
- package/dist/google.d.ts.map +1 -1
- package/dist/google.js +27 -0
- package/dist/google.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/live-agent.d.ts.map +1 -1
- package/dist/live-agent.js +31 -54
- package/dist/live-agent.js.map +1 -1
- package/dist/messages.d.ts +4 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js.map +1 -1
- package/dist/realtime.d.ts.map +1 -1
- package/dist/realtime.js +39 -55
- package/dist/realtime.js.map +1 -1
- package/dist/response.js +1 -1
- package/dist/response.js.map +1 -1
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +2 -1
- package/dist/runner.js.map +1 -1
- package/dist/safety-policy.d.ts +41 -1
- package/dist/safety-policy.d.ts.map +1 -1
- package/dist/safety-policy.js +114 -8
- package/dist/safety-policy.js.map +1 -1
- package/dist/secure-id.d.ts +2 -0
- package/dist/secure-id.d.ts.map +1 -0
- package/dist/secure-id.js +3 -0
- package/dist/secure-id.js.map +1 -0
- package/dist/types.d.ts +289 -8
- package/dist/types.d.ts.map +1 -1
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +2 -1
- package/dist/ui.js.map +1 -1
- package/dist/workflow.d.ts.map +1 -1
- package/dist/workflow.js +2 -1
- package/dist/workflow.js.map +1 -1
- package/package.json +1 -1
- package/dist/durable-store-migration.d.ts +0 -26
- package/dist/durable-store-migration.d.ts.map +0 -1
- package/dist/durable-store-migration.js +0 -158
- package/dist/durable-store-migration.js.map +0 -1
package/dist/types.d.ts
CHANGED
|
@@ -182,6 +182,15 @@ export interface StreamProviderDataEvent {
|
|
|
182
182
|
provider: string;
|
|
183
183
|
data: JsonValue;
|
|
184
184
|
}
|
|
185
|
+
export interface StreamImageGenerationEvent {
|
|
186
|
+
type: "image-generation";
|
|
187
|
+
provider: string;
|
|
188
|
+
image: GeneratedMedia;
|
|
189
|
+
partial: boolean;
|
|
190
|
+
id?: string;
|
|
191
|
+
index?: number;
|
|
192
|
+
providerMetadata?: Record<string, JsonValue>;
|
|
193
|
+
}
|
|
185
194
|
export interface StreamFinishEvent {
|
|
186
195
|
type: "finish";
|
|
187
196
|
finishReason?: FinishReason;
|
|
@@ -192,7 +201,7 @@ export interface StreamErrorEvent {
|
|
|
192
201
|
type: "error";
|
|
193
202
|
error: Error;
|
|
194
203
|
}
|
|
195
|
-
export type StreamEvent = StreamTextDeltaEvent | StreamToolCallEvent | StreamToolResultEvent | StreamProviderDataEvent | StreamFinishEvent | StreamErrorEvent;
|
|
204
|
+
export type StreamEvent = StreamTextDeltaEvent | StreamToolCallEvent | StreamToolResultEvent | StreamProviderDataEvent | StreamImageGenerationEvent | StreamFinishEvent | StreamErrorEvent;
|
|
196
205
|
export interface AgentRunStartEvent {
|
|
197
206
|
type: "agent-run-start";
|
|
198
207
|
currentStep: number;
|
|
@@ -239,6 +248,7 @@ export interface GenerateResult {
|
|
|
239
248
|
messages?: ModelMessage[];
|
|
240
249
|
text?: string;
|
|
241
250
|
audio?: GeneratedMedia[];
|
|
251
|
+
images?: GeneratedMedia[];
|
|
242
252
|
finishReason?: FinishReason;
|
|
243
253
|
providerFinishReason?: string;
|
|
244
254
|
usage?: TokenUsage;
|
|
@@ -332,12 +342,58 @@ export interface BatchJob {
|
|
|
332
342
|
rawResponse?: unknown;
|
|
333
343
|
providerMetadata?: Record<string, unknown>;
|
|
334
344
|
}
|
|
345
|
+
export type InteractionStatus = "in_progress" | "requires_action" | "completed" | "failed" | "cancelled" | "incomplete" | "budget_exceeded" | (string & {});
|
|
346
|
+
/**
|
|
347
|
+
* A raw content block returned by an interaction step.
|
|
348
|
+
*
|
|
349
|
+
* Provider field names are intentionally preserved so steps can be sent back
|
|
350
|
+
* unchanged when callers manage stateless interaction history.
|
|
351
|
+
*/
|
|
352
|
+
export interface InteractionContent {
|
|
353
|
+
type: string;
|
|
354
|
+
text?: string;
|
|
355
|
+
data?: string;
|
|
356
|
+
uri?: string;
|
|
357
|
+
mime_type?: string;
|
|
358
|
+
[key: string]: unknown;
|
|
359
|
+
}
|
|
360
|
+
/** A chronological step returned by the Interactions API. */
|
|
361
|
+
export interface InteractionStep {
|
|
362
|
+
type: string;
|
|
363
|
+
id?: string;
|
|
364
|
+
name?: string;
|
|
365
|
+
arguments?: JsonValue;
|
|
366
|
+
call_id?: string;
|
|
367
|
+
content?: InteractionContent[];
|
|
368
|
+
result?: InteractionContent[] | JsonValue;
|
|
369
|
+
signature?: string;
|
|
370
|
+
summary?: InteractionContent[];
|
|
371
|
+
status?: string;
|
|
372
|
+
[key: string]: unknown;
|
|
373
|
+
}
|
|
335
374
|
export interface Interaction {
|
|
336
375
|
id: string;
|
|
337
376
|
name?: string;
|
|
338
377
|
model?: string;
|
|
339
|
-
|
|
378
|
+
agent?: string;
|
|
379
|
+
status?: InteractionStatus;
|
|
380
|
+
object?: string;
|
|
381
|
+
createTime?: string;
|
|
382
|
+
updateTime?: string;
|
|
383
|
+
previousInteractionId?: string;
|
|
384
|
+
environmentId?: string;
|
|
385
|
+
steps?: InteractionStep[];
|
|
386
|
+
/**
|
|
387
|
+
* Backward-compatible output blocks. Current responses are normalized from
|
|
388
|
+
* the latest model output step when the provider no longer returns outputs.
|
|
389
|
+
*/
|
|
340
390
|
outputs?: unknown[];
|
|
391
|
+
outputText?: string;
|
|
392
|
+
outputImage?: InteractionContent;
|
|
393
|
+
outputAudio?: InteractionContent;
|
|
394
|
+
outputVideo?: InteractionContent;
|
|
395
|
+
usage?: TokenUsage;
|
|
396
|
+
error?: unknown;
|
|
341
397
|
rawResponse?: unknown;
|
|
342
398
|
providerMetadata?: Record<string, unknown>;
|
|
343
399
|
}
|
|
@@ -428,6 +484,7 @@ export interface SpeechModel<TProviderOptions extends ProviderOptions = Provider
|
|
|
428
484
|
readonly modelId: string;
|
|
429
485
|
readonly capabilities: ModelCapabilities;
|
|
430
486
|
generateSpeech(input: SpeechModelInput<TProviderOptions>): Promise<SpeechResult>;
|
|
487
|
+
streamSpeech?(input: SpeechModelInput<TProviderOptions>): Promise<AsyncIterable<SpeechResult>>;
|
|
431
488
|
}
|
|
432
489
|
export interface ImageGenerationModel<TProviderOptions extends ProviderOptions = ProviderOptions> {
|
|
433
490
|
readonly provider: string;
|
|
@@ -611,6 +668,12 @@ export interface InteractionCreateInput<TProviderOptions extends ProviderOptions
|
|
|
611
668
|
input: unknown;
|
|
612
669
|
previousInteractionId?: string;
|
|
613
670
|
tools?: ToolCollection;
|
|
671
|
+
systemInstruction?: string;
|
|
672
|
+
responseFormat?: JsonValue | JsonValue[];
|
|
673
|
+
generationConfig?: JsonValue;
|
|
674
|
+
agentConfig?: JsonValue;
|
|
675
|
+
environment?: string | JsonValue;
|
|
676
|
+
labels?: Record<string, string>;
|
|
614
677
|
background?: boolean;
|
|
615
678
|
store?: boolean;
|
|
616
679
|
providerOptions?: TProviderOptions;
|
|
@@ -619,9 +682,28 @@ export interface InteractionGetInput<TProviderOptions extends ProviderOptions =
|
|
|
619
682
|
id: string;
|
|
620
683
|
providerOptions?: TProviderOptions;
|
|
621
684
|
}
|
|
685
|
+
export interface InteractionCancelInput<TProviderOptions extends ProviderOptions = ProviderOptions> extends RetryOptions {
|
|
686
|
+
id: string;
|
|
687
|
+
providerOptions?: TProviderOptions;
|
|
688
|
+
}
|
|
689
|
+
export interface InteractionDeleteInput<TProviderOptions extends ProviderOptions = ProviderOptions> extends RetryOptions {
|
|
690
|
+
id: string;
|
|
691
|
+
providerOptions?: TProviderOptions;
|
|
692
|
+
}
|
|
693
|
+
export interface InteractionResumeInput<TProviderOptions extends ProviderOptions = ProviderOptions> extends RetryOptions {
|
|
694
|
+
id: string;
|
|
695
|
+
lastEventId?: string;
|
|
696
|
+
providerOptions?: TProviderOptions;
|
|
697
|
+
}
|
|
622
698
|
export interface InteractionsClient<TProviderOptions extends ProviderOptions = ProviderOptions> {
|
|
623
699
|
create(input: InteractionCreateInput<TProviderOptions>): Promise<Interaction>;
|
|
624
700
|
get(input: InteractionGetInput<TProviderOptions>): Promise<Interaction>;
|
|
701
|
+
cancel(input: InteractionCancelInput<TProviderOptions>): Promise<Interaction>;
|
|
702
|
+
delete(input: InteractionDeleteInput<TProviderOptions>): Promise<{
|
|
703
|
+
id: string;
|
|
704
|
+
rawResponse?: unknown;
|
|
705
|
+
}>;
|
|
706
|
+
resume(input: InteractionResumeInput<TProviderOptions>): Promise<AsyncIterable<StreamEvent>>;
|
|
625
707
|
stream(input: InteractionCreateInput<TProviderOptions>): Promise<AsyncIterable<StreamEvent>>;
|
|
626
708
|
}
|
|
627
709
|
export interface PredictionModel<TProviderOptions extends ProviderOptions = ProviderOptions> {
|
|
@@ -730,6 +812,11 @@ export interface RealtimeToolResultEvent {
|
|
|
730
812
|
type: "realtime-tool-result";
|
|
731
813
|
toolResult: ToolExecutionResult;
|
|
732
814
|
}
|
|
815
|
+
export interface RealtimeProviderDataEvent {
|
|
816
|
+
type: "realtime-provider-data";
|
|
817
|
+
provider: string;
|
|
818
|
+
data: JsonValue;
|
|
819
|
+
}
|
|
733
820
|
export interface RealtimeResponseCompleteEvent {
|
|
734
821
|
type: "realtime-response-complete";
|
|
735
822
|
reason?: string;
|
|
@@ -757,7 +844,7 @@ export interface RealtimeErrorEvent {
|
|
|
757
844
|
message?: string;
|
|
758
845
|
providerMetadata?: Record<string, JsonValue>;
|
|
759
846
|
}
|
|
760
|
-
export type RealtimeEvent = RealtimeSessionStartedEvent | RealtimeTextDeltaEvent | RealtimeAudioOutputEvent | RealtimeTranscriptEvent | RealtimeToolCallEvent | RealtimeToolResultEvent | RealtimeResponseCompleteEvent | RealtimeSessionResumptionEvent | RealtimeGoAwayEvent | RealtimeSessionEndedEvent | RealtimeErrorEvent;
|
|
847
|
+
export type RealtimeEvent = RealtimeSessionStartedEvent | RealtimeTextDeltaEvent | RealtimeAudioOutputEvent | RealtimeTranscriptEvent | RealtimeToolCallEvent | RealtimeToolResultEvent | RealtimeProviderDataEvent | RealtimeResponseCompleteEvent | RealtimeSessionResumptionEvent | RealtimeGoAwayEvent | RealtimeSessionEndedEvent | RealtimeErrorEvent;
|
|
761
848
|
export interface RealtimeSession {
|
|
762
849
|
readonly provider: string;
|
|
763
850
|
readonly modelId: string;
|
|
@@ -822,6 +909,10 @@ export interface ToolExecutionContext {
|
|
|
822
909
|
toolCall: ToolCall;
|
|
823
910
|
step: number;
|
|
824
911
|
model: LanguageModel | RealtimeModel;
|
|
912
|
+
/** Durable run that owns this execution, when invoked by the agent runtime. */
|
|
913
|
+
runId?: string;
|
|
914
|
+
/** Forward this key to side-effecting APIs to make retries externally idempotent. */
|
|
915
|
+
idempotencyKey?: string;
|
|
825
916
|
request?: ModelGenerateInput;
|
|
826
917
|
realtimeConfig?: RealtimeSessionConfig;
|
|
827
918
|
}
|
|
@@ -874,6 +965,32 @@ export type GenerateTextOptions<TModel extends LanguageModel = LanguageModel> =
|
|
|
874
965
|
toolExecution?: ToolExecutionOptions;
|
|
875
966
|
toolApprovalPolicy?: ToolApprovalPolicy;
|
|
876
967
|
onToolApprovalDecision?: ToolApprovalObserver;
|
|
968
|
+
/** Called immediately before each model request. Throw to stop the loop. */
|
|
969
|
+
onBeforeModelStep?: (context: {
|
|
970
|
+
request: ModelGenerateInput;
|
|
971
|
+
step: number;
|
|
972
|
+
}) => void | Promise<void>;
|
|
973
|
+
/** Called before a batch of approved local tool calls is executed. */
|
|
974
|
+
onBeforeToolExecution?: (context: {
|
|
975
|
+
request: ModelGenerateInput;
|
|
976
|
+
step: number;
|
|
977
|
+
toolCalls: ToolCall[];
|
|
978
|
+
}) => void | Promise<void>;
|
|
979
|
+
/** Durable runtimes use this hook to checkpoint a model response before tools run. */
|
|
980
|
+
onModelStep?: (context: {
|
|
981
|
+
request: ModelGenerateInput;
|
|
982
|
+
response: GenerateResult;
|
|
983
|
+
step: number;
|
|
984
|
+
toolCalls: ToolCall[];
|
|
985
|
+
}) => void | Promise<void>;
|
|
986
|
+
/** Durable runtimes use this hook to checkpoint tool results before the next model request. */
|
|
987
|
+
onToolExecutionComplete?: (context: {
|
|
988
|
+
request: ModelGenerateInput;
|
|
989
|
+
step: number;
|
|
990
|
+
toolResults: ToolExecutionResult[];
|
|
991
|
+
}) => void | Promise<void>;
|
|
992
|
+
/** Existing completed steps preceding this invocation. */
|
|
993
|
+
stepOffset?: number;
|
|
877
994
|
maxSteps?: number;
|
|
878
995
|
temperature?: number;
|
|
879
996
|
maxTokens?: number;
|
|
@@ -903,8 +1020,32 @@ export type AgentStepStatus = "running" | "completed" | "suspended" | "waiting_a
|
|
|
903
1020
|
export interface AgentRunPolicy {
|
|
904
1021
|
timeoutMs?: number;
|
|
905
1022
|
onTimeout?: "fail" | "cancel-requested";
|
|
1023
|
+
/** Disable only for stores that intentionally provide CAS without worker leases. */
|
|
1024
|
+
leaseMode?: "required" | "disabled";
|
|
1025
|
+
/** Duration of the exclusive worker lease. Defaults to 30 seconds. */
|
|
1026
|
+
leaseTtlMs?: number;
|
|
1027
|
+
/** Lease renewal interval. Defaults to one third of leaseTtlMs. */
|
|
1028
|
+
heartbeatMs?: number;
|
|
1029
|
+
/** How often an active worker checks durable cancellation. Defaults to 1 second. */
|
|
1030
|
+
cancellationPollMs?: number;
|
|
1031
|
+
/** Maximum retained events for agent stream replay. Defaults to 4096. */
|
|
1032
|
+
maxStreamEvents?: number;
|
|
1033
|
+
/** Maximum serialized durable state size. Defaults to 4 MiB. */
|
|
1034
|
+
maxStateBytes?: number;
|
|
1035
|
+
/** Optional preflight limits enforced before model and tool operations. */
|
|
1036
|
+
budget?: {
|
|
1037
|
+
maxSteps?: number;
|
|
1038
|
+
maxToolCalls?: number;
|
|
1039
|
+
maxToolErrors?: number;
|
|
1040
|
+
maxInputTokens?: number;
|
|
1041
|
+
maxOutputTokens?: number;
|
|
1042
|
+
maxTotalTokens?: number;
|
|
1043
|
+
includeChildRuns?: boolean;
|
|
1044
|
+
};
|
|
906
1045
|
}
|
|
907
1046
|
export interface AgentStepRequest {
|
|
1047
|
+
/** Index in the full conversation where this incremental snapshot begins. */
|
|
1048
|
+
messageOffset?: number;
|
|
908
1049
|
messages: ModelMessage[];
|
|
909
1050
|
toolChoice?: ToolChoice;
|
|
910
1051
|
toolExecution?: ToolExecutionOptions;
|
|
@@ -955,6 +1096,13 @@ export interface AgentChildRun {
|
|
|
955
1096
|
}
|
|
956
1097
|
export interface AgentRunState {
|
|
957
1098
|
schemaVersion: 1;
|
|
1099
|
+
/**
|
|
1100
|
+
* Monotonic durable-store revision. Legacy states without a revision are
|
|
1101
|
+
* normalized to revision 0 before their next write.
|
|
1102
|
+
*/
|
|
1103
|
+
revision?: number;
|
|
1104
|
+
/** Tenant/user isolation boundary propagated by the runtime. */
|
|
1105
|
+
scope?: AgentStoreScope;
|
|
958
1106
|
runId: string;
|
|
959
1107
|
idempotencyKey?: string;
|
|
960
1108
|
agentId?: string;
|
|
@@ -983,17 +1131,115 @@ export interface AgentRunState {
|
|
|
983
1131
|
message: string;
|
|
984
1132
|
};
|
|
985
1133
|
}
|
|
1134
|
+
/**
|
|
1135
|
+
* Logical isolation boundary for durable agent data. Applications should use
|
|
1136
|
+
* one scope per tenant and, when memory must be private, per end user.
|
|
1137
|
+
*/
|
|
1138
|
+
export interface AgentStoreScope {
|
|
1139
|
+
tenantId: string;
|
|
1140
|
+
userId?: string;
|
|
1141
|
+
namespace?: string;
|
|
1142
|
+
}
|
|
1143
|
+
export interface AgentRunStoreScopeOptions {
|
|
1144
|
+
/** Fixed scope applied to every key handled by this store instance. */
|
|
1145
|
+
scope?: AgentStoreScope;
|
|
1146
|
+
}
|
|
1147
|
+
export interface AgentRunLease {
|
|
1148
|
+
runId: string;
|
|
1149
|
+
ownerId: string;
|
|
1150
|
+
expiresAt: number;
|
|
1151
|
+
}
|
|
1152
|
+
export interface AgentRunLeaseOptions {
|
|
1153
|
+
ownerId: string;
|
|
1154
|
+
ttlMs: number;
|
|
1155
|
+
/** Injectable clock used by deterministic workers and tests. */
|
|
1156
|
+
now?: number;
|
|
1157
|
+
}
|
|
1158
|
+
export type AgentToolCallJournalStatus = "pending" | "running" | "completed" | "failed";
|
|
1159
|
+
export interface AgentToolCallJournalEntry {
|
|
1160
|
+
runId: string;
|
|
1161
|
+
scope?: AgentStoreScope;
|
|
1162
|
+
toolCallId: string;
|
|
1163
|
+
toolName: string;
|
|
1164
|
+
status: AgentToolCallJournalStatus;
|
|
1165
|
+
/** Stable key that must also be forwarded to side-effecting integrations. */
|
|
1166
|
+
idempotencyKey: string;
|
|
1167
|
+
revision: number;
|
|
1168
|
+
input?: JsonValue;
|
|
1169
|
+
output?: JsonValue;
|
|
1170
|
+
error?: {
|
|
1171
|
+
message: string;
|
|
1172
|
+
};
|
|
1173
|
+
startedAt?: number;
|
|
1174
|
+
completedAt?: number;
|
|
1175
|
+
updatedAt: number;
|
|
1176
|
+
}
|
|
1177
|
+
export interface AgentToolCallJournalSaveOptions {
|
|
1178
|
+
expectedRevision?: number;
|
|
1179
|
+
}
|
|
1180
|
+
export interface AgentToolExecutionClaimResult {
|
|
1181
|
+
claimed: boolean;
|
|
1182
|
+
entry: AgentToolCallJournalEntry;
|
|
1183
|
+
}
|
|
1184
|
+
export interface AgentRunListOptions {
|
|
1185
|
+
agentId?: string;
|
|
1186
|
+
parentRunId?: string;
|
|
1187
|
+
statuses?: AgentStatus[];
|
|
1188
|
+
updatedAfter?: number;
|
|
1189
|
+
updatedBefore?: number;
|
|
1190
|
+
limit?: number;
|
|
1191
|
+
/** Opaque cursor returned by the previous page. */
|
|
1192
|
+
cursor?: string;
|
|
1193
|
+
}
|
|
1194
|
+
export interface AgentRunPage {
|
|
1195
|
+
items: AgentRunState[];
|
|
1196
|
+
nextCursor?: string;
|
|
1197
|
+
}
|
|
1198
|
+
export interface AgentRunRetentionOptions {
|
|
1199
|
+
before: number;
|
|
1200
|
+
statuses?: AgentStatus[];
|
|
1201
|
+
limit?: number;
|
|
1202
|
+
}
|
|
1203
|
+
export interface AgentRunSaveOptions {
|
|
1204
|
+
expectedRevision?: number;
|
|
1205
|
+
}
|
|
1206
|
+
export interface AgentRunClaimResult {
|
|
1207
|
+
claimed: boolean;
|
|
1208
|
+
state: AgentRunState;
|
|
1209
|
+
}
|
|
986
1210
|
export interface AgentRunStore {
|
|
987
|
-
load(runId: string): Promise<AgentRunState | undefined> | AgentRunState | undefined;
|
|
988
|
-
findByIdempotencyKey?(idempotencyKey: string): Promise<AgentRunState | undefined> | AgentRunState | undefined;
|
|
989
|
-
findByParentRunId?(parentRunId: string): Promise<AgentRunState[]> | AgentRunState[];
|
|
990
|
-
|
|
991
|
-
|
|
1211
|
+
load(runId: string, scope?: AgentStoreScope): Promise<AgentRunState | undefined> | AgentRunState | undefined;
|
|
1212
|
+
findByIdempotencyKey?(idempotencyKey: string, scope?: AgentStoreScope): Promise<AgentRunState | undefined> | AgentRunState | undefined;
|
|
1213
|
+
findByParentRunId?(parentRunId: string, scope?: AgentStoreScope): Promise<AgentRunState[]> | AgentRunState[];
|
|
1214
|
+
/**
|
|
1215
|
+
* Atomically reserves an idempotency key for a fresh run. Returns the
|
|
1216
|
+
* caller's state when the reservation succeeds, or the already-reserved
|
|
1217
|
+
* state when another caller owns the key.
|
|
1218
|
+
*/
|
|
1219
|
+
claimIdempotencyKey?(state: AgentRunState & {
|
|
1220
|
+
idempotencyKey: string;
|
|
1221
|
+
}): Promise<AgentRunClaimResult> | AgentRunClaimResult;
|
|
1222
|
+
save(state: AgentRunState, options?: AgentRunSaveOptions): Promise<void> | void;
|
|
1223
|
+
delete?(runId: string, scope?: AgentStoreScope): Promise<void> | void;
|
|
1224
|
+
list?(options?: AgentRunListOptions, scope?: AgentStoreScope): Promise<AgentRunPage> | AgentRunPage;
|
|
1225
|
+
deleteExpired?(options: AgentRunRetentionOptions, scope?: AgentStoreScope): Promise<number> | number;
|
|
1226
|
+
acquireLease?(runId: string, options: AgentRunLeaseOptions, scope?: AgentStoreScope): Promise<AgentRunLease | undefined> | AgentRunLease | undefined;
|
|
1227
|
+
renewLease?(runId: string, options: AgentRunLeaseOptions, scope?: AgentStoreScope): Promise<AgentRunLease | undefined> | AgentRunLease | undefined;
|
|
1228
|
+
releaseLease?(runId: string, ownerId: string, scope?: AgentStoreScope): Promise<boolean> | boolean;
|
|
1229
|
+
loadToolCall?(runId: string, toolCallId: string, scope?: AgentStoreScope): Promise<AgentToolCallJournalEntry | undefined> | AgentToolCallJournalEntry | undefined;
|
|
1230
|
+
loadToolExecution?(runId: string, toolCallId: string, scope?: AgentStoreScope): Promise<AgentToolCallJournalEntry | undefined> | AgentToolCallJournalEntry | undefined;
|
|
1231
|
+
listToolCalls?(runId: string, scope?: AgentStoreScope): Promise<AgentToolCallJournalEntry[]> | AgentToolCallJournalEntry[];
|
|
1232
|
+
saveToolCall?(entry: AgentToolCallJournalEntry, options?: AgentToolCallJournalSaveOptions): Promise<AgentToolCallJournalEntry> | AgentToolCallJournalEntry;
|
|
1233
|
+
claimToolExecution?(entry: AgentToolCallJournalEntry): Promise<AgentToolExecutionClaimResult> | AgentToolExecutionClaimResult;
|
|
1234
|
+
completeToolExecution?(entry: AgentToolCallJournalEntry, options: AgentToolCallJournalSaveOptions & {
|
|
1235
|
+
expectedRevision: number;
|
|
1236
|
+
}): Promise<AgentToolCallJournalEntry> | AgentToolCallJournalEntry;
|
|
992
1237
|
}
|
|
993
1238
|
export interface AgentRunCancellationOptions {
|
|
994
1239
|
reason?: string;
|
|
995
1240
|
cascade?: boolean;
|
|
996
1241
|
mode?: "request" | "final";
|
|
1242
|
+
scope?: AgentStoreScope;
|
|
997
1243
|
}
|
|
998
1244
|
export interface AgentRunTreeCancellationResult {
|
|
999
1245
|
parent?: AgentRunState;
|
|
@@ -1002,6 +1248,7 @@ export interface AgentRunTreeCancellationResult {
|
|
|
1002
1248
|
export interface AgentMemoryContext {
|
|
1003
1249
|
runId: string;
|
|
1004
1250
|
agentId?: string;
|
|
1251
|
+
scope?: AgentStoreScope;
|
|
1005
1252
|
state?: AgentRunState;
|
|
1006
1253
|
metadata?: Record<string, JsonValue>;
|
|
1007
1254
|
}
|
|
@@ -1024,12 +1271,14 @@ export interface SqliteDatabaseLike {
|
|
|
1024
1271
|
export interface SqliteAgentRunStoreOptions {
|
|
1025
1272
|
db: SqliteDatabaseLike;
|
|
1026
1273
|
tableName?: string;
|
|
1274
|
+
scope?: AgentStoreScope;
|
|
1027
1275
|
}
|
|
1028
1276
|
export interface SqliteAgentMemoryStoreOptions {
|
|
1029
1277
|
db: SqliteDatabaseLike;
|
|
1030
1278
|
tableName?: string;
|
|
1031
1279
|
key?: (context: AgentMemoryContext) => string;
|
|
1032
1280
|
selectMessages?: (state: AgentRunState) => ModelMessage[];
|
|
1281
|
+
scope?: AgentStoreScope;
|
|
1033
1282
|
}
|
|
1034
1283
|
export interface PostgresQueryResultLike<TResult extends Record<string, unknown> = Record<string, unknown>> {
|
|
1035
1284
|
rows: TResult[];
|
|
@@ -1040,16 +1289,19 @@ export interface PostgresClientLike {
|
|
|
1040
1289
|
export interface PostgresAgentRunStoreOptions {
|
|
1041
1290
|
client: PostgresClientLike;
|
|
1042
1291
|
tableName?: string;
|
|
1292
|
+
scope?: AgentStoreScope;
|
|
1043
1293
|
}
|
|
1044
1294
|
export interface PostgresAgentMemoryStoreOptions {
|
|
1045
1295
|
client: PostgresClientLike;
|
|
1046
1296
|
tableName?: string;
|
|
1047
1297
|
key?: (context: AgentMemoryContext) => string;
|
|
1048
1298
|
selectMessages?: (state: AgentRunState) => ModelMessage[];
|
|
1299
|
+
scope?: AgentStoreScope;
|
|
1049
1300
|
}
|
|
1050
1301
|
export interface AgentHandoff {
|
|
1051
1302
|
id: string;
|
|
1052
1303
|
fromRunId: string;
|
|
1304
|
+
scope?: AgentStoreScope;
|
|
1053
1305
|
fromAgentId?: string;
|
|
1054
1306
|
toAgentId?: string;
|
|
1055
1307
|
summary: string;
|
|
@@ -1111,6 +1363,7 @@ export interface AgentGuardrailTrigger {
|
|
|
1111
1363
|
export interface AgentInputGuardrailRequest {
|
|
1112
1364
|
runId: string;
|
|
1113
1365
|
agentId?: string;
|
|
1366
|
+
state: AgentRunState;
|
|
1114
1367
|
messages: ModelMessage[];
|
|
1115
1368
|
metadata?: Record<string, JsonValue>;
|
|
1116
1369
|
}
|
|
@@ -1165,6 +1418,20 @@ export interface AgentTelemetryRunFinishEvent {
|
|
|
1165
1418
|
}
|
|
1166
1419
|
export type AgentTelemetryEvent = AgentTelemetryRunStartEvent | AgentTelemetryStepStartEvent | AgentTelemetryStepFinishEvent | AgentTelemetryApprovalRequestEvent | AgentTelemetryApprovalResolvedEvent | AgentTelemetryToolApprovalEvent | AgentTelemetryMemoryLoadedEvent | AgentTelemetryGuardrailTriggeredEvent | AgentTelemetryStateSavedEvent | AgentTelemetryHandoffEvent | AgentTelemetrySubAgentStartEvent | AgentTelemetrySubAgentFinishEvent | AgentTelemetryRunFinishEvent;
|
|
1167
1420
|
export type AgentTelemetryObserver = (event: AgentTelemetryEvent) => void | Promise<void>;
|
|
1421
|
+
export type AgentHookFailureMode = "ignore" | "fail";
|
|
1422
|
+
export interface AgentOperationalError {
|
|
1423
|
+
source: "telemetry" | "memory";
|
|
1424
|
+
operation: string;
|
|
1425
|
+
runId?: string;
|
|
1426
|
+
error: Error;
|
|
1427
|
+
}
|
|
1428
|
+
export interface AgentHookFailurePolicy {
|
|
1429
|
+
/** Telemetry is best-effort by default and cannot fail a run. */
|
|
1430
|
+
telemetry?: AgentHookFailureMode;
|
|
1431
|
+
/** Memory hooks are best-effort by default and cannot fail durable execution. */
|
|
1432
|
+
memory?: AgentHookFailureMode;
|
|
1433
|
+
onError?: (event: AgentOperationalError) => void | Promise<void>;
|
|
1434
|
+
}
|
|
1168
1435
|
export interface AgentDefinition<TModel extends LanguageModel = LanguageModel> {
|
|
1169
1436
|
id?: string;
|
|
1170
1437
|
model: TModel;
|
|
@@ -1185,6 +1452,7 @@ export interface AgentDefinition<TModel extends LanguageModel = LanguageModel> {
|
|
|
1185
1452
|
store?: AgentRunStore;
|
|
1186
1453
|
memory?: AgentMemoryStore;
|
|
1187
1454
|
onTelemetryEvent?: AgentTelemetryObserver;
|
|
1455
|
+
hookFailurePolicy?: AgentHookFailurePolicy;
|
|
1188
1456
|
}
|
|
1189
1457
|
export interface LiveAgentDefinition<TModel extends RealtimeModel = RealtimeModel> {
|
|
1190
1458
|
id?: string;
|
|
@@ -1219,6 +1487,8 @@ export interface AgentApprovalResponse {
|
|
|
1219
1487
|
}
|
|
1220
1488
|
export type AgentRunInput<TModel extends LanguageModel = LanguageModel> = RetryOptions & GenerateInputSource & {
|
|
1221
1489
|
runId?: string;
|
|
1490
|
+
/** Required isolation boundary for shared durable stores and memory. */
|
|
1491
|
+
scope?: AgentStoreScope;
|
|
1222
1492
|
idempotencyKey?: string;
|
|
1223
1493
|
state?: AgentRunState;
|
|
1224
1494
|
approvals?: AgentApprovalResponse[];
|
|
@@ -1268,6 +1538,7 @@ export type SubAgentToolOutput = Record<string, JsonValue>;
|
|
|
1268
1538
|
export interface CreateSubAgentToolOptions<TModel extends LanguageModel = LanguageModel> extends AgentSubAgentDefinition<TModel> {
|
|
1269
1539
|
parentRunId?: string;
|
|
1270
1540
|
parentAgentId?: string;
|
|
1541
|
+
scope?: AgentStoreScope;
|
|
1271
1542
|
toolName?: string;
|
|
1272
1543
|
onStart?: (request: {
|
|
1273
1544
|
toolName: string;
|
|
@@ -1356,6 +1627,7 @@ export type GenerateSpeechOptions<TModel extends SpeechModel = SpeechModel> = Re
|
|
|
1356
1627
|
voice?: string;
|
|
1357
1628
|
providerOptions?: TModel extends SpeechModel<infer TProviderOptions> ? TProviderOptions : ProviderOptions;
|
|
1358
1629
|
};
|
|
1630
|
+
export type StreamSpeechOptions<TModel extends SpeechModel = SpeechModel> = GenerateSpeechOptions<TModel>;
|
|
1359
1631
|
export interface SpeechOutput extends SpeechResult {
|
|
1360
1632
|
input: string;
|
|
1361
1633
|
}
|
|
@@ -1468,6 +1740,15 @@ export type CreateInteractionOptions<TProvider extends ProviderAdapter = Provide
|
|
|
1468
1740
|
export type GetInteractionOptions<TProvider extends ProviderAdapter = ProviderAdapter> = InteractionGetInput & {
|
|
1469
1741
|
provider: TProvider;
|
|
1470
1742
|
};
|
|
1743
|
+
export type CancelInteractionOptions<TProvider extends ProviderAdapter = ProviderAdapter> = InteractionCancelInput & {
|
|
1744
|
+
provider: TProvider;
|
|
1745
|
+
};
|
|
1746
|
+
export type DeleteInteractionOptions<TProvider extends ProviderAdapter = ProviderAdapter> = InteractionDeleteInput & {
|
|
1747
|
+
provider: TProvider;
|
|
1748
|
+
};
|
|
1749
|
+
export type ResumeInteractionOptions<TProvider extends ProviderAdapter = ProviderAdapter> = InteractionResumeInput & {
|
|
1750
|
+
provider: TProvider;
|
|
1751
|
+
};
|
|
1471
1752
|
export type StreamInteractionOptions<TProvider extends ProviderAdapter = ProviderAdapter> = InteractionCreateInput & {
|
|
1472
1753
|
provider: TProvider;
|
|
1473
1754
|
};
|