@agentplat/runtime 0.2.0-beta.1 → 0.2.0-beta.10
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 +5 -0
- package/dist/chat-agent-provider.d.ts.map +1 -1
- package/dist/chat-agent-provider.js +15 -6
- package/dist/chat-agent-provider.js.map +1 -1
- package/dist/index.d.ts +32 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -10,6 +10,11 @@ such as `@agentplat/provider-openai` remain available when an application needs
|
|
|
10
10
|
an SDK-managed agent loop and the provider-specific capabilities implemented by
|
|
11
11
|
that adapter.
|
|
12
12
|
|
|
13
|
+
`AgentStreamEvent` is a discriminated union. Completed events expose normalized
|
|
14
|
+
`usage`, `model`, `finishReason` and `latencyMs` when the provider reports them,
|
|
15
|
+
so higher-level orchestrators can preserve real accounting instead of
|
|
16
|
+
estimating tokens.
|
|
17
|
+
|
|
13
18
|
## Execution contract
|
|
14
19
|
|
|
15
20
|
Provider adapters must treat `RuntimeExecutionContext.signal` as a cooperative
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-agent-provider.d.ts","sourceRoot":"","sources":["../src/chat-agent-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"chat-agent-provider.d.ts","sourceRoot":"","sources":["../src/chat-agent-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EACb,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,6DAA6D;AAC7D,MAAM,WAAW,wBAAwB;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,aAAa,CAAC,EAAE,CACd,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,aAAa,KACjB,WAAW,EAAE,CAAC;CACpB;AAED;;;;;;GAMG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,wBAA6B;IAGnD,GAAG,CACP,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,cAAc,CAAC;IAcnB,MAAM,CACX,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,uBAAuB,GAC/B,aAAa,CAAC,gBAAgB,CAAC;IAiElC,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,aAAa;CAoBtB"}
|
|
@@ -14,13 +14,15 @@ export class ChatAgentProvider {
|
|
|
14
14
|
this.options = options;
|
|
15
15
|
}
|
|
16
16
|
async run(agent, input, context) {
|
|
17
|
+
const startedAt = performance.now();
|
|
17
18
|
const result = await this.adapter.generate(this.request(agent, input), this.executionContext(context));
|
|
18
|
-
return this.toRunResult(result, input, context);
|
|
19
|
+
return this.toRunResult(result, input, context, elapsedMilliseconds(startedAt));
|
|
19
20
|
}
|
|
20
21
|
async *stream(agent, input, context) {
|
|
21
22
|
if (!this.adapter.stream) {
|
|
22
23
|
throw new AgentPlatError('ADAPTER_ERROR', `Model adapter "${this.adapter.id}" does not support streaming`);
|
|
23
24
|
}
|
|
25
|
+
const startedAt = performance.now();
|
|
24
26
|
let started = false;
|
|
25
27
|
for await (const event of this.adapter.stream(this.request(agent, input), this.executionContext(context))) {
|
|
26
28
|
if (!started && event.type !== 'started') {
|
|
@@ -57,7 +59,7 @@ export class ChatAgentProvider {
|
|
|
57
59
|
type: 'completed',
|
|
58
60
|
runId: context.runId,
|
|
59
61
|
content: event.result.content,
|
|
60
|
-
payload: this.resultPayload(event.result),
|
|
62
|
+
payload: this.resultPayload(event.result, elapsedMilliseconds(startedAt)),
|
|
61
63
|
};
|
|
62
64
|
break;
|
|
63
65
|
case 'failed':
|
|
@@ -105,23 +107,27 @@ export class ChatAgentProvider {
|
|
|
105
107
|
}
|
|
106
108
|
return Object.keys(options).length > 0 ? options : undefined;
|
|
107
109
|
}
|
|
108
|
-
toRunResult(result, input, context) {
|
|
110
|
+
toRunResult(result, input, context, latencyMs) {
|
|
109
111
|
return {
|
|
110
112
|
runId: context.runId,
|
|
111
113
|
conversationId: input.conversationId,
|
|
112
114
|
status: 'completed',
|
|
113
115
|
output: result.content,
|
|
114
|
-
result: this.resultPayload(result),
|
|
116
|
+
result: this.resultPayload(result, latencyMs),
|
|
115
117
|
metadata: {
|
|
116
118
|
...(result.metadata ?? {}),
|
|
117
119
|
provider: 'chat',
|
|
118
120
|
adapter: this.adapter.id,
|
|
121
|
+
latencyMs,
|
|
119
122
|
...(result.model ? { model: result.model } : {}),
|
|
120
123
|
},
|
|
121
124
|
};
|
|
122
125
|
}
|
|
123
|
-
resultPayload(result) {
|
|
124
|
-
const payload = {
|
|
126
|
+
resultPayload(result, latencyMs) {
|
|
127
|
+
const payload = {
|
|
128
|
+
finishReason: result.finishReason,
|
|
129
|
+
latencyMs,
|
|
130
|
+
};
|
|
125
131
|
if (result.id)
|
|
126
132
|
payload.id = result.id;
|
|
127
133
|
if (result.model)
|
|
@@ -138,6 +144,9 @@ export class ChatAgentProvider {
|
|
|
138
144
|
return payload;
|
|
139
145
|
}
|
|
140
146
|
}
|
|
147
|
+
function elapsedMilliseconds(startedAt) {
|
|
148
|
+
return Math.max(0, Math.round((performance.now() - startedAt) * 100) / 100);
|
|
149
|
+
}
|
|
141
150
|
function defaultMessages(agent, input) {
|
|
142
151
|
const messages = [];
|
|
143
152
|
if (agent.instructions?.trim()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-agent-provider.js","sourceRoot":"","sources":["../src/chat-agent-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-agent-provider.js","sourceRoot":"","sources":["../src/chat-agent-provider.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -47,24 +47,53 @@ export interface AgentRunResult {
|
|
|
47
47
|
errorMessage?: string;
|
|
48
48
|
metadata?: Metadata;
|
|
49
49
|
}
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
/** Minimal event shape accepted by AgentPlat stream transports. */
|
|
51
|
+
export interface StreamEvent<TType extends string = string, TPayload extends JsonObject = JsonObject> {
|
|
52
|
+
type: TType;
|
|
52
53
|
runId?: AgentPlatID;
|
|
53
54
|
content?: string;
|
|
54
|
-
payload?:
|
|
55
|
+
payload?: TPayload;
|
|
55
56
|
}
|
|
57
|
+
/** Normalized token accounting carried by completed runtime events. */
|
|
58
|
+
export type AgentUsage = JsonObject & {
|
|
59
|
+
inputTokens?: number;
|
|
60
|
+
outputTokens?: number;
|
|
61
|
+
totalTokens?: number;
|
|
62
|
+
};
|
|
63
|
+
/** Provider-neutral details emitted when an agent run completes. */
|
|
64
|
+
export type AgentCompletionPayload = JsonObject & {
|
|
65
|
+
id?: AgentPlatID;
|
|
66
|
+
model?: string;
|
|
67
|
+
finishReason?: string;
|
|
68
|
+
usage?: AgentUsage;
|
|
69
|
+
latencyMs?: number;
|
|
70
|
+
toolCalls?: JsonObject[];
|
|
71
|
+
};
|
|
72
|
+
/** Discriminated events emitted by one agent runtime execution. */
|
|
73
|
+
export type AgentStreamEvent = StreamEvent<'started'> | (StreamEvent<'token'> & {
|
|
74
|
+
content: string;
|
|
75
|
+
}) | StreamEvent<'tool_call'> | StreamEvent<'tool_result'> | StreamEvent<'completed', AgentCompletionPayload> | (StreamEvent<'failed'> & {
|
|
76
|
+
content: string;
|
|
77
|
+
});
|
|
56
78
|
export interface AgentProvider {
|
|
57
79
|
run(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): Promise<AgentRunResult>;
|
|
58
80
|
stream?(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): AsyncIterable<AgentStreamEvent>;
|
|
59
81
|
}
|
|
60
82
|
export interface AgentRuntime {
|
|
61
83
|
registerProvider(platform: string, provider: AgentProvider): void;
|
|
84
|
+
/** Optional capability used by higher-level composition validation. */
|
|
85
|
+
hasProvider?(platform: string): boolean;
|
|
62
86
|
run(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): Promise<AgentRunResult>;
|
|
63
87
|
stream(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): AsyncIterable<AgentStreamEvent>;
|
|
64
88
|
}
|
|
89
|
+
/** Register a map of provider-neutral platforms on any AgentPlat runtime. */
|
|
90
|
+
export declare function registerRuntimeProviders(runtime: AgentRuntime, providers: Record<string, AgentProvider>): void;
|
|
65
91
|
export declare class DefaultAgentRuntime implements AgentRuntime {
|
|
66
92
|
private readonly providers;
|
|
67
93
|
registerProvider(platform: string, provider: AgentProvider): void;
|
|
94
|
+
/** Register several named platforms without coupling the runtime to vendor SDKs. */
|
|
95
|
+
registerAll(providers: Record<string, AgentProvider>): void;
|
|
96
|
+
hasProvider(platform: string): boolean;
|
|
68
97
|
run(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): Promise<AgentRunResult>;
|
|
69
98
|
stream(agent: AgentDefinition, input: AgentRunInput, context: RuntimeExecutionContext): AsyncIterable<AgentStreamEvent>;
|
|
70
99
|
private providerFor;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,QAAQ,EACR,aAAa,EACb,YAAY,EACZ,WAAW,EACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,GAC9B,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,eAAgB,SAAQ,YAAY,EAAE,WAAW;IAChE,EAAE,EAAE,WAAW,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,aAAa,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { AgentPlatError } from '@agentplat/core';
|
|
2
2
|
export { ChatAgentProvider, } from './chat-agent-provider.js';
|
|
3
|
+
/** Register a map of provider-neutral platforms on any AgentPlat runtime. */
|
|
4
|
+
export function registerRuntimeProviders(runtime, providers) {
|
|
5
|
+
for (const [platform, provider] of Object.entries(providers)) {
|
|
6
|
+
runtime.registerProvider(platform, provider);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
3
9
|
export class DefaultAgentRuntime {
|
|
4
10
|
providers = new Map();
|
|
5
11
|
registerProvider(platform, provider) {
|
|
@@ -9,6 +15,13 @@ export class DefaultAgentRuntime {
|
|
|
9
15
|
}
|
|
10
16
|
this.providers.set(normalizedPlatform, provider);
|
|
11
17
|
}
|
|
18
|
+
/** Register several named platforms without coupling the runtime to vendor SDKs. */
|
|
19
|
+
registerAll(providers) {
|
|
20
|
+
registerRuntimeProviders(this, providers);
|
|
21
|
+
}
|
|
22
|
+
hasProvider(platform) {
|
|
23
|
+
return this.providers.has(platform.trim().toLowerCase());
|
|
24
|
+
}
|
|
12
25
|
async run(agent, input, context) {
|
|
13
26
|
return this.providerFor(agent.platform).run(agent, input, context);
|
|
14
27
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAYjD,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAYjD,OAAO,EACL,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAqHlC,6EAA6E;AAC7E,MAAM,UAAU,wBAAwB,CACtC,OAAqB,EACrB,SAAwC;IAExC,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,MAAM,OAAO,mBAAmB;IACb,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE9D,gBAAgB,CAAC,QAAgB,EAAE,QAAuB;QACxD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACzD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,IAAI,cAAc,CACtB,kBAAkB,EAClB,+BAA+B,CAChC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,oFAAoF;IACpF,WAAW,CAAC,SAAwC;QAClD,wBAAwB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,WAAW,CAAC,QAAgB;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,GAAG,CACP,KAAsB,EACtB,KAAoB,EACpB,OAAgC;QAEhC,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,CAAC,MAAM,CACX,KAAsB,EACtB,KAAoB,EACpB,OAAgC;QAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,cAAc,CACtB,eAAe,EACf,aAAa,KAAK,CAAC,QAAQ,8BAA8B,CAC1D,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAEO,WAAW,CAAC,QAAgB;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,cAAc,CACtB,eAAe,EACf,wCAAwC,QAAQ,GAAG,CACpD,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentplat/runtime",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.10",
|
|
4
4
|
"description": "Provider-neutral executable agent runtime for AgentPlat.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
"README.md"
|
|
19
19
|
],
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@agentplat/core": "^0.2.0-beta.
|
|
22
|
-
"@agentplat/
|
|
23
|
-
"@agentplat/
|
|
24
|
-
"@agentplat/workflows": "^0.2.0-beta.
|
|
21
|
+
"@agentplat/core": "^0.2.0-beta.10",
|
|
22
|
+
"@agentplat/model": "^0.2.0-beta.10",
|
|
23
|
+
"@agentplat/tools": "^0.2.0-beta.10",
|
|
24
|
+
"@agentplat/workflows": "^0.2.0-beta.10"
|
|
25
25
|
},
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"access": "public"
|