@bubblelab/bubble-core 0.1.194 → 0.1.196
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 +142 -142
- package/dist/bubbles/service-bubble/agi-inc.d.ts +28 -28
- package/dist/bubbles/service-bubble/ai-agent.d.ts +8 -8
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +35 -8
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/airtable.d.ts +36 -36
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts +2 -2
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +4 -4
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +12 -12
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts +2 -2
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +8 -8
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-detail.d.ts +52 -52
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +18 -18
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +10 -10
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +27 -27
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +8 -8
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +131 -131
- package/dist/bubbles/service-bubble/apify/apify.d.ts +4 -4
- package/dist/bubbles/service-bubble/ashby/ashby.d.ts +10 -10
- package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +84 -84
- package/dist/bubbles/service-bubble/attio/attio.d.ts +10 -10
- package/dist/bubbles/service-bubble/attio/attio.schema.d.ts +28 -28
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +5 -5
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +30 -30
- package/dist/bubbles/service-bubble/confluence/confluence.d.ts +11 -11
- package/dist/bubbles/service-bubble/confluence/confluence.schema.d.ts +24 -24
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +48 -48
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +158 -158
- package/dist/bubbles/service-bubble/eleven-labs.d.ts +4 -4
- package/dist/bubbles/service-bubble/firecrawl.d.ts +1037 -1037
- package/dist/bubbles/service-bubble/followupboss.d.ts +104 -104
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.d.ts +56 -56
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.schema.d.ts +108 -108
- package/dist/bubbles/service-bubble/github.d.ts +224 -224
- package/dist/bubbles/service-bubble/gmail.d.ts +188 -188
- package/dist/bubbles/service-bubble/google-calendar.d.ts +126 -126
- package/dist/bubbles/service-bubble/google-drive.d.ts +4 -4
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +22 -22
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +48 -48
- package/dist/bubbles/service-bubble/hello-world.d.ts +4 -4
- package/dist/bubbles/service-bubble/http.d.ts +10 -10
- package/dist/bubbles/service-bubble/hubspot/hubspot.d.ts +1 -1
- package/dist/bubbles/service-bubble/hubspot/hubspot.schema.d.ts +8 -8
- package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
- package/dist/bubbles/service-bubble/jira/jira.d.ts +179 -179
- package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +94 -94
- package/dist/bubbles/service-bubble/linear/linear.d.ts +12 -12
- package/dist/bubbles/service-bubble/linear/linear.schema.d.ts +32 -32
- package/dist/bubbles/service-bubble/notion/notion.d.ts +2074 -2074
- package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +8 -8
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/posthog/posthog.d.ts +16 -16
- package/dist/bubbles/service-bubble/posthog/posthog.schema.d.ts +26 -26
- package/dist/bubbles/service-bubble/resend.d.ts +26 -26
- package/dist/bubbles/service-bubble/sendsafely/sendsafely.d.ts +2 -2
- package/dist/bubbles/service-bubble/sendsafely/sendsafely.schema.d.ts +12 -12
- package/dist/bubbles/service-bubble/slack/slack.d.ts +360 -360
- package/dist/bubbles/service-bubble/storage.d.ts +36 -36
- package/dist/bubbles/service-bubble/stripe/stripe.d.ts +93 -93
- package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +143 -143
- package/dist/bubbles/service-bubble/telegram.d.ts +834 -834
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +1 -1
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +13 -13
- package/dist/bubbles/tool-bubble/browser-tools/_shared/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-accept-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-received-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-sent-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +16 -16
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +74 -74
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/chart-js-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +50 -50
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +10 -10
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +232 -232
- package/dist/bubbles/tool-bubble/people-search-tool.d.ts +44 -44
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +36 -36
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +32 -32
- package/dist/bubbles/tool-bubble/tool-template.d.ts +8 -8
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +92 -92
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/yc-scraper-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +14 -14
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +32 -32
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +12 -12
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +76 -76
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +8 -8
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +28 -28
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +84 -84
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +4 -4
- package/dist/bubbles.json +1 -1
- package/dist/utils/agent-formatter.d.ts.map +1 -1
- package/dist/utils/agent-formatter.js +3 -0
- package/dist/utils/agent-formatter.js.map +1 -1
- package/package.json +2 -2
|
@@ -203,9 +203,9 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
203
203
|
ok: boolean;
|
|
204
204
|
status?: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated" | undefined;
|
|
205
205
|
created_at?: string | undefined;
|
|
206
|
+
agent_name?: string | undefined;
|
|
206
207
|
session_id?: string | undefined;
|
|
207
208
|
vnc_url?: string | undefined;
|
|
208
|
-
agent_name?: string | undefined;
|
|
209
209
|
}, {
|
|
210
210
|
success: boolean;
|
|
211
211
|
error: string;
|
|
@@ -213,9 +213,9 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
213
213
|
ok: boolean;
|
|
214
214
|
status?: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated" | undefined;
|
|
215
215
|
created_at?: string | undefined;
|
|
216
|
+
agent_name?: string | undefined;
|
|
216
217
|
session_id?: string | undefined;
|
|
217
218
|
vnc_url?: string | undefined;
|
|
218
|
-
agent_name?: string | undefined;
|
|
219
219
|
}>, z.ZodObject<{
|
|
220
220
|
operation: z.ZodLiteral<"list_sessions">;
|
|
221
221
|
ok: z.ZodBoolean;
|
|
@@ -228,14 +228,14 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
228
228
|
}, "strip", z.ZodTypeAny, {
|
|
229
229
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
230
230
|
created_at: string;
|
|
231
|
-
session_id: string;
|
|
232
231
|
agent_name: string;
|
|
232
|
+
session_id: string;
|
|
233
233
|
vnc_url?: string | undefined;
|
|
234
234
|
}, {
|
|
235
235
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
236
236
|
created_at: string;
|
|
237
|
-
session_id: string;
|
|
238
237
|
agent_name: string;
|
|
238
|
+
session_id: string;
|
|
239
239
|
vnc_url?: string | undefined;
|
|
240
240
|
}>, "many">>;
|
|
241
241
|
error: z.ZodString;
|
|
@@ -248,8 +248,8 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
248
248
|
sessions?: {
|
|
249
249
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
250
250
|
created_at: string;
|
|
251
|
-
session_id: string;
|
|
252
251
|
agent_name: string;
|
|
252
|
+
session_id: string;
|
|
253
253
|
vnc_url?: string | undefined;
|
|
254
254
|
}[] | undefined;
|
|
255
255
|
}, {
|
|
@@ -260,8 +260,8 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
260
260
|
sessions?: {
|
|
261
261
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
262
262
|
created_at: string;
|
|
263
|
-
session_id: string;
|
|
264
263
|
agent_name: string;
|
|
264
|
+
session_id: string;
|
|
265
265
|
vnc_url?: string | undefined;
|
|
266
266
|
}[] | undefined;
|
|
267
267
|
}>, z.ZodObject<{
|
|
@@ -276,14 +276,14 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
276
276
|
}, "strip", z.ZodTypeAny, {
|
|
277
277
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
278
278
|
created_at: string;
|
|
279
|
-
session_id: string;
|
|
280
279
|
agent_name: string;
|
|
280
|
+
session_id: string;
|
|
281
281
|
vnc_url?: string | undefined;
|
|
282
282
|
}, {
|
|
283
283
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
284
284
|
created_at: string;
|
|
285
|
-
session_id: string;
|
|
286
285
|
agent_name: string;
|
|
286
|
+
session_id: string;
|
|
287
287
|
vnc_url?: string | undefined;
|
|
288
288
|
}>>;
|
|
289
289
|
error: z.ZodString;
|
|
@@ -296,8 +296,8 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
296
296
|
session?: {
|
|
297
297
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
298
298
|
created_at: string;
|
|
299
|
-
session_id: string;
|
|
300
299
|
agent_name: string;
|
|
300
|
+
session_id: string;
|
|
301
301
|
vnc_url?: string | undefined;
|
|
302
302
|
} | undefined;
|
|
303
303
|
}, {
|
|
@@ -308,8 +308,8 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
308
308
|
session?: {
|
|
309
309
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
310
310
|
created_at: string;
|
|
311
|
-
session_id: string;
|
|
312
311
|
agent_name: string;
|
|
312
|
+
session_id: string;
|
|
313
313
|
vnc_url?: string | undefined;
|
|
314
314
|
} | undefined;
|
|
315
315
|
}>, z.ZodObject<{
|
|
@@ -400,13 +400,13 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
400
400
|
timestamp: z.ZodString;
|
|
401
401
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
402
402
|
}, "strip", z.ZodTypeAny, {
|
|
403
|
-
type: "
|
|
403
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
404
404
|
content: string | Record<string, unknown>;
|
|
405
405
|
id: number;
|
|
406
406
|
timestamp: string;
|
|
407
407
|
metadata?: Record<string, unknown> | undefined;
|
|
408
408
|
}, {
|
|
409
|
-
type: "
|
|
409
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
410
410
|
content: string | Record<string, unknown>;
|
|
411
411
|
id: number;
|
|
412
412
|
timestamp: string;
|
|
@@ -423,7 +423,7 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
423
423
|
ok: boolean;
|
|
424
424
|
status?: "error" | "running" | "waiting_for_input" | "finished" | undefined;
|
|
425
425
|
messages?: {
|
|
426
|
-
type: "
|
|
426
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
427
427
|
content: string | Record<string, unknown>;
|
|
428
428
|
id: number;
|
|
429
429
|
timestamp: string;
|
|
@@ -437,7 +437,7 @@ declare const AGIIncResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
|
|
|
437
437
|
ok: boolean;
|
|
438
438
|
status?: "error" | "running" | "waiting_for_input" | "finished" | undefined;
|
|
439
439
|
messages?: {
|
|
440
|
-
type: "
|
|
440
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
441
441
|
content: string | Record<string, unknown>;
|
|
442
442
|
id: number;
|
|
443
443
|
timestamp: string;
|
|
@@ -756,9 +756,9 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
756
756
|
ok: boolean;
|
|
757
757
|
status?: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated" | undefined;
|
|
758
758
|
created_at?: string | undefined;
|
|
759
|
+
agent_name?: string | undefined;
|
|
759
760
|
session_id?: string | undefined;
|
|
760
761
|
vnc_url?: string | undefined;
|
|
761
|
-
agent_name?: string | undefined;
|
|
762
762
|
}, {
|
|
763
763
|
success: boolean;
|
|
764
764
|
error: string;
|
|
@@ -766,9 +766,9 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
766
766
|
ok: boolean;
|
|
767
767
|
status?: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated" | undefined;
|
|
768
768
|
created_at?: string | undefined;
|
|
769
|
+
agent_name?: string | undefined;
|
|
769
770
|
session_id?: string | undefined;
|
|
770
771
|
vnc_url?: string | undefined;
|
|
771
|
-
agent_name?: string | undefined;
|
|
772
772
|
}>, z.ZodObject<{
|
|
773
773
|
operation: z.ZodLiteral<"list_sessions">;
|
|
774
774
|
ok: z.ZodBoolean;
|
|
@@ -781,14 +781,14 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
781
781
|
}, "strip", z.ZodTypeAny, {
|
|
782
782
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
783
783
|
created_at: string;
|
|
784
|
-
session_id: string;
|
|
785
784
|
agent_name: string;
|
|
785
|
+
session_id: string;
|
|
786
786
|
vnc_url?: string | undefined;
|
|
787
787
|
}, {
|
|
788
788
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
789
789
|
created_at: string;
|
|
790
|
-
session_id: string;
|
|
791
790
|
agent_name: string;
|
|
791
|
+
session_id: string;
|
|
792
792
|
vnc_url?: string | undefined;
|
|
793
793
|
}>, "many">>;
|
|
794
794
|
error: z.ZodString;
|
|
@@ -801,8 +801,8 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
801
801
|
sessions?: {
|
|
802
802
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
803
803
|
created_at: string;
|
|
804
|
-
session_id: string;
|
|
805
804
|
agent_name: string;
|
|
805
|
+
session_id: string;
|
|
806
806
|
vnc_url?: string | undefined;
|
|
807
807
|
}[] | undefined;
|
|
808
808
|
}, {
|
|
@@ -813,8 +813,8 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
813
813
|
sessions?: {
|
|
814
814
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
815
815
|
created_at: string;
|
|
816
|
-
session_id: string;
|
|
817
816
|
agent_name: string;
|
|
817
|
+
session_id: string;
|
|
818
818
|
vnc_url?: string | undefined;
|
|
819
819
|
}[] | undefined;
|
|
820
820
|
}>, z.ZodObject<{
|
|
@@ -829,14 +829,14 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
829
829
|
}, "strip", z.ZodTypeAny, {
|
|
830
830
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
831
831
|
created_at: string;
|
|
832
|
-
session_id: string;
|
|
833
832
|
agent_name: string;
|
|
833
|
+
session_id: string;
|
|
834
834
|
vnc_url?: string | undefined;
|
|
835
835
|
}, {
|
|
836
836
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
837
837
|
created_at: string;
|
|
838
|
-
session_id: string;
|
|
839
838
|
agent_name: string;
|
|
839
|
+
session_id: string;
|
|
840
840
|
vnc_url?: string | undefined;
|
|
841
841
|
}>>;
|
|
842
842
|
error: z.ZodString;
|
|
@@ -849,8 +849,8 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
849
849
|
session?: {
|
|
850
850
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
851
851
|
created_at: string;
|
|
852
|
-
session_id: string;
|
|
853
852
|
agent_name: string;
|
|
853
|
+
session_id: string;
|
|
854
854
|
vnc_url?: string | undefined;
|
|
855
855
|
} | undefined;
|
|
856
856
|
}, {
|
|
@@ -861,8 +861,8 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
861
861
|
session?: {
|
|
862
862
|
status: "error" | "completed" | "initializing" | "ready" | "running" | "paused" | "terminated";
|
|
863
863
|
created_at: string;
|
|
864
|
-
session_id: string;
|
|
865
864
|
agent_name: string;
|
|
865
|
+
session_id: string;
|
|
866
866
|
vnc_url?: string | undefined;
|
|
867
867
|
} | undefined;
|
|
868
868
|
}>, z.ZodObject<{
|
|
@@ -953,13 +953,13 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
953
953
|
timestamp: z.ZodString;
|
|
954
954
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
955
955
|
}, "strip", z.ZodTypeAny, {
|
|
956
|
-
type: "
|
|
956
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
957
957
|
content: string | Record<string, unknown>;
|
|
958
958
|
id: number;
|
|
959
959
|
timestamp: string;
|
|
960
960
|
metadata?: Record<string, unknown> | undefined;
|
|
961
961
|
}, {
|
|
962
|
-
type: "
|
|
962
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
963
963
|
content: string | Record<string, unknown>;
|
|
964
964
|
id: number;
|
|
965
965
|
timestamp: string;
|
|
@@ -976,7 +976,7 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
976
976
|
ok: boolean;
|
|
977
977
|
status?: "error" | "running" | "waiting_for_input" | "finished" | undefined;
|
|
978
978
|
messages?: {
|
|
979
|
-
type: "
|
|
979
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
980
980
|
content: string | Record<string, unknown>;
|
|
981
981
|
id: number;
|
|
982
982
|
timestamp: string;
|
|
@@ -990,7 +990,7 @@ export declare class AGIIncBubble<T extends AGIIncParams = AGIIncParams> extends
|
|
|
990
990
|
ok: boolean;
|
|
991
991
|
status?: "error" | "running" | "waiting_for_input" | "finished" | undefined;
|
|
992
992
|
messages?: {
|
|
993
|
-
type: "
|
|
993
|
+
type: "THOUGHT" | "QUESTION" | "USER" | "DONE" | "ERROR" | "LOG";
|
|
994
994
|
content: string | Record<string, unknown>;
|
|
995
995
|
id: number;
|
|
996
996
|
timestamp: string;
|
|
@@ -148,11 +148,11 @@ declare const AIAgentParamsSchema: z.ZodObject<{
|
|
|
148
148
|
credentials: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>>;
|
|
149
149
|
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
150
150
|
}, "strip", z.ZodTypeAny, {
|
|
151
|
-
name: "
|
|
151
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
152
152
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
153
153
|
config?: Record<string, unknown> | undefined;
|
|
154
154
|
}, {
|
|
155
|
-
name: "
|
|
155
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
156
156
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
157
157
|
config?: Record<string, unknown> | undefined;
|
|
158
158
|
}>, "many">>;
|
|
@@ -221,7 +221,7 @@ declare const AIAgentParamsSchema: z.ZodObject<{
|
|
|
221
221
|
} | undefined;
|
|
222
222
|
};
|
|
223
223
|
tools: {
|
|
224
|
-
name: "
|
|
224
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
225
225
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
226
226
|
config?: Record<string, unknown> | undefined;
|
|
227
227
|
}[];
|
|
@@ -287,7 +287,7 @@ declare const AIAgentParamsSchema: z.ZodObject<{
|
|
|
287
287
|
} | undefined;
|
|
288
288
|
} | undefined;
|
|
289
289
|
tools?: {
|
|
290
|
-
name: "
|
|
290
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
291
291
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
292
292
|
config?: Record<string, unknown> | undefined;
|
|
293
293
|
}[] | undefined;
|
|
@@ -482,11 +482,11 @@ export declare class AIAgentBubble extends ServiceBubble<AIAgentParamsParsed, AI
|
|
|
482
482
|
credentials: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>>;
|
|
483
483
|
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
484
484
|
}, "strip", z.ZodTypeAny, {
|
|
485
|
-
name: "
|
|
485
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
486
486
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
487
487
|
config?: Record<string, unknown> | undefined;
|
|
488
488
|
}, {
|
|
489
|
-
name: "
|
|
489
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
490
490
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
491
491
|
config?: Record<string, unknown> | undefined;
|
|
492
492
|
}>, "many">>;
|
|
@@ -555,7 +555,7 @@ export declare class AIAgentBubble extends ServiceBubble<AIAgentParamsParsed, AI
|
|
|
555
555
|
} | undefined;
|
|
556
556
|
};
|
|
557
557
|
tools: {
|
|
558
|
-
name: "
|
|
558
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
559
559
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
560
560
|
config?: Record<string, unknown> | undefined;
|
|
561
561
|
}[];
|
|
@@ -621,7 +621,7 @@ export declare class AIAgentBubble extends ServiceBubble<AIAgentParamsParsed, AI
|
|
|
621
621
|
} | undefined;
|
|
622
622
|
} | undefined;
|
|
623
623
|
tools?: {
|
|
624
|
-
name: "
|
|
624
|
+
name: "get-bubble-details-tool" | "get-trigger-detail-tool" | "list-bubbles-tool" | "list-capabilities-tool" | "sql-query-tool" | "chart-js-tool" | "web-search-tool" | "web-scrape-tool" | "web-crawl-tool" | "web-extract-tool" | "research-agent-tool" | "reddit-scrape-tool" | "bubbleflow-validation-tool" | "code-edit-tool" | "instagram-tool" | "linkedin-tool" | "tiktok-tool" | "twitter-tool" | "google-maps-tool" | "youtube-tool" | "amazon-shopping-tool" | "people-search-tool";
|
|
625
625
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
626
626
|
config?: Record<string, unknown> | undefined;
|
|
627
627
|
}[] | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-agent.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,cAAc,EAGf,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAEL,SAAS,
|
|
1
|
+
{"version":3,"file":"ai-agent.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { CredentialType, BUBBLE_CREDENTIAL_OPTIONS, RECOMMENDED_MODELS, } from '
|
|
|
4
4
|
import { StateGraph, MessagesAnnotation } from '@langchain/langgraph';
|
|
5
5
|
import { ChatOpenAI } from '@langchain/openai';
|
|
6
6
|
import { ChatAnthropic } from '@langchain/anthropic';
|
|
7
|
-
import { HumanMessage, AIMessage, ToolMessage, AIMessageChunk, } from '@langchain/core/messages';
|
|
7
|
+
import { HumanMessage, AIMessage, SystemMessage, ToolMessage, AIMessageChunk, } from '@langchain/core/messages';
|
|
8
8
|
import { DynamicStructuredTool } from '@langchain/core/tools';
|
|
9
9
|
import { AvailableModels } from '@bubblelab/shared-schemas';
|
|
10
10
|
import { AvailableTools, } from '../../types/available-tools.js';
|
|
@@ -266,6 +266,21 @@ const AIAgentResultSchema = z.object({
|
|
|
266
266
|
.boolean()
|
|
267
267
|
.describe('Whether the agent execution completed successfully'),
|
|
268
268
|
});
|
|
269
|
+
function mergeCapabilityInputDefaults(inputDefs, userInputs) {
|
|
270
|
+
const merged = {};
|
|
271
|
+
if (inputDefs) {
|
|
272
|
+
for (const def of inputDefs) {
|
|
273
|
+
if (def.default !== undefined) {
|
|
274
|
+
merged[def.name] = def.default;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
// User values override defaults
|
|
279
|
+
if (userInputs) {
|
|
280
|
+
Object.assign(merged, userInputs);
|
|
281
|
+
}
|
|
282
|
+
return merged;
|
|
283
|
+
}
|
|
269
284
|
export class AIAgentBubble extends ServiceBubble {
|
|
270
285
|
static type = 'service';
|
|
271
286
|
static service = 'ai-agent';
|
|
@@ -945,7 +960,7 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
945
960
|
try {
|
|
946
961
|
const ctx = {
|
|
947
962
|
credentials: this.resolveCapabilityCredentials(capDef, capConfig),
|
|
948
|
-
inputs: capConfig.inputs
|
|
963
|
+
inputs: mergeCapabilityInputDefaults(capDef.metadata.inputs, capConfig.inputs),
|
|
949
964
|
bubbleContext: this.context,
|
|
950
965
|
};
|
|
951
966
|
const toolFuncs = capDef.createTools(ctx);
|
|
@@ -1054,7 +1069,7 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
1054
1069
|
// Shared ctx captured by all tool funcs via closure — we mutate bubbleContext per-tool
|
|
1055
1070
|
const ctx = {
|
|
1056
1071
|
credentials: this.resolveCapabilityCredentials(capDef, capConfig),
|
|
1057
|
-
inputs: capConfig.inputs
|
|
1072
|
+
inputs: mergeCapabilityInputDefaults(capDef.metadata.inputs, capConfig.inputs),
|
|
1058
1073
|
bubbleContext: this.context,
|
|
1059
1074
|
};
|
|
1060
1075
|
const toolFuncs = capDef.createTools(ctx);
|
|
@@ -1420,7 +1435,7 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
1420
1435
|
// Use cache_control for Anthropic models to cache the system prompt across iterations
|
|
1421
1436
|
const isAnthropic = llm instanceof ChatAnthropic;
|
|
1422
1437
|
const systemMessage = isAnthropic
|
|
1423
|
-
? new
|
|
1438
|
+
? new SystemMessage({
|
|
1424
1439
|
content: [
|
|
1425
1440
|
{
|
|
1426
1441
|
type: 'text',
|
|
@@ -1429,7 +1444,7 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
1429
1444
|
},
|
|
1430
1445
|
],
|
|
1431
1446
|
})
|
|
1432
|
-
: new
|
|
1447
|
+
: new SystemMessage(systemPrompt);
|
|
1433
1448
|
const allMessages = [systemMessage, ...messages];
|
|
1434
1449
|
// Helper function for exponential backoff with jitter
|
|
1435
1450
|
const exponentialBackoff = (attemptNumber) => {
|
|
@@ -1746,12 +1761,19 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
1746
1761
|
existingToolResultIds.add(tc.id);
|
|
1747
1762
|
}
|
|
1748
1763
|
}
|
|
1764
|
+
// Clear pre-approval flag after resume repair executed the tool directly.
|
|
1765
|
+
// This prevents the agent loop from approving a duplicate call if the LLM
|
|
1766
|
+
// re-emits the same tool invocation.
|
|
1767
|
+
if (approvalAiMsgIndex >= 0 && resumeExecMeta?._approvedAction) {
|
|
1768
|
+
delete resumeExecMeta._approvedAction;
|
|
1769
|
+
}
|
|
1749
1770
|
initialMessages.push(...repairedMessages);
|
|
1750
1771
|
}
|
|
1751
1772
|
else if (conversationHistory && conversationHistory.length > 0) {
|
|
1752
1773
|
// Normal path: lossy ConversationMessage[] → BaseMessage[]
|
|
1753
1774
|
// This enables KV cache optimization by keeping previous turns as separate messages
|
|
1754
|
-
|
|
1775
|
+
// Pop the trigger (last entry) — it will be re-appended as the raw humanMessage
|
|
1776
|
+
for (const historyMsg of conversationHistory.slice(0, -1)) {
|
|
1755
1777
|
switch (historyMsg.role) {
|
|
1756
1778
|
case 'user':
|
|
1757
1779
|
initialMessages.push(new HumanMessage(historyMsg.content));
|
|
@@ -1823,8 +1845,13 @@ export class AIAgentBubble extends ServiceBubble {
|
|
|
1823
1845
|
// Text-only message
|
|
1824
1846
|
humanMessage = new HumanMessage(message);
|
|
1825
1847
|
}
|
|
1826
|
-
//
|
|
1827
|
-
|
|
1848
|
+
// In the resume flow the trigger message is already part of the saved
|
|
1849
|
+
// state (it was the HumanMessage that started the original execution).
|
|
1850
|
+
// Re-appending it causes the LLM to see the same request twice, which
|
|
1851
|
+
// triggers a duplicate tool call. Skip it when resuming.
|
|
1852
|
+
if (!resumeState) {
|
|
1853
|
+
initialMessages.push(humanMessage);
|
|
1854
|
+
}
|
|
1828
1855
|
const result = await graph.invoke({ messages: initialMessages }, { recursionLimit: maxIterations });
|
|
1829
1856
|
console.log('[AIAgent] Graph execution completed');
|
|
1830
1857
|
console.log('[AIAgent] Total messages:', result.messages.length);
|