vesper-memory 0.4.0 → 0.5.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 (63) hide show
  1. package/CHANGELOG.md +57 -3
  2. package/LICENSE +59 -0
  3. package/README.md +420 -23
  4. package/config/migrations/001_add_skill_summary.sql +75 -0
  5. package/config/migrations/001_rollback_skill_summary.sql +60 -0
  6. package/config/sqlite-schema.sql +68 -4
  7. package/dist/benchmark/types.d.ts +4 -4
  8. package/dist/cli.js +0 -0
  9. package/dist/consolidation/pipeline.d.ts +6 -1
  10. package/dist/consolidation/pipeline.d.ts.map +1 -1
  11. package/dist/consolidation/pipeline.js +53 -35
  12. package/dist/consolidation/pipeline.js.map +1 -1
  13. package/dist/memory-layers/semantic-memory.d.ts +9 -19
  14. package/dist/memory-layers/semantic-memory.d.ts.map +1 -1
  15. package/dist/memory-layers/semantic-memory.js +31 -54
  16. package/dist/memory-layers/semantic-memory.js.map +1 -1
  17. package/dist/memory-layers/skill-lazy-loading.d.ts +160 -0
  18. package/dist/memory-layers/skill-lazy-loading.d.ts.map +1 -0
  19. package/dist/memory-layers/skill-lazy-loading.js +247 -0
  20. package/dist/memory-layers/skill-lazy-loading.js.map +1 -0
  21. package/dist/memory-layers/skill-library.d.ts +133 -4
  22. package/dist/memory-layers/skill-library.d.ts.map +1 -1
  23. package/dist/memory-layers/skill-library.js +427 -8
  24. package/dist/memory-layers/skill-library.js.map +1 -1
  25. package/dist/memory-layers/working-memory.d.ts +35 -14
  26. package/dist/memory-layers/working-memory.d.ts.map +1 -1
  27. package/dist/memory-layers/working-memory.js +114 -36
  28. package/dist/memory-layers/working-memory.js.map +1 -1
  29. package/dist/retrieval/hybrid-search.d.ts +2 -2
  30. package/dist/retrieval/hybrid-search.d.ts.map +1 -1
  31. package/dist/retrieval/hybrid-search.js +4 -3
  32. package/dist/retrieval/hybrid-search.js.map +1 -1
  33. package/dist/router/smart-router.d.ts +25 -0
  34. package/dist/router/smart-router.d.ts.map +1 -1
  35. package/dist/router/smart-router.js +90 -10
  36. package/dist/router/smart-router.js.map +1 -1
  37. package/dist/scheduler/consolidation-scheduler.d.ts +129 -0
  38. package/dist/scheduler/consolidation-scheduler.d.ts.map +1 -0
  39. package/dist/scheduler/consolidation-scheduler.js +179 -0
  40. package/dist/scheduler/consolidation-scheduler.js.map +1 -0
  41. package/dist/scheduler/index.d.ts +7 -0
  42. package/dist/scheduler/index.d.ts.map +1 -0
  43. package/dist/scheduler/index.js +7 -0
  44. package/dist/scheduler/index.js.map +1 -0
  45. package/dist/server-wrapper.js +0 -0
  46. package/dist/server.js +879 -28
  47. package/dist/server.js.map +1 -1
  48. package/dist/synthesis/conflict-detector.d.ts +4 -6
  49. package/dist/synthesis/conflict-detector.d.ts.map +1 -1
  50. package/dist/synthesis/conflict-detector.js +19 -21
  51. package/dist/synthesis/conflict-detector.js.map +1 -1
  52. package/dist/utils/validation.d.ts +123 -1
  53. package/dist/utils/validation.d.ts.map +1 -1
  54. package/dist/utils/validation.js +146 -7
  55. package/dist/utils/validation.js.map +1 -1
  56. package/docker-compose.yml +6 -6
  57. package/embedding-service/README.md +8 -0
  58. package/package.json +5 -2
  59. package/scripts/FRESH_INSTALL.md +1 -1
  60. package/scripts/ensure-infrastructure.sh +86 -26
  61. package/scripts/health-check.sh +2 -1
  62. package/scripts/stop-infrastructure.sh +23 -0
  63. package/scripts/test-mcp-server.sh +2 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,60 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.5.0] - 2026-02-06
9
+
10
+ ### Added
11
+
12
+ **Multi-Agent Namespace Isolation**
13
+ - All memory operations now support `namespace` parameter for multi-agent isolation
14
+ - Default namespace is `"default"` - fully backward compatible
15
+ - Namespace column added to: memories, entities, relationships, facts, conflicts, skills
16
+ - Redis keys prefixed with namespace: `{namespace}:working:{id}`
17
+ - Qdrant payload filtering by namespace
18
+
19
+ **Agent Attribution**
20
+ - `agent_id`, `agent_role`, `task_id` fields on stored memories
21
+ - Filter retrieval by agent_id, task_id, or exclude_agent
22
+ - Track which agent stored which memory
23
+
24
+ **Decision Memory Type**
25
+ - New `memory_type: "decision"` for architectural and project decisions
26
+ - Reduced temporal decay (decay_factor: 0.25) so decisions persist longer
27
+ - Supersedes mechanism: new decisions can mark old ones as superseded
28
+ - Automatic conflict detection against existing decisions
29
+
30
+ **4 New MCP Tools**
31
+ - `share_context`: Copy memories between namespaces with handoff tracking
32
+ - `store_decision`: Store decisions with reduced decay and conflict detection
33
+ - `list_namespaces`: Discover all namespaces with counts
34
+ - `namespace_stats`: Per-namespace breakdown of memories, entities, skills, agents
35
+
36
+ **Validation**
37
+ - Added `NamespaceSchema` (alphanumeric + hyphens/underscores)
38
+ - Extended memory_type enum to include `"decision"`
39
+ - All existing tool schemas updated with optional `namespace` parameter
40
+
41
+ **Tests**
42
+ - 112 new tests across 5 test files (namespace-isolation, agent-attribution, share-context, store-decision, namespace-tools)
43
+ - Total: 909 tests passing (up from 632)
44
+
45
+ ### Changed
46
+ - `SemanticMemoryLayer`: all methods accept `namespace` parameter
47
+ - `SkillLibrary` / `SkillLazyLoader`: namespace-scoped queries
48
+ - `ConflictDetector`: namespace-scoped detection
49
+ - `ConsolidationPipeline`: iterates all namespaces when none specified
50
+ - `SmartRouter`: `RoutingContext` includes optional `namespace`
51
+ - `HybridSearchEngine`: `filter` parameter for Qdrant namespace filtering
52
+ - `WorkingMemoryLayer`: Redis keys use `{namespace}:` prefix
53
+
54
+ ### Backward Compatibility
55
+ - All new columns use `DEFAULT 'default'` - existing data automatically works
56
+ - All new tool params are optional - existing tool calls unchanged
57
+ - Old Redis keys expire naturally via 7-day TTL
58
+ - Qdrant: falls back to unfiltered search for `"default"` namespace
59
+
60
+ ---
61
+
8
62
  ## [0.4.0] - 2026-02-03
9
63
 
10
64
  ### BREAKING CHANGES
@@ -204,6 +258,6 @@ docker-compose up -d
204
258
  - Per user: $0.49-0.73/month (100 users)
205
259
  - 97% cost reduction vs. target
206
260
 
207
- [0.3.0]: https://github.com/fitz2882/vesper/releases/tag/v0.3.0
208
- [0.2.0]: https://github.com/fitz2882/vesper/releases/tag/v0.2.0
209
- [0.1.0]: https://github.com/fitz2882/vesper/releases/tag/v0.1.0
261
+ [0.3.0]: https://github.com/fitz2882/vesper-memory/releases/tag/v0.3.0
262
+ [0.2.0]: https://github.com/fitz2882/vesper-memory/releases/tag/v0.2.0
263
+ [0.1.0]: https://github.com/fitz2882/vesper-memory/releases/tag/v0.1.0
package/LICENSE CHANGED
@@ -19,3 +19,62 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.
22
+
23
+ ---
24
+
25
+ ## Third-Party Software Attributions
26
+
27
+ This software includes or is built upon the following third-party components:
28
+
29
+ ### Core Dependencies (MIT License)
30
+
31
+ **HippoRAG**
32
+ Copyright (c) 2024 OSU-NLP-Group
33
+ https://github.com/OSU-NLP-Group/HippoRAG
34
+
35
+ **FlagEmbedding (BGE Models)**
36
+ Copyright (c) Beijing Academy of Artificial Intelligence (BAAI)
37
+ https://github.com/FlagOpen/FlagEmbedding
38
+
39
+ **Voyager**
40
+ Copyright (c) MineDojo
41
+ https://github.com/MineDojo/Voyager
42
+
43
+ **better-sqlite3**
44
+ Copyright (c) 2017 Joshua Wise
45
+ https://github.com/WiseLibs/better-sqlite3
46
+
47
+ **ioredis**
48
+ https://github.com/redis/ioredis
49
+
50
+ **@modelcontextprotocol/sdk**
51
+ https://github.com/modelcontextprotocol/typescript-sdk
52
+
53
+ ### Apache 2.0 Licensed Components
54
+
55
+ **Qdrant Vector Database**
56
+ Apache License 2.0
57
+ https://github.com/qdrant/qdrant
58
+
59
+ **@qdrant/js-client-rest**
60
+ Apache License 2.0
61
+ https://github.com/qdrant/qdrant-js
62
+
63
+ ### Standalone Services (Not Distributed)
64
+
65
+ **SQLite** - Public Domain (https://www.sqlite.org)
66
+ **Redis** - AGPLv3 for v8+ (https://redis.io)
67
+
68
+ Users are responsible for ensuring compliance with the licenses of any
69
+ standalone services they choose to deploy alongside this software.
70
+
71
+ ### Academic Research Inspirations
72
+
73
+ This software implements concepts from:
74
+ - HippoRAG (Bernal et al., NeurIPS 2024)
75
+ - Hippocampal Indexing Theory (Teyler & Rudy, 2007)
76
+ - Word2Vec (Mikolov et al., 2013)
77
+ - Reciprocal Rank Fusion (Cormack et al., SIGIR 2009)
78
+ - Voyager (Wang et al., 2023)
79
+
80
+ See README.md Research & Credits section for complete citations.