clawsec 0.0.1

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 (361) hide show
  1. package/README.md +560 -0
  2. package/dist/bin/clawsec.d.ts +7 -0
  3. package/dist/bin/clawsec.d.ts.map +1 -0
  4. package/dist/bin/clawsec.js +12 -0
  5. package/dist/bin/clawsec.js.map +1 -0
  6. package/dist/src/actions/block.d.ts +22 -0
  7. package/dist/src/actions/block.d.ts.map +1 -0
  8. package/dist/src/actions/block.js +83 -0
  9. package/dist/src/actions/block.js.map +1 -0
  10. package/dist/src/actions/confirm.d.ts +35 -0
  11. package/dist/src/actions/confirm.d.ts.map +1 -0
  12. package/dist/src/actions/confirm.js +156 -0
  13. package/dist/src/actions/confirm.js.map +1 -0
  14. package/dist/src/actions/executor.d.ts +64 -0
  15. package/dist/src/actions/executor.d.ts.map +1 -0
  16. package/dist/src/actions/executor.js +114 -0
  17. package/dist/src/actions/executor.js.map +1 -0
  18. package/dist/src/actions/index.d.ts +13 -0
  19. package/dist/src/actions/index.d.ts.map +1 -0
  20. package/dist/src/actions/index.js +15 -0
  21. package/dist/src/actions/index.js.map +1 -0
  22. package/dist/src/actions/log.d.ts +19 -0
  23. package/dist/src/actions/log.d.ts.map +1 -0
  24. package/dist/src/actions/log.js +63 -0
  25. package/dist/src/actions/log.js.map +1 -0
  26. package/dist/src/actions/types.d.ts +85 -0
  27. package/dist/src/actions/types.d.ts.map +1 -0
  28. package/dist/src/actions/types.js +78 -0
  29. package/dist/src/actions/types.js.map +1 -0
  30. package/dist/src/actions/warn.d.ts +22 -0
  31. package/dist/src/actions/warn.d.ts.map +1 -0
  32. package/dist/src/actions/warn.js +84 -0
  33. package/dist/src/actions/warn.js.map +1 -0
  34. package/dist/src/approval/agent-confirm.d.ts +104 -0
  35. package/dist/src/approval/agent-confirm.d.ts.map +1 -0
  36. package/dist/src/approval/agent-confirm.js +173 -0
  37. package/dist/src/approval/agent-confirm.js.map +1 -0
  38. package/dist/src/approval/index.d.ts +14 -0
  39. package/dist/src/approval/index.d.ts.map +1 -0
  40. package/dist/src/approval/index.js +9 -0
  41. package/dist/src/approval/index.js.map +1 -0
  42. package/dist/src/approval/native.d.ts +56 -0
  43. package/dist/src/approval/native.d.ts.map +1 -0
  44. package/dist/src/approval/native.js +196 -0
  45. package/dist/src/approval/native.js.map +1 -0
  46. package/dist/src/approval/store.d.ts +88 -0
  47. package/dist/src/approval/store.d.ts.map +1 -0
  48. package/dist/src/approval/store.js +192 -0
  49. package/dist/src/approval/store.js.map +1 -0
  50. package/dist/src/approval/types.d.ts +119 -0
  51. package/dist/src/approval/types.d.ts.map +1 -0
  52. package/dist/src/approval/types.js +6 -0
  53. package/dist/src/approval/types.js.map +1 -0
  54. package/dist/src/approval/webhook.d.ts +170 -0
  55. package/dist/src/approval/webhook.d.ts.map +1 -0
  56. package/dist/src/approval/webhook.js +362 -0
  57. package/dist/src/approval/webhook.js.map +1 -0
  58. package/dist/src/cli/commands/audit.d.ts +43 -0
  59. package/dist/src/cli/commands/audit.d.ts.map +1 -0
  60. package/dist/src/cli/commands/audit.js +115 -0
  61. package/dist/src/cli/commands/audit.js.map +1 -0
  62. package/dist/src/cli/commands/feedback.d.ts +27 -0
  63. package/dist/src/cli/commands/feedback.d.ts.map +1 -0
  64. package/dist/src/cli/commands/feedback.js +228 -0
  65. package/dist/src/cli/commands/feedback.js.map +1 -0
  66. package/dist/src/cli/commands/index.d.ts +11 -0
  67. package/dist/src/cli/commands/index.d.ts.map +1 -0
  68. package/dist/src/cli/commands/index.js +13 -0
  69. package/dist/src/cli/commands/index.js.map +1 -0
  70. package/dist/src/cli/commands/status.d.ts +20 -0
  71. package/dist/src/cli/commands/status.d.ts.map +1 -0
  72. package/dist/src/cli/commands/status.js +122 -0
  73. package/dist/src/cli/commands/status.js.map +1 -0
  74. package/dist/src/cli/commands/test.d.ts +23 -0
  75. package/dist/src/cli/commands/test.d.ts.map +1 -0
  76. package/dist/src/cli/commands/test.js +134 -0
  77. package/dist/src/cli/commands/test.js.map +1 -0
  78. package/dist/src/cli/commands/types.d.ts +81 -0
  79. package/dist/src/cli/commands/types.d.ts.map +1 -0
  80. package/dist/src/cli/commands/types.js +6 -0
  81. package/dist/src/cli/commands/types.js.map +1 -0
  82. package/dist/src/cli/index.d.ts +17 -0
  83. package/dist/src/cli/index.d.ts.map +1 -0
  84. package/dist/src/cli/index.js +267 -0
  85. package/dist/src/cli/index.js.map +1 -0
  86. package/dist/src/config/defaults.d.ts +20 -0
  87. package/dist/src/config/defaults.d.ts.map +1 -0
  88. package/dist/src/config/defaults.js +123 -0
  89. package/dist/src/config/defaults.js.map +1 -0
  90. package/dist/src/config/index.d.ts +8 -0
  91. package/dist/src/config/index.d.ts.map +1 -0
  92. package/dist/src/config/index.js +41 -0
  93. package/dist/src/config/index.js.map +1 -0
  94. package/dist/src/config/loader.d.ts +99 -0
  95. package/dist/src/config/loader.d.ts.map +1 -0
  96. package/dist/src/config/loader.js +242 -0
  97. package/dist/src/config/loader.js.map +1 -0
  98. package/dist/src/config/schema.d.ts +627 -0
  99. package/dist/src/config/schema.d.ts.map +1 -0
  100. package/dist/src/config/schema.js +585 -0
  101. package/dist/src/config/schema.js.map +1 -0
  102. package/dist/src/detectors/destructive/cloud-detector.d.ts +51 -0
  103. package/dist/src/detectors/destructive/cloud-detector.d.ts.map +1 -0
  104. package/dist/src/detectors/destructive/cloud-detector.js +556 -0
  105. package/dist/src/detectors/destructive/cloud-detector.js.map +1 -0
  106. package/dist/src/detectors/destructive/code-detector.d.ts +59 -0
  107. package/dist/src/detectors/destructive/code-detector.d.ts.map +1 -0
  108. package/dist/src/detectors/destructive/code-detector.js +558 -0
  109. package/dist/src/detectors/destructive/code-detector.js.map +1 -0
  110. package/dist/src/detectors/destructive/index.d.ts +54 -0
  111. package/dist/src/detectors/destructive/index.d.ts.map +1 -0
  112. package/dist/src/detectors/destructive/index.js +168 -0
  113. package/dist/src/detectors/destructive/index.js.map +1 -0
  114. package/dist/src/detectors/destructive/shell-detector.d.ts +43 -0
  115. package/dist/src/detectors/destructive/shell-detector.d.ts.map +1 -0
  116. package/dist/src/detectors/destructive/shell-detector.js +302 -0
  117. package/dist/src/detectors/destructive/shell-detector.js.map +1 -0
  118. package/dist/src/detectors/destructive/types.d.ts +143 -0
  119. package/dist/src/detectors/destructive/types.d.ts.map +1 -0
  120. package/dist/src/detectors/destructive/types.js +6 -0
  121. package/dist/src/detectors/destructive/types.js.map +1 -0
  122. package/dist/src/detectors/exfiltration/cloud-detector.d.ts +51 -0
  123. package/dist/src/detectors/exfiltration/cloud-detector.d.ts.map +1 -0
  124. package/dist/src/detectors/exfiltration/cloud-detector.js +427 -0
  125. package/dist/src/detectors/exfiltration/cloud-detector.js.map +1 -0
  126. package/dist/src/detectors/exfiltration/http-detector.d.ts +47 -0
  127. package/dist/src/detectors/exfiltration/http-detector.d.ts.map +1 -0
  128. package/dist/src/detectors/exfiltration/http-detector.js +429 -0
  129. package/dist/src/detectors/exfiltration/http-detector.js.map +1 -0
  130. package/dist/src/detectors/exfiltration/index.d.ts +44 -0
  131. package/dist/src/detectors/exfiltration/index.d.ts.map +1 -0
  132. package/dist/src/detectors/exfiltration/index.js +118 -0
  133. package/dist/src/detectors/exfiltration/index.js.map +1 -0
  134. package/dist/src/detectors/exfiltration/network-detector.d.ts +55 -0
  135. package/dist/src/detectors/exfiltration/network-detector.d.ts.map +1 -0
  136. package/dist/src/detectors/exfiltration/network-detector.js +504 -0
  137. package/dist/src/detectors/exfiltration/network-detector.js.map +1 -0
  138. package/dist/src/detectors/exfiltration/types.d.ts +139 -0
  139. package/dist/src/detectors/exfiltration/types.d.ts.map +1 -0
  140. package/dist/src/detectors/exfiltration/types.js +6 -0
  141. package/dist/src/detectors/exfiltration/types.js.map +1 -0
  142. package/dist/src/detectors/purchase/domain-detector.d.ts +44 -0
  143. package/dist/src/detectors/purchase/domain-detector.d.ts.map +1 -0
  144. package/dist/src/detectors/purchase/domain-detector.js +296 -0
  145. package/dist/src/detectors/purchase/domain-detector.js.map +1 -0
  146. package/dist/src/detectors/purchase/form-detector.d.ts +27 -0
  147. package/dist/src/detectors/purchase/form-detector.d.ts.map +1 -0
  148. package/dist/src/detectors/purchase/form-detector.js +344 -0
  149. package/dist/src/detectors/purchase/form-detector.js.map +1 -0
  150. package/dist/src/detectors/purchase/index.d.ts +65 -0
  151. package/dist/src/detectors/purchase/index.d.ts.map +1 -0
  152. package/dist/src/detectors/purchase/index.js +216 -0
  153. package/dist/src/detectors/purchase/index.js.map +1 -0
  154. package/dist/src/detectors/purchase/spend-tracker.d.ts +132 -0
  155. package/dist/src/detectors/purchase/spend-tracker.d.ts.map +1 -0
  156. package/dist/src/detectors/purchase/spend-tracker.js +313 -0
  157. package/dist/src/detectors/purchase/spend-tracker.js.map +1 -0
  158. package/dist/src/detectors/purchase/types.d.ts +139 -0
  159. package/dist/src/detectors/purchase/types.d.ts.map +1 -0
  160. package/dist/src/detectors/purchase/types.js +6 -0
  161. package/dist/src/detectors/purchase/types.js.map +1 -0
  162. package/dist/src/detectors/purchase/url-detector.d.ts +31 -0
  163. package/dist/src/detectors/purchase/url-detector.d.ts.map +1 -0
  164. package/dist/src/detectors/purchase/url-detector.js +292 -0
  165. package/dist/src/detectors/purchase/url-detector.js.map +1 -0
  166. package/dist/src/detectors/secrets/api-key-detector.d.ts +30 -0
  167. package/dist/src/detectors/secrets/api-key-detector.d.ts.map +1 -0
  168. package/dist/src/detectors/secrets/api-key-detector.js +297 -0
  169. package/dist/src/detectors/secrets/api-key-detector.js.map +1 -0
  170. package/dist/src/detectors/secrets/index.d.ts +43 -0
  171. package/dist/src/detectors/secrets/index.d.ts.map +1 -0
  172. package/dist/src/detectors/secrets/index.js +261 -0
  173. package/dist/src/detectors/secrets/index.js.map +1 -0
  174. package/dist/src/detectors/secrets/pii-detector.d.ts +54 -0
  175. package/dist/src/detectors/secrets/pii-detector.d.ts.map +1 -0
  176. package/dist/src/detectors/secrets/pii-detector.js +286 -0
  177. package/dist/src/detectors/secrets/pii-detector.js.map +1 -0
  178. package/dist/src/detectors/secrets/token-detector.d.ts +51 -0
  179. package/dist/src/detectors/secrets/token-detector.d.ts.map +1 -0
  180. package/dist/src/detectors/secrets/token-detector.js +233 -0
  181. package/dist/src/detectors/secrets/token-detector.js.map +1 -0
  182. package/dist/src/detectors/secrets/types.d.ts +157 -0
  183. package/dist/src/detectors/secrets/types.d.ts.map +1 -0
  184. package/dist/src/detectors/secrets/types.js +6 -0
  185. package/dist/src/detectors/secrets/types.js.map +1 -0
  186. package/dist/src/detectors/website/category-detector.d.ts +22 -0
  187. package/dist/src/detectors/website/category-detector.d.ts.map +1 -0
  188. package/dist/src/detectors/website/category-detector.js +162 -0
  189. package/dist/src/detectors/website/category-detector.js.map +1 -0
  190. package/dist/src/detectors/website/index.d.ts +53 -0
  191. package/dist/src/detectors/website/index.d.ts.map +1 -0
  192. package/dist/src/detectors/website/index.js +232 -0
  193. package/dist/src/detectors/website/index.js.map +1 -0
  194. package/dist/src/detectors/website/pattern-matcher.d.ts +33 -0
  195. package/dist/src/detectors/website/pattern-matcher.d.ts.map +1 -0
  196. package/dist/src/detectors/website/pattern-matcher.js +121 -0
  197. package/dist/src/detectors/website/pattern-matcher.js.map +1 -0
  198. package/dist/src/detectors/website/types.d.ts +105 -0
  199. package/dist/src/detectors/website/types.d.ts.map +1 -0
  200. package/dist/src/detectors/website/types.js +6 -0
  201. package/dist/src/detectors/website/types.js.map +1 -0
  202. package/dist/src/engine/analyzer.d.ts +87 -0
  203. package/dist/src/engine/analyzer.d.ts.map +1 -0
  204. package/dist/src/engine/analyzer.js +427 -0
  205. package/dist/src/engine/analyzer.js.map +1 -0
  206. package/dist/src/engine/cache.d.ts +80 -0
  207. package/dist/src/engine/cache.d.ts.map +1 -0
  208. package/dist/src/engine/cache.js +167 -0
  209. package/dist/src/engine/cache.js.map +1 -0
  210. package/dist/src/engine/index.d.ts +11 -0
  211. package/dist/src/engine/index.d.ts.map +1 -0
  212. package/dist/src/engine/index.js +11 -0
  213. package/dist/src/engine/index.js.map +1 -0
  214. package/dist/src/engine/llm-client.d.ts +210 -0
  215. package/dist/src/engine/llm-client.d.ts.map +1 -0
  216. package/dist/src/engine/llm-client.js +506 -0
  217. package/dist/src/engine/llm-client.js.map +1 -0
  218. package/dist/src/engine/types.d.ts +163 -0
  219. package/dist/src/engine/types.d.ts.map +1 -0
  220. package/dist/src/engine/types.js +21 -0
  221. package/dist/src/engine/types.js.map +1 -0
  222. package/dist/src/feedback/index.d.ts +9 -0
  223. package/dist/src/feedback/index.d.ts.map +1 -0
  224. package/dist/src/feedback/index.js +8 -0
  225. package/dist/src/feedback/index.js.map +1 -0
  226. package/dist/src/feedback/learner.d.ts +222 -0
  227. package/dist/src/feedback/learner.d.ts.map +1 -0
  228. package/dist/src/feedback/learner.js +401 -0
  229. package/dist/src/feedback/learner.js.map +1 -0
  230. package/dist/src/feedback/store.d.ts +113 -0
  231. package/dist/src/feedback/store.d.ts.map +1 -0
  232. package/dist/src/feedback/store.js +228 -0
  233. package/dist/src/feedback/store.js.map +1 -0
  234. package/dist/src/feedback/types.d.ts +126 -0
  235. package/dist/src/feedback/types.d.ts.map +1 -0
  236. package/dist/src/feedback/types.js +6 -0
  237. package/dist/src/feedback/types.js.map +1 -0
  238. package/dist/src/hooks/before-agent-start/handler.d.ts +37 -0
  239. package/dist/src/hooks/before-agent-start/handler.d.ts.map +1 -0
  240. package/dist/src/hooks/before-agent-start/handler.js +109 -0
  241. package/dist/src/hooks/before-agent-start/handler.js.map +1 -0
  242. package/dist/src/hooks/before-agent-start/index.d.ts +8 -0
  243. package/dist/src/hooks/before-agent-start/index.d.ts.map +1 -0
  244. package/dist/src/hooks/before-agent-start/index.js +7 -0
  245. package/dist/src/hooks/before-agent-start/index.js.map +1 -0
  246. package/dist/src/hooks/before-agent-start/prompts.d.ts +48 -0
  247. package/dist/src/hooks/before-agent-start/prompts.d.ts.map +1 -0
  248. package/dist/src/hooks/before-agent-start/prompts.js +103 -0
  249. package/dist/src/hooks/before-agent-start/prompts.js.map +1 -0
  250. package/dist/src/hooks/before-tool-call/handler.d.ts +42 -0
  251. package/dist/src/hooks/before-tool-call/handler.d.ts.map +1 -0
  252. package/dist/src/hooks/before-tool-call/handler.js +226 -0
  253. package/dist/src/hooks/before-tool-call/handler.js.map +1 -0
  254. package/dist/src/hooks/before-tool-call/index.d.ts +7 -0
  255. package/dist/src/hooks/before-tool-call/index.d.ts.map +1 -0
  256. package/dist/src/hooks/before-tool-call/index.js +6 -0
  257. package/dist/src/hooks/before-tool-call/index.js.map +1 -0
  258. package/dist/src/hooks/tool-result-persist/filter.d.ts +72 -0
  259. package/dist/src/hooks/tool-result-persist/filter.d.ts.map +1 -0
  260. package/dist/src/hooks/tool-result-persist/filter.js +305 -0
  261. package/dist/src/hooks/tool-result-persist/filter.js.map +1 -0
  262. package/dist/src/hooks/tool-result-persist/handler.d.ts +49 -0
  263. package/dist/src/hooks/tool-result-persist/handler.d.ts.map +1 -0
  264. package/dist/src/hooks/tool-result-persist/handler.js +217 -0
  265. package/dist/src/hooks/tool-result-persist/handler.js.map +1 -0
  266. package/dist/src/hooks/tool-result-persist/index.d.ts +11 -0
  267. package/dist/src/hooks/tool-result-persist/index.d.ts.map +1 -0
  268. package/dist/src/hooks/tool-result-persist/index.js +11 -0
  269. package/dist/src/hooks/tool-result-persist/index.js.map +1 -0
  270. package/dist/src/index.d.ts +256 -0
  271. package/dist/src/index.d.ts.map +1 -0
  272. package/dist/src/index.js +222 -0
  273. package/dist/src/index.js.map +1 -0
  274. package/dist/src/notifications/discord.d.ts +10 -0
  275. package/dist/src/notifications/discord.d.ts.map +1 -0
  276. package/dist/src/notifications/discord.js +218 -0
  277. package/dist/src/notifications/discord.js.map +1 -0
  278. package/dist/src/notifications/index.d.ts +37 -0
  279. package/dist/src/notifications/index.d.ts.map +1 -0
  280. package/dist/src/notifications/index.js +68 -0
  281. package/dist/src/notifications/index.js.map +1 -0
  282. package/dist/src/notifications/slack.d.ts +10 -0
  283. package/dist/src/notifications/slack.d.ts.map +1 -0
  284. package/dist/src/notifications/slack.js +218 -0
  285. package/dist/src/notifications/slack.js.map +1 -0
  286. package/dist/src/notifications/telegram.d.ts +10 -0
  287. package/dist/src/notifications/telegram.d.ts.map +1 -0
  288. package/dist/src/notifications/telegram.js +242 -0
  289. package/dist/src/notifications/telegram.js.map +1 -0
  290. package/dist/src/notifications/types.d.ts +119 -0
  291. package/dist/src/notifications/types.d.ts.map +1 -0
  292. package/dist/src/notifications/types.js +6 -0
  293. package/dist/src/notifications/types.js.map +1 -0
  294. package/dist/src/proxy/index.d.ts +8 -0
  295. package/dist/src/proxy/index.d.ts.map +1 -0
  296. package/dist/src/proxy/index.js +9 -0
  297. package/dist/src/proxy/index.js.map +1 -0
  298. package/dist/src/proxy/middleware.d.ts +55 -0
  299. package/dist/src/proxy/middleware.d.ts.map +1 -0
  300. package/dist/src/proxy/middleware.js +215 -0
  301. package/dist/src/proxy/middleware.js.map +1 -0
  302. package/dist/src/proxy/server.d.ts +57 -0
  303. package/dist/src/proxy/server.d.ts.map +1 -0
  304. package/dist/src/proxy/server.js +298 -0
  305. package/dist/src/proxy/server.js.map +1 -0
  306. package/dist/src/proxy/types.d.ts +136 -0
  307. package/dist/src/proxy/types.d.ts.map +1 -0
  308. package/dist/src/proxy/types.js +6 -0
  309. package/dist/src/proxy/types.js.map +1 -0
  310. package/dist/src/sanitization/index.d.ts +10 -0
  311. package/dist/src/sanitization/index.d.ts.map +1 -0
  312. package/dist/src/sanitization/index.js +9 -0
  313. package/dist/src/sanitization/index.js.map +1 -0
  314. package/dist/src/sanitization/patterns.d.ts +51 -0
  315. package/dist/src/sanitization/patterns.d.ts.map +1 -0
  316. package/dist/src/sanitization/patterns.js +266 -0
  317. package/dist/src/sanitization/patterns.js.map +1 -0
  318. package/dist/src/sanitization/scanner.d.ts +29 -0
  319. package/dist/src/sanitization/scanner.d.ts.map +1 -0
  320. package/dist/src/sanitization/scanner.js +328 -0
  321. package/dist/src/sanitization/scanner.js.map +1 -0
  322. package/dist/src/sanitization/types.d.ts +57 -0
  323. package/dist/src/sanitization/types.d.ts.map +1 -0
  324. package/dist/src/sanitization/types.js +5 -0
  325. package/dist/src/sanitization/types.js.map +1 -0
  326. package/openclaw.plugin.json +114 -0
  327. package/package.json +63 -0
  328. package/rules/builtin/README.md +139 -0
  329. package/rules/builtin/ai-services.yaml +70 -0
  330. package/rules/builtin/api-keys.yaml +64 -0
  331. package/rules/builtin/authentication.yaml +56 -0
  332. package/rules/builtin/aws-security.yaml +57 -0
  333. package/rules/builtin/azure-security.yaml +58 -0
  334. package/rules/builtin/cicd-security.yaml +64 -0
  335. package/rules/builtin/cloud-storage.yaml +64 -0
  336. package/rules/builtin/container-registry.yaml +55 -0
  337. package/rules/builtin/crypto-wallets.yaml +71 -0
  338. package/rules/builtin/database-nosql.yaml +58 -0
  339. package/rules/builtin/database-sql.yaml +62 -0
  340. package/rules/builtin/development-env.yaml +67 -0
  341. package/rules/builtin/docker.yaml +57 -0
  342. package/rules/builtin/filesystem.yaml +71 -0
  343. package/rules/builtin/financial-pci.yaml +61 -0
  344. package/rules/builtin/gcp-security.yaml +57 -0
  345. package/rules/builtin/git-operations.yaml +68 -0
  346. package/rules/builtin/healthcare-hipaa.yaml +64 -0
  347. package/rules/builtin/kubernetes.yaml +60 -0
  348. package/rules/builtin/messaging-services.yaml +53 -0
  349. package/rules/builtin/minimal.yaml +47 -0
  350. package/rules/builtin/mobile-development.yaml +61 -0
  351. package/rules/builtin/monitoring.yaml +63 -0
  352. package/rules/builtin/network-security.yaml +57 -0
  353. package/rules/builtin/package-managers.yaml +74 -0
  354. package/rules/builtin/payment-processing.yaml +66 -0
  355. package/rules/builtin/pii-protection.yaml +48 -0
  356. package/rules/builtin/production-strict.yaml +55 -0
  357. package/rules/builtin/secrets-management.yaml +63 -0
  358. package/rules/builtin/serverless.yaml +74 -0
  359. package/rules/builtin/ssh-security.yaml +66 -0
  360. package/rules/builtin/terraform.yaml +51 -0
  361. package/rules/builtin/web-security.yaml +62 -0
@@ -0,0 +1,627 @@
1
+ /**
2
+ * Clawsec Configuration Schema
3
+ * Zod schemas and TypeScript types for the security plugin configuration
4
+ */
5
+ import { z } from 'zod';
6
+ /**
7
+ * Severity levels for security detections
8
+ */
9
+ export declare const SeveritySchema: z.ZodEnum<{
10
+ critical: "critical";
11
+ high: "high";
12
+ medium: "medium";
13
+ low: "low";
14
+ }>;
15
+ export type Severity = z.infer<typeof SeveritySchema>;
16
+ /**
17
+ * Actions that can be taken when a threat is detected
18
+ */
19
+ export declare const ActionSchema: z.ZodEnum<{
20
+ block: "block";
21
+ confirm: "confirm";
22
+ "agent-confirm": "agent-confirm";
23
+ warn: "warn";
24
+ log: "log";
25
+ }>;
26
+ export type Action = z.infer<typeof ActionSchema>;
27
+ /**
28
+ * Log levels for the plugin
29
+ */
30
+ export declare const LogLevelSchema: z.ZodEnum<{
31
+ warn: "warn";
32
+ debug: "debug";
33
+ info: "info";
34
+ error: "error";
35
+ }>;
36
+ export type LogLevel = z.infer<typeof LogLevelSchema>;
37
+ /**
38
+ * Mode for domain/website filtering
39
+ */
40
+ export declare const FilterModeSchema: z.ZodEnum<{
41
+ blocklist: "blocklist";
42
+ allowlist: "allowlist";
43
+ }>;
44
+ export type FilterMode = z.infer<typeof FilterModeSchema>;
45
+ /**
46
+ * Global plugin settings
47
+ */
48
+ export declare const GlobalConfigSchema: z.ZodDefault<z.ZodObject<{
49
+ enabled: z.ZodDefault<z.ZodBoolean>;
50
+ logLevel: z.ZodDefault<z.ZodEnum<{
51
+ warn: "warn";
52
+ debug: "debug";
53
+ info: "info";
54
+ error: "error";
55
+ }>>;
56
+ }, z.core.$strip>>;
57
+ export type GlobalConfig = z.infer<typeof GlobalConfigSchema>;
58
+ /**
59
+ * LLM integration settings
60
+ */
61
+ export declare const LLMConfigSchema: z.ZodDefault<z.ZodObject<{
62
+ enabled: z.ZodDefault<z.ZodBoolean>;
63
+ model: z.ZodDefault<z.ZodNullable<z.ZodString>>;
64
+ }, z.core.$strip>>;
65
+ export type LLMConfig = z.infer<typeof LLMConfigSchema>;
66
+ /**
67
+ * Spending limits for purchase protection
68
+ */
69
+ export declare const SpendLimitsSchema: z.ZodDefault<z.ZodObject<{
70
+ perTransaction: z.ZodDefault<z.ZodNumber>;
71
+ daily: z.ZodDefault<z.ZodNumber>;
72
+ }, z.core.$strip>>;
73
+ export type SpendLimits = z.infer<typeof SpendLimitsSchema>;
74
+ /**
75
+ * Domain filtering configuration for purchases
76
+ */
77
+ export declare const PurchaseDomainsSchema: z.ZodDefault<z.ZodObject<{
78
+ mode: z.ZodDefault<z.ZodEnum<{
79
+ blocklist: "blocklist";
80
+ allowlist: "allowlist";
81
+ }>>;
82
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
83
+ }, z.core.$strip>>;
84
+ export type PurchaseDomains = z.infer<typeof PurchaseDomainsSchema>;
85
+ /**
86
+ * Purchase protection rule configuration
87
+ */
88
+ export declare const PurchaseRuleSchema: z.ZodDefault<z.ZodObject<{
89
+ enabled: z.ZodDefault<z.ZodBoolean>;
90
+ severity: z.ZodDefault<z.ZodEnum<{
91
+ critical: "critical";
92
+ high: "high";
93
+ medium: "medium";
94
+ low: "low";
95
+ }>>;
96
+ action: z.ZodDefault<z.ZodEnum<{
97
+ block: "block";
98
+ confirm: "confirm";
99
+ "agent-confirm": "agent-confirm";
100
+ warn: "warn";
101
+ log: "log";
102
+ }>>;
103
+ spendLimits: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
104
+ perTransaction: z.ZodDefault<z.ZodNumber>;
105
+ daily: z.ZodDefault<z.ZodNumber>;
106
+ }, z.core.$strip>>>>;
107
+ domains: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
108
+ mode: z.ZodDefault<z.ZodEnum<{
109
+ blocklist: "blocklist";
110
+ allowlist: "allowlist";
111
+ }>>;
112
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
113
+ }, z.core.$strip>>>>;
114
+ }, z.core.$strip>>;
115
+ export type PurchaseRule = z.infer<typeof PurchaseRuleSchema>;
116
+ /**
117
+ * Website control rule configuration
118
+ */
119
+ export declare const WebsiteRuleSchema: z.ZodDefault<z.ZodObject<{
120
+ enabled: z.ZodDefault<z.ZodBoolean>;
121
+ mode: z.ZodDefault<z.ZodEnum<{
122
+ blocklist: "blocklist";
123
+ allowlist: "allowlist";
124
+ }>>;
125
+ severity: z.ZodDefault<z.ZodEnum<{
126
+ critical: "critical";
127
+ high: "high";
128
+ medium: "medium";
129
+ low: "low";
130
+ }>>;
131
+ action: z.ZodDefault<z.ZodEnum<{
132
+ block: "block";
133
+ confirm: "confirm";
134
+ "agent-confirm": "agent-confirm";
135
+ warn: "warn";
136
+ log: "log";
137
+ }>>;
138
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
139
+ allowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
140
+ }, z.core.$strip>>;
141
+ export type WebsiteRule = z.infer<typeof WebsiteRuleSchema>;
142
+ /**
143
+ * Shell command protection configuration
144
+ */
145
+ export declare const ShellProtectionSchema: z.ZodDefault<z.ZodObject<{
146
+ enabled: z.ZodDefault<z.ZodBoolean>;
147
+ }, z.core.$strip>>;
148
+ export type ShellProtection = z.infer<typeof ShellProtectionSchema>;
149
+ /**
150
+ * Cloud operation protection configuration
151
+ */
152
+ export declare const CloudProtectionSchema: z.ZodDefault<z.ZodObject<{
153
+ enabled: z.ZodDefault<z.ZodBoolean>;
154
+ }, z.core.$strip>>;
155
+ export type CloudProtection = z.infer<typeof CloudProtectionSchema>;
156
+ /**
157
+ * Code pattern protection configuration
158
+ */
159
+ export declare const CodeProtectionSchema: z.ZodDefault<z.ZodObject<{
160
+ enabled: z.ZodDefault<z.ZodBoolean>;
161
+ }, z.core.$strip>>;
162
+ export type CodeProtection = z.infer<typeof CodeProtectionSchema>;
163
+ /**
164
+ * Destructive commands rule configuration
165
+ */
166
+ export declare const DestructiveRuleSchema: z.ZodDefault<z.ZodObject<{
167
+ enabled: z.ZodDefault<z.ZodBoolean>;
168
+ severity: z.ZodDefault<z.ZodEnum<{
169
+ critical: "critical";
170
+ high: "high";
171
+ medium: "medium";
172
+ low: "low";
173
+ }>>;
174
+ action: z.ZodDefault<z.ZodEnum<{
175
+ block: "block";
176
+ confirm: "confirm";
177
+ "agent-confirm": "agent-confirm";
178
+ warn: "warn";
179
+ log: "log";
180
+ }>>;
181
+ shell: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
182
+ enabled: z.ZodDefault<z.ZodBoolean>;
183
+ }, z.core.$strip>>>>;
184
+ cloud: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
185
+ enabled: z.ZodDefault<z.ZodBoolean>;
186
+ }, z.core.$strip>>>>;
187
+ code: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
188
+ enabled: z.ZodDefault<z.ZodBoolean>;
189
+ }, z.core.$strip>>>>;
190
+ }, z.core.$strip>>;
191
+ export type DestructiveRule = z.infer<typeof DestructiveRuleSchema>;
192
+ /**
193
+ * Injection scanner category configuration
194
+ */
195
+ export declare const InjectionCategoriesSchema: z.ZodDefault<z.ZodObject<{
196
+ instructionOverride: z.ZodDefault<z.ZodBoolean>;
197
+ systemLeak: z.ZodDefault<z.ZodBoolean>;
198
+ jailbreak: z.ZodDefault<z.ZodBoolean>;
199
+ encodedPayload: z.ZodDefault<z.ZodBoolean>;
200
+ }, z.core.$strip>>;
201
+ export type InjectionCategories = z.infer<typeof InjectionCategoriesSchema>;
202
+ /**
203
+ * Output sanitization rule configuration
204
+ */
205
+ export declare const SanitizationRuleSchema: z.ZodDefault<z.ZodObject<{
206
+ enabled: z.ZodDefault<z.ZodBoolean>;
207
+ severity: z.ZodDefault<z.ZodEnum<{
208
+ critical: "critical";
209
+ high: "high";
210
+ medium: "medium";
211
+ low: "low";
212
+ }>>;
213
+ action: z.ZodDefault<z.ZodEnum<{
214
+ block: "block";
215
+ confirm: "confirm";
216
+ "agent-confirm": "agent-confirm";
217
+ warn: "warn";
218
+ log: "log";
219
+ }>>;
220
+ minConfidence: z.ZodDefault<z.ZodNumber>;
221
+ redactMatches: z.ZodDefault<z.ZodBoolean>;
222
+ categories: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
223
+ instructionOverride: z.ZodDefault<z.ZodBoolean>;
224
+ systemLeak: z.ZodDefault<z.ZodBoolean>;
225
+ jailbreak: z.ZodDefault<z.ZodBoolean>;
226
+ encodedPayload: z.ZodDefault<z.ZodBoolean>;
227
+ }, z.core.$strip>>>>;
228
+ }, z.core.$strip>>;
229
+ export type SanitizationRule = z.infer<typeof SanitizationRuleSchema>;
230
+ /**
231
+ * Secrets and PII detection rule configuration
232
+ */
233
+ export declare const SecretsRuleSchema: z.ZodDefault<z.ZodObject<{
234
+ enabled: z.ZodDefault<z.ZodBoolean>;
235
+ severity: z.ZodDefault<z.ZodEnum<{
236
+ critical: "critical";
237
+ high: "high";
238
+ medium: "medium";
239
+ low: "low";
240
+ }>>;
241
+ action: z.ZodDefault<z.ZodEnum<{
242
+ block: "block";
243
+ confirm: "confirm";
244
+ "agent-confirm": "agent-confirm";
245
+ warn: "warn";
246
+ log: "log";
247
+ }>>;
248
+ }, z.core.$strip>>;
249
+ export type SecretsRule = z.infer<typeof SecretsRuleSchema>;
250
+ /**
251
+ * Data exfiltration detection rule configuration
252
+ */
253
+ export declare const ExfiltrationRuleSchema: z.ZodDefault<z.ZodObject<{
254
+ enabled: z.ZodDefault<z.ZodBoolean>;
255
+ severity: z.ZodDefault<z.ZodEnum<{
256
+ critical: "critical";
257
+ high: "high";
258
+ medium: "medium";
259
+ low: "low";
260
+ }>>;
261
+ action: z.ZodDefault<z.ZodEnum<{
262
+ block: "block";
263
+ confirm: "confirm";
264
+ "agent-confirm": "agent-confirm";
265
+ warn: "warn";
266
+ log: "log";
267
+ }>>;
268
+ }, z.core.$strip>>;
269
+ export type ExfiltrationRule = z.infer<typeof ExfiltrationRuleSchema>;
270
+ /**
271
+ * All security rules configuration
272
+ */
273
+ export declare const RulesConfigSchema: z.ZodDefault<z.ZodObject<{
274
+ purchase: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
275
+ enabled: z.ZodDefault<z.ZodBoolean>;
276
+ severity: z.ZodDefault<z.ZodEnum<{
277
+ critical: "critical";
278
+ high: "high";
279
+ medium: "medium";
280
+ low: "low";
281
+ }>>;
282
+ action: z.ZodDefault<z.ZodEnum<{
283
+ block: "block";
284
+ confirm: "confirm";
285
+ "agent-confirm": "agent-confirm";
286
+ warn: "warn";
287
+ log: "log";
288
+ }>>;
289
+ spendLimits: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
290
+ perTransaction: z.ZodDefault<z.ZodNumber>;
291
+ daily: z.ZodDefault<z.ZodNumber>;
292
+ }, z.core.$strip>>>>;
293
+ domains: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
294
+ mode: z.ZodDefault<z.ZodEnum<{
295
+ blocklist: "blocklist";
296
+ allowlist: "allowlist";
297
+ }>>;
298
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
299
+ }, z.core.$strip>>>>;
300
+ }, z.core.$strip>>>>;
301
+ website: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
302
+ enabled: z.ZodDefault<z.ZodBoolean>;
303
+ mode: z.ZodDefault<z.ZodEnum<{
304
+ blocklist: "blocklist";
305
+ allowlist: "allowlist";
306
+ }>>;
307
+ severity: z.ZodDefault<z.ZodEnum<{
308
+ critical: "critical";
309
+ high: "high";
310
+ medium: "medium";
311
+ low: "low";
312
+ }>>;
313
+ action: z.ZodDefault<z.ZodEnum<{
314
+ block: "block";
315
+ confirm: "confirm";
316
+ "agent-confirm": "agent-confirm";
317
+ warn: "warn";
318
+ log: "log";
319
+ }>>;
320
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
321
+ allowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
322
+ }, z.core.$strip>>>>;
323
+ destructive: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
324
+ enabled: z.ZodDefault<z.ZodBoolean>;
325
+ severity: z.ZodDefault<z.ZodEnum<{
326
+ critical: "critical";
327
+ high: "high";
328
+ medium: "medium";
329
+ low: "low";
330
+ }>>;
331
+ action: z.ZodDefault<z.ZodEnum<{
332
+ block: "block";
333
+ confirm: "confirm";
334
+ "agent-confirm": "agent-confirm";
335
+ warn: "warn";
336
+ log: "log";
337
+ }>>;
338
+ shell: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
339
+ enabled: z.ZodDefault<z.ZodBoolean>;
340
+ }, z.core.$strip>>>>;
341
+ cloud: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
342
+ enabled: z.ZodDefault<z.ZodBoolean>;
343
+ }, z.core.$strip>>>>;
344
+ code: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
345
+ enabled: z.ZodDefault<z.ZodBoolean>;
346
+ }, z.core.$strip>>>>;
347
+ }, z.core.$strip>>>>;
348
+ secrets: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
349
+ enabled: z.ZodDefault<z.ZodBoolean>;
350
+ severity: z.ZodDefault<z.ZodEnum<{
351
+ critical: "critical";
352
+ high: "high";
353
+ medium: "medium";
354
+ low: "low";
355
+ }>>;
356
+ action: z.ZodDefault<z.ZodEnum<{
357
+ block: "block";
358
+ confirm: "confirm";
359
+ "agent-confirm": "agent-confirm";
360
+ warn: "warn";
361
+ log: "log";
362
+ }>>;
363
+ }, z.core.$strip>>>>;
364
+ exfiltration: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
365
+ enabled: z.ZodDefault<z.ZodBoolean>;
366
+ severity: z.ZodDefault<z.ZodEnum<{
367
+ critical: "critical";
368
+ high: "high";
369
+ medium: "medium";
370
+ low: "low";
371
+ }>>;
372
+ action: z.ZodDefault<z.ZodEnum<{
373
+ block: "block";
374
+ confirm: "confirm";
375
+ "agent-confirm": "agent-confirm";
376
+ warn: "warn";
377
+ log: "log";
378
+ }>>;
379
+ }, z.core.$strip>>>>;
380
+ sanitization: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
381
+ enabled: z.ZodDefault<z.ZodBoolean>;
382
+ severity: z.ZodDefault<z.ZodEnum<{
383
+ critical: "critical";
384
+ high: "high";
385
+ medium: "medium";
386
+ low: "low";
387
+ }>>;
388
+ action: z.ZodDefault<z.ZodEnum<{
389
+ block: "block";
390
+ confirm: "confirm";
391
+ "agent-confirm": "agent-confirm";
392
+ warn: "warn";
393
+ log: "log";
394
+ }>>;
395
+ minConfidence: z.ZodDefault<z.ZodNumber>;
396
+ redactMatches: z.ZodDefault<z.ZodBoolean>;
397
+ categories: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
398
+ instructionOverride: z.ZodDefault<z.ZodBoolean>;
399
+ systemLeak: z.ZodDefault<z.ZodBoolean>;
400
+ jailbreak: z.ZodDefault<z.ZodBoolean>;
401
+ encodedPayload: z.ZodDefault<z.ZodBoolean>;
402
+ }, z.core.$strip>>>>;
403
+ }, z.core.$strip>>>>;
404
+ }, z.core.$strip>>;
405
+ export type RulesConfig = z.infer<typeof RulesConfigSchema>;
406
+ /**
407
+ * Native approval flow configuration
408
+ */
409
+ export declare const NativeApprovalSchema: z.ZodDefault<z.ZodObject<{
410
+ enabled: z.ZodDefault<z.ZodBoolean>;
411
+ timeout: z.ZodDefault<z.ZodNumber>;
412
+ }, z.core.$strip>>;
413
+ export type NativeApproval = z.infer<typeof NativeApprovalSchema>;
414
+ /**
415
+ * Agent confirm approval flow configuration
416
+ */
417
+ export declare const AgentConfirmSchema: z.ZodDefault<z.ZodObject<{
418
+ enabled: z.ZodDefault<z.ZodBoolean>;
419
+ parameterName: z.ZodDefault<z.ZodString>;
420
+ }, z.core.$strip>>;
421
+ export type AgentConfirm = z.infer<typeof AgentConfirmSchema>;
422
+ /**
423
+ * Webhook approval flow configuration
424
+ */
425
+ export declare const WebhookApprovalSchema: z.ZodDefault<z.ZodObject<{
426
+ enabled: z.ZodDefault<z.ZodBoolean>;
427
+ url: z.ZodOptional<z.ZodURL>;
428
+ timeout: z.ZodDefault<z.ZodNumber>;
429
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
430
+ }, z.core.$strip>>;
431
+ export type WebhookApproval = z.infer<typeof WebhookApprovalSchema>;
432
+ /**
433
+ * Approval flow configuration
434
+ */
435
+ export declare const ApprovalConfigSchema: z.ZodDefault<z.ZodObject<{
436
+ native: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
437
+ enabled: z.ZodDefault<z.ZodBoolean>;
438
+ timeout: z.ZodDefault<z.ZodNumber>;
439
+ }, z.core.$strip>>>>;
440
+ agentConfirm: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
441
+ enabled: z.ZodDefault<z.ZodBoolean>;
442
+ parameterName: z.ZodDefault<z.ZodString>;
443
+ }, z.core.$strip>>>>;
444
+ webhook: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
445
+ enabled: z.ZodDefault<z.ZodBoolean>;
446
+ url: z.ZodOptional<z.ZodURL>;
447
+ timeout: z.ZodDefault<z.ZodNumber>;
448
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
449
+ }, z.core.$strip>>>>;
450
+ }, z.core.$strip>>;
451
+ export type ApprovalConfig = z.infer<typeof ApprovalConfigSchema>;
452
+ /**
453
+ * Root configuration schema for clawsec.yaml
454
+ */
455
+ export declare const ClawsecConfigSchema: z.ZodDefault<z.ZodObject<{
456
+ version: z.ZodDefault<z.ZodString>;
457
+ global: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
458
+ enabled: z.ZodDefault<z.ZodBoolean>;
459
+ logLevel: z.ZodDefault<z.ZodEnum<{
460
+ warn: "warn";
461
+ debug: "debug";
462
+ info: "info";
463
+ error: "error";
464
+ }>>;
465
+ }, z.core.$strip>>>>;
466
+ llm: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
467
+ enabled: z.ZodDefault<z.ZodBoolean>;
468
+ model: z.ZodDefault<z.ZodNullable<z.ZodString>>;
469
+ }, z.core.$strip>>>>;
470
+ rules: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
471
+ purchase: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
472
+ enabled: z.ZodDefault<z.ZodBoolean>;
473
+ severity: z.ZodDefault<z.ZodEnum<{
474
+ critical: "critical";
475
+ high: "high";
476
+ medium: "medium";
477
+ low: "low";
478
+ }>>;
479
+ action: z.ZodDefault<z.ZodEnum<{
480
+ block: "block";
481
+ confirm: "confirm";
482
+ "agent-confirm": "agent-confirm";
483
+ warn: "warn";
484
+ log: "log";
485
+ }>>;
486
+ spendLimits: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
487
+ perTransaction: z.ZodDefault<z.ZodNumber>;
488
+ daily: z.ZodDefault<z.ZodNumber>;
489
+ }, z.core.$strip>>>>;
490
+ domains: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
491
+ mode: z.ZodDefault<z.ZodEnum<{
492
+ blocklist: "blocklist";
493
+ allowlist: "allowlist";
494
+ }>>;
495
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
496
+ }, z.core.$strip>>>>;
497
+ }, z.core.$strip>>>>;
498
+ website: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
499
+ enabled: z.ZodDefault<z.ZodBoolean>;
500
+ mode: z.ZodDefault<z.ZodEnum<{
501
+ blocklist: "blocklist";
502
+ allowlist: "allowlist";
503
+ }>>;
504
+ severity: z.ZodDefault<z.ZodEnum<{
505
+ critical: "critical";
506
+ high: "high";
507
+ medium: "medium";
508
+ low: "low";
509
+ }>>;
510
+ action: z.ZodDefault<z.ZodEnum<{
511
+ block: "block";
512
+ confirm: "confirm";
513
+ "agent-confirm": "agent-confirm";
514
+ warn: "warn";
515
+ log: "log";
516
+ }>>;
517
+ blocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
518
+ allowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
519
+ }, z.core.$strip>>>>;
520
+ destructive: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
521
+ enabled: z.ZodDefault<z.ZodBoolean>;
522
+ severity: z.ZodDefault<z.ZodEnum<{
523
+ critical: "critical";
524
+ high: "high";
525
+ medium: "medium";
526
+ low: "low";
527
+ }>>;
528
+ action: z.ZodDefault<z.ZodEnum<{
529
+ block: "block";
530
+ confirm: "confirm";
531
+ "agent-confirm": "agent-confirm";
532
+ warn: "warn";
533
+ log: "log";
534
+ }>>;
535
+ shell: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
536
+ enabled: z.ZodDefault<z.ZodBoolean>;
537
+ }, z.core.$strip>>>>;
538
+ cloud: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
539
+ enabled: z.ZodDefault<z.ZodBoolean>;
540
+ }, z.core.$strip>>>>;
541
+ code: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
542
+ enabled: z.ZodDefault<z.ZodBoolean>;
543
+ }, z.core.$strip>>>>;
544
+ }, z.core.$strip>>>>;
545
+ secrets: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
546
+ enabled: z.ZodDefault<z.ZodBoolean>;
547
+ severity: z.ZodDefault<z.ZodEnum<{
548
+ critical: "critical";
549
+ high: "high";
550
+ medium: "medium";
551
+ low: "low";
552
+ }>>;
553
+ action: z.ZodDefault<z.ZodEnum<{
554
+ block: "block";
555
+ confirm: "confirm";
556
+ "agent-confirm": "agent-confirm";
557
+ warn: "warn";
558
+ log: "log";
559
+ }>>;
560
+ }, z.core.$strip>>>>;
561
+ exfiltration: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
562
+ enabled: z.ZodDefault<z.ZodBoolean>;
563
+ severity: z.ZodDefault<z.ZodEnum<{
564
+ critical: "critical";
565
+ high: "high";
566
+ medium: "medium";
567
+ low: "low";
568
+ }>>;
569
+ action: z.ZodDefault<z.ZodEnum<{
570
+ block: "block";
571
+ confirm: "confirm";
572
+ "agent-confirm": "agent-confirm";
573
+ warn: "warn";
574
+ log: "log";
575
+ }>>;
576
+ }, z.core.$strip>>>>;
577
+ sanitization: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
578
+ enabled: z.ZodDefault<z.ZodBoolean>;
579
+ severity: z.ZodDefault<z.ZodEnum<{
580
+ critical: "critical";
581
+ high: "high";
582
+ medium: "medium";
583
+ low: "low";
584
+ }>>;
585
+ action: z.ZodDefault<z.ZodEnum<{
586
+ block: "block";
587
+ confirm: "confirm";
588
+ "agent-confirm": "agent-confirm";
589
+ warn: "warn";
590
+ log: "log";
591
+ }>>;
592
+ minConfidence: z.ZodDefault<z.ZodNumber>;
593
+ redactMatches: z.ZodDefault<z.ZodBoolean>;
594
+ categories: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
595
+ instructionOverride: z.ZodDefault<z.ZodBoolean>;
596
+ systemLeak: z.ZodDefault<z.ZodBoolean>;
597
+ jailbreak: z.ZodDefault<z.ZodBoolean>;
598
+ encodedPayload: z.ZodDefault<z.ZodBoolean>;
599
+ }, z.core.$strip>>>>;
600
+ }, z.core.$strip>>>>;
601
+ }, z.core.$strip>>>>;
602
+ approval: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
603
+ native: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
604
+ enabled: z.ZodDefault<z.ZodBoolean>;
605
+ timeout: z.ZodDefault<z.ZodNumber>;
606
+ }, z.core.$strip>>>>;
607
+ agentConfirm: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
608
+ enabled: z.ZodDefault<z.ZodBoolean>;
609
+ parameterName: z.ZodDefault<z.ZodString>;
610
+ }, z.core.$strip>>>>;
611
+ webhook: z.ZodDefault<z.ZodOptional<z.ZodDefault<z.ZodObject<{
612
+ enabled: z.ZodDefault<z.ZodBoolean>;
613
+ url: z.ZodOptional<z.ZodURL>;
614
+ timeout: z.ZodDefault<z.ZodNumber>;
615
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
616
+ }, z.core.$strip>>>>;
617
+ }, z.core.$strip>>>>;
618
+ }, z.core.$strip>>;
619
+ /**
620
+ * Main configuration type for Clawsec
621
+ */
622
+ export type ClawsecConfig = z.infer<typeof ClawsecConfigSchema>;
623
+ /**
624
+ * Partial configuration type (for merging with defaults)
625
+ */
626
+ export type PartialClawsecConfig = z.input<typeof ClawsecConfigSchema>;
627
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"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"}