shieldcortex 2.4.10 → 2.4.13
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/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
- package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
- package/dashboard/.next/standalone/dashboard/.next/prerender-manifest.json +3 -3
- package/dashboard/.next/standalone/dashboard/.next/required-server-files.json +4 -4
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.js +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.json +1 -1
- package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/README.md +2 -2
- package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/lib/glib-2.0/include/glibconfig.h +9 -8
- package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64/lib/libvips-cpp.8.17.3.dylib → sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3} +0 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/package.json +11 -5
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +221 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-darwin-arm64 → sharp-linux-x64}/package.json +13 -7
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
- package/dashboard/.next/standalone/dashboard/server.js +1 -1
- package/dashboard/.next/standalone/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/package.json +11 -5
- package/dashboard/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
- package/dashboard/.next/standalone/node_modules/@img/{sharp-darwin-arm64 → sharp-linux-x64}/package.json +13 -7
- package/dashboard/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
- package/dist/api/visualization-server.js +4 -4
- package/dist/api/visualization-server.js.map +1 -1
- package/dist/defence/__tests__/env-detector.test.js +2 -1
- package/dist/defence/__tests__/env-detector.test.js.map +1 -1
- package/dist/defence/firewall/anomaly-scorer.d.ts.map +1 -1
- package/dist/defence/firewall/anomaly-scorer.js +34 -0
- package/dist/defence/firewall/anomaly-scorer.js.map +1 -1
- package/dist/defence/firewall/index.js +21 -3
- package/dist/defence/firewall/index.js.map +1 -1
- package/dist/defence/firewall/instruction-detector.d.ts.map +1 -1
- package/dist/defence/firewall/instruction-detector.js +17 -5
- package/dist/defence/firewall/instruction-detector.js.map +1 -1
- package/dist/defence/fragmentation/temporal-analyzer.d.ts +1 -1
- package/dist/defence/fragmentation/temporal-analyzer.d.ts.map +1 -1
- package/dist/defence/fragmentation/temporal-analyzer.js +4 -3
- package/dist/defence/fragmentation/temporal-analyzer.js.map +1 -1
- package/dist/defence/pipeline.d.ts +1 -1
- package/dist/defence/pipeline.js +15 -15
- package/dist/defence/pipeline.js.map +1 -1
- package/dist/defence/trust/env-detector.d.ts +1 -1
- package/dist/defence/trust/env-detector.js +3 -3
- package/dist/defence/trust/env-detector.js.map +1 -1
- package/dist/defence/types.d.ts +1 -1
- package/dist/defence/types.d.ts.map +1 -1
- package/dist/defence/types.js.map +1 -1
- package/dist/index.js +42 -9
- package/dist/index.js.map +1 -1
- package/dist/integrations/langchain.d.ts +6 -2
- package/dist/integrations/langchain.d.ts.map +1 -1
- package/dist/integrations/langchain.js +14 -4
- package/dist/integrations/langchain.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +5 -2
- package/dist/server.js.map +1 -1
- package/dist/tools/remember.d.ts +5 -5
- package/dist/tools/remember.d.ts.map +1 -1
- package/dist/tools/remember.js +25 -10
- package/dist/tools/remember.js.map +1 -1
- package/hooks/openclaw/cortex-memory/HOOK.md +30 -2
- package/hooks/openclaw/cortex-memory/handler.js +142 -36
- package/package.json +1 -1
- package/dashboard/.next/standalone/dashboard/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64.node +0 -0
- package/dist/setup/clawdbot.d.ts +0 -15
- package/dist/setup/clawdbot.d.ts.map +0 -1
- package/dist/setup/clawdbot.js +0 -118
- package/dist/setup/clawdbot.js.map +0 -1
- /package/dashboard/.next/standalone/dashboard/.next/static/{iswq9TJJVHZDUWYSMMM-2 → sxZYns1tvtphU9mDWg3i2}/_buildManifest.js +0 -0
- /package/dashboard/.next/standalone/dashboard/.next/static/{iswq9TJJVHZDUWYSMMM-2 → sxZYns1tvtphU9mDWg3i2}/_clientMiddlewareManifest.json +0 -0
- /package/dashboard/.next/standalone/dashboard/.next/static/{iswq9TJJVHZDUWYSMMM-2 → sxZYns1tvtphU9mDWg3i2}/_ssgManifest.js +0 -0
- /package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/lib/index.js +0 -0
- /package/dashboard/.next/standalone/dashboard/node_modules/@img/{sharp-libvips-darwin-arm64 → sharp-libvips-linux-x64}/versions.json +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remember.js","sourceRoot":"","sources":["../../src/tools/remember.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC7H,OAAO,EAAqB,sBAAsB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEnG,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,qCAAqC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC9D,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC;QACf,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO;QAChD,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ;KAChE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC5E,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC7D,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACzE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACxE,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;SACjE,QAAQ,CAAC,uCAAuC,CAAC;IACpD,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC5C,QAAQ,CAAC,2DAA2D,CAAC;IACxE,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;SACjC,QAAQ,CAAC,0DAA0D,CAAC;IACvE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"remember.js","sourceRoot":"","sources":["../../src/tools/remember.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,8 +37,36 @@ Integrates [ShieldCortex](https://github.com/Drakon-Systems-Ltd/ShieldCortex) pe
|
|
|
37
37
|
3. Agent starts with knowledge of past sessions
|
|
38
38
|
|
|
39
39
|
### Keyword Triggers
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
|
|
41
|
+
Say any of these phrases to trigger an instant save to Cortex memory:
|
|
42
|
+
|
|
43
|
+
| Trigger Phrase | Category | Importance |
|
|
44
|
+
|---------------|----------|------------|
|
|
45
|
+
| **"remember this"** | note | critical |
|
|
46
|
+
| **"don't forget"** | note | critical |
|
|
47
|
+
| **"this is important"** | note | critical |
|
|
48
|
+
| **"make a note"** | note | critical |
|
|
49
|
+
| **"for the record"** | note | critical |
|
|
50
|
+
| **"note to self"** | note | critical |
|
|
51
|
+
| **"important:"** | note | critical |
|
|
52
|
+
| **"crucial:"** | note | critical |
|
|
53
|
+
| **"key point:"** | note | high |
|
|
54
|
+
| **"lesson learned"** | learning | high |
|
|
55
|
+
| **"i learned"** | learning | normal |
|
|
56
|
+
| **"TIL:"** | learning | normal |
|
|
57
|
+
| **"today i learned"** | learning | normal |
|
|
58
|
+
| **"never again"** | error | critical |
|
|
59
|
+
| **"root cause was"** | error | high |
|
|
60
|
+
| **"the fix was"** | error | high |
|
|
61
|
+
| **"always do"** | preference | high |
|
|
62
|
+
| **"never do"** | preference | high |
|
|
63
|
+
| **"i prefer"** | preference | normal |
|
|
64
|
+
| **"we should always"** | preference | high |
|
|
65
|
+
| **"we decided"** | architecture | high |
|
|
66
|
+
| **"decision made"** | architecture | high |
|
|
67
|
+
| **"going with"** | architecture | normal |
|
|
68
|
+
|
|
69
|
+
Content after the trigger phrase is extracted and saved as the memory content.
|
|
42
70
|
|
|
43
71
|
## Requirements
|
|
44
72
|
|
|
@@ -15,9 +15,10 @@ import fs from "node:fs/promises";
|
|
|
15
15
|
* Call a ShieldCortex MCP tool via mcporter
|
|
16
16
|
* @param {string} tool - Tool name (e.g., "remember", "recall", "get_context")
|
|
17
17
|
* @param {Record<string, string>} args - Tool arguments as key:value pairs
|
|
18
|
+
* @param {object} options - Options { retries: number, timeout: number }
|
|
18
19
|
* @returns {Promise<string|null>} Raw stdout or null on error
|
|
19
20
|
*/
|
|
20
|
-
function callCortex(tool, args = {}) {
|
|
21
|
+
function callCortex(tool, args = {}, options = { retries: 1, timeout: 15000 }) {
|
|
21
22
|
return new Promise((resolve) => {
|
|
22
23
|
const cmdArgs = [
|
|
23
24
|
"mcporter", "call", "--stdio",
|
|
@@ -30,17 +31,36 @@ function callCortex(tool, args = {}) {
|
|
|
30
31
|
cmdArgs.push(`${key}:${safe}`);
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
|
|
34
|
+
let attempts = 0;
|
|
35
|
+
const maxAttempts = (options.retries || 0) + 1;
|
|
36
|
+
|
|
37
|
+
function attempt() {
|
|
38
|
+
attempts++;
|
|
39
|
+
execFile("npx", cmdArgs, {
|
|
40
|
+
timeout: options.timeout || 15000,
|
|
41
|
+
maxBuffer: 1024 * 256,
|
|
42
|
+
}, (err, stdout) => {
|
|
43
|
+
if (err) {
|
|
44
|
+
// Distinguish timeout from other errors
|
|
45
|
+
const isTimeout = err.killed || err.code === "ETIMEDOUT" || err.signal === "SIGTERM";
|
|
46
|
+
const errorType = isTimeout ? "TIMEOUT" : "ERROR";
|
|
47
|
+
|
|
48
|
+
if (attempts < maxAttempts) {
|
|
49
|
+
console.warn(`[cortex-memory] ${errorType} on ${tool} (attempt ${attempts}/${maxAttempts}), retrying...`);
|
|
50
|
+
setTimeout(attempt, 1000); // 1s delay before retry
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
console.error(`[cortex-memory] ${errorType} on ${tool} after ${attempts} attempt(s):`, err.message);
|
|
55
|
+
if (err.code) console.error(`[cortex-memory] Error code: ${err.code}`);
|
|
56
|
+
resolve(null);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
resolve(stdout?.trim() || null);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
attempt();
|
|
44
64
|
});
|
|
45
65
|
}
|
|
46
66
|
|
|
@@ -256,48 +276,130 @@ async function onBootstrap(event) {
|
|
|
256
276
|
}
|
|
257
277
|
|
|
258
278
|
/**
|
|
259
|
-
*
|
|
279
|
+
* Keyword triggers with their categories and importance levels
|
|
280
|
+
* Order matters: more specific triggers should come first
|
|
260
281
|
*/
|
|
261
|
-
|
|
262
|
-
|
|
282
|
+
const KEYWORD_TRIGGERS = [
|
|
283
|
+
// Learning triggers
|
|
284
|
+
{ phrase: "lesson learned", category: "learning", importance: "high" },
|
|
285
|
+
{ phrase: "i learned", category: "learning", importance: "normal" },
|
|
286
|
+
{ phrase: "til:", category: "learning", importance: "normal" },
|
|
287
|
+
{ phrase: "today i learned", category: "learning", importance: "normal" },
|
|
288
|
+
|
|
289
|
+
// Error/prevention triggers
|
|
290
|
+
{ phrase: "never again", category: "error", importance: "critical" },
|
|
291
|
+
{ phrase: "root cause was", category: "error", importance: "high" },
|
|
292
|
+
{ phrase: "the fix was", category: "error", importance: "high" },
|
|
293
|
+
|
|
294
|
+
// Preference triggers
|
|
295
|
+
{ phrase: "always do", category: "preference", importance: "high" },
|
|
296
|
+
{ phrase: "never do", category: "preference", importance: "high" },
|
|
297
|
+
{ phrase: "i prefer", category: "preference", importance: "normal" },
|
|
298
|
+
{ phrase: "we should always", category: "preference", importance: "high" },
|
|
299
|
+
|
|
300
|
+
// Architecture/decision triggers
|
|
301
|
+
{ phrase: "we decided", category: "architecture", importance: "high" },
|
|
302
|
+
{ phrase: "decision made", category: "architecture", importance: "high" },
|
|
303
|
+
{ phrase: "going with", category: "architecture", importance: "normal" },
|
|
304
|
+
|
|
305
|
+
// Explicit memory triggers (highest priority - always critical)
|
|
306
|
+
{ phrase: "remember this", category: "note", importance: "critical" },
|
|
307
|
+
{ phrase: "don't forget", category: "note", importance: "critical" },
|
|
308
|
+
{ phrase: "dont forget", category: "note", importance: "critical" },
|
|
309
|
+
{ phrase: "this is important", category: "note", importance: "critical" },
|
|
310
|
+
{ phrase: "make a note", category: "note", importance: "critical" },
|
|
311
|
+
{ phrase: "for the record", category: "note", importance: "critical" },
|
|
312
|
+
{ phrase: "note to self", category: "note", importance: "critical" },
|
|
313
|
+
{ phrase: "important:", category: "note", importance: "critical" },
|
|
314
|
+
{ phrase: "key point:", category: "note", importance: "high" },
|
|
315
|
+
{ phrase: "crucial:", category: "note", importance: "critical" },
|
|
316
|
+
];
|
|
263
317
|
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
318
|
+
/**
|
|
319
|
+
* Check message text for keyword triggers and save to memory
|
|
320
|
+
* @param {string} messageText - The user's message text
|
|
321
|
+
* @param {object} event - The event object for pushing response messages
|
|
322
|
+
* @returns {Promise<boolean>} Whether a memory was saved
|
|
323
|
+
*/
|
|
324
|
+
async function checkAndSaveKeywordTrigger(messageText, event) {
|
|
325
|
+
if (!messageText || typeof messageText !== "string") return false;
|
|
326
|
+
|
|
327
|
+
const lower = messageText.toLowerCase();
|
|
328
|
+
|
|
329
|
+
// Find the first matching trigger
|
|
330
|
+
let matchedTrigger = null;
|
|
331
|
+
let matchIdx = -1;
|
|
332
|
+
|
|
333
|
+
for (const trigger of KEYWORD_TRIGGERS) {
|
|
334
|
+
const idx = lower.indexOf(trigger.phrase);
|
|
277
335
|
if (idx !== -1) {
|
|
278
|
-
|
|
336
|
+
matchedTrigger = trigger;
|
|
337
|
+
matchIdx = idx;
|
|
279
338
|
break;
|
|
280
339
|
}
|
|
281
340
|
}
|
|
282
|
-
|
|
283
|
-
if (
|
|
341
|
+
|
|
342
|
+
if (!matchedTrigger) return false;
|
|
343
|
+
|
|
344
|
+
// Extract content after the trigger phrase
|
|
345
|
+
let content = messageText.slice(matchIdx + matchedTrigger.phrase.length).replace(/^[:\s]+/, "").trim();
|
|
346
|
+
|
|
347
|
+
// If content is too short, use the whole message as context
|
|
348
|
+
if (content.length < 5) {
|
|
349
|
+
content = messageText;
|
|
350
|
+
}
|
|
284
351
|
|
|
285
352
|
const title = content.slice(0, 80).replace(/["\n]/g, " ").trim();
|
|
286
353
|
|
|
287
354
|
const result = await callCortex("remember", {
|
|
288
355
|
title,
|
|
289
356
|
content: content.slice(0, 500),
|
|
290
|
-
category:
|
|
357
|
+
category: matchedTrigger.category,
|
|
291
358
|
project: "openclaw",
|
|
292
359
|
scope: "global",
|
|
293
|
-
importance:
|
|
294
|
-
tags:
|
|
360
|
+
importance: matchedTrigger.importance,
|
|
361
|
+
tags: `keyword-trigger,openclaw-hook,trigger:${matchedTrigger.phrase.replace(/\s+/g, "-")}`,
|
|
295
362
|
});
|
|
296
363
|
|
|
297
364
|
if (result) {
|
|
298
|
-
event.messages
|
|
299
|
-
|
|
365
|
+
if (event.messages) {
|
|
366
|
+
event.messages.push(`✅ Saved to Cortex memory (${matchedTrigger.category}): "${title}"`);
|
|
367
|
+
}
|
|
368
|
+
console.log(`[cortex-memory] Keyword trigger "${matchedTrigger.phrase}" saved: ${title}`);
|
|
369
|
+
return true;
|
|
300
370
|
}
|
|
371
|
+
return false;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
/**
|
|
375
|
+
* Handle message events — check for keyword triggers in user messages
|
|
376
|
+
* This is the FIX: keyword triggers must work on message events, not just commands
|
|
377
|
+
*/
|
|
378
|
+
async function onMessageKeywordTrigger(event) {
|
|
379
|
+
// Only process user messages
|
|
380
|
+
if (event.role !== "user") return;
|
|
381
|
+
|
|
382
|
+
// Get message content - handle both string and array formats
|
|
383
|
+
let messageText = event.content;
|
|
384
|
+
if (Array.isArray(messageText)) {
|
|
385
|
+
const textBlock = messageText.find((c) => c.type === "text");
|
|
386
|
+
messageText = textBlock?.text || "";
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
await checkAndSaveKeywordTrigger(messageText, event);
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
/**
|
|
393
|
+
* Handle command events — check for keyword triggers (legacy/fallback)
|
|
394
|
+
*/
|
|
395
|
+
async function onKeywordTrigger(event) {
|
|
396
|
+
if (event.action === "new" || event.action === "stop" || event.action === "clear" || event.action === "exit") return;
|
|
397
|
+
|
|
398
|
+
const context = event.context || {};
|
|
399
|
+
const sessionEntry = context.sessionEntry || {};
|
|
400
|
+
const lastMessage = context.lastUserMessage || sessionEntry.lastUserMessage;
|
|
401
|
+
|
|
402
|
+
await checkAndSaveKeywordTrigger(lastMessage, event);
|
|
301
403
|
}
|
|
302
404
|
|
|
303
405
|
// ==================== MAIN HANDLER ====================
|
|
@@ -313,7 +415,11 @@ const cortexMemoryHandler = async (event) => {
|
|
|
313
415
|
await onSessionStop(event);
|
|
314
416
|
} else if (event.type === "agent" && event.action === "bootstrap") {
|
|
315
417
|
await onBootstrap(event);
|
|
418
|
+
} else if (event.type === "message") {
|
|
419
|
+
// FIX: Check for keyword triggers on message events (not just commands)
|
|
420
|
+
await onMessageKeywordTrigger(event);
|
|
316
421
|
} else if (event.type === "command") {
|
|
422
|
+
// Fallback: also check commands for keyword triggers (legacy support)
|
|
317
423
|
await onKeywordTrigger(event);
|
|
318
424
|
}
|
|
319
425
|
} catch (err) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "shieldcortex",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.13",
|
|
4
4
|
"description": "Complete memory system + security layer for AI agents. Native OpenClaw integration. Persistent storage, semantic search, prompt injection firewall, credential protection, and audit trail. One package, full solution.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
Binary file
|
package/dist/setup/clawdbot.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* OpenClaw/Clawdbot hook installer.
|
|
3
|
-
*
|
|
4
|
-
* Copies the cortex-memory hook into Clawdbot's bundled hooks directory.
|
|
5
|
-
* Only works if OpenClaw is installed on the system.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Find Clawdbot's bundled hooks directory by locating the binary
|
|
9
|
-
*/
|
|
10
|
-
export declare function findClawdbotHooksDir(): string | null;
|
|
11
|
-
export declare function installClawdbotHook(): Promise<void>;
|
|
12
|
-
export declare function uninstallClawdbotHook(): Promise<void>;
|
|
13
|
-
export declare function clawdbotHookStatus(): Promise<void>;
|
|
14
|
-
export declare function handleClawdbotCommand(subcommand: string): Promise<void>;
|
|
15
|
-
//# sourceMappingURL=clawdbot.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clawdbot.d.ts","sourceRoot":"","sources":["../../src/setup/clawdbot.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CA8BpD;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAgCzD;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiB3D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAcxD;AAED,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe7E"}
|
package/dist/setup/clawdbot.js
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* OpenClaw/Clawdbot hook installer.
|
|
3
|
-
*
|
|
4
|
-
* Copies the cortex-memory hook into Clawdbot's bundled hooks directory.
|
|
5
|
-
* Only works if OpenClaw is installed on the system.
|
|
6
|
-
*/
|
|
7
|
-
import fs from 'fs';
|
|
8
|
-
import path from 'path';
|
|
9
|
-
import { execSync } from 'child_process';
|
|
10
|
-
import { fileURLToPath } from 'url';
|
|
11
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
12
|
-
const __dirname = path.dirname(__filename);
|
|
13
|
-
const HOOK_NAME = 'cortex-memory';
|
|
14
|
-
// Hook source is in hooks/clawdbot/cortex-memory/ relative to project root
|
|
15
|
-
// From dist/setup/, go up two levels to project root
|
|
16
|
-
const HOOK_SOURCE = path.resolve(__dirname, '..', '..', 'hooks', 'clawdbot', HOOK_NAME);
|
|
17
|
-
/**
|
|
18
|
-
* Find Clawdbot's bundled hooks directory by locating the binary
|
|
19
|
-
*/
|
|
20
|
-
export function findClawdbotHooksDir() {
|
|
21
|
-
try {
|
|
22
|
-
const binPath = execSync('which openclaw 2>/dev/null || which clawdbot 2>/dev/null || which moltbot 2>/dev/null', {
|
|
23
|
-
encoding: 'utf-8',
|
|
24
|
-
}).trim();
|
|
25
|
-
if (!binPath)
|
|
26
|
-
return null;
|
|
27
|
-
// Resolve symlink — lands in e.g. <prefix>/lib/node_modules/clawdbot/dist/entry.js
|
|
28
|
-
const realBin = fs.realpathSync(binPath);
|
|
29
|
-
// Walk up from resolved path to find dist/hooks/bundled/
|
|
30
|
-
let dir = path.dirname(realBin);
|
|
31
|
-
for (let i = 0; i < 5; i++) {
|
|
32
|
-
const candidate = path.join(dir, 'hooks', 'bundled');
|
|
33
|
-
if (fs.existsSync(candidate)) {
|
|
34
|
-
return candidate;
|
|
35
|
-
}
|
|
36
|
-
// Also check dist/hooks/bundled from current dir
|
|
37
|
-
const distCandidate = path.join(dir, 'dist', 'hooks', 'bundled');
|
|
38
|
-
if (fs.existsSync(distCandidate)) {
|
|
39
|
-
return distCandidate;
|
|
40
|
-
}
|
|
41
|
-
dir = path.dirname(dir);
|
|
42
|
-
}
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
catch {
|
|
46
|
-
return null;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
export async function installClawdbotHook() {
|
|
50
|
-
const hooksDir = findClawdbotHooksDir();
|
|
51
|
-
if (!hooksDir) {
|
|
52
|
-
console.error('OpenClaw/Clawdbot is not installed on this system.');
|
|
53
|
-
console.log('Install it first: npm install -g openclaw');
|
|
54
|
-
process.exit(1);
|
|
55
|
-
}
|
|
56
|
-
if (!fs.existsSync(HOOK_SOURCE)) {
|
|
57
|
-
console.error('Hook source files not found. Package may be corrupted.');
|
|
58
|
-
process.exit(1);
|
|
59
|
-
}
|
|
60
|
-
const destDir = path.join(hooksDir, HOOK_NAME);
|
|
61
|
-
// Copy hook files
|
|
62
|
-
fs.mkdirSync(destDir, { recursive: true });
|
|
63
|
-
for (const file of ['HOOK.md', 'handler.js']) {
|
|
64
|
-
const src = path.join(HOOK_SOURCE, file);
|
|
65
|
-
const dest = path.join(destDir, file);
|
|
66
|
-
fs.copyFileSync(src, dest);
|
|
67
|
-
}
|
|
68
|
-
console.log(`✓ Installed cortex-memory hook to ${destDir}`);
|
|
69
|
-
console.log(' The hook will activate on next OpenClaw restart.');
|
|
70
|
-
console.log('');
|
|
71
|
-
console.log(' What it does:');
|
|
72
|
-
console.log(' • Auto-saves important session context on /new');
|
|
73
|
-
console.log(' • Injects past memories on session start');
|
|
74
|
-
console.log(' • "remember this: ..." keyword trigger');
|
|
75
|
-
}
|
|
76
|
-
export async function uninstallClawdbotHook() {
|
|
77
|
-
const hooksDir = findClawdbotHooksDir();
|
|
78
|
-
if (!hooksDir) {
|
|
79
|
-
console.log('OpenClaw/Clawdbot is not installed on this system.');
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
const destDir = path.join(hooksDir, HOOK_NAME);
|
|
83
|
-
if (!fs.existsSync(destDir)) {
|
|
84
|
-
console.log('cortex-memory hook is not installed.');
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
fs.rmSync(destDir, { recursive: true });
|
|
88
|
-
console.log(`✓ Removed cortex-memory hook from ${destDir}`);
|
|
89
|
-
}
|
|
90
|
-
export async function clawdbotHookStatus() {
|
|
91
|
-
const hooksDir = findClawdbotHooksDir();
|
|
92
|
-
if (!hooksDir) {
|
|
93
|
-
console.log('OpenClaw/Clawdbot: not installed');
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
const destDir = path.join(hooksDir, HOOK_NAME);
|
|
97
|
-
const installed = fs.existsSync(destDir);
|
|
98
|
-
console.log(`OpenClaw/Clawdbot: installed`);
|
|
99
|
-
console.log(`Hooks directory: ${hooksDir}`);
|
|
100
|
-
console.log(`cortex-memory: ${installed ? 'installed' : 'not installed'}`);
|
|
101
|
-
}
|
|
102
|
-
export async function handleClawdbotCommand(subcommand) {
|
|
103
|
-
switch (subcommand) {
|
|
104
|
-
case 'install':
|
|
105
|
-
await installClawdbotHook();
|
|
106
|
-
break;
|
|
107
|
-
case 'uninstall':
|
|
108
|
-
await uninstallClawdbotHook();
|
|
109
|
-
break;
|
|
110
|
-
case 'status':
|
|
111
|
-
await clawdbotHookStatus();
|
|
112
|
-
break;
|
|
113
|
-
default:
|
|
114
|
-
console.log('Usage: shieldcortex clawdbot <install|uninstall|status>');
|
|
115
|
-
process.exit(1);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
//# sourceMappingURL=clawdbot.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clawdbot.js","sourceRoot":"","sources":["../../src/setup/clawdbot.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|