@yamo/memory-mesh 2.3.2 → 3.0.1

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 (124) hide show
  1. package/README.md +8 -2
  2. package/bin/memory_mesh.js +1 -1
  3. package/lib/llm/client.d.ts +86 -0
  4. package/lib/llm/client.js +300 -357
  5. package/lib/llm/client.ts +334 -0
  6. package/lib/llm/index.d.ts +17 -0
  7. package/lib/llm/index.js +16 -8
  8. package/lib/llm/index.ts +18 -0
  9. package/lib/memory/adapters/client.d.ts +120 -0
  10. package/lib/memory/adapters/client.js +519 -0
  11. package/lib/memory/adapters/client.ts +519 -0
  12. package/lib/memory/adapters/config.d.ts +130 -0
  13. package/lib/memory/adapters/config.js +190 -0
  14. package/lib/memory/adapters/config.ts +190 -0
  15. package/lib/memory/adapters/errors.d.ts +84 -0
  16. package/lib/memory/adapters/errors.js +129 -0
  17. package/lib/memory/adapters/errors.ts +129 -0
  18. package/lib/memory/context-manager.d.ts +41 -0
  19. package/lib/memory/context-manager.js +345 -0
  20. package/lib/memory/context-manager.ts +345 -0
  21. package/lib/memory/embeddings/factory.d.ts +57 -0
  22. package/lib/memory/embeddings/factory.js +149 -0
  23. package/lib/memory/embeddings/factory.ts +149 -0
  24. package/lib/memory/embeddings/index.d.ts +2 -0
  25. package/lib/memory/embeddings/index.js +3 -0
  26. package/lib/memory/embeddings/index.ts +3 -0
  27. package/lib/memory/embeddings/service.d.ts +134 -0
  28. package/lib/memory/embeddings/service.js +516 -0
  29. package/lib/memory/embeddings/service.ts +516 -0
  30. package/lib/memory/index.d.ts +9 -0
  31. package/lib/memory/index.js +10 -1
  32. package/lib/memory/index.ts +10 -0
  33. package/lib/memory/memory-mesh.d.ts +332 -0
  34. package/lib/memory/memory-mesh.js +1470 -678
  35. package/lib/memory/memory-mesh.ts +1517 -0
  36. package/lib/memory/memory-translator.d.ts +14 -0
  37. package/lib/memory/memory-translator.js +126 -0
  38. package/lib/memory/memory-translator.ts +126 -0
  39. package/lib/memory/schema.d.ts +130 -0
  40. package/lib/memory/schema.js +184 -0
  41. package/lib/memory/schema.ts +184 -0
  42. package/lib/memory/scorer.d.ts +25 -0
  43. package/lib/memory/scorer.js +78 -0
  44. package/lib/memory/scorer.ts +78 -0
  45. package/lib/memory/search/index.d.ts +1 -0
  46. package/lib/memory/search/index.js +2 -0
  47. package/lib/memory/search/index.ts +2 -0
  48. package/lib/memory/search/keyword-search.d.ts +46 -0
  49. package/lib/memory/search/keyword-search.js +136 -0
  50. package/lib/memory/search/keyword-search.ts +136 -0
  51. package/lib/scrubber/config/defaults.d.ts +46 -0
  52. package/lib/scrubber/config/defaults.js +50 -57
  53. package/lib/scrubber/config/defaults.ts +55 -0
  54. package/lib/scrubber/errors/scrubber-error.d.ts +22 -0
  55. package/lib/scrubber/errors/scrubber-error.js +28 -32
  56. package/lib/scrubber/errors/scrubber-error.ts +44 -0
  57. package/lib/scrubber/index.d.ts +5 -0
  58. package/lib/scrubber/index.js +4 -23
  59. package/lib/scrubber/index.ts +6 -0
  60. package/lib/scrubber/scrubber.d.ts +44 -0
  61. package/lib/scrubber/scrubber.js +100 -121
  62. package/lib/scrubber/scrubber.ts +109 -0
  63. package/lib/scrubber/stages/chunker.d.ts +25 -0
  64. package/lib/scrubber/stages/chunker.js +74 -91
  65. package/lib/scrubber/stages/chunker.ts +104 -0
  66. package/lib/scrubber/stages/metadata-annotator.d.ts +17 -0
  67. package/lib/scrubber/stages/metadata-annotator.js +55 -65
  68. package/lib/scrubber/stages/metadata-annotator.ts +75 -0
  69. package/lib/scrubber/stages/normalizer.d.ts +16 -0
  70. package/lib/scrubber/stages/normalizer.js +42 -50
  71. package/lib/scrubber/stages/normalizer.ts +60 -0
  72. package/lib/scrubber/stages/semantic-filter.d.ts +16 -0
  73. package/lib/scrubber/stages/semantic-filter.js +42 -52
  74. package/lib/scrubber/stages/semantic-filter.ts +62 -0
  75. package/lib/scrubber/stages/structural-cleaner.d.ts +18 -0
  76. package/lib/scrubber/stages/structural-cleaner.js +66 -75
  77. package/lib/scrubber/stages/structural-cleaner.ts +83 -0
  78. package/lib/scrubber/stages/validator.d.ts +17 -0
  79. package/lib/scrubber/stages/validator.js +46 -56
  80. package/lib/scrubber/stages/validator.ts +67 -0
  81. package/lib/scrubber/telemetry.d.ts +29 -0
  82. package/lib/scrubber/telemetry.js +54 -58
  83. package/lib/scrubber/telemetry.ts +62 -0
  84. package/lib/scrubber/utils/hash.d.ts +14 -0
  85. package/lib/scrubber/utils/hash.js +30 -32
  86. package/lib/scrubber/utils/hash.ts +40 -0
  87. package/lib/scrubber/utils/html-parser.d.ts +14 -0
  88. package/lib/scrubber/utils/html-parser.js +32 -39
  89. package/lib/scrubber/utils/html-parser.ts +46 -0
  90. package/lib/scrubber/utils/pattern-matcher.d.ts +12 -0
  91. package/lib/scrubber/utils/pattern-matcher.js +48 -57
  92. package/lib/scrubber/utils/pattern-matcher.ts +64 -0
  93. package/lib/scrubber/utils/token-counter.d.ts +18 -0
  94. package/lib/scrubber/utils/token-counter.js +24 -25
  95. package/lib/scrubber/utils/token-counter.ts +32 -0
  96. package/lib/utils/logger.d.ts +19 -0
  97. package/lib/utils/logger.js +65 -0
  98. package/lib/utils/logger.ts +65 -0
  99. package/lib/utils/skill-metadata.d.ts +24 -0
  100. package/lib/utils/skill-metadata.js +133 -0
  101. package/lib/utils/skill-metadata.ts +133 -0
  102. package/lib/yamo/emitter.d.ts +46 -0
  103. package/lib/yamo/emitter.js +79 -143
  104. package/lib/yamo/emitter.ts +171 -0
  105. package/lib/yamo/index.d.ts +14 -0
  106. package/lib/yamo/index.js +6 -7
  107. package/lib/yamo/index.ts +16 -0
  108. package/lib/yamo/schema.d.ts +56 -0
  109. package/lib/yamo/schema.js +82 -108
  110. package/lib/yamo/schema.ts +133 -0
  111. package/package.json +13 -8
  112. package/index.d.ts +0 -111
  113. package/lib/embeddings/factory.js +0 -151
  114. package/lib/embeddings/index.js +0 -2
  115. package/lib/embeddings/service.js +0 -586
  116. package/lib/index.js +0 -6
  117. package/lib/lancedb/client.js +0 -633
  118. package/lib/lancedb/config.js +0 -215
  119. package/lib/lancedb/errors.js +0 -144
  120. package/lib/lancedb/index.js +0 -4
  121. package/lib/lancedb/schema.js +0 -217
  122. package/lib/search/index.js +0 -1
  123. package/lib/search/keyword-search.js +0 -144
  124. package/lib/utils/index.js +0 -1
package/README.md CHANGED
@@ -217,9 +217,15 @@ LANCEDB_MEMORY_TABLE=memory_entries
217
217
 
218
218
  ```bash
219
219
  # Embedding model settings
220
- EMBEDDING_MODEL_TYPE=local # 'local', 'openai', 'cohere', 'ollama'
221
- EMBEDDING_MODEL_NAME=Xenova/all-MiniLM-L6-v2
220
+ EMBEDDING_MODEL_TYPE=local # 'local', 'ollama', 'openai', 'cohere'
221
+
222
+ # Recommended: Gemma-300m for v3.0 Singularity Fidelity (matches OpenClaw)
223
+ EMBEDDING_MODEL_NAME=hf_ggml-org_embeddinggemma-300m-qat-Q8_0.gguf
222
224
  EMBEDDING_DIMENSION=384
225
+
226
+ # Lightweight Default (fallback)
227
+ # EMBEDDING_MODEL_NAME=Xenova/all-MiniLM-L6-v2
228
+ # EMBEDDING_DIMENSION=384
223
229
  ```
224
230
 
225
231
  ### Example .env File
@@ -5,7 +5,7 @@
5
5
  * Delegates to the core CLI handler in lib/memory/memory-mesh.js
6
6
  */
7
7
 
8
- import { run } from '../lib/memory/memory-mesh.js';
8
+ import { run } from '@yamo/memory-mesh';
9
9
 
10
10
  // Execute the main CLI handler
11
11
  run().catch(err => {
@@ -0,0 +1,86 @@
1
+ /**
2
+ * LLMClient provides unified interface for calling various LLM providers
3
+ * to generate reflections from memory contexts.
4
+ */
5
+ export declare class LLMClient {
6
+ provider: any;
7
+ apiKey: any;
8
+ model: any;
9
+ baseUrl: any;
10
+ timeout: any;
11
+ maxRetries: any;
12
+ maxTokens: any;
13
+ stats: any;
14
+ /**
15
+ * Create a new LLMClient instance
16
+ */
17
+ constructor(config?: {});
18
+ /**
19
+ * Get default model for provider
20
+ * @private
21
+ */
22
+ _getDefaultModel(): any;
23
+ /**
24
+ * Get default base URL for provider
25
+ * @private
26
+ */
27
+ _getDefaultBaseUrl(): any;
28
+ /**
29
+ * Generate reflection from memories
30
+ * Main entry point for reflection generation
31
+ */
32
+ reflect(prompt: any, memories: any): Promise<any>;
33
+ /**
34
+ * Format memories for LLM consumption
35
+ * @private
36
+ */
37
+ _formatMemoriesForLLM(prompt: any, memories: any): string;
38
+ /**
39
+ * Call LLM with retry logic
40
+ * @private
41
+ */
42
+ _callWithRetry(systemPrompt: any, userContent: any): Promise<any>;
43
+ /**
44
+ * Call LLM based on provider
45
+ * @private
46
+ */
47
+ _callLLM(systemPrompt: any, userContent: any): Promise<any>;
48
+ /**
49
+ * Call OpenAI API
50
+ * @private
51
+ */
52
+ _callOpenAI(systemPrompt: any, userContent: any): Promise<any>;
53
+ /**
54
+ * Call Anthropic (Claude) API
55
+ * @private
56
+ */
57
+ _callAnthropic(systemPrompt: any, userContent: any): Promise<any>;
58
+ /**
59
+ * Call Ollama (local) API
60
+ * @private
61
+ */
62
+ _callOllama(systemPrompt: any, userContent: any): Promise<any>;
63
+ /**
64
+ * Fallback when LLM fails
65
+ * @private
66
+ */
67
+ _fallback(reason: any, memories?: any[]): {
68
+ reflection: string;
69
+ confidence: number;
70
+ };
71
+ /**
72
+ * Sleep utility
73
+ * @private
74
+ */
75
+ _sleep(ms: any): Promise<unknown>;
76
+ /**
77
+ * Get client statistics
78
+ * @returns {Object} Statistics
79
+ */
80
+ getStats(): any;
81
+ /**
82
+ * Reset statistics
83
+ */
84
+ resetStats(): void;
85
+ }
86
+ export default LLMClient;