@bubblelab/bubble-core 0.1.122 → 0.1.124
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 +163 -143
- package/dist/bubble-factory.d.ts.map +1 -1
- package/dist/bubble-factory.js +2 -0
- package/dist/bubble-factory.js.map +1 -1
- package/dist/bubbles/service-bubble/agi-inc.d.ts +148 -148
- package/dist/bubbles/service-bubble/ai-agent.d.ts +106 -106
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +168 -87
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/airtable.d.ts +170 -170
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +2 -2
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +8 -8
- 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 +22 -22
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +52 -52
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +6 -6
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +12 -12
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +12 -12
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +88 -88
- package/dist/bubbles/service-bubble/apify/apify.d.ts +30 -30
- package/dist/bubbles/service-bubble/ashby/ashby.d.ts +72 -72
- package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +96 -96
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +32 -32
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +34 -34
- package/dist/bubbles/service-bubble/confluence/confluence.d.ts +26 -26
- package/dist/bubbles/service-bubble/confluence/confluence.schema.d.ts +26 -26
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +130 -130
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +162 -162
- package/dist/bubbles/service-bubble/eleven-labs.d.ts +28 -28
- package/dist/bubbles/service-bubble/firecrawl.d.ts +864 -864
- package/dist/bubbles/service-bubble/followupboss.d.ts +164 -164
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.d.ts +72 -72
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.schema.d.ts +112 -112
- package/dist/bubbles/service-bubble/github.d.ts +152 -152
- package/dist/bubbles/service-bubble/gmail.d.ts +657 -657
- package/dist/bubbles/service-bubble/google-calendar.d.ts +138 -138
- package/dist/bubbles/service-bubble/google-drive.d.ts +102 -102
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +52 -52
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +56 -56
- package/dist/bubbles/service-bubble/http.d.ts +22 -22
- package/dist/bubbles/service-bubble/insforge-db.d.ts +12 -12
- package/dist/bubbles/service-bubble/jira/jira.d.ts +70 -70
- package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +74 -74
- package/dist/bubbles/service-bubble/notion/notion.d.ts +642 -642
- package/dist/bubbles/service-bubble/notion/notion.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/notion/notion.js +2 -1
- package/dist/bubbles/service-bubble/notion/notion.js.map +1 -1
- package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +8 -8
- package/dist/bubbles/service-bubble/postgresql.d.ts +12 -12
- package/dist/bubbles/service-bubble/resend.d.ts +32 -32
- package/dist/bubbles/service-bubble/salesforce/index.d.ts +4 -0
- package/dist/bubbles/service-bubble/salesforce/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/index.js +4 -0
- package/dist/bubbles/service-bubble/salesforce/index.js.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.d.ts +1331 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.js +618 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.js.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.schema.d.ts +1445 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.schema.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.schema.js +609 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.schema.js.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.utils.d.ts +87 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.utils.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.utils.js +181 -0
- package/dist/bubbles/service-bubble/salesforce/salesforce.utils.js.map +1 -0
- package/dist/bubbles/service-bubble/slack/slack.d.ts +684 -684
- package/dist/bubbles/service-bubble/storage.d.ts +20 -20
- package/dist/bubbles/service-bubble/stripe/stripe.d.ts +153 -153
- package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +175 -175
- package/dist/bubbles/service-bubble/telegram.d.ts +1590 -1590
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +17 -17
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +17 -17
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +16 -16
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +22 -22
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +58 -58
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +24 -24
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/linkedin-connection-tool/linkedin-connection-tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/linkedin-connection-tool/linkedin-connection-tool.schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +378 -378
- package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/list-capabilities-tool.d.ts +235 -0
- package/dist/bubbles/tool-bubble/list-capabilities-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/list-capabilities-tool.js +105 -0
- package/dist/bubbles/tool-bubble/list-capabilities-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/people-search-tool.d.ts +122 -122
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +24 -24
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +80 -80
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +178 -178
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +18 -18
- 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/web-search-tool.d.ts +6 -6
- package/dist/bubbles/tool-bubble/yc-scraper-tool.d.ts +50 -50
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +48 -48
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +36 -36
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +4 -4
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +90 -90
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +24 -24
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +28 -28
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +108 -108
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +4 -4
- package/dist/bubbles.json +137 -4
- package/dist/capabilities/define-capability.d.ts +8 -2
- package/dist/capabilities/define-capability.d.ts.map +1 -1
- package/dist/capabilities/define-capability.js +3 -0
- package/dist/capabilities/define-capability.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/types/available-tools.d.ts +1 -1
- package/dist/types/available-tools.d.ts.map +1 -1
- package/dist/types/available-tools.js +1 -0
- package/dist/types/available-tools.js.map +1 -1
- package/package.json +2 -2
package/dist/bubbles.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.0.0",
|
|
3
|
-
"generatedAt": "2026-02-
|
|
4
|
-
"totalCount":
|
|
3
|
+
"generatedAt": "2026-02-08T14:34:45.951Z",
|
|
4
|
+
"totalCount": 61,
|
|
5
5
|
"bubbles": [
|
|
6
6
|
{
|
|
7
7
|
"name": "hello-world",
|
|
@@ -360,6 +360,7 @@
|
|
|
360
360
|
"reddit-scrape-tool",
|
|
361
361
|
"instagram-tool",
|
|
362
362
|
"list-bubbles-tool",
|
|
363
|
+
"list-capabilities-tool",
|
|
363
364
|
"get-bubble-details-tool",
|
|
364
365
|
"get-trigger-detail-tool",
|
|
365
366
|
"bubbleflow-validation-tool",
|
|
@@ -580,7 +581,7 @@
|
|
|
580
581
|
],
|
|
581
582
|
"additionalProperties": false
|
|
582
583
|
},
|
|
583
|
-
"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/z-ai/glm-4.7\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/anthropic/claude-opus-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/z-ai/glm-4.7\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/anthropic/claude-opus-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 capabilities: [{ id: \"example string\" // Capability ID (e.g., \"google-doc-knowledge-base\"), inputs: { \"example_key\": [\"example string\"] } // structure // Input parameter values for this capability }] // example for array, // Capabilities that extend the agent with bundled tools, prompts, and credentials. Example: [{ id: \"google-doc-knowledge-base\", inputs: { docId: \"your-doc-id\" } }],\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);",
|
|
584
|
+
"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/z-ai/glm-4.7\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/anthropic/claude-opus-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/z-ai/glm-4.7\", \"openrouter/anthropic/claude-sonnet-4.5\", \"openrouter/anthropic/claude-opus-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\", \"list-capabilities-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 capabilities: [{ id: \"example string\" // Capability ID (e.g., \"google-doc-knowledge-base\"), inputs: { \"example_key\": [\"example string\"] } // structure // Input parameter values for this capability }] // example for array, // Capabilities that extend the agent with bundled tools, prompts, and credentials. Example: [{ id: \"google-doc-knowledge-base\", inputs: { docId: \"your-doc-id\" } }],\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);",
|
|
584
585
|
"requiredCredentials": [
|
|
585
586
|
"OPENAI_CRED",
|
|
586
587
|
"GOOGLE_GEMINI_CRED",
|
|
@@ -31372,7 +31373,8 @@
|
|
|
31372
31373
|
},
|
|
31373
31374
|
"usageExample": "// Create Page example\nconst notion_create_page = new NotionBubble({\n operation: \"create_page\", // Create a new page in Notion\n parent: { type: \"page_id\", page_id: \"example string\" }, // Parent page, database, or workspace\n properties: {}, // Page properties (required if parent is a data source)\n children: [], // Array of block objects for page content\n icon: { type: \"emoji\", emoji: \"example string\" // Emoji character }, // Page icon (emoji or file)\n cover: { type: \"file\", file: { url: \"example string\" // Authenticated HTTP GET URL to the file, expiry_time: \"example string\" // ISO 8601 date time when the link expires } }, // Page cover image\n});\n\nconst result = await notion_create_page.action();\n// outputSchema for result.data when operation === 'create_page':\n// {\n// operation: \"create_page\" // Create page operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// page: { object: \"page\" // Object type, id: string // Page ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the page, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the page, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Page cover image, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Page icon, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the page, archived: boolean // Whether the page is archived, in_trash: boolean | undefined // Whether the page is in trash, properties: Record<string, unknown> // Page properties, url: string // Public URL of the page, public_url: string | null | undefined // Public shareable URL } | undefined // Created page object\n// }\n\n\n// Retrieve Page example\nconst notion_retrieve_page = new NotionBubble({\n operation: \"retrieve_page\", // Retrieve a page by its ID\n page_id: \"example string\", // UUID of the Notion page\n filter_properties: [\"example string\"], // Limit response to specific property IDs\n});\n\nconst result = await notion_retrieve_page.action();\n// outputSchema for result.data when operation === 'retrieve_page':\n// {\n// operation: \"retrieve_page\" // Retrieve page operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// page: { object: \"page\" // Object type, id: string // Page ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the page, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the page, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Page cover image, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Page icon, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the page, archived: boolean // Whether the page is archived, in_trash: boolean | undefined // Whether the page is in trash, properties: Record<string, unknown> // Page properties, url: string // Public URL of the page, public_url: string | null | undefined // Public shareable URL } | undefined // Retrieved page object\n// }\n\n\n// Update Page example\nconst notion_update_page = new NotionBubble({\n operation: \"update_page\", // Update an existing page\n page_id: \"example string\", // UUID of the Notion page\n properties: {}, // Page properties to update\n icon: { type: \"emoji\", emoji: \"example string\" }, // Page icon (emoji or file, null to remove)\n cover: { type: \"file\", file: { url: \"example string\" // Authenticated HTTP GET URL to the file, expiry_time: \"example string\" // ISO 8601 date time when the link expires } }, // Page cover image (null to remove)\n archived: true, // Set to true to archive the page\n in_trash: true, // Set to true to move page to trash\n is_locked: true, // Control if page can be edited in Notion UI\n});\n\nconst result = await notion_update_page.action();\n// outputSchema for result.data when operation === 'update_page':\n// {\n// operation: \"update_page\" // Update page operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// page: { object: \"page\" // Object type, id: string // Page ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the page, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the page, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Page cover image, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Page icon, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the page, archived: boolean // Whether the page is archived, in_trash: boolean | undefined // Whether the page is in trash, properties: Record<string, unknown> // Page properties, url: string // Public URL of the page, public_url: string | null | undefined // Public shareable URL } | undefined // Updated page object\n// }\n\n\n// Retrieve Database example\nconst notion_retrieve_database = new NotionBubble({\n operation: \"retrieve_database\", // Retrieve a database by its ID\n database_id: \"example string\", // UUID of the Notion database\n});\n\nconst result = await notion_retrieve_database.action();\n// outputSchema for result.data when operation === 'retrieve_database':\n// {\n// operation: \"retrieve_database\" // Retrieve database operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// database: { object: \"database\" // Object type, id: string // Database ID, To find a database ID, navigate to the database URL in your Notion workspace. The ID is the string of characters in the URL that is between the slash following the workspace name (if applicable) and the question mark. The ID is a 32 characters alphanumeric string., created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, title: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Database title, description: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] | undefined // Database description, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Database icon, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Database cover, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the database, is_inline: boolean | undefined // Whether displayed inline, in_trash: boolean | undefined // Whether in trash, is_locked: boolean | undefined // Whether locked from editing, data_sources: { id: string // Data source ID, name: string // Data source name, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined }[] // Array of data sources in this database, url: string | undefined // URL of the database, public_url: string | null | undefined } | undefined // Retrieved database object\n// }\n\n\n// Query Data Source example\nconst notion_query_data_source = new NotionBubble({\n operation: \"query_data_source\", // Query a data source to retrieve pages\n data_source_id: \"example string\", // UUID of the Notion data source\n filter: {}, // Filter object for querying\n sorts: [], // Array of sort objects\n start_cursor: \"example string\", // Cursor for pagination\n page_size: 100 // default, // Number of results per page (1-100)\n filter_properties: [\"example string\"], // Limit response to specific property IDs\n result_type: \"page\" // options: \"page\", \"data_source\", // Filter results to page or data_source\n});\n\nconst result = await notion_query_data_source.action();\n// outputSchema for result.data when operation === 'query_data_source':\n// {\n// operation: \"query_data_source\" // Query data source operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// results: { object: \"page\" | \"data_source\" // Object type (page or data_source), id: string // Object ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, url: string | undefined // URL of the object, properties: Record<string, unknown> | undefined // Object properties, title: { plain_text: string | undefined }[] | undefined // Title (for data sources), parent: Record<string, unknown> | undefined // Parent of the object, archived: boolean | undefined // Whether the object is archived, in_trash: boolean | undefined // Whether the object is in trash }[] | undefined // Array of pages or data sources from query,\n// next_cursor: string | null | undefined // Cursor for pagination,\n// has_more: boolean | undefined // Whether more results exist\n// }\n\n\n// Create Data Source example\nconst notion_create_data_source = new NotionBubble({\n operation: \"create_data_source\", // Create a new data source in an existing database\n parent: { type: \"database_id\" // Parent type, database_id: \"example string\" // ID of the parent database }, // Parent database for the new data source\n properties: {}, // Property schema for the data source (hash map where keys are property names)\n title: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Title of the data source\n icon: { type: \"emoji\", emoji: \"example string\" // Emoji character }, // Data source icon\n});\n\nconst result = await notion_create_data_source.action();\n// outputSchema for result.data when operation === 'create_data_source':\n// {\n// operation: \"create_data_source\" // Create data source operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// dataSource: { object: \"data_source\" // Object type, id: string // Data source ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the data source, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the data source, properties: Record<string, unknown> // Data source properties, parent: { type: \"database_id\", database_id: string } // Parent database, database_parent: Record<string, unknown> | undefined // Database parent information, archived: boolean // Whether the data source is archived, in_trash: boolean | undefined // Whether data source is in trash, is_inline: boolean | undefined // Whether displayed inline, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Data source icon, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Data source cover, title: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Data source title (can be empty array), description: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] | undefined // Data source description, url: string | undefined // URL of the data source, public_url: string | null | undefined // Public shareable URL of the data source } | undefined // Created data source object\n// }\n\n\n// Update Data Source example\nconst notion_update_data_source = new NotionBubble({\n operation: \"update_data_source\", // Update a data source\n data_source_id: \"example string\", // UUID of the Notion data source\n properties: {}, // Property schema updates\n title: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Updated title\n description: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Updated description\n icon: { type: \"emoji\", emoji: \"example string\" // Emoji character }, // Updated icon (null to remove)\n in_trash: true, // Set to true to move to trash\n parent: { type: \"database_id\", database_id: \"example string\" // ID of the destination database }, // New parent database to move data source\n});\n\nconst result = await notion_update_data_source.action();\n// outputSchema for result.data when operation === 'update_data_source':\n// {\n// operation: \"update_data_source\" // Update data source operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// dataSource: { object: \"data_source\" // Object type, id: string // Data source ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the data source, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the data source, properties: Record<string, unknown> // Data source properties, parent: { type: \"database_id\", database_id: string } // Parent database, database_parent: Record<string, unknown> | undefined // Database parent information, archived: boolean // Whether the data source is archived, in_trash: boolean | undefined // Whether data source is in trash, is_inline: boolean | undefined // Whether displayed inline, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Data source icon, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Data source cover, title: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Data source title (can be empty array), description: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] | undefined // Data source description, url: string | undefined // URL of the data source, public_url: string | null | undefined // Public shareable URL of the data source } | undefined // Updated data source object\n// }\n\n\n// Create Database example\nconst notion_create_database = new NotionBubble({\n operation: \"create_database\", // Create a new database\n initial_data_source: { properties: {} // Property schema for the data source (hash map where keys are property names) }, // Initial data source configuration\n title: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Title of the database\n description: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Description of the database\n icon: { type: \"emoji\", emoji: \"example string\" }, // Database icon\n cover: { type: \"file\", file: { url: \"example string\" // Authenticated HTTP GET URL to the file, expiry_time: \"example string\" // ISO 8601 date time when the link expires } }, // Database cover image\n});\n\nconst result = await notion_create_database.action();\n// outputSchema for result.data when operation === 'create_database':\n// {\n// operation: \"create_database\" // Create database operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// database: { object: \"database\" // Object type, id: string // Database ID, To find a database ID, navigate to the database URL in your Notion workspace. The ID is the string of characters in the URL that is between the slash following the workspace name (if applicable) and the question mark. The ID is a 32 characters alphanumeric string., created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, title: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Database title, description: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] | undefined // Database description, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Database icon, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Database cover, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the database, is_inline: boolean | undefined // Whether displayed inline, in_trash: boolean | undefined // Whether in trash, is_locked: boolean | undefined // Whether locked from editing, data_sources: { id: string // Data source ID, name: string // Data source name, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined }[] // Array of data sources in this database, url: string | undefined // URL of the database, public_url: string | null | undefined } | undefined // Created database object\n// }\n\n\n// Update Database example\nconst notion_update_database = new NotionBubble({\n operation: \"update_database\", // Update a database\n database_id: \"example string\", // UUID of the Notion database\n title: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Updated title\n description: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Updated description\n icon: { type: \"emoji\", emoji: \"example string\" }, // Updated icon (null to remove)\n cover: { type: \"file\", file: { url: \"example string\" // Authenticated HTTP GET URL to the file, expiry_time: \"example string\" // ISO 8601 date time when the link expires } }, // Updated cover (null to remove)\n parent: { type: \"page_id\", page_id: \"example string\" }, // New parent to move database\n is_inline: true, // Whether database should be displayed inline\n in_trash: true, // Set to true to move to trash\n is_locked: true, // Set to true to lock from editing\n});\n\nconst result = await notion_update_database.action();\n// outputSchema for result.data when operation === 'update_database':\n// {\n// operation: \"update_database\" // Update database operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// database: { object: \"database\" // Object type, id: string // Database ID, To find a database ID, navigate to the database URL in your Notion workspace. The ID is the string of characters in the URL that is between the slash following the workspace name (if applicable) and the question mark. The ID is a 32 characters alphanumeric string., created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, title: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Database title, description: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] | undefined // Database description, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined // Database icon, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined // Database cover, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } // Parent of the database, is_inline: boolean | undefined // Whether displayed inline, in_trash: boolean | undefined // Whether in trash, is_locked: boolean | undefined // Whether locked from editing, data_sources: { id: string // Data source ID, name: string // Data source name, icon: { type: \"emoji\" // Emoji icon, emoji: string // Emoji character } | { type: \"external\" // External icon, external: { url: string // URL of the external icon } } | { type: \"file\" // File icon, file: { url: string // URL of the file icon, expiry_time: string // Expiry time of the URL } } | null | undefined, cover: { type: \"file\" // Notion-hosted file type, file: { url: string // Authenticated HTTP GET URL to the file, expiry_time: string // ISO 8601 date time when the link expires } // File object for Notion-hosted files } | { type: \"file_upload\" // File uploaded via API type, file_upload: { id: string // ID of a File Upload object } // File upload object } | { type: \"external\" // External file type, external: { url: string // Link to externally hosted content } // External file object } | null | undefined }[] // Array of data sources in this database, url: string | undefined // URL of the database, public_url: string | null | undefined } | undefined // Updated database object\n// }\n\n\n// Append Block Children example\nconst notion_append_block_children = new NotionBubble({\n operation: \"append_block_children\", // Append children blocks to a parent block or page\n block_id: \"example string\", // UUID of the parent block or page\n children: [], // Array of block objects to append (max 100)\n after: \"example string\", // ID of block to append after\n});\n\nconst result = await notion_append_block_children.action();\n// outputSchema for result.data when operation === 'append_block_children':\n// {\n// operation: \"append_block_children\" // Append block children operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// blocks: { object: \"block\" // Object type, id: string // Block ID, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } | undefined // Parent of the block, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the block, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the block, has_children: boolean // Whether the block has children, archived: boolean // Whether the block is archived, in_trash: boolean | undefined // Whether block is in trash, type: string // Type of block (e.g., paragraph, heading_2, etc.) }[] | undefined // Array of appended block objects,\n// next_cursor: string | null | undefined // Cursor for pagination,\n// has_more: boolean | undefined // Whether more results exist\n// }\n\n\n// Retrieve Block Children example\nconst notion_retrieve_block_children = new NotionBubble({\n operation: \"retrieve_block_children\", // Retrieve children blocks of a parent block\n block_id: \"example string\", // UUID of the parent block\n start_cursor: \"example string\", // Cursor for pagination\n page_size: 100 // default, // Number of items per response (max 100)\n});\n\nconst result = await notion_retrieve_block_children.action();\n// outputSchema for result.data when operation === 'retrieve_block_children':\n// {\n// operation: \"retrieve_block_children\" // Retrieve block children operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// blocks: { object: \"block\" // Object type, id: string // Block ID, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } | undefined // Parent of the block, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the block, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the block, has_children: boolean // Whether the block has children, archived: boolean // Whether the block is archived, in_trash: boolean | undefined // Whether block is in trash, type: string // Type of block (e.g., paragraph, heading_2, etc.) }[] | undefined // Array of block children,\n// next_cursor: string | null | undefined // Cursor for pagination,\n// has_more: boolean | undefined // Whether more results exist\n// }\n\n\n// Retrieve Block example\nconst notion_retrieve_block = new NotionBubble({\n operation: \"retrieve_block\", // Retrieve a block by its ID\n block_id: \"example string\", // UUID of the Notion block\n});\n\nconst result = await notion_retrieve_block.action();\n// outputSchema for result.data when operation === 'retrieve_block':\n// {\n// operation: \"retrieve_block\" // Retrieve block operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// block: { object: \"block\" // Object type, id: string // Block ID, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } | undefined // Parent of the block, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the block, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the block, has_children: boolean // Whether the block has children, archived: boolean // Whether the block is archived, in_trash: boolean | undefined // Whether block is in trash, type: string // Type of block (e.g., paragraph, heading_2, etc.) } | undefined // Retrieved block object\n// }\n\n\n// Update Block example\nconst notion_update_block = new NotionBubble({\n operation: \"update_block\", // Update a block\n block_id: \"example string\", // UUID of the Notion block\n archived: true, // Set to true to archive the block\n});\n\nconst result = await notion_update_block.action();\n// outputSchema for result.data when operation === 'update_block':\n// {\n// operation: \"update_block\" // Update block operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// block: { object: \"block\" // Object type, id: string // Block ID, parent: { type: \"page_id\" // Parent is a page, page_id: string // ID of the parent page } | { type: \"database_id\" // Parent is a database, database_id: string // ID of the parent database } | { type: \"data_source_id\" // Parent is a data source, data_source_id: string // ID of the parent data source, database_id: string | undefined // ID of the database } | { type: \"block_id\" // Parent is a block, block_id: string // ID of the parent block } | { type: \"workspace\" // Parent is the workspace, workspace: true // Workspace parent } | undefined // Parent of the block, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the block, last_edited_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who last edited the block, has_children: boolean // Whether the block has children, archived: boolean // Whether the block is archived, in_trash: boolean | undefined // Whether block is in trash, type: string // Type of block (e.g., paragraph, heading_2, etc.) } | undefined // Updated block object\n// }\n\n\n// Create Comment example\nconst notion_create_comment = new NotionBubble({\n operation: \"create_comment\", // Create a comment on a page or block\n parent: { page_id: \"example string\" // ID of parent page, block_id: \"example string\" // ID of parent block }, // Parent page or block ID (one of page_id or block_id is required)\n rich_text: [{ type: \"text\" // options: \"text\", \"mention\", \"equation\" // Type of rich text, text: { content: \"example string\" // The actual text content, link: { url: \"example string\" // URL for the link } // Optional link object } // Text object (when type is \"text\"), annotations: { bold: false // default // Whether text is bolded, italic: false // default // Whether text is italicized, strikethrough: false // default // Whether text is struck through, underline: false // default // Whether text is underlined, code: false // default // Whether text is code style, color: \"default\" // options: \"default\", \"gray\", \"brown\", \"orange\", \"yellow\", \"green\", \"blue\", \"purple\", \"pink\", \"red\" // Color of the text } // Styling information for the rich text, plain_text: \"example string\" // Plain text without annotations, href: \"example string\" // URL of any link }], // Array of rich text objects for comment content\n attachments: [{ file_upload_id: \"example string\" // File Upload ID, type: \"file_upload\" }], // Array of file attachments (max 3)\n display_name: { type: \"integration\" // options: \"integration\", \"user\", \"custom\" // Type of display name, custom: { name: \"example string\" // Custom name for the comment } // Custom name object (required if type is custom) }, // Custom display name for the comment\n});\n\nconst result = await notion_create_comment.action();\n// outputSchema for result.data when operation === 'create_comment':\n// {\n// operation: \"create_comment\" // Create comment operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// comment: { object: \"comment\" // Object type, id: string // Comment ID, parent: { type: \"page_id\" | \"block_id\", page_id: string | undefined, block_id: string | undefined } // Parent page or block, discussion_id: string // Discussion thread ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the comment, rich_text: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Comment content } | undefined // Created comment object\n// }\n\n\n// Retrieve Comment example\nconst notion_retrieve_comment = new NotionBubble({\n operation: \"retrieve_comment\", // Retrieve a comment by its ID\n comment_id: \"example string\", // UUID of the Notion comment\n});\n\nconst result = await notion_retrieve_comment.action();\n// outputSchema for result.data when operation === 'retrieve_comment':\n// {\n// operation: \"retrieve_comment\" // Retrieve comment operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// comment: { object: \"comment\" // Object type, id: string // Comment ID, parent: { type: \"page_id\" | \"block_id\", page_id: string | undefined, block_id: string | undefined } // Parent page or block, discussion_id: string // Discussion thread ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, created_by: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details } // User who created the comment, rich_text: { type: \"text\" | \"mention\" | \"equation\" // Type of rich text, text: { content: string // The actual text content, link: { url: string // URL for the link } | null | undefined // Optional link object } | undefined // Text object (when type is \"text\"), annotations: { bold: boolean // Whether text is bolded, italic: boolean // Whether text is italicized, strikethrough: boolean // Whether text is struck through, underline: boolean // Whether text is underlined, code: boolean // Whether text is code style, color: \"default\" | \"gray\" | \"brown\" | \"orange\" | \"yellow\" | \"green\" | \"blue\" | \"purple\" | \"pink\" | \"red\" // Color of the text } | undefined // Styling information for the rich text, plain_text: string | undefined // Plain text without annotations, href: string | null | undefined // URL of any link }[] // Comment content } | undefined // Retrieved comment object\n// }\n\n\n// List Users example\nconst notion_list_users = new NotionBubble({\n operation: \"list_users\", // List all users in the workspace\n start_cursor: \"example string\", // Cursor for pagination\n page_size: 100 // default, // Number of items per page (max 100)\n});\n\nconst result = await notion_list_users.action();\n// outputSchema for result.data when operation === 'list_users':\n// {\n// operation: \"list_users\" // List users operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// users: { object: \"user\" // Object type, id: string // User ID, type: \"person\" | \"bot\" | undefined // User type, name: string | undefined // User name, avatar_url: string | null | undefined // Avatar URL, person: { email: string | undefined // Email address } | undefined // Person details, bot: { owner: { type: \"workspace\" | \"user\" // Owner type, workspace: boolean | undefined } | undefined, workspace_name: string | undefined // Workspace name } | undefined // Bot details }[] | undefined // Array of users in the workspace,\n// next_cursor: string | null | undefined // Cursor for pagination,\n// has_more: boolean | undefined // Whether more results exist\n// }\n\n\n// Search example\nconst notion_search = new NotionBubble({\n operation: \"search\", // Search all pages and data sources shared with the integration\n query: \"example string\", // Text to compare against page and data source titles. If not provided, returns all pages and data sources shared with the integration\n sort: { direction: \"ascending\" // options: \"ascending\", \"descending\" // Sort direction, timestamp: \"last_edited_time\" // Timestamp field to sort by (only \"last_edited_time\" is supported) }, // Sort criteria. If not provided, most recently edited results are returned first\n filter: { value: \"page\" // options: \"page\", \"data_source\" // Filter results to only pages or only data sources, property: \"object\" // Property to filter on (only \"object\" is supported) }, // Filter to limit results to either pages or data sources\n start_cursor: \"example string\", // Cursor for pagination (from previous response)\n page_size: 100 // default, // Number of items per page (max 100)\n});\n\nconst result = await notion_search.action();\n// outputSchema for result.data when operation === 'search':\n// {\n// operation: \"search\" // Search operation result,\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// results: { object: \"page\" | \"data_source\" // Object type (page or data_source), id: string // Object ID, created_time: string // ISO 8601 datetime, last_edited_time: string // ISO 8601 datetime, url: string | undefined // URL of the object, properties: Record<string, unknown> | undefined // Object properties, title: { plain_text: string | undefined }[] | undefined // Title (for data sources), parent: Record<string, unknown> | undefined // Parent of the object, archived: boolean | undefined // Whether the object is archived, in_trash: boolean | undefined // Whether the object is in trash }[] | undefined // Array of pages and/or data sources matching the search query,\n// next_cursor: string | null | undefined // Cursor for pagination,\n// has_more: boolean | undefined // Whether more results exist\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`notion failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
31374
31375
|
"requiredCredentials": [
|
|
31375
|
-
"NOTION_OAUTH_TOKEN"
|
|
31376
|
+
"NOTION_OAUTH_TOKEN",
|
|
31377
|
+
"NOTION_API"
|
|
31376
31378
|
]
|
|
31377
31379
|
},
|
|
31378
31380
|
{
|
|
@@ -34653,6 +34655,137 @@
|
|
|
34653
34655
|
"usageExample": "// Example usage of list-bubbles-tool bubble\nconst listBubblesTool = new ListBubblesTool({\n // Add required parameters here\n});\n\nconst result = await listBubblesTool.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// bubbles: { name: string // Name of the bubble, alias: string | undefined // Short alias for the bubble, shortDescription: string // Brief description of the bubble functionality, useCase: string // Primary use cases for the bubble, type: string // Type of bubble (service, workflow, tool) }[] // Array of bubble information objects,\n// totalCount: number // Total number of bubbles in the registry,\n// success: boolean // Whether the operation was successful,\n// error: string // Error message if operation failed\n// }\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
34654
34656
|
"requiredCredentials": []
|
|
34655
34657
|
},
|
|
34658
|
+
{
|
|
34659
|
+
"name": "list-capabilities-tool",
|
|
34660
|
+
"alias": "list-caps",
|
|
34661
|
+
"type": "tool",
|
|
34662
|
+
"shortDescription": "Lists all available capabilities that can be attached to AI agents",
|
|
34663
|
+
"useCase": "- Discovering available capabilities before building AI agent workflows",
|
|
34664
|
+
"outputSchema": "{\n capabilities: { id: string // Unique identifier for the capability, name: string // Display name of the capability, description: string // What the capability does, category: string | undefined // Category grouping (e.g., knowledge, data), requiredCredentials: string[] // Credential types that must be provided, optionalCredentials: string[] | undefined // Credential types that can optionally be provided, inputs: { name: string, description: string }[] // User-configurable input parameters, tools: { name: string, description: string }[] // Tools provided by this capability, delegationHint: string | undefined // Guidance on when to use this capability }[] // Array of capability summary objects,\n totalCount: number // Total number of registered capabilities,\n success: boolean // Whether the operation was successful,\n error: string // Error message if operation failed\n}",
|
|
34665
|
+
"inputJsonSchema": {
|
|
34666
|
+
"type": "object",
|
|
34667
|
+
"properties": {},
|
|
34668
|
+
"additionalProperties": false
|
|
34669
|
+
},
|
|
34670
|
+
"outputJsonSchema": {
|
|
34671
|
+
"type": "object",
|
|
34672
|
+
"properties": {
|
|
34673
|
+
"capabilities": {
|
|
34674
|
+
"type": "array",
|
|
34675
|
+
"items": {
|
|
34676
|
+
"type": "object",
|
|
34677
|
+
"properties": {
|
|
34678
|
+
"id": {
|
|
34679
|
+
"type": "string",
|
|
34680
|
+
"description": "Unique identifier for the capability"
|
|
34681
|
+
},
|
|
34682
|
+
"name": {
|
|
34683
|
+
"type": "string",
|
|
34684
|
+
"description": "Display name of the capability"
|
|
34685
|
+
},
|
|
34686
|
+
"description": {
|
|
34687
|
+
"type": "string",
|
|
34688
|
+
"description": "What the capability does"
|
|
34689
|
+
},
|
|
34690
|
+
"category": {
|
|
34691
|
+
"type": "string",
|
|
34692
|
+
"description": "Category grouping (e.g., knowledge, data)"
|
|
34693
|
+
},
|
|
34694
|
+
"requiredCredentials": {
|
|
34695
|
+
"type": "array",
|
|
34696
|
+
"items": {
|
|
34697
|
+
"type": "string"
|
|
34698
|
+
},
|
|
34699
|
+
"description": "Credential types that must be provided"
|
|
34700
|
+
},
|
|
34701
|
+
"optionalCredentials": {
|
|
34702
|
+
"type": "array",
|
|
34703
|
+
"items": {
|
|
34704
|
+
"type": "string"
|
|
34705
|
+
},
|
|
34706
|
+
"description": "Credential types that can optionally be provided"
|
|
34707
|
+
},
|
|
34708
|
+
"inputs": {
|
|
34709
|
+
"type": "array",
|
|
34710
|
+
"items": {
|
|
34711
|
+
"type": "object",
|
|
34712
|
+
"properties": {
|
|
34713
|
+
"name": {
|
|
34714
|
+
"type": "string"
|
|
34715
|
+
},
|
|
34716
|
+
"description": {
|
|
34717
|
+
"type": "string"
|
|
34718
|
+
}
|
|
34719
|
+
},
|
|
34720
|
+
"required": [
|
|
34721
|
+
"name",
|
|
34722
|
+
"description"
|
|
34723
|
+
],
|
|
34724
|
+
"additionalProperties": false
|
|
34725
|
+
},
|
|
34726
|
+
"description": "User-configurable input parameters"
|
|
34727
|
+
},
|
|
34728
|
+
"tools": {
|
|
34729
|
+
"type": "array",
|
|
34730
|
+
"items": {
|
|
34731
|
+
"type": "object",
|
|
34732
|
+
"properties": {
|
|
34733
|
+
"name": {
|
|
34734
|
+
"type": "string"
|
|
34735
|
+
},
|
|
34736
|
+
"description": {
|
|
34737
|
+
"type": "string"
|
|
34738
|
+
}
|
|
34739
|
+
},
|
|
34740
|
+
"required": [
|
|
34741
|
+
"name",
|
|
34742
|
+
"description"
|
|
34743
|
+
],
|
|
34744
|
+
"additionalProperties": false
|
|
34745
|
+
},
|
|
34746
|
+
"description": "Tools provided by this capability"
|
|
34747
|
+
},
|
|
34748
|
+
"delegationHint": {
|
|
34749
|
+
"type": "string",
|
|
34750
|
+
"description": "Guidance on when to use this capability"
|
|
34751
|
+
}
|
|
34752
|
+
},
|
|
34753
|
+
"required": [
|
|
34754
|
+
"id",
|
|
34755
|
+
"name",
|
|
34756
|
+
"description",
|
|
34757
|
+
"requiredCredentials",
|
|
34758
|
+
"inputs",
|
|
34759
|
+
"tools"
|
|
34760
|
+
],
|
|
34761
|
+
"additionalProperties": false
|
|
34762
|
+
},
|
|
34763
|
+
"description": "Array of capability summary objects"
|
|
34764
|
+
},
|
|
34765
|
+
"totalCount": {
|
|
34766
|
+
"type": "number",
|
|
34767
|
+
"description": "Total number of registered capabilities"
|
|
34768
|
+
},
|
|
34769
|
+
"success": {
|
|
34770
|
+
"type": "boolean",
|
|
34771
|
+
"description": "Whether the operation was successful"
|
|
34772
|
+
},
|
|
34773
|
+
"error": {
|
|
34774
|
+
"type": "string",
|
|
34775
|
+
"description": "Error message if operation failed"
|
|
34776
|
+
}
|
|
34777
|
+
},
|
|
34778
|
+
"required": [
|
|
34779
|
+
"capabilities",
|
|
34780
|
+
"totalCount",
|
|
34781
|
+
"success",
|
|
34782
|
+
"error"
|
|
34783
|
+
],
|
|
34784
|
+
"additionalProperties": false
|
|
34785
|
+
},
|
|
34786
|
+
"usageExample": "// Example usage of list-capabilities-tool bubble\nconst listCapabilitiesTool = new ListCapabilitiesTool({\n // Add required parameters here\n});\n\nconst result = await listCapabilitiesTool.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// capabilities: { id: string // Unique identifier for the capability, name: string // Display name of the capability, description: string // What the capability does, category: string | undefined // Category grouping (e.g., knowledge, data), requiredCredentials: string[] // Credential types that must be provided, optionalCredentials: string[] | undefined // Credential types that can optionally be provided, inputs: { name: string, description: string }[] // User-configurable input parameters, tools: { name: string, description: string }[] // Tools provided by this capability, delegationHint: string | undefined // Guidance on when to use this capability }[] // Array of capability summary objects,\n// totalCount: number // Total number of registered capabilities,\n// success: boolean // Whether the operation was successful,\n// error: string // Error message if operation failed\n// }\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
34787
|
+
"requiredCredentials": []
|
|
34788
|
+
},
|
|
34656
34789
|
{
|
|
34657
34790
|
"name": "sql-query-tool",
|
|
34658
34791
|
"alias": "sql",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CapabilityMetadata, CapabilityInput, CapabilityModelConfigOverride } from '@bubblelab/shared-schemas';
|
|
1
|
+
import type { CapabilityMetadata, CapabilityInput, CapabilityModelConfigOverride, CapabilityProviderMetadata, CapabilityId } from '@bubblelab/shared-schemas';
|
|
2
2
|
import type { CredentialType, BubbleName } from '@bubblelab/shared-schemas';
|
|
3
3
|
import type { ToolHookBefore, ToolHookAfter } from '../bubbles/service-bubble/ai-agent.js';
|
|
4
4
|
import type { BubbleContext } from '../types/bubble.js';
|
|
@@ -31,7 +31,7 @@ export interface CapabilityDefinition {
|
|
|
31
31
|
}
|
|
32
32
|
/** Options for the defineCapability() helper — ergonomic API for creating capabilities. */
|
|
33
33
|
export interface DefineCapabilityOptions {
|
|
34
|
-
id:
|
|
34
|
+
id: CapabilityId;
|
|
35
35
|
name: string;
|
|
36
36
|
description: string;
|
|
37
37
|
icon?: string;
|
|
@@ -54,6 +54,12 @@ export interface DefineCapabilityOptions {
|
|
|
54
54
|
hooks?: CapabilityDefinition['hooks'];
|
|
55
55
|
/** Optional model config overrides applied at runtime (e.g., force a specific model or raise maxTokens). */
|
|
56
56
|
modelConfigOverride?: CapabilityModelConfigOverride;
|
|
57
|
+
/** Short guidance for the main agent on when to delegate to this capability in multi-capability mode. */
|
|
58
|
+
delegationHint?: string;
|
|
59
|
+
/** Hidden capabilities are registered for runtime use but not shown in the UI. */
|
|
60
|
+
hidden?: boolean;
|
|
61
|
+
/** Data-driven provider options for the wizard "Choose Providers" step. */
|
|
62
|
+
providers?: CapabilityProviderMetadata[];
|
|
57
63
|
}
|
|
58
64
|
/**
|
|
59
65
|
* Creates a CapabilityDefinition from a user-friendly options object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-capability.d.ts","sourceRoot":"","sources":["../../src/capabilities/define-capability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EAEf,6BAA6B,
|
|
1
|
+
{"version":3,"file":"define-capability.d.ts","sourceRoot":"","sources":["../../src/capabilities/define-capability.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,9 @@ export function defineCapability(options) {
|
|
|
30
30
|
? options.systemPrompt
|
|
31
31
|
: undefined,
|
|
32
32
|
modelConfigOverride: options.modelConfigOverride,
|
|
33
|
+
delegationHint: options.delegationHint,
|
|
34
|
+
hidden: options.hidden,
|
|
35
|
+
providers: options.providers,
|
|
33
36
|
};
|
|
34
37
|
// Build tool factory that curries context into each tool func
|
|
35
38
|
const createTools = (ctx) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-capability.js","sourceRoot":"","sources":["../../src/capabilities/define-capability.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"define-capability.js","sourceRoot":"","sources":["../../src/capabilities/define-capability.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA2ErD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAgC;IAEhC,uDAAuD;IACvD,MAAM,QAAQ,GAAwB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjE,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,eAAe,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE;YAC5C,YAAY,EAAE,MAAM;SACrB,CAA4B;QAC7B,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3E,CAAC,CAAC,CAAC;IAEJ,8BAA8B;IAC9B,MAAM,QAAQ,GAAuB;QACnC,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO;QACnC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,QAAQ;QACf,oBAAoB,EAClB,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;YACtC,CAAC,CAAC,OAAO,CAAC,YAAY;YACtB,CAAC,CAAC,SAAS;QACf,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;IAEF,8DAA8D;IAC9D,MAAM,WAAW,GAA0B,CAAC,GAAG,EAAE,EAAE;QACjD,MAAM,SAAS,GAAuC,EAAE,CAAC;QACzD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,8BAA8B;IAC9B,MAAM,kBAAkB,GACtB,OAAO,OAAO,CAAC,YAAY,KAAK,UAAU;QACxC,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,SAAS,CAAC;IAEhB,gCAAgC;IAChC,MAAM,oBAAoB,GACxB,OAAO,OAAO,CAAC,cAAc,KAAK,UAAU;QAC1C,CAAC,CAAC,OAAO,CAAC,cAAc;QACxB,CAAC,CAAC,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ;YAC1C,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,cAAwB;YACxC,CAAC,CAAC,SAAS,CAAC;IAElB,OAAO;QACL,QAAQ;QACR,WAAW;QACX,kBAAkB;QAClB,oBAAoB;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -64,6 +64,7 @@ export { PDFOcrWorkflow } from './bubbles/workflow-bubble/pdf-ocr.workflow.js';
|
|
|
64
64
|
export { GenerateDocumentWorkflow } from './bubbles/workflow-bubble/generate-document.workflow.js';
|
|
65
65
|
export { ParseDocumentWorkflow } from './bubbles/workflow-bubble/parse-document.workflow.js';
|
|
66
66
|
export { ListBubblesTool } from './bubbles/tool-bubble/list-bubbles-tool.js';
|
|
67
|
+
export { ListCapabilitiesTool } from './bubbles/tool-bubble/list-capabilities-tool.js';
|
|
67
68
|
export { GetBubbleDetailsTool } from './bubbles/tool-bubble/get-bubble-details-tool.js';
|
|
68
69
|
export { GetTriggerDetailTool } from './bubbles/tool-bubble/get-trigger-detail-tool.js';
|
|
69
70
|
export { ListAirtableBasesTool } from './bubbles/tool-bubble/list-airtable-bases-tool.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -55,6 +55,7 @@ export { GenerateDocumentWorkflow } from './bubbles/workflow-bubble/generate-doc
|
|
|
55
55
|
export { ParseDocumentWorkflow } from './bubbles/workflow-bubble/parse-document.workflow.js';
|
|
56
56
|
// Export tool bubbles
|
|
57
57
|
export { ListBubblesTool } from './bubbles/tool-bubble/list-bubbles-tool.js';
|
|
58
|
+
export { ListCapabilitiesTool } from './bubbles/tool-bubble/list-capabilities-tool.js';
|
|
58
59
|
export { GetBubbleDetailsTool } from './bubbles/tool-bubble/get-bubble-details-tool.js';
|
|
59
60
|
export { GetTriggerDetailTool } from './bubbles/tool-bubble/get-trigger-detail-tool.js';
|
|
60
61
|
export { ListAirtableBasesTool } from './bubbles/tool-bubble/list-airtable-bases-tool.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export declare const AvailableTools: z.ZodEnum<["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"]>;
|
|
2
|
+
export declare const AvailableTools: z.ZodEnum<["web-search-tool", "web-scrape-tool", "web-crawl-tool", "web-extract-tool", "research-agent-tool", "reddit-scrape-tool", "instagram-tool", "list-bubbles-tool", "list-capabilities-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"]>;
|
|
3
3
|
export type AvailableTool = z.infer<typeof AvailableTools>;
|
|
4
4
|
//# sourceMappingURL=available-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"available-tools.d.ts","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"available-tools.d.ts","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,kdA0BgB,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -13,6 +13,7 @@ export const AvailableTools = z.enum([
|
|
|
13
13
|
'instagram-tool',
|
|
14
14
|
// Existing bubble tools (for reference - these are handled by bubble names)
|
|
15
15
|
'list-bubbles-tool',
|
|
16
|
+
'list-capabilities-tool',
|
|
16
17
|
'get-bubble-details-tool',
|
|
17
18
|
'get-trigger-detail-tool',
|
|
18
19
|
'bubbleflow-validation-tool',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"available-tools.js","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,4DAA4D;AAC5D,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;IACnC,YAAY;IACZ,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,4EAA4E;IAC5E,mBAAmB;IACnB,yBAAyB;IACzB,yBAAyB;IACzB,4BAA4B;IAC5B,gBAAgB;IAChB,eAAe;IACf,sBAAsB;IACtB,eAAe;IACf,aAAa;IACb,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,oBAAoB;IACpB,gBAAgB;CACwB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"available-tools.js","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,4DAA4D;AAC5D,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;IACnC,YAAY;IACZ,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,4EAA4E;IAC5E,mBAAmB;IACnB,wBAAwB;IACxB,yBAAyB;IACzB,yBAAyB;IACzB,4BAA4B;IAC5B,gBAAgB;IAChB,eAAe;IACf,sBAAsB;IACtB,eAAe;IACf,aAAa;IACb,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,oBAAoB;IACpB,gBAAgB;CACwB,CAAC,CAAC"}
|