@mindstudio-ai/agent 0.0.18 → 0.0.19
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/cli.js +16 -52
- package/dist/index.d.ts +8 -161
- package/dist/index.js +8 -43
- package/dist/index.js.map +1 -1
- package/llms.txt +5 -37
- package/package.json +9 -1
package/dist/cli.js
CHANGED
|
@@ -201,27 +201,6 @@ var init_metadata = __esm({
|
|
|
201
201
|
inputSchema: { "type": "object", "properties": { "input": { "type": "string", "description": "Text to scan for personally identifiable information" }, "language": { "type": "string", "description": 'Language code of the input text (e.g. "en")' }, "entities": { "type": "array", "items": { "type": "string" }, "description": 'PII entity types to scan for (e.g. ["PHONE_NUMBER", "EMAIL_ADDRESS"]). Empty array means nothing is scanned.' }, "detectedStepId": { "type": "string", "description": "Step to transition to if PII is detected (workflow mode)" }, "notDetectedStepId": { "type": "string", "description": "Step to transition to if no PII is detected (workflow mode)" }, "outputLogVariable": { "type": "string", "description": "Variable name to store the raw detection results" } }, "required": ["input", "language", "entities"] },
|
|
202
202
|
outputSchema: { "type": "object", "properties": { "detected": { "type": "boolean", "description": "Whether any PII was found in the input text" }, "detections": { "type": "array", "items": { "type": "object", "properties": { "entity_type": { "type": "string", "description": 'PII entity type (e.g. "PHONE_NUMBER", "EMAIL_ADDRESS", "PERSON")' }, "start": { "type": "number", "description": "Start character index in the input text" }, "end": { "type": "number", "description": "End character index in the input text" }, "score": { "type": "number", "description": "Confidence score between 0 and 1" } }, "required": ["entity_type", "start", "end", "score"] }, "description": "List of detected PII entities with type, location, and confidence" } }, "required": ["detected", "detections"] }
|
|
203
203
|
},
|
|
204
|
-
"discordEditMessage": {
|
|
205
|
-
stepType: "discordEditMessage",
|
|
206
|
-
description: "Edit a previously sent Discord channel message. Use with the message ID returned by Send Discord Message.",
|
|
207
|
-
usageNotes: "- Only messages sent by the bot can be edited.\n- The messageId is returned by the Send Discord Message step.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- When editing with an attachment, the new attachment replaces any previous attachments on the message.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).",
|
|
208
|
-
inputSchema: { "type": "object", "properties": { "botToken": { "type": "string", "description": "Discord bot token for authentication" }, "channelId": { "type": "string", "description": "Discord channel ID containing the message" }, "messageId": { "type": "string", "description": "ID of the message to edit (returned by Send Discord Message)" }, "text": { "type": "string", "description": "New message text to replace the existing content" }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message (replaces any previous attachments)" } }, "required": ["botToken", "channelId", "messageId", "text"] },
|
|
209
|
-
outputSchema: { "description": "This step does not produce output data." }
|
|
210
|
-
},
|
|
211
|
-
"discordSendFollowUp": {
|
|
212
|
-
stepType: "discordSendFollowUp",
|
|
213
|
-
description: "Send a follow-up message to a Discord slash command interaction.",
|
|
214
|
-
usageNotes: "- Requires the applicationId and interactionToken from the Discord trigger variables.\n- Follow-up messages appear as new messages in the channel after the initial response.\n- Returns the sent message ID.\n- Interaction tokens expire after 15 minutes.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).",
|
|
215
|
-
inputSchema: { "type": "object", "properties": { "applicationId": { "type": "string", "description": "Discord application ID from the bot registration" }, "interactionToken": { "type": "string", "description": "Interaction token provided by the Discord trigger \u2014 expires after 15 minutes" }, "text": { "type": "string", "description": "Message text to send as a follow-up" }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message" } }, "required": ["applicationId", "interactionToken", "text"] },
|
|
216
|
-
outputSchema: { "type": "object", "properties": { "messageId": { "type": "string", "description": "ID of the sent follow-up message" } }, "required": ["messageId"] }
|
|
217
|
-
},
|
|
218
|
-
"discordSendMessage": {
|
|
219
|
-
stepType: "discordSendMessage",
|
|
220
|
-
description: "Send a message to Discord \u2014 either edit the loading message or send a new channel message.",
|
|
221
|
-
usageNotes: '- mode "edit" replaces the loading message (interaction response) with the final result. Uses applicationId and interactionToken from trigger variables. No bot permissions required.\n- mode "send" sends a new message to a channel. Uses botToken and channelId from trigger variables. Returns a messageId that can be used with Edit Discord Message.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).\n- Interaction tokens expire after 15 minutes.',
|
|
222
|
-
inputSchema: { "type": "object", "properties": { "mode": { "enum": ["edit", "send"], "type": "string", "description": '"edit" replaces the loading message, "send" sends a new channel message' }, "text": { "type": "string", "description": "Message text to send" }, "applicationId": { "type": "string", "description": 'Discord application ID from the bot registration (required for "reply" mode)' }, "interactionToken": { "type": "string", "description": 'Interaction token provided by the Discord trigger \u2014 expires after 15 minutes (required for "reply" mode)' }, "botToken": { "type": "string", "description": 'Discord bot token for authentication (required for "send" mode)' }, "channelId": { "type": "string", "description": 'Discord channel ID to send the message to (required for "send" mode)' }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message" } }, "required": ["mode", "text"] },
|
|
223
|
-
outputSchema: { "type": "object", "properties": { "messageId": { "type": "string", "description": 'ID of the sent Discord message, only present in "send" mode (use with Edit Discord Message)' } } }
|
|
224
|
-
},
|
|
225
204
|
"downloadVideo": {
|
|
226
205
|
stepType: "downloadVideo",
|
|
227
206
|
description: "Download a video file",
|
|
@@ -549,13 +528,9 @@ var init_metadata = __esm({
|
|
|
549
528
|
},
|
|
550
529
|
"logic": {
|
|
551
530
|
stepType: "logic",
|
|
552
|
-
description: "
|
|
553
|
-
usageNotes:
|
|
554
|
-
|
|
555
|
-
- In comparison mode, the context is the left operand and each case's condition is the right operand. First matching case wins. Use operator "default" as a fallback.
|
|
556
|
-
- Requires at least two cases.
|
|
557
|
-
- Each case can transition to a step in the current workflow (destinationStepId) or jump to another workflow (destinationWorkflowId).`,
|
|
558
|
-
inputSchema: { "type": "object", "properties": { "mode": { "enum": ["ai", "comparison"], "type": "string", "description": "Evaluation mode: 'ai' for LLM-based, 'comparison' for operator-based. Default: 'ai'" }, "context": { "type": "string", "description": "AI mode: prompt context. Comparison mode: left operand (resolved via variables)." }, "cases": { "type": "array", "items": { "anyOf": [{ "type": "object", "properties": { "id": { "type": "string", "description": "Unique case identifier" }, "condition": { "type": "string", "description": "AI mode: statement to evaluate. Comparison mode: right operand value." }, "operator": { "enum": ["eq", "neq", "gt", "lt", "gte", "lte", "exists", "not_exists", "contains", "not_contains", "default"], "type": "string", "description": "Comparison operator (comparison mode only)" }, "destinationStepId": { "type": "string", "description": "Step to transition to if this case wins (workflow mode only)" }, "destinationWorkflowId": { "type": "string", "description": "Workflow to jump to if this case wins (uses that workflow's initial step)" } }, "required": ["id", "condition"] }, { "type": "string" }] }, "description": "List of conditions to evaluate (objects for managed UIs, strings for code)" }, "modelOverride": { "type": "object", "properties": { "model": { "type": "string", "description": 'Model identifier (e.g. "gpt-4", "claude-3-opus")' }, "temperature": { "type": "number", "description": "Sampling temperature for the model (0-2)" }, "maxResponseTokens": { "type": "number", "description": "Maximum number of tokens in the model's response" }, "ignorePreamble": { "type": "boolean", "description": "Whether to skip the system preamble/instructions" }, "userMessagePreprocessor": { "type": "object", "properties": { "dataSource": { "type": "string", "description": "Data source identifier for the preprocessor" }, "messageTemplate": { "type": "string", "description": "Template string applied to user messages before sending to the model" }, "maxResults": { "type": "number", "description": "Maximum number of results to include from the data source" }, "enabled": { "type": "boolean", "description": "Whether the preprocessor is active" }, "shouldInherit": { "type": "boolean", "description": "Whether child steps should inherit this preprocessor configuration" } }, "description": "Preprocessor applied to user messages before sending to the model" }, "preamble": { "type": "string", "description": "System preamble/instructions for the model" }, "multiModelEnabled": { "type": "boolean", "description": "Whether multi-model candidate generation is enabled" }, "editResponseEnabled": { "type": "boolean", "description": "Whether the user can edit the model's response" }, "config": { "type": "object", "description": "Additional model-specific configuration" } }, "required": ["model", "temperature", "maxResponseTokens"], "description": "Optional model settings override; uses the organization default if not specified (AI mode only)" } }, "required": ["context", "cases"], "description": "Configuration for the router step" },
|
|
531
|
+
description: "Use an AI model to evaluate which condition from a list is most true, given a context prompt.",
|
|
532
|
+
usageNotes: '- This is "fuzzy" logic evaluated by an AI model, not computational logic. The model picks the most accurate statement.\n- All possible cases must be specified \u2014 there is no default/fallback case.\n- Requires at least two cases.\n- In workflow mode, transitions to the destinationStepId of the winning case. In direct execution, returns the winning case ID and condition.',
|
|
533
|
+
inputSchema: { "type": "object", "properties": { "context": { "type": "string", "description": "Prompt text providing context for the AI evaluation" }, "cases": { "type": "array", "items": { "anyOf": [{ "type": "object", "properties": { "id": { "type": "string", "description": "Unique case identifier" }, "condition": { "type": "string", "description": 'The statement to evaluate (e.g., "User selected a dog")' }, "destinationStepId": { "type": "string", "description": "Step to transition to if this case wins (workflow mode only)" } }, "required": ["id", "condition"] }, { "type": "string" }] }, "description": "List of conditions to evaluate (objects for managed UIs, strings for code)" } }, "required": ["context", "cases"], "description": "Configuration for the logic evaluation step" },
|
|
559
534
|
outputSchema: { "type": "object", "properties": { "selectedCase": { "type": "number", "description": "The index of the winning case" } }, "required": ["selectedCase"] }
|
|
560
535
|
},
|
|
561
536
|
"makeDotComRunScenario": {
|
|
@@ -1209,34 +1184,32 @@ __export(config_exports, {
|
|
|
1209
1184
|
import { readFileSync, writeFileSync, mkdirSync } from "fs";
|
|
1210
1185
|
import { join } from "path";
|
|
1211
1186
|
import { homedir } from "os";
|
|
1187
|
+
function configPaths() {
|
|
1188
|
+
const dir = join(homedir(), ".mindstudio");
|
|
1189
|
+
return { dir, file: join(dir, "config.json") };
|
|
1190
|
+
}
|
|
1212
1191
|
function getConfigPath() {
|
|
1213
|
-
return
|
|
1192
|
+
return configPaths().file;
|
|
1214
1193
|
}
|
|
1215
1194
|
function loadConfig() {
|
|
1216
1195
|
try {
|
|
1217
|
-
const raw = readFileSync(
|
|
1196
|
+
const raw = readFileSync(configPaths().file, "utf-8");
|
|
1218
1197
|
return JSON.parse(raw);
|
|
1219
1198
|
} catch {
|
|
1220
1199
|
return {};
|
|
1221
1200
|
}
|
|
1222
1201
|
}
|
|
1223
1202
|
function saveConfig(config) {
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
JSON.stringify(config, null, 2) + "\n",
|
|
1228
|
-
"utf-8"
|
|
1229
|
-
);
|
|
1203
|
+
const { dir, file } = configPaths();
|
|
1204
|
+
mkdirSync(dir, { recursive: true });
|
|
1205
|
+
writeFileSync(file, JSON.stringify(config, null, 2) + "\n", "utf-8");
|
|
1230
1206
|
}
|
|
1231
1207
|
function clearConfig() {
|
|
1232
1208
|
saveConfig({});
|
|
1233
1209
|
}
|
|
1234
|
-
var CONFIG_DIR, CONFIG_PATH;
|
|
1235
1210
|
var init_config = __esm({
|
|
1236
1211
|
"src/config.ts"() {
|
|
1237
1212
|
"use strict";
|
|
1238
|
-
CONFIG_DIR = join(homedir(), ".mindstudio");
|
|
1239
|
-
CONFIG_PATH = join(CONFIG_DIR, "config.json");
|
|
1240
1213
|
}
|
|
1241
1214
|
});
|
|
1242
1215
|
|
|
@@ -1325,15 +1298,6 @@ function applyStepMethods(AgentClass) {
|
|
|
1325
1298
|
proto.detectPII = function(step, options) {
|
|
1326
1299
|
return this.executeStep("detectPII", step, options);
|
|
1327
1300
|
};
|
|
1328
|
-
proto.discordEditMessage = function(step, options) {
|
|
1329
|
-
return this.executeStep("discordEditMessage", step, options);
|
|
1330
|
-
};
|
|
1331
|
-
proto.discordSendFollowUp = function(step, options) {
|
|
1332
|
-
return this.executeStep("discordSendFollowUp", step, options);
|
|
1333
|
-
};
|
|
1334
|
-
proto.discordSendMessage = function(step, options) {
|
|
1335
|
-
return this.executeStep("discordSendMessage", step, options);
|
|
1336
|
-
};
|
|
1337
1301
|
proto.downloadVideo = function(step, options) {
|
|
1338
1302
|
return this.executeStep("downloadVideo", step, options);
|
|
1339
1303
|
};
|
|
@@ -1958,7 +1922,7 @@ async function startMcpServer(options) {
|
|
|
1958
1922
|
capabilities: { tools: {} },
|
|
1959
1923
|
serverInfo: {
|
|
1960
1924
|
name: "mindstudio-agent",
|
|
1961
|
-
version: "0.0.
|
|
1925
|
+
version: "0.0.19"
|
|
1962
1926
|
}
|
|
1963
1927
|
});
|
|
1964
1928
|
break;
|
|
@@ -2486,7 +2450,7 @@ function isNewerVersion(current, latest) {
|
|
|
2486
2450
|
return false;
|
|
2487
2451
|
}
|
|
2488
2452
|
async function checkForUpdate() {
|
|
2489
|
-
const currentVersion = "0.0.
|
|
2453
|
+
const currentVersion = "0.0.19";
|
|
2490
2454
|
if (!currentVersion) return null;
|
|
2491
2455
|
try {
|
|
2492
2456
|
const { loadConfig: loadConfig2, saveConfig: saveConfig2 } = await Promise.resolve().then(() => (init_config(), config_exports));
|
|
@@ -2515,7 +2479,7 @@ async function checkForUpdate() {
|
|
|
2515
2479
|
}
|
|
2516
2480
|
}
|
|
2517
2481
|
function printUpdateNotice(latestVersion) {
|
|
2518
|
-
const currentVersion = "0.0.
|
|
2482
|
+
const currentVersion = "0.0.19";
|
|
2519
2483
|
process.stderr.write(
|
|
2520
2484
|
`
|
|
2521
2485
|
${ansi.cyanBright("Update available")} ${ansi.gray(currentVersion + " \u2192")} ${ansi.cyanBold(latestVersion)}
|
|
@@ -2589,7 +2553,7 @@ async function cmdLogin(options) {
|
|
|
2589
2553
|
process.stderr.write("\n");
|
|
2590
2554
|
printLogo();
|
|
2591
2555
|
process.stderr.write("\n");
|
|
2592
|
-
const ver = "0.0.
|
|
2556
|
+
const ver = "0.0.19";
|
|
2593
2557
|
process.stderr.write(
|
|
2594
2558
|
` ${ansi.bold("MindStudio")} ${ansi.gray("CLI")}${ver ? " " + ansi.gray("v" + ver) : ""}
|
|
2595
2559
|
`
|
package/dist/index.d.ts
CHANGED
|
@@ -729,53 +729,6 @@ interface DetectPIIStepOutput {
|
|
|
729
729
|
score: number;
|
|
730
730
|
}[];
|
|
731
731
|
}
|
|
732
|
-
interface DiscordEditMessageStepInput {
|
|
733
|
-
/** Discord bot token for authentication */
|
|
734
|
-
botToken: string;
|
|
735
|
-
/** Discord channel ID containing the message */
|
|
736
|
-
channelId: string;
|
|
737
|
-
/** ID of the message to edit (returned by Send Discord Message) */
|
|
738
|
-
messageId: string;
|
|
739
|
-
/** New message text to replace the existing content */
|
|
740
|
-
text: string;
|
|
741
|
-
/** URL of a file to download and attach to the message (replaces any previous attachments) */
|
|
742
|
-
attachmentUrl?: string;
|
|
743
|
-
}
|
|
744
|
-
type DiscordEditMessageStepOutput = unknown;
|
|
745
|
-
interface DiscordSendFollowUpStepInput {
|
|
746
|
-
/** Discord application ID from the bot registration */
|
|
747
|
-
applicationId: string;
|
|
748
|
-
/** Interaction token provided by the Discord trigger — expires after 15 minutes */
|
|
749
|
-
interactionToken: string;
|
|
750
|
-
/** Message text to send as a follow-up */
|
|
751
|
-
text: string;
|
|
752
|
-
/** URL of a file to download and attach to the message */
|
|
753
|
-
attachmentUrl?: string;
|
|
754
|
-
}
|
|
755
|
-
interface DiscordSendFollowUpStepOutput {
|
|
756
|
-
/** ID of the sent follow-up message */
|
|
757
|
-
messageId: string;
|
|
758
|
-
}
|
|
759
|
-
interface DiscordSendMessageStepInput {
|
|
760
|
-
/** "edit" replaces the loading message, "send" sends a new channel message */
|
|
761
|
-
mode: "edit" | "send";
|
|
762
|
-
/** Message text to send */
|
|
763
|
-
text: string;
|
|
764
|
-
/** Discord application ID from the bot registration (required for "reply" mode) */
|
|
765
|
-
applicationId?: string;
|
|
766
|
-
/** Interaction token provided by the Discord trigger — expires after 15 minutes (required for "reply" mode) */
|
|
767
|
-
interactionToken?: string;
|
|
768
|
-
/** Discord bot token for authentication (required for "send" mode) */
|
|
769
|
-
botToken?: string;
|
|
770
|
-
/** Discord channel ID to send the message to (required for "send" mode) */
|
|
771
|
-
channelId?: string;
|
|
772
|
-
/** URL of a file to download and attach to the message */
|
|
773
|
-
attachmentUrl?: string;
|
|
774
|
-
}
|
|
775
|
-
interface DiscordSendMessageStepOutput {
|
|
776
|
-
/** ID of the sent Discord message, only present in "send" mode (use with Edit Discord Message) */
|
|
777
|
-
messageId?: string;
|
|
778
|
-
}
|
|
779
732
|
interface DownloadVideoStepInput {
|
|
780
733
|
/** URL of the video to download (supports YouTube, TikTok, etc. via yt-dlp) */
|
|
781
734
|
videoUrl: string;
|
|
@@ -2119,55 +2072,17 @@ interface ListGoogleDriveFilesStepOutput {
|
|
|
2119
2072
|
}[];
|
|
2120
2073
|
}
|
|
2121
2074
|
interface LogicStepInput {
|
|
2122
|
-
/**
|
|
2123
|
-
mode?: "ai" | "comparison";
|
|
2124
|
-
/** AI mode: prompt context. Comparison mode: left operand (resolved via variables). */
|
|
2075
|
+
/** Prompt text providing context for the AI evaluation */
|
|
2125
2076
|
context: string;
|
|
2126
2077
|
/** List of conditions to evaluate (objects for managed UIs, strings for code) */
|
|
2127
2078
|
cases: ({
|
|
2128
2079
|
/** Unique case identifier */
|
|
2129
2080
|
id: string;
|
|
2130
|
-
/**
|
|
2081
|
+
/** The statement to evaluate (e.g., "User selected a dog") */
|
|
2131
2082
|
condition: string;
|
|
2132
|
-
/** Comparison operator (comparison mode only) */
|
|
2133
|
-
operator?: "eq" | "neq" | "gt" | "lt" | "gte" | "lte" | "exists" | "not_exists" | "contains" | "not_contains" | "default";
|
|
2134
2083
|
/** Step to transition to if this case wins (workflow mode only) */
|
|
2135
2084
|
destinationStepId?: string;
|
|
2136
|
-
/** Workflow to jump to if this case wins (uses that workflow's initial step) */
|
|
2137
|
-
destinationWorkflowId?: string;
|
|
2138
2085
|
} | string)[];
|
|
2139
|
-
/** Optional model settings override; uses the organization default if not specified (AI mode only) */
|
|
2140
|
-
modelOverride?: {
|
|
2141
|
-
/** Model identifier (e.g. "gpt-4", "claude-3-opus") */
|
|
2142
|
-
model: string;
|
|
2143
|
-
/** Sampling temperature for the model (0-2) */
|
|
2144
|
-
temperature: number;
|
|
2145
|
-
/** Maximum number of tokens in the model's response */
|
|
2146
|
-
maxResponseTokens: number;
|
|
2147
|
-
/** Whether to skip the system preamble/instructions */
|
|
2148
|
-
ignorePreamble?: boolean;
|
|
2149
|
-
/** Preprocessor applied to user messages before sending to the model */
|
|
2150
|
-
userMessagePreprocessor?: {
|
|
2151
|
-
/** Data source identifier for the preprocessor */
|
|
2152
|
-
dataSource?: string;
|
|
2153
|
-
/** Template string applied to user messages before sending to the model */
|
|
2154
|
-
messageTemplate?: string;
|
|
2155
|
-
/** Maximum number of results to include from the data source */
|
|
2156
|
-
maxResults?: number;
|
|
2157
|
-
/** Whether the preprocessor is active */
|
|
2158
|
-
enabled?: boolean;
|
|
2159
|
-
/** Whether child steps should inherit this preprocessor configuration */
|
|
2160
|
-
shouldInherit?: boolean;
|
|
2161
|
-
};
|
|
2162
|
-
/** System preamble/instructions for the model */
|
|
2163
|
-
preamble?: string;
|
|
2164
|
-
/** Whether multi-model candidate generation is enabled */
|
|
2165
|
-
multiModelEnabled?: boolean;
|
|
2166
|
-
/** Whether the user can edit the model's response */
|
|
2167
|
-
editResponseEnabled?: boolean;
|
|
2168
|
-
/** Additional model-specific configuration */
|
|
2169
|
-
config?: Record<string, unknown>;
|
|
2170
|
-
};
|
|
2171
2086
|
}
|
|
2172
2087
|
interface LogicStepOutput {
|
|
2173
2088
|
/** The index of the winning case */
|
|
@@ -3421,7 +3336,7 @@ type GenerateAssetStepOutput = GeneratePdfStepOutput;
|
|
|
3421
3336
|
type GenerateTextStepInput = UserMessageStepInput;
|
|
3422
3337
|
type GenerateTextStepOutput = UserMessageStepOutput;
|
|
3423
3338
|
/** Union of all available step type names. */
|
|
3424
|
-
type StepName = "activeCampaignAddNote" | "activeCampaignCreateContact" | "addSubtitlesToVideo" | "airtableCreateUpdateRecord" | "airtableDeleteRecord" | "airtableGetRecord" | "airtableGetTableRecords" | "analyzeImage" | "analyzeVideo" | "captureThumbnail" | "codaCreateUpdatePage" | "codaCreateUpdateRow" | "codaFindRow" | "codaGetPage" | "codaGetTableRows" | "convertPdfToImages" | "createDataSource" | "createGoogleCalendarEvent" | "createGoogleDoc" | "createGoogleSheet" | "deleteDataSource" | "deleteDataSourceDocument" | "deleteGmailEmail" | "deleteGoogleCalendarEvent" | "deleteGoogleSheetRows" | "detectPII" | "
|
|
3339
|
+
type StepName = "activeCampaignAddNote" | "activeCampaignCreateContact" | "addSubtitlesToVideo" | "airtableCreateUpdateRecord" | "airtableDeleteRecord" | "airtableGetRecord" | "airtableGetTableRecords" | "analyzeImage" | "analyzeVideo" | "captureThumbnail" | "codaCreateUpdatePage" | "codaCreateUpdateRow" | "codaFindRow" | "codaGetPage" | "codaGetTableRows" | "convertPdfToImages" | "createDataSource" | "createGoogleCalendarEvent" | "createGoogleDoc" | "createGoogleSheet" | "deleteDataSource" | "deleteDataSourceDocument" | "deleteGmailEmail" | "deleteGoogleCalendarEvent" | "deleteGoogleSheetRows" | "detectPII" | "downloadVideo" | "enhanceImageGenerationPrompt" | "enhanceVideoGenerationPrompt" | "enrichPerson" | "extractAudioFromVideo" | "extractText" | "fetchDataSourceDocument" | "fetchGoogleDoc" | "fetchGoogleSheet" | "fetchSlackChannelHistory" | "fetchYoutubeCaptions" | "fetchYoutubeChannel" | "fetchYoutubeComments" | "fetchYoutubeVideo" | "generateChart" | "generateImage" | "generateLipsync" | "generateMusic" | "generatePdf" | "generateStaticVideoFromImage" | "generateVideo" | "getGmailDraft" | "getGmailEmail" | "getGoogleCalendarEvent" | "getGoogleDriveFile" | "getGoogleSheetInfo" | "getMediaMetadata" | "httpRequest" | "hubspotCreateCompany" | "hubspotCreateContact" | "hubspotGetCompany" | "hubspotGetContact" | "hunterApiCompanyEnrichment" | "hunterApiDomainSearch" | "hunterApiEmailFinder" | "hunterApiEmailVerification" | "hunterApiPersonEnrichment" | "imageFaceSwap" | "imageRemoveWatermark" | "insertVideoClips" | "listDataSources" | "listGmailDrafts" | "listGoogleCalendarEvents" | "listGoogleDriveFiles" | "logic" | "makeDotComRunScenario" | "mergeAudio" | "mergeVideos" | "mixAudioIntoVideo" | "muteVideo" | "n8nRunNode" | "notionCreatePage" | "notionUpdatePage" | "peopleSearch" | "postToLinkedIn" | "postToSlackChannel" | "postToX" | "postToZapier" | "queryDataSource" | "queryExternalDatabase" | "redactPII" | "removeBackgroundFromImage" | "replyToGmailEmail" | "resizeVideo" | "runPackagedWorkflow" | "scrapeFacebookPage" | "scrapeFacebookPosts" | "scrapeInstagramComments" | "scrapeInstagramMentions" | "scrapeInstagramPosts" | "scrapeInstagramProfile" | "scrapeInstagramReels" | "scrapeLinkedInCompany" | "scrapeLinkedInProfile" | "scrapeMetaThreadsProfile" | "scrapeUrl" | "scrapeXPost" | "scrapeXProfile" | "searchGoogle" | "searchGoogleCalendarEvents" | "searchGoogleDrive" | "searchGoogleImages" | "searchGoogleNews" | "searchGoogleTrends" | "searchPerplexity" | "searchXPosts" | "searchYoutube" | "searchYoutubeTrends" | "sendEmail" | "sendSMS" | "setRunTitle" | "setVariable" | "telegramEditMessage" | "telegramReplyToMessage" | "telegramSendAudio" | "telegramSendFile" | "telegramSendImage" | "telegramSendMessage" | "telegramSendVideo" | "telegramSetTyping" | "textToSpeech" | "transcribeAudio" | "trimMedia" | "updateGoogleCalendarEvent" | "updateGoogleDoc" | "updateGoogleSheet" | "uploadDataSourceDocument" | "upscaleImage" | "upscaleVideo" | "userMessage" | "videoFaceSwap" | "videoRemoveBackground" | "videoRemoveWatermark" | "watermarkImage" | "watermarkVideo";
|
|
3425
3340
|
/** Maps step names to their input types. */
|
|
3426
3341
|
interface StepInputMap {
|
|
3427
3342
|
activeCampaignAddNote: ActiveCampaignAddNoteStepInput;
|
|
@@ -3450,9 +3365,6 @@ interface StepInputMap {
|
|
|
3450
3365
|
deleteGoogleCalendarEvent: DeleteGoogleCalendarEventStepInput;
|
|
3451
3366
|
deleteGoogleSheetRows: DeleteGoogleSheetRowsStepInput;
|
|
3452
3367
|
detectPII: DetectPIIStepInput;
|
|
3453
|
-
discordEditMessage: DiscordEditMessageStepInput;
|
|
3454
|
-
discordSendFollowUp: DiscordSendFollowUpStepInput;
|
|
3455
|
-
discordSendMessage: DiscordSendMessageStepInput;
|
|
3456
3368
|
downloadVideo: DownloadVideoStepInput;
|
|
3457
3369
|
enhanceImageGenerationPrompt: EnhanceImageGenerationPromptStepInput;
|
|
3458
3370
|
enhanceVideoGenerationPrompt: EnhanceVideoGenerationPromptStepInput;
|
|
@@ -3597,9 +3509,6 @@ interface StepOutputMap {
|
|
|
3597
3509
|
deleteGoogleCalendarEvent: DeleteGoogleCalendarEventStepOutput;
|
|
3598
3510
|
deleteGoogleSheetRows: DeleteGoogleSheetRowsStepOutput;
|
|
3599
3511
|
detectPII: DetectPIIStepOutput;
|
|
3600
|
-
discordEditMessage: DiscordEditMessageStepOutput;
|
|
3601
|
-
discordSendFollowUp: DiscordSendFollowUpStepOutput;
|
|
3602
|
-
discordSendMessage: DiscordSendMessageStepOutput;
|
|
3603
3512
|
downloadVideo: DownloadVideoStepOutput;
|
|
3604
3513
|
enhanceImageGenerationPrompt: EnhanceImageGenerationPromptStepOutput;
|
|
3605
3514
|
enhanceVideoGenerationPrompt: EnhanceVideoGenerationPromptStepOutput;
|
|
@@ -4161,67 +4070,6 @@ interface StepMethods {
|
|
|
4161
4070
|
* ```
|
|
4162
4071
|
*/
|
|
4163
4072
|
detectPII(step: DetectPIIStepInput, options?: StepExecutionOptions): Promise<StepExecutionResult<DetectPIIStepOutput>>;
|
|
4164
|
-
/**
|
|
4165
|
-
* Edit a previously sent Discord channel message. Use with the message ID returned by Send Discord Message.
|
|
4166
|
-
*
|
|
4167
|
-
* @remarks
|
|
4168
|
-
* - Only messages sent by the bot can be edited.
|
|
4169
|
-
* - The messageId is returned by the Send Discord Message step.
|
|
4170
|
-
* - Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.
|
|
4171
|
-
* - When editing with an attachment, the new attachment replaces any previous attachments on the message.
|
|
4172
|
-
* - URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).
|
|
4173
|
-
*
|
|
4174
|
-
* @example
|
|
4175
|
-
* ```typescript
|
|
4176
|
-
* const result = await agent.discordEditMessage({
|
|
4177
|
-
* botToken: ``,
|
|
4178
|
-
* channelId: ``,
|
|
4179
|
-
* messageId: ``,
|
|
4180
|
-
* text: ``,
|
|
4181
|
-
* });
|
|
4182
|
-
* ```
|
|
4183
|
-
*/
|
|
4184
|
-
discordEditMessage(step: DiscordEditMessageStepInput, options?: StepExecutionOptions): Promise<StepExecutionResult<DiscordEditMessageStepOutput>>;
|
|
4185
|
-
/**
|
|
4186
|
-
* Send a follow-up message to a Discord slash command interaction.
|
|
4187
|
-
*
|
|
4188
|
-
* @remarks
|
|
4189
|
-
* - Requires the applicationId and interactionToken from the Discord trigger variables.
|
|
4190
|
-
* - Follow-up messages appear as new messages in the channel after the initial response.
|
|
4191
|
-
* - Returns the sent message ID.
|
|
4192
|
-
* - Interaction tokens expire after 15 minutes.
|
|
4193
|
-
* - Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.
|
|
4194
|
-
* - URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).
|
|
4195
|
-
*
|
|
4196
|
-
* @example
|
|
4197
|
-
* ```typescript
|
|
4198
|
-
* const result = await agent.discordSendFollowUp({
|
|
4199
|
-
* applicationId: ``,
|
|
4200
|
-
* interactionToken: ``,
|
|
4201
|
-
* text: ``,
|
|
4202
|
-
* });
|
|
4203
|
-
* ```
|
|
4204
|
-
*/
|
|
4205
|
-
discordSendFollowUp(step: DiscordSendFollowUpStepInput, options?: StepExecutionOptions): Promise<StepExecutionResult<DiscordSendFollowUpStepOutput>>;
|
|
4206
|
-
/**
|
|
4207
|
-
* Send a message to Discord — either edit the loading message or send a new channel message.
|
|
4208
|
-
*
|
|
4209
|
-
* @remarks
|
|
4210
|
-
* - mode "edit" replaces the loading message (interaction response) with the final result. Uses applicationId and interactionToken from trigger variables. No bot permissions required.
|
|
4211
|
-
* - mode "send" sends a new message to a channel. Uses botToken and channelId from trigger variables. Returns a messageId that can be used with Edit Discord Message.
|
|
4212
|
-
* - Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.
|
|
4213
|
-
* - URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).
|
|
4214
|
-
* - Interaction tokens expire after 15 minutes.
|
|
4215
|
-
*
|
|
4216
|
-
* @example
|
|
4217
|
-
* ```typescript
|
|
4218
|
-
* const result = await agent.discordSendMessage({
|
|
4219
|
-
* mode: "edit",
|
|
4220
|
-
* text: ``,
|
|
4221
|
-
* });
|
|
4222
|
-
* ```
|
|
4223
|
-
*/
|
|
4224
|
-
discordSendMessage(step: DiscordSendMessageStepInput, options?: StepExecutionOptions): Promise<StepExecutionResult<DiscordSendMessageStepOutput>>;
|
|
4225
4073
|
/**
|
|
4226
4074
|
* Download a video file
|
|
4227
4075
|
*
|
|
@@ -4931,14 +4779,13 @@ interface StepMethods {
|
|
|
4931
4779
|
*/
|
|
4932
4780
|
listGoogleDriveFiles(step: ListGoogleDriveFilesStepInput, options?: StepExecutionOptions): Promise<StepExecutionResult<ListGoogleDriveFilesStepOutput>>;
|
|
4933
4781
|
/**
|
|
4934
|
-
*
|
|
4782
|
+
* Use an AI model to evaluate which condition from a list is most true, given a context prompt.
|
|
4935
4783
|
*
|
|
4936
4784
|
* @remarks
|
|
4937
|
-
* -
|
|
4938
|
-
* -
|
|
4939
|
-
* - In comparison mode, the context is the left operand and each case's condition is the right operand. First matching case wins. Use operator "default" as a fallback.
|
|
4785
|
+
* - This is "fuzzy" logic evaluated by an AI model, not computational logic. The model picks the most accurate statement.
|
|
4786
|
+
* - All possible cases must be specified — there is no default/fallback case.
|
|
4940
4787
|
* - Requires at least two cases.
|
|
4941
|
-
* -
|
|
4788
|
+
* - In workflow mode, transitions to the destinationStepId of the winning case. In direct execution, returns the winning case ID and condition.
|
|
4942
4789
|
*
|
|
4943
4790
|
* @example
|
|
4944
4791
|
* ```typescript
|
|
@@ -6164,4 +6011,4 @@ declare const MindStudioAgent: {
|
|
|
6164
6011
|
new (options?: AgentOptions): MindStudioAgent;
|
|
6165
6012
|
};
|
|
6166
6013
|
|
|
6167
|
-
export { type ActiveCampaignAddNoteStepInput, type ActiveCampaignAddNoteStepOutput, type ActiveCampaignCreateContactStepInput, type ActiveCampaignCreateContactStepOutput, type AddSubtitlesToVideoStepInput, type AddSubtitlesToVideoStepOutput, type AgentInfo, type AgentOptions, type AirtableCreateUpdateRecordStepInput, type AirtableCreateUpdateRecordStepOutput, type AirtableDeleteRecordStepInput, type AirtableDeleteRecordStepOutput, type AirtableGetRecordStepInput, type AirtableGetRecordStepOutput, type AirtableGetTableRecordsStepInput, type AirtableGetTableRecordsStepOutput, type AnalyzeImageStepInput, type AnalyzeImageStepOutput, type AnalyzeVideoStepInput, type AnalyzeVideoStepOutput, type CaptureThumbnailStepInput, type CaptureThumbnailStepOutput, type CodaCreateUpdatePageStepInput, type CodaCreateUpdatePageStepOutput, type CodaCreateUpdateRowStepInput, type CodaCreateUpdateRowStepOutput, type CodaFindRowStepInput, type CodaFindRowStepOutput, type CodaGetPageStepInput, type CodaGetPageStepOutput, type CodaGetTableRowsStepInput, type CodaGetTableRowsStepOutput, type ConvertPdfToImagesStepInput, type ConvertPdfToImagesStepOutput, type CreateDataSourceStepInput, type CreateDataSourceStepOutput, type CreateGoogleCalendarEventStepInput, type CreateGoogleCalendarEventStepOutput, type CreateGoogleDocStepInput, type CreateGoogleDocStepOutput, type CreateGoogleSheetStepInput, type CreateGoogleSheetStepOutput, type DeleteDataSourceDocumentStepInput, type DeleteDataSourceDocumentStepOutput, type DeleteDataSourceStepInput, type DeleteDataSourceStepOutput, type DeleteGmailEmailStepInput, type DeleteGmailEmailStepOutput, type DeleteGoogleCalendarEventStepInput, type DeleteGoogleCalendarEventStepOutput, type DeleteGoogleSheetRowsStepInput, type DeleteGoogleSheetRowsStepOutput, type DetectPIIStepInput, type DetectPIIStepOutput, type DiscordEditMessageStepInput, type DiscordEditMessageStepOutput, type DiscordSendFollowUpStepInput, type DiscordSendFollowUpStepOutput, type DiscordSendMessageStepInput, type DiscordSendMessageStepOutput, type DownloadVideoStepInput, type DownloadVideoStepOutput, type EnhanceImageGenerationPromptStepInput, type EnhanceImageGenerationPromptStepOutput, type EnhanceVideoGenerationPromptStepInput, type EnhanceVideoGenerationPromptStepOutput, type EnrichPersonStepInput, type EnrichPersonStepOutput, type ExtractAudioFromVideoStepInput, type ExtractAudioFromVideoStepOutput, type ExtractTextStepInput, type ExtractTextStepOutput, type FetchDataSourceDocumentStepInput, type FetchDataSourceDocumentStepOutput, type FetchGoogleDocStepInput, type FetchGoogleDocStepOutput, type FetchGoogleSheetStepInput, type FetchGoogleSheetStepOutput, type FetchSlackChannelHistoryStepInput, type FetchSlackChannelHistoryStepOutput, type FetchYoutubeCaptionsStepInput, type FetchYoutubeCaptionsStepOutput, type FetchYoutubeChannelStepInput, type FetchYoutubeChannelStepOutput, type FetchYoutubeCommentsStepInput, type FetchYoutubeCommentsStepOutput, type FetchYoutubeVideoStepInput, type FetchYoutubeVideoStepOutput, type GenerateAssetStepInput, type GenerateAssetStepOutput, type GenerateChartStepInput, type GenerateChartStepOutput, type GenerateImageStepInput, type GenerateImageStepOutput, type GenerateLipsyncStepInput, type GenerateLipsyncStepOutput, type GenerateMusicStepInput, type GenerateMusicStepOutput, type GeneratePdfStepInput, type GeneratePdfStepOutput, type GenerateStaticVideoFromImageStepInput, type GenerateStaticVideoFromImageStepOutput, type GenerateTextStepInput, type GenerateTextStepOutput, type GenerateVideoStepInput, type GenerateVideoStepOutput, type GetGmailDraftStepInput, type GetGmailDraftStepOutput, type GetGmailEmailStepInput, type GetGmailEmailStepOutput, type GetGoogleCalendarEventStepInput, type GetGoogleCalendarEventStepOutput, type GetGoogleDriveFileStepInput, type GetGoogleDriveFileStepOutput, type GetGoogleSheetInfoStepInput, type GetGoogleSheetInfoStepOutput, type GetMediaMetadataStepInput, type GetMediaMetadataStepOutput, type HelperMethods, type HttpRequestStepInput, type HttpRequestStepOutput, type HubspotCreateCompanyStepInput, type HubspotCreateCompanyStepOutput, type HubspotCreateContactStepInput, type HubspotCreateContactStepOutput, type HubspotGetCompanyStepInput, type HubspotGetCompanyStepOutput, type HubspotGetContactStepInput, type HubspotGetContactStepOutput, type HunterApiCompanyEnrichmentStepInput, type HunterApiCompanyEnrichmentStepOutput, type HunterApiDomainSearchStepInput, type HunterApiDomainSearchStepOutput, type HunterApiEmailFinderStepInput, type HunterApiEmailFinderStepOutput, type HunterApiEmailVerificationStepInput, type HunterApiEmailVerificationStepOutput, type HunterApiPersonEnrichmentStepInput, type HunterApiPersonEnrichmentStepOutput, type ImageFaceSwapStepInput, type ImageFaceSwapStepOutput, type ImageRemoveWatermarkStepInput, type ImageRemoveWatermarkStepOutput, type InsertVideoClipsStepInput, type InsertVideoClipsStepOutput, type ListAgentsResult, type ListDataSourcesStepInput, type ListDataSourcesStepOutput, type ListGmailDraftsStepInput, type ListGmailDraftsStepOutput, type ListGoogleCalendarEventsStepInput, type ListGoogleCalendarEventsStepOutput, type ListGoogleDriveFilesStepInput, type ListGoogleDriveFilesStepOutput, type LogicStepInput, type LogicStepOutput, type MakeDotComRunScenarioStepInput, type MakeDotComRunScenarioStepOutput, type MergeAudioStepInput, type MergeAudioStepOutput, type MergeVideosStepInput, type MergeVideosStepOutput, MindStudioAgent, MindStudioError, type MindStudioModel, type MixAudioIntoVideoStepInput, type MixAudioIntoVideoStepOutput, type ModelType, type MonacoSnippet, type MonacoSnippetField, type MonacoSnippetFieldType, type MuteVideoStepInput, type MuteVideoStepOutput, type N8nRunNodeStepInput, type N8nRunNodeStepOutput, type NotionCreatePageStepInput, type NotionCreatePageStepOutput, type NotionUpdatePageStepInput, type NotionUpdatePageStepOutput, type PeopleSearchStepInput, type PeopleSearchStepOutput, type PostToLinkedInStepInput, type PostToLinkedInStepOutput, type PostToSlackChannelStepInput, type PostToSlackChannelStepOutput, type PostToXStepInput, type PostToXStepOutput, type PostToZapierStepInput, type PostToZapierStepOutput, type QueryDataSourceStepInput, type QueryDataSourceStepOutput, type QueryExternalDatabaseStepInput, type QueryExternalDatabaseStepOutput, type RedactPIIStepInput, type RedactPIIStepOutput, type RemoveBackgroundFromImageStepInput, type RemoveBackgroundFromImageStepOutput, type ReplyToGmailEmailStepInput, type ReplyToGmailEmailStepOutput, type ResizeVideoStepInput, type ResizeVideoStepOutput, type RunAgentOptions, type RunAgentResult, type RunPackagedWorkflowStepInput, type RunPackagedWorkflowStepOutput, type ScrapeFacebookPageStepInput, type ScrapeFacebookPageStepOutput, type ScrapeFacebookPostsStepInput, type ScrapeFacebookPostsStepOutput, type ScrapeInstagramCommentsStepInput, type ScrapeInstagramCommentsStepOutput, type ScrapeInstagramMentionsStepInput, type ScrapeInstagramMentionsStepOutput, type ScrapeInstagramPostsStepInput, type ScrapeInstagramPostsStepOutput, type ScrapeInstagramProfileStepInput, type ScrapeInstagramProfileStepOutput, type ScrapeInstagramReelsStepInput, type ScrapeInstagramReelsStepOutput, type ScrapeLinkedInCompanyStepInput, type ScrapeLinkedInCompanyStepOutput, type ScrapeLinkedInProfileStepInput, type ScrapeLinkedInProfileStepOutput, type ScrapeMetaThreadsProfileStepInput, type ScrapeMetaThreadsProfileStepOutput, type ScrapeUrlStepInput, type ScrapeUrlStepOutput, type ScrapeXPostStepInput, type ScrapeXPostStepOutput, type ScrapeXProfileStepInput, type ScrapeXProfileStepOutput, type SearchGoogleCalendarEventsStepInput, type SearchGoogleCalendarEventsStepOutput, type SearchGoogleDriveStepInput, type SearchGoogleDriveStepOutput, type SearchGoogleImagesStepInput, type SearchGoogleImagesStepOutput, type SearchGoogleNewsStepInput, type SearchGoogleNewsStepOutput, type SearchGoogleStepInput, type SearchGoogleStepOutput, type SearchGoogleTrendsStepInput, type SearchGoogleTrendsStepOutput, type SearchPerplexityStepInput, type SearchPerplexityStepOutput, type SearchXPostsStepInput, type SearchXPostsStepOutput, type SearchYoutubeStepInput, type SearchYoutubeStepOutput, type SearchYoutubeTrendsStepInput, type SearchYoutubeTrendsStepOutput, type SendEmailStepInput, type SendEmailStepOutput, type SendSMSStepInput, type SendSMSStepOutput, type SetRunTitleStepInput, type SetRunTitleStepOutput, type SetVariableStepInput, type SetVariableStepOutput, type StepExecutionMeta, type StepExecutionOptions, type StepExecutionResult, type StepInputMap, type StepMetadata, type StepMethods, type StepName, type StepOutputMap, type TelegramEditMessageStepInput, type TelegramEditMessageStepOutput, type TelegramReplyToMessageStepInput, type TelegramReplyToMessageStepOutput, type TelegramSendAudioStepInput, type TelegramSendAudioStepOutput, type TelegramSendFileStepInput, type TelegramSendFileStepOutput, type TelegramSendImageStepInput, type TelegramSendImageStepOutput, type TelegramSendMessageStepInput, type TelegramSendMessageStepOutput, type TelegramSendVideoStepInput, type TelegramSendVideoStepOutput, type TelegramSetTypingStepInput, type TelegramSetTypingStepOutput, type TextToSpeechStepInput, type TextToSpeechStepOutput, type TranscribeAudioStepInput, type TranscribeAudioStepOutput, type TrimMediaStepInput, type TrimMediaStepOutput, type UpdateGoogleCalendarEventStepInput, type UpdateGoogleCalendarEventStepOutput, type UpdateGoogleDocStepInput, type UpdateGoogleDocStepOutput, type UpdateGoogleSheetStepInput, type UpdateGoogleSheetStepOutput, type UploadDataSourceDocumentStepInput, type UploadDataSourceDocumentStepOutput, type UpscaleImageStepInput, type UpscaleImageStepOutput, type UpscaleVideoStepInput, type UpscaleVideoStepOutput, type UserMessageStepInput, type UserMessageStepOutput, type VideoFaceSwapStepInput, type VideoFaceSwapStepOutput, type VideoRemoveBackgroundStepInput, type VideoRemoveBackgroundStepOutput, type VideoRemoveWatermarkStepInput, type VideoRemoveWatermarkStepOutput, type WatermarkImageStepInput, type WatermarkImageStepOutput, type WatermarkVideoStepInput, type WatermarkVideoStepOutput, blockTypeAliases, monacoSnippets, stepMetadata };
|
|
6014
|
+
export { type ActiveCampaignAddNoteStepInput, type ActiveCampaignAddNoteStepOutput, type ActiveCampaignCreateContactStepInput, type ActiveCampaignCreateContactStepOutput, type AddSubtitlesToVideoStepInput, type AddSubtitlesToVideoStepOutput, type AgentInfo, type AgentOptions, type AirtableCreateUpdateRecordStepInput, type AirtableCreateUpdateRecordStepOutput, type AirtableDeleteRecordStepInput, type AirtableDeleteRecordStepOutput, type AirtableGetRecordStepInput, type AirtableGetRecordStepOutput, type AirtableGetTableRecordsStepInput, type AirtableGetTableRecordsStepOutput, type AnalyzeImageStepInput, type AnalyzeImageStepOutput, type AnalyzeVideoStepInput, type AnalyzeVideoStepOutput, type CaptureThumbnailStepInput, type CaptureThumbnailStepOutput, type CodaCreateUpdatePageStepInput, type CodaCreateUpdatePageStepOutput, type CodaCreateUpdateRowStepInput, type CodaCreateUpdateRowStepOutput, type CodaFindRowStepInput, type CodaFindRowStepOutput, type CodaGetPageStepInput, type CodaGetPageStepOutput, type CodaGetTableRowsStepInput, type CodaGetTableRowsStepOutput, type ConvertPdfToImagesStepInput, type ConvertPdfToImagesStepOutput, type CreateDataSourceStepInput, type CreateDataSourceStepOutput, type CreateGoogleCalendarEventStepInput, type CreateGoogleCalendarEventStepOutput, type CreateGoogleDocStepInput, type CreateGoogleDocStepOutput, type CreateGoogleSheetStepInput, type CreateGoogleSheetStepOutput, type DeleteDataSourceDocumentStepInput, type DeleteDataSourceDocumentStepOutput, type DeleteDataSourceStepInput, type DeleteDataSourceStepOutput, type DeleteGmailEmailStepInput, type DeleteGmailEmailStepOutput, type DeleteGoogleCalendarEventStepInput, type DeleteGoogleCalendarEventStepOutput, type DeleteGoogleSheetRowsStepInput, type DeleteGoogleSheetRowsStepOutput, type DetectPIIStepInput, type DetectPIIStepOutput, type DownloadVideoStepInput, type DownloadVideoStepOutput, type EnhanceImageGenerationPromptStepInput, type EnhanceImageGenerationPromptStepOutput, type EnhanceVideoGenerationPromptStepInput, type EnhanceVideoGenerationPromptStepOutput, type EnrichPersonStepInput, type EnrichPersonStepOutput, type ExtractAudioFromVideoStepInput, type ExtractAudioFromVideoStepOutput, type ExtractTextStepInput, type ExtractTextStepOutput, type FetchDataSourceDocumentStepInput, type FetchDataSourceDocumentStepOutput, type FetchGoogleDocStepInput, type FetchGoogleDocStepOutput, type FetchGoogleSheetStepInput, type FetchGoogleSheetStepOutput, type FetchSlackChannelHistoryStepInput, type FetchSlackChannelHistoryStepOutput, type FetchYoutubeCaptionsStepInput, type FetchYoutubeCaptionsStepOutput, type FetchYoutubeChannelStepInput, type FetchYoutubeChannelStepOutput, type FetchYoutubeCommentsStepInput, type FetchYoutubeCommentsStepOutput, type FetchYoutubeVideoStepInput, type FetchYoutubeVideoStepOutput, type GenerateAssetStepInput, type GenerateAssetStepOutput, type GenerateChartStepInput, type GenerateChartStepOutput, type GenerateImageStepInput, type GenerateImageStepOutput, type GenerateLipsyncStepInput, type GenerateLipsyncStepOutput, type GenerateMusicStepInput, type GenerateMusicStepOutput, type GeneratePdfStepInput, type GeneratePdfStepOutput, type GenerateStaticVideoFromImageStepInput, type GenerateStaticVideoFromImageStepOutput, type GenerateTextStepInput, type GenerateTextStepOutput, type GenerateVideoStepInput, type GenerateVideoStepOutput, type GetGmailDraftStepInput, type GetGmailDraftStepOutput, type GetGmailEmailStepInput, type GetGmailEmailStepOutput, type GetGoogleCalendarEventStepInput, type GetGoogleCalendarEventStepOutput, type GetGoogleDriveFileStepInput, type GetGoogleDriveFileStepOutput, type GetGoogleSheetInfoStepInput, type GetGoogleSheetInfoStepOutput, type GetMediaMetadataStepInput, type GetMediaMetadataStepOutput, type HelperMethods, type HttpRequestStepInput, type HttpRequestStepOutput, type HubspotCreateCompanyStepInput, type HubspotCreateCompanyStepOutput, type HubspotCreateContactStepInput, type HubspotCreateContactStepOutput, type HubspotGetCompanyStepInput, type HubspotGetCompanyStepOutput, type HubspotGetContactStepInput, type HubspotGetContactStepOutput, type HunterApiCompanyEnrichmentStepInput, type HunterApiCompanyEnrichmentStepOutput, type HunterApiDomainSearchStepInput, type HunterApiDomainSearchStepOutput, type HunterApiEmailFinderStepInput, type HunterApiEmailFinderStepOutput, type HunterApiEmailVerificationStepInput, type HunterApiEmailVerificationStepOutput, type HunterApiPersonEnrichmentStepInput, type HunterApiPersonEnrichmentStepOutput, type ImageFaceSwapStepInput, type ImageFaceSwapStepOutput, type ImageRemoveWatermarkStepInput, type ImageRemoveWatermarkStepOutput, type InsertVideoClipsStepInput, type InsertVideoClipsStepOutput, type ListAgentsResult, type ListDataSourcesStepInput, type ListDataSourcesStepOutput, type ListGmailDraftsStepInput, type ListGmailDraftsStepOutput, type ListGoogleCalendarEventsStepInput, type ListGoogleCalendarEventsStepOutput, type ListGoogleDriveFilesStepInput, type ListGoogleDriveFilesStepOutput, type LogicStepInput, type LogicStepOutput, type MakeDotComRunScenarioStepInput, type MakeDotComRunScenarioStepOutput, type MergeAudioStepInput, type MergeAudioStepOutput, type MergeVideosStepInput, type MergeVideosStepOutput, MindStudioAgent, MindStudioError, type MindStudioModel, type MixAudioIntoVideoStepInput, type MixAudioIntoVideoStepOutput, type ModelType, type MonacoSnippet, type MonacoSnippetField, type MonacoSnippetFieldType, type MuteVideoStepInput, type MuteVideoStepOutput, type N8nRunNodeStepInput, type N8nRunNodeStepOutput, type NotionCreatePageStepInput, type NotionCreatePageStepOutput, type NotionUpdatePageStepInput, type NotionUpdatePageStepOutput, type PeopleSearchStepInput, type PeopleSearchStepOutput, type PostToLinkedInStepInput, type PostToLinkedInStepOutput, type PostToSlackChannelStepInput, type PostToSlackChannelStepOutput, type PostToXStepInput, type PostToXStepOutput, type PostToZapierStepInput, type PostToZapierStepOutput, type QueryDataSourceStepInput, type QueryDataSourceStepOutput, type QueryExternalDatabaseStepInput, type QueryExternalDatabaseStepOutput, type RedactPIIStepInput, type RedactPIIStepOutput, type RemoveBackgroundFromImageStepInput, type RemoveBackgroundFromImageStepOutput, type ReplyToGmailEmailStepInput, type ReplyToGmailEmailStepOutput, type ResizeVideoStepInput, type ResizeVideoStepOutput, type RunAgentOptions, type RunAgentResult, type RunPackagedWorkflowStepInput, type RunPackagedWorkflowStepOutput, type ScrapeFacebookPageStepInput, type ScrapeFacebookPageStepOutput, type ScrapeFacebookPostsStepInput, type ScrapeFacebookPostsStepOutput, type ScrapeInstagramCommentsStepInput, type ScrapeInstagramCommentsStepOutput, type ScrapeInstagramMentionsStepInput, type ScrapeInstagramMentionsStepOutput, type ScrapeInstagramPostsStepInput, type ScrapeInstagramPostsStepOutput, type ScrapeInstagramProfileStepInput, type ScrapeInstagramProfileStepOutput, type ScrapeInstagramReelsStepInput, type ScrapeInstagramReelsStepOutput, type ScrapeLinkedInCompanyStepInput, type ScrapeLinkedInCompanyStepOutput, type ScrapeLinkedInProfileStepInput, type ScrapeLinkedInProfileStepOutput, type ScrapeMetaThreadsProfileStepInput, type ScrapeMetaThreadsProfileStepOutput, type ScrapeUrlStepInput, type ScrapeUrlStepOutput, type ScrapeXPostStepInput, type ScrapeXPostStepOutput, type ScrapeXProfileStepInput, type ScrapeXProfileStepOutput, type SearchGoogleCalendarEventsStepInput, type SearchGoogleCalendarEventsStepOutput, type SearchGoogleDriveStepInput, type SearchGoogleDriveStepOutput, type SearchGoogleImagesStepInput, type SearchGoogleImagesStepOutput, type SearchGoogleNewsStepInput, type SearchGoogleNewsStepOutput, type SearchGoogleStepInput, type SearchGoogleStepOutput, type SearchGoogleTrendsStepInput, type SearchGoogleTrendsStepOutput, type SearchPerplexityStepInput, type SearchPerplexityStepOutput, type SearchXPostsStepInput, type SearchXPostsStepOutput, type SearchYoutubeStepInput, type SearchYoutubeStepOutput, type SearchYoutubeTrendsStepInput, type SearchYoutubeTrendsStepOutput, type SendEmailStepInput, type SendEmailStepOutput, type SendSMSStepInput, type SendSMSStepOutput, type SetRunTitleStepInput, type SetRunTitleStepOutput, type SetVariableStepInput, type SetVariableStepOutput, type StepExecutionMeta, type StepExecutionOptions, type StepExecutionResult, type StepInputMap, type StepMetadata, type StepMethods, type StepName, type StepOutputMap, type TelegramEditMessageStepInput, type TelegramEditMessageStepOutput, type TelegramReplyToMessageStepInput, type TelegramReplyToMessageStepOutput, type TelegramSendAudioStepInput, type TelegramSendAudioStepOutput, type TelegramSendFileStepInput, type TelegramSendFileStepOutput, type TelegramSendImageStepInput, type TelegramSendImageStepOutput, type TelegramSendMessageStepInput, type TelegramSendMessageStepOutput, type TelegramSendVideoStepInput, type TelegramSendVideoStepOutput, type TelegramSetTypingStepInput, type TelegramSetTypingStepOutput, type TextToSpeechStepInput, type TextToSpeechStepOutput, type TranscribeAudioStepInput, type TranscribeAudioStepOutput, type TrimMediaStepInput, type TrimMediaStepOutput, type UpdateGoogleCalendarEventStepInput, type UpdateGoogleCalendarEventStepOutput, type UpdateGoogleDocStepInput, type UpdateGoogleDocStepOutput, type UpdateGoogleSheetStepInput, type UpdateGoogleSheetStepOutput, type UploadDataSourceDocumentStepInput, type UploadDataSourceDocumentStepOutput, type UpscaleImageStepInput, type UpscaleImageStepOutput, type UpscaleVideoStepInput, type UpscaleVideoStepOutput, type UserMessageStepInput, type UserMessageStepOutput, type VideoFaceSwapStepInput, type VideoFaceSwapStepOutput, type VideoRemoveBackgroundStepInput, type VideoRemoveBackgroundStepOutput, type VideoRemoveWatermarkStepInput, type VideoRemoveWatermarkStepOutput, type WatermarkImageStepInput, type WatermarkImageStepOutput, type WatermarkVideoStepInput, type WatermarkVideoStepOutput, blockTypeAliases, monacoSnippets, stepMetadata };
|
package/dist/index.js
CHANGED
|
@@ -124,11 +124,13 @@ var RateLimiter = class {
|
|
|
124
124
|
import { readFileSync, writeFileSync, mkdirSync } from "fs";
|
|
125
125
|
import { join } from "path";
|
|
126
126
|
import { homedir } from "os";
|
|
127
|
-
|
|
128
|
-
|
|
127
|
+
function configPaths() {
|
|
128
|
+
const dir = join(homedir(), ".mindstudio");
|
|
129
|
+
return { dir, file: join(dir, "config.json") };
|
|
130
|
+
}
|
|
129
131
|
function loadConfig() {
|
|
130
132
|
try {
|
|
131
|
-
const raw = readFileSync(
|
|
133
|
+
const raw = readFileSync(configPaths().file, "utf-8");
|
|
132
134
|
return JSON.parse(raw);
|
|
133
135
|
} catch {
|
|
134
136
|
return {};
|
|
@@ -216,15 +218,6 @@ function applyStepMethods(AgentClass) {
|
|
|
216
218
|
proto.detectPII = function(step, options) {
|
|
217
219
|
return this.executeStep("detectPII", step, options);
|
|
218
220
|
};
|
|
219
|
-
proto.discordEditMessage = function(step, options) {
|
|
220
|
-
return this.executeStep("discordEditMessage", step, options);
|
|
221
|
-
};
|
|
222
|
-
proto.discordSendFollowUp = function(step, options) {
|
|
223
|
-
return this.executeStep("discordSendFollowUp", step, options);
|
|
224
|
-
};
|
|
225
|
-
proto.discordSendMessage = function(step, options) {
|
|
226
|
-
return this.executeStep("discordSendMessage", step, options);
|
|
227
|
-
};
|
|
228
221
|
proto.downloadVideo = function(step, options) {
|
|
229
222
|
return this.executeStep("downloadVideo", step, options);
|
|
230
223
|
};
|
|
@@ -789,9 +782,6 @@ var monacoSnippets = {
|
|
|
789
782
|
"deleteGoogleCalendarEvent": { fields: [["eventId", "string"]], outputKeys: [] },
|
|
790
783
|
"deleteGoogleSheetRows": { fields: [["documentId", "string"], ["startRow", "string"], ["endRow", "string"]], outputKeys: [] },
|
|
791
784
|
"detectPII": { fields: [["input", "string"], ["language", "string"], ["entities", "array"]], outputKeys: ["detected", "detections"] },
|
|
792
|
-
"discordEditMessage": { fields: [["botToken", "string"], ["channelId", "string"], ["messageId", "string"], ["text", "string"]], outputKeys: [] },
|
|
793
|
-
"discordSendFollowUp": { fields: [["applicationId", "string"], ["interactionToken", "string"], ["text", "string"]], outputKeys: ["messageId"] },
|
|
794
|
-
"discordSendMessage": { fields: [["mode", ["edit", "send"]], ["text", "string"]], outputKeys: [] },
|
|
795
785
|
"downloadVideo": { fields: [["videoUrl", "string"], ["format", ["mp4", "mp3"]]], outputKeys: ["videoUrl"] },
|
|
796
786
|
"enhanceImageGenerationPrompt": { fields: [["initialPrompt", "string"], ["includeNegativePrompt", "boolean"], ["systemPrompt", "string"]], outputKeys: ["prompt"] },
|
|
797
787
|
"enhanceVideoGenerationPrompt": { fields: [["initialPrompt", "string"], ["includeNegativePrompt", "boolean"], ["systemPrompt", "string"]], outputKeys: ["prompt"] },
|
|
@@ -1099,27 +1089,6 @@ var stepMetadata = {
|
|
|
1099
1089
|
inputSchema: { "type": "object", "properties": { "input": { "type": "string", "description": "Text to scan for personally identifiable information" }, "language": { "type": "string", "description": 'Language code of the input text (e.g. "en")' }, "entities": { "type": "array", "items": { "type": "string" }, "description": 'PII entity types to scan for (e.g. ["PHONE_NUMBER", "EMAIL_ADDRESS"]). Empty array means nothing is scanned.' }, "detectedStepId": { "type": "string", "description": "Step to transition to if PII is detected (workflow mode)" }, "notDetectedStepId": { "type": "string", "description": "Step to transition to if no PII is detected (workflow mode)" }, "outputLogVariable": { "type": "string", "description": "Variable name to store the raw detection results" } }, "required": ["input", "language", "entities"] },
|
|
1100
1090
|
outputSchema: { "type": "object", "properties": { "detected": { "type": "boolean", "description": "Whether any PII was found in the input text" }, "detections": { "type": "array", "items": { "type": "object", "properties": { "entity_type": { "type": "string", "description": 'PII entity type (e.g. "PHONE_NUMBER", "EMAIL_ADDRESS", "PERSON")' }, "start": { "type": "number", "description": "Start character index in the input text" }, "end": { "type": "number", "description": "End character index in the input text" }, "score": { "type": "number", "description": "Confidence score between 0 and 1" } }, "required": ["entity_type", "start", "end", "score"] }, "description": "List of detected PII entities with type, location, and confidence" } }, "required": ["detected", "detections"] }
|
|
1101
1091
|
},
|
|
1102
|
-
"discordEditMessage": {
|
|
1103
|
-
stepType: "discordEditMessage",
|
|
1104
|
-
description: "Edit a previously sent Discord channel message. Use with the message ID returned by Send Discord Message.",
|
|
1105
|
-
usageNotes: "- Only messages sent by the bot can be edited.\n- The messageId is returned by the Send Discord Message step.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- When editing with an attachment, the new attachment replaces any previous attachments on the message.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).",
|
|
1106
|
-
inputSchema: { "type": "object", "properties": { "botToken": { "type": "string", "description": "Discord bot token for authentication" }, "channelId": { "type": "string", "description": "Discord channel ID containing the message" }, "messageId": { "type": "string", "description": "ID of the message to edit (returned by Send Discord Message)" }, "text": { "type": "string", "description": "New message text to replace the existing content" }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message (replaces any previous attachments)" } }, "required": ["botToken", "channelId", "messageId", "text"] },
|
|
1107
|
-
outputSchema: { "description": "This step does not produce output data." }
|
|
1108
|
-
},
|
|
1109
|
-
"discordSendFollowUp": {
|
|
1110
|
-
stepType: "discordSendFollowUp",
|
|
1111
|
-
description: "Send a follow-up message to a Discord slash command interaction.",
|
|
1112
|
-
usageNotes: "- Requires the applicationId and interactionToken from the Discord trigger variables.\n- Follow-up messages appear as new messages in the channel after the initial response.\n- Returns the sent message ID.\n- Interaction tokens expire after 15 minutes.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).",
|
|
1113
|
-
inputSchema: { "type": "object", "properties": { "applicationId": { "type": "string", "description": "Discord application ID from the bot registration" }, "interactionToken": { "type": "string", "description": "Interaction token provided by the Discord trigger \u2014 expires after 15 minutes" }, "text": { "type": "string", "description": "Message text to send as a follow-up" }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message" } }, "required": ["applicationId", "interactionToken", "text"] },
|
|
1114
|
-
outputSchema: { "type": "object", "properties": { "messageId": { "type": "string", "description": "ID of the sent follow-up message" } }, "required": ["messageId"] }
|
|
1115
|
-
},
|
|
1116
|
-
"discordSendMessage": {
|
|
1117
|
-
stepType: "discordSendMessage",
|
|
1118
|
-
description: "Send a message to Discord \u2014 either edit the loading message or send a new channel message.",
|
|
1119
|
-
usageNotes: '- mode "edit" replaces the loading message (interaction response) with the final result. Uses applicationId and interactionToken from trigger variables. No bot permissions required.\n- mode "send" sends a new message to a channel. Uses botToken and channelId from trigger variables. Returns a messageId that can be used with Edit Discord Message.\n- Optionally attach a file by providing a URL to attachmentUrl. The file is downloaded and uploaded to Discord.\n- URLs in the text are automatically embedded by Discord (link previews for images, videos, etc.).\n- Interaction tokens expire after 15 minutes.',
|
|
1120
|
-
inputSchema: { "type": "object", "properties": { "mode": { "enum": ["edit", "send"], "type": "string", "description": '"edit" replaces the loading message, "send" sends a new channel message' }, "text": { "type": "string", "description": "Message text to send" }, "applicationId": { "type": "string", "description": 'Discord application ID from the bot registration (required for "reply" mode)' }, "interactionToken": { "type": "string", "description": 'Interaction token provided by the Discord trigger \u2014 expires after 15 minutes (required for "reply" mode)' }, "botToken": { "type": "string", "description": 'Discord bot token for authentication (required for "send" mode)' }, "channelId": { "type": "string", "description": 'Discord channel ID to send the message to (required for "send" mode)' }, "attachmentUrl": { "type": "string", "description": "URL of a file to download and attach to the message" } }, "required": ["mode", "text"] },
|
|
1121
|
-
outputSchema: { "type": "object", "properties": { "messageId": { "type": "string", "description": 'ID of the sent Discord message, only present in "send" mode (use with Edit Discord Message)' } } }
|
|
1122
|
-
},
|
|
1123
1092
|
"downloadVideo": {
|
|
1124
1093
|
stepType: "downloadVideo",
|
|
1125
1094
|
description: "Download a video file",
|
|
@@ -1447,13 +1416,9 @@ var stepMetadata = {
|
|
|
1447
1416
|
},
|
|
1448
1417
|
"logic": {
|
|
1449
1418
|
stepType: "logic",
|
|
1450
|
-
description: "
|
|
1451
|
-
usageNotes:
|
|
1452
|
-
|
|
1453
|
-
- In comparison mode, the context is the left operand and each case's condition is the right operand. First matching case wins. Use operator "default" as a fallback.
|
|
1454
|
-
- Requires at least two cases.
|
|
1455
|
-
- Each case can transition to a step in the current workflow (destinationStepId) or jump to another workflow (destinationWorkflowId).`,
|
|
1456
|
-
inputSchema: { "type": "object", "properties": { "mode": { "enum": ["ai", "comparison"], "type": "string", "description": "Evaluation mode: 'ai' for LLM-based, 'comparison' for operator-based. Default: 'ai'" }, "context": { "type": "string", "description": "AI mode: prompt context. Comparison mode: left operand (resolved via variables)." }, "cases": { "type": "array", "items": { "anyOf": [{ "type": "object", "properties": { "id": { "type": "string", "description": "Unique case identifier" }, "condition": { "type": "string", "description": "AI mode: statement to evaluate. Comparison mode: right operand value." }, "operator": { "enum": ["eq", "neq", "gt", "lt", "gte", "lte", "exists", "not_exists", "contains", "not_contains", "default"], "type": "string", "description": "Comparison operator (comparison mode only)" }, "destinationStepId": { "type": "string", "description": "Step to transition to if this case wins (workflow mode only)" }, "destinationWorkflowId": { "type": "string", "description": "Workflow to jump to if this case wins (uses that workflow's initial step)" } }, "required": ["id", "condition"] }, { "type": "string" }] }, "description": "List of conditions to evaluate (objects for managed UIs, strings for code)" }, "modelOverride": { "type": "object", "properties": { "model": { "type": "string", "description": 'Model identifier (e.g. "gpt-4", "claude-3-opus")' }, "temperature": { "type": "number", "description": "Sampling temperature for the model (0-2)" }, "maxResponseTokens": { "type": "number", "description": "Maximum number of tokens in the model's response" }, "ignorePreamble": { "type": "boolean", "description": "Whether to skip the system preamble/instructions" }, "userMessagePreprocessor": { "type": "object", "properties": { "dataSource": { "type": "string", "description": "Data source identifier for the preprocessor" }, "messageTemplate": { "type": "string", "description": "Template string applied to user messages before sending to the model" }, "maxResults": { "type": "number", "description": "Maximum number of results to include from the data source" }, "enabled": { "type": "boolean", "description": "Whether the preprocessor is active" }, "shouldInherit": { "type": "boolean", "description": "Whether child steps should inherit this preprocessor configuration" } }, "description": "Preprocessor applied to user messages before sending to the model" }, "preamble": { "type": "string", "description": "System preamble/instructions for the model" }, "multiModelEnabled": { "type": "boolean", "description": "Whether multi-model candidate generation is enabled" }, "editResponseEnabled": { "type": "boolean", "description": "Whether the user can edit the model's response" }, "config": { "type": "object", "description": "Additional model-specific configuration" } }, "required": ["model", "temperature", "maxResponseTokens"], "description": "Optional model settings override; uses the organization default if not specified (AI mode only)" } }, "required": ["context", "cases"], "description": "Configuration for the router step" },
|
|
1419
|
+
description: "Use an AI model to evaluate which condition from a list is most true, given a context prompt.",
|
|
1420
|
+
usageNotes: '- This is "fuzzy" logic evaluated by an AI model, not computational logic. The model picks the most accurate statement.\n- All possible cases must be specified \u2014 there is no default/fallback case.\n- Requires at least two cases.\n- In workflow mode, transitions to the destinationStepId of the winning case. In direct execution, returns the winning case ID and condition.',
|
|
1421
|
+
inputSchema: { "type": "object", "properties": { "context": { "type": "string", "description": "Prompt text providing context for the AI evaluation" }, "cases": { "type": "array", "items": { "anyOf": [{ "type": "object", "properties": { "id": { "type": "string", "description": "Unique case identifier" }, "condition": { "type": "string", "description": 'The statement to evaluate (e.g., "User selected a dog")' }, "destinationStepId": { "type": "string", "description": "Step to transition to if this case wins (workflow mode only)" } }, "required": ["id", "condition"] }, { "type": "string" }] }, "description": "List of conditions to evaluate (objects for managed UIs, strings for code)" } }, "required": ["context", "cases"], "description": "Configuration for the logic evaluation step" },
|
|
1457
1422
|
outputSchema: { "type": "object", "properties": { "selectedCase": { "type": "number", "description": "The index of the winning case" } }, "required": ["selectedCase"] }
|
|
1458
1423
|
},
|
|
1459
1424
|
"makeDotComRunScenario": {
|