@bubblelab/bubble-core 0.1.125 → 0.1.126

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.
@@ -161,7 +161,7 @@ export interface TransformationFunctionWorkflowNode { type: 'transformation_func
161
161
  export type WorkflowNode = BubbleWorkflowNode | ControlFlowWorkflowNode | TryCatchWorkflowNode | CodeBlockWorkflowNode | VariableDeclarationBlockNode | ReturnWorkflowNode | FunctionCallWorkflowNode | ParallelExecutionWorkflowNode | TransformationFunctionWorkflowNode; export interface ParsedWorkflow { root: WorkflowNode[]; bubbles: Record<number, ParsedBubbleWithInfo>; }
162
162
  export declare const WorkflowNodeTypeSchema: z.ZodEnum<["bubble", "if", "for", "while", "try_catch", "variable_declaration", "return", "function_call", "code_block", "parallel_execution", "transformation_function"]>; export declare const LocationSchema: z.ZodObject<{ startLine: z.ZodNumber; startCol: z.ZodNumber; endLine: z.ZodNumber; endCol: z.ZodNumber; }, "strip", z.ZodTypeAny, { startLine: number; startCol: number; endLine: number; endCol: number; }, { startLine: number; startCol: number; endLine: number; endCol: number; }>; export declare const BubbleWorkflowNodeSchema: z.ZodType<BubbleWorkflowNode>; export declare const ControlFlowWorkflowNodeSchema: z.ZodType<ControlFlowWorkflowNode>; export declare const TryCatchWorkflowNodeSchema: z.ZodType<TryCatchWorkflowNode>; export declare const CodeBlockWorkflowNodeSchema: z.ZodType<CodeBlockWorkflowNode>; export declare const VariableDeclarationBlockNodeSchema: z.ZodType<VariableDeclarationBlockNode>; export declare const ReturnWorkflowNodeSchema: z.ZodType<ReturnWorkflowNode>; export declare const FunctionCallWorkflowNodeSchema: z.ZodType<FunctionCallWorkflowNode>; export declare const ParallelExecutionWorkflowNodeSchema: z.ZodType<ParallelExecutionWorkflowNode>; export declare const TransformationFunctionWorkflowNodeSchema: z.ZodType<TransformationFunctionWorkflowNode>; export declare const WorkflowNodeSchema: z.ZodType<WorkflowNode>; export declare const ParsedWorkflowSchema: z.ZodObject<{ root: z.ZodArray<z.ZodType<WorkflowNode, z.ZodTypeDef, WorkflowNode>, "many">; bubbles: z.ZodRecord<z.ZodNumber, z.ZodObject<{ variableName: z.ZodString; bubbleName: z.ZodType<BubbleName>; className: z.ZodString; parameters: z.ZodArray<z.ZodObject<{ location: z.ZodOptional<z.ZodObject<{ startLine: z.ZodNumber; startCol: z.ZodNumber; endLine: z.ZodNumber; endCol: z.ZodNumber; }, "strip", z.ZodTypeAny, { startLine: number; startCol: number; endLine: number; endCol: number; }, { startLine: number; startCol: number; endLine: number; endCol: number; }>>; variableId: z.ZodOptional<z.ZodNumber>; name: z.ZodString; value: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodArray<z.ZodUnknown, "many">]>; type: z.ZodNativeEnum<typeof BubbleParameterType>; source: z.ZodOptional<z.ZodEnum<["object-property", "first-arg", "spread"]>>; }, "strip", z.ZodTypeAny, { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }, { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }>, "many">; hasAwait: z.ZodBoolean; hasActionCall: z.ZodBoolean; dependencies: z.ZodOptional<z.ZodArray<z.ZodType<BubbleName, z.ZodTypeDef, BubbleName>, "many">>; dependencyGraph: z.ZodOptional<z.ZodType<DependencyGraphNode, z.ZodTypeDef, DependencyGraphNode>>; variableId: z.ZodNumber; nodeType: z.ZodEnum<["service", "tool", "workflow", "unknown"]>; location: z.ZodObject<{ startLine: z.ZodNumber; startCol: z.ZodNumber; endLine: z.ZodNumber; endCol: z.ZodNumber; }, "strip", z.ZodTypeAny, { startLine: number; startCol: number; endLine: number; endCol: number; }, { startLine: number; startCol: number; endLine: number; endCol: number; }>; description: z.ZodOptional<z.ZodString>; invocationCallSiteKey: z.ZodOptional<z.ZodString>; clonedFromVariableId: z.ZodOptional<z.ZodNumber>; isInsideCustomTool: z.ZodOptional<z.ZodBoolean>; containingCustomToolId: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { location: { startLine: number; startCol: number; endLine: number; endCol: number; }; variableId: number; variableName: string; nodeType: "tool" | "unknown" | "service" | "workflow"; className: string; parameters: { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }[]; hasAwait: boolean; hasActionCall: boolean; bubbleName: BubbleName; description?: string | undefined; dependencies?: BubbleName[] | undefined; dependencyGraph?: DependencyGraphNode | undefined; invocationCallSiteKey?: string | undefined; clonedFromVariableId?: number | undefined; isInsideCustomTool?: boolean | undefined; containingCustomToolId?: string | undefined; }, { location: { startLine: number; startCol: number; endLine: number; endCol: number; }; variableId: number; variableName: string; nodeType: "tool" | "unknown" | "service" | "workflow"; className: string; parameters: { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }[]; hasAwait: boolean; hasActionCall: boolean; bubbleName: BubbleName; description?: string | undefined; dependencies?: BubbleName[] | undefined; dependencyGraph?: DependencyGraphNode | undefined; invocationCallSiteKey?: string | undefined; clonedFromVariableId?: number | undefined; isInsideCustomTool?: boolean | undefined; containingCustomToolId?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { root: WorkflowNode[]; bubbles: Record<number, { location: { startLine: number; startCol: number; endLine: number; endCol: number; }; variableId: number; variableName: string; nodeType: "tool" | "unknown" | "service" | "workflow"; className: string; parameters: { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }[]; hasAwait: boolean; hasActionCall: boolean; bubbleName: BubbleName; description?: string | undefined; dependencies?: BubbleName[] | undefined; dependencyGraph?: DependencyGraphNode | undefined; invocationCallSiteKey?: string | undefined; clonedFromVariableId?: number | undefined; isInsideCustomTool?: boolean | undefined; containingCustomToolId?: string | undefined; }>; }, { root: WorkflowNode[]; bubbles: Record<number, { location: { startLine: number; startCol: number; endLine: number; endCol: number; }; variableId: number; variableName: string; nodeType: "tool" | "unknown" | "service" | "workflow"; className: string; parameters: { name: string; value: string | number | boolean | unknown[] | Record<string, unknown>; type: BubbleParameterType; location?: { startLine: number; startCol: number; endLine: number; endCol: number; } | undefined; variableId?: number | undefined; source?: "object-property" | "first-arg" | "spread" | undefined; }[]; hasAwait: boolean; hasActionCall: boolean; bubbleName: BubbleName; description?: string | undefined; dependencies?: BubbleName[] | undefined; dependencyGraph?: DependencyGraphNode | undefined; invocationCallSiteKey?: string | undefined; clonedFromVariableId?: number | undefined; isInsideCustomTool?: boolean | undefined; containingCustomToolId?: string | undefined; }>; }>; export declare function containsFunctionLiteral(value: string): boolean; export declare function formatParameterValue(value: unknown, type: string): string; export declare function condenseToSingleLine(input: string): string; export declare function stripCommentsOutsideStrings(input: string): string; export interface BuildParameterObjectOptions { preserveFormatting?: boolean; }
163
163
  export declare function buildParameterObjectLiteral(parameters: BubbleParameter[], options?: BuildParameterObjectOptions): string; export declare const flowRoleSchema: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; export type FlowRole = z.infer<typeof flowRoleSchema>; export declare const flowPermissionSchema: z.ZodObject<{ userId: z.ZodString; email: z.ZodString; name: z.ZodNullable<z.ZodString>; avatarUrl: z.ZodOptional<z.ZodString>; role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; grantedAt: z.ZodString; grantedBy: z.ZodNullable<z.ZodString>; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }, { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }>; export type FlowPermission = z.infer<typeof flowPermissionSchema>; export declare const trashedFlowSchema: z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; organizationId: z.ZodNullable<z.ZodNumber>; organizationName: z.ZodNullable<z.ZodString>; deletedAt: z.ZodString; deletedBy: z.ZodNullable<z.ZodString>; canRestore: z.ZodBoolean; canPermanentDelete: z.ZodBoolean; }, "strip", z.ZodTypeAny, { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }, { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }>; export type TrashedFlow = z.infer<typeof trashedFlowSchema>; export declare const grantPermissionSchema: z.ZodEffects<z.ZodObject<{ email: z.ZodOptional<z.ZodString>; userId: z.ZodOptional<z.ZodString>; role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; userId?: string | undefined; email?: string | undefined; }, { role: "owner" | "editor" | "runner" | "viewer"; userId?: string | undefined; email?: string | undefined; }>, { role: "owner" | "editor" | "runner" | "viewer"; userId?: string | undefined; email?: string | undefined; }, { role: "owner" | "editor" | "runner" | "viewer"; userId?: string | undefined; email?: string | undefined; }>; export type GrantPermissionRequest = z.infer<typeof grantPermissionSchema>; export declare const updatePermissionSchema: z.ZodObject<{ role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; }, { role: "owner" | "editor" | "runner" | "viewer"; }>; export type UpdatePermissionRequest = z.infer<typeof updatePermissionSchema>; export declare const transferOwnershipSchema: z.ZodObject<{ fromUserId: z.ZodString; toUserId: z.ZodString; }, "strip", z.ZodTypeAny, { fromUserId: string; toUserId: string; }, { fromUserId: string; toUserId: string; }>; export type TransferOwnershipRequest = z.infer<typeof transferOwnershipSchema>; export declare const listFlowPermissionsResponseSchema: z.ZodObject<{ permissions: z.ZodArray<z.ZodObject<{ userId: z.ZodString; email: z.ZodString; name: z.ZodNullable<z.ZodString>; avatarUrl: z.ZodOptional<z.ZodString>; role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; grantedAt: z.ZodString; grantedBy: z.ZodNullable<z.ZodString>; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }, { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }>, "many">; organizationId: z.ZodNullable<z.ZodNumber>; isInTrash: z.ZodBoolean; }, "strip", z.ZodTypeAny, { organizationId: number | null; permissions: { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }[]; isInTrash: boolean; }, { organizationId: number | null; permissions: { role: "owner" | "editor" | "runner" | "viewer"; name: string | null; userId: string; email: string; grantedAt: string; grantedBy: string | null; avatarUrl?: string | undefined; }[]; isInTrash: boolean; }>; export type ListFlowPermissionsResponse = z.infer<typeof listFlowPermissionsResponseSchema>; export declare const grantPermissionResponseSchema: z.ZodObject<{ userId: z.ZodString; role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; grantedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; userId: string; grantedAt: string; }, { role: "owner" | "editor" | "runner" | "viewer"; userId: string; grantedAt: string; }>; export type GrantPermissionResponse = z.infer<typeof grantPermissionResponseSchema>; export declare const updatePermissionResponseSchema: z.ZodObject<{ userId: z.ZodString; role: z.ZodEnum<["owner", "editor", "runner", "viewer"]>; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "editor" | "runner" | "viewer"; userId: string; updatedAt: string; }, { role: "owner" | "editor" | "runner" | "viewer"; userId: string; updatedAt: string; }>; export type UpdatePermissionResponse = z.infer<typeof updatePermissionResponseSchema>; export declare const transferOwnershipResponseSchema: z.ZodObject<{ previousOwner: z.ZodString; newOwner: z.ZodString; transferredAt: z.ZodString; }, "strip", z.ZodTypeAny, { previousOwner: string; newOwner: string; transferredAt: string; }, { previousOwner: string; newOwner: string; transferredAt: string; }>; export type TransferOwnershipResponse = z.infer<typeof transferOwnershipResponseSchema>; export declare const listTrashResponseSchema: z.ZodObject<{ workflows: z.ZodArray<z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; organizationId: z.ZodNullable<z.ZodNumber>; organizationName: z.ZodNullable<z.ZodString>; deletedAt: z.ZodString; deletedBy: z.ZodNullable<z.ZodString>; canRestore: z.ZodBoolean; canPermanentDelete: z.ZodBoolean; }, "strip", z.ZodTypeAny, { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }, { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }>, "many">; }, "strip", z.ZodTypeAny, { workflows: { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }[]; }, { workflows: { name: string; id: number; organizationId: number | null; organizationName: string | null; deletedAt: string; deletedBy: string | null; canRestore: boolean; canPermanentDelete: boolean; }[]; }>; export type ListTrashResponse = z.infer<typeof listTrashResponseSchema>; export declare const restoreFlowResponseSchema: z.ZodObject<{ id: z.ZodNumber; restoredAt: z.ZodString; message: z.ZodString; }, "strip", z.ZodTypeAny, { message: string; id: number; restoredAt: string; }, { message: string; id: number; restoredAt: string; }>; export type RestoreFlowResponse = z.infer<typeof restoreFlowResponseSchema>; export declare const orgRoleSchema: z.ZodEnum<["owner", "admin", "member"]>; export type OrgRole = z.infer<typeof orgRoleSchema>; export declare const orgTypeSchema: z.ZodEnum<["personal", "organization"]>; export type OrgType = z.infer<typeof orgTypeSchema>; export declare const organizationSchema: z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; slug: z.ZodString; type: z.ZodEnum<["personal", "organization"]>; domain: z.ZodOptional<z.ZodNullable<z.ZodString>>; role: z.ZodEnum<["owner", "admin", "member"]>; memberCount: z.ZodNumber; createdAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }>; export type Organization = z.infer<typeof organizationSchema>; export declare const organizationDetailSchema: z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; slug: z.ZodString; type: z.ZodEnum<["personal", "organization"]>; domain: z.ZodOptional<z.ZodNullable<z.ZodString>>; role: z.ZodEnum<["owner", "admin", "member"]>; memberCount: z.ZodNumber; createdAt: z.ZodString; } & { workflowCount: z.ZodNumber; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; updatedAt: string; createdAt: string; slug: string; memberCount: number; workflowCount: number; domain?: string | null | undefined; }, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; updatedAt: string; createdAt: string; slug: string; memberCount: number; workflowCount: number; domain?: string | null | undefined; }>; export type OrganizationDetail = z.infer<typeof organizationDetailSchema>; export declare const organizationMemberSchema: z.ZodObject<{ userId: z.ZodString; email: z.ZodString; name: z.ZodNullable<z.ZodString>; avatarUrl: z.ZodOptional<z.ZodString>; role: z.ZodEnum<["owner", "admin", "member"]>; joinedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }, { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }>; export type OrganizationMember = z.infer<typeof organizationMemberSchema>; export declare const createOrganizationSchema: z.ZodObject<{ name: z.ZodString; slug: z.ZodString; domain: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name: string; slug: string; domain?: string | undefined; }, { name: string; slug: string; domain?: string | undefined; }>; export type CreateOrganizationRequest = z.infer<typeof createOrganizationSchema>; export declare const updateOrganizationSchema: z.ZodObject<{ name: z.ZodOptional<z.ZodString>; slug: z.ZodOptional<z.ZodString>; domain: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { name?: string | undefined; domain?: string | null | undefined; slug?: string | undefined; }, { name?: string | undefined; domain?: string | null | undefined; slug?: string | undefined; }>; export type UpdateOrganizationRequest = z.infer<typeof updateOrganizationSchema>; export declare const addMemberSchema: z.ZodObject<{ email: z.ZodString; role: z.ZodEnum<["admin", "member"]>; }, "strip", z.ZodTypeAny, { role: "admin" | "member"; email: string; }, { role: "admin" | "member"; email: string; }>; export type AddMemberRequest = z.infer<typeof addMemberSchema>; export declare const updateMemberRoleSchema: z.ZodObject<{ role: z.ZodEnum<["admin", "member"]>; }, "strip", z.ZodTypeAny, { role: "admin" | "member"; }, { role: "admin" | "member"; }>; export type UpdateMemberRoleRequest = z.infer<typeof updateMemberRoleSchema>; export declare const listOrganizationsResponseSchema: z.ZodObject<{ organizations: z.ZodArray<z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; slug: z.ZodString; type: z.ZodEnum<["personal", "organization"]>; domain: z.ZodOptional<z.ZodNullable<z.ZodString>>; role: z.ZodEnum<["owner", "admin", "member"]>; memberCount: z.ZodNumber; createdAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }, { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { organizations: { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }[]; }, { organizations: { role: "owner" | "admin" | "member"; name: string; type: "personal" | "organization"; id: number; createdAt: string; slug: string; memberCount: number; domain?: string | null | undefined; }[]; }>; export type ListOrganizationsResponse = z.infer<typeof listOrganizationsResponseSchema>; export declare const updateOrganizationResponseSchema: z.ZodObject<{ id: z.ZodNumber; name: z.ZodString; slug: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; id: number; updatedAt: string; slug: string; }, { name: string; id: number; updatedAt: string; slug: string; }>; export type UpdateOrganizationResponse = z.infer<typeof updateOrganizationResponseSchema>; export declare const listMembersResponseSchema: z.ZodObject<{ members: z.ZodArray<z.ZodObject<{ userId: z.ZodString; email: z.ZodString; name: z.ZodNullable<z.ZodString>; avatarUrl: z.ZodOptional<z.ZodString>; role: z.ZodEnum<["owner", "admin", "member"]>; joinedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }, { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { members: { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }[]; }, { members: { role: "owner" | "admin" | "member"; name: string | null; userId: string; email: string; joinedAt: string; avatarUrl?: string | undefined; }[]; }>; export type ListMembersResponse = z.infer<typeof listMembersResponseSchema>; export declare const addMemberResponseSchema: z.ZodObject<{ userId: z.ZodString; role: z.ZodEnum<["owner", "admin", "member"]>; joinedAt: z.ZodString; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; userId: string; joinedAt: string; }, { role: "owner" | "admin" | "member"; userId: string; joinedAt: string; }>; export type AddMemberResponse = z.infer<typeof addMemberResponseSchema>; export declare const updateMemberRoleResponseSchema: z.ZodObject<{ userId: z.ZodString; role: z.ZodEnum<["owner", "admin", "member"]>; }, "strip", z.ZodTypeAny, { role: "owner" | "admin" | "member"; userId: string; }, { role: "owner" | "admin" | "member"; userId: string; }>; export type UpdateMemberRoleResponse = z.infer<typeof updateMemberRoleResponseSchema>; export declare const successResponseSchema: z.ZodObject<{ success: z.ZodBoolean; }, "strip", z.ZodTypeAny, { success: boolean; }, { success: boolean; }>; export type SuccessResponse = z.infer<typeof successResponseSchema>; export declare enum CredentialType { CREDENTIAL_WILDCARD = "*", OPENAI_CRED = "OPENAI_CRED", GOOGLE_GEMINI_CRED = "GOOGLE_GEMINI_CRED", ANTHROPIC_CRED = "ANTHROPIC_CRED", OPENROUTER_CRED = "OPENROUTER_CRED", FIRECRAWL_API_KEY = "FIRECRAWL_API_KEY", DATABASE_CRED = "DATABASE_CRED", SLACK_CRED = "SLACK_CRED", SLACK_API = "SLACK_API", TELEGRAM_BOT_TOKEN = "TELEGRAM_BOT_TOKEN", RESEND_CRED = "RESEND_CRED", CLOUDFLARE_R2_ACCESS_KEY = "CLOUDFLARE_R2_ACCESS_KEY", CLOUDFLARE_R2_SECRET_KEY = "CLOUDFLARE_R2_SECRET_KEY", CLOUDFLARE_R2_ACCOUNT_ID = "CLOUDFLARE_R2_ACCOUNT_ID", APIFY_CRED = "APIFY_CRED", ELEVENLABS_API_KEY = "ELEVENLABS_API_KEY", GOOGLE_DRIVE_CRED = "GOOGLE_DRIVE_CRED", GMAIL_CRED = "GMAIL_CRED", GOOGLE_SHEETS_CRED = "GOOGLE_SHEETS_CRED", GOOGLE_CALENDAR_CRED = "GOOGLE_CALENDAR_CRED", FUB_CRED = "FUB_CRED", NOTION_OAUTH_TOKEN = "NOTION_OAUTH_TOKEN", NOTION_API = "NOTION_API", AIRTABLE_OAUTH = "AIRTABLE_OAUTH", GITHUB_TOKEN = "GITHUB_TOKEN", AGI_API_KEY = "AGI_API_KEY", AIRTABLE_CRED = "AIRTABLE_CRED", INSFORGE_BASE_URL = "INSFORGE_BASE_URL", INSFORGE_API_KEY = "INSFORGE_API_KEY", CUSTOM_AUTH_KEY = "CUSTOM_AUTH_KEY", AMAZON_CRED = "AMAZON_CRED", LINKEDIN_CRED = "LINKEDIN_CRED", CRUSTDATA_API_KEY = "CRUSTDATA_API_KEY", JIRA_CRED = "JIRA_CRED", ASHBY_CRED = "ASHBY_CRED", FULLENRICH_API_KEY = "FULLENRICH_API_KEY", STRIPE_CRED = "STRIPE_CRED", CONFLUENCE_CRED = "CONFLUENCE_CRED" }
164
- export type BubbleName = 'hello-world' | 'ai-agent' | 'postgresql' | 'slack' | 'resend' | 'http' | 'slack-formatter-agent' | 'database-analyzer' | 'slack-notifier' | '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' | 'slack-data-assistant' | 'bubbleflow-code-generator' | 'bubbleflow-generator' | 'pdf-form-operations' | 'pdf-ocr-workflow' | 'generate-document-workflow' | 'parse-document-workflow' | 'bubbleflow-validation-tool' | 'code-edit-tool' | 'storage' | 'google-drive' | 'gmail' | 'google-sheets' | 'google-calendar' | 'apify' | 'instagram-tool' | 'linkedin-tool' | 'tiktok-tool' | 'twitter-tool' | 'google-maps-tool' | 'youtube-tool' | 'github' | 'eleven-labs' | 'followupboss' | 'agi-inc' | 'telegram' | 'airtable' | 'notion' | 'firecrawl' | 'insforge-db' | 'browserbase' | 'amazon-shopping-tool' | 'crustdata' | 'company-enrichment-tool' | 'people-search-tool' | 'jira' | 'ashby' | 'fullenrich' | 'linkedin-connection-tool' | 'stripe' | 'confluence' | 'yc-scraper-tool'; export type CapabilityId = 'knowledge-base' | 'google-doc-knowledge-base' | 'data-analyst'; export declare const CapabilityProviderMetadataSchema: z.ZodObject<{ value: z.ZodString; label: z.ZodString; credentialType: z.ZodNativeEnum<typeof CredentialType>; icon: z.ZodString; }, "strip", z.ZodTypeAny, { value: string; label: string; credentialType: CredentialType; icon: string; }, { value: string; label: string; credentialType: CredentialType; icon: string; }>; export type CapabilityProviderMetadata = z.infer<typeof CapabilityProviderMetadataSchema>; export declare const CapabilityInputSchema: z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["string", "number", "boolean", "string[]"]>; label: z.ZodOptional<z.ZodString>; description: z.ZodString; required: z.ZodDefault<z.ZodBoolean>; default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>; }, "strip", z.ZodTypeAny, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }>; export type CapabilityInput = z.infer<typeof CapabilityInputSchema>; export declare const CapabilityToolDefSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodString; parameterSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>; internalBubbles: z.ZodOptional<z.ZodArray<z.ZodType<BubbleName, z.ZodTypeDef, BubbleName>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }>; export type CapabilityToolDef = z.infer<typeof CapabilityToolDefSchema>; export declare const CapabilityModelConfigOverrideSchema: z.ZodObject<{ model: z.ZodOptional<z.ZodString>; reasoningEffort: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>; maxTokens: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }>; export type CapabilityModelConfigOverride = z.infer<typeof CapabilityModelConfigOverrideSchema>; export declare const CapabilityMetadataSchema: z.ZodObject<{ id: z.ZodType<CapabilityId>; name: z.ZodString; description: z.ZodString; icon: z.ZodOptional<z.ZodString>; category: z.ZodOptional<z.ZodString>; version: z.ZodDefault<z.ZodString>; requiredCredentials: z.ZodArray<z.ZodNativeEnum<typeof CredentialType>, "many">; optionalCredentials: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof CredentialType>, "many">>; inputs: z.ZodArray<z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["string", "number", "boolean", "string[]"]>; label: z.ZodOptional<z.ZodString>; description: z.ZodString; required: z.ZodDefault<z.ZodBoolean>; default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>; }, "strip", z.ZodTypeAny, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }>, "many">; tools: z.ZodArray<z.ZodObject<{ name: z.ZodString; description: z.ZodString; parameterSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>; internalBubbles: z.ZodOptional<z.ZodArray<z.ZodType<BubbleName, z.ZodTypeDef, BubbleName>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }>, "many">; systemPromptAddition: z.ZodOptional<z.ZodString>; modelConfigOverride: z.ZodOptional<z.ZodObject<{ model: z.ZodOptional<z.ZodString>; reasoningEffort: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>; maxTokens: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }>>; delegationHint: z.ZodOptional<z.ZodString>; hidden: z.ZodOptional<z.ZodBoolean>; providers: z.ZodOptional<z.ZodArray<z.ZodObject<{ value: z.ZodString; label: z.ZodString; credentialType: z.ZodNativeEnum<typeof CredentialType>; icon: z.ZodString; }, "strip", z.ZodTypeAny, { value: string; label: string; credentialType: CredentialType; icon: string; }, { value: string; label: string; credentialType: CredentialType; icon: string; }>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; tools: { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }[]; id: CapabilityId; requiredCredentials: CredentialType[]; version: string; inputs: { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }[]; optionalCredentials?: CredentialType[] | undefined; icon?: string | undefined; category?: string | undefined; systemPromptAddition?: string | undefined; modelConfigOverride?: { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; } | undefined; delegationHint?: string | undefined; hidden?: boolean | undefined; providers?: { value: string; label: string; credentialType: CredentialType; icon: string; }[] | undefined; }, { name: string; description: string; tools: { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }[]; id: CapabilityId; requiredCredentials: CredentialType[]; inputs: { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }[]; optionalCredentials?: CredentialType[] | undefined; icon?: string | undefined; category?: string | undefined; version?: string | undefined; systemPromptAddition?: string | undefined; modelConfigOverride?: { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; } | undefined; delegationHint?: string | undefined; hidden?: boolean | undefined; providers?: { value: string; label: string; credentialType: CredentialType; icon: string; }[] | undefined; }>; export type CapabilityMetadata = z.infer<typeof CapabilityMetadataSchema>; export declare class BubbleError extends Error { readonly variableId?: number; readonly bubbleName?: string; constructor(message: string, options?: { variableId?: number; bubbleName?: string; cause?: Error; }); }
164
+ export type BubbleName = 'hello-world' | 'ai-agent' | 'postgresql' | 'slack' | 'resend' | 'http' | 'slack-formatter-agent' | 'database-analyzer' | 'slack-notifier' | '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' | 'slack-data-assistant' | 'bubbleflow-code-generator' | 'bubbleflow-generator' | 'pdf-form-operations' | 'pdf-ocr-workflow' | 'generate-document-workflow' | 'parse-document-workflow' | 'bubbleflow-validation-tool' | 'code-edit-tool' | 'storage' | 'google-drive' | 'gmail' | 'google-sheets' | 'google-calendar' | 'apify' | 'instagram-tool' | 'linkedin-tool' | 'tiktok-tool' | 'twitter-tool' | 'google-maps-tool' | 'youtube-tool' | 'github' | 'eleven-labs' | 'followupboss' | 'agi-inc' | 'telegram' | 'airtable' | 'notion' | 'firecrawl' | 'insforge-db' | 'browserbase' | 'amazon-shopping-tool' | 'crustdata' | 'company-enrichment-tool' | 'people-search-tool' | 'jira' | 'ashby' | 'fullenrich' | 'linkedin-connection-tool' | 'stripe' | 'confluence' | 'yc-scraper-tool'; export type CapabilityId = 'knowledge-base' | 'google-doc-knowledge-base' | 'data-analyst' | 'google-calendar' | 'gmail-assistant'; export declare const CapabilityProviderMetadataSchema: z.ZodObject<{ value: z.ZodString; label: z.ZodString; credentialType: z.ZodNativeEnum<typeof CredentialType>; icon: z.ZodString; }, "strip", z.ZodTypeAny, { value: string; label: string; credentialType: CredentialType; icon: string; }, { value: string; label: string; credentialType: CredentialType; icon: string; }>; export type CapabilityProviderMetadata = z.infer<typeof CapabilityProviderMetadataSchema>; export declare const CapabilityInputSchema: z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["string", "number", "boolean", "string[]"]>; label: z.ZodOptional<z.ZodString>; description: z.ZodString; required: z.ZodDefault<z.ZodBoolean>; default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>; }, "strip", z.ZodTypeAny, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }>; export type CapabilityInput = z.infer<typeof CapabilityInputSchema>; export declare const CapabilityToolDefSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodString; parameterSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>; internalBubbles: z.ZodOptional<z.ZodArray<z.ZodType<BubbleName, z.ZodTypeDef, BubbleName>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }>; export type CapabilityToolDef = z.infer<typeof CapabilityToolDefSchema>; export declare const CapabilityModelConfigOverrideSchema: z.ZodObject<{ model: z.ZodOptional<z.ZodString>; reasoningEffort: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>; maxTokens: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }>; export type CapabilityModelConfigOverride = z.infer<typeof CapabilityModelConfigOverrideSchema>; export declare const CapabilityMetadataSchema: z.ZodObject<{ id: z.ZodType<CapabilityId>; name: z.ZodString; description: z.ZodString; icon: z.ZodOptional<z.ZodString>; category: z.ZodOptional<z.ZodString>; version: z.ZodDefault<z.ZodString>; requiredCredentials: z.ZodArray<z.ZodNativeEnum<typeof CredentialType>, "many">; optionalCredentials: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof CredentialType>, "many">>; inputs: z.ZodArray<z.ZodObject<{ name: z.ZodString; type: z.ZodEnum<["string", "number", "boolean", "string[]"]>; label: z.ZodOptional<z.ZodString>; description: z.ZodString; required: z.ZodDefault<z.ZodBoolean>; default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>; }, "strip", z.ZodTypeAny, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }, { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }>, "many">; tools: z.ZodArray<z.ZodObject<{ name: z.ZodString; description: z.ZodString; parameterSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>; internalBubbles: z.ZodOptional<z.ZodArray<z.ZodType<BubbleName, z.ZodTypeDef, BubbleName>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }, { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }>, "many">; systemPromptAddition: z.ZodOptional<z.ZodString>; modelConfigOverride: z.ZodOptional<z.ZodObject<{ model: z.ZodOptional<z.ZodString>; reasoningEffort: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>; maxTokens: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }, { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; }>>; delegationHint: z.ZodOptional<z.ZodString>; hidden: z.ZodOptional<z.ZodBoolean>; providers: z.ZodOptional<z.ZodArray<z.ZodObject<{ value: z.ZodString; label: z.ZodString; credentialType: z.ZodNativeEnum<typeof CredentialType>; icon: z.ZodString; }, "strip", z.ZodTypeAny, { value: string; label: string; credentialType: CredentialType; icon: string; }, { value: string; label: string; credentialType: CredentialType; icon: string; }>, "many">>; }, "strip", z.ZodTypeAny, { name: string; description: string; tools: { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }[]; id: CapabilityId; requiredCredentials: CredentialType[]; version: string; inputs: { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; required: boolean; default?: string | number | boolean | string[] | undefined; label?: string | undefined; }[]; optionalCredentials?: CredentialType[] | undefined; icon?: string | undefined; category?: string | undefined; systemPromptAddition?: string | undefined; modelConfigOverride?: { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; } | undefined; delegationHint?: string | undefined; hidden?: boolean | undefined; providers?: { value: string; label: string; credentialType: CredentialType; icon: string; }[] | undefined; }, { name: string; description: string; tools: { name: string; description: string; parameterSchema: Record<string, unknown>; internalBubbles?: BubbleName[] | undefined; }[]; id: CapabilityId; requiredCredentials: CredentialType[]; inputs: { name: string; type: "string" | "number" | "boolean" | "string[]"; description: string; default?: string | number | boolean | string[] | undefined; required?: boolean | undefined; label?: string | undefined; }[]; optionalCredentials?: CredentialType[] | undefined; icon?: string | undefined; category?: string | undefined; version?: string | undefined; systemPromptAddition?: string | undefined; modelConfigOverride?: { model?: string | undefined; reasoningEffort?: "low" | "medium" | "high" | undefined; maxTokens?: number | undefined; } | undefined; delegationHint?: string | undefined; hidden?: boolean | undefined; providers?: { value: string; label: string; credentialType: CredentialType; icon: string; }[] | undefined; }>; export type CapabilityMetadata = z.infer<typeof CapabilityMetadataSchema>; export declare class BubbleError extends Error { readonly variableId?: number; readonly bubbleName?: string; constructor(message: string, options?: { variableId?: number; bubbleName?: string; cause?: Error; }); }
165
165
  export declare class BubbleValidationError extends BubbleError { readonly validationErrors?: string[]; constructor(message: string, options?: { variableId?: number; bubbleName?: string; validationErrors?: string[]; cause?: Error; }); }
166
166
  export declare class BubbleExecutionError extends BubbleError { readonly executionPhase?: 'instantiation' | 'execution' | 'validation'; constructor(message: string, options?: { variableId?: number; bubbleName?: string; executionPhase?: 'instantiation' | 'execution' | 'validation'; cause?: Error; }); }
167
167
  export declare enum LogLevel { TRACE = 0, DEBUG = 1, INFO = 2, WARN = 3, ERROR = 4, FATAL = 5 }
@@ -400,20 +400,20 @@ export class AIAgentBubble extends ServiceBubble {
400
400
  if (caps.length > 1) {
401
401
  // Multi-capability: summaries with tool names + delegation hints — sub-agents get full prompts
402
402
  const summaries = caps
403
- .map((c) => {
403
+ .map((c, idx) => {
404
404
  const def = getCapability(c.id);
405
405
  if (!def)
406
406
  return null;
407
407
  const toolNames = def.metadata.tools.map((t) => t.name).join(', ');
408
- let summary = `- "${def.metadata.name}" (id: ${c.id}): ${def.metadata.description}`;
408
+ let summary = `${idx + 1}. "${def.metadata.name}" (id: ${c.id})\n Purpose: ${def.metadata.description}`;
409
409
  if (toolNames)
410
- summary += `\n Tools: ${toolNames}`;
410
+ summary += `\n Tools: ${toolNames}`;
411
411
  if (def.metadata.delegationHint)
412
- summary += `\n When to use: ${def.metadata.delegationHint}`;
412
+ summary += `\n When to use: ${def.metadata.delegationHint}`;
413
413
  return summary;
414
414
  })
415
415
  .filter(Boolean);
416
- this.params.systemPrompt += `\n\nYou have the following capabilities. You MUST use the 'use-capability' tool to delegate tasks to them — NEVER handle a capability-related request yourself.\n${summaries.join('\n')}\n\nRULES:\n- ALWAYS call use-capability when the user's request could be handled by a capability. Do NOT respond directly.\n- Include all relevant context from the conversation in the task description.\n- You can call multiple capabilities in sequence if needed.\n- When in doubt, delegate the capability will decide if it can help.\n- Only respond directly for greetings, clarifying questions, or requests that clearly don't match any capability.`;
416
+ this.params.systemPrompt += `\n\n---\nSYSTEM CAPABILITY EXTENSIONS:\nMultiple specialized capabilities are available. You MUST delegate to them using the 'use-capability' tool.\n\nAvailable Capabilities:\n${summaries.join('\n\n')}\n\nDELEGATION RULES:\n- Use 'use-capability' tool to delegate tasks to the appropriate capability\n- Do NOT attempt to handle capability tasks yourself\n- Include full context when delegating\n- Can chain multiple capabilities if needed\n- Only respond directly for: greetings, clarifications, or tasks outside all capabilities\n---\n\nYour role is to understand the user's request and delegate to the appropriate capability or respond directly when appropriate.`;
417
417
  }
418
418
  else {
419
419
  // Single or zero capabilities: eager load as before
@@ -429,7 +429,7 @@ export class AIAgentBubble extends ServiceBubble {
429
429
  const addition = (await capDef.createSystemPrompt?.(ctx)) ??
430
430
  capDef.metadata.systemPromptAddition;
431
431
  if (addition) {
432
- this.params.systemPrompt = `${this.params.systemPrompt}\n\n${addition}`;
432
+ this.params.systemPrompt = `${this.params.systemPrompt}\n\n---\nSYSTEM CAPABILITY EXTENSION:\nThe following capability has been added to enhance your functionality:\n\n[${capDef.metadata.name}]\n${addition}\n---\n\nYour primary objective is to fulfill the user's request using both your base capabilities and the extended capability above.`;
433
433
  }
434
434
  }
435
435
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/ai-agent.ts"],"names":[],"mappings":"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"}
package/dist/bubbles.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2026-02-08T22:01:10.567Z",
3
+ "generatedAt": "2026-02-09T00:06:53.933Z",
4
4
  "totalCount": 61,
5
5
  "bubbles": [
6
6
  {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-to-html.d.ts","sourceRoot":"","sources":["../../src/utils/markdown-to-html.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgFnD"}
1
+ {"version":3,"file":"markdown-to-html.d.ts","sourceRoot":"","sources":["../../src/utils/markdown-to-html.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAwFnD"}
@@ -33,9 +33,11 @@ export function markdownToHtml(text) {
33
33
  html = html.replace(/\*(.+?)\*/g, '<em>$1</em>');
34
34
  html = html.replace(/(?<!\w)_(.+?)_(?!\w)/g, '<em>$1</em>');
35
35
  // Images ![alt](url) — must come before links
36
- html = html.replace(/!\[([^\]]*)\]\(([^)]+)\)/g, '<img src="$2" alt="$1">');
36
+ // Updated regex to handle URLs with parentheses: matches ) only if followed by non-whitespace (i.e., still inside URL)
37
+ html = html.replace(/!\[([^\]]*)\]\(((?:[^)]|\)(?=[^\s]))+)\)/g, '<img src="$2" alt="$1">');
37
38
  // Links [text](url)
38
- html = html.replace(/\[([^\]]+)\]\(([^)]+)\)/g, '<a href="$2">$1</a>');
39
+ // Updated regex to handle URLs with parentheses: matches ) only if followed by non-whitespace (i.e., still inside URL)
40
+ html = html.replace(/\[([^\]]+)\]\(((?:[^)]|\)(?=[^\s]))+)\)/g, '<a href="$2">$1</a>');
39
41
  // Unordered lists (- or * at start of line)
40
42
  html = html.replace(/(?:^[\t ]*[-*]\s+.+$\n?)+/gm, (block) => {
41
43
  const items = block
@@ -1 +1 @@
1
- {"version":3,"file":"markdown-to-html.js","sourceRoot":"","sources":["../../src/utils/markdown-to-html.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown-to-html.js","sourceRoot":"","sources":["../../src/utils/markdown-to-html.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bubblelab/bubble-core",
3
- "version": "0.1.125",
3
+ "version": "0.1.126",
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.125"
43
+ "@bubblelab/shared-schemas": "0.1.126"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/node": "^20.12.12",