@theokit/agents 10.1.0 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +312 -0
- package/LICENSE +2 -2
- package/README.md +6 -5
- package/dist/{agent-compiler-CIPQkehU.d.ts → agent-compiler-tetgj6zR.d.ts} +3 -172
- package/dist/{agent-handle-Dgi4ZGbg.d.ts → agent-handle-rEWdERuv.d.ts} +113 -2
- package/dist/auth.js +1 -1
- package/dist/{bridge-entry-emr2PSXC.d.ts → bridge-entry-DRAzQ7UA.d.ts} +32 -200
- package/dist/bridge.d.ts +7 -6
- package/dist/bridge.js +3 -3
- package/dist/{chunk-CKRM5Q2K.js → chunk-4EHZG6KN.js} +122 -16
- package/dist/chunk-4EHZG6KN.js.map +1 -0
- package/dist/{chunk-M6HMASZC.js → chunk-7PNUTDBQ.js} +109 -14
- package/dist/chunk-7PNUTDBQ.js.map +1 -0
- package/dist/{chunk-QXGSF6WX.js → chunk-D2EFYZBV.js} +1 -1
- package/dist/{chunk-QXGSF6WX.js.map → chunk-D2EFYZBV.js.map} +1 -1
- package/dist/{chunk-4VHCH6IZ.js → chunk-LLIERPF3.js} +14 -1
- package/dist/chunk-LLIERPF3.js.map +1 -0
- package/dist/{chunk-QJN2LLPF.js → chunk-T5MBTKA2.js} +275 -164
- package/dist/chunk-T5MBTKA2.js.map +1 -0
- package/dist/client-react.d.ts +24 -2
- package/dist/client-react.js +2 -1
- package/dist/client-react.js.map +1 -1
- package/dist/client.d.ts +99 -5
- package/dist/client.js +3 -1
- package/dist/config.d.ts +2 -2
- package/dist/config.js +2 -2
- package/dist/{define-agent-BO5QSjV8.d.ts → define-agent-BnH1MBxs.d.ts} +16 -1
- package/dist/{delegation-scoring-CDvtrYKd.d.ts → delegation-scoring-CQtF2Zaf.d.ts} +345 -11
- package/dist/hooks.js +2 -2
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +22 -9
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/mcp-health.d.ts +66 -1
- package/dist/mcp-health.js +32 -1
- package/dist/mcp-health.js.map +1 -1
- package/dist/pty.js.map +1 -1
- package/dist/session.d.ts +58 -1
- package/dist/session.js +34 -1
- package/dist/session.js.map +1 -1
- package/dist/testing.d.ts +3 -2
- package/dist/testing.js +1 -1
- package/dist/tools.d.ts +4 -2
- package/dist/tools.js +4 -4
- package/dist/tools.js.map +1 -1
- package/dist/types-C16Wuh9E.d.ts +173 -0
- package/package.json +23 -10
- package/dist/chunk-4VHCH6IZ.js.map +0 -1
- package/dist/chunk-CKRM5Q2K.js.map +0 -1
- package/dist/chunk-M6HMASZC.js.map +0 -1
- package/dist/chunk-QJN2LLPF.js.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createHitlPlugin,
|
|
3
3
|
createSdkAgentStream
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-4EHZG6KN.js";
|
|
5
5
|
import {
|
|
6
6
|
compileAgentDefinition,
|
|
7
7
|
defineAgent,
|
|
8
8
|
isAgentDefinition
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-LLIERPF3.js";
|
|
10
10
|
import {
|
|
11
11
|
__name
|
|
12
12
|
} from "./chunk-Z4QWC7IK.js";
|
|
@@ -135,159 +135,77 @@ function isAgentContext(ctx) {
|
|
|
135
135
|
}
|
|
136
136
|
__name(isAgentContext, "isAgentContext");
|
|
137
137
|
|
|
138
|
-
// src/bridge/
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
const stream = new ReadableStream({
|
|
142
|
-
async start(controller) {
|
|
143
|
-
let closed = false;
|
|
144
|
-
const safeEnqueue = /* @__PURE__ */ __name((chunk) => {
|
|
145
|
-
if (closed) return;
|
|
146
|
-
try {
|
|
147
|
-
controller.enqueue(chunk);
|
|
148
|
-
} catch {
|
|
149
|
-
closed = true;
|
|
150
|
-
}
|
|
151
|
-
}, "safeEnqueue");
|
|
152
|
-
try {
|
|
153
|
-
for await (const event of eventStream) {
|
|
154
|
-
if (closed) break;
|
|
155
|
-
const data = JSON.stringify(event);
|
|
156
|
-
const frame = `event: ${event.type}
|
|
157
|
-
data: ${data}
|
|
158
|
-
|
|
159
|
-
`;
|
|
160
|
-
safeEnqueue(encoder.encode(frame));
|
|
161
|
-
}
|
|
162
|
-
} catch (err) {
|
|
163
|
-
if (!closed) {
|
|
164
|
-
const errorEvent = {
|
|
165
|
-
type: "error",
|
|
166
|
-
error: {
|
|
167
|
-
message: err instanceof Error ? err.message : "Internal agent error"
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
const frame = `event: error
|
|
171
|
-
data: ${JSON.stringify(errorEvent)}
|
|
172
|
-
|
|
173
|
-
`;
|
|
174
|
-
safeEnqueue(encoder.encode(frame));
|
|
175
|
-
}
|
|
176
|
-
} finally {
|
|
177
|
-
controller.close();
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
return new Response(stream, {
|
|
182
|
-
status: 200,
|
|
183
|
-
headers: {
|
|
184
|
-
"content-type": "text/event-stream",
|
|
185
|
-
"cache-control": "no-cache",
|
|
186
|
-
connection: "keep-alive"
|
|
187
|
-
}
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
|
-
__name(streamAgentResponse, "streamAgentResponse");
|
|
138
|
+
// src/bridge/present-ui-message-stream.ts
|
|
139
|
+
import { UIMessageStreamPresenter } from "@theokit/presenter";
|
|
140
|
+
import { WIRE_APPROVAL_DETAIL_PART } from "@theokit/presenter/wire";
|
|
191
141
|
|
|
192
|
-
// src/bridge/
|
|
193
|
-
function
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
return
|
|
199
|
-
}
|
|
200
|
-
__name(isToolCall, "isToolCall");
|
|
201
|
-
function isPartialToolCall(e) {
|
|
202
|
-
return e.type === "partial_tool_call";
|
|
203
|
-
}
|
|
204
|
-
__name(isPartialToolCall, "isPartialToolCall");
|
|
205
|
-
function isToolResult(e) {
|
|
206
|
-
return e.type === "tool_result";
|
|
142
|
+
// src/bridge/hitl-call-correlation.ts
|
|
143
|
+
function claim(queues, toolName) {
|
|
144
|
+
const queue = queues.get(toolName);
|
|
145
|
+
if (queue === void 0) return void 0;
|
|
146
|
+
const claimed = queue.shift();
|
|
147
|
+
if (queue.length === 0) queues.delete(toolName);
|
|
148
|
+
return claimed;
|
|
207
149
|
}
|
|
208
|
-
__name(
|
|
209
|
-
function
|
|
210
|
-
|
|
150
|
+
__name(claim, "claim");
|
|
151
|
+
function enqueue(queues, toolName, id) {
|
|
152
|
+
const queue = queues.get(toolName);
|
|
153
|
+
if (queue === void 0) queues.set(toolName, [
|
|
154
|
+
id
|
|
155
|
+
]);
|
|
156
|
+
else queue.push(id);
|
|
211
157
|
}
|
|
212
|
-
__name(
|
|
213
|
-
function
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
158
|
+
__name(enqueue, "enqueue");
|
|
159
|
+
function forget(queues, toolName, id) {
|
|
160
|
+
const queue = queues.get(toolName);
|
|
161
|
+
if (queue === void 0) return;
|
|
162
|
+
const at = queue.indexOf(id);
|
|
163
|
+
if (at === -1) return;
|
|
164
|
+
queue.splice(at, 1);
|
|
165
|
+
if (queue.length === 0) queues.delete(toolName);
|
|
219
166
|
}
|
|
220
|
-
__name(
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
const { walkResult, createRun, getRun } = ctx;
|
|
225
|
-
const basePath = walkResult.route.replace(/\/$/, "");
|
|
226
|
-
const routes = [];
|
|
227
|
-
routes.push({
|
|
228
|
-
method: "POST",
|
|
229
|
-
path: `${basePath}/chat`,
|
|
230
|
-
handler: /* @__PURE__ */ __name(async (request) => {
|
|
231
|
-
let body = null;
|
|
232
|
-
try {
|
|
233
|
-
body = await request.json();
|
|
234
|
-
} catch {
|
|
235
|
-
}
|
|
236
|
-
const message = body?.message;
|
|
237
|
-
if (typeof message !== "string" || message.length === 0) {
|
|
238
|
-
return new Response(JSON.stringify({
|
|
239
|
-
error: {
|
|
240
|
-
code: "BAD_REQUEST",
|
|
241
|
-
message: "message field required"
|
|
242
|
-
}
|
|
243
|
-
}), {
|
|
244
|
-
status: 400,
|
|
245
|
-
headers: {
|
|
246
|
-
"content-type": "application/json"
|
|
247
|
-
}
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
const rawSessionId = body?.sessionId;
|
|
251
|
-
const sessionId = typeof rawSessionId === "string" ? rawSessionId : `session-${Date.now()}`;
|
|
252
|
-
return streamAgentResponse(createRun(message, sessionId));
|
|
253
|
-
}, "handler")
|
|
254
|
-
});
|
|
255
|
-
if (getRun) {
|
|
256
|
-
routes.push({
|
|
257
|
-
method: "GET",
|
|
258
|
-
path: `${basePath}/runs/:runId`,
|
|
259
|
-
handler: /* @__PURE__ */ __name(async (request) => {
|
|
260
|
-
const url = new URL(request.url);
|
|
261
|
-
const runId = url.pathname.split("/").pop() ?? "";
|
|
262
|
-
const run = await getRun(runId);
|
|
263
|
-
if (!run) {
|
|
264
|
-
return new Response(JSON.stringify({
|
|
265
|
-
error: {
|
|
266
|
-
code: "NOT_FOUND",
|
|
267
|
-
message: `Run ${runId} not found`
|
|
268
|
-
}
|
|
269
|
-
}), {
|
|
270
|
-
status: 404,
|
|
271
|
-
headers: {
|
|
272
|
-
"content-type": "application/json"
|
|
273
|
-
}
|
|
274
|
-
});
|
|
275
|
-
}
|
|
276
|
-
return new Response(JSON.stringify(run), {
|
|
277
|
-
status: 200,
|
|
278
|
-
headers: {
|
|
279
|
-
"content-type": "application/json"
|
|
280
|
-
}
|
|
281
|
-
});
|
|
282
|
-
}, "handler")
|
|
283
|
-
});
|
|
167
|
+
__name(forget, "forget");
|
|
168
|
+
var HitlCallCorrelation = class {
|
|
169
|
+
static {
|
|
170
|
+
__name(this, "HitlCallCorrelation");
|
|
284
171
|
}
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
172
|
+
/** Tool name → runtime call ids announced on the wire, not yet claimed by an approval. */
|
|
173
|
+
#unclaimedCalls = /* @__PURE__ */ new Map();
|
|
174
|
+
/** Tool name → approval ids announced on the wire, not yet claimed by a runtime call. */
|
|
175
|
+
#unclaimedApprovals = /* @__PURE__ */ new Map();
|
|
176
|
+
/** Runtime call id → the id the wire already uses for the same logical call. */
|
|
177
|
+
#announcedAs = /* @__PURE__ */ new Map();
|
|
178
|
+
/** Record a runtime tool call and say whether the wire has already announced it. */
|
|
179
|
+
announceToolCall(toolName, callId) {
|
|
180
|
+
const announced = claim(this.#unclaimedApprovals, toolName);
|
|
181
|
+
if (announced === void 0) {
|
|
182
|
+
enqueue(this.#unclaimedCalls, toolName, callId);
|
|
183
|
+
return "announce";
|
|
184
|
+
}
|
|
185
|
+
this.#announcedAs.set(callId, announced);
|
|
186
|
+
return "already-announced";
|
|
187
|
+
}
|
|
188
|
+
/** The `toolCallId` an approval chunk must carry: the runtime id when known, else the approval id. */
|
|
189
|
+
approvalToolCallId(toolName, approvalId) {
|
|
190
|
+
const announced = claim(this.#unclaimedCalls, toolName);
|
|
191
|
+
if (announced !== void 0) return announced;
|
|
192
|
+
enqueue(this.#unclaimedApprovals, toolName, approvalId);
|
|
193
|
+
return approvalId;
|
|
194
|
+
}
|
|
195
|
+
/** The `toolCallId` a result must carry — the id its call was announced under. */
|
|
196
|
+
resultToolCallId(toolName, callId) {
|
|
197
|
+
const announced = this.#announcedAs.get(callId);
|
|
198
|
+
if (announced !== void 0) {
|
|
199
|
+
this.#announcedAs.delete(callId);
|
|
200
|
+
return announced;
|
|
201
|
+
}
|
|
202
|
+
claim(this.#unclaimedApprovals, toolName);
|
|
203
|
+
forget(this.#unclaimedCalls, toolName, callId);
|
|
204
|
+
return callId;
|
|
205
|
+
}
|
|
206
|
+
};
|
|
288
207
|
|
|
289
208
|
// src/bridge/present-ui-message-stream.ts
|
|
290
|
-
import { UIMessageStreamPresenter } from "@theokit/presenter";
|
|
291
209
|
function toAgentOutputEvent(e) {
|
|
292
210
|
switch (e.type) {
|
|
293
211
|
case "text_delta":
|
|
@@ -321,13 +239,18 @@ function toAgentOutputEvent(e) {
|
|
|
321
239
|
}
|
|
322
240
|
__name(toAgentOutputEvent, "toAgentOutputEvent");
|
|
323
241
|
function doneToMetadata(event) {
|
|
324
|
-
return
|
|
325
|
-
usage: event.usage,
|
|
326
|
-
durationMs: event.durationMs
|
|
327
|
-
} : {
|
|
242
|
+
return {
|
|
328
243
|
usage: event.usage,
|
|
329
244
|
durationMs: event.durationMs,
|
|
330
|
-
cost:
|
|
245
|
+
...event.cost === void 0 ? {} : {
|
|
246
|
+
cost: event.cost
|
|
247
|
+
},
|
|
248
|
+
...event.stopReason === void 0 ? {} : {
|
|
249
|
+
stopReason: event.stopReason
|
|
250
|
+
},
|
|
251
|
+
...event.model === void 0 ? {} : {
|
|
252
|
+
model: event.model
|
|
253
|
+
}
|
|
331
254
|
};
|
|
332
255
|
}
|
|
333
256
|
__name(doneToMetadata, "doneToMetadata");
|
|
@@ -343,6 +266,7 @@ function dataPart(type, data) {
|
|
|
343
266
|
};
|
|
344
267
|
}
|
|
345
268
|
__name(dataPart, "dataPart");
|
|
269
|
+
var MASK_ERROR = /* @__PURE__ */ __name(() => "An error occurred.", "MASK_ERROR");
|
|
346
270
|
function* errorChunks(errorText, code) {
|
|
347
271
|
if (code !== void 0) yield dataPart(ERROR_CODE_DATA_PART, {
|
|
348
272
|
code
|
|
@@ -386,10 +310,26 @@ function diagnosticDataPart(event) {
|
|
|
386
310
|
}
|
|
387
311
|
}
|
|
388
312
|
__name(diagnosticDataPart, "diagnosticDataPart");
|
|
313
|
+
function correlateToolIds(correlation, output) {
|
|
314
|
+
if (output.type === "tool-call") {
|
|
315
|
+
return correlation.announceToolCall(output.name, output.callId) === "already-announced" ? null : output;
|
|
316
|
+
}
|
|
317
|
+
if (output.type === "tool-result") {
|
|
318
|
+
return {
|
|
319
|
+
...output,
|
|
320
|
+
callId: correlation.resultToolCallId(output.name, output.callId)
|
|
321
|
+
};
|
|
322
|
+
}
|
|
323
|
+
return output;
|
|
324
|
+
}
|
|
325
|
+
__name(correlateToolIds, "correlateToolIds");
|
|
389
326
|
async function* presentUIMessageStream(events, opts) {
|
|
327
|
+
const onError = opts.onError ?? MASK_ERROR;
|
|
390
328
|
const presenter = new UIMessageStreamPresenter({
|
|
391
|
-
textId: opts.textId
|
|
329
|
+
textId: opts.textId,
|
|
330
|
+
onError
|
|
392
331
|
});
|
|
332
|
+
const correlation = new HitlCallCorrelation();
|
|
393
333
|
yield {
|
|
394
334
|
type: "start"
|
|
395
335
|
};
|
|
@@ -398,25 +338,32 @@ async function* presentUIMessageStream(events, opts) {
|
|
|
398
338
|
for await (const event of events) {
|
|
399
339
|
const output = toAgentOutputEvent(event);
|
|
400
340
|
if (output !== null) {
|
|
401
|
-
|
|
341
|
+
const correlated = correlateToolIds(correlation, output);
|
|
342
|
+
if (correlated !== null) yield* presenter.present(correlated);
|
|
402
343
|
continue;
|
|
403
344
|
}
|
|
404
345
|
if (event.type === "approval_required") {
|
|
405
346
|
yield* presenter.closeBlock();
|
|
406
|
-
|
|
407
|
-
|
|
347
|
+
const toolCallId = correlation.approvalToolCallId(event.toolName, event.callId);
|
|
348
|
+
if (!presenter.hasSeen(toolCallId)) {
|
|
349
|
+
presenter.markSeen(toolCallId);
|
|
408
350
|
yield {
|
|
409
351
|
type: "tool-input-available",
|
|
410
|
-
toolCallId
|
|
352
|
+
toolCallId,
|
|
411
353
|
toolName: event.toolName,
|
|
412
354
|
input: event.input ?? {},
|
|
413
355
|
dynamic: true
|
|
414
356
|
};
|
|
415
357
|
}
|
|
358
|
+
yield dataPart(WIRE_APPROVAL_DETAIL_PART, {
|
|
359
|
+
approvalId: event.callId,
|
|
360
|
+
question: event.question,
|
|
361
|
+
timeoutMs: event.timeoutMs
|
|
362
|
+
});
|
|
416
363
|
yield {
|
|
417
364
|
type: "tool-approval-request",
|
|
418
365
|
approvalId: event.callId,
|
|
419
|
-
toolCallId
|
|
366
|
+
toolCallId
|
|
420
367
|
};
|
|
421
368
|
continue;
|
|
422
369
|
}
|
|
@@ -427,7 +374,13 @@ async function* presentUIMessageStream(events, opts) {
|
|
|
427
374
|
continue;
|
|
428
375
|
}
|
|
429
376
|
if (event.type === "error") {
|
|
430
|
-
|
|
377
|
+
{
|
|
378
|
+
const code = event.code;
|
|
379
|
+
yield* errorChunks(onError({
|
|
380
|
+
message: event.message,
|
|
381
|
+
code
|
|
382
|
+
}), code);
|
|
383
|
+
}
|
|
431
384
|
break;
|
|
432
385
|
}
|
|
433
386
|
if (event.type === "done") {
|
|
@@ -437,12 +390,163 @@ async function* presentUIMessageStream(events, opts) {
|
|
|
437
390
|
}
|
|
438
391
|
} catch (err) {
|
|
439
392
|
const code = err.code;
|
|
440
|
-
|
|
393
|
+
const codeOrUndefined = typeof code === "string" ? code : void 0;
|
|
394
|
+
yield* errorChunks(onError({
|
|
395
|
+
message: String(err),
|
|
396
|
+
code: codeOrUndefined
|
|
397
|
+
}), codeOrUndefined);
|
|
441
398
|
}
|
|
442
399
|
yield* presenter.finish(turnMetadata);
|
|
443
400
|
}
|
|
444
401
|
__name(presentUIMessageStream, "presentUIMessageStream");
|
|
445
402
|
|
|
403
|
+
// src/bridge/agent-sse-handler.ts
|
|
404
|
+
var encoder = new TextEncoder();
|
|
405
|
+
var DONE_FRAME = "data: [DONE]\n\n";
|
|
406
|
+
function streamAgentResponse(eventStream, opts = {}) {
|
|
407
|
+
const stream = new ReadableStream({
|
|
408
|
+
async start(controller) {
|
|
409
|
+
let closed = false;
|
|
410
|
+
const safeEnqueue = /* @__PURE__ */ __name((chunk) => {
|
|
411
|
+
if (closed) return;
|
|
412
|
+
try {
|
|
413
|
+
controller.enqueue(chunk);
|
|
414
|
+
} catch {
|
|
415
|
+
closed = true;
|
|
416
|
+
}
|
|
417
|
+
}, "safeEnqueue");
|
|
418
|
+
const chunks = presentUIMessageStream(eventStream, {
|
|
419
|
+
textId: crypto.randomUUID(),
|
|
420
|
+
...opts.onError !== void 0 ? {
|
|
421
|
+
onError: opts.onError
|
|
422
|
+
} : {}
|
|
423
|
+
});
|
|
424
|
+
try {
|
|
425
|
+
for await (const chunk of chunks) {
|
|
426
|
+
if (closed) break;
|
|
427
|
+
const data = JSON.stringify(chunk);
|
|
428
|
+
safeEnqueue(encoder.encode(`event: ${chunk.type}
|
|
429
|
+
data: ${data}
|
|
430
|
+
|
|
431
|
+
`));
|
|
432
|
+
}
|
|
433
|
+
safeEnqueue(encoder.encode(DONE_FRAME));
|
|
434
|
+
} catch {
|
|
435
|
+
} finally {
|
|
436
|
+
controller.close();
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
});
|
|
440
|
+
return new Response(stream, {
|
|
441
|
+
status: 200,
|
|
442
|
+
headers: {
|
|
443
|
+
"content-type": "text/event-stream",
|
|
444
|
+
// #383 — proxies buffer a stream that says nothing about buffering. `connection` is
|
|
445
|
+
// deliberately absent: it is hop-by-hop and Node's HTTP/2 rejects it.
|
|
446
|
+
"cache-control": "no-cache",
|
|
447
|
+
"x-accel-buffering": "no"
|
|
448
|
+
}
|
|
449
|
+
});
|
|
450
|
+
}
|
|
451
|
+
__name(streamAgentResponse, "streamAgentResponse");
|
|
452
|
+
|
|
453
|
+
// src/bridge/agent-stream-events.ts
|
|
454
|
+
function isTextDelta(e) {
|
|
455
|
+
return e.type === "text_delta";
|
|
456
|
+
}
|
|
457
|
+
__name(isTextDelta, "isTextDelta");
|
|
458
|
+
function isToolCall(e) {
|
|
459
|
+
return e.type === "tool_call";
|
|
460
|
+
}
|
|
461
|
+
__name(isToolCall, "isToolCall");
|
|
462
|
+
function isPartialToolCall(e) {
|
|
463
|
+
return e.type === "partial_tool_call";
|
|
464
|
+
}
|
|
465
|
+
__name(isPartialToolCall, "isPartialToolCall");
|
|
466
|
+
function isToolResult(e) {
|
|
467
|
+
return e.type === "tool_result";
|
|
468
|
+
}
|
|
469
|
+
__name(isToolResult, "isToolResult");
|
|
470
|
+
function isDone(e) {
|
|
471
|
+
return e.type === "done";
|
|
472
|
+
}
|
|
473
|
+
__name(isDone, "isDone");
|
|
474
|
+
function isError(e) {
|
|
475
|
+
return e.type === "error";
|
|
476
|
+
}
|
|
477
|
+
__name(isError, "isError");
|
|
478
|
+
function isApprovalRequired(e) {
|
|
479
|
+
return e.type === "approval_required";
|
|
480
|
+
}
|
|
481
|
+
__name(isApprovalRequired, "isApprovalRequired");
|
|
482
|
+
|
|
483
|
+
// src/bridge/agent-route-generator.ts
|
|
484
|
+
function generateAgentRoutes(ctx) {
|
|
485
|
+
const { walkResult, createRun, getRun } = ctx;
|
|
486
|
+
const basePath = walkResult.route.replace(/\/$/, "");
|
|
487
|
+
const routes = [];
|
|
488
|
+
routes.push({
|
|
489
|
+
method: "POST",
|
|
490
|
+
path: `${basePath}/chat`,
|
|
491
|
+
handler: /* @__PURE__ */ __name(async (request) => {
|
|
492
|
+
let body = null;
|
|
493
|
+
try {
|
|
494
|
+
body = await request.json();
|
|
495
|
+
} catch {
|
|
496
|
+
}
|
|
497
|
+
const message = body?.message;
|
|
498
|
+
if (typeof message !== "string" || message.length === 0) {
|
|
499
|
+
return new Response(JSON.stringify({
|
|
500
|
+
error: {
|
|
501
|
+
code: "BAD_REQUEST",
|
|
502
|
+
message: "message field required"
|
|
503
|
+
}
|
|
504
|
+
}), {
|
|
505
|
+
status: 400,
|
|
506
|
+
headers: {
|
|
507
|
+
"content-type": "application/json"
|
|
508
|
+
}
|
|
509
|
+
});
|
|
510
|
+
}
|
|
511
|
+
const rawSessionId = body?.sessionId;
|
|
512
|
+
const sessionId = typeof rawSessionId === "string" ? rawSessionId : `session-${Date.now()}`;
|
|
513
|
+
return streamAgentResponse(createRun(message, sessionId));
|
|
514
|
+
}, "handler")
|
|
515
|
+
});
|
|
516
|
+
if (getRun) {
|
|
517
|
+
routes.push({
|
|
518
|
+
method: "GET",
|
|
519
|
+
path: `${basePath}/runs/:runId`,
|
|
520
|
+
handler: /* @__PURE__ */ __name(async (request) => {
|
|
521
|
+
const url = new URL(request.url);
|
|
522
|
+
const runId = url.pathname.split("/").pop() ?? "";
|
|
523
|
+
const run = await getRun(runId);
|
|
524
|
+
if (!run) {
|
|
525
|
+
return new Response(JSON.stringify({
|
|
526
|
+
error: {
|
|
527
|
+
code: "NOT_FOUND",
|
|
528
|
+
message: `Run ${runId} not found`
|
|
529
|
+
}
|
|
530
|
+
}), {
|
|
531
|
+
status: 404,
|
|
532
|
+
headers: {
|
|
533
|
+
"content-type": "application/json"
|
|
534
|
+
}
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
return new Response(JSON.stringify(run), {
|
|
538
|
+
status: 200,
|
|
539
|
+
headers: {
|
|
540
|
+
"content-type": "application/json"
|
|
541
|
+
}
|
|
542
|
+
});
|
|
543
|
+
}, "handler")
|
|
544
|
+
});
|
|
545
|
+
}
|
|
546
|
+
return routes;
|
|
547
|
+
}
|
|
548
|
+
__name(generateAgentRoutes, "generateAgentRoutes");
|
|
549
|
+
|
|
446
550
|
// src/bridge/agent-builder.ts
|
|
447
551
|
var ContextualTool = {
|
|
448
552
|
/**
|
|
@@ -472,6 +576,12 @@ function makeBuilder(config) {
|
|
|
472
576
|
...config,
|
|
473
577
|
reasoningEffort: effort
|
|
474
578
|
}), "reasoningEffort"),
|
|
579
|
+
// theokit#363 — accumulates like every other scalar; validation happens once, at `.build()` →
|
|
580
|
+
// `defineAgent`, so the fluent and functional surfaces cannot disagree about what is valid.
|
|
581
|
+
maxIterations: /* @__PURE__ */ __name((limit) => makeBuilder({
|
|
582
|
+
...config,
|
|
583
|
+
maxIterations: limit
|
|
584
|
+
}), "maxIterations"),
|
|
475
585
|
context: /* @__PURE__ */ __name((value) => makeBuilder({
|
|
476
586
|
...config,
|
|
477
587
|
context: value
|
|
@@ -706,7 +816,8 @@ function streamAgentUIMessages(compiled, apiKey, input) {
|
|
|
706
816
|
const durableCheckpoint = compiled.checkpoint?.storage === "filesystem";
|
|
707
817
|
const events = durableCheckpoint ? appendCheckpointSaved(source, input.sessionId) : source;
|
|
708
818
|
return presentUIMessageStream(events, {
|
|
709
|
-
textId
|
|
819
|
+
textId,
|
|
820
|
+
onError: input.onError
|
|
710
821
|
});
|
|
711
822
|
}
|
|
712
823
|
__name(streamAgentUIMessages, "streamAgentUIMessages");
|
|
@@ -1082,6 +1193,7 @@ export {
|
|
|
1082
1193
|
compileTools,
|
|
1083
1194
|
createAgentExecutionContext,
|
|
1084
1195
|
isAgentContext,
|
|
1196
|
+
presentUIMessageStream,
|
|
1085
1197
|
streamAgentResponse,
|
|
1086
1198
|
isTextDelta,
|
|
1087
1199
|
isToolCall,
|
|
@@ -1091,7 +1203,6 @@ export {
|
|
|
1091
1203
|
isError,
|
|
1092
1204
|
isApprovalRequired,
|
|
1093
1205
|
generateAgentRoutes,
|
|
1094
|
-
presentUIMessageStream,
|
|
1095
1206
|
ContextualTool,
|
|
1096
1207
|
AgentBuilder,
|
|
1097
1208
|
AgentDefinitionError,
|
|
@@ -1107,4 +1218,4 @@ export {
|
|
|
1107
1218
|
generateAgentManifest,
|
|
1108
1219
|
agentsPlugin
|
|
1109
1220
|
};
|
|
1110
|
-
//# sourceMappingURL=chunk-
|
|
1221
|
+
//# sourceMappingURL=chunk-T5MBTKA2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/errors.ts","../src/bridge/compile-context-window.ts","../src/bridge/compile-skills.ts","../src/bridge/agent-compiler.ts","../src/bridge/agent-execution-context.ts","../src/bridge/present-ui-message-stream.ts","../src/bridge/hitl-call-correlation.ts","../src/bridge/agent-sse-handler.ts","../src/bridge/agent-stream-events.ts","../src/bridge/agent-route-generator.ts","../src/bridge/agent-builder.ts","../src/bridge/agent-endpoint.ts","../src/bridge/api-error-handler.ts","../src/bridge/mcp-resolver.ts","../src/bridge/mcp-file.ts","../src/manifest/agent-manifest.ts","../src/theokit-plugin.ts"],"mappings":"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","names":["ConfigurationError","STRATEGY_KNOBS","compileContextWindow","options","context","maxTokens","opts","metadataOnlyKnobs","filter","knob","undefined","compileSkills","options","autoDiscover","autoInject","enabled","include","SDK_TOOL_NAME","SDK_TOOL_NAME_MAX_LENGTH","SDK_TOOL_NAME_CHARSET","SDK_RESERVED_TOOL_NAMES","Set","SDK_RESERVED_TOOL_PREFIX","toolRuntimeName","namespace","toolName","trim","length","where","ConfigurationError","name","test","String","has","startsWith","join","compileHitlGates","toolboxes","gates","Map","tb","tool","tools","hitl","set","config","compileTools","toolboxInstances","instance","get","class","handler","propertyKey","push","description","inputSchema","input","call","createAgentExecutionContext","base","agent","run","toolCall","getRequest","getUrl","getClass","getMethodName","getAgent","getRun","getToolCall","isAgentContext","ctx","UIMessageStreamPresenter","WIRE_APPROVAL_DETAIL_PART","claim","queues","toolName","queue","get","undefined","claimed","shift","length","delete","enqueue","id","set","push","forget","at","indexOf","splice","HitlCallCorrelation","Map","announceToolCall","callId","announced","approvalToolCallId","approvalId","resultToolCallId","toAgentOutputEvent","e","type","text","content","callId","name","toolName","input","result","output","isError","doneToMetadata","event","usage","durationMs","cost","undefined","stopReason","model","ERROR_CODE_DATA_PART","INPUT_REQUESTED_DATA_PART","TASK_PROGRESS_DATA_PART","SHELL_OUTPUT_DATA_PART","dataPart","data","transient","MASK_ERROR","errorChunks","errorText","code","diagnosticDataPart","checkpointId","resumeToken","step","requestId","status","correlateToolIds","correlation","announceToolCall","resultToolCallId","presentUIMessageStream","events","opts","onError","presenter","UIMessageStreamPresenter","textId","HitlCallCorrelation","turnMetadata","correlated","present","closeBlock","toolCallId","approvalToolCallId","hasSeen","markSeen","dynamic","WIRE_APPROVAL_DETAIL_PART","approvalId","question","timeoutMs","diagnostic","message","err","codeOrUndefined","String","finish","encoder","TextEncoder","DONE_FRAME","streamAgentResponse","eventStream","opts","stream","ReadableStream","start","controller","closed","safeEnqueue","chunk","enqueue","chunks","presentUIMessageStream","textId","crypto","randomUUID","onError","undefined","data","JSON","stringify","encode","type","close","Response","status","headers","isTextDelta","e","type","isToolCall","isPartialToolCall","isToolResult","isDone","isError","isApprovalRequired","generateAgentRoutes","ctx","walkResult","createRun","getRun","basePath","route","replace","routes","push","method","path","handler","request","body","json","message","length","Response","JSON","stringify","error","code","status","headers","rawSessionId","sessionId","Date","now","streamAgentResponse","url","URL","runId","pathname","split","pop","run","ContextualTool","of","tool","_requiredContext","makeBuilder","config","runtime","input","schema","model","id","system","prompt","reasoningEffort","effort","maxIterations","limit","context","value","tools","list","when","condition","apply","builder","guardrail","g","guardrails","gs","approval","toolName","options","approvals","map","skills","selection","settingSources","memory","settings","hooks","plugins","mcp","servers","mcpServers","use","preset","build","defineAgent","AgentBuilder","create","TheokitAgentError","AgentDefinitionError","TheokitAgentError","name","source","code","isRetryable","extractDefaultExport","mod","default","isCompiledAgentOptions","value","v","Array","isArray","tools","agents","compileAgentModule","def","isAgentDefinition","compileAgentDefinition","asAgentStream","events","e","EventQueue","push","item","r","shift","done","close","splice","undefined","drain","length","next","Promise","resolve","appendCheckpointSaved","sessionId","emitted","checkpoint","type","checkpointId","crypto","randomUUID","step","resumeToken","ev","streamAgentUIMessages","compiled","apiKey","input","textId","overrides","cwd","baseDir","images","onRunEvent","hitl","gated","size","createSdkAgentStream","message","queue","signal","addEventListener","once","plugin","createHitlPlugin","emit","awaitApproval","sdkStream","plugins","err","Error","String","retryable","durableCheckpoint","storage","presentUIMessageStream","onError","DEFAULT_MAX_ATTEMPTS","runWithApiErrorHandling","thunk","policy","maxAttempts","attempt","error","decision","processApiError","retry","fallback","undefined","createApiErrorHandler","resolveMcpServers","selection","ctx","undefined","resolved","Error","mcpRegistry","config","registry","apps","composio","command","args","length","join","env","COMPOSIO_API_KEY","apiKey","profile","MCP_RUN_API_KEY","JSON","stringify","mcpToolApprovals","specs","out","tool","spec","Object","entries","question","existsSync","readFileSync","join","TheokitAgentError","warningChannel","opts","onWarn","warning","process","stderr","write","McpFileError","TheokitAgentError","name","message","MCP_FILENAME","loadMcpJson","cwd","path","join","existsSync","text","readFileSync","err","describeIt","parsed","JSON","parse","parseMcpJson","raw","source","Array","isArray","serversRaw","mcpServers","undefined","out","entryRaw","Object","entries","reason","validateEntry","buildEntry","entry","hasUrl","url","hasCommand","command","validateRemote","validateStdio","length","args","isStringArray","env","isStringRecord","URL","type","headers","requestTimeoutMs","remote","auth","stdio","Error","String","v","every","x","values","generateAgentManifest","sources","version","generatedAt","Date","toISOString","agents","map","r","name","agentConfig","route","model","stream","mainLoop","method","String","propertyKey","strategy","guards","g","interceptors","i","tools","toolboxes","flatMap","tb","t","namespace","config","description","risk","approval","undefined","capabilities","trace","audit","gateway","platforms","sessionStrategy","subAgents","subAgentClasses","cls","memory","provider","embeddings","fts","scope","skills","include","mcpServers","Object","keys","validateUniqueRoutes","results","seen","Map","r","existing","get","route","undefined","Error","agentConfig","name","set","agentsPlugin","opts","routes","register","app","addHook","pluginCtx","initRoutes","request","url","URL","method","toUpperCase","matched","matchRoute","pathname","handler","allRoutes","routeIdentities","entry","agents","push","createRun","createRunFactory","compiled","defaultCreateRun","generateAgentRoutes","walkResult","compiledOptions","compileRoutePatterns","_message","_sessionId","Promise","resolve","type","runId","Date","now","agentName","model","code","message","retryable","map","path","includes","regexSource","replace","regex","RegExp","find","test"]}
|
package/dist/client-react.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WireMessage } from '@theokit/presenter/wire';
|
|
2
|
-
import { R as RequestContext, U as UseAgentStatus, A as ApprovalDecision, a as AgentHandle, b as AgentTransport } from './agent-handle-
|
|
2
|
+
import { R as RequestContext, U as UseAgentStatus, P as PendingApproval, A as ApprovalDecision, a as AgentHandle, b as AgentTransport } from './agent-handle-rEWdERuv.js';
|
|
3
3
|
import '@theokit/sdk/errors';
|
|
4
4
|
|
|
5
5
|
interface UseAgentReturn<TInput = unknown, TToolNames extends string = string> {
|
|
@@ -20,6 +20,28 @@ interface UseAgentReturn<TInput = unknown, TToolNames extends string = string> {
|
|
|
20
20
|
abort: () => void;
|
|
21
21
|
/** Clear messages + error, back to idle. */
|
|
22
22
|
reset: () => void;
|
|
23
|
+
/**
|
|
24
|
+
* The HITL decisions this turn is parked on — empty whenever nothing is outstanding
|
|
25
|
+
* (usetheokit/theokit#392).
|
|
26
|
+
*
|
|
27
|
+
* Each entry carries the id `approve` takes plus what a prompt needs to name the action: the
|
|
28
|
+
* tool, its resolved input, the declared question and the window. Render it directly:
|
|
29
|
+
*
|
|
30
|
+
* ```tsx
|
|
31
|
+
* {pendingApprovals.map((a) => (
|
|
32
|
+
* <div key={a.approvalId}>
|
|
33
|
+
* {a.question ?? `Run ${a.toolName}?`}
|
|
34
|
+
* <button onClick={() => void approve(a.approvalId, { approved: true })}>Approve</button>
|
|
35
|
+
* <button onClick={() => void approve(a.approvalId, { approved: false })}>Deny</button>
|
|
36
|
+
* </div>
|
|
37
|
+
* ))}
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* The same decision is on the transcript too — the gated tool's part sits in
|
|
41
|
+
* `state: 'approval-requested'` with the id under `approval.id` — so a surface that renders tool
|
|
42
|
+
* parts inline can read it there instead. This field exists so one does not have to.
|
|
43
|
+
*/
|
|
44
|
+
pendingApprovals: PendingApproval[];
|
|
23
45
|
/** Settle a paused HITL approval (HTTP `POST /approve/<id>` for web; the inline callback in-process). */
|
|
24
46
|
approve: (approvalId: string, decision: ApprovalDecision) => Promise<void>;
|
|
25
47
|
/** Resume an interrupted stream (M37 durable transport for web; a no-op in-process). */
|
|
@@ -55,4 +77,4 @@ interface UseAgentOptions {
|
|
|
55
77
|
*/
|
|
56
78
|
declare function useAgent<TInput = unknown>(binding: string | AgentHandle<TInput> | AgentTransport, options?: UseAgentOptions): UseAgentReturn<TInput>;
|
|
57
79
|
|
|
58
|
-
export { type UseAgentOptions, type UseAgentReturn, UseAgentStatus, useAgent };
|
|
80
|
+
export { PendingApproval, type UseAgentOptions, type UseAgentReturn, UseAgentStatus, useAgent };
|