@bubblelab/bubble-core 0.1.188 → 0.1.189
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 +156 -156
- package/dist/bubbles/service-bubble/agi-inc.d.ts +60 -60
- package/dist/bubbles/service-bubble/ai-agent.d.ts +8 -8
- package/dist/bubbles/service-bubble/ai-agent.js +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/airtable.d.ts +50 -50
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts +2 -2
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +4 -4
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +12 -12
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts +2 -2
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +8 -8
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-detail.d.ts +52 -52
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +18 -18
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +10 -10
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +27 -27
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +8 -8
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +131 -131
- package/dist/bubbles/service-bubble/apify/apify.d.ts +12 -12
- package/dist/bubbles/service-bubble/ashby/ashby.d.ts +62 -62
- package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +84 -84
- package/dist/bubbles/service-bubble/attio/attio.d.ts +36 -36
- package/dist/bubbles/service-bubble/attio/attio.schema.d.ts +36 -36
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +28 -28
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +30 -30
- package/dist/bubbles/service-bubble/capability-pipeline.js +6 -2
- package/dist/bubbles/service-bubble/capability-pipeline.js.map +1 -1
- package/dist/bubbles/service-bubble/confluence/confluence.d.ts +24 -24
- package/dist/bubbles/service-bubble/confluence/confluence.schema.d.ts +24 -24
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +126 -126
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +158 -158
- package/dist/bubbles/service-bubble/eleven-labs.d.ts +28 -28
- package/dist/bubbles/service-bubble/firecrawl.d.ts +783 -783
- package/dist/bubbles/service-bubble/followupboss.d.ts +140 -140
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.d.ts +68 -68
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.schema.d.ts +108 -108
- package/dist/bubbles/service-bubble/github.d.ts +317 -75
- package/dist/bubbles/service-bubble/github.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/github.js +101 -3
- package/dist/bubbles/service-bubble/github.js.map +1 -1
- package/dist/bubbles/service-bubble/gmail.d.ts +80 -80
- package/dist/bubbles/service-bubble/google-calendar.d.ts +138 -138
- package/dist/bubbles/service-bubble/google-drive.d.ts +60 -60
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +44 -44
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +48 -48
- package/dist/bubbles/service-bubble/hello-world.d.ts +8 -8
- package/dist/bubbles/service-bubble/http.d.ts +16 -16
- package/dist/bubbles/service-bubble/hubspot/hubspot.d.ts +8 -8
- package/dist/bubbles/service-bubble/hubspot/hubspot.schema.d.ts +8 -8
- package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
- package/dist/bubbles/service-bubble/jira/jira.d.ts +86 -86
- package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +94 -94
- package/dist/bubbles/service-bubble/linear/linear.d.ts +32 -32
- package/dist/bubbles/service-bubble/linear/linear.schema.d.ts +32 -32
- package/dist/bubbles/service-bubble/notion/notion.d.ts +522 -522
- package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +8 -8
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/posthog/posthog.d.ts +22 -22
- package/dist/bubbles/service-bubble/posthog/posthog.schema.d.ts +26 -26
- package/dist/bubbles/service-bubble/resend.d.ts +28 -28
- package/dist/bubbles/service-bubble/sendsafely/sendsafely.d.ts +10 -10
- package/dist/bubbles/service-bubble/sendsafely/sendsafely.schema.d.ts +12 -12
- package/dist/bubbles/service-bubble/slack/slack.d.ts +252 -252
- package/dist/bubbles/service-bubble/storage.d.ts +20 -20
- package/dist/bubbles/service-bubble/stripe/stripe.d.ts +125 -125
- package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +143 -143
- package/dist/bubbles/service-bubble/telegram.d.ts +1562 -1562
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +13 -13
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +13 -13
- package/dist/bubbles/tool-bubble/browser-tools/_shared/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-accept-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-accept-invitations/tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-connection/tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-received-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-received-invitations/tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-sent-invitations/schema.d.ts +2 -2
- package/dist/bubbles/tool-bubble/browser-tools/linkedin-sent-invitations/tool.d.ts +2 -2
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +16 -16
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +26 -26
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +52 -52
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/get-trigger-detail-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +186 -186
- package/dist/bubbles/tool-bubble/list-airtable-bases-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/list-airtable-tables-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/list-capabilities-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/people-search-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +28 -28
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +28 -28
- package/dist/bubbles/tool-bubble/tool-template.d.ts +4 -4
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +54 -54
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +22 -22
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/yc-scraper-tool.d.ts +22 -22
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +18 -18
- package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts +4 -4
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +28 -28
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +8 -8
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +72 -72
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +32 -32
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +34 -34
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +90 -90
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +8 -8
- package/dist/bubbles.json +190 -4
- package/package.json +2 -2
package/dist/bubbles.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.0.0",
|
|
3
|
-
"generatedAt": "2026-02-
|
|
3
|
+
"generatedAt": "2026-02-22T09:53:28.704Z",
|
|
4
4
|
"totalCount": 69,
|
|
5
5
|
"bubbles": [
|
|
6
6
|
{
|
|
@@ -405,7 +405,7 @@
|
|
|
405
405
|
"additionalProperties": false
|
|
406
406
|
},
|
|
407
407
|
"default": [],
|
|
408
|
-
"description": "Array of
|
|
408
|
+
"description": "Array of tool config objects: [{ name: \"web-search-tool\" }, { name: \"web-scrape-tool\" }]. Each object requires a \"name\" field. Available tool names: web-search-tool, web-scrape-tool, web-crawl-tool, web-extract-tool, instagram-tool. If using image models, set tools to []"
|
|
409
409
|
},
|
|
410
410
|
"customTools": {
|
|
411
411
|
"type": "array",
|
|
@@ -599,7 +599,7 @@
|
|
|
599
599
|
],
|
|
600
600
|
"additionalProperties": false
|
|
601
601
|
},
|
|
602
|
-
"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-sonnet-4-6\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-opus-4-6\", \"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-sonnet-4.6\", \"openrouter/anthropic/claude-opus-4.5\", \"openrouter/anthropic/claude-opus-4.6\", \"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-sonnet-4-6\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-opus-4-6\", \"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-sonnet-4.6\", \"openrouter/anthropic/claude-opus-4.5\", \"openrouter/anthropic/claude-opus-4.6\", \"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
|
|
602
|
+
"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-sonnet-4-6\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-opus-4-6\", \"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-sonnet-4.6\", \"openrouter/anthropic/claude-opus-4.5\", \"openrouter/anthropic/claude-opus-4.6\", \"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-sonnet-4-6\", \"anthropic/claude-opus-4-5\", \"anthropic/claude-opus-4-6\", \"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-sonnet-4.6\", \"openrouter/anthropic/claude-opus-4.5\", \"openrouter/anthropic/claude-opus-4.6\", \"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 tool config objects: [{ name: \"web-search-tool\" }, { name: \"web-scrape-tool\" }]. Each object requires a \"name\" field. Available tool names: web-search-tool, web-scrape-tool, web-crawl-tool, web-extract-tool, instagram-tool. If using image models, set 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 memoryEnabled: true // default, // Enable persistent memory across conversations. When true, the agent can recall and save information about people, topics, and events between conversations.,\n enableSlackHistory: false // default, // Enable Slack thread history injection. When true, the agent receives full conversation history from Slack threads including user names, timezones, and images.,\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);",
|
|
603
603
|
"requiredCredentials": [
|
|
604
604
|
"OPENAI_CRED",
|
|
605
605
|
"GOOGLE_GEMINI_CRED",
|
|
@@ -15523,6 +15523,65 @@
|
|
|
15523
15523
|
],
|
|
15524
15524
|
"additionalProperties": false
|
|
15525
15525
|
},
|
|
15526
|
+
{
|
|
15527
|
+
"type": "object",
|
|
15528
|
+
"properties": {
|
|
15529
|
+
"operation": {
|
|
15530
|
+
"type": "string",
|
|
15531
|
+
"enum": [
|
|
15532
|
+
"create_issue"
|
|
15533
|
+
],
|
|
15534
|
+
"description": "Create a new issue in a GitHub repository"
|
|
15535
|
+
},
|
|
15536
|
+
"owner": {
|
|
15537
|
+
"type": "string",
|
|
15538
|
+
"minLength": 1,
|
|
15539
|
+
"description": "Repository owner (username or organization name)"
|
|
15540
|
+
},
|
|
15541
|
+
"repo": {
|
|
15542
|
+
"type": "string",
|
|
15543
|
+
"minLength": 1,
|
|
15544
|
+
"description": "Repository name"
|
|
15545
|
+
},
|
|
15546
|
+
"title": {
|
|
15547
|
+
"type": "string",
|
|
15548
|
+
"minLength": 1,
|
|
15549
|
+
"description": "Issue title"
|
|
15550
|
+
},
|
|
15551
|
+
"body": {
|
|
15552
|
+
"type": "string",
|
|
15553
|
+
"description": "Issue body content (supports GitHub Markdown)"
|
|
15554
|
+
},
|
|
15555
|
+
"labels": {
|
|
15556
|
+
"type": "array",
|
|
15557
|
+
"items": {
|
|
15558
|
+
"type": "string"
|
|
15559
|
+
},
|
|
15560
|
+
"description": "Array of label names to add to the issue"
|
|
15561
|
+
},
|
|
15562
|
+
"assignees": {
|
|
15563
|
+
"type": "array",
|
|
15564
|
+
"items": {
|
|
15565
|
+
"type": "string"
|
|
15566
|
+
},
|
|
15567
|
+
"description": "Array of usernames to assign to the issue"
|
|
15568
|
+
},
|
|
15569
|
+
"credentials": {
|
|
15570
|
+
"type": "object",
|
|
15571
|
+
"additionalProperties": {
|
|
15572
|
+
"type": "string"
|
|
15573
|
+
},
|
|
15574
|
+
"description": "Object mapping credential types to values (injected at runtime)"
|
|
15575
|
+
}
|
|
15576
|
+
},
|
|
15577
|
+
"required": [
|
|
15578
|
+
"operation",
|
|
15579
|
+
"owner",
|
|
15580
|
+
"repo",
|
|
15581
|
+
"title"
|
|
15582
|
+
],
|
|
15583
|
+
"additionalProperties": false
|
|
15584
|
+
},
|
|
15526
15585
|
{
|
|
15527
15586
|
"type": "object",
|
|
15528
15587
|
"properties": {
|
|
@@ -16597,6 +16656,133 @@
|
|
|
16597
16656
|
],
|
|
16598
16657
|
"additionalProperties": false
|
|
16599
16658
|
},
|
|
16659
|
+
{
|
|
16660
|
+
"type": "object",
|
|
16661
|
+
"properties": {
|
|
16662
|
+
"operation": {
|
|
16663
|
+
"type": "string",
|
|
16664
|
+
"enum": [
|
|
16665
|
+
"create_issue"
|
|
16666
|
+
]
|
|
16667
|
+
},
|
|
16668
|
+
"success": {
|
|
16669
|
+
"type": "boolean",
|
|
16670
|
+
"description": "Whether the operation succeeded"
|
|
16671
|
+
},
|
|
16672
|
+
"error": {
|
|
16673
|
+
"type": "string",
|
|
16674
|
+
"description": "Error message if operation failed"
|
|
16675
|
+
},
|
|
16676
|
+
"id": {
|
|
16677
|
+
"type": "number",
|
|
16678
|
+
"description": "Issue ID"
|
|
16679
|
+
},
|
|
16680
|
+
"node_id": {
|
|
16681
|
+
"type": "string",
|
|
16682
|
+
"description": "GraphQL node ID"
|
|
16683
|
+
},
|
|
16684
|
+
"number": {
|
|
16685
|
+
"type": "number",
|
|
16686
|
+
"description": "Issue number"
|
|
16687
|
+
},
|
|
16688
|
+
"state": {
|
|
16689
|
+
"type": "string",
|
|
16690
|
+
"enum": [
|
|
16691
|
+
"open",
|
|
16692
|
+
"closed"
|
|
16693
|
+
],
|
|
16694
|
+
"description": "Issue state"
|
|
16695
|
+
},
|
|
16696
|
+
"title": {
|
|
16697
|
+
"type": "string",
|
|
16698
|
+
"description": "Issue title"
|
|
16699
|
+
},
|
|
16700
|
+
"body": {
|
|
16701
|
+
"type": "string",
|
|
16702
|
+
"nullable": true,
|
|
16703
|
+
"description": "Issue description"
|
|
16704
|
+
},
|
|
16705
|
+
"user": {
|
|
16706
|
+
"type": "object",
|
|
16707
|
+
"properties": {
|
|
16708
|
+
"login": {
|
|
16709
|
+
"type": "string",
|
|
16710
|
+
"description": "Issue creator username"
|
|
16711
|
+
},
|
|
16712
|
+
"id": {
|
|
16713
|
+
"type": "number",
|
|
16714
|
+
"description": "Issue creator ID"
|
|
16715
|
+
}
|
|
16716
|
+
},
|
|
16717
|
+
"required": [
|
|
16718
|
+
"login",
|
|
16719
|
+
"id"
|
|
16720
|
+
],
|
|
16721
|
+
"additionalProperties": false,
|
|
16722
|
+
"description": "Issue creator information"
|
|
16723
|
+
},
|
|
16724
|
+
"labels": {
|
|
16725
|
+
"type": "array",
|
|
16726
|
+
"items": {
|
|
16727
|
+
"type": "object",
|
|
16728
|
+
"properties": {
|
|
16729
|
+
"id": {
|
|
16730
|
+
"type": "number",
|
|
16731
|
+
"description": "Label ID"
|
|
16732
|
+
},
|
|
16733
|
+
"name": {
|
|
16734
|
+
"type": "string",
|
|
16735
|
+
"description": "Label name"
|
|
16736
|
+
},
|
|
16737
|
+
"color": {
|
|
16738
|
+
"type": "string",
|
|
16739
|
+
"description": "Label color (hex)"
|
|
16740
|
+
},
|
|
16741
|
+
"description": {
|
|
16742
|
+
"type": "string",
|
|
16743
|
+
"nullable": true,
|
|
16744
|
+
"description": "Label description"
|
|
16745
|
+
}
|
|
16746
|
+
},
|
|
16747
|
+
"required": [
|
|
16748
|
+
"id",
|
|
16749
|
+
"name",
|
|
16750
|
+
"color",
|
|
16751
|
+
"description"
|
|
16752
|
+
],
|
|
16753
|
+
"additionalProperties": false
|
|
16754
|
+
},
|
|
16755
|
+
"description": "Issue labels"
|
|
16756
|
+
},
|
|
16757
|
+
"created_at": {
|
|
16758
|
+
"type": "string",
|
|
16759
|
+
"description": "ISO datetime when issue was created"
|
|
16760
|
+
},
|
|
16761
|
+
"updated_at": {
|
|
16762
|
+
"type": "string",
|
|
16763
|
+
"description": "ISO datetime when issue was last updated"
|
|
16764
|
+
},
|
|
16765
|
+
"closed_at": {
|
|
16766
|
+
"type": "string",
|
|
16767
|
+
"nullable": true,
|
|
16768
|
+
"description": "ISO datetime when issue was closed"
|
|
16769
|
+
},
|
|
16770
|
+
"html_url": {
|
|
16771
|
+
"type": "string",
|
|
16772
|
+
"description": "Web URL to view the issue"
|
|
16773
|
+
},
|
|
16774
|
+
"comments": {
|
|
16775
|
+
"type": "number",
|
|
16776
|
+
"description": "Number of comments"
|
|
16777
|
+
}
|
|
16778
|
+
},
|
|
16779
|
+
"required": [
|
|
16780
|
+
"operation",
|
|
16781
|
+
"success",
|
|
16782
|
+
"error"
|
|
16783
|
+
],
|
|
16784
|
+
"additionalProperties": false
|
|
16785
|
+
},
|
|
16600
16786
|
{
|
|
16601
16787
|
"type": "object",
|
|
16602
16788
|
"properties": {
|
|
@@ -16751,7 +16937,7 @@
|
|
|
16751
16937
|
}
|
|
16752
16938
|
]
|
|
16753
16939
|
},
|
|
16754
|
-
"usageExample": "// Get File example\nconst github_get_file = new GithubBubble({\n operation: \"get_file\", // Get the contents of a file from a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n path: \"example string\", // Path to the file in the repository (e.g., src/index.ts)\n ref: \"example string\", // Git reference (branch, tag, or commit SHA). Defaults to the default branch\n});\n\nconst result = await github_get_file.action();\n// outputSchema for result.data when operation === 'get_file':\n// {\n// operation: \"get_file\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// name: string | undefined // File name,\n// path: string | undefined // Full path to the file in the repository,\n// sha: string | undefined // Git SHA hash of the file,\n// size: number | undefined // File size in bytes,\n// url: string | undefined // API URL for this file,\n// html_url: string | undefined // Web URL to view the file on GitHub,\n// git_url: string | undefined // Git URL for the file object,\n// download_url: string | null | undefined // Direct download URL for the file,\n// type: \"file\" | \"dir\" | \"symlink\" | \"submodule\" | undefined // Type of the content,\n// content: string | undefined | undefined // Base64 encoded content (for files),\n// encoding: string | undefined | undefined // Encoding type (usually base64)\n// }\n\n\n// Get Directory example\nconst github_get_directory = new GithubBubble({\n operation: \"get_directory\", // Get the contents of a directory from a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n path: \"\" // default, // Path to the directory in the repository (empty string for root)\n ref: \"example string\", // Git reference (branch, tag, or commit SHA). Defaults to the default branch\n});\n\nconst result = await github_get_directory.action();\n// outputSchema for result.data when operation === 'get_directory':\n// {\n// operation: \"get_directory\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// contents: { name: string // File name, path: string // Full path to the file in the repository, sha: string // Git SHA hash of the file, size: number // File size in bytes, url: string // API URL for this file, html_url: string // Web URL to view the file on GitHub, git_url: string // Git URL for the file object, download_url: string | null // Direct download URL for the file, type: \"file\" | \"dir\" | \"symlink\" | \"submodule\" // Type of the content, content: string | undefined // Base64 encoded content (for files), encoding: string | undefined // Encoding type (usually base64) }[] | undefined // Array of directory contents\n// }\n\n\n// List Pull Requests example\nconst github_list_pull_requests = new GithubBubble({\n operation: \"list_pull_requests\", // List pull requests in a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n state: \"open\" // options: \"open\", \"closed\", \"all\", // Filter by PR state\n sort: \"created\" // options: \"created\", \"updated\", \"popularity\", \"long-running\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_pull_requests.action();\n// outputSchema for result.data when operation === 'list_pull_requests':\n// {\n// operation: \"list_pull_requests\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// pull_requests: { id: number // Pull request ID, node_id: string // GraphQL node ID, number: number // Pull request number, state: \"open\" | \"closed\" // Pull request state, title: string // Pull request title, body: string | null // Pull request description, created_at: string // ISO datetime when PR was created, updated_at: string // ISO datetime when PR was last updated, closed_at: string | null // ISO datetime when PR was closed, merged_at: string | null // ISO datetime when PR was merged, user: { login: string // Author username, id: number // Author ID, avatar_url: string // Author avatar URL } // Pull request author, html_url: string // Web URL to view the PR, draft: boolean // Whether this is a draft PR, head: { ref: string // Source branch name, sha: string // Source commit SHA } // Source branch information, base: { ref: string // Target branch name, sha: string // Target commit SHA } // Target branch information, merged: boolean | undefined // Whether the PR has been merged (may not be present in list responses), mergeable: boolean | null | undefined // Whether the PR can be merged (may not be present in list responses), mergeable_state: string | undefined // Mergeable state (clean, unstable, dirty, etc.), comments: number | undefined // Number of comments, review_comments: number | undefined // Number of review comments, commits: number | undefined // Number of commits, additions: number | undefined // Lines added, deletions: number | undefined // Lines deleted, changed_files: number | undefined // Number of files changed }[] | undefined // Array of pull requests\n// }\n\n\n// Get Pull Request example\nconst github_get_pull_request = new GithubBubble({\n operation: \"get_pull_request\", // Get detailed information about a specific pull request\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n pull_number: 42, // Pull request number\n});\n\nconst result = await github_get_pull_request.action();\n// outputSchema for result.data when operation === 'get_pull_request':\n// {\n// operation: \"get_pull_request\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Pull request ID,\n// node_id: string | undefined // GraphQL node ID,\n// number: number | undefined // Pull request number,\n// state: \"open\" | \"closed\" | undefined // Pull request state,\n// title: string | undefined // Pull request title,\n// body: string | null | undefined // Pull request description,\n// created_at: string | undefined // ISO datetime when PR was created,\n// updated_at: string | undefined // ISO datetime when PR was last updated,\n// closed_at: string | null | undefined // ISO datetime when PR was closed,\n// merged_at: string | null | undefined // ISO datetime when PR was merged,\n// user: { login: string // Author username, id: number // Author ID, avatar_url: string // Author avatar URL } | undefined // Pull request author,\n// html_url: string | undefined // Web URL to view the PR,\n// draft: boolean | undefined // Whether this is a draft PR,\n// head: { ref: string // Source branch name, sha: string // Source commit SHA } | undefined // Source branch information,\n// base: { ref: string // Target branch name, sha: string // Target commit SHA } | undefined // Target branch information,\n// merged: boolean | undefined | undefined // Whether the PR has been merged (may not be present in list responses),\n// mergeable: boolean | null | undefined | undefined // Whether the PR can be merged (may not be present in list responses),\n// mergeable_state: string | undefined | undefined // Mergeable state (clean, unstable, dirty, etc.),\n// comments: number | undefined | undefined // Number of comments,\n// review_comments: number | undefined | undefined // Number of review comments,\n// commits: number | undefined | undefined // Number of commits,\n// additions: number | undefined | undefined // Lines added,\n// deletions: number | undefined | undefined // Lines deleted,\n// changed_files: number | undefined | undefined // Number of files changed\n// }\n\n\n// Create Pr Comment example\nconst github_create_pr_comment = new GithubBubble({\n operation: \"create_pr_comment\", // Add a comment to a pull request\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n pull_number: 42, // Pull request number\n body: \"example string\", // Comment text content (supports GitHub Markdown)\n});\n\nconst result = await github_create_pr_comment.action();\n// outputSchema for result.data when operation === 'create_pr_comment':\n// {\n// operation: \"create_pr_comment\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Comment ID,\n// node_id: string | undefined // GraphQL node ID,\n// body: string | undefined // Comment text content,\n// user: { login: string // Comment author username, id: number // Comment author ID } | undefined // Comment author information,\n// created_at: string | undefined // ISO datetime when comment was created,\n// updated_at: string | undefined // ISO datetime when comment was last updated,\n// html_url: string | undefined // Web URL to view the comment\n// }\n\n\n// List Repositories example\nconst github_list_repositories = new GithubBubble({\n operation: \"list_repositories\", // List repositories for the authenticated user\n visibility: \"all\" // options: \"all\", \"public\", \"private\", // Filter by repository visibility\n sort: \"created\" // options: \"created\", \"updated\", \"pushed\", \"full_name\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_repositories.action();\n// outputSchema for result.data when operation === 'list_repositories':\n// {\n// operation: \"list_repositories\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// repositories: { id: number // Repository ID, node_id: string // GraphQL node ID, name: string // Repository name, full_name: string // Full repository name (owner/repo), private: boolean // Whether the repository is private, owner: { login: string // Owner username, id: number // Owner ID, avatar_url: string // Owner avatar URL, html_url: string // Owner profile URL } // Repository owner information, html_url: string // Repository web URL, description: string | null // Repository description, fork: boolean // Whether this is a fork, created_at: string // ISO datetime when repository was created, updated_at: string // ISO datetime when repository was last updated, pushed_at: string // ISO datetime of last push, size: number // Repository size in KB, stargazers_count: number // Number of stars, watchers_count: number // Number of watchers, language: string | null // Primary programming language, forks_count: number // Number of forks, open_issues_count: number // Number of open issues, default_branch: string // Default branch name, visibility: string | undefined // Repository visibility (public, private, internal) }[] | undefined // Array of repositories\n// }\n\n\n// Get Repository example\nconst github_get_repository = new GithubBubble({\n operation: \"get_repository\", // Get detailed information about a specific repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n});\n\nconst result = await github_get_repository.action();\n// outputSchema for result.data when operation === 'get_repository':\n// {\n// operation: \"get_repository\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Repository ID,\n// node_id: string | undefined // GraphQL node ID,\n// name: string | undefined // Repository name,\n// full_name: string | undefined // Full repository name (owner/repo),\n// private: boolean | undefined // Whether the repository is private,\n// owner: { login: string // Owner username, id: number // Owner ID, avatar_url: string // Owner avatar URL, html_url: string // Owner profile URL } | undefined // Repository owner information,\n// html_url: string | undefined // Repository web URL,\n// description: string | null | undefined // Repository description,\n// fork: boolean | undefined // Whether this is a fork,\n// created_at: string | undefined // ISO datetime when repository was created,\n// updated_at: string | undefined // ISO datetime when repository was last updated,\n// pushed_at: string | undefined // ISO datetime of last push,\n// size: number | undefined // Repository size in KB,\n// stargazers_count: number | undefined // Number of stars,\n// watchers_count: number | undefined // Number of watchers,\n// language: string | null | undefined // Primary programming language,\n// forks_count: number | undefined // Number of forks,\n// open_issues_count: number | undefined // Number of open issues,\n// default_branch: string | undefined // Default branch name,\n// visibility: string | undefined | undefined // Repository visibility (public, private, internal)\n// }\n\n\n// Create Issue Comment example\nconst github_create_issue_comment = new GithubBubble({\n operation: \"create_issue_comment\", // Add a comment to an issue\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n issue_number: 42, // Issue number\n body: \"example string\", // Comment text content (supports GitHub Markdown)\n});\n\nconst result = await github_create_issue_comment.action();\n// outputSchema for result.data when operation === 'create_issue_comment':\n// {\n// operation: \"create_issue_comment\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Comment ID,\n// node_id: string | undefined // GraphQL node ID,\n// body: string | undefined // Comment text content,\n// user: { login: string // Comment author username, id: number // Comment author ID } | undefined // Comment author information,\n// created_at: string | undefined // ISO datetime when comment was created,\n// updated_at: string | undefined // ISO datetime when comment was last updated,\n// html_url: string | undefined // Web URL to view the comment\n// }\n\n\n// List Issues example\nconst github_list_issues = new GithubBubble({\n operation: \"list_issues\", // List issues in a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n state: \"open\" // options: \"open\", \"closed\", \"all\", // Filter by issue state\n labels: \"example string\", // Filter by labels (comma-separated list)\n sort: \"created\" // options: \"created\", \"updated\", \"comments\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_issues.action();\n// outputSchema for result.data when operation === 'list_issues':\n// {\n// operation: \"list_issues\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// issues: { id: number // Issue ID, node_id: string // GraphQL node ID, number: number // Issue number, state: \"open\" | \"closed\" // Issue state, title: string // Issue title, body: string | null // Issue description, user: { login: string // Issue creator username, id: number // Issue creator ID } // Issue creator information, labels: { id: number // Label ID, name: string // Label name, color: string // Label color (hex), description: string | null // Label description }[] // Issue labels, created_at: string // ISO datetime when issue was created, updated_at: string // ISO datetime when issue was last updated, closed_at: string | null // ISO datetime when issue was closed, html_url: string // Web URL to view the issue, comments: number // Number of comments }[] | undefined // Array of issues\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`github failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
16940
|
+
"usageExample": "// Get File example\nconst github_get_file = new GithubBubble({\n operation: \"get_file\", // Get the contents of a file from a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n path: \"example string\", // Path to the file in the repository (e.g., src/index.ts)\n ref: \"example string\", // Git reference (branch, tag, or commit SHA). Defaults to the default branch\n});\n\nconst result = await github_get_file.action();\n// outputSchema for result.data when operation === 'get_file':\n// {\n// operation: \"get_file\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// name: string | undefined // File name,\n// path: string | undefined // Full path to the file in the repository,\n// sha: string | undefined // Git SHA hash of the file,\n// size: number | undefined // File size in bytes,\n// url: string | undefined // API URL for this file,\n// html_url: string | undefined // Web URL to view the file on GitHub,\n// git_url: string | undefined // Git URL for the file object,\n// download_url: string | null | undefined // Direct download URL for the file,\n// type: \"file\" | \"dir\" | \"symlink\" | \"submodule\" | undefined // Type of the content,\n// content: string | undefined | undefined // Base64 encoded content (for files),\n// encoding: string | undefined | undefined // Encoding type (usually base64)\n// }\n\n\n// Get Directory example\nconst github_get_directory = new GithubBubble({\n operation: \"get_directory\", // Get the contents of a directory from a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n path: \"\" // default, // Path to the directory in the repository (empty string for root)\n ref: \"example string\", // Git reference (branch, tag, or commit SHA). Defaults to the default branch\n});\n\nconst result = await github_get_directory.action();\n// outputSchema for result.data when operation === 'get_directory':\n// {\n// operation: \"get_directory\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// contents: { name: string // File name, path: string // Full path to the file in the repository, sha: string // Git SHA hash of the file, size: number // File size in bytes, url: string // API URL for this file, html_url: string // Web URL to view the file on GitHub, git_url: string // Git URL for the file object, download_url: string | null // Direct download URL for the file, type: \"file\" | \"dir\" | \"symlink\" | \"submodule\" // Type of the content, content: string | undefined // Base64 encoded content (for files), encoding: string | undefined // Encoding type (usually base64) }[] | undefined // Array of directory contents\n// }\n\n\n// List Pull Requests example\nconst github_list_pull_requests = new GithubBubble({\n operation: \"list_pull_requests\", // List pull requests in a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n state: \"open\" // options: \"open\", \"closed\", \"all\", // Filter by PR state\n sort: \"created\" // options: \"created\", \"updated\", \"popularity\", \"long-running\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_pull_requests.action();\n// outputSchema for result.data when operation === 'list_pull_requests':\n// {\n// operation: \"list_pull_requests\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// pull_requests: { id: number // Pull request ID, node_id: string // GraphQL node ID, number: number // Pull request number, state: \"open\" | \"closed\" // Pull request state, title: string // Pull request title, body: string | null // Pull request description, created_at: string // ISO datetime when PR was created, updated_at: string // ISO datetime when PR was last updated, closed_at: string | null // ISO datetime when PR was closed, merged_at: string | null // ISO datetime when PR was merged, user: { login: string // Author username, id: number // Author ID, avatar_url: string // Author avatar URL } // Pull request author, html_url: string // Web URL to view the PR, draft: boolean // Whether this is a draft PR, head: { ref: string // Source branch name, sha: string // Source commit SHA } // Source branch information, base: { ref: string // Target branch name, sha: string // Target commit SHA } // Target branch information, merged: boolean | undefined // Whether the PR has been merged (may not be present in list responses), mergeable: boolean | null | undefined // Whether the PR can be merged (may not be present in list responses), mergeable_state: string | undefined // Mergeable state (clean, unstable, dirty, etc.), comments: number | undefined // Number of comments, review_comments: number | undefined // Number of review comments, commits: number | undefined // Number of commits, additions: number | undefined // Lines added, deletions: number | undefined // Lines deleted, changed_files: number | undefined // Number of files changed }[] | undefined // Array of pull requests\n// }\n\n\n// Get Pull Request example\nconst github_get_pull_request = new GithubBubble({\n operation: \"get_pull_request\", // Get detailed information about a specific pull request\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n pull_number: 42, // Pull request number\n});\n\nconst result = await github_get_pull_request.action();\n// outputSchema for result.data when operation === 'get_pull_request':\n// {\n// operation: \"get_pull_request\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Pull request ID,\n// node_id: string | undefined // GraphQL node ID,\n// number: number | undefined // Pull request number,\n// state: \"open\" | \"closed\" | undefined // Pull request state,\n// title: string | undefined // Pull request title,\n// body: string | null | undefined // Pull request description,\n// created_at: string | undefined // ISO datetime when PR was created,\n// updated_at: string | undefined // ISO datetime when PR was last updated,\n// closed_at: string | null | undefined // ISO datetime when PR was closed,\n// merged_at: string | null | undefined // ISO datetime when PR was merged,\n// user: { login: string // Author username, id: number // Author ID, avatar_url: string // Author avatar URL } | undefined // Pull request author,\n// html_url: string | undefined // Web URL to view the PR,\n// draft: boolean | undefined // Whether this is a draft PR,\n// head: { ref: string // Source branch name, sha: string // Source commit SHA } | undefined // Source branch information,\n// base: { ref: string // Target branch name, sha: string // Target commit SHA } | undefined // Target branch information,\n// merged: boolean | undefined | undefined // Whether the PR has been merged (may not be present in list responses),\n// mergeable: boolean | null | undefined | undefined // Whether the PR can be merged (may not be present in list responses),\n// mergeable_state: string | undefined | undefined // Mergeable state (clean, unstable, dirty, etc.),\n// comments: number | undefined | undefined // Number of comments,\n// review_comments: number | undefined | undefined // Number of review comments,\n// commits: number | undefined | undefined // Number of commits,\n// additions: number | undefined | undefined // Lines added,\n// deletions: number | undefined | undefined // Lines deleted,\n// changed_files: number | undefined | undefined // Number of files changed\n// }\n\n\n// Create Pr Comment example\nconst github_create_pr_comment = new GithubBubble({\n operation: \"create_pr_comment\", // Add a comment to a pull request\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n pull_number: 42, // Pull request number\n body: \"example string\", // Comment text content (supports GitHub Markdown)\n});\n\nconst result = await github_create_pr_comment.action();\n// outputSchema for result.data when operation === 'create_pr_comment':\n// {\n// operation: \"create_pr_comment\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Comment ID,\n// node_id: string | undefined // GraphQL node ID,\n// body: string | undefined // Comment text content,\n// user: { login: string // Comment author username, id: number // Comment author ID } | undefined // Comment author information,\n// created_at: string | undefined // ISO datetime when comment was created,\n// updated_at: string | undefined // ISO datetime when comment was last updated,\n// html_url: string | undefined // Web URL to view the comment\n// }\n\n\n// List Repositories example\nconst github_list_repositories = new GithubBubble({\n operation: \"list_repositories\", // List repositories for the authenticated user\n visibility: \"all\" // options: \"all\", \"public\", \"private\", // Filter by repository visibility\n sort: \"created\" // options: \"created\", \"updated\", \"pushed\", \"full_name\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_repositories.action();\n// outputSchema for result.data when operation === 'list_repositories':\n// {\n// operation: \"list_repositories\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// repositories: { id: number // Repository ID, node_id: string // GraphQL node ID, name: string // Repository name, full_name: string // Full repository name (owner/repo), private: boolean // Whether the repository is private, owner: { login: string // Owner username, id: number // Owner ID, avatar_url: string // Owner avatar URL, html_url: string // Owner profile URL } // Repository owner information, html_url: string // Repository web URL, description: string | null // Repository description, fork: boolean // Whether this is a fork, created_at: string // ISO datetime when repository was created, updated_at: string // ISO datetime when repository was last updated, pushed_at: string // ISO datetime of last push, size: number // Repository size in KB, stargazers_count: number // Number of stars, watchers_count: number // Number of watchers, language: string | null // Primary programming language, forks_count: number // Number of forks, open_issues_count: number // Number of open issues, default_branch: string // Default branch name, visibility: string | undefined // Repository visibility (public, private, internal) }[] | undefined // Array of repositories\n// }\n\n\n// Get Repository example\nconst github_get_repository = new GithubBubble({\n operation: \"get_repository\", // Get detailed information about a specific repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n});\n\nconst result = await github_get_repository.action();\n// outputSchema for result.data when operation === 'get_repository':\n// {\n// operation: \"get_repository\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Repository ID,\n// node_id: string | undefined // GraphQL node ID,\n// name: string | undefined // Repository name,\n// full_name: string | undefined // Full repository name (owner/repo),\n// private: boolean | undefined // Whether the repository is private,\n// owner: { login: string // Owner username, id: number // Owner ID, avatar_url: string // Owner avatar URL, html_url: string // Owner profile URL } | undefined // Repository owner information,\n// html_url: string | undefined // Repository web URL,\n// description: string | null | undefined // Repository description,\n// fork: boolean | undefined // Whether this is a fork,\n// created_at: string | undefined // ISO datetime when repository was created,\n// updated_at: string | undefined // ISO datetime when repository was last updated,\n// pushed_at: string | undefined // ISO datetime of last push,\n// size: number | undefined // Repository size in KB,\n// stargazers_count: number | undefined // Number of stars,\n// watchers_count: number | undefined // Number of watchers,\n// language: string | null | undefined // Primary programming language,\n// forks_count: number | undefined // Number of forks,\n// open_issues_count: number | undefined // Number of open issues,\n// default_branch: string | undefined // Default branch name,\n// visibility: string | undefined | undefined // Repository visibility (public, private, internal)\n// }\n\n\n// Create Issue Comment example\nconst github_create_issue_comment = new GithubBubble({\n operation: \"create_issue_comment\", // Add a comment to an issue\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n issue_number: 42, // Issue number\n body: \"example string\", // Comment text content (supports GitHub Markdown)\n});\n\nconst result = await github_create_issue_comment.action();\n// outputSchema for result.data when operation === 'create_issue_comment':\n// {\n// operation: \"create_issue_comment\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Comment ID,\n// node_id: string | undefined // GraphQL node ID,\n// body: string | undefined // Comment text content,\n// user: { login: string // Comment author username, id: number // Comment author ID } | undefined // Comment author information,\n// created_at: string | undefined // ISO datetime when comment was created,\n// updated_at: string | undefined // ISO datetime when comment was last updated,\n// html_url: string | undefined // Web URL to view the comment\n// }\n\n\n// Create Issue example\nconst github_create_issue = new GithubBubble({\n operation: \"create_issue\", // Create a new issue in a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n title: \"example string\", // Issue title\n body: \"example string\", // Issue body content (supports GitHub Markdown)\n labels: [\"example string\"], // Array of label names to add to the issue\n assignees: [\"example string\"], // Array of usernames to assign to the issue\n});\n\nconst result = await github_create_issue.action();\n// outputSchema for result.data when operation === 'create_issue':\n// {\n// operation: \"create_issue\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// id: number | undefined // Issue ID,\n// node_id: string | undefined // GraphQL node ID,\n// number: number | undefined // Issue number,\n// state: \"open\" | \"closed\" | undefined // Issue state,\n// title: string | undefined // Issue title,\n// body: string | null | undefined // Issue description,\n// user: { login: string // Issue creator username, id: number // Issue creator ID } | undefined // Issue creator information,\n// labels: { id: number // Label ID, name: string // Label name, color: string // Label color (hex), description: string | null // Label description }[] | undefined // Issue labels,\n// created_at: string | undefined // ISO datetime when issue was created,\n// updated_at: string | undefined // ISO datetime when issue was last updated,\n// closed_at: string | null | undefined // ISO datetime when issue was closed,\n// html_url: string | undefined // Web URL to view the issue,\n// comments: number | undefined // Number of comments\n// }\n\n\n// List Issues example\nconst github_list_issues = new GithubBubble({\n operation: \"list_issues\", // List issues in a GitHub repository\n owner: \"example string\", // Repository owner (username or organization name)\n repo: \"example string\", // Repository name\n state: \"open\" // options: \"open\", \"closed\", \"all\", // Filter by issue state\n labels: \"example string\", // Filter by labels (comma-separated list)\n sort: \"created\" // options: \"created\", \"updated\", \"comments\", // Sort order for results\n direction: \"asc\" // options: \"asc\", \"desc\", // Sort direction\n per_page: 30 // default, // Number of results per page (1-100)\n page: 1 // default, // Page number for pagination\n});\n\nconst result = await github_list_issues.action();\n// outputSchema for result.data when operation === 'list_issues':\n// {\n// operation: \"list_issues\",\n// success: boolean // Whether the operation succeeded,\n// error: string // Error message if operation failed,\n// issues: { id: number // Issue ID, node_id: string // GraphQL node ID, number: number // Issue number, state: \"open\" | \"closed\" // Issue state, title: string // Issue title, body: string | null // Issue description, user: { login: string // Issue creator username, id: number // Issue creator ID } // Issue creator information, labels: { id: number // Label ID, name: string // Label name, color: string // Label color (hex), description: string | null // Label description }[] // Issue labels, created_at: string // ISO datetime when issue was created, updated_at: string // ISO datetime when issue was last updated, closed_at: string | null // ISO datetime when issue was closed, html_url: string // Web URL to view the issue, comments: number // Number of comments }[] | undefined // Array of issues\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`github failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
16755
16941
|
"requiredCredentials": [
|
|
16756
16942
|
"GITHUB_TOKEN"
|
|
16757
16943
|
]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bubblelab/bubble-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.189",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"puppeteer-core": "^24.10.0",
|
|
42
42
|
"resend": "^4.8.0",
|
|
43
43
|
"zod": "^3.24.1",
|
|
44
|
-
"@bubblelab/shared-schemas": "0.1.
|
|
44
|
+
"@bubblelab/shared-schemas": "0.1.189"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@types/node": "^20.12.12",
|