shieldcortex 2.16.2 → 2.17.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/README.md +47 -2
- 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/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/page_client-reference-manifest.js +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 +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- 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 +2 -2
- 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 +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +3 -3
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +3 -3
- 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 +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dashboard/.next/standalone/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_25b1b286._.js +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/.next/static/chunks/{1bf33aa1c01418e1.js → 61a3c89b08347bc2.js} +1 -1
- package/dashboard/.next/standalone/dashboard/.next/static/chunks/c252c4de65df6d09.css +3 -0
- package/dist/api/visualization-server.d.ts.map +1 -1
- package/dist/api/visualization-server.js +30 -2
- package/dist/api/visualization-server.js.map +1 -1
- package/dist/cloud/cli.d.ts.map +1 -1
- package/dist/cloud/cli.js +21 -1
- package/dist/cloud/cli.js.map +1 -1
- package/dist/cloud/config.d.ts +23 -0
- package/dist/cloud/config.d.ts.map +1 -1
- package/dist/cloud/config.js +57 -0
- package/dist/cloud/config.js.map +1 -1
- package/dist/defence/__tests__/pipeline.test.js +45 -1
- package/dist/defence/__tests__/pipeline.test.js.map +1 -1
- package/dist/defence/index.d.ts +2 -2
- package/dist/defence/index.d.ts.map +1 -1
- package/dist/defence/index.js +1 -1
- package/dist/defence/index.js.map +1 -1
- package/dist/defence/pipeline.d.ts.map +1 -1
- package/dist/defence/pipeline.js +4 -0
- package/dist/defence/pipeline.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/integrations/__tests__/openclaw.test.d.ts +2 -0
- package/dist/integrations/__tests__/openclaw.test.d.ts.map +1 -0
- package/dist/integrations/__tests__/openclaw.test.js +72 -0
- package/dist/integrations/__tests__/openclaw.test.js.map +1 -0
- package/dist/integrations/__tests__/universal.test.d.ts +2 -0
- package/dist/integrations/__tests__/universal.test.d.ts.map +1 -0
- package/dist/integrations/__tests__/universal.test.js +144 -0
- package/dist/integrations/__tests__/universal.test.js.map +1 -0
- package/dist/integrations/index.d.ts +3 -0
- package/dist/integrations/index.d.ts.map +1 -1
- package/dist/integrations/index.js +2 -0
- package/dist/integrations/index.js.map +1 -1
- package/dist/integrations/openclaw.d.ts +38 -0
- package/dist/integrations/openclaw.d.ts.map +1 -0
- package/dist/integrations/openclaw.js +169 -0
- package/dist/integrations/openclaw.js.map +1 -0
- package/dist/integrations/universal.d.ts +62 -0
- package/dist/integrations/universal.d.ts.map +1 -0
- package/dist/integrations/universal.js +100 -0
- package/dist/integrations/universal.js.map +1 -0
- package/dist/lib.d.ts +3 -1
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +3 -1
- package/dist/lib.js.map +1 -1
- package/dist/setup/openclaw.d.ts.map +1 -1
- package/dist/setup/openclaw.js +3 -2
- package/dist/setup/openclaw.js.map +1 -1
- package/hooks/openclaw/cortex-memory/HOOK.md +32 -2
- package/hooks/openclaw/cortex-memory/handler.ts +213 -10
- package/package.json +9 -1
- package/plugins/openclaw/README.md +35 -1
- package/plugins/openclaw/dist/index.js +145 -5
- package/plugins/openclaw/index.ts +183 -6
- package/scripts/postinstall.mjs +34 -0
- package/dashboard/.next/standalone/dashboard/.next/static/chunks/bccda52164e63171.css +0 -3
- /package/dashboard/.next/standalone/dashboard/.next/static/{z7V0ywXg56o1kWteW7hN0 → rafRHTrrEzsWtJlg9d1Sf}/_buildManifest.js +0 -0
- /package/dashboard/.next/standalone/dashboard/.next/static/{z7V0ywXg56o1kWteW7hN0 → rafRHTrrEzsWtJlg9d1Sf}/_clientMiddlewareManifest.json +0 -0
- /package/dashboard/.next/standalone/dashboard/.next/static/{z7V0ywXg56o1kWteW7hN0 → rafRHTrrEzsWtJlg9d1Sf}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { runDefencePipeline } from '../defence/pipeline.js';
|
|
2
|
+
import { DEFAULT_DEFENCE_CONFIG } from '../defence/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Wraps any memory backend with ShieldCortex defence checks.
|
|
5
|
+
*
|
|
6
|
+
* This is the core "complement" integration: existing memory systems keep
|
|
7
|
+
* their own storage, while ShieldCortex adds security/audit controls.
|
|
8
|
+
*/
|
|
9
|
+
export class ShieldCortexGuardedMemoryBridge {
|
|
10
|
+
backend;
|
|
11
|
+
config;
|
|
12
|
+
sourceType;
|
|
13
|
+
sourceIdentifier;
|
|
14
|
+
blockOnThreat;
|
|
15
|
+
constructor(backend, options = {}) {
|
|
16
|
+
this.backend = backend;
|
|
17
|
+
this.config = {
|
|
18
|
+
...DEFAULT_DEFENCE_CONFIG,
|
|
19
|
+
mode: options.mode ?? DEFAULT_DEFENCE_CONFIG.mode,
|
|
20
|
+
};
|
|
21
|
+
this.sourceType = options.sourceType ?? 'api';
|
|
22
|
+
this.sourceIdentifier = options.sourceIdentifier ?? 'external-memory-bridge';
|
|
23
|
+
this.blockOnThreat = options.blockOnThreat ?? true;
|
|
24
|
+
}
|
|
25
|
+
async save(record) {
|
|
26
|
+
const source = {
|
|
27
|
+
type: this.sourceType,
|
|
28
|
+
identifier: `${this.sourceIdentifier}:${this.backend.name}:write`,
|
|
29
|
+
};
|
|
30
|
+
const defence = runDefencePipeline(record.content, record.title ?? `${this.backend.name} external memory write`, source, this.config, getProjectScope(record.metadata));
|
|
31
|
+
if (!defence.allowed && this.blockOnThreat) {
|
|
32
|
+
return {
|
|
33
|
+
allowed: false,
|
|
34
|
+
defence,
|
|
35
|
+
reason: defence.firewall.reason,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
const saved = await this.backend.save(record);
|
|
39
|
+
return {
|
|
40
|
+
allowed: true,
|
|
41
|
+
externalId: saved.id,
|
|
42
|
+
defence,
|
|
43
|
+
reason: defence.firewall.reason,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
async search(query, options = {}) {
|
|
47
|
+
if (!this.backend.search) {
|
|
48
|
+
throw new Error(`Backend ${this.backend.name} does not support search()`);
|
|
49
|
+
}
|
|
50
|
+
const records = await this.backend.search(query, options);
|
|
51
|
+
const allowed = [];
|
|
52
|
+
const blocked = [];
|
|
53
|
+
const advisories = [];
|
|
54
|
+
for (const record of records) {
|
|
55
|
+
const source = {
|
|
56
|
+
type: this.sourceType,
|
|
57
|
+
identifier: `${this.sourceIdentifier}:${this.backend.name}:read`,
|
|
58
|
+
};
|
|
59
|
+
const defence = runDefencePipeline(record.content, record.title ?? `${this.backend.name} external memory read`, source, this.config, getProjectScope(record.metadata));
|
|
60
|
+
if (defence.allowed) {
|
|
61
|
+
allowed.push(record);
|
|
62
|
+
}
|
|
63
|
+
else if (this.blockOnThreat) {
|
|
64
|
+
blocked.push({ record, reason: defence.firewall.reason });
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
// Advisory mode: return the record but keep explicit risk context.
|
|
68
|
+
allowed.push(record);
|
|
69
|
+
advisories.push({ record, reason: defence.firewall.reason });
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
results: allowed,
|
|
74
|
+
blocked,
|
|
75
|
+
advisories,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
async delete(id) {
|
|
79
|
+
if (!this.backend.delete) {
|
|
80
|
+
throw new Error(`Backend ${this.backend.name} does not support delete()`);
|
|
81
|
+
}
|
|
82
|
+
const source = {
|
|
83
|
+
type: this.sourceType,
|
|
84
|
+
identifier: `${this.sourceIdentifier}:${this.backend.name}:delete`,
|
|
85
|
+
};
|
|
86
|
+
const idPreview = String(id).slice(0, 512);
|
|
87
|
+
const defence = runDefencePipeline(`delete_request:${idPreview}`, `${this.backend.name} external memory delete`, source, this.config);
|
|
88
|
+
if (!defence.allowed && this.blockOnThreat) {
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
91
|
+
return this.backend.delete(id);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
function getProjectScope(metadata) {
|
|
95
|
+
if (!metadata)
|
|
96
|
+
return undefined;
|
|
97
|
+
const project = metadata.project;
|
|
98
|
+
return typeof project === 'string' ? project : undefined;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=universal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"universal.js","sourceRoot":"","sources":["../../src/integrations/universal.ts"],"names":[],"mappings":"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"}
|
package/dist/lib.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* import { runDefencePipeline, scanSkill, addMemory } from 'shieldcortex';
|
|
9
9
|
* import { runDefencePipeline } from 'shieldcortex/defence';
|
|
10
10
|
*/
|
|
11
|
-
export { runDefencePipeline, runDefencePipelineWithVerify, DEFAULT_DEFENCE_CONFIG, scoreSource, filterByTrust, analyzeFirewall, classifySensitivity, redactContent, redactForDisplay, analyzeFragmentation, storeFragmentationData, scanForCredentials, redactCredentials, DEFAULT_CREDENTIAL_CONFIG, logAudit, queryAuditLogs, getAuditStats, getDefenceMode, setDefenceMode, isConfigTampered, getCloudConfig, setCloudConfig, clearCloudConfigCache, getVerifyConfig, setVerifyConfig, syncToCloud, syncQuarantineToCloud, submitVerification, pollVerification, getDeviceId, getDeviceName, } from './defence/index.js';
|
|
11
|
+
export { runDefencePipeline, runDefencePipelineWithVerify, DEFAULT_DEFENCE_CONFIG, scoreSource, filterByTrust, analyzeFirewall, classifySensitivity, redactContent, redactForDisplay, analyzeFragmentation, storeFragmentationData, scanForCredentials, redactCredentials, DEFAULT_CREDENTIAL_CONFIG, logAudit, queryAuditLogs, getAuditStats, getDefenceMode, setDefenceMode, isConfigTampered, getCloudConfig, setCloudConfig, clearCloudConfigCache, getOpenClawAutoMemory, setOpenClawAutoMemory, getOpenClawMemoryConfig, setOpenClawMemoryConfig, getVerifyConfig, setVerifyConfig, syncToCloud, syncQuarantineToCloud, submitVerification, pollVerification, getDeviceId, getDeviceName, } from './defence/index.js';
|
|
12
12
|
export type { DefenceConfig, DefencePipelineResultWithVerify, DefenceSource, SensitivityLevel, FirewallResult, VerifyResult, VerifyThreat, } from './defence/types.js';
|
|
13
13
|
export type { VerifyConfig } from './cloud/config.js';
|
|
14
14
|
export { activateIronDome, deactivateIronDome, getIronDomeStatus, isChannelTrusted, isActionAllowed, scanForInjection, checkPII, handleKillPhrase, IRON_DOME_PROFILES, DEFAULT_IRON_DOME_CONFIG, } from './defence/iron-dome/index.js';
|
|
@@ -22,6 +22,8 @@ export { jaccardSimilarity, hasSignificantOverlap, wordOverlap } from './memory/
|
|
|
22
22
|
export { consolidate, mergeSimilarMemories, exportMemories, importMemories } from './memory/consolidate.js';
|
|
23
23
|
export { detectContradictions } from './memory/contradiction.js';
|
|
24
24
|
export { activateMemory, getActivationBoost, getActivationLevel, getActiveMemories } from './memory/activation.js';
|
|
25
|
+
export { ShieldCortexMemory, ShieldCortexGuard, ShieldCortexGuardedMemoryBridge, MarkdownMemoryBackend, OpenClawMarkdownBackend, } from './integrations/index.js';
|
|
26
|
+
export type { ShieldCortexMemoryConfig, ShieldCortexGuardConfig, ExternalMemoryBackend, ExternalMemoryRecord, GuardedMemoryBridgeConfig, GuardedSaveResult, GuardedSearchResult, } from './integrations/index.js';
|
|
25
27
|
export { extractFromMemory } from './graph/extract.js';
|
|
26
28
|
export { processExtractionResult, mergeEntities } from './graph/resolve.js';
|
|
27
29
|
export { backfillGraph } from './graph/backfill.js';
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,aAAa,EACb,+BAA+B,EAC/B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG5E,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC5G,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAChG,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAMpE,eAAO,MAAM,OAAO,EAAE,MAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"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"}
|
package/dist/lib.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* import { runDefencePipeline } from 'shieldcortex/defence';
|
|
10
10
|
*/
|
|
11
11
|
// ── Defence ────────────────────────────────────────────────
|
|
12
|
-
export { runDefencePipeline, runDefencePipelineWithVerify, DEFAULT_DEFENCE_CONFIG, scoreSource, filterByTrust, analyzeFirewall, classifySensitivity, redactContent, redactForDisplay, analyzeFragmentation, storeFragmentationData, scanForCredentials, redactCredentials, DEFAULT_CREDENTIAL_CONFIG, logAudit, queryAuditLogs, getAuditStats, getDefenceMode, setDefenceMode, isConfigTampered, getCloudConfig, setCloudConfig, clearCloudConfigCache, getVerifyConfig, setVerifyConfig, syncToCloud, syncQuarantineToCloud, submitVerification, pollVerification, getDeviceId, getDeviceName, } from './defence/index.js';
|
|
12
|
+
export { runDefencePipeline, runDefencePipelineWithVerify, DEFAULT_DEFENCE_CONFIG, scoreSource, filterByTrust, analyzeFirewall, classifySensitivity, redactContent, redactForDisplay, analyzeFragmentation, storeFragmentationData, scanForCredentials, redactCredentials, DEFAULT_CREDENTIAL_CONFIG, logAudit, queryAuditLogs, getAuditStats, getDefenceMode, setDefenceMode, isConfigTampered, getCloudConfig, setCloudConfig, clearCloudConfigCache, getOpenClawAutoMemory, setOpenClawAutoMemory, getOpenClawMemoryConfig, setOpenClawMemoryConfig, getVerifyConfig, setVerifyConfig, syncToCloud, syncQuarantineToCloud, submitVerification, pollVerification, getDeviceId, getDeviceName, } from './defence/index.js';
|
|
13
13
|
// ── Iron Dome ─────────────────────────────────────────────
|
|
14
14
|
export { activateIronDome, deactivateIronDome, getIronDomeStatus, isChannelTrusted, isActionAllowed, scanForInjection, checkPII, handleKillPhrase, IRON_DOME_PROFILES, DEFAULT_IRON_DOME_CONFIG, } from './defence/iron-dome/index.js';
|
|
15
15
|
// ── Skill Scanner ──────────────────────────────────────────
|
|
@@ -23,6 +23,8 @@ export { jaccardSimilarity, hasSignificantOverlap, wordOverlap } from './memory/
|
|
|
23
23
|
export { consolidate, mergeSimilarMemories, exportMemories, importMemories } from './memory/consolidate.js';
|
|
24
24
|
export { detectContradictions } from './memory/contradiction.js';
|
|
25
25
|
export { activateMemory, getActivationBoost, getActivationLevel, getActiveMemories } from './memory/activation.js';
|
|
26
|
+
// ── Integrations ────────────────────────────────────────────
|
|
27
|
+
export { ShieldCortexMemory, ShieldCortexGuard, ShieldCortexGuardedMemoryBridge, MarkdownMemoryBackend, OpenClawMarkdownBackend, } from './integrations/index.js';
|
|
26
28
|
// ── Knowledge Graph ────────────────────────────────────────
|
|
27
29
|
export { extractFromMemory } from './graph/extract.js';
|
|
28
30
|
export { processExtractionResult, mergeEntities } from './graph/resolve.js';
|
package/dist/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,8DAA8D;AAC9D,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAC;AAa5B,6DAA6D;AAC7D,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAatC,8DAA8D;AAC9D,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAE1C,8DAA8D;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAI3B,8DAA8D;AAC9D,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC5G,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEnH,8DAA8D;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,8DAA8D;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,8DAA8D;AAC9D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGhG,8DAA8D;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,8DAA8D;AAC9D,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,sBAAsB,EACtB,WAAW,EACX,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,QAAQ,EACR,cAAc,EACd,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAC;AAa5B,6DAA6D;AAC7D,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAatC,8DAA8D;AAC9D,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAE1C,8DAA8D;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAI3B,8DAA8D;AAC9D,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC5G,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEnH,+DAA+D;AAC/D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,+BAA+B,EAC/B,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAYjC,8DAA8D;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,8DAA8D;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,8DAA8D;AAC9D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGhG,8DAA8D;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../src/setup/openclaw.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyHH;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAkC3C;AAoKD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../src/setup/openclaw.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyHH;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAkC3C;AAoKD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CA8EzD;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CA4B3D;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqBxD;AAED,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe7E"}
|
package/dist/setup/openclaw.js
CHANGED
|
@@ -378,9 +378,10 @@ export async function installOpenClawHook() {
|
|
|
378
378
|
const pluginInstalled = installPlugin();
|
|
379
379
|
console.log('');
|
|
380
380
|
console.log('What was installed:');
|
|
381
|
-
console.log(' • cortex-memory hook (
|
|
381
|
+
console.log(' • cortex-memory hook (memory injection + "remember this:" trigger)');
|
|
382
|
+
console.log(' Auto-save is optional: shieldcortex config --openclaw-auto-memory true');
|
|
382
383
|
if (pluginInstalled) {
|
|
383
|
-
console.log(' • shieldcortex-realtime plugin (real-time LLM input
|
|
384
|
+
console.log(' • shieldcortex-realtime plugin (real-time LLM input scanning + optional output extraction)');
|
|
384
385
|
}
|
|
385
386
|
console.log('');
|
|
386
387
|
console.log('Restart your agent to activate.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../src/setup/openclaw.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../src/setup/openclaw.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEnD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,SAAS,GAAG,eAAe,CAAC;AAElC,2EAA2E;AAC3E,qDAAqD;AACrD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAExF,4EAA4E;AAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AACzF,MAAM,eAAe,GAAG,uBAAuB,CAAC;AAEhD;;;;;GAKG;AACH,SAAS,eAAe;IACtB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACvC,IAAI,QAAQ,EAAE,CAAC;QACb,wCAAwC;QACxC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,QAAQ,CAAC,iBAAiB,QAAQ,EAAE,EAAE;gBAClD,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;QAED,4BAA4B;QAC5B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,QAAQ,EAAE,EAAE;gBACjD,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,+BAA+B;QACjC,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAE1B,4DAA4D;IAC5D,uEAAuE;IACvE,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QACnE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACtC,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC9C,IAAI,CAAC;oBACH,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;wBAAE,SAAS;gBACrD,CAAC;gBAAC,MAAM,CAAC;oBAAC,SAAS;gBAAC,CAAC;gBACrB,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oBAC/C,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC;oBAClD,OAAO,QAAQ,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB;IAC1B,2CAA2C;IAC3C,IAAI,CAAC;QACH,QAAQ,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,cAAc;IAChB,CAAC;IAED,sDAAsD;IACtD,MAAM,WAAW,GAAG;QAClB,gCAAgC;QAChC,sCAAsC;KACvC,CAAC;IACF,+BAA+B;IAC/B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,uBAAuB,EAAE;YAC/C,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IACpC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAa,EAAE,CAAC;IAE1B,uEAAuE;IACvE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,mBAAmB,EAAE,EAAE,CAAC;QACzD,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,gEAAgE;QAClE,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG;QACjB,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;QACrE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;KAClE,CAAC;IAEF,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,UAAU,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC;oBACH,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3C,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kEAAkE;AAElE;;;;GAIG;AACH,SAAS,mBAAmB;IAC1B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO;IAEvC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,uBAAuB,CAAC;YAAE,OAAO;QAEhE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QACpF,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC,OAAO,CAAC;QAEtF,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,wCAAwC;IAC1C,CAAC;AACH,CAAC;AAED,0EAA0E;AAE1E;;;GAGG;AACH,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa;IACpB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE3C,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAC;QAC3D,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACtC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,gCAAgC,aAAa,GAAG,CAAC,CAAC;gBACjF,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;oBAC/E,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;QACH,CAAC;QAED,wDAAwD;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QACpF,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QAEjG,IAAI,CAAC;YACH,IAAI,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACrD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,2BAA2B,EAAE,WAAW,YAAY,IAAI,CAAC,CAAC;YAC1F,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,oCAAoC,EAAE,WAAW,cAAc,IAAI,CAAC,CAAC;YAErG,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBACzF,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,oBAAoB,EAAE,aAAa,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;YACrF,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;YACxD,CAAC;YAED,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,sDAAuD,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7F,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,cAAc,SAAS,0BAA0B,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;QACjD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,kDAAkD,OAAO,GAAG,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,wCAAyC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe;IACtB,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAE1C,IAAI,CAAC;QACH,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY;IACnB,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAEhD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACjD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC5C,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED,qDAAqD;AAErD,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;QACvF,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;QACnF,OAAO,CAAC,KAAK,CAAC,4BAA4B,mBAAmB,EAAE,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5C,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,oEAAoE;IACpE,mBAAmB,EAAE,CAAC;IAEtB,2CAA2C;IAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE3C,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;gBAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACtC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAE3B,IAAI,CAAC;oBACH,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACzC,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,iCAAiC,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;YAC1D,SAAS,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;YACjD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,aAAa,OAAO,sBAAsB,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2DAA2D;IAC3D,MAAM,eAAe,GAAG,aAAa,EAAE,CAAC;IAExC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,sEAAsE,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC;IAC1F,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,8FAA8F,CAAC,CAAC;IAC9G,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;YAC1D,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,eAAe,EAAE,CAAC;IAElB,0CAA0C;IAC1C,mBAAmB,EAAE,CAAC;IAEtB,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACtD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,sBAAsB,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,UAAkB;IAC5D,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,SAAS;YACZ,MAAM,mBAAmB,EAAE,CAAC;YAC5B,MAAM;QACR,KAAK,WAAW;YACd,MAAM,qBAAqB,EAAE,CAAC;YAC9B,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,kBAAkB,EAAE,CAAC;YAC3B,MAAM;QACR;YACE,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: cortex-memory
|
|
3
|
-
description: "Persistent brain-like memory via ShieldCortex —
|
|
3
|
+
description: "Persistent brain-like memory via ShieldCortex — recalls past knowledge, with optional auto-save"
|
|
4
4
|
homepage: https://github.com/Drakon-Systems-Ltd/ShieldCortex
|
|
5
5
|
metadata:
|
|
6
6
|
{
|
|
@@ -16,20 +16,24 @@ metadata:
|
|
|
16
16
|
|
|
17
17
|
# Cortex Memory Hook
|
|
18
18
|
|
|
19
|
-
Integrates [ShieldCortex](https://github.com/Drakon-Systems-Ltd/ShieldCortex) persistent memory.
|
|
19
|
+
Integrates [ShieldCortex](https://github.com/Drakon-Systems-Ltd/ShieldCortex) persistent memory. Recalls past knowledge at session start, and can optionally auto-save important session context.
|
|
20
20
|
|
|
21
21
|
## What It Does
|
|
22
22
|
|
|
23
23
|
### On `/new` (Session End)
|
|
24
|
+
When `openclawAutoMemory` is enabled:
|
|
24
25
|
1. Reads the ending session transcript
|
|
25
26
|
2. Pattern-matches for decisions, bug fixes, learnings, architecture changes, and preferences
|
|
26
27
|
3. Saves up to 5 high-salience memories to ShieldCortex via mcporter
|
|
28
|
+
4. Skips exact and near-duplicate memories using novelty filtering
|
|
27
29
|
|
|
28
30
|
### On `/stop`, `/clear`, `/exit` (Session End)
|
|
31
|
+
When `openclawAutoMemory` is enabled:
|
|
29
32
|
1. Captures the current session transcript before it ends
|
|
30
33
|
2. Pattern-matches for important content (same patterns as `/new`)
|
|
31
34
|
3. Saves memories with a `session-stop` tag for tracking
|
|
32
35
|
4. **Ensures work is saved** even when explicitly ending a session
|
|
36
|
+
5. Skips exact and near-duplicate memories using novelty filtering
|
|
33
37
|
|
|
34
38
|
### On Session Start (Agent Bootstrap)
|
|
35
39
|
1. Calls Cortex `get_context` to retrieve relevant memories
|
|
@@ -68,6 +72,32 @@ Say any of these phrases to trigger an instant save to Cortex memory:
|
|
|
68
72
|
|
|
69
73
|
Content after the trigger phrase is extracted and saved as the memory content.
|
|
70
74
|
|
|
75
|
+
## Optional Auto-Memory
|
|
76
|
+
|
|
77
|
+
Auto-memory extraction is disabled by default to avoid duplicate/noisy memory when another system is already primary.
|
|
78
|
+
|
|
79
|
+
Enable auto-save with CLI:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
npx shieldcortex config --openclaw-auto-memory true
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Disable it:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
npx shieldcortex config --openclaw-auto-memory false
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Enable auto-save with:
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"openclawAutoMemory": true
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
in `~/.shieldcortex/config.json`.
|
|
100
|
+
|
|
71
101
|
## Requirements
|
|
72
102
|
|
|
73
103
|
- **npx** must be available (Node.js installed)
|
|
@@ -7,11 +7,34 @@
|
|
|
7
7
|
* - Keyword-triggered memory saves
|
|
8
8
|
*/
|
|
9
9
|
import { execFile } from "node:child_process";
|
|
10
|
+
import { createHash } from "node:crypto";
|
|
10
11
|
import fs from "node:fs/promises";
|
|
12
|
+
import { homedir } from "node:os";
|
|
11
13
|
import path from "node:path";
|
|
12
14
|
|
|
13
15
|
// ==================== SERVER COMMAND RESOLUTION ====================
|
|
14
16
|
|
|
17
|
+
let _shieldConfig = null;
|
|
18
|
+
let _autoMemoryNoticeShown = false;
|
|
19
|
+
|
|
20
|
+
async function loadShieldConfig() {
|
|
21
|
+
if (_shieldConfig) return _shieldConfig;
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const configPath = path.join(homedir(), ".shieldcortex", "config.json");
|
|
25
|
+
_shieldConfig = JSON.parse(await fs.readFile(configPath, "utf-8"));
|
|
26
|
+
} catch {
|
|
27
|
+
_shieldConfig = {};
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return _shieldConfig;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async function isOpenClawAutoMemoryEnabled() {
|
|
34
|
+
const config = await loadShieldConfig();
|
|
35
|
+
return config?.openclawAutoMemory === true;
|
|
36
|
+
}
|
|
37
|
+
|
|
15
38
|
/**
|
|
16
39
|
* Resolve the fastest way to invoke shieldcortex:
|
|
17
40
|
* 1. ~/.shieldcortex/config.json "binaryPath" override
|
|
@@ -23,14 +46,10 @@ let _resolvedServerCmd = null;
|
|
|
23
46
|
async function resolveServerCmd() {
|
|
24
47
|
if (_resolvedServerCmd) return _resolvedServerCmd;
|
|
25
48
|
|
|
26
|
-
const path = await import("node:path");
|
|
27
|
-
const { homedir } = await import("node:os");
|
|
28
|
-
|
|
29
49
|
// 1. Check config for explicit binaryPath
|
|
30
50
|
try {
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
if (config.binaryPath) {
|
|
51
|
+
const config = await loadShieldConfig();
|
|
52
|
+
if (config?.binaryPath) {
|
|
34
53
|
await fs.access(config.binaryPath);
|
|
35
54
|
_resolvedServerCmd = config.binaryPath;
|
|
36
55
|
console.log(`[cortex-memory] Using configured binary: ${config.binaryPath}`);
|
|
@@ -115,6 +134,150 @@ async function callCortex(tool, args = {}, options = { retries: 1, timeout: 1500
|
|
|
115
134
|
});
|
|
116
135
|
}
|
|
117
136
|
|
|
137
|
+
// ==================== NOVELTY / DEDUPE GATE ====================
|
|
138
|
+
|
|
139
|
+
const NOVELTY_CACHE_FILE = path.join(homedir(), ".shieldcortex", "openclaw-memory-cache.json");
|
|
140
|
+
const DEFAULT_NOVELTY_THRESHOLD = 0.88;
|
|
141
|
+
const DEFAULT_MAX_RECENT = 300;
|
|
142
|
+
const MIN_NOVELTY_CHARS = 40;
|
|
143
|
+
|
|
144
|
+
function normalizeMemoryText(text) {
|
|
145
|
+
return String(text || "")
|
|
146
|
+
.toLowerCase()
|
|
147
|
+
.replace(/[`"'\\]/g, " ")
|
|
148
|
+
.replace(/https?:\/\/\S+/g, " ")
|
|
149
|
+
.replace(/[^a-z0-9\s]/g, " ")
|
|
150
|
+
.replace(/\s+/g, " ")
|
|
151
|
+
.trim();
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function hashToken(token) {
|
|
155
|
+
return createHash("sha1").update(token).digest("hex").slice(0, 12);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function buildTokenHashes(normalized) {
|
|
159
|
+
const words = normalized.split(" ").filter((w) => w.length >= 3);
|
|
160
|
+
const set = new Set();
|
|
161
|
+
|
|
162
|
+
for (let i = 0; i < words.length; i++) {
|
|
163
|
+
set.add(hashToken(words[i]));
|
|
164
|
+
if (i < words.length - 1) {
|
|
165
|
+
set.add(hashToken(`${words[i]}_${words[i + 1]}`));
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return Array.from(set).slice(0, 200);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
function jaccardSimilarity(a, b) {
|
|
173
|
+
if (a.size === 0 || b.size === 0) return 0;
|
|
174
|
+
let intersection = 0;
|
|
175
|
+
for (const item of a) {
|
|
176
|
+
if (b.has(item)) intersection++;
|
|
177
|
+
}
|
|
178
|
+
const union = a.size + b.size - intersection;
|
|
179
|
+
return union === 0 ? 0 : intersection / union;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
function clamp(value, min, max) {
|
|
183
|
+
return Math.max(min, Math.min(max, value));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
async function getNoveltyConfig() {
|
|
187
|
+
const config = await loadShieldConfig();
|
|
188
|
+
const rawThreshold = Number(config?.openclawAutoMemoryNoveltyThreshold);
|
|
189
|
+
const rawMaxRecent = Number(config?.openclawAutoMemoryMaxRecent);
|
|
190
|
+
return {
|
|
191
|
+
enabled: config?.openclawAutoMemoryDedupe !== false,
|
|
192
|
+
threshold: Number.isFinite(rawThreshold)
|
|
193
|
+
? clamp(rawThreshold, 0.6, 0.99)
|
|
194
|
+
: DEFAULT_NOVELTY_THRESHOLD,
|
|
195
|
+
maxRecent: Number.isFinite(rawMaxRecent)
|
|
196
|
+
? Math.floor(clamp(rawMaxRecent, 50, 1000))
|
|
197
|
+
: DEFAULT_MAX_RECENT,
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
async function loadNoveltyCache(maxRecent) {
|
|
202
|
+
try {
|
|
203
|
+
const raw = JSON.parse(await fs.readFile(NOVELTY_CACHE_FILE, "utf-8"));
|
|
204
|
+
if (!Array.isArray(raw)) return [];
|
|
205
|
+
return raw
|
|
206
|
+
.filter((entry) => entry && typeof entry.hash === "string" && Array.isArray(entry.tokenHashes))
|
|
207
|
+
.slice(0, maxRecent);
|
|
208
|
+
} catch {
|
|
209
|
+
return [];
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
async function saveNoveltyCache(entries) {
|
|
214
|
+
await fs.mkdir(path.dirname(NOVELTY_CACHE_FILE), { recursive: true });
|
|
215
|
+
await fs.writeFile(NOVELTY_CACHE_FILE, JSON.stringify(entries, null, 2) + "\n", "utf-8");
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
function inspectNovelty(content, entries, threshold) {
|
|
219
|
+
const normalized = normalizeMemoryText(content);
|
|
220
|
+
if (normalized.length < MIN_NOVELTY_CHARS) {
|
|
221
|
+
return { allow: true, normalized, contentHash: null, tokenHashes: [] };
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
const contentHash = createHash("sha256").update(normalized).digest("hex").slice(0, 24);
|
|
225
|
+
if (entries.some((entry) => entry.hash === contentHash)) {
|
|
226
|
+
return { allow: false, normalized, contentHash, tokenHashes: [], reason: "exact duplicate" };
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
const tokenHashes = buildTokenHashes(normalized);
|
|
230
|
+
const currentSet = new Set(tokenHashes);
|
|
231
|
+
let bestSimilarity = 0;
|
|
232
|
+
|
|
233
|
+
for (const entry of entries) {
|
|
234
|
+
const score = jaccardSimilarity(currentSet, new Set(entry.tokenHashes || []));
|
|
235
|
+
if (score > bestSimilarity) bestSimilarity = score;
|
|
236
|
+
if (score >= threshold) {
|
|
237
|
+
return {
|
|
238
|
+
allow: false,
|
|
239
|
+
normalized,
|
|
240
|
+
contentHash,
|
|
241
|
+
tokenHashes,
|
|
242
|
+
reason: `near duplicate (similarity ${score.toFixed(2)})`,
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
return { allow: true, normalized, contentHash, tokenHashes, bestSimilarity };
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
async function createNoveltyGate() {
|
|
251
|
+
const cfg = await getNoveltyConfig();
|
|
252
|
+
const entries = cfg.enabled ? await loadNoveltyCache(cfg.maxRecent) : [];
|
|
253
|
+
let dirty = false;
|
|
254
|
+
|
|
255
|
+
return {
|
|
256
|
+
enabled: cfg.enabled,
|
|
257
|
+
inspect(content) {
|
|
258
|
+
if (!cfg.enabled) return { allow: true, reason: null };
|
|
259
|
+
return inspectNovelty(content, entries, cfg.threshold);
|
|
260
|
+
},
|
|
261
|
+
remember(memory, novelty) {
|
|
262
|
+
if (!cfg.enabled) return;
|
|
263
|
+
if (!novelty?.contentHash || !Array.isArray(novelty?.tokenHashes)) return;
|
|
264
|
+
entries.unshift({
|
|
265
|
+
hash: novelty.contentHash,
|
|
266
|
+
tokenHashes: novelty.tokenHashes,
|
|
267
|
+
title: String(memory?.title || "").slice(0, 120),
|
|
268
|
+
category: String(memory?.category || "note"),
|
|
269
|
+
createdAt: new Date().toISOString(),
|
|
270
|
+
});
|
|
271
|
+
if (entries.length > cfg.maxRecent) entries.length = cfg.maxRecent;
|
|
272
|
+
dirty = true;
|
|
273
|
+
},
|
|
274
|
+
async flush() {
|
|
275
|
+
if (!cfg.enabled || !dirty) return;
|
|
276
|
+
await saveNoveltyCache(entries);
|
|
277
|
+
},
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
|
|
118
281
|
// ==================== HOOK SCANNER ====================
|
|
119
282
|
|
|
120
283
|
/**
|
|
@@ -282,6 +445,14 @@ async function getRecentMessages(sessionFilePath) {
|
|
|
282
445
|
* Handle command:new — extract memories from ending session
|
|
283
446
|
*/
|
|
284
447
|
async function onSessionEnd(event) {
|
|
448
|
+
if (!(await isOpenClawAutoMemoryEnabled())) {
|
|
449
|
+
if (!_autoMemoryNoticeShown) {
|
|
450
|
+
console.log("[cortex-memory] Auto memory extraction disabled (set openclawAutoMemory=true to enable)");
|
|
451
|
+
_autoMemoryNoticeShown = true;
|
|
452
|
+
}
|
|
453
|
+
return;
|
|
454
|
+
}
|
|
455
|
+
|
|
285
456
|
const context = event.context || {};
|
|
286
457
|
const sessionEntry = context.previousSessionEntry || context.sessionEntry || {};
|
|
287
458
|
const sessionFile = sessionEntry.sessionFile;
|
|
@@ -303,8 +474,16 @@ async function onSessionEnd(event) {
|
|
|
303
474
|
return;
|
|
304
475
|
}
|
|
305
476
|
|
|
477
|
+
const noveltyGate = await createNoveltyGate();
|
|
306
478
|
let saved = 0;
|
|
479
|
+
let skipped = 0;
|
|
307
480
|
for (const mem of memories) {
|
|
481
|
+
const novelty = noveltyGate.inspect(mem.content);
|
|
482
|
+
if (!novelty.allow) {
|
|
483
|
+
skipped++;
|
|
484
|
+
continue;
|
|
485
|
+
}
|
|
486
|
+
|
|
308
487
|
const result = await callCortex("remember", {
|
|
309
488
|
title: mem.title,
|
|
310
489
|
content: mem.content,
|
|
@@ -314,10 +493,14 @@ async function onSessionEnd(event) {
|
|
|
314
493
|
importance: "high",
|
|
315
494
|
tags: "auto-extracted,openclaw-hook",
|
|
316
495
|
});
|
|
317
|
-
if (result)
|
|
496
|
+
if (result) {
|
|
497
|
+
saved++;
|
|
498
|
+
noveltyGate.remember(mem, novelty);
|
|
499
|
+
}
|
|
318
500
|
}
|
|
501
|
+
await noveltyGate.flush();
|
|
319
502
|
|
|
320
|
-
console.log(`[cortex-memory] Saved ${saved}/${memories.length} memories from session`);
|
|
503
|
+
console.log(`[cortex-memory] Saved ${saved}/${memories.length} memories from session (${skipped} skipped as duplicates)`);
|
|
321
504
|
|
|
322
505
|
// Provide visible feedback to user
|
|
323
506
|
if (saved > 0 && event.messages) {
|
|
@@ -330,6 +513,14 @@ async function onSessionEnd(event) {
|
|
|
330
513
|
* This fires when user explicitly calls /stop
|
|
331
514
|
*/
|
|
332
515
|
async function onSessionStop(event) {
|
|
516
|
+
if (!(await isOpenClawAutoMemoryEnabled())) {
|
|
517
|
+
if (!_autoMemoryNoticeShown) {
|
|
518
|
+
console.log("[cortex-memory] Auto memory extraction disabled (set openclawAutoMemory=true to enable)");
|
|
519
|
+
_autoMemoryNoticeShown = true;
|
|
520
|
+
}
|
|
521
|
+
return;
|
|
522
|
+
}
|
|
523
|
+
|
|
333
524
|
const context = event.context || {};
|
|
334
525
|
const sessionEntry = context.sessionEntry || {};
|
|
335
526
|
const sessionFile = sessionEntry.sessionFile;
|
|
@@ -351,8 +542,16 @@ async function onSessionStop(event) {
|
|
|
351
542
|
return;
|
|
352
543
|
}
|
|
353
544
|
|
|
545
|
+
const noveltyGate = await createNoveltyGate();
|
|
354
546
|
let saved = 0;
|
|
547
|
+
let skipped = 0;
|
|
355
548
|
for (const mem of memories) {
|
|
549
|
+
const novelty = noveltyGate.inspect(mem.content);
|
|
550
|
+
if (!novelty.allow) {
|
|
551
|
+
skipped++;
|
|
552
|
+
continue;
|
|
553
|
+
}
|
|
554
|
+
|
|
356
555
|
const result = await callCortex("remember", {
|
|
357
556
|
title: mem.title,
|
|
358
557
|
content: mem.content,
|
|
@@ -362,10 +561,14 @@ async function onSessionStop(event) {
|
|
|
362
561
|
importance: "high",
|
|
363
562
|
tags: "auto-extracted,openclaw-hook,session-stop",
|
|
364
563
|
});
|
|
365
|
-
if (result)
|
|
564
|
+
if (result) {
|
|
565
|
+
saved++;
|
|
566
|
+
noveltyGate.remember(mem, novelty);
|
|
567
|
+
}
|
|
366
568
|
}
|
|
569
|
+
await noveltyGate.flush();
|
|
367
570
|
|
|
368
|
-
console.log(`[cortex-memory] Saved ${saved}/${memories.length} memories on session stop`);
|
|
571
|
+
console.log(`[cortex-memory] Saved ${saved}/${memories.length} memories on session stop (${skipped} skipped as duplicates)`);
|
|
369
572
|
|
|
370
573
|
// Provide visible feedback to user
|
|
371
574
|
if (saved > 0 && event.messages) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "shieldcortex",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.0",
|
|
4
4
|
"description": "Persistent brain for AI agents. Knowledge graphs, memory decay, contradiction detection, Iron Dome behaviour protection — plus the only defence pipeline that stops memory poisoning. Works with Claude Code, OpenClaw, LangChain, and any MCP agent.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -14,6 +14,14 @@
|
|
|
14
14
|
"import": "./dist/integrations/langchain.js",
|
|
15
15
|
"types": "./dist/integrations/langchain.d.ts"
|
|
16
16
|
},
|
|
17
|
+
"./integrations/universal": {
|
|
18
|
+
"import": "./dist/integrations/universal.js",
|
|
19
|
+
"types": "./dist/integrations/universal.d.ts"
|
|
20
|
+
},
|
|
21
|
+
"./integrations/openclaw": {
|
|
22
|
+
"import": "./dist/integrations/openclaw.js",
|
|
23
|
+
"types": "./dist/integrations/openclaw.d.ts"
|
|
24
|
+
},
|
|
17
25
|
"./integrations": {
|
|
18
26
|
"import": "./dist/integrations/index.js",
|
|
19
27
|
"types": "./dist/integrations/index.d.ts"
|