@cogitator-ai/express 0.13.6 → 0.14.1
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 +27 -0
- package/dist/middleware/cors.d.ts.map +1 -1
- package/dist/middleware/cors.js +2 -1
- package/dist/middleware/cors.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +95 -5
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/utils.d.ts +5 -0
- package/dist/routes/utils.d.ts.map +1 -1
- package/dist/routes/utils.js +10 -0
- package/dist/routes/utils.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +5 -1
- package/dist/server.js.map +1 -1
- package/dist/streaming/express-stream-writer.d.ts +5 -2
- package/dist/streaming/express-stream-writer.d.ts.map +1 -1
- package/dist/streaming/express-stream-writer.js +8 -5
- package/dist/streaming/express-stream-writer.js.map +1 -1
- package/dist/types.d.ts +23 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -292,6 +292,32 @@ Events: `start`, `text-start`/`text-delta`/`text-end`, `tool-call-start`/`tool-c
|
|
|
292
292
|
|
|
293
293
|
When the agent sets `reasoning: { summary: true }` and the provider returns a reasoning summary, it streams as its own part: `reasoning-start`, `reasoning-delta` (`{ id, delta }`), `reasoning-end`. A reasoning part is always closed before text or a tool call starts, so reasoning and text parts never interleave.
|
|
294
294
|
|
|
295
|
+
## Resumable streams
|
|
296
|
+
|
|
297
|
+
With `resumableStreams` on, a client that loses the stream of `/agents/:name/stream` or `/agents/:name/resume/stream` (a flaky network, a tab that went to sleep) gets back what it missed, and the run goes on while it is away:
|
|
298
|
+
|
|
299
|
+
```typescript
|
|
300
|
+
const server = new CogitatorServer({
|
|
301
|
+
app,
|
|
302
|
+
cogitator,
|
|
303
|
+
agents: { chat: chatAgent },
|
|
304
|
+
config: {
|
|
305
|
+
resumableStreams: true,
|
|
306
|
+
},
|
|
307
|
+
});
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
- Every event carries an SSE `id`, `<streamId>:<seq>` with `seq` from 1 up. Heartbeat comments carry none.
|
|
311
|
+
- A client that disconnects no longer stops the run. Its events keep going into the store.
|
|
312
|
+
- The same route with `Last-Event-ID: <id>` reconnects instead of starting a run, and the body is not read: the answer replays the events after that id with their ids, then follows the run to `finish` (and `data: [DONE]`) or `error`. Several clients may follow one stream. `?lastEventId=<id>` works too, for clients that cannot set headers, but it puts the id into URLs and access logs, so prefer the header.
|
|
313
|
+
- `DELETE /agents/:name/stream/:streamId` cancels the run (`204`): its stream ends with an `error` event `STREAM_CANCELLED`. The stream id is the part of an event id before the last `:`.
|
|
314
|
+
- A stream is bound to the caller who started it: every field of what `auth` returned (user id, roles, permissions, metadata such as a tenant), so callers without a user id are told apart too. Give `owner: (auth) => key` to bind it to fewer fields, such as the user id alone when the identity carries a token expiry. Anyone else, an unknown or expired stream and an event id the stream never sent get `404 STREAM_NOT_FOUND` before any SSE header, an id that is not `<streamId>:<seq>` gets `400 INVALID_INPUT`. `authorizeThread` is asked about the stream's thread on every reconnect and cancel (`403 THREAD_FORBIDDEN`).
|
|
315
|
+
- A reconnect after events that are no longer kept (more than `maxEvents` since) gets one `error` event with `STREAM_RESUME_GAP`: fetch the thread (`GET /threads/:id`) to catch up. A client that reads slowly holds at most `maxEvents` events and catches up from the store.
|
|
316
|
+
- A run nobody follows for `detachedTimeoutMs` (5 minutes by default) is stopped, so a client that never comes back does not run up cost, and so is every run when `until` aborts (pass the signal your server stops on, and abort it before `server.close()`, which waits for the streams still open). Such a stream ends with an `error` event `STREAM_ABORTED`.
|
|
317
|
+
- A stream whose run goes on is never evicted: when `maxStreams` streams all go on, a new one is refused with `503 STREAM_LIMIT_REACHED`.
|
|
318
|
+
|
|
319
|
+
`true` keeps the events in the memory of the process: 1000 events of each stream, a finished stream for 5 minutes, 1000 streams at once (`maxEvents`, `retentionMs`, `maxStreams`). Behind a load balancer with several processes, pass a `store` they share (`StreamReplayStore` from `@cogitator-ai/server-shared`, backed by Redis or similar with pub/sub), so a reconnect or a cancel that lands on another process reaches the stream and its run. Off by default: no ids, and a client that disconnects stops the run.
|
|
320
|
+
|
|
295
321
|
## WebSocket Support
|
|
296
322
|
|
|
297
323
|
Enable real-time bidirectional communication (requires the optional `ws` package):
|
|
@@ -462,6 +488,7 @@ interface CogitatorServerConfig {
|
|
|
462
488
|
) => boolean | Promise<boolean>;
|
|
463
489
|
deps?: (req: Request) => unknown | Promise<unknown>; // HTTP runs, WebSocket runs use websocket.deps
|
|
464
490
|
workflowCheckpoints?: CheckpointStore; // workflow checkpoints and /resume, none by default
|
|
491
|
+
resumableStreams?: boolean | ResumableStreamOptions; // see Resumable streams, off by default
|
|
465
492
|
};
|
|
466
493
|
}
|
|
467
494
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../../src/middleware/cors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"cors.d.ts","sourceRoot":"","sources":["../../src/middleware/cors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAkB9C,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,IAU7C,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,UAmCxD"}
|
package/dist/middleware/cors.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { CORS_ALLOWED_HEADERS } from '@cogitator-ai/server-shared';
|
|
1
2
|
function isOriginAllowed(origin, allowed) {
|
|
2
3
|
if (typeof allowed === 'string') {
|
|
3
4
|
return allowed === '*' || allowed === origin;
|
|
@@ -11,7 +12,7 @@ function isOriginAllowed(origin, allowed) {
|
|
|
11
12
|
return false;
|
|
12
13
|
}
|
|
13
14
|
export function createCorsMiddleware(config) {
|
|
14
|
-
const { origin, credentials = origin !== '*', methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS'], allowedHeaders = [
|
|
15
|
+
const { origin, credentials = origin !== '*', methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS'], allowedHeaders = [...CORS_ALLOWED_HEADERS], exposedHeaders = ['X-RateLimit-Limit', 'X-RateLimit-Remaining', 'X-RateLimit-Reset'], maxAge = 86400, } = config;
|
|
15
16
|
return (req, res, next) => {
|
|
16
17
|
const requestOrigin = req.headers.origin;
|
|
17
18
|
let allowed = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cors.js","sourceRoot":"","sources":["../../src/middleware/cors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cors.js","sourceRoot":"","sources":["../../src/middleware/cors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,SAAS,eAAe,CAAC,MAAc,EAAE,OAA6B;IACpE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,MAAM,CAAC;IAC/C,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAkB;IACrD,MAAM,EACJ,MAAM,EACN,WAAW,GAAG,MAAM,KAAK,GAAG,EAC5B,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAC9D,cAAc,GAAG,CAAC,GAAG,oBAAoB,CAAC,EAC1C,cAAc,GAAG,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,mBAAmB,CAAC,EACpF,MAAM,GAAG,KAAK,GACf,GAAG,MAAM,CAAC;IAEX,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QACzD,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;QACzC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;YAClD,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAChC,IAAI,aAAa,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,aAAa,CAAC,CAAC;gBAC5D,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,OAAO,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,SAAS,CAAC,+BAA+B,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,OAAO,EAAE,CAAC;gBACZ,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClE,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACzE,GAAG,CAAC,SAAS,CAAC,wBAAwB,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,KAAK,EAAE,YAAY,EAAuC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,KAAK,EAAE,YAAY,EAAuC,MAAM,aAAa,CAAC;AAuBrF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAwS3D"}
|
package/dist/routes/agents.js
CHANGED
|
@@ -1,12 +1,78 @@
|
|
|
1
1
|
import { Router } from 'express';
|
|
2
|
-
import { AgentStreamSession, parseResumeRequest, parseRunRequest, runRequestRunOptions, toAgentRunResponse, } from '@cogitator-ai/server-shared';
|
|
2
|
+
import { AgentStreamSession, authorizeThreadAccess, lastEventIdOf, parseResumeRequest, parseRunRequest, runRequestRunOptions, toAgentRunResponse, } from '@cogitator-ai/server-shared';
|
|
3
3
|
import { ExpressStreamWriter, setupSSEHeaders } from '../streaming/index.js';
|
|
4
|
-
import { admitAgentRun, handleRouteError, onClientDisconnect, resolveError, sendError, } from './utils.js';
|
|
4
|
+
import { admitAgentRun, handleRouteError, onClientDisconnect, resolveError, sendError, sendFailure, } from './utils.js';
|
|
5
5
|
export function createAgentRoutes(ctx) {
|
|
6
6
|
const router = Router();
|
|
7
7
|
const runRequestOptions = { acceptContext: ctx.config.acceptContext };
|
|
8
8
|
const findAgent = (name) => Object.hasOwn(ctx.agents, name) ? ctx.agents[name] : undefined;
|
|
9
|
-
|
|
9
|
+
/** Writes the frames of a resumable stream to one client, until it ends or the client leaves */
|
|
10
|
+
const followStream = async (res, stream) => {
|
|
11
|
+
setupSSEHeaders(res);
|
|
12
|
+
const writer = new ExpressStreamWriter(res, { heartbeatMs: ctx.config.sseHeartbeatMs });
|
|
13
|
+
const client = new AbortController();
|
|
14
|
+
onClientDisconnect(res, () => {
|
|
15
|
+
client.abort();
|
|
16
|
+
writer.close();
|
|
17
|
+
});
|
|
18
|
+
try {
|
|
19
|
+
for await (const frame of stream.frames(client.signal))
|
|
20
|
+
writer.send(frame.event, frame.id);
|
|
21
|
+
}
|
|
22
|
+
finally {
|
|
23
|
+
writer.close();
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
/** The caller of a reconnect or cancel, with `authorizeThread` for the stream's thread */
|
|
27
|
+
const callerOf = (req) => {
|
|
28
|
+
const auth = req.cogitator?.auth;
|
|
29
|
+
return {
|
|
30
|
+
auth,
|
|
31
|
+
authorizeThread: (threadId) => authorizeThreadAccess(ctx.config.authorizeThread, auth, threadId),
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Answers a request that reconnects to a resumable stream with `Last-Event-ID` or
|
|
36
|
+
* `?lastEventId=`, and says whether it was one
|
|
37
|
+
*/
|
|
38
|
+
const reconnect = async (req, res) => {
|
|
39
|
+
const streams = ctx.resumableStreams;
|
|
40
|
+
const lastEventId = streams && lastEventIdOf(req.get('last-event-id'), req.query.lastEventId);
|
|
41
|
+
if (!streams || lastEventId === undefined)
|
|
42
|
+
return false;
|
|
43
|
+
try {
|
|
44
|
+
const attached = await streams.reconnect(lastEventId, callerOf(req));
|
|
45
|
+
if (attached.ok)
|
|
46
|
+
await followStream(res, attached.stream);
|
|
47
|
+
else
|
|
48
|
+
sendFailure(res, attached.error);
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
handleRouteError(res, error, 'Agent stream reconnect error');
|
|
52
|
+
}
|
|
53
|
+
return true;
|
|
54
|
+
};
|
|
55
|
+
const streamAgent = async (req, res, threadId, errorLabel, execute) => {
|
|
56
|
+
const streams = ctx.resumableStreams;
|
|
57
|
+
if (streams) {
|
|
58
|
+
try {
|
|
59
|
+
const opened = await streams.startAgentRun({
|
|
60
|
+
auth: req.cogitator?.auth,
|
|
61
|
+
threadId,
|
|
62
|
+
execute,
|
|
63
|
+
describeError: (error) => resolveError(error, errorLabel),
|
|
64
|
+
});
|
|
65
|
+
if (!opened.ok) {
|
|
66
|
+
sendFailure(res, opened.error);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
await followStream(res, opened.stream);
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
handleRouteError(res, error, errorLabel);
|
|
73
|
+
}
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
10
76
|
setupSSEHeaders(res);
|
|
11
77
|
const writer = new ExpressStreamWriter(res, { heartbeatMs: ctx.config.sseHeartbeatMs });
|
|
12
78
|
const session = new AgentStreamSession((event) => writer.send(event), { threadId });
|
|
@@ -29,6 +95,26 @@ export function createAgentRoutes(ctx) {
|
|
|
29
95
|
writer.close();
|
|
30
96
|
}
|
|
31
97
|
};
|
|
98
|
+
if (ctx.resumableStreams) {
|
|
99
|
+
const streams = ctx.resumableStreams;
|
|
100
|
+
router.delete('/agents/:name/stream/:streamId', async (req, res) => {
|
|
101
|
+
const { name, streamId } = req.params;
|
|
102
|
+
if (!findAgent(name)) {
|
|
103
|
+
sendError(res, 404, `Agent '${name}' not found`, 'NOT_FOUND');
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
try {
|
|
107
|
+
const cancelled = await streams.cancel(streamId, callerOf(req));
|
|
108
|
+
if (cancelled.ok)
|
|
109
|
+
res.status(204).end();
|
|
110
|
+
else
|
|
111
|
+
sendFailure(res, cancelled.error);
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
handleRouteError(res, error, 'Agent stream cancel error');
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
}
|
|
32
118
|
router.get('/agents', (_req, res) => {
|
|
33
119
|
const agentList = Object.entries(ctx.agents).map(([name, agent]) => ({
|
|
34
120
|
name,
|
|
@@ -116,6 +202,8 @@ export function createAgentRoutes(ctx) {
|
|
|
116
202
|
sendError(res, 404, `Agent '${name}' not found`, 'NOT_FOUND');
|
|
117
203
|
return;
|
|
118
204
|
}
|
|
205
|
+
if (await reconnect(req, res))
|
|
206
|
+
return;
|
|
119
207
|
const parsed = parseRunRequest(req.body, runRequestOptions);
|
|
120
208
|
if (!parsed.ok) {
|
|
121
209
|
sendError(res, 400, parsed.message, 'INVALID_INPUT');
|
|
@@ -125,7 +213,7 @@ export function createAgentRoutes(ctx) {
|
|
|
125
213
|
const admitted = await admitAgentRun(ctx, req, res, body.threadId, 'Agent stream error');
|
|
126
214
|
if (!admitted)
|
|
127
215
|
return;
|
|
128
|
-
await streamAgent(res, body.threadId, 'Agent stream error', (session, signal) => ctx.cogitator.run(agent, {
|
|
216
|
+
await streamAgent(req, res, body.threadId, 'Agent stream error', (session, signal) => ctx.cogitator.run(agent, {
|
|
129
217
|
input: body.input,
|
|
130
218
|
context: body.context,
|
|
131
219
|
threadId: session.threadId,
|
|
@@ -144,6 +232,8 @@ export function createAgentRoutes(ctx) {
|
|
|
144
232
|
sendError(res, 404, `Agent '${name}' not found`, 'NOT_FOUND');
|
|
145
233
|
return;
|
|
146
234
|
}
|
|
235
|
+
if (await reconnect(req, res))
|
|
236
|
+
return;
|
|
147
237
|
const parsed = parseResumeRequest(req.body);
|
|
148
238
|
if (!parsed.ok) {
|
|
149
239
|
sendError(res, 400, parsed.message, 'INVALID_INPUT');
|
|
@@ -153,7 +243,7 @@ export function createAgentRoutes(ctx) {
|
|
|
153
243
|
const admitted = await admitAgentRun(ctx, req, res, threadId, 'Agent resume stream error');
|
|
154
244
|
if (!admitted)
|
|
155
245
|
return;
|
|
156
|
-
await streamAgent(res, threadId, 'Agent resume stream error', (session, signal) => ctx.cogitator.resume(agent, threadId, {
|
|
246
|
+
await streamAgent(req, res, threadId, 'Agent resume stream error', (session, signal) => ctx.cogitator.resume(agent, threadId, {
|
|
157
247
|
userId: req.cogitator?.auth?.userId,
|
|
158
248
|
decisions,
|
|
159
249
|
defaultDecision,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAIjC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/utils.d.ts
CHANGED
|
@@ -12,6 +12,11 @@ export declare function isModuleNotFound(error: unknown): boolean;
|
|
|
12
12
|
*/
|
|
13
13
|
export declare function resolveError(error: unknown, label: string): HttpErrorDescription;
|
|
14
14
|
export declare function handleRouteError(res: Response, error: unknown, label: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* Calls `handler` once the client goes away before the answer ended, also when it already went
|
|
17
|
+
* away: a request can lose its client while a route awaits (the store creating a stream, the
|
|
18
|
+
* `deps` hook), and a `close` that fired then would never reach a handler added later
|
|
19
|
+
*/
|
|
15
20
|
export declare function onClientDisconnect(res: Response, handler: () => void): void;
|
|
16
21
|
/**
|
|
17
22
|
* Whether a request may go on to the thread it names: answers the refusal of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/routes/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAElE,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAG5E;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAE5F;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE9E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOxD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAKhF;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAGnF;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/routes/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAElE,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAG5E;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAE5F;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE9E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAOxD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAKhF;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAGnF;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAQ3E;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,EAC3D,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,EACxB,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,CAAC,CAalB;AAED,6FAA6F;AAC7F,wBAAsB,WAAW,CAAC,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,EAC3D,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GACd,OAAO,CAAC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAE7B;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,EAC7D,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,EACxB,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAAC,CAQzC;AAED,YAAY,EAAE,WAAW,EAAE,CAAC"}
|
package/dist/routes/utils.js
CHANGED
|
@@ -33,7 +33,17 @@ export function handleRouteError(res, error, label) {
|
|
|
33
33
|
return;
|
|
34
34
|
sendFailure(res, resolveError(error, label));
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Calls `handler` once the client goes away before the answer ended, also when it already went
|
|
38
|
+
* away: a request can lose its client while a route awaits (the store creating a stream, the
|
|
39
|
+
* `deps` hook), and a `close` that fired then would never reach a handler added later
|
|
40
|
+
*/
|
|
36
41
|
export function onClientDisconnect(res, handler) {
|
|
42
|
+
if (res.closed) {
|
|
43
|
+
if (!res.writableEnded)
|
|
44
|
+
handler();
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
37
47
|
res.on('close', () => {
|
|
38
48
|
if (!res.writableEnded)
|
|
39
49
|
handler();
|
package/dist/routes/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/routes/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/routes/utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,YAAY,GAGb,MAAM,6BAA6B,CAAC;AAGrC,sEAAsE;AACtE,MAAM,UAAU,WAAW,CAAC,GAAa,EAAE,KAA2B;IACpE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAAE,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5F,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAa,EAAE,MAAc,EAAE,OAAe,EAAE,IAAY;IACpF,WAAW,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,MAAM,IAAI,KAAK;QACf,CAAC,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,KAAa;IACxD,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,qBAAqB,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC;IACpD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAa,EAAE,KAAc,EAAE,KAAa;IAC3E,IAAI,GAAG,CAAC,WAAW;QAAE,OAAO;IAC5B,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAa,EAAE,OAAmB;IACnE,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,GAAG,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QAClC,OAAO;IACT,CAAC;IACD,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACnB,IAAI,CAAC,GAAG,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAiB,EACjB,GAAwB,EACxB,GAAa,EACb,QAA4B,EAC5B,KAAa;IAEb,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,qBAAqB,CACzC,GAAG,CAAC,MAAM,CAAC,eAAe,EAC1B,GAAG,CAAC,SAAS,EAAE,IAAI,EACnB,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAiB,EACjB,GAAe;IAEf,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAiB,EACjB,GAAwB,EACxB,GAAa,EACb,QAA4B,EAC5B,KAAa;IAEb,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3E,IAAI,CAAC;QACH,OAAO,MAAM,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
package/dist/server.d.ts
CHANGED
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AACjD,OAAO,KAAK,EAEV,qBAAqB,EAGtB,MAAM,YAAY,CAAC;AA2BpB,qBAAa,eAAe;IAC1B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,MAAM,CAA+C;IAC7D,OAAO,CAAC,SAAS,CAAkD;IACnE,OAAO,CAAC,MAAM,CAA+C;IAC7D,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,gBAAgB,CAA4C;IACpE,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,EAAE,qBAAqB;IAyBpC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoD3B,OAAO,CAAC,YAAY;IAgBpB;;;;;OAKG;IACG,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,eAAe,CAAC;IAchF,IAAI,aAAa,IAAI,OAAO,CAE3B;CACF"}
|
package/dist/server.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Router, json } from 'express';
|
|
2
2
|
import { getLogger } from '@cogitator-ai/core';
|
|
3
|
-
import { DEFAULT_THREAD_MESSAGE_ROLES, checkRunLimits, resolveSseHeartbeatMs, } from '@cogitator-ai/server-shared';
|
|
3
|
+
import { DEFAULT_THREAD_MESSAGE_ROLES, ResumableStreams, checkRunLimits, resolveSseHeartbeatMs, } from '@cogitator-ai/server-shared';
|
|
4
4
|
import { createAnonymousGuard, createAuthMiddleware, createRateLimitMiddleware, createCorsMiddleware, createJsonBodyGuard, errorHandler, notFoundHandler, } from './middleware/index.js';
|
|
5
5
|
import { createHealthRoutes, createAgentRoutes, createThreadRoutes, createToolRoutes, createWorkflowRoutes, createSwarmRoutes, } from './routes/index.js';
|
|
6
6
|
import { generateOpenAPISpec, serveSwaggerUI } from './swagger/index.js';
|
|
@@ -17,6 +17,7 @@ export class CogitatorServer {
|
|
|
17
17
|
workflows;
|
|
18
18
|
swarms;
|
|
19
19
|
config;
|
|
20
|
+
resumableStreams;
|
|
20
21
|
routeContext = null;
|
|
21
22
|
initialized = false;
|
|
22
23
|
constructor(options) {
|
|
@@ -40,6 +41,7 @@ export class CogitatorServer {
|
|
|
40
41
|
limits: checkRunLimits(cfg.limits),
|
|
41
42
|
anonymous: cfg.anonymous ?? 'allow',
|
|
42
43
|
};
|
|
44
|
+
this.resumableStreams = ResumableStreams.from(cfg.resumableStreams);
|
|
43
45
|
}
|
|
44
46
|
async init() {
|
|
45
47
|
if (this.initialized) {
|
|
@@ -62,6 +64,7 @@ export class CogitatorServer {
|
|
|
62
64
|
workflows: this.workflows,
|
|
63
65
|
swarms: this.swarms,
|
|
64
66
|
config: this.config,
|
|
67
|
+
resumableStreams: this.resumableStreams,
|
|
65
68
|
};
|
|
66
69
|
this.routeContext = ctx;
|
|
67
70
|
router.use(createHealthRoutes(ctx));
|
|
@@ -86,6 +89,7 @@ export class CogitatorServer {
|
|
|
86
89
|
servers: this.config.swagger?.servers ?? [{ url: this.config.basePath }],
|
|
87
90
|
auth: this.config.swagger?.auth ?? Boolean(this.config.auth),
|
|
88
91
|
limits: this.config.limits,
|
|
92
|
+
resumableStreams: this.resumableStreams !== undefined,
|
|
89
93
|
});
|
|
90
94
|
router.get('/openapi.json', (_req, res) => {
|
|
91
95
|
res.json(spec);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,8 +16,11 @@ export declare class ExpressStreamWriter {
|
|
|
16
16
|
private heartbeat;
|
|
17
17
|
private get writable();
|
|
18
18
|
private write;
|
|
19
|
-
/**
|
|
20
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Sends one protocol event, with its `id` on a resumable stream. `finish`, the last one, is
|
|
21
|
+
* followed by `data: [DONE]`
|
|
22
|
+
*/
|
|
23
|
+
send(event: StreamEvent, id?: string): void;
|
|
21
24
|
start(messageId: string, threadId?: string): void;
|
|
22
25
|
textStart(id: string): void;
|
|
23
26
|
textDelta(id: string, delta: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"express-stream-writer.d.ts","sourceRoot":"","sources":["../../src/streaming/express-stream-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOxC,OAAO,EAkBL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,KAAK,EACX,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAE/B,GAAG,EAAE,QAAQ,EAAE,OAAO,GAAE,0BAA+B;IAQnE,OAAO,CAAC,SAAS;IAMjB,OAAO,KAAK,QAAQ,GAOnB;IAED,OAAO,CAAC,KAAK;IAKb
|
|
1
|
+
{"version":3,"file":"express-stream-writer.d.ts","sourceRoot":"","sources":["../../src/streaming/express-stream-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOxC,OAAO,EAkBL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,KAAK,EACX,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAE/B,GAAG,EAAE,QAAQ,EAAE,OAAO,GAAE,0BAA+B;IAQnE,OAAO,CAAC,SAAS;IAMjB,OAAO,KAAK,QAAQ,GAOnB;IAED,OAAO,CAAC,KAAK;IAKb;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAM3C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI3B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIzB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIhC,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK/C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI9B,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIjD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IAItD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAI7B,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAIjE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,eAAe,EAAE,GAAG,IAAI;IAI/E,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,gBAAgB,EAAE,GAAG,IAAI;IAIlF,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAIjD,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAI9C,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAI9C,KAAK,IAAI,IAAI;IAUb,IAAI,QAAQ,IAAI,OAAO,CAEtB;CACF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,CAMnD"}
|
|
@@ -24,16 +24,19 @@ export class ExpressStreamWriter {
|
|
|
24
24
|
}
|
|
25
25
|
return true;
|
|
26
26
|
}
|
|
27
|
-
write(data) {
|
|
27
|
+
write(data, id) {
|
|
28
28
|
if (!this.writable)
|
|
29
29
|
return;
|
|
30
|
-
this.res.write(encodeSSE(data));
|
|
30
|
+
this.res.write(encodeSSE(data, id));
|
|
31
31
|
}
|
|
32
|
-
/**
|
|
33
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Sends one protocol event, with its `id` on a resumable stream. `finish`, the last one, is
|
|
34
|
+
* followed by `data: [DONE]`
|
|
35
|
+
*/
|
|
36
|
+
send(event, id) {
|
|
34
37
|
if (!this.writable)
|
|
35
38
|
return;
|
|
36
|
-
this.write(event);
|
|
39
|
+
this.write(event, id);
|
|
37
40
|
if (event.type === 'finish')
|
|
38
41
|
this.res.write(encodeDone());
|
|
39
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"express-stream-writer.js","sourceRoot":"","sources":["../../src/streaming/express-stream-writer.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,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,4BAA4B,EAC5B,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GAKjB,MAAM,eAAe,CAAC;AAWvB,MAAM,OAAO,mBAAmB;IACtB,GAAG,CAAW;IACd,MAAM,GAAG,KAAK,CAAC;IACN,aAAa,CAAa;IAE3C,YAAY,GAAa,EAAE,UAAsC,EAAE;QACjE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,cAAc,CACjC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,EACtB,qBAAqB,CAAC,OAAO,CAAC,WAAW,CAAC,CAC3C,CAAC;IACJ,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAY,QAAQ;QAClB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC9B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,IAAa;
|
|
1
|
+
{"version":3,"file":"express-stream-writer.js","sourceRoot":"","sources":["../../src/streaming/express-stream-writer.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IncomingMessage } from 'http';
|
|
2
2
|
import type { Request, Response, NextFunction, Router } from 'express';
|
|
3
3
|
import type { Cogitator, Agent } from '@cogitator-ai/core';
|
|
4
|
-
import type { AgentRunResponse, AnonymousPolicy, AuthorizeThread, ContextPolicy, PendingApproval, PendingInterrupt, RunLimits, SwaggerConfig, ThreadMessageRole, WorkflowResumeRequestBody, WorkflowRunRequestBody } from '@cogitator-ai/server-shared';
|
|
4
|
+
import type { AgentRunResponse, AnonymousPolicy, AuthorizeThread, ContextPolicy, PendingApproval, PendingInterrupt, ResumableStreamOptions, ResumableStreams, RunLimits, SwaggerConfig, ThreadMessageRole, WorkflowResumeRequestBody, WorkflowRunRequestBody } from '@cogitator-ai/server-shared';
|
|
5
5
|
import type { CheckpointStore, Message, ToolCall, ToolResult, RunResult, Workflow, WorkflowResult, WorkflowState, SwarmConfig, SwarmResult, SwarmRunOptions, StreamingWorkflowEvent, SwarmEvent, SwarmMessage, ToolApprovalDecision, MultitaskStrategy } from '@cogitator-ai/types';
|
|
6
6
|
export type { Message, ToolCall, ToolResult, RunResult, Workflow, WorkflowResult, WorkflowState, SwarmConfig, SwarmResult, SwarmRunOptions, StreamingWorkflowEvent, SwarmEvent, SwarmMessage, ToolApprovalDecision, PendingApproval, PendingInterrupt, AgentRunResponse, };
|
|
7
7
|
export interface AuthContext {
|
|
@@ -37,6 +37,12 @@ export interface CorsConfig {
|
|
|
37
37
|
origin: string | string[] | ((origin: string | undefined) => boolean);
|
|
38
38
|
credentials?: boolean;
|
|
39
39
|
methods?: string[];
|
|
40
|
+
/**
|
|
41
|
+
* Request headers a preflight allows. Default: `CORS_ALLOWED_HEADERS` of
|
|
42
|
+
* `@cogitator-ai/server-shared` (`Content-Type`, `Authorization`, `X-Request-ID`,
|
|
43
|
+
* `Last-Event-ID`). A list of your own replaces it: keep `Last-Event-ID` in it for clients on
|
|
44
|
+
* another origin that reconnect to resumable streams
|
|
45
|
+
*/
|
|
40
46
|
allowedHeaders?: string[];
|
|
41
47
|
exposedHeaders?: string[];
|
|
42
48
|
maxAge?: number;
|
|
@@ -118,6 +124,19 @@ export interface CogitatorServerConfig {
|
|
|
118
124
|
* answers 404 `CHECKPOINT_NOT_FOUND`.
|
|
119
125
|
*/
|
|
120
126
|
workflowCheckpoints?: CheckpointStore;
|
|
127
|
+
/**
|
|
128
|
+
* Keeps the streams of `/agents/:name/stream` and `/agents/:name/resume/stream` so a
|
|
129
|
+
* client that loses one can resume it. Every event then carries an SSE `id`, and a client
|
|
130
|
+
* that disconnects no longer stops the run: it goes on, and the same route with
|
|
131
|
+
* `Last-Event-ID` (or `?lastEventId=`) replays what the client missed and follows the run to
|
|
132
|
+
* its end, and `DELETE /agents/:name/stream/:streamId` cancels the run. Only the caller who
|
|
133
|
+
* started a stream (every field of what `auth` returned, see `owner`) may reconnect to it or
|
|
134
|
+
* cancel its run, after `authorizeThread` on its thread. A run nobody follows for
|
|
135
|
+
* `detachedTimeoutMs` (5 minutes) is stopped, and every run when `until` aborts. `true` keeps
|
|
136
|
+
* the events in memory with the default limits. Default: off, a client that disconnects
|
|
137
|
+
* stops the run.
|
|
138
|
+
*/
|
|
139
|
+
resumableStreams?: boolean | ResumableStreamOptions<AuthContext>;
|
|
121
140
|
};
|
|
122
141
|
}
|
|
123
142
|
export interface AgentListResponse {
|
|
@@ -238,7 +257,7 @@ export interface ErrorResponse {
|
|
|
238
257
|
export type ExpressMiddleware = (req: CogitatorRequest, res: Response, next: NextFunction) => void | Promise<void>;
|
|
239
258
|
type ServerOptions = NonNullable<CogitatorServerConfig['config']>;
|
|
240
259
|
/** The options that stay unset when the server is not given them */
|
|
241
|
-
type UnsetServerOptions = 'limits' | 'authorizeThread' | 'deps' | 'workflowCheckpoints';
|
|
260
|
+
type UnsetServerOptions = 'limits' | 'authorizeThread' | 'deps' | 'workflowCheckpoints' | 'resumableStreams';
|
|
242
261
|
/** The server's options with their defaults applied */
|
|
243
262
|
export type ResolvedServerConfig = Required<Omit<ServerOptions, UnsetServerOptions>> & Pick<ServerOptions, UnsetServerOptions>;
|
|
244
263
|
export interface RouteContext {
|
|
@@ -247,6 +266,8 @@ export interface RouteContext {
|
|
|
247
266
|
workflows: Record<string, Workflow<WorkflowState>>;
|
|
248
267
|
swarms: Record<string, SwarmConfig>;
|
|
249
268
|
config: ResolvedServerConfig;
|
|
269
|
+
/** The streams kept for clients to resume, when `resumableStreams` is on */
|
|
270
|
+
resumableStreams?: ResumableStreams<AuthContext>;
|
|
250
271
|
}
|
|
251
272
|
export interface WebSocketMessage {
|
|
252
273
|
type: 'subscribe' | 'unsubscribe' | 'run' | 'resume' | 'stop' | 'ping';
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EACV,eAAe,EACf,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,cAAc,EACd,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,cAAc,EACd,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,UAAU,EACV,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACjB,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAC;IACzE,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,WAAW,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,MAAM,YAAY,GAAG,CACzB,GAAG,EAAE,OAAO,KACT,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,WAAW,GAAG,SAAS,CAAC;AAEhE,4EAA4E;AAC5E,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEzF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,MAAM,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC;IACtE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,qBAAqB,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,IAAI,CAAC,EAAE,YAAY,CAAC;QACpB,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,OAAO,CAAC,EAAE,aAAa,CAAC;QACxB,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B;;;;WAIG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;;WAIG;QACH,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B;;;WAGG;QACH,kBAAkB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;QAClD;;;;WAIG;QACH,MAAM,CAAC,EAAE,SAAS,CAAC;QACnB;;;WAGG;QACH,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B;;;;;WAKG;QACH,eAAe,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;QAC/C;;;;WAIG;QACH,IAAI,CAAC,EAAE,YAAY,CAAC;QACpB;;;;;;WAMG;QACH,mBAAmB,CAAC,EAAE,eAAe,CAAC;QACtC;;;;;;;;;;;WAWG;QACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;KAClE,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yGAAyG;IACzG,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,KAAK,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;CACJ;AAED,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,aAAa,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,qBAAqB,GAAG,yBAAyB,CAAC;AAE9D,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,GAAG,UAAU,GAAG,OAAO,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CACb,MAAM,EACN;QACE,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CACF,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,KACf,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,KAAK,aAAa,GAAG,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAElE,oEAAoE;AACpE,KAAK,kBAAkB,GACrB,QAAQ,GAAG,iBAAiB,GAAG,MAAM,GAAG,qBAAqB,GAAG,kBAAkB,CAAC;AAErF,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,GAClF,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;AAE1C,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpC,MAAM,EAAE,oBAAoB,CAAC;IAC7B,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IACvE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,YAAY,GAAG,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IACjE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cogitator-ai/express",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.1",
|
|
4
4
|
"description": "Express.js server adapter for Cogitator AI runtime",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -20,21 +20,21 @@
|
|
|
20
20
|
"node": ">=22.12.0"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@cogitator-ai/core": "0.
|
|
24
|
-
"@cogitator-ai/types": "0.
|
|
25
|
-
"@cogitator-ai/server-shared": "0.
|
|
23
|
+
"@cogitator-ai/core": "0.71.0",
|
|
24
|
+
"@cogitator-ai/types": "0.82.0",
|
|
25
|
+
"@cogitator-ai/server-shared": "0.14.1"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
28
|
"express": ">=4.18.0"
|
|
29
29
|
},
|
|
30
30
|
"optionalDependencies": {
|
|
31
|
-
"@cogitator-ai/workflows": "0.14.
|
|
32
|
-
"@cogitator-ai/swarms": "0.15.
|
|
31
|
+
"@cogitator-ai/workflows": "0.14.23",
|
|
32
|
+
"@cogitator-ai/swarms": "0.15.4",
|
|
33
33
|
"ws": "^8.22.0"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@cogitator-ai/workflows": "0.14.
|
|
37
|
-
"@cogitator-ai/swarms": "0.15.
|
|
36
|
+
"@cogitator-ai/workflows": "0.14.23",
|
|
37
|
+
"@cogitator-ai/swarms": "0.15.4",
|
|
38
38
|
"@types/express": "^5.0.6",
|
|
39
39
|
"@types/supertest": "^7.2.1",
|
|
40
40
|
"@types/ws": "^8.18.2",
|