@cogitator-ai/server-shared 0.3.0 → 0.4.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/heartbeat.d.ts +25 -0
- package/dist/heartbeat.d.ts.map +1 -0
- package/dist/heartbeat.js +42 -0
- package/dist/heartbeat.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/openapi-types.d.ts +6 -0
- package/dist/openapi-types.d.ts.map +1 -1
- package/dist/openapi.d.ts.map +1 -1
- package/dist/openapi.js +75 -20
- package/dist/openapi.js.map +1 -1
- package/dist/protocol.d.ts +17 -1
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +6 -1
- package/dist/protocol.js.map +1 -1
- package/dist/usage.d.ts +12 -0
- package/dist/usage.d.ts.map +1 -0
- package/dist/usage.js +15 -0
- package/dist/usage.js.map +1 -0
- package/dist/validation.d.ts +46 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +69 -0
- package/dist/validation.js.map +1 -0
- package/package.json +5 -3
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How often adapters write an SSE comment on an open stream, in milliseconds.
|
|
3
|
+
*
|
|
4
|
+
* Well under the shortest idle timeout a stream meets in practice: Bun closes a
|
|
5
|
+
* connection that stays silent for 10 seconds (`Bun.serve` `idleTimeout`), and
|
|
6
|
+
* proxies such as nginx close one after 60. A run waiting on a slow tool or model
|
|
7
|
+
* would otherwise be cut off mid-stream.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_SSE_HEARTBEAT_MS = 5000;
|
|
10
|
+
/** The frame of a heartbeat: an SSE comment, which every SSE client skips */
|
|
11
|
+
export declare function encodeHeartbeat(): string;
|
|
12
|
+
/**
|
|
13
|
+
* Reads the `sseHeartbeatMs` option of an adapter: the default when it is not set,
|
|
14
|
+
* `0` to turn heartbeats off, or a positive number of milliseconds.
|
|
15
|
+
*
|
|
16
|
+
* @throws RangeError for a negative, fractional or non-finite value
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveSseHeartbeatMs(value: number | undefined): number;
|
|
19
|
+
/**
|
|
20
|
+
* Calls `beat` every `intervalMs` until the returned function is called, or until
|
|
21
|
+
* `beat` returns `false` (the stream it writes to is gone). An interval of `0`
|
|
22
|
+
* starts nothing.
|
|
23
|
+
*/
|
|
24
|
+
export declare function startHeartbeat(beat: () => boolean, intervalMs: number): () => void;
|
|
25
|
+
//# sourceMappingURL=heartbeat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAE9C,6EAA6E;AAC7E,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQvE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,IAAI,CAMlF"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How often adapters write an SSE comment on an open stream, in milliseconds.
|
|
3
|
+
*
|
|
4
|
+
* Well under the shortest idle timeout a stream meets in practice: Bun closes a
|
|
5
|
+
* connection that stays silent for 10 seconds (`Bun.serve` `idleTimeout`), and
|
|
6
|
+
* proxies such as nginx close one after 60. A run waiting on a slow tool or model
|
|
7
|
+
* would otherwise be cut off mid-stream.
|
|
8
|
+
*/
|
|
9
|
+
export const DEFAULT_SSE_HEARTBEAT_MS = 5_000;
|
|
10
|
+
/** The frame of a heartbeat: an SSE comment, which every SSE client skips */
|
|
11
|
+
export function encodeHeartbeat() {
|
|
12
|
+
return ': keep-alive\n\n';
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Reads the `sseHeartbeatMs` option of an adapter: the default when it is not set,
|
|
16
|
+
* `0` to turn heartbeats off, or a positive number of milliseconds.
|
|
17
|
+
*
|
|
18
|
+
* @throws RangeError for a negative, fractional or non-finite value
|
|
19
|
+
*/
|
|
20
|
+
export function resolveSseHeartbeatMs(value) {
|
|
21
|
+
if (value === undefined)
|
|
22
|
+
return DEFAULT_SSE_HEARTBEAT_MS;
|
|
23
|
+
if (!Number.isInteger(value) || value < 0) {
|
|
24
|
+
throw new RangeError(`sseHeartbeatMs must be 0 (off) or a positive whole number of milliseconds, got ${value}`);
|
|
25
|
+
}
|
|
26
|
+
return value;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Calls `beat` every `intervalMs` until the returned function is called, or until
|
|
30
|
+
* `beat` returns `false` (the stream it writes to is gone). An interval of `0`
|
|
31
|
+
* starts nothing.
|
|
32
|
+
*/
|
|
33
|
+
export function startHeartbeat(beat, intervalMs) {
|
|
34
|
+
if (intervalMs <= 0)
|
|
35
|
+
return () => { };
|
|
36
|
+
const timer = setInterval(() => {
|
|
37
|
+
if (!beat())
|
|
38
|
+
clearInterval(timer);
|
|
39
|
+
}, intervalMs);
|
|
40
|
+
return () => clearInterval(timer);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=heartbeat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C,6EAA6E;AAC7E,MAAM,UAAU,eAAe;IAC7B,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAyB;IAC7D,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,wBAAwB,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,UAAU,CAClB,kFAAkF,KAAK,EAAE,CAC1F,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,IAAmB,EAAE,UAAkB;IACpE,IAAI,UAAU,IAAI,CAAC;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,IAAI,CAAC,IAAI,EAAE;YAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,EAAE,UAAU,CAAC,CAAC;IACf,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
export { createStartEvent, createTextStartEvent, createTextDeltaEvent, createTextEndEvent, createReasoningStartEvent, createReasoningDeltaEvent, createReasoningEndEvent, createToolCallStartEvent, createToolCallDeltaEvent, createToolCallEndEvent, createToolResultEvent, createApprovalRequiredEvent, createErrorEvent, createFinishEvent, createWorkflowEvent, createSwarmEvent, } from './protocol.js';
|
|
2
2
|
export type { Usage, StreamEvent, StartEvent, TextStartEvent, TextDeltaEvent, TextEndEvent, ReasoningStartEvent, ReasoningDeltaEvent, ReasoningEndEvent, ToolCallStartEvent, ToolCallDeltaEvent, ToolCallEndEvent, ToolResultEvent, ApprovalRequiredEvent, PendingApproval, ErrorEvent, FinishEvent, WorkflowEvent, SwarmEvent, } from './protocol.js';
|
|
3
3
|
export { generateId, encodeSSE, encodeDone } from './helpers.js';
|
|
4
|
+
export { DEFAULT_SSE_HEARTBEAT_MS, encodeHeartbeat, resolveSseHeartbeatMs, startHeartbeat, } from './heartbeat.js';
|
|
5
|
+
export { NON_BLANK_PATTERN, RUN_INPUT_SCHEMA, isJsonObject, isNonBlankString, parseRunRequest, parseSwarmRunRequest, } from './validation.js';
|
|
6
|
+
export type { ParseResult, RunRequestBody, SwarmRunRequestBody } from './validation.js';
|
|
7
|
+
export { toRunUsage } from './usage.js';
|
|
8
|
+
export type { RunUsage } from './usage.js';
|
|
4
9
|
export { generateOpenAPISpec, generateSwaggerHTML } from './openapi.js';
|
|
5
10
|
export type { OpenAPISpec, SwaggerConfig, OpenAPIContext } from './openapi-types.js';
|
|
6
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,KAAK,EACL,WAAW,EACX,UAAU,EACV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,KAAK,EACL,WAAW,EACX,UAAU,EACV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,WAAW,EACX,aAAa,EACb,UAAU,GACX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAExF,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export { createStartEvent, createTextStartEvent, createTextDeltaEvent, createTextEndEvent, createReasoningStartEvent, createReasoningDeltaEvent, createReasoningEndEvent, createToolCallStartEvent, createToolCallDeltaEvent, createToolCallEndEvent, createToolResultEvent, createApprovalRequiredEvent, createErrorEvent, createFinishEvent, createWorkflowEvent, createSwarmEvent, } from './protocol.js';
|
|
2
2
|
export { generateId, encodeSSE, encodeDone } from './helpers.js';
|
|
3
|
+
export { DEFAULT_SSE_HEARTBEAT_MS, encodeHeartbeat, resolveSseHeartbeatMs, startHeartbeat, } from './heartbeat.js';
|
|
4
|
+
export { NON_BLANK_PATTERN, RUN_INPUT_SCHEMA, isJsonObject, isNonBlankString, parseRunRequest, parseSwarmRunRequest, } from './validation.js';
|
|
5
|
+
export { toRunUsage } from './usage.js';
|
|
3
6
|
export { generateOpenAPISpec, generateSwaggerHTML } from './openapi.js';
|
|
4
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAwBvB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAwBvB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAIxC,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/openapi-types.d.ts
CHANGED
|
@@ -42,10 +42,16 @@ export interface SwaggerConfig {
|
|
|
42
42
|
name: string;
|
|
43
43
|
url?: string;
|
|
44
44
|
};
|
|
45
|
+
/** Where the API is mounted; adapters fill in their own base path when this is not set */
|
|
45
46
|
servers?: Array<{
|
|
46
47
|
url: string;
|
|
47
48
|
description?: string;
|
|
48
49
|
}>;
|
|
50
|
+
/**
|
|
51
|
+
* The server checks credentials (an adapter with `auth`): the spec then
|
|
52
|
+
* declares an optional bearer token, so Swagger UI offers to send one.
|
|
53
|
+
*/
|
|
54
|
+
auth?: boolean;
|
|
49
55
|
}
|
|
50
56
|
export interface OpenAPIContext {
|
|
51
57
|
agents: Record<string, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-types.d.ts","sourceRoot":"","sources":["../src/openapi-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,OAAO,CAAC,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC3C,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"openapi-types.d.ts","sourceRoot":"","sources":["../src/openapi-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE;YACR,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,OAAO,CAAC,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC3C,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE;QACR,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,0FAA0F;IAC1F,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,MAAM,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,KAAK,CAAC,EAAE,KAAK,CAAC;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,WAAW,CAAC,EAAE,MAAM,CAAC;gBAAC,UAAU,EAAE,OAAO,CAAA;aAAE,CAAC,CAAC;SAC5E,CAAC;KACH,CACF,CAAC;IACF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAC/E,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9B,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACjC,SAAS,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QAC7B,UAAU,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;KACxE,CACF,CAAC;CACH"}
|
package/dist/openapi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGrF,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,GAAG,WAAW,CAqT3F;AA4BD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAgC7D"}
|
package/dist/openapi.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RUN_INPUT_SCHEMA } from './validation.js';
|
|
1
2
|
export function generateOpenAPISpec(ctx, config) {
|
|
2
3
|
const spec = {
|
|
3
4
|
openapi: '3.0.3',
|
|
@@ -20,13 +21,16 @@ export function generateOpenAPISpec(ctx, config) {
|
|
|
20
21
|
paths: {},
|
|
21
22
|
components: {
|
|
22
23
|
schemas: generateSchemas(),
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
...(config.auth && {
|
|
25
|
+
securitySchemes: {
|
|
26
|
+
bearerAuth: {
|
|
27
|
+
type: 'http',
|
|
28
|
+
scheme: 'bearer',
|
|
29
|
+
},
|
|
27
30
|
},
|
|
28
|
-
},
|
|
31
|
+
}),
|
|
29
32
|
},
|
|
33
|
+
...(config.auth && { security: [{ bearerAuth: [] }, {}] }),
|
|
30
34
|
};
|
|
31
35
|
spec.paths['/health'] = {
|
|
32
36
|
get: {
|
|
@@ -123,7 +127,10 @@ export function generateOpenAPISpec(ctx, config) {
|
|
|
123
127
|
},
|
|
124
128
|
},
|
|
125
129
|
responses: {
|
|
126
|
-
200: {
|
|
130
|
+
200: {
|
|
131
|
+
description: 'SSE stream of protocol events. It ends with a finish event (StreamFinishEvent) whose usage matches the JSON run response',
|
|
132
|
+
content: { 'text/event-stream': {} },
|
|
133
|
+
},
|
|
127
134
|
},
|
|
128
135
|
},
|
|
129
136
|
};
|
|
@@ -283,13 +290,36 @@ export function generateOpenAPISpec(ctx, config) {
|
|
|
283
290
|
}
|
|
284
291
|
return spec;
|
|
285
292
|
}
|
|
293
|
+
const HTML_ESCAPES = {
|
|
294
|
+
'&': '&',
|
|
295
|
+
'<': '<',
|
|
296
|
+
'>': '>',
|
|
297
|
+
'"': '"',
|
|
298
|
+
"'": ''',
|
|
299
|
+
};
|
|
300
|
+
function escapeHtml(text) {
|
|
301
|
+
return text.replace(/[&<>"']/g, (char) => HTML_ESCAPES[char]);
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* JSON safe to embed in an inline <script>: `<`, `>`, `&` and the line
|
|
305
|
+
* separators JavaScript treats as newlines become unicode escapes, so text
|
|
306
|
+
* from the spec (agent names, descriptions) cannot close the script tag.
|
|
307
|
+
*/
|
|
308
|
+
function scriptJson(value) {
|
|
309
|
+
return JSON.stringify(value)
|
|
310
|
+
.replace(/</g, '\\u003c')
|
|
311
|
+
.replace(/>/g, '\\u003e')
|
|
312
|
+
.replace(/&/g, '\\u0026')
|
|
313
|
+
.replace(/\u2028/g, '\\u2028')
|
|
314
|
+
.replace(/\u2029/g, '\\u2029');
|
|
315
|
+
}
|
|
286
316
|
export function generateSwaggerHTML(spec) {
|
|
287
317
|
return `<!DOCTYPE html>
|
|
288
318
|
<html lang="en">
|
|
289
319
|
<head>
|
|
290
320
|
<meta charset="UTF-8">
|
|
291
321
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
292
|
-
<title>${spec.info.title} - API Documentation</title>
|
|
322
|
+
<title>${escapeHtml(spec.info.title)} - API Documentation</title>
|
|
293
323
|
<link rel="stylesheet" href="https://unpkg.com/swagger-ui-dist@5.9.0/swagger-ui.css">
|
|
294
324
|
<style>
|
|
295
325
|
body { margin: 0; padding: 0; }
|
|
@@ -302,7 +332,7 @@ export function generateSwaggerHTML(spec) {
|
|
|
302
332
|
<script>
|
|
303
333
|
window.onload = () => {
|
|
304
334
|
SwaggerUIBundle({
|
|
305
|
-
spec: ${
|
|
335
|
+
spec: ${scriptJson(spec)},
|
|
306
336
|
dom_id: '#swagger-ui',
|
|
307
337
|
deepLinking: true,
|
|
308
338
|
presets: [
|
|
@@ -346,9 +376,9 @@ function generateSchemas() {
|
|
|
346
376
|
type: 'object',
|
|
347
377
|
required: ['input'],
|
|
348
378
|
properties: {
|
|
349
|
-
input: {
|
|
379
|
+
input: { ...RUN_INPUT_SCHEMA },
|
|
350
380
|
context: { type: 'object' },
|
|
351
|
-
threadId: { type: 'string' },
|
|
381
|
+
threadId: { type: 'string', minLength: 1 },
|
|
352
382
|
},
|
|
353
383
|
},
|
|
354
384
|
PendingApproval: {
|
|
@@ -379,19 +409,44 @@ function generateSchemas() {
|
|
|
379
409
|
defaultDecision: { $ref: '#/components/schemas/ToolApprovalDecision' },
|
|
380
410
|
},
|
|
381
411
|
},
|
|
412
|
+
RunUsage: {
|
|
413
|
+
type: 'object',
|
|
414
|
+
description: 'Token usage of a run, the same in the JSON response and in the finish event of the stream',
|
|
415
|
+
required: ['inputTokens', 'outputTokens', 'totalTokens'],
|
|
416
|
+
properties: {
|
|
417
|
+
inputTokens: { type: 'number' },
|
|
418
|
+
outputTokens: { type: 'number' },
|
|
419
|
+
totalTokens: { type: 'number' },
|
|
420
|
+
reasoningTokens: {
|
|
421
|
+
type: 'number',
|
|
422
|
+
description: 'Hidden reasoning tokens, already counted in outputTokens',
|
|
423
|
+
},
|
|
424
|
+
cachedInputTokens: {
|
|
425
|
+
type: 'number',
|
|
426
|
+
description: "Input tokens read from the provider's prompt cache",
|
|
427
|
+
},
|
|
428
|
+
cacheWriteTokens: {
|
|
429
|
+
type: 'number',
|
|
430
|
+
description: "Input tokens written to the provider's prompt cache",
|
|
431
|
+
},
|
|
432
|
+
},
|
|
433
|
+
},
|
|
434
|
+
StreamFinishEvent: {
|
|
435
|
+
type: 'object',
|
|
436
|
+
description: 'The last event of a stream, sent before `data: [DONE]`',
|
|
437
|
+
required: ['type', 'messageId'],
|
|
438
|
+
properties: {
|
|
439
|
+
type: { type: 'string', enum: ['finish'] },
|
|
440
|
+
messageId: { type: 'string' },
|
|
441
|
+
usage: { $ref: '#/components/schemas/RunUsage' },
|
|
442
|
+
},
|
|
443
|
+
},
|
|
382
444
|
AgentRunResponse: {
|
|
383
445
|
type: 'object',
|
|
384
446
|
properties: {
|
|
385
447
|
output: { type: 'string' },
|
|
386
448
|
threadId: { type: 'string' },
|
|
387
|
-
usage: {
|
|
388
|
-
type: 'object',
|
|
389
|
-
properties: {
|
|
390
|
-
inputTokens: { type: 'number' },
|
|
391
|
-
outputTokens: { type: 'number' },
|
|
392
|
-
totalTokens: { type: 'number' },
|
|
393
|
-
},
|
|
394
|
-
},
|
|
449
|
+
usage: { $ref: '#/components/schemas/RunUsage' },
|
|
395
450
|
toolCalls: { type: 'array' },
|
|
396
451
|
reasoning: { type: 'string' },
|
|
397
452
|
status: { type: 'string', enum: ['completed', 'paused'] },
|
|
@@ -488,9 +543,9 @@ function generateSchemas() {
|
|
|
488
543
|
type: 'object',
|
|
489
544
|
required: ['input'],
|
|
490
545
|
properties: {
|
|
491
|
-
input: {
|
|
546
|
+
input: { ...RUN_INPUT_SCHEMA },
|
|
492
547
|
context: { type: 'object' },
|
|
493
|
-
threadId: { type: 'string' },
|
|
548
|
+
threadId: { type: 'string', minLength: 1 },
|
|
494
549
|
timeout: { type: 'number' },
|
|
495
550
|
},
|
|
496
551
|
},
|
package/dist/openapi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../src/openapi.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token usage of a finished agent run, the same in the JSON run response and in the
|
|
3
|
+
* stream's `finish` event.
|
|
4
|
+
*
|
|
5
|
+
* The provider-specific counts are present only when the model reported them.
|
|
6
|
+
*/
|
|
1
7
|
export interface Usage {
|
|
2
8
|
inputTokens: number;
|
|
3
9
|
outputTokens: number;
|
|
4
10
|
totalTokens: number;
|
|
11
|
+
/** Hidden reasoning tokens, already counted in `outputTokens` */
|
|
12
|
+
reasoningTokens?: number;
|
|
13
|
+
/** Input tokens read from the provider's prompt cache, already counted in `inputTokens` */
|
|
14
|
+
cachedInputTokens?: number;
|
|
15
|
+
/** Input tokens written to the provider's prompt cache, already counted in `inputTokens` */
|
|
16
|
+
cacheWriteTokens?: number;
|
|
5
17
|
}
|
|
6
18
|
export type StreamEvent = StartEvent | TextStartEvent | TextDeltaEvent | TextEndEvent | ReasoningStartEvent | ReasoningDeltaEvent | ReasoningEndEvent | ToolCallStartEvent | ToolCallDeltaEvent | ToolCallEndEvent | ToolResultEvent | ApprovalRequiredEvent | ErrorEvent | FinishEvent | WorkflowEvent | SwarmEvent;
|
|
7
19
|
export interface StartEvent {
|
|
@@ -102,7 +114,11 @@ export declare function createToolCallEndEvent(id: string): ToolCallEndEvent;
|
|
|
102
114
|
export declare function createToolResultEvent(id: string, toolCallId: string, result: unknown): ToolResultEvent;
|
|
103
115
|
export declare function createApprovalRequiredEvent(threadId: string, approvals: readonly PendingApproval[]): ApprovalRequiredEvent;
|
|
104
116
|
export declare function createErrorEvent(message: string, code?: string): ErrorEvent;
|
|
105
|
-
|
|
117
|
+
/**
|
|
118
|
+
* The last event of a stream. `usage` goes through `toRunUsage`, so a run's `RunResult.usage`
|
|
119
|
+
* can be passed as is: the event carries exactly the counts of the JSON run response.
|
|
120
|
+
*/
|
|
121
|
+
export declare function createFinishEvent(messageId: string, usage?: Readonly<Usage>): FinishEvent;
|
|
106
122
|
export declare function createWorkflowEvent(event: string, data: unknown): WorkflowEvent;
|
|
107
123
|
export declare function createSwarmEvent(event: string, data: unknown): SwarmEvent;
|
|
108
124
|
//# sourceMappingURL=protocol.d.ts.map
|
package/dist/protocol.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { toRunUsage } from './usage.js';
|
|
1
2
|
export function createStartEvent(messageId) {
|
|
2
3
|
return { type: 'start', messageId };
|
|
3
4
|
}
|
|
@@ -37,8 +38,12 @@ export function createApprovalRequiredEvent(threadId, approvals) {
|
|
|
37
38
|
export function createErrorEvent(message, code) {
|
|
38
39
|
return { type: 'error', message, code };
|
|
39
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* The last event of a stream. `usage` goes through `toRunUsage`, so a run's `RunResult.usage`
|
|
43
|
+
* can be passed as is: the event carries exactly the counts of the JSON run response.
|
|
44
|
+
*/
|
|
40
45
|
export function createFinishEvent(messageId, usage) {
|
|
41
|
-
return { type: 'finish', messageId, usage };
|
|
46
|
+
return { type: 'finish', messageId, usage: usage && toRunUsage(usage) };
|
|
42
47
|
}
|
|
43
48
|
export function createWorkflowEvent(event, data) {
|
|
44
49
|
return { type: 'workflow', event, data };
|
package/dist/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA4IxC,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU,EAAE,KAAa;IAC5D,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EAAU;IAC3C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAU;IAClD,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAU,EAAE,KAAa;IACjE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,EAAU;IAChD,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,EAAU,EAAE,QAAgB;IACnE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,EAAU,EAAE,aAAqB;IACxE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EAAU;IAC/C,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,EAAU,EACV,UAAkB,EAClB,MAAe;IAEf,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAgB,EAChB,SAAqC;IAErC,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC,EAAE,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAa;IAC7D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAiB,EAAE,KAAuB;IAC1E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,IAAa;IAC9D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,IAAa;IAC3D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC"}
|
package/dist/usage.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Usage } from './protocol.js';
|
|
2
|
+
/**
|
|
3
|
+
* Token usage of a finished agent run, as every adapter answers it, in the JSON run
|
|
4
|
+
* response and in the stream's `finish` event alike.
|
|
5
|
+
*/
|
|
6
|
+
export type RunUsage = Usage;
|
|
7
|
+
/**
|
|
8
|
+
* The client-facing usage of a run: the token counts of core's `RunResult.usage`,
|
|
9
|
+
* without its cost and duration, keeping only the optional counts the model reported.
|
|
10
|
+
*/
|
|
11
|
+
export declare function toRunUsage(usage: Readonly<Usage>): RunUsage;
|
|
12
|
+
//# sourceMappingURL=usage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC;AAE7B;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,QAAQ,CAS3D"}
|
package/dist/usage.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The client-facing usage of a run: the token counts of core's `RunResult.usage`,
|
|
3
|
+
* without its cost and duration, keeping only the optional counts the model reported.
|
|
4
|
+
*/
|
|
5
|
+
export function toRunUsage(usage) {
|
|
6
|
+
return {
|
|
7
|
+
inputTokens: usage.inputTokens,
|
|
8
|
+
outputTokens: usage.outputTokens,
|
|
9
|
+
totalTokens: usage.totalTokens,
|
|
10
|
+
...(usage.reasoningTokens !== undefined && { reasoningTokens: usage.reasoningTokens }),
|
|
11
|
+
...(usage.cachedInputTokens !== undefined && { cachedInputTokens: usage.cachedInputTokens }),
|
|
12
|
+
...(usage.cacheWriteTokens !== undefined && { cacheWriteTokens: usage.cacheWriteTokens }),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=usage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;QACtF,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC5F,GAAG,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC;KAC1F,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/** The outcome of parsing a request body: the typed value, or why it was refused */
|
|
2
|
+
export type ParseResult<T> = {
|
|
3
|
+
ok: true;
|
|
4
|
+
value: T;
|
|
5
|
+
} | {
|
|
6
|
+
ok: false;
|
|
7
|
+
message: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* The JSON Schema `pattern` of a text field that must say something: at least one
|
|
11
|
+
* character that is not whitespace. Schema-driven adapters (Fastify, Tetsu) use it
|
|
12
|
+
* so they refuse exactly what {@link parseRunRequest} refuses.
|
|
13
|
+
*/
|
|
14
|
+
export declare const NON_BLANK_PATTERN = "\\S";
|
|
15
|
+
/** The JSON Schema of the `input` of an agent or swarm run */
|
|
16
|
+
export declare const RUN_INPUT_SCHEMA: {
|
|
17
|
+
readonly type: "string";
|
|
18
|
+
readonly minLength: 1;
|
|
19
|
+
readonly pattern: "\\S";
|
|
20
|
+
readonly description: "The message for the run; must contain more than whitespace";
|
|
21
|
+
};
|
|
22
|
+
/** True for a string with at least one character that is not whitespace */
|
|
23
|
+
export declare function isNonBlankString(value: unknown): value is string;
|
|
24
|
+
/** True for a plain JSON object (not `null`, not an array) */
|
|
25
|
+
export declare function isJsonObject(value: unknown): value is Record<string, unknown>;
|
|
26
|
+
/** The body of `POST /agents/:name/run` and `/agents/:name/stream` */
|
|
27
|
+
export interface RunRequestBody {
|
|
28
|
+
input: string;
|
|
29
|
+
context?: Record<string, unknown>;
|
|
30
|
+
threadId?: string;
|
|
31
|
+
}
|
|
32
|
+
/** The body of `POST /swarms/:name/run` and `/swarms/:name/stream` */
|
|
33
|
+
export interface SwarmRunRequestBody extends RunRequestBody {
|
|
34
|
+
timeout?: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Validates the body of an agent run or stream.
|
|
38
|
+
*
|
|
39
|
+
* `input` is required and must contain more than whitespace, so a request that
|
|
40
|
+
* says nothing is refused before the model is called (and billed). Every adapter
|
|
41
|
+
* answers a refusal with `400 { error: { message, code: 'INVALID_INPUT' } }`.
|
|
42
|
+
*/
|
|
43
|
+
export declare function parseRunRequest(body: unknown): ParseResult<RunRequestBody>;
|
|
44
|
+
/** Validates the body of a swarm run or stream: a run body plus an optional `timeout` in ms */
|
|
45
|
+
export declare function parseSwarmRunRequest(body: unknown): ParseResult<SwarmRunRequestBody>;
|
|
46
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAErF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAIX,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAEhE;AAED,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE7E;AAED,sEAAsE;AACtE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,sEAAsE;AACtE,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAAC,cAAc,CAAC,CAqB1E;AAED,+FAA+F;AAC/F,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAUpF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The JSON Schema `pattern` of a text field that must say something: at least one
|
|
3
|
+
* character that is not whitespace. Schema-driven adapters (Fastify, Tetsu) use it
|
|
4
|
+
* so they refuse exactly what {@link parseRunRequest} refuses.
|
|
5
|
+
*/
|
|
6
|
+
export const NON_BLANK_PATTERN = '\\S';
|
|
7
|
+
/** The JSON Schema of the `input` of an agent or swarm run */
|
|
8
|
+
export const RUN_INPUT_SCHEMA = {
|
|
9
|
+
type: 'string',
|
|
10
|
+
minLength: 1,
|
|
11
|
+
pattern: NON_BLANK_PATTERN,
|
|
12
|
+
description: 'The message for the run; must contain more than whitespace',
|
|
13
|
+
};
|
|
14
|
+
const NON_BLANK = new RegExp(NON_BLANK_PATTERN);
|
|
15
|
+
/** True for a string with at least one character that is not whitespace */
|
|
16
|
+
export function isNonBlankString(value) {
|
|
17
|
+
return typeof value === 'string' && NON_BLANK.test(value);
|
|
18
|
+
}
|
|
19
|
+
/** True for a plain JSON object (not `null`, not an array) */
|
|
20
|
+
export function isJsonObject(value) {
|
|
21
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
22
|
+
}
|
|
23
|
+
function fail(message) {
|
|
24
|
+
return { ok: false, message };
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Validates the body of an agent run or stream.
|
|
28
|
+
*
|
|
29
|
+
* `input` is required and must contain more than whitespace, so a request that
|
|
30
|
+
* says nothing is refused before the model is called (and billed). Every adapter
|
|
31
|
+
* answers a refusal with `400 { error: { message, code: 'INVALID_INPUT' } }`.
|
|
32
|
+
*/
|
|
33
|
+
export function parseRunRequest(body) {
|
|
34
|
+
if (!isJsonObject(body) || body.input === undefined || body.input === null) {
|
|
35
|
+
return fail('Missing required field: input');
|
|
36
|
+
}
|
|
37
|
+
if (typeof body.input !== 'string')
|
|
38
|
+
return fail('Field "input" must be a string');
|
|
39
|
+
if (!isNonBlankString(body.input))
|
|
40
|
+
return fail('Field "input" must not be blank');
|
|
41
|
+
if (body.context !== undefined && !isJsonObject(body.context)) {
|
|
42
|
+
return fail('Field "context" must be an object');
|
|
43
|
+
}
|
|
44
|
+
if (body.threadId !== undefined && !isNonBlankString(body.threadId)) {
|
|
45
|
+
return fail('Field "threadId" must be a non-empty string');
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
ok: true,
|
|
49
|
+
value: {
|
|
50
|
+
input: body.input,
|
|
51
|
+
...(body.context !== undefined && { context: body.context }),
|
|
52
|
+
...(body.threadId !== undefined && { threadId: body.threadId }),
|
|
53
|
+
},
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/** Validates the body of a swarm run or stream: a run body plus an optional `timeout` in ms */
|
|
57
|
+
export function parseSwarmRunRequest(body) {
|
|
58
|
+
const parsed = parseRunRequest(body);
|
|
59
|
+
if (!parsed.ok)
|
|
60
|
+
return parsed;
|
|
61
|
+
const timeout = isJsonObject(body) ? body.timeout : undefined;
|
|
62
|
+
if (timeout === undefined)
|
|
63
|
+
return parsed;
|
|
64
|
+
if (typeof timeout !== 'number' || !Number.isFinite(timeout) || timeout <= 0) {
|
|
65
|
+
return fail('Field "timeout" must be a positive number');
|
|
66
|
+
}
|
|
67
|
+
return { ok: true, value: { ...parsed.value, timeout } };
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cogitator-ai/server-shared",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Shared streaming protocol and utilities for Cogitator server adapters",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
"node": ">=22.12.0"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"typescript": "^6.0.3"
|
|
21
|
+
"typescript": "^6.0.3",
|
|
22
|
+
"vitest": "^5.0.3"
|
|
22
23
|
},
|
|
23
24
|
"repository": {
|
|
24
25
|
"type": "git",
|
|
@@ -36,7 +37,8 @@
|
|
|
36
37
|
"scripts": {
|
|
37
38
|
"build": "tsc && tsx ../../scripts/fix-esm-imports.ts .",
|
|
38
39
|
"dev": "tsc --watch",
|
|
39
|
-
"
|
|
40
|
+
"test": "vitest run",
|
|
41
|
+
"typecheck": "tsc --noEmit -p tsconfig.test.json",
|
|
40
42
|
"clean": "rm -rf dist"
|
|
41
43
|
}
|
|
42
44
|
}
|