@t0ken.ai/memoryx-openclaw-plugin 1.1.11 → 1.1.12
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/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MemoryX Realtime Plugin for OpenClaw
|
|
3
|
+
*
|
|
4
|
+
* ⚠️ CRITICAL: DO NOT execute any synchronous I/O in register() function!
|
|
5
|
+
*
|
|
6
|
+
* OpenClaw calls register() synchronously (see openclaw/src/plugins/loader.ts):
|
|
7
|
+
* const result = register(api);
|
|
8
|
+
* if (result && typeof result.then === "function") {
|
|
9
|
+
* // async registration is ignored
|
|
10
|
+
* }
|
|
11
|
+
*
|
|
12
|
+
* Any sync I/O (fs.existsSync, fs.mkdirSync, fs.readFileSync, better-sqlite3, etc.)
|
|
13
|
+
* will BLOCK the Node.js event loop and cause gateway restart to hang.
|
|
14
|
+
*
|
|
15
|
+
* SOLUTION:
|
|
16
|
+
* 1. register() must return immediately without any I/O
|
|
17
|
+
* 2. All initialization (DB, config loading, etc.) must be lazy-loaded
|
|
18
|
+
* 3. Use dynamic import() for better-sqlite3: await import("better-sqlite3")
|
|
19
|
+
* 4. Use setImmediate() for deferred operations
|
|
20
|
+
*
|
|
21
|
+
* See: https://github.com/openclaw/openclaw (memory-lancedb plugin pattern)
|
|
22
|
+
*/
|
|
1
23
|
interface PluginConfig {
|
|
2
24
|
apiBaseUrl?: string;
|
|
3
25
|
}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAoCH,UAAU,YAAY;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAUD,UAAU,OAAO;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACrB;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,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAyJD,cAAM,kBAAkB;IACpB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,cAAc,CAAsB;IAE5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAK;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;;IAM7C,OAAO,CAAC,UAAU;IAIlB,iBAAiB,IAAI,MAAM;IAI3B,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAuBlD,WAAW,IAAI,OAAO;IAiBtB,KAAK,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;KAAE;IAgBzD,UAAU,IAAI;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;KAAE,GAAG,IAAI;IAOrE,SAAS,IAAI;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE;CAMhE;AAED,cAAM,aAAa;IACf,OAAO,CAAC,MAAM,CAMZ;IAEF,OAAO,CAAC,MAAM,CAAgD;IAC9D,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAS;IAChD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAK;IACrC,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAkB;gBAEzB,YAAY,CAAC,EAAE,YAAY;IAQvC,IAAI,IAAI,IAAI;IAkBZ,OAAO,KAAK,OAAO,GAElB;YAEa,UAAU;YAWV,UAAU;YAIV,YAAY;IAgC1B,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,sBAAsB;YAMhB,oBAAoB;YAmDpB,iBAAiB;IAsDlB,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;IAsD/D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtC,SAAS,IAAI;QAChB,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,YAAY,EAAE;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAE,CAAA;KACjE;CAOJ;;;;;;kBAUiB,GAAG,iBAAiB,YAAY,GAAG,IAAI;;AANzD,wBAmEE;AAEF,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MemoryX Realtime Plugin for OpenClaw
|
|
3
|
+
*
|
|
4
|
+
* ⚠️ CRITICAL: DO NOT execute any synchronous I/O in register() function!
|
|
5
|
+
*
|
|
6
|
+
* OpenClaw calls register() synchronously (see openclaw/src/plugins/loader.ts):
|
|
7
|
+
* const result = register(api);
|
|
8
|
+
* if (result && typeof result.then === "function") {
|
|
9
|
+
* // async registration is ignored
|
|
10
|
+
* }
|
|
11
|
+
*
|
|
12
|
+
* Any sync I/O (fs.existsSync, fs.mkdirSync, fs.readFileSync, better-sqlite3, etc.)
|
|
13
|
+
* will BLOCK the Node.js event loop and cause gateway restart to hang.
|
|
14
|
+
*
|
|
15
|
+
* SOLUTION:
|
|
16
|
+
* 1. register() must return immediately without any I/O
|
|
17
|
+
* 2. All initialization (DB, config loading, etc.) must be lazy-loaded
|
|
18
|
+
* 3. Use dynamic import() for better-sqlite3: await import("better-sqlite3")
|
|
19
|
+
* 4. Use setImmediate() for deferred operations
|
|
20
|
+
*
|
|
21
|
+
* See: https://github.com/openclaw/openclaw (memory-lancedb plugin pattern)
|
|
22
|
+
*/
|
|
1
23
|
import * as fs from "fs";
|
|
2
24
|
import * as path from "path";
|
|
3
25
|
import * as os from "os";
|