memory-lancedb-pro 1.0.28 → 1.0.30
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/README.md +6 -4
- package/README_CN.md +5 -3
- package/index.ts +11 -3
- package/package.json +1 -1
- package/src/adaptive-retrieval.ts +15 -12
- package/src/tools.ts +11 -3
package/README.md
CHANGED
|
@@ -780,29 +780,31 @@ Config-only changes do NOT need cache clearing.
|
|
|
780
780
|
|
|
781
781
|
## Contributors
|
|
782
782
|
|
|
783
|
-
Top contributors (from GitHub
|
|
783
|
+
Top contributors (from GitHub's contributors list, sorted by commit contributions; bots excluded):
|
|
784
784
|
|
|
785
785
|
<p>
|
|
786
786
|
<a href="https://github.com/win4r"><img src="https://avatars.githubusercontent.com/u/42172631?v=4" width="48" height="48" alt="@win4r" /></a>
|
|
787
787
|
<a href="https://github.com/kctony"><img src="https://avatars.githubusercontent.com/u/1731141?v=4" width="48" height="48" alt="@kctony" /></a>
|
|
788
788
|
<a href="https://github.com/Akatsuki-Ryu"><img src="https://avatars.githubusercontent.com/u/8062209?v=4" width="48" height="48" alt="@Akatsuki-Ryu" /></a>
|
|
789
|
+
<a href="https://github.com/AliceLJY"><img src="https://avatars.githubusercontent.com/u/136287420?v=4" width="48" height="48" alt="@AliceLJY" /></a>
|
|
789
790
|
<a href="https://github.com/JasonSuz"><img src="https://avatars.githubusercontent.com/u/612256?v=4" width="48" height="48" alt="@JasonSuz" /></a>
|
|
790
791
|
<a href="https://github.com/Minidoracat"><img src="https://avatars.githubusercontent.com/u/11269639?v=4" width="48" height="48" alt="@Minidoracat" /></a>
|
|
792
|
+
<a href="https://github.com/rwmjhb"><img src="https://avatars.githubusercontent.com/u/91475811?v=4" width="48" height="48" alt="@rwmjhb" /></a>
|
|
791
793
|
<a href="https://github.com/furedericca-lab"><img src="https://avatars.githubusercontent.com/u/263020793?v=4" width="48" height="48" alt="@furedericca-lab" /></a>
|
|
792
794
|
<a href="https://github.com/joe2643"><img src="https://avatars.githubusercontent.com/u/19421931?v=4" width="48" height="48" alt="@joe2643" /></a>
|
|
793
|
-
<a href="https://github.com/AliceLJY"><img src="https://avatars.githubusercontent.com/u/136287420?v=4" width="48" height="48" alt="@AliceLJY" /></a>
|
|
794
795
|
<a href="https://github.com/chenjiyong"><img src="https://avatars.githubusercontent.com/u/8199522?v=4" width="48" height="48" alt="@chenjiyong" /></a>
|
|
795
796
|
</p>
|
|
796
797
|
|
|
797
|
-
- [@win4r](https://github.com/win4r) (
|
|
798
|
+
- [@win4r](https://github.com/win4r) (4 commits)
|
|
798
799
|
- [@kctony](https://github.com/kctony) (2 commits)
|
|
799
800
|
- [@Akatsuki-Ryu](https://github.com/Akatsuki-Ryu) (1 commit)
|
|
800
801
|
- [@AliceLJY](https://github.com/AliceLJY) (1 commit)
|
|
801
|
-
- [@chenjiyong](https://github.com/chenjiyong) (1 commit)
|
|
802
802
|
- [@JasonSuz](https://github.com/JasonSuz) (1 commit)
|
|
803
803
|
- [@Minidoracat](https://github.com/Minidoracat) (1 commit)
|
|
804
|
+
- [@rwmjhb](https://github.com/rwmjhb) (1 commit)
|
|
804
805
|
- [@furedericca-lab](https://github.com/furedericca-lab) (1 commit)
|
|
805
806
|
- [@joe2643](https://github.com/joe2643) (1 commit)
|
|
807
|
+
- [@chenjiyong](https://github.com/chenjiyong) (1 commit)
|
|
806
808
|
|
|
807
809
|
Full list: https://github.com/win4r/memory-lancedb-pro/graphs/contributors
|
|
808
810
|
|
package/README_CN.md
CHANGED
|
@@ -660,23 +660,25 @@ Config-only changes do NOT need cache clearing.
|
|
|
660
660
|
<a href="https://github.com/win4r"><img src="https://avatars.githubusercontent.com/u/42172631?v=4" width="48" height="48" alt="@win4r" /></a>
|
|
661
661
|
<a href="https://github.com/kctony"><img src="https://avatars.githubusercontent.com/u/1731141?v=4" width="48" height="48" alt="@kctony" /></a>
|
|
662
662
|
<a href="https://github.com/Akatsuki-Ryu"><img src="https://avatars.githubusercontent.com/u/8062209?v=4" width="48" height="48" alt="@Akatsuki-Ryu" /></a>
|
|
663
|
+
<a href="https://github.com/AliceLJY"><img src="https://avatars.githubusercontent.com/u/136287420?v=4" width="48" height="48" alt="@AliceLJY" /></a>
|
|
663
664
|
<a href="https://github.com/JasonSuz"><img src="https://avatars.githubusercontent.com/u/612256?v=4" width="48" height="48" alt="@JasonSuz" /></a>
|
|
664
665
|
<a href="https://github.com/Minidoracat"><img src="https://avatars.githubusercontent.com/u/11269639?v=4" width="48" height="48" alt="@Minidoracat" /></a>
|
|
666
|
+
<a href="https://github.com/rwmjhb"><img src="https://avatars.githubusercontent.com/u/91475811?v=4" width="48" height="48" alt="@rwmjhb" /></a>
|
|
665
667
|
<a href="https://github.com/furedericca-lab"><img src="https://avatars.githubusercontent.com/u/263020793?v=4" width="48" height="48" alt="@furedericca-lab" /></a>
|
|
666
668
|
<a href="https://github.com/joe2643"><img src="https://avatars.githubusercontent.com/u/19421931?v=4" width="48" height="48" alt="@joe2643" /></a>
|
|
667
|
-
<a href="https://github.com/AliceLJY"><img src="https://avatars.githubusercontent.com/u/136287420?v=4" width="48" height="48" alt="@AliceLJY" /></a>
|
|
668
669
|
<a href="https://github.com/chenjiyong"><img src="https://avatars.githubusercontent.com/u/8199522?v=4" width="48" height="48" alt="@chenjiyong" /></a>
|
|
669
670
|
</p>
|
|
670
671
|
|
|
671
|
-
- [@win4r](https://github.com/win4r)(
|
|
672
|
+
- [@win4r](https://github.com/win4r)(4 次提交)
|
|
672
673
|
- [@kctony](https://github.com/kctony)(2 次提交)
|
|
673
674
|
- [@Akatsuki-Ryu](https://github.com/Akatsuki-Ryu)(1 次提交)
|
|
674
675
|
- [@AliceLJY](https://github.com/AliceLJY)(1 次提交)
|
|
675
|
-
- [@chenjiyong](https://github.com/chenjiyong)(1 次提交)
|
|
676
676
|
- [@JasonSuz](https://github.com/JasonSuz)(1 次提交)
|
|
677
677
|
- [@Minidoracat](https://github.com/Minidoracat)(1 次提交)
|
|
678
|
+
- [@rwmjhb](https://github.com/rwmjhb)(1 次提交)
|
|
678
679
|
- [@furedericca-lab](https://github.com/furedericca-lab)(1 次提交)
|
|
679
680
|
- [@joe2643](https://github.com/joe2643)(1 次提交)
|
|
681
|
+
- [@chenjiyong](https://github.com/chenjiyong)(1 次提交)
|
|
680
682
|
|
|
681
683
|
完整列表:https://github.com/win4r/memory-lancedb-pro/graphs/contributors
|
|
682
684
|
|
package/index.ts
CHANGED
|
@@ -625,9 +625,17 @@ const memoryLanceDBProPlugin = {
|
|
|
625
625
|
const vector = await embedder.embedPassage(text);
|
|
626
626
|
|
|
627
627
|
// Check for duplicates using raw vector similarity (bypasses importance/recency weighting)
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
628
|
+
// Fail-open by design: dedup should not block auto-capture writes.
|
|
629
|
+
let existing: Awaited<ReturnType<typeof store.vectorSearch>> = [];
|
|
630
|
+
try {
|
|
631
|
+
existing = await store.vectorSearch(vector, 1, 0.1, [
|
|
632
|
+
defaultScope,
|
|
633
|
+
]);
|
|
634
|
+
} catch (err) {
|
|
635
|
+
api.logger.warn(
|
|
636
|
+
`memory-lancedb-pro: auto-capture duplicate pre-check failed, continue store: ${String(err)}`,
|
|
637
|
+
);
|
|
638
|
+
}
|
|
631
639
|
|
|
632
640
|
if (existing.length > 0 && existing[0].score > 0.95) {
|
|
633
641
|
continue;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memory-lancedb-pro",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.30",
|
|
4
4
|
"description": "OpenClaw enhanced LanceDB memory plugin with hybrid retrieval (Vector + BM25), cross-encoder rerank, multi-scope isolation, long-context chunking, and management CLI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.ts",
|
|
@@ -46,21 +46,24 @@ const FORCE_RETRIEVE_PATTERNS = [
|
|
|
46
46
|
function normalizeQuery(query: string): string {
|
|
47
47
|
let s = query.trim();
|
|
48
48
|
|
|
49
|
-
// Strip OpenClaw
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
s = s.replace(/^\[[A-Za-z]{3}\s\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}\s[^\]]+\]\s*/, "");
|
|
54
|
-
|
|
55
|
-
// Strip OpenClaw injected metadata header used in some transcripts.
|
|
56
|
-
if (/^Conversation info \(untrusted metadata\):/i.test(s)) {
|
|
57
|
-
s = s.replace(/^Conversation info \(untrusted metadata\):\s*/i, "");
|
|
58
|
-
// If there is a blank-line separator, keep only the part after it.
|
|
49
|
+
// 1. Strip OpenClaw injected metadata header (Conversation info or Sender).
|
|
50
|
+
if (/^(Conversation info|Sender) \(untrusted metadata\):/i.test(s)) {
|
|
51
|
+
s = s.replace(/^(Conversation info|Sender) \(untrusted metadata\):\s*/i, "");
|
|
52
|
+
// If there is a blank-line separator (after JSON block), keep only the part after it.
|
|
59
53
|
const parts = s.split(/\n\s*\n/, 2);
|
|
60
|
-
if (parts.length === 2)
|
|
54
|
+
if (parts.length === 2) {
|
|
55
|
+
s = parts[1].trim();
|
|
56
|
+
}
|
|
61
57
|
}
|
|
62
58
|
|
|
63
|
-
|
|
59
|
+
// 2. Strip OpenClaw cron wrapper prefix.
|
|
60
|
+
s = s.trim().replace(/^\[cron:[^\]]+\]\s*/i, "");
|
|
61
|
+
|
|
62
|
+
// 3. Strip OpenClaw timestamp prefix [Mon 2026-03-02 04:21 GMT+8].
|
|
63
|
+
s = s.trim().replace(/^\[[A-Za-z]{3}\s\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}\s[^\]]+\]\s*/, "");
|
|
64
|
+
|
|
65
|
+
const result = s.trim();
|
|
66
|
+
return result;
|
|
64
67
|
}
|
|
65
68
|
|
|
66
69
|
/**
|
package/src/tools.ts
CHANGED
|
@@ -263,9 +263,17 @@ export function registerMemoryStoreTool(
|
|
|
263
263
|
const vector = await context.embedder.embedPassage(text);
|
|
264
264
|
|
|
265
265
|
// Check for duplicates using raw vector similarity (bypasses importance/recency weighting)
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
266
|
+
// Fail-open by design: dedup must never block a legitimate memory write.
|
|
267
|
+
let existing: Awaited<ReturnType<typeof context.store.vectorSearch>> = [];
|
|
268
|
+
try {
|
|
269
|
+
existing = await context.store.vectorSearch(vector, 1, 0.1, [
|
|
270
|
+
targetScope,
|
|
271
|
+
]);
|
|
272
|
+
} catch (err) {
|
|
273
|
+
console.warn(
|
|
274
|
+
`memory-lancedb-pro: duplicate pre-check failed, continue store: ${String(err)}`,
|
|
275
|
+
);
|
|
276
|
+
}
|
|
269
277
|
|
|
270
278
|
if (existing.length > 0 && existing[0].score > 0.98) {
|
|
271
279
|
return {
|