@easynet/agent-memory 1.0.34 → 1.0.36

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 (106) hide show
  1. package/README.md +1 -1
  2. package/dist/src/config/index.js +10 -18
  3. package/dist/src/config/index.js.map +1 -1
  4. package/dist/src/config/ref.js +3 -8
  5. package/dist/src/config/ref.js.map +1 -1
  6. package/dist/src/core/agent-memory.d.ts +2 -0
  7. package/dist/src/core/agent-memory.d.ts.map +1 -1
  8. package/dist/src/core/agent-memory.js +71 -20
  9. package/dist/src/core/agent-memory.js.map +1 -1
  10. package/dist/src/core/config.js +5 -9
  11. package/dist/src/core/config.js.map +1 -1
  12. package/dist/src/core/observability.js +2 -7
  13. package/dist/src/core/observability.js.map +1 -1
  14. package/dist/src/core/policy.js +3 -7
  15. package/dist/src/core/policy.js.map +1 -1
  16. package/dist/src/core/privacy.js +1 -5
  17. package/dist/src/core/privacy.js.map +1 -1
  18. package/dist/src/core/router.js +1 -5
  19. package/dist/src/core/router.js.map +1 -1
  20. package/dist/src/core/types.d.ts +1 -0
  21. package/dist/src/core/types.d.ts.map +1 -1
  22. package/dist/src/core/types.js +7 -12
  23. package/dist/src/core/types.js.map +1 -1
  24. package/dist/src/create-agent-memory.d.ts +33 -1
  25. package/dist/src/create-agent-memory.d.ts.map +1 -1
  26. package/dist/src/create-agent-memory.helpers.js +14 -21
  27. package/dist/src/create-agent-memory.helpers.js.map +1 -1
  28. package/dist/src/create-agent-memory.js +166 -51
  29. package/dist/src/create-agent-memory.js.map +1 -1
  30. package/dist/src/index.d.ts +3 -4
  31. package/dist/src/index.d.ts.map +1 -1
  32. package/dist/src/index.js +4 -14
  33. package/dist/src/index.js.map +1 -1
  34. package/dist/src/ingest/common-ingest.d.ts +2 -2
  35. package/dist/src/ingest/common-ingest.d.ts.map +1 -1
  36. package/dist/src/ingest/common-ingest.js +2 -6
  37. package/dist/src/ingest/common-ingest.js.map +1 -1
  38. package/dist/src/ingest/compat-loaders.js +1 -4
  39. package/dist/src/ingest/compat-loaders.js.map +1 -1
  40. package/dist/src/ingest/index.js +2 -7
  41. package/dist/src/ingest/index.js.map +1 -1
  42. package/dist/src/ingest/pdf-ingest.js +4 -7
  43. package/dist/src/ingest/pdf-ingest.js.map +1 -1
  44. package/dist/src/ingest/url-ingest.d.ts +3 -2
  45. package/dist/src/ingest/url-ingest.d.ts.map +1 -1
  46. package/dist/src/ingest/url-ingest.js +148 -18
  47. package/dist/src/ingest/url-ingest.js.map +1 -1
  48. package/dist/src/integrations/deepagents-adapter.js +2 -6
  49. package/dist/src/integrations/deepagents-adapter.js.map +1 -1
  50. package/dist/src/integrations/langgraph.js +2 -6
  51. package/dist/src/integrations/langgraph.js.map +1 -1
  52. package/dist/src/internal.d.ts +7 -0
  53. package/dist/src/internal.d.ts.map +1 -0
  54. package/dist/src/internal.js +6 -0
  55. package/dist/src/internal.js.map +1 -0
  56. package/dist/src/providers/in-memory-store.js +3 -7
  57. package/dist/src/providers/in-memory-store.js.map +1 -1
  58. package/dist/src/providers/index.js +5 -14
  59. package/dist/src/providers/index.js.map +1 -1
  60. package/dist/src/providers/mem0-provider.js +3 -7
  61. package/dist/src/providers/mem0-provider.js.map +1 -1
  62. package/dist/src/providers/optional-ctors.js +2 -6
  63. package/dist/src/providers/optional-ctors.js.map +1 -1
  64. package/dist/src/providers/rag-provider.js +1 -5
  65. package/dist/src/providers/rag-provider.js.map +1 -1
  66. package/dist/src/providers/sqlite-store.js +3 -7
  67. package/dist/src/providers/sqlite-store.js.map +1 -1
  68. package/dist/src/register-memory.d.ts +16 -0
  69. package/dist/src/register-memory.d.ts.map +1 -0
  70. package/dist/src/register-memory.js +18 -0
  71. package/dist/src/register-memory.js.map +1 -0
  72. package/dist/test/core/agent-memory.test.js +76 -45
  73. package/dist/test/core/agent-memory.test.js.map +1 -1
  74. package/dist/test/core/config.test.js +114 -119
  75. package/dist/test/core/config.test.js.map +1 -1
  76. package/dist/test/core/observability.test.js +20 -25
  77. package/dist/test/core/observability.test.js.map +1 -1
  78. package/dist/test/core/policy.test.js +27 -32
  79. package/dist/test/core/policy.test.js.map +1 -1
  80. package/dist/test/core/privacy.test.js +24 -29
  81. package/dist/test/core/privacy.test.js.map +1 -1
  82. package/dist/test/core/router.test.js +25 -30
  83. package/dist/test/core/router.test.js.map +1 -1
  84. package/dist/test/create-agent-memory.test.js +102 -78
  85. package/dist/test/create-agent-memory.test.js.map +1 -1
  86. package/dist/test/ingest/url-ingest.test.js +64 -69
  87. package/dist/test/ingest/url-ingest.test.js.map +1 -1
  88. package/dist/test/integration/agent-memory-flow.test.js +22 -27
  89. package/dist/test/integration/agent-memory-flow.test.js.map +1 -1
  90. package/dist/test/integration/helpers/ollama-live.js +2 -6
  91. package/dist/test/integration/helpers/ollama-live.js.map +1 -1
  92. package/dist/test/integration/real-memory-features.test.js +46 -51
  93. package/dist/test/integration/real-memory-features.test.js.map +1 -1
  94. package/dist/test/integration/url-ingest-flow.test.js +22 -27
  95. package/dist/test/integration/url-ingest-flow.test.js.map +1 -1
  96. package/dist/test/integration/vlm-llm-live.test.js +54 -59
  97. package/dist/test/integration/vlm-llm-live.test.js.map +1 -1
  98. package/dist/test/providers/in-memory-store.test.js +16 -21
  99. package/dist/test/providers/in-memory-store.test.js.map +1 -1
  100. package/dist/test/providers/mem0-provider.test.js +19 -24
  101. package/dist/test/providers/mem0-provider.test.js.map +1 -1
  102. package/dist/test/providers/rag-provider.test.js +27 -32
  103. package/dist/test/providers/rag-provider.test.js.map +1 -1
  104. package/dist/test/providers/sqlite-store.test.js +29 -34
  105. package/dist/test/providers/sqlite-store.test.js.map +1 -1
  106. package/package.json +4 -3
@@ -1,8 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.loadLlamaIndexProviderCtor = loadLlamaIndexProviderCtor;
4
- exports.loadSqliteVecProviderCtor = loadSqliteVecProviderCtor;
5
- async function loadLlamaIndexProviderCtor() {
1
+ export async function loadLlamaIndexProviderCtor() {
6
2
  const mod = (await import("@easynet/agent-common"));
7
3
  const ctor = mod.LlamaIndexContextProvider ?? mod.LlamaIndexKnowledgeMemoryProvider;
8
4
  if (typeof ctor !== "function") {
@@ -10,7 +6,7 @@ async function loadLlamaIndexProviderCtor() {
10
6
  }
11
7
  return ctor;
12
8
  }
13
- async function loadSqliteVecProviderCtor() {
9
+ export async function loadSqliteVecProviderCtor() {
14
10
  const mod = (await import("@easynet/agent-common"));
15
11
  const ctor = mod.SqliteVecContextProvider ?? mod.SqliteVecLongTermMemoryProvider;
16
12
  if (typeof ctor !== "function") {
@@ -1 +1 @@
1
- {"version":3,"file":"optional-ctors.js","sourceRoot":"","sources":["../../../src/providers/optional-ctors.ts"],"names":[],"mappings":";;AAAA,gEASC;AAED,8DASC;AApBM,KAAK,UAAU,0BAA0B;IAC9C,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAA4B,CAAC;IAC/E,MAAM,IAAI,GAAG,GAAG,CAAC,yBAAyB,IAAI,GAAG,CAAC,iCAAiC,CAAC;IACpF,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,wIAAwI,CACzI,CAAC;IACJ,CAAC;IACD,OAAO,IAAuC,CAAC;AACjD,CAAC;AAEM,KAAK,UAAU,yBAAyB;IAC7C,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAA4B,CAAC;IAC/E,MAAM,IAAI,GAAG,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC,+BAA+B,CAAC;IACjF,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,uIAAuI,CACxI,CAAC;IACJ,CAAC;IACD,OAAO,IAAuC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"optional-ctors.js","sourceRoot":"","sources":["../../../src/providers/optional-ctors.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC9C,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAA4B,CAAC;IAC/E,MAAM,IAAI,GAAG,GAAG,CAAC,yBAAyB,IAAI,GAAG,CAAC,iCAAiC,CAAC;IACpF,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,wIAAwI,CACzI,CAAC;IACJ,CAAC;IACD,OAAO,IAAuC,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAA4B,CAAC;IAC/E,MAAM,IAAI,GAAG,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC,+BAA+B,CAAC;IACjF,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,uIAAuI,CACxI,CAAC;IACJ,CAAC;IACD,OAAO,IAAuC,CAAC;AACjD,CAAC"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * RAG provider: vector store + chunking.
4
3
  * Implementations can use Qdrant, PGVector, Weaviate, or in-memory vectors.
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.RAGProvider = void 0;
8
5
  /**
9
6
  * RAG provider that stores knowledge-type items and supports semantic (or keyword) query.
10
7
  */
11
- class RAGProvider {
8
+ export class RAGProvider {
12
9
  items = [];
13
10
  embed;
14
11
  search;
@@ -54,5 +51,4 @@ class RAGProvider {
54
51
  this.items = this.items.filter((i) => !(i.id === id && i.namespace === namespace));
55
52
  }
56
53
  }
57
- exports.RAGProvider = RAGProvider;
58
54
  //# sourceMappingURL=rag-provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rag-provider.js","sourceRoot":"","sources":["../../../src/providers/rag-provider.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAqBH;;GAEG;AACH,MAAa,WAAW;IACd,KAAK,GAAiB,EAAE,CAAC;IACzB,KAAK,CAAuC;IAC5C,MAAM,CAAgC;IAE9C,YAAY,UAA8B,EAAE;QAC1C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAA0B;QACpC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,IAAI,SAA+B,CAAC;QACpC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,IAAI,GAAe;YACvB,EAAE;YACF,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,QAAQ;YAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS;YACT,QAAQ,EAAE;gBACR,GAAG,GAAG,CAAC,QAAQ;gBACf,UAAU,EAAG,GAAG,CAAC,QAAQ,EAAE,UAAqB,IAAI,GAAG;gBACvD,UAAU,EAAE,GAAG;aAChB;SACF,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAA0B;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAC1D,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAC/B,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,KAAK,EACT,IAAI,EACJ,GAAG,CAAC,OAAO,CACZ,CAAC;YACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,SAAiB;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CACnD,CAAC;IACJ,CAAC;CACF;AA3DD,kCA2DC"}
1
+ {"version":3,"file":"rag-provider.js","sourceRoot":"","sources":["../../../src/providers/rag-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqBH;;GAEG;AACH,MAAM,OAAO,WAAW;IACd,KAAK,GAAiB,EAAE,CAAC;IACzB,KAAK,CAAuC;IAC5C,MAAM,CAAgC;IAE9C,YAAY,UAA8B,EAAE;QAC1C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAA0B;QACpC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,IAAI,SAA+B,CAAC;QACpC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,IAAI,GAAe;YACvB,EAAE;YACF,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,QAAQ;YAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS;YACT,QAAQ,EAAE;gBACR,GAAG,GAAG,CAAC,QAAQ;gBACf,UAAU,EAAG,GAAG,CAAC,QAAQ,EAAE,UAAqB,IAAI,GAAG;gBACvD,UAAU,EAAE,GAAG;aAChB;SACF,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAA0B;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAC1D,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAC/B,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,KAAK,EACT,IAAI,EACJ,GAAG,CAAC,OAAO,CACZ,CAAC;YACF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,SAAiB;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CACnD,CAAC;IACJ,CAAC;CACF"}
@@ -1,11 +1,8 @@
1
- "use strict";
2
1
  /**
3
2
  * SQLite backend: persist MemoryItems; optional vector search via embed.
4
3
  * Requires better-sqlite3.
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.SqliteStoreProvider = void 0;
8
- const node_crypto_1 = require("node:crypto");
5
+ import { randomUUID } from "node:crypto";
9
6
  function cosineSimilarity(a, b) {
10
7
  if (a.length !== b.length || a.length === 0)
11
8
  return 0;
@@ -65,7 +62,7 @@ function rowToItem(row) {
65
62
  metadata,
66
63
  };
67
64
  }
68
- class SqliteStoreProvider {
65
+ export class SqliteStoreProvider {
69
66
  db;
70
67
  embed;
71
68
  constructor(options) {
@@ -75,7 +72,7 @@ class SqliteStoreProvider {
75
72
  }
76
73
  async write(req) {
77
74
  const now = new Date().toISOString();
78
- const id = (0, node_crypto_1.randomUUID)();
75
+ const id = randomUUID();
79
76
  const metadata = {
80
77
  ...req.metadata,
81
78
  created_at: req.metadata?.created_at ?? now,
@@ -140,5 +137,4 @@ class SqliteStoreProvider {
140
137
  this.db.prepare(`DELETE FROM ${TABLE} WHERE namespace = ? AND path_key = ?`).run(namespace, key);
141
138
  }
142
139
  }
143
- exports.SqliteStoreProvider = SqliteStoreProvider;
144
140
  //# sourceMappingURL=sqlite-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-store.js","sourceRoot":"","sources":["../../../src/providers/sqlite-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite-store.js","sourceRoot":"","sources":["../../../src/providers/sqlite-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { type CreateMemoryOptions } from "./create-agent-memory.js";
2
+ export interface CreateAgentMemoryOptions extends CreateMemoryOptions {
3
+ }
4
+ /**
5
+ * Initialize the memory client and register it into the process-level singleton AgentContext.
6
+ *
7
+ * Sets:
8
+ * - AgentContextTokens.Memory → AgentMemoryClient
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * await createAgentMemory({ configPath: "config/memory.yaml" });
13
+ * ```
14
+ */
15
+ export declare function createAgentMemory(options?: CreateAgentMemoryOptions): Promise<void>;
16
+ //# sourceMappingURL=register-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-memory.d.ts","sourceRoot":"","sources":["../../src/register-memory.ts"],"names":[],"mappings":"AACA,OAAO,EAAkD,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;CAAG;AAExE;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGzF"}
@@ -0,0 +1,18 @@
1
+ import { AgentContextTokens, getDefaultAgentContext } from "@easynet/agent-common";
2
+ import { createAgentMemory as createAgentMemoryInstance } from "./create-agent-memory.js";
3
+ /**
4
+ * Initialize the memory client and register it into the process-level singleton AgentContext.
5
+ *
6
+ * Sets:
7
+ * - AgentContextTokens.Memory → AgentMemoryClient
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * await createAgentMemory({ configPath: "config/memory.yaml" });
12
+ * ```
13
+ */
14
+ export async function createAgentMemory(options) {
15
+ const memory = await createAgentMemoryInstance(options ?? {});
16
+ getDefaultAgentContext().set(AgentContextTokens.Memory, memory);
17
+ }
18
+ //# sourceMappingURL=register-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-memory.js","sourceRoot":"","sources":["../../src/register-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,iBAAiB,IAAI,yBAAyB,EAA4B,MAAM,0BAA0B,CAAC;AAIpH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAkC;IACxE,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC9D,sBAAsB,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC"}
@@ -1,20 +1,16 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const node_test_1 = require("node:test");
7
- const node_assert_1 = __importDefault(require("node:assert"));
8
- const agent_memory_js_1 = require("../../src/core/agent-memory.js");
9
- const observability_js_1 = require("../../src/core/observability.js");
10
- const router_js_1 = require("../../src/core/router.js");
11
- const node_crypto_1 = require("node:crypto");
1
+ import { describe, it } from "node:test";
2
+ import assert from "node:assert";
3
+ import { AgentMemory } from "../../src/core/agent-memory.js";
4
+ import { InMemoryTraceRecorder } from "../../src/core/observability.js";
5
+ import { MemoryRouter } from "../../src/core/router.js";
6
+ import { randomUUID } from "node:crypto";
12
7
  class TestMemoryProvider {
13
8
  store = new Map();
9
+ deleted = [];
14
10
  async write(req) {
15
11
  const now = new Date().toISOString();
16
12
  const item = {
17
- id: (0, node_crypto_1.randomUUID)(),
13
+ id: randomUUID(),
18
14
  type: req.type,
19
15
  namespace: req.namespace,
20
16
  scope: req.scope ?? "global",
@@ -29,18 +25,22 @@ class TestMemoryProvider {
29
25
  return items.slice(0, req.topK ?? 10);
30
26
  }
31
27
  async delete(id, namespace) {
28
+ this.deleted.push({ id, namespace });
32
29
  this.store.delete(`${namespace}:${id}`);
33
30
  }
31
+ getDeletedCount() {
32
+ return this.deleted.length;
33
+ }
34
34
  }
35
- (0, node_test_1.describe)("AgentMemory", () => {
36
- (0, node_test_1.it)("memorize and recall", async () => {
35
+ describe("AgentMemory", () => {
36
+ it("memorize and recall", async () => {
37
37
  const provider = new TestMemoryProvider();
38
- const router = new router_js_1.MemoryRouter({
38
+ const router = new MemoryRouter({
39
39
  providers: new Map([["default", provider]]),
40
40
  defaultProviderId: "default",
41
41
  });
42
- const tracer = new observability_js_1.InMemoryTraceRecorder();
43
- const memory = new agent_memory_js_1.AgentMemory({
42
+ const tracer = new InMemoryTraceRecorder();
43
+ const memory = new AgentMemory({
44
44
  router,
45
45
  traceRecorder: tracer,
46
46
  });
@@ -54,75 +54,75 @@ class TestMemoryProvider {
54
54
  query: "user preferences and cross-session memory",
55
55
  topK: 5,
56
56
  });
57
- node_assert_1.default.strictEqual(result.items.length, 1);
58
- node_assert_1.default.strictEqual(result.items[0].content, "Use Chinese and summarize at the end.");
59
- node_assert_1.default.ok(result.traceId);
60
- node_assert_1.default.ok(result.injectedText.includes("cross_thread"));
61
- node_assert_1.default.strictEqual(tracer.getTraces().length, 1);
57
+ assert.strictEqual(result.items.length, 1);
58
+ assert.strictEqual(result.items[0].content, "Use Chinese and summarize at the end.");
59
+ assert.ok(result.traceId);
60
+ assert.ok(result.injectedText.includes("cross_thread"));
61
+ assert.strictEqual(tracer.getTraces().length, 1);
62
62
  });
63
- (0, node_test_1.it)("memorize without type defaults to cross_thread", async () => {
63
+ it("memorize without type defaults to cross_thread", async () => {
64
64
  const provider = new TestMemoryProvider();
65
- const router = new router_js_1.MemoryRouter({
65
+ const router = new MemoryRouter({
66
66
  providers: new Map([["default", provider]]),
67
67
  defaultProviderId: "default",
68
68
  });
69
- const memory = new agent_memory_js_1.AgentMemory({ router });
69
+ const memory = new AgentMemory({ router });
70
70
  const item = await memory.memorize({
71
71
  namespace: "user:1",
72
72
  content: "I prefer dark mode.",
73
73
  });
74
- node_assert_1.default.strictEqual(item.type, "cross_thread");
75
- node_assert_1.default.strictEqual(item.content, "I prefer dark mode.");
74
+ assert.strictEqual(item.type, "cross_thread");
75
+ assert.strictEqual(item.content, "I prefer dark mode.");
76
76
  });
77
- (0, node_test_1.it)("memorize normalizes common type aliases", async () => {
77
+ it("memorize normalizes common type aliases", async () => {
78
78
  const provider = new TestMemoryProvider();
79
- const router = new router_js_1.MemoryRouter({
79
+ const router = new MemoryRouter({
80
80
  providers: new Map([["default", provider]]),
81
81
  defaultProviderId: "default",
82
82
  });
83
- const memory = new agent_memory_js_1.AgentMemory({ router });
83
+ const memory = new AgentMemory({ router });
84
84
  const item = await memory.memorize({
85
85
  namespace: "user:1",
86
86
  type: "cross-thread",
87
87
  content: "Alias normalization test",
88
88
  });
89
- node_assert_1.default.strictEqual(item.type, "cross_thread");
89
+ assert.strictEqual(item.type, "cross_thread");
90
90
  });
91
- (0, node_test_1.it)("memorize throws for unsupported type keyword", async () => {
91
+ it("memorize throws for unsupported type keyword", async () => {
92
92
  const provider = new TestMemoryProvider();
93
- const router = new router_js_1.MemoryRouter({
93
+ const router = new MemoryRouter({
94
94
  providers: new Map([["default", provider]]),
95
95
  defaultProviderId: "default",
96
96
  });
97
- const memory = new agent_memory_js_1.AgentMemory({ router });
98
- await node_assert_1.default.rejects(() => memory.memorize({
97
+ const memory = new AgentMemory({ router });
98
+ await assert.rejects(() => memory.memorize({
99
99
  namespace: "user:1",
100
100
  type: "invalid_type",
101
101
  content: "bad type",
102
102
  }), /Unsupported memory type/);
103
103
  });
104
- (0, node_test_1.it)("memorize with classifyMemory uses callback for type", async () => {
104
+ it("memorize with classifyMemory uses callback for type", async () => {
105
105
  const provider = new TestMemoryProvider();
106
- const router = new router_js_1.MemoryRouter({
106
+ const router = new MemoryRouter({
107
107
  providers: new Map([["default", provider]]),
108
108
  defaultProviderId: "default",
109
109
  });
110
- const memory = new agent_memory_js_1.AgentMemory({
110
+ const memory = new AgentMemory({
111
111
  router,
112
112
  classifyMemory: async (content) => (content.length > 20 ? "knowledge" : "thread"),
113
113
  });
114
114
  const item1 = await memory.memorize({ namespace: "ns", content: "short" });
115
- node_assert_1.default.strictEqual(item1.type, "thread");
115
+ assert.strictEqual(item1.type, "thread");
116
116
  const item2 = await memory.memorize({ namespace: "ns", content: "this is a longer content piece" });
117
- node_assert_1.default.strictEqual(item2.type, "knowledge");
117
+ assert.strictEqual(item2.type, "knowledge");
118
118
  });
119
- (0, node_test_1.it)("deleteByNamespace", async () => {
119
+ it("deleteByNamespace", async () => {
120
120
  const provider = new TestMemoryProvider();
121
- const router = new router_js_1.MemoryRouter({
121
+ const router = new MemoryRouter({
122
122
  providers: new Map([["default", provider]]),
123
123
  defaultProviderId: "default",
124
124
  });
125
- const memory = new agent_memory_js_1.AgentMemory({ router });
125
+ const memory = new AgentMemory({ router });
126
126
  await memory.memorize({
127
127
  namespace: "user:2",
128
128
  type: "cross_thread",
@@ -133,14 +133,45 @@ class TestMemoryProvider {
133
133
  query: "any",
134
134
  topK: 5,
135
135
  });
136
- node_assert_1.default.strictEqual(before.items.length, 1);
136
+ assert.strictEqual(before.items.length, 1);
137
137
  await memory.deleteByNamespace("user:2");
138
138
  const after = await memory.recall({
139
139
  namespace: "user:2",
140
140
  query: "any",
141
141
  topK: 5,
142
142
  });
143
- node_assert_1.default.strictEqual(after.items.length, 0);
143
+ assert.strictEqual(after.items.length, 0);
144
+ });
145
+ it("ttl: writes expires_at and skips expired items on recall", async () => {
146
+ const provider = new TestMemoryProvider();
147
+ const router = new MemoryRouter({
148
+ providers: new Map([["default", provider]]),
149
+ defaultProviderId: "default",
150
+ });
151
+ const memory = new AgentMemory({ router });
152
+ const expired = await memory.memorize({
153
+ namespace: "user:ttl",
154
+ type: "cross_thread",
155
+ content: "This should expire immediately.",
156
+ metadata: { ttl_seconds: 0 },
157
+ });
158
+ assert.ok(typeof expired.metadata.expires_at === "string");
159
+ const alive = await memory.memorize({
160
+ namespace: "user:ttl",
161
+ type: "cross_thread",
162
+ content: "This should stay.",
163
+ metadata: { ttl_seconds: 3600 },
164
+ });
165
+ assert.ok(typeof alive.metadata.expires_at === "string");
166
+ const result = await memory.recall({
167
+ namespace: "user:ttl",
168
+ query: "ttl",
169
+ topK: 10,
170
+ types: ["cross_thread"],
171
+ });
172
+ assert.strictEqual(result.items.length, 1);
173
+ assert.strictEqual(result.items[0]?.content, "This should stay.");
174
+ assert.ok(provider.getDeletedCount() >= 1);
144
175
  });
145
176
  });
146
177
  //# sourceMappingURL=agent-memory.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-memory.test.js","sourceRoot":"","sources":["../../../test/core/agent-memory.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-memory.test.js","sourceRoot":"","sources":["../../../test/core/agent-memory.test.ts"],"names":[],"mappings":"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"}