stitchkit 0.56.1 → 0.56.3
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/README.md +12 -3
- package/dist/agent-runtime/compaction.d.ts +33 -0
- package/dist/agent-runtime/compaction.d.ts.map +1 -0
- package/dist/agent-runtime/coordinator.d.ts +24 -0
- package/dist/agent-runtime/coordinator.d.ts.map +1 -0
- package/dist/agent-runtime/events.d.ts +454 -0
- package/dist/agent-runtime/events.d.ts.map +1 -0
- package/dist/agent-runtime/history.d.ts +11 -0
- package/dist/agent-runtime/history.d.ts.map +1 -0
- package/dist/agent-runtime/managed-tools.d.ts +18 -0
- package/dist/agent-runtime/managed-tools.d.ts.map +1 -0
- package/dist/agent-runtime/models.d.ts +51 -0
- package/dist/agent-runtime/models.d.ts.map +1 -0
- package/dist/agent-runtime/observability.d.ts +134 -0
- package/dist/agent-runtime/observability.d.ts.map +1 -0
- package/dist/agent-runtime/prompt.d.ts +50 -0
- package/dist/agent-runtime/prompt.d.ts.map +1 -0
- package/dist/agent-runtime/protocol.d.ts +16 -0
- package/dist/agent-runtime/protocol.d.ts.map +1 -0
- package/dist/agent-runtime/runtime.d.ts +132 -0
- package/dist/agent-runtime/runtime.d.ts.map +1 -0
- package/dist/agent-runtime/schemas.d.ts +470 -0
- package/dist/agent-runtime/schemas.d.ts.map +1 -0
- package/dist/agent-runtime/store.d.ts +905 -0
- package/dist/agent-runtime/store.d.ts.map +1 -0
- package/dist/agent-runtime/testing.d.ts +17 -0
- package/dist/agent-runtime/testing.d.ts.map +1 -0
- package/dist/agent-runtime-openrouter.d.ts +6 -0
- package/dist/agent-runtime-openrouter.d.ts.map +1 -0
- package/dist/agent-runtime-openrouter.js +46 -0
- package/dist/agent-runtime.d.ts +13 -0
- package/dist/agent-runtime.d.ts.map +1 -0
- package/dist/agent-runtime.js +1955 -0
- package/dist/cli.js +8 -5
- package/dist/index-0nc0cddp.js +178 -0
- package/dist/{index-6y759j86.js → index-1tkyng3g.js} +9 -57
- package/dist/{index-sm2tjx06.js → index-41wm56v0.js} +2 -2
- package/dist/index-6djpbnda.js +56 -0
- package/dist/{index-j3dem06f.js → index-7c0gkyvj.js} +5 -3
- package/dist/{index-75njxz7p.js → index-9zn9fb4e.js} +8 -6
- package/dist/{index-xy8fmh6w.js → index-f6pymtqe.js} +3 -3
- package/dist/{index-jcc611vh.js → index-gnvzyw0k.js} +2 -2
- package/dist/{index-qh4xevf5.js → index-mr617n62.js} +4 -2
- package/dist/{index-5r13htq1.js → index-ps5pxp3h.js} +1 -1
- package/dist/index-sa2mbwa7.js +336 -0
- package/dist/index-smpbdg6k.js +27 -0
- package/dist/{index-7eq9va6e.js → index-y2rb7dwx.js} +1 -27
- package/dist/{index-escqg10p.js → index-zk5zn2nh.js} +32 -334
- package/dist/internal/observability-sink.d.ts +26 -0
- package/dist/internal/observability-sink.d.ts.map +1 -0
- package/dist/node.js +6 -5
- package/dist/observability/audit.d.ts.map +1 -1
- package/dist/observability/index.js +15 -178
- package/dist/remote.js +4 -3
- package/dist/server/error-hook.d.ts +9 -7
- package/dist/server/error-hook.d.ts.map +1 -1
- package/dist/server/index.js +9 -7
- package/dist/testing.js +5 -3
- package/dist/tools/agent.d.ts.map +1 -1
- package/dist/tools/execute.d.ts +7 -0
- package/dist/tools/execute.d.ts.map +1 -1
- package/dist/tools.d.ts +2 -1
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +23 -12
- package/llms-full.txt +382 -10
- package/llms.txt +1 -0
- package/package.json +16 -3
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { ObservabilitySinkStatus } from '../observability/status';
|
|
3
|
+
export declare const AgentRunEventSchema: z.ZodObject<{
|
|
4
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
5
|
+
eventId: z.ZodString;
|
|
6
|
+
type: z.ZodEnum<{
|
|
7
|
+
"run-started": "run-started";
|
|
8
|
+
"run-terminal": "run-terminal";
|
|
9
|
+
"step-finished": "step-finished";
|
|
10
|
+
}>;
|
|
11
|
+
conversationId: z.ZodString;
|
|
12
|
+
runId: z.ZodString;
|
|
13
|
+
traceId: z.ZodString;
|
|
14
|
+
spanId: z.ZodString;
|
|
15
|
+
parentSpanId: z.ZodOptional<z.ZodString>;
|
|
16
|
+
state: z.ZodEnum<{
|
|
17
|
+
abandoned: "abandoned";
|
|
18
|
+
cancelled: "cancelled";
|
|
19
|
+
completed: "completed";
|
|
20
|
+
failed: "failed";
|
|
21
|
+
interrupt_requested: "interrupt_requested";
|
|
22
|
+
interrupted: "interrupted";
|
|
23
|
+
queued: "queued";
|
|
24
|
+
running: "running";
|
|
25
|
+
}>;
|
|
26
|
+
terminalReason: z.ZodOptional<z.ZodEnum<{
|
|
27
|
+
abandoned: "abandoned";
|
|
28
|
+
cancelled: "cancelled";
|
|
29
|
+
interrupted: "interrupted";
|
|
30
|
+
policy_stop: "policy_stop";
|
|
31
|
+
provider_failure: "provider_failure";
|
|
32
|
+
shutdown: "shutdown";
|
|
33
|
+
success: "success";
|
|
34
|
+
timeout: "timeout";
|
|
35
|
+
tool_failure: "tool_failure";
|
|
36
|
+
}>>;
|
|
37
|
+
modelId: z.ZodOptional<z.ZodString>;
|
|
38
|
+
step: z.ZodOptional<z.ZodInt>;
|
|
39
|
+
queueWaitMs: z.ZodOptional<z.ZodNumber>;
|
|
40
|
+
durationMs: z.ZodOptional<z.ZodNumber>;
|
|
41
|
+
ttftMs: z.ZodOptional<z.ZodNumber>;
|
|
42
|
+
usage: z.ZodOptional<z.ZodObject<{
|
|
43
|
+
inputTokens: z.ZodObject<{
|
|
44
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
45
|
+
provenance: z.ZodEnum<{
|
|
46
|
+
computed: "computed";
|
|
47
|
+
estimated: "estimated";
|
|
48
|
+
"provider-reported": "provider-reported";
|
|
49
|
+
unavailable: "unavailable";
|
|
50
|
+
}>;
|
|
51
|
+
}, z.core.$strip>;
|
|
52
|
+
outputTokens: z.ZodObject<{
|
|
53
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
provenance: z.ZodEnum<{
|
|
55
|
+
computed: "computed";
|
|
56
|
+
estimated: "estimated";
|
|
57
|
+
"provider-reported": "provider-reported";
|
|
58
|
+
unavailable: "unavailable";
|
|
59
|
+
}>;
|
|
60
|
+
}, z.core.$strip>;
|
|
61
|
+
reasoningTokens: z.ZodOptional<z.ZodObject<{
|
|
62
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
63
|
+
provenance: z.ZodEnum<{
|
|
64
|
+
computed: "computed";
|
|
65
|
+
estimated: "estimated";
|
|
66
|
+
"provider-reported": "provider-reported";
|
|
67
|
+
unavailable: "unavailable";
|
|
68
|
+
}>;
|
|
69
|
+
}, z.core.$strip>>;
|
|
70
|
+
cacheReadTokens: z.ZodOptional<z.ZodObject<{
|
|
71
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
72
|
+
provenance: z.ZodEnum<{
|
|
73
|
+
computed: "computed";
|
|
74
|
+
estimated: "estimated";
|
|
75
|
+
"provider-reported": "provider-reported";
|
|
76
|
+
unavailable: "unavailable";
|
|
77
|
+
}>;
|
|
78
|
+
}, z.core.$strip>>;
|
|
79
|
+
cacheWriteTokens: z.ZodOptional<z.ZodObject<{
|
|
80
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
81
|
+
provenance: z.ZodEnum<{
|
|
82
|
+
computed: "computed";
|
|
83
|
+
estimated: "estimated";
|
|
84
|
+
"provider-reported": "provider-reported";
|
|
85
|
+
unavailable: "unavailable";
|
|
86
|
+
}>;
|
|
87
|
+
}, z.core.$strip>>;
|
|
88
|
+
cost: z.ZodOptional<z.ZodObject<{
|
|
89
|
+
value: z.ZodOptional<z.ZodNumber>;
|
|
90
|
+
currency: z.ZodOptional<z.ZodString>;
|
|
91
|
+
provenance: z.ZodEnum<{
|
|
92
|
+
computed: "computed";
|
|
93
|
+
estimated: "estimated";
|
|
94
|
+
"provider-reported": "provider-reported";
|
|
95
|
+
unavailable: "unavailable";
|
|
96
|
+
}>;
|
|
97
|
+
}, z.core.$strip>>;
|
|
98
|
+
}, z.core.$strip>>;
|
|
99
|
+
internalCause: z.ZodOptional<z.ZodUnknown>;
|
|
100
|
+
emittedAt: z.ZodISODateTime;
|
|
101
|
+
}, z.core.$strip>;
|
|
102
|
+
export type AgentRunEvent = z.infer<typeof AgentRunEventSchema>;
|
|
103
|
+
export interface AgentRunSinkError {
|
|
104
|
+
error: unknown;
|
|
105
|
+
event?: AgentRunEvent;
|
|
106
|
+
}
|
|
107
|
+
export interface AgentRunSinkDrop {
|
|
108
|
+
reason: 'capacity' | 'closed';
|
|
109
|
+
event: AgentRunEvent;
|
|
110
|
+
pending: number;
|
|
111
|
+
}
|
|
112
|
+
export interface AgentRunSinkConfig {
|
|
113
|
+
write(event: AgentRunEvent): void | Promise<void>;
|
|
114
|
+
filter?(event: AgentRunEvent): boolean;
|
|
115
|
+
maxPending?: number;
|
|
116
|
+
onSinkError?(failure: AgentRunSinkError): void | Promise<void>;
|
|
117
|
+
onDrop?(drop: AgentRunSinkDrop): void | Promise<void>;
|
|
118
|
+
}
|
|
119
|
+
export interface AgentObservability {
|
|
120
|
+
rootTrace(parent?: {
|
|
121
|
+
traceId: string;
|
|
122
|
+
spanId: string;
|
|
123
|
+
}): {
|
|
124
|
+
traceId: string;
|
|
125
|
+
spanId: string;
|
|
126
|
+
parentSpanId?: string;
|
|
127
|
+
};
|
|
128
|
+
emit(event: AgentRunEvent): void;
|
|
129
|
+
flush(): Promise<void>;
|
|
130
|
+
getStatus(): ObservabilitySinkStatus;
|
|
131
|
+
close(): Promise<ObservabilitySinkStatus>;
|
|
132
|
+
}
|
|
133
|
+
export declare function createAgentObservability(config: AgentRunSinkConfig): AgentObservability;
|
|
134
|
+
//# sourceMappingURL=observability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/observability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAUvE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmB9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC9B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,CAAC,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,CAAC,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG;QACvD,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,SAAS,IAAI,uBAAuB,CAAC;IACrC,KAAK,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC3C;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB,CAoBvF"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Instructions } from 'ai';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export declare const AgentTokenCountSchema: z.ZodObject<{
|
|
4
|
+
value: z.ZodOptional<z.ZodInt>;
|
|
5
|
+
provenance: z.ZodEnum<{
|
|
6
|
+
estimated: "estimated";
|
|
7
|
+
measured: "measured";
|
|
8
|
+
unavailable: "unavailable";
|
|
9
|
+
}>;
|
|
10
|
+
}, z.core.$strip>;
|
|
11
|
+
export type AgentTokenCount = z.infer<typeof AgentTokenCountSchema>;
|
|
12
|
+
export interface AgentPromptSectionContext<CONTEXT> {
|
|
13
|
+
context: CONTEXT;
|
|
14
|
+
signal: AbortSignal;
|
|
15
|
+
}
|
|
16
|
+
export interface AgentPromptSection<CONTEXT> {
|
|
17
|
+
name: string;
|
|
18
|
+
stability: 'stable' | 'dynamic';
|
|
19
|
+
render(input: AgentPromptSectionContext<CONTEXT>): string | Promise<string>;
|
|
20
|
+
estimateTokens?(text: string): AgentTokenCount | Promise<AgentTokenCount>;
|
|
21
|
+
}
|
|
22
|
+
export interface AgentPromptBudget {
|
|
23
|
+
contextWindow: number;
|
|
24
|
+
reservedOutput: number;
|
|
25
|
+
toolSchemas: AgentTokenCount;
|
|
26
|
+
attachments: AgentTokenCount;
|
|
27
|
+
providerOverhead: AgentTokenCount;
|
|
28
|
+
}
|
|
29
|
+
export interface ComposedAgentPrompt {
|
|
30
|
+
instructions: Instructions;
|
|
31
|
+
sections: readonly {
|
|
32
|
+
name: string;
|
|
33
|
+
stability: 'stable' | 'dynamic';
|
|
34
|
+
text: string;
|
|
35
|
+
}[];
|
|
36
|
+
instructionTokens: AgentTokenCount;
|
|
37
|
+
availableHistoryTokens?: number;
|
|
38
|
+
contextDecision: 'fits' | 'requires-compaction' | 'oversized' | 'unavailable';
|
|
39
|
+
}
|
|
40
|
+
export interface ComposeAgentPromptOptions<CONTEXT> {
|
|
41
|
+
context: CONTEXT;
|
|
42
|
+
signal: AbortSignal;
|
|
43
|
+
budget?: AgentPromptBudget;
|
|
44
|
+
historyTokens?: AgentTokenCount;
|
|
45
|
+
oversizePolicy?: 'reject' | 'compact';
|
|
46
|
+
estimateFallback?: (text: string) => AgentTokenCount | Promise<AgentTokenCount>;
|
|
47
|
+
adaptInstructions?: (text: string) => Instructions | Promise<Instructions>;
|
|
48
|
+
}
|
|
49
|
+
export declare function composeAgentPrompt<CONTEXT>(sections: readonly AgentPromptSection<CONTEXT>[]): (options: ComposeAgentPromptOptions<CONTEXT>) => Promise<ComposedAgentPrompt>;
|
|
50
|
+
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,qBAAqB;;;;;;;iBAGhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,yBAAyB,CAAC,OAAO;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB,CAAC,OAAO;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,QAAQ,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,KAAK,EAAE,yBAAyB,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5E,cAAc,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,eAAe,CAAC;IAC7B,WAAW,EAAE,eAAe,CAAC;IAC7B,gBAAgB,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,QAAQ,GAAG,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrF,iBAAiB,EAAE,eAAe,CAAC;IACnC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,qBAAqB,GAAG,WAAW,GAAG,aAAa,CAAC;CAC/E;AAED,MAAM,WAAW,yBAAyB,CAAC,OAAO;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,cAAc,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IACtC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAChF,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5E;AAMD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,kBAAkB,CAAC,OAAO,CAAC,EAAE,aACnE,yBAAyB,CAAC,OAAO,CAAC,KAAG,OAAO,CAAC,mBAAmB,CAAC,CA6DzF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ZodType, z } from 'zod';
|
|
2
|
+
import { AgentJsonObjectSchema, type AgentMessage, type AgentMessagePart } from './schemas';
|
|
3
|
+
export interface AgentProtocolConfig<CONTEXT extends ZodType, INPUT_METADATA extends ZodType> {
|
|
4
|
+
context: CONTEXT;
|
|
5
|
+
inputMetadata: INPUT_METADATA;
|
|
6
|
+
}
|
|
7
|
+
export interface AgentProtocol<CONTEXT extends ZodType, INPUT_METADATA extends ZodType> {
|
|
8
|
+
contextSchema: CONTEXT;
|
|
9
|
+
inputMetadataSchema: INPUT_METADATA;
|
|
10
|
+
parseContext(input: unknown): z.infer<CONTEXT>;
|
|
11
|
+
parseInputMetadata(input: unknown): z.infer<typeof AgentJsonObjectSchema>;
|
|
12
|
+
parseMessage(input: unknown): AgentMessage;
|
|
13
|
+
parsePart(input: unknown): AgentMessagePart;
|
|
14
|
+
}
|
|
15
|
+
export declare function defineAgentProtocol<CONTEXT extends ZodType, INPUT_METADATA extends ZodType>(config: AgentProtocolConfig<CONTEXT, INPUT_METADATA>): AgentProtocol<CONTEXT, INPUT_METADATA>;
|
|
16
|
+
//# sourceMappingURL=protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EAEtB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,mBAAmB,CAAC,OAAO,SAAS,OAAO,EAAE,cAAc,SAAS,OAAO;IAC1F,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa,CAAC,OAAO,SAAS,OAAO,EAAE,cAAc,SAAS,OAAO;IACpF,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,cAAc,CAAC;IACpC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;IAC1E,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAAC;IAC3C,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAAC;CAC7C;AAED,wBAAgB,mBAAmB,CAAC,OAAO,SAAS,OAAO,EAAE,cAAc,SAAS,OAAO,EACzF,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,cAAc,CAAC,GACnD,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,CAUxC"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { type GeneratedFile, type ModelMessage, type PrepareStepFunction, type StopCondition, type ToolSet } from 'ai';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { type ToolLifecycle } from '../tools/execute';
|
|
4
|
+
import type { AgentCompactionResult } from './compaction';
|
|
5
|
+
import { type AgentInputPolicy, type AgentStopReason } from './coordinator';
|
|
6
|
+
import type { AgentRuntimePublisher } from './events';
|
|
7
|
+
import { type AgentHistoryProjectionOptions } from './history';
|
|
8
|
+
import type { AgentResolvedModel } from './models';
|
|
9
|
+
import type { AgentObservability } from './observability';
|
|
10
|
+
import type { ComposedAgentPrompt } from './prompt';
|
|
11
|
+
import { AgentJsonObjectSchema, type AgentMessage, type AgentMessagePart, type AgentRun, type AgentSnapshot, type AgentTerminalReason } from './schemas';
|
|
12
|
+
import type { AgentRuntimeStore, AgentStoreMutationResult } from './store';
|
|
13
|
+
export interface AgentRuntimeProtocolInput<CONTEXT> {
|
|
14
|
+
parseContext(input: unknown): CONTEXT;
|
|
15
|
+
parseInputMetadata(input: unknown): z.infer<typeof AgentJsonObjectSchema>;
|
|
16
|
+
parsePart(input: unknown): AgentMessagePart;
|
|
17
|
+
}
|
|
18
|
+
export interface AgentRuntimeInput {
|
|
19
|
+
conversationId: string;
|
|
20
|
+
idempotencyKey: string;
|
|
21
|
+
context: unknown;
|
|
22
|
+
parts: readonly AgentMessagePart[];
|
|
23
|
+
metadata?: unknown;
|
|
24
|
+
recordIds?: AgentRuntimeRecordIds;
|
|
25
|
+
}
|
|
26
|
+
export interface AgentRuntimeRecordIds {
|
|
27
|
+
inputMessageId: string;
|
|
28
|
+
runId: string;
|
|
29
|
+
assistantMessageId: string;
|
|
30
|
+
}
|
|
31
|
+
export interface AgentRuntimeAdmission {
|
|
32
|
+
runId: string;
|
|
33
|
+
assistantMessageId: string;
|
|
34
|
+
snapshotVersion: number;
|
|
35
|
+
}
|
|
36
|
+
export interface AgentRuntimeRecoveryInput {
|
|
37
|
+
conversationId: string;
|
|
38
|
+
runId: string;
|
|
39
|
+
context: unknown;
|
|
40
|
+
conversationKey?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface AgentRuntimeInterruptInput {
|
|
43
|
+
conversationId: string;
|
|
44
|
+
runId: string;
|
|
45
|
+
conversationKey?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface AgentRuntimeRunContext<CONTEXT> {
|
|
48
|
+
context: CONTEXT;
|
|
49
|
+
run: AgentRun;
|
|
50
|
+
signal: AbortSignal;
|
|
51
|
+
toolFenceLifecycle: ToolLifecycle;
|
|
52
|
+
}
|
|
53
|
+
export type AgentRuntimePrepareStep<CONTEXT, TOOLS extends ToolSet = ToolSet> = (input: Parameters<PrepareStepFunction<TOOLS>>[0] & AgentRuntimeRunContext<CONTEXT>) => ReturnType<PrepareStepFunction<TOOLS>>;
|
|
54
|
+
export interface AgentRuntimeConfig<CONTEXT, TOOLS extends ToolSet = ToolSet> {
|
|
55
|
+
protocol: AgentRuntimeProtocolInput<CONTEXT>;
|
|
56
|
+
store: AgentRuntimeStore;
|
|
57
|
+
models: {
|
|
58
|
+
resolve(input: {
|
|
59
|
+
context: CONTEXT;
|
|
60
|
+
conversationId: string;
|
|
61
|
+
}): AgentResolvedModel | Promise<AgentResolvedModel>;
|
|
62
|
+
};
|
|
63
|
+
prompt(input: {
|
|
64
|
+
context: CONTEXT;
|
|
65
|
+
signal: AbortSignal;
|
|
66
|
+
model: AgentResolvedModel;
|
|
67
|
+
snapshot: AgentSnapshot;
|
|
68
|
+
}): ComposedAgentPrompt | Promise<ComposedAgentPrompt>;
|
|
69
|
+
tools(input: AgentRuntimeRunContext<CONTEXT>): TOOLS | Promise<TOOLS>;
|
|
70
|
+
runs?: {
|
|
71
|
+
key?(input: AgentRuntimeInput): string;
|
|
72
|
+
inputPolicy?: AgentInputPolicy | ((input: AgentRuntimeInput) => AgentInputPolicy);
|
|
73
|
+
coalescePending?: boolean;
|
|
74
|
+
};
|
|
75
|
+
loop?: {
|
|
76
|
+
maxSteps?: number;
|
|
77
|
+
checkpointEveryEvents?: number;
|
|
78
|
+
idleTimeoutMs?: number;
|
|
79
|
+
prepareStep?: AgentRuntimePrepareStep<CONTEXT, TOOLS>;
|
|
80
|
+
stopPolicies?: readonly AgentRuntimeStopPolicy<TOOLS>[];
|
|
81
|
+
};
|
|
82
|
+
history?: {
|
|
83
|
+
compact?(input: {
|
|
84
|
+
conversationId: string;
|
|
85
|
+
store: AgentRuntimeStore;
|
|
86
|
+
signal: AbortSignal;
|
|
87
|
+
}): AgentCompactionResult | Promise<AgentCompactionResult>;
|
|
88
|
+
project?(messages: readonly AgentMessage[]): ModelMessage[] | Promise<ModelMessage[]>;
|
|
89
|
+
resolveFile?: AgentHistoryProjectionOptions['resolveFile'];
|
|
90
|
+
unresolvedFile?: AgentHistoryProjectionOptions['unresolvedFile'];
|
|
91
|
+
};
|
|
92
|
+
publish?: AgentRuntimePublisher;
|
|
93
|
+
observe?: AgentObservability;
|
|
94
|
+
persistGeneratedFile?(file: GeneratedFile): {
|
|
95
|
+
reference: string;
|
|
96
|
+
filename?: string;
|
|
97
|
+
} | Promise<{
|
|
98
|
+
reference: string;
|
|
99
|
+
filename?: string;
|
|
100
|
+
}>;
|
|
101
|
+
generateId?: () => string;
|
|
102
|
+
now?: () => Date;
|
|
103
|
+
}
|
|
104
|
+
export interface AgentRuntimeStopPolicy<TOOLS extends ToolSet = ToolSet> {
|
|
105
|
+
name: string;
|
|
106
|
+
when: StopCondition<TOOLS>;
|
|
107
|
+
}
|
|
108
|
+
export interface AgentRuntimeResult {
|
|
109
|
+
run: AgentRun;
|
|
110
|
+
message: AgentMessage;
|
|
111
|
+
reason: AgentTerminalReason;
|
|
112
|
+
snapshotVersion: number;
|
|
113
|
+
policyName?: string;
|
|
114
|
+
}
|
|
115
|
+
export interface AgentRuntime {
|
|
116
|
+
submit(input: AgentRuntimeInput): {
|
|
117
|
+
accepted: Promise<void>;
|
|
118
|
+
admission: Promise<AgentRuntimeAdmission>;
|
|
119
|
+
result: Promise<AgentRuntimeResult>;
|
|
120
|
+
};
|
|
121
|
+
resume(input: AgentRuntimeRecoveryInput): {
|
|
122
|
+
accepted: Promise<void>;
|
|
123
|
+
result: Promise<AgentRuntimeResult>;
|
|
124
|
+
};
|
|
125
|
+
interrupt(input: AgentRuntimeInterruptInput): Promise<AgentStoreMutationResult>;
|
|
126
|
+
stop(conversationKey: string, reason?: AgentStopReason): boolean;
|
|
127
|
+
close(options?: {
|
|
128
|
+
drainTimeoutMs?: number;
|
|
129
|
+
}): Promise<void>;
|
|
130
|
+
}
|
|
131
|
+
export declare function createAgentRuntime<CONTEXT, TOOLS extends ToolSet>(config: AgentRuntimeConfig<CONTEXT, TOOLS>): AgentRuntime;
|
|
132
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/agent-runtime/runtime.ts"],"names":[],"mappings":"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"}
|