@cogitator-ai/hono 0.12.6 → 0.13.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 +24 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +1 -0
- package/dist/app.js.map +1 -1
- package/dist/middleware/context.d.ts +2 -1
- package/dist/middleware/context.d.ts.map +1 -1
- package/dist/middleware/context.js +5 -2
- package/dist/middleware/context.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +69 -2
- package/dist/routes/agents.js.map +1 -1
- package/dist/streaming/hono-stream-writer.d.ts +5 -4
- package/dist/streaming/hono-stream-writer.d.ts.map +1 -1
- package/dist/streaming/hono-stream-writer.js +6 -5
- package/dist/streaming/hono-stream-writer.js.map +1 -1
- package/dist/types.d.ts +16 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -57,6 +57,7 @@ Creates a Hono sub-application with all Cogitator endpoints.
|
|
|
57
57
|
| `websocket` | `WebSocketConfig` | `{ path?, maxPayloadSize?, upgradeWebSocket? }` (see below) |
|
|
58
58
|
| `bodyLimit` | `number` | Max request body size in bytes (default 1 MiB) |
|
|
59
59
|
| `sseHeartbeatMs` | `number` | How often SSE streams write a `: keep-alive` comment while a run is silent (default `5000`, `0` turns it off) |
|
|
60
|
+
| `resumableStreams` | `boolean \| ResumableStreamOptions` | Keep the streams of agent runs so a client that loses one reconnects with `Last-Event-ID`, see [Resumable streams](#resumable-streams). Off by default |
|
|
60
61
|
| `acceptContext` | `boolean \| string[]` | Keys of a run `context` clients may send: none by default, a list, or `true` for any (the model reads it as data from the application) |
|
|
61
62
|
| `threadMessageRoles` | `ThreadMessageRole[]` | Roles `POST /threads/:id/messages` accepts (default `user` and `assistant`) |
|
|
62
63
|
| `limits` | `RunLimits` | `{ swarmTimeout?, workflowMaxIterations?, workflowMaxConcurrency? }`: caps on what a request may ask a swarm or workflow run for (see [Run limits](#run-limits)) |
|
|
@@ -306,6 +307,29 @@ app.post('/custom/stream', (c) =>
|
|
|
306
307
|
);
|
|
307
308
|
```
|
|
308
309
|
|
|
310
|
+
## Resumable streams
|
|
311
|
+
|
|
312
|
+
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:
|
|
313
|
+
|
|
314
|
+
```typescript
|
|
315
|
+
const api = cogitatorApp({
|
|
316
|
+
cogitator,
|
|
317
|
+
agents: { chat: chatAgent },
|
|
318
|
+
resumableStreams: { detachedTimeoutMs: 2 * 60_000 },
|
|
319
|
+
});
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
- Every event carries an SSE `id`, `<streamId>:<seq>` with `seq` from 1 up. Heartbeat comments carry none.
|
|
323
|
+
- A client that disconnects no longer stops the run. Its events keep going into the store.
|
|
324
|
+
- 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.
|
|
325
|
+
- `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 `:`.
|
|
326
|
+
- 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`).
|
|
327
|
+
- 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.
|
|
328
|
+
- 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`.
|
|
329
|
+
- 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`.
|
|
330
|
+
|
|
331
|
+
`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.
|
|
332
|
+
|
|
309
333
|
## WebSocket
|
|
310
334
|
|
|
311
335
|
WebSocket upgrades are runtime-specific in Hono, so pass the `upgradeWebSocket` helper of your runtime. The endpoint goes through the same middleware as the REST routes, including `auth`.
|
package/dist/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAiB/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAiB/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,CAwCrE"}
|
package/dist/app.js
CHANGED
|
@@ -25,6 +25,7 @@ export function cogitatorApp(opts) {
|
|
|
25
25
|
...opts.swagger,
|
|
26
26
|
auth: opts.swagger?.auth ?? Boolean(opts.auth),
|
|
27
27
|
...(opts.limits && { limits: opts.limits }),
|
|
28
|
+
...(opts.resumableStreams && { resumableStreams: true }),
|
|
28
29
|
}));
|
|
29
30
|
}
|
|
30
31
|
app.use('*', createAnonymousMiddleware(opts.anonymous));
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAyB;IACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAW,CAAC;IAEhC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAExD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAErC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,GAAG,CAAC,KAAK,CACP,GAAG,EACH,mBAAmB,CAAC;YAClB,GAAG,IAAI,CAAC,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAyB;IACpD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAW,CAAC;IAEhC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAExD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAErC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,GAAG,CAAC,KAAK,CACP,GAAG,EACH,mBAAmB,CAAC;YAClB,GAAG,IAAI,CAAC,OAAO;YACf,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;SACzD,CAAC,CACH,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAExD,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACpC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACrC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACnC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACvC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAEpC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC9C,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAE1B,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -2,7 +2,8 @@ import type { HonoEnv, CogitatorAppOptions } from '../types.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Sets the Cogitator context of each request.
|
|
4
4
|
*
|
|
5
|
-
* @throws Error when `opts.limits` holds a limit that is not a positive integer
|
|
5
|
+
* @throws Error when `opts.limits` holds a limit that is not a positive integer, RangeError
|
|
6
|
+
* for a `resumableStreams` limit that is not a positive whole number
|
|
6
7
|
*/
|
|
7
8
|
export declare function createContextMiddleware(opts: CogitatorAppOptions): import("hono").MiddlewareHandler<HonoEnv, string, {}, Response>;
|
|
8
9
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/middleware/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/middleware/context.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAe,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE7E;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,mBAAmB,mEAwBhE"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { createMiddleware } from 'hono/factory';
|
|
2
|
-
import { DEFAULT_THREAD_MESSAGE_ROLES, checkRunLimits, generateId, resolveSseHeartbeatMs, } from '@cogitator-ai/server-shared';
|
|
2
|
+
import { DEFAULT_THREAD_MESSAGE_ROLES, ResumableStreams, checkRunLimits, generateId, resolveSseHeartbeatMs, } from '@cogitator-ai/server-shared';
|
|
3
3
|
/**
|
|
4
4
|
* Sets the Cogitator context of each request.
|
|
5
5
|
*
|
|
6
|
-
* @throws Error when `opts.limits` holds a limit that is not a positive integer
|
|
6
|
+
* @throws Error when `opts.limits` holds a limit that is not a positive integer, RangeError
|
|
7
|
+
* for a `resumableStreams` limit that is not a positive whole number
|
|
7
8
|
*/
|
|
8
9
|
export function createContextMiddleware(opts) {
|
|
9
10
|
const sseHeartbeatMs = resolveSseHeartbeatMs(opts.sseHeartbeatMs);
|
|
10
11
|
const limits = checkRunLimits(opts.limits);
|
|
12
|
+
const resumableStreams = ResumableStreams.from(opts.resumableStreams);
|
|
11
13
|
return createMiddleware(async (c, next) => {
|
|
12
14
|
c.set('cogitator', {
|
|
13
15
|
runtime: opts.cogitator,
|
|
@@ -21,6 +23,7 @@ export function createContextMiddleware(opts) {
|
|
|
21
23
|
authorizeThread: opts.authorizeThread,
|
|
22
24
|
deps: opts.deps,
|
|
23
25
|
workflowCheckpoints: opts.workflowCheckpoints,
|
|
26
|
+
resumableStreams,
|
|
24
27
|
});
|
|
25
28
|
c.set('cogitatorRequestId', generateId('req'));
|
|
26
29
|
c.set('cogitatorStartTime', Date.now());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/middleware/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AAGrC
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/middleware/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,6BAA6B,CAAC;AAGrC;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAyB;IAC/D,MAAM,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAc,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnF,OAAO,gBAAgB,CAAU,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACjD,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE;YACjB,OAAO,EAAE,IAAI,CAAC,SAAS;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;YAC/B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;YACzB,cAAc;YACd,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,KAAK;YAC1C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,4BAA4B;YAC3E,MAAM;YACN,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,gBAAgB;SACjB,CAAC,CAAC;QACH,CAAC,CAAC,GAAG,CAAC,oBAAoB,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAExC,MAAM,IAAI,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAe5B,OAAO,KAAK,EAAe,OAAO,EAAqB,MAAM,aAAa,CAAC;AAwG3E,wBAAgB,iBAAiB,IAAI,IAAI,CAAC,OAAO,CAAC,CAuKjD"}
|
package/dist/routes/agents.js
CHANGED
|
@@ -1,11 +1,61 @@
|
|
|
1
1
|
import { Hono } from 'hono';
|
|
2
2
|
import { streamSSE } from 'hono/streaming';
|
|
3
|
-
import { AgentStreamSession, parseResumeRequest, parseRunRequest, toAgentRunResponse, } from '@cogitator-ai/server-shared';
|
|
3
|
+
import { AgentStreamSession, authorizeThreadAccess, lastEventIdOf, parseResumeRequest, parseRunRequest, toAgentRunResponse, } from '@cogitator-ai/server-shared';
|
|
4
4
|
import { HonoStreamWriter } from '../streaming/hono-stream-writer.js';
|
|
5
5
|
import { getOwn } from '../utils/lookup.js';
|
|
6
6
|
import { describeError } from '../utils/errors.js';
|
|
7
7
|
import { createRequestAbortController, holdConnectionOpen, errorResponse, invalidInput, bodyRefused, notFound, readJsonBody, refuseThread, requestAborted, runDeps, sendError, } from '../utils/request.js';
|
|
8
|
-
|
|
8
|
+
/** Writes the frames of a resumable stream to one client, until it ends or the client leaves */
|
|
9
|
+
function followStream(c, stream) {
|
|
10
|
+
const client = createRequestAbortController(c);
|
|
11
|
+
return streamSSE(c, async (sse) => {
|
|
12
|
+
const writer = new HonoStreamWriter(sse, { heartbeatMs: c.get('cogitator').sseHeartbeatMs });
|
|
13
|
+
sse.onAbort(() => {
|
|
14
|
+
writer.close();
|
|
15
|
+
client.abort();
|
|
16
|
+
});
|
|
17
|
+
try {
|
|
18
|
+
for await (const frame of stream.frames(client.signal)) {
|
|
19
|
+
await writer.send(frame.event, frame.id);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
finally {
|
|
23
|
+
await writer.flush();
|
|
24
|
+
writer.close();
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The answer to a request that reconnects to a resumable stream with `Last-Event-ID` or
|
|
30
|
+
* `?lastEventId=`, `undefined` for a request that is no reconnect
|
|
31
|
+
*/
|
|
32
|
+
async function reconnect(c) {
|
|
33
|
+
const streams = c.get('cogitator').resumableStreams;
|
|
34
|
+
const lastEventId = streams && lastEventIdOf(c.req.header('last-event-id'), c.req.queries('lastEventId'));
|
|
35
|
+
if (!streams || lastEventId === undefined)
|
|
36
|
+
return undefined;
|
|
37
|
+
const attached = await streams.reconnect(lastEventId, callerOf(c));
|
|
38
|
+
return attached.ok ? followStream(c, attached.stream) : sendError(c, attached.error);
|
|
39
|
+
}
|
|
40
|
+
/** The caller of a reconnect or cancel, with `authorizeThread` for the stream's thread */
|
|
41
|
+
function callerOf(c) {
|
|
42
|
+
const auth = c.get('cogitatorAuth');
|
|
43
|
+
return { auth, authorizeThread: (threadId) => refuseThreadOf(c, auth, threadId) };
|
|
44
|
+
}
|
|
45
|
+
function refuseThreadOf(c, auth, threadId) {
|
|
46
|
+
return authorizeThreadAccess(c.get('cogitator').authorizeThread, auth, threadId);
|
|
47
|
+
}
|
|
48
|
+
async function streamAgent(c, threadId, errorLabel, execute) {
|
|
49
|
+
const streams = c.get('cogitator').resumableStreams;
|
|
50
|
+
if (streams) {
|
|
51
|
+
const opened = await streams.startAgentRun({
|
|
52
|
+
auth: c.get('cogitatorAuth'),
|
|
53
|
+
threadId,
|
|
54
|
+
execute,
|
|
55
|
+
describeError: (error) => describeError(error, errorLabel),
|
|
56
|
+
});
|
|
57
|
+
return opened.ok ? followStream(c, opened.stream) : sendError(c, opened.error);
|
|
58
|
+
}
|
|
9
59
|
const abortController = createRequestAbortController(c);
|
|
10
60
|
return streamSSE(c, async (stream) => {
|
|
11
61
|
const writer = new HonoStreamWriter(stream, { heartbeatMs: c.get('cogitator').sseHeartbeatMs });
|
|
@@ -32,6 +82,17 @@ function streamAgent(c, threadId, errorLabel, execute) {
|
|
|
32
82
|
}
|
|
33
83
|
export function createAgentRoutes() {
|
|
34
84
|
const app = new Hono();
|
|
85
|
+
app.delete('/agents/:name/stream/:streamId', async (c) => {
|
|
86
|
+
const ctx = c.get('cogitator');
|
|
87
|
+
const name = c.req.param('name');
|
|
88
|
+
const streams = ctx.resumableStreams;
|
|
89
|
+
if (!streams)
|
|
90
|
+
return notFound(c, 'Not found');
|
|
91
|
+
if (!getOwn(ctx.agents, name))
|
|
92
|
+
return notFound(c, `Agent '${name}' not found`);
|
|
93
|
+
const cancelled = await streams.cancel(c.req.param('streamId'), callerOf(c));
|
|
94
|
+
return cancelled.ok ? c.body(null, 204) : sendError(c, cancelled.error);
|
|
95
|
+
});
|
|
35
96
|
app.get('/agents', (c) => {
|
|
36
97
|
const ctx = c.get('cogitator');
|
|
37
98
|
const agentList = Object.entries(ctx.agents).map(([name, agent]) => ({
|
|
@@ -119,6 +180,9 @@ export function createAgentRoutes() {
|
|
|
119
180
|
const agent = getOwn(ctx.agents, name);
|
|
120
181
|
if (!agent)
|
|
121
182
|
return notFound(c, `Agent '${name}' not found`);
|
|
183
|
+
const reconnected = await reconnect(c);
|
|
184
|
+
if (reconnected)
|
|
185
|
+
return reconnected;
|
|
122
186
|
const body = await readJsonBody(c);
|
|
123
187
|
if (!body.ok)
|
|
124
188
|
return bodyRefused(c, body.refusal);
|
|
@@ -146,6 +210,9 @@ export function createAgentRoutes() {
|
|
|
146
210
|
const agent = getOwn(ctx.agents, name);
|
|
147
211
|
if (!agent)
|
|
148
212
|
return notFound(c, `Agent '${name}' not found`);
|
|
213
|
+
const reconnected = await reconnect(c);
|
|
214
|
+
if (reconnected)
|
|
215
|
+
return reconnected;
|
|
149
216
|
const body = await readJsonBody(c);
|
|
150
217
|
if (!body.ok)
|
|
151
218
|
return bodyRefused(c, body.refusal);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/routes/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,11 +18,12 @@ export declare class HonoStreamWriter {
|
|
|
18
18
|
private heartbeat;
|
|
19
19
|
private write;
|
|
20
20
|
/**
|
|
21
|
-
* Sends one protocol event
|
|
22
|
-
* are written in the order they were sent, also when
|
|
23
|
-
* callbacks can send without waiting. `flush()` waits for
|
|
21
|
+
* Sends one protocol event, with its `id` on a resumable stream. `finish`, the last one, is
|
|
22
|
+
* followed by `data: [DONE]`. Events are written in the order they were sent, also when
|
|
23
|
+
* nobody awaits them, so a run's callbacks can send without waiting. `flush()` waits for
|
|
24
|
+
* every event sent so far.
|
|
24
25
|
*/
|
|
25
|
-
send(event: StreamEvent): Promise<void>;
|
|
26
|
+
send(event: StreamEvent, id?: string): Promise<void>;
|
|
26
27
|
/** Resolves once every event sent so far is written */
|
|
27
28
|
flush(): Promise<void>;
|
|
28
29
|
start(messageId: string, threadId?: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hono-stream-writer.d.ts","sourceRoot":"","sources":["../../src/streaming/hono-stream-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAqBL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,KAAK,EACX,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAE/B,MAAM,EAAE,eAAe,EAAE,OAAO,GAAE,uBAA4B;IAQ1E,OAAO,CAAC,SAAS;YAMH,KAAK;IAOnB
|
|
1
|
+
{"version":3,"file":"hono-stream-writer.d.ts","sourceRoot":"","sources":["../../src/streaming/hono-stream-writer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAqBL,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,KAAK,EACX,MAAM,6BAA6B,CAAC;AAErC,MAAM,WAAW,uBAAuB;IACtC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;gBAE/B,MAAM,EAAE,eAAe,EAAE,OAAO,GAAE,uBAA4B;IAQ1E,OAAO,CAAC,SAAS;YAMH,KAAK;IAOnB;;;;;OAKG;IACH,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpD,uDAAuD;IACvD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhB,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/D,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1E,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxF,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,gBAAgB,EAAE,GACtC,OAAO,CAAC,IAAI,CAAC;IAIV,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,KAAK,IAAI,IAAI;IAKb,IAAI,QAAQ,IAAI,OAAO,CAEtB;CACF"}
|
|
@@ -22,15 +22,16 @@ export class HonoStreamWriter {
|
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
|
-
* Sends one protocol event
|
|
26
|
-
* are written in the order they were sent, also when
|
|
27
|
-
* callbacks can send without waiting. `flush()` waits for
|
|
25
|
+
* Sends one protocol event, with its `id` on a resumable stream. `finish`, the last one, is
|
|
26
|
+
* followed by `data: [DONE]`. Events are written in the order they were sent, also when
|
|
27
|
+
* nobody awaits them, so a run's callbacks can send without waiting. `flush()` waits for
|
|
28
|
+
* every event sent so far.
|
|
28
29
|
*/
|
|
29
|
-
send(event) {
|
|
30
|
+
send(event, id) {
|
|
30
31
|
if (this.closed)
|
|
31
32
|
return Promise.resolve();
|
|
32
33
|
const written = this.queue.then(async () => {
|
|
33
|
-
await this.stream.writeSSE({ data: JSON.stringify(event) });
|
|
34
|
+
await this.stream.writeSSE({ data: JSON.stringify(event), ...(id !== undefined && { id }) });
|
|
34
35
|
if (event.type === 'finish')
|
|
35
36
|
await this.stream.writeSSE({ data: '[DONE]' });
|
|
36
37
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hono-stream-writer.js","sourceRoot":"","sources":["../../src/streaming/hono-stream-writer.ts"],"names":[],"mappings":"AACA,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,EAChB,eAAe,EACf,qBAAqB,EACrB,cAAc,GAKf,MAAM,6BAA6B,CAAC;AAYrC,MAAM,OAAO,gBAAgB;IACnB,MAAM,CAAkB;IACxB,MAAM,GAAG,KAAK,CAAC;IACf,KAAK,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAChC,aAAa,CAAa;IAE3C,YAAY,MAAuB,EAAE,UAAmC,EAAE;QACxE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,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,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,IAAa;QAC/B,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;IACL,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"hono-stream-writer.js","sourceRoot":"","sources":["../../src/streaming/hono-stream-writer.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Context as HonoContext } from 'hono';
|
|
2
2
|
import type { UpgradeWebSocket } from 'hono/ws';
|
|
3
3
|
import type { Cogitator, Agent } from '@cogitator-ai/core';
|
|
4
|
-
import type { AgentRunResponse, AnonymousPolicy, AuthorizeThread, ContextPolicy, PendingApproval, PendingInterrupt, ReadinessCheckStatus, ReadinessResponse, RunLimits, ThreadMessageRole, WorkflowResumeRequestBody, WorkflowRunRequestBody } from '@cogitator-ai/server-shared';
|
|
4
|
+
import type { AgentRunResponse, AnonymousPolicy, AuthorizeThread, ContextPolicy, PendingApproval, PendingInterrupt, ReadinessCheckStatus, ReadinessResponse, ResumableStreamOptions, ResumableStreams, RunLimits, 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, ReadinessResponse, ReadinessCheckStatus, RunLimits, AnonymousPolicy, AuthorizeThread, };
|
|
7
7
|
export interface AuthContext {
|
|
@@ -85,6 +85,19 @@ export interface CogitatorAppOptions {
|
|
|
85
85
|
* answers 404 `CHECKPOINT_NOT_FOUND`.
|
|
86
86
|
*/
|
|
87
87
|
workflowCheckpoints?: CheckpointStore;
|
|
88
|
+
/**
|
|
89
|
+
* Keeps the streams of `/agents/:name/stream` and `/agents/:name/resume/stream` so a
|
|
90
|
+
* client that loses one can resume it. Every event then carries an SSE `id`, and a client
|
|
91
|
+
* that disconnects no longer stops the run: it goes on, and the same route with
|
|
92
|
+
* `Last-Event-ID` (or `?lastEventId=`) replays what the client missed and follows the run to
|
|
93
|
+
* its end, and `DELETE /agents/:name/stream/:streamId` cancels the run. Only the caller who
|
|
94
|
+
* started a stream (every field of what `auth` returned, see `owner`) may reconnect to it or
|
|
95
|
+
* cancel its run, after `authorizeThread` on its thread. A run nobody follows for
|
|
96
|
+
* `detachedTimeoutMs` (5 minutes) is stopped, and every run when `until` aborts (pass the
|
|
97
|
+
* signal your server stops on). `true` keeps the events in memory with the default limits.
|
|
98
|
+
* Default: off, a client that disconnects stops the run.
|
|
99
|
+
*/
|
|
100
|
+
resumableStreams?: boolean | ResumableStreamOptions<AuthContext>;
|
|
88
101
|
}
|
|
89
102
|
export interface CogitatorContext {
|
|
90
103
|
runtime: Cogitator;
|
|
@@ -105,6 +118,8 @@ export interface CogitatorContext {
|
|
|
105
118
|
deps?: DepsFunction;
|
|
106
119
|
/** The `workflowCheckpoints` option. Default: none, workflow runs keep no checkpoints */
|
|
107
120
|
workflowCheckpoints?: CheckpointStore;
|
|
121
|
+
/** The streams kept for clients to resume, when `resumableStreams` is on */
|
|
122
|
+
resumableStreams?: ResumableStreams<AuthContext>;
|
|
108
123
|
}
|
|
109
124
|
export type HonoEnv = {
|
|
110
125
|
Variables: {
|
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":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cogitator-ai/hono",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.1",
|
|
4
4
|
"description": "Hono server adapter for Cogitator AI runtime — works on Node.js, Bun, Deno, Cloudflare Workers",
|
|
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/memory": "0.
|
|
25
|
-
"@cogitator-ai/types": "0.
|
|
26
|
-
"@cogitator-ai/server-shared": "0.
|
|
23
|
+
"@cogitator-ai/core": "0.71.0",
|
|
24
|
+
"@cogitator-ai/memory": "0.29.0",
|
|
25
|
+
"@cogitator-ai/types": "0.82.0",
|
|
26
|
+
"@cogitator-ai/server-shared": "0.14.1"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
29
|
"hono": ">=4.0.0"
|
|
30
30
|
},
|
|
31
31
|
"optionalDependencies": {
|
|
32
|
-
"@cogitator-ai/workflows": "0.14.
|
|
33
|
-
"@cogitator-ai/swarms": "0.15.
|
|
32
|
+
"@cogitator-ai/workflows": "0.14.23",
|
|
33
|
+
"@cogitator-ai/swarms": "0.15.4"
|
|
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/node": "^22.20.4",
|
|
39
39
|
"hono": "^4.13.12",
|
|
40
40
|
"typescript": "^6.0.3",
|