shieldcortex 2.4.1 → 2.4.2

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 CHANGED
@@ -3,8 +3,10 @@
3
3
  [![npm version](https://img.shields.io/npm/v/shieldcortex.svg)](https://www.npmjs.com/package/shieldcortex)
4
4
  [![npm downloads](https://img.shields.io/npm/dm/shieldcortex.svg)](https://www.npmjs.com/package/shieldcortex)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
6
+ [![Platform](https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-blue)](https://github.com/Drakon-Systems-Ltd/ShieldCortex)
7
+ [![Node.js](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen)](https://nodejs.org/)
6
8
 
7
- ## 🧠 + 🛡️ Complete Memory & Security for AI Agents
9
+ ## Complete Memory & Security for AI Agents
8
10
 
9
11
  **ShieldCortex gives your AI agent persistent memory AND protects it from attack. One package. Full solution.**
10
12
 
@@ -14,7 +16,7 @@ Most AI agents are stateless — they forget everything between sessions. Shield
14
16
  ┌─────────────────────────────────────────────────────────────┐
15
17
  │ ShieldCortex │
16
18
  ├─────────────────────────────┬───────────────────────────────┤
17
- 🧠 MEMORY SYSTEM 🛡️ SECURITY LAYER
19
+ │ MEMORY SYSTEM │ SECURITY LAYER
18
20
  ├─────────────────────────────┼───────────────────────────────┤
19
21
  │ • Persistent storage │ • Memory firewall │
20
22
  │ • Semantic search │ • Prompt injection detection │
@@ -31,7 +33,7 @@ Most AI agents are stateless — they forget everything between sessions. Shield
31
33
 
32
34
  ## What You Get
33
35
 
34
- ### 🧠 Memory System (Production-Ready)
36
+ ### Memory System (Production-Ready)
35
37
  - **Persistent storage** — SQLite-backed, survives restarts
36
38
  - **Semantic search** — Find memories by meaning, not just keywords
37
39
  - **Project scoping** — Isolate memories per project/context
@@ -40,7 +42,7 @@ Most AI agents are stateless — they forget everything between sessions. Shield
40
42
  - **Auto-cleanup** — Configurable retention, importance-based expiry
41
43
  - **Full MCP support** — Works with any MCP-compatible agent
42
44
 
43
- ### 🛡️ Security Layer (5 Defence Layers)
45
+ ### Security Layer (5 Defence Layers)
44
46
  | Layer | What It Does | Tier |
45
47
  |-------|-------------|------|
46
48
  | **Memory Firewall** | Blocks prompt injection, encoding tricks, hidden instructions | Free |
@@ -50,7 +52,7 @@ Most AI agents are stateless — they forget everything between sessions. Shield
50
52
  | **Sensitivity Classifier** | Detects & redacts passwords, API keys, PII | Pro |
51
53
  | **Fragmentation Detector** | Catches slow-burn assembly attacks | Pro |
52
54
 
53
- ### 🎯 Attack Vectors Blocked
55
+ ### Attack Vectors Blocked
54
56
  - **Direct injection** — `[SYSTEM: ignore previous]` hidden in content
55
57
  - **Credential harvesting** — Attempts to exfiltrate secrets
56
58
  - **Encoding tricks** — Base64/hex/unicode payloads
@@ -59,7 +61,7 @@ Most AI agents are stateless — they forget everything between sessions. Shield
59
61
 
60
62
  ---
61
63
 
62
- ## Quick Start (30 Seconds)
64
+ ## Quick Start
63
65
 
64
66
  ```bash
65
67
  # Install globally
@@ -76,6 +78,11 @@ npx shieldcortex setup
76
78
  npx shieldcortex migrate
77
79
  ```
78
80
 
81
+ **Verify installation:**
82
+ ```bash
83
+ npx shieldcortex doctor
84
+ ```
85
+
79
86
  ---
80
87
 
81
88
  ## Supported Agents
@@ -85,7 +92,7 @@ ShieldCortex is agent-agnostic middleware:
85
92
  | Agent | Integration |
86
93
  |-------|-------------|
87
94
  | **[Claude Code](https://claude.ai)** | `npx shieldcortex setup` — Native MCP server |
88
- | **[OpenClaw](https://openclaw.ai)** | `npx shieldcortex clawdbot install` — Native hooks |
95
+ | **[OpenClaw / Moltbot](https://openclaw.dev)** | `npx shieldcortex openclaw install` — Native hooks |
89
96
  | **[LangChain JS](https://js.langchain.com)** | `import { ShieldCortexMemory } from 'shieldcortex/integrations/langchain'` |
90
97
  | **Python (CrewAI, AutoGPT)** | REST API — `POST /api/v1/scan` |
91
98
  | **Any MCP agent** | Via MCP protocol or `@langchain/mcp-adapters` |
@@ -94,6 +101,18 @@ If your agent stores memories, ShieldCortex can power and protect them.
94
101
 
95
102
  ---
96
103
 
104
+ ## Requirements
105
+
106
+ | Requirement | Version |
107
+ |-------------|---------|
108
+ | **Node.js** | >= 18.0.0 |
109
+ | **Platform** | macOS, Linux, or Windows |
110
+ | **Storage** | ~50MB for SQLite database |
111
+
112
+ No external dependencies. No Docker required. Just `npm install` and go.
113
+
114
+ ---
115
+
97
116
  ## Is Your AI Agent Already Compromised?
98
117
 
99
118
  Find out in 30 seconds:
@@ -115,100 +134,144 @@ ShieldCortex will scan every stored memory and report:
115
134
 
116
135
  ---
117
136
 
118
- ## How It Works
137
+ ## LangChain Integration
138
+
139
+ ```javascript
140
+ import { ShieldCortexMemory, ShieldCortexGuard } from 'shieldcortex/integrations/langchain';
141
+
142
+ // As a LangChain memory backend (scans before storing)
143
+ const memory = new ShieldCortexMemory({ mode: 'balanced' });
144
+ const vars = await memory.loadMemoryVariables({ input: 'deployment config' });
145
+ await memory.saveContext({ input: 'hello' }, { output: 'hi' });
146
+
147
+ // As standalone middleware (scan without storing)
148
+ const guard = new ShieldCortexGuard();
149
+ const result = guard.scan('some content to check');
150
+ if (!result.allowed) {
151
+ console.warn('Blocked:', result.firewall.reason);
152
+ }
153
+ ```
154
+
155
+ ---
156
+
157
+ ## REST API (Any Agent)
158
+
159
+ Start the API server, then scan content from any language or framework:
160
+
161
+ ```bash
162
+ npm run dev:api # Starts on http://localhost:3001
163
+ ```
164
+
165
+ ```bash
166
+ # Scan content
167
+ curl -X POST http://localhost:3001/api/v1/scan \
168
+ -H 'Content-Type: application/json' \
169
+ -d '{"content": "memory to scan", "title": "test"}'
170
+
171
+ # Batch scan
172
+ curl -X POST http://localhost:3001/api/v1/scan/batch \
173
+ -H 'Content-Type: application/json' \
174
+ -d '{"items": [{"content": "item 1"}, {"content": "item 2"}]}'
175
+
176
+ # Query audit logs
177
+ curl http://localhost:3001/api/v1/audit?firewallResult=BLOCK
119
178
 
179
+ # List quarantined items
180
+ curl http://localhost:3001/api/v1/quarantine
181
+
182
+ # Approve/reject quarantined items
183
+ curl -X POST http://localhost:3001/api/v1/quarantine/1/approve
184
+ curl -X POST http://localhost:3001/api/v1/quarantine/1/reject
120
185
  ```
121
- ┌──────────┐ ┌──────────────────────────────────┐ ┌─────────────┐
122
- │ │ │ ShieldCortex │ │ │
123
- │ Agent │────▶│ Scan → Score → Store → Index │────▶│ SQLite DB │
124
- │ │ │ Filter Audit → Protect │ │ │
125
- └──────────┘ └──────────────────────────────────┘ └─────────────┘
126
- │ │
127
- │ ┌─────────────────────┴─────────────────────┐
128
- │ │ On Every Write: │
129
- │ │ ✓ Scan for injection patterns │
130
- │ │ ✓ Detect credential exposure │
131
- │ │ ✓ Check encoding tricks │
132
- │ │ ✓ Score trust level │
133
- │ │ ✓ Log to audit trail │
134
- │ └───────────────────────────────────────────┘
135
-
136
- │ ┌─────────────────────────────────────────────┐
137
- └───▶│ On Every Read: │
138
- │ ✓ Filter by trust threshold │
139
- │ ✓ Semantic search & ranking │
140
- │ ✓ Redact sensitive content │
141
- │ ✓ Log access to audit trail │
142
- └─────────────────────────────────────────────┘
186
+
187
+ ---
188
+
189
+ ## OpenClaw Integration
190
+
191
+ ```bash
192
+ npx shieldcortex openclaw install
143
193
  ```
144
194
 
195
+ The **cortex-memory** hook provides:
196
+ - Auto-save on `/new` command
197
+ - Context injection on bootstrap
198
+ - Keyword triggers ("remember this...")
199
+
145
200
  ---
146
201
 
147
- ## Configuration
148
-
149
- ```json
150
- {
151
- "memory": {
152
- "database": "~/.shieldcortex/memory.db",
153
- "maxMemories": 10000,
154
- "defaultImportance": "normal",
155
- "decayEnabled": true,
156
- "decayHalfLifeDays": 30
157
- },
158
- "security": {
159
- "enableFirewall": true,
160
- "enableAudit": true,
161
- "trustThreshold": 0.5,
162
- "quarantineOnThreat": true
163
- },
164
- "search": {
165
- "semanticEnabled": true,
166
- "maxResults": 20
167
- }
168
- }
202
+ ## Dashboard
203
+
204
+ ```bash
205
+ npx shieldcortex --dashboard
206
+ ```
207
+
208
+ - **Dashboard**: http://localhost:3030
209
+ - **API**: http://localhost:3001
210
+
211
+ Views: Shield (defence overview), Audit Log, Quarantine, Memories, 3D Brain, Knowledge Graph.
212
+
213
+ ### Auto-start on login
214
+
215
+ ```bash
216
+ npx shieldcortex service install # Enable
217
+ npx shieldcortex service uninstall # Disable
218
+ npx shieldcortex service status # Check
169
219
  ```
170
220
 
221
+ Works on macOS (launchd), Linux (systemd), and Windows.
222
+
171
223
  ---
172
224
 
173
- ## CLI Commands
225
+ ## CLI Reference
174
226
 
175
227
  ```bash
176
- # Setup & Migration
177
- shieldcortex setup # Auto-configure for your agent
178
- shieldcortex migrate # Migrate from Claude Cortex
179
-
180
- # Memory Operations
181
- shieldcortex remember "fact" # Store a memory
182
- shieldcortex recall "query" # Search memories
183
- shieldcortex forget <id> # Delete a memory
184
- shieldcortex list # List recent memories
185
-
186
- # Security Operations
187
- shieldcortex scan # Scan all memories for threats
188
- shieldcortex audit # View audit log
189
- shieldcortex quarantine list # View quarantined memories
190
- shieldcortex trust <id> <score> # Manually set trust score
191
-
192
- # Dashboard
193
- shieldcortex dashboard # Open web dashboard (Pro)
228
+ npx shieldcortex setup # Auto-detect agent + configure hooks
229
+ npx shieldcortex migrate # Migrate from Claude Cortex
230
+ npx shieldcortex doctor # Check installation health
231
+ npx shieldcortex --dashboard # Start dashboard + API
232
+ npx shieldcortex --version # Show version
233
+ npx shieldcortex service install # Auto-start on login
234
+ npx shieldcortex graph backfill # Extract entities from existing memories
235
+ npx shieldcortex openclaw install # Install OpenClaw hook
236
+ npx shieldcortex uninstall # Full uninstall (requires confirmation)
237
+ npx shieldcortex uninstall --confirm # Non-interactive uninstall
194
238
  ```
195
239
 
196
240
  ---
197
241
 
242
+ ## MCP Tools
243
+
244
+ | Tool | Description |
245
+ |------|-------------|
246
+ | `remember` | Store a memory (optional — hooks do this automatically) |
247
+ | `recall` | Search memories by query, category, or tags |
248
+ | `forget` | Delete memories |
249
+ | `get_context` | Get relevant project context |
250
+ | `memory_stats` | View memory statistics |
251
+ | `scan_memories` | Scan existing memories for threats |
252
+ | `audit_query` | Query the defence audit trail |
253
+ | `quarantine_review` | Review quarantined memories |
254
+ | `defence_stats` | Threat counts, trust distribution |
255
+ | `graph_query` | Traverse the knowledge graph |
256
+ | `graph_entities` | List known entities |
257
+ | `graph_explain` | Find paths between entities |
258
+
259
+ ---
260
+
198
261
  ## Why ShieldCortex?
199
262
 
200
263
  | Feature | Claude Cortex | Mem0 | Zep | **ShieldCortex** |
201
264
  |---------|---------------|------|-----|------------------|
202
- | Persistent Memory | | | | |
203
- | Semantic Search | | | | |
204
- | Prompt Injection Detection | | | | |
205
- | Memory Firewall | | | | |
206
- | Sub-Agent Access Control | | | | |
207
- | Audit Trail | | | ⚠️ | |
208
- | Credential Protection | | | | |
209
- | MCP Native | | | | |
210
- | Self-Hosted | | | ⚠️ | |
211
- | Open Source | | ⚠️ | ⚠️ | |
265
+ | Persistent Memory | Yes | Yes | Yes | Yes |
266
+ | Semantic Search | Yes | Yes | Yes | Yes |
267
+ | Prompt Injection Detection | No | No | No | **Yes** |
268
+ | Memory Firewall | No | No | No | **Yes** |
269
+ | Sub-Agent Access Control | No | No | No | **Yes** |
270
+ | Audit Trail | No | No | Partial | **Yes** |
271
+ | Credential Protection | No | No | No | **Yes** |
272
+ | MCP Native | Yes | No | No | **Yes** |
273
+ | Self-Hosted | Yes | No | Partial | **Yes** |
274
+ | Open Source | Yes | Partial | Partial | **Yes** |
212
275
 
213
276
  **ShieldCortex is the only memory system built for adversarial conditions.**
214
277
 
@@ -218,36 +281,24 @@ shieldcortex dashboard # Open web dashboard (Pro)
218
281
 
219
282
  | Tier | What You Get | Price |
220
283
  |------|--------------|-------|
221
- | **Free** | Full memory system + core security (firewall, audit, trust scoring) | £0 |
222
- | **Pro** | + Sensitivity classifier, fragmentation detector, web dashboard | £29/mo |
223
- | **Team** | + Multi-agent coordination, shared memory pools, team audit | £99/mo |
224
- | **Enterprise** | + SSO, SLA, dedicated support, custom integrations | Contact us |
284
+ | **Free** | Full memory system + core security (firewall, audit, trust scoring) | Free |
285
+ | **Pro** | + Sensitivity classifier, fragmentation detector, web dashboard | Coming soon |
225
286
 
226
- [Get Started Free](https://shieldcortex.ai) [View Pricing](https://shieldcortex.ai/pricing)
287
+ Free tier is fully functional for individual developers.
227
288
 
228
289
  ---
229
290
 
230
291
  ## Links
231
292
 
232
- - 🌐 **Website:** [shieldcortex.ai](https://shieldcortex.ai)
233
- - 📦 **npm:** [npmjs.com/package/shieldcortex](https://www.npmjs.com/package/shieldcortex)
234
- - 🐙 **GitHub:** [github.com/Drakon-Systems-Ltd/ShieldCortex](https://github.com/Drakon-Systems-Ltd/ShieldCortex)
235
- - 📖 **Docs:** [docs.shieldcortex.ai](https://docs.shieldcortex.ai)
236
- - 🏢 **By:** [Drakon Systems](https://drakonsystems.com)
293
+ - **Website:** [shieldcortex.ai](https://shieldcortex.ai)
294
+ - **npm:** [npmjs.com/package/shieldcortex](https://www.npmjs.com/package/shieldcortex)
295
+ - **GitHub:** [github.com/Drakon-Systems-Ltd/ShieldCortex](https://github.com/Drakon-Systems-Ltd/ShieldCortex)
296
+ - **Architecture:** [ARCHITECTURE.md](ARCHITECTURE.md)
237
297
 
238
298
  ---
239
299
 
240
- ## Contributing
241
-
242
- We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
243
-
244
300
  ## License
245
301
 
246
- MIT © [Drakon Systems Ltd](https://drakonsystems.com)
247
-
248
- ---
302
+ MIT
249
303
 
250
- <p align="center">
251
- <strong>Give your AI agent a brain that fights back.</strong><br>
252
- <a href="https://shieldcortex.ai">shieldcortex.ai</a>
253
- </p>
304
+ **Built by [Drakon Systems](https://github.com/Drakon-Systems-Ltd)**
package/dist/index.d.ts CHANGED
@@ -19,9 +19,9 @@
19
19
  * npx shieldcortex service install # Auto-start dashboard on login
20
20
  * npx shieldcortex service uninstall # Remove auto-start
21
21
  * npx shieldcortex service status # Check service status
22
- * npx shieldcortex clawdbot install # Install OpenClaw/Clawdbot hook
23
- * npx shieldcortex clawdbot uninstall # Remove OpenClaw/Clawdbot hook
24
- * npx shieldcortex clawdbot status # Check OpenClaw hook status
22
+ * npx shieldcortex openclaw install # Install OpenClaw hook
23
+ * npx shieldcortex openclaw uninstall # Remove OpenClaw hook
24
+ * npx shieldcortex openclaw status # Check OpenClaw hook status
25
25
  * npx shieldcortex migrate # Migrate from Claude Cortex
26
26
  * npx shieldcortex setup uninstall # Remove hooks + CLAUDE.md block (requires confirmation)
27
27
  * npx shieldcortex uninstall # Full uninstall (requires confirmation)
package/dist/index.js CHANGED
@@ -19,9 +19,9 @@
19
19
  * npx shieldcortex service install # Auto-start dashboard on login
20
20
  * npx shieldcortex service uninstall # Remove auto-start
21
21
  * npx shieldcortex service status # Check service status
22
- * npx shieldcortex clawdbot install # Install OpenClaw/Clawdbot hook
23
- * npx shieldcortex clawdbot uninstall # Remove OpenClaw/Clawdbot hook
24
- * npx shieldcortex clawdbot status # Check OpenClaw hook status
22
+ * npx shieldcortex openclaw install # Install OpenClaw hook
23
+ * npx shieldcortex openclaw uninstall # Remove OpenClaw hook
24
+ * npx shieldcortex openclaw status # Check OpenClaw hook status
25
25
  * npx shieldcortex migrate # Migrate from Claude Cortex
26
26
  * npx shieldcortex setup uninstall # Remove hooks + CLAUDE.md block (requires confirmation)
27
27
  * npx shieldcortex uninstall # Full uninstall (requires confirmation)
@@ -37,7 +37,7 @@ import { startVisualizationServer } from './api/visualization-server.js';
37
37
  import { handleServiceCommand } from './service/install.js';
38
38
  import { setupClaudeMd } from './setup/claude-md.js';
39
39
  import { handleHookCommand } from './setup/hooks.js';
40
- import { handleClawdbotCommand } from './setup/clawdbot.js';
40
+ import { handleOpenClawCommand } from './setup/openclaw.js';
41
41
  import { createRequire } from 'module';
42
42
  const require = createRequire(import.meta.url);
43
43
  const pkg = require('../package.json');
@@ -177,9 +177,9 @@ async function main() {
177
177
  await handleHookCommand(process.argv[3] || '');
178
178
  return;
179
179
  }
180
- // Handle "clawdbot" subcommand
181
- if (process.argv[2] === 'clawdbot') {
182
- await handleClawdbotCommand(process.argv[3] || '');
180
+ // Handle "openclaw" subcommand (backward compat: "clawdbot" also accepted)
181
+ if (process.argv[2] === 'openclaw' || process.argv[2] === 'clawdbot') {
182
+ await handleOpenClawCommand(process.argv[3] || '');
183
183
  return;
184
184
  }
185
185
  // Handle "service" subcommand before normal mode parsing
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AASvC,oDAAoD;AACpD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,+BAA+B;AAC/B,SAAS,SAAS;IAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,CAAC,EAAE,CAAC;QACN,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;gBAChF,MAAM,CAAC,IAAI,GAAG,IAAkB,CAAC;YACnC,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAAC,MAAe;IAC3C,wBAAwB;IACxB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEpC,8BAA8B;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,cAAc;IACrB,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAEhE,OAAO,CAAC,GAAG,CAAC;;;;;;;;GAQX,CAAC,CAAC;IAEH,gEAAgE;IAChE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;QAC/C,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;QACjC,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,oCAAoC;IACpC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACpC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,wBAAwB;IACxB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAClE,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;YACpC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAChE,MAAM,cAAc,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACpE,MAAM,oBAAoB,EAAE,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC9D,MAAM,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO;IACT,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QACnC,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IAED,yDAAyD;IACzD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5D,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;YACvG,YAAY,CAAC,MAAM,CAAC,CAAC;YAErB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,qBAAqB,MAAM,CAAC,iBAAiB,YAAY,CAAC,CAAC;QAC3I,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;IAErC,IAAI,gBAAgB,GAAwB,IAAI,CAAC;IAEjD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,8CAA8C;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,2CAA2C;QAC3C,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjC,gBAAgB,GAAG,cAAc,EAAE,CAAC;QAEpC,uCAAuC;QACvC,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,oBAAoB,CAAC,CAAC;YACtD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,oDAAoD;QACpD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,mDAAmD;QACnD,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,MAAM;AACN,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,iDAAiD;IACjD,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AASvC,oDAAoD;AACpD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,+BAA+B;AAC/B,SAAS,SAAS;IAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,MAAM,GAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,CAAC,EAAE,CAAC;QACN,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;gBAChF,MAAM,CAAC,IAAI,GAAG,IAAkB,CAAC;YACnC,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAAC,MAAe;IAC3C,wBAAwB;IACxB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEpC,8BAA8B;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,cAAc;IACrB,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAEhE,OAAO,CAAC,GAAG,CAAC;;;;;;;;GAQX,CAAC,CAAC;IAEH,gEAAgE;IAChE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;QAC/C,GAAG,EAAE,YAAY;QACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;QACjC,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,oCAAoC;IACpC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACpC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,wBAAwB;IACxB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;IAED,6BAA6B;IAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAClE,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;YACpC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;YAChE,MAAM,cAAc,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACpE,MAAM,oBAAoB,EAAE,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QACpC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC9D,MAAM,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO;IACT,CAAC;IAED,2BAA2B;IAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IAED,2EAA2E;IAC3E,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QACrE,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO;IACT,CAAC;IAED,yDAAyD;IACzD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,4BAA4B;IAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5D,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;YACvG,YAAY,CAAC,MAAM,CAAC,CAAC;YAErB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,QAAQ,kBAAkB,MAAM,CAAC,OAAO,qBAAqB,MAAM,CAAC,iBAAiB,YAAY,CAAC,CAAC;QAC3I,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;IAErC,IAAI,gBAAgB,GAAwB,IAAI,CAAC;IAEjD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,8CAA8C;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,2CAA2C;QAC3C,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QACvD,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjC,gBAAgB,GAAG,cAAc,EAAE,CAAC;QAEpC,uCAAuC;QACvC,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,oBAAoB,CAAC,CAAC;YACtD,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,oDAAoD;QACpD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,mDAAmD;QACnD,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,MAAM;AACN,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,iDAAiD;IACjD,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * 1. Injects proactive memory instructions into ~/.claude/CLAUDE.md (Claude Code)
5
5
  * 2. Creates global MCP server config at ~/.claude.json (user scope)
6
6
  * 3. Installs hooks into ~/.claude/settings.json
7
- * 4. Installs cortex-memory hook into OpenClaw/Clawdbot if detected
7
+ * 4. Installs cortex-memory hook into OpenClaw if detected
8
8
  *
9
9
  * Both steps are idempotent.
10
10
  */
@@ -4,14 +4,14 @@
4
4
  * 1. Injects proactive memory instructions into ~/.claude/CLAUDE.md (Claude Code)
5
5
  * 2. Creates global MCP server config at ~/.claude.json (user scope)
6
6
  * 3. Installs hooks into ~/.claude/settings.json
7
- * 4. Installs cortex-memory hook into OpenClaw/Clawdbot if detected
7
+ * 4. Installs cortex-memory hook into OpenClaw if detected
8
8
  *
9
9
  * Both steps are idempotent.
10
10
  */
11
11
  import fs from 'fs';
12
12
  import path from 'path';
13
13
  import os from 'os';
14
- import { installClawdbotHook, findClawdbotHooksDir } from './clawdbot.js';
14
+ import { installOpenClawHook, findOpenClawHooksDir } from './openclaw.js';
15
15
  import { setupHooks } from './settings-hooks.js';
16
16
  const MARKER = '# ShieldCortex — Memory System';
17
17
  const INSTRUCTIONS = `
@@ -93,19 +93,19 @@ export async function setupClaudeMd(options) {
93
93
  setupGlobalMcp();
94
94
  // 3. Hooks in settings.json
95
95
  setupHooks(options);
96
- // 4. OpenClaw/Clawdbot — if detected
97
- const hooksDir = findClawdbotHooksDir();
96
+ // 4. OpenClaw — if detected
97
+ const hooksDir = findOpenClawHooksDir();
98
98
  if (hooksDir) {
99
99
  const hookExists = fs.existsSync(path.join(hooksDir, 'cortex-memory'));
100
100
  if (hookExists) {
101
101
  console.log('✓ OpenClaw: cortex-memory hook already installed');
102
102
  }
103
103
  else {
104
- await installClawdbotHook();
104
+ await installOpenClawHook();
105
105
  }
106
106
  }
107
107
  else {
108
- console.log('- OpenClaw/Clawdbot: not detected (skipped)');
108
+ console.log('- OpenClaw: not detected (skipped)');
109
109
  }
110
110
  console.log('\nSetup complete.');
111
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"claude-md.js","sourceRoot":"","sources":["../../src/setup/claude-md.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,MAAM,GAAG,gCAAgC,CAAC;AAEhD,MAAM,YAAY,GAAG;EACnB,MAAM;;;;;;;;;;;;CAYP,CAAC;AAEF,SAAS,eAAe;IACtB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAEvD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;IACpF,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,YAAY,CAAC;QAC5D,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC;AACH,CAAC;AAED,SAAS,cAAc;IACrB,+DAA+D;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;IAExD,8BAA8B;IAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;YAC1C,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,cAAc,CAAC;gBACnD,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;gBACzE,OAAO;YACT,CAAC;YACD,sDAAsD;YACtD,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC;YAC9B,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG;gBAC3B,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC;aAC7B,CAAC;YACF,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO;QACT,CAAC;QAAC,MAAM,CAAC;YACP,6BAA6B;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG;QACb,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC;aAC7B;SACF;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAgC;IAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,oCAAoC;IACpC,eAAe,EAAE,CAAC;IAElB,8BAA8B;IAC9B,cAAc,EAAE,CAAC;IAEjB,4BAA4B;IAC5B,UAAU,CAAC,OAAO,CAAC,CAAC;IAEpB,qCAAqC;IACrC,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IACxC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QACvE,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,MAAM,mBAAmB,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"claude-md.js","sourceRoot":"","sources":["../../src/setup/claude-md.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * OpenClaw hook installer.
3
+ *
4
+ * Copies the cortex-memory hook into OpenClaw's bundled hooks directory.
5
+ * Only works if OpenClaw is installed on the system.
6
+ */
7
+ /**
8
+ * Find OpenClaw's bundled hooks directory by locating the binary
9
+ */
10
+ export declare function findOpenClawHooksDir(): string | null;
11
+ export declare function installOpenClawHook(): Promise<void>;
12
+ export declare function uninstallOpenClawHook(): Promise<void>;
13
+ export declare function openClawHookStatus(): Promise<void>;
14
+ export declare function handleOpenClawCommand(subcommand: string): Promise<void>;
15
+ //# sourceMappingURL=openclaw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw.d.ts","sourceRoot":"","sources":["../../src/setup/openclaw.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"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * OpenClaw hook installer.
3
+ *
4
+ * Copies the cortex-memory hook into OpenClaw'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/openclaw/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', 'openclaw', HOOK_NAME);
17
+ /**
18
+ * Find OpenClaw's bundled hooks directory by locating the binary
19
+ */
20
+ export function findOpenClawHooksDir() {
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/openclaw/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 installOpenClawHook() {
50
+ const hooksDir = findOpenClawHooksDir();
51
+ if (!hooksDir) {
52
+ console.error('OpenClaw 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 uninstallOpenClawHook() {
77
+ const hooksDir = findOpenClawHooksDir();
78
+ if (!hooksDir) {
79
+ console.log('OpenClaw 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 openClawHookStatus() {
91
+ const hooksDir = findOpenClawHooksDir();
92
+ if (!hooksDir) {
93
+ console.log('OpenClaw: not installed');
94
+ return;
95
+ }
96
+ const destDir = path.join(hooksDir, HOOK_NAME);
97
+ const installed = fs.existsSync(destDir);
98
+ console.log(`OpenClaw: installed`);
99
+ console.log(`Hooks directory: ${hooksDir}`);
100
+ console.log(`cortex-memory: ${installed ? 'installed' : 'not installed'}`);
101
+ }
102
+ export async function handleOpenClawCommand(subcommand) {
103
+ switch (subcommand) {
104
+ case 'install':
105
+ await installOpenClawHook();
106
+ break;
107
+ case 'uninstall':
108
+ await uninstallOpenClawHook();
109
+ break;
110
+ case 'status':
111
+ await openClawHookStatus();
112
+ break;
113
+ default:
114
+ console.log('Usage: shieldcortex openclaw <install|uninstall|status>');
115
+ process.exit(1);
116
+ }
117
+ }
118
+ //# sourceMappingURL=openclaw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw.js","sourceRoot":"","sources":["../../src/setup/openclaw.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Uninstall utilities for ShieldCortex.
3
3
  *
4
- * Removes hooks from settings.json, CLAUDE.md block, service, and Clawdbot hook.
4
+ * Removes hooks from settings.json, CLAUDE.md block, service, and OpenClaw hook.
5
5
  *
6
6
  * SECURITY: Requires --confirm flag or interactive TTY confirmation.
7
7
  * This prevents automated/bot-initiated uninstalls.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Uninstall utilities for ShieldCortex.
3
3
  *
4
- * Removes hooks from settings.json, CLAUDE.md block, service, and Clawdbot hook.
4
+ * Removes hooks from settings.json, CLAUDE.md block, service, and OpenClaw hook.
5
5
  *
6
6
  * SECURITY: Requires --confirm flag or interactive TTY confirmation.
7
7
  * This prevents automated/bot-initiated uninstalls.
@@ -11,7 +11,7 @@ import path from 'path';
11
11
  import os from 'os';
12
12
  import readline from 'readline';
13
13
  import { uninstallService } from '../service/install.js';
14
- import { uninstallClawdbotHook } from './clawdbot.js';
14
+ import { uninstallOpenClawHook } from './openclaw.js';
15
15
  /**
16
16
  * Check if the current process is running in an agent context.
17
17
  * Agents (sub-agents) should not be able to uninstall ShieldCortex.
@@ -167,12 +167,12 @@ export async function uninstallAll(options) {
167
167
  catch (err) {
168
168
  console.error(`Failed to uninstall service: ${err.message}`);
169
169
  }
170
- // 2. Uninstall Clawdbot hook
170
+ // 2. Uninstall OpenClaw hook
171
171
  try {
172
- await uninstallClawdbotHook();
172
+ await uninstallOpenClawHook();
173
173
  }
174
174
  catch (err) {
175
- console.error(`Failed to uninstall Clawdbot hook: ${err.message}`);
175
+ console.error(`Failed to uninstall OpenClaw hook: ${err.message}`);
176
176
  }
177
177
  // 3. Remove hooks from settings.json
178
178
  try {
@@ -4,7 +4,7 @@ description: "Persistent brain-like memory via ShieldCortex — auto-saves sessi
4
4
  homepage: https://github.com/Drakon-Systems-Ltd/ShieldCortex
5
5
  metadata:
6
6
  {
7
- "clawdbot":
7
+ "openclaw":
8
8
  {
9
9
  "emoji": "🧠",
10
10
  "events": ["command:new", "agent:bootstrap", "command"],
@@ -47,13 +47,13 @@ Memories stored in `~/.shieldcortex/memories.db` (SQLite). Shared with Claude Co
47
47
  ## Install
48
48
 
49
49
  ```bash
50
- npx shieldcortex clawdbot install
50
+ npx shieldcortex openclaw install
51
51
  ```
52
52
 
53
53
  ## Uninstall
54
54
 
55
55
  ```bash
56
- npx shieldcortex clawdbot uninstall
56
+ npx shieldcortex openclaw uninstall
57
57
  ```
58
58
 
59
59
  Or disable without removing:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Cortex Memory Hook — Persistent brain-like memory for Clawdbot/Moltbot
2
+ * Cortex Memory Hook — Persistent brain-like memory for OpenClaw
3
3
  *
4
4
  * Integrates ShieldCortex MCP server via mcporter to provide:
5
5
  * - Auto-extraction of important session content on /new
@@ -176,10 +176,10 @@ async function onSessionEnd(event) {
176
176
  title: mem.title,
177
177
  content: mem.content,
178
178
  category: mem.category,
179
- project: "clawdbot",
179
+ project: "openclaw",
180
180
  scope: "global",
181
181
  importance: "high",
182
- tags: "auto-extracted,clawdbot-hook",
182
+ tags: "auto-extracted,openclaw-hook",
183
183
  });
184
184
  if (result) saved++;
185
185
  }
@@ -195,7 +195,7 @@ async function onBootstrap(event) {
195
195
  if (!Array.isArray(context.bootstrapFiles)) return;
196
196
 
197
197
  const result = await callCortex("get_context", {
198
- query: "clawdbot session context",
198
+ query: "openclaw session context",
199
199
  format: "summary",
200
200
  });
201
201
 
@@ -245,10 +245,10 @@ async function onKeywordTrigger(event) {
245
245
  title,
246
246
  content: content.slice(0, 500),
247
247
  category: "note",
248
- project: "clawdbot",
248
+ project: "openclaw",
249
249
  scope: "global",
250
250
  importance: "critical",
251
- tags: "keyword-trigger,clawdbot-hook",
251
+ tags: "keyword-trigger,openclaw-hook",
252
252
  });
253
253
 
254
254
  if (result) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shieldcortex",
3
- "version": "2.4.1",
3
+ "version": "2.4.2",
4
4
  "description": "Complete memory system + security layer for AI agents. 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",