@synapcores/openclaw-memory 0.4.0 → 0.5.0

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 CHANGED
@@ -2,25 +2,25 @@
2
2
 
3
3
  A long-term memory plugin for [OpenClaw](https://github.com/openclaw/openclaw) that uses **SynapCores AIDB** as the storage backend. Drop-in alternative to `@openclaw/memory-lancedb` with the same auto-recall / auto-capture lifecycle, plus four SynapCores-only extensions: SQL-filtered semantic recall, graph-relation walks, AutoML relevance scoring, and a model-training helper.
4
4
 
5
- > **0.4.0 shipping note:** the core memory ops (`memory_store` / `memory_recall` / `memory_forget`) now ride the engine-side `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives via `@synapcores/sdk@^0.5.0`'s `client.memory` surface. The plugin's public API (tools, CLI, extensions, types) is unchanged — only the internal storage path moved.
5
+ > **0.5.0 shipping note:** the core memory ops (`memory_store` / `memory_recall` / `memory_forget`) ride the engine-side `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives via `@synapcores/sdk@^0.6.0`'s `client.memory` surface. The plugin's public API (tools, CLI, extensions, types) is unchanged.
6
6
  >
7
7
  > - **Requires SynapCores gateway `v1.8.5-ce` or newer** (the version that ships the `MEMORY_*` SQL functions).
8
- > - **Embedding moved server-side for the hot path.** `memory_store` / `memory_recall` no longer call OpenAI the gateway embeds via its configured model. The OpenAI client is still used by the relevance extensions (`predictRelevance`, `trainRelevanceModel`) and the `autoLinkSimilar` graph-node embedding.
8
+ > - **Fully engine-native embeddings zero external-LLM dependency.** The `memory_store` / `memory_recall` hot path embeds server-side inside the engine's `MEMORY_STORE` / `MEMORY_RECALL` primitives; the relevance extensions (`predictRelevance` / `trainRelevanceModel`) and the `autoLinkSimilar` graph-node embedding call the gateway's native `client.embed()`. All embeddings come from the SynapCores gateway (embedding dimension is the gateway model's, e.g. 384 for `all-minilm`). OpenAI has been removed entirely — no OpenAI key, no `openai` dependency.
9
9
  > - **Migration from 0.3.x: the engine-managed table is `_memory_<namespace>`, a different storage backend from the v0.3.x vector collection. Existing v0.3.x memories WILL NOT appear after upgrade — re-capture them.** See "Upgrading from 0.3.x" below.
10
10
  > - **`collection` config field becomes the engine `namespace`.** It must now match `^[A-Za-z_][A-Za-z0-9_]*$`. The default `openclaw_memories` continues to work; other custom values with hyphens or other non-identifier characters need updating.
11
- > - **`recallFiltered` WHERE clauses run engine-side** against the `MEMORY_RECALL(?, ?, ?)` result-set. The plugin auto-rewrites the four legacy column shorthands (`category`, `importance`, `createdAt`, `text`) into the JSON-extract form so most existing call sites keep working unchanged.
11
+ > - **`recallFiltered` WHERE clauses are applied client-side.** The engine cannot apply a `WHERE` to the table-valued `MEMORY_RECALL(?, ?, ?)` result-set (it drops every row), so the plugin fetches an oversampled, unfiltered recall and evaluates the predicate in JS. Legacy column shorthands (`category`, `importance`, `createdAt`, `text`) and the JSON-extract form (`metadata->>'…'`) are both understood directly no rewriting required.
12
12
 
13
13
  ## Upgrading from 0.3.x
14
14
 
15
- `@synapcores/openclaw-memory@0.4.0` is a **hard cut**: the storage backend changes, so old memories will not migrate automatically. Steps:
15
+ `@synapcores/openclaw-memory@0.5.0` is a **hard cut** from 0.3.x: the storage backend changed (at 0.4.0), so old memories will not migrate automatically. Steps:
16
16
 
17
17
  1. Upgrade the SynapCores gateway to `v1.8.5-ce` or newer.
18
- 2. `npm install @synapcores/openclaw-memory@0.4.0`.
18
+ 2. `npm install @synapcores/openclaw-memory@0.5.0`.
19
19
  3. If your `collection` config value contains hyphens or other non-identifier characters, rename it to match `^[A-Za-z_][A-Za-z0-9_]*$` before restarting.
20
20
  4. (Optional) export any high-value memories from the v0.3.x vector collection (the legacy `openclaw_memories` collection in your gateway) and re-store them via `memory_store` so they land in the new `_memory_<namespace>` table.
21
21
  5. (Optional) drop the old vector collection from the gateway once you're sure the export is done.
22
22
 
23
- If your `recallFiltered` callers use plain column names (`category`, `importance`, `createdAt`, `text`), they continue to work via auto-rewrite. Callers using the more general SQL surface should switch to the JSON-extract form (`metadata->>'…'`) directly.
23
+ If your `recallFiltered` callers use plain column names (`category`, `importance`, `createdAt`, `text`), they continue to work the client-side filter understands those column names directly. Callers filtering on arbitrary metadata keys use the JSON-extract form (`metadata->>'…'`).
24
24
 
25
25
  ## Why use this over `@openclaw/memory-lancedb`?
26
26
 
@@ -82,10 +82,6 @@ typically `~/.openclaw/openclaw.json`). Three things matter: the
82
82
  "memory-synapcores": {
83
83
  "enabled": true,
84
84
  "config": {
85
- "embedding": {
86
- "apiKey": "${OPENAI_API_KEY}",
87
- "model": "text-embedding-3-small"
88
- },
89
85
  "synapcores": {
90
86
  "host": "localhost",
91
87
  "port": 8080,
@@ -110,7 +106,7 @@ typically `~/.openclaw/openclaw.json`). Three things matter: the
110
106
  > **disabled**.
111
107
 
112
108
  Then `openclaw config validate`. Environment-variable interpolation
113
- (`${OPENAI_API_KEY}`, `${SYNAPCORES_API_KEY}`) is supported in any string field
109
+ (`${SYNAPCORES_API_KEY}`) is supported in any string field
114
110
  so you don't have to commit secrets. (Store keys **clean** — a trailing newline
115
111
  in `apiKey` will break auth.)
116
112
 
@@ -118,8 +114,6 @@ in `apiKey` will break auth.)
118
114
 
119
115
  | Field | Required | Default | Notes |
120
116
  | --- | --- | --- | --- |
121
- | `embedding.apiKey` | yes | — | OpenAI API key for the embedding model. |
122
- | `embedding.model` | no | `text-embedding-3-small` | Either `text-embedding-3-small` (1536 dims) or `text-embedding-3-large` (3072 dims). |
123
117
  | `synapcores.apiKey` | yes | — | SynapCores API key (`ak_prod_…` or `aidb_…`). |
124
118
  | `synapcores.host` | no | `localhost` | SynapCores gateway hostname. |
125
119
  | `synapcores.port` | no | `8080` | SynapCores gateway port. |
@@ -128,7 +122,7 @@ in `apiKey` will break auth.)
128
122
  | `graph` | no | `openclaw_memory_graph` | SynapCores graph name (used for `SIMILAR_TO` edges and `recallRelated` walks). |
129
123
  | `autoCapture` | no | `true` | Auto-store memorable utterances after each agent turn. |
130
124
  | `autoRecall` | no | `true` | Auto-inject relevant memories before each agent turn. |
131
- | `autoLinkSimilar` | no | `true` | On capture, insert each Memory as a graph node carrying the embedding so `recallRelated` returns useful neighborhoods out of the box. Adds ~30-80ms per capture; disable if you never call `recallRelated`. |
125
+ | `autoLinkSimilar` | no | `true` | On capture, insert each Memory as a graph node carrying the embedding so `recallRelated` returns useful neighborhoods out of the box. Adds ~30-50ms per capture; disable if you never call `recallRelated`. |
132
126
  | `workspace` | no | — | Optional workspace suffix on the AutoML relevance model name so multiple installations sharing one gateway can train independent models. |
133
127
 
134
128
  ## What you get
@@ -149,7 +143,7 @@ Once registered, the plugin:
149
143
  | --- | --- |
150
144
  | `memory_recall` | Vector-search the memory store. Params: `{ query: string, limit?: number }` (default 5). |
151
145
  | `memory_store` | Persist a new memory. Params: `{ text, importance?, category? }`. De-dupes against >0.95 cosine similarity. |
152
- | `memory_forget` | Delete a memory by `memoryId` (UUID) or by `query` (auto-deletes if exactly one candidate at >0.9 similarity, otherwise returns candidates). |
146
+ | `memory_forget` | Delete a memory by `memoryId` (engine-assigned id, e.g. `mem_…`) or by `query` (auto-deletes if exactly one candidate at >0.9 similarity, otherwise returns candidates). |
153
147
 
154
148
  ### Extensions (programmatic, SynapCores-only)
155
149
 
@@ -166,8 +160,10 @@ interface MemorySynapCoresExtensions {
166
160
 
167
161
  /** Walk SIMILAR_TO / MENTIONS / RELATES_TO edges from a memory. */
168
162
  recallRelated(memoryId: string, opts?: {
169
- hops?: number; // default 1
170
- edgeKinds?: string[]; // default: any
163
+ hops?: number; // default 1 (capped at 4)
164
+ edgeKinds?: string[]; // default: ["SIMILAR_TO"]
165
+ similarityThreshold?: number; // default 0.5 (synthetic SIMILAR_TO edges only)
166
+ limit?: number; // default 20
171
167
  }): Promise<RelatedMemoryResult[]>;
172
168
 
173
169
  /** Score candidates with an AutoML model (with heuristic fallback). */
@@ -192,7 +188,16 @@ const results = await plugin.extensions.recallFiltered({
192
188
  });
193
189
  ```
194
190
 
195
- The `where` clause is forwarded to the SynapCores gateway as the `filter` field on `/vector_search`. SQL validation happens on the gateway a malformed clause will surface as an SDK error.
191
+ Because the engine cannot apply a `WHERE` to the table-valued `MEMORY_RECALL(?, ?, ?)` result-set, the plugin runs an oversampled unfiltered recall and evaluates the `where` predicate **client-side in JS**. A malformed clause surfaces as a descriptive `recallFiltered: …` error thrown by the plugin (not an engine error).
192
+
193
+ Supported `where` surface (parsed by the plugin's predicate compiler):
194
+
195
+ - **Fields:** `category`, `importance`, `createdAt`, `text` / `content`, `id`, `similarity` / `score`, and JSON-extract `metadata->>'key'` for any other metadata field.
196
+ - **Comparison operators:** `=` / `==`, `!=` / `<>`, `>`, `>=`, `<`, `<=`, `LIKE` (SQL `%` / `_` wildcards), and `IN (…)`.
197
+ - **Boolean combinators:** `AND`, `OR`, `NOT`, and parentheses.
198
+ - **Literals:** single-quoted strings, numbers, `TRUE` / `FALSE` / `NULL`.
199
+
200
+ An empty clause or `1=1` passes all rows. Anything outside this surface (subqueries, functions, joins) throws rather than silently returning wrong rows.
196
201
 
197
202
  #### `recallRelated` — graph neighborhood walk
198
203
 
@@ -220,8 +225,8 @@ ranked.sort((a, b) => b.relevance - a.relevance);
220
225
  When a model named `openclaw_memory_relevance[_<workspace>]` exists, candidates are scored by it. Otherwise the plugin falls back to:
221
226
 
222
227
  ```
223
- relevance = 0.6 * cosine_similarity(query, memory)
224
- + 0.25 * exp(-age_days / 14) # 14-day half-life
228
+ relevance = 0.6 * (cosine_similarity(query, memory) + 1) / 2 # cosine mapped [-1,1] -> [0,1]
229
+ + 0.25 * exp(-age_days / 14) # ~14-day recency decay
225
230
  + 0.15 * memory.importance
226
231
  ```
227
232
 
@@ -239,14 +244,14 @@ await plugin.extensions.trainRelevanceModel(feedback);
239
244
 
240
245
  Requires at least 10 samples; throws otherwise. Train periodically (cron / on-demand) — the next `predictRelevance` call will detect the model and switch out of heuristic mode.
241
246
 
242
- Under the hood, v0.4.0 stages feedback rows in a SQL table (`openclaw_memory_relevance_training[_<workspace>]`) on the gateway, then calls `/v1/automl/train` with `target: 'score'` and `task: 'regression'`. The table is preserved across calls so feedback accumulates between sessions; clear it manually with `DROP TABLE` (via `client.executeQuery`) if you want a clean restart. Memory hydration is via `MEMORY_RECALL(?, ?, ?) WHERE id = ?` against the engine's namespace; rows whose memories have been deleted are skipped.
247
+ Under the hood, the plugin stages feedback rows in a SQL table (`openclaw_memory_relevance_training[_<workspace>]`) on the gateway, then calls `/v1/automl/train` with `target: 'score'` and `task: 'regression'`. The table is preserved across calls so feedback accumulates between sessions; clear it manually with `DROP TABLE` (via `client.executeQuery`) if you want a clean restart. Memory hydration is via `MEMORY_RECALL(?, ?, ?) WHERE id = ?` against the engine's namespace; rows whose memories have been deleted are skipped.
243
248
 
244
- ## Roadmap (0.5.0+)
249
+ ## Roadmap
245
250
 
246
251
  - **Entity extraction on capture** — parse `@mention` tokens and known-contact names out of incoming text and create `Person` / `Project` graph nodes with `MENTIONS` edges back to the memory.
247
252
  - **Tag inference** — auto-classify memories into a configurable tag vocabulary on capture (small classifier or LLM call) so `recallFiltered` queries can use tags out of the box.
248
253
  - **`synapcores-import-lancedb` migration script** — read an existing `~/.openclaw/memory/lancedb` store, re-embed if needed, and bulk-load into a SynapCores collection. Ships as a `bin` entry on the package.
249
- - **Drop the `_getHttpClient` graph-node workaround** once `@synapcores/sdk >0.4.0` fixes `client.graph.nodes.create` to post `{labels: [label]}` instead of `{label}` (the wire shape the gateway's `/v1/graph/nodes` handler expects).
254
+ - **Drop the `_getHttpClient` graph-node / graph-match workarounds** once the SDK restores a native graph API: `client.graph.nodes.create` needs to post `{labels: [label]}` (not `{label}`) to match the gateway's `/v1/graph/nodes` handler, and `recallRelated` currently posts Cypher to `/v1/graph/match` directly because `@synapcores/sdk@^0.6.0` no longer exposes `client.graph.cypher`.
250
255
 
251
256
  ## Upstream
252
257
 
package/dist/config.d.ts CHANGED
@@ -1,9 +1,4 @@
1
1
  export type MemoryConfig = {
2
- embedding: {
3
- provider: "openai";
4
- model?: string;
5
- apiKey: string;
6
- };
7
2
  synapcores: {
8
3
  host: string;
9
4
  port: number;
@@ -33,21 +28,9 @@ export type MemoryConfig = {
33
28
  };
34
29
  export declare const MEMORY_CATEGORIES: readonly ["preference", "fact", "decision", "entity", "other"];
35
30
  export type MemoryCategory = (typeof MEMORY_CATEGORIES)[number];
36
- export declare function vectorDimsForModel(model: string): number;
37
31
  export declare const memoryConfigSchema: {
38
32
  parse(value: unknown): MemoryConfig;
39
33
  uiHints: {
40
- "embedding.apiKey": {
41
- label: string;
42
- sensitive: boolean;
43
- placeholder: string;
44
- help: string;
45
- };
46
- "embedding.model": {
47
- label: string;
48
- placeholder: string;
49
- help: string;
50
- };
51
34
  "synapcores.host": {
52
35
  label: string;
53
36
  placeholder: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE;QACT,QAAQ,EAAE,QAAQ,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,gEAAiE,CAAC;AAChG,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAqBhE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMxD;AA4BD,eAAO,MAAM,kBAAkB;iBAChB,OAAO,GAAG,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgIpC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,gEAAiE,CAAC;AAChG,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAmChE,eAAO,MAAM,kBAAkB;iBAChB,OAAO,GAAG,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwGpC,CAAC"}
package/dist/config.js CHANGED
@@ -1,13 +1,8 @@
1
1
  export const MEMORY_CATEGORIES = ["preference", "fact", "decision", "entity", "other"];
2
- const DEFAULT_MODEL = "text-embedding-3-small";
3
2
  const DEFAULT_HOST = "localhost";
4
3
  const DEFAULT_PORT = 8080;
5
4
  const DEFAULT_COLLECTION = "openclaw_memories";
6
5
  const DEFAULT_GRAPH = "openclaw_memory_graph";
7
- const EMBEDDING_DIMENSIONS = {
8
- "text-embedding-3-small": 1536,
9
- "text-embedding-3-large": 3072,
10
- };
11
6
  function assertAllowedKeys(value, allowed, label) {
12
7
  const unknown = Object.keys(value).filter((key) => !allowed.includes(key));
13
8
  if (unknown.length === 0) {
@@ -15,13 +10,6 @@ function assertAllowedKeys(value, allowed, label) {
15
10
  }
16
11
  throw new Error(`${label} has unknown keys: ${unknown.join(", ")}`);
17
12
  }
18
- export function vectorDimsForModel(model) {
19
- const dims = EMBEDDING_DIMENSIONS[model];
20
- if (!dims) {
21
- throw new Error(`Unsupported embedding model: ${model}`);
22
- }
23
- return dims;
24
- }
25
13
  function resolveEnvVars(value) {
26
14
  return value.replace(/\$\{([^}]+)\}/g, (_, envVar) => {
27
15
  const envValue = process.env[envVar];
@@ -31,11 +19,6 @@ function resolveEnvVars(value) {
31
19
  return envValue;
32
20
  });
33
21
  }
34
- function resolveEmbeddingModel(embedding) {
35
- const model = typeof embedding.model === "string" ? embedding.model : DEFAULT_MODEL;
36
- vectorDimsForModel(model);
37
- return model;
38
- }
39
22
  function parsePort(value) {
40
23
  if (value === undefined) {
41
24
  return DEFAULT_PORT;
@@ -52,7 +35,6 @@ export const memoryConfigSchema = {
52
35
  }
53
36
  const cfg = value;
54
37
  assertAllowedKeys(cfg, [
55
- "embedding",
56
38
  "synapcores",
57
39
  "collection",
58
40
  "graph",
@@ -61,12 +43,6 @@ export const memoryConfigSchema = {
61
43
  "autoLinkSimilar",
62
44
  "workspace",
63
45
  ], "memory config");
64
- const embedding = cfg.embedding;
65
- if (!embedding || typeof embedding.apiKey !== "string") {
66
- throw new Error("embedding.apiKey is required");
67
- }
68
- assertAllowedKeys(embedding, ["apiKey", "model"], "embedding config");
69
- const model = resolveEmbeddingModel(embedding);
70
46
  const synapcores = cfg.synapcores;
71
47
  if (!synapcores || typeof synapcores.apiKey !== "string") {
72
48
  throw new Error("synapcores.apiKey is required");
@@ -78,11 +54,6 @@ export const memoryConfigSchema = {
78
54
  const port = parsePort(synapcores.port);
79
55
  const useHttps = synapcores.useHttps === true;
80
56
  return {
81
- embedding: {
82
- provider: "openai",
83
- model,
84
- apiKey: resolveEnvVars(embedding.apiKey),
85
- },
86
57
  synapcores: {
87
58
  host,
88
59
  port,
@@ -98,17 +69,6 @@ export const memoryConfigSchema = {
98
69
  };
99
70
  },
100
71
  uiHints: {
101
- "embedding.apiKey": {
102
- label: "OpenAI API Key",
103
- sensitive: true,
104
- placeholder: "sk-proj-...",
105
- help: "API key for OpenAI embeddings (or use ${OPENAI_API_KEY})",
106
- },
107
- "embedding.model": {
108
- label: "Embedding Model",
109
- placeholder: DEFAULT_MODEL,
110
- help: "OpenAI embedding model to use",
111
- },
112
72
  "synapcores.host": {
113
73
  label: "SynapCores Host",
114
74
  placeholder: DEFAULT_HOST,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAkCA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAGhG,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,YAAY,GAAG,WAAW,CAAC;AACjC,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAC/C,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAE9C,MAAM,oBAAoB,GAA2B;IACnD,wBAAwB,EAAE,IAAI;IAC9B,wBAAwB,EAAE,IAAI;CAC/B,CAAC;AAEF,SAAS,iBAAiB,CAAC,KAA8B,EAAE,OAAiB,EAAE,KAAa;IACzF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,aAAa,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,SAAkC;IAC/D,MAAM,KAAK,GAAG,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC;IACpF,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;QACzF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,CAAC,KAAc;QAClB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,GAAG,GAAG,KAAgC,CAAC;QAC7C,iBAAiB,CACf,GAAG,EACH;YACE,WAAW;YACX,YAAY;YACZ,YAAY;YACZ,OAAO;YACP,aAAa;YACb,YAAY;YACZ,iBAAiB;YACjB,WAAW;SACZ,EACD,eAAe,CAChB,CAAC;QAEF,MAAM,SAAS,GAAG,GAAG,CAAC,SAAgD,CAAC;QACvE,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,iBAAiB,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,GAAG,CAAC,UAAiD,CAAC;QACzE,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,iBAAiB,CACf,UAAU,EACV,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,EACtC,mBAAmB,CACpB,CAAC;QAEF,MAAM,IAAI,GACR,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAC/D,CAAC,CAAC,UAAU,CAAC,IAAI;YACjB,CAAC,CAAC,YAAY,CAAC;QACnB,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC;QAE9C,OAAO;YACL,SAAS,EAAE;gBACT,QAAQ,EAAE,QAAQ;gBAClB,KAAK;gBACL,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC;aACzC;YACD,UAAU,EAAE;gBACV,IAAI;gBACJ,IAAI;gBACJ,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC;gBACzC,QAAQ;aACT;YACD,UAAU,EAAE,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB;YACpF,KAAK,EAAE,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YAChE,WAAW,EAAE,GAAG,CAAC,WAAW,KAAK,KAAK;YACtC,UAAU,EAAE,GAAG,CAAC,UAAU,KAAK,KAAK;YACpC,eAAe,EAAE,GAAG,CAAC,eAAe,KAAK,KAAK;YAC9C,SAAS,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACzE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE;QACP,kBAAkB,EAAE;YAClB,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,aAAa;YAC1B,IAAI,EAAE,0DAA0D;SACjE;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,aAAa;YAC1B,IAAI,EAAE,+BAA+B;SACtC;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,YAAY;YACzB,IAAI,EAAE,oCAAoC;SAC3C;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC;YACjC,IAAI,EAAE,gCAAgC;SACvC;QACD,mBAAmB,EAAE;YACnB,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,yBAAyB;YACtC,IAAI,EAAE,mEAAmE;SAC1E;QACD,qBAAqB,EAAE;YACrB,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,4CAA4C;SACnD;QACD,UAAU,EAAE;YACV,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,mDAAmD;SAC1D;QACD,KAAK,EAAE;YACL,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,aAAa;YAC1B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,2FAA2F;SAClG;QACD,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,gEAAgE;SACvE;QACD,UAAU,EAAE;YACV,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,qDAAqD;SAC5D;QACD,eAAe,EAAE;YACf,KAAK,EAAE,4BAA4B;YACnC,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,wKAAwK;SAC/K;QACD,SAAS,EAAE;YACT,KAAK,EAAE,cAAc;YACrB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,8IAA8I;SACrJ;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAGhG,MAAM,YAAY,GAAG,WAAW,CAAC;AACjC,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAC/C,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAE9C,SAAS,iBAAiB,CAAC,KAA8B,EAAE,OAAiB,EAAE,KAAa;IACzF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,aAAa,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;QACzF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,CAAC,KAAc;QAClB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,GAAG,GAAG,KAAgC,CAAC;QAC7C,iBAAiB,CACf,GAAG,EACH;YACE,YAAY;YACZ,YAAY;YACZ,OAAO;YACP,aAAa;YACb,YAAY;YACZ,iBAAiB;YACjB,WAAW;SACZ,EACD,eAAe,CAChB,CAAC;QAEF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAiD,CAAC;QACzE,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,iBAAiB,CACf,UAAU,EACV,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,EACtC,mBAAmB,CACpB,CAAC;QAEF,MAAM,IAAI,GACR,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAC/D,CAAC,CAAC,UAAU,CAAC,IAAI;YACjB,CAAC,CAAC,YAAY,CAAC;QACnB,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC;QAE9C,OAAO;YACL,UAAU,EAAE;gBACV,IAAI;gBACJ,IAAI;gBACJ,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC;gBACzC,QAAQ;aACT;YACD,UAAU,EAAE,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,kBAAkB;YACpF,KAAK,EAAE,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YAChE,WAAW,EAAE,GAAG,CAAC,WAAW,KAAK,KAAK;YACtC,UAAU,EAAE,GAAG,CAAC,UAAU,KAAK,KAAK;YACpC,eAAe,EAAE,GAAG,CAAC,eAAe,KAAK,KAAK;YAC9C,SAAS,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACzE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE;QACP,iBAAiB,EAAE;YACjB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,YAAY;YACzB,IAAI,EAAE,oCAAoC;SAC3C;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC;YACjC,IAAI,EAAE,gCAAgC;SACvC;QACD,mBAAmB,EAAE;YACnB,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,yBAAyB;YACtC,IAAI,EAAE,mEAAmE;SAC1E;QACD,qBAAqB,EAAE;YACrB,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,4CAA4C;SACnD;QACD,UAAU,EAAE;YACV,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,mDAAmD;SAC1D;QACD,KAAK,EAAE;YACL,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,aAAa;YAC1B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,2FAA2F;SAClG;QACD,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,gEAAgE;SACvE;QACD,UAAU,EAAE;YACV,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,qDAAqD;SAC5D;QACD,eAAe,EAAE;YACf,KAAK,EAAE,4BAA4B;YACnC,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,wKAAwK;SAC/K;QACD,SAAS,EAAE;YACT,KAAK,EAAE,cAAc;YACrB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,8IAA8I;SACrJ;KACF;CACF,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,10 +3,11 @@
3
3
  *
4
4
  * Long-term memory with vector search for AI conversations.
5
5
  * Uses SynapCores AIDB for storage via the engine-side
6
- * `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives and
7
- * OpenAI for the relevance-extension features that still need a
8
- * client-side embedding (cosine feature in `predictRelevance`,
9
- * graph-node embedding when `autoLinkSimilar` is on).
6
+ * `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives, and the
7
+ * engine-native `client.embed()` for the relevance-extension features that
8
+ * need a client-side embedding (cosine feature in `predictRelevance`,
9
+ * graph-node embedding when `autoLinkSimilar` is on). No external
10
+ * embedding provider is required.
10
11
  *
11
12
  * Provides seamless auto-recall and auto-capture via lifecycle hooks,
12
13
  * plus four SynapCores-only extensions (SQL-filtered recall, graph-relation
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AASH,OAAO,EAEL,KAAK,cAAc,EAGpB,MAAM,aAAa,CAAC;AAMrB;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,EAAE,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,WAAW,CAAC;IACnB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAiqBF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAqGD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE9E;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAEhG;;;;;;;;;;;;;;;;OAgBG;IACH,gBAAgB,CACd,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,WAAW,EAAE,GACxB,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAEpC;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrG;AA4zBD,QAAA,MAAM,WAAW;;;;;;yIAAkC,CAAC;AAEpD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAQH,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAMrB;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,2FAA2F;IAC3F,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,EAAE,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,WAAW,CAAC;IACnB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAg4BF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAuGD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE9E;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAEhG;;;;;;;;;;;;;;;;OAgBG;IACH,gBAAgB,CACd,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,WAAW,EAAE,GACxB,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAEpC;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrG;AAyzBD,QAAA,MAAM,WAAW;;;;;;yIAAkC,CAAC;AAEpD,eAAe,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -3,10 +3,11 @@
3
3
  *
4
4
  * Long-term memory with vector search for AI conversations.
5
5
  * Uses SynapCores AIDB for storage via the engine-side
6
- * `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives and
7
- * OpenAI for the relevance-extension features that still need a
8
- * client-side embedding (cosine feature in `predictRelevance`,
9
- * graph-node embedding when `autoLinkSimilar` is on).
6
+ * `MEMORY_STORE` / `MEMORY_RECALL` / `MEMORY_FORGET` primitives, and the
7
+ * engine-native `client.embed()` for the relevance-extension features that
8
+ * need a client-side embedding (cosine feature in `predictRelevance`,
9
+ * graph-node embedding when `autoLinkSimilar` is on). No external
10
+ * embedding provider is required.
10
11
  *
11
12
  * Provides seamless auto-recall and auto-capture via lifecycle hooks,
12
13
  * plus four SynapCores-only extensions (SQL-filtered recall, graph-relation
@@ -18,11 +19,10 @@
18
19
  * `client.memory` surface. Requires SynapCores gateway v1.8.5-ce+.
19
20
  */
20
21
  import { Type } from "typebox";
21
- import OpenAI from "openai";
22
22
  import { stringEnum } from "openclaw/plugin-sdk/core";
23
23
  import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
24
24
  import { SynapCores } from "@synapcores/sdk";
25
- import { MEMORY_CATEGORIES, memoryConfigSchema, vectorDimsForModel, } from "./config.js";
25
+ import { MEMORY_CATEGORIES, memoryConfigSchema, } from "./config.js";
26
26
  // ============================================================================
27
27
  // Constants
28
28
  // ============================================================================
@@ -198,25 +198,35 @@ class MemoryDB {
198
198
  .filter((r) => r.score >= minScore);
199
199
  }
200
200
  /**
201
- * SQL-filtered recall. v0.4.0 forwards the WHERE clause through to a
202
- * `SELECT FROM MEMORY_RECALL(?, ?, ?) WHERE <where>` query so the
203
- * filter runs engine-side over the recall result-set.
201
+ * SQL-filtered recall: a semantic vector search paired with a `WHERE`
202
+ * predicate over category / importance / createdAt / text / `metadata->>'…'`.
204
203
  *
205
- * Legacy shorthand: callers wrote v0.3.x filters like
206
- * `category = 'preference' AND importance >= 0.7`. v0.4.0 stores those
207
- * fields inside the JSON `metadata` column, so the bare-identifier form
208
- * would no longer resolve. We rewrite the four well-known shorthands
209
- * (`category`, `importance`, `createdAt`, `text`) to their JSON-extract
210
- * form on the way in so most existing callers keep working unchanged.
211
- * Callers that already use `metadata->>'…'` get a no-op.
204
+ * ENGINE BUG (SynapCores gateway, confirmed v1.6.5.2-ce v1.9.x-ce):
205
+ * applying ANY `WHERE` to the table-valued `MEMORY_RECALL(?, ?, ?)`
206
+ * function drops every row and returns an empty column set even a bare
207
+ * `WHERE metadata->>'category' = 'preference'`. The engine cannot filter a
208
+ * table-valued-function result-set in the same SELECT. See the repro in the
209
+ * revalidation report; this needs an engine-side fix (planner should push
210
+ * the predicate as a post-filter over the TVF output, or materialize the
211
+ * TVF before applying WHERE).
212
+ *
213
+ * WORKAROUND (this method): fetch an oversampled, UNFILTERED
214
+ * `SELECT … FROM MEMORY_RECALL(?, ?, ?)` and apply the WHERE predicate
215
+ * CLIENT-SIDE in JS (see {@link compileWherePredicate}). The predicate
216
+ * evaluates against the recall row's category / importance / createdAt /
217
+ * text / id / similarity and its parsed `metadata` blob, so the documented
218
+ * filtering surface works despite the engine gap. Once the engine bug is
219
+ * fixed this can revert to a single WHERE-bearing SQL statement.
220
+ *
221
+ * Legacy shorthand (`category`, `importance`, `createdAt`, `text`) and the
222
+ * portable `metadata->>'…'` JSON-extract form are both accepted.
212
223
  */
213
224
  async searchFiltered(semantic, where, limit = 5) {
214
225
  await this.ensureReady();
215
- // Oversample so the post-filter still has enough rows to return.
226
+ // Oversample so the client-side post-filter still has enough rows to return.
216
227
  const oversample = clampTopK(Math.max(limit * 5, 25));
217
- const rewritten = rewriteLegacyWhere(where);
218
228
  const sql = "SELECT id, content, similarity, metadata, created_at " +
219
- `FROM MEMORY_RECALL($1, $2, $3) WHERE ${rewritten} LIMIT ${Number(limit)}`;
229
+ `FROM MEMORY_RECALL($1, $2, $3) LIMIT ${oversample}`;
220
230
  let result;
221
231
  try {
222
232
  result = await this.client.executeQuery({
@@ -231,7 +241,9 @@ class MemoryDB {
231
241
  }
232
242
  throw err;
233
243
  }
234
- return mapRecallRows(result);
244
+ const predicate = compileWherePredicate(where);
245
+ const filtered = mapRecallRowsRich(result).filter((r) => predicate({ entry: r.result.entry, score: r.result.score, metadata: r.metadata }));
246
+ return filtered.slice(0, Number(limit)).map((r) => r.result);
235
247
  }
236
248
  async delete(id) {
237
249
  await this.ensureReady();
@@ -355,6 +367,15 @@ function recordToResult(record) {
355
367
  * pass-through).
356
368
  */
357
369
  function mapRecallRows(result) {
370
+ return mapRecallRowsRich(result).map((r) => r.result);
371
+ }
372
+ /**
373
+ * Like {@link mapRecallRows}, but also surfaces the parsed `metadata` blob
374
+ * alongside each result. Used by `searchFiltered` so the WHERE clause can be
375
+ * evaluated client-side against the full metadata object (see
376
+ * {@link compileWherePredicate} and the ENGINE-BUG note on `searchFiltered`).
377
+ */
378
+ function mapRecallRowsRich(result) {
358
379
  const cols = (result.columns ?? []).map((c) => typeof c === "string" ? c : (c?.name ?? ""));
359
380
  const colIndex = (name) => cols.findIndex((c) => c === name);
360
381
  const idIdx = colIndex("id");
@@ -376,19 +397,22 @@ function mapRecallRows(result) {
376
397
  const id = idIdx >= 0 ? String(row[idIdx] ?? "") : "";
377
398
  const content = contentIdx >= 0 ? String(row[contentIdx] ?? "") : "";
378
399
  out.push({
379
- entry: {
380
- id,
381
- text: content,
382
- vector: [],
383
- importance: typeof importance === "number" ? importance : 0,
384
- category: (typeof category === "string"
385
- ? category
386
- : "other"),
387
- createdAt: typeof metadataField(meta, "createdAt") === "number"
388
- ? metadataField(meta, "createdAt")
389
- : createdAtMs,
400
+ result: {
401
+ entry: {
402
+ id,
403
+ text: content,
404
+ vector: [],
405
+ importance: typeof importance === "number" ? importance : 0,
406
+ category: (typeof category === "string"
407
+ ? category
408
+ : "other"),
409
+ createdAt: typeof metadataField(meta, "createdAt") === "number"
410
+ ? metadataField(meta, "createdAt")
411
+ : createdAtMs,
412
+ },
413
+ score: clamp01(similarity),
390
414
  },
391
- score: clamp01(similarity),
415
+ metadata: meta,
392
416
  });
393
417
  }
394
418
  return out;
@@ -448,59 +472,253 @@ function isMissingNamespaceError(err) {
448
472
  msg.includes("namespace not found"));
449
473
  }
450
474
  /**
451
- * Rewrite a handful of legacy column-name shorthands into the JSON-extract
452
- * form expected against `MEMORY_RECALL`'s output schema. This is best-
453
- * effort and intentionally limited callers writing complex SQL should
454
- * use the engine-native syntax directly.
475
+ * Compile a SQL-ish `WHERE` fragment into a JS predicate over a
476
+ * {@link WhereRecord}. This exists because the engine cannot apply a `WHERE`
477
+ * to the table-valued `MEMORY_RECALL(...)` output (see the ENGINE BUG note on
478
+ * `searchFiltered`), so `searchFiltered` fetches unfiltered rows and filters
479
+ * them here.
455
480
  *
456
- * Rewrites:
457
- * category -> metadata->>'category'
458
- * importance -> CAST(metadata->>'importance' AS REAL)
459
- * createdAt -> CAST(metadata->>'createdAt' AS INTEGER)
460
- * text -> content
481
+ * Supported surface (the plugin's documented filtering contract):
482
+ * - Fields: `category`, `importance`, `createdAt`, `text`/`content`, `id`,
483
+ * `similarity`/`score`, and JSON-extract `metadata->>'key'`.
484
+ * - Comparison ops: `=`/`==`, `!=`/`<>`, `>`, `>=`, `<`, `<=`, `LIKE`
485
+ * (SQL `%`/`_` wildcards), `IN (...)`.
486
+ * - Boolean combinators: `AND`, `OR`, `NOT`, and parentheses.
487
+ * - Literals: single-quoted strings, numbers, `TRUE`/`FALSE`/`NULL`.
461
488
  *
462
- * Identifiers preceded by a dot (e.g. `m.category`) or wrapped in quotes
463
- * are left untouched.
489
+ * A trivial always-true clause (empty or `1=1`) short-circuits to pass-all.
490
+ * Unsupported syntax throws a descriptive error rather than silently
491
+ * returning wrong rows.
464
492
  */
465
- function rewriteLegacyWhere(where) {
466
- const rules = [
467
- [/(?<![.'"\w])category(?![\w])/g, "metadata->>'category'"],
468
- [/(?<![.'"\w])importance(?![\w])/g, "CAST(metadata->>'importance' AS REAL)"],
469
- [/(?<![.'"\w])createdAt(?![\w])/g, "CAST(metadata->>'createdAt' AS INTEGER)"],
470
- [/(?<![.'"\w])text(?![\w])/g, "content"],
471
- ];
472
- let out = where;
473
- for (const [re, repl] of rules) {
474
- out = out.replace(re, repl);
493
+ function compileWherePredicate(where) {
494
+ const src = (where ?? "").trim();
495
+ if (src === "" || src === "1=1" || src === "1 = 1" || src.toLowerCase() === "true") {
496
+ return () => true;
475
497
  }
476
- return out;
498
+ const tokens = [];
499
+ const re = /\s+|metadata\s*->>\s*'([^']*)'|'((?:[^']|'')*)'|(>=|<=|!=|<>|==|=|>|<)|(\()|(\))|,|([A-Za-z_][A-Za-z0-9_]*)|(-?\d+(?:\.\d+)?)/g;
500
+ let m;
501
+ let lastIndex = 0;
502
+ while ((m = re.exec(src)) !== null) {
503
+ if (m.index !== lastIndex) {
504
+ throw new Error(`recallFiltered: unsupported token near "${src.slice(lastIndex, m.index + 1)}"`);
505
+ }
506
+ lastIndex = re.lastIndex;
507
+ const raw = m[0];
508
+ if (/^\s+$/.test(raw))
509
+ continue;
510
+ if (m[1] !== undefined)
511
+ tokens.push({ t: "field", v: `metadata:${m[1]}` });
512
+ else if (m[2] !== undefined)
513
+ tokens.push({ t: "str", v: m[2].replace(/''/g, "'") });
514
+ else if (m[3] !== undefined)
515
+ tokens.push({ t: "op", v: m[3] });
516
+ else if (m[4] !== undefined)
517
+ tokens.push({ t: "lparen", v: "(" });
518
+ else if (m[5] !== undefined)
519
+ tokens.push({ t: "rparen", v: ")" });
520
+ else if (raw === ",")
521
+ tokens.push({ t: "comma", v: "," });
522
+ else if (m[6] !== undefined) {
523
+ const kw = m[6].toUpperCase();
524
+ if (["AND", "OR", "NOT", "LIKE", "IN", "TRUE", "FALSE", "NULL"].includes(kw)) {
525
+ tokens.push({ t: "kw", v: kw });
526
+ }
527
+ else {
528
+ tokens.push({ t: "field", v: m[6] });
529
+ }
530
+ }
531
+ else if (m[7] !== undefined)
532
+ tokens.push({ t: "num", v: m[7] });
533
+ }
534
+ if (lastIndex !== src.length) {
535
+ throw new Error(`recallFiltered: unsupported token near "${src.slice(lastIndex)}"`);
536
+ }
537
+ // Recursive-descent parser -> predicate closure.
538
+ let pos = 0;
539
+ const peek = () => tokens[pos];
540
+ const next = () => tokens[pos++];
541
+ const fieldValue = (name, rec) => {
542
+ if (name.startsWith("metadata:")) {
543
+ const key = name.slice("metadata:".length);
544
+ return rec.metadata ? rec.metadata[key] : undefined;
545
+ }
546
+ switch (name.toLowerCase()) {
547
+ case "category": return rec.entry.category;
548
+ case "importance": return rec.entry.importance;
549
+ case "createdat": return rec.entry.createdAt;
550
+ case "text":
551
+ case "content": return rec.entry.text;
552
+ case "id": return rec.entry.id;
553
+ case "similarity":
554
+ case "score": return rec.score;
555
+ default:
556
+ return rec.metadata ? rec.metadata[name] : undefined;
557
+ }
558
+ };
559
+ const asNumber = (v) => {
560
+ if (typeof v === "number")
561
+ return Number.isFinite(v) ? v : null;
562
+ if (typeof v === "string" && v.trim() !== "") {
563
+ const n = Number(v);
564
+ return Number.isFinite(n) ? n : null;
565
+ }
566
+ return null;
567
+ };
568
+ const likeToRegExp = (pattern) => {
569
+ let out = "";
570
+ for (const ch of pattern) {
571
+ if (ch === "%")
572
+ out += ".*";
573
+ else if (ch === "_")
574
+ out += ".";
575
+ else
576
+ out += ch.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
577
+ }
578
+ return new RegExp(`^${out}$`, "i");
579
+ };
580
+ const compareOp = (op, left, right) => {
581
+ const ln = asNumber(left);
582
+ const rn = asNumber(right);
583
+ const bothNum = ln !== null && rn !== null;
584
+ switch (op) {
585
+ case "=":
586
+ case "==":
587
+ return bothNum ? ln === rn : String(left) === String(right);
588
+ case "!=":
589
+ case "<>":
590
+ return bothNum ? ln !== rn : String(left) !== String(right);
591
+ case ">": return bothNum ? ln > rn : String(left) > String(right);
592
+ case ">=": return bothNum ? ln >= rn : String(left) >= String(right);
593
+ case "<": return bothNum ? ln < rn : String(left) < String(right);
594
+ case "<=": return bothNum ? ln <= rn : String(left) <= String(right);
595
+ default:
596
+ throw new Error(`recallFiltered: unsupported operator "${op}"`);
597
+ }
598
+ };
599
+ // literal value parse (for RHS of a comparison / IN list)
600
+ const parseLiteral = () => {
601
+ const tk = next();
602
+ if (!tk)
603
+ throw new Error("recallFiltered: unexpected end of WHERE clause");
604
+ if (tk.t === "str")
605
+ return tk.v;
606
+ if (tk.t === "num")
607
+ return Number(tk.v);
608
+ if (tk.t === "kw" && tk.v === "TRUE")
609
+ return true;
610
+ if (tk.t === "kw" && tk.v === "FALSE")
611
+ return false;
612
+ if (tk.t === "kw" && tk.v === "NULL")
613
+ return null;
614
+ throw new Error(`recallFiltered: expected a literal, got "${tk.v}"`);
615
+ };
616
+ const parseComparison = () => {
617
+ const tk = next();
618
+ if (!tk || tk.t !== "field") {
619
+ throw new Error(`recallFiltered: expected a field name, got "${tk?.v ?? "<end>"}"`);
620
+ }
621
+ const fieldName = tk.v;
622
+ const opTok = peek();
623
+ // IN (...)
624
+ if (opTok && opTok.t === "kw" && opTok.v === "IN") {
625
+ next();
626
+ const lp = next();
627
+ if (!lp || lp.t !== "lparen")
628
+ throw new Error("recallFiltered: expected '(' after IN");
629
+ const values = [];
630
+ for (;;) {
631
+ values.push(parseLiteral());
632
+ const sep = next();
633
+ if (sep && sep.t === "comma")
634
+ continue;
635
+ if (sep && sep.t === "rparen")
636
+ break;
637
+ throw new Error("recallFiltered: malformed IN (...) list");
638
+ }
639
+ return (rec) => {
640
+ const lv = fieldValue(fieldName, rec);
641
+ return values.some((v) => compareOp("=", lv, v));
642
+ };
643
+ }
644
+ // LIKE
645
+ if (opTok && opTok.t === "kw" && opTok.v === "LIKE") {
646
+ next();
647
+ const lit = parseLiteral();
648
+ const rx = likeToRegExp(String(lit));
649
+ return (rec) => rx.test(String(fieldValue(fieldName, rec) ?? ""));
650
+ }
651
+ // comparison operator
652
+ if (!opTok || opTok.t !== "op") {
653
+ throw new Error(`recallFiltered: expected an operator after "${fieldName}", got "${opTok?.v ?? "<end>"}"`);
654
+ }
655
+ next();
656
+ const rhs = parseLiteral();
657
+ return (rec) => compareOp(opTok.v, fieldValue(fieldName, rec), rhs);
658
+ };
659
+ const parsePrimary = () => {
660
+ const tk = peek();
661
+ if (tk && tk.t === "lparen") {
662
+ next();
663
+ const inner = parseOr();
664
+ const rp = next();
665
+ if (!rp || rp.t !== "rparen")
666
+ throw new Error("recallFiltered: missing ')'");
667
+ return inner;
668
+ }
669
+ if (tk && tk.t === "kw" && tk.v === "NOT") {
670
+ next();
671
+ const inner = parsePrimary();
672
+ return (rec) => !inner(rec);
673
+ }
674
+ return parseComparison();
675
+ };
676
+ const parseAnd = () => {
677
+ let left = parsePrimary();
678
+ while (peek() && peek().t === "kw" && peek().v === "AND") {
679
+ next();
680
+ const right = parsePrimary();
681
+ const l = left;
682
+ left = (rec) => l(rec) && right(rec);
683
+ }
684
+ return left;
685
+ };
686
+ function parseOr() {
687
+ let left = parseAnd();
688
+ while (peek() && peek().t === "kw" && peek().v === "OR") {
689
+ next();
690
+ const right = parseAnd();
691
+ const l = left;
692
+ left = (rec) => l(rec) || right(rec);
693
+ }
694
+ return left;
695
+ }
696
+ const predicate = parseOr();
697
+ if (pos !== tokens.length) {
698
+ throw new Error(`recallFiltered: unexpected trailing tokens in WHERE clause near "${peek()?.v ?? ""}"`);
699
+ }
700
+ return predicate;
477
701
  }
478
702
  // ============================================================================
479
- // OpenAI Embeddings
703
+ // Embeddings (engine-native)
480
704
  // ============================================================================
481
705
  //
482
- // v0.4.0 NOTE: the engine now owns embedding for the core memory ops
483
- // (`MEMORY_STORE` / `MEMORY_RECALL`). OpenAI is still used by:
706
+ // OpenAI has been fully removed. Client-side embeddings are now produced by
707
+ // the SynapCores engine via `client.embed()` (native `EMBED()`), the same
708
+ // embedding space the engine uses for the core memory ops
709
+ // (`MEMORY_STORE` / `MEMORY_RECALL`). Used by:
484
710
  // - `predictRelevance` / `trainRelevanceModel`: client-side cosine
485
711
  // between query and candidate text.
486
712
  // - `autoLinkSimilar` capture: writing an `embedding` property onto the
487
713
  // Memory graph node so `recallRelated`'s synthetic SIMILAR_TO edge
488
714
  // resolves at MATCH time.
489
- // Callers that never use the relevance extensions and disable
490
- // `autoLinkSimilar` will not hit the OpenAI client.
491
715
  class Embeddings {
492
- model;
493
716
  client;
494
- constructor(apiKey, model) {
495
- this.model = model;
496
- this.client = new OpenAI({ apiKey });
717
+ constructor(client) {
718
+ this.client = client;
497
719
  }
498
720
  async embed(text) {
499
- const response = await this.client.embeddings.create({
500
- model: this.model,
501
- input: text,
502
- });
503
- return response.data[0].embedding;
721
+ return (await this.client.embed(text));
504
722
  }
505
723
  }
506
724
  // ============================================================================
@@ -648,17 +866,19 @@ const DEFAULT_RECALL_RELATED_LIMIT = 20;
648
866
  /**
649
867
  * `linkSimilarMemories` — capture-time graph wiring.
650
868
  *
651
- * Inserts the Memory as a graph node carrying the OpenAI embedding under
652
- * the property name `embedding` — the field the gateway's brute-force
869
+ * Inserts the Memory as a graph node carrying the engine-native embedding
870
+ * under the property name `embedding` — the field the gateway's brute-force
653
871
  * vector index is wired against (see
654
872
  * `aidb_gateway::routes::graph::attach_default_vector_index`). Once a
655
873
  * Memory node exists, `recallRelated` can MATCH `[:SIMILAR_TO > T]`
656
874
  * against it and get neighbors back without any pre-stored edges.
657
875
  *
658
- * v0.4.0 NOTE: the engine no longer exposes the vector it used internally
659
- * for `MEMORY_STORE`, so this helper still embeds the text via the
660
- * OpenAI client. The two embeddings (engine + OpenAI) need not match;
661
- * each is independent and serves a different recall path.
876
+ * NOTE: the engine no longer exposes the vector it used internally for
877
+ * `MEMORY_STORE`, so this helper re-embeds the text via `client.embed()`.
878
+ * Because the node-property vector now comes from the engine's own
879
+ * embedding space (previously it was a separate OpenAI space), it is
880
+ * consistent with the vectors the engine produces for the core memory
881
+ * ops — a consistency improvement over the prior OpenAI-based path.
662
882
  *
663
883
  * Failures here are non-fatal — the capture itself still succeeded in the
664
884
  * memory subsystem; we just log and move on so the rest of recall keeps
@@ -910,8 +1130,8 @@ function createExtensions(db, embeddings, client, _graphName, workspace) {
910
1130
  // a soft warning to the caller via the throw message); training
911
1131
  // proceeds with the remainder.
912
1132
  // Hydrate feedback rows. Embed each query text once; pair with
913
- // the stored Memory's content (re-embedded via OpenAI) to get the
914
- // cosine feature.
1133
+ // the stored Memory's content (re-embedded via engine-native
1134
+ // `client.embed()`) to get the cosine feature.
915
1135
  const hydrated = [];
916
1136
  let missing = 0;
917
1137
  for (const fb of feedback) {
@@ -1035,10 +1255,6 @@ const memoryPlugin = {
1035
1255
  configSchema: memoryConfigSchema,
1036
1256
  register(api) {
1037
1257
  const cfg = memoryConfigSchema.parse(api.pluginConfig);
1038
- // Validate `vectorDimsForModel` runs without throwing; the dimension
1039
- // value itself isn't used in v0.4.0 because the engine owns embedding
1040
- // for the core memory ops.
1041
- vectorDimsForModel(cfg.embedding.model ?? "text-embedding-3-small");
1042
1258
  const namespace = cfg.collection ?? DEFAULT_COLLECTION;
1043
1259
  // The new MemoryClient enforces namespace ^[A-Za-z_][A-Za-z0-9_]*$. Fail
1044
1260
  // loud and early if the OpenClaw config's `collection` value would be
@@ -1054,7 +1270,7 @@ const memoryPlugin = {
1054
1270
  apiKey: cfg.synapcores.apiKey,
1055
1271
  });
1056
1272
  const db = new MemoryDB(client, namespace);
1057
- const embeddings = new Embeddings(cfg.embedding.apiKey, cfg.embedding.model);
1273
+ const embeddings = new Embeddings(client);
1058
1274
  const extensions = createExtensions(db, embeddings, client, cfg.graph, cfg.workspace);
1059
1275
  const autoLinkSimilar = cfg.autoLinkSimilar !== false;
1060
1276
  api.logger.info(`memory-synapcores: plugin registered (host: ${cfg.synapcores.host}:${cfg.synapcores.port}, namespace: ${namespace}, autoLinkSimilar: ${autoLinkSimilar}, lazy init)`);
@@ -1130,8 +1346,9 @@ const memoryPlugin = {
1130
1346
  category,
1131
1347
  });
1132
1348
  // linkSimilarMemories inserts a Memory graph node carrying an
1133
- // OpenAI-embedded representation so recallRelated has something
1134
- // to MATCH against. Failures are non-fatal (logged in-helper).
1349
+ // engine-native embedded representation (via `client.embed()`) so
1350
+ // recallRelated has something to MATCH against. Failures are
1351
+ // non-fatal (logged in-helper).
1135
1352
  if (autoLinkSimilar) {
1136
1353
  try {
1137
1354
  const embedVec = await embeddings.embed(text);
@@ -1354,7 +1571,7 @@ const memoryPlugin = {
1354
1571
  // bricking the host — memory ops still lazily retry on first use.
1355
1572
  try {
1356
1573
  await preflightGateway(client);
1357
- api.logger.info(`memory-synapcores: initialized (host: ${cfg.synapcores.host}:${cfg.synapcores.port}, namespace: ${namespace}, model: ${cfg.embedding.model})`);
1574
+ api.logger.info(`memory-synapcores: initialized (host: ${cfg.synapcores.host}:${cfg.synapcores.port}, namespace: ${namespace}, embeddings: engine-native)`);
1358
1575
  }
1359
1576
  catch (err) {
1360
1577
  api.logger.warn(`memory-synapcores: ${String(err?.message ?? err)}`);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -10,17 +10,6 @@
10
10
  "tools": ["memory_store", "memory_recall", "memory_forget"]
11
11
  },
12
12
  "uiHints": {
13
- "embedding.apiKey": {
14
- "label": "OpenAI API Key",
15
- "sensitive": true,
16
- "placeholder": "sk-proj-...",
17
- "help": "API key for OpenAI embeddings (or use ${OPENAI_API_KEY})"
18
- },
19
- "embedding.model": {
20
- "label": "Embedding Model",
21
- "placeholder": "text-embedding-3-small",
22
- "help": "OpenAI embedding model to use"
23
- },
24
13
  "synapcores.host": {
25
14
  "label": "SynapCores Host",
26
15
  "placeholder": "localhost",
@@ -77,20 +66,6 @@
77
66
  "type": "object",
78
67
  "additionalProperties": false,
79
68
  "properties": {
80
- "embedding": {
81
- "type": "object",
82
- "additionalProperties": false,
83
- "properties": {
84
- "apiKey": {
85
- "type": "string"
86
- },
87
- "model": {
88
- "type": "string",
89
- "enum": ["text-embedding-3-small", "text-embedding-3-large"]
90
- }
91
- },
92
- "required": ["apiKey"]
93
- },
94
69
  "synapcores": {
95
70
  "type": "object",
96
71
  "additionalProperties": false,
@@ -131,6 +106,6 @@
131
106
  "type": "string"
132
107
  }
133
108
  },
134
- "required": ["embedding", "synapcores"]
109
+ "required": ["synapcores"]
135
110
  }
136
111
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synapcores/openclaw-memory",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "OpenClaw long-term memory plugin backed by SynapCores AIDB engine-side MEMORY_STORE/RECALL/FORGET primitives + SQL filtering, graph relations, AutoML relevance",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -53,8 +53,7 @@
53
53
  "node": ">=18.0.0"
54
54
  },
55
55
  "dependencies": {
56
- "@synapcores/sdk": "^0.5.0",
57
- "openai": "^6.17.0",
56
+ "@synapcores/sdk": "^0.6.0",
58
57
  "typebox": "^1.1.38"
59
58
  },
60
59
  "peerDependencies": {