@copilotkitnext/runtime 0.0.22-alpha.6 → 0.0.22-alpha.8
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/{chunk-OB3L66QK.mjs → chunk-ZYGIZ6EK.mjs} +12 -106
- package/dist/chunk-ZYGIZ6EK.mjs.map +1 -0
- package/dist/express.js +45 -162
- package/dist/express.js.map +1 -1
- package/dist/express.mjs +17 -38
- package/dist/express.mjs.map +1 -1
- package/dist/index.js +53 -169
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +15 -43
- package/dist/index.mjs.map +1 -1
- package/package.json +11 -7
- package/dist/chunk-OB3L66QK.mjs.map +0 -1
package/dist/express.js
CHANGED
|
@@ -1,47 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
1
|
+
'use strict';
|
|
29
2
|
|
|
30
|
-
|
|
31
|
-
var
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
3
|
+
var express = require('express');
|
|
4
|
+
var cors = require('cors');
|
|
5
|
+
var client = require('@ag-ui/client');
|
|
6
|
+
var encoder = require('@ag-ui/encoder');
|
|
7
|
+
require('rxjs');
|
|
8
|
+
var shared = require('@copilotkitnext/shared');
|
|
9
|
+
var stream = require('stream');
|
|
10
|
+
var util = require('util');
|
|
37
11
|
|
|
38
|
-
|
|
39
|
-
var import_express = __toESM(require("express"));
|
|
40
|
-
var import_cors = __toESM(require("cors"));
|
|
12
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
41
13
|
|
|
42
|
-
|
|
43
|
-
var
|
|
44
|
-
|
|
14
|
+
var express__default = /*#__PURE__*/_interopDefault(express);
|
|
15
|
+
var cors__default = /*#__PURE__*/_interopDefault(cors);
|
|
16
|
+
|
|
17
|
+
// src/endpoints/express.ts
|
|
45
18
|
async function handleRunAgent({
|
|
46
19
|
runtime,
|
|
47
20
|
request,
|
|
@@ -81,13 +54,13 @@ async function handleRunAgent({
|
|
|
81
54
|
}
|
|
82
55
|
const stream = new TransformStream();
|
|
83
56
|
const writer = stream.writable.getWriter();
|
|
84
|
-
const encoder = new
|
|
57
|
+
const encoder$1 = new encoder.EventEncoder();
|
|
85
58
|
let streamClosed = false;
|
|
86
59
|
(async () => {
|
|
87
60
|
let input;
|
|
88
61
|
try {
|
|
89
62
|
const requestBody = await request.json();
|
|
90
|
-
input =
|
|
63
|
+
input = client.RunAgentInputSchema.parse(requestBody);
|
|
91
64
|
} catch {
|
|
92
65
|
return new Response(
|
|
93
66
|
JSON.stringify({
|
|
@@ -107,7 +80,7 @@ async function handleRunAgent({
|
|
|
107
80
|
next: async (event) => {
|
|
108
81
|
if (!request.signal.aborted && !streamClosed) {
|
|
109
82
|
try {
|
|
110
|
-
await writer.write(encoder.encode(event));
|
|
83
|
+
await writer.write(encoder$1.encode(event));
|
|
111
84
|
} catch (error) {
|
|
112
85
|
if (error instanceof Error && error.name === "AbortError") {
|
|
113
86
|
streamClosed = true;
|
|
@@ -185,10 +158,6 @@ async function handleRunAgent({
|
|
|
185
158
|
);
|
|
186
159
|
}
|
|
187
160
|
}
|
|
188
|
-
|
|
189
|
-
// src/handlers/handle-connect.ts
|
|
190
|
-
var import_client2 = require("@ag-ui/client");
|
|
191
|
-
var import_encoder2 = require("@ag-ui/encoder");
|
|
192
161
|
async function handleConnectAgent({
|
|
193
162
|
runtime,
|
|
194
163
|
request,
|
|
@@ -210,13 +179,13 @@ async function handleConnectAgent({
|
|
|
210
179
|
}
|
|
211
180
|
const stream = new TransformStream();
|
|
212
181
|
const writer = stream.writable.getWriter();
|
|
213
|
-
const encoder = new
|
|
182
|
+
const encoder$1 = new encoder.EventEncoder();
|
|
214
183
|
let streamClosed = false;
|
|
215
184
|
(async () => {
|
|
216
185
|
let input;
|
|
217
186
|
try {
|
|
218
187
|
const requestBody = await request.json();
|
|
219
|
-
input =
|
|
188
|
+
input = client.RunAgentInputSchema.parse(requestBody);
|
|
220
189
|
} catch {
|
|
221
190
|
return new Response(
|
|
222
191
|
JSON.stringify({
|
|
@@ -231,7 +200,7 @@ async function handleConnectAgent({
|
|
|
231
200
|
next: async (event) => {
|
|
232
201
|
if (!request.signal.aborted && !streamClosed) {
|
|
233
202
|
try {
|
|
234
|
-
await writer.write(encoder.encode(event));
|
|
203
|
+
await writer.write(encoder$1.encode(event));
|
|
235
204
|
} catch (error) {
|
|
236
205
|
if (error instanceof Error && error.name === "AbortError") {
|
|
237
206
|
streamClosed = true;
|
|
@@ -309,9 +278,6 @@ async function handleConnectAgent({
|
|
|
309
278
|
);
|
|
310
279
|
}
|
|
311
280
|
}
|
|
312
|
-
|
|
313
|
-
// src/handlers/handle-stop.ts
|
|
314
|
-
var import_client3 = require("@ag-ui/client");
|
|
315
281
|
async function handleStopAgent({
|
|
316
282
|
runtime,
|
|
317
283
|
request,
|
|
@@ -349,7 +315,7 @@ async function handleStopAgent({
|
|
|
349
315
|
JSON.stringify({
|
|
350
316
|
stopped: true,
|
|
351
317
|
interrupt: {
|
|
352
|
-
type:
|
|
318
|
+
type: client.EventType.RUN_ERROR,
|
|
353
319
|
message: "Run stopped by user",
|
|
354
320
|
code: "STOPPED"
|
|
355
321
|
}
|
|
@@ -376,73 +342,7 @@ async function handleStopAgent({
|
|
|
376
342
|
|
|
377
343
|
// package.json
|
|
378
344
|
var package_default = {
|
|
379
|
-
|
|
380
|
-
version: "0.0.22-alpha.6",
|
|
381
|
-
description: "Server-side runtime package for CopilotKit2",
|
|
382
|
-
main: "dist/index.js",
|
|
383
|
-
types: "dist/index.d.ts",
|
|
384
|
-
exports: {
|
|
385
|
-
".": {
|
|
386
|
-
types: "./dist/index.d.ts",
|
|
387
|
-
import: "./dist/index.mjs",
|
|
388
|
-
require: "./dist/index.js"
|
|
389
|
-
},
|
|
390
|
-
"./express": {
|
|
391
|
-
types: "./dist/express.d.ts",
|
|
392
|
-
import: "./dist/express.mjs",
|
|
393
|
-
require: "./dist/express.js"
|
|
394
|
-
}
|
|
395
|
-
},
|
|
396
|
-
publishConfig: {
|
|
397
|
-
access: "public"
|
|
398
|
-
},
|
|
399
|
-
scripts: {
|
|
400
|
-
build: "tsup",
|
|
401
|
-
prepublishOnly: "pnpm run build",
|
|
402
|
-
dev: "tsup --watch",
|
|
403
|
-
lint: "eslint . --max-warnings 0",
|
|
404
|
-
"check-types": "tsc --noEmit",
|
|
405
|
-
clean: "rm -rf dist",
|
|
406
|
-
test: "vitest run",
|
|
407
|
-
"test:watch": "vitest",
|
|
408
|
-
"test:coverage": "vitest run --coverage"
|
|
409
|
-
},
|
|
410
|
-
devDependencies: {
|
|
411
|
-
"@copilotkitnext/eslint-config": "workspace:*",
|
|
412
|
-
"@copilotkitnext/typescript-config": "workspace:*",
|
|
413
|
-
"@types/cors": "^2.8.17",
|
|
414
|
-
"@types/express": "^4.17.21",
|
|
415
|
-
"@types/node": "^22.15.3",
|
|
416
|
-
eslint: "^9.30.0",
|
|
417
|
-
openai: "^5.9.0",
|
|
418
|
-
supertest: "^7.1.1",
|
|
419
|
-
tsup: "^8.5.0",
|
|
420
|
-
typescript: "5.8.2",
|
|
421
|
-
vitest: "^3.0.5"
|
|
422
|
-
},
|
|
423
|
-
dependencies: {
|
|
424
|
-
"@ag-ui/client": "0.0.41-alpha.0",
|
|
425
|
-
"@ag-ui/core": "0.0.41-alpha.0",
|
|
426
|
-
"@ag-ui/encoder": "0.0.41-alpha.0",
|
|
427
|
-
"@copilotkitnext/shared": "workspace:*",
|
|
428
|
-
cors: "^2.8.5",
|
|
429
|
-
express: "^4.21.2",
|
|
430
|
-
hono: "^4.6.13",
|
|
431
|
-
rxjs: "7.8.1"
|
|
432
|
-
},
|
|
433
|
-
peerDependencies: {
|
|
434
|
-
openai: "^5.9.0"
|
|
435
|
-
},
|
|
436
|
-
peerDependenciesMeta: {},
|
|
437
|
-
engines: {
|
|
438
|
-
node: ">=18"
|
|
439
|
-
}
|
|
440
|
-
};
|
|
441
|
-
|
|
442
|
-
// src/runner/in-memory.ts
|
|
443
|
-
var import_rxjs = require("rxjs");
|
|
444
|
-
var import_client4 = require("@ag-ui/client");
|
|
445
|
-
var import_shared = require("@copilotkitnext/shared");
|
|
345
|
+
version: "0.0.22-alpha.8"};
|
|
446
346
|
|
|
447
347
|
// src/runtime.ts
|
|
448
348
|
var VERSION = package_default.version;
|
|
@@ -584,12 +484,6 @@ async function handleTranscribe({
|
|
|
584
484
|
);
|
|
585
485
|
}
|
|
586
486
|
}
|
|
587
|
-
|
|
588
|
-
// src/endpoints/express.ts
|
|
589
|
-
var import_shared3 = require("@copilotkitnext/shared");
|
|
590
|
-
|
|
591
|
-
// src/middleware.ts
|
|
592
|
-
var import_shared2 = require("@copilotkitnext/shared");
|
|
593
487
|
async function callBeforeRequestMiddleware({
|
|
594
488
|
runtime,
|
|
595
489
|
request,
|
|
@@ -600,7 +494,7 @@ async function callBeforeRequestMiddleware({
|
|
|
600
494
|
if (typeof mw === "function") {
|
|
601
495
|
return mw({ runtime, request, path });
|
|
602
496
|
}
|
|
603
|
-
|
|
497
|
+
shared.logger.warn({ mw }, "Unsupported beforeRequestMiddleware value \u2013 skipped");
|
|
604
498
|
return;
|
|
605
499
|
}
|
|
606
500
|
async function callAfterRequestMiddleware({
|
|
@@ -613,14 +507,9 @@ async function callAfterRequestMiddleware({
|
|
|
613
507
|
if (typeof mw === "function") {
|
|
614
508
|
return mw({ runtime, response, path });
|
|
615
509
|
}
|
|
616
|
-
|
|
510
|
+
shared.logger.warn({ mw }, "Unsupported afterRequestMiddleware value \u2013 skipped");
|
|
617
511
|
}
|
|
618
|
-
|
|
619
|
-
// src/endpoints/express-utils.ts
|
|
620
|
-
var import_node_stream = require("stream");
|
|
621
|
-
var import_node_stream2 = require("stream");
|
|
622
|
-
var import_node_util = require("util");
|
|
623
|
-
var streamPipeline = (0, import_node_util.promisify)(import_node_stream2.pipeline);
|
|
512
|
+
var streamPipeline = util.promisify(stream.pipeline);
|
|
624
513
|
var METHODS_WITHOUT_BODY = /* @__PURE__ */ new Set(["GET", "HEAD"]);
|
|
625
514
|
function createFetchRequestFromExpress(req) {
|
|
626
515
|
const method = req.method?.toUpperCase() ?? "GET";
|
|
@@ -640,7 +529,7 @@ function createFetchRequestFromExpress(req) {
|
|
|
640
529
|
headers
|
|
641
530
|
};
|
|
642
531
|
if (!METHODS_WITHOUT_BODY.has(method)) {
|
|
643
|
-
init.body =
|
|
532
|
+
init.body = stream.Readable.toWeb(req);
|
|
644
533
|
init.duplex = "half";
|
|
645
534
|
}
|
|
646
535
|
const controller = new AbortController();
|
|
@@ -660,7 +549,7 @@ async function sendFetchResponse(res, response) {
|
|
|
660
549
|
res.end();
|
|
661
550
|
return;
|
|
662
551
|
}
|
|
663
|
-
const nodeStream =
|
|
552
|
+
const nodeStream = stream.Readable.fromWeb(response.body);
|
|
664
553
|
try {
|
|
665
554
|
await streamPipeline(nodeStream, res);
|
|
666
555
|
} catch (error) {
|
|
@@ -676,9 +565,9 @@ function buildOrigin(req) {
|
|
|
676
565
|
|
|
677
566
|
// src/endpoints/express.ts
|
|
678
567
|
function createCopilotEndpointExpress({ runtime, basePath }) {
|
|
679
|
-
const router =
|
|
568
|
+
const router = express__default.default.Router();
|
|
680
569
|
const normalizedBase = normalizeBasePath(basePath);
|
|
681
|
-
router.use(
|
|
570
|
+
router.use(cors__default.default({
|
|
682
571
|
origin: "*",
|
|
683
572
|
methods: ["GET", "HEAD", "PUT", "POST", "DELETE", "PATCH", "OPTIONS"],
|
|
684
573
|
allowedHeaders: ["*"]
|
|
@@ -717,7 +606,7 @@ function createRouteHandler(runtime, factory) {
|
|
|
717
606
|
request = maybeModifiedRequest;
|
|
718
607
|
}
|
|
719
608
|
} catch (error) {
|
|
720
|
-
|
|
609
|
+
shared.logger.error({ err: error, url: request.url, path }, "Error running before request middleware");
|
|
721
610
|
if (error instanceof Response) {
|
|
722
611
|
try {
|
|
723
612
|
await sendFetchResponse(res, error);
|
|
@@ -733,7 +622,7 @@ function createRouteHandler(runtime, factory) {
|
|
|
733
622
|
const response = await factory({ request, req });
|
|
734
623
|
await sendFetchResponse(res, response);
|
|
735
624
|
callAfterRequestMiddleware({ runtime, response, path }).catch((error) => {
|
|
736
|
-
|
|
625
|
+
shared.logger.error({ err: error, url: req.originalUrl ?? req.url, path }, "Error running after request middleware");
|
|
737
626
|
});
|
|
738
627
|
} catch (error) {
|
|
739
628
|
if (error instanceof Response) {
|
|
@@ -744,11 +633,11 @@ function createRouteHandler(runtime, factory) {
|
|
|
744
633
|
return;
|
|
745
634
|
}
|
|
746
635
|
callAfterRequestMiddleware({ runtime, response: error, path }).catch((mwError) => {
|
|
747
|
-
|
|
636
|
+
shared.logger.error({ err: mwError, url: req.originalUrl ?? req.url, path }, "Error running after request middleware");
|
|
748
637
|
});
|
|
749
638
|
return;
|
|
750
639
|
}
|
|
751
|
-
|
|
640
|
+
shared.logger.error({ err: error, url: request.url, path }, "Error running request handler");
|
|
752
641
|
next(error);
|
|
753
642
|
}
|
|
754
643
|
};
|
|
@@ -778,11 +667,6 @@ function joinPath(basePath, suffix) {
|
|
|
778
667
|
return `${basePath}${suffix.startsWith("/") ? suffix : `/${suffix}`}`;
|
|
779
668
|
}
|
|
780
669
|
|
|
781
|
-
// src/endpoints/express-single.ts
|
|
782
|
-
var import_express2 = __toESM(require("express"));
|
|
783
|
-
var import_cors2 = __toESM(require("cors"));
|
|
784
|
-
var import_shared4 = require("@copilotkitnext/shared");
|
|
785
|
-
|
|
786
670
|
// src/endpoints/single-route-helpers.ts
|
|
787
671
|
var METHOD_NAMES = [
|
|
788
672
|
"agent/run",
|
|
@@ -872,9 +756,9 @@ function createCopilotEndpointSingleRouteExpress({
|
|
|
872
756
|
runtime,
|
|
873
757
|
basePath
|
|
874
758
|
}) {
|
|
875
|
-
const router =
|
|
759
|
+
const router = express__default.default.Router();
|
|
876
760
|
const routePath = normalizeSingleRoutePath(basePath);
|
|
877
|
-
router.use(
|
|
761
|
+
router.use(cors__default.default({
|
|
878
762
|
origin: "*",
|
|
879
763
|
methods: ["GET", "HEAD", "PUT", "POST", "DELETE", "PATCH", "OPTIONS"],
|
|
880
764
|
allowedHeaders: ["*"]
|
|
@@ -895,7 +779,7 @@ function createSingleRouteHandler(runtime) {
|
|
|
895
779
|
request = maybeModifiedRequest;
|
|
896
780
|
}
|
|
897
781
|
} catch (error) {
|
|
898
|
-
|
|
782
|
+
shared.logger.error({ err: error, url: request.url, path }, "Error running before request middleware");
|
|
899
783
|
if (error instanceof Response) {
|
|
900
784
|
try {
|
|
901
785
|
await sendFetchResponse(res, error);
|
|
@@ -912,7 +796,7 @@ function createSingleRouteHandler(runtime) {
|
|
|
912
796
|
methodCall = await parseMethodCall(request);
|
|
913
797
|
} catch (error) {
|
|
914
798
|
if (error instanceof Response) {
|
|
915
|
-
|
|
799
|
+
shared.logger.warn({ url: request.url }, "Invalid single-route payload");
|
|
916
800
|
try {
|
|
917
801
|
await sendFetchResponse(res, error);
|
|
918
802
|
} catch (streamError) {
|
|
@@ -920,7 +804,7 @@ function createSingleRouteHandler(runtime) {
|
|
|
920
804
|
}
|
|
921
805
|
return;
|
|
922
806
|
}
|
|
923
|
-
|
|
807
|
+
shared.logger.warn({ err: error, url: request.url }, "Invalid single-route payload");
|
|
924
808
|
res.status(400).json({
|
|
925
809
|
error: "invalid_request",
|
|
926
810
|
message: error instanceof Error ? error.message : "Invalid request payload"
|
|
@@ -963,7 +847,7 @@ function createSingleRouteHandler(runtime) {
|
|
|
963
847
|
}
|
|
964
848
|
await sendFetchResponse(res, response);
|
|
965
849
|
callAfterRequestMiddleware({ runtime, response, path }).catch((error) => {
|
|
966
|
-
|
|
850
|
+
shared.logger.error({ err: error, url: req.originalUrl ?? req.url, path }, "Error running after request middleware");
|
|
967
851
|
});
|
|
968
852
|
} catch (error) {
|
|
969
853
|
if (error instanceof Response) {
|
|
@@ -974,11 +858,11 @@ function createSingleRouteHandler(runtime) {
|
|
|
974
858
|
return;
|
|
975
859
|
}
|
|
976
860
|
callAfterRequestMiddleware({ runtime, response: error, path }).catch((mwError) => {
|
|
977
|
-
|
|
861
|
+
shared.logger.error({ err: mwError, url: req.originalUrl ?? req.url, path }, "Error running after request middleware");
|
|
978
862
|
});
|
|
979
863
|
return;
|
|
980
864
|
}
|
|
981
|
-
|
|
865
|
+
shared.logger.error({ err: error, url: request.url, path }, "Error running single-route handler");
|
|
982
866
|
next(error);
|
|
983
867
|
}
|
|
984
868
|
};
|
|
@@ -995,9 +879,8 @@ function normalizeSingleRoutePath(path) {
|
|
|
995
879
|
}
|
|
996
880
|
return path;
|
|
997
881
|
}
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
});
|
|
882
|
+
|
|
883
|
+
exports.createCopilotEndpointExpress = createCopilotEndpointExpress;
|
|
884
|
+
exports.createCopilotEndpointSingleRouteExpress = createCopilotEndpointSingleRouteExpress;
|
|
885
|
+
//# sourceMappingURL=express.js.map
|
|
1003
886
|
//# sourceMappingURL=express.js.map
|