@keyoku/openclaw 1.4.2 → 1.4.3
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/bin/update-engine.js
CHANGED
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental-capture.d.ts","sourceRoot":"","sources":["../src/incremental-capture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"incremental-capture.d.ts","sourceRoot":"","sources":["../src/incremental-capture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA6D3D,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC7B,IAAI,CAuRN"}
|
|
@@ -19,6 +19,12 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { looksLikePromptInjection } from './capture.js';
|
|
21
21
|
import { stripInboundMetadata } from './inbound-metadata.js';
|
|
22
|
+
function logCaptureDiagnostic(api, eventName, fields) {
|
|
23
|
+
const parts = Object.entries(fields)
|
|
24
|
+
.filter(([, value]) => value !== undefined)
|
|
25
|
+
.map(([key, value]) => `${key}=${String(value)}`);
|
|
26
|
+
api.logger.info(`keyoku: TEMP capture_diag event=${eventName}${parts.length ? ` ${parts.join(' ')}` : ''}`);
|
|
27
|
+
}
|
|
22
28
|
function stripInjectedBlocks(text) {
|
|
23
29
|
return text
|
|
24
30
|
.replace(/<your-memories>[\s\S]*?<\/your-memories>/gi, '')
|
|
@@ -58,6 +64,7 @@ function cleanPromptForCapture(prompt) {
|
|
|
58
64
|
return withoutInjected.replace(/\n{3,}/g, '\n\n').trim();
|
|
59
65
|
}
|
|
60
66
|
export function registerIncrementalCapture(api, client, resolver, agentId, config) {
|
|
67
|
+
api.logger.info(`keyoku: TEMP capture diagnostics registered (hook=incremental entityBase=${config.entityId || 'default'} agentId=${agentId} captureMaxChars=${config.captureMaxChars})`);
|
|
61
68
|
// Stash for the most recent user prompt, paired with the next assistant response
|
|
62
69
|
let pendingUserPrompt = null;
|
|
63
70
|
let pendingEntityId = null;
|
|
@@ -68,47 +75,121 @@ export function registerIncrementalCapture(api, client, resolver, agentId, confi
|
|
|
68
75
|
// Step 1: Stash user prompt (no API call yet)
|
|
69
76
|
api.on('before_prompt_build', async (event) => {
|
|
70
77
|
const ev = event;
|
|
78
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
79
|
+
fired: true,
|
|
80
|
+
messages: ev.messages?.length ?? 0,
|
|
81
|
+
prompt_len: ev.prompt?.length ?? 0,
|
|
82
|
+
});
|
|
71
83
|
if (!ev.prompt && (!ev.messages || ev.messages.length === 0)) {
|
|
72
84
|
clearPending();
|
|
85
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
86
|
+
skipped: true,
|
|
87
|
+
reason: 'empty_event',
|
|
88
|
+
remember: 'no',
|
|
89
|
+
});
|
|
73
90
|
return;
|
|
74
91
|
}
|
|
75
92
|
if (!resolver.isAllowed(ev, 'capture')) {
|
|
76
93
|
clearPending();
|
|
94
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
95
|
+
skipped: true,
|
|
96
|
+
reason: 'capture_not_allowed',
|
|
97
|
+
remember: 'no',
|
|
98
|
+
});
|
|
77
99
|
return;
|
|
78
100
|
}
|
|
79
|
-
const
|
|
101
|
+
const userMessage = extractLatestUserMessage(ev.messages).trim();
|
|
102
|
+
const promptFallback = cleanPromptForCapture(ev.prompt ?? '');
|
|
103
|
+
const userContent = userMessage || promptFallback;
|
|
104
|
+
const source = userMessage ? 'messages' : 'prompt_fallback';
|
|
105
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
106
|
+
source,
|
|
107
|
+
user_len: userContent.length,
|
|
108
|
+
});
|
|
80
109
|
if (!userContent || userContent.length < 10) {
|
|
81
110
|
clearPending();
|
|
111
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
112
|
+
skipped: true,
|
|
113
|
+
reason: !userContent ? 'empty_user_content' : 'user_content_too_short',
|
|
114
|
+
source,
|
|
115
|
+
user_len: userContent.length,
|
|
116
|
+
remember: 'no',
|
|
117
|
+
});
|
|
82
118
|
return;
|
|
83
119
|
}
|
|
84
120
|
// Don't stash heartbeat prompts or injected blocks
|
|
85
121
|
if (userContent.includes('HEARTBEAT')) {
|
|
86
122
|
clearPending();
|
|
123
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
124
|
+
skipped: true,
|
|
125
|
+
reason: 'heartbeat_prompt',
|
|
126
|
+
source,
|
|
127
|
+
user_len: userContent.length,
|
|
128
|
+
remember: 'no',
|
|
129
|
+
});
|
|
87
130
|
return;
|
|
88
131
|
}
|
|
89
132
|
if (userContent.includes('<your-memories>') || userContent.includes('<heartbeat-signals>')) {
|
|
90
133
|
clearPending();
|
|
134
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
135
|
+
skipped: true,
|
|
136
|
+
reason: 'injected_memory_or_heartbeat_block',
|
|
137
|
+
source,
|
|
138
|
+
user_len: userContent.length,
|
|
139
|
+
remember: 'no',
|
|
140
|
+
});
|
|
91
141
|
return;
|
|
92
142
|
}
|
|
93
143
|
if (userContent.length > config.captureMaxChars) {
|
|
94
144
|
clearPending();
|
|
145
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
146
|
+
skipped: true,
|
|
147
|
+
reason: 'user_content_too_long',
|
|
148
|
+
source,
|
|
149
|
+
user_len: userContent.length,
|
|
150
|
+
max_len: config.captureMaxChars,
|
|
151
|
+
remember: 'no',
|
|
152
|
+
});
|
|
95
153
|
return;
|
|
96
154
|
}
|
|
97
155
|
if (looksLikePromptInjection(userContent)) {
|
|
98
156
|
clearPending();
|
|
157
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
158
|
+
skipped: true,
|
|
159
|
+
reason: 'prompt_injection_detected',
|
|
160
|
+
source,
|
|
161
|
+
user_len: userContent.length,
|
|
162
|
+
remember: 'no',
|
|
163
|
+
});
|
|
99
164
|
return;
|
|
100
165
|
}
|
|
101
166
|
pendingUserPrompt = userContent;
|
|
102
167
|
pendingEntityId = resolver.resolve(ev, 'capture');
|
|
168
|
+
logCaptureDiagnostic(api, 'before_prompt_build', {
|
|
169
|
+
skipped: false,
|
|
170
|
+
pending: true,
|
|
171
|
+
source,
|
|
172
|
+
user_len: userContent.length,
|
|
173
|
+
entity_id: pendingEntityId,
|
|
174
|
+
remember: 'no',
|
|
175
|
+
});
|
|
103
176
|
}, { priority: -10 }); // Low priority — runs after auto-recall
|
|
104
177
|
// Step 2: On agent_end, extract the last assistant response and pair with stashed prompt
|
|
105
178
|
api.on('agent_end', async (event) => {
|
|
106
179
|
const ev = event;
|
|
180
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
181
|
+
fired: true,
|
|
182
|
+
messages: ev.messages?.length ?? 0,
|
|
183
|
+
output_len: ev.output?.length ?? 0,
|
|
184
|
+
pending_user: Boolean(pendingUserPrompt),
|
|
185
|
+
});
|
|
107
186
|
// Extract assistant response from the event
|
|
108
187
|
let assistantContent = '';
|
|
188
|
+
let assistantSource = 'none';
|
|
109
189
|
// Try output first (some agent modes provide this)
|
|
110
190
|
if (ev.output) {
|
|
111
191
|
assistantContent = ev.output;
|
|
192
|
+
assistantSource = 'output';
|
|
112
193
|
}
|
|
113
194
|
// Fall back to last assistant message
|
|
114
195
|
if (!assistantContent && ev.messages) {
|
|
@@ -125,34 +206,72 @@ export function registerIncrementalCapture(api, client, resolver, agentId, confi
|
|
|
125
206
|
.map((b) => b.text)
|
|
126
207
|
.join(' ');
|
|
127
208
|
}
|
|
128
|
-
if (assistantContent)
|
|
209
|
+
if (assistantContent) {
|
|
210
|
+
assistantSource = 'messages';
|
|
129
211
|
break;
|
|
212
|
+
}
|
|
130
213
|
}
|
|
131
214
|
}
|
|
132
215
|
if (!assistantContent || assistantContent.length < 20) {
|
|
133
216
|
clearPending();
|
|
217
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
218
|
+
skipped: true,
|
|
219
|
+
reason: !assistantContent ? 'empty_assistant_content' : 'assistant_content_too_short',
|
|
220
|
+
assistant_source: assistantSource,
|
|
221
|
+
assistant_len: assistantContent.length,
|
|
222
|
+
remember: 'no',
|
|
223
|
+
});
|
|
134
224
|
return;
|
|
135
225
|
}
|
|
136
226
|
if (!resolver.isAllowed(ev, 'capture')) {
|
|
137
227
|
clearPending();
|
|
228
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
229
|
+
skipped: true,
|
|
230
|
+
reason: 'capture_not_allowed',
|
|
231
|
+
assistant_source: assistantSource,
|
|
232
|
+
assistant_len: assistantContent.length,
|
|
233
|
+
remember: 'no',
|
|
234
|
+
});
|
|
138
235
|
return;
|
|
139
236
|
}
|
|
140
237
|
// Skip heartbeat/memory noise
|
|
141
238
|
if (assistantContent === 'HEARTBEAT_OK' || assistantContent === 'NO_REPLY') {
|
|
142
239
|
clearPending();
|
|
240
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
241
|
+
skipped: true,
|
|
242
|
+
reason: 'heartbeat_or_no_reply',
|
|
243
|
+
assistant_source: assistantSource,
|
|
244
|
+
assistant_len: assistantContent.length,
|
|
245
|
+
remember: 'no',
|
|
246
|
+
});
|
|
143
247
|
return;
|
|
144
248
|
}
|
|
145
249
|
if (assistantContent.includes('<heartbeat-signals>') ||
|
|
146
250
|
assistantContent.includes('<your-memories>')) {
|
|
147
251
|
clearPending();
|
|
252
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
253
|
+
skipped: true,
|
|
254
|
+
reason: 'assistant_contains_injected_blocks',
|
|
255
|
+
assistant_source: assistantSource,
|
|
256
|
+
assistant_len: assistantContent.length,
|
|
257
|
+
remember: 'no',
|
|
258
|
+
});
|
|
148
259
|
return;
|
|
149
260
|
}
|
|
150
261
|
if (looksLikePromptInjection(assistantContent)) {
|
|
151
262
|
clearPending();
|
|
263
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
264
|
+
skipped: true,
|
|
265
|
+
reason: 'prompt_injection_detected',
|
|
266
|
+
assistant_source: assistantSource,
|
|
267
|
+
assistant_len: assistantContent.length,
|
|
268
|
+
remember: 'no',
|
|
269
|
+
});
|
|
152
270
|
return;
|
|
153
271
|
}
|
|
154
272
|
// Build the exchange: user prompt + assistant response
|
|
155
273
|
let exchange;
|
|
274
|
+
const mode = pendingUserPrompt ? 'paired' : 'assistant-only';
|
|
156
275
|
if (pendingUserPrompt) {
|
|
157
276
|
exchange = `User: ${pendingUserPrompt}\n\nAssistant: ${assistantContent}`;
|
|
158
277
|
pendingUserPrompt = null; // consumed
|
|
@@ -167,15 +286,29 @@ export function registerIncrementalCapture(api, client, resolver, agentId, confi
|
|
|
167
286
|
}
|
|
168
287
|
const resolvedEntityId = pendingEntityId ?? resolver.resolve(ev, 'capture');
|
|
169
288
|
pendingEntityId = null;
|
|
289
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
290
|
+
skipped: false,
|
|
291
|
+
mode,
|
|
292
|
+
entity_id: resolvedEntityId,
|
|
293
|
+
assistant_source: assistantSource,
|
|
294
|
+
assistant_len: assistantContent.length,
|
|
295
|
+
exchange_len: exchange.length,
|
|
296
|
+
remember: 'call',
|
|
297
|
+
});
|
|
170
298
|
try {
|
|
171
299
|
await client.remember(resolvedEntityId, exchange, {
|
|
172
300
|
agent_id: agentId,
|
|
173
301
|
source: 'conversation',
|
|
174
302
|
});
|
|
175
|
-
api
|
|
303
|
+
logCaptureDiagnostic(api, 'agent_end', {
|
|
304
|
+
mode,
|
|
305
|
+
entity_id: resolvedEntityId,
|
|
306
|
+
exchange_len: exchange.length,
|
|
307
|
+
remember: 'success',
|
|
308
|
+
});
|
|
176
309
|
}
|
|
177
310
|
catch (err) {
|
|
178
|
-
api.logger.warn(`keyoku:
|
|
311
|
+
api.logger.warn(`keyoku: TEMP capture_diag event=agent_end mode=${mode} entity_id=${resolvedEntityId} exchange_len=${exchange.length} remember=failed error=${String(err)}`);
|
|
179
312
|
}
|
|
180
313
|
});
|
|
181
314
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incremental-capture.js","sourceRoot":"","sources":["../src/incremental-capture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAGxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAY7D,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,IAAI;SACR,OAAO,CAAC,4CAA4C,EAAE,EAAE,CAAC;SACzD,OAAO,CAAC,oDAAoD,EAAE,EAAE,CAAC;SACjE,OAAO,CAAC,oDAAoD,EAAE,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,eAAe,
|
|
1
|
+
{"version":3,"file":"incremental-capture.js","sourceRoot":"","sources":["../src/incremental-capture.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,aAAa,CAAC;AAO/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY;;;;;kBAOxC,SAAS;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,aAAa,CAAC;AAO/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY;;;;;kBAOxC,SAAS;EA2C1B"}
|
package/dist/index.js
CHANGED
|
@@ -41,6 +41,7 @@ export default function keyokuMemory(config) {
|
|
|
41
41
|
timeout: 60000,
|
|
42
42
|
});
|
|
43
43
|
api.logger.debug?.(`keyoku: plugin registered (url: ${cfg.keyokuUrl}, entityBase: ${entityId}, strategy: ${cfg.entityStrategy})`);
|
|
44
|
+
api.logger.info(`keyoku: TEMP capture diagnostics enabled (plugin=keyoku-memory incrementalCapture=${cfg.incrementalCapture} url=${cfg.keyokuUrl} entityBase=${entityId} strategy=${cfg.entityStrategy})`);
|
|
44
45
|
// Register 6 memory/schedule tools
|
|
45
46
|
registerTools(api, client, resolver, agentId);
|
|
46
47
|
// Register lifecycle hooks (auto-recall, heartbeat, auto-capture)
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAqB,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAqB;IACxD,OAAO;QACL,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4EAA4E;QACzF,IAAI,EAAE,QAAiB;QAEvB,QAAQ,CAAC,GAAc;YACrB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YAElC,2BAA2B;YAC3B,uFAAuF;YACvF,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAC;YAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;YACzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAEjE,gFAAgF;YAChF,6EAA6E;YAC7E,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;gBAC9B,OAAO,EAAE,GAAG,CAAC,SAAS;gBACtB,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB;gBAC7C,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAChB,mCAAmC,GAAG,CAAC,SAAS,iBAAiB,QAAQ,eAAe,GAAG,CAAC,cAAc,GAAG,CAC9G,CAAC;YAEF,mCAAmC;YACnC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE9C,kEAAkE;YAClE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAEnD,2CAA2C;YAC3C,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;YAEpC,2BAA2B;YAC3B,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEnC,2CAA2C;YAC3C,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAClE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAqB,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAI5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAqB;IACxD,OAAO;QACL,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4EAA4E;QACzF,IAAI,EAAE,QAAiB;QAEvB,QAAQ,CAAC,GAAc;YACrB,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YAElC,2BAA2B;YAC3B,uFAAuF;YACvF,0CAA0C;YAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAC;YAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;YACzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAEjE,gFAAgF;YAChF,6EAA6E;YAC7E,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;gBAC9B,OAAO,EAAE,GAAG,CAAC,SAAS;gBACtB,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB;gBAC7C,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAChB,mCAAmC,GAAG,CAAC,SAAS,iBAAiB,QAAQ,eAAe,GAAG,CAAC,cAAc,GAAG,CAC9G,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,IAAI,CACb,qFAAqF,GAAG,CAAC,kBAAkB,QAAQ,GAAG,CAAC,SAAS,eAAe,QAAQ,aAAa,GAAG,CAAC,cAAc,GAAG,CAC1L,CAAC;YAEF,mCAAmC;YACnC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE9C,kEAAkE;YAClE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAEnD,2CAA2C;YAC3C,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;YAEpC,2BAA2B;YAC3B,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEnC,2CAA2C;YAC3C,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keyoku/openclaw",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.3",
|
|
4
4
|
"description": "Keyoku memory plugin for OpenClaw — persistent memory, heartbeat enhancement, and scheduling",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"build": "tsc"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@keyoku/memory": "1.4.
|
|
17
|
-
"@keyoku/types": "1.4.
|
|
16
|
+
"@keyoku/memory": "1.4.3",
|
|
17
|
+
"@keyoku/types": "1.4.3",
|
|
18
18
|
"@sinclair/typebox": "^0.34.0"
|
|
19
19
|
},
|
|
20
20
|
"peerDependencies": {
|