@openclaw/memory-lancedb 2026.5.30-beta.1 → 2026.5.31-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/index.js +88 -8
- package/npm-shrinkwrap.json +97 -111
- package/package.json +8 -8
package/dist/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import { loadLanceDbModule } from "./lancedb-runtime.js";
|
|
|
4
4
|
import { Buffer } from "node:buffer";
|
|
5
5
|
import { randomUUID } from "node:crypto";
|
|
6
6
|
import { optionalFiniteNumberSchema, optionalPositiveIntegerSchema } from "openclaw/plugin-sdk/channel-actions";
|
|
7
|
-
import { parseStrictPositiveInteger } from "openclaw/plugin-sdk/number-runtime";
|
|
7
|
+
import { parseStrictPositiveInteger, resolveTimerTimeoutMs } from "openclaw/plugin-sdk/number-runtime";
|
|
8
8
|
import { readFiniteNumberParam, readPositiveIntegerParam } from "openclaw/plugin-sdk/param-readers";
|
|
9
9
|
import { resolveLivePluginConfigObject } from "openclaw/plugin-sdk/plugin-config-runtime";
|
|
10
10
|
import { ensureGlobalUndiciEnvProxyDispatcher } from "openclaw/plugin-sdk/runtime-env";
|
|
@@ -84,6 +84,8 @@ function resolveAutoCaptureStartIndex(messages, cursor) {
|
|
|
84
84
|
}
|
|
85
85
|
const TABLE_NAME = "memories";
|
|
86
86
|
const DEFAULT_AUTO_RECALL_TIMEOUT_MS = 15e3;
|
|
87
|
+
const DEFAULT_TOOL_RECALL_TIMEOUT_MS = 15e3;
|
|
88
|
+
const DEFAULT_TOOL_RECALL_COOLDOWN_MS = 6e4;
|
|
87
89
|
function parsePositiveIntegerOption(value, flag) {
|
|
88
90
|
if (value === void 0) return;
|
|
89
91
|
const parsed = parseStrictPositiveInteger(value);
|
|
@@ -249,15 +251,25 @@ var ProviderAdapterEmbeddings = class {
|
|
|
249
251
|
if (!result.provider) throw new Error(`Memory embedding provider ${providerId} is unavailable.`);
|
|
250
252
|
return result.provider;
|
|
251
253
|
}
|
|
252
|
-
async embed(text) {
|
|
253
|
-
|
|
254
|
+
async embed(text, options) {
|
|
255
|
+
const provider = await this.getProvider();
|
|
256
|
+
if (!options?.timeoutMs) return await provider.embedQuery(text);
|
|
257
|
+
const controller = new AbortController();
|
|
258
|
+
let timer;
|
|
259
|
+
try {
|
|
260
|
+
timer = setTimeout(() => controller.abort(/* @__PURE__ */ new Error("memory-lancedb embedding timed out")), resolveTimerTimeoutMs(options.timeoutMs, 1));
|
|
261
|
+
timer.unref?.();
|
|
262
|
+
return await provider.embedQuery(text, { signal: controller.signal });
|
|
263
|
+
} finally {
|
|
264
|
+
if (timer) clearTimeout(timer);
|
|
265
|
+
}
|
|
254
266
|
}
|
|
255
267
|
};
|
|
256
268
|
async function runWithTimeout(params) {
|
|
257
269
|
let timeout;
|
|
258
270
|
const TIMEOUT = Symbol("timeout");
|
|
259
271
|
const timeoutPromise = new Promise((resolve) => {
|
|
260
|
-
timeout = setTimeout(() => resolve(TIMEOUT), params.timeoutMs);
|
|
272
|
+
timeout = setTimeout(() => resolve(TIMEOUT), resolveTimerTimeoutMs(params.timeoutMs, 1));
|
|
261
273
|
timeout.unref?.();
|
|
262
274
|
});
|
|
263
275
|
const taskPromise = params.task();
|
|
@@ -273,6 +285,31 @@ async function runWithTimeout(params) {
|
|
|
273
285
|
if (timeout) clearTimeout(timeout);
|
|
274
286
|
}
|
|
275
287
|
}
|
|
288
|
+
function formatMemoryRecallError(error) {
|
|
289
|
+
return error instanceof Error ? error.message : String(error);
|
|
290
|
+
}
|
|
291
|
+
function buildMemoryRecallUnavailableResult(error) {
|
|
292
|
+
return {
|
|
293
|
+
content: [{
|
|
294
|
+
type: "text",
|
|
295
|
+
text: "Memory recall is unavailable right now."
|
|
296
|
+
}],
|
|
297
|
+
details: {
|
|
298
|
+
count: 0,
|
|
299
|
+
disabled: true,
|
|
300
|
+
unavailable: true,
|
|
301
|
+
error
|
|
302
|
+
}
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
var MemoryRecallEmbeddingError = class extends Error {
|
|
306
|
+
constructor(originalError) {
|
|
307
|
+
super(formatMemoryRecallError(originalError));
|
|
308
|
+
this.originalError = originalError;
|
|
309
|
+
this.name = "MemoryRecallEmbeddingError";
|
|
310
|
+
}
|
|
311
|
+
};
|
|
312
|
+
const testing = { runWithTimeout };
|
|
276
313
|
function createEmbeddings(api, cfg) {
|
|
277
314
|
const { provider, model, dimensions, apiKey, baseUrl } = cfg.embedding;
|
|
278
315
|
if (provider === "openai" && apiKey) return new OpenAiCompatibleEmbeddings(apiKey, model, baseUrl, dimensions);
|
|
@@ -390,6 +427,7 @@ var memory_lancedb_default = definePluginEntry({
|
|
|
390
427
|
const db = new MemoryDB(resolvedDbPath, dimensions ?? vectorDimsForModel(model), cfg.storageOptions);
|
|
391
428
|
const embeddings = createEmbeddings(api, cfg);
|
|
392
429
|
const autoCaptureCursors = /* @__PURE__ */ new Map();
|
|
430
|
+
let memoryRecallCooldown;
|
|
393
431
|
const resolveCurrentHookConfig = () => {
|
|
394
432
|
const runtimePluginConfig = resolveLivePluginConfigObject(api.runtime.config?.current ? () => api.runtime.config.current() : void 0, "memory-lancedb", api.pluginConfig);
|
|
395
433
|
if (!runtimePluginConfig) return disabledHookCfg;
|
|
@@ -412,6 +450,20 @@ var memory_lancedb_default = definePluginEntry({
|
|
|
412
450
|
...asOptionalRecord(runtimePluginConfig)
|
|
413
451
|
});
|
|
414
452
|
};
|
|
453
|
+
const readMemoryRecallCooldown = () => {
|
|
454
|
+
if (!memoryRecallCooldown) return;
|
|
455
|
+
if (memoryRecallCooldown.until <= Date.now()) {
|
|
456
|
+
memoryRecallCooldown = void 0;
|
|
457
|
+
return;
|
|
458
|
+
}
|
|
459
|
+
return { error: memoryRecallCooldown.error };
|
|
460
|
+
};
|
|
461
|
+
const recordMemoryRecallCooldown = (error) => {
|
|
462
|
+
memoryRecallCooldown = {
|
|
463
|
+
until: Date.now() + DEFAULT_TOOL_RECALL_COOLDOWN_MS,
|
|
464
|
+
error
|
|
465
|
+
};
|
|
466
|
+
};
|
|
415
467
|
api.logger.info(`memory-lancedb: plugin registered (db: ${resolvedDbPath}, lazy init)`);
|
|
416
468
|
api.registerMemoryCapability?.({ publicArtifacts: { async listArtifacts(params) {
|
|
417
469
|
const { listMemoryHostPublicArtifacts } = await loadMemoryHostCoreModule();
|
|
@@ -430,8 +482,36 @@ var memory_lancedb_default = definePluginEntry({
|
|
|
430
482
|
const query = rawParams.query;
|
|
431
483
|
const limit = readPositiveIntegerParam(rawParams, "limit") ?? 5;
|
|
432
484
|
const currentCfg = resolveCurrentHookConfig();
|
|
433
|
-
const
|
|
434
|
-
|
|
485
|
+
const cooldown = readMemoryRecallCooldown();
|
|
486
|
+
if (cooldown) return buildMemoryRecallUnavailableResult(cooldown.error);
|
|
487
|
+
let recall;
|
|
488
|
+
try {
|
|
489
|
+
recall = await runWithTimeout({
|
|
490
|
+
timeoutMs: DEFAULT_TOOL_RECALL_TIMEOUT_MS,
|
|
491
|
+
task: async () => {
|
|
492
|
+
let vector;
|
|
493
|
+
try {
|
|
494
|
+
vector = await embeddings.embed(normalizeRecallQuery(query, currentCfg.recallMaxChars), { timeoutMs: DEFAULT_TOOL_RECALL_TIMEOUT_MS });
|
|
495
|
+
} catch (error) {
|
|
496
|
+
throw new MemoryRecallEmbeddingError(error);
|
|
497
|
+
}
|
|
498
|
+
return await db.search(vector, limit, .1);
|
|
499
|
+
}
|
|
500
|
+
});
|
|
501
|
+
} catch (error) {
|
|
502
|
+
if (!(error instanceof MemoryRecallEmbeddingError)) throw error;
|
|
503
|
+
const message = formatMemoryRecallError(error.originalError);
|
|
504
|
+
recordMemoryRecallCooldown(message);
|
|
505
|
+
api.logger.warn?.(`memory-lancedb: memory_recall failed: ${message}; returning unavailable memory result`);
|
|
506
|
+
return buildMemoryRecallUnavailableResult(message);
|
|
507
|
+
}
|
|
508
|
+
if (recall.status === "timeout") {
|
|
509
|
+
const message = `memory_recall timed out after ${Math.round(DEFAULT_TOOL_RECALL_TIMEOUT_MS / 1e3)}s`;
|
|
510
|
+
recordMemoryRecallCooldown(message);
|
|
511
|
+
api.logger.warn?.(`memory-lancedb: memory_recall timed out after ${DEFAULT_TOOL_RECALL_TIMEOUT_MS}ms; returning unavailable memory result`);
|
|
512
|
+
return buildMemoryRecallUnavailableResult(message);
|
|
513
|
+
}
|
|
514
|
+
const results = recall.value;
|
|
435
515
|
if (results.length === 0) return {
|
|
436
516
|
content: [{
|
|
437
517
|
type: "text",
|
|
@@ -651,7 +731,7 @@ var memory_lancedb_default = definePluginEntry({
|
|
|
651
731
|
const direction = dir?.toLowerCase() === "desc" ? -1 : 1;
|
|
652
732
|
rows.sort((a, b) => {
|
|
653
733
|
if (a[col] < b[col]) return -1 * direction;
|
|
654
|
-
if (a[col] > b[col]) return
|
|
734
|
+
if (a[col] > b[col]) return direction;
|
|
655
735
|
return 0;
|
|
656
736
|
});
|
|
657
737
|
rows = rows.slice(0, limit);
|
|
@@ -754,4 +834,4 @@ var memory_lancedb_default = definePluginEntry({
|
|
|
754
834
|
}
|
|
755
835
|
});
|
|
756
836
|
//#endregion
|
|
757
|
-
export { memory_lancedb_default as default, detectCategory, escapeMemoryForPrompt, formatRelevantMemoriesContext, looksLikePromptInjection, normalizeEmbeddingVector, normalizeRecallQuery, shouldCapture };
|
|
837
|
+
export { memory_lancedb_default as default, detectCategory, escapeMemoryForPrompt, formatRelevantMemoriesContext, looksLikePromptInjection, normalizeEmbeddingVector, normalizeRecallQuery, shouldCapture, testing };
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/memory-lancedb",
|
|
3
|
-
"version": "2026.5.
|
|
3
|
+
"version": "2026.5.31-beta.2",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@openclaw/memory-lancedb",
|
|
9
|
-
"version": "2026.5.
|
|
9
|
+
"version": "2026.5.31-beta.2",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@lancedb/lancedb": "0.
|
|
12
|
-
"apache-arrow": "
|
|
13
|
-
"openai": "6.39.
|
|
14
|
-
"typebox": "1.1.
|
|
11
|
+
"@lancedb/lancedb": "0.30.0",
|
|
12
|
+
"apache-arrow": "21.1.0",
|
|
13
|
+
"openai": "6.39.1",
|
|
14
|
+
"typebox": "1.1.39"
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
17
|
"node_modules/@lancedb/lancedb": {
|
|
18
|
-
"version": "0.
|
|
19
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb/-/lancedb-0.
|
|
20
|
-
"integrity": "sha512-
|
|
18
|
+
"version": "0.30.0",
|
|
19
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb/-/lancedb-0.30.0.tgz",
|
|
20
|
+
"integrity": "sha512-d0FoEL6cthqgsulqAc7fck6kRXrSRGMTqlKYbhSGSazHU6vB2GEpD737Mu0HZd7fMyBUdhR9sD1W2C9uQZ5p0Q==",
|
|
21
21
|
"cpu": [
|
|
22
22
|
"x64",
|
|
23
23
|
"arm64"
|
|
@@ -35,22 +35,22 @@
|
|
|
35
35
|
"node": ">= 18"
|
|
36
36
|
},
|
|
37
37
|
"optionalDependencies": {
|
|
38
|
-
"@lancedb/lancedb-darwin-arm64": "0.
|
|
39
|
-
"@lancedb/lancedb-linux-arm64-gnu": "0.
|
|
40
|
-
"@lancedb/lancedb-linux-arm64-musl": "0.
|
|
41
|
-
"@lancedb/lancedb-linux-x64-gnu": "0.
|
|
42
|
-
"@lancedb/lancedb-linux-x64-musl": "0.
|
|
43
|
-
"@lancedb/lancedb-win32-arm64-msvc": "0.
|
|
44
|
-
"@lancedb/lancedb-win32-x64-msvc": "0.
|
|
38
|
+
"@lancedb/lancedb-darwin-arm64": "0.30.0",
|
|
39
|
+
"@lancedb/lancedb-linux-arm64-gnu": "0.30.0",
|
|
40
|
+
"@lancedb/lancedb-linux-arm64-musl": "0.30.0",
|
|
41
|
+
"@lancedb/lancedb-linux-x64-gnu": "0.30.0",
|
|
42
|
+
"@lancedb/lancedb-linux-x64-musl": "0.30.0",
|
|
43
|
+
"@lancedb/lancedb-win32-arm64-msvc": "0.30.0",
|
|
44
|
+
"@lancedb/lancedb-win32-x64-msvc": "0.30.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"apache-arrow": ">=15.0.0 <=18.1.0"
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"node_modules/@lancedb/lancedb-darwin-arm64": {
|
|
51
|
-
"version": "0.
|
|
52
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-darwin-arm64/-/lancedb-darwin-arm64-0.
|
|
53
|
-
"integrity": "sha512-
|
|
51
|
+
"version": "0.30.0",
|
|
52
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-darwin-arm64/-/lancedb-darwin-arm64-0.30.0.tgz",
|
|
53
|
+
"integrity": "sha512-x6dmsjRIv0xumELYnFAEfyFDxqcO/n4rHYCJvC27RbRez0UmbByi6OMTgbSoSTatrQSPRCL7JJSa5pwNeawnIg==",
|
|
54
54
|
"cpu": [
|
|
55
55
|
"arm64"
|
|
56
56
|
],
|
|
@@ -64,9 +64,9 @@
|
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
66
|
"node_modules/@lancedb/lancedb-linux-arm64-gnu": {
|
|
67
|
-
"version": "0.
|
|
68
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-gnu/-/lancedb-linux-arm64-gnu-0.
|
|
69
|
-
"integrity": "sha512-
|
|
67
|
+
"version": "0.30.0",
|
|
68
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-gnu/-/lancedb-linux-arm64-gnu-0.30.0.tgz",
|
|
69
|
+
"integrity": "sha512-CWUex7hRNiLkXFeTQlUGPyy5VktbXoUmQdZuiVCETZ6ggljEC7c7Qvzu2ge+jEZML+UE7tXL2lVC3klRFGczng==",
|
|
70
70
|
"cpu": [
|
|
71
71
|
"arm64"
|
|
72
72
|
],
|
|
@@ -80,9 +80,9 @@
|
|
|
80
80
|
}
|
|
81
81
|
},
|
|
82
82
|
"node_modules/@lancedb/lancedb-linux-arm64-musl": {
|
|
83
|
-
"version": "0.
|
|
84
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-musl/-/lancedb-linux-arm64-musl-0.
|
|
85
|
-
"integrity": "sha512-
|
|
83
|
+
"version": "0.30.0",
|
|
84
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-arm64-musl/-/lancedb-linux-arm64-musl-0.30.0.tgz",
|
|
85
|
+
"integrity": "sha512-2MHmAS4tKePNVbwfgDrjCFj6BVuAgXlL2c9iWk7TfcwL+jcSxo52LFx03O0+ArpVCF2sI6aoDqZaQNre5zMniQ==",
|
|
86
86
|
"cpu": [
|
|
87
87
|
"arm64"
|
|
88
88
|
],
|
|
@@ -96,9 +96,9 @@
|
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"node_modules/@lancedb/lancedb-linux-x64-gnu": {
|
|
99
|
-
"version": "0.
|
|
100
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-gnu/-/lancedb-linux-x64-gnu-0.
|
|
101
|
-
"integrity": "sha512-
|
|
99
|
+
"version": "0.30.0",
|
|
100
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-gnu/-/lancedb-linux-x64-gnu-0.30.0.tgz",
|
|
101
|
+
"integrity": "sha512-0OpDNxsDE4OXD+PIFd7KdE42xhYIE+fZL+jCm1v3dTug4UEhumWBuSgbUIBP7t0yJZHwh62/QivVh/V1cPB2Bg==",
|
|
102
102
|
"cpu": [
|
|
103
103
|
"x64"
|
|
104
104
|
],
|
|
@@ -112,9 +112,9 @@
|
|
|
112
112
|
}
|
|
113
113
|
},
|
|
114
114
|
"node_modules/@lancedb/lancedb-linux-x64-musl": {
|
|
115
|
-
"version": "0.
|
|
116
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-musl/-/lancedb-linux-x64-musl-0.
|
|
117
|
-
"integrity": "sha512-
|
|
115
|
+
"version": "0.30.0",
|
|
116
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-linux-x64-musl/-/lancedb-linux-x64-musl-0.30.0.tgz",
|
|
117
|
+
"integrity": "sha512-4Bq7VngQt+lyxIcu79EN8nYJs8gvUnrIT6I/t2MSlpG/BXWHZG2A+PRii1Zq4GCUlRTTG+RlieCv8CBGSPm8bw==",
|
|
118
118
|
"cpu": [
|
|
119
119
|
"x64"
|
|
120
120
|
],
|
|
@@ -128,9 +128,9 @@
|
|
|
128
128
|
}
|
|
129
129
|
},
|
|
130
130
|
"node_modules/@lancedb/lancedb-win32-arm64-msvc": {
|
|
131
|
-
"version": "0.
|
|
132
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-arm64-msvc/-/lancedb-win32-arm64-msvc-0.
|
|
133
|
-
"integrity": "sha512-
|
|
131
|
+
"version": "0.30.0",
|
|
132
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-arm64-msvc/-/lancedb-win32-arm64-msvc-0.30.0.tgz",
|
|
133
|
+
"integrity": "sha512-N2DQg2XBWZirn5jS6kRJUxF679t3sKcIxBwP9zY4Idq5OVLAj0yfLueWIKhYxv8en7pBFYWdgw5j9dTS7XajyQ==",
|
|
134
134
|
"cpu": [
|
|
135
135
|
"arm64"
|
|
136
136
|
],
|
|
@@ -144,9 +144,9 @@
|
|
|
144
144
|
}
|
|
145
145
|
},
|
|
146
146
|
"node_modules/@lancedb/lancedb-win32-x64-msvc": {
|
|
147
|
-
"version": "0.
|
|
148
|
-
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-x64-msvc/-/lancedb-win32-x64-msvc-0.
|
|
149
|
-
"integrity": "sha512-
|
|
147
|
+
"version": "0.30.0",
|
|
148
|
+
"resolved": "https://registry.npmjs.org/@lancedb/lancedb-win32-x64-msvc/-/lancedb-win32-x64-msvc-0.30.0.tgz",
|
|
149
|
+
"integrity": "sha512-CDgN/ZmYqSlVX2nBJAF2PYEwqBBxotCVORjagmvrd0k5D7RBLlAQUEAR4gDMum2BpYsUkzdTYQpquLjRCVbwbQ==",
|
|
150
150
|
"cpu": [
|
|
151
151
|
"x64"
|
|
152
152
|
],
|
|
@@ -160,9 +160,9 @@
|
|
|
160
160
|
}
|
|
161
161
|
},
|
|
162
162
|
"node_modules/@swc/helpers": {
|
|
163
|
-
"version": "0.5.
|
|
164
|
-
"resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.
|
|
165
|
-
"integrity": "sha512-
|
|
163
|
+
"version": "0.5.23",
|
|
164
|
+
"resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.23.tgz",
|
|
165
|
+
"integrity": "sha512-5lSsMOTXURePglDfvuAQUqkGek9Hg2kksOYay2m0+XR++b2NWYL/4sWyuvVBIs8oKnJaxkdi9whaL/sqN13afw==",
|
|
166
166
|
"license": "Apache-2.0",
|
|
167
167
|
"dependencies": {
|
|
168
168
|
"tslib": "^2.8.0"
|
|
@@ -181,12 +181,12 @@
|
|
|
181
181
|
"license": "MIT"
|
|
182
182
|
},
|
|
183
183
|
"node_modules/@types/node": {
|
|
184
|
-
"version": "
|
|
185
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-
|
|
186
|
-
"integrity": "sha512-
|
|
184
|
+
"version": "24.12.4",
|
|
185
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.4.tgz",
|
|
186
|
+
"integrity": "sha512-GUUEShf+PBCGW2KaXwcIt3Yk+e3pkKwWKb9GSyM9WQVE+ep2jzmHdGsHzu4wgcZy5fN9FBdVzjpBQsYlpfpgLA==",
|
|
187
187
|
"license": "MIT",
|
|
188
188
|
"dependencies": {
|
|
189
|
-
"undici-types": "~
|
|
189
|
+
"undici-types": "~7.16.0"
|
|
190
190
|
}
|
|
191
191
|
},
|
|
192
192
|
"node_modules/ansi-styles": {
|
|
@@ -205,18 +205,18 @@
|
|
|
205
205
|
}
|
|
206
206
|
},
|
|
207
207
|
"node_modules/apache-arrow": {
|
|
208
|
-
"version": "
|
|
209
|
-
"resolved": "https://registry.npmjs.org/apache-arrow/-/apache-arrow-
|
|
210
|
-
"integrity": "sha512-
|
|
208
|
+
"version": "21.1.0",
|
|
209
|
+
"resolved": "https://registry.npmjs.org/apache-arrow/-/apache-arrow-21.1.0.tgz",
|
|
210
|
+
"integrity": "sha512-kQrYLxhC+NTVVZ4CCzGF6L/uPVOzJmD1T3XgbiUnP7oTeVFOFgEUu6IKNwCDkpFoBVqDKQivlX4RUFqqnWFlEA==",
|
|
211
211
|
"license": "Apache-2.0",
|
|
212
212
|
"dependencies": {
|
|
213
213
|
"@swc/helpers": "^0.5.11",
|
|
214
214
|
"@types/command-line-args": "^5.2.3",
|
|
215
215
|
"@types/command-line-usage": "^5.0.4",
|
|
216
|
-
"@types/node": "^
|
|
217
|
-
"command-line-args": "^
|
|
216
|
+
"@types/node": "^24.0.3",
|
|
217
|
+
"command-line-args": "^6.0.1",
|
|
218
218
|
"command-line-usage": "^7.0.1",
|
|
219
|
-
"flatbuffers": "^
|
|
219
|
+
"flatbuffers": "^25.1.24",
|
|
220
220
|
"json-bignum": "^0.0.3",
|
|
221
221
|
"tslib": "^2.6.2"
|
|
222
222
|
},
|
|
@@ -225,12 +225,12 @@
|
|
|
225
225
|
}
|
|
226
226
|
},
|
|
227
227
|
"node_modules/array-back": {
|
|
228
|
-
"version": "
|
|
229
|
-
"resolved": "https://registry.npmjs.org/array-back/-/array-back-
|
|
230
|
-
"integrity": "sha512-
|
|
228
|
+
"version": "6.2.3",
|
|
229
|
+
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.3.tgz",
|
|
230
|
+
"integrity": "sha512-SGDvmg6QTYiTxCBkYVmThcoa67uLl35pyzRHdpCGBOcqFy6BtwnphoFPk7LhJshD+Yk1Kt35WGWeZPTgwR4Fhw==",
|
|
231
231
|
"license": "MIT",
|
|
232
232
|
"engines": {
|
|
233
|
-
"node": ">=
|
|
233
|
+
"node": ">=12.17"
|
|
234
234
|
}
|
|
235
235
|
},
|
|
236
236
|
"node_modules/chalk": {
|
|
@@ -283,18 +283,26 @@
|
|
|
283
283
|
"license": "MIT"
|
|
284
284
|
},
|
|
285
285
|
"node_modules/command-line-args": {
|
|
286
|
-
"version": "
|
|
287
|
-
"resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-
|
|
288
|
-
"integrity": "sha512-
|
|
286
|
+
"version": "6.0.2",
|
|
287
|
+
"resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-6.0.2.tgz",
|
|
288
|
+
"integrity": "sha512-AIjYVxrV9X752LmPDLbVYv8aMCuHPSLZJXEo2qo/xJfv+NYhaZ4sMSF01rM+gHPaMgvPM0l5D/F+Qx+i2WfSmQ==",
|
|
289
289
|
"license": "MIT",
|
|
290
290
|
"dependencies": {
|
|
291
|
-
"array-back": "^
|
|
292
|
-
"find-replace": "^
|
|
291
|
+
"array-back": "^6.2.3",
|
|
292
|
+
"find-replace": "^5.0.2",
|
|
293
293
|
"lodash.camelcase": "^4.3.0",
|
|
294
|
-
"typical": "^
|
|
294
|
+
"typical": "^7.3.0"
|
|
295
295
|
},
|
|
296
296
|
"engines": {
|
|
297
|
-
"node": ">=
|
|
297
|
+
"node": ">=12.20"
|
|
298
|
+
},
|
|
299
|
+
"peerDependencies": {
|
|
300
|
+
"@75lb/nature": "latest"
|
|
301
|
+
},
|
|
302
|
+
"peerDependenciesMeta": {
|
|
303
|
+
"@75lb/nature": {
|
|
304
|
+
"optional": true
|
|
305
|
+
}
|
|
298
306
|
}
|
|
299
307
|
},
|
|
300
308
|
"node_modules/command-line-usage": {
|
|
@@ -312,40 +320,27 @@
|
|
|
312
320
|
"node": ">=12.20.0"
|
|
313
321
|
}
|
|
314
322
|
},
|
|
315
|
-
"node_modules/command-line-usage/node_modules/array-back": {
|
|
316
|
-
"version": "6.2.3",
|
|
317
|
-
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.3.tgz",
|
|
318
|
-
"integrity": "sha512-SGDvmg6QTYiTxCBkYVmThcoa67uLl35pyzRHdpCGBOcqFy6BtwnphoFPk7LhJshD+Yk1Kt35WGWeZPTgwR4Fhw==",
|
|
319
|
-
"license": "MIT",
|
|
320
|
-
"engines": {
|
|
321
|
-
"node": ">=12.17"
|
|
322
|
-
}
|
|
323
|
-
},
|
|
324
|
-
"node_modules/command-line-usage/node_modules/typical": {
|
|
325
|
-
"version": "7.3.0",
|
|
326
|
-
"resolved": "https://registry.npmjs.org/typical/-/typical-7.3.0.tgz",
|
|
327
|
-
"integrity": "sha512-ya4mg/30vm+DOWfBg4YK3j2WD6TWtRkCbasOJr40CseYENzCUby/7rIvXA99JGsQHeNxLbnXdyLLxKSv3tauFw==",
|
|
328
|
-
"license": "MIT",
|
|
329
|
-
"engines": {
|
|
330
|
-
"node": ">=12.17"
|
|
331
|
-
}
|
|
332
|
-
},
|
|
333
323
|
"node_modules/find-replace": {
|
|
334
|
-
"version": "
|
|
335
|
-
"resolved": "https://registry.npmjs.org/find-replace/-/find-replace-
|
|
336
|
-
"integrity": "sha512-
|
|
324
|
+
"version": "5.0.2",
|
|
325
|
+
"resolved": "https://registry.npmjs.org/find-replace/-/find-replace-5.0.2.tgz",
|
|
326
|
+
"integrity": "sha512-Y45BAiE3mz2QsrN2fb5QEtO4qb44NcS7en/0y9PEVsg351HsLeVclP8QPMH79Le9sH3rs5RSwJu99W0WPZO43Q==",
|
|
337
327
|
"license": "MIT",
|
|
338
|
-
"dependencies": {
|
|
339
|
-
"array-back": "^3.0.1"
|
|
340
|
-
},
|
|
341
328
|
"engines": {
|
|
342
|
-
"node": ">=
|
|
329
|
+
"node": ">=14"
|
|
330
|
+
},
|
|
331
|
+
"peerDependencies": {
|
|
332
|
+
"@75lb/nature": "latest"
|
|
333
|
+
},
|
|
334
|
+
"peerDependenciesMeta": {
|
|
335
|
+
"@75lb/nature": {
|
|
336
|
+
"optional": true
|
|
337
|
+
}
|
|
343
338
|
}
|
|
344
339
|
},
|
|
345
340
|
"node_modules/flatbuffers": {
|
|
346
|
-
"version": "
|
|
347
|
-
"resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-
|
|
348
|
-
"integrity": "sha512-
|
|
341
|
+
"version": "25.9.23",
|
|
342
|
+
"resolved": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-25.9.23.tgz",
|
|
343
|
+
"integrity": "sha512-MI1qs7Lo4Syw0EOzUl0xjs2lsoeqFku44KpngfIduHBYvzm8h2+7K8YMQh1JtVVVrUvhLpNwqVi4DERegUJhPQ==",
|
|
349
344
|
"license": "Apache-2.0"
|
|
350
345
|
},
|
|
351
346
|
"node_modules/has-flag": {
|
|
@@ -372,9 +367,9 @@
|
|
|
372
367
|
"license": "MIT"
|
|
373
368
|
},
|
|
374
369
|
"node_modules/openai": {
|
|
375
|
-
"version": "6.39.
|
|
376
|
-
"resolved": "https://registry.npmjs.org/openai/-/openai-6.39.
|
|
377
|
-
"integrity": "sha512-
|
|
370
|
+
"version": "6.39.1",
|
|
371
|
+
"resolved": "https://registry.npmjs.org/openai/-/openai-6.39.1.tgz",
|
|
372
|
+
"integrity": "sha512-z3dO9fEWOXBzlXynVb/xZ/tujzUjFWQWn3C0n0mw6Vo0zJTbEkaN4b2cLWjhJ6haJQx8LlREoafHRl+Gu/Hl+A==",
|
|
378
373
|
"license": "Apache-2.0",
|
|
379
374
|
"bin": {
|
|
380
375
|
"openai": "bin/cli"
|
|
@@ -423,15 +418,6 @@
|
|
|
423
418
|
"node": ">=12.17"
|
|
424
419
|
}
|
|
425
420
|
},
|
|
426
|
-
"node_modules/table-layout/node_modules/array-back": {
|
|
427
|
-
"version": "6.2.3",
|
|
428
|
-
"resolved": "https://registry.npmjs.org/array-back/-/array-back-6.2.3.tgz",
|
|
429
|
-
"integrity": "sha512-SGDvmg6QTYiTxCBkYVmThcoa67uLl35pyzRHdpCGBOcqFy6BtwnphoFPk7LhJshD+Yk1Kt35WGWeZPTgwR4Fhw==",
|
|
430
|
-
"license": "MIT",
|
|
431
|
-
"engines": {
|
|
432
|
-
"node": ">=12.17"
|
|
433
|
-
}
|
|
434
|
-
},
|
|
435
421
|
"node_modules/tslib": {
|
|
436
422
|
"version": "2.8.1",
|
|
437
423
|
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
|
|
@@ -439,24 +425,24 @@
|
|
|
439
425
|
"license": "0BSD"
|
|
440
426
|
},
|
|
441
427
|
"node_modules/typebox": {
|
|
442
|
-
"version": "1.1.
|
|
443
|
-
"resolved": "https://registry.npmjs.org/typebox/-/typebox-1.1.
|
|
444
|
-
"integrity": "sha512-
|
|
428
|
+
"version": "1.1.39",
|
|
429
|
+
"resolved": "https://registry.npmjs.org/typebox/-/typebox-1.1.39.tgz",
|
|
430
|
+
"integrity": "sha512-vj0afVtOfLQvv0GR0VxVagYxsXN64btL7Z9XoaG0ZggH3mruMMkOO6hXdgMsjCY3shZgEvooAWVeznQVs5c43w==",
|
|
445
431
|
"license": "MIT"
|
|
446
432
|
},
|
|
447
433
|
"node_modules/typical": {
|
|
448
|
-
"version": "
|
|
449
|
-
"resolved": "https://registry.npmjs.org/typical/-/typical-
|
|
450
|
-
"integrity": "sha512-
|
|
434
|
+
"version": "7.3.0",
|
|
435
|
+
"resolved": "https://registry.npmjs.org/typical/-/typical-7.3.0.tgz",
|
|
436
|
+
"integrity": "sha512-ya4mg/30vm+DOWfBg4YK3j2WD6TWtRkCbasOJr40CseYENzCUby/7rIvXA99JGsQHeNxLbnXdyLLxKSv3tauFw==",
|
|
451
437
|
"license": "MIT",
|
|
452
438
|
"engines": {
|
|
453
|
-
"node": ">=
|
|
439
|
+
"node": ">=12.17"
|
|
454
440
|
}
|
|
455
441
|
},
|
|
456
442
|
"node_modules/undici-types": {
|
|
457
|
-
"version": "
|
|
458
|
-
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-
|
|
459
|
-
"integrity": "sha512-
|
|
443
|
+
"version": "7.16.0",
|
|
444
|
+
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
|
|
445
|
+
"integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==",
|
|
460
446
|
"license": "MIT"
|
|
461
447
|
},
|
|
462
448
|
"node_modules/wordwrapjs": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/memory-lancedb",
|
|
3
|
-
"version": "2026.5.
|
|
3
|
+
"version": "2026.5.31-beta.2",
|
|
4
4
|
"description": "OpenClaw LanceDB-backed long-term memory plugin with auto-recall, auto-capture, and vector search.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
},
|
|
9
9
|
"type": "module",
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@lancedb/lancedb": "0.
|
|
12
|
-
"apache-arrow": "
|
|
13
|
-
"openai": "6.39.
|
|
14
|
-
"typebox": "1.1.
|
|
11
|
+
"@lancedb/lancedb": "0.30.0",
|
|
12
|
+
"apache-arrow": "21.1.0",
|
|
13
|
+
"openai": "6.39.1",
|
|
14
|
+
"typebox": "1.1.39"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
17
|
"@openclaw/plugin-sdk": "workspace:*"
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
"minHostVersion": ">=2026.4.10"
|
|
27
27
|
},
|
|
28
28
|
"compat": {
|
|
29
|
-
"pluginApi": ">=2026.5.
|
|
29
|
+
"pluginApi": ">=2026.5.31-beta.2"
|
|
30
30
|
},
|
|
31
31
|
"build": {
|
|
32
|
-
"openclawVersion": "2026.5.
|
|
32
|
+
"openclawVersion": "2026.5.31-beta.2"
|
|
33
33
|
},
|
|
34
34
|
"release": {
|
|
35
35
|
"bundleRuntimeDependencies": false,
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"README.md"
|
|
48
48
|
],
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"openclaw": ">=2026.5.
|
|
50
|
+
"openclaw": ">=2026.5.31-beta.2"
|
|
51
51
|
},
|
|
52
52
|
"peerDependenciesMeta": {
|
|
53
53
|
"openclaw": {
|