failproofai 0.0.2 → 0.0.4-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (484) hide show
  1. package/.next/standalone/.claude/settings.json +316 -0
  2. package/.next/standalone/.failproofai/policies/workflow-policies.mjs +62 -0
  3. package/.next/standalone/.failproofai/policies-config.json +39 -0
  4. package/.next/standalone/.next/BUILD_ID +1 -1
  5. package/.next/standalone/.next/build-manifest.json +5 -5
  6. package/.next/standalone/.next/prerender-manifest.json +3 -3
  7. package/.next/standalone/.next/required-server-files.json +3 -1
  8. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  9. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  10. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  14. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  15. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  16. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  17. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  18. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  20. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  21. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  24. package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
  25. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
  26. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  27. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  28. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  29. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  30. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  31. package/.next/standalone/.next/server/app/index.html +1 -1
  32. package/.next/standalone/.next/server/app/index.rsc +16 -16
  33. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  34. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
  35. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
  36. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
  37. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  38. package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
  39. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  40. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
  43. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
  44. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
  47. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  48. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
  51. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  52. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  53. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
  56. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  57. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +3 -0
  60. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kjo7d_._.js +1 -1
  61. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_05pz9._._.js +1 -1
  62. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
  63. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  64. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  65. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  66. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  67. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qo8503._.js → [root-of-the-server]__0jqus-j._.js} +2 -2
  68. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  69. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +9 -9
  70. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  71. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
  72. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__12kr5~_._.js → [root-of-the-server]__131id~1._.js} +2 -2
  73. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
  74. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
  75. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
  76. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0a_7sdg.js +2 -2
  77. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ef3uwk.js +2 -2
  78. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j79~gv.js +2 -2
  79. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pbja1x.js +2 -2
  80. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0r6o0i2.js +2 -2
  81. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11y81~_.js +2 -2
  82. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_12or2kf.js +2 -2
  83. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js +1 -1
  84. package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
  85. package/.next/standalone/.next/server/pages/404.html +2 -2
  86. package/.next/standalone/.next/server/pages/500.html +1 -1
  87. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
  89. package/.next/standalone/.next/static/chunks/{0y~0creqvl5wx.js → 045lpk_isd5np.js} +1 -1
  90. package/.next/standalone/.next/static/chunks/{0cvffh-pbsv5u.js → 065qrrpfkts8s.js} +1 -1
  91. package/.next/standalone/.next/static/chunks/{031pa5~qfzt~_.js → 09e7drilkf1sn.js} +1 -1
  92. package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +1 -0
  93. package/.next/standalone/.next/static/chunks/{15wf7x-e.8ia3.js → 0je_~y72wv~~2.js} +1 -1
  94. package/.next/standalone/.next/static/chunks/{0x-625~1vx1lu.js → 0rqcttnl9u32c.js} +1 -1
  95. package/.next/standalone/.next/static/chunks/{0ov60i6md~37t.js → 0v2-.v07.zb9u.js} +2 -2
  96. package/.next/standalone/.next/static/chunks/{06og.7e9nkpjh.js → 0yye9-w._6rz~.js} +1 -1
  97. package/.next/standalone/.next/static/chunks/{0_4y_t03jn2nq.js → 15proylk5ye2k.js} +1 -1
  98. package/.next/standalone/.next/static/chunks/174boqk9e~20i.js +6 -0
  99. package/.next/standalone/.next/static/chunks/{turbopack-0uc5y~g6h.n7-.js → turbopack-0r26pc8h0y_-e.js} +1 -1
  100. package/.next/standalone/CHANGELOG.md +108 -0
  101. package/.next/standalone/CLAUDE.md +28 -0
  102. package/.next/standalone/Dockerfile.docs +12 -0
  103. package/.next/standalone/README.md +95 -49
  104. package/.next/standalone/app/components/session-hooks-panel.tsx +14 -1
  105. package/.next/standalone/app/policies/hooks-client.tsx +14 -1
  106. package/.next/standalone/bin/failproofai.mjs +5 -0
  107. package/.next/standalone/bun.lock +76 -63
  108. package/.next/standalone/components/navbar.tsx +5 -0
  109. package/.next/standalone/dist/cli.mjs +535 -90
  110. package/.next/standalone/dist/index.js +2 -2
  111. package/.next/standalone/docs/ar/architecture.mdx +333 -0
  112. package/.next/standalone/docs/ar/built-in-policies.mdx +537 -0
  113. package/.next/standalone/docs/ar/cli/dashboard.mdx +28 -0
  114. package/.next/standalone/docs/ar/cli/environment-variables.mdx +34 -0
  115. package/.next/standalone/docs/ar/cli/hook.mdx +31 -0
  116. package/.next/standalone/docs/ar/cli/install-policies.mdx +48 -0
  117. package/.next/standalone/docs/ar/cli/list-policies.mdx +31 -0
  118. package/.next/standalone/docs/ar/cli/remove-policies.mdx +43 -0
  119. package/.next/standalone/docs/ar/cli/version.mdx +13 -0
  120. package/.next/standalone/docs/ar/configuration.mdx +223 -0
  121. package/.next/standalone/docs/ar/custom-policies.mdx +359 -0
  122. package/.next/standalone/docs/ar/dashboard.mdx +142 -0
  123. package/.next/standalone/docs/ar/examples.mdx +254 -0
  124. package/.next/standalone/docs/ar/for-agents.mdx +39 -0
  125. package/.next/standalone/docs/ar/getting-started.mdx +134 -0
  126. package/.next/standalone/docs/ar/introduction.mdx +58 -0
  127. package/.next/standalone/docs/ar/package-aliases.mdx +82 -0
  128. package/.next/standalone/docs/ar/testing.mdx +261 -0
  129. package/.next/standalone/docs/{architecture.md → architecture.mdx} +40 -23
  130. package/.next/standalone/docs/{built-in-policies.md → built-in-policies.mdx} +126 -15
  131. package/.next/standalone/docs/cli/dashboard.mdx +28 -0
  132. package/.next/standalone/docs/cli/environment-variables.mdx +34 -0
  133. package/.next/standalone/docs/cli/hook.mdx +30 -0
  134. package/.next/standalone/docs/cli/install-policies.mdx +47 -0
  135. package/.next/standalone/docs/cli/list-policies.mdx +31 -0
  136. package/.next/standalone/docs/cli/remove-policies.mdx +43 -0
  137. package/.next/standalone/docs/cli/version.mdx +12 -0
  138. package/.next/standalone/docs/{configuration.md → configuration.mdx} +62 -16
  139. package/.next/standalone/docs/custom-policies.mdx +357 -0
  140. package/.next/standalone/docs/{dashboard.md → dashboard.mdx} +26 -29
  141. package/.next/standalone/docs/de/architecture.mdx +332 -0
  142. package/.next/standalone/docs/de/built-in-policies.mdx +537 -0
  143. package/.next/standalone/docs/de/cli/dashboard.mdx +28 -0
  144. package/.next/standalone/docs/de/cli/environment-variables.mdx +34 -0
  145. package/.next/standalone/docs/de/cli/hook.mdx +30 -0
  146. package/.next/standalone/docs/de/cli/install-policies.mdx +47 -0
  147. package/.next/standalone/docs/de/cli/list-policies.mdx +31 -0
  148. package/.next/standalone/docs/de/cli/remove-policies.mdx +43 -0
  149. package/.next/standalone/docs/de/cli/version.mdx +12 -0
  150. package/.next/standalone/docs/de/configuration.mdx +222 -0
  151. package/.next/standalone/docs/de/custom-policies.mdx +357 -0
  152. package/.next/standalone/docs/de/dashboard.mdx +142 -0
  153. package/.next/standalone/docs/de/examples.mdx +253 -0
  154. package/.next/standalone/docs/de/for-agents.mdx +38 -0
  155. package/.next/standalone/docs/de/getting-started.mdx +134 -0
  156. package/.next/standalone/docs/de/introduction.mdx +57 -0
  157. package/.next/standalone/docs/de/package-aliases.mdx +82 -0
  158. package/.next/standalone/docs/de/testing.mdx +260 -0
  159. package/.next/standalone/docs/docs.json +943 -24
  160. package/.next/standalone/docs/es/architecture.mdx +332 -0
  161. package/.next/standalone/docs/es/built-in-policies.mdx +537 -0
  162. package/.next/standalone/docs/es/cli/dashboard.mdx +28 -0
  163. package/.next/standalone/docs/es/cli/environment-variables.mdx +34 -0
  164. package/.next/standalone/docs/es/cli/hook.mdx +30 -0
  165. package/.next/standalone/docs/es/cli/install-policies.mdx +47 -0
  166. package/.next/standalone/docs/es/cli/list-policies.mdx +31 -0
  167. package/.next/standalone/docs/es/cli/remove-policies.mdx +43 -0
  168. package/.next/standalone/docs/es/cli/version.mdx +12 -0
  169. package/.next/standalone/docs/es/configuration.mdx +222 -0
  170. package/.next/standalone/docs/es/custom-policies.mdx +357 -0
  171. package/.next/standalone/docs/es/dashboard.mdx +142 -0
  172. package/.next/standalone/docs/es/examples.mdx +253 -0
  173. package/.next/standalone/docs/es/for-agents.mdx +38 -0
  174. package/.next/standalone/docs/es/getting-started.mdx +134 -0
  175. package/.next/standalone/docs/es/introduction.mdx +57 -0
  176. package/.next/standalone/docs/es/package-aliases.mdx +82 -0
  177. package/.next/standalone/docs/es/testing.mdx +260 -0
  178. package/.next/standalone/docs/examples.mdx +253 -0
  179. package/.next/standalone/docs/for-agents.mdx +38 -0
  180. package/.next/standalone/docs/fr/architecture.mdx +332 -0
  181. package/.next/standalone/docs/fr/built-in-policies.mdx +537 -0
  182. package/.next/standalone/docs/fr/cli/dashboard.mdx +28 -0
  183. package/.next/standalone/docs/fr/cli/environment-variables.mdx +34 -0
  184. package/.next/standalone/docs/fr/cli/hook.mdx +30 -0
  185. package/.next/standalone/docs/fr/cli/install-policies.mdx +47 -0
  186. package/.next/standalone/docs/fr/cli/list-policies.mdx +31 -0
  187. package/.next/standalone/docs/fr/cli/remove-policies.mdx +43 -0
  188. package/.next/standalone/docs/fr/cli/version.mdx +12 -0
  189. package/.next/standalone/docs/fr/configuration.mdx +222 -0
  190. package/.next/standalone/docs/fr/custom-policies.mdx +357 -0
  191. package/.next/standalone/docs/fr/dashboard.mdx +142 -0
  192. package/.next/standalone/docs/fr/examples.mdx +253 -0
  193. package/.next/standalone/docs/fr/for-agents.mdx +38 -0
  194. package/.next/standalone/docs/fr/getting-started.mdx +134 -0
  195. package/.next/standalone/docs/fr/introduction.mdx +57 -0
  196. package/.next/standalone/docs/fr/package-aliases.mdx +82 -0
  197. package/.next/standalone/docs/fr/testing.mdx +260 -0
  198. package/.next/standalone/docs/getting-started.mdx +134 -0
  199. package/.next/standalone/docs/he/architecture.mdx +333 -0
  200. package/.next/standalone/docs/he/built-in-policies.mdx +535 -0
  201. package/.next/standalone/docs/he/cli/dashboard.mdx +28 -0
  202. package/.next/standalone/docs/he/cli/environment-variables.mdx +34 -0
  203. package/.next/standalone/docs/he/cli/hook.mdx +30 -0
  204. package/.next/standalone/docs/he/cli/install-policies.mdx +47 -0
  205. package/.next/standalone/docs/he/cli/list-policies.mdx +32 -0
  206. package/.next/standalone/docs/he/cli/remove-policies.mdx +43 -0
  207. package/.next/standalone/docs/he/cli/version.mdx +12 -0
  208. package/.next/standalone/docs/he/configuration.mdx +222 -0
  209. package/.next/standalone/docs/he/custom-policies.mdx +357 -0
  210. package/.next/standalone/docs/he/dashboard.mdx +142 -0
  211. package/.next/standalone/docs/he/examples.mdx +253 -0
  212. package/.next/standalone/docs/he/for-agents.mdx +38 -0
  213. package/.next/standalone/docs/he/getting-started.mdx +135 -0
  214. package/.next/standalone/docs/he/introduction.mdx +57 -0
  215. package/.next/standalone/docs/he/package-aliases.mdx +82 -0
  216. package/.next/standalone/docs/he/testing.mdx +260 -0
  217. package/.next/standalone/docs/hi/architecture.mdx +334 -0
  218. package/.next/standalone/docs/hi/built-in-policies.mdx +535 -0
  219. package/.next/standalone/docs/hi/cli/dashboard.mdx +28 -0
  220. package/.next/standalone/docs/hi/cli/environment-variables.mdx +34 -0
  221. package/.next/standalone/docs/hi/cli/hook.mdx +30 -0
  222. package/.next/standalone/docs/hi/cli/install-policies.mdx +47 -0
  223. package/.next/standalone/docs/hi/cli/list-policies.mdx +31 -0
  224. package/.next/standalone/docs/hi/cli/remove-policies.mdx +43 -0
  225. package/.next/standalone/docs/hi/cli/version.mdx +12 -0
  226. package/.next/standalone/docs/hi/configuration.mdx +222 -0
  227. package/.next/standalone/docs/hi/custom-policies.mdx +357 -0
  228. package/.next/standalone/docs/hi/dashboard.mdx +142 -0
  229. package/.next/standalone/docs/hi/examples.mdx +255 -0
  230. package/.next/standalone/docs/hi/for-agents.mdx +38 -0
  231. package/.next/standalone/docs/hi/getting-started.mdx +134 -0
  232. package/.next/standalone/docs/hi/introduction.mdx +57 -0
  233. package/.next/standalone/docs/hi/package-aliases.mdx +82 -0
  234. package/.next/standalone/docs/hi/testing.mdx +260 -0
  235. package/.next/standalone/docs/i18n/README.ar.md +312 -0
  236. package/.next/standalone/docs/i18n/README.de.md +307 -0
  237. package/.next/standalone/docs/i18n/README.es.md +307 -0
  238. package/.next/standalone/docs/i18n/README.fr.md +307 -0
  239. package/.next/standalone/docs/i18n/README.he.md +312 -0
  240. package/.next/standalone/docs/i18n/README.hi.md +307 -0
  241. package/.next/standalone/docs/i18n/README.it.md +307 -0
  242. package/.next/standalone/docs/i18n/README.ja.md +307 -0
  243. package/.next/standalone/docs/i18n/README.ko.md +307 -0
  244. package/.next/standalone/docs/i18n/README.pt-br.md +307 -0
  245. package/.next/standalone/docs/i18n/README.ru.md +308 -0
  246. package/.next/standalone/docs/i18n/README.tr.md +308 -0
  247. package/.next/standalone/docs/i18n/README.vi.md +308 -0
  248. package/.next/standalone/docs/i18n/README.zh.md +307 -0
  249. package/.next/standalone/docs/introduction.mdx +57 -0
  250. package/.next/standalone/docs/it/architecture.mdx +333 -0
  251. package/.next/standalone/docs/it/built-in-policies.mdx +537 -0
  252. package/.next/standalone/docs/it/cli/dashboard.mdx +28 -0
  253. package/.next/standalone/docs/it/cli/environment-variables.mdx +34 -0
  254. package/.next/standalone/docs/it/cli/hook.mdx +30 -0
  255. package/.next/standalone/docs/it/cli/install-policies.mdx +47 -0
  256. package/.next/standalone/docs/it/cli/list-policies.mdx +31 -0
  257. package/.next/standalone/docs/it/cli/remove-policies.mdx +43 -0
  258. package/.next/standalone/docs/it/cli/version.mdx +12 -0
  259. package/.next/standalone/docs/it/configuration.mdx +223 -0
  260. package/.next/standalone/docs/it/custom-policies.mdx +358 -0
  261. package/.next/standalone/docs/it/dashboard.mdx +142 -0
  262. package/.next/standalone/docs/it/examples.mdx +253 -0
  263. package/.next/standalone/docs/it/for-agents.mdx +38 -0
  264. package/.next/standalone/docs/it/getting-started.mdx +134 -0
  265. package/.next/standalone/docs/it/introduction.mdx +57 -0
  266. package/.next/standalone/docs/it/package-aliases.mdx +82 -0
  267. package/.next/standalone/docs/it/testing.mdx +260 -0
  268. package/.next/standalone/docs/ja/architecture.mdx +332 -0
  269. package/.next/standalone/docs/ja/built-in-policies.mdx +535 -0
  270. package/.next/standalone/docs/ja/cli/dashboard.mdx +28 -0
  271. package/.next/standalone/docs/ja/cli/environment-variables.mdx +34 -0
  272. package/.next/standalone/docs/ja/cli/hook.mdx +30 -0
  273. package/.next/standalone/docs/ja/cli/install-policies.mdx +47 -0
  274. package/.next/standalone/docs/ja/cli/list-policies.mdx +31 -0
  275. package/.next/standalone/docs/ja/cli/remove-policies.mdx +43 -0
  276. package/.next/standalone/docs/ja/cli/version.mdx +12 -0
  277. package/.next/standalone/docs/ja/configuration.mdx +222 -0
  278. package/.next/standalone/docs/ja/custom-policies.mdx +357 -0
  279. package/.next/standalone/docs/ja/dashboard.mdx +142 -0
  280. package/.next/standalone/docs/ja/examples.mdx +253 -0
  281. package/.next/standalone/docs/ja/for-agents.mdx +38 -0
  282. package/.next/standalone/docs/ja/getting-started.mdx +134 -0
  283. package/.next/standalone/docs/ja/introduction.mdx +57 -0
  284. package/.next/standalone/docs/ja/package-aliases.mdx +82 -0
  285. package/.next/standalone/docs/ja/testing.mdx +260 -0
  286. package/.next/standalone/docs/ko/architecture.mdx +332 -0
  287. package/.next/standalone/docs/ko/built-in-policies.mdx +535 -0
  288. package/.next/standalone/docs/ko/cli/dashboard.mdx +28 -0
  289. package/.next/standalone/docs/ko/cli/environment-variables.mdx +34 -0
  290. package/.next/standalone/docs/ko/cli/hook.mdx +30 -0
  291. package/.next/standalone/docs/ko/cli/install-policies.mdx +47 -0
  292. package/.next/standalone/docs/ko/cli/list-policies.mdx +31 -0
  293. package/.next/standalone/docs/ko/cli/remove-policies.mdx +43 -0
  294. package/.next/standalone/docs/ko/cli/version.mdx +12 -0
  295. package/.next/standalone/docs/ko/configuration.mdx +222 -0
  296. package/.next/standalone/docs/ko/custom-policies.mdx +357 -0
  297. package/.next/standalone/docs/ko/dashboard.mdx +142 -0
  298. package/.next/standalone/docs/ko/examples.mdx +253 -0
  299. package/.next/standalone/docs/ko/for-agents.mdx +38 -0
  300. package/.next/standalone/docs/ko/getting-started.mdx +134 -0
  301. package/.next/standalone/docs/ko/introduction.mdx +57 -0
  302. package/.next/standalone/docs/ko/package-aliases.mdx +82 -0
  303. package/.next/standalone/docs/ko/testing.mdx +260 -0
  304. package/.next/standalone/docs/logo/dark.svg +21 -0
  305. package/.next/standalone/docs/logo/light.svg +21 -0
  306. package/.next/standalone/docs/{package-aliases.md → package-aliases.mdx} +5 -5
  307. package/.next/standalone/docs/pt-br/architecture.mdx +332 -0
  308. package/.next/standalone/docs/pt-br/built-in-policies.mdx +537 -0
  309. package/.next/standalone/docs/pt-br/cli/dashboard.mdx +28 -0
  310. package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +34 -0
  311. package/.next/standalone/docs/pt-br/cli/hook.mdx +30 -0
  312. package/.next/standalone/docs/pt-br/cli/install-policies.mdx +47 -0
  313. package/.next/standalone/docs/pt-br/cli/list-policies.mdx +31 -0
  314. package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +43 -0
  315. package/.next/standalone/docs/pt-br/cli/version.mdx +12 -0
  316. package/.next/standalone/docs/pt-br/configuration.mdx +222 -0
  317. package/.next/standalone/docs/pt-br/custom-policies.mdx +357 -0
  318. package/.next/standalone/docs/pt-br/dashboard.mdx +142 -0
  319. package/.next/standalone/docs/pt-br/examples.mdx +253 -0
  320. package/.next/standalone/docs/pt-br/for-agents.mdx +38 -0
  321. package/.next/standalone/docs/pt-br/getting-started.mdx +134 -0
  322. package/.next/standalone/docs/pt-br/introduction.mdx +57 -0
  323. package/.next/standalone/docs/pt-br/package-aliases.mdx +82 -0
  324. package/.next/standalone/docs/pt-br/testing.mdx +260 -0
  325. package/.next/standalone/docs/ru/architecture.mdx +334 -0
  326. package/.next/standalone/docs/ru/built-in-policies.mdx +537 -0
  327. package/.next/standalone/docs/ru/cli/dashboard.mdx +28 -0
  328. package/.next/standalone/docs/ru/cli/environment-variables.mdx +34 -0
  329. package/.next/standalone/docs/ru/cli/hook.mdx +30 -0
  330. package/.next/standalone/docs/ru/cli/install-policies.mdx +48 -0
  331. package/.next/standalone/docs/ru/cli/list-policies.mdx +32 -0
  332. package/.next/standalone/docs/ru/cli/remove-policies.mdx +43 -0
  333. package/.next/standalone/docs/ru/cli/version.mdx +12 -0
  334. package/.next/standalone/docs/ru/configuration.mdx +223 -0
  335. package/.next/standalone/docs/ru/custom-policies.mdx +357 -0
  336. package/.next/standalone/docs/ru/dashboard.mdx +142 -0
  337. package/.next/standalone/docs/ru/examples.mdx +254 -0
  338. package/.next/standalone/docs/ru/for-agents.mdx +38 -0
  339. package/.next/standalone/docs/ru/getting-started.mdx +134 -0
  340. package/.next/standalone/docs/ru/introduction.mdx +57 -0
  341. package/.next/standalone/docs/ru/package-aliases.mdx +82 -0
  342. package/.next/standalone/docs/ru/testing.mdx +260 -0
  343. package/.next/standalone/docs/{testing.md → testing.mdx} +11 -11
  344. package/.next/standalone/docs/tr/architecture.mdx +333 -0
  345. package/.next/standalone/docs/tr/built-in-policies.mdx +537 -0
  346. package/.next/standalone/docs/tr/cli/dashboard.mdx +28 -0
  347. package/.next/standalone/docs/tr/cli/environment-variables.mdx +34 -0
  348. package/.next/standalone/docs/tr/cli/hook.mdx +30 -0
  349. package/.next/standalone/docs/tr/cli/install-policies.mdx +47 -0
  350. package/.next/standalone/docs/tr/cli/list-policies.mdx +31 -0
  351. package/.next/standalone/docs/tr/cli/remove-policies.mdx +44 -0
  352. package/.next/standalone/docs/tr/cli/version.mdx +12 -0
  353. package/.next/standalone/docs/tr/configuration.mdx +223 -0
  354. package/.next/standalone/docs/tr/custom-policies.mdx +357 -0
  355. package/.next/standalone/docs/tr/dashboard.mdx +142 -0
  356. package/.next/standalone/docs/tr/examples.mdx +253 -0
  357. package/.next/standalone/docs/tr/for-agents.mdx +38 -0
  358. package/.next/standalone/docs/tr/getting-started.mdx +134 -0
  359. package/.next/standalone/docs/tr/introduction.mdx +57 -0
  360. package/.next/standalone/docs/tr/package-aliases.mdx +82 -0
  361. package/.next/standalone/docs/tr/testing.mdx +260 -0
  362. package/.next/standalone/docs/vi/architecture.mdx +333 -0
  363. package/.next/standalone/docs/vi/built-in-policies.mdx +537 -0
  364. package/.next/standalone/docs/vi/cli/dashboard.mdx +28 -0
  365. package/.next/standalone/docs/vi/cli/environment-variables.mdx +34 -0
  366. package/.next/standalone/docs/vi/cli/hook.mdx +30 -0
  367. package/.next/standalone/docs/vi/cli/install-policies.mdx +47 -0
  368. package/.next/standalone/docs/vi/cli/list-policies.mdx +31 -0
  369. package/.next/standalone/docs/vi/cli/remove-policies.mdx +43 -0
  370. package/.next/standalone/docs/vi/cli/version.mdx +13 -0
  371. package/.next/standalone/docs/vi/configuration.mdx +222 -0
  372. package/.next/standalone/docs/vi/custom-policies.mdx +357 -0
  373. package/.next/standalone/docs/vi/dashboard.mdx +142 -0
  374. package/.next/standalone/docs/vi/examples.mdx +253 -0
  375. package/.next/standalone/docs/vi/for-agents.mdx +38 -0
  376. package/.next/standalone/docs/vi/getting-started.mdx +134 -0
  377. package/.next/standalone/docs/vi/introduction.mdx +57 -0
  378. package/.next/standalone/docs/vi/package-aliases.mdx +82 -0
  379. package/.next/standalone/docs/vi/testing.mdx +260 -0
  380. package/.next/standalone/docs/zh/architecture.mdx +332 -0
  381. package/.next/standalone/docs/zh/built-in-policies.mdx +535 -0
  382. package/.next/standalone/docs/zh/cli/dashboard.mdx +28 -0
  383. package/.next/standalone/docs/zh/cli/environment-variables.mdx +34 -0
  384. package/.next/standalone/docs/zh/cli/hook.mdx +30 -0
  385. package/.next/standalone/docs/zh/cli/install-policies.mdx +47 -0
  386. package/.next/standalone/docs/zh/cli/list-policies.mdx +31 -0
  387. package/.next/standalone/docs/zh/cli/remove-policies.mdx +43 -0
  388. package/.next/standalone/docs/zh/cli/version.mdx +12 -0
  389. package/.next/standalone/docs/zh/configuration.mdx +222 -0
  390. package/.next/standalone/docs/zh/custom-policies.mdx +357 -0
  391. package/.next/standalone/docs/zh/dashboard.mdx +142 -0
  392. package/.next/standalone/docs/zh/examples.mdx +253 -0
  393. package/.next/standalone/docs/zh/for-agents.mdx +38 -0
  394. package/.next/standalone/docs/zh/getting-started.mdx +134 -0
  395. package/.next/standalone/docs/zh/introduction.mdx +57 -0
  396. package/.next/standalone/docs/zh/package-aliases.mdx +82 -0
  397. package/.next/standalone/docs/zh/testing.mdx +260 -0
  398. package/.next/standalone/examples/convention-policies/security-policies.mjs +40 -0
  399. package/.next/standalone/examples/convention-policies/workflow-policies.mjs +41 -0
  400. package/.next/standalone/next.config.ts +5 -3
  401. package/.next/standalone/node_modules/@next/env/package.json +1 -1
  402. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  403. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/index.js +2 -2
  404. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +1 -1
  405. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +1 -1
  406. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +1 -1
  407. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  408. package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
  409. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +7 -2
  410. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  411. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  412. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  413. package/.next/standalone/node_modules/next/dist/server/render.js +20 -19
  414. package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  415. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  416. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  417. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  418. package/.next/standalone/node_modules/next/package.json +15 -15
  419. package/.next/standalone/node_modules/react/cjs/react.development.js +1 -1
  420. package/.next/standalone/node_modules/react/cjs/react.production.js +1 -1
  421. package/.next/standalone/node_modules/react/package.json +1 -1
  422. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +1 -1
  423. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +1 -1
  424. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +3 -3
  425. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +3 -3
  426. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +3 -3
  427. package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +1 -1
  428. package/.next/standalone/node_modules/react-dom/package.json +2 -2
  429. package/.next/standalone/package.json +13 -10
  430. package/.next/standalone/scripts/translate-docs/cache.ts +62 -0
  431. package/.next/standalone/scripts/translate-docs/cli.ts +357 -0
  432. package/.next/standalone/scripts/translate-docs/config.ts +248 -0
  433. package/.next/standalone/scripts/translate-docs/mdx-translator.ts +153 -0
  434. package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +107 -0
  435. package/.next/standalone/scripts/translate-docs/readme-translator.ts +154 -0
  436. package/.next/standalone/scripts/translate-docs/translator.ts +68 -0
  437. package/.next/standalone/scripts/translate-docs/types.ts +43 -0
  438. package/.next/standalone/server.js +1 -1
  439. package/.next/standalone/skills-lock.json +10 -0
  440. package/.next/standalone/src/hooks/builtin-policies.ts +401 -25
  441. package/.next/standalone/src/hooks/custom-hooks-loader.ts +165 -21
  442. package/.next/standalone/src/hooks/handler.ts +33 -6
  443. package/.next/standalone/src/hooks/hook-activity-store.ts +6 -1
  444. package/.next/standalone/src/hooks/hooks-config.ts +47 -2
  445. package/.next/standalone/src/hooks/llm-client.ts +2 -2
  446. package/.next/standalone/src/hooks/loader-utils.ts +4 -4
  447. package/.next/standalone/src/hooks/manager.ts +67 -16
  448. package/.next/standalone/src/hooks/policy-evaluator.ts +58 -19
  449. package/.next/standalone/src/hooks/policy-helpers.ts +2 -2
  450. package/.next/standalone/vitest.config.e2e.mts +3 -0
  451. package/.next/standalone/vitest.config.mts +3 -0
  452. package/README.md +95 -49
  453. package/bin/failproofai.mjs +5 -0
  454. package/dist/cli.mjs +535 -90
  455. package/dist/index.js +2 -2
  456. package/package.json +13 -10
  457. package/scripts/translate-docs/cache.ts +62 -0
  458. package/scripts/translate-docs/cli.ts +357 -0
  459. package/scripts/translate-docs/config.ts +248 -0
  460. package/scripts/translate-docs/mdx-translator.ts +153 -0
  461. package/scripts/translate-docs/mintlify-nav.ts +107 -0
  462. package/scripts/translate-docs/readme-translator.ts +154 -0
  463. package/scripts/translate-docs/translator.ts +68 -0
  464. package/scripts/translate-docs/types.ts +43 -0
  465. package/src/hooks/builtin-policies.ts +401 -25
  466. package/src/hooks/custom-hooks-loader.ts +165 -21
  467. package/src/hooks/handler.ts +33 -6
  468. package/src/hooks/hook-activity-store.ts +6 -1
  469. package/src/hooks/hooks-config.ts +47 -2
  470. package/src/hooks/llm-client.ts +2 -2
  471. package/src/hooks/loader-utils.ts +4 -4
  472. package/src/hooks/manager.ts +67 -16
  473. package/src/hooks/policy-evaluator.ts +58 -19
  474. package/src/hooks/policy-helpers.ts +2 -2
  475. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02nt~6d._.js +0 -3
  476. package/.next/standalone/.next/static/chunks/0c_ljlxa._4lc.js +0 -6
  477. package/.next/standalone/.next/static/chunks/15jpradyu_531.css +0 -1
  478. package/.next/standalone/docs/cli-reference.md +0 -175
  479. package/.next/standalone/docs/custom-hooks.md +0 -261
  480. package/.next/standalone/docs/getting-started.md +0 -128
  481. package/.next/standalone/docs/introduction.md +0 -47
  482. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → WRbDp8A_ORPof197CezOZ}/_buildManifest.js +0 -0
  483. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → WRbDp8A_ORPof197CezOZ}/_clientMiddlewareManifest.js +0 -0
  484. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → WRbDp8A_ORPof197CezOZ}/_ssgManifest.js +0 -0
@@ -0,0 +1,537 @@
1
+ ---
2
+ title: السياسات المدمجة
3
+ description: "جميع 30 سياسة مدمجة تلتقط أنماط فشل الوكلاء الشائعة"
4
+ icon: shield
5
+ ---
6
+
7
+ يأتي failproofai مع 30 سياسة مدمجة تلتقط أنماط فشل الوكلاء الشائعة. تنشط كل سياسة على نوع حدث hook معين واسم أداة معين. تقبل تسع سياسات معاملات تتيح لك ضبط سلوكها دون كتابة أكواد. تطبق أربع سياسات سير عمل خط أنابيب commit → push → PR → CI قبل توقف Claude.
8
+
9
+ ---
10
+
11
+ ## نظرة عامة
12
+
13
+ يتم تجميع السياسات في فئات:
14
+
15
+ | الفئة | السياسات | نوع Hook |
16
+ |----------|----------|-----------|
17
+ | [الأوامر الخطرة](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
18
+ | [الأسرار (معقمات)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
19
+ | [البيئة](#environment) | block-env-files, protect-env-vars | PreToolUse |
20
+ | [الوصول إلى الملفات](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
21
+ | [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
22
+ | [قاعدة البيانات](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
23
+ | [التحذيرات](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
24
+ | [سير العمل](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
25
+
26
+ - **`block-`** — إيقاف الوكيل من المتابعة.
27
+ - **`warn-`** — إعطاء الوكيل سياق إضافي حتى يتمكن من التصحيح الذاتي.
28
+ - **`sanitize-`** — مسح البيانات الحساسة من مخرجات الأداة قبل أن يراها الوكيل.
29
+ - **`require-`** — حجب حدث Stop حتى تستوفى الشروط.
30
+
31
+ ---
32
+
33
+ <Tip>
34
+ كل سياسة تدعم حقل `hint` اختياري في `policyParams`. يتم إضافة التلميح إلى رسالة الرفض أو التعليمات التي يراها Claude، مما يوفر إرشادات قابلة للتنفيذ دون تعديل كود السياسة. يعمل مع السياسات المدمجة والمخصصة وسياسات الاتفاقية. راجع [التكوين → hint](/ar/configuration#hint-cross-cutting) للحصول على التفاصيل.
35
+ </Tip>
36
+
37
+ ---
38
+
39
+ ## الأوامر الخطرة
40
+
41
+ منع الوكلاء من تشغيل العمليات التي يصعب التراجع عنها أو التي قد تضر بنظام المضيف.
42
+
43
+ ### `block-sudo`
44
+
45
+ **الحدث:** PreToolUse (Bash)
46
+ **الافتراضي:** يرفض أي أمر `sudo`.
47
+
48
+ يحجب الاستدعاءات التي تتضمن كلمة المفتاح `sudo`. يتم تطابق النمط على رموز الأوامر المحللة، وليس السلسلة الخام، لمنع التجاوز عبر حقن عامل shell.
49
+
50
+ **المعاملات:**
51
+
52
+ | المعامل | النوع | الافتراضي | الوصف |
53
+ |-------|------|---------|-------------|
54
+ | `allowPatterns` | `string[]` | `[]` | بادئات الأوامر الدقيقة المسموحة. يتم مطابقة كل إدخال مقابل رموز argv المحللة. |
55
+
56
+ **مثال:**
57
+
58
+ ```json
59
+ {
60
+ "policyParams": {
61
+ "block-sudo": {
62
+ "allowPatterns": ["sudo systemctl status", "sudo journalctl"]
63
+ }
64
+ }
65
+ }
66
+ ```
67
+
68
+ مع هذا التكوين، يُسمح بـ `sudo systemctl status nginx`، لكن `sudo rm /etc/hosts` مرفوض.
69
+
70
+ <Note>
71
+ يتم مطابقة الأنماط مقابل الرموز المحللة، وليس سلسلة الأمر الخام. يمنع التجاوز عبر عوامل shell المدرجة (على سبيل المثال، `sudo systemctl status x; rm -rf /` لا يطابق `sudo systemctl status *`).
72
+ </Note>
73
+
74
+ ---
75
+
76
+ ### `block-rm-rf`
77
+
78
+ **الحدث:** PreToolUse (Bash)
79
+ **الافتراضي:** يرفض `rm -rf`, `rm -fr`، والأشكال الأخرى المشابهة لحذف العودة.
80
+
81
+ **المعاملات:**
82
+
83
+ | المعامل | النوع | الافتراضي | الوصف |
84
+ |-------|------|---------|-------------|
85
+ | `allowPaths` | `string[]` | `[]` | المسارات الآمنة للحذف العودي (على سبيل المثال `/tmp`). |
86
+
87
+ **مثال:**
88
+
89
+ ```json
90
+ {
91
+ "policyParams": {
92
+ "block-rm-rf": {
93
+ "allowPaths": ["/tmp", "/var/cache"]
94
+ }
95
+ }
96
+ }
97
+ ```
98
+
99
+ ---
100
+
101
+ ### `block-curl-pipe-sh`
102
+
103
+ **الحدث:** PreToolUse (Bash)
104
+ **الافتراضي:** يرفض `curl <url> | bash`، `curl <url> | sh`، `wget <url> | bash`، والأنماط المشابهة.
105
+
106
+ بدون معاملات.
107
+
108
+ ---
109
+
110
+ ### `block-failproofai-commands`
111
+
112
+ **الحدث:** PreToolUse (Bash)
113
+ **الافتراضي:** يرفض الأوامر التي ستقوم بإلغاء تثبيت أو تعطيل failproofai نفسه (على سبيل المثال `npm uninstall failproofai`، `failproofai policies --uninstall`).
114
+
115
+ بدون معاملات.
116
+
117
+ ---
118
+
119
+ ## الأسرار (معقمات)
120
+
121
+ منع الوكلاء من تسرب بيانات اعتماد إلى سياقهم أو مخرجاتهم. تنشط سياسات المعقم على أحداث **PostToolUse**. عندما يقوم Claude بتشغيل أمر Bash أو قراءة ملف أو استدعاء أي أداة، تفحص هذه السياسات المخرجات قبل إرجاعها إلى Claude. إذا تم الكشف عن نمط سري، تُرجع السياسة قرار رفض يمنع إرجاع المخرجات.
122
+
123
+ ### `sanitize-jwt`
124
+
125
+ **الحدث:** PostToolUse (جميع الأدوات)
126
+ **الافتراضي:** يحذف رموز JWT (ثلاث مقاطع base64url مفصولة بـ `.`).
127
+
128
+ بدون معاملات.
129
+
130
+ ---
131
+
132
+ ### `sanitize-api-keys`
133
+
134
+ **الحدث:** PostToolUse (جميع الأدوات)
135
+ **الافتراضي:** يحذف تنسيقات مفاتيح API الشائعة: Anthropic (`sk-ant-`)، OpenAI (`sk-`)، GitHub PATs (`ghp_`)، مفاتيح الوصول AWS (`AKIA`)، مفاتيح Stripe (`sk_live_`, `sk_test_`)، ومفاتيح Google API (`AIza`).
136
+
137
+ **المعاملات:**
138
+
139
+ | المعامل | النوع | الافتراضي | الوصف |
140
+ |-------|------|---------|-------------|
141
+ | `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | أنماط regex إضافية يتم التعامل معها كأسرار. |
142
+
143
+ **مثال:**
144
+
145
+ ```json
146
+ {
147
+ "policyParams": {
148
+ "sanitize-api-keys": {
149
+ "additionalPatterns": [
150
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo internal API key" },
151
+ { "regex": "pat_[0-9a-f]{40}", "label": "Internal PAT" }
152
+ ]
153
+ }
154
+ }
155
+ }
156
+ ```
157
+
158
+ ---
159
+
160
+ ### `sanitize-connection-strings`
161
+
162
+ **الحدث:** PostToolUse (جميع الأدوات)
163
+ **الافتراضي:** يحذف سلاسل اتصال قاعدة البيانات التي تحتوي على بيانات اعتماد مضمنة (على سبيل المثال `postgresql://user:password@host/db`).
164
+
165
+ بدون معاملات.
166
+
167
+ ---
168
+
169
+ ### `sanitize-private-key-content`
170
+
171
+ **الحدث:** PostToolUse (جميع الأدوات)
172
+ **الافتراضي:** يحذف كتل PEM (`-----BEGIN PRIVATE KEY-----`، `-----BEGIN RSA PRIVATE KEY-----`، إلخ).
173
+
174
+ بدون معاملات.
175
+
176
+ ---
177
+
178
+ ### `sanitize-bearer-tokens`
179
+
180
+ **الحدث:** PostToolUse (جميع الأدوات)
181
+ **الافتراضي:** يحذف رؤوس `Authorization: Bearer <token>` حيث يكون الرمز 20 حرفًا أو أكثر.
182
+
183
+ بدون معاملات.
184
+
185
+ ---
186
+
187
+ ## البيئة
188
+
189
+ حماية تكوين البيئة الحساسة من قراءتها أو تعريضها من قبل الوكلاء.
190
+
191
+ ### `block-env-files`
192
+
193
+ **الحدث:** PreToolUse (Bash, Read)
194
+ **الافتراضي:** يرفض قراءة ملفات `.env` عبر `cat .env`، استدعاءات أداة Read مع `.env` كمسار الملف، إلخ.
195
+
196
+ لا يحجب `.envrc` أو ملفات أخرى مجاورة للبيئة - فقط الملفات المسماة بالضبط `.env`.
197
+
198
+ بدون معاملات.
199
+
200
+ ---
201
+
202
+ ### `protect-env-vars`
203
+
204
+ **الحدث:** PreToolUse (Bash)
205
+ **الافتراضي:** يرفض الأوامر التي تطبع متغيرات البيئة: `printenv`، `env`، `echo $VAR`.
206
+
207
+ بدون معاملات.
208
+
209
+ ---
210
+
211
+ ## الوصول إلى الملفات
212
+
213
+ إبقاء الوكلاء يعملون داخل حدود المشروع بعيدًا عن الملفات الحساسة.
214
+
215
+ ### `block-read-outside-cwd`
216
+
217
+ **الحدث:** PreToolUse (Read, Bash)
218
+ **الافتراضي:** يرفض قراءة الملفات خارج دليل العمل الحالي (جذر المشروع).
219
+
220
+ **المعاملات:**
221
+
222
+ | المعامل | النوع | الافتراضي | الوصف |
223
+ |-------|------|---------|-------------|
224
+ | `allowPaths` | `string[]` | `[]` | بادئات المسار المطلق المسموحة حتى لو كانت خارج cwd. |
225
+
226
+ **مثال:**
227
+
228
+ ```json
229
+ {
230
+ "policyParams": {
231
+ "block-read-outside-cwd": {
232
+ "allowPaths": ["/shared/data", "/opt/company/config"]
233
+ }
234
+ }
235
+ }
236
+ ```
237
+
238
+ ---
239
+
240
+ ### `block-secrets-write`
241
+
242
+ **الحدث:** PreToolUse (Write, Edit)
243
+ **الافتراضي:** يرفض الكتابة إلى الملفات المستخدمة بشكل شائع للمفاتيح الخاصة والشهادات: `id_rsa`، `id_ed25519`، `*.key`، `*.pem`، `*.p12`، `*.pfx`.
244
+
245
+ **المعاملات:**
246
+
247
+ | المعامل | النوع | الافتراضي | الوصف |
248
+ |-------|------|---------|-------------|
249
+ | `additionalPatterns` | `string[]` | `[]` | أنماط اسم ملف إضافية (على نمط glob) للحجب. |
250
+
251
+ **مثال:**
252
+
253
+ ```json
254
+ {
255
+ "policyParams": {
256
+ "block-secrets-write": {
257
+ "additionalPatterns": [".token", ".secret"]
258
+ }
259
+ }
260
+ }
261
+ ```
262
+
263
+ ---
264
+
265
+ ## Git
266
+
267
+ منع الدفع العرضي والدفع القسري والأخطاء في الفروع التي يصعب التراجع عنها.
268
+
269
+ ### `block-push-master`
270
+
271
+ **الحدث:** PreToolUse (Bash)
272
+ **الافتراضي:** يرفض `git push origin main` و `git push origin master`.
273
+
274
+ **المعاملات:**
275
+
276
+ | المعامل | النوع | الافتراضي | الوصف |
277
+ |-------|------|---------|-------------|
278
+ | `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن الدفع إليها مباشرة. |
279
+
280
+ **مثال:**
281
+
282
+ ```json
283
+ {
284
+ "policyParams": {
285
+ "block-push-master": {
286
+ "protectedBranches": ["main", "master", "release", "prod"]
287
+ }
288
+ }
289
+ }
290
+ ```
291
+
292
+ <Tip>
293
+ للسماح بالدفع إلى جميع الفروع (تعطيل هذه السياسة بشكل فعال دون إزالتها من `enabledPolicies`)، اضبط `protectedBranches: []`.
294
+ </Tip>
295
+
296
+ ---
297
+
298
+ ### `block-work-on-main`
299
+
300
+ **الحدث:** PreToolUse (Bash)
301
+ **الافتراضي:** يرفض الانتقال إلى فروع `main` أو `master` مباشرة.
302
+
303
+ **المعاملات:**
304
+
305
+ | المعامل | النوع | الافتراضي | الوصف |
306
+ |-------|------|---------|-------------|
307
+ | `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن الانتقال إليها مباشرة. |
308
+
309
+ ---
310
+
311
+ ### `block-force-push`
312
+
313
+ **الحدث:** PreToolUse (Bash)
314
+ **الافتراضي:** يرفض `git push --force` و `git push -f`.
315
+
316
+ بدون معاملات خاصة بالسياسة. استخدم التقاطع [`hint`](/ar/configuration#hint-cross-cutting) لاقتراح بدائل:
317
+
318
+ ```json
319
+ {
320
+ "policyParams": {
321
+ "block-force-push": {
322
+ "hint": "Create a new branch from your current HEAD (e.g. `git checkout -b <new-branch>`) and push that instead."
323
+ }
324
+ }
325
+ }
326
+ ```
327
+
328
+ ---
329
+
330
+ ### `warn-git-amend`
331
+
332
+ **الحدث:** PreToolUse (Bash)
333
+ **الافتراضي:** يرشد Claude للمتابعة بحذر عند تشغيل `git commit --amend`. لا يحجب الأمر.
334
+
335
+ بدون معاملات.
336
+
337
+ ---
338
+
339
+ ### `warn-git-stash-drop`
340
+
341
+ **الحدث:** PreToolUse (Bash)
342
+ **الافتراضي:** يرشد Claude لتأكيد قبل تشغيل `git stash drop`. لا يحجب الأمر.
343
+
344
+ بدون معاملات.
345
+
346
+ ---
347
+
348
+ ### `warn-all-files-staged`
349
+
350
+ **الحدث:** PreToolUse (Bash)
351
+ **الافتراضي:** يرشد Claude لمراجعة ما يختزنه عند تشغيل `git add -A` أو `git add .`. لا يحجب الأمر.
352
+
353
+ بدون معاملات.
354
+
355
+ ---
356
+
357
+ ## قاعدة البيانات
358
+
359
+ اكتش العمليات SQL المدمرة قبل تنفيذها ضد قاعدة البيانات الخاصة بك.
360
+
361
+ ### `warn-destructive-sql`
362
+
363
+ **الحدث:** PreToolUse (Bash)
364
+ **الافتراضي:** يرشد Claude للتأكيد قبل تشغيل SQL التي تحتوي على `DROP TABLE`، `DROP DATABASE`، أو `DELETE` بدون بند `WHERE`.
365
+
366
+ بدون معاملات.
367
+
368
+ ---
369
+
370
+ ### `warn-schema-alteration`
371
+
372
+ **الحدث:** PreToolUse (Bash)
373
+ **الافتراضي:** يرشد Claude للتأكيد قبل تشغيل عبارات `ALTER TABLE`.
374
+
375
+ بدون معاملات.
376
+
377
+ ---
378
+
379
+ ## التحذيرات
380
+
381
+ إعطاء الوكلاء سياق إضافي قبل العمليات المحتملة الخطورة ولكن غير المدمرة.
382
+
383
+ ### `warn-large-file-write`
384
+
385
+ **الحدث:** PreToolUse (Write)
386
+ **الافتراضي:** يرشد Claude للتأكيد قبل كتابة الملفات الأكبر من 1024 كيلوبايت.
387
+
388
+ **المعاملات:**
389
+
390
+ | المعامل | النوع | الافتراضي | الوصف |
391
+ |-------|------|---------|-------------|
392
+ | `thresholdKb` | `number` | `1024` | عتبة حجم الملف بالكيلوبايت التي يتم فوقها إصدار تحذير. |
393
+
394
+ **مثال:**
395
+
396
+ ```json
397
+ {
398
+ "policyParams": {
399
+ "warn-large-file-write": {
400
+ "thresholdKb": 256
401
+ }
402
+ }
403
+ }
404
+ ```
405
+
406
+ <Note>
407
+ يفرض معالج hook حد أقصى 1 ميجابايت stdin على الحمولات. لاختبار هذه السياسة بمحتوى صغير، اضبط `thresholdKb` على قيمة أقل بكثير من 1024.
408
+ </Note>
409
+
410
+ ---
411
+
412
+ ### `warn-package-publish`
413
+
414
+ **الحدث:** PreToolUse (Bash)
415
+ **الافتراضي:** يرشد Claude للتأكيد قبل تشغيل `npm publish`.
416
+
417
+ بدون معاملات.
418
+
419
+ ---
420
+
421
+ ### `warn-background-process`
422
+
423
+ **الحدث:** PreToolUse (Bash)
424
+ **الافتراضي:** يرشد Claude ليكون حذرًا عند إطلاق العمليات في الخلفية عبر `nohup`، `&`، `disown`، أو `screen`.
425
+
426
+ بدون معاملات.
427
+
428
+ ---
429
+
430
+ ### `warn-global-package-install`
431
+
432
+ **الحدث:** PreToolUse (Bash)
433
+ **الافتراضي:** يرشد Claude للتأكيد قبل تشغيل `npm install -g`، `yarn global add`، أو `pip install` دون بيئة افتراضية.
434
+
435
+ بدون معاملات.
436
+
437
+ ---
438
+
439
+ ## سلوك الذكاء الاصطناعي
440
+
441
+ اكتشف عندما يعلق الوكلاء أو يتصرفون بشكل غير متوقع.
442
+
443
+ ### `warn-repeated-tool-calls`
444
+
445
+ **الحدث:** PreToolUse (جميع الأدوات)
446
+ **الافتراضي:** يرشد Claude لإعادة النظر عند استدعاء نفس الأداة 3 مرات أو أكثر مع معاملات متطابقة - علامة شائعة على أن الوكيل عالق في حلقة.
447
+
448
+ بدون معاملات.
449
+
450
+ ---
451
+
452
+ ## سير العمل
453
+
454
+ فرض سير عمل منضبط لنهاية الجلسة. تنشط هذه السياسات على حدث **Stop** وترفض Claude من التوقف حتى تستوفى كل شرط. يتبعون سلسلة اعتماد طبيعية: commit → push → PR → CI. إذا رفضت سياسة، يتم تجاوز السياسات اللاحقة في السلسلة (الرفض يقصر الدارة).
455
+
456
+ جميع سياسات سير العمل **fail-open**: إذا كانت الأداة المطلوبة غير متاحة (على سبيل المثال `gh` غير مثبت، لا يوجد git remote)، تسمح السياسة برسالة معلوماتية تشرح سبب تخطي الفحص.
457
+
458
+ ### `require-commit-before-stop`
459
+
460
+ **الحدث:** Stop
461
+ **الافتراضي:** يرفض التوقف عند وجود تغييرات غير مطبقة (ملفات معدلة أو مرحلة أو غير متتبعة). يرجع رسالة معلوماتية عند نظافة دليل العمل.
462
+
463
+ بدون معاملات.
464
+
465
+ ---
466
+
467
+ ### `require-push-before-stop`
468
+
469
+ **الحدث:** Stop
470
+ **الافتراضي:** يرفض التوقف عند وجود commits غير مدفوعة أو عندما لا يكون للفرع الحالي فرع تتبع بعيد. يقترح `git push -u` لإنشاء فرع تتبع إذا لزم الأمر. يفشل مفتوح إذا لم يتم تكوين أي بعيد.
471
+
472
+ **المعاملات:**
473
+
474
+ | المعامل | النوع | الافتراضي | الوصف |
475
+ |-------|------|---------|-------------|
476
+ | `remote` | `string` | `"origin"` | اسم البعيد للدفع إليه. |
477
+
478
+ **مثال:**
479
+
480
+ ```json
481
+ {
482
+ "policyParams": {
483
+ "require-push-before-stop": {
484
+ "remote": "upstream"
485
+ }
486
+ }
487
+ }
488
+ ```
489
+
490
+ ---
491
+
492
+ ### `require-pr-before-stop`
493
+
494
+ **الحدث:** Stop
495
+ **الافتراضي:** يرفض التوقف عند عدم وجود pull request للفرع الحالي، أو عندما يكون PR الموجود مغلقًا/مدمجًا. يرشد Claude لإنشاء PR باستخدام `gh pr create`.
496
+
497
+ بدون معاملات.
498
+
499
+ <Note>
500
+ تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والمصادقة عليه.
501
+ قم بتشغيل `gh auth login` برمز وصول شخصي يتمتع بنطاق `repo` للقراءة
502
+ pull requests. إذا لم يتم تثبيت `gh` أو لم يتم المصادقة عليه، تفشل السياسة مفتوحة وتبلغ السبب إلى Claude.
503
+ </Note>
504
+
505
+ ---
506
+
507
+ ### `require-ci-green-before-stop`
508
+
509
+ **الحدث:** Stop
510
+ **الافتراضي:** يرفض التوقف عند فشل فحوصات CI أو لا تزال تعمل على الفرع الحالي. يتحقق من سير عمل GitHub Actions وفحوصات bot جهات خارجية (على سبيل المثال CodeRabbit, SonarCloud, Codecov). يتعامل مع استنتاجات `skipped` كنجاح. يرجع رسالة معلوماتية عند نجاح جميع الفحوصات.
511
+
512
+ بدون معاملات.
513
+
514
+ <Note>
515
+ تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والمصادقة عليه.
516
+ قم بتشغيل `gh auth login` برمز وصول شخصي يتمتع بنطاق `repo` للقراءة
517
+ Actions workflow runs و Checks API. إذا لم يتم تثبيت `gh` أو لم يتم المصادقة عليه، تفشل السياسة مفتوحة وتبلغ السبب إلى Claude.
518
+ </Note>
519
+
520
+ ---
521
+
522
+ ---
523
+
524
+ ## تعطيل السياسات الفردية
525
+
526
+ أزل سياسة معينة من `enabledPolicies` في تكوينك، أو أوقفها في علامة التبويب Policies في لوحة البيانات.
527
+
528
+ ```json
529
+ {
530
+ "enabledPolicies": [
531
+ "block-rm-rf",
532
+ "sanitize-api-keys"
533
+ ]
534
+ }
535
+ ```
536
+
537
+ لا تعمل السياسات غير المدرجة في `enabledPolicies`، حتى لو كانت هناك إدخالات `policyParams` لها.
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: عرض الجلسات
3
+ description: "قم بتشغيل لوحة التحكم لتصفح جلسات الوكيل وإدارة السياسات"
4
+ ---
5
+
6
+ ```bash
7
+ failproofai
8
+ ```
9
+
10
+ يبدأ لوحة التحكم الويب على `http://localhost:8020`.
11
+
12
+ ## الخيارات
13
+
14
+ | الراية | الوصف |
15
+ |------|-------------|
16
+ | `--port <number>` | المنفذ المراد الاستماع عليه (الافتراضي: `8020`) |
17
+ | `--projects-path <path>` | تجاوز المسار الذي يتم البحث فيه عن مجلدات مشاريع Claude Code |
18
+ | `--allowed-origins <origins>` | المضيفين/عناوين IP المفصولة بفواصل المسموح بها للوصول إلى موارد التطوير |
19
+
20
+ ## أمثلة
21
+
22
+ ```bash
23
+ # قم بالتشغيل على منفذ مختلف
24
+ failproofai --port 9000
25
+
26
+ # استخدم مسار مشاريع مخصص
27
+ failproofai --projects-path ~/my-claude-projects
28
+ ```
@@ -0,0 +1,34 @@
1
+ ---
2
+ title: متغيرات البيئة
3
+ description: "تكوين سلوك failproofai باستخدام متغيرات البيئة"
4
+ ---
5
+
6
+ ## لوحة التحكم
7
+
8
+ | المتغير | الوصف |
9
+ |----------|-------------|
10
+ | `PORT` | منفذ لوحة التحكم (الافتراضي: `8020`) |
11
+ | `CLAUDE_PROJECTS_PATH` | تجاوز موقع مجلدات مشاريع Claude Code |
12
+ | `FAILPROOFAI_DISABLE_PAGES=policies,projects` | صفحات لوحة التحكم المراد إخفاؤها مفصولة بفواصل |
13
+ | `FAILPROOFAI_ALLOWED_DEV_ORIGINS` | المضيفون/عناوين IP المسموح لهم بالوصول إلى موارد التطوير. نفس خيار `--allowed-origins`. |
14
+
15
+ ## تسجيل السجلات
16
+
17
+ | المتغير | الوصف |
18
+ |----------|-------------|
19
+ | `FAILPROOFAI_LOG_LEVEL=info\|warn\|error` | مستوى سجل الخادم (الافتراضي: `warn`) |
20
+ | `FAILPROOFAI_HOOK_LOG_FILE` | مسار ملف سجل hook مخصص، أو `true` للاستخدام الافتراضي (`~/.failproofai/logs/hooks.log`) |
21
+
22
+ ## قياس الاستخدام
23
+
24
+ | المتغير | الوصف |
25
+ |----------|-------------|
26
+ | `FAILPROOFAI_TELEMETRY_DISABLED=1` | تعطيل قياس الاستخدام المجهول |
27
+
28
+ ## نموذج اللغة الكبير (لتقييم السياسات)
29
+
30
+ | المتغير | الوصف |
31
+ |----------|-------------|
32
+ | `FAILPROOFAI_LLM_BASE_URL` | نقطة نهاية API لنموذج اللغة الكبير (الافتراضي: `https://api.openai.com/v1`) |
33
+ | `FAILPROOFAI_LLM_API_KEY` | مفتاح API للسياسات المعتمدة على نموذج اللغة الكبير |
34
+ | `FAILPROOFAI_LLM_MODEL` | اسم النموذج (الافتراضي: `gpt-4o-mini`) |
@@ -0,0 +1,31 @@
1
+ ---
2
+ ---
3
+ title: معالج Hook (داخلي)
4
+ description: "العملية الفرعية التي يستدعيها Claude Code في كل حدث أداة"
5
+ ---
6
+
7
+ ```bash
8
+ failproofai --hook <EventType>
9
+ ```
10
+
11
+ هذا هو الأمر المسجل في `settings.json` الخاص بـ Claude Code بواسطة `failproofai policies --install`. عادة لا تستدعيه مباشرة.
12
+
13
+ يقرأ حمولة JSON من stdin، ويقيّم جميع السياسات المفعّلة، ويخرج برمز يشير إلى القرار:
14
+
15
+ | رمز الخروج | القرار | التأثير |
16
+ |-----------|--------|--------|
17
+ | `0` | `allow` | السماح بالإجراء |
18
+ | `1` | `deny` | حظر الإجراء - يرى Claude سبب الحظر |
19
+ | `2` | `instruct` | إدراج إرشادات في سياق Claude |
20
+
21
+ ### أنواع الأحداث المدعومة
22
+
23
+ | الفئة | الأحداث |
24
+ |-------|--------|
25
+ | **تنفيذ الأداة** | `PreToolUse`, `PostToolUse`, `PostToolUseFailure`, `PermissionRequest`, `PermissionDenied` |
26
+ | **دورة حياة الجلسة** | `SessionStart`, `SessionEnd`, `Stop`, `StopFailure` |
27
+ | **التفاعل مع المستخدم** | `UserPromptSubmit`, `Notification`, `Elicitation`, `ElicitationResult` |
28
+ | **الوكلاء الفرعيون والمهام** | `SubagentStart`, `SubagentStop`, `TaskCreated`, `TaskCompleted`, `TeammateIdle` |
29
+ | **التكوين** | `InstructionsLoaded`, `ConfigChange`, `CwdChanged` |
30
+ | **نظام الملفات** | `FileChanged`, `WorktreeCreate`, `WorktreeRemove` |
31
+ | **السياق** | `PreCompact`, `PostCompact` |
@@ -0,0 +1,48 @@
1
+ ---
2
+ ---
3
+ title: تثبيت السياسات
4
+ description: "تفعيل السياسات لتعمل على كل استدعاء أداة للوكيل"
5
+ ---
6
+
7
+ ```bash
8
+ failproofai policies --install [policy-names...] [options]
9
+ ```
10
+
11
+ يكتب مدخلات الخطاف في `settings.json` الخاص بـ Claude Code بحيث يعترض failproofai استدعاءات الأدوات.
12
+
13
+ الأسماء المختصرة: `failproofai p -i`
14
+
15
+ ## الخيارات
16
+
17
+ | العلم | الوصف |
18
+ |------|--------|
19
+ | `--scope user` | التثبيت في `~/.claude/settings.json` (الافتراضي - جميع الجلسات) |
20
+ | `--scope project` | التثبيت في `.claude/settings.json` في المجلد الحالي |
21
+ | `--scope local` | التثبيت في `.claude/settings.local.json` في المجلد الحالي |
22
+ | `--custom <path>` / `-c` | المسار إلى ملف JS يحتوي على سياسات الخطاف المخصصة |
23
+
24
+ ## السلوك
25
+
26
+ - **بدون أسماء سياسات** - يفتح موجه تفاعلي لاختيار السياسات
27
+ - **أسماء محددة** - يفعّل تلك السياسات (مضافة إلى أي سياسات مفعّلة بالفعل)
28
+ - **`all`** - يفعّل كل السياسات المتاحة
29
+
30
+ التثبيت إضافي: تشغيل `--install` مرة أخرى يضيف سياسات جديدة دون إزالة السياسات الموجودة.
31
+
32
+ ## أمثلة
33
+
34
+ ```bash
35
+ # تثبيت جميع السياسات الافتراضية عالميًا (تفاعلي)
36
+ failproofai policies --install
37
+
38
+ # تثبيت سياسات محددة للمشروع الحالي
39
+ failproofai policies --install block-sudo sanitize-api-keys --scope project
40
+
41
+ # تفعيل جميع السياسات دفعة واحدة
42
+ failproofai policies --install all
43
+
44
+ # التثبيت مع ملف سياسات مخصص
45
+ failproofai policies --install --custom ./my-policies.js
46
+ ```
47
+
48
+ عند توفير `--custom <path>`، يتم التحقق من الملف فورًا - يجب أن يستدعي `customPolicies.add()` مرة واحدة على الأقل. يتم حفظ المسار المحلول في `policies-config.json` باسم `customPoliciesPath`.