@cogitator-ai/tetsu 0.1.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,20 +1,25 @@
1
1
  import { controller, route } from '@tetsujs/core';
2
2
  import { sse } from '@tetsujs/sse';
3
3
  import { countMessageTokens } from '@cogitator-ai/memory';
4
- import { createErrorEvent, createFinishEvent, createStartEvent, createSwarmEvent, createTextDeltaEvent, createTextEndEvent, createTextStartEvent, createToolCallDeltaEvent, createToolCallEndEvent, createToolCallStartEvent, createToolResultEvent, createWorkflowEvent, generateId, } from '@cogitator-ai/server-shared';
4
+ import { createApprovalRequiredEvent, createErrorEvent, createFinishEvent, createStartEvent, createSwarmEvent, createToolCallDeltaEvent, createToolCallEndEvent, createToolCallStartEvent, createToolResultEvent, createWorkflowEvent, generateId, } from '@cogitator-ai/server-shared';
5
+ import { assertThreadAccess, ensureThreadAccess } from '@cogitator-ai/core';
5
6
  import { httpError } from '@tetsujs/core';
6
7
  import { resolveCaller } from './auth.js';
7
8
  import { clientClosedRequest, cogitatorErrors, describeError } from './errors.js';
8
- import { checkThreadAccess, executeSwarm, executeWorkflow, findAgent, findSwarm, findWorkflow, listAgents, listSwarms, listTools, listWorkflows, runAgent, serializeSwarmUsage, toAgentRunResponse, toSwarmRunResponse, toWorkflowRunResponse, } from './operations.js';
9
- import { AddMessageBody, AddMessageResponse, AgentListResponse, AgentRunResponse, BlackboardResponse, errorEnvelope, failureEnvelope, HealthResponse, NameParams, ReadyResponse, RUN_FAILURES, RunBody, SwarmListResponse, SwarmRunBody, SwarmRunResponse, ThreadParams, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunBody, WorkflowRunResponse, } from './schemas.js';
9
+ import { checkThreadAccess, executeSwarm, executeWorkflow, findAgent, findSwarm, findWorkflow, listAgents, listSwarms, listTools, listWorkflows, resumeAgent, runAgent, serializeSwarmUsage, toAgentRunResponse, toPendingApprovals, toResumeDecisions, toSwarmRunResponse, toWorkflowRunResponse, } from './operations.js';
10
+ import { AddMessageBody, AddMessageResponse, AgentListResponse, AgentRunResponse, BlackboardResponse, errorEnvelope, errorsEnvelope, failureEnvelope, HealthResponse, NameParams, ReadyResponse, ResumeBody, RUN_FAILURES, RunBody, SwarmListResponse, SwarmRunBody, SwarmRunResponse, ThreadParams, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunBody, WorkflowRunResponse, } from './schemas.js';
10
11
  import { cogitatorSocket } from './socket.js';
11
- import { DONE_EVENT, eventsOf, resolveSignal, sseEvent } from './streaming.js';
12
+ import { DONE_EVENT, eventsOf, MessageParts, resolveSignal, sseEvent } from './streaming.js';
12
13
  const AgentNotFound = errorEnvelope('AGENT_NOT_FOUND', 'No agent is registered under this name');
13
14
  const WorkflowNotFound = errorEnvelope('WORKFLOW_NOT_FOUND', 'No workflow is registered under this name');
14
15
  const SwarmNotFound = errorEnvelope('SWARM_NOT_FOUND', 'No swarm is registered under this name');
15
16
  const RunNotFound = failureEnvelope(404, 'No agent, workflow or swarm is registered under this name, or the agent called a tool it does not have', ['SWARM_NOT_FOUND']);
16
17
  const NotImplemented = failureEnvelope(501, 'The optional package this endpoint needs is not installed', ['PACKAGE_NOT_INSTALLED']);
17
- const ThreadForbidden = errorEnvelope('THREAD_FORBIDDEN', 'The caller may not use this memory thread');
18
+ const ThreadForbidden = failureEnvelope(403, 'The memory thread belongs to another user, or `authorizeThread` refused it', ['THREAD_FORBIDDEN']);
19
+ const ResumeForbidden = failureEnvelope(403, 'The paused run belongs to another user, or `authorizeThread` refused the thread', ['THREAD_FORBIDDEN']);
20
+ const ResumeConflict = failureEnvelope(409, 'The thread has no paused run (`RUN_NOT_PAUSED`), or the agent is already running');
21
+ const ThreadUnreadable = errorsEnvelope(['MEMORY_READ_FAILED'], 'The memory adapter could not read the thread, so its owner is unknown');
22
+ const ThreadUnwritable = errorsEnvelope(['MEMORY_READ_FAILED', 'MEMORY_WRITE_FAILED'], 'The memory adapter could not read or create the thread');
18
23
  const MemoryNotConfigured = errorEnvelope('MEMORY_NOT_CONFIGURED', 'The Cogitator runtime has no memory adapter');
19
24
  const BlackboardDisabled = errorEnvelope('BLACKBOARD_DISABLED', 'The blackboard is not enabled for this swarm');
20
25
  const STREAM_DESCRIPTION = 'Server-sent events in the Cogitator stream protocol, one JSON event per `data:` line, ending with `data: [DONE]`.';
@@ -125,9 +130,66 @@ export const cogitatorController = controller('Cogitator', (deps) => {
125
130
  const auth = ctx.cogitatorAuth;
126
131
  const body = ctx.body;
127
132
  await checkThreadAccess(deps, auth, body.threadId);
128
- return sse(ctx, (signal) => agentEvents(deps, agent, body, auth, signal), {
129
- until: until(),
130
- });
133
+ return sse(ctx, (signal) => agentEvents((callbacks) => runAgent(deps, agent, { ...body, ...callbacks }, auth), signal), { until: until() });
134
+ },
135
+ }),
136
+ resumeAgent: route({
137
+ method: 'POST',
138
+ path: '/agents/:name/resume',
139
+ schema: {
140
+ params: NameParams,
141
+ body: ResumeBody,
142
+ response: {
143
+ ...RUN_FAILURES,
144
+ 200: AgentRunResponse,
145
+ 403: ResumeForbidden,
146
+ 404: RunNotFound,
147
+ 409: ResumeConflict,
148
+ },
149
+ },
150
+ hooks: { beforeParse: [caller], onError: [errors] },
151
+ docs: {
152
+ summary: 'Resume a run paused for tool approvals and wait for its answer',
153
+ description: 'Approved calls run, declined ones answer the model with the reason, and calls without a decision pause the run again.',
154
+ tags: ['agents'],
155
+ },
156
+ handler: async (ctx) => {
157
+ const agent = findAgent(deps, ctx.params.name);
158
+ const { threadId } = ctx.body;
159
+ await checkThreadAccess(deps, ctx.cogitatorAuth, threadId);
160
+ const signal = ctx.req.signal;
161
+ try {
162
+ const result = await resumeAgent(deps, agent, threadId, { ...toResumeDecisions(ctx.body), signal }, ctx.cogitatorAuth);
163
+ return toAgentRunResponse(result);
164
+ }
165
+ catch (error) {
166
+ if (signal.aborted)
167
+ throw clientClosedRequest();
168
+ throw error;
169
+ }
170
+ },
171
+ }),
172
+ streamResumeAgent: route({
173
+ method: 'POST',
174
+ path: '/agents/:name/resume/stream',
175
+ schema: {
176
+ params: NameParams,
177
+ body: ResumeBody,
178
+ response: { 403: ThreadForbidden, 404: AgentNotFound },
179
+ },
180
+ hooks: { beforeParse: [caller], onError: [errors] },
181
+ docs: {
182
+ summary: 'Resume a run paused for tool approvals and stream the rest of it',
183
+ description: STREAM_DESCRIPTION,
184
+ tags: ['agents'],
185
+ },
186
+ handler: async (ctx) => {
187
+ const agent = findAgent(deps, ctx.params.name);
188
+ const auth = ctx.cogitatorAuth;
189
+ const { threadId } = ctx.body;
190
+ const decisions = toResumeDecisions(ctx.body);
191
+ await checkThreadAccess(deps, auth, threadId);
192
+ return sse(ctx, (signal) => agentEvents((callbacks) => resumeAgent(deps, agent, threadId, { ...decisions, ...callbacks }, auth), signal), { until: until() });
131
193
  },
132
194
  }),
133
195
  getThread: route({
@@ -135,7 +197,12 @@ export const cogitatorController = controller('Cogitator', (deps) => {
135
197
  path: '/threads/:id',
136
198
  schema: {
137
199
  params: ThreadParams,
138
- response: { 200: ThreadResponse, 403: ThreadForbidden, 503: MemoryNotConfigured },
200
+ response: {
201
+ 200: ThreadResponse,
202
+ 403: ThreadForbidden,
203
+ 500: ThreadUnreadable,
204
+ 503: MemoryNotConfigured,
205
+ },
139
206
  },
140
207
  hooks: { beforeParse: [caller], onError: [errors] },
141
208
  docs: { summary: 'Read the messages of a memory thread', tags: ['threads'] },
@@ -143,6 +210,7 @@ export const cogitatorController = controller('Cogitator', (deps) => {
143
210
  const memory = memoryOf();
144
211
  const id = ctx.params.id;
145
212
  await checkThreadAccess(deps, ctx.cogitatorAuth, id);
213
+ await assertThreadAccess(memory, id, ctx.cogitatorAuth?.userId);
146
214
  const result = await memory.getEntries({ threadId: id });
147
215
  if (!result.success)
148
216
  throw new Error(result.error);
@@ -162,14 +230,24 @@ export const cogitatorController = controller('Cogitator', (deps) => {
162
230
  schema: {
163
231
  params: ThreadParams,
164
232
  body: AddMessageBody,
165
- response: { 201: AddMessageResponse, 403: ThreadForbidden, 503: MemoryNotConfigured },
233
+ response: {
234
+ 201: AddMessageResponse,
235
+ 403: ThreadForbidden,
236
+ 500: ThreadUnwritable,
237
+ 503: MemoryNotConfigured,
238
+ },
166
239
  },
167
240
  hooks: { beforeParse: [caller], onError: [errors] },
168
- docs: { summary: 'Append a message to a memory thread', tags: ['threads'] },
241
+ docs: {
242
+ summary: 'Append a message to a memory thread',
243
+ description: 'A thread that does not exist yet is created, owned by the caller.',
244
+ tags: ['threads'],
245
+ },
169
246
  handler: async (ctx) => {
170
247
  const memory = memoryOf();
171
248
  const id = ctx.params.id;
172
249
  await checkThreadAccess(deps, ctx.cogitatorAuth, id);
250
+ await ensureThreadAccess(memory, id, { agentId: '', userId: ctx.cogitatorAuth?.userId });
173
251
  const message = { role: ctx.body.role, content: ctx.body.content };
174
252
  const result = await memory.addEntry({
175
253
  threadId: id,
@@ -188,14 +266,21 @@ export const cogitatorController = controller('Cogitator', (deps) => {
188
266
  path: '/threads/:id',
189
267
  schema: {
190
268
  params: ThreadParams,
191
- response: { 204: null, 403: ThreadForbidden, 503: MemoryNotConfigured },
269
+ response: {
270
+ 204: null,
271
+ 403: ThreadForbidden,
272
+ 500: ThreadUnreadable,
273
+ 503: MemoryNotConfigured,
274
+ },
192
275
  },
193
276
  hooks: { beforeParse: [caller], onError: [errors] },
194
277
  docs: { summary: 'Delete a memory thread', tags: ['threads'] },
195
278
  handler: async (ctx) => {
196
279
  const memory = memoryOf();
197
- await checkThreadAccess(deps, ctx.cogitatorAuth, ctx.params.id);
198
- const result = await memory.clearThread(ctx.params.id);
280
+ const id = ctx.params.id;
281
+ await checkThreadAccess(deps, ctx.cogitatorAuth, id);
282
+ await assertThreadAccess(memory, id, ctx.cogitatorAuth?.userId);
283
+ const result = await memory.clearThread(id);
199
284
  if (!result.success)
200
285
  throw new Error(result.error);
201
286
  },
@@ -296,7 +381,7 @@ export const cogitatorController = controller('Cogitator', (deps) => {
296
381
  await checkThreadAccess(deps, ctx.cogitatorAuth, ctx.body.threadId);
297
382
  const signal = ctx.req.signal;
298
383
  try {
299
- const { swarm, result } = await executeSwarm(deps, config, ctx.body, signal);
384
+ const { swarm, result } = await executeSwarm(deps, config, ctx.body, ctx.cogitatorAuth, signal);
300
385
  if (signal.aborted)
301
386
  throw clientClosedRequest();
302
387
  return toSwarmRunResponse(swarm, result);
@@ -326,7 +411,7 @@ export const cogitatorController = controller('Cogitator', (deps) => {
326
411
  const config = findSwarm(deps, ctx.params.name);
327
412
  const body = ctx.body;
328
413
  await checkThreadAccess(deps, ctx.cogitatorAuth, body.threadId);
329
- return sse(ctx, (signal) => swarmEvents(deps, config, body, signal), {
414
+ return sse(ctx, (signal) => swarmEvents(deps, config, body, ctx.cogitatorAuth, signal), {
330
415
  until: until(),
331
416
  });
332
417
  },
@@ -360,23 +445,24 @@ function* failure(error) {
360
445
  if (described.unexpected)
361
446
  throw error;
362
447
  }
363
- async function* agentEvents(deps, agent, body, auth, signal) {
448
+ async function* agentEvents(start, signal) {
364
449
  const messageId = generateId('msg');
365
- const textId = generateId('txt');
450
+ const parts = new MessageParts();
366
451
  let result;
367
452
  yield sseEvent(createStartEvent(messageId));
368
- yield sseEvent(createTextStartEvent(textId));
369
453
  try {
370
454
  yield* eventsOf(signal, async (emit) => {
371
- result = await runAgent(deps, agent, {
372
- ...body,
455
+ const emitAll = (events) => {
456
+ for (const event of events)
457
+ emit(sseEvent(event));
458
+ };
459
+ result = await start({
373
460
  stream: true,
374
461
  signal,
375
- onToken: (token) => {
376
- if (token)
377
- emit(sseEvent(createTextDeltaEvent(textId, token)));
378
- },
462
+ onToken: (token) => emitAll(parts.delta('text', token)),
463
+ onReasoning: (delta) => emitAll(parts.delta('reasoning', delta)),
379
464
  onToolCall: (call) => {
465
+ emitAll(parts.end('reasoning'));
380
466
  emit(sseEvent(createToolCallStartEvent(call.id, call.name)));
381
467
  emit(sseEvent(createToolCallDeltaEvent(call.id, JSON.stringify(call.arguments))));
382
468
  emit(sseEvent(createToolCallEndEvent(call.id)));
@@ -384,19 +470,22 @@ async function* agentEvents(deps, agent, body, auth, signal) {
384
470
  onToolResult: (toolResult) => {
385
471
  emit(sseEvent(createToolResultEvent(generateId('res'), toolResult.callId, toolResult.result)));
386
472
  },
387
- }, auth);
473
+ });
388
474
  });
389
475
  }
390
476
  catch (error) {
391
477
  if (signal.aborted)
392
478
  return;
393
- yield sseEvent(createTextEndEvent(textId));
479
+ yield* parts.end().map(sseEvent);
394
480
  yield* failure(error);
395
481
  return;
396
482
  }
397
483
  if (signal.aborted || !result)
398
484
  return;
399
- yield sseEvent(createTextEndEvent(textId));
485
+ yield* parts.end().map(sseEvent);
486
+ if (result.status === 'paused') {
487
+ yield sseEvent(createApprovalRequiredEvent(result.threadId, toPendingApprovals(result.pendingApprovals ?? [])));
488
+ }
400
489
  yield sseEvent(createFinishEvent(messageId, {
401
490
  inputTokens: result.usage.inputTokens,
402
491
  outputTokens: result.usage.outputTokens,
@@ -435,7 +524,7 @@ async function* workflowEvents(deps, workflow, body, signal) {
435
524
  yield sseEvent(createFinishEvent(messageId));
436
525
  yield DONE_EVENT;
437
526
  }
438
- async function* swarmEvents(deps, config, body, signal) {
527
+ async function* swarmEvents(deps, config, body, auth, signal) {
439
528
  const messageId = generateId('swarm');
440
529
  let completed;
441
530
  yield sseEvent(createStartEvent(messageId));
@@ -453,7 +542,7 @@ async function* swarmEvents(deps, config, body, signal) {
453
542
  onAgentError: (agentName, error) => event('agent_error', { agentName, error: error.message }),
454
543
  onMessage: (message) => event('message', message),
455
544
  onEvent: (swarmEvent) => event(swarmEvent.type, swarmEvent.data),
456
- }, signal);
545
+ }, auth, signal);
457
546
  });
458
547
  }
459
548
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { callerHook } from './auth.js';
3
3
  export type { CallerFields, CallerHook } from './auth.js';
4
4
  export { cogitatorErrors, cogitatorErrorResponse, cogitatorErrorStatus, describeError, CLIENT_CLOSED_REQUEST, } from './errors.js';
5
5
  export type { DescribedError } from './errors.js';
6
- export { RunBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, } from './schemas.js';
7
- export type { AuthContext, Authenticate, AuthorizeThread, CogitatorDeps, ShutdownSignal, WebSocketOptions, AgentRunRequest, SwarmRunRequest, WorkflowRunRequest, AddMessageRequest, HealthResponseBody, AgentListResponseBody, AgentRunResponseBody, ThreadResponseBody, ToolListResponseBody, WorkflowListResponseBody, WorkflowRunResponseBody, SwarmListResponseBody, SwarmRunResponseBody, BlackboardResponseBody, WebSocketClientMessage, WebSocketServerMessage, } from './types.js';
6
+ export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, } from './schemas.js';
7
+ export type { AuthContext, Authenticate, AuthorizeThread, CogitatorDeps, ShutdownSignal, WebSocketOptions, AgentRunRequest, AgentResumeRequest, SwarmRunRequest, WorkflowRunRequest, AddMessageRequest, HealthResponseBody, AgentListResponseBody, AgentRunResponseBody, ThreadResponseBody, ToolListResponseBody, WorkflowListResponseBody, WorkflowRunResponseBody, SwarmListResponseBody, SwarmRunResponseBody, BlackboardResponseBody, WebSocketClientMessage, WebSocketServerMessage, } from './types.js';
8
8
  export type { StreamEvent, Usage } from '@cogitator-ai/server-shared';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,OAAO,EACP,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { cogitatorController } from './controller.js';
2
2
  export { callerHook } from './auth.js';
3
3
  export { cogitatorErrors, cogitatorErrorResponse, cogitatorErrorStatus, describeError, CLIENT_CLOSED_REQUEST, } from './errors.js';
4
- export { RunBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, } from './schemas.js';
4
+ export { RunBody, ResumeBody, SwarmRunBody, WorkflowRunBody, AddMessageBody, SocketMessage, AgentRunResponse, AgentListResponse, ThreadResponse, ToolListResponse, WorkflowListResponse, WorkflowRunResponse, SwarmListResponse, SwarmRunResponse, BlackboardResponse, HealthResponse, } from './schemas.js';
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,OAAO,EACP,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,cAAc,CAAC"}
@@ -1,5 +1,8 @@
1
1
  import type { Agent } from '@cogitator-ai/core';
2
- import type { RunOptions, RunResult, StrategyResult, SwarmConfig, SwarmResourceUsage, SwarmRunOptions, Workflow, WorkflowExecuteOptions, WorkflowResult, WorkflowState } from '@cogitator-ai/types';
2
+ import type { PendingApproval } from '@cogitator-ai/server-shared';
3
+ import type { ResumeOptions, RunOptions, RunResult, StrategyResult, SwarmConfig, SwarmResourceUsage, SwarmRunOptions, ToolApprovalRequest, Workflow, WorkflowExecuteOptions, WorkflowResult, WorkflowState } from '@cogitator-ai/types';
4
+ import type { z } from 'zod';
5
+ import type { ResumeBody } from './schemas.js';
3
6
  import type { AgentListResponseBody, AgentRunResponseBody, AuthContext, CogitatorDeps, SwarmListResponseBody, SwarmRunResponseBody, ToolListResponseBody, WorkflowListResponseBody, WorkflowRunResponseBody } from './types.js';
4
7
  export declare function findAgent(deps: CogitatorDeps, name: string): Agent;
5
8
  export declare function findWorkflow(deps: CogitatorDeps, name: string): Workflow<WorkflowState>;
@@ -10,6 +13,10 @@ export declare function listTools(deps: CogitatorDeps): ToolListResponseBody;
10
13
  export declare function listWorkflows(deps: CogitatorDeps): WorkflowListResponseBody;
11
14
  export declare function listSwarms(deps: CogitatorDeps): SwarmListResponseBody;
12
15
  export declare function toAgentRunResponse(result: RunResult): AgentRunResponseBody;
16
+ /** The tool calls a paused run waits on, as clients see them. */
17
+ export declare function toPendingApprovals(requests: readonly ToolApprovalRequest[]): PendingApproval[];
18
+ /** The decisions of a resume request, as `cogitator.resume()` takes them. */
19
+ export declare function toResumeDecisions(body: Pick<z.output<typeof ResumeBody>, 'decisions' | 'defaultDecision'>): Pick<ResumeOptions, 'decisions' | 'defaultDecision'>;
13
20
  export declare function toWorkflowRunResponse(result: WorkflowResult<WorkflowState>): WorkflowRunResponseBody;
14
21
  export declare function serializeSwarmUsage(usage: SwarmResourceUsage): {
15
22
  totalTokens: number;
@@ -32,8 +39,13 @@ interface SwarmHandle {
32
39
  }
33
40
  export declare function toSwarmRunResponse(swarm: SwarmHandle, result: StrategyResult): SwarmRunResponseBody;
34
41
  export declare function runAgent(deps: CogitatorDeps, agent: Agent, options: RunOptions, auth: AuthContext | undefined): Promise<RunResult>;
42
+ /**
43
+ * Continues the run paused in `threadId` as the caller. The runtime refuses a
44
+ * caller who is not the user the run belongs to with `THREAD_ACCESS_DENIED`.
45
+ */
46
+ export declare function resumeAgent(deps: CogitatorDeps, agent: Agent, threadId: string, options: ResumeOptions, auth: AuthContext | undefined): Promise<RunResult>;
35
47
  export declare function executeWorkflow(deps: CogitatorDeps, workflow: Workflow<WorkflowState>, input: Record<string, unknown> | undefined, options: WorkflowExecuteOptions, signal: AbortSignal): Promise<WorkflowResult<WorkflowState>>;
36
- export declare function executeSwarm(deps: CogitatorDeps, config: SwarmConfig, options: SwarmRunOptions, signal: AbortSignal, onStart?: (swarm: SwarmHandle) => void): Promise<{
48
+ export declare function executeSwarm(deps: CogitatorDeps, config: SwarmConfig, options: SwarmRunOptions, auth: AuthContext | undefined, signal: AbortSignal, onStart?: (swarm: SwarmHandle) => void): Promise<{
37
49
  swarm: SwarmHandle;
38
50
  result: StrategyResult;
39
51
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,QAAQ,EACR,sBAAsB,EACtB,cAAc,EACd,aAAa,EACd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAMpB,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAIlE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,CAIvF;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAIxE;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,WAAW,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,IAAI,CAAC,CAKf;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,qBAAqB,CAQrE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAcnE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,wBAAwB,CAQ3E;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,qBAAqB,CAarE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,oBAAoB,CAgB1E;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,cAAc,CAAC,aAAa,CAAC,GACpC,uBAAuB,CAQzB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB;;;;;;;;;;;;EAO5D;AAED,UAAU,WAAW;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,gBAAgB,IAAI,kBAAkB,CAAC;CACxC;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,cAAc,GACrB,oBAAoB,CAmBtB;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,WAAW,GAAG,SAAS,GAC5B,OAAO,CAAC,SAAS,CAAC,CAKpB;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,EACjC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC1C,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAWxC;AAED,wBAAsB,YAAY,CAChC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACrC,OAAO,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CAgBzD"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
@@ -85,12 +85,52 @@ export function toAgentRunResponse(result) {
85
85
  inputTokens: result.usage.inputTokens,
86
86
  outputTokens: result.usage.outputTokens,
87
87
  totalTokens: result.usage.totalTokens,
88
+ ...(result.usage.reasoningTokens !== undefined && {
89
+ reasoningTokens: result.usage.reasoningTokens,
90
+ }),
91
+ ...(result.usage.cachedInputTokens !== undefined && {
92
+ cachedInputTokens: result.usage.cachedInputTokens,
93
+ }),
94
+ ...(result.usage.cacheWriteTokens !== undefined && {
95
+ cacheWriteTokens: result.usage.cacheWriteTokens,
96
+ }),
88
97
  },
89
98
  toolCalls: result.toolCalls.map((call) => ({
90
99
  id: call.id,
91
100
  name: call.name,
92
101
  arguments: call.arguments,
93
102
  })),
103
+ ...(result.reasoning !== undefined && { reasoning: result.reasoning }),
104
+ ...(result.status !== undefined && { status: result.status }),
105
+ ...(result.pendingApprovals !== undefined && {
106
+ pendingApprovals: toPendingApprovals(result.pendingApprovals),
107
+ }),
108
+ };
109
+ }
110
+ /** The tool calls a paused run waits on, as clients see them. */
111
+ export function toPendingApprovals(requests) {
112
+ return requests.map((request) => ({
113
+ toolCallId: request.toolCallId,
114
+ toolName: request.toolName,
115
+ arguments: request.arguments,
116
+ description: request.description,
117
+ ...(request.sideEffects !== undefined && { sideEffects: [...request.sideEffects] }),
118
+ }));
119
+ }
120
+ function toDecision(decision) {
121
+ if (decision.approved)
122
+ return { approved: true };
123
+ return decision.reason === undefined
124
+ ? { approved: false }
125
+ : { approved: false, reason: decision.reason };
126
+ }
127
+ /** The decisions of a resume request, as `cogitator.resume()` takes them. */
128
+ export function toResumeDecisions(body) {
129
+ return {
130
+ ...(body.decisions && {
131
+ decisions: Object.fromEntries(Object.entries(body.decisions).map(([id, decision]) => [id, toDecision(decision)])),
132
+ }),
133
+ ...(body.defaultDecision && { defaultDecision: toDecision(body.defaultDecision) }),
94
134
  };
95
135
  }
96
136
  export function toWorkflowRunResponse(result) {
@@ -134,6 +174,16 @@ export function runAgent(deps, agent, options, auth) {
134
174
  ...(auth?.userId !== undefined && { userId: auth.userId }),
135
175
  });
136
176
  }
177
+ /**
178
+ * Continues the run paused in `threadId` as the caller. The runtime refuses a
179
+ * caller who is not the user the run belongs to with `THREAD_ACCESS_DENIED`.
180
+ */
181
+ export function resumeAgent(deps, agent, threadId, options, auth) {
182
+ return deps.cogitator.resume(agent, threadId, {
183
+ ...options,
184
+ ...(auth?.userId !== undefined && { userId: auth.userId }),
185
+ });
186
+ }
137
187
  export async function executeWorkflow(deps, workflow, input, options, signal) {
138
188
  const { WorkflowExecutor } = await importOptional(() => import('@cogitator-ai/workflows'), '@cogitator-ai/workflows');
139
189
  const result = await new WorkflowExecutor(deps.cogitator).execute(workflow, input, {
@@ -144,7 +194,7 @@ export async function executeWorkflow(deps, workflow, input, options, signal) {
144
194
  throw result.error;
145
195
  return result;
146
196
  }
147
- export async function executeSwarm(deps, config, options, signal, onStart) {
197
+ export async function executeSwarm(deps, config, options, auth, signal, onStart) {
148
198
  const { Swarm } = await importOptional(() => import('@cogitator-ai/swarms'), '@cogitator-ai/swarms');
149
199
  signal.throwIfAborted();
150
200
  const swarm = new Swarm(deps.cogitator, config);
@@ -152,7 +202,10 @@ export async function executeSwarm(deps, config, options, signal, onStart) {
152
202
  signal.addEventListener('abort', abort, { once: true });
153
203
  try {
154
204
  onStart?.(swarm);
155
- const result = await swarm.run(options);
205
+ const result = await swarm.run({
206
+ ...options,
207
+ ...(auth?.userId !== undefined && { userId: auth.userId }),
208
+ });
156
209
  return { swarm, result };
157
210
  }
158
211
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}