@t0ken.ai/memoryx-openclaw-plugin 2.0.0 → 2.2.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
@@ -124,12 +124,14 @@ openclaw gateway restart
124
124
 
125
125
  ## How it Works
126
126
 
127
+ Powered by **@t0ken.ai/memoryx-sdk** with conversation preset.
128
+
127
129
  ### Recall (`before_agent_start`)
128
130
 
129
131
  - Builds a `/v1/memories/search` request using the current prompt
130
132
  - Injects relevant memories via `prependContext`:
131
133
  ```
132
- [相关记忆]
134
+ [Relevant Memories]
133
135
  - [preference] User prefers dark mode
134
136
  - [fact] User's timezone is UTC+8
135
137
  [End of memories]
@@ -137,10 +139,10 @@ openclaw gateway restart
137
139
 
138
140
  ### Add (`message_received` + `assistant_response`)
139
141
 
140
- - Buffers messages with precise token counting (tiktoken)
142
+ - Buffers messages with precise token counting
141
143
  - Flushes to `/v1/conversations/flush` when:
142
- - 2 conversation rounds completed (user + assistant = 1 round)
143
- - 30 minutes timeout
144
+ - 30k tokens reached
145
+ - 5 minutes idle timeout
144
146
  - Server extracts entities, facts, and preferences automatically
145
147
 
146
148
  ### Auto Registration
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAkCH,UAAU,YAAY;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAmCD,cAAM,aAAa;IACf,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,WAAW,CAAkB;gBAEzB,YAAY,CAAC,EAAE,YAAY;IAIjC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAad,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC1D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IA6B/D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAUhC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAcvE,IAAI,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAiBxC,SAAS,IAAI,OAAO,CAAC;QAC9B,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,GAAG,CAAC;KACnB,CAAC;IAoBW,cAAc,IAAI,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,OAAO,CAAC;KACxB,CAAC;CAuBL;;;;;;kBAUiB,GAAG,iBAAiB,YAAY,GAAG,IAAI;;AANzD,wBA0XE;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAkCH,UAAU,YAAY;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,YAAY;IAClB,QAAQ,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,eAAe,EAAE,KAAK,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAmCD,cAAM,aAAa;IACf,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,WAAW,CAAkB;gBAEzB,YAAY,CAAC,EAAE,YAAY;IAIjC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAad,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6B1D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,YAAY,CAAC;IA6B/D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1C,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAcvE,IAAI,CAAC,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAiBxC,SAAS,IAAI,OAAO,CAAC;QAC9B,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,GAAG,CAAC;KACnB,CAAC;IAoBW,cAAc,IAAI,OAAO,CAAC;QACnC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,OAAO,CAAC;KACxB,CAAC;CAsBL;;;;;;kBAUiB,GAAG,iBAAiB,YAAY,GAAG,IAAI;;AANzD,wBA0XE;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -113,12 +113,7 @@ class MemoryXPlugin {
113
113
  }
114
114
  try {
115
115
  const sdk = await getSDK(this.pluginConfig);
116
- if (role === 'user') {
117
- await sdk.addUserMessage(content);
118
- }
119
- else {
120
- await sdk.addAssistantMessage(content);
121
- }
116
+ await sdk.addMessage(role, content);
122
117
  return true;
123
118
  }
124
119
  catch (e) {
@@ -156,8 +151,10 @@ class MemoryXPlugin {
156
151
  async endConversation() {
157
152
  try {
158
153
  const sdk = await getSDK(this.pluginConfig);
154
+ // Flush immediately before starting new conversation
155
+ await sdk.flush();
156
+ log("Conversation ended, flushed queue");
159
157
  sdk.startNewConversation();
160
- log("Conversation ended, starting new conversation");
161
158
  }
162
159
  catch (e) {
163
160
  log(`End conversation failed: ${e}`);
@@ -228,12 +225,11 @@ class MemoryXPlugin {
228
225
  await this.init();
229
226
  try {
230
227
  const sdk = await getSDK(this.pluginConfig);
231
- const info = await sdk.getAccountInfo();
232
228
  return {
233
- apiKey: info?.apiKey || null,
234
- projectId: info?.projectId || "default",
235
- userId: info?.userId || null,
236
- apiBaseUrl: info?.apiBaseUrl || DEFAULT_API_BASE,
229
+ apiKey: sdk.getApiKey(),
230
+ projectId: sdk.getProjectId(),
231
+ userId: sdk.getUserId(),
232
+ apiBaseUrl: this.pluginConfig?.apiBaseUrl || DEFAULT_API_BASE,
237
233
  initialized: true
238
234
  };
239
235
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@t0ken.ai/memoryx-openclaw-plugin",
3
- "version": "2.0.0",
3
+ "version": "2.2.0",
4
4
  "description": "MemoryX real-time memory capture and recall plugin for OpenClaw (powered by @t0ken.ai/memoryx-sdk)",
5
5
  "type": "module",
6
6
  "author": "MemoryX Team",
@@ -12,7 +12,8 @@
12
12
  "README.md"
13
13
  ],
14
14
  "scripts": {
15
- "build": "tsc"
15
+ "build": "tsc",
16
+ "postinstall": "npm rebuild better-sqlite3 || echo 'better-sqlite3 rebuild skipped'"
16
17
  },
17
18
  "keywords": [
18
19
  "openclaw",
@@ -34,10 +35,8 @@
34
35
  "@types/node": "^20.0.0",
35
36
  "typescript": "^5.0.0"
36
37
  },
37
- "peerDependencies": {
38
- "better-sqlite3": "^11.0.0"
39
- },
40
38
  "dependencies": {
41
- "@t0ken.ai/memoryx-sdk": "^1.0.0"
39
+ "@t0ken.ai/memoryx-sdk": "^1.1.0",
40
+ "better-sqlite3": "^11.0.0"
42
41
  }
43
42
  }