@agentium/transport 3.1.2 → 4.0.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/README.md +227 -1
- package/dist/a2a/a2a-server.d.ts.map +1 -1
- package/dist/a2a/durable-v1-server.d.ts +17 -0
- package/dist/a2a/durable-v1-server.d.ts.map +1 -0
- package/dist/a2a/types.d.ts +2 -0
- package/dist/a2a/types.d.ts.map +1 -1
- package/dist/a2a/v1-server.d.ts +27 -0
- package/dist/a2a/v1-server.d.ts.map +1 -0
- package/dist/durable/protocol-host.d.ts +56 -0
- package/dist/durable/protocol-host.d.ts.map +1 -0
- package/dist/express/admin-router.d.ts.map +1 -1
- package/dist/express/durable-router.d.ts +18 -0
- package/dist/express/durable-router.d.ts.map +1 -0
- package/dist/express/file-upload.d.ts +3 -1
- package/dist/express/file-upload.d.ts.map +1 -1
- package/dist/express/rbac-middleware.d.ts +4 -0
- package/dist/express/rbac-middleware.d.ts.map +1 -1
- package/dist/express/router-factory.d.ts.map +1 -1
- package/dist/express/types.d.ts +35 -1
- package/dist/express/types.d.ts.map +1 -1
- package/dist/index.cjs +4347 -2808
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4319 -2764
- package/dist/mcp/durable-task-handler.d.ts +24 -0
- package/dist/mcp/durable-task-handler.d.ts.map +1 -0
- package/dist/socketio/gateway.d.ts +1 -1
- package/dist/socketio/gateway.d.ts.map +1 -1
- package/dist/socketio/types.d.ts +27 -2
- package/dist/socketio/types.d.ts.map +1 -1
- package/dist/socketio/voice-gateway.d.ts +5 -0
- package/dist/socketio/voice-gateway.d.ts.map +1 -1
- package/dist/sse-event-log.d.ts.map +1 -1
- package/dist/text-stream.d.ts +33 -0
- package/dist/text-stream.d.ts.map +1 -0
- package/package.json +21 -10
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { DurableReader } from "@agentium/core";
|
|
2
|
+
import { type DurableProtocolHost } from "../durable/protocol-host.js";
|
|
3
|
+
export interface DurableMCPTaskTool {
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
inputSchema: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
export interface DurableMCPTaskHandlerOptions extends DurableProtocolHost {
|
|
9
|
+
name: string;
|
|
10
|
+
audience: string;
|
|
11
|
+
authenticate(request: Request, audience: string): Promise<DurableReader | null>;
|
|
12
|
+
tools: readonly DurableMCPTaskTool[];
|
|
13
|
+
pollIntervalMs?: number;
|
|
14
|
+
}
|
|
15
|
+
export interface DurableMCPTaskHandler {
|
|
16
|
+
fetch(request: Request): Promise<Response>;
|
|
17
|
+
close(): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
/** Pinned modern HTTP/Tasks extension adapter. SDK handles discovery/schema framing;
|
|
20
|
+
* task extension methods are explicitly implemented here, not by the base SDK.
|
|
21
|
+
* The modern protocol negotiates capabilities in each validated request envelope.
|
|
22
|
+
*/
|
|
23
|
+
export declare function createDurableMCPTaskHandler(options: DurableMCPTaskHandlerOptions): Promise<DurableMCPTaskHandler>;
|
|
24
|
+
//# sourceMappingURL=durable-task-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"durable-task-handler.d.ts","sourceRoot":"","sources":["../../src/mcp/durable-task-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAqB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAIL,KAAK,mBAAmB,EAQzB,MAAM,6BAA6B,CAAC;AAIrC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AACD,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAChF,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AACD,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,qBAAqB,CAAC,CA4NhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/socketio/gateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/socketio/gateway.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAA0B,MAAM,YAAY,CAAC;AAEzE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAgYhE"}
|
package/dist/socketio/types.d.ts
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
import type { Agent, Registry, Servable, ServableAgent, Team, ToolDef, Toolkit } from "@agentium/core";
|
|
2
|
+
export interface GatewayResourceRequest {
|
|
3
|
+
identity: Readonly<import("../express/types.js").HostedIdentity>;
|
|
4
|
+
operation: "discover" | "execute" | "session:create" | "session:use" | "run:cancel";
|
|
5
|
+
resource: {
|
|
6
|
+
kind: "agent" | "team" | "workflow" | "tool" | "session" | "run";
|
|
7
|
+
id: string;
|
|
8
|
+
target?: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export type GatewaySecurityOptions = {
|
|
12
|
+
mode: "local";
|
|
13
|
+
} | {
|
|
14
|
+
mode: "authenticated";
|
|
15
|
+
/** Read only host-verified socket.data, never handshake payload claims. */
|
|
16
|
+
resolveIdentity: (verifiedState: unknown) => import("../express/types.js").HostedIdentity | null | Promise<import("../express/types.js").HostedIdentity | null>;
|
|
17
|
+
/** session:create must atomically bind the generated ID; deny unknown session:use. */
|
|
18
|
+
authorizeResource: (request: GatewayResourceRequest) => boolean | Promise<boolean>;
|
|
19
|
+
};
|
|
2
20
|
export interface GatewayOptions {
|
|
21
|
+
security: GatewaySecurityOptions;
|
|
22
|
+
/** Bounds apply per socket; outgoing frames use the Engine.IO drain contract. */
|
|
23
|
+
textStream?: import("../text-stream.js").TextStreamLimits;
|
|
24
|
+
maxConcurrentRuns?: number;
|
|
25
|
+
/** Maximum collected final Agent text bytes. Default 256 KiB. */
|
|
26
|
+
maxOutputBytes?: number;
|
|
3
27
|
/**
|
|
4
28
|
* Use a Registry for live auto-discovery. The gateway resolves agents/teams
|
|
5
29
|
* at event time — any instance created after the gateway starts is automatically
|
|
@@ -9,7 +33,7 @@ export interface GatewayOptions {
|
|
|
9
33
|
* Pass `false` to disable registry-based lookup (use explicit maps only).
|
|
10
34
|
*
|
|
11
35
|
* @example
|
|
12
|
-
* createAgentGateway({ io });
|
|
36
|
+
* createAgentGateway({ io, security: { mode: "local" } });
|
|
13
37
|
* new Agent({ name: "bot", model: openai("gpt-4o") }); // immediately reachable
|
|
14
38
|
*/
|
|
15
39
|
registry?: Registry | false;
|
|
@@ -22,7 +46,8 @@ export interface GatewayOptions {
|
|
|
22
46
|
teams?: Record<string, Team>;
|
|
23
47
|
io: any;
|
|
24
48
|
namespace?: string;
|
|
25
|
-
|
|
49
|
+
/** Must call next; thrown/rejected errors deny access. Returned promises settle before admission. */
|
|
50
|
+
authMiddleware?: (socket: any, next: (err?: Error) => void) => void | Promise<void>;
|
|
26
51
|
/** Max requests per minute per socket. Default: 60 */
|
|
27
52
|
maxRequestsPerMinute?: number;
|
|
28
53
|
/** Named tool library exposed via tools.list event. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/socketio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEvG,MAAM,WAAW,cAAc;IAC7B;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,aAAa,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7B,EAAE,EAAE,GAAG,CAAC;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/socketio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEvG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,QAAQ,CAAC,OAAO,qBAAqB,EAAE,cAAc,CAAC,CAAC;IACjE,SAAS,EAAE,UAAU,GAAG,SAAS,GAAG,gBAAgB,GAAG,aAAa,GAAG,YAAY,CAAC;IACpF,QAAQ,EAAE;QAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7G;AACD,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,2EAA2E;IAC3E,eAAe,EAAE,CACf,aAAa,EAAE,OAAO,KAEpB,OAAO,qBAAqB,EAAE,cAAc,GAC5C,IAAI,GACJ,OAAO,CAAC,OAAO,qBAAqB,EAAE,cAAc,GAAG,IAAI,CAAC,CAAC;IACjE,sFAAsF;IACtF,iBAAiB,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACpF,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,sBAAsB,CAAC;IACjC,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,mBAAmB,EAAE,gBAAgB,CAAC;IAC1D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iEAAiE;IACjE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,aAAa,CAAC,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7B,EAAE,EAAE,GAAG,CAAC;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qGAAqG;IACrG,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,sDAAsD;IACtD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,yFAAyF;IACzF,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB"}
|
|
@@ -3,7 +3,12 @@ export interface VoiceGatewayOptions {
|
|
|
3
3
|
agents: Record<string, VoiceAgent>;
|
|
4
4
|
io: any;
|
|
5
5
|
namespace?: string;
|
|
6
|
+
/** Establish trusted identity in socket.data.auth {userId,tenantId,sessionId}. */
|
|
6
7
|
authMiddleware?: (socket: any, next: (err?: Error) => void) => void;
|
|
8
|
+
maxAudioFrameBytes?: number;
|
|
9
|
+
maxPendingAudioBytes?: number;
|
|
10
|
+
playbackAckTimeoutMs?: number;
|
|
7
11
|
}
|
|
12
|
+
/** Bounded per-connection audio delivery; each output frame must be acknowledged by the client. */
|
|
8
13
|
export declare function createVoiceGateway(opts: VoiceGatewayOptions): void;
|
|
9
14
|
//# sourceMappingURL=voice-gateway.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-gateway.d.ts","sourceRoot":"","sources":["../../src/socketio/voice-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"voice-gateway.d.ts","sourceRoot":"","sources":["../../src/socketio/voice-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,gBAAgB,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnC,EAAE,EAAE,GAAG,CAAC;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,mGAAmG;AACnG,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CA0NlE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sse-event-log.d.ts","sourceRoot":"","sources":["../src/sse-event-log.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC;IAC5E,8DAA8D;IAC9D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAClD,4BAA4B;IAC5B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,yCAAyC;IACzC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,GAAE,sBAA2B;IAK/C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,QAAQ;IAW3E,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE;IAKjD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAI9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS7B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAO1B;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"sse-event-log.d.ts","sourceRoot":"","sources":["../src/sse-event-log.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,OAAO,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,QAAQ,CAAC;IAC5E,8DAA8D;IAC9D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAClD,4BAA4B;IAC5B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,yCAAyC;IACzC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAS;gBAEV,MAAM,GAAE,sBAA2B;IAK/C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,YAAY,CAAC,GAAG,QAAQ;IAW3E,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE;IAKjD,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAI9B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS7B,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAO1B;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,CAUnD;AAED,2EAA2E;AAC3E,eAAO,MAAM,eAAe,kBAAyB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ServerResponse } from "node:http";
|
|
2
|
+
export interface TextStreamLimits {
|
|
3
|
+
/** Maximum encoded frame and queued response bytes. Default 256 KiB each. */
|
|
4
|
+
maxFrameBytes?: number;
|
|
5
|
+
maxBufferedBytes?: number;
|
|
6
|
+
/** Maximum wait for a writable drain. Default 10 seconds. */
|
|
7
|
+
writeTimeoutMs?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function textStreamLimits(options?: TextStreamLimits): {
|
|
10
|
+
maxFrameBytes: number;
|
|
11
|
+
maxBufferedBytes: number;
|
|
12
|
+
writeTimeoutMs: number;
|
|
13
|
+
};
|
|
14
|
+
/** One owner for the response lifetime. Cancellation remains cooperative. */
|
|
15
|
+
export declare function responseLifetime(res: ServerResponse): {
|
|
16
|
+
controller: AbortController;
|
|
17
|
+
dispose(): void;
|
|
18
|
+
};
|
|
19
|
+
export declare class BoundedSSEWriter {
|
|
20
|
+
private readonly res;
|
|
21
|
+
private readonly signal;
|
|
22
|
+
private readonly limits;
|
|
23
|
+
constructor(res: ServerResponse, signal: AbortSignal, options?: TextStreamLimits);
|
|
24
|
+
write(frame: string): Promise<void>;
|
|
25
|
+
}
|
|
26
|
+
/** Initiate return on abort even for iterators whose next() settles only after return(). */
|
|
27
|
+
export declare function ownIterator(iterator: AsyncIterator<unknown>, signal: AbortSignal): {
|
|
28
|
+
close: () => Promise<unknown>;
|
|
29
|
+
dispose: () => void;
|
|
30
|
+
};
|
|
31
|
+
/** Pull only after the previous frame drained; settle iterator cleanup before terminal output. */
|
|
32
|
+
export declare function serveTextStream(res: ServerResponse, source: (signal: AbortSignal) => AsyncIterable<unknown>, options?: TextStreamLimits): Promise<void>;
|
|
33
|
+
//# sourceMappingURL=text-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-stream.d.ts","sourceRoot":"","sources":["../src/text-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB;;;;EAU9D;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc;;;EAanD;AAED,qBAAa,gBAAgB;IAGzB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAEL,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EACpC,OAAO,CAAC,EAAE,gBAAgB;IAItB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAmC1C;AAED,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW;;;EAchF;AAED,kGAAkG;AAClG,wBAAsB,eAAe,CACnC,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,aAAa,CAAC,OAAO,CAAC,EACvD,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,IAAI,CAAC,CAwCf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentium/transport",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "HTTP and WebSocket transport layer for Agentium agents",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -35,22 +35,24 @@
|
|
|
35
35
|
"dist"
|
|
36
36
|
],
|
|
37
37
|
"scripts": {
|
|
38
|
-
"build": "
|
|
39
|
-
"dev": "
|
|
38
|
+
"build": "tsdown --config ../../tsdown.config.ts && tsc -p tsconfig.build.json --emitDeclarationOnly --declaration --pretty false",
|
|
39
|
+
"dev": "tsdown --config ../../tsdown.config.ts --watch",
|
|
40
40
|
"prepublishOnly": "npm run build"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^25.3.1",
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"typescript": "^5.6.0",
|
|
45
|
+
"tsdown": "0.23.0"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@agentium/core": "^
|
|
48
|
+
"@agentium/core": "^4.0.0",
|
|
49
49
|
"@types/express": "^4.0.0 || ^5.0.0",
|
|
50
|
-
"express": "^4.
|
|
51
|
-
"multer": "
|
|
52
|
-
"socket.io": "^4.
|
|
53
|
-
"swagger-ui-express": "^5.0.0"
|
|
50
|
+
"express": "^4.21.2 || ^5.2.1",
|
|
51
|
+
"multer": "^2.3.0",
|
|
52
|
+
"socket.io": "^4.8.4",
|
|
53
|
+
"swagger-ui-express": "^5.0.0",
|
|
54
|
+
"@a2a-js/sdk": "^1.3.0",
|
|
55
|
+
"@modelcontextprotocol/server": "^2.3.0"
|
|
54
56
|
},
|
|
55
57
|
"peerDependenciesMeta": {
|
|
56
58
|
"express": {
|
|
@@ -67,10 +69,19 @@
|
|
|
67
69
|
},
|
|
68
70
|
"swagger-ui-express": {
|
|
69
71
|
"optional": true
|
|
72
|
+
},
|
|
73
|
+
"@a2a-js/sdk": {
|
|
74
|
+
"optional": true
|
|
75
|
+
},
|
|
76
|
+
"@modelcontextprotocol/server": {
|
|
77
|
+
"optional": true
|
|
70
78
|
}
|
|
71
79
|
},
|
|
72
80
|
"homepage": "https://agentium.in",
|
|
73
81
|
"bugs": {
|
|
74
82
|
"url": "https://github.com/agentiumOS/agentium/issues"
|
|
83
|
+
},
|
|
84
|
+
"engines": {
|
|
85
|
+
"node": "^22.18.0 || ^24.11.0"
|
|
75
86
|
}
|
|
76
87
|
}
|