@nordsym/apiclaw 1.4.5 → 1.4.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,SAAS,EACT,cAAc,EACd,SAAS,EACT,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,UAAU,aAAa;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiLD,UAAU,YAAY;IACpB,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,aAAa,EAAE;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,OAAO,CAAC;QACd,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAyKD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC1B,YAAY,CA8Dd;AA8tBD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/D;AAGD,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CASnF;AAGD,wBAAgB,qBAAqB,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAKjF;AAGD,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,CAAC,CAkGxB"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EACV,eAAe,EACf,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,YAAY,EACZ,SAAS,EACT,cAAc,EACd,SAAS,EACT,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,UAAU,aAAa;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiLD,UAAU,YAAY;IACpB,OAAO,EAAE,IAAI,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,aAAa,EAAE;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,OAAO,CAAC;QACd,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAyKD;;GAEG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC1B,YAAY,CA8Dd;AAspCD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/D;AAGD,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CASnF;AAGD,wBAAgB,qBAAqB,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAKjF;AAGD,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,CAAC,CAkGxB"}
package/dist/execute.js CHANGED
@@ -988,6 +988,372 @@ const handlers = {
988
988
  }
989
989
  },
990
990
  },
991
+ // Groq - Ultra-fast LLM inference
992
+ groq: {
993
+ chat: async (params, creds) => {
994
+ const { messages, model = 'llama3-8b-8192', max_tokens = 1024 } = params;
995
+ if (!messages || !Array.isArray(messages)) {
996
+ return createErrorResult('groq', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
997
+ }
998
+ const response = await fetchWithRetry('https://api.groq.com/openai/v1/chat/completions', {
999
+ method: 'POST',
1000
+ headers: {
1001
+ 'Authorization': `Bearer ${creds.api_key}`,
1002
+ 'Content-Type': 'application/json',
1003
+ },
1004
+ body: JSON.stringify({ model, messages, max_tokens }),
1005
+ }, { provider: 'groq', action: 'chat' });
1006
+ const data = await response.json();
1007
+ if (!response.ok) {
1008
+ const err = data.error;
1009
+ return createErrorResult('groq', 'chat', err?.message || 'Chat failed', statusToErrorCode(response.status));
1010
+ }
1011
+ const choices = data.choices;
1012
+ const message = choices?.[0]?.message;
1013
+ return {
1014
+ success: true,
1015
+ provider: 'groq',
1016
+ action: 'chat',
1017
+ data: {
1018
+ content: message?.content,
1019
+ model: data.model,
1020
+ usage: data.usage,
1021
+ },
1022
+ };
1023
+ },
1024
+ },
1025
+ // Deepgram - Speech-to-text transcription
1026
+ deepgram: {
1027
+ transcribe: async (params, creds) => {
1028
+ const { url, model = 'nova-2', language = 'en' } = params;
1029
+ if (!url) {
1030
+ return createErrorResult('deepgram', 'transcribe', 'Missing required param: url (audio file URL)', ERROR_CODES.INVALID_PARAMS);
1031
+ }
1032
+ const response = await fetchWithRetry(`https://api.deepgram.com/v1/listen?model=${model}&language=${language}&smart_format=true`, {
1033
+ method: 'POST',
1034
+ headers: {
1035
+ 'Authorization': `Token ${creds.api_key}`,
1036
+ 'Content-Type': 'application/json',
1037
+ },
1038
+ body: JSON.stringify({ url }),
1039
+ }, { provider: 'deepgram', action: 'transcribe' });
1040
+ const data = await response.json();
1041
+ if (!response.ok) {
1042
+ return createErrorResult('deepgram', 'transcribe', data.err_msg || 'Transcription failed', statusToErrorCode(response.status));
1043
+ }
1044
+ const results = data.results;
1045
+ const channels = results?.channels;
1046
+ const alternatives = channels?.[0]?.alternatives;
1047
+ const transcript = alternatives?.[0]?.transcript;
1048
+ return {
1049
+ success: true,
1050
+ provider: 'deepgram',
1051
+ action: 'transcribe',
1052
+ data: {
1053
+ transcript,
1054
+ confidence: alternatives?.[0]?.confidence,
1055
+ duration: data.metadata?.duration,
1056
+ },
1057
+ };
1058
+ },
1059
+ },
1060
+ // Serper - Google Search API for AI
1061
+ serper: {
1062
+ search: async (params, creds) => {
1063
+ const { query, num = 10, gl = 'us', hl = 'en' } = params;
1064
+ if (!query) {
1065
+ return createErrorResult('serper', 'search', 'Missing required param: query', ERROR_CODES.INVALID_PARAMS);
1066
+ }
1067
+ const response = await fetchWithRetry('https://google.serper.dev/search', {
1068
+ method: 'POST',
1069
+ headers: {
1070
+ 'X-API-KEY': creds.api_key,
1071
+ 'Content-Type': 'application/json',
1072
+ },
1073
+ body: JSON.stringify({ q: query, num, gl, hl }),
1074
+ }, { provider: 'serper', action: 'search' });
1075
+ const data = await response.json();
1076
+ if (!response.ok) {
1077
+ return createErrorResult('serper', 'search', data.message || 'Search failed', statusToErrorCode(response.status));
1078
+ }
1079
+ const organic = data.organic || [];
1080
+ return {
1081
+ success: true,
1082
+ provider: 'serper',
1083
+ action: 'search',
1084
+ data: {
1085
+ query,
1086
+ results: organic.map(r => ({
1087
+ title: r.title,
1088
+ url: r.link,
1089
+ snippet: r.snippet,
1090
+ position: r.position,
1091
+ })),
1092
+ total: organic.length,
1093
+ answerBox: data.answerBox,
1094
+ knowledgeGraph: data.knowledgeGraph,
1095
+ },
1096
+ };
1097
+ },
1098
+ },
1099
+ // Mistral - Open-weight LLMs
1100
+ mistral: {
1101
+ chat: async (params, creds) => {
1102
+ const { messages, model = 'mistral-small-latest', max_tokens = 1024 } = params;
1103
+ if (!messages || !Array.isArray(messages)) {
1104
+ return createErrorResult('mistral', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
1105
+ }
1106
+ const response = await fetchWithRetry('https://api.mistral.ai/v1/chat/completions', {
1107
+ method: 'POST',
1108
+ headers: {
1109
+ 'Authorization': `Bearer ${creds.api_key}`,
1110
+ 'Content-Type': 'application/json',
1111
+ },
1112
+ body: JSON.stringify({ model, messages, max_tokens }),
1113
+ }, { provider: 'mistral', action: 'chat' });
1114
+ const data = await response.json();
1115
+ if (!response.ok) {
1116
+ const err = data.message;
1117
+ return createErrorResult('mistral', 'chat', err || 'Chat failed', statusToErrorCode(response.status));
1118
+ }
1119
+ const choices = data.choices;
1120
+ const message = choices?.[0]?.message;
1121
+ return {
1122
+ success: true,
1123
+ provider: 'mistral',
1124
+ action: 'chat',
1125
+ data: {
1126
+ content: message?.content,
1127
+ model: data.model,
1128
+ usage: data.usage,
1129
+ },
1130
+ };
1131
+ },
1132
+ embed: async (params, creds) => {
1133
+ const { input, model = 'mistral-embed' } = params;
1134
+ if (!input) {
1135
+ return createErrorResult('mistral', 'embed', 'Missing required param: input (string or array)', ERROR_CODES.INVALID_PARAMS);
1136
+ }
1137
+ const inputs = Array.isArray(input) ? input : [input];
1138
+ const response = await fetchWithRetry('https://api.mistral.ai/v1/embeddings', {
1139
+ method: 'POST',
1140
+ headers: {
1141
+ 'Authorization': `Bearer ${creds.api_key}`,
1142
+ 'Content-Type': 'application/json',
1143
+ },
1144
+ body: JSON.stringify({ model, input: inputs }),
1145
+ }, { provider: 'mistral', action: 'embed' });
1146
+ const data = await response.json();
1147
+ if (!response.ok) {
1148
+ return createErrorResult('mistral', 'embed', data.message || 'Embedding failed', statusToErrorCode(response.status));
1149
+ }
1150
+ const embedData = data.data;
1151
+ return {
1152
+ success: true,
1153
+ provider: 'mistral',
1154
+ action: 'embed',
1155
+ data: {
1156
+ embeddings: embedData?.map(d => d.embedding),
1157
+ model: data.model,
1158
+ usage: data.usage,
1159
+ },
1160
+ };
1161
+ },
1162
+ },
1163
+ // Cohere - Enterprise NLP and embeddings
1164
+ cohere: {
1165
+ chat: async (params, creds) => {
1166
+ const { message, model = 'command-r', max_tokens = 1024, preamble } = params;
1167
+ if (!message) {
1168
+ return createErrorResult('cohere', 'chat', 'Missing required param: message', ERROR_CODES.INVALID_PARAMS);
1169
+ }
1170
+ const body = { model, message, max_tokens };
1171
+ if (preamble)
1172
+ body.preamble = preamble;
1173
+ const response = await fetchWithRetry('https://api.cohere.com/v1/chat', {
1174
+ method: 'POST',
1175
+ headers: {
1176
+ 'Authorization': `Bearer ${creds.api_key}`,
1177
+ 'Content-Type': 'application/json',
1178
+ },
1179
+ body: JSON.stringify(body),
1180
+ }, { provider: 'cohere', action: 'chat' });
1181
+ const data = await response.json();
1182
+ if (!response.ok) {
1183
+ return createErrorResult('cohere', 'chat', data.message || 'Chat failed', statusToErrorCode(response.status));
1184
+ }
1185
+ return {
1186
+ success: true,
1187
+ provider: 'cohere',
1188
+ action: 'chat',
1189
+ data: {
1190
+ content: data.text,
1191
+ generation_id: data.generation_id,
1192
+ usage: data.meta,
1193
+ },
1194
+ };
1195
+ },
1196
+ embed: async (params, creds) => {
1197
+ const { texts, model = 'embed-english-v3.0', input_type = 'search_document' } = params;
1198
+ if (!texts || !Array.isArray(texts)) {
1199
+ return createErrorResult('cohere', 'embed', 'Missing required param: texts (array of strings)', ERROR_CODES.INVALID_PARAMS);
1200
+ }
1201
+ const response = await fetchWithRetry('https://api.cohere.com/v1/embed', {
1202
+ method: 'POST',
1203
+ headers: {
1204
+ 'Authorization': `Bearer ${creds.api_key}`,
1205
+ 'Content-Type': 'application/json',
1206
+ },
1207
+ body: JSON.stringify({ model, texts, input_type }),
1208
+ }, { provider: 'cohere', action: 'embed' });
1209
+ const data = await response.json();
1210
+ if (!response.ok) {
1211
+ return createErrorResult('cohere', 'embed', data.message || 'Embedding failed', statusToErrorCode(response.status));
1212
+ }
1213
+ return {
1214
+ success: true,
1215
+ provider: 'cohere',
1216
+ action: 'embed',
1217
+ data: {
1218
+ embeddings: data.embeddings,
1219
+ model: data.model,
1220
+ },
1221
+ };
1222
+ },
1223
+ },
1224
+ // Together AI - Open-source model inference
1225
+ together: {
1226
+ chat: async (params, creds) => {
1227
+ const { messages, model = 'meta-llama/Llama-3-8b-chat-hf', max_tokens = 1024 } = params;
1228
+ if (!messages || !Array.isArray(messages)) {
1229
+ return createErrorResult('together', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
1230
+ }
1231
+ const response = await fetchWithRetry('https://api.together.xyz/v1/chat/completions', {
1232
+ method: 'POST',
1233
+ headers: {
1234
+ 'Authorization': `Bearer ${creds.api_key}`,
1235
+ 'Content-Type': 'application/json',
1236
+ },
1237
+ body: JSON.stringify({ model, messages, max_tokens }),
1238
+ }, { provider: 'together', action: 'chat' });
1239
+ const data = await response.json();
1240
+ if (!response.ok) {
1241
+ const err = data.error;
1242
+ return createErrorResult('together', 'chat', err?.message || 'Chat failed', statusToErrorCode(response.status));
1243
+ }
1244
+ const choices = data.choices;
1245
+ const message = choices?.[0]?.message;
1246
+ return {
1247
+ success: true,
1248
+ provider: 'together',
1249
+ action: 'chat',
1250
+ data: {
1251
+ content: message?.content,
1252
+ model: data.model,
1253
+ usage: data.usage,
1254
+ },
1255
+ };
1256
+ },
1257
+ },
1258
+ // Stability AI - Image generation
1259
+ stability: {
1260
+ generate_image: async (params, creds) => {
1261
+ const { prompt, model = 'stable-diffusion-xl-1024-v1-0', width = 1024, height = 1024, steps = 30 } = params;
1262
+ if (!prompt) {
1263
+ return createErrorResult('stability', 'generate_image', 'Missing required param: prompt', ERROR_CODES.INVALID_PARAMS);
1264
+ }
1265
+ const response = await fetchWithRetry(`https://api.stability.ai/v1/generation/${model}/text-to-image`, {
1266
+ method: 'POST',
1267
+ headers: {
1268
+ 'Authorization': `Bearer ${creds.api_key}`,
1269
+ 'Content-Type': 'application/json',
1270
+ 'Accept': 'application/json',
1271
+ },
1272
+ body: JSON.stringify({
1273
+ text_prompts: [{ text: prompt, weight: 1 }],
1274
+ width,
1275
+ height,
1276
+ steps,
1277
+ samples: 1,
1278
+ }),
1279
+ }, { provider: 'stability', action: 'generate_image' });
1280
+ const data = await response.json();
1281
+ if (!response.ok) {
1282
+ return createErrorResult('stability', 'generate_image', data.message || 'Image generation failed', statusToErrorCode(response.status));
1283
+ }
1284
+ const artifacts = data.artifacts;
1285
+ const image = artifacts?.[0];
1286
+ return {
1287
+ success: true,
1288
+ provider: 'stability',
1289
+ action: 'generate_image',
1290
+ data: {
1291
+ image_base64: image?.base64,
1292
+ finish_reason: image?.finishReason,
1293
+ seed: image?.seed,
1294
+ },
1295
+ };
1296
+ },
1297
+ },
1298
+ // AssemblyAI - Audio transcription and intelligence
1299
+ assemblyai: {
1300
+ transcribe: async (params, creds) => {
1301
+ const { audio_url, language_code = 'en', speaker_labels = false, sentiment_analysis = false } = params;
1302
+ if (!audio_url) {
1303
+ return createErrorResult('assemblyai', 'transcribe', 'Missing required param: audio_url', ERROR_CODES.INVALID_PARAMS);
1304
+ }
1305
+ // Submit transcription job
1306
+ const submitResponse = await fetchWithRetry('https://api.assemblyai.com/v2/transcript', {
1307
+ method: 'POST',
1308
+ headers: {
1309
+ 'Authorization': creds.api_key,
1310
+ 'Content-Type': 'application/json',
1311
+ },
1312
+ body: JSON.stringify({ audio_url, language_code, speaker_labels, sentiment_analysis }),
1313
+ }, { provider: 'assemblyai', action: 'transcribe' });
1314
+ const submitData = await submitResponse.json();
1315
+ if (!submitResponse.ok) {
1316
+ return createErrorResult('assemblyai', 'transcribe', submitData.error || 'Submit failed', statusToErrorCode(submitResponse.status));
1317
+ }
1318
+ const transcriptId = submitData.id;
1319
+ // Poll until complete (max 120 seconds)
1320
+ const startTime = Date.now();
1321
+ while (Date.now() - startTime < 120000) {
1322
+ await sleep(3000);
1323
+ const pollResponse = await fetchWithRetry(`https://api.assemblyai.com/v2/transcript/${transcriptId}`, {
1324
+ headers: { 'Authorization': creds.api_key },
1325
+ }, { provider: 'assemblyai', action: 'transcribe_poll' });
1326
+ const pollData = await pollResponse.json();
1327
+ if (pollData.status === 'completed') {
1328
+ return {
1329
+ success: true,
1330
+ provider: 'assemblyai',
1331
+ action: 'transcribe',
1332
+ data: {
1333
+ transcript: pollData.text,
1334
+ words: pollData.words,
1335
+ utterances: pollData.utterances,
1336
+ sentiment_analysis_results: pollData.sentiment_analysis_results,
1337
+ audio_duration: pollData.audio_duration,
1338
+ },
1339
+ };
1340
+ }
1341
+ if (pollData.status === 'error') {
1342
+ return createErrorResult('assemblyai', 'transcribe', pollData.error || 'Transcription failed', ERROR_CODES.PROVIDER_ERROR);
1343
+ }
1344
+ }
1345
+ return {
1346
+ success: true,
1347
+ provider: 'assemblyai',
1348
+ action: 'transcribe',
1349
+ data: {
1350
+ status: 'processing',
1351
+ transcript_id: transcriptId,
1352
+ message: 'Transcription still processing. Use transcript_id to poll manually.',
1353
+ },
1354
+ };
1355
+ },
1356
+ },
991
1357
  };
992
1358
  // Get available actions for a provider (static handlers only)
993
1359
  export function getProviderActions(providerId) {
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../src/execute.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAe3E;AAED,eAAO,MAAM,eAAe,UAA8G,CAAC"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAe3E;AAED,eAAO,MAAM,eAAe,UAAwM,CAAC"}
package/dist/proxy.js CHANGED
@@ -15,5 +15,5 @@ export async function callProxy(provider, params) {
15
15
  }
16
16
  return response.json();
17
17
  }
18
- export const PROXY_PROVIDERS = ["openrouter", "brave_search", "resend", "elevenlabs", "46elks", "twilio", "replicate", "firecrawl", "e2b"];
18
+ export const PROXY_PROVIDERS = ["openrouter", "brave_search", "resend", "elevenlabs", "46elks", "twilio", "replicate", "firecrawl", "e2b", "groq", "deepgram", "serper", "mistral", "cohere", "together", "stability", "assemblyai"];
19
19
  //# sourceMappingURL=proxy.js.map
package/dist/proxy.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,GAAG,kDAAkD,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB,EAAE,MAAW;IAC3D,MAAM,GAAG,GAAG,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAC;IAExC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;KAC7B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAuB,CAAC;QAC/G,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,gBAAgB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,GAAG,kDAAkD,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB,EAAE,MAAW;IAC3D,MAAM,GAAG,GAAG,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAC;IAExC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;KAC7B,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAuB,CAAC;QAC/G,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,gBAAgB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nordsym/apiclaw",
3
- "version": "1.4.5",
3
+ "version": "1.4.7",
4
4
  "description": "The API layer for AI agents. Dashboard + 22K APIs + 18 Direct Call providers. MCP native.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
package/src/execute.ts CHANGED
@@ -1204,6 +1204,446 @@ const handlers: Record<string, Record<string, (params: any, creds: any) => Promi
1204
1204
  }
1205
1205
  },
1206
1206
  },
1207
+
1208
+ // Groq - Ultra-fast LLM inference
1209
+ groq: {
1210
+ chat: async (params, creds) => {
1211
+ const { messages, model = 'llama3-8b-8192', max_tokens = 1024 } = params;
1212
+
1213
+ if (!messages || !Array.isArray(messages)) {
1214
+ return createErrorResult('groq', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
1215
+ }
1216
+
1217
+ const response = await fetchWithRetry('https://api.groq.com/openai/v1/chat/completions', {
1218
+ method: 'POST',
1219
+ headers: {
1220
+ 'Authorization': `Bearer ${creds.api_key}`,
1221
+ 'Content-Type': 'application/json',
1222
+ },
1223
+ body: JSON.stringify({ model, messages, max_tokens }),
1224
+ }, { provider: 'groq', action: 'chat' });
1225
+
1226
+ const data = await response.json() as Record<string, unknown>;
1227
+
1228
+ if (!response.ok) {
1229
+ const err = data.error as Record<string, unknown> | undefined;
1230
+ return createErrorResult('groq', 'chat', (err?.message as string) || 'Chat failed', statusToErrorCode(response.status));
1231
+ }
1232
+
1233
+ const choices = data.choices as Array<Record<string, unknown>> | undefined;
1234
+ const message = choices?.[0]?.message as Record<string, unknown> | undefined;
1235
+
1236
+ return {
1237
+ success: true,
1238
+ provider: 'groq',
1239
+ action: 'chat',
1240
+ data: {
1241
+ content: message?.content,
1242
+ model: data.model,
1243
+ usage: data.usage,
1244
+ },
1245
+ };
1246
+ },
1247
+ },
1248
+
1249
+ // Deepgram - Speech-to-text transcription
1250
+ deepgram: {
1251
+ transcribe: async (params, creds) => {
1252
+ const { url, model = 'nova-2', language = 'en' } = params;
1253
+
1254
+ if (!url) {
1255
+ return createErrorResult('deepgram', 'transcribe', 'Missing required param: url (audio file URL)', ERROR_CODES.INVALID_PARAMS);
1256
+ }
1257
+
1258
+ const response = await fetchWithRetry(`https://api.deepgram.com/v1/listen?model=${model}&language=${language}&smart_format=true`, {
1259
+ method: 'POST',
1260
+ headers: {
1261
+ 'Authorization': `Token ${creds.api_key}`,
1262
+ 'Content-Type': 'application/json',
1263
+ },
1264
+ body: JSON.stringify({ url }),
1265
+ }, { provider: 'deepgram', action: 'transcribe' });
1266
+
1267
+ const data = await response.json() as Record<string, unknown>;
1268
+
1269
+ if (!response.ok) {
1270
+ return createErrorResult('deepgram', 'transcribe', (data.err_msg as string) || 'Transcription failed', statusToErrorCode(response.status));
1271
+ }
1272
+
1273
+ const results = data.results as Record<string, unknown> | undefined;
1274
+ const channels = results?.channels as Array<Record<string, unknown>> | undefined;
1275
+ const alternatives = channels?.[0]?.alternatives as Array<Record<string, unknown>> | undefined;
1276
+ const transcript = alternatives?.[0]?.transcript as string | undefined;
1277
+
1278
+ return {
1279
+ success: true,
1280
+ provider: 'deepgram',
1281
+ action: 'transcribe',
1282
+ data: {
1283
+ transcript,
1284
+ confidence: alternatives?.[0]?.confidence,
1285
+ duration: (data.metadata as Record<string, unknown> | undefined)?.duration,
1286
+ },
1287
+ };
1288
+ },
1289
+ },
1290
+
1291
+ // Serper - Google Search API for AI
1292
+ serper: {
1293
+ search: async (params, creds) => {
1294
+ const { query, num = 10, gl = 'us', hl = 'en' } = params;
1295
+
1296
+ if (!query) {
1297
+ return createErrorResult('serper', 'search', 'Missing required param: query', ERROR_CODES.INVALID_PARAMS);
1298
+ }
1299
+
1300
+ const response = await fetchWithRetry('https://google.serper.dev/search', {
1301
+ method: 'POST',
1302
+ headers: {
1303
+ 'X-API-KEY': creds.api_key,
1304
+ 'Content-Type': 'application/json',
1305
+ },
1306
+ body: JSON.stringify({ q: query, num, gl, hl }),
1307
+ }, { provider: 'serper', action: 'search' });
1308
+
1309
+ const data = await response.json() as Record<string, unknown>;
1310
+
1311
+ if (!response.ok) {
1312
+ return createErrorResult('serper', 'search', (data.message as string) || 'Search failed', statusToErrorCode(response.status));
1313
+ }
1314
+
1315
+ const organic = (data.organic as Array<Record<string, unknown>>) || [];
1316
+
1317
+ return {
1318
+ success: true,
1319
+ provider: 'serper',
1320
+ action: 'search',
1321
+ data: {
1322
+ query,
1323
+ results: organic.map(r => ({
1324
+ title: r.title,
1325
+ url: r.link,
1326
+ snippet: r.snippet,
1327
+ position: r.position,
1328
+ })),
1329
+ total: organic.length,
1330
+ answerBox: data.answerBox,
1331
+ knowledgeGraph: data.knowledgeGraph,
1332
+ },
1333
+ };
1334
+ },
1335
+ },
1336
+
1337
+ // Mistral - Open-weight LLMs
1338
+ mistral: {
1339
+ chat: async (params, creds) => {
1340
+ const { messages, model = 'mistral-small-latest', max_tokens = 1024 } = params;
1341
+
1342
+ if (!messages || !Array.isArray(messages)) {
1343
+ return createErrorResult('mistral', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
1344
+ }
1345
+
1346
+ const response = await fetchWithRetry('https://api.mistral.ai/v1/chat/completions', {
1347
+ method: 'POST',
1348
+ headers: {
1349
+ 'Authorization': `Bearer ${creds.api_key}`,
1350
+ 'Content-Type': 'application/json',
1351
+ },
1352
+ body: JSON.stringify({ model, messages, max_tokens }),
1353
+ }, { provider: 'mistral', action: 'chat' });
1354
+
1355
+ const data = await response.json() as Record<string, unknown>;
1356
+
1357
+ if (!response.ok) {
1358
+ const err = data.message as string | undefined;
1359
+ return createErrorResult('mistral', 'chat', err || 'Chat failed', statusToErrorCode(response.status));
1360
+ }
1361
+
1362
+ const choices = data.choices as Array<Record<string, unknown>> | undefined;
1363
+ const message = choices?.[0]?.message as Record<string, unknown> | undefined;
1364
+
1365
+ return {
1366
+ success: true,
1367
+ provider: 'mistral',
1368
+ action: 'chat',
1369
+ data: {
1370
+ content: message?.content,
1371
+ model: data.model,
1372
+ usage: data.usage,
1373
+ },
1374
+ };
1375
+ },
1376
+
1377
+ embed: async (params, creds) => {
1378
+ const { input, model = 'mistral-embed' } = params;
1379
+
1380
+ if (!input) {
1381
+ return createErrorResult('mistral', 'embed', 'Missing required param: input (string or array)', ERROR_CODES.INVALID_PARAMS);
1382
+ }
1383
+
1384
+ const inputs = Array.isArray(input) ? input : [input];
1385
+
1386
+ const response = await fetchWithRetry('https://api.mistral.ai/v1/embeddings', {
1387
+ method: 'POST',
1388
+ headers: {
1389
+ 'Authorization': `Bearer ${creds.api_key}`,
1390
+ 'Content-Type': 'application/json',
1391
+ },
1392
+ body: JSON.stringify({ model, input: inputs }),
1393
+ }, { provider: 'mistral', action: 'embed' });
1394
+
1395
+ const data = await response.json() as Record<string, unknown>;
1396
+
1397
+ if (!response.ok) {
1398
+ return createErrorResult('mistral', 'embed', (data.message as string) || 'Embedding failed', statusToErrorCode(response.status));
1399
+ }
1400
+
1401
+ const embedData = data.data as Array<Record<string, unknown>> | undefined;
1402
+
1403
+ return {
1404
+ success: true,
1405
+ provider: 'mistral',
1406
+ action: 'embed',
1407
+ data: {
1408
+ embeddings: embedData?.map(d => d.embedding),
1409
+ model: data.model,
1410
+ usage: data.usage,
1411
+ },
1412
+ };
1413
+ },
1414
+ },
1415
+
1416
+ // Cohere - Enterprise NLP and embeddings
1417
+ cohere: {
1418
+ chat: async (params, creds) => {
1419
+ const { message, model = 'command-r', max_tokens = 1024, preamble } = params;
1420
+
1421
+ if (!message) {
1422
+ return createErrorResult('cohere', 'chat', 'Missing required param: message', ERROR_CODES.INVALID_PARAMS);
1423
+ }
1424
+
1425
+ const body: Record<string, unknown> = { model, message, max_tokens };
1426
+ if (preamble) body.preamble = preamble;
1427
+
1428
+ const response = await fetchWithRetry('https://api.cohere.com/v1/chat', {
1429
+ method: 'POST',
1430
+ headers: {
1431
+ 'Authorization': `Bearer ${creds.api_key}`,
1432
+ 'Content-Type': 'application/json',
1433
+ },
1434
+ body: JSON.stringify(body),
1435
+ }, { provider: 'cohere', action: 'chat' });
1436
+
1437
+ const data = await response.json() as Record<string, unknown>;
1438
+
1439
+ if (!response.ok) {
1440
+ return createErrorResult('cohere', 'chat', (data.message as string) || 'Chat failed', statusToErrorCode(response.status));
1441
+ }
1442
+
1443
+ return {
1444
+ success: true,
1445
+ provider: 'cohere',
1446
+ action: 'chat',
1447
+ data: {
1448
+ content: data.text,
1449
+ generation_id: data.generation_id,
1450
+ usage: data.meta,
1451
+ },
1452
+ };
1453
+ },
1454
+
1455
+ embed: async (params, creds) => {
1456
+ const { texts, model = 'embed-english-v3.0', input_type = 'search_document' } = params;
1457
+
1458
+ if (!texts || !Array.isArray(texts)) {
1459
+ return createErrorResult('cohere', 'embed', 'Missing required param: texts (array of strings)', ERROR_CODES.INVALID_PARAMS);
1460
+ }
1461
+
1462
+ const response = await fetchWithRetry('https://api.cohere.com/v1/embed', {
1463
+ method: 'POST',
1464
+ headers: {
1465
+ 'Authorization': `Bearer ${creds.api_key}`,
1466
+ 'Content-Type': 'application/json',
1467
+ },
1468
+ body: JSON.stringify({ model, texts, input_type }),
1469
+ }, { provider: 'cohere', action: 'embed' });
1470
+
1471
+ const data = await response.json() as Record<string, unknown>;
1472
+
1473
+ if (!response.ok) {
1474
+ return createErrorResult('cohere', 'embed', (data.message as string) || 'Embedding failed', statusToErrorCode(response.status));
1475
+ }
1476
+
1477
+ return {
1478
+ success: true,
1479
+ provider: 'cohere',
1480
+ action: 'embed',
1481
+ data: {
1482
+ embeddings: data.embeddings,
1483
+ model: data.model,
1484
+ },
1485
+ };
1486
+ },
1487
+ },
1488
+
1489
+ // Together AI - Open-source model inference
1490
+ together: {
1491
+ chat: async (params, creds) => {
1492
+ const { messages, model = 'meta-llama/Llama-3-8b-chat-hf', max_tokens = 1024 } = params;
1493
+
1494
+ if (!messages || !Array.isArray(messages)) {
1495
+ return createErrorResult('together', 'chat', 'Missing required param: messages (array)', ERROR_CODES.INVALID_PARAMS);
1496
+ }
1497
+
1498
+ const response = await fetchWithRetry('https://api.together.xyz/v1/chat/completions', {
1499
+ method: 'POST',
1500
+ headers: {
1501
+ 'Authorization': `Bearer ${creds.api_key}`,
1502
+ 'Content-Type': 'application/json',
1503
+ },
1504
+ body: JSON.stringify({ model, messages, max_tokens }),
1505
+ }, { provider: 'together', action: 'chat' });
1506
+
1507
+ const data = await response.json() as Record<string, unknown>;
1508
+
1509
+ if (!response.ok) {
1510
+ const err = data.error as Record<string, unknown> | undefined;
1511
+ return createErrorResult('together', 'chat', (err?.message as string) || 'Chat failed', statusToErrorCode(response.status));
1512
+ }
1513
+
1514
+ const choices = data.choices as Array<Record<string, unknown>> | undefined;
1515
+ const message = choices?.[0]?.message as Record<string, unknown> | undefined;
1516
+
1517
+ return {
1518
+ success: true,
1519
+ provider: 'together',
1520
+ action: 'chat',
1521
+ data: {
1522
+ content: message?.content,
1523
+ model: data.model,
1524
+ usage: data.usage,
1525
+ },
1526
+ };
1527
+ },
1528
+ },
1529
+
1530
+ // Stability AI - Image generation
1531
+ stability: {
1532
+ generate_image: async (params, creds) => {
1533
+ const { prompt, model = 'stable-diffusion-xl-1024-v1-0', width = 1024, height = 1024, steps = 30 } = params;
1534
+
1535
+ if (!prompt) {
1536
+ return createErrorResult('stability', 'generate_image', 'Missing required param: prompt', ERROR_CODES.INVALID_PARAMS);
1537
+ }
1538
+
1539
+ const response = await fetchWithRetry(`https://api.stability.ai/v1/generation/${model}/text-to-image`, {
1540
+ method: 'POST',
1541
+ headers: {
1542
+ 'Authorization': `Bearer ${creds.api_key}`,
1543
+ 'Content-Type': 'application/json',
1544
+ 'Accept': 'application/json',
1545
+ },
1546
+ body: JSON.stringify({
1547
+ text_prompts: [{ text: prompt, weight: 1 }],
1548
+ width,
1549
+ height,
1550
+ steps,
1551
+ samples: 1,
1552
+ }),
1553
+ }, { provider: 'stability', action: 'generate_image' });
1554
+
1555
+ const data = await response.json() as Record<string, unknown>;
1556
+
1557
+ if (!response.ok) {
1558
+ return createErrorResult('stability', 'generate_image', (data.message as string) || 'Image generation failed', statusToErrorCode(response.status));
1559
+ }
1560
+
1561
+ const artifacts = data.artifacts as Array<Record<string, unknown>> | undefined;
1562
+ const image = artifacts?.[0];
1563
+
1564
+ return {
1565
+ success: true,
1566
+ provider: 'stability',
1567
+ action: 'generate_image',
1568
+ data: {
1569
+ image_base64: image?.base64,
1570
+ finish_reason: image?.finishReason,
1571
+ seed: image?.seed,
1572
+ },
1573
+ };
1574
+ },
1575
+ },
1576
+
1577
+ // AssemblyAI - Audio transcription and intelligence
1578
+ assemblyai: {
1579
+ transcribe: async (params, creds) => {
1580
+ const { audio_url, language_code = 'en', speaker_labels = false, sentiment_analysis = false } = params;
1581
+
1582
+ if (!audio_url) {
1583
+ return createErrorResult('assemblyai', 'transcribe', 'Missing required param: audio_url', ERROR_CODES.INVALID_PARAMS);
1584
+ }
1585
+
1586
+ // Submit transcription job
1587
+ const submitResponse = await fetchWithRetry('https://api.assemblyai.com/v2/transcript', {
1588
+ method: 'POST',
1589
+ headers: {
1590
+ 'Authorization': creds.api_key,
1591
+ 'Content-Type': 'application/json',
1592
+ },
1593
+ body: JSON.stringify({ audio_url, language_code, speaker_labels, sentiment_analysis }),
1594
+ }, { provider: 'assemblyai', action: 'transcribe' });
1595
+
1596
+ const submitData = await submitResponse.json() as Record<string, unknown>;
1597
+
1598
+ if (!submitResponse.ok) {
1599
+ return createErrorResult('assemblyai', 'transcribe', (submitData.error as string) || 'Submit failed', statusToErrorCode(submitResponse.status));
1600
+ }
1601
+
1602
+ const transcriptId = submitData.id as string;
1603
+
1604
+ // Poll until complete (max 120 seconds)
1605
+ const startTime = Date.now();
1606
+ while (Date.now() - startTime < 120000) {
1607
+ await sleep(3000);
1608
+
1609
+ const pollResponse = await fetchWithRetry(`https://api.assemblyai.com/v2/transcript/${transcriptId}`, {
1610
+ headers: { 'Authorization': creds.api_key },
1611
+ }, { provider: 'assemblyai', action: 'transcribe_poll' });
1612
+
1613
+ const pollData = await pollResponse.json() as Record<string, unknown>;
1614
+
1615
+ if (pollData.status === 'completed') {
1616
+ return {
1617
+ success: true,
1618
+ provider: 'assemblyai',
1619
+ action: 'transcribe',
1620
+ data: {
1621
+ transcript: pollData.text,
1622
+ words: pollData.words,
1623
+ utterances: pollData.utterances,
1624
+ sentiment_analysis_results: pollData.sentiment_analysis_results,
1625
+ audio_duration: pollData.audio_duration,
1626
+ },
1627
+ };
1628
+ }
1629
+
1630
+ if (pollData.status === 'error') {
1631
+ return createErrorResult('assemblyai', 'transcribe', (pollData.error as string) || 'Transcription failed', ERROR_CODES.PROVIDER_ERROR);
1632
+ }
1633
+ }
1634
+
1635
+ return {
1636
+ success: true,
1637
+ provider: 'assemblyai',
1638
+ action: 'transcribe',
1639
+ data: {
1640
+ status: 'processing',
1641
+ transcript_id: transcriptId,
1642
+ message: 'Transcription still processing. Use transcript_id to poll manually.',
1643
+ },
1644
+ };
1645
+ },
1646
+ },
1207
1647
  };
1208
1648
 
1209
1649
  // Get available actions for a provider (static handlers only)
package/src/proxy.ts CHANGED
@@ -21,4 +21,4 @@ export async function callProxy(provider: string, params: any): Promise<any> {
21
21
  return response.json();
22
22
  }
23
23
 
24
- export const PROXY_PROVIDERS = ["openrouter", "brave_search", "resend", "elevenlabs", "46elks", "twilio", "replicate", "firecrawl", "e2b"];
24
+ export const PROXY_PROVIDERS = ["openrouter", "brave_search", "resend", "elevenlabs", "46elks", "twilio", "replicate", "firecrawl", "e2b", "groq", "deepgram", "serper", "mistral", "cohere", "together", "stability", "assemblyai"];