@bubblelab/bubble-core 0.1.76 → 0.1.78
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/bubble-bundle.d.ts +73 -72
- package/dist/bubbles/service-bubble/ai-agent.d.ts +38 -38
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +1 -0
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/airtable.d.ts +92 -92
- package/dist/bubbles/service-bubble/apify/apify.d.ts +10 -10
- package/dist/bubbles/service-bubble/ashby/ashby.d.ts +2 -2
- package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +2 -2
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +4 -4
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +8 -8
- package/dist/bubbles/service-bubble/firecrawl.d.ts +242 -242
- package/dist/bubbles/service-bubble/followupboss.d.ts +4 -4
- package/dist/bubbles/service-bubble/github.d.ts +40 -40
- package/dist/bubbles/service-bubble/gmail.d.ts +124 -124
- package/dist/bubbles/service-bubble/http.d.ts +8 -8
- package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
- package/dist/bubbles/service-bubble/jira/jira.d.ts +8 -8
- package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +10 -10
- package/dist/bubbles/service-bubble/notion/notion.d.ts +453 -453
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/resend.d.ts +4 -4
- package/dist/bubbles/service-bubble/slack/slack.d.ts +295 -295
- package/dist/bubbles/service-bubble/stripe/stripe.d.ts +4 -4
- package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +4 -4
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +12 -12
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +52 -52
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/tool-template.d.ts +8 -8
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +36 -36
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +10 -10
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +8 -8
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +8 -8
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +30 -30
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +18 -18
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +118 -118
- package/dist/bubbles.json +4 -3
- package/package.json +2 -2
|
@@ -41,6 +41,11 @@ declare const SlackFormatterAgentParamsSchema: z.ZodObject<{
|
|
|
41
41
|
additionalContext: z.ZodOptional<z.ZodString>;
|
|
42
42
|
}, "strip", z.ZodTypeAny, {
|
|
43
43
|
message: string;
|
|
44
|
+
verbosity: "1" | "2" | "3" | "4" | "5";
|
|
45
|
+
technicality: "1" | "2" | "3" | "4" | "5";
|
|
46
|
+
includeBlockKit: boolean;
|
|
47
|
+
includeQuery: boolean;
|
|
48
|
+
includeExplanation: boolean;
|
|
44
49
|
model: {
|
|
45
50
|
model: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/openai/gpt-oss-120b" | "openrouter/openai/o3-deep-research" | "openrouter/openai/o4-mini-deep-research";
|
|
46
51
|
temperature: number;
|
|
@@ -52,32 +57,27 @@ declare const SlackFormatterAgentParamsSchema: z.ZodObject<{
|
|
|
52
57
|
config?: Record<string, unknown> | undefined;
|
|
53
58
|
}[];
|
|
54
59
|
maxIterations: number;
|
|
55
|
-
verbosity: "1" | "2" | "3" | "4" | "5";
|
|
56
|
-
technicality: "1" | "2" | "3" | "4" | "5";
|
|
57
|
-
includeBlockKit: boolean;
|
|
58
|
-
includeQuery: boolean;
|
|
59
|
-
includeExplanation: boolean;
|
|
60
60
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
61
61
|
additionalContext?: string | undefined;
|
|
62
62
|
}, {
|
|
63
63
|
message: string;
|
|
64
|
-
|
|
64
|
+
verbosity?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
65
|
+
technicality?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
66
|
+
includeBlockKit?: boolean | undefined;
|
|
67
|
+
includeQuery?: boolean | undefined;
|
|
68
|
+
includeExplanation?: boolean | undefined;
|
|
65
69
|
model?: {
|
|
66
70
|
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/openai/gpt-oss-120b" | "openrouter/openai/o3-deep-research" | "openrouter/openai/o4-mini-deep-research" | undefined;
|
|
67
71
|
temperature?: number | undefined;
|
|
68
72
|
maxTokens?: number | undefined;
|
|
69
73
|
} | undefined;
|
|
74
|
+
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
70
75
|
tools?: {
|
|
71
76
|
name: string;
|
|
72
77
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
73
78
|
config?: Record<string, unknown> | undefined;
|
|
74
79
|
}[] | undefined;
|
|
75
80
|
maxIterations?: number | undefined;
|
|
76
|
-
verbosity?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
77
|
-
technicality?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
78
|
-
includeBlockKit?: boolean | undefined;
|
|
79
|
-
includeQuery?: boolean | undefined;
|
|
80
|
-
includeExplanation?: boolean | undefined;
|
|
81
81
|
additionalContext?: string | undefined;
|
|
82
82
|
}>;
|
|
83
83
|
declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
@@ -154,7 +154,7 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
154
154
|
verbatim?: boolean | undefined;
|
|
155
155
|
}>, "many">>;
|
|
156
156
|
}, "strip", z.ZodTypeAny, {
|
|
157
|
-
type: "
|
|
157
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
158
158
|
title?: {
|
|
159
159
|
type: "plain_text";
|
|
160
160
|
text: string;
|
|
@@ -166,28 +166,28 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
166
166
|
emoji?: boolean | undefined;
|
|
167
167
|
verbatim?: boolean | undefined;
|
|
168
168
|
} | undefined;
|
|
169
|
-
|
|
170
|
-
|
|
169
|
+
block_id?: string | undefined;
|
|
170
|
+
accessory?: unknown;
|
|
171
171
|
fields?: {
|
|
172
172
|
type: "plain_text" | "mrkdwn";
|
|
173
173
|
text: string;
|
|
174
174
|
emoji?: boolean | undefined;
|
|
175
175
|
verbatim?: boolean | undefined;
|
|
176
176
|
}[] | undefined;
|
|
177
|
+
element?: unknown;
|
|
178
|
+
label?: unknown;
|
|
179
|
+
hint?: unknown;
|
|
180
|
+
optional?: boolean | undefined;
|
|
177
181
|
alt_text?: string | undefined;
|
|
182
|
+
image_url?: string | undefined;
|
|
178
183
|
elements?: {
|
|
179
184
|
type: "plain_text" | "mrkdwn";
|
|
180
185
|
text: string;
|
|
181
186
|
emoji?: boolean | undefined;
|
|
182
187
|
verbatim?: boolean | undefined;
|
|
183
188
|
}[] | undefined;
|
|
184
|
-
block_id?: string | undefined;
|
|
185
|
-
accessory?: unknown;
|
|
186
|
-
element?: unknown;
|
|
187
|
-
label?: unknown;
|
|
188
|
-
hint?: unknown;
|
|
189
189
|
}, {
|
|
190
|
-
type: "
|
|
190
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
191
191
|
title?: {
|
|
192
192
|
type: "plain_text";
|
|
193
193
|
text: string;
|
|
@@ -199,26 +199,26 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
199
199
|
emoji?: boolean | undefined;
|
|
200
200
|
verbatim?: boolean | undefined;
|
|
201
201
|
} | undefined;
|
|
202
|
-
|
|
203
|
-
|
|
202
|
+
block_id?: string | undefined;
|
|
203
|
+
accessory?: unknown;
|
|
204
204
|
fields?: {
|
|
205
205
|
type: "plain_text" | "mrkdwn";
|
|
206
206
|
text: string;
|
|
207
207
|
emoji?: boolean | undefined;
|
|
208
208
|
verbatim?: boolean | undefined;
|
|
209
209
|
}[] | undefined;
|
|
210
|
+
element?: unknown;
|
|
211
|
+
label?: unknown;
|
|
212
|
+
hint?: unknown;
|
|
213
|
+
optional?: boolean | undefined;
|
|
210
214
|
alt_text?: string | undefined;
|
|
215
|
+
image_url?: string | undefined;
|
|
211
216
|
elements?: {
|
|
212
217
|
type: "plain_text" | "mrkdwn";
|
|
213
218
|
text: string;
|
|
214
219
|
emoji?: boolean | undefined;
|
|
215
220
|
verbatim?: boolean | undefined;
|
|
216
221
|
}[] | undefined;
|
|
217
|
-
block_id?: string | undefined;
|
|
218
|
-
accessory?: unknown;
|
|
219
|
-
element?: unknown;
|
|
220
|
-
label?: unknown;
|
|
221
|
-
hint?: unknown;
|
|
222
222
|
}>, "many">>;
|
|
223
223
|
metadata: z.ZodObject<{
|
|
224
224
|
verbosityLevel: z.ZodString;
|
|
@@ -253,23 +253,18 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
253
253
|
error: z.ZodString;
|
|
254
254
|
success: z.ZodBoolean;
|
|
255
255
|
}, "strip", z.ZodTypeAny, {
|
|
256
|
-
|
|
257
|
-
success: boolean;
|
|
256
|
+
response: string;
|
|
258
257
|
metadata: {
|
|
259
258
|
verbosityLevel: string;
|
|
260
259
|
technicalityLevel: string;
|
|
261
260
|
wordCount: number;
|
|
262
261
|
blockCount?: number | undefined;
|
|
263
262
|
};
|
|
264
|
-
response: string;
|
|
265
263
|
iterations: number;
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
input?: unknown;
|
|
269
|
-
output?: unknown;
|
|
270
|
-
}[] | undefined;
|
|
264
|
+
error: string;
|
|
265
|
+
success: boolean;
|
|
271
266
|
blocks?: {
|
|
272
|
-
type: "
|
|
267
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
273
268
|
title?: {
|
|
274
269
|
type: "plain_text";
|
|
275
270
|
text: string;
|
|
@@ -281,45 +276,45 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
281
276
|
emoji?: boolean | undefined;
|
|
282
277
|
verbatim?: boolean | undefined;
|
|
283
278
|
} | undefined;
|
|
284
|
-
|
|
285
|
-
|
|
279
|
+
block_id?: string | undefined;
|
|
280
|
+
accessory?: unknown;
|
|
286
281
|
fields?: {
|
|
287
282
|
type: "plain_text" | "mrkdwn";
|
|
288
283
|
text: string;
|
|
289
284
|
emoji?: boolean | undefined;
|
|
290
285
|
verbatim?: boolean | undefined;
|
|
291
286
|
}[] | undefined;
|
|
287
|
+
element?: unknown;
|
|
288
|
+
label?: unknown;
|
|
289
|
+
hint?: unknown;
|
|
290
|
+
optional?: boolean | undefined;
|
|
292
291
|
alt_text?: string | undefined;
|
|
292
|
+
image_url?: string | undefined;
|
|
293
293
|
elements?: {
|
|
294
294
|
type: "plain_text" | "mrkdwn";
|
|
295
295
|
text: string;
|
|
296
296
|
emoji?: boolean | undefined;
|
|
297
297
|
verbatim?: boolean | undefined;
|
|
298
298
|
}[] | undefined;
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
299
|
+
}[] | undefined;
|
|
300
|
+
toolCalls?: {
|
|
301
|
+
tool: string;
|
|
302
|
+
input?: unknown;
|
|
303
|
+
output?: unknown;
|
|
304
304
|
}[] | undefined;
|
|
305
305
|
}, {
|
|
306
|
-
|
|
307
|
-
success: boolean;
|
|
306
|
+
response: string;
|
|
308
307
|
metadata: {
|
|
309
308
|
verbosityLevel: string;
|
|
310
309
|
technicalityLevel: string;
|
|
311
310
|
wordCount: number;
|
|
312
311
|
blockCount?: number | undefined;
|
|
313
312
|
};
|
|
314
|
-
response: string;
|
|
315
313
|
iterations: number;
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
input?: unknown;
|
|
319
|
-
output?: unknown;
|
|
320
|
-
}[] | undefined;
|
|
314
|
+
error: string;
|
|
315
|
+
success: boolean;
|
|
321
316
|
blocks?: {
|
|
322
|
-
type: "
|
|
317
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
323
318
|
title?: {
|
|
324
319
|
type: "plain_text";
|
|
325
320
|
text: string;
|
|
@@ -331,26 +326,31 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
331
326
|
emoji?: boolean | undefined;
|
|
332
327
|
verbatim?: boolean | undefined;
|
|
333
328
|
} | undefined;
|
|
334
|
-
|
|
335
|
-
|
|
329
|
+
block_id?: string | undefined;
|
|
330
|
+
accessory?: unknown;
|
|
336
331
|
fields?: {
|
|
337
332
|
type: "plain_text" | "mrkdwn";
|
|
338
333
|
text: string;
|
|
339
334
|
emoji?: boolean | undefined;
|
|
340
335
|
verbatim?: boolean | undefined;
|
|
341
336
|
}[] | undefined;
|
|
337
|
+
element?: unknown;
|
|
338
|
+
label?: unknown;
|
|
339
|
+
hint?: unknown;
|
|
340
|
+
optional?: boolean | undefined;
|
|
342
341
|
alt_text?: string | undefined;
|
|
342
|
+
image_url?: string | undefined;
|
|
343
343
|
elements?: {
|
|
344
344
|
type: "plain_text" | "mrkdwn";
|
|
345
345
|
text: string;
|
|
346
346
|
emoji?: boolean | undefined;
|
|
347
347
|
verbatim?: boolean | undefined;
|
|
348
348
|
}[] | undefined;
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
349
|
+
}[] | undefined;
|
|
350
|
+
toolCalls?: {
|
|
351
|
+
tool: string;
|
|
352
|
+
input?: unknown;
|
|
353
|
+
output?: unknown;
|
|
354
354
|
}[] | undefined;
|
|
355
355
|
}>;
|
|
356
356
|
type SlackFormatterAgentParams = z.input<typeof SlackFormatterAgentParamsSchema>;
|
|
@@ -399,6 +399,11 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
399
399
|
additionalContext: z.ZodOptional<z.ZodString>;
|
|
400
400
|
}, "strip", z.ZodTypeAny, {
|
|
401
401
|
message: string;
|
|
402
|
+
verbosity: "1" | "2" | "3" | "4" | "5";
|
|
403
|
+
technicality: "1" | "2" | "3" | "4" | "5";
|
|
404
|
+
includeBlockKit: boolean;
|
|
405
|
+
includeQuery: boolean;
|
|
406
|
+
includeExplanation: boolean;
|
|
402
407
|
model: {
|
|
403
408
|
model: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/openai/gpt-oss-120b" | "openrouter/openai/o3-deep-research" | "openrouter/openai/o4-mini-deep-research";
|
|
404
409
|
temperature: number;
|
|
@@ -410,32 +415,27 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
410
415
|
config?: Record<string, unknown> | undefined;
|
|
411
416
|
}[];
|
|
412
417
|
maxIterations: number;
|
|
413
|
-
verbosity: "1" | "2" | "3" | "4" | "5";
|
|
414
|
-
technicality: "1" | "2" | "3" | "4" | "5";
|
|
415
|
-
includeBlockKit: boolean;
|
|
416
|
-
includeQuery: boolean;
|
|
417
|
-
includeExplanation: boolean;
|
|
418
418
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
419
419
|
additionalContext?: string | undefined;
|
|
420
420
|
}, {
|
|
421
421
|
message: string;
|
|
422
|
-
|
|
422
|
+
verbosity?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
423
|
+
technicality?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
424
|
+
includeBlockKit?: boolean | undefined;
|
|
425
|
+
includeQuery?: boolean | undefined;
|
|
426
|
+
includeExplanation?: boolean | undefined;
|
|
423
427
|
model?: {
|
|
424
428
|
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/openai/gpt-oss-120b" | "openrouter/openai/o3-deep-research" | "openrouter/openai/o4-mini-deep-research" | undefined;
|
|
425
429
|
temperature?: number | undefined;
|
|
426
430
|
maxTokens?: number | undefined;
|
|
427
431
|
} | undefined;
|
|
432
|
+
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
428
433
|
tools?: {
|
|
429
434
|
name: string;
|
|
430
435
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
431
436
|
config?: Record<string, unknown> | undefined;
|
|
432
437
|
}[] | undefined;
|
|
433
438
|
maxIterations?: number | undefined;
|
|
434
|
-
verbosity?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
435
|
-
technicality?: "1" | "2" | "3" | "4" | "5" | undefined;
|
|
436
|
-
includeBlockKit?: boolean | undefined;
|
|
437
|
-
includeQuery?: boolean | undefined;
|
|
438
|
-
includeExplanation?: boolean | undefined;
|
|
439
439
|
additionalContext?: string | undefined;
|
|
440
440
|
}>;
|
|
441
441
|
static readonly resultSchema: z.ZodObject<{
|
|
@@ -512,7 +512,7 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
512
512
|
verbatim?: boolean | undefined;
|
|
513
513
|
}>, "many">>;
|
|
514
514
|
}, "strip", z.ZodTypeAny, {
|
|
515
|
-
type: "
|
|
515
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
516
516
|
title?: {
|
|
517
517
|
type: "plain_text";
|
|
518
518
|
text: string;
|
|
@@ -524,28 +524,28 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
524
524
|
emoji?: boolean | undefined;
|
|
525
525
|
verbatim?: boolean | undefined;
|
|
526
526
|
} | undefined;
|
|
527
|
-
|
|
528
|
-
|
|
527
|
+
block_id?: string | undefined;
|
|
528
|
+
accessory?: unknown;
|
|
529
529
|
fields?: {
|
|
530
530
|
type: "plain_text" | "mrkdwn";
|
|
531
531
|
text: string;
|
|
532
532
|
emoji?: boolean | undefined;
|
|
533
533
|
verbatim?: boolean | undefined;
|
|
534
534
|
}[] | undefined;
|
|
535
|
+
element?: unknown;
|
|
536
|
+
label?: unknown;
|
|
537
|
+
hint?: unknown;
|
|
538
|
+
optional?: boolean | undefined;
|
|
535
539
|
alt_text?: string | undefined;
|
|
540
|
+
image_url?: string | undefined;
|
|
536
541
|
elements?: {
|
|
537
542
|
type: "plain_text" | "mrkdwn";
|
|
538
543
|
text: string;
|
|
539
544
|
emoji?: boolean | undefined;
|
|
540
545
|
verbatim?: boolean | undefined;
|
|
541
546
|
}[] | undefined;
|
|
542
|
-
block_id?: string | undefined;
|
|
543
|
-
accessory?: unknown;
|
|
544
|
-
element?: unknown;
|
|
545
|
-
label?: unknown;
|
|
546
|
-
hint?: unknown;
|
|
547
547
|
}, {
|
|
548
|
-
type: "
|
|
548
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
549
549
|
title?: {
|
|
550
550
|
type: "plain_text";
|
|
551
551
|
text: string;
|
|
@@ -557,26 +557,26 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
557
557
|
emoji?: boolean | undefined;
|
|
558
558
|
verbatim?: boolean | undefined;
|
|
559
559
|
} | undefined;
|
|
560
|
-
|
|
561
|
-
|
|
560
|
+
block_id?: string | undefined;
|
|
561
|
+
accessory?: unknown;
|
|
562
562
|
fields?: {
|
|
563
563
|
type: "plain_text" | "mrkdwn";
|
|
564
564
|
text: string;
|
|
565
565
|
emoji?: boolean | undefined;
|
|
566
566
|
verbatim?: boolean | undefined;
|
|
567
567
|
}[] | undefined;
|
|
568
|
+
element?: unknown;
|
|
569
|
+
label?: unknown;
|
|
570
|
+
hint?: unknown;
|
|
571
|
+
optional?: boolean | undefined;
|
|
568
572
|
alt_text?: string | undefined;
|
|
573
|
+
image_url?: string | undefined;
|
|
569
574
|
elements?: {
|
|
570
575
|
type: "plain_text" | "mrkdwn";
|
|
571
576
|
text: string;
|
|
572
577
|
emoji?: boolean | undefined;
|
|
573
578
|
verbatim?: boolean | undefined;
|
|
574
579
|
}[] | undefined;
|
|
575
|
-
block_id?: string | undefined;
|
|
576
|
-
accessory?: unknown;
|
|
577
|
-
element?: unknown;
|
|
578
|
-
label?: unknown;
|
|
579
|
-
hint?: unknown;
|
|
580
580
|
}>, "many">>;
|
|
581
581
|
metadata: z.ZodObject<{
|
|
582
582
|
verbosityLevel: z.ZodString;
|
|
@@ -611,23 +611,18 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
611
611
|
error: z.ZodString;
|
|
612
612
|
success: z.ZodBoolean;
|
|
613
613
|
}, "strip", z.ZodTypeAny, {
|
|
614
|
-
|
|
615
|
-
success: boolean;
|
|
614
|
+
response: string;
|
|
616
615
|
metadata: {
|
|
617
616
|
verbosityLevel: string;
|
|
618
617
|
technicalityLevel: string;
|
|
619
618
|
wordCount: number;
|
|
620
619
|
blockCount?: number | undefined;
|
|
621
620
|
};
|
|
622
|
-
response: string;
|
|
623
621
|
iterations: number;
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
input?: unknown;
|
|
627
|
-
output?: unknown;
|
|
628
|
-
}[] | undefined;
|
|
622
|
+
error: string;
|
|
623
|
+
success: boolean;
|
|
629
624
|
blocks?: {
|
|
630
|
-
type: "
|
|
625
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
631
626
|
title?: {
|
|
632
627
|
type: "plain_text";
|
|
633
628
|
text: string;
|
|
@@ -639,45 +634,45 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
639
634
|
emoji?: boolean | undefined;
|
|
640
635
|
verbatim?: boolean | undefined;
|
|
641
636
|
} | undefined;
|
|
642
|
-
|
|
643
|
-
|
|
637
|
+
block_id?: string | undefined;
|
|
638
|
+
accessory?: unknown;
|
|
644
639
|
fields?: {
|
|
645
640
|
type: "plain_text" | "mrkdwn";
|
|
646
641
|
text: string;
|
|
647
642
|
emoji?: boolean | undefined;
|
|
648
643
|
verbatim?: boolean | undefined;
|
|
649
644
|
}[] | undefined;
|
|
645
|
+
element?: unknown;
|
|
646
|
+
label?: unknown;
|
|
647
|
+
hint?: unknown;
|
|
648
|
+
optional?: boolean | undefined;
|
|
650
649
|
alt_text?: string | undefined;
|
|
650
|
+
image_url?: string | undefined;
|
|
651
651
|
elements?: {
|
|
652
652
|
type: "plain_text" | "mrkdwn";
|
|
653
653
|
text: string;
|
|
654
654
|
emoji?: boolean | undefined;
|
|
655
655
|
verbatim?: boolean | undefined;
|
|
656
656
|
}[] | undefined;
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
657
|
+
}[] | undefined;
|
|
658
|
+
toolCalls?: {
|
|
659
|
+
tool: string;
|
|
660
|
+
input?: unknown;
|
|
661
|
+
output?: unknown;
|
|
662
662
|
}[] | undefined;
|
|
663
663
|
}, {
|
|
664
|
-
|
|
665
|
-
success: boolean;
|
|
664
|
+
response: string;
|
|
666
665
|
metadata: {
|
|
667
666
|
verbosityLevel: string;
|
|
668
667
|
technicalityLevel: string;
|
|
669
668
|
wordCount: number;
|
|
670
669
|
blockCount?: number | undefined;
|
|
671
670
|
};
|
|
672
|
-
response: string;
|
|
673
671
|
iterations: number;
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
input?: unknown;
|
|
677
|
-
output?: unknown;
|
|
678
|
-
}[] | undefined;
|
|
672
|
+
error: string;
|
|
673
|
+
success: boolean;
|
|
679
674
|
blocks?: {
|
|
680
|
-
type: "
|
|
675
|
+
type: "section" | "header" | "divider" | "context" | "actions" | "input" | "file" | "image";
|
|
681
676
|
title?: {
|
|
682
677
|
type: "plain_text";
|
|
683
678
|
text: string;
|
|
@@ -689,26 +684,31 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
689
684
|
emoji?: boolean | undefined;
|
|
690
685
|
verbatim?: boolean | undefined;
|
|
691
686
|
} | undefined;
|
|
692
|
-
|
|
693
|
-
|
|
687
|
+
block_id?: string | undefined;
|
|
688
|
+
accessory?: unknown;
|
|
694
689
|
fields?: {
|
|
695
690
|
type: "plain_text" | "mrkdwn";
|
|
696
691
|
text: string;
|
|
697
692
|
emoji?: boolean | undefined;
|
|
698
693
|
verbatim?: boolean | undefined;
|
|
699
694
|
}[] | undefined;
|
|
695
|
+
element?: unknown;
|
|
696
|
+
label?: unknown;
|
|
697
|
+
hint?: unknown;
|
|
698
|
+
optional?: boolean | undefined;
|
|
700
699
|
alt_text?: string | undefined;
|
|
700
|
+
image_url?: string | undefined;
|
|
701
701
|
elements?: {
|
|
702
702
|
type: "plain_text" | "mrkdwn";
|
|
703
703
|
text: string;
|
|
704
704
|
emoji?: boolean | undefined;
|
|
705
705
|
verbatim?: boolean | undefined;
|
|
706
706
|
}[] | undefined;
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
707
|
+
}[] | undefined;
|
|
708
|
+
toolCalls?: {
|
|
709
|
+
tool: string;
|
|
710
|
+
input?: unknown;
|
|
711
|
+
output?: unknown;
|
|
712
712
|
}[] | undefined;
|
|
713
713
|
}>;
|
|
714
714
|
static readonly shortDescription = "AI agent for creating well-formatted Slack messages with adjustable verbosity and technicality";
|
package/dist/bubbles.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.0.0",
|
|
3
|
-
"generatedAt": "2026-02-
|
|
3
|
+
"generatedAt": "2026-02-02T12:00:47.429Z",
|
|
4
4
|
"totalCount": 58,
|
|
5
5
|
"bubbles": [
|
|
6
6
|
{
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"type": "service",
|
|
69
69
|
"shortDescription": "AI agent with LangGraph for tool-enabled conversations, multimodal support, and JSON mode",
|
|
70
70
|
"useCase": "- Add tools to enhance the AI agent's capabilities (web-search-tool, web-scrape-tool)",
|
|
71
|
-
"outputSchema": "{\n response: string // The AI agents final response to the user message. For text responses, returns plain text. If JSON mode is enabled, returns a JSON string. For image generation models (like gemini-2.5-flash-image-preview), returns base64-encoded image data with data URI format (data:image/png;base64,...),\n reasoning: string | undefined // The reasoning/thinking tokens from the model (if available). Present for deep research models and reasoning models.,\n toolCalls: { tool: string // Name of the tool that was called, input: unknown // Input parameters passed to the tool, output: unknown // Output returned by the tool }[] // Array of tool calls made during the conversation,\n iterations: number // Number of back-and-forth iterations in the agent workflow,\n totalCost: number | undefined // Total cost in USD for this request (includes tokens + web search for deep research models),\n error: string // Error message of the run, undefined if successful,\n success: boolean // Whether the agent execution completed successfully\n}",
|
|
71
|
+
"outputSchema": "{\n response: string // The AI agents final response to the user message. For text responses, returns plain text. If JSON mode is enabled, returns a JSON string. For image generation models (like gemini-2.5-flash-image-preview), returns base64-encoded image data with data URI format (data:image/png;base64,...),\n reasoning: string | null | undefined // The reasoning/thinking tokens from the model (if available). Present for deep research models and reasoning models.,\n toolCalls: { tool: string // Name of the tool that was called, input: unknown // Input parameters passed to the tool, output: unknown // Output returned by the tool }[] // Array of tool calls made during the conversation,\n iterations: number // Number of back-and-forth iterations in the agent workflow,\n totalCost: number | undefined // Total cost in USD for this request (includes tokens + web search for deep research models),\n error: string // Error message of the run, undefined if successful,\n success: boolean // Whether the agent execution completed successfully\n}",
|
|
72
72
|
"inputJsonSchema": {
|
|
73
73
|
"type": "object",
|
|
74
74
|
"properties": {
|
|
@@ -473,6 +473,7 @@
|
|
|
473
473
|
},
|
|
474
474
|
"reasoning": {
|
|
475
475
|
"type": "string",
|
|
476
|
+
"nullable": true,
|
|
476
477
|
"description": "The reasoning/thinking tokens from the model (if available). Present for deep research models and reasoning models."
|
|
477
478
|
},
|
|
478
479
|
"toolCalls": {
|
|
@@ -524,7 +525,7 @@
|
|
|
524
525
|
],
|
|
525
526
|
"additionalProperties": false
|
|
526
527
|
},
|
|
527
|
-
"usageExample": "// Example usage of ai-agent bubble\nconst aiAgent = new AIAgentBubble({\n message: \"example string\", // The message or question to send to the AI agent,\n images: [{ type: \"base64\" // default, data: \"example string\", mimeType: \"image/png\" // default, description: \"example string\" }] // example for array, // Array of base64 encoded images to include with the message (for multimodal AI models). Example: [{type: \"base64\", data: \"base64...\", mimeType: \"image/png\", description: \"A beautiful image of a cat\"}] or [{type: \"url\", url: \"https://example.com/image.png\", description: \"A beautiful image of a cat\"}],\n conversationHistory: [{ role: \"user\" // options: \"user\", \"assistant\", \"tool\" // The role of the message sender, content: \"example string\" // The message content, toolCallId: \"example string\" // Tool call ID for tool messages, name: \"example string\" // Tool name for tool messages }], // Previous conversation messages for multi-turn conversations. When provided, messages are sent as separate turns to enable KV cache optimization. Format: [{role: \"user\", content: \"...\"}, {role: \"assistant\", content: \"...\"}, ...],\n systemPrompt: \"You are a helpful AI assistant\" // default, // System prompt that defines the AI agents behavior and personality,\n name: \"AI Agent\" // default, // A friendly name for the AI agent,\n model: { model: \"openai/gpt-5\" // options: \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5.1\", \"openai/gpt-5.2\", \"google/gemini-2.5-pro\", \"google/gemini-2.5-flash\", \"google/gemini-2.5-flash-lite\", \"google/gemini-2.5-flash-image-preview\", \"google/gemini-3-pro-preview\", \"google/gemini-3-pro-image-preview\", \"google/gemini-3-flash-preview\", \"anthropic/claude-sonnet-4-5\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-haiku-4-5\", \"openrouter/x-ai/grok-code-fast-1\", \"openrouter/z-ai/glm-4.6\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/google/gemini-3-pro-preview\", \"openrouter/morph/morph-v3-large\", \"openrouter/openai/gpt-oss-120b\", \"openrouter/openai/o3-deep-research\", \"openrouter/openai/o4-mini-deep-research\" // AI model to use (format: provider/model-name)., temperature: 1 // default // Temperature for response randomness (0 = deterministic, 2 = very random), maxTokens: 64000 // default // Maximum number of tokens to generate in response, keep at default of 40000 unless the response is expected to be certain length, reasoningEffort: \"low\" // options: \"low\", \"medium\", \"high\" // Reasoning effort for model. If not specified, uses primary model reasoningEffort., maxRetries: 3 // default // Maximum number of retries for API calls (default: 3). Useful for handling transient errors like 503 Service Unavailable., provider: [\"example string\"] // Providers for ai agent (open router only)., jsonMode: false // default // When true, returns clean JSON response, you must provide the exact JSON schema in the system prompt, backupModel: { model: \"openai/gpt-5\" // options: \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5.1\", \"openai/gpt-5.2\", \"google/gemini-2.5-pro\", \"google/gemini-2.5-flash\", \"google/gemini-2.5-flash-lite\", \"google/gemini-2.5-flash-image-preview\", \"google/gemini-3-pro-preview\", \"google/gemini-3-pro-image-preview\", \"google/gemini-3-flash-preview\", \"anthropic/claude-sonnet-4-5\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-haiku-4-5\", \"openrouter/x-ai/grok-code-fast-1\", \"openrouter/z-ai/glm-4.6\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/google/gemini-3-pro-preview\", \"openrouter/morph/morph-v3-large\", \"openrouter/openai/gpt-oss-120b\", \"openrouter/openai/o3-deep-research\", \"openrouter/openai/o4-mini-deep-research\" // Backup AI model to use if the primary model fails (format: provider/model-name)., temperature: 42 // Temperature for backup model. If not specified, uses primary model temperature., maxTokens: 42 // Max tokens for backup model. If not specified, uses primary model maxTokens., reasoningEffort: \"low\" // options: \"low\", \"medium\", \"high\" // Reasoning effort for backup model. If not specified, uses primary model reasoningEffort., maxRetries: 42 // Max retries for backup model. If not specified, uses primary model maxRetries. } // structure // Backup model configuration to use if the primary model fails. } // structure, // AI model configuration including provider, temperature, and tokens, retries, and json mode. Always include this.,\n tools: [{ name: \"web-search-tool\" // options: \"web-search-tool\", \"web-scrape-tool\", \"web-crawl-tool\", \"web-extract-tool\", \"research-agent-tool\", \"reddit-scrape-tool\", \"instagram-tool\", \"list-bubbles-tool\", \"get-bubble-details-tool\", \"get-trigger-detail-tool\", \"bubbleflow-validation-tool\", \"code-edit-tool\", \"chart-js-tool\", \"amazon-shopping-tool\", \"linkedin-tool\", \"tiktok-tool\", \"twitter-tool\", \"google-maps-tool\", \"youtube-tool\", \"people-search-tool\", \"sql-query-tool\" // Name of the tool type or tool bubble to enable for the AI agent, config: {} // Configuration for the tool or tool bubble }] // example for array, // Array of pre-registered tools the AI agent can use. Can be tool types (web-search-tool, web-scrape-tool, web-crawl-tool, web-extract-tool, instagram-tool). If using image models, set the tools to [],\n customTools: [{ name: \"example string\" // Unique name for your custom tool (e.g., \"calculate-tax\"), description: \"example string\" // Description of what the tool does - helps the AI know when to use it, schema: {} // Zod schema object defining the tool parameters. Can be either a plain object (e.g., { amount: z.number() }) or a Zod object directly (e.g., z.object({ amount: z.number() })). }] // example for array, // Array of custom runtime-defined tools with their own schemas and functions. Use this to add domain-specific tools without pre-registration. Example: [{ name: \"calculate-tax\", description: \"Calculates sales tax\", schema: { amount: z.number() }, func: async (input) => {...} }],\n maxIterations: 40 // default, // Maximum number of iterations for the agent workflow, 5 iterations per turn of conversation,\n streaming: false // default, // Enable real-time streaming of tokens, tool calls, and iteration progress,\n expectedOutputSchema: \"example string\", // Zod schema or JSON schema string that defines the expected structure of the AI response. When provided, automatically enables JSON mode and instructs the AI to output in the exact format. Example: z.object({ summary: z.string(), items: z.array(z.object({ name: z.string(), score: z.number() })) }),\n});\n\nconst result = await aiAgent.action();\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`${metadata.name} failed: ${result.error}`);\n}\n\n// outputSchema for result.data:\n// {\n// response: string // The AI agents final response to the user message. For text responses, returns plain text. If JSON mode is enabled, returns a JSON string. For image generation models (like gemini-2.5-flash-image-preview), returns base64-encoded image data with data URI format (data:image/png;base64,...),\n// reasoning: string | undefined // The reasoning/thinking tokens from the model (if available). Present for deep research models and reasoning models.,\n// toolCalls: { tool: string // Name of the tool that was called, input: unknown // Input parameters passed to the tool, output: unknown // Output returned by the tool }[] // Array of tool calls made during the conversation,\n// iterations: number // Number of back-and-forth iterations in the agent workflow,\n// totalCost: number | undefined // Total cost in USD for this request (includes tokens + web search for deep research models),\n// error: string // Error message of the run, undefined if successful,\n// success: boolean // Whether the agent execution completed successfully\n// }\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
528
|
+
"usageExample": "// Example usage of ai-agent bubble\nconst aiAgent = new AIAgentBubble({\n message: \"example string\", // The message or question to send to the AI agent,\n images: [{ type: \"base64\" // default, data: \"example string\", mimeType: \"image/png\" // default, description: \"example string\" }] // example for array, // Array of base64 encoded images to include with the message (for multimodal AI models). Example: [{type: \"base64\", data: \"base64...\", mimeType: \"image/png\", description: \"A beautiful image of a cat\"}] or [{type: \"url\", url: \"https://example.com/image.png\", description: \"A beautiful image of a cat\"}],\n conversationHistory: [{ role: \"user\" // options: \"user\", \"assistant\", \"tool\" // The role of the message sender, content: \"example string\" // The message content, toolCallId: \"example string\" // Tool call ID for tool messages, name: \"example string\" // Tool name for tool messages }], // Previous conversation messages for multi-turn conversations. When provided, messages are sent as separate turns to enable KV cache optimization. Format: [{role: \"user\", content: \"...\"}, {role: \"assistant\", content: \"...\"}, ...],\n systemPrompt: \"You are a helpful AI assistant\" // default, // System prompt that defines the AI agents behavior and personality,\n name: \"AI Agent\" // default, // A friendly name for the AI agent,\n model: { model: \"openai/gpt-5\" // options: \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5.1\", \"openai/gpt-5.2\", \"google/gemini-2.5-pro\", \"google/gemini-2.5-flash\", \"google/gemini-2.5-flash-lite\", \"google/gemini-2.5-flash-image-preview\", \"google/gemini-3-pro-preview\", \"google/gemini-3-pro-image-preview\", \"google/gemini-3-flash-preview\", \"anthropic/claude-sonnet-4-5\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-haiku-4-5\", \"openrouter/x-ai/grok-code-fast-1\", \"openrouter/z-ai/glm-4.6\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/google/gemini-3-pro-preview\", \"openrouter/morph/morph-v3-large\", \"openrouter/openai/gpt-oss-120b\", \"openrouter/openai/o3-deep-research\", \"openrouter/openai/o4-mini-deep-research\" // AI model to use (format: provider/model-name)., temperature: 1 // default // Temperature for response randomness (0 = deterministic, 2 = very random), maxTokens: 64000 // default // Maximum number of tokens to generate in response, keep at default of 40000 unless the response is expected to be certain length, reasoningEffort: \"low\" // options: \"low\", \"medium\", \"high\" // Reasoning effort for model. If not specified, uses primary model reasoningEffort., maxRetries: 3 // default // Maximum number of retries for API calls (default: 3). Useful for handling transient errors like 503 Service Unavailable., provider: [\"example string\"] // Providers for ai agent (open router only)., jsonMode: false // default // When true, returns clean JSON response, you must provide the exact JSON schema in the system prompt, backupModel: { model: \"openai/gpt-5\" // options: \"openai/gpt-5\", \"openai/gpt-5-mini\", \"openai/gpt-5.1\", \"openai/gpt-5.2\", \"google/gemini-2.5-pro\", \"google/gemini-2.5-flash\", \"google/gemini-2.5-flash-lite\", \"google/gemini-2.5-flash-image-preview\", \"google/gemini-3-pro-preview\", \"google/gemini-3-pro-image-preview\", \"google/gemini-3-flash-preview\", \"anthropic/claude-sonnet-4-5\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-haiku-4-5\", \"openrouter/x-ai/grok-code-fast-1\", \"openrouter/z-ai/glm-4.6\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/google/gemini-3-pro-preview\", \"openrouter/morph/morph-v3-large\", \"openrouter/openai/gpt-oss-120b\", \"openrouter/openai/o3-deep-research\", \"openrouter/openai/o4-mini-deep-research\" // Backup AI model to use if the primary model fails (format: provider/model-name)., temperature: 42 // Temperature for backup model. If not specified, uses primary model temperature., maxTokens: 42 // Max tokens for backup model. If not specified, uses primary model maxTokens., reasoningEffort: \"low\" // options: \"low\", \"medium\", \"high\" // Reasoning effort for backup model. If not specified, uses primary model reasoningEffort., maxRetries: 42 // Max retries for backup model. If not specified, uses primary model maxRetries. } // structure // Backup model configuration to use if the primary model fails. } // structure, // AI model configuration including provider, temperature, and tokens, retries, and json mode. Always include this.,\n tools: [{ name: \"web-search-tool\" // options: \"web-search-tool\", \"web-scrape-tool\", \"web-crawl-tool\", \"web-extract-tool\", \"research-agent-tool\", \"reddit-scrape-tool\", \"instagram-tool\", \"list-bubbles-tool\", \"get-bubble-details-tool\", \"get-trigger-detail-tool\", \"bubbleflow-validation-tool\", \"code-edit-tool\", \"chart-js-tool\", \"amazon-shopping-tool\", \"linkedin-tool\", \"tiktok-tool\", \"twitter-tool\", \"google-maps-tool\", \"youtube-tool\", \"people-search-tool\", \"sql-query-tool\" // Name of the tool type or tool bubble to enable for the AI agent, config: {} // Configuration for the tool or tool bubble }] // example for array, // Array of pre-registered tools the AI agent can use. Can be tool types (web-search-tool, web-scrape-tool, web-crawl-tool, web-extract-tool, instagram-tool). If using image models, set the tools to [],\n customTools: [{ name: \"example string\" // Unique name for your custom tool (e.g., \"calculate-tax\"), description: \"example string\" // Description of what the tool does - helps the AI know when to use it, schema: {} // Zod schema object defining the tool parameters. Can be either a plain object (e.g., { amount: z.number() }) or a Zod object directly (e.g., z.object({ amount: z.number() })). }] // example for array, // Array of custom runtime-defined tools with their own schemas and functions. Use this to add domain-specific tools without pre-registration. Example: [{ name: \"calculate-tax\", description: \"Calculates sales tax\", schema: { amount: z.number() }, func: async (input) => {...} }],\n maxIterations: 40 // default, // Maximum number of iterations for the agent workflow, 5 iterations per turn of conversation,\n streaming: false // default, // Enable real-time streaming of tokens, tool calls, and iteration progress,\n expectedOutputSchema: \"example string\", // Zod schema or JSON schema string that defines the expected structure of the AI response. When provided, automatically enables JSON mode and instructs the AI to output in the exact format. Example: z.object({ summary: z.string(), items: z.array(z.object({ name: z.string(), score: z.number() })) }),\n});\n\nconst result = await aiAgent.action();\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`${metadata.name} failed: ${result.error}`);\n}\n\n// outputSchema for result.data:\n// {\n// response: string // The AI agents final response to the user message. For text responses, returns plain text. If JSON mode is enabled, returns a JSON string. For image generation models (like gemini-2.5-flash-image-preview), returns base64-encoded image data with data URI format (data:image/png;base64,...),\n// reasoning: string | null | undefined // The reasoning/thinking tokens from the model (if available). Present for deep research models and reasoning models.,\n// toolCalls: { tool: string // Name of the tool that was called, input: unknown // Input parameters passed to the tool, output: unknown // Output returned by the tool }[] // Array of tool calls made during the conversation,\n// iterations: number // Number of back-and-forth iterations in the agent workflow,\n// totalCost: number | undefined // Total cost in USD for this request (includes tokens + web search for deep research models),\n// error: string // Error message of the run, undefined if successful,\n// success: boolean // Whether the agent execution completed successfully\n// }\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
528
529
|
"requiredCredentials": [
|
|
529
530
|
"OPENAI_CRED",
|
|
530
531
|
"GOOGLE_GEMINI_CRED",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bubblelab/bubble-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.78",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"puppeteer-core": "^24.10.0",
|
|
41
41
|
"resend": "^4.8.0",
|
|
42
42
|
"zod": "^3.24.1",
|
|
43
|
-
"@bubblelab/shared-schemas": "0.1.
|
|
43
|
+
"@bubblelab/shared-schemas": "0.1.79"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"zod-to-json-schema": "^3.24.6",
|