@clawdstrike/openclaw 0.1.3 → 0.2.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.
Files changed (136) hide show
  1. package/README.md +11 -0
  2. package/dist/audit/adapter-logger.d.ts +3 -3
  3. package/dist/audit/adapter-logger.d.ts.map +1 -1
  4. package/dist/audit/adapter-logger.js +3 -3
  5. package/dist/audit/adapter-logger.js.map +1 -1
  6. package/dist/audit/store.d.ts +2 -2
  7. package/dist/audit/store.d.ts.map +1 -1
  8. package/dist/audit/store.js +13 -13
  9. package/dist/audit/store.js.map +1 -1
  10. package/dist/classification.d.ts +2 -2
  11. package/dist/classification.d.ts.map +1 -1
  12. package/dist/classification.js +96 -28
  13. package/dist/classification.js.map +1 -1
  14. package/dist/cli/bin.js +1 -1
  15. package/dist/cli/commands/audit.d.ts.map +1 -1
  16. package/dist/cli/commands/audit.js +29 -29
  17. package/dist/cli/commands/audit.js.map +1 -1
  18. package/dist/cli/commands/policy.d.ts.map +1 -1
  19. package/dist/cli/commands/policy.js +33 -33
  20. package/dist/cli/commands/policy.js.map +1 -1
  21. package/dist/cli/index.d.ts +1 -1
  22. package/dist/cli/index.d.ts.map +1 -1
  23. package/dist/cli/index.js +45 -56
  24. package/dist/cli/index.js.map +1 -1
  25. package/dist/config.d.ts +1 -1
  26. package/dist/config.d.ts.map +1 -1
  27. package/dist/config.js +9 -9
  28. package/dist/config.js.map +1 -1
  29. package/dist/e2e/openclaw-e2e.js +58 -49
  30. package/dist/e2e/openclaw-e2e.js.map +1 -1
  31. package/dist/engine-holder.d.ts +2 -2
  32. package/dist/engine-holder.js +1 -1
  33. package/dist/guards/egress.d.ts +2 -2
  34. package/dist/guards/egress.d.ts.map +1 -1
  35. package/dist/guards/egress.js +71 -73
  36. package/dist/guards/egress.js.map +1 -1
  37. package/dist/guards/forbidden-path.d.ts +2 -2
  38. package/dist/guards/forbidden-path.d.ts.map +1 -1
  39. package/dist/guards/forbidden-path.js +41 -43
  40. package/dist/guards/forbidden-path.js.map +1 -1
  41. package/dist/guards/index.d.ts +6 -6
  42. package/dist/guards/index.d.ts.map +1 -1
  43. package/dist/guards/index.js +5 -5
  44. package/dist/guards/index.js.map +1 -1
  45. package/dist/guards/patch-integrity.d.ts +2 -2
  46. package/dist/guards/patch-integrity.d.ts.map +1 -1
  47. package/dist/guards/patch-integrity.js +69 -70
  48. package/dist/guards/patch-integrity.js.map +1 -1
  49. package/dist/guards/secret-leak.d.ts +2 -2
  50. package/dist/guards/secret-leak.d.ts.map +1 -1
  51. package/dist/guards/secret-leak.js +81 -82
  52. package/dist/guards/secret-leak.js.map +1 -1
  53. package/dist/guards/types.d.ts +2 -2
  54. package/dist/guards/types.d.ts.map +1 -1
  55. package/dist/guards/types.js +4 -4
  56. package/dist/guards/types.js.map +1 -1
  57. package/dist/hooks/agent-bootstrap/handler.d.ts +1 -1
  58. package/dist/hooks/agent-bootstrap/handler.d.ts.map +1 -1
  59. package/dist/hooks/agent-bootstrap/handler.js +5 -5
  60. package/dist/hooks/agent-bootstrap/handler.js.map +1 -1
  61. package/dist/hooks/approval-state.d.ts +1 -1
  62. package/dist/hooks/approval-state.d.ts.map +1 -1
  63. package/dist/hooks/approval-state.js +15 -15
  64. package/dist/hooks/approval-state.js.map +1 -1
  65. package/dist/hooks/approval-utils.d.ts +1 -1
  66. package/dist/hooks/approval-utils.d.ts.map +1 -1
  67. package/dist/hooks/approval-utils.js +41 -20
  68. package/dist/hooks/approval-utils.js.map +1 -1
  69. package/dist/hooks/audit-logger/handler.d.ts +1 -1
  70. package/dist/hooks/audit-logger/handler.d.ts.map +1 -1
  71. package/dist/hooks/audit-logger/handler.js +9 -9
  72. package/dist/hooks/audit-logger/handler.js.map +1 -1
  73. package/dist/hooks/cua-bridge/handler.d.ts +4 -4
  74. package/dist/hooks/cua-bridge/handler.d.ts.map +1 -1
  75. package/dist/hooks/cua-bridge/handler.js +85 -70
  76. package/dist/hooks/cua-bridge/handler.js.map +1 -1
  77. package/dist/hooks/tool-guard/handler.d.ts +1 -1
  78. package/dist/hooks/tool-guard/handler.d.ts.map +1 -1
  79. package/dist/hooks/tool-guard/handler.js +112 -101
  80. package/dist/hooks/tool-guard/handler.js.map +1 -1
  81. package/dist/hooks/tool-preflight/handler.d.ts +2 -2
  82. package/dist/hooks/tool-preflight/handler.d.ts.map +1 -1
  83. package/dist/hooks/tool-preflight/handler.js +115 -91
  84. package/dist/hooks/tool-preflight/handler.js.map +1 -1
  85. package/dist/index.d.ts +16 -16
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +18 -18
  88. package/dist/index.js.map +1 -1
  89. package/dist/openclaw-adapter.d.ts +2 -2
  90. package/dist/openclaw-adapter.d.ts.map +1 -1
  91. package/dist/openclaw-adapter.js +4 -4
  92. package/dist/openclaw-adapter.js.map +1 -1
  93. package/dist/plugin.d.ts.map +1 -1
  94. package/dist/plugin.js +39 -40
  95. package/dist/plugin.js.map +1 -1
  96. package/dist/policy/engine.d.ts +1 -1
  97. package/dist/policy/engine.d.ts.map +1 -1
  98. package/dist/policy/engine.js +237 -221
  99. package/dist/policy/engine.js.map +1 -1
  100. package/dist/policy/index.d.ts +3 -3
  101. package/dist/policy/index.d.ts.map +1 -1
  102. package/dist/policy/index.js +3 -3
  103. package/dist/policy/index.js.map +1 -1
  104. package/dist/policy/loader.d.ts +1 -1
  105. package/dist/policy/loader.d.ts.map +1 -1
  106. package/dist/policy/loader.js +76 -63
  107. package/dist/policy/loader.js.map +1 -1
  108. package/dist/policy/validator.d.ts +1 -1
  109. package/dist/policy/validator.d.ts.map +1 -1
  110. package/dist/policy/validator.js +158 -151
  111. package/dist/policy/validator.js.map +1 -1
  112. package/dist/receipt/signer.d.ts +2 -2
  113. package/dist/receipt/signer.d.ts.map +1 -1
  114. package/dist/receipt/signer.js +12 -12
  115. package/dist/receipt/signer.js.map +1 -1
  116. package/dist/receipt/types.d.ts +2 -2
  117. package/dist/receipt/types.d.ts.map +1 -1
  118. package/dist/sanitizer/output-sanitizer.d.ts +1 -1
  119. package/dist/sanitizer/output-sanitizer.d.ts.map +1 -1
  120. package/dist/sanitizer/output-sanitizer.js +8 -8
  121. package/dist/sanitizer/output-sanitizer.js.map +1 -1
  122. package/dist/security-prompt.d.ts +1 -1
  123. package/dist/security-prompt.d.ts.map +1 -1
  124. package/dist/security-prompt.js +16 -12
  125. package/dist/security-prompt.js.map +1 -1
  126. package/dist/tools/policy-check.d.ts +3 -3
  127. package/dist/tools/policy-check.d.ts.map +1 -1
  128. package/dist/tools/policy-check.js +60 -52
  129. package/dist/tools/policy-check.js.map +1 -1
  130. package/dist/translator/openclaw-translator.d.ts +1 -1
  131. package/dist/translator/openclaw-translator.d.ts.map +1 -1
  132. package/dist/translator/openclaw-translator.js +100 -80
  133. package/dist/translator/openclaw-translator.js.map +1 -1
  134. package/dist/types.d.ts +11 -13
  135. package/dist/types.d.ts.map +1 -1
  136. package/package.json +9 -4
@@ -3,33 +3,33 @@
3
3
  *
4
4
  * Intercepts tool results and enforces security policy.
5
5
  */
6
- import { createHash } from 'node:crypto';
7
- import { initializeEngine, getSharedEngine } from '../../engine-holder.js';
8
- import { checkAndConsumeApproval } from '../approval-state.js';
9
- import { extractPath, normalizeApprovalResource } from '../approval-utils.js';
10
- import { inferEventTypeFromName } from '../../classification.js';
6
+ import { createHash } from "node:crypto";
7
+ import { inferEventTypeFromName } from "../../classification.js";
8
+ import { getSharedEngine, initializeEngine } from "../../engine-holder.js";
9
+ import { checkAndConsumeApproval } from "../approval-state.js";
10
+ import { extractPath, normalizeApprovalResource } from "../approval-utils.js";
11
11
  const DEFAULT_CACHE_TTL_MS = 5 * 60 * 1000; // 5 minutes
12
12
  const DEFAULT_CACHE_MAX = 256;
13
13
  function stableStringify(value, seen = new WeakSet()) {
14
14
  if (value === null)
15
- return 'null';
15
+ return "null";
16
16
  const t = typeof value;
17
- if (t === 'string')
17
+ if (t === "string")
18
18
  return JSON.stringify(value);
19
- if (t === 'number' || t === 'boolean')
19
+ if (t === "number" || t === "boolean")
20
20
  return String(value);
21
- if (t === 'bigint')
21
+ if (t === "bigint")
22
22
  return JSON.stringify(String(value));
23
- if (t === 'undefined')
23
+ if (t === "undefined")
24
24
  return '"__undefined__"';
25
- if (t === 'symbol')
25
+ if (t === "symbol")
26
26
  return JSON.stringify(String(value));
27
- if (t === 'function')
27
+ if (t === "function")
28
28
  return '"__function__"';
29
29
  if (Array.isArray(value)) {
30
- return `[${value.map((v) => stableStringify(v, seen)).join(',')}]`;
30
+ return `[${value.map((v) => stableStringify(v, seen)).join(",")}]`;
31
31
  }
32
- if (t !== 'object') {
32
+ if (t !== "object") {
33
33
  return JSON.stringify(String(value));
34
34
  }
35
35
  if (seen.has(value)) {
@@ -39,7 +39,7 @@ function stableStringify(value, seen = new WeakSet()) {
39
39
  // Only stable-sort plain objects; for other objects (Date, Buffer, etc) defer to
40
40
  // JSON.stringify where possible.
41
41
  const tag = Object.prototype.toString.call(value);
42
- if (tag !== '[object Object]') {
42
+ if (tag !== "[object Object]") {
43
43
  try {
44
44
  return JSON.stringify(value);
45
45
  }
@@ -50,31 +50,27 @@ function stableStringify(value, seen = new WeakSet()) {
50
50
  const obj = value;
51
51
  const keys = Object.keys(obj).sort();
52
52
  const entries = keys.map((k) => `${JSON.stringify(k)}:${stableStringify(obj[k], seen)}`);
53
- return `{${entries.join(',')}}`;
53
+ return `{${entries.join(",")}}`;
54
54
  }
55
55
  function shortSha256(value) {
56
- const h = createHash('sha256');
57
- if (typeof value === 'string')
56
+ const h = createHash("sha256");
57
+ if (typeof value === "string")
58
58
  h.update(value);
59
59
  else
60
60
  h.update(stableStringify(value));
61
- return h.digest('hex').slice(0, 16);
61
+ return h.digest("hex").slice(0, 16);
62
62
  }
63
63
  function policyCacheKey(policy) {
64
64
  const version = policy &&
65
- typeof policy === 'object' &&
66
- 'version' in policy &&
67
- typeof policy.version === 'string'
65
+ typeof policy === "object" &&
66
+ "version" in policy &&
67
+ typeof policy.version === "string"
68
68
  ? policy.version
69
- : 'unknown';
69
+ : "unknown";
70
70
  return `${version}@${shortSha256(policy)}`;
71
71
  }
72
72
  /** Event types that must never be cached (destructive / non-idempotent). */
73
- const UNCACHEABLE_EVENT_TYPES = new Set([
74
- 'command_exec',
75
- 'patch_apply',
76
- 'file_write',
77
- ]);
73
+ const UNCACHEABLE_EVENT_TYPES = new Set(["command_exec", "patch_apply", "file_write"]);
78
74
  export class DecisionCache {
79
75
  maxSize;
80
76
  ttlMs;
@@ -118,7 +114,7 @@ export class DecisionCache {
118
114
  }
119
115
  // ── Module State ─────────────────────────────────────────────────────
120
116
  let currentConfig = {};
121
- let cachedPolicyKey = 'unknown';
117
+ let cachedPolicyKey = "unknown";
122
118
  /** Shared decision cache (reset on initialize) */
123
119
  export let decisionCache = new DecisionCache();
124
120
  /**
@@ -150,29 +146,29 @@ function getEngine(config) {
150
146
  */
151
147
  function extractResourceKey(event) {
152
148
  switch (event.data.type) {
153
- case 'file':
149
+ case "file":
154
150
  return event.data.path;
155
- case 'network':
156
- return event.data.host + ':' + event.data.port;
157
- case 'tool':
151
+ case "network":
152
+ return event.data.host + ":" + event.data.port;
153
+ case "tool":
158
154
  // Tool-call decisions depend on parameters and outputs (e.g., secret leak checks).
159
155
  // Include both so cached allows cannot be reused for a different invocation.
160
- return `${event.data.toolName}:${shortSha256(event.data.parameters)}:${shortSha256(event.data.result ?? '')}`;
161
- case 'command':
162
- return event.data.command + ' ' + event.data.args.join(' ');
163
- case 'patch':
156
+ return `${event.data.toolName}:${shortSha256(event.data.parameters)}:${shortSha256(event.data.result ?? "")}`;
157
+ case "command":
158
+ return event.data.command + " " + event.data.args.join(" ");
159
+ case "patch":
164
160
  return event.data.filePath;
165
- case 'secret':
161
+ case "secret":
166
162
  return event.data.secretName;
167
163
  default:
168
- return '';
164
+ return "";
169
165
  }
170
166
  }
171
167
  /**
172
168
  * Hook handler for tool_result_persist events
173
169
  */
174
170
  const handler = async (event) => {
175
- if (event.type !== 'tool_result_persist') {
171
+ if (event.type !== "tool_result_persist") {
176
172
  return;
177
173
  }
178
174
  const toolEvent = event;
@@ -187,35 +183,35 @@ const handler = async (event) => {
187
183
  // Create policy event from tool result
188
184
  const policyEvent = createPolicyEvent(sessionId, toolName, params, result);
189
185
  // Check decision cache (skip for destructive ops and advisory/audit modes)
190
- const mode = currentConfig.mode ?? 'deterministic';
191
- const useCache = mode === 'deterministic' && !UNCACHEABLE_EVENT_TYPES.has(policyEvent.eventType);
186
+ const mode = currentConfig.mode ?? "deterministic";
187
+ const useCache = mode === "deterministic" && !UNCACHEABLE_EVENT_TYPES.has(policyEvent.eventType);
192
188
  const cacheKey = useCache
193
189
  ? DecisionCache.key(policyEvent.eventType, extractResourceKey(policyEvent), cachedPolicyKey)
194
- : '';
190
+ : "";
195
191
  let decision = useCache ? decisionCache.get(cacheKey) : undefined;
196
192
  if (!decision) {
197
193
  decision = await policyEngine.evaluate(policyEvent);
198
- if (useCache && decision.status === 'allow') {
194
+ if (useCache && decision.status === "allow") {
199
195
  decisionCache.set(cacheKey, decision);
200
196
  }
201
197
  }
202
- if (decision.status === 'deny') {
198
+ if (decision.status === "deny") {
203
199
  // Block the tool result
204
- toolEvent.context.toolResult.error = decision.reason ?? 'Policy violation';
200
+ toolEvent.context.toolResult.error = decision.reason ?? "Policy violation";
205
201
  toolEvent.messages.push(`[clawdstrike] Blocked by ${decision.guard}: ${decision.reason}`);
206
202
  return;
207
203
  }
208
- if (decision.status === 'warn') {
204
+ if (decision.status === "warn") {
209
205
  // Add warning message
210
206
  toolEvent.messages.push(`[clawdstrike] Warning: ${decision.message ?? decision.reason}`);
211
207
  }
212
208
  }
213
209
  function sanitizeUnknown(value, sanitizeString, seen, depth) {
214
- if (typeof value === 'string') {
210
+ if (typeof value === "string") {
215
211
  const sanitized = sanitizeString(value);
216
212
  return { value: sanitized, changed: sanitized !== value };
217
213
  }
218
- if (!value || typeof value !== 'object') {
214
+ if (!value || typeof value !== "object") {
219
215
  return { value, changed: false };
220
216
  }
221
217
  if (seen.has(value)) {
@@ -226,7 +222,7 @@ const handler = async (event) => {
226
222
  }
227
223
  // Preserve non-plain objects (Dates, Buffers, class instances, etc).
228
224
  const isArray = Array.isArray(value);
229
- const isPlainObject = Object.prototype.toString.call(value) === '[object Object]';
225
+ const isPlainObject = Object.prototype.toString.call(value) === "[object Object]";
230
226
  if (!isArray && !isPlainObject) {
231
227
  return { value, changed: false };
232
228
  }
@@ -251,13 +247,13 @@ const handler = async (event) => {
251
247
  return { value: changed ? out : value, changed };
252
248
  }
253
249
  // Redact secrets from output
254
- if (result && typeof result === 'string') {
250
+ if (result && typeof result === "string") {
255
251
  const sanitized = policyEngine.sanitizeOutput(result);
256
252
  if (sanitized !== result) {
257
253
  toolEvent.context.toolResult.result = sanitized;
258
254
  }
259
255
  }
260
- else if (result && typeof result === 'object') {
256
+ else if (result && typeof result === "object") {
261
257
  const { value: sanitized, changed } = sanitizeUnknown(result, (s) => policyEngine.sanitizeOutput(s), new WeakSet(), 0);
262
258
  if (changed) {
263
259
  toolEvent.context.toolResult.result = sanitized;
@@ -290,7 +286,7 @@ function createPolicyEvent(sessionId, toolName, params, result) {
290
286
  * Infer event type from tool name using the shared token-based classifier.
291
287
  */
292
288
  function inferEventType(toolName) {
293
- return inferEventTypeFromName(toolName) ?? 'tool_call';
289
+ return inferEventTypeFromName(toolName) ?? "tool_call";
294
290
  }
295
291
  /**
296
292
  * Create event data based on tool name and params
@@ -298,72 +294,74 @@ function inferEventType(toolName) {
298
294
  function createEventData(toolName, params, result) {
299
295
  const eventType = inferEventType(toolName);
300
296
  switch (eventType) {
301
- case 'file_read':
302
- case 'file_write': {
297
+ case "file_read":
298
+ case "file_write": {
303
299
  const path = extractPath(params);
304
- const contentHash = typeof params.contentHash === 'string' ? params.contentHash : undefined;
300
+ const contentHash = typeof params.contentHash === "string" ? params.contentHash : undefined;
305
301
  const { content, contentBase64 } = extractFileContent(params, result, eventType);
306
302
  return {
307
- type: 'file',
308
- path: path ?? '',
303
+ type: "file",
304
+ path: path ?? "",
309
305
  content,
310
306
  contentBase64,
311
307
  contentHash,
312
- operation: eventType === 'file_read' ? 'read' : 'write',
308
+ operation: eventType === "file_read" ? "read" : "write",
313
309
  };
314
310
  }
315
- case 'network_egress': {
311
+ case "network_egress": {
316
312
  const { host, port, url } = extractNetworkInfo(params);
317
313
  return {
318
- type: 'network',
314
+ type: "network",
319
315
  host,
320
316
  port,
321
317
  url,
322
318
  };
323
319
  }
324
- case 'command_exec': {
320
+ case "command_exec": {
325
321
  const { command, args, workingDir } = extractCommandInfo(params);
326
322
  return {
327
- type: 'command',
323
+ type: "command",
328
324
  command,
329
325
  args,
330
326
  workingDir,
331
327
  };
332
328
  }
333
- case 'patch_apply': {
329
+ case "patch_apply": {
334
330
  const { filePath, patchContent } = extractPatchInfo(params, result);
335
331
  return {
336
- type: 'patch',
332
+ type: "patch",
337
333
  filePath,
338
334
  patchContent,
339
335
  };
340
336
  }
341
- case 'tool_call':
337
+ case "tool_call":
342
338
  default: {
343
339
  return {
344
- type: 'tool',
340
+ type: "tool",
345
341
  toolName,
346
342
  parameters: params,
347
- result: typeof result === 'string' ? result : JSON.stringify(result ?? ''),
343
+ result: typeof result === "string" ? result : JSON.stringify(result ?? ""),
348
344
  };
349
345
  }
350
346
  }
351
347
  }
352
348
  function extractFileContent(params, result, eventType) {
353
349
  const maxChars = 2_000_000; // Best-effort cap: avoid huge payloads.
354
- const contentBase64 = typeof params.contentBase64 === 'string'
350
+ const contentBase64 = typeof params.contentBase64 === "string"
355
351
  ? params.contentBase64
356
- : typeof params.base64 === 'string'
352
+ : typeof params.base64 === "string"
357
353
  ? params.base64
358
354
  : undefined;
359
355
  if (contentBase64) {
360
- return { contentBase64: contentBase64.length > maxChars ? contentBase64.slice(0, maxChars) : contentBase64 };
356
+ return {
357
+ contentBase64: contentBase64.length > maxChars ? contentBase64.slice(0, maxChars) : contentBase64,
358
+ };
361
359
  }
362
- const content = typeof params.content === 'string'
360
+ const content = typeof params.content === "string"
363
361
  ? params.content
364
- : typeof params.text === 'string'
362
+ : typeof params.text === "string"
365
363
  ? params.text
366
- : eventType === 'file_read' && typeof result === 'string'
364
+ : eventType === "file_read" && typeof result === "string"
367
365
  ? result
368
366
  : undefined;
369
367
  if (!content)
@@ -375,16 +373,23 @@ function extractFileContent(params, result, eventType) {
375
373
  */
376
374
  function extractNetworkInfo(params) {
377
375
  // Try to get URL first
378
- const url = typeof params.url === 'string' ? params.url
379
- : typeof params.endpoint === 'string' ? params.endpoint
380
- : typeof params.href === 'string' ? params.href
376
+ const url = typeof params.url === "string"
377
+ ? params.url
378
+ : typeof params.endpoint === "string"
379
+ ? params.endpoint
380
+ : typeof params.href === "string"
381
+ ? params.href
381
382
  : undefined;
382
383
  if (url) {
383
384
  try {
384
385
  const parsed = new URL(url);
385
386
  return {
386
387
  host: parsed.hostname,
387
- port: parsed.port ? parseInt(parsed.port, 10) : (parsed.protocol === 'https:' || parsed.protocol === 'wss:' ? 443 : 80),
388
+ port: parsed.port
389
+ ? parseInt(parsed.port, 10)
390
+ : parsed.protocol === "https:" || parsed.protocol === "wss:"
391
+ ? 443
392
+ : 80,
388
393
  url,
389
394
  };
390
395
  }
@@ -393,14 +398,18 @@ function extractNetworkInfo(params) {
393
398
  }
394
399
  }
395
400
  // Try to extract from command
396
- if (typeof params.command === 'string') {
401
+ if (typeof params.command === "string") {
397
402
  const urlMatch = params.command.match(/https?:\/\/[^\s'"]+/);
398
403
  if (urlMatch) {
399
404
  try {
400
405
  const parsed = new URL(urlMatch[0]);
401
406
  return {
402
407
  host: parsed.hostname,
403
- port: parsed.port ? parseInt(parsed.port, 10) : (parsed.protocol === 'https:' || parsed.protocol === 'wss:' ? 443 : 80),
408
+ port: parsed.port
409
+ ? parseInt(parsed.port, 10)
410
+ : parsed.protocol === "https:" || parsed.protocol === "wss:"
411
+ ? 443
412
+ : 80,
404
413
  url: urlMatch[0],
405
414
  };
406
415
  }
@@ -410,50 +419,52 @@ function extractNetworkInfo(params) {
410
419
  }
411
420
  }
412
421
  // Fallback
413
- const host = typeof params.host === 'string' ? params.host
414
- : typeof params.hostname === 'string' ? params.hostname
415
- : 'unknown';
416
- const port = typeof params.port === 'number' ? params.port : 80;
422
+ const host = typeof params.host === "string"
423
+ ? params.host
424
+ : typeof params.hostname === "string"
425
+ ? params.hostname
426
+ : "unknown";
427
+ const port = typeof params.port === "number" ? params.port : 80;
417
428
  return { host, port, url };
418
429
  }
419
430
  function extractCommandInfo(params) {
420
- const workingDir = typeof params.cwd === 'string'
431
+ const workingDir = typeof params.cwd === "string"
421
432
  ? params.cwd
422
- : typeof params.workingDir === 'string'
433
+ : typeof params.workingDir === "string"
423
434
  ? params.workingDir
424
435
  : undefined;
425
- const args = Array.isArray(params.args) && params.args.every((a) => typeof a === 'string')
436
+ const args = Array.isArray(params.args) && params.args.every((a) => typeof a === "string")
426
437
  ? params.args
427
- : Array.isArray(params.argv) && params.argv.every((a) => typeof a === 'string')
438
+ : Array.isArray(params.argv) && params.argv.every((a) => typeof a === "string")
428
439
  ? params.argv
429
440
  : undefined;
430
- const cmdLine = typeof params.command === 'string'
441
+ const cmdLine = typeof params.command === "string"
431
442
  ? params.command
432
- : typeof params.cmd === 'string'
443
+ : typeof params.cmd === "string"
433
444
  ? params.cmd
434
445
  : undefined;
435
446
  if (cmdLine) {
436
447
  const parts = cmdLine.trim().split(/\s+/).filter(Boolean);
437
448
  if (parts.length === 0) {
438
- return { command: '', args: [], workingDir };
449
+ return { command: "", args: [], workingDir };
439
450
  }
440
451
  const [command, ...rest] = parts;
441
452
  return { command, args: args ?? rest, workingDir };
442
453
  }
443
- if (typeof params.tool === 'string' && args) {
454
+ if (typeof params.tool === "string" && args) {
444
455
  return { command: params.tool, args, workingDir };
445
456
  }
446
- return { command: '', args: args ?? [], workingDir };
457
+ return { command: "", args: args ?? [], workingDir };
447
458
  }
448
459
  function extractPatchInfo(params, result) {
449
- const filePath = (typeof params.filePath === 'string' && params.filePath) ||
450
- (typeof params.path === 'string' && params.path) ||
451
- (typeof params.file === 'string' && params.file) ||
452
- '';
453
- const patchContent = (typeof params.patch === 'string' && params.patch) ||
454
- (typeof params.diff === 'string' && params.diff) ||
455
- (typeof params.content === 'string' && params.content) ||
456
- (typeof result === 'string' ? result : JSON.stringify(result ?? ''));
460
+ const filePath = (typeof params.filePath === "string" && params.filePath) ||
461
+ (typeof params.path === "string" && params.path) ||
462
+ (typeof params.file === "string" && params.file) ||
463
+ "";
464
+ const patchContent = (typeof params.patch === "string" && params.patch) ||
465
+ (typeof params.diff === "string" && params.diff) ||
466
+ (typeof params.content === "string" && params.content) ||
467
+ (typeof result === "string" ? result : JSON.stringify(result ?? ""));
457
468
  return { filePath, patchContent };
458
469
  }
459
470
  export default handler;
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/hooks/tool-guard/handler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAUzC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AASjE,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AACxD,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,SAAS,eAAe,CAAC,KAAc,EAAE,OAAO,IAAI,OAAO,EAAU;IACnE,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAElC,MAAM,CAAC,GAAG,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,WAAW;QAAE,OAAO,iBAAiB,CAAC;IAChD,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,UAAU;QAAE,OAAO,gBAAgB,CAAC;IAE9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,CAAC,KAAe,CAAC,EAAE,CAAC;QAC9B,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC;IAE1B,iFAAiF;IACjF,iCAAiC;IACjC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AAClC,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,MAAM,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;QAC1C,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;IACtC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,cAAc,CAAC,MAAe;IACrC,MAAM,OAAO,GACX,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,SAAS,IAAI,MAAM;QACnB,OAAQ,MAAgC,CAAC,OAAO,KAAK,QAAQ;QAC3D,CAAC,CAAE,MAA8B,CAAC,OAAO;QACzC,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,GAAG,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;AAC7C,CAAC;AAED,4EAA4E;AAC5E,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACtC,cAAc;IACd,aAAa;IACb,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,OAAO,aAAa;IACP,OAAO,CAAS;IAChB,KAAK,CAAS;IACd,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;IAErD,YAAY,OAAO,GAAG,iBAAiB,EAAE,KAAK,GAAG,oBAAoB;QACnE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,oFAAoF;IACpF,MAAM,CAAC,GAAG,CAAC,SAAiB,EAAE,QAAgB,EAAE,SAAiB;QAC/D,OAAO,GAAG,SAAS,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;IACjD,CAAC;IAED,GAAG,CAAC,GAAW;QACb,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,oCAAoC;QACpC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAAkB;QACjC,iCAAiC;QACjC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC5C,IAAI,MAAM,KAAK,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACvB,CAAC;CACF;AAED,wEAAwE;AAExE,IAAI,aAAa,GAAsB,EAAE,CAAC;AAC1C,IAAI,eAAe,GAAG,SAAS,CAAC;AAEhC,kDAAkD;AAClD,MAAM,CAAC,IAAI,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAE/C;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,MAAyB;IAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,aAAa,GAAG,MAAM,CAAC;IACvB,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IACpC,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,MAA0B;IAC3C,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IACzD,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;QACtC,+FAA+F;QAC/F,aAAa,CAAC,KAAK,EAAE,CAAC;QACtB,eAAe,GAAG,aAAa,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,KAAkB;IAC5C,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QACjD,KAAK,MAAM;YACT,mFAAmF;YACnF,6EAA6E;YAC7E,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAChH,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;QAC/B;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,GAAgB,KAAK,EAAE,KAAgB,EAAiB,EAAE;IACrE,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,KAA+B,CAAC;IAClD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC;IAClE,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9C,MAAM,YAAY,GAAG,SAAS,EAAE,CAAC;IAEjC,2EAA2E;IAC3E,2CAA2C;IAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,uBAAuB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE7E,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,uCAAuC;QACvC,MAAM,WAAW,GAAG,iBAAiB,CACnC,SAAS,EACT,QAAQ,EACR,MAAM,EACN,MAAM,CACP,CAAC;QAEF,2EAA2E;QAC3E,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,IAAI,eAAe,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,KAAK,eAAe,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACjG,MAAM,QAAQ,GAAG,QAAQ;YACvB,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC;YAC5F,CAAC,CAAC,EAAE,CAAC;QAEP,IAAI,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAClE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC5C,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC/B,wBAAwB;YACxB,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,kBAAkB,CAAC;YAC3E,SAAS,CAAC,QAAQ,CAAC,IAAI,CACrB,4BAA4B,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,EAAE,CACjE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC/B,sBAAsB;YACtB,SAAS,CAAC,QAAQ,CAAC,IAAI,CACrB,0BAA0B,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,SAAS,eAAe,CACtB,KAAc,EACd,cAAqC,EACrC,IAAqB,EACrB,KAAa;QAEb,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YACxC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,KAAK,KAAK,EAAE,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;YACf,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACnC,CAAC;QAED,qEAAqE;QACrE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAAC;QAClF,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEhB,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,GAAG,GAAI,KAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,MAAM,CAAC,GAAG,eAAe,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBACjE,OAAO,GAAG,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;gBAC/B,OAAO,CAAC,CAAC,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QACnD,CAAC;QAED,MAAM,GAAG,GAAG,KAAgC,CAAC;QAC7C,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC9D,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YACjB,OAAO,GAAG,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;IACnD,CAAC;IAED,6BAA6B;IAC7B,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YACzB,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;QAClD,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,eAAe,CACnD,MAAM,EACN,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,EACrC,IAAI,OAAO,EAAU,EACrB,CAAC,CACF,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF;;GAEG;AACH,SAAS,iBAAiB,CACxB,SAAiB,EACjB,QAAgB,EAChB,MAA+B,EAC/B,MAAe;IAEf,MAAM,OAAO,GAAG,GAAG,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACvF,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE3C,0CAA0C;IAC1C,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE3C,gCAAgC;IAChC,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEvD,OAAO;QACL,OAAO;QACP,SAAS;QACT,SAAS;QACT,SAAS;QACT,IAAI;QACJ,QAAQ,EAAE;YACR,QAAQ;YACR,cAAc,EAAE,MAAM;SACvB;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CACrB,QAAgB;IAEhB,OAAO,sBAAsB,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CACtB,QAAgB,EAChB,MAA+B,EAC/B,MAAe;IAEf,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE3C,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,WAAW,CAAC;QACjB,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5F,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YACjF,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,IAAI,EAAE;gBAChB,OAAO;gBACP,aAAa;gBACb,WAAW;gBACX,SAAS,EAAE,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;aACxD,CAAC;QACJ,CAAC;QAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACvD,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI;gBACJ,IAAI;gBACJ,GAAG;aACJ,CAAC;QACJ,CAAC;QAED,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACjE,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO;gBACP,IAAI;gBACJ,UAAU;aACX,CAAC;QACJ,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpE,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ;gBACR,YAAY;aACb,CAAC;QACJ,CAAC;QAED,KAAK,WAAW,CAAC;QACjB,OAAO,CAAC,CAAC,CAAC;YACR,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,QAAQ;gBACR,UAAU,EAAE,MAAM;gBAClB,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC;aAC3E,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,MAA+B,EAC/B,MAAe,EACf,SAAmC;IAEnC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,wCAAwC;IAEpE,MAAM,aAAa,GACjB,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ;QACtC,CAAC,CAAC,MAAM,CAAC,aAAa;QACtB,CAAC,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YACjC,CAAC,CAAC,MAAM,CAAC,MAAM;YACf,CAAC,CAAC,SAAS,CAAC;IAElB,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAC/G,CAAC;IAED,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;QAChC,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;YAC/B,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,SAAS,KAAK,WAAW,IAAI,OAAO,MAAM,KAAK,QAAQ;gBACvD,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,SAAS,CAAC;IAEpB,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AACvF,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,MAA+B;IAE/B,uBAAuB;IACvB,MAAM,GAAG,GAAG,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG;QACrD,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;YACvD,CAAC,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;gBAC/C,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,QAAQ;gBACrB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvH,GAAG;aACJ,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,OAAO;oBACL,IAAI,EAAE,MAAM,CAAC,QAAQ;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvH,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;iBACjB,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,kBAAkB;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,WAAW;IACX,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;QACxD,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;YACvD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB,CACzB,MAA+B;IAE/B,MAAM,UAAU,GACd,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;QAC5B,CAAC,CAAC,MAAM,CAAC,GAAG;QACZ,CAAC,CAAC,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;YACrC,CAAC,CAAC,MAAM,CAAC,UAAU;YACnB,CAAC,CAAC,SAAS,CAAC;IAElB,MAAM,IAAI,GACR,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;QAC3E,CAAC,CAAE,MAAM,CAAC,IAAiB;QAC3B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;YAC7E,CAAC,CAAE,MAAM,CAAC,IAAiB;YAC3B,CAAC,CAAC,SAAS,CAAC;IAElB,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;QAChC,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,CAAC,CAAC,MAAM,CAAC,GAAG;YACZ,CAAC,CAAC,SAAS,CAAC;IAElB,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC;QAC/C,CAAC;QACD,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC;IACrD,CAAC;IAED,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IACpD,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,gBAAgB,CACvB,MAA+B,EAC/B,MAAe;IAEf,MAAM,QAAQ,GACZ,CAAC,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;QACxD,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC;QAChD,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC;QAChD,EAAE,CAAC;IAEL,MAAM,YAAY,GAChB,CAAC,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC;QAClD,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC;QAChD,CAAC,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC;QACtD,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IAEvE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;AACpC,CAAC;AAED,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/hooks/tool-guard/handler.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  * tool-guard hook for output sanitization, but we still preflight-check
9
9
  * forbidden paths when a read targets a sensitive location.
10
10
  */
11
- import type { HookHandler, ClawdstrikeConfig } from '../../types.js';
11
+ import type { ClawdstrikeConfig, HookHandler } from "../../types.js";
12
12
  /**
13
13
  * Initialize the hook with configuration.
14
14
  * Delegates to the shared engine holder so all hooks share one PolicyEngine.
@@ -19,7 +19,7 @@ export declare function initialize(config: ClawdstrikeConfig): void;
19
19
  * Delegates to the shared engine holder.
20
20
  */
21
21
  export declare function getEngine(config?: ClawdstrikeConfig): PolicyEngine;
22
- import type { PolicyEngine } from '../../policy/engine.js';
22
+ import type { PolicyEngine } from "../../policy/engine.js";
23
23
  /**
24
24
  * Hook handler for tool_call (pre-execution) events.
25
25
  *
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/hooks/tool-preflight/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,WAAW,EAMX,iBAAiB,EAGlB,MAAM,gBAAgB,CAAC;AAWxB;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAE1D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,YAAY,CAElE;AAGD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AA+U3D;;;;;;;;GAQG;AACH,QAAA,MAAM,OAAO,EAAE,WA6Gd,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/hooks/tool-preflight/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,KAAK,EAGV,iBAAiB,EAGjB,WAAW,EAIZ,MAAM,gBAAgB,CAAC;AAIxB;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAE1D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,YAAY,CAElE;AAGD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAwX3D;;;;;;;;GAQG;AACH,QAAA,MAAM,OAAO,EAAE,WA8Gd,CAAC;AAEF,eAAe,OAAO,CAAC"}