@runtypelabs/cli 2.36.3 → 2.37.0
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/index.js +1316 -696
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -610,7 +610,7 @@ var OAuthManager = class {
|
|
|
610
610
|
// src/auth/api-key-manager.ts
|
|
611
611
|
import { RuntypeApiError } from "@runtypelabs/sdk";
|
|
612
612
|
|
|
613
|
-
// ../shared/dist/chunk-
|
|
613
|
+
// ../shared/dist/chunk-WSSJEVIH.mjs
|
|
614
614
|
var MODEL_FAMILY_PROVIDER_IDS = {
|
|
615
615
|
"claude-fable-5": {
|
|
616
616
|
"anthropic": "claude-fable-5",
|
|
@@ -903,11 +903,18 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
903
903
|
"vercel": "zai/glm-5.2-fast"
|
|
904
904
|
},
|
|
905
905
|
"glm-5-3": {
|
|
906
|
+
"mixlayer": "z-ai/glm-5.3",
|
|
906
907
|
"vercel": "zai/glm-5.3"
|
|
907
908
|
},
|
|
909
|
+
"glm-5-3-fast": {
|
|
910
|
+
"vercel": "zai/glm-5.3-fast"
|
|
911
|
+
},
|
|
908
912
|
"glm-5-3-flash": {
|
|
909
913
|
"vercel": "zai/glm-5.3-flash"
|
|
910
914
|
},
|
|
915
|
+
"glm-5-3-promo-50": {
|
|
916
|
+
"vercel": "zai/glm-5.3-promo-50"
|
|
917
|
+
},
|
|
911
918
|
"glm-5.2": {
|
|
912
919
|
"mixlayer": "z-ai/glm-5.2",
|
|
913
920
|
"vercel": "zai/glm-5.2"
|
|
@@ -916,11 +923,18 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
916
923
|
"vercel": "zai/glm-5.2-fast"
|
|
917
924
|
},
|
|
918
925
|
"glm-5.3": {
|
|
926
|
+
"mixlayer": "z-ai/glm-5.3",
|
|
919
927
|
"vercel": "zai/glm-5.3"
|
|
920
928
|
},
|
|
929
|
+
"glm-5.3-fast": {
|
|
930
|
+
"vercel": "zai/glm-5.3-fast"
|
|
931
|
+
},
|
|
921
932
|
"glm-5.3-flash": {
|
|
922
933
|
"vercel": "zai/glm-5.3-flash"
|
|
923
934
|
},
|
|
935
|
+
"glm-5.3-promo-50": {
|
|
936
|
+
"vercel": "zai/glm-5.3-promo-50"
|
|
937
|
+
},
|
|
924
938
|
"gpt-4-1": {
|
|
925
939
|
"openai": "gpt-4.1",
|
|
926
940
|
"vercel": "openai/gpt-4.1"
|
|
@@ -1194,6 +1208,13 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
1194
1208
|
"gpt-5.6-terra-fast": {
|
|
1195
1209
|
"vercel": "openai/gpt-5.6-terra-fast"
|
|
1196
1210
|
},
|
|
1211
|
+
"gpt-6-astra": {
|
|
1212
|
+
"openai": "gpt-6-astra",
|
|
1213
|
+
"vercel": "openai/gpt-6-astra"
|
|
1214
|
+
},
|
|
1215
|
+
"gpt-6-astra-fast": {
|
|
1216
|
+
"vercel": "openai/gpt-6-astra-fast"
|
|
1217
|
+
},
|
|
1197
1218
|
"gpt-image-1-5": {
|
|
1198
1219
|
"openai": "gpt-image-1.5"
|
|
1199
1220
|
},
|
|
@@ -1379,9 +1400,21 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
1379
1400
|
"ling-3-0-flash": {
|
|
1380
1401
|
"vercel": "inclusionai/ling-3.0-flash"
|
|
1381
1402
|
},
|
|
1403
|
+
"ling-3-0-flash-sante": {
|
|
1404
|
+
"vercel": "inclusionai/ling-3.0-flash-sante"
|
|
1405
|
+
},
|
|
1406
|
+
"ling-3-0-flash-sante-free": {
|
|
1407
|
+
"vercel": "inclusionai/ling-3.0-flash-sante-free"
|
|
1408
|
+
},
|
|
1382
1409
|
"ling-3.0-flash": {
|
|
1383
1410
|
"vercel": "inclusionai/ling-3.0-flash"
|
|
1384
1411
|
},
|
|
1412
|
+
"ling-3.0-flash-sante": {
|
|
1413
|
+
"vercel": "inclusionai/ling-3.0-flash-sante"
|
|
1414
|
+
},
|
|
1415
|
+
"ling-3.0-flash-sante-free": {
|
|
1416
|
+
"vercel": "inclusionai/ling-3.0-flash-sante-free"
|
|
1417
|
+
},
|
|
1385
1418
|
"llama-3.1-70b": {
|
|
1386
1419
|
"vercel": "meta/llama-3.1-70b"
|
|
1387
1420
|
},
|
|
@@ -1499,6 +1532,12 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
1499
1532
|
"muse-spark-1-2-contributor": {
|
|
1500
1533
|
"vercel": "meta/muse-spark-1.2-contributor"
|
|
1501
1534
|
},
|
|
1535
|
+
"muse-spark-1-3": {
|
|
1536
|
+
"vercel": "meta/muse-spark-1.3"
|
|
1537
|
+
},
|
|
1538
|
+
"muse-spark-1-3-contributor": {
|
|
1539
|
+
"vercel": "meta/muse-spark-1.3-contributor"
|
|
1540
|
+
},
|
|
1502
1541
|
"muse-spark-1.1": {
|
|
1503
1542
|
"vercel": "meta/muse-spark-1.1"
|
|
1504
1543
|
},
|
|
@@ -1508,6 +1547,12 @@ var MODEL_FAMILY_PROVIDER_IDS = {
|
|
|
1508
1547
|
"muse-spark-1.2-contributor": {
|
|
1509
1548
|
"vercel": "meta/muse-spark-1.2-contributor"
|
|
1510
1549
|
},
|
|
1550
|
+
"muse-spark-1.3": {
|
|
1551
|
+
"vercel": "meta/muse-spark-1.3"
|
|
1552
|
+
},
|
|
1553
|
+
"muse-spark-1.3-contributor": {
|
|
1554
|
+
"vercel": "meta/muse-spark-1.3-contributor"
|
|
1555
|
+
},
|
|
1511
1556
|
"namazu": {
|
|
1512
1557
|
"vercel": "sakana/namazu"
|
|
1513
1558
|
},
|
|
@@ -2277,376 +2322,6 @@ var CREATOR_TO_PROVIDER = {
|
|
|
2277
2322
|
// Default fallback
|
|
2278
2323
|
};
|
|
2279
2324
|
|
|
2280
|
-
// ../shared/dist/chunk-V4HDWTHW.mjs
|
|
2281
|
-
var BUILTIN_TOOLS_LEAN = [
|
|
2282
|
-
{ "id": "gpt-image-2", "name": "GPT Image 2", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "low", "outputFormat": "png", "background": "auto" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true },
|
|
2283
|
-
{ "id": "dalle", "name": "DALL-E Image Generation", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "standard", "style": "vivid" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "hidden": true, "deprecated": true },
|
|
2284
|
-
{ "id": "openai_web_search", "name": "OpenAI Web Search", "category": "web_search", "providers": ["openai"], "defaultConfig": { "searchContextSize": "medium", "userLocationType": "none" }, "modelCompatibility": [{ "provider": "openai", "models": ["gpt-4o", "gpt-4o-mini", "gpt-5", "gpt-5-mini", "gpt-5.4", "gpt-5.4-mini"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
2285
|
-
{ "id": "anthropic_web_search", "name": "Anthropic Web Search", "category": "web_search", "providers": ["anthropic"], "defaultConfig": { "maxUses": 5 }, "modelCompatibility": [{ "provider": "anthropic", "models": ["claude-opus-4", "claude-sonnet-4", "claude-opus-4-5", "claude-sonnet-4-5", "claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
2286
|
-
{ "id": "anthropic_web_fetch", "name": "Anthropic Web Fetch", "category": "web_search", "providers": ["anthropic"], "defaultConfig": { "maxUses": 1 }, "modelCompatibility": [{ "provider": "anthropic", "models": ["claude-sonnet-4", "claude-sonnet-4-5", "claude-sonnet-4-6"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
2287
|
-
{ "id": "xai_live_search", "name": "xAI Live Search (deprecated)", "category": "web_search", "providers": ["xai"], "defaultConfig": { "mode": "auto", "returnCitations": true, "maxSearchResults": 20 }, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast", "grok-4.1-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true, "hidden": true, "deprecated": true },
|
|
2288
|
-
{ "id": "xai_x_search", "name": "xAI X Search", "category": "web_search", "providers": ["xai"], "defaultConfig": {}, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true },
|
|
2289
|
-
{ "id": "xai_web_search", "name": "xAI Web Search", "category": "web_search", "providers": ["xai"], "defaultConfig": {}, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true },
|
|
2290
|
-
{ "id": "exa", "name": "Exa", "category": "web_search", "providers": ["multi"], "defaultConfig": { "searchType": "auto", "numResults": 5, "text": false, "summary": true, "highlights": true }, "requiresApiKey": true, "executionHint": "platform" },
|
|
2291
|
-
{ "id": "firecrawl", "name": "Firecrawl", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "formats": ["markdown"], "onlyMainContent": true }, "requiresApiKey": true, "executionHint": "platform" },
|
|
2292
|
-
{ "id": "massive", "name": "Massive Web Render", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "format": "markdown" }, "requiresApiKey": true, "executionHint": "platform" },
|
|
2293
|
-
{ "id": "browser:screenshot", "name": "Browser Screenshot", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "screenshotOptions": { "type": "png", "fullPage": false } }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-screenshot"] },
|
|
2294
|
-
{ "id": "browser:content", "name": "Browser Content", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-content"] },
|
|
2295
|
-
{ "id": "browser:scrape", "name": "Browser Scrape", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-scrape"] },
|
|
2296
|
-
{ "id": "browser:json", "name": "Browser JSON", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-json"] },
|
|
2297
|
-
{ "id": "browser:markdown", "name": "Browser Markdown", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-markdown"] },
|
|
2298
|
-
{ "id": "browser:snapshot", "name": "Browser Snapshot", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "screenshotOptions": { "type": "png", "fullPage": false } }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-snapshot"] },
|
|
2299
|
-
{ "id": "browser:links", "name": "Browser Links", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "visibleLinksOnly": false }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-links"] },
|
|
2300
|
-
{ "id": "browser:open", "name": "Browser Open", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-open"] },
|
|
2301
|
-
{ "id": "browser:navigate", "name": "Browser Navigate", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-navigate"] },
|
|
2302
|
-
{ "id": "browser:click", "name": "Browser Click", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-click"] },
|
|
2303
|
-
{ "id": "browser:type", "name": "Browser Type", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-type"] },
|
|
2304
|
-
{ "id": "browser:scroll", "name": "Browser Scroll", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-scroll"] },
|
|
2305
|
-
{ "id": "browser:session-screenshot", "name": "Browser Session Screenshot", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-session-screenshot"] },
|
|
2306
|
-
{ "id": "browser:evaluate", "name": "Browser Evaluate", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-evaluate"] },
|
|
2307
|
-
{ "id": "browser:session-info", "name": "Browser Session Info", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-session-info"] },
|
|
2308
|
-
{ "id": "browser:close", "name": "Browser Close", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-close"] },
|
|
2309
|
-
{ "id": "browser:get_live_view", "name": "Browser Live View", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-get-live-view", "browser:live-view"] },
|
|
2310
|
-
{ "id": "browser:request_handoff", "name": "Browser Handoff to Human", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-request-handoff", "browser:handoff"] },
|
|
2311
|
-
{ "id": "browser:get_handoff_state", "name": "Browser Handoff State", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-get-handoff-state", "browser:handoff-state"] },
|
|
2312
|
-
{ "id": "browser:agent", "name": "Run Browser Agent", "category": "browser", "toolGroup": "browser_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "experimental": true, "aliases": ["browser-agent", "browser:task", "browser-task"] },
|
|
2313
|
-
{ "id": "vector-search", "name": "Semantic Search", "category": "knowledge_retrieval", "providers": ["multi"], "defaultConfig": { "limit": 5, "threshold": 0.3 }, "requiresApiKey": true, "executionHint": "platform", "hasConfigSchema": true },
|
|
2314
|
-
{ "id": "search_runtype_docs", "name": "Search Runtype Docs", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false, "experimental": true },
|
|
2315
|
-
{ "id": "elevenlabs-tts", "name": "ElevenLabs Text-to-Speech", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "voice_id": "rachel", "model_id": "eleven_multilingual_v2", "stability": 0.5, "similarity_boost": 0.75 }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
2316
|
-
{ "id": "elevenlabs-stt", "name": "ElevenLabs Speech-to-Text", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "format": "wav", "model_id": "scribe_v2" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
2317
|
-
{ "id": "emit_artifact_markdown", "name": "Emit Artifact (Markdown)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
2318
|
-
{ "id": "emit_artifact_component", "name": "Emit Artifact (Component)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
2319
|
-
{ "id": "get_current_time", "name": "Get Current Time", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
2320
|
-
{ "id": "convert_time", "name": "Convert Time Between Zones", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
2321
|
-
{ "id": "time_difference", "name": "Time Difference", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
2322
|
-
{ "id": "set_timezone", "name": "Set Conversation Timezone", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
2323
|
-
{ "id": "set_reminder", "name": "Set Reminder", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
2324
|
-
{ "id": "store_asset", "name": "Store Asset", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2325
|
-
{ "id": "publish_page", "name": "Publish Page", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2326
|
-
{ "id": "generate_pdf", "name": "Generate PDF", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2327
|
-
{ "id": "propose_skill", "name": "Propose Skill", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2328
|
-
{ "id": "runtype_record_upsert", "name": "Upsert Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2329
|
-
{ "id": "runtype_record_batch_upsert", "name": "Batch Upsert Records", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2330
|
-
{ "id": "runtype_record_get", "name": "Get Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2331
|
-
{ "id": "runtype_record_list", "name": "List Records", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2332
|
-
{ "id": "runtype_record_delete", "name": "Delete Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2333
|
-
{ "id": "ucp_discover", "name": "UCP Discover", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2334
|
-
{ "id": "ucp_create_checkout", "name": "UCP Create Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2335
|
-
{ "id": "ucp_update_checkout", "name": "UCP Update Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2336
|
-
{ "id": "ucp_get_checkout", "name": "UCP Get Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2337
|
-
{ "id": "ucp_complete_checkout", "name": "UCP Complete Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2338
|
-
{ "id": "ucp_cancel_checkout", "name": "UCP Cancel Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2339
|
-
{ "id": "ucp_create_cart", "name": "UCP Create Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2340
|
-
{ "id": "ucp_get_cart", "name": "UCP Get Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2341
|
-
{ "id": "ucp_update_cart", "name": "UCP Update Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2342
|
-
{ "id": "ucp_cancel_cart", "name": "UCP Cancel Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2343
|
-
{ "id": "ucp_search_catalog", "name": "UCP Search Catalog", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2344
|
-
{ "id": "ucp_lookup_catalog", "name": "UCP Lookup Catalog", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2345
|
-
{ "id": "ucp_get_product", "name": "UCP Get Product", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2346
|
-
{ "id": "ucp_get_order", "name": "UCP Get Order", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2347
|
-
{ "id": "sandbox:exec", "name": "Sandbox Exec", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2348
|
-
{ "id": "sandbox:run_code", "name": "Sandbox Run Code", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2349
|
-
{ "id": "sandbox:write_file", "name": "Sandbox Write File", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2350
|
-
{ "id": "sandbox:read_file", "name": "Sandbox Read File", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2351
|
-
{ "id": "sandbox:expose_port", "name": "Sandbox Expose Port", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2352
|
-
{ "id": "sandbox:git_checkout", "name": "Sandbox Git Checkout", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2353
|
-
{ "id": "sandbox:create", "name": "Sandbox Create", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2354
|
-
{ "id": "sandbox:session_exec", "name": "Sandbox Session Exec", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2355
|
-
{ "id": "sandbox:session_run_code", "name": "Sandbox Session Run Code", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2356
|
-
{ "id": "sandbox:session_write_file", "name": "Sandbox Session Write File", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2357
|
-
{ "id": "sandbox:session_read_file", "name": "Sandbox Session Read File", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2358
|
-
{ "id": "sandbox:session_expose_port", "name": "Sandbox Session Expose Port", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2359
|
-
{ "id": "sandbox:session_git_checkout", "name": "Sandbox Session Git Checkout", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2360
|
-
{ "id": "sandbox:destroy", "name": "Sandbox Destroy", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2361
|
-
{ "id": "bash", "name": "Bash", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2362
|
-
{ "id": "bash_output", "name": "Bash Output", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2363
|
-
{ "id": "kill_process", "name": "Kill Process", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2364
|
-
{ "id": "list_processes", "name": "List Processes", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2365
|
-
{ "id": "read_file", "name": "Read File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2366
|
-
{ "id": "write_file", "name": "Write File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2367
|
-
{ "id": "edit_file", "name": "Edit File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2368
|
-
{ "id": "expose_port", "name": "Expose Port", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
2369
|
-
{ "id": "send_email", "name": "Send Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
2370
|
-
{ "id": "save_memory", "name": "Save to Memory", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2371
|
-
{ "id": "recall_memory", "name": "Recall from Memory", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2372
|
-
{ "id": "memory_summary", "name": "Get Memory Summary", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
2373
|
-
{ "id": "orthogonal:agentmail:create_draft", "idPrefix": "platform", "name": "AgentMail Create Draft", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2374
|
-
{ "id": "orthogonal:agentmail:create_inbox", "idPrefix": "platform", "name": "AgentMail Create Inbox", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2375
|
-
{ "id": "orthogonal:agentmail:reply_message", "idPrefix": "platform", "name": "AgentMail Reply to Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2376
|
-
{ "id": "orthogonal:agentmail:send_message", "idPrefix": "platform", "name": "AgentMail Send Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2377
|
-
{ "id": "orthogonal:andi:search", "idPrefix": "platform", "name": "Andi Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2378
|
-
{ "id": "orthogonal:apollo:companies_search", "idPrefix": "platform", "name": "Apollo Companies Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2379
|
-
{ "id": "orthogonal:apollo:organization_enrich", "idPrefix": "platform", "name": "Apollo Organization Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2380
|
-
{ "id": "orthogonal:apollo:people_match", "idPrefix": "platform", "name": "Apollo People Match", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2381
|
-
{ "id": "orthogonal:apollo:people_search", "idPrefix": "platform", "name": "Apollo People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2382
|
-
{ "id": "orthogonal:aviato:company_enrich", "idPrefix": "platform", "name": "Aviato Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2383
|
-
{ "id": "orthogonal:aviato:company_funding_rounds", "idPrefix": "platform", "name": "Aviato Company Funding Rounds", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2384
|
-
{ "id": "orthogonal:aviato:company_search", "idPrefix": "platform", "name": "Aviato Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2385
|
-
{ "id": "orthogonal:aviato:marketmap_generate", "idPrefix": "platform", "name": "Aviato Market Map Generate", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2386
|
-
{ "id": "orthogonal:aviato:person_enrich", "idPrefix": "platform", "name": "Aviato Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2387
|
-
{ "id": "orthogonal:aviato:person_search", "idPrefix": "platform", "name": "Aviato Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2388
|
-
{ "id": "orthogonal:brand-dev:ai_query", "idPrefix": "platform", "name": "Brand.dev AI Query", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2389
|
-
{ "id": "orthogonal:brand-dev:retrieve", "idPrefix": "platform", "name": "Brand.dev Retrieve", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2390
|
-
{ "id": "orthogonal:brand-dev:retrieve_by_name", "idPrefix": "platform", "name": "Brand.dev Retrieve by Name", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2391
|
-
{ "id": "orthogonal:brand-dev:screenshot", "idPrefix": "platform", "name": "Brand.dev Screenshot", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2392
|
-
{ "id": "orthogonal:contactout:domain_enrich", "idPrefix": "platform", "name": "ContactOut Domain Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2393
|
-
{ "id": "orthogonal:contactout:email_enrich", "idPrefix": "platform", "name": "ContactOut Email Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2394
|
-
{ "id": "orthogonal:contactout:people_enrich", "idPrefix": "platform", "name": "ContactOut People Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2395
|
-
{ "id": "orthogonal:contactout:people_linkedin", "idPrefix": "platform", "name": "ContactOut LinkedIn Lookup", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2396
|
-
{ "id": "orthogonal:coresignal:company_enrich", "idPrefix": "platform", "name": "Coresignal Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2397
|
-
{ "id": "orthogonal:coresignal:company_multi_enrich", "idPrefix": "platform", "name": "Coresignal Company Multi-Source Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2398
|
-
{ "id": "orthogonal:coresignal:employee_collect", "idPrefix": "platform", "name": "Coresignal Employee Collect", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2399
|
-
{ "id": "orthogonal:crustdata:company_search", "idPrefix": "platform", "name": "Crustdata Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2400
|
-
{ "id": "orthogonal:crustdata:identify", "idPrefix": "platform", "name": "Crustdata Identify Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2401
|
-
{ "id": "orthogonal:crustdata:person_enrich", "idPrefix": "platform", "name": "Crustdata Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2402
|
-
{ "id": "orthogonal:crustdata:person_search", "idPrefix": "platform", "name": "Crustdata Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2403
|
-
{ "id": "orthogonal:didit:aml", "idPrefix": "platform", "name": "Didit AML Check", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2404
|
-
{ "id": "orthogonal:didit:database_validation", "idPrefix": "platform", "name": "Didit Database Validation", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2405
|
-
{ "id": "orthogonal:didit:email_send", "idPrefix": "platform", "name": "Didit Send Email", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2406
|
-
{ "id": "orthogonal:didit:phone_send", "idPrefix": "platform", "name": "Didit Send SMS / OTP", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2407
|
-
{ "id": "orthogonal:dome:crypto_prices_binance", "idPrefix": "platform", "name": "Dome Crypto Prices (Binance)", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2408
|
-
{ "id": "orthogonal:dome:kalshi_markets", "idPrefix": "platform", "name": "Dome Kalshi Markets", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2409
|
-
{ "id": "orthogonal:dome:polymarket_markets", "idPrefix": "platform", "name": "Dome Polymarket Markets", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2410
|
-
{ "id": "orthogonal:exa:answer", "idPrefix": "platform", "name": "Exa Answer", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2411
|
-
{ "id": "orthogonal:exa:contents", "idPrefix": "platform", "name": "Exa Contents", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2412
|
-
{ "id": "orthogonal:exa:search", "idPrefix": "platform", "name": "Exa Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2413
|
-
{ "id": "orthogonal:fantastic-jobs:active_ats", "idPrefix": "platform", "name": "Fantastic Jobs ATS Feed", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2414
|
-
{ "id": "orthogonal:fantastic-jobs:active_job_boards", "idPrefix": "platform", "name": "Fantastic Jobs Job Board Feed", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2415
|
-
{ "id": "orthogonal:fiber:company_search", "idPrefix": "platform", "name": "Fiber Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2416
|
-
{ "id": "orthogonal:fiber:email_to_person", "idPrefix": "platform", "name": "Fiber Email to Person", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2417
|
-
{ "id": "orthogonal:fiber:nl_company_search", "idPrefix": "platform", "name": "Fiber Natural Language Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2418
|
-
{ "id": "orthogonal:fiber:nl_people_search", "idPrefix": "platform", "name": "Fiber Natural Language People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2419
|
-
{ "id": "orthogonal:fiber:people_search", "idPrefix": "platform", "name": "Fiber People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2420
|
-
{ "id": "orthogonal:fiber:validate_email", "idPrefix": "platform", "name": "Fiber Validate Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2421
|
-
{ "id": "orthogonal:happenstance:research", "idPrefix": "platform", "name": "Happenstance Person Research", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2422
|
-
{ "id": "orthogonal:happenstance:research_status", "idPrefix": "platform", "name": "Happenstance Research Status", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2423
|
-
{ "id": "orthogonal:hunter:domain_search", "idPrefix": "platform", "name": "Hunter Domain Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2424
|
-
{ "id": "orthogonal:hunter:email_finder", "idPrefix": "platform", "name": "Hunter Email Finder", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2425
|
-
{ "id": "orthogonal:hunter:email_verifier", "idPrefix": "platform", "name": "Hunter Email Verifier", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2426
|
-
{ "id": "orthogonal:influencers-club:creator_enrich_email", "idPrefix": "platform", "name": "Influencers Club Creator Enrich by Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2427
|
-
{ "id": "orthogonal:influencers-club:creator_enrich_handle", "idPrefix": "platform", "name": "Influencers Club Creator Enrich by Handle", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2428
|
-
{ "id": "orthogonal:influencers-club:discovery", "idPrefix": "platform", "name": "Influencers Club Discovery", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2429
|
-
{ "id": "orthogonal:linkup:fetch", "idPrefix": "platform", "name": "LinkUp Fetch", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2430
|
-
{ "id": "orthogonal:linkup:search", "idPrefix": "platform", "name": "LinkUp Search", "category": "web_search", "providers": ["multi"], "defaultConfig": { "depth": "standard" }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2431
|
-
{ "id": "orthogonal:logo:dev_search", "idPrefix": "platform", "name": "Logo.dev Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2432
|
-
{ "id": "orthogonal:notte:scrape", "idPrefix": "platform", "name": "Notte Scrape", "category": "browser", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2433
|
-
{ "id": "orthogonal:notte:scrape_from_html", "idPrefix": "platform", "name": "Notte Scrape from HTML", "category": "browser", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2434
|
-
{ "id": "orthogonal:nyne:company_enrichment", "idPrefix": "platform", "name": "Nyne Company Enrichment", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2435
|
-
{ "id": "orthogonal:nyne:company_search", "idPrefix": "platform", "name": "Nyne Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2436
|
-
{ "id": "orthogonal:nyne:person_enrichment", "idPrefix": "platform", "name": "Nyne Person Enrichment", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2437
|
-
{ "id": "orthogonal:nyne:person_search", "idPrefix": "platform", "name": "Nyne Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2438
|
-
{ "id": "orthogonal:ocean-io:companies_search", "idPrefix": "platform", "name": "Ocean.io Companies Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2439
|
-
{ "id": "orthogonal:ocean-io:company_enrich", "idPrefix": "platform", "name": "Ocean.io Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2440
|
-
{ "id": "orthogonal:ocean-io:people_search", "idPrefix": "platform", "name": "Ocean.io People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2441
|
-
{ "id": "orthogonal:ocean-io:person_enrich", "idPrefix": "platform", "name": "Ocean.io Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2442
|
-
{ "id": "orthogonal:olostep:answers", "idPrefix": "platform", "name": "Olostep Answers", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2443
|
-
{ "id": "orthogonal:olostep:crawls", "idPrefix": "platform", "name": "Olostep Crawl", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2444
|
-
{ "id": "orthogonal:olostep:maps", "idPrefix": "platform", "name": "Olostep Map", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2445
|
-
{ "id": "orthogonal:olostep:scrapes", "idPrefix": "platform", "name": "Olostep Scrapes", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "formats": ["markdown"] }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2446
|
-
{ "id": "orthogonal:openmart:enrich_company", "idPrefix": "platform", "name": "Openmart Enrich Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2447
|
-
{ "id": "orthogonal:openmart:search", "idPrefix": "platform", "name": "Openmart Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2448
|
-
{ "id": "orthogonal:peopledatalabs:company_enrich", "idPrefix": "platform", "name": "People Data Labs Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2449
|
-
{ "id": "orthogonal:peopledatalabs:company_search", "idPrefix": "platform", "name": "People Data Labs Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2450
|
-
{ "id": "orthogonal:peopledatalabs:person_enrich", "idPrefix": "platform", "name": "People Data Labs Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2451
|
-
{ "id": "orthogonal:peopledatalabs:person_search", "idPrefix": "platform", "name": "People Data Labs Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2452
|
-
{ "id": "orthogonal:perplexity:search", "idPrefix": "platform", "name": "Perplexity Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2453
|
-
{ "id": "orthogonal:precip:daily", "idPrefix": "platform", "name": "Precip Daily Weather", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2454
|
-
{ "id": "orthogonal:precip:hourly", "idPrefix": "platform", "name": "Precip Hourly Weather", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2455
|
-
{ "id": "orthogonal:precip:last_48", "idPrefix": "platform", "name": "Precip Last 48h Rainfall", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2456
|
-
{ "id": "orthogonal:predictleads:company", "idPrefix": "platform", "name": "PredictLeads Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2457
|
-
{ "id": "orthogonal:predictleads:discover_companies", "idPrefix": "platform", "name": "PredictLeads Discover Companies", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2458
|
-
{ "id": "orthogonal:predictleads:discover_job_openings", "idPrefix": "platform", "name": "PredictLeads Discover Job Openings", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2459
|
-
{ "id": "orthogonal:predictleads:discover_news", "idPrefix": "platform", "name": "PredictLeads Discover News Events", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2460
|
-
{ "id": "orthogonal:riveter:scrape", "idPrefix": "platform", "name": "Riveter Scrape", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2461
|
-
{ "id": "orthogonal:scrapecreators:facebook_ad_library", "idPrefix": "platform", "name": "ScrapeCreators Facebook Ad Library", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2462
|
-
{ "id": "orthogonal:scrapecreators:google_search", "idPrefix": "platform", "name": "ScrapeCreators Google Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2463
|
-
{ "id": "orthogonal:scrapecreators:instagram_profile", "idPrefix": "platform", "name": "ScrapeCreators Instagram Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2464
|
-
{ "id": "orthogonal:scrapecreators:linkedin_company", "idPrefix": "platform", "name": "ScrapeCreators LinkedIn Company", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2465
|
-
{ "id": "orthogonal:scrapecreators:linkedin_profile", "idPrefix": "platform", "name": "ScrapeCreators LinkedIn Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2466
|
-
{ "id": "orthogonal:scrapecreators:reddit_post_comments", "idPrefix": "platform", "name": "ScrapeCreators Reddit Post Comments", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2467
|
-
{ "id": "orthogonal:scrapecreators:reddit_search", "idPrefix": "platform", "name": "ScrapeCreators Reddit Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2468
|
-
{ "id": "orthogonal:scrapecreators:reddit_subreddit", "idPrefix": "platform", "name": "ScrapeCreators Reddit Subreddit", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2469
|
-
{ "id": "orthogonal:scrapecreators:tiktok_profile", "idPrefix": "platform", "name": "ScrapeCreators TikTok Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2470
|
-
{ "id": "orthogonal:scrapecreators:twitter_profile", "idPrefix": "platform", "name": "ScrapeCreators Twitter/X Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2471
|
-
{ "id": "orthogonal:scrapecreators:twitter_tweets", "idPrefix": "platform", "name": "ScrapeCreators Twitter/X Tweets", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2472
|
-
{ "id": "orthogonal:scrapecreators:youtube_channel", "idPrefix": "platform", "name": "ScrapeCreators YouTube Channel", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2473
|
-
{ "id": "orthogonal:scrapecreators:youtube_video", "idPrefix": "platform", "name": "ScrapeCreators YouTube Video", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2474
|
-
{ "id": "orthogonal:scrapegraphai:extract", "idPrefix": "platform", "name": "ScrapeGraphAI Extract", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2475
|
-
{ "id": "orthogonal:scrapegraphai:scrape", "idPrefix": "platform", "name": "ScrapeGraphAI Scrape", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2476
|
-
{ "id": "orthogonal:scrapegraphai:search", "idPrefix": "platform", "name": "ScrapeGraphAI Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2477
|
-
{ "id": "orthogonal:sixtyfour:enrich_company", "idPrefix": "platform", "name": "Sixtyfour Enrich Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2478
|
-
{ "id": "orthogonal:sixtyfour:enrich_lead", "idPrefix": "platform", "name": "Sixtyfour Enrich Lead", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2479
|
-
{ "id": "orthogonal:sixtyfour:find_email", "idPrefix": "platform", "name": "Sixtyfour Find Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2480
|
-
{ "id": "orthogonal:sixtyfour:find_phone", "idPrefix": "platform", "name": "Sixtyfour Find Phone", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2481
|
-
{ "id": "orthogonal:tavily:extract", "idPrefix": "platform", "name": "Tavily Extract", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2482
|
-
{ "id": "orthogonal:tavily:research", "idPrefix": "platform", "name": "Tavily Research", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2483
|
-
{ "id": "orthogonal:tavily:search", "idPrefix": "platform", "name": "Tavily Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2484
|
-
{ "id": "orthogonal:textbelt:send_sms", "idPrefix": "platform", "name": "Textbelt Send SMS", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2485
|
-
{ "id": "orthogonal:tomba:domain_search", "idPrefix": "platform", "name": "Tomba Domain Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2486
|
-
{ "id": "orthogonal:tomba:email_finder", "idPrefix": "platform", "name": "Tomba Email Finder", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2487
|
-
{ "id": "orthogonal:tomba:email_verifier", "idPrefix": "platform", "name": "Tomba Email Verifier", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2488
|
-
{ "id": "orthogonal:tomba:enrich", "idPrefix": "platform", "name": "Tomba Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
2489
|
-
{ "id": "orthogonal:tomba:linkedin", "idPrefix": "platform", "name": "Tomba LinkedIn Lookup", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" }
|
|
2490
|
-
];
|
|
2491
|
-
|
|
2492
|
-
// ../shared/dist/chunk-AMVH26WM.mjs
|
|
2493
|
-
var BuiltInToolProvider = {
|
|
2494
|
-
OPENAI: "openai",
|
|
2495
|
-
ANTHROPIC: "anthropic",
|
|
2496
|
-
GOOGLE: "google",
|
|
2497
|
-
XAI: "xai",
|
|
2498
|
-
MULTI: "multi"
|
|
2499
|
-
// Available across multiple providers
|
|
2500
|
-
};
|
|
2501
|
-
var BuiltInToolIdPrefix = {
|
|
2502
|
-
BUILTIN: "builtin",
|
|
2503
|
-
PLATFORM: "platform"
|
|
2504
|
-
};
|
|
2505
|
-
|
|
2506
|
-
// ../shared/dist/chunk-OLHNGSFD.mjs
|
|
2507
|
-
function sanitizeToolNameForAiSdk(name) {
|
|
2508
|
-
return name.replace(/[^a-zA-Z0-9_]/g, "_").toLowerCase().replace(/_+/g, "_").replace(/^_|_$/g, "");
|
|
2509
|
-
}
|
|
2510
|
-
function toolNamesCollideForAiSdk(left, right) {
|
|
2511
|
-
return sanitizeToolNameForAiSdk(left) === sanitizeToolNameForAiSdk(right);
|
|
2512
|
-
}
|
|
2513
|
-
var RUNTYPE_SET_STATE_TOOL_NAME = "runtype_set_state";
|
|
2514
|
-
function isReservedRuntypeToolName(name) {
|
|
2515
|
-
return toolNamesCollideForAiSdk(name, RUNTYPE_SET_STATE_TOOL_NAME);
|
|
2516
|
-
}
|
|
2517
|
-
function reservedToolNameMessage(subject, name) {
|
|
2518
|
-
return `${subject} "${name}" collides with the reserved tool name "${RUNTYPE_SET_STATE_TOOL_NAME}" (the agent state write tool). Tool names are lowercased and non-alphanumeric characters become "_" before the model sees them, so every spelling that normalizes to it is reserved with it. "runtype_" is a reserved tool namespace. Rename the tool.`;
|
|
2519
|
-
}
|
|
2520
|
-
var BUILTIN_TOOLS_REGISTRY = BUILTIN_TOOLS_LEAN;
|
|
2521
|
-
function formatSystemToolId(tool) {
|
|
2522
|
-
const prefix = tool.idPrefix ?? BuiltInToolIdPrefix.BUILTIN;
|
|
2523
|
-
return `${prefix}:${tool.id}`;
|
|
2524
|
-
}
|
|
2525
|
-
function getAllBuiltInTools(opts) {
|
|
2526
|
-
return BUILTIN_TOOLS_REGISTRY.filter(
|
|
2527
|
-
(tool) => !tool.hidden && !(opts?.hideExperimental && tool.experimental)
|
|
2528
|
-
);
|
|
2529
|
-
}
|
|
2530
|
-
function getBuiltInToolById(toolId) {
|
|
2531
|
-
const cleanId = toolId.replace(/^(builtin|platform):/, "");
|
|
2532
|
-
return BUILTIN_TOOLS_REGISTRY.find(
|
|
2533
|
-
(tool) => tool.id === cleanId || tool.aliases?.includes(cleanId)
|
|
2534
|
-
);
|
|
2535
|
-
}
|
|
2536
|
-
function isToolCompatibleWithModel(toolId, modelId, provider) {
|
|
2537
|
-
const tool = getBuiltInToolById(toolId);
|
|
2538
|
-
if (!tool) return false;
|
|
2539
|
-
const providerKey = provider;
|
|
2540
|
-
if (!tool.providers.includes(providerKey) && !tool.providers.includes(BuiltInToolProvider.MULTI)) {
|
|
2541
|
-
return false;
|
|
2542
|
-
}
|
|
2543
|
-
if (!tool.modelCompatibility || tool.modelCompatibility.length === 0) {
|
|
2544
|
-
return true;
|
|
2545
|
-
}
|
|
2546
|
-
const compatibility = tool.modelCompatibility.find((c2) => c2.provider === providerKey);
|
|
2547
|
-
if (!compatibility) return true;
|
|
2548
|
-
if (compatibility.models.length === 0) return true;
|
|
2549
|
-
return compatibility.models.some((m2) => modelId.includes(m2));
|
|
2550
|
-
}
|
|
2551
|
-
var DEFAULT_BEDROCK_REGION = "us-east-1";
|
|
2552
|
-
var DEFAULT_VERTEX_LOCATION = "us-central1";
|
|
2553
|
-
var PROVIDER_SECRET_SPECS = [
|
|
2554
|
-
{
|
|
2555
|
-
providerId: "mock",
|
|
2556
|
-
matches: (m2) => m2.startsWith("mock/"),
|
|
2557
|
-
secretNames: []
|
|
2558
|
-
},
|
|
2559
|
-
{
|
|
2560
|
-
providerId: "google-vertex-anthropic",
|
|
2561
|
-
// WHY(docs/why/packages/shared/src.md#must-come-before-google-vertex-shares-vertex-pre): must come before google-vertex (shares vertex prefix) and anthropic (matches */claude-*)
|
|
2562
|
-
matches: (m2) => m2.startsWith("vertex-anthropic/"),
|
|
2563
|
-
secretNames: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_CREDENTIALS"],
|
|
2564
|
-
optionalSettings: [{ name: "GOOGLE_VERTEX_LOCATION", defaultValue: DEFAULT_VERTEX_LOCATION }]
|
|
2565
|
-
},
|
|
2566
|
-
{
|
|
2567
|
-
providerId: "google-vertex",
|
|
2568
|
-
// WHY(docs/why/packages/shared/src.md#must-come-before-google-matches-gemini): must come before google (matches */gemini-*)
|
|
2569
|
-
matches: (m2) => m2.startsWith("vertex/"),
|
|
2570
|
-
secretNames: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_CREDENTIALS"],
|
|
2571
|
-
optionalSettings: [{ name: "GOOGLE_VERTEX_LOCATION", defaultValue: DEFAULT_VERTEX_LOCATION }]
|
|
2572
|
-
},
|
|
2573
|
-
{
|
|
2574
|
-
providerId: "vercel-gateway",
|
|
2575
|
-
// WHY(docs/why/packages/shared/src.md#must-come-before-openai-since-vercel-openai-gpt): must come before openai, since vercel/openai/gpt-4o would otherwise match openai
|
|
2576
|
-
matches: (m2) => m2.startsWith("vercel/") || m2.startsWith("vercel."),
|
|
2577
|
-
secretNames: ["VERCEL_AI_GATEWAY_API_KEY"]
|
|
2578
|
-
},
|
|
2579
|
-
{
|
|
2580
|
-
providerId: "cloudflare-gateway",
|
|
2581
|
-
// WHY(docs/why/packages/shared/src.md#must-come-before-workers-ai-since-cloudflare-pro): must come before workers-ai, since cloudflare/<provider>/<model> needs gateway routing
|
|
2582
|
-
matches: (m2) => m2.startsWith("cloudflare/") || m2.startsWith("cloudflare:"),
|
|
2583
|
-
secretNames: ["CF_ACCOUNT_ID", "CF_AI_GATEWAY_ID"]
|
|
2584
|
-
},
|
|
2585
|
-
{
|
|
2586
|
-
providerId: "bedrock",
|
|
2587
|
-
matches: (m2) => m2.startsWith("bedrock/"),
|
|
2588
|
-
secretNames: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"],
|
|
2589
|
-
optionalSettings: [{ name: "AWS_REGION", defaultValue: DEFAULT_BEDROCK_REGION }]
|
|
2590
|
-
},
|
|
2591
|
-
{
|
|
2592
|
-
providerId: "tinfoil",
|
|
2593
|
-
matches: (m2) => m2.startsWith("tinfoil/") || m2.startsWith("tinfoil:"),
|
|
2594
|
-
secretNames: ["TINFOIL_API_KEY"]
|
|
2595
|
-
},
|
|
2596
|
-
{
|
|
2597
|
-
providerId: "generic-openai",
|
|
2598
|
-
// WHY(docs/why/packages/shared/src.md#must-come-before-openai-since-it-shares-the-open): must come before openai, since it shares the openai substring in its prefix
|
|
2599
|
-
matches: (m2) => m2.startsWith("generic-openai/") || m2.startsWith("generic-openai:"),
|
|
2600
|
-
secretNames: ["GENERIC_OPENAI_API_KEY", "GENERIC_OPENAI_BASE_URL"]
|
|
2601
|
-
},
|
|
2602
|
-
{
|
|
2603
|
-
providerId: "workers-ai",
|
|
2604
|
-
// WHY(docs/why/packages/shared/src.md#uses-a-cf-platform-binding-not-a-secret-so-secre): uses a CF platform binding not a secret, so secretNames is intentionally empty
|
|
2605
|
-
matches: (m2) => m2.startsWith("@cf/") || m2.startsWith("workers-ai/"),
|
|
2606
|
-
secretNames: []
|
|
2607
|
-
},
|
|
2608
|
-
{
|
|
2609
|
-
providerId: "anthropic",
|
|
2610
|
-
matches: (m2) => m2.startsWith("anthropic/") || m2.startsWith("claude-") || m2.includes("/claude-"),
|
|
2611
|
-
secretNames: ["ANTHROPIC_API_KEY"]
|
|
2612
|
-
},
|
|
2613
|
-
{
|
|
2614
|
-
providerId: "openai",
|
|
2615
|
-
matches: (m2) => m2.startsWith("openai/") || m2.startsWith("gpt-") || m2.startsWith("o1-") || m2.startsWith("o3-") || m2.startsWith("o4-") || m2.includes("/gpt-"),
|
|
2616
|
-
secretNames: ["OPENAI_API_KEY"]
|
|
2617
|
-
},
|
|
2618
|
-
{
|
|
2619
|
-
providerId: "google",
|
|
2620
|
-
matches: (m2) => m2.startsWith("google/") || m2.startsWith("gemini-") || m2.includes("/gemini-"),
|
|
2621
|
-
secretNames: ["GOOGLE_API_KEY"]
|
|
2622
|
-
},
|
|
2623
|
-
{
|
|
2624
|
-
providerId: "mixlayer",
|
|
2625
|
-
// WHY(docs/why/packages/shared/src.md#z-ai-is-mixlayers-glm-namespace-distinct-from-ve): z-ai/ is Mixlayer's GLM namespace, distinct from Vercel Gateway's zai/ spelling of the same model
|
|
2626
|
-
matches: (m2) => m2.startsWith("mixlayer/") || m2.startsWith("modelsocket/") || m2.startsWith("qwen/") || m2.startsWith("z-ai/") || m2.startsWith("kimi-") || m2.includes("/kimi-") || /(?:^|\/)qwen3[.-]5-\d+b(?:-a\d+b)?$/i.test(m2),
|
|
2627
|
-
secretNames: ["MIXLAYER_API_KEY"]
|
|
2628
|
-
},
|
|
2629
|
-
{
|
|
2630
|
-
providerId: "xai",
|
|
2631
|
-
matches: (m2) => m2.startsWith("grok-") || m2.startsWith("xai/"),
|
|
2632
|
-
secretNames: ["XAI_API_KEY"]
|
|
2633
|
-
}
|
|
2634
|
-
];
|
|
2635
|
-
function resolveModelSecretNames(model) {
|
|
2636
|
-
const lower = model.toLowerCase();
|
|
2637
|
-
for (const spec of PROVIDER_SECRET_SPECS) {
|
|
2638
|
-
if (spec.matches(lower)) return [...spec.secretNames];
|
|
2639
|
-
}
|
|
2640
|
-
return [];
|
|
2641
|
-
}
|
|
2642
|
-
function resolveModelOptionalSettings(model) {
|
|
2643
|
-
const lower = model.toLowerCase();
|
|
2644
|
-
for (const spec of PROVIDER_SECRET_SPECS) {
|
|
2645
|
-
if (spec.matches(lower)) return [...spec.optionalSettings ?? []];
|
|
2646
|
-
}
|
|
2647
|
-
return [];
|
|
2648
|
-
}
|
|
2649
|
-
|
|
2650
2325
|
// ../../node_modules/.pnpm/zod@4.5.2/node_modules/zod/v4/classic/external.js
|
|
2651
2326
|
var external_exports = {};
|
|
2652
2327
|
__export(external_exports, {
|
|
@@ -6008,18 +5683,18 @@ var $ZodArray = /* @__PURE__ */ $constructor("$ZodArray", (inst, def) => {
|
|
|
6008
5683
|
};
|
|
6009
5684
|
});
|
|
6010
5685
|
function handlePropertyResult(result, final, key, input2, optin, optout) {
|
|
6011
|
-
const
|
|
5686
|
+
const isPresent2 = key in input2;
|
|
6012
5687
|
const isOptionalOut = optout === "optional";
|
|
6013
|
-
if (!
|
|
5688
|
+
if (!isPresent2 && isOptionalOut && optin === "optional") {
|
|
6014
5689
|
return;
|
|
6015
5690
|
}
|
|
6016
5691
|
if (result.issues.length) {
|
|
6017
|
-
if (optin !== void 0 && isOptionalOut && !
|
|
5692
|
+
if (optin !== void 0 && isOptionalOut && !isPresent2) {
|
|
6018
5693
|
return;
|
|
6019
5694
|
}
|
|
6020
5695
|
final.issues.push(...prefixIssues(key, result.issues));
|
|
6021
5696
|
}
|
|
6022
|
-
if (!
|
|
5697
|
+
if (!isPresent2 && optin === void 0) {
|
|
6023
5698
|
if (!result.issues.length) {
|
|
6024
5699
|
final.issues.push({
|
|
6025
5700
|
code: "invalid_type",
|
|
@@ -6031,7 +5706,7 @@ function handlePropertyResult(result, final, key, input2, optin, optout) {
|
|
|
6031
5706
|
return;
|
|
6032
5707
|
}
|
|
6033
5708
|
if (result.value === void 0) {
|
|
6034
|
-
if (
|
|
5709
|
+
if (isPresent2) {
|
|
6035
5710
|
final.value[key] = void 0;
|
|
6036
5711
|
}
|
|
6037
5712
|
} else {
|
|
@@ -6205,7 +5880,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
|
|
|
6205
5880
|
continue;
|
|
6206
5881
|
const id = ids[key];
|
|
6207
5882
|
const k2 = typeof key === "symbol" ? `syms[${syms.indexOf(key)}]` : esc(key);
|
|
6208
|
-
const
|
|
5883
|
+
const isPresent2 = `${k2} in input`;
|
|
6209
5884
|
const schema = shape[key];
|
|
6210
5885
|
const optin = schema?._zod?.optin;
|
|
6211
5886
|
const isOptionalIn = optin !== void 0;
|
|
@@ -6214,7 +5889,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
|
|
|
6214
5889
|
if (isOptionalIn && isOptionalOut) {
|
|
6215
5890
|
const assign = optin === "optional" ? `${id}_present` : `${id}.value !== undefined || ${id}_present`;
|
|
6216
5891
|
doc.write(`
|
|
6217
|
-
const ${id}_present = ${
|
|
5892
|
+
const ${id}_present = ${isPresent2};
|
|
6218
5893
|
if (!${id}.issues.length || ${id}_present) {
|
|
6219
5894
|
if (${id}.issues.length) {${prefixStr(id, k2)}
|
|
6220
5895
|
}
|
|
@@ -6227,7 +5902,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
|
|
|
6227
5902
|
`);
|
|
6228
5903
|
} else if (!isOptionalIn) {
|
|
6229
5904
|
doc.write(`
|
|
6230
|
-
const ${id}_present = ${
|
|
5905
|
+
const ${id}_present = ${isPresent2};
|
|
6231
5906
|
if (${id}.issues.length) {${prefixStr(id, k2)}
|
|
6232
5907
|
}
|
|
6233
5908
|
if (!${id}_present && !${id}.issues.length) {
|
|
@@ -6250,7 +5925,7 @@ var $ZodObjectJIT = /* @__PURE__ */ $constructor("$ZodObjectJIT", (inst, def) =>
|
|
|
6250
5925
|
}
|
|
6251
5926
|
|
|
6252
5927
|
if (${id}.value === undefined) {
|
|
6253
|
-
if (${
|
|
5928
|
+
if (${isPresent2}) {
|
|
6254
5929
|
newResult[${k2}] = undefined;
|
|
6255
5930
|
}
|
|
6256
5931
|
} else {
|
|
@@ -6710,13 +6385,13 @@ function handleTupleResult(result, final, index) {
|
|
|
6710
6385
|
function handleTupleResults(itemResults, final, items, input2, optoutStart) {
|
|
6711
6386
|
for (let i = 0; i < items.length; i++) {
|
|
6712
6387
|
const r = itemResults[i];
|
|
6713
|
-
const
|
|
6714
|
-
if (!
|
|
6388
|
+
const isPresent2 = i < input2.length;
|
|
6389
|
+
if (!isPresent2 && i >= optoutStart && items[i]._zod.optin === "optional") {
|
|
6715
6390
|
final.value.length = i;
|
|
6716
6391
|
break;
|
|
6717
6392
|
}
|
|
6718
6393
|
if (r.issues.length) {
|
|
6719
|
-
if (!
|
|
6394
|
+
if (!isPresent2 && i >= optoutStart) {
|
|
6720
6395
|
final.value.length = i;
|
|
6721
6396
|
break;
|
|
6722
6397
|
}
|
|
@@ -21363,6 +21038,645 @@ function date4(params) {
|
|
|
21363
21038
|
return _coercedDate(ZodDate, params);
|
|
21364
21039
|
}
|
|
21365
21040
|
|
|
21041
|
+
// ../shared/dist/chunk-ADH7VBQB.mjs
|
|
21042
|
+
var BUILTIN_TOOLS_LEAN = [
|
|
21043
|
+
{ "id": "gpt-image-2", "name": "GPT Image 2", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "low", "outputFormat": "png", "background": "auto" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true },
|
|
21044
|
+
{ "id": "dalle", "name": "DALL-E Image Generation", "category": "image_generation", "providers": ["multi"], "defaultConfig": { "size": "1024x1024", "quality": "standard", "style": "vivid" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "hidden": true, "deprecated": true },
|
|
21045
|
+
{ "id": "openai_web_search", "name": "OpenAI Web Search", "category": "web_search", "providers": ["openai"], "defaultConfig": { "searchContextSize": "medium", "userLocationType": "none" }, "modelCompatibility": [{ "provider": "openai", "models": ["gpt-4o", "gpt-4o-mini", "gpt-5", "gpt-5-mini", "gpt-5.4", "gpt-5.4-mini"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
21046
|
+
{ "id": "anthropic_web_search", "name": "Anthropic Web Search", "category": "web_search", "providers": ["anthropic"], "defaultConfig": { "maxUses": 5 }, "modelCompatibility": [{ "provider": "anthropic", "models": ["claude-opus-4", "claude-sonnet-4", "claude-opus-4-5", "claude-sonnet-4-5", "claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
21047
|
+
{ "id": "anthropic_web_fetch", "name": "Anthropic Web Fetch", "category": "web_search", "providers": ["anthropic"], "defaultConfig": { "maxUses": 1 }, "modelCompatibility": [{ "provider": "anthropic", "models": ["claude-sonnet-4", "claude-sonnet-4-5", "claude-sonnet-4-6"] }], "requiresApiKey": true, "executionHint": "provider" },
|
|
21048
|
+
{ "id": "xai_live_search", "name": "xAI Live Search (deprecated)", "category": "web_search", "providers": ["xai"], "defaultConfig": { "mode": "auto", "returnCitations": true, "maxSearchResults": 20 }, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast", "grok-4.1-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true, "hidden": true, "deprecated": true },
|
|
21049
|
+
{ "id": "xai_x_search", "name": "xAI X Search", "category": "web_search", "providers": ["xai"], "defaultConfig": {}, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true },
|
|
21050
|
+
{ "id": "xai_web_search", "name": "xAI Web Search", "category": "web_search", "providers": ["xai"], "defaultConfig": {}, "modelCompatibility": [{ "provider": "xai", "models": ["grok-4", "grok-4-fast"] }], "requiresApiKey": true, "executionHint": "provider", "platformKeySupport": true },
|
|
21051
|
+
{ "id": "exa", "name": "Exa", "category": "web_search", "providers": ["multi"], "defaultConfig": { "searchType": "auto", "numResults": 5, "text": false, "summary": true, "highlights": true }, "requiresApiKey": true, "executionHint": "platform" },
|
|
21052
|
+
{ "id": "firecrawl", "name": "Firecrawl", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "formats": ["markdown"], "onlyMainContent": true }, "requiresApiKey": true, "executionHint": "platform" },
|
|
21053
|
+
{ "id": "massive", "name": "Massive Web Render", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "format": "markdown" }, "requiresApiKey": true, "executionHint": "platform" },
|
|
21054
|
+
{ "id": "browser:screenshot", "name": "Browser Screenshot", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "screenshotOptions": { "type": "png", "fullPage": false } }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-screenshot"] },
|
|
21055
|
+
{ "id": "browser:content", "name": "Browser Content", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-content"] },
|
|
21056
|
+
{ "id": "browser:scrape", "name": "Browser Scrape", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-scrape"] },
|
|
21057
|
+
{ "id": "browser:json", "name": "Browser JSON", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-json"] },
|
|
21058
|
+
{ "id": "browser:markdown", "name": "Browser Markdown", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-markdown"] },
|
|
21059
|
+
{ "id": "browser:snapshot", "name": "Browser Snapshot", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "screenshotOptions": { "type": "png", "fullPage": false } }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-snapshot"] },
|
|
21060
|
+
{ "id": "browser:links", "name": "Browser Links", "category": "browser", "toolGroup": "browser_fetch", "providers": ["multi"], "defaultConfig": { "visibleLinksOnly": false }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-links"] },
|
|
21061
|
+
{ "id": "browser:open", "name": "Browser Open", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-open"] },
|
|
21062
|
+
{ "id": "browser:navigate", "name": "Browser Navigate", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-navigate"] },
|
|
21063
|
+
{ "id": "browser:click", "name": "Browser Click", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-click"] },
|
|
21064
|
+
{ "id": "browser:type", "name": "Browser Type", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-type"] },
|
|
21065
|
+
{ "id": "browser:scroll", "name": "Browser Scroll", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-scroll"] },
|
|
21066
|
+
{ "id": "browser:session-screenshot", "name": "Browser Session Screenshot", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-session-screenshot"] },
|
|
21067
|
+
{ "id": "browser:evaluate", "name": "Browser Evaluate", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-evaluate"] },
|
|
21068
|
+
{ "id": "browser:session-info", "name": "Browser Session Info", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-session-info"] },
|
|
21069
|
+
{ "id": "browser:close", "name": "Browser Close", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-close"] },
|
|
21070
|
+
{ "id": "browser:get_live_view", "name": "Browser Live View", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-get-live-view", "browser:live-view"] },
|
|
21071
|
+
{ "id": "browser:request_handoff", "name": "Browser Handoff to Human", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-request-handoff", "browser:handoff"] },
|
|
21072
|
+
{ "id": "browser:get_handoff_state", "name": "Browser Handoff State", "category": "browser", "toolGroup": "browser_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "aliases": ["browser-get-handoff-state", "browser:handoff-state"] },
|
|
21073
|
+
{ "id": "browser:agent", "name": "Run Browser Agent", "category": "browser", "toolGroup": "browser_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "experimental": true, "aliases": ["browser-agent", "browser:task", "browser-task"] },
|
|
21074
|
+
{ "id": "vector-search", "name": "Semantic Search", "category": "knowledge_retrieval", "providers": ["multi"], "defaultConfig": { "limit": 5, "threshold": 0.3 }, "requiresApiKey": true, "executionHint": "platform", "hasConfigSchema": true },
|
|
21075
|
+
{ "id": "search_runtype_docs", "name": "Search Runtype Docs", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false, "experimental": true },
|
|
21076
|
+
{ "id": "elevenlabs-tts", "name": "ElevenLabs Text-to-Speech", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "voice_id": "rachel", "model_id": "eleven_multilingual_v2", "stability": 0.5, "similarity_boost": 0.75 }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
21077
|
+
{ "id": "elevenlabs-stt", "name": "ElevenLabs Speech-to-Text", "category": "text_to_speech", "toolGroup": "voice", "providers": ["multi"], "defaultConfig": { "format": "wav", "model_id": "scribe_v2" }, "requiresApiKey": true, "executionHint": "platform", "platformKeySupport": true, "marginPercent": 20, "hidden": true },
|
|
21078
|
+
{ "id": "emit_artifact_markdown", "name": "Emit Artifact (Markdown)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
21079
|
+
{ "id": "emit_artifact_component", "name": "Emit Artifact (Component)", "category": "artifact", "providers": ["multi"], "executionHint": "platform" },
|
|
21080
|
+
{ "id": "get_current_time", "name": "Get Current Time", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
21081
|
+
{ "id": "convert_time", "name": "Convert Time Between Zones", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
21082
|
+
{ "id": "time_difference", "name": "Time Difference", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
21083
|
+
{ "id": "set_timezone", "name": "Set Conversation Timezone", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
21084
|
+
{ "id": "set_reminder", "name": "Set Reminder", "category": "temporal", "toolGroup": "temporal", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform" },
|
|
21085
|
+
{ "id": "store_asset", "name": "Store Asset", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21086
|
+
{ "id": "publish_page", "name": "Publish Page", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21087
|
+
{ "id": "generate_pdf", "name": "Generate PDF", "category": "file_operations", "toolGroup": "file_outputs", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21088
|
+
{ "id": "propose_skill", "name": "Propose Skill", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21089
|
+
{ "id": "runtype_record_upsert", "name": "Upsert Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21090
|
+
{ "id": "runtype_record_batch_upsert", "name": "Batch Upsert Records", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21091
|
+
{ "id": "runtype_record_get", "name": "Get Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21092
|
+
{ "id": "runtype_record_list", "name": "List Records", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21093
|
+
{ "id": "runtype_record_delete", "name": "Delete Record", "category": "data_management", "toolGroup": "record_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21094
|
+
{ "id": "ucp_discover", "name": "UCP Discover", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21095
|
+
{ "id": "ucp_create_checkout", "name": "UCP Create Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21096
|
+
{ "id": "ucp_update_checkout", "name": "UCP Update Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21097
|
+
{ "id": "ucp_get_checkout", "name": "UCP Get Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21098
|
+
{ "id": "ucp_complete_checkout", "name": "UCP Complete Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21099
|
+
{ "id": "ucp_cancel_checkout", "name": "UCP Cancel Checkout", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21100
|
+
{ "id": "ucp_create_cart", "name": "UCP Create Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21101
|
+
{ "id": "ucp_get_cart", "name": "UCP Get Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21102
|
+
{ "id": "ucp_update_cart", "name": "UCP Update Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21103
|
+
{ "id": "ucp_cancel_cart", "name": "UCP Cancel Cart", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21104
|
+
{ "id": "ucp_search_catalog", "name": "UCP Search Catalog", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21105
|
+
{ "id": "ucp_lookup_catalog", "name": "UCP Lookup Catalog", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21106
|
+
{ "id": "ucp_get_product", "name": "UCP Get Product", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21107
|
+
{ "id": "ucp_get_order", "name": "UCP Get Order", "category": "commerce", "toolGroup": "ucp_commerce", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21108
|
+
{ "id": "sandbox:exec", "name": "Sandbox Exec", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21109
|
+
{ "id": "sandbox:run_code", "name": "Sandbox Run Code", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21110
|
+
{ "id": "sandbox:write_file", "name": "Sandbox Write File", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21111
|
+
{ "id": "sandbox:read_file", "name": "Sandbox Read File", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21112
|
+
{ "id": "sandbox:expose_port", "name": "Sandbox Expose Port", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21113
|
+
{ "id": "sandbox:git_checkout", "name": "Sandbox Git Checkout", "category": "sandbox", "toolGroup": "sandbox_use", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21114
|
+
{ "id": "sandbox:create", "name": "Sandbox Create", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21115
|
+
{ "id": "sandbox:session_exec", "name": "Sandbox Session Exec", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21116
|
+
{ "id": "sandbox:session_run_code", "name": "Sandbox Session Run Code", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21117
|
+
{ "id": "sandbox:session_write_file", "name": "Sandbox Session Write File", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21118
|
+
{ "id": "sandbox:session_read_file", "name": "Sandbox Session Read File", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21119
|
+
{ "id": "sandbox:session_expose_port", "name": "Sandbox Session Expose Port", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21120
|
+
{ "id": "sandbox:session_git_checkout", "name": "Sandbox Session Git Checkout", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21121
|
+
{ "id": "sandbox:destroy", "name": "Sandbox Destroy", "category": "sandbox", "toolGroup": "sandbox_session", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21122
|
+
{ "id": "bash", "name": "Bash", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21123
|
+
{ "id": "bash_output", "name": "Bash Output", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21124
|
+
{ "id": "kill_process", "name": "Kill Process", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21125
|
+
{ "id": "list_processes", "name": "List Processes", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21126
|
+
{ "id": "read_file", "name": "Read File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21127
|
+
{ "id": "write_file", "name": "Write File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21128
|
+
{ "id": "edit_file", "name": "Edit File", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21129
|
+
{ "id": "expose_port", "name": "Expose Port", "category": "sandbox", "toolGroup": "sandbox_agent", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "hidden": true },
|
|
21130
|
+
{ "id": "send_email", "name": "Send Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true },
|
|
21131
|
+
{ "id": "save_memory", "name": "Save to Memory", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21132
|
+
{ "id": "recall_memory", "name": "Recall from Memory", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21133
|
+
{ "id": "memory_summary", "name": "Get Memory Summary", "category": "data_management", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": false },
|
|
21134
|
+
{ "id": "orthogonal:agentmail:create_draft", "idPrefix": "platform", "name": "AgentMail Create Draft", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21135
|
+
{ "id": "orthogonal:agentmail:create_inbox", "idPrefix": "platform", "name": "AgentMail Create Inbox", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21136
|
+
{ "id": "orthogonal:agentmail:reply_message", "idPrefix": "platform", "name": "AgentMail Reply to Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21137
|
+
{ "id": "orthogonal:agentmail:send_message", "idPrefix": "platform", "name": "AgentMail Send Email", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21138
|
+
{ "id": "orthogonal:andi:search", "idPrefix": "platform", "name": "Andi Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21139
|
+
{ "id": "orthogonal:apollo:companies_search", "idPrefix": "platform", "name": "Apollo Companies Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21140
|
+
{ "id": "orthogonal:apollo:organization_enrich", "idPrefix": "platform", "name": "Apollo Organization Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21141
|
+
{ "id": "orthogonal:apollo:people_match", "idPrefix": "platform", "name": "Apollo People Match", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21142
|
+
{ "id": "orthogonal:apollo:people_search", "idPrefix": "platform", "name": "Apollo People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21143
|
+
{ "id": "orthogonal:aviato:company_enrich", "idPrefix": "platform", "name": "Aviato Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21144
|
+
{ "id": "orthogonal:aviato:company_funding_rounds", "idPrefix": "platform", "name": "Aviato Company Funding Rounds", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21145
|
+
{ "id": "orthogonal:aviato:company_search", "idPrefix": "platform", "name": "Aviato Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21146
|
+
{ "id": "orthogonal:aviato:marketmap_generate", "idPrefix": "platform", "name": "Aviato Market Map Generate", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21147
|
+
{ "id": "orthogonal:aviato:person_enrich", "idPrefix": "platform", "name": "Aviato Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21148
|
+
{ "id": "orthogonal:aviato:person_search", "idPrefix": "platform", "name": "Aviato Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21149
|
+
{ "id": "orthogonal:brand-dev:ai_query", "idPrefix": "platform", "name": "Brand.dev AI Query", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21150
|
+
{ "id": "orthogonal:brand-dev:retrieve", "idPrefix": "platform", "name": "Brand.dev Retrieve", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21151
|
+
{ "id": "orthogonal:brand-dev:retrieve_by_name", "idPrefix": "platform", "name": "Brand.dev Retrieve by Name", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21152
|
+
{ "id": "orthogonal:brand-dev:screenshot", "idPrefix": "platform", "name": "Brand.dev Screenshot", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21153
|
+
{ "id": "orthogonal:contactout:domain_enrich", "idPrefix": "platform", "name": "ContactOut Domain Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21154
|
+
{ "id": "orthogonal:contactout:email_enrich", "idPrefix": "platform", "name": "ContactOut Email Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21155
|
+
{ "id": "orthogonal:contactout:people_enrich", "idPrefix": "platform", "name": "ContactOut People Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21156
|
+
{ "id": "orthogonal:contactout:people_linkedin", "idPrefix": "platform", "name": "ContactOut LinkedIn Lookup", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21157
|
+
{ "id": "orthogonal:coresignal:company_enrich", "idPrefix": "platform", "name": "Coresignal Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21158
|
+
{ "id": "orthogonal:coresignal:company_multi_enrich", "idPrefix": "platform", "name": "Coresignal Company Multi-Source Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21159
|
+
{ "id": "orthogonal:coresignal:employee_collect", "idPrefix": "platform", "name": "Coresignal Employee Collect", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21160
|
+
{ "id": "orthogonal:crustdata:company_search", "idPrefix": "platform", "name": "Crustdata Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21161
|
+
{ "id": "orthogonal:crustdata:identify", "idPrefix": "platform", "name": "Crustdata Identify Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21162
|
+
{ "id": "orthogonal:crustdata:person_enrich", "idPrefix": "platform", "name": "Crustdata Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21163
|
+
{ "id": "orthogonal:crustdata:person_search", "idPrefix": "platform", "name": "Crustdata Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21164
|
+
{ "id": "orthogonal:didit:aml", "idPrefix": "platform", "name": "Didit AML Check", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21165
|
+
{ "id": "orthogonal:didit:database_validation", "idPrefix": "platform", "name": "Didit Database Validation", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21166
|
+
{ "id": "orthogonal:didit:email_send", "idPrefix": "platform", "name": "Didit Send Email", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21167
|
+
{ "id": "orthogonal:didit:phone_send", "idPrefix": "platform", "name": "Didit Send SMS / OTP", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21168
|
+
{ "id": "orthogonal:dome:crypto_prices_binance", "idPrefix": "platform", "name": "Dome Crypto Prices (Binance)", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21169
|
+
{ "id": "orthogonal:dome:kalshi_markets", "idPrefix": "platform", "name": "Dome Kalshi Markets", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21170
|
+
{ "id": "orthogonal:dome:polymarket_markets", "idPrefix": "platform", "name": "Dome Polymarket Markets", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21171
|
+
{ "id": "orthogonal:exa:answer", "idPrefix": "platform", "name": "Exa Answer", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21172
|
+
{ "id": "orthogonal:exa:contents", "idPrefix": "platform", "name": "Exa Contents", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21173
|
+
{ "id": "orthogonal:exa:search", "idPrefix": "platform", "name": "Exa Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21174
|
+
{ "id": "orthogonal:fantastic-jobs:active_ats", "idPrefix": "platform", "name": "Fantastic Jobs ATS Feed", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21175
|
+
{ "id": "orthogonal:fantastic-jobs:active_job_boards", "idPrefix": "platform", "name": "Fantastic Jobs Job Board Feed", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21176
|
+
{ "id": "orthogonal:fiber:company_search", "idPrefix": "platform", "name": "Fiber Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21177
|
+
{ "id": "orthogonal:fiber:email_to_person", "idPrefix": "platform", "name": "Fiber Email to Person", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21178
|
+
{ "id": "orthogonal:fiber:nl_company_search", "idPrefix": "platform", "name": "Fiber Natural Language Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21179
|
+
{ "id": "orthogonal:fiber:nl_people_search", "idPrefix": "platform", "name": "Fiber Natural Language People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21180
|
+
{ "id": "orthogonal:fiber:people_search", "idPrefix": "platform", "name": "Fiber People Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21181
|
+
{ "id": "orthogonal:fiber:validate_email", "idPrefix": "platform", "name": "Fiber Validate Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21182
|
+
{ "id": "orthogonal:financial-datasets:financial_metrics", "idPrefix": "platform", "name": "Financial Datasets Financial Metrics", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21183
|
+
{ "id": "orthogonal:financial-datasets:financial_statements", "idPrefix": "platform", "name": "Financial Datasets Financial Statements", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21184
|
+
{ "id": "orthogonal:financial-datasets:insider_trades", "idPrefix": "platform", "name": "Financial Datasets Insider Trades", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21185
|
+
{ "id": "orthogonal:financial-datasets:news", "idPrefix": "platform", "name": "Financial Datasets Company News", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21186
|
+
{ "id": "orthogonal:financial-datasets:price_snapshot", "idPrefix": "platform", "name": "Financial Datasets Price Snapshot", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21187
|
+
{ "id": "orthogonal:financial-datasets:prices", "idPrefix": "platform", "name": "Financial Datasets Stock Prices", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21188
|
+
{ "id": "orthogonal:financial-datasets:sec_filings", "idPrefix": "platform", "name": "Financial Datasets SEC Filings", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21189
|
+
{ "id": "orthogonal:happenstance:research", "idPrefix": "platform", "name": "Happenstance Person Research", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21190
|
+
{ "id": "orthogonal:happenstance:research_status", "idPrefix": "platform", "name": "Happenstance Research Status", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21191
|
+
{ "id": "orthogonal:hunter:domain_search", "idPrefix": "platform", "name": "Hunter Domain Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21192
|
+
{ "id": "orthogonal:hunter:email_finder", "idPrefix": "platform", "name": "Hunter Email Finder", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21193
|
+
{ "id": "orthogonal:hunter:email_verifier", "idPrefix": "platform", "name": "Hunter Email Verifier", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21194
|
+
{ "id": "orthogonal:influencers-club:creator_enrich_email", "idPrefix": "platform", "name": "Influencers Club Creator Enrich by Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21195
|
+
{ "id": "orthogonal:influencers-club:creator_enrich_handle", "idPrefix": "platform", "name": "Influencers Club Creator Enrich by Handle", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21196
|
+
{ "id": "orthogonal:influencers-club:discovery", "idPrefix": "platform", "name": "Influencers Club Discovery", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21197
|
+
{ "id": "orthogonal:leadsforge:lookalike_preview", "idPrefix": "platform", "name": "Leadsforge Lookalike Preview", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21198
|
+
{ "id": "orthogonal:leadsforge:lookalike_search", "idPrefix": "platform", "name": "Leadsforge Lookalike Companies", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21199
|
+
{ "id": "orthogonal:linkup:fetch", "idPrefix": "platform", "name": "LinkUp Fetch", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21200
|
+
{ "id": "orthogonal:linkup:search", "idPrefix": "platform", "name": "LinkUp Search", "category": "web_search", "providers": ["multi"], "defaultConfig": { "depth": "standard" }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21201
|
+
{ "id": "orthogonal:logo:dev_search", "idPrefix": "platform", "name": "Logo.dev Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21202
|
+
{ "id": "orthogonal:notte:scrape", "idPrefix": "platform", "name": "Notte Scrape", "category": "browser", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21203
|
+
{ "id": "orthogonal:notte:scrape_from_html", "idPrefix": "platform", "name": "Notte Scrape from HTML", "category": "browser", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21204
|
+
{ "id": "orthogonal:nyne:company_enrichment", "idPrefix": "platform", "name": "Nyne Company Enrichment", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21205
|
+
{ "id": "orthogonal:nyne:company_search", "idPrefix": "platform", "name": "Nyne Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21206
|
+
{ "id": "orthogonal:nyne:person_enrichment", "idPrefix": "platform", "name": "Nyne Person Enrichment", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21207
|
+
{ "id": "orthogonal:nyne:person_search", "idPrefix": "platform", "name": "Nyne Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21208
|
+
{ "id": "orthogonal:olostep:answers", "idPrefix": "platform", "name": "Olostep Answers", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21209
|
+
{ "id": "orthogonal:olostep:crawls", "idPrefix": "platform", "name": "Olostep Crawl", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21210
|
+
{ "id": "orthogonal:olostep:maps", "idPrefix": "platform", "name": "Olostep Map", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21211
|
+
{ "id": "orthogonal:olostep:scrapes", "idPrefix": "platform", "name": "Olostep Scrapes", "category": "web_scraping", "providers": ["multi"], "defaultConfig": { "formats": ["markdown"] }, "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21212
|
+
{ "id": "orthogonal:openmart:enrich_company", "idPrefix": "platform", "name": "Openmart Enrich Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21213
|
+
{ "id": "orthogonal:openmart:search", "idPrefix": "platform", "name": "Openmart Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21214
|
+
{ "id": "orthogonal:peopledatalabs:company_enrich", "idPrefix": "platform", "name": "People Data Labs Company Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21215
|
+
{ "id": "orthogonal:peopledatalabs:company_search", "idPrefix": "platform", "name": "People Data Labs Company Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21216
|
+
{ "id": "orthogonal:peopledatalabs:person_enrich", "idPrefix": "platform", "name": "People Data Labs Person Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21217
|
+
{ "id": "orthogonal:peopledatalabs:person_search", "idPrefix": "platform", "name": "People Data Labs Person Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21218
|
+
{ "id": "orthogonal:perplexity:search", "idPrefix": "platform", "name": "Perplexity Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21219
|
+
{ "id": "orthogonal:precip:daily", "idPrefix": "platform", "name": "Precip Daily Weather", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21220
|
+
{ "id": "orthogonal:precip:hourly", "idPrefix": "platform", "name": "Precip Hourly Weather", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21221
|
+
{ "id": "orthogonal:precip:last_48", "idPrefix": "platform", "name": "Precip Last 48h Rainfall", "category": "third_party_api", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21222
|
+
{ "id": "orthogonal:predictleads:company", "idPrefix": "platform", "name": "PredictLeads Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21223
|
+
{ "id": "orthogonal:predictleads:discover_companies", "idPrefix": "platform", "name": "PredictLeads Discover Companies", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21224
|
+
{ "id": "orthogonal:predictleads:discover_job_openings", "idPrefix": "platform", "name": "PredictLeads Discover Job Openings", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21225
|
+
{ "id": "orthogonal:predictleads:discover_news", "idPrefix": "platform", "name": "PredictLeads Discover News Events", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21226
|
+
{ "id": "orthogonal:riveter:scrape", "idPrefix": "platform", "name": "Riveter Scrape", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21227
|
+
{ "id": "orthogonal:scrapecreators:facebook_ad_library", "idPrefix": "platform", "name": "ScrapeCreators Facebook Ad Library", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21228
|
+
{ "id": "orthogonal:scrapecreators:google_search", "idPrefix": "platform", "name": "ScrapeCreators Google Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21229
|
+
{ "id": "orthogonal:scrapecreators:instagram_profile", "idPrefix": "platform", "name": "ScrapeCreators Instagram Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21230
|
+
{ "id": "orthogonal:scrapecreators:linkedin_company", "idPrefix": "platform", "name": "ScrapeCreators LinkedIn Company", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21231
|
+
{ "id": "orthogonal:scrapecreators:linkedin_profile", "idPrefix": "platform", "name": "ScrapeCreators LinkedIn Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21232
|
+
{ "id": "orthogonal:scrapecreators:reddit_post_comments", "idPrefix": "platform", "name": "ScrapeCreators Reddit Post Comments", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21233
|
+
{ "id": "orthogonal:scrapecreators:reddit_search", "idPrefix": "platform", "name": "ScrapeCreators Reddit Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21234
|
+
{ "id": "orthogonal:scrapecreators:reddit_subreddit", "idPrefix": "platform", "name": "ScrapeCreators Reddit Subreddit", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21235
|
+
{ "id": "orthogonal:scrapecreators:tiktok_profile", "idPrefix": "platform", "name": "ScrapeCreators TikTok Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21236
|
+
{ "id": "orthogonal:scrapecreators:twitter_profile", "idPrefix": "platform", "name": "ScrapeCreators Twitter/X Profile", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21237
|
+
{ "id": "orthogonal:scrapecreators:twitter_tweets", "idPrefix": "platform", "name": "ScrapeCreators Twitter/X Tweets", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21238
|
+
{ "id": "orthogonal:scrapecreators:youtube_channel", "idPrefix": "platform", "name": "ScrapeCreators YouTube Channel", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21239
|
+
{ "id": "orthogonal:scrapecreators:youtube_video", "idPrefix": "platform", "name": "ScrapeCreators YouTube Video", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21240
|
+
{ "id": "orthogonal:scrapegraphai:extract", "idPrefix": "platform", "name": "ScrapeGraphAI Extract", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21241
|
+
{ "id": "orthogonal:scrapegraphai:scrape", "idPrefix": "platform", "name": "ScrapeGraphAI Scrape", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21242
|
+
{ "id": "orthogonal:scrapegraphai:search", "idPrefix": "platform", "name": "ScrapeGraphAI Search", "category": "web_scraping", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21243
|
+
{ "id": "orthogonal:sixtyfour:enrich_company", "idPrefix": "platform", "name": "Sixtyfour Enrich Company", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21244
|
+
{ "id": "orthogonal:sixtyfour:enrich_lead", "idPrefix": "platform", "name": "Sixtyfour Enrich Lead", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21245
|
+
{ "id": "orthogonal:sixtyfour:find_email", "idPrefix": "platform", "name": "Sixtyfour Find Email", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21246
|
+
{ "id": "orthogonal:sixtyfour:find_phone", "idPrefix": "platform", "name": "Sixtyfour Find Phone", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21247
|
+
{ "id": "orthogonal:tavily:extract", "idPrefix": "platform", "name": "Tavily Extract", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21248
|
+
{ "id": "orthogonal:tavily:research", "idPrefix": "platform", "name": "Tavily Research", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21249
|
+
{ "id": "orthogonal:tavily:search", "idPrefix": "platform", "name": "Tavily Search", "category": "web_search", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21250
|
+
{ "id": "orthogonal:textbelt:send_sms", "idPrefix": "platform", "name": "Textbelt Send SMS", "category": "messaging", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21251
|
+
{ "id": "orthogonal:tomba:domain_search", "idPrefix": "platform", "name": "Tomba Domain Search", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21252
|
+
{ "id": "orthogonal:tomba:email_finder", "idPrefix": "platform", "name": "Tomba Email Finder", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21253
|
+
{ "id": "orthogonal:tomba:email_verifier", "idPrefix": "platform", "name": "Tomba Email Verifier", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21254
|
+
{ "id": "orthogonal:tomba:enrich", "idPrefix": "platform", "name": "Tomba Enrich", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" },
|
|
21255
|
+
{ "id": "orthogonal:tomba:linkedin", "idPrefix": "platform", "name": "Tomba LinkedIn Lookup", "category": "knowledge_retrieval", "providers": ["multi"], "requiresApiKey": false, "executionHint": "platform", "platformKeySupport": true, "managedExecutionKind": "orthogonal" }
|
|
21256
|
+
];
|
|
21257
|
+
var MCPServerCategory = {
|
|
21258
|
+
COMMUNICATION: "communication",
|
|
21259
|
+
PRODUCTIVITY: "productivity",
|
|
21260
|
+
DEVELOPMENT: "development",
|
|
21261
|
+
PROJECT_MANAGEMENT: "project_management"
|
|
21262
|
+
};
|
|
21263
|
+
var subagentExecutionModeSchema = external_exports.enum(["attached", "detached"]);
|
|
21264
|
+
var subagentNotificationModeSchema = external_exports.enum(["none", "narrate", "react"]);
|
|
21265
|
+
var subagentExecutionConfigSchema = external_exports.object({
|
|
21266
|
+
/** Attached is the backwards-compatible default. */
|
|
21267
|
+
mode: subagentExecutionModeSchema.optional(),
|
|
21268
|
+
/** Detached tools default to `narrate`; attached tools ignore this field. */
|
|
21269
|
+
notify: subagentNotificationModeSchema.optional(),
|
|
21270
|
+
/** Absolute background-run wall-clock ceiling. */
|
|
21271
|
+
maxBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional(),
|
|
21272
|
+
/** Optional resetting silence budget after observable progress. */
|
|
21273
|
+
noProgressBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional()
|
|
21274
|
+
});
|
|
21275
|
+
var subagentRunHandleSchema = external_exports.object({
|
|
21276
|
+
kind: external_exports.literal("subagent_run"),
|
|
21277
|
+
runId: external_exports.string(),
|
|
21278
|
+
/**
|
|
21279
|
+
* Which durable lane the child executes on. `'durable'` is the ADR 0020
|
|
21280
|
+
* session DO; `'runtype'` is the in-process detached-run DO.
|
|
21281
|
+
*/
|
|
21282
|
+
agentType: external_exports.enum(["runtype", "claude_managed", "durable"]),
|
|
21283
|
+
status: external_exports.enum(["queued", "running"]),
|
|
21284
|
+
startedAt: external_exports.string()
|
|
21285
|
+
});
|
|
21286
|
+
var agentSubagentConfigSchema = external_exports.object({
|
|
21287
|
+
/**
|
|
21288
|
+
* Pool of tool IDs the parent is permitted to grant to ad-hoc subagents.
|
|
21289
|
+
* Supports exact IDs, wildcards (`mcp:*`, `builtin:*`, `platform:*`), and
|
|
21290
|
+
* runtime-tool names. Must be a SUBSET of the parent's resolved tools —
|
|
21291
|
+
* validated at dispatch (no privilege escalation).
|
|
21292
|
+
*/
|
|
21293
|
+
toolPool: external_exports.array(external_exports.string()),
|
|
21294
|
+
/** Default for spawned subagent loops. Default 5. */
|
|
21295
|
+
defaultMaxTurns: external_exports.number().optional(),
|
|
21296
|
+
/** Hard cap a spawned subagent can request. Default 10. */
|
|
21297
|
+
maxTurnsLimit: external_exports.number().optional(),
|
|
21298
|
+
/** Hard ceiling on total spawns per top-level parent invocation. Default 5. */
|
|
21299
|
+
maxSpawnsPerRun: external_exports.number().optional(),
|
|
21300
|
+
/** Default model for spawned subagents. Defaults to parent's model. */
|
|
21301
|
+
defaultModel: external_exports.string().optional(),
|
|
21302
|
+
/**
|
|
21303
|
+
* Whether a spawned subagent can itself spawn subagents. Default `false`
|
|
21304
|
+
* (Anthropic-aligned). Even when `true`, MAX_NESTED_DEPTH still bounds the
|
|
21305
|
+
* recursion tree.
|
|
21306
|
+
*/
|
|
21307
|
+
allowNesting: external_exports.boolean().optional(),
|
|
21308
|
+
/** Default per-spawn timeout. Default 300_000 (5 min). */
|
|
21309
|
+
defaultTimeoutMs: external_exports.number().optional(),
|
|
21310
|
+
/** Execution modes the model may request. Default `['attached']`. */
|
|
21311
|
+
executionModes: external_exports.array(subagentExecutionModeSchema).min(1).optional(),
|
|
21312
|
+
/** Default mode when the model omits `executionMode`. */
|
|
21313
|
+
defaultExecutionMode: subagentExecutionModeSchema.optional(),
|
|
21314
|
+
/** Default completion policy for detached dynamic children. */
|
|
21315
|
+
defaultNotify: subagentNotificationModeSchema.optional(),
|
|
21316
|
+
/** Absolute wall-clock ceiling for detached dynamic children. */
|
|
21317
|
+
detachedMaxBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional(),
|
|
21318
|
+
/** Optional resetting silence budget for detached dynamic children. */
|
|
21319
|
+
detachedNoProgressBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional()
|
|
21320
|
+
});
|
|
21321
|
+
var codeModeConfigSchema = external_exports.object({
|
|
21322
|
+
/** Tool IDs available in the sandbox (subset of agent's tools, supports wildcards like `mcp:*`) */
|
|
21323
|
+
toolPool: external_exports.array(external_exports.string()),
|
|
21324
|
+
/** Optional custom description prefix for the synthesized tool */
|
|
21325
|
+
description: external_exports.string().optional(),
|
|
21326
|
+
/** Sandbox execution timeout in ms (default 60000) */
|
|
21327
|
+
timeoutMs: external_exports.number().optional()
|
|
21328
|
+
});
|
|
21329
|
+
var toolLimitSchema = external_exports.object({
|
|
21330
|
+
maxCalls: external_exports.number().optional(),
|
|
21331
|
+
required: external_exports.boolean().optional()
|
|
21332
|
+
});
|
|
21333
|
+
var approvalConfigSchema = external_exports.object({
|
|
21334
|
+
/** Tools that require user approval before execution.
|
|
21335
|
+
* string[]: tool names/patterns ("send_email", "mcp:*", "builtin:*")
|
|
21336
|
+
* true: all tools require approval
|
|
21337
|
+
* false/undefined: no approval required (default) */
|
|
21338
|
+
require: external_exports.union([external_exports.array(external_exports.string()), external_exports.boolean()]).optional(),
|
|
21339
|
+
/** Timeout in ms for approval response (default: 300000 = 5 min) */
|
|
21340
|
+
timeout: external_exports.number().optional(),
|
|
21341
|
+
/** Whether to ask the model for a per-call justification on approval-gated
|
|
21342
|
+
* tools by injecting a reserved optional `_approvalReason` string into the
|
|
21343
|
+
* model-visible parameters schema. The value is stripped before the tool
|
|
21344
|
+
* executes and surfaced to the approver. Default: true (opt out with false). */
|
|
21345
|
+
requestReason: external_exports.boolean().optional(),
|
|
21346
|
+
// WHY(docs/why/packages/shared/src.md#persistent-always-choices-at-the-human-approval): Persistent "always" choices at the human approval prompt; user-facing options, not auto-behavior.
|
|
21347
|
+
/**
|
|
21348
|
+
* Persistent "always" choices at the human approval prompt; user-facing options, not auto-behavior.
|
|
21349
|
+
* Keys mirror the grant decision enum (alwaysAllow -> 'allow', alwaysDeny -> 'deny').
|
|
21350
|
+
* Default: both off; this is the sole control for persisted approval grants (no Flagship flag).
|
|
21351
|
+
* See docs/features/planning/2026-06-13-cross-session-always-allow-approval-grants.md
|
|
21352
|
+
*/
|
|
21353
|
+
choices: external_exports.object({
|
|
21354
|
+
alwaysAllow: external_exports.boolean().optional(),
|
|
21355
|
+
alwaysDeny: external_exports.boolean().optional()
|
|
21356
|
+
}).optional()
|
|
21357
|
+
});
|
|
21358
|
+
var toolSearchConfigSchema = external_exports.object({
|
|
21359
|
+
/** Explicit opt-in/out. When omitted, auto-activates if tool count >= threshold. */
|
|
21360
|
+
enabled: external_exports.boolean().optional(),
|
|
21361
|
+
/** Tool count at which search activates (default: 20) */
|
|
21362
|
+
threshold: external_exports.number().optional(),
|
|
21363
|
+
/** Tool names or IDs that should always be in the hot set */
|
|
21364
|
+
alwaysLoaded: external_exports.array(external_exports.string()).optional()
|
|
21365
|
+
});
|
|
21366
|
+
var agentToolsConfigSchema = external_exports.object({
|
|
21367
|
+
/** IDs of tools to enable (builtin:*, mcp:*, platform:*, platform:orthogonal:*, custom tool IDs) */
|
|
21368
|
+
toolIds: external_exports.array(external_exports.string()).optional(),
|
|
21369
|
+
/** Per-tool parameter configurations, keyed by tool ID */
|
|
21370
|
+
toolConfigs: external_exports.record(external_exports.string(), external_exports.custom()).optional(),
|
|
21371
|
+
/** Inline tool definitions (no DB storage needed) */
|
|
21372
|
+
runtimeTools: external_exports.array(external_exports.custom()).optional(),
|
|
21373
|
+
/** Runtime MCP server connections */
|
|
21374
|
+
mcpServers: external_exports.array(external_exports.custom()).optional(),
|
|
21375
|
+
/** Maximum tool calls per execution (renamed from maxTurns in agents) */
|
|
21376
|
+
maxToolCalls: external_exports.number().optional(),
|
|
21377
|
+
/** Tool calling strategy */
|
|
21378
|
+
toolCallStrategy: external_exports.enum(["auto", "required", "none"]).optional(),
|
|
21379
|
+
/** Per-tool call limits */
|
|
21380
|
+
perToolLimits: external_exports.record(external_exports.string(), toolLimitSchema).optional(),
|
|
21381
|
+
/** Human-in-the-loop approval configuration */
|
|
21382
|
+
approval: approvalConfigSchema.optional(),
|
|
21383
|
+
/**
|
|
21384
|
+
* Opt-in: enables agent-driven dynamic subagent spawning. When set, the
|
|
21385
|
+
* prompt-step tool-prep layer synthesizes a `spawn_subagent` tool into the
|
|
21386
|
+
* AI-SDK tool list with a dynamically-generated description listing the
|
|
21387
|
+
* tools the parent's LLM can grant. See `AgentSubagentConfig` for fields.
|
|
21388
|
+
*/
|
|
21389
|
+
subagentConfig: agentSubagentConfigSchema.optional(),
|
|
21390
|
+
/**
|
|
21391
|
+
* Opt-in: enables a synthesized `code_mode` tool that lets agents execute
|
|
21392
|
+
* JavaScript code in a sandboxed V8 isolate with access to a subset of
|
|
21393
|
+
* the agent's tools. The LLM writes code that calls tool functions
|
|
21394
|
+
* deterministically instead of making individual tool calls.
|
|
21395
|
+
*/
|
|
21396
|
+
codeModeConfig: codeModeConfigSchema.optional(),
|
|
21397
|
+
// WHY(docs/why/packages/shared/src.md#tool-search-configuration-when-total-tool-count): Tool search configuration; when total tool count exceeds the threshold, deferred loading activates.
|
|
21398
|
+
/**
|
|
21399
|
+
* Tool search configuration; when total tool count exceeds the threshold, deferred loading activates.
|
|
21400
|
+
* Only a hot set of tools is sent to the model each turn; tool_search lets it discover more on demand.
|
|
21401
|
+
* Auto-activates when omitted and total tool count >= 20.
|
|
21402
|
+
* Set enabled: false to force all tools to be sent regardless of count.
|
|
21403
|
+
*/
|
|
21404
|
+
toolSearch: toolSearchConfigSchema.optional()
|
|
21405
|
+
});
|
|
21406
|
+
var CreateToolSchema = external_exports.object({
|
|
21407
|
+
name: external_exports.string().min(1).max(100),
|
|
21408
|
+
description: external_exports.string().min(1).max(500),
|
|
21409
|
+
toolType: external_exports.enum(["flow", "custom", "external", "graphql", "mcp", "local", "subagent"]),
|
|
21410
|
+
parametersSchema: external_exports.record(external_exports.string(), external_exports.any()),
|
|
21411
|
+
config: external_exports.record(external_exports.string(), external_exports.any())
|
|
21412
|
+
});
|
|
21413
|
+
var ExecuteToolSchema = external_exports.object({
|
|
21414
|
+
// WHY(docs/why/packages/shared/src.md#toolid-is-optional-here-so-mcp-sdk-callers-sendi): toolId is optional here so MCP/SDK callers sending only {parameters} aren't rejected at validation
|
|
21415
|
+
toolId: external_exports.string().optional(),
|
|
21416
|
+
parameters: external_exports.record(external_exports.string(), external_exports.any()),
|
|
21417
|
+
context: external_exports.object({
|
|
21418
|
+
flowExecutionId: external_exports.string().optional(),
|
|
21419
|
+
stepId: external_exports.string().optional(),
|
|
21420
|
+
userId: external_exports.string()
|
|
21421
|
+
}).optional()
|
|
21422
|
+
});
|
|
21423
|
+
function parseToolInstanceId(toolId) {
|
|
21424
|
+
const hashIndex = toolId.indexOf("#");
|
|
21425
|
+
if (hashIndex === -1) {
|
|
21426
|
+
return { baseId: toolId, instanceId: "" };
|
|
21427
|
+
}
|
|
21428
|
+
return {
|
|
21429
|
+
baseId: toolId.substring(0, hashIndex),
|
|
21430
|
+
instanceId: toolId.substring(hashIndex + 1)
|
|
21431
|
+
};
|
|
21432
|
+
}
|
|
21433
|
+
function isBuiltInToolId(toolId) {
|
|
21434
|
+
return toolId.startsWith("builtin:");
|
|
21435
|
+
}
|
|
21436
|
+
function isPlatformToolId(toolId) {
|
|
21437
|
+
return toolId.startsWith("platform:");
|
|
21438
|
+
}
|
|
21439
|
+
var INTEGRATION_SERVER_IDS = /* @__PURE__ */ new Set([
|
|
21440
|
+
"slack",
|
|
21441
|
+
"google",
|
|
21442
|
+
"linear",
|
|
21443
|
+
"github",
|
|
21444
|
+
"telegram",
|
|
21445
|
+
"imessage",
|
|
21446
|
+
"granola"
|
|
21447
|
+
]);
|
|
21448
|
+
function isBuiltInIntegrationToolId(toolId) {
|
|
21449
|
+
if (!toolId.startsWith("builtin:")) return false;
|
|
21450
|
+
const { baseId } = parseToolInstanceId(toolId);
|
|
21451
|
+
const parts = baseId.split(":");
|
|
21452
|
+
if (parts.length < 3) return false;
|
|
21453
|
+
return INTEGRATION_SERVER_IDS.has(parts[1]);
|
|
21454
|
+
}
|
|
21455
|
+
function isMCPToolId(toolId) {
|
|
21456
|
+
return toolId.startsWith("mcp:");
|
|
21457
|
+
}
|
|
21458
|
+
var NAMED_TOOL_REF_PREFIX = "tool:";
|
|
21459
|
+
function isNamedToolRef(toolId) {
|
|
21460
|
+
return toolId.startsWith(NAMED_TOOL_REF_PREFIX) && toolId.length > NAMED_TOOL_REF_PREFIX.length;
|
|
21461
|
+
}
|
|
21462
|
+
function parseNamedToolRef(toolId) {
|
|
21463
|
+
if (!isNamedToolRef(toolId)) return null;
|
|
21464
|
+
return { name: toolId.slice(NAMED_TOOL_REF_PREFIX.length) };
|
|
21465
|
+
}
|
|
21466
|
+
function separateToolIds(toolIds) {
|
|
21467
|
+
const builtInToolIds = [];
|
|
21468
|
+
const platformToolIds = [];
|
|
21469
|
+
const integrationToolIds = [];
|
|
21470
|
+
const mcpToolIds = [];
|
|
21471
|
+
const dataConnectionToolIds = [];
|
|
21472
|
+
const namedToolIds = [];
|
|
21473
|
+
const customToolIds = [];
|
|
21474
|
+
for (const toolId of toolIds) {
|
|
21475
|
+
if (isDataConnectionToolId(toolId)) {
|
|
21476
|
+
dataConnectionToolIds.push(toolId);
|
|
21477
|
+
} else if (isPlatformToolId(toolId)) {
|
|
21478
|
+
platformToolIds.push(toolId);
|
|
21479
|
+
} else if (isBuiltInIntegrationToolId(toolId)) {
|
|
21480
|
+
integrationToolIds.push(toolId);
|
|
21481
|
+
} else if (isBuiltInToolId(toolId)) {
|
|
21482
|
+
builtInToolIds.push(toolId);
|
|
21483
|
+
} else if (isMCPToolId(toolId)) {
|
|
21484
|
+
mcpToolIds.push(toolId);
|
|
21485
|
+
} else if (isNamedToolRef(toolId)) {
|
|
21486
|
+
namedToolIds.push(toolId);
|
|
21487
|
+
} else {
|
|
21488
|
+
customToolIds.push(toolId);
|
|
21489
|
+
}
|
|
21490
|
+
}
|
|
21491
|
+
return {
|
|
21492
|
+
builtInToolIds,
|
|
21493
|
+
platformToolIds,
|
|
21494
|
+
integrationToolIds,
|
|
21495
|
+
mcpToolIds,
|
|
21496
|
+
dataConnectionToolIds,
|
|
21497
|
+
namedToolIds,
|
|
21498
|
+
customToolIds
|
|
21499
|
+
};
|
|
21500
|
+
}
|
|
21501
|
+
function isDataConnectionToolId(toolId) {
|
|
21502
|
+
return toolId.startsWith("dc:");
|
|
21503
|
+
}
|
|
21504
|
+
|
|
21505
|
+
// ../shared/dist/chunk-AMVH26WM.mjs
|
|
21506
|
+
var BuiltInToolProvider = {
|
|
21507
|
+
OPENAI: "openai",
|
|
21508
|
+
ANTHROPIC: "anthropic",
|
|
21509
|
+
GOOGLE: "google",
|
|
21510
|
+
XAI: "xai",
|
|
21511
|
+
MULTI: "multi"
|
|
21512
|
+
// Available across multiple providers
|
|
21513
|
+
};
|
|
21514
|
+
var BuiltInToolIdPrefix = {
|
|
21515
|
+
BUILTIN: "builtin",
|
|
21516
|
+
PLATFORM: "platform"
|
|
21517
|
+
};
|
|
21518
|
+
|
|
21519
|
+
// ../shared/dist/chunk-3XRATUCG.mjs
|
|
21520
|
+
function sanitizeToolNameForAiSdk(name) {
|
|
21521
|
+
return name.replace(/[^a-zA-Z0-9_]/g, "_").toLowerCase().replace(/_+/g, "_").replace(/^_|_$/g, "");
|
|
21522
|
+
}
|
|
21523
|
+
function toolNamesCollideForAiSdk(left, right) {
|
|
21524
|
+
return sanitizeToolNameForAiSdk(left) === sanitizeToolNameForAiSdk(right);
|
|
21525
|
+
}
|
|
21526
|
+
var RUNTYPE_SET_STATE_TOOL_NAME = "runtype_set_state";
|
|
21527
|
+
function isReservedRuntypeToolName(name) {
|
|
21528
|
+
return toolNamesCollideForAiSdk(name, RUNTYPE_SET_STATE_TOOL_NAME);
|
|
21529
|
+
}
|
|
21530
|
+
function reservedToolNameMessage(subject, name) {
|
|
21531
|
+
return `${subject} "${name}" collides with the reserved tool name "${RUNTYPE_SET_STATE_TOOL_NAME}" (the agent state write tool). Tool names are lowercased and non-alphanumeric characters become "_" before the model sees them, so every spelling that normalizes to it is reserved with it. "runtype_" is a reserved tool namespace. Rename the tool.`;
|
|
21532
|
+
}
|
|
21533
|
+
var BUILTIN_TOOLS_REGISTRY = BUILTIN_TOOLS_LEAN;
|
|
21534
|
+
function formatSystemToolId(tool) {
|
|
21535
|
+
const prefix = tool.idPrefix ?? BuiltInToolIdPrefix.BUILTIN;
|
|
21536
|
+
return `${prefix}:${tool.id}`;
|
|
21537
|
+
}
|
|
21538
|
+
function getAllBuiltInTools(opts) {
|
|
21539
|
+
return BUILTIN_TOOLS_REGISTRY.filter(
|
|
21540
|
+
(tool) => !tool.hidden && !(opts?.hideExperimental && tool.experimental)
|
|
21541
|
+
);
|
|
21542
|
+
}
|
|
21543
|
+
function getBuiltInToolById(toolId) {
|
|
21544
|
+
const cleanId = toolId.replace(/^(builtin|platform):/, "");
|
|
21545
|
+
return BUILTIN_TOOLS_REGISTRY.find(
|
|
21546
|
+
(tool) => tool.id === cleanId || tool.aliases?.includes(cleanId)
|
|
21547
|
+
);
|
|
21548
|
+
}
|
|
21549
|
+
function isToolCompatibleWithModel(toolId, modelId, provider) {
|
|
21550
|
+
const tool = getBuiltInToolById(toolId);
|
|
21551
|
+
if (!tool) return false;
|
|
21552
|
+
const providerKey = provider;
|
|
21553
|
+
if (!tool.providers.includes(providerKey) && !tool.providers.includes(BuiltInToolProvider.MULTI)) {
|
|
21554
|
+
return false;
|
|
21555
|
+
}
|
|
21556
|
+
if (!tool.modelCompatibility || tool.modelCompatibility.length === 0) {
|
|
21557
|
+
return true;
|
|
21558
|
+
}
|
|
21559
|
+
const compatibility = tool.modelCompatibility.find((c2) => c2.provider === providerKey);
|
|
21560
|
+
if (!compatibility) return true;
|
|
21561
|
+
if (compatibility.models.length === 0) return true;
|
|
21562
|
+
return compatibility.models.some((m2) => modelId.includes(m2));
|
|
21563
|
+
}
|
|
21564
|
+
var DIRECT_PROVIDER_TOOL_OWNERS = /* @__PURE__ */ new Set([
|
|
21565
|
+
"anthropic",
|
|
21566
|
+
"openai",
|
|
21567
|
+
"xai"
|
|
21568
|
+
]);
|
|
21569
|
+
function resolveDirectProviderToolOwner(toolId) {
|
|
21570
|
+
const entry = getBuiltInToolById(parseToolInstanceId(toolId).baseId);
|
|
21571
|
+
if (entry?.executionHint !== "provider") return void 0;
|
|
21572
|
+
const owner = entry.providers?.[0];
|
|
21573
|
+
return owner && DIRECT_PROVIDER_TOOL_OWNERS.has(owner) ? owner : void 0;
|
|
21574
|
+
}
|
|
21575
|
+
var DEFAULT_BEDROCK_REGION = "us-east-1";
|
|
21576
|
+
var DEFAULT_VERTEX_LOCATION = "us-central1";
|
|
21577
|
+
var PROVIDER_SECRET_SPECS = [
|
|
21578
|
+
{
|
|
21579
|
+
providerId: "mock",
|
|
21580
|
+
matches: (m2) => m2.startsWith("mock/"),
|
|
21581
|
+
secretNames: []
|
|
21582
|
+
},
|
|
21583
|
+
{
|
|
21584
|
+
providerId: "google-vertex-anthropic",
|
|
21585
|
+
// WHY(docs/why/packages/shared/src.md#must-come-before-google-vertex-shares-vertex-pre): must come before google-vertex (shares vertex prefix) and anthropic (matches */claude-*)
|
|
21586
|
+
matches: (m2) => m2.startsWith("vertex-anthropic/"),
|
|
21587
|
+
secretNames: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_CREDENTIALS"],
|
|
21588
|
+
optionalSettings: [{ name: "GOOGLE_VERTEX_LOCATION", defaultValue: DEFAULT_VERTEX_LOCATION }]
|
|
21589
|
+
},
|
|
21590
|
+
{
|
|
21591
|
+
providerId: "google-vertex",
|
|
21592
|
+
// WHY(docs/why/packages/shared/src.md#must-come-before-google-matches-gemini): must come before google (matches */gemini-*)
|
|
21593
|
+
matches: (m2) => m2.startsWith("vertex/"),
|
|
21594
|
+
secretNames: ["GOOGLE_VERTEX_PROJECT", "GOOGLE_VERTEX_CREDENTIALS"],
|
|
21595
|
+
optionalSettings: [{ name: "GOOGLE_VERTEX_LOCATION", defaultValue: DEFAULT_VERTEX_LOCATION }]
|
|
21596
|
+
},
|
|
21597
|
+
{
|
|
21598
|
+
providerId: "vercel-gateway",
|
|
21599
|
+
// WHY(docs/why/packages/shared/src.md#must-come-before-openai-since-vercel-openai-gpt): must come before openai, since vercel/openai/gpt-4o would otherwise match openai
|
|
21600
|
+
matches: (m2) => m2.startsWith("vercel/") || m2.startsWith("vercel."),
|
|
21601
|
+
secretNames: ["VERCEL_AI_GATEWAY_API_KEY"]
|
|
21602
|
+
},
|
|
21603
|
+
{
|
|
21604
|
+
providerId: "cloudflare-gateway",
|
|
21605
|
+
// WHY(docs/why/packages/shared/src.md#must-come-before-workers-ai-since-cloudflare-pro): must come before workers-ai, since cloudflare/<provider>/<model> needs gateway routing
|
|
21606
|
+
matches: (m2) => m2.startsWith("cloudflare/") || m2.startsWith("cloudflare:"),
|
|
21607
|
+
secretNames: ["CF_ACCOUNT_ID", "CF_AI_GATEWAY_ID"]
|
|
21608
|
+
},
|
|
21609
|
+
{
|
|
21610
|
+
providerId: "bedrock",
|
|
21611
|
+
matches: (m2) => m2.startsWith("bedrock/"),
|
|
21612
|
+
secretNames: ["AWS_ACCESS_KEY_ID", "AWS_SECRET_ACCESS_KEY"],
|
|
21613
|
+
optionalSettings: [{ name: "AWS_REGION", defaultValue: DEFAULT_BEDROCK_REGION }]
|
|
21614
|
+
},
|
|
21615
|
+
{
|
|
21616
|
+
providerId: "tinfoil",
|
|
21617
|
+
matches: (m2) => m2.startsWith("tinfoil/") || m2.startsWith("tinfoil:"),
|
|
21618
|
+
secretNames: ["TINFOIL_API_KEY"]
|
|
21619
|
+
},
|
|
21620
|
+
{
|
|
21621
|
+
providerId: "generic-openai",
|
|
21622
|
+
// WHY(docs/why/packages/shared/src.md#must-come-before-openai-since-it-shares-the-open): must come before openai, since it shares the openai substring in its prefix
|
|
21623
|
+
matches: (m2) => m2.startsWith("generic-openai/") || m2.startsWith("generic-openai:"),
|
|
21624
|
+
secretNames: ["GENERIC_OPENAI_API_KEY", "GENERIC_OPENAI_BASE_URL"]
|
|
21625
|
+
},
|
|
21626
|
+
{
|
|
21627
|
+
providerId: "workers-ai",
|
|
21628
|
+
// WHY(docs/why/packages/shared/src.md#uses-a-cf-platform-binding-not-a-secret-so-secre): uses a CF platform binding not a secret, so secretNames is intentionally empty
|
|
21629
|
+
matches: (m2) => m2.startsWith("@cf/") || m2.startsWith("workers-ai/"),
|
|
21630
|
+
secretNames: []
|
|
21631
|
+
},
|
|
21632
|
+
{
|
|
21633
|
+
providerId: "anthropic",
|
|
21634
|
+
matches: (m2) => m2.startsWith("anthropic/") || m2.startsWith("claude-") || m2.includes("/claude-"),
|
|
21635
|
+
secretNames: ["ANTHROPIC_API_KEY"]
|
|
21636
|
+
},
|
|
21637
|
+
{
|
|
21638
|
+
providerId: "openai",
|
|
21639
|
+
matches: (m2) => m2.startsWith("openai/") || m2.startsWith("gpt-") || m2.startsWith("o1-") || m2.startsWith("o3-") || m2.startsWith("o4-") || m2.includes("/gpt-"),
|
|
21640
|
+
secretNames: ["OPENAI_API_KEY"]
|
|
21641
|
+
},
|
|
21642
|
+
{
|
|
21643
|
+
providerId: "google",
|
|
21644
|
+
matches: (m2) => m2.startsWith("google/") || m2.startsWith("gemini-") || m2.includes("/gemini-"),
|
|
21645
|
+
secretNames: ["GOOGLE_API_KEY"]
|
|
21646
|
+
},
|
|
21647
|
+
{
|
|
21648
|
+
providerId: "mixlayer",
|
|
21649
|
+
// WHY(docs/why/packages/shared/src.md#z-ai-is-mixlayers-glm-namespace-distinct-from-ve): z-ai/ is Mixlayer's GLM namespace, distinct from Vercel Gateway's zai/ spelling of the same model
|
|
21650
|
+
matches: (m2) => m2.startsWith("mixlayer/") || m2.startsWith("modelsocket/") || m2.startsWith("qwen/") || m2.startsWith("z-ai/") || m2.startsWith("kimi-") || m2.includes("/kimi-") || /(?:^|\/)qwen3[.-]5-\d+b(?:-a\d+b)?$/i.test(m2),
|
|
21651
|
+
secretNames: ["MIXLAYER_API_KEY"]
|
|
21652
|
+
},
|
|
21653
|
+
{
|
|
21654
|
+
providerId: "xai",
|
|
21655
|
+
matches: (m2) => m2.startsWith("grok-") || m2.startsWith("xai/"),
|
|
21656
|
+
secretNames: ["XAI_API_KEY"]
|
|
21657
|
+
}
|
|
21658
|
+
];
|
|
21659
|
+
function resolveModelSecretNames(model) {
|
|
21660
|
+
const lower = model.toLowerCase();
|
|
21661
|
+
for (const spec of PROVIDER_SECRET_SPECS) {
|
|
21662
|
+
if (spec.matches(lower)) return [...spec.secretNames];
|
|
21663
|
+
}
|
|
21664
|
+
return [];
|
|
21665
|
+
}
|
|
21666
|
+
function resolveModelOptionalSettings(model) {
|
|
21667
|
+
const lower = model.toLowerCase();
|
|
21668
|
+
for (const spec of PROVIDER_SECRET_SPECS) {
|
|
21669
|
+
if (spec.matches(lower)) return [...spec.optionalSettings ?? []];
|
|
21670
|
+
}
|
|
21671
|
+
return [];
|
|
21672
|
+
}
|
|
21673
|
+
|
|
21674
|
+
// ../shared/dist/chunk-HIIORCZ5.mjs
|
|
21675
|
+
var REPLAY_FROM_START = Object.freeze({
|
|
21676
|
+
row: 0,
|
|
21677
|
+
sub: Number.POSITIVE_INFINITY
|
|
21678
|
+
});
|
|
21679
|
+
|
|
21366
21680
|
// ../shared/dist/chunk-HD3SKN3O.mjs
|
|
21367
21681
|
var edgeAuthSnapshotSchema = external_exports.object({
|
|
21368
21682
|
/**
|
|
@@ -21438,17 +21752,10 @@ var resolvedEdgeAuthSnapshotSchema = edgeAuthSnapshotSchema.extend({
|
|
|
21438
21752
|
resolvedAt: external_exports.number().int().positive()
|
|
21439
21753
|
});
|
|
21440
21754
|
|
|
21441
|
-
// ../shared/dist/chunk-
|
|
21442
|
-
var
|
|
21443
|
-
|
|
21444
|
-
|
|
21445
|
-
"paused",
|
|
21446
|
-
"completed",
|
|
21447
|
-
"failed",
|
|
21448
|
-
"cancelled",
|
|
21449
|
-
"interrupted"
|
|
21450
|
-
];
|
|
21451
|
-
var agentExecutionStatusSchema = external_exports.enum(AGENT_EXECUTION_STATUSES);
|
|
21755
|
+
// ../shared/dist/chunk-4VLXOKEV.mjs
|
|
21756
|
+
var CONTAINER_SANDBOX_INSTANCE_TYPE = "standard-4";
|
|
21757
|
+
|
|
21758
|
+
// ../shared/dist/chunk-PDK72EP7.mjs
|
|
21452
21759
|
var RUNTYPE_ITERATION = "runtype.iteration";
|
|
21453
21760
|
var RUNTYPE_TURN_INDEX = "runtype.turn.index";
|
|
21454
21761
|
var RUNTYPE_LEGACY_ATTRIBUTE_ALIASES = {
|
|
@@ -21457,12 +21764,68 @@ var RUNTYPE_LEGACY_ATTRIBUTE_ALIASES = {
|
|
|
21457
21764
|
};
|
|
21458
21765
|
var GEN_AI_TOOL_CALL_ARGUMENTS = "gen_ai.tool.call.arguments";
|
|
21459
21766
|
var GEN_AI_TOOL_CALL_RESULT = "gen_ai.tool.call.result";
|
|
21767
|
+
var GEN_AI_INPUT_MESSAGES = "gen_ai.input.messages";
|
|
21768
|
+
var GEN_AI_OUTPUT_MESSAGES = "gen_ai.output.messages";
|
|
21769
|
+
var GEN_AI_CONTENT_ATTRIBUTES = {
|
|
21770
|
+
/** Chat history sent to the model, as semconv structured messages. */
|
|
21771
|
+
inputMessages: GEN_AI_INPUT_MESSAGES,
|
|
21772
|
+
/** Messages the model produced (includes reasoning content parts). */
|
|
21773
|
+
outputMessages: GEN_AI_OUTPUT_MESSAGES,
|
|
21774
|
+
/** System instructions, when separate from the input messages. */
|
|
21775
|
+
systemInstructions: "gen_ai.system_instructions",
|
|
21776
|
+
/** `execute_tool` span: the arguments the tool was called with. */
|
|
21777
|
+
toolCallArguments: GEN_AI_TOOL_CALL_ARGUMENTS,
|
|
21778
|
+
/** `execute_tool` span: the result the tool returned. */
|
|
21779
|
+
toolCallResult: GEN_AI_TOOL_CALL_RESULT
|
|
21780
|
+
};
|
|
21460
21781
|
var GEN_AI_CONTENT_ATTRIBUTE_ALIASES = {
|
|
21461
|
-
[
|
|
21462
|
-
[
|
|
21782
|
+
[GEN_AI_INPUT_MESSAGES]: ["ai.prompt.messages", "ai.prompt"],
|
|
21783
|
+
[GEN_AI_OUTPUT_MESSAGES]: ["ai.response.text", "ai.response.object"],
|
|
21784
|
+
[GEN_AI_TOOL_CALL_ARGUMENTS]: ["flue.tool.call.arguments", "ai.toolCall.args"],
|
|
21785
|
+
[GEN_AI_TOOL_CALL_RESULT]: ["flue.tool.call.result", "ai.toolCall.result"]
|
|
21463
21786
|
};
|
|
21787
|
+
var OPENINFERENCE_CONTENT_PREFIXES = [
|
|
21788
|
+
"llm.input_messages.",
|
|
21789
|
+
"llm.output_messages.",
|
|
21790
|
+
"llm.prompts",
|
|
21791
|
+
"llm.prompt_template.",
|
|
21792
|
+
"llm.choices",
|
|
21793
|
+
"llm.function_call",
|
|
21794
|
+
"retrieval.documents.",
|
|
21795
|
+
"embedding.embeddings.",
|
|
21796
|
+
"input.value",
|
|
21797
|
+
"output.value"
|
|
21798
|
+
];
|
|
21799
|
+
var AI_SDK_CONTENT_PREFIXES = ["ai.response.toolCalls"];
|
|
21800
|
+
var MASTRA_CONTENT_PREFIXES = ["mastra.metadata.body"];
|
|
21801
|
+
var CLOUDFLARE_AGENTS_CONTENT_PREFIXES = [
|
|
21802
|
+
"cloudflare.agents.metadata.",
|
|
21803
|
+
"cloudflare.agents.runtime_context."
|
|
21804
|
+
];
|
|
21805
|
+
var GEN_AI_CONTENT_ATTRIBUTE_PREFIXES = [
|
|
21806
|
+
...OPENINFERENCE_CONTENT_PREFIXES,
|
|
21807
|
+
...AI_SDK_CONTENT_PREFIXES,
|
|
21808
|
+
...MASTRA_CONTENT_PREFIXES,
|
|
21809
|
+
...CLOUDFLARE_AGENTS_CONTENT_PREFIXES
|
|
21810
|
+
];
|
|
21811
|
+
var GEN_AI_CONTENT_ATTRIBUTE_NAMES = /* @__PURE__ */ new Set([
|
|
21812
|
+
...Object.values(GEN_AI_CONTENT_ATTRIBUTES),
|
|
21813
|
+
...Object.values(GEN_AI_CONTENT_ATTRIBUTE_ALIASES).flat()
|
|
21814
|
+
]);
|
|
21815
|
+
|
|
21816
|
+
// ../shared/dist/chunk-ZDRWUYBY.mjs
|
|
21817
|
+
var AGENT_EXECUTION_STATUSES = [
|
|
21818
|
+
"queued",
|
|
21819
|
+
"running",
|
|
21820
|
+
"paused",
|
|
21821
|
+
"completed",
|
|
21822
|
+
"failed",
|
|
21823
|
+
"cancelled",
|
|
21824
|
+
"interrupted"
|
|
21825
|
+
];
|
|
21826
|
+
var agentExecutionStatusSchema = external_exports.enum(AGENT_EXECUTION_STATUSES);
|
|
21464
21827
|
|
|
21465
|
-
// ../shared/dist/chunk-
|
|
21828
|
+
// ../shared/dist/chunk-6UABSJMP.mjs
|
|
21466
21829
|
var CANONICAL_LOG_COLUMN_SET = {
|
|
21467
21830
|
// @snake-case-ok-start: R2 SQL / Iceberg column naming convention
|
|
21468
21831
|
event_id: true,
|
|
@@ -21660,7 +22023,7 @@ var WEAVIATE_VECTORIZER_MODELS = Object.freeze({
|
|
|
21660
22023
|
})
|
|
21661
22024
|
});
|
|
21662
22025
|
|
|
21663
|
-
// ../shared/dist/chunk-
|
|
22026
|
+
// ../shared/dist/chunk-2F2C3Q7I.mjs
|
|
21664
22027
|
var THINKING_CONTENT_PART_TYPES = [
|
|
21665
22028
|
"reasoning",
|
|
21666
22029
|
"thinking",
|
|
@@ -21846,254 +22209,7 @@ var recordCollectionSchemaSchema = external_exports.strictObject({
|
|
|
21846
22209
|
additionalProperties: external_exports.boolean().optional()
|
|
21847
22210
|
}).superRefine((schema, ctx) => addSemanticIssues(schema, ctx));
|
|
21848
22211
|
|
|
21849
|
-
// ../shared/dist/chunk-
|
|
21850
|
-
var MCPServerCategory = {
|
|
21851
|
-
COMMUNICATION: "communication",
|
|
21852
|
-
PRODUCTIVITY: "productivity",
|
|
21853
|
-
DEVELOPMENT: "development",
|
|
21854
|
-
PROJECT_MANAGEMENT: "project_management"
|
|
21855
|
-
};
|
|
21856
|
-
var subagentExecutionModeSchema = external_exports.enum(["attached", "detached"]);
|
|
21857
|
-
var subagentNotificationModeSchema = external_exports.enum(["none", "narrate", "react"]);
|
|
21858
|
-
var subagentExecutionConfigSchema = external_exports.object({
|
|
21859
|
-
/** Attached is the backwards-compatible default. */
|
|
21860
|
-
mode: subagentExecutionModeSchema.optional(),
|
|
21861
|
-
/** Detached tools default to `narrate`; attached tools ignore this field. */
|
|
21862
|
-
notify: subagentNotificationModeSchema.optional(),
|
|
21863
|
-
/** Absolute background-run wall-clock ceiling. */
|
|
21864
|
-
maxBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional(),
|
|
21865
|
-
/** Optional resetting silence budget after observable progress. */
|
|
21866
|
-
noProgressBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional()
|
|
21867
|
-
});
|
|
21868
|
-
var subagentRunHandleSchema = external_exports.object({
|
|
21869
|
-
kind: external_exports.literal("subagent_run"),
|
|
21870
|
-
runId: external_exports.string(),
|
|
21871
|
-
/**
|
|
21872
|
-
* Which durable lane the child executes on. `'durable'` is the ADR 0020
|
|
21873
|
-
* session DO; `'runtype'` is the in-process detached-run DO.
|
|
21874
|
-
*/
|
|
21875
|
-
agentType: external_exports.enum(["runtype", "claude_managed", "durable"]),
|
|
21876
|
-
status: external_exports.enum(["queued", "running"]),
|
|
21877
|
-
startedAt: external_exports.string()
|
|
21878
|
-
});
|
|
21879
|
-
var agentSubagentConfigSchema = external_exports.object({
|
|
21880
|
-
/**
|
|
21881
|
-
* Pool of tool IDs the parent is permitted to grant to ad-hoc subagents.
|
|
21882
|
-
* Supports exact IDs, wildcards (`mcp:*`, `builtin:*`, `platform:*`), and
|
|
21883
|
-
* runtime-tool names. Must be a SUBSET of the parent's resolved tools —
|
|
21884
|
-
* validated at dispatch (no privilege escalation).
|
|
21885
|
-
*/
|
|
21886
|
-
toolPool: external_exports.array(external_exports.string()),
|
|
21887
|
-
/** Default for spawned subagent loops. Default 5. */
|
|
21888
|
-
defaultMaxTurns: external_exports.number().optional(),
|
|
21889
|
-
/** Hard cap a spawned subagent can request. Default 10. */
|
|
21890
|
-
maxTurnsLimit: external_exports.number().optional(),
|
|
21891
|
-
/** Hard ceiling on total spawns per top-level parent invocation. Default 5. */
|
|
21892
|
-
maxSpawnsPerRun: external_exports.number().optional(),
|
|
21893
|
-
/** Default model for spawned subagents. Defaults to parent's model. */
|
|
21894
|
-
defaultModel: external_exports.string().optional(),
|
|
21895
|
-
/**
|
|
21896
|
-
* Whether a spawned subagent can itself spawn subagents. Default `false`
|
|
21897
|
-
* (Anthropic-aligned). Even when `true`, MAX_NESTED_DEPTH still bounds the
|
|
21898
|
-
* recursion tree.
|
|
21899
|
-
*/
|
|
21900
|
-
allowNesting: external_exports.boolean().optional(),
|
|
21901
|
-
/** Default per-spawn timeout. Default 300_000 (5 min). */
|
|
21902
|
-
defaultTimeoutMs: external_exports.number().optional(),
|
|
21903
|
-
/** Execution modes the model may request. Default `['attached']`. */
|
|
21904
|
-
executionModes: external_exports.array(subagentExecutionModeSchema).min(1).optional(),
|
|
21905
|
-
/** Default mode when the model omits `executionMode`. */
|
|
21906
|
-
defaultExecutionMode: subagentExecutionModeSchema.optional(),
|
|
21907
|
-
/** Default completion policy for detached dynamic children. */
|
|
21908
|
-
defaultNotify: subagentNotificationModeSchema.optional(),
|
|
21909
|
-
/** Absolute wall-clock ceiling for detached dynamic children. */
|
|
21910
|
-
detachedMaxBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional(),
|
|
21911
|
-
/** Optional resetting silence budget for detached dynamic children. */
|
|
21912
|
-
detachedNoProgressBudgetMs: external_exports.number().int().min(1e3).max(864e5).optional()
|
|
21913
|
-
});
|
|
21914
|
-
var codeModeConfigSchema = external_exports.object({
|
|
21915
|
-
/** Tool IDs available in the sandbox (subset of agent's tools, supports wildcards like `mcp:*`) */
|
|
21916
|
-
toolPool: external_exports.array(external_exports.string()),
|
|
21917
|
-
/** Optional custom description prefix for the synthesized tool */
|
|
21918
|
-
description: external_exports.string().optional(),
|
|
21919
|
-
/** Sandbox execution timeout in ms (default 60000) */
|
|
21920
|
-
timeoutMs: external_exports.number().optional()
|
|
21921
|
-
});
|
|
21922
|
-
var toolLimitSchema = external_exports.object({
|
|
21923
|
-
maxCalls: external_exports.number().optional(),
|
|
21924
|
-
required: external_exports.boolean().optional()
|
|
21925
|
-
});
|
|
21926
|
-
var approvalConfigSchema = external_exports.object({
|
|
21927
|
-
/** Tools that require user approval before execution.
|
|
21928
|
-
* string[]: tool names/patterns ("send_email", "mcp:*", "builtin:*")
|
|
21929
|
-
* true: all tools require approval
|
|
21930
|
-
* false/undefined: no approval required (default) */
|
|
21931
|
-
require: external_exports.union([external_exports.array(external_exports.string()), external_exports.boolean()]).optional(),
|
|
21932
|
-
/** Timeout in ms for approval response (default: 300000 = 5 min) */
|
|
21933
|
-
timeout: external_exports.number().optional(),
|
|
21934
|
-
/** Whether to ask the model for a per-call justification on approval-gated
|
|
21935
|
-
* tools by injecting a reserved optional `_approvalReason` string into the
|
|
21936
|
-
* model-visible parameters schema. The value is stripped before the tool
|
|
21937
|
-
* executes and surfaced to the approver. Default: true (opt out with false). */
|
|
21938
|
-
requestReason: external_exports.boolean().optional(),
|
|
21939
|
-
// WHY(docs/why/packages/shared/src.md#persistent-always-choices-at-the-human-approval): Persistent "always" choices at the human approval prompt; user-facing options, not auto-behavior.
|
|
21940
|
-
/**
|
|
21941
|
-
* Persistent "always" choices at the human approval prompt; user-facing options, not auto-behavior.
|
|
21942
|
-
* Keys mirror the grant decision enum (alwaysAllow -> 'allow', alwaysDeny -> 'deny').
|
|
21943
|
-
* Default: both off; this is the sole control for persisted approval grants (no Flagship flag).
|
|
21944
|
-
* See docs/features/planning/2026-06-13-cross-session-always-allow-approval-grants.md
|
|
21945
|
-
*/
|
|
21946
|
-
choices: external_exports.object({
|
|
21947
|
-
alwaysAllow: external_exports.boolean().optional(),
|
|
21948
|
-
alwaysDeny: external_exports.boolean().optional()
|
|
21949
|
-
}).optional()
|
|
21950
|
-
});
|
|
21951
|
-
var toolSearchConfigSchema = external_exports.object({
|
|
21952
|
-
/** Explicit opt-in/out. When omitted, auto-activates if tool count >= threshold. */
|
|
21953
|
-
enabled: external_exports.boolean().optional(),
|
|
21954
|
-
/** Tool count at which search activates (default: 20) */
|
|
21955
|
-
threshold: external_exports.number().optional(),
|
|
21956
|
-
/** Tool names or IDs that should always be in the hot set */
|
|
21957
|
-
alwaysLoaded: external_exports.array(external_exports.string()).optional()
|
|
21958
|
-
});
|
|
21959
|
-
var agentToolsConfigSchema = external_exports.object({
|
|
21960
|
-
/** IDs of tools to enable (builtin:*, mcp:*, platform:*, platform:orthogonal:*, custom tool IDs) */
|
|
21961
|
-
toolIds: external_exports.array(external_exports.string()).optional(),
|
|
21962
|
-
/** Per-tool parameter configurations, keyed by tool ID */
|
|
21963
|
-
toolConfigs: external_exports.record(external_exports.string(), external_exports.custom()).optional(),
|
|
21964
|
-
/** Inline tool definitions (no DB storage needed) */
|
|
21965
|
-
runtimeTools: external_exports.array(external_exports.custom()).optional(),
|
|
21966
|
-
/** Runtime MCP server connections */
|
|
21967
|
-
mcpServers: external_exports.array(external_exports.custom()).optional(),
|
|
21968
|
-
/** Maximum tool calls per execution (renamed from maxTurns in agents) */
|
|
21969
|
-
maxToolCalls: external_exports.number().optional(),
|
|
21970
|
-
/** Tool calling strategy */
|
|
21971
|
-
toolCallStrategy: external_exports.enum(["auto", "required", "none"]).optional(),
|
|
21972
|
-
/** Per-tool call limits */
|
|
21973
|
-
perToolLimits: external_exports.record(external_exports.string(), toolLimitSchema).optional(),
|
|
21974
|
-
/** Human-in-the-loop approval configuration */
|
|
21975
|
-
approval: approvalConfigSchema.optional(),
|
|
21976
|
-
/**
|
|
21977
|
-
* Opt-in: enables agent-driven dynamic subagent spawning. When set, the
|
|
21978
|
-
* prompt-step tool-prep layer synthesizes a `spawn_subagent` tool into the
|
|
21979
|
-
* AI-SDK tool list with a dynamically-generated description listing the
|
|
21980
|
-
* tools the parent's LLM can grant. See `AgentSubagentConfig` for fields.
|
|
21981
|
-
*/
|
|
21982
|
-
subagentConfig: agentSubagentConfigSchema.optional(),
|
|
21983
|
-
/**
|
|
21984
|
-
* Opt-in: enables a synthesized `code_mode` tool that lets agents execute
|
|
21985
|
-
* JavaScript code in a sandboxed V8 isolate with access to a subset of
|
|
21986
|
-
* the agent's tools. The LLM writes code that calls tool functions
|
|
21987
|
-
* deterministically instead of making individual tool calls.
|
|
21988
|
-
*/
|
|
21989
|
-
codeModeConfig: codeModeConfigSchema.optional(),
|
|
21990
|
-
// WHY(docs/why/packages/shared/src.md#tool-search-configuration-when-total-tool-count): Tool search configuration; when total tool count exceeds the threshold, deferred loading activates.
|
|
21991
|
-
/**
|
|
21992
|
-
* Tool search configuration; when total tool count exceeds the threshold, deferred loading activates.
|
|
21993
|
-
* Only a hot set of tools is sent to the model each turn; tool_search lets it discover more on demand.
|
|
21994
|
-
* Auto-activates when omitted and total tool count >= 20.
|
|
21995
|
-
* Set enabled: false to force all tools to be sent regardless of count.
|
|
21996
|
-
*/
|
|
21997
|
-
toolSearch: toolSearchConfigSchema.optional()
|
|
21998
|
-
});
|
|
21999
|
-
var CreateToolSchema = external_exports.object({
|
|
22000
|
-
name: external_exports.string().min(1).max(100),
|
|
22001
|
-
description: external_exports.string().min(1).max(500),
|
|
22002
|
-
toolType: external_exports.enum(["flow", "custom", "external", "graphql", "mcp", "local", "subagent"]),
|
|
22003
|
-
parametersSchema: external_exports.record(external_exports.string(), external_exports.any()),
|
|
22004
|
-
config: external_exports.record(external_exports.string(), external_exports.any())
|
|
22005
|
-
});
|
|
22006
|
-
var ExecuteToolSchema = external_exports.object({
|
|
22007
|
-
// WHY(docs/why/packages/shared/src.md#toolid-is-optional-here-so-mcp-sdk-callers-sendi): toolId is optional here so MCP/SDK callers sending only {parameters} aren't rejected at validation
|
|
22008
|
-
toolId: external_exports.string().optional(),
|
|
22009
|
-
parameters: external_exports.record(external_exports.string(), external_exports.any()),
|
|
22010
|
-
context: external_exports.object({
|
|
22011
|
-
flowExecutionId: external_exports.string().optional(),
|
|
22012
|
-
stepId: external_exports.string().optional(),
|
|
22013
|
-
userId: external_exports.string()
|
|
22014
|
-
}).optional()
|
|
22015
|
-
});
|
|
22016
|
-
function parseToolInstanceId(toolId) {
|
|
22017
|
-
const hashIndex = toolId.indexOf("#");
|
|
22018
|
-
if (hashIndex === -1) {
|
|
22019
|
-
return { baseId: toolId, instanceId: "" };
|
|
22020
|
-
}
|
|
22021
|
-
return {
|
|
22022
|
-
baseId: toolId.substring(0, hashIndex),
|
|
22023
|
-
instanceId: toolId.substring(hashIndex + 1)
|
|
22024
|
-
};
|
|
22025
|
-
}
|
|
22026
|
-
function isBuiltInToolId(toolId) {
|
|
22027
|
-
return toolId.startsWith("builtin:");
|
|
22028
|
-
}
|
|
22029
|
-
function isPlatformToolId(toolId) {
|
|
22030
|
-
return toolId.startsWith("platform:");
|
|
22031
|
-
}
|
|
22032
|
-
var INTEGRATION_SERVER_IDS = /* @__PURE__ */ new Set([
|
|
22033
|
-
"slack",
|
|
22034
|
-
"google",
|
|
22035
|
-
"linear",
|
|
22036
|
-
"github",
|
|
22037
|
-
"telegram",
|
|
22038
|
-
"imessage",
|
|
22039
|
-
"granola"
|
|
22040
|
-
]);
|
|
22041
|
-
function isBuiltInIntegrationToolId(toolId) {
|
|
22042
|
-
if (!toolId.startsWith("builtin:")) return false;
|
|
22043
|
-
const { baseId } = parseToolInstanceId(toolId);
|
|
22044
|
-
const parts = baseId.split(":");
|
|
22045
|
-
if (parts.length < 3) return false;
|
|
22046
|
-
return INTEGRATION_SERVER_IDS.has(parts[1]);
|
|
22047
|
-
}
|
|
22048
|
-
function isMCPToolId(toolId) {
|
|
22049
|
-
return toolId.startsWith("mcp:");
|
|
22050
|
-
}
|
|
22051
|
-
var NAMED_TOOL_REF_PREFIX = "tool:";
|
|
22052
|
-
function isNamedToolRef(toolId) {
|
|
22053
|
-
return toolId.startsWith(NAMED_TOOL_REF_PREFIX) && toolId.length > NAMED_TOOL_REF_PREFIX.length;
|
|
22054
|
-
}
|
|
22055
|
-
function parseNamedToolRef(toolId) {
|
|
22056
|
-
if (!isNamedToolRef(toolId)) return null;
|
|
22057
|
-
return { name: toolId.slice(NAMED_TOOL_REF_PREFIX.length) };
|
|
22058
|
-
}
|
|
22059
|
-
function separateToolIds(toolIds) {
|
|
22060
|
-
const builtInToolIds = [];
|
|
22061
|
-
const platformToolIds = [];
|
|
22062
|
-
const integrationToolIds = [];
|
|
22063
|
-
const mcpToolIds = [];
|
|
22064
|
-
const dataConnectionToolIds = [];
|
|
22065
|
-
const namedToolIds = [];
|
|
22066
|
-
const customToolIds = [];
|
|
22067
|
-
for (const toolId of toolIds) {
|
|
22068
|
-
if (isDataConnectionToolId(toolId)) {
|
|
22069
|
-
dataConnectionToolIds.push(toolId);
|
|
22070
|
-
} else if (isPlatformToolId(toolId)) {
|
|
22071
|
-
platformToolIds.push(toolId);
|
|
22072
|
-
} else if (isBuiltInIntegrationToolId(toolId)) {
|
|
22073
|
-
integrationToolIds.push(toolId);
|
|
22074
|
-
} else if (isBuiltInToolId(toolId)) {
|
|
22075
|
-
builtInToolIds.push(toolId);
|
|
22076
|
-
} else if (isMCPToolId(toolId)) {
|
|
22077
|
-
mcpToolIds.push(toolId);
|
|
22078
|
-
} else if (isNamedToolRef(toolId)) {
|
|
22079
|
-
namedToolIds.push(toolId);
|
|
22080
|
-
} else {
|
|
22081
|
-
customToolIds.push(toolId);
|
|
22082
|
-
}
|
|
22083
|
-
}
|
|
22084
|
-
return {
|
|
22085
|
-
builtInToolIds,
|
|
22086
|
-
platformToolIds,
|
|
22087
|
-
integrationToolIds,
|
|
22088
|
-
mcpToolIds,
|
|
22089
|
-
dataConnectionToolIds,
|
|
22090
|
-
namedToolIds,
|
|
22091
|
-
customToolIds
|
|
22092
|
-
};
|
|
22093
|
-
}
|
|
22094
|
-
function isDataConnectionToolId(toolId) {
|
|
22095
|
-
return toolId.startsWith("dc:");
|
|
22096
|
-
}
|
|
22212
|
+
// ../shared/dist/chunk-E64JJRRB.mjs
|
|
22097
22213
|
var AGENT_TRANSIENT_SECRETS_CODE = "RUNTIME_AGENT_TRANSIENT_SECRETS_UNSUPPORTED";
|
|
22098
22214
|
var FLOW_TRANSIENT_SECRETS_CODE = "RUNTIME_FLOW_TRANSIENT_SECRETS_UNSUPPORTED";
|
|
22099
22215
|
var DISPATCH_TRANSIENT_SECRETS_RETIRED_NOTE = `Retired on BOTH dispatch targets. A NON-EMPTY map is rejected with 400: ${AGENT_TRANSIENT_SECRETS_CODE} on an agent dispatch, ${FLOW_TRANSIENT_SECRETS_CODE} on a flow dispatch (the flow target used to drop the map silently). An empty map is accepted and does nothing. Store credentials as managed secrets and reference them as {{secret:NAME}}. The field is kept on the wire for compatibility only.`;
|
|
@@ -24971,7 +25087,7 @@ function unwrapVectorSourceTemplate(source) {
|
|
|
24971
25087
|
return inner;
|
|
24972
25088
|
}
|
|
24973
25089
|
|
|
24974
|
-
// ../shared/dist/chunk-
|
|
25090
|
+
// ../shared/dist/chunk-7YPUPF5R.mjs
|
|
24975
25091
|
var jsonPatchOperationSchema = external_exports.object({
|
|
24976
25092
|
op: external_exports.enum(["add", "remove", "replace", "move", "copy", "test"]),
|
|
24977
25093
|
/** JSON Pointer (RFC 6901) into the state document. `''` addresses the root. */
|
|
@@ -25425,6 +25541,20 @@ var unifiedErrorEventSchema = external_exports.object({
|
|
|
25425
25541
|
error: unifiedErrorPayloadSchema,
|
|
25426
25542
|
recoverable: external_exports.boolean().optional()
|
|
25427
25543
|
});
|
|
25544
|
+
var unifiedContextNoticeEventSchema = external_exports.object({
|
|
25545
|
+
...unifiedBase,
|
|
25546
|
+
type: external_exports.literal("context_notice"),
|
|
25547
|
+
kind: external_exports.literal("compaction"),
|
|
25548
|
+
phase: external_exports.enum(["start", "complete"]),
|
|
25549
|
+
/** Reduction ladder tier: 2 is a threshold compaction, 3 an overflow recovery. */
|
|
25550
|
+
tier: external_exports.number().int().nonnegative(),
|
|
25551
|
+
strategy: external_exports.enum(["provider_native", "summary"]),
|
|
25552
|
+
reason: external_exports.enum(["threshold", "overflow", "manual", "surface_policy", "provider_mismatch"]),
|
|
25553
|
+
epoch: external_exports.number().int().nonnegative(),
|
|
25554
|
+
tokensBefore: external_exports.number().optional(),
|
|
25555
|
+
tokensAfter: external_exports.number().optional(),
|
|
25556
|
+
outcome: external_exports.enum(["ok", "failed", "gap", "skipped"]).optional()
|
|
25557
|
+
});
|
|
25428
25558
|
var unifiedPingEventSchema = external_exports.object({
|
|
25429
25559
|
...unifiedBase,
|
|
25430
25560
|
type: external_exports.literal("ping"),
|
|
@@ -25471,6 +25601,7 @@ var unifiedSSEEventSchema = external_exports.discriminatedUnion("type", [
|
|
|
25471
25601
|
unifiedApprovalCompleteEventSchema,
|
|
25472
25602
|
unifiedAwaitEventSchema,
|
|
25473
25603
|
unifiedErrorEventSchema,
|
|
25604
|
+
unifiedContextNoticeEventSchema,
|
|
25474
25605
|
unifiedPingEventSchema,
|
|
25475
25606
|
unifiedCustomEventSchema
|
|
25476
25607
|
]);
|
|
@@ -25509,11 +25640,12 @@ var UNIFIED_SSE_EVENT_TYPES = _unifiedTuple([
|
|
|
25509
25640
|
"approval_complete",
|
|
25510
25641
|
"await",
|
|
25511
25642
|
"error",
|
|
25643
|
+
"context_notice",
|
|
25512
25644
|
"ping",
|
|
25513
25645
|
"custom"
|
|
25514
25646
|
]);
|
|
25515
25647
|
|
|
25516
|
-
// ../shared/dist/chunk-
|
|
25648
|
+
// ../shared/dist/chunk-V4LVGBYS.mjs
|
|
25517
25649
|
var mediaAnnotationsSchema = external_exports.object({
|
|
25518
25650
|
audience: external_exports.array(external_exports.enum(["user", "assistant"])).optional()
|
|
25519
25651
|
});
|
|
@@ -25711,6 +25843,19 @@ var agentStateDeltaEventSchema = external_exports.object({
|
|
|
25711
25843
|
patch: jsonPatchSchema,
|
|
25712
25844
|
iteration: external_exports.number().optional()
|
|
25713
25845
|
});
|
|
25846
|
+
var agentContextNoticeEventSchema = external_exports.object({
|
|
25847
|
+
...baseAgentEvent,
|
|
25848
|
+
type: external_exports.literal("agent_context_notice"),
|
|
25849
|
+
kind: external_exports.literal("compaction"),
|
|
25850
|
+
phase: external_exports.enum(["start", "complete"]),
|
|
25851
|
+
tier: external_exports.number(),
|
|
25852
|
+
strategy: external_exports.enum(["provider_native", "summary"]),
|
|
25853
|
+
reason: external_exports.enum(["threshold", "overflow", "manual", "surface_policy", "provider_mismatch"]),
|
|
25854
|
+
epoch: external_exports.number(),
|
|
25855
|
+
tokensBefore: external_exports.number().optional(),
|
|
25856
|
+
tokensAfter: external_exports.number().optional(),
|
|
25857
|
+
outcome: external_exports.enum(["ok", "failed", "gap", "skipped"]).optional()
|
|
25858
|
+
});
|
|
25714
25859
|
var agentApprovalStartEventSchema = external_exports.object({
|
|
25715
25860
|
...baseAgentEvent,
|
|
25716
25861
|
type: external_exports.literal("agent_approval_start"),
|
|
@@ -25848,6 +25993,7 @@ var agentSSEEventSchema = external_exports.discriminatedUnion("type", [
|
|
|
25848
25993
|
agentMediaEventSchema,
|
|
25849
25994
|
agentStateSnapshotEventSchema,
|
|
25850
25995
|
agentStateDeltaEventSchema,
|
|
25996
|
+
agentContextNoticeEventSchema,
|
|
25851
25997
|
agentApprovalStartEventSchema,
|
|
25852
25998
|
agentApprovalCompleteEventSchema,
|
|
25853
25999
|
agentAwaitEventSchema,
|
|
@@ -26709,10 +26855,6 @@ function speechProfilesSemanticallyEqual(legacy, canonical) {
|
|
|
26709
26855
|
const resolved = resolveVoiceSpeechProfile({ speech: canonical });
|
|
26710
26856
|
return JSON.stringify(legacy) === JSON.stringify(resolved);
|
|
26711
26857
|
}
|
|
26712
|
-
var REPLAY_FROM_START = Object.freeze({
|
|
26713
|
-
row: 0,
|
|
26714
|
-
sub: Number.POSITIVE_INFINITY
|
|
26715
|
-
});
|
|
26716
26858
|
var agUiEventBase = {
|
|
26717
26859
|
// INVARIANT: Metadata is absent or an object; an explicit null fails the spec parse.
|
|
26718
26860
|
metadata: external_exports.record(external_exports.string(), external_exports.unknown()).optional()
|
|
@@ -26973,6 +27115,89 @@ function stripTrailingChars(value, char) {
|
|
|
26973
27115
|
}
|
|
26974
27116
|
return end === value.length ? value : value.slice(0, end);
|
|
26975
27117
|
}
|
|
27118
|
+
var AGENT_ALIAS_MAX_LENGTH = 63;
|
|
27119
|
+
var AGENT_INLINE_DEFINITION_FIELDS = [
|
|
27120
|
+
"claudeManagedConfig",
|
|
27121
|
+
"model",
|
|
27122
|
+
"systemPrompt",
|
|
27123
|
+
"temperature",
|
|
27124
|
+
"topP",
|
|
27125
|
+
"topK",
|
|
27126
|
+
"frequencyPenalty",
|
|
27127
|
+
"presencePenalty",
|
|
27128
|
+
"seed",
|
|
27129
|
+
"maxTokens",
|
|
27130
|
+
"tools",
|
|
27131
|
+
"artifacts",
|
|
27132
|
+
"loopConfig",
|
|
27133
|
+
"advisor",
|
|
27134
|
+
"reasoning",
|
|
27135
|
+
"voice",
|
|
27136
|
+
"errorHandling",
|
|
27137
|
+
"loggingPolicy",
|
|
27138
|
+
"piiRedaction",
|
|
27139
|
+
"temporal",
|
|
27140
|
+
"memory",
|
|
27141
|
+
"sandbox",
|
|
27142
|
+
"tenancyStrategy"
|
|
27143
|
+
];
|
|
27144
|
+
function isPresent(value) {
|
|
27145
|
+
return value !== void 0 && value !== null;
|
|
27146
|
+
}
|
|
27147
|
+
function hasAgentSelector(agent) {
|
|
27148
|
+
if (!agent) return false;
|
|
27149
|
+
return isPresent(agent.alias) || isPresent(agent.versionId);
|
|
27150
|
+
}
|
|
27151
|
+
function agentSelectorViolation(agent) {
|
|
27152
|
+
if (!agent) return null;
|
|
27153
|
+
const hasAlias = isPresent(agent.alias);
|
|
27154
|
+
const hasVersionId = isPresent(agent.versionId);
|
|
27155
|
+
if (!hasAlias && !hasVersionId) return null;
|
|
27156
|
+
if (hasAlias && hasVersionId) {
|
|
27157
|
+
return {
|
|
27158
|
+
code: "selector_conflict",
|
|
27159
|
+
path: "agent.versionId",
|
|
27160
|
+
message: "An agent selects at most one version: supply agent.alias or agent.versionId, not both."
|
|
27161
|
+
};
|
|
27162
|
+
}
|
|
27163
|
+
if (!isPresent(agent.agentId) && !isPresent(agent.name)) {
|
|
27164
|
+
return {
|
|
27165
|
+
code: "selector_requires_identity",
|
|
27166
|
+
path: "agent.agentId",
|
|
27167
|
+
message: "A version selector needs an agent identity: supply agent.agentId or agent.name alongside it."
|
|
27168
|
+
};
|
|
27169
|
+
}
|
|
27170
|
+
for (const field of AGENT_INLINE_DEFINITION_FIELDS) {
|
|
27171
|
+
if (isPresent(agent[field])) {
|
|
27172
|
+
return {
|
|
27173
|
+
code: "inline_definition_with_selector",
|
|
27174
|
+
path: `agent.${field}`,
|
|
27175
|
+
message: `agent.${field} is an inline definition and cannot be combined with a version selector; the selected version supplies the definition.`
|
|
27176
|
+
};
|
|
27177
|
+
}
|
|
27178
|
+
}
|
|
27179
|
+
if (hasAlias) {
|
|
27180
|
+
const alias = agent.alias;
|
|
27181
|
+
if (typeof alias !== "string" || alias.length === 0 || alias.length > AGENT_ALIAS_MAX_LENGTH) {
|
|
27182
|
+
return {
|
|
27183
|
+
code: "selector_conflict",
|
|
27184
|
+
path: "agent.alias",
|
|
27185
|
+
message: `agent.alias must be a string of at most ${AGENT_ALIAS_MAX_LENGTH} characters.`
|
|
27186
|
+
};
|
|
27187
|
+
}
|
|
27188
|
+
}
|
|
27189
|
+
if (hasVersionId) {
|
|
27190
|
+
const versionId = agent.versionId;
|
|
27191
|
+
if (typeof versionId !== "string" || versionId.length === 0) {
|
|
27192
|
+
return {
|
|
27193
|
+
code: "selector_conflict",
|
|
27194
|
+
path: "agent.versionId",
|
|
27195
|
+
message: "agent.versionId must be a non-empty string."
|
|
27196
|
+
};
|
|
27197
|
+
}
|
|
27198
|
+
}
|
|
27199
|
+
return null;
|
|
27200
|
+
}
|
|
26976
27201
|
var CLIENT_EXECUTED_TOOL_TYPES = /* @__PURE__ */ new Set(["local", "webmcp"]);
|
|
26977
27202
|
function isClientExecutedToolType(toolType) {
|
|
26978
27203
|
return typeof toolType === "string" && CLIENT_EXECUTED_TOOL_TYPES.has(toolType);
|
|
@@ -27637,12 +27862,12 @@ var sandboxNetworkAccessSchema = external_exports.union([
|
|
|
27637
27862
|
]);
|
|
27638
27863
|
var sandboxConfigSchema = external_exports.object({
|
|
27639
27864
|
enabled: external_exports.boolean(),
|
|
27640
|
-
//
|
|
27641
|
-
provider: external_exports.enum(["runtype-sandbox", "daytona"]).optional(),
|
|
27642
|
-
//
|
|
27643
|
-
persistence: external_exports.enum(["ephemeral", "conversation", "named"]).optional(),
|
|
27644
|
-
//
|
|
27645
|
-
instanceType: external_exports.enum(["standard-1", "standard-2", "standard-3", "standard-4"]).optional(),
|
|
27865
|
+
// INVARIANT: Parsing preserves stored providers; capability validation rejects unsupported enabled values.
|
|
27866
|
+
provider: external_exports.enum(["runtype-sandbox", "daytona"]).optional().describe("Only runtype-sandbox is currently supported. Daytona is retained for stored-config parsing but rejected at authoring/execution."),
|
|
27867
|
+
// INVARIANT: Named persistence remains readable but fails capability validation when enabled.
|
|
27868
|
+
persistence: external_exports.enum(["ephemeral", "conversation", "named"]).optional().describe("Supported: ephemeral or conversation. Named remains parseable for stored configs but cannot be enabled."),
|
|
27869
|
+
// INVARIANT: The hosted provider only provisions standard-4; other enabled sizes fail capability validation.
|
|
27870
|
+
instanceType: external_exports.enum(["standard-1", "standard-2", "standard-3", "standard-4"]).optional().describe("Only standard-4 is supported on the hosted Agent Sandbox path; other sizes cannot be enabled."),
|
|
27646
27871
|
networkAccess: sandboxNetworkAccessSchema.optional(),
|
|
27647
27872
|
ttl: external_exports.enum(["5m", "1h", "24h", "unlimited"]).optional(),
|
|
27648
27873
|
sleepAfter: external_exports.enum(["5m", "15m", "30m", "1h"]).optional(),
|
|
@@ -27664,6 +27889,7 @@ var agentDurabilityConfigSchema = external_exports.object({
|
|
|
27664
27889
|
maxBudgetMs: external_exports.number().int().min(1e3).max(864e5).nullable().optional(),
|
|
27665
27890
|
forced: external_exports.enum(["durable", "in_process"]).optional()
|
|
27666
27891
|
});
|
|
27892
|
+
var turnDurabilityOverrideSchema = agentDurabilityConfigSchema.pick({ forced: true, watchLeaseMs: true }).extend({ watchLeaseMs: external_exports.number().int().min(1e4).max(18e5).optional() }).strict();
|
|
27667
27893
|
var DEFAULT_TURN_MAX_BUDGET_MS = 30 * 60 * 1e3;
|
|
27668
27894
|
var agentRuntimeConfigSchema = external_exports.object({
|
|
27669
27895
|
model: external_exports.string().optional(),
|
|
@@ -31934,6 +32160,58 @@ function validateToolCallStrategyNoneWithTools(flowSteps, buckets) {
|
|
|
31934
32160
|
);
|
|
31935
32161
|
}
|
|
31936
32162
|
}
|
|
32163
|
+
var PROVIDER_TOOLS_MIXED_OWNERS_CODE = "PROVIDER_TOOLS_MIXED_OWNERS";
|
|
32164
|
+
function collectProviderToolOwners(toolIds) {
|
|
32165
|
+
const toolIdsByOwner = {};
|
|
32166
|
+
let winner;
|
|
32167
|
+
if (Array.isArray(toolIds)) {
|
|
32168
|
+
for (const toolId of toolIds) {
|
|
32169
|
+
if (typeof toolId !== "string") continue;
|
|
32170
|
+
const owner = resolveDirectProviderToolOwner(toolId);
|
|
32171
|
+
if (!owner) continue;
|
|
32172
|
+
winner ?? (winner = owner);
|
|
32173
|
+
(toolIdsByOwner[owner] ?? (toolIdsByOwner[owner] = [])).push(toolId);
|
|
32174
|
+
}
|
|
32175
|
+
}
|
|
32176
|
+
const owners = Object.keys(toolIdsByOwner).sort();
|
|
32177
|
+
return {
|
|
32178
|
+
owners,
|
|
32179
|
+
toolIdsByOwner: Object.fromEntries(owners.map((owner) => [owner, toolIdsByOwner[owner]])),
|
|
32180
|
+
winner
|
|
32181
|
+
};
|
|
32182
|
+
}
|
|
32183
|
+
function providerToolsMixedOwnersMessage(grouping) {
|
|
32184
|
+
const winner = grouping.winner ?? grouping.owners[0];
|
|
32185
|
+
const attached = grouping.owners.map((owner) => `${owner}: ${grouping.toolIdsByOwner[owner].join(", ")}`).join("; ");
|
|
32186
|
+
const losers = grouping.owners.filter((owner) => owner !== winner).flatMap((owner) => grouping.toolIdsByOwner[owner]).join(", ");
|
|
32187
|
+
return `Provider-native tools from more than one provider are attached (${attached}), but one request reaches one provider, so only the ${winner} tools will run: the request is routed to ${winner} because its tool is listed first, and ${losers} will be sent as an inert function tool or dropped without a signal. Keep the tools of a single provider on this step, or move the other provider's tools to a separate prompt step whose model that provider serves.`;
|
|
32188
|
+
}
|
|
32189
|
+
function validateProviderToolMixedOwners(flowSteps, buckets) {
|
|
32190
|
+
for (const [stepIndex, step] of flowSteps.entries()) {
|
|
32191
|
+
if (step.enabled === false) continue;
|
|
32192
|
+
if (step.type !== "prompt") continue;
|
|
32193
|
+
if (!isObjectRecord(step.config)) continue;
|
|
32194
|
+
const tools = step.config.tools;
|
|
32195
|
+
if (!isObjectRecord(tools)) continue;
|
|
32196
|
+
const grouping = collectProviderToolOwners(tools.toolIds ?? tools.tool_ids);
|
|
32197
|
+
if (grouping.owners.length < 2) continue;
|
|
32198
|
+
addIssue(
|
|
32199
|
+
"warning",
|
|
32200
|
+
{
|
|
32201
|
+
code: PROVIDER_TOOLS_MIXED_OWNERS_CODE,
|
|
32202
|
+
message: providerToolsMixedOwnersMessage(grouping),
|
|
32203
|
+
path: `flowSteps[${stepIndex}].config.tools.toolIds`,
|
|
32204
|
+
step: { index: stepIndex, name: step.name, type: step.type },
|
|
32205
|
+
details: {
|
|
32206
|
+
owners: grouping.owners,
|
|
32207
|
+
toolIdsByOwner: grouping.toolIdsByOwner,
|
|
32208
|
+
winner: grouping.winner
|
|
32209
|
+
}
|
|
32210
|
+
},
|
|
32211
|
+
buckets
|
|
32212
|
+
);
|
|
32213
|
+
}
|
|
32214
|
+
}
|
|
31937
32215
|
var OPTIONAL_PARAM_IN_TOOL_TEMPLATE_CODE = "OPTIONAL_PARAM_IN_TOOL_TEMPLATE";
|
|
31938
32216
|
var TOOL_TEMPLATE_TOKEN_PATTERN = /\{\{([^{}]+)\}\}/g;
|
|
31939
32217
|
var TEMPLATE_IDENTIFIER_HEAD_PATTERN = /^[A-Za-z_$][A-Za-z0-9_$]*/;
|
|
@@ -33078,6 +33356,7 @@ function collectFlowStructureIssues(flowData, deps, buckets) {
|
|
|
33078
33356
|
validateExecuteAgentTemplatedRefs(flowData.flowSteps, buckets, recursiveStepsRejected);
|
|
33079
33357
|
validateToolCallStrategyMultiStep(flowData.flowSteps, buckets);
|
|
33080
33358
|
validateToolCallStrategyNoneWithTools(flowData.flowSteps, buckets);
|
|
33359
|
+
validateProviderToolMixedOwners(flowData.flowSteps, buckets);
|
|
33081
33360
|
validateOptionalParamsInToolTemplates(flowData.flowSteps, buckets);
|
|
33082
33361
|
validateListRecordsArrayAccess(flowData.flowSteps, buckets);
|
|
33083
33362
|
validateFetchClassSwallowingFeed(flowData.flowSteps, buckets);
|
|
@@ -33224,6 +33503,147 @@ var endUserUsageResponseSchema = external_exports.object({
|
|
|
33224
33503
|
executions: external_exports.number().int().nonnegative()
|
|
33225
33504
|
}).merge(endUserUsageMoneySchema)
|
|
33226
33505
|
});
|
|
33506
|
+
var PRODUCTION_HEALTH_MAX_DAYS = 90;
|
|
33507
|
+
var PRODUCTION_HEALTH_DEFAULT_DAYS = 7;
|
|
33508
|
+
var INSIGHT_SEVERITIES = ["critical", "warning", "info"];
|
|
33509
|
+
var metricDeltaSchema = external_exports.object({
|
|
33510
|
+
value: external_exports.number().nullable(),
|
|
33511
|
+
previous: external_exports.number().nullable()
|
|
33512
|
+
});
|
|
33513
|
+
var executionCountsSchema = external_exports.object({
|
|
33514
|
+
/** Runs that started inside the current period. */
|
|
33515
|
+
current: external_exports.number().int(),
|
|
33516
|
+
/** Runs that started inside the preceding period of equal length. */
|
|
33517
|
+
previous: external_exports.number().int(),
|
|
33518
|
+
/** Current-period runs that finished successfully. */
|
|
33519
|
+
successes: external_exports.number().int(),
|
|
33520
|
+
/** Current-period runs that ended in an error or lost their stream. */
|
|
33521
|
+
failures: external_exports.number().int(),
|
|
33522
|
+
/** Current-period runs with no verdict: still running, paused mid-run, or cancelled. */
|
|
33523
|
+
unsettled: external_exports.number().int()
|
|
33524
|
+
});
|
|
33525
|
+
var productionHealthQuerySchema = external_exports.object({
|
|
33526
|
+
days: external_exports.coerce.number().int().min(1).max(PRODUCTION_HEALTH_MAX_DAYS).optional().default(PRODUCTION_HEALTH_DEFAULT_DAYS)
|
|
33527
|
+
});
|
|
33528
|
+
var healthInsightSchema = external_exports.object({
|
|
33529
|
+
id: external_exports.string(),
|
|
33530
|
+
severity: external_exports.enum(INSIGHT_SEVERITIES),
|
|
33531
|
+
title: external_exports.string(),
|
|
33532
|
+
detail: external_exports.string(),
|
|
33533
|
+
href: external_exports.string().optional()
|
|
33534
|
+
});
|
|
33535
|
+
var surfaceUsageSchema = external_exports.object({
|
|
33536
|
+
/** Surface the agent executions were attributed to; rows with no surface type are grouped as `unknown`. */
|
|
33537
|
+
surfaceType: external_exports.string(),
|
|
33538
|
+
/** Agent executions on this surface in the current period. Counts agent runs only, not flow runs. */
|
|
33539
|
+
executions: external_exports.number().int(),
|
|
33540
|
+
/** Share of those agent executions that completed. */
|
|
33541
|
+
successRate: external_exports.number().nullable()
|
|
33542
|
+
});
|
|
33543
|
+
var executionCostMetricSchema = metricDeltaSchema.extend({
|
|
33544
|
+
knownValue: external_exports.number(),
|
|
33545
|
+
knownPrevious: external_exports.number(),
|
|
33546
|
+
incompleteRuns: external_exports.number().int(),
|
|
33547
|
+
previousIncompleteRuns: external_exports.number().int()
|
|
33548
|
+
});
|
|
33549
|
+
var productionHealthResponseSchema = external_exports.object({
|
|
33550
|
+
period: external_exports.object({
|
|
33551
|
+
days: external_exports.number().int(),
|
|
33552
|
+
start: external_exports.string(),
|
|
33553
|
+
end: external_exports.string(),
|
|
33554
|
+
previousStart: external_exports.string()
|
|
33555
|
+
}),
|
|
33556
|
+
/**
|
|
33557
|
+
* Run totals across BOTH populations, read from the run ledgers: one row per
|
|
33558
|
+
* run, whatever it did. `agents` is broken out first because an agent turn
|
|
33559
|
+
* drives a flow internally and used to be counted on both lines at once.
|
|
33560
|
+
* Every field is agents plus flows plus historical runs of unknown population.
|
|
33561
|
+
*/
|
|
33562
|
+
// WHY(docs/why/apps/api/src/services.md#the-run-ledger-cannot-count-agent-runs): two tables, disjoint by construction
|
|
33563
|
+
executions: executionCountsSchema.extend({
|
|
33564
|
+
/** Agent runs, from `agent_executions` — the only table that holds an externally hosted agent's runs. */
|
|
33565
|
+
agents: executionCountsSchema,
|
|
33566
|
+
/** Flow runs, from `flow_executions` rows that no agent drove. */
|
|
33567
|
+
flows: executionCountsSchema,
|
|
33568
|
+
/** Historical runs whose agent/flow identity cannot safely be recovered. */
|
|
33569
|
+
unclassified: executionCountsSchema
|
|
33570
|
+
}),
|
|
33571
|
+
/** Daily UTC intervals anchored to period.start, counting the same root runs as executions. */
|
|
33572
|
+
activity: external_exports.array(
|
|
33573
|
+
external_exports.object({
|
|
33574
|
+
date: external_exports.string(),
|
|
33575
|
+
agents: external_exports.number().int(),
|
|
33576
|
+
flows: external_exports.number().int(),
|
|
33577
|
+
unclassified: external_exports.number().int()
|
|
33578
|
+
})
|
|
33579
|
+
).optional(),
|
|
33580
|
+
/**
|
|
33581
|
+
* Successful runs over SETTLED runs. Runs still open, paused, or cancelled
|
|
33582
|
+
* are outside both halves of this division. Null when nothing settled.
|
|
33583
|
+
*/
|
|
33584
|
+
successRate: metricDeltaSchema,
|
|
33585
|
+
/**
|
|
33586
|
+
* 95th percentile of a run's wall clock, end to end: context steps, tool
|
|
33587
|
+
* steps and queueing included. Measured over settled runs only. A run that
|
|
33588
|
+
* paused for an approval or a client tool and then resumed carries the wait
|
|
33589
|
+
* inside its wall clock. Null when no settled run recorded a duration.
|
|
33590
|
+
*/
|
|
33591
|
+
p95LatencyMs: metricDeltaSchema,
|
|
33592
|
+
/**
|
|
33593
|
+
* Estimated model cost of EVERY run in the period, divided by the successful
|
|
33594
|
+
* ones, so failed runs load the average. Cost includes all observed model invocations,
|
|
33595
|
+
* including retries, fallback, compaction, and descendants. Null when any
|
|
33596
|
+
* run has incomplete model accounting.
|
|
33597
|
+
*/
|
|
33598
|
+
// WHY(docs/why/apps/api/src/services.md#production-health-cost-is-model-cost-not-billed-spend): not billed spend, never reconciles
|
|
33599
|
+
modelCostPerSuccess: metricDeltaSchema,
|
|
33600
|
+
/** Estimated model cost across every run in the window, failed runs included. */
|
|
33601
|
+
totalModelCost: metricDeltaSchema,
|
|
33602
|
+
costs: external_exports.object({
|
|
33603
|
+
model: executionCostMetricSchema,
|
|
33604
|
+
tool: executionCostMetricSchema,
|
|
33605
|
+
total: executionCostMetricSchema
|
|
33606
|
+
}),
|
|
33607
|
+
/**
|
|
33608
|
+
* Share of runs where at least one attempt routed to a fallback model instead
|
|
33609
|
+
* of the configured one, over every run in the period. Null while any run has incomplete
|
|
33610
|
+
* model accounting.
|
|
33611
|
+
*/
|
|
33612
|
+
fallbackShare: metricDeltaSchema,
|
|
33613
|
+
/**
|
|
33614
|
+
* Eval pass rates. `value` and `previous` are the latest scored run and the previous scored run in
|
|
33615
|
+
* the same suite, compared run over run rather than period over
|
|
33616
|
+
* period, so either may predate the window.
|
|
33617
|
+
*/
|
|
33618
|
+
evals: metricDeltaSchema.extend({
|
|
33619
|
+
suiteId: external_exports.string().nullable(),
|
|
33620
|
+
suiteName: external_exports.string().nullable(),
|
|
33621
|
+
/** When the most recent eval run of any kind was created; null if none has ever run. */
|
|
33622
|
+
lastRunAt: external_exports.string().nullable(),
|
|
33623
|
+
/**
|
|
33624
|
+
* When the run behind `value` was created; null while nothing has ever
|
|
33625
|
+
* scored. Older than `lastRunAt` whenever the newest run is still
|
|
33626
|
+
* processing, failed, cancelled, or graded nothing, so this is the only
|
|
33627
|
+
* timestamp a pass rate may be shown beside.
|
|
33628
|
+
*/
|
|
33629
|
+
// INVARIANT: value belongs to this run, never to lastRunAt
|
|
33630
|
+
lastScoredRunAt: external_exports.string().nullable(),
|
|
33631
|
+
/**
|
|
33632
|
+
* Whether `lastRunAt` falls inside the current period. Any eval run counts,
|
|
33633
|
+
* including one still processing, cancelled, failed, or with no graders, so
|
|
33634
|
+
* this can be true while `value` is null, and false while `value` is set.
|
|
33635
|
+
*/
|
|
33636
|
+
// INVARIANT: recency is asked of every eval run; pass rates come only from runs that scored
|
|
33637
|
+
ranInPeriod: external_exports.boolean()
|
|
33638
|
+
}),
|
|
33639
|
+
agents: external_exports.object({
|
|
33640
|
+
/** Share of agent runs that stopped because they hit the turn ceiling. Counts are in `executions.agents`. */
|
|
33641
|
+
maxTurnsShare: metricDeltaSchema
|
|
33642
|
+
}),
|
|
33643
|
+
surfaces: external_exports.array(surfaceUsageSchema),
|
|
33644
|
+
insights: external_exports.array(healthInsightSchema),
|
|
33645
|
+
generatedAt: external_exports.string()
|
|
33646
|
+
});
|
|
33227
33647
|
var RUNTIME_ARTIFACT_MANIFEST_VERSION = "2026-06-08";
|
|
33228
33648
|
var runtimeArtifactResourceTypeSchema = external_exports.enum(["flow", "agent"]);
|
|
33229
33649
|
var runtimeArtifactEntrypointSchema = external_exports.enum(["flow", "agent"]);
|
|
@@ -34878,7 +35298,8 @@ var FORWARDED_CORE_CODES = /* @__PURE__ */ new Set([
|
|
|
34878
35298
|
RESERVED_TOOL_NAME_CODE,
|
|
34879
35299
|
STORE_VECTOR_MODEL_MISSING_CODE,
|
|
34880
35300
|
TOOL_CALL_STEP_UNKNOWN_CATALOG_TOOL_CODE,
|
|
34881
|
-
EXECUTE_AGENT_TEMPLATED_REF_UNRUNNABLE_CODE
|
|
35301
|
+
EXECUTE_AGENT_TEMPLATED_REF_UNRUNNABLE_CODE,
|
|
35302
|
+
PROVIDER_TOOLS_MIXED_OWNERS_CODE
|
|
34882
35303
|
]);
|
|
34883
35304
|
function validateFlowDefinition(flow, capIndex, context) {
|
|
34884
35305
|
const result = emptyResult();
|
|
@@ -34975,7 +35396,14 @@ function appendForwardedCoreIssues(flow, base, result) {
|
|
|
34975
35396
|
if (!FORWARDED_CORE_CODES.has(issue2.code)) return;
|
|
34976
35397
|
const bucket = severity === "error" ? result.errors : result.warnings;
|
|
34977
35398
|
bucket.push(
|
|
34978
|
-
createIssue(
|
|
35399
|
+
createIssue(
|
|
35400
|
+
severity,
|
|
35401
|
+
issue2.code,
|
|
35402
|
+
issue2.message,
|
|
35403
|
+
reprefixCorePath(issue2.path, base),
|
|
35404
|
+
void 0,
|
|
35405
|
+
isRecord(issue2.details) ? issue2.details : void 0
|
|
35406
|
+
)
|
|
34979
35407
|
);
|
|
34980
35408
|
};
|
|
34981
35409
|
for (const issue2 of coreResult.errors) push(issue2, "error");
|
|
@@ -34985,6 +35413,29 @@ function finalize2(r) {
|
|
|
34985
35413
|
r.valid = r.errors.length === 0;
|
|
34986
35414
|
return r;
|
|
34987
35415
|
}
|
|
35416
|
+
function getAgentSandboxCapabilityIssues(config3) {
|
|
35417
|
+
if (!config3 || typeof config3 !== "object" || !("enabled" in config3) || config3.enabled !== true)
|
|
35418
|
+
return [];
|
|
35419
|
+
const sandbox = config3;
|
|
35420
|
+
const capabilities = {
|
|
35421
|
+
provider: ["runtype-sandbox"],
|
|
35422
|
+
persistence: ["ephemeral", "conversation"],
|
|
35423
|
+
instanceType: [CONTAINER_SANDBOX_INSTANCE_TYPE]
|
|
35424
|
+
};
|
|
35425
|
+
const issues = [];
|
|
35426
|
+
for (const [field, supported] of Object.entries(capabilities)) {
|
|
35427
|
+
const requested = sandbox[field];
|
|
35428
|
+
if (typeof requested !== "string" || supported.includes(requested)) continue;
|
|
35429
|
+
issues.push({
|
|
35430
|
+
code: "unsupported_sandbox_capability",
|
|
35431
|
+
path: `config.sandbox.${field}`,
|
|
35432
|
+
requested,
|
|
35433
|
+
supported,
|
|
35434
|
+
message: `Agent Sandbox ${field} '${requested}' is unavailable; supported: ${supported.join(", ")}`
|
|
35435
|
+
});
|
|
35436
|
+
}
|
|
35437
|
+
return issues;
|
|
35438
|
+
}
|
|
34988
35439
|
function reservedToolNameIssue(name, path21) {
|
|
34989
35440
|
return createIssue(
|
|
34990
35441
|
"error",
|
|
@@ -34993,6 +35444,22 @@ function reservedToolNameIssue(name, path21) {
|
|
|
34993
35444
|
path21
|
|
34994
35445
|
);
|
|
34995
35446
|
}
|
|
35447
|
+
function providerToolsMixedOwnersIssue(toolIds, path21) {
|
|
35448
|
+
const grouping = collectProviderToolOwners(toolIds);
|
|
35449
|
+
if (grouping.owners.length < 2) return void 0;
|
|
35450
|
+
return createIssue(
|
|
35451
|
+
"warning",
|
|
35452
|
+
PROVIDER_TOOLS_MIXED_OWNERS_CODE,
|
|
35453
|
+
providerToolsMixedOwnersMessage(grouping),
|
|
35454
|
+
path21,
|
|
35455
|
+
void 0,
|
|
35456
|
+
{
|
|
35457
|
+
owners: grouping.owners,
|
|
35458
|
+
toolIdsByOwner: grouping.toolIdsByOwner,
|
|
35459
|
+
winner: grouping.winner
|
|
35460
|
+
}
|
|
35461
|
+
);
|
|
35462
|
+
}
|
|
34996
35463
|
function validateAgentDefinition(agent, capIndex) {
|
|
34997
35464
|
const result = emptyResult();
|
|
34998
35465
|
const base = `capabilities[${capIndex}].agent`;
|
|
@@ -35002,6 +35469,12 @@ function validateAgentDefinition(agent, capIndex) {
|
|
|
35002
35469
|
);
|
|
35003
35470
|
}
|
|
35004
35471
|
if (isNestedFpoAgent(agent)) {
|
|
35472
|
+
for (const issue2 of getAgentSandboxCapabilityIssues(agent.config?.sandbox)) {
|
|
35473
|
+
result.errors.push(createIssue("error", issue2.code, issue2.message, `${base}.${issue2.path}`, void 0, {
|
|
35474
|
+
requested: issue2.requested,
|
|
35475
|
+
supported: issue2.supported
|
|
35476
|
+
}));
|
|
35477
|
+
}
|
|
35005
35478
|
validateNestedAgent(agent, base, result);
|
|
35006
35479
|
} else {
|
|
35007
35480
|
validateFlatAgent(agent, base, result);
|
|
@@ -35010,12 +35483,22 @@ function validateAgentDefinition(agent, capIndex) {
|
|
|
35010
35483
|
for (const [i, ref] of agent.capabilityToolRefs.entries()) {
|
|
35011
35484
|
if (!ref.toolName || ref.toolName.trim() === "") {
|
|
35012
35485
|
result.errors.push(
|
|
35013
|
-
createIssue(
|
|
35486
|
+
createIssue(
|
|
35487
|
+
"error",
|
|
35488
|
+
"CAPABILITY_TOOL_REF_NAME_EMPTY",
|
|
35489
|
+
"capabilityToolRefs toolName is required",
|
|
35490
|
+
`${base}.capabilityToolRefs[${i}].toolName`
|
|
35491
|
+
)
|
|
35014
35492
|
);
|
|
35015
35493
|
}
|
|
35016
35494
|
if (!ref.capabilityId || ref.capabilityId.trim() === "") {
|
|
35017
35495
|
result.errors.push(
|
|
35018
|
-
createIssue(
|
|
35496
|
+
createIssue(
|
|
35497
|
+
"error",
|
|
35498
|
+
"CAPABILITY_TOOL_REF_ID_EMPTY",
|
|
35499
|
+
"capabilityToolRefs capabilityId is required",
|
|
35500
|
+
`${base}.capabilityToolRefs[${i}].capabilityId`
|
|
35501
|
+
)
|
|
35019
35502
|
);
|
|
35020
35503
|
}
|
|
35021
35504
|
}
|
|
@@ -35033,7 +35516,12 @@ function validateFlatAgent(agent, base, result) {
|
|
|
35033
35516
|
for (const [i, tool] of agent.tools.entries()) {
|
|
35034
35517
|
if (!tool.name || tool.name.trim() === "") {
|
|
35035
35518
|
result.errors.push(
|
|
35036
|
-
createIssue(
|
|
35519
|
+
createIssue(
|
|
35520
|
+
"error",
|
|
35521
|
+
"AGENT_TOOL_NAME_EMPTY",
|
|
35522
|
+
"Agent tool name is required",
|
|
35523
|
+
`${base}.tools[${i}].name`
|
|
35524
|
+
)
|
|
35037
35525
|
);
|
|
35038
35526
|
}
|
|
35039
35527
|
}
|
|
@@ -35041,15 +35529,30 @@ function validateFlatAgent(agent, base, result) {
|
|
|
35041
35529
|
if (agent.advisor) {
|
|
35042
35530
|
if (!agent.advisor.model || agent.advisor.model.trim() === "") {
|
|
35043
35531
|
result.errors.push(
|
|
35044
|
-
createIssue(
|
|
35532
|
+
createIssue(
|
|
35533
|
+
"error",
|
|
35534
|
+
"AGENT_ADVISOR_NO_MODEL",
|
|
35535
|
+
"Advisor model is required when advisor is configured",
|
|
35536
|
+
`${base}.advisor.model`
|
|
35537
|
+
)
|
|
35045
35538
|
);
|
|
35046
35539
|
}
|
|
35047
35540
|
}
|
|
35541
|
+
const flatMixedOwners = providerToolsMixedOwnersIssue(
|
|
35542
|
+
agent.toolsConfig?.toolIds,
|
|
35543
|
+
`${base}.toolsConfig.toolIds`
|
|
35544
|
+
);
|
|
35545
|
+
if (flatMixedOwners) result.warnings.push(flatMixedOwners);
|
|
35048
35546
|
if (agent.toolsConfig?.runtimeTools) {
|
|
35049
35547
|
for (const [i, tool] of agent.toolsConfig.runtimeTools.entries()) {
|
|
35050
35548
|
if (!tool.name || tool.name.trim() === "") {
|
|
35051
35549
|
result.errors.push(
|
|
35052
|
-
createIssue(
|
|
35550
|
+
createIssue(
|
|
35551
|
+
"error",
|
|
35552
|
+
"RUNTIME_TOOL_NAME_EMPTY",
|
|
35553
|
+
"Runtime tool name is required",
|
|
35554
|
+
`${base}.toolsConfig.runtimeTools[${i}].name`
|
|
35555
|
+
)
|
|
35053
35556
|
);
|
|
35054
35557
|
} else if (isReservedRuntypeToolName(tool.name)) {
|
|
35055
35558
|
result.errors.push(
|
|
@@ -35058,7 +35561,12 @@ function validateFlatAgent(agent, base, result) {
|
|
|
35058
35561
|
}
|
|
35059
35562
|
if (tool.toolType === "flow" && (!tool.config?.steps || !Array.isArray(tool.config.steps) || tool.config.steps.length === 0)) {
|
|
35060
35563
|
result.warnings.push(
|
|
35061
|
-
createIssue(
|
|
35564
|
+
createIssue(
|
|
35565
|
+
"warning",
|
|
35566
|
+
"FLOW_RUNTIME_TOOL_NO_STEPS",
|
|
35567
|
+
"Flow runtime tool should have steps in config",
|
|
35568
|
+
`${base}.toolsConfig.runtimeTools[${i}].config.steps`
|
|
35569
|
+
)
|
|
35062
35570
|
);
|
|
35063
35571
|
}
|
|
35064
35572
|
}
|
|
@@ -35074,15 +35582,30 @@ function validateNestedAgent(agent, base, result) {
|
|
|
35074
35582
|
if (config3?.advisor) {
|
|
35075
35583
|
if (!config3.advisor.model || config3.advisor.model.trim() === "") {
|
|
35076
35584
|
result.errors.push(
|
|
35077
|
-
createIssue(
|
|
35585
|
+
createIssue(
|
|
35586
|
+
"error",
|
|
35587
|
+
"AGENT_ADVISOR_NO_MODEL",
|
|
35588
|
+
"Advisor model is required when advisor is configured",
|
|
35589
|
+
`${base}.config.advisor.model`
|
|
35590
|
+
)
|
|
35078
35591
|
);
|
|
35079
35592
|
}
|
|
35080
35593
|
}
|
|
35594
|
+
const nestedMixedOwners = providerToolsMixedOwnersIssue(
|
|
35595
|
+
config3?.tools?.toolIds,
|
|
35596
|
+
`${base}.config.tools.toolIds`
|
|
35597
|
+
);
|
|
35598
|
+
if (nestedMixedOwners) result.warnings.push(nestedMixedOwners);
|
|
35081
35599
|
if (config3?.tools?.runtimeTools) {
|
|
35082
35600
|
for (const [i, tool] of config3.tools.runtimeTools.entries()) {
|
|
35083
35601
|
if (!tool.name || tool.name.trim() === "") {
|
|
35084
35602
|
result.errors.push(
|
|
35085
|
-
createIssue(
|
|
35603
|
+
createIssue(
|
|
35604
|
+
"error",
|
|
35605
|
+
"RUNTIME_TOOL_NAME_EMPTY",
|
|
35606
|
+
"Runtime tool name is required",
|
|
35607
|
+
`${base}.config.tools.runtimeTools[${i}].name`
|
|
35608
|
+
)
|
|
35086
35609
|
);
|
|
35087
35610
|
} else if (isReservedRuntypeToolName(tool.name)) {
|
|
35088
35611
|
result.errors.push(
|
|
@@ -35091,7 +35614,12 @@ function validateNestedAgent(agent, base, result) {
|
|
|
35091
35614
|
}
|
|
35092
35615
|
if (tool.toolType === "flow" && (!tool.config?.steps || !Array.isArray(tool.config.steps) || tool.config.steps.length === 0)) {
|
|
35093
35616
|
result.warnings.push(
|
|
35094
|
-
createIssue(
|
|
35617
|
+
createIssue(
|
|
35618
|
+
"warning",
|
|
35619
|
+
"FLOW_RUNTIME_TOOL_NO_STEPS",
|
|
35620
|
+
"Flow runtime tool should have steps in config",
|
|
35621
|
+
`${base}.config.tools.runtimeTools[${i}].config.steps`
|
|
35622
|
+
)
|
|
35095
35623
|
);
|
|
35096
35624
|
}
|
|
35097
35625
|
}
|
|
@@ -36551,6 +37079,14 @@ var AgentInputSchema = external_exports.object({
|
|
|
36551
37079
|
*/
|
|
36552
37080
|
agentType: external_exports.enum(["runtype", "claude_managed"]).optional(),
|
|
36553
37081
|
claudeManagedConfig: DispatchClaudeManagedConfigSchema.optional(),
|
|
37082
|
+
/**
|
|
37083
|
+
* Release alias selecting which stored version runs (ADR 0025). Mutually
|
|
37084
|
+
* exclusive with `versionId`. With a selector present and `agentId` absent,
|
|
37085
|
+
* `name` becomes a lookup key rather than an inline agent's name.
|
|
37086
|
+
*/
|
|
37087
|
+
alias: external_exports.string().min(1).max(AGENT_ALIAS_MAX_LENGTH).optional(),
|
|
37088
|
+
/** Immutable `agent_versions` id to run. Mutually exclusive with `alias`. */
|
|
37089
|
+
versionId: external_exports.string().min(1).optional(),
|
|
36554
37090
|
name: external_exports.string().min(1).optional(),
|
|
36555
37091
|
model: external_exports.string().min(1).optional(),
|
|
36556
37092
|
systemPrompt: external_exports.string().optional(),
|
|
@@ -36612,6 +37148,8 @@ var AgentInputSchema = external_exports.object({
|
|
|
36612
37148
|
memory: memoryConfigSchema.optional(),
|
|
36613
37149
|
// WHY(docs/why/packages/shared/src/api-schemas.md#sandbox-mirrors-the-saved-agent-execute-route-so): sandbox mirrors the saved-agent execute route so both hosted-agent entry points stay in lockstep.
|
|
36614
37150
|
sandbox: sandboxConfigSchema.optional(),
|
|
37151
|
+
// WHY(ADR-0020): durability mirrors the SAVED agent config, like sandbox above, so a round-tripped config still validates.
|
|
37152
|
+
durability: agentDurabilityConfigSchema.optional(),
|
|
36615
37153
|
tenancyStrategy: agentRuntimeConfigSchema.shape.tenancyStrategy
|
|
36616
37154
|
}).superRefine((val, ctx) => {
|
|
36617
37155
|
const unsupported = val.tenancyStrategy !== void 0 ? [["tenancyStrategy"], "tenancyStrategy is server-authored; save it on an agent"] : val.voice !== void 0 ? [["voice"], "voice is unsupported by agent dispatch"] : val.tools?.toolSearch !== void 0 ? [["tools", "toolSearch"], "toolSearch is unsupported by quick-agent dispatch"] : Object.keys(val.temporal ?? {}).some((key) => key !== "timezone") ? [["temporal"], "Only temporal.timezone is supported by agent dispatch"] : void 0;
|
|
@@ -36623,9 +37161,21 @@ var AgentInputSchema = external_exports.object({
|
|
|
36623
37161
|
message
|
|
36624
37162
|
});
|
|
36625
37163
|
}
|
|
37164
|
+
const selectorViolation = agentSelectorViolation(val);
|
|
37165
|
+
if (selectorViolation) {
|
|
37166
|
+
ctx.addIssue({
|
|
37167
|
+
code: "custom",
|
|
37168
|
+
path: selectorViolation.path.replace(/^agent\./, "").split("."),
|
|
37169
|
+
message: selectorViolation.message
|
|
37170
|
+
});
|
|
37171
|
+
return;
|
|
37172
|
+
}
|
|
36626
37173
|
if (val.agentId) {
|
|
36627
37174
|
return;
|
|
36628
37175
|
}
|
|
37176
|
+
if (hasAgentSelector(val)) {
|
|
37177
|
+
return;
|
|
37178
|
+
}
|
|
36629
37179
|
if (val.agentType !== "claude_managed") {
|
|
36630
37180
|
if (!val.name) {
|
|
36631
37181
|
ctx.addIssue({ code: "custom", path: ["name"], message: "name is required" });
|
|
@@ -37314,6 +37864,40 @@ var SANDBOX_TTL_OPTIONS = [
|
|
|
37314
37864
|
{ label: "2 hours", value: 2 * 60 * 60 },
|
|
37315
37865
|
{ label: "Unlimited", value: null }
|
|
37316
37866
|
];
|
|
37867
|
+
var sandboxDeployRetentionSchema = external_exports.enum(["10m", "1h", "24h", "unlimited"]);
|
|
37868
|
+
var sandboxDeploySleepPolicySchema = external_exports.discriminatedUnion("mode", [
|
|
37869
|
+
external_exports.object({ mode: external_exports.literal("never") }).strict(),
|
|
37870
|
+
external_exports.object({ mode: external_exports.literal("idle"), after: external_exports.enum(["5m", "15m", "30m", "1h"]) }).strict()
|
|
37871
|
+
]);
|
|
37872
|
+
var explicitSandboxDeployRequestSchema = external_exports.object({
|
|
37873
|
+
code: external_exports.string().min(1),
|
|
37874
|
+
packageJson: external_exports.string().optional(),
|
|
37875
|
+
language: external_exports.enum(["javascript", "typescript", "python"]).optional(),
|
|
37876
|
+
port: external_exports.number().int().min(1).max(65535).optional(),
|
|
37877
|
+
sandboxId: external_exports.string().min(1).optional(),
|
|
37878
|
+
startCommand: external_exports.string().optional(),
|
|
37879
|
+
files: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
37880
|
+
retention: sandboxDeployRetentionSchema.optional(),
|
|
37881
|
+
sleepPolicy: sandboxDeploySleepPolicySchema.optional(),
|
|
37882
|
+
managed: external_exports.literal(false).optional()
|
|
37883
|
+
}).passthrough();
|
|
37884
|
+
var daytonaSandboxDeployRequestSchema = explicitSandboxDeployRequestSchema.extend({
|
|
37885
|
+
labels: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
37886
|
+
autoStopInterval: external_exports.number().int().nonnegative().optional(),
|
|
37887
|
+
autoDeleteInterval: external_exports.number().int().min(-1).optional()
|
|
37888
|
+
}).refine((value) => value.sleepPolicy === void 0 || value.autoStopInterval === void 0, {
|
|
37889
|
+
path: ["sleepPolicy"],
|
|
37890
|
+
message: "Specify sleepPolicy or autoStopInterval, not both"
|
|
37891
|
+
});
|
|
37892
|
+
var sandboxDeployEffectivePolicySchema = external_exports.object({
|
|
37893
|
+
retention: sandboxDeployRetentionSchema,
|
|
37894
|
+
origin: external_exports.enum(["explicit", "legacy-default"]),
|
|
37895
|
+
expiresAt: external_exports.string().nullable(),
|
|
37896
|
+
metering: external_exports.enum(["active", "legacy-untracked"]),
|
|
37897
|
+
sleepPolicy: sandboxDeploySleepPolicySchema.optional(),
|
|
37898
|
+
autoStopInterval: external_exports.number().optional(),
|
|
37899
|
+
autoDeleteInterval: external_exports.number().optional()
|
|
37900
|
+
});
|
|
37317
37901
|
var SANDBOX_RETENTION_DEFAULT_SECONDS = 60 * 60;
|
|
37318
37902
|
var SANDBOX_BACKUP_UNLIMITED_TTL_SECONDS = 365 * 24 * 60 * 60;
|
|
37319
37903
|
var APP_MANIFEST_LIMITS = {
|
|
@@ -47715,13 +48299,44 @@ function getActiveDeploySandboxPreviewUrl() {
|
|
|
47715
48299
|
function setActiveDeploySandboxPreviewUrl(url2) {
|
|
47716
48300
|
activeDeploySandboxPreviewUrl = url2;
|
|
47717
48301
|
}
|
|
48302
|
+
var deployLifecycleParameters = {
|
|
48303
|
+
retention: {
|
|
48304
|
+
type: "string",
|
|
48305
|
+
enum: ["10m", "1h", "24h", "unlimited"],
|
|
48306
|
+
description: "Runtype destruction backstop. Omitted: Daytona 10m, Runtype Sandbox unlimited. Provider sleep/loss can end availability earlier."
|
|
48307
|
+
},
|
|
48308
|
+
sleepPolicy: {
|
|
48309
|
+
description: "Idle compute policy, independent of retention. Legacy Runtype Sandbox supports idle only.",
|
|
48310
|
+
oneOf: [
|
|
48311
|
+
{ type: "object", properties: { mode: { const: "never" } }, required: ["mode"], additionalProperties: false },
|
|
48312
|
+
{ type: "object", properties: { mode: { const: "idle" }, after: { enum: ["5m", "15m", "30m", "1h"] } }, required: ["mode", "after"], additionalProperties: false }
|
|
48313
|
+
]
|
|
48314
|
+
}
|
|
48315
|
+
};
|
|
48316
|
+
function deployLifecycleOptions(args) {
|
|
48317
|
+
return {
|
|
48318
|
+
...args.retention !== void 0 ? { retention: args.retention } : {},
|
|
48319
|
+
...args.sleepPolicy !== void 0 ? { sleepPolicy: args.sleepPolicy } : {}
|
|
48320
|
+
};
|
|
48321
|
+
}
|
|
47718
48322
|
function createDeploySandboxLocalTool(client, debugMode) {
|
|
47719
48323
|
return {
|
|
47720
|
-
description: "Deploy
|
|
48324
|
+
description: "Deploy a live Daytona server preview. Retention defaults to ten minutes; provider autostop is independent. The preview URL is not durable hosting.",
|
|
47721
48325
|
parametersSchema: {
|
|
47722
48326
|
type: "object",
|
|
47723
48327
|
properties: {
|
|
47724
48328
|
code: { type: "string", description: "Code to deploy (written to main file)" },
|
|
48329
|
+
...deployLifecycleParameters,
|
|
48330
|
+
autoStopInterval: {
|
|
48331
|
+
type: "integer",
|
|
48332
|
+
minimum: 0,
|
|
48333
|
+
description: "Daytona SDK inactivity in minutes; default 120, zero disables. Cannot be combined with sleepPolicy."
|
|
48334
|
+
},
|
|
48335
|
+
autoDeleteInterval: {
|
|
48336
|
+
type: "integer",
|
|
48337
|
+
minimum: -1,
|
|
48338
|
+
description: "Minutes continuously stopped before Daytona deletes: -1 disables, zero deletes on stop. May end availability before Runtype retention."
|
|
48339
|
+
},
|
|
47725
48340
|
packageJson: {
|
|
47726
48341
|
type: "object",
|
|
47727
48342
|
description: 'package.json content as a JSON object, e.g. { "dependencies": { "express": "^4.18.2" } }'
|
|
@@ -47754,6 +48369,9 @@ function createDeploySandboxLocalTool(client, debugMode) {
|
|
|
47754
48369
|
}
|
|
47755
48370
|
const request = {
|
|
47756
48371
|
code,
|
|
48372
|
+
...deployLifecycleOptions(args),
|
|
48373
|
+
...typeof args.autoStopInterval === "number" ? { autoStopInterval: args.autoStopInterval } : {},
|
|
48374
|
+
...typeof args.autoDeleteInterval === "number" ? { autoDeleteInterval: args.autoDeleteInterval } : {},
|
|
47757
48375
|
...args.packageJson && typeof args.packageJson === "object" ? { packageJson: JSON.stringify(args.packageJson) } : typeof args.packageJson === "string" ? { packageJson: args.packageJson } : {},
|
|
47758
48376
|
...typeof args.language === "string" ? { language: args.language } : {},
|
|
47759
48377
|
...typeof args.port === "number" ? { port: args.port } : {},
|
|
@@ -47782,6 +48400,7 @@ function createDeploySandboxLocalTool(client, debugMode) {
|
|
|
47782
48400
|
sandboxId: result.sandboxId,
|
|
47783
48401
|
previewUrl: result.previewUrl,
|
|
47784
48402
|
output: result.output,
|
|
48403
|
+
effectivePolicy: result.effectivePolicy,
|
|
47785
48404
|
...result.error ? { error: result.error } : {}
|
|
47786
48405
|
};
|
|
47787
48406
|
} catch (error61) {
|
|
@@ -47800,11 +48419,12 @@ function createDeploySandboxLocalTool(client, debugMode) {
|
|
|
47800
48419
|
var activeCfSandboxId;
|
|
47801
48420
|
function createDeployCfSandboxLocalTool(client, debugMode) {
|
|
47802
48421
|
return {
|
|
47803
|
-
description: "Deploy
|
|
48422
|
+
description: "Deploy a live Runtype Sandbox server preview. Omitted retention preserves the unlimited legacy backstop; explicit lifecycle policy requires rollout enablement. Provider sleep/loss can end availability earlier; the URL is not durable hosting.",
|
|
47804
48423
|
parametersSchema: {
|
|
47805
48424
|
type: "object",
|
|
47806
48425
|
properties: {
|
|
47807
48426
|
code: { type: "string", description: "Code to deploy (main entry point file)" },
|
|
48427
|
+
...deployLifecycleParameters,
|
|
47808
48428
|
packageJson: {
|
|
47809
48429
|
type: "object",
|
|
47810
48430
|
description: 'package.json content as a JSON object, e.g. { "dependencies": { "hono": "^4.0.0" } }'
|
|
@@ -47837,6 +48457,7 @@ function createDeployCfSandboxLocalTool(client, debugMode) {
|
|
|
47837
48457
|
}
|
|
47838
48458
|
const request = {
|
|
47839
48459
|
code,
|
|
48460
|
+
...deployLifecycleOptions(args),
|
|
47840
48461
|
...args.packageJson && typeof args.packageJson === "object" ? { packageJson: JSON.stringify(args.packageJson) } : typeof args.packageJson === "string" ? { packageJson: args.packageJson } : {},
|
|
47841
48462
|
...typeof args.language === "string" ? { language: args.language } : {},
|
|
47842
48463
|
...typeof args.port === "number" ? { port: args.port } : {},
|
|
@@ -47864,6 +48485,7 @@ function createDeployCfSandboxLocalTool(client, debugMode) {
|
|
|
47864
48485
|
sandboxId: result.sandboxId,
|
|
47865
48486
|
previewUrl: result.previewUrl,
|
|
47866
48487
|
output: result.output,
|
|
48488
|
+
effectivePolicy: result.effectivePolicy,
|
|
47867
48489
|
...result.error ? { error: result.error } : {}
|
|
47868
48490
|
};
|
|
47869
48491
|
} catch (error61) {
|
|
@@ -50670,19 +51292,19 @@ function upsertSessionSnapshots(snapshots, nextSnapshot) {
|
|
|
50670
51292
|
return result;
|
|
50671
51293
|
}
|
|
50672
51294
|
function buildLiveSessionSnapshot(liveState, rawEvents, sessionIndex, model) {
|
|
50673
|
-
const
|
|
50674
|
-
const hasLiveState = liveState.phase === "thinking" ||
|
|
51295
|
+
const isError2 = liveState.phase === "error";
|
|
51296
|
+
const hasLiveState = liveState.phase === "thinking" || isError2 || Boolean(liveState.content) || Boolean(liveState.reasoning) || liveState.tools.length > 0 || rawEvents.length > 0 || Boolean(liveState.contextCompaction?.active);
|
|
50675
51297
|
if (!hasLiveState) return void 0;
|
|
50676
51298
|
return {
|
|
50677
51299
|
sessionIndex,
|
|
50678
|
-
status:
|
|
51300
|
+
status: isError2 ? "error" : "live",
|
|
50679
51301
|
model,
|
|
50680
51302
|
cost: liveState.totalCost,
|
|
50681
51303
|
content: liveState.content,
|
|
50682
51304
|
reasoning: liveState.reasoning,
|
|
50683
51305
|
tools: liveState.tools,
|
|
50684
51306
|
rawEvents,
|
|
50685
|
-
...
|
|
51307
|
+
...isError2 && liveState.error ? { errorMessage: liveState.error.message } : {}
|
|
50686
51308
|
};
|
|
50687
51309
|
}
|
|
50688
51310
|
function copyToClipboard(text) {
|
|
@@ -65634,7 +66256,7 @@ async function configureWithFallbackWriter(agent, options) {
|
|
|
65634
66256
|
return {
|
|
65635
66257
|
configured: false,
|
|
65636
66258
|
changed: false,
|
|
65637
|
-
error: `Could not inspect ${MCP_AGENT_DEFINITIONS[agent].displayName}'s MCP configuration: ${
|
|
66259
|
+
error: `Could not inspect ${MCP_AGENT_DEFINITIONS[agent].displayName}'s MCP configuration: ${getErrorMessage2(error61)}`
|
|
65638
66260
|
};
|
|
65639
66261
|
}
|
|
65640
66262
|
if (inspected.server?.identity === RUNTYPE_MCP_URL) {
|
|
@@ -65664,7 +66286,7 @@ async function configureWithFallbackWriter(agent, options) {
|
|
|
65664
66286
|
changed: false,
|
|
65665
66287
|
configPath: inspected.configPath,
|
|
65666
66288
|
backupPath,
|
|
65667
|
-
error: `Could not update ${MCP_AGENT_DEFINITIONS[agent].displayName}'s MCP configuration: ${
|
|
66289
|
+
error: `Could not update ${MCP_AGENT_DEFINITIONS[agent].displayName}'s MCP configuration: ${getErrorMessage2(error61)}`
|
|
65668
66290
|
};
|
|
65669
66291
|
}
|
|
65670
66292
|
if (!installation.success) {
|
|
@@ -65687,7 +66309,7 @@ async function configureWithFallbackWriter(agent, options) {
|
|
|
65687
66309
|
changed: false,
|
|
65688
66310
|
configPath: installation.path,
|
|
65689
66311
|
backupPath,
|
|
65690
|
-
error: `The MCP config could not be verified, so the previous config was restored: ${
|
|
66312
|
+
error: `The MCP config could not be verified, so the previous config was restored: ${getErrorMessage2(error61)}`
|
|
65691
66313
|
};
|
|
65692
66314
|
}
|
|
65693
66315
|
if (verified.server?.identity !== RUNTYPE_MCP_URL) {
|
|
@@ -65707,7 +66329,7 @@ async function configureWithFallbackWriter(agent, options) {
|
|
|
65707
66329
|
backupPath
|
|
65708
66330
|
};
|
|
65709
66331
|
}
|
|
65710
|
-
function
|
|
66332
|
+
function getErrorMessage2(error61) {
|
|
65711
66333
|
return error61 instanceof Error ? error61.message : String(error61);
|
|
65712
66334
|
}
|
|
65713
66335
|
function restoreFallbackConfig(configPath, backupPath) {
|
|
@@ -65732,7 +66354,7 @@ async function configureMcpAgent(agent, options = {}) {
|
|
|
65732
66354
|
return {
|
|
65733
66355
|
configured: false,
|
|
65734
66356
|
changed: false,
|
|
65735
|
-
error: `Could not configure ${MCP_AGENT_DEFINITIONS[agent].displayName}: ${
|
|
66357
|
+
error: `Could not configure ${MCP_AGENT_DEFINITIONS[agent].displayName}: ${getErrorMessage2(error61)}`
|
|
65736
66358
|
};
|
|
65737
66359
|
}
|
|
65738
66360
|
}
|
|
@@ -66010,9 +66632,9 @@ import chalk43 from "chalk";
|
|
|
66010
66632
|
// ../shared/dist/agent-onboarding-content.mjs
|
|
66011
66633
|
var AGENT_ONBOARDING_MARKDOWN = `# Runtype for Coding Agents
|
|
66012
66634
|
|
|
66013
|
-
|
|
66635
|
+
Use this guide when the user asks to connect their coding harness to Runtype. If they only ask what Runtype does, explain it without installing software or creating an account. During setup, use the CLI until the hosted MCP tools are available.
|
|
66014
66636
|
|
|
66015
|
-
Signup never requires a browser.
|
|
66637
|
+
Signup never requires a browser. Ask only for the email address and emailed 6-digit code during new-account verification. Do not tell the user to open a dashboard, sign-in page, or OAuth window during signup. Existing-account recovery and the harness's MCP OAuth are separate paths below.
|
|
66016
66638
|
|
|
66017
66639
|
## Golden path \u2014 do exactly this
|
|
66018
66640
|
|
|
@@ -66025,7 +66647,7 @@ npm install -g @runtypelabs/cli
|
|
|
66025
66647
|
runtype auth status
|
|
66026
66648
|
\`\`\`
|
|
66027
66649
|
|
|
66028
|
-
If status reports \`authenticated\` with \`accountState: "full"\`, skip to step 3. If it reports a pending signup, its \`next\`
|
|
66650
|
+
Reuse an installed CLI rather than reinstalling it. If status reports \`authenticated\` with \`accountState: "full"\`, skip to step 3. If it reports a pending signup, follow its \`next\` command instead of registering again. If \`RUNTYPE_API_KEY\` is configured, verify it with \`runtype auth whoami --no-tty\` and reuse that account before following stored signup state: \`auth status\` only inspects stored credentials. Never print the key.
|
|
66029
66651
|
|
|
66030
66652
|
### 2. Sign the user up from the terminal
|
|
66031
66653
|
|
|
@@ -66046,7 +66668,7 @@ That completes signup. Every command in this flow prints JSON with a \`next\` fi
|
|
|
66046
66668
|
- These commands work without a TTY and never open a browser.
|
|
66047
66669
|
- \`register\` is safe to re-run; it resumes a pending signup instead of creating a duplicate account.
|
|
66048
66670
|
- After \`register\` (before \`verify\`) you already hold a temporary credential: CLI commands work with restricted models and quota, and \`verify\` upgrades the same stored login in place. Do not build anything substantial until \`verify\` succeeds.
|
|
66049
|
-
- If the email already has
|
|
66671
|
+
- If the email already has an account, \`email_already_registered\` means signup cannot claim it. Have the user configure an API key privately in their terminal/environment (\`RUNTYPE_API_KEY\` or \`runtype auth login --api-key <key>\`), then run \`runtype auth whoami --no-tty\` to verify the effective credential. Do not ask them to paste a key into chat or register a replacement account.
|
|
66050
66672
|
- A wrong code returns \`otp_invalid\` \u2014 ask the user to re-check and run \`runtype auth verify\` again. An expired code returns \`otp_expired\` \u2014 re-send with \`runtype auth claim <email>\`. Codes expire after 10 minutes and lock after 5 wrong attempts, so confirm the code with the user rather than guessing; after a lockout or expiry, re-send with \`runtype auth claim <email>\`.
|
|
66051
66673
|
|
|
66052
66674
|
### 3. Install skills and the MCP connection
|
|
@@ -66055,7 +66677,7 @@ That completes signup. Every command in this flow prints JSON with a \`next\` fi
|
|
|
66055
66677
|
runtype install-mcp
|
|
66056
66678
|
\`\`\`
|
|
66057
66679
|
|
|
66058
|
-
This
|
|
66680
|
+
This detects one coding harness, installs its Runtype skills, and writes user-level hosted MCP configuration. If selection is ambiguous, use \`--agent <id>\` for the current harness. Relay any harness-owned OAuth action to the user; it may open a browser and is separate from browserless signup.
|
|
66059
66681
|
|
|
66060
66682
|
### 4. Keep working in this session with the CLI
|
|
66061
66683
|
|
|
@@ -66063,13 +66685,10 @@ Do not stop just because the new MCP connection is not visible yet. Use CLI comm
|
|
|
66063
66685
|
|
|
66064
66686
|
\`\`\`bash
|
|
66065
66687
|
runtype auth whoami
|
|
66066
|
-
runtype agents list
|
|
66067
|
-
runtype flows list
|
|
66068
|
-
runtype products list
|
|
66069
66688
|
runtype --help
|
|
66070
66689
|
\`\`\`
|
|
66071
66690
|
|
|
66072
|
-
|
|
66691
|
+
Continue the user's task, not an unsolicited inventory of their account. Read command help before mutations. \`runtype mcp tools\` lists hosted tools and \`runtype mcp call <tool>\` invokes one without a restart; use this bridge for build instructions, schemas, validation, and setup checks too.
|
|
66073
66692
|
|
|
66074
66693
|
### 5. Tell the user to restart or reload the harness
|
|
66075
66694
|
|
|
@@ -66083,7 +66702,7 @@ If an action remains, report that exact action instead of using the success word
|
|
|
66083
66702
|
|
|
66084
66703
|
### 6. Switch to MCP after restart
|
|
66085
66704
|
|
|
66086
|
-
|
|
66705
|
+
Once the tools appear, use Runtype MCP first. Do not fall back to the CLI just because it worked previously. For a product build, call \`get_build_instructions\` with:
|
|
66087
66706
|
|
|
66088
66707
|
\`\`\`json
|
|
66089
66708
|
{
|
|
@@ -66092,7 +66711,7 @@ In the next session, use Runtype MCP first. Do not fall back to the CLI just bec
|
|
|
66092
66711
|
}
|
|
66093
66712
|
\`\`\`
|
|
66094
66713
|
|
|
66095
|
-
|
|
66714
|
+
For a bare flow use \`task: "generate-flow"\`; for scoping use \`"explain-capabilities"\`. Read-only account operations do not need build instructions. Fetch only relevant schema topics, validate before creating or updating, and test safely before reporting success.
|
|
66096
66715
|
|
|
66097
66716
|
## If the install needs recovery
|
|
66098
66717
|
|
|
@@ -66116,10 +66735,11 @@ The signup commands wrap the agent auth protocol documented at \`https://runtype
|
|
|
66116
66735
|
- \`runtype auth register --email <email>\` \u2014 create the account and send the code (one step)
|
|
66117
66736
|
- \`runtype auth claim <email>\` \u2014 re-send or change the email for a pending signup
|
|
66118
66737
|
- \`runtype auth verify <code>\` \u2014 finish signup with the 6-digit code
|
|
66119
|
-
- \`runtype auth login --api-key <key>\` \u2014 existing
|
|
66120
|
-
- \`runtype auth status\`
|
|
66738
|
+
- \`runtype auth login --api-key <key>\` \u2014 privately store an existing credential; not an account-creation command
|
|
66739
|
+
- \`runtype auth status\` \u2014 inspect stored login and pending signup state
|
|
66740
|
+
- \`runtype auth whoami --no-tty\` \u2014 verify the effective credential (environment key first, then stored login)
|
|
66121
66741
|
|
|
66122
|
-
A user-supplied \`RUNTYPE_API_KEY\` environment variable also authenticates
|
|
66742
|
+
A user-supplied \`RUNTYPE_API_KEY\` environment variable also authenticates API-backed CLI commands without a stored login; \`auth status\` still describes only the stored state. Never print a credential into the transcript or write one into a committed file.
|
|
66123
66743
|
|
|
66124
66744
|
Browser login (\`runtype auth login\` with no flags) exists for humans running the CLI in their own interactive terminal. Do not use it from a coding harness.
|
|
66125
66745
|
|
|
@@ -66129,11 +66749,11 @@ Browser login (\`runtype auth login\` with no flags) exists for humans running t
|
|
|
66129
66749
|
- Use \`get_platform_documentation\` instead of inventing payload shapes.
|
|
66130
66750
|
- Let the installed Runtype skills route task-specific work: product builds, live account operations, Persona embeds, templates, and SDK/CLI workflows.
|
|
66131
66751
|
- If the user gives you a \`use.runtype.com/now?...\`, example, or template/FPO link, use the Runtype template skill and MCP tools rather than opening the login-gated dashboard page.
|
|
66132
|
-
- Validate before
|
|
66752
|
+
- Validate before creating/updating. Check product setup, then test with safe inputs and authorized side effects. Report what passed and what remains blocked or untested.
|
|
66133
66753
|
|
|
66134
66754
|
Runtype MCP can create and operate agents, flows, products, records, secrets, evals, and surfaces; attach built-in, HTTP, MCP, flow, and subagent tools; and ship chat, API, webhook, messaging, schedule, MCP, and hosted-page experiences.
|
|
66135
66755
|
|
|
66136
|
-
Docs: [runtype.com](https://runtype.com)
|
|
66756
|
+
Docs: [docs.runtype.com](https://docs.runtype.com)
|
|
66137
66757
|
Dashboard: [use.runtype.com](https://use.runtype.com)
|
|
66138
66758
|
API: [api.runtype.com](https://api.runtype.com)
|
|
66139
66759
|
`;
|