@yun-zero/claw-memory 0.1.8 → 0.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/dist/config/plugin.d.ts.map +1 -1
- package/dist/config/plugin.js +5 -1
- package/dist/config/plugin.js.map +1 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +15 -0
- package/dist/plugin.js.map +1 -1
- package/openclaw.plugin.json +1 -6
- package/package.json +1 -1
- package/src/config/plugin.ts +6 -1
- package/src/plugin.ts +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/config/plugin.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AASD,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/config/plugin.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AASD,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,YAAY,CAwCpD"}
|
package/dist/config/plugin.js
CHANGED
|
@@ -9,6 +9,8 @@ function expandTilde(filepath) {
|
|
|
9
9
|
export function getConfig(config) {
|
|
10
10
|
// DEBUG: getConfig 调用日志
|
|
11
11
|
console.log('[ClawMemory] getConfig() called, input:', JSON.stringify(config));
|
|
12
|
+
console.log('[ClawMemory] config type:', typeof config);
|
|
13
|
+
console.log('[ClawMemory] config keys:', config ? Object.keys(config) : 'none');
|
|
12
14
|
const defaultConfig = {
|
|
13
15
|
enabled: true,
|
|
14
16
|
autoSave: false, // 默认禁用,避免问题
|
|
@@ -25,7 +27,7 @@ export function getConfig(config) {
|
|
|
25
27
|
if (!config) {
|
|
26
28
|
return defaultConfig;
|
|
27
29
|
}
|
|
28
|
-
|
|
30
|
+
const mergedConfig = {
|
|
29
31
|
enabled: config.enabled ?? defaultConfig.enabled,
|
|
30
32
|
autoSave: config.autoSave ?? defaultConfig.autoSave,
|
|
31
33
|
saveMode: config.saveMode ?? defaultConfig.saveMode,
|
|
@@ -38,5 +40,7 @@ export function getConfig(config) {
|
|
|
38
40
|
monthlyTime: config.scheduler?.monthlyTime ?? defaultConfig.scheduler.monthlyTime
|
|
39
41
|
}
|
|
40
42
|
};
|
|
43
|
+
console.log('[ClawMemory] Final merged config:', JSON.stringify(mergedConfig));
|
|
44
|
+
return mergedConfig;
|
|
41
45
|
}
|
|
42
46
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/config/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAgBxB,SAAS,WAAW,CAAC,QAAgB;IACnC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAY;IACpC,wBAAwB;IACxB,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/config/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAgBxB,SAAS,WAAW,CAAC,QAAgB;IACnC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAY;IACpC,wBAAwB;IACxB,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/E,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,OAAO,MAAM,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEhF,MAAM,aAAa,GAAiB;QAClC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,KAAK,EAAG,YAAY;QAC9B,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,WAAW,CAAC,yBAAyB,CAAC;QAC/C,SAAS,EAAE;YACT,OAAO,EAAE,KAAK,EAAG,YAAY;YAC7B,eAAe,EAAE,OAAO;YACxB,SAAS,EAAE,OAAO;YAClB,UAAU,EAAE,OAAO;YACnB,WAAW,EAAE,OAAO;SACrB;KACF,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO;QAChD,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ;QACnD,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ;QACnD,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC;QAC7D,SAAS,EAAE;YACT,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,OAAO;YACrE,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE,eAAe,IAAI,aAAa,CAAC,SAAS,CAAC,eAAe;YAC7F,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,IAAI,aAAa,CAAC,SAAS,CAAC,SAAS;YAC3E,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,IAAI,aAAa,CAAC,SAAS,CAAC,UAAU;YAC9E,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,IAAI,aAAa,CAAC,SAAS,CAAC,WAAW;SAClF;KACF,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/E,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAKtD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChF,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAKtD,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAChF,YAAY,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,GAAG,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,cAAc,CA8EzD;;AAGD,wBAA8B"}
|
package/dist/plugin.js
CHANGED
|
@@ -25,14 +25,23 @@ export function createPlugin(config) {
|
|
|
25
25
|
const db = getDatabase(pluginConfig.dataDir + '/memory.db');
|
|
26
26
|
// 注册 message:sent hook
|
|
27
27
|
api.registerHook('message:sent', async (event) => {
|
|
28
|
+
console.log('[ClawMemory] message:sent hook triggered');
|
|
29
|
+
console.log('[ClawMemory] autoSave:', pluginConfig.autoSave);
|
|
30
|
+
console.log('[ClawMemory] event type:', event?.type);
|
|
31
|
+
console.log('[ClawMemory] event content:', event?.content?.substring(0, 100));
|
|
28
32
|
if (pluginConfig.autoSave) {
|
|
33
|
+
console.log('[ClawMemory] autoSave enabled, processing message...');
|
|
29
34
|
try {
|
|
30
35
|
await handleMessageSent(event, db, pluginConfig.dataDir);
|
|
36
|
+
console.log('[ClawMemory] Message saved successfully');
|
|
31
37
|
}
|
|
32
38
|
catch (error) {
|
|
33
39
|
console.error('[ClawMemory] Failed to save memory:', error);
|
|
34
40
|
}
|
|
35
41
|
}
|
|
42
|
+
else {
|
|
43
|
+
console.log('[ClawMemory] autoSave disabled, skipping');
|
|
44
|
+
}
|
|
36
45
|
});
|
|
37
46
|
// 注册 agent:bootstrap hook
|
|
38
47
|
api.registerHook('agent:bootstrap', async (event) => {
|
|
@@ -51,15 +60,21 @@ export function createPlugin(config) {
|
|
|
51
60
|
// 注册 Agent Tools
|
|
52
61
|
registerMemoryTools({ register: api.registerTool }, db, pluginConfig.dataDir);
|
|
53
62
|
// 启动 Scheduler
|
|
63
|
+
console.log('[ClawMemory] scheduler.enabled:', pluginConfig.scheduler.enabled);
|
|
54
64
|
if (pluginConfig.scheduler.enabled) {
|
|
65
|
+
console.log('[ClawMemory] Starting scheduler...');
|
|
55
66
|
try {
|
|
56
67
|
const scheduler = new Scheduler(db, pluginConfig.scheduler);
|
|
57
68
|
scheduler.start();
|
|
69
|
+
console.log('[ClawMemory] Scheduler started');
|
|
58
70
|
}
|
|
59
71
|
catch (error) {
|
|
60
72
|
console.error('[ClawMemory] Failed to start scheduler:', error);
|
|
61
73
|
}
|
|
62
74
|
}
|
|
75
|
+
else {
|
|
76
|
+
console.log('[ClawMemory] Scheduler disabled, not starting');
|
|
77
|
+
}
|
|
63
78
|
console.log('[ClawMemory] Started successfully');
|
|
64
79
|
}
|
|
65
80
|
};
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAgB,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAGpD,gBAAgB;AAChB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;AAc9D,MAAM,UAAU,YAAY,CAAC,MAAY;IACvC,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,OAAO;QAEhB,KAAK,CAAC,QAAQ,CAAC,GAA0B;YACvC,yBAAyB;YACzB,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;YAExE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;gBAC5C,OAAO;YACT,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YAExC,SAAS;YACT,MAAM,EAAE,GAAG,WAAW,CAAC,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;YAE5D,uBAAuB;YACvB,GAAG,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE,KAAU,EAAE,EAAE;gBACpD,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC1B,IAAI,CAAC;wBACH,MAAM,iBAAiB,CAAC,KAAK,EAAE,EAAE,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "claw-memory",
|
|
3
3
|
"name": "ClawMemory",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.2.0",
|
|
5
5
|
"description": "AI memory system - auto-save conversations and inject memory summary",
|
|
6
|
-
"main": "./dist/index.js",
|
|
7
6
|
"configSchema": {
|
|
8
7
|
"type": "object",
|
|
9
8
|
"additionalProperties": false,
|
|
10
9
|
"properties": {}
|
|
11
|
-
},
|
|
12
|
-
"dependencies": {},
|
|
13
|
-
"scripts": {
|
|
14
|
-
"build": "tsc"
|
|
15
10
|
}
|
|
16
11
|
}
|
package/package.json
CHANGED
package/src/config/plugin.ts
CHANGED
|
@@ -25,6 +25,8 @@ function expandTilde(filepath: string): string {
|
|
|
25
25
|
export function getConfig(config?: any): PluginConfig {
|
|
26
26
|
// DEBUG: getConfig 调用日志
|
|
27
27
|
console.log('[ClawMemory] getConfig() called, input:', JSON.stringify(config));
|
|
28
|
+
console.log('[ClawMemory] config type:', typeof config);
|
|
29
|
+
console.log('[ClawMemory] config keys:', config ? Object.keys(config) : 'none');
|
|
28
30
|
|
|
29
31
|
const defaultConfig: PluginConfig = {
|
|
30
32
|
enabled: true,
|
|
@@ -44,7 +46,7 @@ export function getConfig(config?: any): PluginConfig {
|
|
|
44
46
|
return defaultConfig;
|
|
45
47
|
}
|
|
46
48
|
|
|
47
|
-
|
|
49
|
+
const mergedConfig = {
|
|
48
50
|
enabled: config.enabled ?? defaultConfig.enabled,
|
|
49
51
|
autoSave: config.autoSave ?? defaultConfig.autoSave,
|
|
50
52
|
saveMode: config.saveMode ?? defaultConfig.saveMode,
|
|
@@ -57,4 +59,7 @@ export function getConfig(config?: any): PluginConfig {
|
|
|
57
59
|
monthlyTime: config.scheduler?.monthlyTime ?? defaultConfig.scheduler.monthlyTime
|
|
58
60
|
}
|
|
59
61
|
};
|
|
62
|
+
|
|
63
|
+
console.log('[ClawMemory] Final merged config:', JSON.stringify(mergedConfig));
|
|
64
|
+
return mergedConfig;
|
|
60
65
|
}
|
package/src/plugin.ts
CHANGED
|
@@ -46,12 +46,21 @@ export function createPlugin(config?: any): OpenClawPlugin {
|
|
|
46
46
|
|
|
47
47
|
// 注册 message:sent hook
|
|
48
48
|
api.registerHook('message:sent', async (event: any) => {
|
|
49
|
+
console.log('[ClawMemory] message:sent hook triggered');
|
|
50
|
+
console.log('[ClawMemory] autoSave:', pluginConfig.autoSave);
|
|
51
|
+
console.log('[ClawMemory] event type:', event?.type);
|
|
52
|
+
console.log('[ClawMemory] event content:', event?.content?.substring(0, 100));
|
|
53
|
+
|
|
49
54
|
if (pluginConfig.autoSave) {
|
|
55
|
+
console.log('[ClawMemory] autoSave enabled, processing message...');
|
|
50
56
|
try {
|
|
51
57
|
await handleMessageSent(event, db, pluginConfig.dataDir);
|
|
58
|
+
console.log('[ClawMemory] Message saved successfully');
|
|
52
59
|
} catch (error) {
|
|
53
60
|
console.error('[ClawMemory] Failed to save memory:', error);
|
|
54
61
|
}
|
|
62
|
+
} else {
|
|
63
|
+
console.log('[ClawMemory] autoSave disabled, skipping');
|
|
55
64
|
}
|
|
56
65
|
});
|
|
57
66
|
|
|
@@ -73,13 +82,18 @@ export function createPlugin(config?: any): OpenClawPlugin {
|
|
|
73
82
|
registerMemoryTools({ register: api.registerTool }, db, pluginConfig.dataDir);
|
|
74
83
|
|
|
75
84
|
// 启动 Scheduler
|
|
85
|
+
console.log('[ClawMemory] scheduler.enabled:', pluginConfig.scheduler.enabled);
|
|
76
86
|
if (pluginConfig.scheduler.enabled) {
|
|
87
|
+
console.log('[ClawMemory] Starting scheduler...');
|
|
77
88
|
try {
|
|
78
89
|
const scheduler = new Scheduler(db, pluginConfig.scheduler);
|
|
79
90
|
scheduler.start();
|
|
91
|
+
console.log('[ClawMemory] Scheduler started');
|
|
80
92
|
} catch (error) {
|
|
81
93
|
console.error('[ClawMemory] Failed to start scheduler:', error);
|
|
82
94
|
}
|
|
95
|
+
} else {
|
|
96
|
+
console.log('[ClawMemory] Scheduler disabled, not starting');
|
|
83
97
|
}
|
|
84
98
|
|
|
85
99
|
console.log('[ClawMemory] Started successfully');
|