super-agent-sdk 1.0.6 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,20 +1,20 @@
1
- function f(a) {
2
- if (Array.isArray(a)) return a.map((e) => f(e));
3
- if (a && typeof a == "object" && a.constructor === Object) {
1
+ function u(r) {
2
+ if (Array.isArray(r)) return r.map((e) => u(e));
3
+ if (r && typeof r == "object" && r.constructor === Object) {
4
4
  const e = {};
5
- for (const [t, n] of Object.entries(a)) {
6
- const o = t.replace(/_([a-z])/g, (r, s) => s.toUpperCase());
7
- e[o] = f(n);
5
+ for (const [t, s] of Object.entries(r)) {
6
+ const o = t.replace(/_([a-z])/g, (n, a) => a.toUpperCase());
7
+ e[o] = u(s);
8
8
  }
9
9
  return e;
10
10
  }
11
- return a;
11
+ return r;
12
12
  }
13
- const w = "/api/agent/runtime/v1";
14
- class I {
13
+ const I = "/api/agent/runtime/v1";
14
+ class w {
15
15
  constructor(e) {
16
16
  this.refreshing = null;
17
- const t = e.baseUrl ?? w;
17
+ const t = e.baseUrl ?? I;
18
18
  this.baseUrl = t.replace(/\/$/, ""), this.tokenGateway = e.tokenGateway.replace(/\/$/, ""), this.appId = e.appId ?? "", this.token = e.token ?? "", this.botId = e.botId, this.isAbsoluteUrl = /^https?:\/\//.test(this.baseUrl), this.isAbsoluteGateway = /^https?:\/\//.test(this.tokenGateway);
19
19
  }
20
20
  getBotId() {
@@ -32,18 +32,18 @@ class I {
32
32
  }
33
33
  /** POST {origin}{tokenGateway}/v1/token — 获取 token + appId */
34
34
  async fetchToken() {
35
- const t = `${this.isAbsoluteGateway ? this.tokenGateway : `${this.getOrigin()}${this.tokenGateway}`}/v1/token`, n = await fetch(t, {
35
+ const t = `${this.isAbsoluteGateway ? this.tokenGateway : `${this.getOrigin()}${this.tokenGateway}`}/v1/token`, s = await fetch(t, {
36
36
  method: "POST",
37
37
  headers: { "Content-Type": "application/json" },
38
38
  body: JSON.stringify({ botId: this.botId })
39
39
  });
40
- if (!n.ok)
41
- throw new Error(`HTTP ${n.status}: ${n.statusText}`);
42
- const o = await n.json();
40
+ if (!s.ok)
41
+ throw new Error(`HTTP ${s.status}: ${s.statusText}`);
42
+ const o = await s.json();
43
43
  if (o.code !== "200")
44
44
  throw new Error(o.message || `API error: ${o.code}`);
45
- const r = f(o.data);
46
- return this.token = r.token, r.appId && !this.appId && (this.appId = r.appId), r.token;
45
+ const n = u(o.data);
46
+ return this.token = n.token, n.appId && !this.appId && (this.appId = n.appId), n.token;
47
47
  }
48
48
  headers(e) {
49
49
  return {
@@ -66,30 +66,30 @@ class I {
66
66
  this.refreshing = null;
67
67
  }
68
68
  }
69
- async request(e, t, n) {
69
+ async request(e, t, s) {
70
70
  if (!this.token && !await this.handleTokenRefresh())
71
71
  throw new Error("SDK token not available: POST /token failed");
72
72
  let o = this.isAbsoluteUrl ? `${this.baseUrl}${t}` : `${this.getOrigin()}${this.baseUrl}${t}`;
73
- if (n != null && n.params) {
73
+ if (s != null && s.params) {
74
74
  const i = new URLSearchParams();
75
- for (const [l, d] of Object.entries(n.params))
76
- d != null && i.set(l, String(d));
75
+ for (const [d, l] of Object.entries(s.params))
76
+ l != null && i.set(d, String(l));
77
77
  const c = i.toString();
78
78
  c && (o += `?${c}`);
79
79
  }
80
- const r = await fetch(o, {
80
+ const n = await fetch(o, {
81
81
  method: e,
82
82
  headers: this.headers(),
83
- body: n != null && n.body ? JSON.stringify(n.body) : void 0
83
+ body: s != null && s.body ? JSON.stringify(s.body) : void 0
84
84
  });
85
- if (r.status === 401 && !(n != null && n.retry) && await this.handleTokenRefresh())
86
- return this.request(e, t, { ...n, retry: !0 });
87
- if (!r.ok)
88
- throw new Error(`HTTP ${r.status}: ${r.statusText}`);
89
- const s = await r.json();
90
- if (s.code !== "200")
91
- throw new Error(s.message || `API error: ${s.code}`);
92
- return f(s.data);
85
+ if (n.status === 401 && !(s != null && s.retry) && await this.handleTokenRefresh())
86
+ return this.request(e, t, { ...s, retry: !0 });
87
+ if (!n.ok)
88
+ throw new Error(`HTTP ${n.status}: ${n.statusText}`);
89
+ const a = await n.json();
90
+ if (a.code !== "200")
91
+ throw new Error(a.message || `API error: ${a.code}`);
92
+ return u(a.data);
93
93
  }
94
94
  get(e, t) {
95
95
  return this.request("GET", e, { params: t });
@@ -104,26 +104,26 @@ class I {
104
104
  return this.request("DELETE", e);
105
105
  }
106
106
  /** For SSE streaming — returns raw Response (no envelope unwrap) */
107
- async streamPost(e, t, n) {
107
+ async streamPost(e, t, s) {
108
108
  if (!this.token && !await this.handleTokenRefresh())
109
109
  throw new Error("SDK token not available: POST /token failed");
110
- const o = this.isAbsoluteUrl ? `${this.baseUrl}${e}` : `${this.getOrigin()}${this.baseUrl}${e}`, r = await fetch(o, {
110
+ const o = this.isAbsoluteUrl ? `${this.baseUrl}${e}` : `${this.getOrigin()}${this.baseUrl}${e}`, n = await fetch(o, {
111
111
  method: "POST",
112
112
  headers: this.headers(),
113
113
  body: JSON.stringify(t),
114
- signal: n
114
+ signal: s
115
115
  });
116
- return r.status === 401 && await this.handleTokenRefresh() ? fetch(o, {
116
+ return n.status === 401 && await this.handleTokenRefresh() ? fetch(o, {
117
117
  method: "POST",
118
118
  headers: this.headers(),
119
119
  body: JSON.stringify(t),
120
- signal: n
121
- }) : r;
120
+ signal: s
121
+ }) : n;
122
122
  }
123
123
  }
124
- function y(a) {
125
- const e = a.split(`
126
- `).map((n) => n.trim()).filter((n) => n.startsWith("data:")).map((n) => n.slice(5).trim());
124
+ function y(r) {
125
+ const e = r.split(`
126
+ `).map((s) => s.trim()).filter((s) => s.startsWith("data:")).map((s) => s.slice(5).trim());
127
127
  if (!e.length) return null;
128
128
  let t;
129
129
  try {
@@ -166,6 +166,12 @@ function y(a) {
166
166
  sessionId: t.sessionId ?? t.session_id ?? "",
167
167
  messageId: t.messageId ?? t.message_id
168
168
  };
169
+ case "stop":
170
+ return {
171
+ type: "stop",
172
+ content: t.content ?? "",
173
+ sessionId: t.sessionId ?? t.session_id ?? ""
174
+ };
169
175
  case "error":
170
176
  return { type: "error", content: t.message ?? "Unknown error" };
171
177
  case "interrupt":
@@ -189,216 +195,254 @@ function y(a) {
189
195
  return null;
190
196
  }
191
197
  }
192
- async function m(a, e, t) {
193
- if (!a.body) {
198
+ async function m(r, e, t) {
199
+ if (!r.body) {
194
200
  t(new Error("Response body is null"));
195
201
  return;
196
202
  }
197
- const n = a.body.getReader(), o = new TextDecoder();
198
- let r = "";
203
+ const s = r.body.getReader(), o = new TextDecoder();
204
+ let n = "";
199
205
  try {
200
206
  for (; ; ) {
201
- const { value: s, done: i } = await n.read();
207
+ const { value: a, done: i } = await s.read();
202
208
  if (i) break;
203
- r += o.decode(s, { stream: !0 });
209
+ n += o.decode(a, { stream: !0 });
204
210
  let c;
205
- for (; (c = r.indexOf(`
211
+ for (; (c = n.indexOf(`
206
212
 
207
213
  `)) !== -1; ) {
208
- const l = r.slice(0, c);
209
- r = r.slice(c + 2);
210
- const d = y(l);
211
- d && e(d);
214
+ const d = n.slice(0, c);
215
+ n = n.slice(c + 2);
216
+ const l = y(d);
217
+ l && e(l);
212
218
  }
213
219
  }
214
- if (r.trim()) {
215
- const s = y(r);
216
- s && e(s);
220
+ if (n.trim()) {
221
+ const a = y(n);
222
+ a && e(a);
217
223
  }
218
- } catch (s) {
219
- (s == null ? void 0 : s.name) !== "AbortError" && t(s instanceof Error ? s : new Error(String(s)));
224
+ } catch (a) {
225
+ (a == null ? void 0 : a.name) !== "AbortError" && t(a instanceof Error ? a : new Error(String(a)));
220
226
  } finally {
221
227
  try {
222
- n.releaseLock();
228
+ s.releaseLock();
223
229
  } catch {
224
230
  }
225
231
  }
226
232
  }
227
- function k(a, e) {
228
- const t = new AbortController(), n = e.signal ? b(e.signal, t.signal) : t.signal, o = {
229
- botId: a.getBotId(),
233
+ function p(r, e) {
234
+ const t = new AbortController(), s = e.signal ? k(e.signal, t.signal) : t.signal, o = {
235
+ botId: r.getBotId(),
230
236
  message: e.message,
231
237
  sessionId: e.sessionId,
232
238
  stream: e.stream !== !1
233
239
  };
234
- return o.stream ? a.streamPost("/chat", o, n).then((r) => {
235
- var s;
236
- if (!r.ok) {
237
- (s = e.onError) == null || s.call(e, new Error(`HTTP ${r.status}`));
240
+ return o.stream ? r.streamPost("/chat", o, s).then((n) => {
241
+ var a;
242
+ if (!n.ok) {
243
+ (a = e.onError) == null || a.call(e, new Error(`HTTP ${n.status}`));
238
244
  return;
239
245
  }
240
246
  return m(
241
- r,
247
+ n,
242
248
  (i) => {
243
- var c, l, d, h;
244
- i.type === "done" && i.sessionId ? (c = e.onDone) == null || c.call(e, { sessionId: i.sessionId, content: i.content, messageId: i.messageId }) : i.type === "done" ? (l = e.onDone) == null || l.call(e, { sessionId: "", content: i.content, messageId: i.messageId }) : i.type === "error" ? (d = e.onError) == null || d.call(e, new Error(i.content)) : (h = e.onMessage) == null || h.call(e, i);
249
+ var c, d, l, h, f, g;
250
+ i.type === "done" && i.sessionId ? (c = e.onDone) == null || c.call(e, { sessionId: i.sessionId, content: i.content, messageId: i.messageId }) : i.type === "done" ? (d = e.onDone) == null || d.call(e, { sessionId: "", content: i.content, messageId: i.messageId }) : i.type === "stop" ? ((l = e.onMessage) == null || l.call(e, i), (h = e.onDone) == null || h.call(e, { sessionId: i.sessionId ?? "", content: i.content })) : i.type === "error" ? (f = e.onError) == null || f.call(e, new Error(i.content)) : (g = e.onMessage) == null || g.call(e, i);
245
251
  },
246
252
  (i) => {
247
253
  var c;
248
254
  return (c = e.onError) == null ? void 0 : c.call(e, i);
249
255
  }
250
256
  );
251
- }).catch((r) => {
252
- var s;
253
- (r == null ? void 0 : r.name) !== "AbortError" && ((s = e.onError) == null || s.call(e, r instanceof Error ? r : new Error(String(r))));
254
- }) : a.post("/chat", o).then((r) => {
255
- var s;
256
- (s = e.onDone) == null || s.call(e, {
257
- sessionId: r.sessionId,
258
- content: r.content ?? "",
259
- messageId: r.messageId
257
+ }).catch((n) => {
258
+ var a;
259
+ (n == null ? void 0 : n.name) !== "AbortError" && ((a = e.onError) == null || a.call(e, n instanceof Error ? n : new Error(String(n))));
260
+ }) : r.post("/chat", o).then((n) => {
261
+ var a;
262
+ (a = e.onDone) == null || a.call(e, {
263
+ sessionId: n.sessionId,
264
+ content: n.content ?? "",
265
+ messageId: n.messageId
260
266
  });
261
- }).catch((r) => {
262
- var s;
263
- (s = e.onError) == null || s.call(e, r instanceof Error ? r : new Error(String(r)));
267
+ }).catch((n) => {
268
+ var a;
269
+ (a = e.onError) == null || a.call(e, n instanceof Error ? n : new Error(String(n)));
264
270
  }), t;
265
271
  }
266
- function b(a, e) {
267
- const t = new AbortController(), n = () => t.abort();
268
- return a.addEventListener("abort", n, { once: !0 }), e.addEventListener("abort", n, { once: !0 }), (a.aborted || e.aborted) && t.abort(), t.signal;
272
+ function k(r, e) {
273
+ const t = new AbortController(), s = () => t.abort();
274
+ return r.addEventListener("abort", s, { once: !0 }), e.addEventListener("abort", s, { once: !0 }), (r.aborted || e.aborted) && t.abort(), t.signal;
269
275
  }
270
- async function T(a) {
271
- return (await a.post("/chat/sessions", {
272
- botId: a.getBotId()
276
+ async function b(r) {
277
+ return (await r.post("/chat/sessions", {
278
+ botId: r.getBotId()
273
279
  })).sessionId;
274
280
  }
275
- function S(a) {
281
+ function T(r) {
276
282
  return {
277
283
  // 后端返回 thread_id,toCamelCase 转为 threadId,映射为 sessionId
278
- sessionId: a.threadId ?? a.sessionId,
279
- botId: a.botId,
280
- title: a.title,
281
- createTime: a.createTime,
282
- updateTime: a.updateTime
284
+ sessionId: r.threadId ?? r.sessionId,
285
+ botId: r.botId,
286
+ title: r.title,
287
+ createTime: r.createTime,
288
+ updateTime: r.updateTime
283
289
  };
284
290
  }
285
- async function $(a, e) {
286
- const t = await a.get("/chat/conversations", {
287
- botId: a.getBotId(),
291
+ async function S(r, e) {
292
+ const t = await r.get("/chat/conversations", {
293
+ botId: r.getBotId(),
288
294
  page: (e == null ? void 0 : e.page) ?? 1,
289
295
  size: (e == null ? void 0 : e.size) ?? 20
290
296
  });
291
297
  return {
292
298
  ...t,
293
- items: t.items.map(S)
299
+ items: t.items.map(T)
294
300
  };
295
301
  }
296
- async function p(a, e, t) {
297
- await a.patch(`/chat/conversations/${e}`, { title: t });
302
+ async function $(r, e, t) {
303
+ await r.patch(`/chat/conversations/${e}`, { title: t });
298
304
  }
299
- async function A(a, e) {
300
- await a.del(`/chat/conversations/${e}`);
305
+ async function C(r, e) {
306
+ await r.del(`/chat/conversations/${e}`);
301
307
  }
302
- async function C(a, e) {
303
- const t = await a.get(`/chat/conversations/${e}/messages`);
308
+ async function A(r, e) {
309
+ const t = await r.get(`/chat/conversations/${e}/messages`);
304
310
  return O(t);
305
311
  }
306
- function O(a) {
307
- var n, o, r;
308
- const e = [], t = [...a].sort((s, i) => (s.seq ?? 0) - (i.seq ?? 0));
309
- for (const s of t) {
310
- const i = s.role;
311
- if (i === "system") continue;
312
- const c = s.messageId ?? `msg_${s.id}`, l = new Date(s.createTime ?? "").getTime() || Date.now();
313
- if (i === "human")
314
- e.push({
315
- id: c,
316
- role: "user",
317
- parts: [{ type: "text", content: s.content ?? "" }],
318
- timestamp: l
319
- });
320
- else if (i === "ai") {
321
- const d = [];
322
- s.reasoning && d.push({ type: "thinking", content: s.reasoning }), s.content && d.push({ type: "text", content: s.content });
323
- const h = s.toolCalls;
324
- if (h && Array.isArray(h))
325
- for (const u of h) {
326
- let g;
327
- try {
328
- g = typeof u.args == "string" ? u.args : JSON.stringify(u.args ?? {});
329
- } catch {
330
- g = String(u.args ?? "{}");
331
- }
332
- d.push({
333
- type: "tool_call",
334
- toolName: u.name ?? "",
335
- toolCallId: u.id ?? "",
336
- args: g
337
- });
338
- }
339
- e.push({ id: c, role: "assistant", parts: d, timestamp: l });
340
- } else if (i === "tool") {
341
- const d = Array.isArray(s.artifacts) ? s.artifacts : void 0;
342
- e.push({
343
- id: c,
344
- role: "assistant",
345
- parts: [{
346
- type: "tool_result",
347
- toolName: s.toolName ?? "",
348
- toolCallId: s.toolCallId ?? "",
349
- content: s.content ?? "",
350
- artifacts: d,
351
- renderMode: ((n = s.metadata) == null ? void 0 : n.renderMode) ?? ((o = s.metadata) == null ? void 0 : o.render_mode),
352
- html: (r = s.metadata) == null ? void 0 : r.html
353
- }],
354
- timestamp: l
355
- });
312
+ function O(r) {
313
+ const e = [...r].sort((a, i) => (a.seq ?? 0) - (i.seq ?? 0)), t = /* @__PURE__ */ new Map();
314
+ for (const a of e)
315
+ a.role === "tool" && a.toolCallId && t.set(a.toolCallId, a.content || "");
316
+ const s = /* @__PURE__ */ new Set(), o = [], n = (a, i, c) => {
317
+ const d = o[o.length - 1];
318
+ (d == null ? void 0 : d.role) === "assistant" ? (d.parts.push(...a), d.id = i) : o.push({ id: i, role: "assistant", parts: [...a], timestamp: c });
319
+ };
320
+ for (const a of e) {
321
+ if (a.role === "system") continue;
322
+ const i = a.messageId ?? `msg_${a.id}`, c = new Date(a.createTime ?? "").getTime() || Date.now();
323
+ if (a.role === "human") {
324
+ o.push({ id: i, role: "user", parts: [{ type: "text", content: a.content ?? "" }], timestamp: c });
325
+ continue;
326
+ }
327
+ if (a.role === "ai") {
328
+ const d = P(a, t, s);
329
+ d.length > 0 && n(d, i, c);
330
+ continue;
331
+ }
332
+ if (a.role === "tool") {
333
+ if (a.toolCallId && s.has(a.toolCallId)) continue;
334
+ n([v(a)], i, c);
356
335
  }
357
336
  }
358
- return e;
337
+ return o;
338
+ }
339
+ function P(r, e, t) {
340
+ const s = [];
341
+ r.reasoning && s.push({ type: "thinking", content: r.reasoning }), r.content && s.push({ type: "text", content: r.content });
342
+ for (const o of r.toolCalls ?? [])
343
+ o.is_interrupt ? (t.add(o.id), s.push(_(o, e))) : s.push(E(o));
344
+ return s;
345
+ }
346
+ function _(r, e) {
347
+ const t = e.has(r.id), s = typeof r.args == "object" ? r.args : {};
348
+ return {
349
+ type: "interrupt",
350
+ interrupt: {
351
+ interruptId: r.id ?? "",
352
+ interruptType: s.interruptType ?? "input",
353
+ content: s.content ?? "",
354
+ options: s.options,
355
+ placeholder: s.placeholder,
356
+ inputType: s.inputType,
357
+ maxLength: s.maxLength,
358
+ required: s.required,
359
+ fields: s.fields,
360
+ metadata: s.metadata
361
+ },
362
+ resolved: t,
363
+ response: t ? { action: "submit", value: x(e.get(r.id)) } : void 0
364
+ };
359
365
  }
360
- async function _(a, e, t, n, o, r) {
361
- const s = await a.streamPost(
366
+ function E(r) {
367
+ let e;
368
+ try {
369
+ e = typeof r.args == "string" ? r.args : JSON.stringify(r.args ?? {});
370
+ } catch {
371
+ e = String(r.args ?? "{}");
372
+ }
373
+ return { type: "tool_call", toolName: r.name ?? "", toolCallId: r.id ?? "", args: e };
374
+ }
375
+ function v(r) {
376
+ var t, s, o;
377
+ const e = Array.isArray(r.artifacts) ? r.artifacts : void 0;
378
+ return {
379
+ type: "tool_result",
380
+ toolName: r.toolName ?? "",
381
+ toolCallId: r.toolCallId ?? "",
382
+ content: r.content ?? "",
383
+ artifacts: e,
384
+ renderMode: ((t = r.metadata) == null ? void 0 : t.renderMode) ?? ((s = r.metadata) == null ? void 0 : s.render_mode),
385
+ html: (o = r.metadata) == null ? void 0 : o.html
386
+ };
387
+ }
388
+ function x(r) {
389
+ if (r != null)
390
+ try {
391
+ return JSON.parse(r);
392
+ } catch {
393
+ return r;
394
+ }
395
+ }
396
+ async function U(r, e, t, s, o, n) {
397
+ const a = await r.streamPost(
362
398
  `/chat/interrupt/${e}/respond`,
363
399
  {
364
400
  sessionId: t,
365
- action: n.action,
366
- value: n.value
401
+ action: s.action,
402
+ value: s.value
367
403
  }
368
404
  );
369
- if (!s.ok) {
370
- const i = new Error(`HTTP ${s.status}`);
371
- throw r == null || r(i), i;
405
+ if (!a.ok) {
406
+ const i = new Error(`HTTP ${a.status}`);
407
+ throw n == null || n(i), i;
372
408
  }
373
409
  o && await m(
374
- s,
410
+ a,
375
411
  (i) => {
376
- i.type === "error" ? r == null || r(new Error(i.content)) : o(i);
412
+ i.type === "error" ? n == null || n(new Error(i.content)) : o(i);
377
413
  },
378
- (i) => r == null ? void 0 : r(i)
414
+ (i) => n == null ? void 0 : n(i)
379
415
  );
380
416
  }
381
- function E(a) {
382
- const e = new I(a);
417
+ async function q(r) {
418
+ return r.get(`/chat/bots/${r.getBotId()}/skills`);
419
+ }
420
+ async function N(r, e) {
421
+ await r.post("/chat/stop", { sessionId: e });
422
+ }
423
+ function L(r) {
424
+ const e = new w(r);
383
425
  return {
384
426
  getToken: () => e.fetchToken(),
385
- createSession: () => T(e),
386
- chat: (n) => k(e, n),
387
- listConversations: (n) => $(e, n),
388
- renameConversation: (n, o) => p(e, n, o),
389
- deleteConversation: (n) => A(e, n),
390
- getMessages: (n) => C(e, n),
391
- respondInterrupt: (n, o, r, s, i) => _(e, n, o, r, s, i),
392
- setToken: (n) => e.setToken(n),
393
- feedback: async (n, o, r) => {
394
- const s = { type: o };
395
- o === "dislike" && ((r == null ? void 0 : r.reason) != null && (s.reason = r.reason), r != null && r.remark && (s.remark = r.remark)), await e.post(`/chat/messages/${n}/feedback`, s);
427
+ createSession: () => b(e),
428
+ chat: (s) => p(e, s),
429
+ listConversations: (s) => S(e, s),
430
+ renameConversation: (s, o) => $(e, s, o),
431
+ deleteConversation: (s) => C(e, s),
432
+ getMessages: (s) => A(e, s),
433
+ respondInterrupt: (s, o, n, a, i) => U(e, s, o, n, a, i),
434
+ setToken: (s) => e.setToken(s),
435
+ feedback: async (s, o, n) => {
436
+ const a = { type: o };
437
+ o === "dislike" && ((n == null ? void 0 : n.reason) != null && (a.reason = n.reason), n != null && n.remark && (a.remark = n.remark)), await e.post(`/chat/messages/${s}/feedback`, a);
396
438
  },
397
- cancelFeedback: async (n) => {
398
- await e.del(`/chat/messages/${n}/feedback`);
399
- }
439
+ cancelFeedback: async (s) => {
440
+ await e.del(`/chat/messages/${s}/feedback`);
441
+ },
442
+ listSkills: () => q(e),
443
+ stopGeneration: (s) => N(e, s)
400
444
  };
401
445
  }
402
446
  export {
403
- E as createSuperAgent
447
+ L as createSuperAgent
404
448
  };