@drakon-systems/shieldcortex-realtime 4.25.2 → 4.25.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/openclaw.plugin.json +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +4 -13
- package/before_tool_call/HOOK.md +0 -20
- package/before_tool_call/handler.js +0 -6
- package/llm_input/HOOK.md +0 -17
- package/llm_input/handler.js +0 -6
- package/llm_output/HOOK.md +0 -17
- package/llm_output/handler.js +0 -6
- package/session_end/HOOK.md +0 -27
- package/session_end/handler.js +0 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "shieldcortex-realtime",
|
|
3
|
-
"version": "4.25.
|
|
3
|
+
"version": "4.25.4",
|
|
4
4
|
"name": "ShieldCortex Real-time Scanner",
|
|
5
5
|
"description": "Real-time defence scanning on LLM input, memory extraction on LLM output, and active tool call interception with approval gating.",
|
|
6
6
|
"kind": null,
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "shieldcortex-realtime",
|
|
3
|
-
"version": "4.25.
|
|
3
|
+
"version": "4.25.4",
|
|
4
4
|
"name": "ShieldCortex Real-time Scanner",
|
|
5
5
|
"description": "Real-time defence scanning on LLM input, memory extraction on LLM output, and active tool call interception with approval gating.",
|
|
6
6
|
"kind": null,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@drakon-systems/shieldcortex-realtime",
|
|
3
|
-
"version": "4.25.
|
|
3
|
+
"version": "4.25.4",
|
|
4
4
|
"description": "OpenClaw plugin for ShieldCortex real-time defence scanning and optional memory extraction.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -20,14 +20,11 @@
|
|
|
20
20
|
"intercept-ingest.ts",
|
|
21
21
|
"cloud-sync.ts",
|
|
22
22
|
"openclaw.plugin.json",
|
|
23
|
-
"README.md"
|
|
24
|
-
"llm_input/",
|
|
25
|
-
"llm_output/",
|
|
26
|
-
"before_tool_call/",
|
|
27
|
-
"session_end/"
|
|
23
|
+
"README.md"
|
|
28
24
|
],
|
|
29
25
|
"scripts": {
|
|
30
|
-
"pack:verify": "npm pack --dry-run"
|
|
26
|
+
"pack:verify": "npm pack --dry-run",
|
|
27
|
+
"prepublishOnly": "node -e \"if(!require('fs').existsSync('dist/index.js'))throw new Error('plugin dist/index.js missing — run `npm run build:ts` from the repo root before publishing')\""
|
|
31
28
|
},
|
|
32
29
|
"peerDependencies": {
|
|
33
30
|
"shieldcortex": ">=4.18.3 <5.0.0",
|
|
@@ -48,12 +45,6 @@
|
|
|
48
45
|
"openclaw": {
|
|
49
46
|
"extensions": [
|
|
50
47
|
"./dist/index.js"
|
|
51
|
-
],
|
|
52
|
-
"hooks": [
|
|
53
|
-
"llm_input",
|
|
54
|
-
"llm_output",
|
|
55
|
-
"before_tool_call",
|
|
56
|
-
"session_end"
|
|
57
48
|
]
|
|
58
49
|
},
|
|
59
50
|
"repository": {
|
package/before_tool_call/HOOK.md
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: before_tool_call
|
|
3
|
-
description: Active threat gating on tool calls
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# before_tool_call
|
|
7
|
-
|
|
8
|
-
Active threat gating for tool calls. The interceptor inspects each tool call's
|
|
9
|
-
arguments against the ShieldCortex defence pipeline and either allows, warns,
|
|
10
|
-
or blocks based on severity action policy. Block decisions throw a
|
|
11
|
-
`ShieldCortex: …` error which propagates to the caller; non-block errors are
|
|
12
|
-
logged and the tool call is allowed through (interceptor must never wedge a
|
|
13
|
-
session).
|
|
14
|
-
|
|
15
|
-
The handler is registered at runtime by the plugin's main entry point
|
|
16
|
-
(`./dist/index.js` via `openclaw.extensions` in `package.json`), which calls
|
|
17
|
-
`api.registerHook("before_tool_call", ...)` during plugin init. This directory
|
|
18
|
-
and its `handler.js` exist to satisfy OpenClaw 2026.5.5+'s install-time
|
|
19
|
-
hook-pack validation; the file in this directory is not what gets invoked at
|
|
20
|
-
runtime.
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Stub for OpenClaw 2026.5.5+ install-time hook-pack validation.
|
|
2
|
-
// The real before_tool_call handler is registered at runtime via the plugin
|
|
3
|
-
// entry (./dist/index.js, see openclaw.extensions in ../package.json) which
|
|
4
|
-
// calls api.registerHook("before_tool_call", ...) during plugin init. This
|
|
5
|
-
// file exists purely so validateHookDir's existence check passes.
|
|
6
|
-
export default function beforeToolCallStub() {}
|
package/llm_input/HOOK.md
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: llm_input
|
|
3
|
-
description: Real-time threat scanning on LLM input
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# llm_input
|
|
7
|
-
|
|
8
|
-
Scans inbound LLM prompts (user message + recent history) for prompt-injection
|
|
9
|
-
patterns, credential leaks, and other threats. Findings are logged to
|
|
10
|
-
`~/.shieldcortex/audit/realtime-<date>.jsonl` and forwarded to ShieldCortex
|
|
11
|
-
Cloud when configured.
|
|
12
|
-
|
|
13
|
-
The handler is registered at runtime by the plugin's main entry point
|
|
14
|
-
(`./dist/index.js` via `openclaw.extensions` in `package.json`), which calls
|
|
15
|
-
`api.registerHook("llm_input", ...)` during plugin init. This directory and
|
|
16
|
-
its `handler.js` exist to satisfy OpenClaw 2026.5.5+'s install-time hook-pack
|
|
17
|
-
validation; the file in this directory is not what gets invoked at runtime.
|
package/llm_input/handler.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Stub for OpenClaw 2026.5.5+ install-time hook-pack validation.
|
|
2
|
-
// The real llm_input handler is registered at runtime via the plugin entry
|
|
3
|
-
// (./dist/index.js, see openclaw.extensions in ../package.json) which calls
|
|
4
|
-
// api.registerHook("llm_input", ...) during plugin init. This file exists
|
|
5
|
-
// purely so validateHookDir's existence check passes.
|
|
6
|
-
export default function llmInputStub() {}
|
package/llm_output/HOOK.md
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: llm_output
|
|
3
|
-
description: Memory extraction from LLM output
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# llm_output
|
|
7
|
-
|
|
8
|
-
Inspects assistant text from LLM output for high-signal patterns (decisions,
|
|
9
|
-
fixes, learnings, preferences) and writes them to ShieldCortex memory via the
|
|
10
|
-
`remember` MCP tool. Includes a Jaccard-similarity novelty gate to suppress
|
|
11
|
-
near-duplicate memories.
|
|
12
|
-
|
|
13
|
-
The handler is registered at runtime by the plugin's main entry point
|
|
14
|
-
(`./dist/index.js` via `openclaw.extensions` in `package.json`), which calls
|
|
15
|
-
`api.registerHook("llm_output", ...)` during plugin init. This directory and
|
|
16
|
-
its `handler.js` exist to satisfy OpenClaw 2026.5.5+'s install-time hook-pack
|
|
17
|
-
validation; the file in this directory is not what gets invoked at runtime.
|
package/llm_output/handler.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Stub for OpenClaw 2026.5.5+ install-time hook-pack validation.
|
|
2
|
-
// The real llm_output handler is registered at runtime via the plugin entry
|
|
3
|
-
// (./dist/index.js, see openclaw.extensions in ../package.json) which calls
|
|
4
|
-
// api.registerHook("llm_output", ...) during plugin init. This file exists
|
|
5
|
-
// purely so validateHookDir's existence check passes.
|
|
6
|
-
export default function llmOutputStub() {}
|
package/session_end/HOOK.md
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: session_end
|
|
3
|
-
description: Clear interceptor deny cache on session end
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# session_end
|
|
7
|
-
|
|
8
|
-
Resets the interceptor's per-session deny cache when a session ends, so
|
|
9
|
-
short-lived blocks don't carry over to a new agent session. Best-effort —
|
|
10
|
-
older OpenClaw runtimes that don't expose a session_end hook fall back to
|
|
11
|
-
the interceptor's TTL safety net.
|
|
12
|
-
|
|
13
|
-
The handler is registered at runtime by the plugin's main entry point
|
|
14
|
-
(`./dist/index.js` via `openclaw.extensions` in `package.json`), which calls
|
|
15
|
-
`api.registerHook("session_end", ...)` during plugin init. This directory and
|
|
16
|
-
its `handler.js` exist to satisfy OpenClaw 2026.5.5+'s install-time hook-pack
|
|
17
|
-
validation; the file in this directory is not what gets invoked at runtime.
|
|
18
|
-
|
|
19
|
-
## Defence audit guarantees
|
|
20
|
-
|
|
21
|
-
The auto-extract path (`scripts/session-end-hook.mjs`) routes every
|
|
22
|
-
captured candidate through the full defence pipeline before insert. ALLOW
|
|
23
|
-
rows produce a `defence_audit` row with `source_type = 'hook'` and land
|
|
24
|
-
in `memories`. QUARANTINE rows go to the `quarantine` table for review.
|
|
25
|
-
BLOCK rows are dropped with an audit trail. Pipeline failures are also
|
|
26
|
-
audited so no capture is silently lost. See
|
|
27
|
-
`hooks/openclaw/cortex-memory/HOOK.md` for the full guarantees.
|
package/session_end/handler.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Stub for OpenClaw 2026.5.5+ install-time hook-pack validation.
|
|
2
|
-
// The real session_end handler is registered at runtime via the plugin entry
|
|
3
|
-
// (./dist/index.js, see openclaw.extensions in ../package.json) which calls
|
|
4
|
-
// api.registerHook("session_end", ...) during plugin init. This file exists
|
|
5
|
-
// purely so validateHookDir's existence check passes.
|
|
6
|
-
export default function sessionEndStub() {}
|