@memclaw/plugin 0.9.0 → 0.9.2
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 +23 -9
- package/dist/index.d.ts +100 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin-impl.d.ts +40 -0
- package/dist/plugin-impl.d.ts.map +1 -0
- package/dist/plugin-impl.js +445 -0
- package/dist/plugin-impl.js.map +1 -0
- package/dist/src/binaries.d.ts +29 -0
- package/dist/src/binaries.d.ts.map +1 -0
- package/dist/src/binaries.js +292 -0
- package/dist/src/binaries.js.map +1 -0
- package/dist/src/client.d.ts +88 -0
- package/dist/src/client.d.ts.map +1 -0
- package/dist/src/client.js +131 -0
- package/dist/src/client.js.map +1 -0
- package/dist/src/config.d.ts +50 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/config.js +257 -0
- package/dist/src/config.js.map +1 -0
- package/dist/src/migrate.d.ts +26 -0
- package/dist/src/migrate.d.ts.map +1 -0
- package/dist/src/migrate.js +287 -0
- package/dist/src/migrate.js.map +1 -0
- package/openclaw.plugin.json +70 -70
- package/package.json +2 -2
- package/skill/references/setup.md +2 -41
package/README.md
CHANGED
|
@@ -76,23 +76,37 @@ bun install
|
|
|
76
76
|
|
|
77
77
|
# Build the plugin
|
|
78
78
|
bun run build
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Option A: Use plugins.load.paths**
|
|
82
|
+
|
|
83
|
+
```json
|
|
84
|
+
{
|
|
85
|
+
"plugins": {
|
|
86
|
+
"load": {
|
|
87
|
+
"paths": ["/path/to/cortex-mem/examples/@memclaw/plugin"]
|
|
88
|
+
},
|
|
89
|
+
"entries": {
|
|
90
|
+
"memclaw": { "enabled": true }
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Option B: Symlink to extensions directory**
|
|
79
97
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
ln -sf "$(pwd)" ~/.openclaw/plugins/memclaw
|
|
98
|
+
```bash
|
|
99
|
+
mkdir -p ~/.openclaw/extensions
|
|
100
|
+
ln -sf "$(pwd)" ~/.openclaw/extensions/memclaw
|
|
84
101
|
```
|
|
85
102
|
|
|
86
|
-
Then
|
|
103
|
+
Then enable in `openclaw.json`:
|
|
87
104
|
|
|
88
105
|
```json
|
|
89
106
|
{
|
|
90
107
|
"plugins": {
|
|
91
108
|
"entries": {
|
|
92
|
-
"memclaw": {
|
|
93
|
-
"enabled": true,
|
|
94
|
-
"path": "./plugins/memclaw"
|
|
95
|
-
}
|
|
109
|
+
"memclaw": { "enabled": true }
|
|
96
110
|
}
|
|
97
111
|
}
|
|
98
112
|
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MemClaw - Layered Semantic Memory for OpenClaw
|
|
3
|
+
*
|
|
4
|
+
* Provides:
|
|
5
|
+
* - L0/L1/L2 tiered memory retrieval
|
|
6
|
+
* - Automatic service startup (Qdrant + cortex-mem-service)
|
|
7
|
+
* - Migration from OpenClaw native memory
|
|
8
|
+
*
|
|
9
|
+
* Installation:
|
|
10
|
+
* openclaw plugins install memclaw
|
|
11
|
+
*
|
|
12
|
+
* Configuration (in openclaw.json):
|
|
13
|
+
* {
|
|
14
|
+
* "plugins": {
|
|
15
|
+
* "entries": {
|
|
16
|
+
* "memclaw": {
|
|
17
|
+
* "enabled": true,
|
|
18
|
+
* "config": {
|
|
19
|
+
* "serviceUrl": "http://127.0.0.1:8085",
|
|
20
|
+
* "tenantId": "tenant_claw",
|
|
21
|
+
* "autoStartServices": true
|
|
22
|
+
* }
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* }
|
|
27
|
+
*/
|
|
28
|
+
export type { CortexMemClient } from './src/client.js';
|
|
29
|
+
export type { MemClawConfig } from './src/config.js';
|
|
30
|
+
interface PluginLogger {
|
|
31
|
+
debug?: (msg: string, ...args: unknown[]) => void;
|
|
32
|
+
info: (msg: string, ...args: unknown[]) => void;
|
|
33
|
+
warn: (msg: string, ...args: unknown[]) => void;
|
|
34
|
+
error: (msg: string, ...args: unknown[]) => void;
|
|
35
|
+
}
|
|
36
|
+
interface ToolDefinition {
|
|
37
|
+
name: string;
|
|
38
|
+
description: string;
|
|
39
|
+
parameters: object;
|
|
40
|
+
execute: (_id: string, params: Record<string, unknown>) => Promise<unknown>;
|
|
41
|
+
optional?: boolean;
|
|
42
|
+
}
|
|
43
|
+
interface PluginAPI {
|
|
44
|
+
pluginConfig?: Record<string, unknown>;
|
|
45
|
+
registerTool(tool: ToolDefinition, opts?: {
|
|
46
|
+
optional?: boolean;
|
|
47
|
+
}): void;
|
|
48
|
+
registerService(service: {
|
|
49
|
+
id: string;
|
|
50
|
+
start: () => Promise<void>;
|
|
51
|
+
stop: () => Promise<void>;
|
|
52
|
+
}): void;
|
|
53
|
+
logger: PluginLogger;
|
|
54
|
+
}
|
|
55
|
+
export default function memclawPlugin(api: PluginAPI): {
|
|
56
|
+
id: string;
|
|
57
|
+
name: string;
|
|
58
|
+
version: string;
|
|
59
|
+
};
|
|
60
|
+
export declare const plugin: {
|
|
61
|
+
id: string;
|
|
62
|
+
name: string;
|
|
63
|
+
version: string;
|
|
64
|
+
configSchema: {
|
|
65
|
+
type: string;
|
|
66
|
+
properties: {
|
|
67
|
+
serviceUrl: {
|
|
68
|
+
type: string;
|
|
69
|
+
default: string;
|
|
70
|
+
};
|
|
71
|
+
defaultSessionId: {
|
|
72
|
+
type: string;
|
|
73
|
+
default: string;
|
|
74
|
+
};
|
|
75
|
+
searchLimit: {
|
|
76
|
+
type: string;
|
|
77
|
+
default: number;
|
|
78
|
+
};
|
|
79
|
+
minScore: {
|
|
80
|
+
type: string;
|
|
81
|
+
default: number;
|
|
82
|
+
};
|
|
83
|
+
tenantId: {
|
|
84
|
+
type: string;
|
|
85
|
+
default: string;
|
|
86
|
+
};
|
|
87
|
+
autoStartServices: {
|
|
88
|
+
type: string;
|
|
89
|
+
default: boolean;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
required: never[];
|
|
93
|
+
};
|
|
94
|
+
register(api: PluginAPI): {
|
|
95
|
+
id: string;
|
|
96
|
+
name: string;
|
|
97
|
+
version: string;
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAKH,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,UAAU,YAAY;IACrB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACjD;AAED,UAAU,cAAc;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,SAAS;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACxE,eAAe,CAAC,OAAO,EAAE;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;KAC1B,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,YAAY,CAAC;CACrB;AAGD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,GAAG,EAAE,SAAS;;;;EAEnD;AAGD,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgBJ,SAAS;;;;;CAGvB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* MemClaw - Layered Semantic Memory for OpenClaw
|
|
4
|
+
*
|
|
5
|
+
* Provides:
|
|
6
|
+
* - L0/L1/L2 tiered memory retrieval
|
|
7
|
+
* - Automatic service startup (Qdrant + cortex-mem-service)
|
|
8
|
+
* - Migration from OpenClaw native memory
|
|
9
|
+
*
|
|
10
|
+
* Installation:
|
|
11
|
+
* openclaw plugins install memclaw
|
|
12
|
+
*
|
|
13
|
+
* Configuration (in openclaw.json):
|
|
14
|
+
* {
|
|
15
|
+
* "plugins": {
|
|
16
|
+
* "entries": {
|
|
17
|
+
* "memclaw": {
|
|
18
|
+
* "enabled": true,
|
|
19
|
+
* "config": {
|
|
20
|
+
* "serviceUrl": "http://127.0.0.1:8085",
|
|
21
|
+
* "tenantId": "tenant_claw",
|
|
22
|
+
* "autoStartServices": true
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* }
|
|
27
|
+
* }
|
|
28
|
+
*/
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.plugin = void 0;
|
|
31
|
+
exports.default = memclawPlugin;
|
|
32
|
+
const plugin_impl_js_1 = require("./plugin-impl.js");
|
|
33
|
+
// Default export - main plugin function
|
|
34
|
+
function memclawPlugin(api) {
|
|
35
|
+
return (0, plugin_impl_js_1.createPlugin)(api);
|
|
36
|
+
}
|
|
37
|
+
// Named export - object style registration
|
|
38
|
+
exports.plugin = {
|
|
39
|
+
id: 'memclaw',
|
|
40
|
+
name: 'MemClaw',
|
|
41
|
+
version: '0.9.2',
|
|
42
|
+
configSchema: {
|
|
43
|
+
type: 'object',
|
|
44
|
+
properties: {
|
|
45
|
+
serviceUrl: { type: 'string', default: 'http://localhost:8085' },
|
|
46
|
+
defaultSessionId: { type: 'string', default: 'default' },
|
|
47
|
+
searchLimit: { type: 'integer', default: 10 },
|
|
48
|
+
minScore: { type: 'number', default: 0.6 },
|
|
49
|
+
tenantId: { type: 'string', default: 'tenant_claw' },
|
|
50
|
+
autoStartServices: { type: 'boolean', default: true }
|
|
51
|
+
},
|
|
52
|
+
required: []
|
|
53
|
+
},
|
|
54
|
+
register(api) {
|
|
55
|
+
return (0, plugin_impl_js_1.createPlugin)(api);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;;;AAoCH,gCAEC;AApCD,qDAAgD;AAiChD,wCAAwC;AACxC,SAAwB,aAAa,CAAC,GAAc;IACnD,OAAO,IAAA,6BAAY,EAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,2CAA2C;AAC9B,QAAA,MAAM,GAAG;IACrB,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,OAAO;IAChB,YAAY,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACX,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE;YAChE,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE;YACxD,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;YAC7C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE;YAC1C,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;YACpD,iBAAiB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE;SACrD;QACD,QAAQ,EAAE,EAAE;KACZ;IACD,QAAQ,CAAC,GAAc;QACtB,OAAO,IAAA,6BAAY,EAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACD,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MemClaw Plugin Implementation
|
|
3
|
+
*
|
|
4
|
+
* Provides layered semantic memory for OpenClaw with:
|
|
5
|
+
* - Automatic service startup
|
|
6
|
+
* - Memory tools (search, recall, add, list, close)
|
|
7
|
+
* - Migration from OpenClaw native memory
|
|
8
|
+
*/
|
|
9
|
+
interface PluginLogger {
|
|
10
|
+
debug?: (msg: string, ...args: unknown[]) => void;
|
|
11
|
+
info: (msg: string, ...args: unknown[]) => void;
|
|
12
|
+
warn: (msg: string, ...args: unknown[]) => void;
|
|
13
|
+
error: (msg: string, ...args: unknown[]) => void;
|
|
14
|
+
}
|
|
15
|
+
interface ToolDefinition {
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
parameters: object;
|
|
19
|
+
execute: (_id: string, params: Record<string, unknown>) => Promise<unknown>;
|
|
20
|
+
optional?: boolean;
|
|
21
|
+
}
|
|
22
|
+
interface PluginAPI {
|
|
23
|
+
pluginConfig?: Record<string, unknown>;
|
|
24
|
+
registerTool(tool: ToolDefinition, opts?: {
|
|
25
|
+
optional?: boolean;
|
|
26
|
+
}): void;
|
|
27
|
+
registerService(service: {
|
|
28
|
+
id: string;
|
|
29
|
+
start: () => Promise<void>;
|
|
30
|
+
stop: () => Promise<void>;
|
|
31
|
+
}): void;
|
|
32
|
+
logger: PluginLogger;
|
|
33
|
+
}
|
|
34
|
+
export declare function createPlugin(api: PluginAPI): {
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
version: string;
|
|
38
|
+
};
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=plugin-impl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-impl.d.ts","sourceRoot":"","sources":["../plugin-impl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA8BH,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CAClD;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,SAAS;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACxE,eAAe,CAAC,OAAO,EAAE;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;KAC3B,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,YAAY,CAAC;CACtB;AAuJD,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS;;;;EAiW1C"}
|