@openclaw/exa-plugin 2026.7.2-beta.7 → 2026.8.1-beta.2
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/{exa-web-search-provider-DZrlXNEU.js → exa-web-search-provider-BJD3zsL0.js} +4 -3
- package/dist/{exa-web-search-provider.runtime-B-AMPZ1r.js → exa-web-search-provider.runtime-Uysj-tWk.js} +6 -6
- package/dist/index.js +1 -1
- package/dist/web-search-provider.js +1 -1
- package/package.json +4 -4
|
@@ -16,7 +16,7 @@ const EXA_FRESHNESS_VALUES = [
|
|
|
16
16
|
"year"
|
|
17
17
|
];
|
|
18
18
|
const EXA_MAX_SEARCH_COUNT = 100;
|
|
19
|
-
const loadExaWebSearchRuntime = createLazyRuntimeModule(() => import("./exa-web-search-provider.runtime-
|
|
19
|
+
const loadExaWebSearchRuntime = createLazyRuntimeModule(() => import("./exa-web-search-provider.runtime-Uysj-tWk.js"));
|
|
20
20
|
const ExaSearchSchema = {
|
|
21
21
|
type: "object",
|
|
22
22
|
properties: {
|
|
@@ -66,9 +66,10 @@ function createExaWebSearchProvider() {
|
|
|
66
66
|
createTool: (ctx) => ({
|
|
67
67
|
description: "Search the web using Exa AI. Supports neural or keyword search, publication date filters, and optional highlights or text extraction.",
|
|
68
68
|
parameters: ExaSearchSchema,
|
|
69
|
-
execute: async (args) => {
|
|
69
|
+
execute: async (args, context) => {
|
|
70
|
+
context?.signal?.throwIfAborted();
|
|
70
71
|
const { executeExaWebSearchProviderTool } = await loadExaWebSearchRuntime();
|
|
71
|
-
return await executeExaWebSearchProviderTool(ctx, args);
|
|
72
|
+
return await executeExaWebSearchProviderTool(ctx, args, context?.signal);
|
|
72
73
|
}
|
|
73
74
|
})
|
|
74
75
|
};
|
|
@@ -203,6 +203,7 @@ async function runExaSearch(params) {
|
|
|
203
203
|
return withTrustedWebSearchEndpoint({
|
|
204
204
|
url: params.endpoint,
|
|
205
205
|
timeoutSeconds: params.timeoutSeconds,
|
|
206
|
+
signal: params.signal,
|
|
206
207
|
init: {
|
|
207
208
|
method: "POST",
|
|
208
209
|
headers: {
|
|
@@ -242,7 +243,7 @@ function buildExaCacheKey(params) {
|
|
|
242
243
|
JSON.stringify(contents)
|
|
243
244
|
]);
|
|
244
245
|
}
|
|
245
|
-
async function executeExaWebSearchProviderTool(ctx, args) {
|
|
246
|
+
async function executeExaWebSearchProviderTool(ctx, args, signal) {
|
|
246
247
|
const searchConfig = mergeScopedSearchConfig(ctx.searchConfig, "exa", resolveProviderWebSearchPluginConfig(ctx.config, "exa"));
|
|
247
248
|
const params = args;
|
|
248
249
|
const exaConfig = resolveExaConfig(searchConfig);
|
|
@@ -308,8 +309,10 @@ async function executeExaWebSearchProviderTool(ctx, args) {
|
|
|
308
309
|
dateBefore,
|
|
309
310
|
type,
|
|
310
311
|
contents,
|
|
311
|
-
timeoutSeconds: resolveSearchTimeoutSeconds(searchConfig)
|
|
312
|
+
timeoutSeconds: resolveSearchTimeoutSeconds(searchConfig),
|
|
313
|
+
signal
|
|
312
314
|
});
|
|
315
|
+
signal?.throwIfAborted();
|
|
313
316
|
const payload = {
|
|
314
317
|
query,
|
|
315
318
|
provider: "exa",
|
|
@@ -341,12 +344,9 @@ async function executeExaWebSearchProviderTool(ctx, args) {
|
|
|
341
344
|
return payload;
|
|
342
345
|
}
|
|
343
346
|
const testing = {
|
|
344
|
-
normalizeExaResults,
|
|
345
|
-
normalizeExaFreshness,
|
|
346
347
|
parseExaContents,
|
|
347
348
|
buildExaCacheKey,
|
|
348
349
|
resolveExaApiKey,
|
|
349
|
-
resolveExaConfig,
|
|
350
350
|
resolveExaDescription,
|
|
351
351
|
resolveExaSearchCount,
|
|
352
352
|
resolveExaSearchEndpoint,
|
|
@@ -355,4 +355,4 @@ const testing = {
|
|
|
355
355
|
readExaSearchResults
|
|
356
356
|
};
|
|
357
357
|
//#endregion
|
|
358
|
-
export {
|
|
358
|
+
export { executeExaWebSearchProviderTool, testing };
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as createExaWebSearchProvider } from "./exa-web-search-provider-
|
|
1
|
+
import { t as createExaWebSearchProvider } from "./exa-web-search-provider-BJD3zsL0.js";
|
|
2
2
|
import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
|
|
3
3
|
//#region extensions/exa/index.ts
|
|
4
4
|
var exa_default = definePluginEntry({
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as createExaWebSearchProvider } from "./exa-web-search-provider-
|
|
1
|
+
import { t as createExaWebSearchProvider } from "./exa-web-search-provider-BJD3zsL0.js";
|
|
2
2
|
export { createExaWebSearchProvider };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/exa-plugin",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.8.1-beta.2",
|
|
4
4
|
"description": "OpenClaw Exa plugin.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
"minHostVersion": ">=2026.6.8"
|
|
19
19
|
},
|
|
20
20
|
"compat": {
|
|
21
|
-
"pluginApi": ">=2026.
|
|
21
|
+
"pluginApi": ">=2026.8.1-beta.2"
|
|
22
22
|
},
|
|
23
23
|
"build": {
|
|
24
|
-
"openclawVersion": "2026.
|
|
24
|
+
"openclawVersion": "2026.8.1-beta.2",
|
|
25
25
|
"bundledDist": false
|
|
26
26
|
},
|
|
27
27
|
"release": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"README.md"
|
|
39
39
|
],
|
|
40
40
|
"peerDependencies": {
|
|
41
|
-
"openclaw": ">=2026.
|
|
41
|
+
"openclaw": ">=2026.8.1-beta.2"
|
|
42
42
|
},
|
|
43
43
|
"peerDependenciesMeta": {
|
|
44
44
|
"openclaw": {
|