@botonic/plugin-ai-agents 0.41.1-alpha.0 → 0.41.2-alpha.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/lib/cjs/openai.js CHANGED
@@ -16,7 +16,6 @@ function setAzureOpenAIClient() {
16
16
  apiVersion: constants_1.AZURE_OPENAI_API_VERSION,
17
17
  deployment: constants_1.AZURE_OPENAI_API_DEPLOYMENT_NAME,
18
18
  baseURL: constants_1.AZURE_OPENAI_API_BASE,
19
- timeout: 8000,
20
19
  dangerouslyAllowBrowser: !constants_1.isProd,
21
20
  });
22
21
  (0, agents_1.setDefaultOpenAIClient)(client);
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":";;;AAAA,2CAIuB;AACvB,mCAAoC;AAEpC,2CAMoB;AAEpB,SAAgB,WAAW;IACzB,oBAAoB,EAAE,CAAA;IACtB,IAAA,qBAAY,EAAC,kBAAkB,CAAC,CAAA;IAChC,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAJD,kCAIC;AAED,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,IAAI,oBAAW,CAAC;QAC7B,MAAM,EAAE,gCAAoB;QAC5B,UAAU,EAAE,oCAAwB;QACpC,UAAU,EAAE,4CAAgC;QAC5C,OAAO,EAAE,iCAAqB;QAC9B,OAAO,EAAE,IAAI;QACb,uBAAuB,EAAE,CAAC,kBAAM;KACjC,CAAC,CAAA;IACF,IAAA,+BAAsB,EAAC,MAAM,CAAC,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":";;;AAAA,2CAIuB;AACvB,mCAAoC;AAEpC,2CAMoB;AAEpB,SAAgB,WAAW;IACzB,oBAAoB,EAAE,CAAA;IACtB,IAAA,qBAAY,EAAC,kBAAkB,CAAC,CAAA;IAChC,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAJD,kCAIC;AAED,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,IAAI,oBAAW,CAAC;QAC7B,MAAM,EAAE,gCAAoB;QAC5B,UAAU,EAAE,oCAAwB;QACpC,UAAU,EAAE,4CAAgC;QAC5C,OAAO,EAAE,iCAAqB;QAC9B,uBAAuB,EAAE,CAAC,kBAAM;KACjC,CAAC,CAAA;IACF,IAAA,+BAAsB,EAAC,MAAM,CAAC,CAAA;AAChC,CAAC"}
@@ -3,7 +3,8 @@ import { AgenticInputMessage, AIAgent, Context, RunResult } from './types';
3
3
  export declare class AIAgentRunner<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> {
4
4
  private agent;
5
5
  constructor(agent: AIAgent<TPlugins, TExtraData>);
6
- run(messages: AgenticInputMessage[], context: Context<TPlugins, TExtraData>): Promise<RunResult>;
6
+ run(messages: AgenticInputMessage[], context: Context<TPlugins, TExtraData>, maxRetries?: number): Promise<RunResult>;
7
+ private runWithRetry;
7
8
  private getToolsExecuted;
8
9
  private getToolExecutionInfo;
9
10
  private getSafeToolArguments;
package/lib/cjs/runner.js CHANGED
@@ -8,14 +8,19 @@ class AIAgentRunner {
8
8
  constructor(agent) {
9
9
  this.agent = agent;
10
10
  }
11
- run(messages, context) {
11
+ run(messages, context, maxRetries = 1) {
12
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
+ return this.runWithRetry(messages, context, maxRetries, 1);
14
+ });
15
+ }
16
+ runWithRetry(inputMessages, context, maxRetries, attempt) {
12
17
  var _a;
13
18
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
14
19
  try {
15
20
  const runner = new agents_1.Runner({
16
21
  modelSettings: { temperature: 0 },
17
22
  });
18
- const result = yield runner.run(this.agent, messages, { context });
23
+ const result = yield runner.run(this.agent, inputMessages, { context });
19
24
  const outputMessages = ((_a = result.finalOutput) === null || _a === void 0 ? void 0 : _a.messages) || [];
20
25
  const hasExit = outputMessages.length === 0 ||
21
26
  outputMessages.some(message => message.type === 'exit');
@@ -26,7 +31,7 @@ class AIAgentRunner {
26
31
  : outputMessages.filter(message => message.type !== 'exit'),
27
32
  toolsExecuted,
28
33
  exit: hasExit,
29
- memoryLength: messages.length,
34
+ memoryLength: inputMessages.length,
30
35
  error: false,
31
36
  inputGuardrailsTriggered: [],
32
37
  outputGuardrailsTriggered: [],
@@ -44,7 +49,10 @@ class AIAgentRunner {
44
49
  outputGuardrailsTriggered: [],
45
50
  };
46
51
  }
47
- throw error;
52
+ if (attempt > maxRetries) {
53
+ throw error;
54
+ }
55
+ return this.runWithRetry(inputMessages, context, maxRetries, attempt + 1);
48
56
  }
49
57
  });
50
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export type { CarouselMessage };
4
4
  export declare const CarouselSchema: z.ZodObject<{
5
5
  type: z.ZodEnum<["carousel"]>;
6
6
  content: z.ZodObject<{
7
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7
8
  elements: z.ZodArray<z.ZodObject<{
8
9
  title: z.ZodString;
9
10
  subtitle: z.ZodString;
@@ -45,6 +46,7 @@ export declare const CarouselSchema: z.ZodObject<{
45
46
  url?: string | null | undefined;
46
47
  };
47
48
  }[];
49
+ text?: string | null | undefined;
48
50
  }, {
49
51
  elements: {
50
52
  title: string;
@@ -55,6 +57,7 @@ export declare const CarouselSchema: z.ZodObject<{
55
57
  url?: string | null | undefined;
56
58
  };
57
59
  }[];
60
+ text?: string | null | undefined;
58
61
  }>;
59
62
  }, "strip", z.ZodTypeAny, {
60
63
  type: "carousel";
@@ -68,6 +71,7 @@ export declare const CarouselSchema: z.ZodObject<{
68
71
  url?: string | null | undefined;
69
72
  };
70
73
  }[];
74
+ text?: string | null | undefined;
71
75
  };
72
76
  }, {
73
77
  type: "carousel";
@@ -81,5 +85,6 @@ export declare const CarouselSchema: z.ZodObject<{
81
85
  url?: string | null | undefined;
82
86
  };
83
87
  }[];
88
+ text?: string | null | undefined;
84
89
  };
85
90
  }>;
@@ -6,6 +6,7 @@ exports.CarouselSchema = zod_1.z
6
6
  .object({
7
7
  type: zod_1.z.enum(['carousel']),
8
8
  content: zod_1.z.object({
9
+ text: zod_1.z.string().nullable().optional(),
9
10
  elements: zod_1.z.array(zod_1.z.object({
10
11
  title: zod_1.z.string(),
11
12
  subtitle: zod_1.z.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/structured-output/carousel.ts"],"names":[],"mappings":";;;AACA,6BAAuB;AAIV,QAAA,cAAc,GAAG,OAAC;KAC5B,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QAChB,QAAQ,EAAE,OAAC,CAAC,KAAK,CACf,OAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;YACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;YACpB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aACtC,CAAC;SACH,CAAC,CACH;KACF,CAAC;CACH,CAAC;KACD,QAAQ,CAAC,kDAAkD,CAAC,CAAA"}
1
+ {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/structured-output/carousel.ts"],"names":[],"mappings":";;;AACA,6BAAuB;AAIV,QAAA,cAAc,GAAG,OAAC;KAC5B,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QAChB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACtC,QAAQ,EAAE,OAAC,CAAC,KAAK,CACf,OAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;YACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;YACpB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aACtC,CAAC;SACH,CAAC,CACH;KACF,CAAC;CACH,CAAC;KACD,QAAQ,CAAC,kDAAkD,CAAC,CAAA"}
@@ -64,6 +64,7 @@ export declare const OutputSchema: z.ZodObject<{
64
64
  }>, z.ZodObject<{
65
65
  type: z.ZodEnum<["carousel"]>;
66
66
  content: z.ZodObject<{
67
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
67
68
  elements: z.ZodArray<z.ZodObject<{
68
69
  title: z.ZodString;
69
70
  subtitle: z.ZodString;
@@ -105,6 +106,7 @@ export declare const OutputSchema: z.ZodObject<{
105
106
  url?: string | null | undefined;
106
107
  };
107
108
  }[];
109
+ text?: string | null | undefined;
108
110
  }, {
109
111
  elements: {
110
112
  title: string;
@@ -115,6 +117,7 @@ export declare const OutputSchema: z.ZodObject<{
115
117
  url?: string | null | undefined;
116
118
  };
117
119
  }[];
120
+ text?: string | null | undefined;
118
121
  }>;
119
122
  }, "strip", z.ZodTypeAny, {
120
123
  type: "carousel";
@@ -128,6 +131,7 @@ export declare const OutputSchema: z.ZodObject<{
128
131
  url?: string | null | undefined;
129
132
  };
130
133
  }[];
134
+ text?: string | null | undefined;
131
135
  };
132
136
  }, {
133
137
  type: "carousel";
@@ -141,6 +145,7 @@ export declare const OutputSchema: z.ZodObject<{
141
145
  url?: string | null | undefined;
142
146
  };
143
147
  }[];
148
+ text?: string | null | undefined;
144
149
  };
145
150
  }>, z.ZodObject<{
146
151
  type: z.ZodEnum<["exit"]>;
@@ -162,6 +167,7 @@ export declare const OutputSchema: z.ZodObject<{
162
167
  url?: string | null | undefined;
163
168
  };
164
169
  }[];
170
+ text?: string | null | undefined;
165
171
  };
166
172
  } | {
167
173
  type: "exit";
@@ -192,6 +198,7 @@ export declare const OutputSchema: z.ZodObject<{
192
198
  url?: string | null | undefined;
193
199
  };
194
200
  }[];
201
+ text?: string | null | undefined;
195
202
  };
196
203
  } | {
197
204
  type: "exit";
package/lib/esm/openai.js CHANGED
@@ -12,7 +12,6 @@ function setAzureOpenAIClient() {
12
12
  apiVersion: AZURE_OPENAI_API_VERSION,
13
13
  deployment: AZURE_OPENAI_API_DEPLOYMENT_NAME,
14
14
  baseURL: AZURE_OPENAI_API_BASE,
15
- timeout: 8000,
16
15
  dangerouslyAllowBrowser: !isProd,
17
16
  });
18
17
  setDefaultOpenAIClient(client);
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,GACnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAEpC,OAAO,EACL,qBAAqB,EACrB,gCAAgC,EAChC,oBAAoB,EACpB,wBAAwB,EACxB,MAAM,GACP,MAAM,aAAa,CAAA;AAEpB,MAAM,UAAU,WAAW;IACzB,oBAAoB,EAAE,CAAA;IACtB,YAAY,CAAC,kBAAkB,CAAC,CAAA;IAChC,kBAAkB,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;QAC7B,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,wBAAwB;QACpC,UAAU,EAAE,gCAAgC;QAC5C,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,IAAI;QACb,uBAAuB,EAAE,CAAC,MAAM;KACjC,CAAC,CAAA;IACF,sBAAsB,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,GACnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAEpC,OAAO,EACL,qBAAqB,EACrB,gCAAgC,EAChC,oBAAoB,EACpB,wBAAwB,EACxB,MAAM,GACP,MAAM,aAAa,CAAA;AAEpB,MAAM,UAAU,WAAW;IACzB,oBAAoB,EAAE,CAAA;IACtB,YAAY,CAAC,kBAAkB,CAAC,CAAA;IAChC,kBAAkB,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;QAC7B,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,wBAAwB;QACpC,UAAU,EAAE,gCAAgC;QAC5C,OAAO,EAAE,qBAAqB;QAC9B,uBAAuB,EAAE,CAAC,MAAM;KACjC,CAAC,CAAA;IACF,sBAAsB,CAAC,MAAM,CAAC,CAAA;AAChC,CAAC"}
@@ -3,7 +3,8 @@ import { AgenticInputMessage, AIAgent, Context, RunResult } from './types';
3
3
  export declare class AIAgentRunner<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> {
4
4
  private agent;
5
5
  constructor(agent: AIAgent<TPlugins, TExtraData>);
6
- run(messages: AgenticInputMessage[], context: Context<TPlugins, TExtraData>): Promise<RunResult>;
6
+ run(messages: AgenticInputMessage[], context: Context<TPlugins, TExtraData>, maxRetries?: number): Promise<RunResult>;
7
+ private runWithRetry;
7
8
  private getToolsExecuted;
8
9
  private getToolExecutionInfo;
9
10
  private getSafeToolArguments;
package/lib/esm/runner.js CHANGED
@@ -5,14 +5,19 @@ export class AIAgentRunner {
5
5
  constructor(agent) {
6
6
  this.agent = agent;
7
7
  }
8
- run(messages, context) {
8
+ run(messages, context, maxRetries = 1) {
9
+ return __awaiter(this, void 0, void 0, function* () {
10
+ return this.runWithRetry(messages, context, maxRetries, 1);
11
+ });
12
+ }
13
+ runWithRetry(inputMessages, context, maxRetries, attempt) {
9
14
  var _a;
10
15
  return __awaiter(this, void 0, void 0, function* () {
11
16
  try {
12
17
  const runner = new Runner({
13
18
  modelSettings: { temperature: 0 },
14
19
  });
15
- const result = yield runner.run(this.agent, messages, { context });
20
+ const result = yield runner.run(this.agent, inputMessages, { context });
16
21
  const outputMessages = ((_a = result.finalOutput) === null || _a === void 0 ? void 0 : _a.messages) || [];
17
22
  const hasExit = outputMessages.length === 0 ||
18
23
  outputMessages.some(message => message.type === 'exit');
@@ -23,7 +28,7 @@ export class AIAgentRunner {
23
28
  : outputMessages.filter(message => message.type !== 'exit'),
24
29
  toolsExecuted,
25
30
  exit: hasExit,
26
- memoryLength: messages.length,
31
+ memoryLength: inputMessages.length,
27
32
  error: false,
28
33
  inputGuardrailsTriggered: [],
29
34
  outputGuardrailsTriggered: [],
@@ -41,7 +46,10 @@ export class AIAgentRunner {
41
46
  outputGuardrailsTriggered: [],
42
47
  };
43
48
  }
44
- throw error;
49
+ if (attempt > maxRetries) {
50
+ throw error;
51
+ }
52
+ return this.runWithRetry(inputMessages, context, maxRetries, attempt + 1);
45
53
  }
46
54
  });
47
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":";AACA,OAAO,EACL,+BAA+B,EAC/B,MAAM,EACN,eAAe,GAChB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAS3C,MAAM,OAAO,aAAa;IAMxB,YAAY,KAAoC;QAC9C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAEK,GAAG,CACP,QAA+B,EAC/B,OAAsC;;;YAEtC,IAAI;gBACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;oBACxB,aAAa,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;iBAClC,CAAC,CAAA;gBACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;gBAElE,MAAM,cAAc,GAAG,CAAA,MAAA,MAAM,CAAC,WAAW,0CAAE,QAAQ,KAAI,EAAE,CAAA;gBACzD,MAAM,OAAO,GACX,cAAc,CAAC,MAAM,KAAK,CAAC;oBAC3B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;gBACzD,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAE5D,OAAO;oBACL,QAAQ,EAAE,OAAO;wBACf,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAE,cAAc,CAAC,MAAM,CACpB,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CACR;oBAChC,aAAa;oBACb,IAAI,EAAE,OAAO;oBACb,YAAY,EAAE,QAAQ,CAAC,MAAM;oBAC7B,KAAK,EAAE,KAAK;oBACZ,wBAAwB,EAAE,EAAE;oBAC5B,yBAAyB,EAAE,EAAE;iBAC9B,CAAA;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,KAAK,YAAY,+BAA+B,EAAE;oBACpD,OAAO;wBACL,QAAQ,EAAE,EAAE;wBACZ,YAAY,EAAE,CAAC;wBACf,aAAa,EAAE,EAAE;wBACjB,IAAI,EAAE,IAAI;wBACV,KAAK,EAAE,KAAK;wBACZ,wBAAwB,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU;wBACxD,yBAAyB,EAAE,EAAE;qBAC9B,CAAA;iBACF;gBACD,MAAM,KAAK,CAAA;aACZ;;KACF;IAEO,gBAAgB,CACtB,MAAM,EACN,OAAsC;;QAEtC,OAAO,CACL,CAAA,MAAA,MAAM,CAAC,QAAQ,0CACX,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,eAAe,EAC/C,GAAG,CAAC,CAAC,IAAqB,EAAE,EAAE,CAC7B,IAAI,CAAC,oBAAoB,CAAC,IAAuB,EAAE,OAAO,CAAC,EAE5D,MAAM,CACL,CAAC,aAA4B,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,KAAK,EAAE,CAChE,KAAI,EAAE,CACV,CAAA;IACH,CAAC;IAEO,oBAAoB,CAC1B,IAAqB,EACrB,OAAsC;QAEtC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE;YACzC,OAAO;gBACL,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,EAAE;aAClB,CAAA;SACF;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;QAClC,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAEvE,IAAI,QAAQ,KAAK,iBAAiB,CAAC,IAAI,EAAE;YACvC,OAAO;gBACL,QAAQ;gBACR,aAAa;gBACb,uBAAuB,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS;gBACxD,sBAAsB,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS;aACxD,CAAA;SACF;QAED,OAAO;YACL,QAAQ;YACR,aAAa;SACd,CAAA;IACH,CAAC;IAEO,oBAAoB,CAAC,gBAAwB;QACnD,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;SACpC;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,EAAE,CAAA;SACV;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export type { CarouselMessage };
4
4
  export declare const CarouselSchema: z.ZodObject<{
5
5
  type: z.ZodEnum<["carousel"]>;
6
6
  content: z.ZodObject<{
7
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7
8
  elements: z.ZodArray<z.ZodObject<{
8
9
  title: z.ZodString;
9
10
  subtitle: z.ZodString;
@@ -45,6 +46,7 @@ export declare const CarouselSchema: z.ZodObject<{
45
46
  url?: string | null | undefined;
46
47
  };
47
48
  }[];
49
+ text?: string | null | undefined;
48
50
  }, {
49
51
  elements: {
50
52
  title: string;
@@ -55,6 +57,7 @@ export declare const CarouselSchema: z.ZodObject<{
55
57
  url?: string | null | undefined;
56
58
  };
57
59
  }[];
60
+ text?: string | null | undefined;
58
61
  }>;
59
62
  }, "strip", z.ZodTypeAny, {
60
63
  type: "carousel";
@@ -68,6 +71,7 @@ export declare const CarouselSchema: z.ZodObject<{
68
71
  url?: string | null | undefined;
69
72
  };
70
73
  }[];
74
+ text?: string | null | undefined;
71
75
  };
72
76
  }, {
73
77
  type: "carousel";
@@ -81,5 +85,6 @@ export declare const CarouselSchema: z.ZodObject<{
81
85
  url?: string | null | undefined;
82
86
  };
83
87
  }[];
88
+ text?: string | null | undefined;
84
89
  };
85
90
  }>;
@@ -3,6 +3,7 @@ export const CarouselSchema = z
3
3
  .object({
4
4
  type: z.enum(['carousel']),
5
5
  content: z.object({
6
+ text: z.string().nullable().optional(),
6
7
  elements: z.array(z.object({
7
8
  title: z.string(),
8
9
  subtitle: z.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/structured-output/carousel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aACtC,CAAC;SACH,CAAC,CACH;KACF,CAAC;CACH,CAAC;KACD,QAAQ,CAAC,kDAAkD,CAAC,CAAA"}
1
+ {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/structured-output/carousel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACtC,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;YACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;YACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;YACjB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;gBAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aACtC,CAAC;SACH,CAAC,CACH;KACF,CAAC;CACH,CAAC;KACD,QAAQ,CAAC,kDAAkD,CAAC,CAAA"}
@@ -64,6 +64,7 @@ export declare const OutputSchema: z.ZodObject<{
64
64
  }>, z.ZodObject<{
65
65
  type: z.ZodEnum<["carousel"]>;
66
66
  content: z.ZodObject<{
67
+ text: z.ZodOptional<z.ZodNullable<z.ZodString>>;
67
68
  elements: z.ZodArray<z.ZodObject<{
68
69
  title: z.ZodString;
69
70
  subtitle: z.ZodString;
@@ -105,6 +106,7 @@ export declare const OutputSchema: z.ZodObject<{
105
106
  url?: string | null | undefined;
106
107
  };
107
108
  }[];
109
+ text?: string | null | undefined;
108
110
  }, {
109
111
  elements: {
110
112
  title: string;
@@ -115,6 +117,7 @@ export declare const OutputSchema: z.ZodObject<{
115
117
  url?: string | null | undefined;
116
118
  };
117
119
  }[];
120
+ text?: string | null | undefined;
118
121
  }>;
119
122
  }, "strip", z.ZodTypeAny, {
120
123
  type: "carousel";
@@ -128,6 +131,7 @@ export declare const OutputSchema: z.ZodObject<{
128
131
  url?: string | null | undefined;
129
132
  };
130
133
  }[];
134
+ text?: string | null | undefined;
131
135
  };
132
136
  }, {
133
137
  type: "carousel";
@@ -141,6 +145,7 @@ export declare const OutputSchema: z.ZodObject<{
141
145
  url?: string | null | undefined;
142
146
  };
143
147
  }[];
148
+ text?: string | null | undefined;
144
149
  };
145
150
  }>, z.ZodObject<{
146
151
  type: z.ZodEnum<["exit"]>;
@@ -162,6 +167,7 @@ export declare const OutputSchema: z.ZodObject<{
162
167
  url?: string | null | undefined;
163
168
  };
164
169
  }[];
170
+ text?: string | null | undefined;
165
171
  };
166
172
  } | {
167
173
  type: "exit";
@@ -192,6 +198,7 @@ export declare const OutputSchema: z.ZodObject<{
192
198
  url?: string | null | undefined;
193
199
  };
194
200
  }[];
201
+ text?: string | null | undefined;
195
202
  };
196
203
  } | {
197
204
  type: "exit";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-ai-agents",
3
- "version": "0.41.1-alpha.0",
3
+ "version": "0.41.2-alpha.0",
4
4
  "main": "./lib/cjs/index.js",
5
5
  "module": "./lib/esm/index.js",
6
6
  "description": "Use AI Agents to generate your contents",
@@ -13,7 +13,7 @@
13
13
  "lint_core": "../../node_modules/.bin/eslint_d --cache --quiet 'src/**/*.ts*'"
14
14
  },
15
15
  "dependencies": {
16
- "@botonic/core": "^0.41.0",
16
+ "@botonic/core": "0.41.1-alpha.0",
17
17
  "@openai/agents": "^0.1.11",
18
18
  "axios": "^1.12.2",
19
19
  "openai": "^5.23.2",
package/src/openai.ts CHANGED
@@ -25,7 +25,6 @@ function setAzureOpenAIClient() {
25
25
  apiVersion: AZURE_OPENAI_API_VERSION,
26
26
  deployment: AZURE_OPENAI_API_DEPLOYMENT_NAME,
27
27
  baseURL: AZURE_OPENAI_API_BASE,
28
- timeout: 8000, // 8 seconds
29
28
  dangerouslyAllowBrowser: !isProd,
30
29
  })
31
30
  setDefaultOpenAIClient(client)
package/src/runner.ts CHANGED
@@ -26,13 +26,23 @@ export class AIAgentRunner<
26
26
 
27
27
  async run(
28
28
  messages: AgenticInputMessage[],
29
- context: Context<TPlugins, TExtraData>
29
+ context: Context<TPlugins, TExtraData>,
30
+ maxRetries: number = 1
31
+ ): Promise<RunResult> {
32
+ return this.runWithRetry(messages, context, maxRetries, 1)
33
+ }
34
+
35
+ private async runWithRetry(
36
+ inputMessages: AgenticInputMessage[],
37
+ context: Context<TPlugins, TExtraData>,
38
+ maxRetries: number,
39
+ attempt: number
30
40
  ): Promise<RunResult> {
31
41
  try {
32
42
  const runner = new Runner({
33
43
  modelSettings: { temperature: 0 },
34
44
  })
35
- const result = await runner.run(this.agent, messages, { context })
45
+ const result = await runner.run(this.agent, inputMessages, { context })
36
46
 
37
47
  const outputMessages = result.finalOutput?.messages || []
38
48
  const hasExit =
@@ -48,7 +58,7 @@ export class AIAgentRunner<
48
58
  ) as AgenticOutputMessage[]),
49
59
  toolsExecuted,
50
60
  exit: hasExit,
51
- memoryLength: messages.length,
61
+ memoryLength: inputMessages.length,
52
62
  error: false,
53
63
  inputGuardrailsTriggered: [],
54
64
  outputGuardrailsTriggered: [],
@@ -65,7 +75,10 @@ export class AIAgentRunner<
65
75
  outputGuardrailsTriggered: [],
66
76
  }
67
77
  }
68
- throw error
78
+ if (attempt > maxRetries) {
79
+ throw error
80
+ }
81
+ return this.runWithRetry(inputMessages, context, maxRetries, attempt + 1)
69
82
  }
70
83
  }
71
84
 
@@ -7,6 +7,7 @@ export const CarouselSchema = z
7
7
  .object({
8
8
  type: z.enum(['carousel']),
9
9
  content: z.object({
10
+ text: z.string().nullable().optional(),
10
11
  elements: z.array(
11
12
  z.object({
12
13
  title: z.string(),