@xdarkicex/openclaw-memory-libravdb 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.
Files changed (75) hide show
  1. package/HOOK.md +14 -0
  2. package/README.md +32 -2
  3. package/dist/cli.d.ts +39 -0
  4. package/dist/cli.js +208 -0
  5. package/dist/context-engine.d.ts +56 -0
  6. package/dist/context-engine.js +125 -0
  7. package/dist/dream-promotion.d.ts +47 -0
  8. package/dist/dream-promotion.js +363 -0
  9. package/dist/dream-routing.d.ts +6 -0
  10. package/dist/dream-routing.js +31 -0
  11. package/dist/durable-namespace.d.ts +6 -0
  12. package/dist/durable-namespace.js +24 -0
  13. package/dist/grpc-client.d.ts +23 -0
  14. package/dist/grpc-client.js +104 -0
  15. package/dist/index.d.ts +10 -0
  16. package/dist/index.js +40 -0
  17. package/dist/lifecycle-hooks.d.ts +4 -0
  18. package/dist/lifecycle-hooks.js +64 -0
  19. package/dist/markdown-hash.d.ts +3 -0
  20. package/dist/markdown-hash.js +82 -0
  21. package/dist/markdown-ingest.d.ts +43 -0
  22. package/dist/markdown-ingest.js +464 -0
  23. package/dist/memory-provider.d.ts +4 -0
  24. package/dist/memory-provider.js +13 -0
  25. package/dist/memory-runtime.d.ts +118 -0
  26. package/dist/memory-runtime.js +217 -0
  27. package/dist/plugin-runtime.d.ts +28 -0
  28. package/dist/plugin-runtime.js +127 -0
  29. package/dist/proto/intelligence_kernel/v1/kernel.proto +378 -0
  30. package/dist/recall-cache.d.ts +2 -0
  31. package/dist/recall-cache.js +30 -0
  32. package/dist/rpc-protobuf-codecs.d.ts +70 -0
  33. package/dist/rpc-protobuf-codecs.js +77 -0
  34. package/dist/rpc.d.ts +14 -0
  35. package/dist/rpc.js +121 -0
  36. package/dist/sidecar.d.ts +34 -0
  37. package/dist/sidecar.js +535 -0
  38. package/dist/types.d.ts +163 -0
  39. package/dist/types.js +1 -0
  40. package/docs/contributing.md +14 -13
  41. package/docs/install.md +7 -9
  42. package/docs/installation.md +23 -16
  43. package/docs/uninstall.md +1 -1
  44. package/index.js +2 -0
  45. package/openclaw.plugin.json +2 -2
  46. package/package.json +39 -16
  47. package/packaging/README.md +0 -71
  48. package/packaging/homebrew/libravdbd.rb.tmpl +0 -224
  49. package/packaging/launchd/com.xdarkicex.libravdbd.plist +0 -32
  50. package/packaging/systemd/libravdbd.service +0 -12
  51. package/src/cli.ts +0 -299
  52. package/src/comparison-experiments.ts +0 -128
  53. package/src/context-engine.ts +0 -1451
  54. package/src/continuity.ts +0 -93
  55. package/src/dream-promotion.ts +0 -492
  56. package/src/dream-routing.ts +0 -40
  57. package/src/durable-namespace.ts +0 -34
  58. package/src/index.ts +0 -47
  59. package/src/lifecycle-hooks.ts +0 -96
  60. package/src/markdown-hash.ts +0 -104
  61. package/src/markdown-ingest.ts +0 -627
  62. package/src/memory-provider.ts +0 -25
  63. package/src/memory-runtime.ts +0 -283
  64. package/src/openclaw-plugin-sdk.d.ts +0 -59
  65. package/src/plugin-runtime.ts +0 -116
  66. package/src/recall-cache.ts +0 -34
  67. package/src/recall-utils.ts +0 -131
  68. package/src/rpc.ts +0 -84
  69. package/src/scoring.ts +0 -632
  70. package/src/sidecar.ts +0 -486
  71. package/src/temporal.ts +0 -1010
  72. package/src/tokens.ts +0 -52
  73. package/src/types.ts +0 -277
  74. package/tsconfig.json +0 -20
  75. package/tsconfig.tests.json +0 -12
package/src/tokens.ts DELETED
@@ -1,52 +0,0 @@
1
- import type { SearchResult } from "./types.js";
2
-
3
- export function estimateTokens(text: string): number {
4
- const charsPerToken = detectCharsPerToken(text);
5
- return Math.ceil(text.length / charsPerToken);
6
- }
7
-
8
- export function fitPromptBudget(items: SearchResult[], budget: number): SearchResult[] {
9
- const selected: SearchResult[] = [];
10
- let used = 0;
11
-
12
- for (const item of items) {
13
- const cost = estimateTokens(item.text);
14
- if (used + cost > budget) {
15
- break;
16
- }
17
- selected.push(item);
18
- used += cost;
19
- }
20
-
21
- return selected;
22
- }
23
-
24
- export function fitPromptBudgetFirstFit(items: SearchResult[], budget: number): SearchResult[] {
25
- const selected: SearchResult[] = [];
26
- let used = 0;
27
-
28
- for (const item of items) {
29
- const cost = estimateTokens(item.text);
30
- if (used + cost > budget) {
31
- continue;
32
- }
33
- selected.push(item);
34
- used += cost;
35
- }
36
-
37
- return selected;
38
- }
39
-
40
- export function countTokens(messages: Array<{ content: string }>): number {
41
- return messages.reduce((sum, msg) => sum + estimateTokens(msg.content), 0);
42
- }
43
-
44
- function detectCharsPerToken(text: string): number {
45
- if (/[一-龯ぁ-ゖァ-ヺ가-힣]/u.test(text)) {
46
- return 1.6;
47
- }
48
- if (/[Ѐ-ӿ؀-ۿ֐-׿]/u.test(text)) {
49
- return 2.5;
50
- }
51
- return 4.0;
52
- }
package/src/types.ts DELETED
@@ -1,277 +0,0 @@
1
- import type { ComparisonProfileSummary } from "./comparison-experiments.js";
2
-
3
- export interface PluginConfig {
4
- dbPath?: string;
5
- sidecarPath?: string;
6
- useSessionRecallProjection?: boolean;
7
- useSessionSummarySearchExperiment?: boolean;
8
- embeddingRuntimePath?: string;
9
- embeddingBackend?: "bundled" | "onnx-local" | "custom-local";
10
- embeddingProfile?: string;
11
- fallbackProfile?: string;
12
- embeddingModelPath?: string;
13
- embeddingTokenizerPath?: string;
14
- embeddingDimensions?: number;
15
- embeddingNormalize?: boolean;
16
- summarizerBackend?: "bundled" | "onnx-local" | "ollama-local" | "custom-local";
17
- summarizerProfile?: string;
18
- summarizerRuntimePath?: string;
19
- summarizerModelPath?: string;
20
- summarizerTokenizerPath?: string;
21
- summarizerModel?: string;
22
- summarizerEndpoint?: string;
23
- sessionTTL?: number;
24
- topK?: number;
25
- alpha?: number;
26
- beta?: number;
27
- gamma?: number;
28
- ingestionGateThreshold?: number;
29
- markdownIngestionEnabled?: boolean;
30
- markdownIngestionRoots?: string[];
31
- markdownIngestionObsidianEnabled?: boolean;
32
- markdownIngestionObsidianRoots?: string[];
33
- markdownIngestionObsidianInclude?: string[];
34
- markdownIngestionObsidianExclude?: string[];
35
- markdownIngestionObsidianDebounceMs?: number;
36
- markdownIngestionInclude?: string[];
37
- markdownIngestionExclude?: string[];
38
- markdownIngestionCollection?: string;
39
- markdownIngestionDebounceMs?: number;
40
- dreamPromotionEnabled?: boolean;
41
- dreamPromotionDiaryPath?: string;
42
- dreamPromotionUserId?: string;
43
- dreamPromotionDebounceMs?: number;
44
- gatingWeights?: {
45
- w1c?: number;
46
- w2c?: number;
47
- w3c?: number;
48
- w1t?: number;
49
- w2t?: number;
50
- w3t?: number;
51
- };
52
- gatingTechNorm?: number;
53
- gatingCentroidK?: number;
54
- lifecycleJournalMaxEntries?: number;
55
- compactionQualityWeight?: number;
56
- recencyLambdaSession?: number;
57
- recencyLambdaUser?: number;
58
- recencyLambdaGlobal?: number;
59
- tokenBudgetFraction?: number;
60
- authoredHardBudgetFraction?: number;
61
- authoredSoftBudgetFraction?: number;
62
- elevatedGuidanceBudgetFraction?: number;
63
- section7StartupTokenBudgetTokens?: number;
64
- continuityMinTurns?: number;
65
- continuityTailBudgetTokens?: number;
66
- continuityPriorContextTokens?: number;
67
- compactThreshold?: number;
68
- compactSessionTokenBudget?: number;
69
- section7CoarseTopK?: number;
70
- section7SecondPassTopK?: number;
71
- section7Theta1?: number;
72
- section7Kappa?: number;
73
- section7HopEta?: number;
74
- section7HopThreshold?: number;
75
- section7AuthorityRecencyLambda?: number;
76
- section7AuthorityRecencyWeight?: number;
77
- section7AuthorityFrequencyWeight?: number;
78
- section7AuthorityAuthoredWeight?: number;
79
- summaryExpansionConfidenceThreshold?: number;
80
- summaryExpansionDepth?: number;
81
- summaryExpansionTokenBudget?: number;
82
- summaryExpansionPenaltyFactor?: number;
83
- recoveryFloorScore?: number;
84
- recoveryMinTopK?: number;
85
- recoveryMinConfidenceMean?: number;
86
- ollamaUrl?: string;
87
- compactModel?: string;
88
- rpcTimeoutMs?: number;
89
- maxRetries?: number;
90
- logLevel?: "debug" | "info" | "warn" | "error";
91
- }
92
-
93
- export interface GatingResult {
94
- g: number;
95
- t: number;
96
- h: number;
97
- r: number;
98
- d: number;
99
- p: number;
100
- a: number;
101
- dtech: number;
102
- gconv: number;
103
- gtech: number;
104
- inputFreq: number;
105
- memSaturation: number;
106
- }
107
-
108
- export interface MemoryMessage {
109
- id?: string;
110
- role: string;
111
- content: string;
112
- }
113
-
114
- export interface SearchResult {
115
- id: string;
116
- score: number;
117
- text: string;
118
- metadata: {
119
- ts?: number;
120
- sessionId?: string;
121
- userId?: string;
122
- role?: string;
123
- source_doc?: string;
124
- node_kind?: string;
125
- ordinal?: number;
126
- position?: number;
127
- tier?: number;
128
- authored?: boolean;
129
- authority?: number;
130
- access_count?: number;
131
- collection?: string;
132
- hop_targets?: string[] | string;
133
- token_estimate?: number;
134
- continuity_tail?: boolean;
135
- continuity_base?: boolean;
136
- continuity_bundle_id?: string;
137
- elevated_guidance?: boolean;
138
- source_turn_id?: string;
139
- source_turn_ts?: number;
140
- provenance_class?: string;
141
- stability_weight?: number;
142
- expanded_from_summary?: boolean;
143
- parent_summary_id?: string;
144
- expansion_depth?: number;
145
- cascade_tier?: number;
146
- [key: string]: unknown;
147
- };
148
- finalScore?: number;
149
- }
150
-
151
- export interface SidecarSocket {
152
- setEncoding(encoding: string): void;
153
- on(event: "data", handler: (chunk: string) => void): void;
154
- on(event: "close", handler: () => void): void;
155
- once(event: "connect", handler: () => void): void;
156
- once(event: "error", handler: (error: Error) => void): void;
157
- write(chunk: string): void;
158
- destroy(): void;
159
- }
160
-
161
- export interface LoggerLike {
162
- error(message: string): void;
163
- info?(message: string): void;
164
- warn?(message: string): void;
165
- }
166
-
167
- export interface SidecarHandle {
168
- socket: SidecarSocket;
169
- isDegraded(): boolean;
170
- shutdown(): Promise<void>;
171
- }
172
-
173
- export interface RpcCallOptions {
174
- timeoutMs: number;
175
- }
176
-
177
- export interface RecallCacheEntry<T = unknown> {
178
- userId: string;
179
- queryText: string;
180
- durableVariantHits: T[];
181
- userHits?: T[];
182
- globalHits?: T[];
183
- authoredVariantHits?: T[];
184
- }
185
-
186
- export interface RecallCache<T = unknown> {
187
- put(entry: RecallCacheEntry<T>): void;
188
- get(key: Pick<RecallCacheEntry<T>, "userId" | "queryText">): RecallCacheEntry<T> | undefined;
189
- take(key: Pick<RecallCacheEntry<T>, "userId" | "queryText">): RecallCacheEntry<T> | undefined;
190
- clearUser(userId: string): void;
191
- }
192
-
193
- export interface ContextNamespaceArgs {
194
- sessionId: string;
195
- sessionKey?: string;
196
- userId?: string;
197
- }
198
-
199
- export interface ContextBootstrapArgs extends ContextNamespaceArgs {}
200
-
201
- export interface ContextIngestArgs extends ContextNamespaceArgs {
202
- message: MemoryMessage;
203
- isHeartbeat?: boolean;
204
- }
205
-
206
- export interface ContextAssembleArgs extends ContextNamespaceArgs {
207
- messages: MemoryMessage[];
208
- tokenBudget: number;
209
- }
210
-
211
- export interface ContextAssembleResult {
212
- messages: MemoryMessage[];
213
- estimatedTokens: number;
214
- systemPromptAddition: string;
215
- _profile?: string[];
216
- _debug?: {
217
- recoveryTriggerFired?: boolean;
218
- crossSessionRawRecovery?: boolean;
219
- rawUserRecoveryCandidates?: Array<{
220
- id: string;
221
- text: string;
222
- selected: boolean;
223
- tokenEstimate: number;
224
- temporalAnchorDensity: number;
225
- semanticScore: number;
226
- slotCoverage?: number;
227
- slotMatches?: string[];
228
- lexicalCoverage: number;
229
- recencyScore: number;
230
- finalScore: number;
231
- rationale: string;
232
- comparisonSide?: 0 | 1 | null;
233
- comparisonSlot?: string;
234
- comparisonSlotRecall?: number;
235
- comparisonSlotPrecision?: number;
236
- comparisonSlotSpecificity?: number;
237
- comparisonSlotPositionWeightedRecall?: number;
238
- comparisonSlotPositionWeightedPrecision?: number;
239
- comparisonSlotPositionWeightedSpecificity?: number;
240
- comparisonFirstPersonClauseCount?: number;
241
- comparisonProspectivePersonalVerbCount?: number;
242
- comparisonPlanningDensity?: number;
243
- comparisonPastness?: number;
244
- comparisonSideWitnessScore?: number;
245
- }>;
246
- recoveryDedupedOrder?: Array<{
247
- id: string;
248
- recoveryScope: string;
249
- finalScore: number;
250
- tokenEstimate: number;
251
- }>;
252
- recoveryFittedOrder?: Array<{
253
- id: string;
254
- recoveryScope: string;
255
- finalScore: number;
256
- tokenEstimate: number;
257
- }>;
258
- recoveryReserveTokens?: number;
259
- temporalQueryIndicator?: number;
260
- temporalQueryActive?: boolean;
261
- temporalQueryPatterns?: string[];
262
- temporalSelectorApplied?: boolean;
263
- temporalSelectorReason?: string;
264
- temporalRecoverySlots?: string[];
265
- temporalComparisonCoverageApplied?: boolean;
266
- temporalComparisonCoverageSlots?: string[];
267
- temporalComparisonCoverageMinTokens?: number;
268
- temporalComparisonWitnessIds?: string[];
269
- comparisonProfile?: ComparisonProfileSummary;
270
- };
271
- }
272
-
273
- export interface ContextCompactArgs {
274
- sessionId: string;
275
- force?: boolean;
276
- targetSize?: number;
277
- }
package/tsconfig.json DELETED
@@ -1,20 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "NodeNext",
5
- "moduleResolution": "NodeNext",
6
- "strict": true,
7
- "noEmit": true,
8
- "types": ["node"],
9
- "typeRoots": ["./.ts-toolchain/node_modules/@types"],
10
- "skipLibCheck": true,
11
- "resolveJsonModule": true,
12
- "allowSyntheticDefaultImports": true
13
- },
14
- "include": [
15
- "src/**/*.ts",
16
- "scripts/**/*.ts",
17
- "scripts/**/*.js",
18
- "test/**/*.ts"
19
- ]
20
- }
@@ -1,12 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "noEmit": false,
5
- "outDir": "./.ts-build"
6
- },
7
- "include": [
8
- "src/**/*.ts",
9
- "test/**/*.ts",
10
- "openclaw.plugin.json"
11
- ]
12
- }