failproofai 0.0.2 → 0.0.3

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 (483) 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]__12kr5~_._.js → [root-of-the-server]__03kiqd5._.js} +2 -2
  64. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  65. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  66. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qo8503._.js → [root-of-the-server]__0bo8s~-._.js} +2 -2
  67. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  68. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  69. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  70. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +9 -9
  71. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  72. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.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/{0x-625~1vx1lu.js → 02t9.s735hqyq.js} +1 -1
  90. package/.next/standalone/.next/static/chunks/{0ov60i6md~37t.js → 03oepxbqx6o8~.js} +2 -2
  91. package/.next/standalone/.next/static/chunks/{031pa5~qfzt~_.js → 09e7drilkf1sn.js} +1 -1
  92. package/.next/standalone/.next/static/chunks/{0y~0creqvl5wx.js → 0cwft44dh9bww.js} +1 -1
  93. package/.next/standalone/.next/static/chunks/{06og.7e9nkpjh.js → 0e2uz2g026ckb.js} +1 -1
  94. package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +1 -0
  95. package/.next/standalone/.next/static/chunks/{15wf7x-e.8ia3.js → 0h5kbvg~.xf.v.js} +1 -1
  96. package/.next/standalone/.next/static/chunks/{0_4y_t03jn2nq.js → 0od..umlku4bb.js} +1 -1
  97. package/.next/standalone/.next/static/chunks/{0cvffh-pbsv5u.js → 0xbwzy4dl87-0.js} +1 -1
  98. package/.next/standalone/.next/static/chunks/{0c_ljlxa._4lc.js → 18cl6wups7ouq.js} +2 -2
  99. package/.next/standalone/.next/static/chunks/{turbopack-0uc5y~g6h.n7-.js → turbopack-0r26pc8h0y_-e.js} +1 -1
  100. package/.next/standalone/CHANGELOG.md +103 -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 +539 -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 +566 -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 +49 -0
  117. package/.next/standalone/docs/ar/cli/list-policies.mdx +31 -0
  118. package/.next/standalone/docs/ar/cli/remove-policies.mdx +45 -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} +151 -13
  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 +48 -0
  135. package/.next/standalone/docs/cli/list-policies.mdx +31 -0
  136. package/.next/standalone/docs/cli/remove-policies.mdx +44 -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 +564 -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 +48 -0
  147. package/.next/standalone/docs/de/cli/list-policies.mdx +31 -0
  148. package/.next/standalone/docs/de/cli/remove-policies.mdx +44 -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 +938 -24
  160. package/.next/standalone/docs/es/architecture.mdx +332 -0
  161. package/.next/standalone/docs/es/built-in-policies.mdx +564 -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 +48 -0
  166. package/.next/standalone/docs/es/cli/list-policies.mdx +31 -0
  167. package/.next/standalone/docs/es/cli/remove-policies.mdx +44 -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 +564 -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 +48 -0
  186. package/.next/standalone/docs/fr/cli/list-policies.mdx +31 -0
  187. package/.next/standalone/docs/fr/cli/remove-policies.mdx +44 -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 +564 -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 +48 -0
  205. package/.next/standalone/docs/he/cli/list-policies.mdx +32 -0
  206. package/.next/standalone/docs/he/cli/remove-policies.mdx +44 -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 +564 -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 +48 -0
  223. package/.next/standalone/docs/hi/cli/list-policies.mdx +31 -0
  224. package/.next/standalone/docs/hi/cli/remove-policies.mdx +44 -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 +564 -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 +48 -0
  256. package/.next/standalone/docs/it/cli/list-policies.mdx +31 -0
  257. package/.next/standalone/docs/it/cli/remove-policies.mdx +44 -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 +562 -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 +48 -0
  274. package/.next/standalone/docs/ja/cli/list-policies.mdx +31 -0
  275. package/.next/standalone/docs/ja/cli/remove-policies.mdx +44 -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 +562 -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 +48 -0
  292. package/.next/standalone/docs/ko/cli/list-policies.mdx +31 -0
  293. package/.next/standalone/docs/ko/cli/remove-policies.mdx +44 -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 +564 -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 +48 -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 +44 -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 +562 -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 +44 -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 +562 -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 +48 -0
  350. package/.next/standalone/docs/tr/cli/list-policies.mdx +31 -0
  351. package/.next/standalone/docs/tr/cli/remove-policies.mdx +45 -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 +564 -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 +48 -0
  368. package/.next/standalone/docs/vi/cli/list-policies.mdx +31 -0
  369. package/.next/standalone/docs/vi/cli/remove-policies.mdx +44 -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 +562 -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 +48 -0
  386. package/.next/standalone/docs/zh/cli/list-policies.mdx +31 -0
  387. package/.next/standalone/docs/zh/cli/remove-policies.mdx +44 -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 +405 -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 +539 -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 +405 -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/15jpradyu_531.css +0 -1
  477. package/.next/standalone/docs/cli-reference.md +0 -175
  478. package/.next/standalone/docs/custom-hooks.md +0 -261
  479. package/.next/standalone/docs/getting-started.md +0 -128
  480. package/.next/standalone/docs/introduction.md +0 -47
  481. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_buildManifest.js +0 -0
  482. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_clientMiddlewareManifest.js +0 -0
  483. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_ssgManifest.js +0 -0
@@ -0,0 +1,253 @@
1
+ ---
2
+ title: Exemples
3
+ description: "Comment configurer des hooks pour Claude Code et le Agents SDK"
4
+ icon: book-open
5
+ ---
6
+
7
+ Des exemples prêts à l'emploi pour les scénarios courants. Chacun montre comment installer et ce que vous pouvez attendre.
8
+
9
+ ---
10
+
11
+ ## Configurer des hooks pour Claude Code
12
+
13
+ Failproof AI s'intègre à Claude Code via son [système de hooks](https://docs.anthropic.com/en/docs/claude-code/hooks). Lorsque vous exécutez `failproofai policies --install`, il enregistre des commandes de hooks dans le fichier `settings.json` de Claude Code, qui se déclenchent à chaque appel d'outil.
14
+
15
+ <Steps>
16
+ <Step title="Installer failproofai">
17
+ ```bash
18
+ npm install -g failproofai
19
+ ```
20
+ </Step>
21
+ <Step title="Activer toutes les politiques intégrées">
22
+ ```bash
23
+ failproofai policies --install
24
+ ```
25
+ </Step>
26
+ <Step title="Vérifier que les hooks sont enregistrés">
27
+ ```bash
28
+ cat ~/.claude/settings.json | grep failproofai
29
+ ```
30
+
31
+ Vous devriez voir des entrées de hooks pour les événements `PreToolUse`, `PostToolUse`, `Notification` et `Stop`.
32
+ </Step>
33
+ <Step title="Lancer Claude Code">
34
+ ```bash
35
+ claude
36
+ ```
37
+
38
+ Les politiques s'exécutent désormais automatiquement à chaque appel d'outil. Essayez de demander à Claude d'exécuter `sudo rm -rf /` — cela sera bloqué.
39
+ </Step>
40
+ </Steps>
41
+
42
+ ---
43
+
44
+ ## Configurer des hooks pour le Agents SDK
45
+
46
+ Si vous développez avec le [Agents SDK](https://docs.anthropic.com/en/docs/agents-sdk), vous pouvez utiliser le même système de hooks par programmation.
47
+
48
+ <Steps>
49
+ <Step title="Installer failproofai dans votre projet">
50
+ ```bash
51
+ npm install failproofai
52
+ ```
53
+ </Step>
54
+ <Step title="Configurer les hooks dans votre agent">
55
+ Passez des commandes de hooks lors de la création de votre processus agent. Les hooks se déclenchent de la même manière que dans Claude Code — via stdin/stdout JSON :
56
+
57
+ ```bash
58
+ failproofai --hook PreToolUse # appelé avant chaque outil
59
+ failproofai --hook PostToolUse # appelé après chaque outil
60
+ ```
61
+ </Step>
62
+ <Step title="Écrire une politique personnalisée pour votre agent">
63
+ ```javascript
64
+ import { customPolicies, allow, deny } from "failproofai";
65
+
66
+ customPolicies.add({
67
+ name: "limit-to-project-dir",
68
+ description: "Keep the agent inside the project directory",
69
+ match: { events: ["PreToolUse"] },
70
+ fn: async (ctx) => {
71
+ const path = String(ctx.toolInput?.file_path ?? "");
72
+ if (path.startsWith("/") && !path.startsWith(ctx.session?.cwd ?? "")) {
73
+ return deny("Agent is restricted to the project directory");
74
+ }
75
+ return allow();
76
+ },
77
+ });
78
+ ```
79
+ </Step>
80
+ <Step title="Installer la politique personnalisée">
81
+ ```bash
82
+ failproofai policies --install --custom ./my-agent-policies.js
83
+ ```
84
+ </Step>
85
+ </Steps>
86
+
87
+ ---
88
+
89
+ ## Bloquer les commandes destructives
90
+
91
+ La configuration la plus courante — empêcher les agents de causer des dommages irréversibles.
92
+
93
+ ```bash
94
+ failproofai policies --install block-sudo block-rm-rf block-force-push block-curl-pipe-sh
95
+ ```
96
+
97
+ Ce que ça fait :
98
+ - `block-sudo` — bloque toutes les commandes `sudo`
99
+ - `block-rm-rf` — bloque la suppression récursive de fichiers
100
+ - `block-force-push` — bloque les `git push --force`
101
+ - `block-curl-pipe-sh` — bloque le piping de scripts distants vers le shell
102
+
103
+ ---
104
+
105
+ ## Prévenir les fuites de secrets
106
+
107
+ Empêchez les agents de voir ou de divulguer des identifiants dans la sortie des outils.
108
+
109
+ ```bash
110
+ failproofai policies --install sanitize-api-keys sanitize-jwt sanitize-connection-strings sanitize-bearer-tokens
111
+ ```
112
+
113
+ Ces politiques se déclenchent sur `PostToolUse` — après l'exécution d'un outil, elles nettoient la sortie avant que l'agent ne la voie.
114
+
115
+ ---
116
+
117
+ ## Recevoir des alertes Slack quand les agents ont besoin d'attention
118
+
119
+ Utilisez le hook de notification pour transmettre les alertes d'inactivité vers Slack.
120
+
121
+ ```javascript
122
+ import { customPolicies, allow, instruct } from "failproofai";
123
+
124
+ customPolicies.add({
125
+ name: "slack-on-idle",
126
+ description: "Alert Slack when the agent is waiting for input",
127
+ match: { events: ["Notification"] },
128
+ fn: async (ctx) => {
129
+ const webhookUrl = process.env.SLACK_WEBHOOK_URL;
130
+ if (!webhookUrl) return allow();
131
+
132
+ const message = String(ctx.payload?.message ?? "Agent is waiting");
133
+ const project = ctx.session?.cwd ?? "unknown";
134
+
135
+ try {
136
+ await fetch(webhookUrl, {
137
+ method: "POST",
138
+ headers: { "Content-Type": "application/json" },
139
+ body: JSON.stringify({
140
+ text: `*${message}*\nProject: \`${project}\``,
141
+ }),
142
+ signal: AbortSignal.timeout(5000),
143
+ });
144
+ } catch {
145
+ // ne jamais bloquer l'agent si Slack est inaccessible
146
+ }
147
+
148
+ return allow();
149
+ },
150
+ });
151
+ ```
152
+
153
+ Installez-le :
154
+
155
+ ```bash
156
+ SLACK_WEBHOOK_URL=https://hooks.slack.com/... failproofai policies --install --custom ./slack-alerts.js
157
+ ```
158
+
159
+ ---
160
+
161
+ ## Maintenir les agents sur une branche
162
+
163
+ Empêchez les agents de changer de branche ou de pousser vers des branches protégées.
164
+
165
+ ```javascript
166
+ import { customPolicies, allow, deny } from "failproofai";
167
+
168
+ customPolicies.add({
169
+ name: "stay-on-branch",
170
+ description: "Prevent the agent from checking out other branches",
171
+ match: { events: ["PreToolUse"] },
172
+ fn: async (ctx) => {
173
+ if (ctx.toolName !== "Bash") return allow();
174
+ const cmd = String(ctx.toolInput?.command ?? "");
175
+ if (/git\s+checkout\s+(?!-b)/.test(cmd)) {
176
+ return deny("Stay on the current branch. Create a new branch with -b if needed.");
177
+ }
178
+ return allow();
179
+ },
180
+ });
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Exiger des tests avant les commits
186
+
187
+ Rappelez aux agents d'exécuter les tests avant de committer.
188
+
189
+ ```javascript
190
+ import { customPolicies, allow, instruct } from "failproofai";
191
+
192
+ customPolicies.add({
193
+ name: "test-before-commit",
194
+ description: "Remind the agent to run tests before committing",
195
+ match: { events: ["PreToolUse"] },
196
+ fn: async (ctx) => {
197
+ if (ctx.toolName !== "Bash") return allow();
198
+ const cmd = String(ctx.toolInput?.command ?? "");
199
+ if (/git\s+commit/.test(cmd)) {
200
+ return instruct("Run tests before committing. Use `npm test` or `bun test` first.");
201
+ }
202
+ return allow();
203
+ },
204
+ });
205
+ ```
206
+
207
+ ---
208
+
209
+ ## Verrouiller un dépôt de production
210
+
211
+ Commitez une configuration au niveau du projet pour que tous les développeurs de votre équipe bénéficient des mêmes politiques.
212
+
213
+ Créez `.failproofai/policies-config.json` dans votre dépôt :
214
+
215
+ ```json
216
+ {
217
+ "enabledPolicies": [
218
+ "block-sudo",
219
+ "block-rm-rf",
220
+ "block-force-push",
221
+ "block-push-master",
222
+ "block-env-files",
223
+ "sanitize-api-keys",
224
+ "sanitize-jwt"
225
+ ],
226
+ "policyParams": {
227
+ "block-push-master": {
228
+ "protectedBranches": ["main", "release", "production"]
229
+ }
230
+ }
231
+ }
232
+ ```
233
+
234
+ Puis commitez-le :
235
+
236
+ ```bash
237
+ git add .failproofai/policies-config.json
238
+ git commit -m "Add failproofai team policies"
239
+ ```
240
+
241
+ Chaque membre de l'équipe ayant failproofai installé récupérera automatiquement ces règles.
242
+
243
+ ---
244
+
245
+ ## Plus d'exemples
246
+
247
+ Le répertoire [`examples/`](https://github.com/exospherehost/failproofai/tree/main/examples) du dépôt contient :
248
+
249
+ | Fichier | Ce qu'il illustre |
250
+ |---------|-------------------|
251
+ | `policies-basic.js` | Politiques de démarrage — bloquer les écritures en production, les force-push et les scripts pipés |
252
+ | `policies-notification.js` | Alertes Slack pour les notifications d'inactivité et la fin de session |
253
+ | `policies-advanced/index.js` | Imports transitifs, hooks asynchrones, nettoyage de la sortie `PostToolUse`, gestion de l'événement `Stop` |
@@ -0,0 +1,38 @@
1
+ ---
2
+ title: "Pour les agents"
3
+ description: "Ajoutez les connaissances Failproof AI à votre agent de codage en une seule commande. Compatible avec Claude Code, Cursor, Windsurf, et bien plus."
4
+ ---
5
+
6
+ Ajoutez l'intégralité de la référence Failproof AI à votre agent de codage en une seule commande. Compatible avec Claude Code, Cursor, Windsurf, et tout autre agent prenant en charge les skills.
7
+
8
+ ```bash
9
+ npx skills add https://docs.befailproof.ai
10
+ ```
11
+
12
+ `npx skills` détecte les agents installés sur votre machine et ajoute le skill dans le format approprié pour chacun d'eux automatiquement.
13
+
14
+ ## Ce que couvre le skill
15
+
16
+ | Domaine | Contenu |
17
+ |---------|---------|
18
+ | Politiques | Noms des politiques intégrées, types d'événements, paramètres, activation/désactivation |
19
+ | Politiques personnalisées | `customPolicies.add()`, filtres de correspondance, API `allow`/`deny`/`instruct` |
20
+ | Objet de contexte | `ctx.eventType`, `ctx.toolName`, `ctx.toolInput`, `ctx.session` |
21
+ | Configuration | Structure de `policies-config.json`, fusion des portées, `policyParams` |
22
+ | CLI | `failproofai policies --install`, `--uninstall`, `--custom`, portées |
23
+ | Tableau de bord | Visualiseur de sessions, activité des politiques, variables d'environnement |
24
+ | Architecture | Flux du gestionnaire de hooks, codes de sortie, contrat stdin/stdout |
25
+
26
+ ## Le skill est-il complet ?
27
+
28
+ Mintlify génère `llms.txt` à partir de toutes les pages de la navigation. La documentation Failproof AI couvre l'intégralité de l'API — chaque politique, option et exemple est inclus. Si vous constatez qu'il manque quelque chose, la source est disponible à l'adresse `https://docs.befailproof.ai/llms-full.txt`.
29
+
30
+ Pour un contexte ciblé, créez un lien directement vers une page spécifique :
31
+
32
+ ```bash
33
+ # Uniquement l'API des politiques personnalisées
34
+ npx skills add https://docs.befailproof.ai/custom-policies
35
+
36
+ # Uniquement les politiques intégrées
37
+ npx skills add https://docs.befailproof.ai/built-in-policies
38
+ ```
@@ -0,0 +1,134 @@
1
+ ---
2
+ title: Démarrage rapide
3
+ description: "Installez failproofai, activez les politiques et laissez vos agents s'exécuter de manière fiable"
4
+ icon: rocket
5
+ ---
6
+
7
+ ## Prérequis
8
+
9
+ - **Node.js** >= 20.9.0
10
+ - **Bun** >= 1.3.0 (optionnel - uniquement nécessaire pour compiler depuis les sources)
11
+
12
+ ---
13
+
14
+ ## Installation
15
+
16
+ <CodeGroup>
17
+
18
+ ```bash npm
19
+ npm install -g failproofai
20
+ ```
21
+
22
+ ```bash bun
23
+ bun add -g failproofai
24
+ ```
25
+
26
+ </CodeGroup>
27
+
28
+ ---
29
+
30
+ ## Démarrage rapide
31
+
32
+ <Steps>
33
+ <Step title="Activer les politiques">
34
+ Les politiques sont des règles qui s'exécutent avant et après chaque appel d'outil de l'agent. Elles interceptent les commandes destructrices, les fuites de secrets et autres modes de défaillance avant qu'ils ne causent des dommages.
35
+
36
+ ```bash
37
+ failproofai policies --install
38
+ ```
39
+
40
+ Cela écrit des entrées de hook dans le fichier `settings.json` de Claude Code. Vous pouvez également installer pour un seul projet ou choisir des politiques spécifiques :
41
+
42
+ ```bash
43
+ failproofai policies --install --scope project
44
+ failproofai policies --install block-sudo block-rm-rf sanitize-api-keys
45
+ ```
46
+ </Step>
47
+ <Step title="Vérifier">
48
+ ```bash
49
+ failproofai policies
50
+ ```
51
+
52
+ Affiche toutes les politiques, leur état d'activation et les paramètres configurés.
53
+ </Step>
54
+ <Step title="Lancer le tableau de bord">
55
+ ```bash
56
+ failproofai
57
+ ```
58
+
59
+ Ouvre un tableau de bord local à l'adresse `http://localhost:8020` où vous pouvez parcourir les sessions, inspecter les appels d'outils et gérer les politiques.
60
+ </Step>
61
+ <Step title="Exécuter votre agent">
62
+ Démarrez Claude Code comme d'habitude. Si l'agent tente quelque chose de risqué, failproofai l'intercepte automatiquement. Laissez-le tourner sans surveillance et consultez ce qui s'est passé dans le tableau de bord.
63
+ </Step>
64
+ </Steps>
65
+
66
+ ---
67
+
68
+ ## Comment fonctionnent les politiques
69
+
70
+ Chaque fois qu'un agent exécute un outil, Claude Code appelle failproofai en tant que sous-processus :
71
+
72
+ ```text
73
+ Claude Code → failproofai --hook PreToolUse → reads stdin JSON
74
+ evaluates policies
75
+ writes decision to stdout
76
+ ```
77
+
78
+ Chaque politique retourne l'une des trois décisions suivantes :
79
+
80
+ - **allow** - l'agent continue normalement
81
+ - **deny** - l'action est bloquée, l'agent est informé de la raison
82
+ - **instruct** - du contexte supplémentaire est ajouté au prompt de l'agent
83
+
84
+ <Note>
85
+ Les politiques s'exécutent dans votre processus local. Aucune donnée n'est envoyée à un service distant.
86
+ </Note>
87
+
88
+ ---
89
+
90
+ ## Stockage des données
91
+
92
+ Toute la configuration et les journaux restent sur votre machine :
93
+
94
+ | Chemin | Contenu |
95
+ |--------|---------|
96
+ | `~/.failproofai/policies-config.json` | Configuration globale des politiques |
97
+ | `~/.failproofai/hook-activity.jsonl` | Historique d'exécution des hooks |
98
+ | `~/.failproofai/hook.log` | Journal de débogage pour les erreurs de hooks personnalisés |
99
+ | `.failproofai/policies-config.json` | Configuration par projet (validée dans le dépôt) |
100
+ | `.failproofai/policies-config.local.json` | Remplacements personnels (ignorés par git) |
101
+
102
+ ---
103
+
104
+ ## Désinstallation
105
+
106
+ ```bash
107
+ failproofai policies --uninstall
108
+ ```
109
+
110
+ Supprime les entrées de hook du fichier `~/.claude/settings.json`. Les fichiers de configuration dans `~/.failproofai/` sont conservés.
111
+
112
+ ---
113
+
114
+ ## Étapes suivantes
115
+
116
+ <CardGroup cols={2}>
117
+
118
+ <Card title="Configuration" icon="gear" href="/fr/configuration">
119
+ Périmètres et format des fichiers de configuration
120
+ </Card>
121
+
122
+ <Card title="Politiques intégrées" icon="shield" href="/fr/built-in-policies">
123
+ Les 26 politiques avec leurs paramètres
124
+ </Card>
125
+
126
+ <Card title="Politiques personnalisées" icon="code" href="/fr/custom-policies">
127
+ Écrivez vos propres politiques en JavaScript
128
+ </Card>
129
+
130
+ <Card title="Moniteur d'agents" icon="chart-line" href="/fr/dashboard">
131
+ Surveillez les sessions et consultez l'activité des politiques
132
+ </Card>
133
+
134
+ </CardGroup>
@@ -0,0 +1,57 @@
1
+ ---
2
+ title: Failproof AI
3
+ description: "Gérez les hooks et les politiques qui maintiennent vos agents IA fiables et autonomes"
4
+ ---
5
+
6
+ [![npm weekly downloads](https://img.shields.io/npm/dw/failproofai?style=flat-square&color=2ea44f)](https://www.npmjs.com/package/failproofai)
7
+
8
+ Des hooks et des politiques qui maintiennent vos agents IA fiables et autonomes - pour **Claude Code** et le **Agents SDK**.
9
+
10
+ Les agents IA échouent de manière prévisible. Ils exécutent des commandes destructrices, exposent des secrets, dérivent hors sujet, se retrouvent bloqués dans des boucles ou poussent directement vers la branche principale. Sans surveillance, les petites défaillances s'enchaînent.
11
+
12
+ Failproof AI résout ce problème grâce aux **politiques** - des règles qui s'intègrent à chaque appel d'outil de l'agent et peuvent **détecter les défaillances**, **les atténuer** (bloquer, instruire, assainir) et **vous alerter** lorsqu'une intervention est nécessaire. Un tableau de bord local vous permet de tout passer en revue par la suite.
13
+
14
+ Tout s'exécute localement. Aucune donnée ne quitte votre machine.
15
+
16
+ ## Démarrer
17
+
18
+ <CardGroup cols={2}>
19
+
20
+ <Card title="26 politiques intégrées" icon="shield" href="/fr/built-in-policies">
21
+ Bloquez les commandes destructrices, empêchez les fuites de secrets, maintenez les agents dans les limites du projet, et bien plus encore - directement intégré.
22
+ </Card>
23
+
24
+ <Card title="Politiques personnalisées" icon="code" href="/fr/custom-policies">
25
+ Écrivez vos propres règles en JavaScript avec une API simple allow / deny / instruct.
26
+ </Card>
27
+
28
+ <Card title="Moniteur d'agents" icon="chart-line" href="/fr/dashboard">
29
+ Voyez ce que vos agents ont fait pendant votre absence. Parcourez les sessions, inspectez les appels d'outils, examinez où les politiques se sont déclenchées.
30
+ </Card>
31
+
32
+ <Card title="Configuration simplifiée" icon="gear" href="/fr/configuration">
33
+ Ajustez n'importe quelle politique sans code. Définissez des listes d'autorisation, des branches protégées ou des seuils par projet ou globalement.
34
+ </Card>
35
+
36
+ </CardGroup>
37
+
38
+ ## Démarrage rapide
39
+
40
+ <CodeGroup>
41
+
42
+ ```bash npm
43
+ npm install -g failproofai
44
+ ```
45
+
46
+ ```bash bun
47
+ bun add -g failproofai
48
+ ```
49
+
50
+ </CodeGroup>
51
+
52
+ ```bash
53
+ failproofai policies --install # activer les politiques
54
+ failproofai # lancer le tableau de bord
55
+ ```
56
+
57
+ Consultez le guide [Premiers pas](/fr/getting-started) pour une présentation complète.
@@ -0,0 +1,82 @@
1
+ ---
2
+ title: Alias de Packages
3
+ description: "Alias enregistrés pour la prévention du typosquatting et leur fonctionnement"
4
+ icon: copy
5
+ ---
6
+
7
+ ## Package officiel
8
+
9
+ Le package npm canonique est **`failproofai`** :
10
+
11
+ ```bash
12
+ npm install -g failproofai
13
+ # or
14
+ bun add -g failproofai
15
+ ```
16
+
17
+ ---
18
+
19
+ ## Pourquoi nous détenons les noms d'alias
20
+
21
+ Le typosquatting est une attaque courante contre la chaîne d'approvisionnement logicielle, où un acteur malveillant enregistre un nom de package à une seule frappe de clavier d'un package populaire. Les utilisateurs qui font une faute de frappe lors de la commande d'installation finissent par exécuter du code contrôlé par l'attaquant avec un accès complet au système — exactement le type de menace que Failproof AI est conçu pour contrer.
22
+
23
+ Pour éliminer cette surface d'attaque, **nous détenons de manière préventive toutes les fautes d'orthographe courantes et variantes de formatage** de `failproofai` sur npm. Aucun de ces noms ne peut être enregistré par un tiers. Chacun est un proxy minimal qui installe le vrai package `failproofai` et lui délègue les appels.
24
+
25
+ ---
26
+
27
+ ## Alias enregistrés
28
+
29
+ **Variantes de formatage** - différentes façons d'écrire « failproof ai » :
30
+
31
+ | Package | Statut |
32
+ |---------|--------|
33
+ | `failproof` | ✅ Publié |
34
+ | `failproof-ai` | ⏳ En attente de validation npm |
35
+ | `fail-proof-ai` | ⏳ En attente de validation npm |
36
+ | `failproof_ai` | ⏳ En attente de validation npm |
37
+ | `fail_proof_ai` | ⏳ En attente de validation npm |
38
+ | `fail-proofai` | ⏳ En attente de validation npm |
39
+
40
+ **Fautes de frappe `failprof*`** - un `o` manquant dans « proof » :
41
+
42
+ | Package | Statut |
43
+ |---------|--------|
44
+ | `failprof` | ✅ Publié |
45
+ | `failprof-ai` | ✅ Publié |
46
+ | `failprofai` | ⏳ En attente de validation npm |
47
+ | `fail-prof-ai` | ⏳ En attente de validation npm |
48
+ | `failprof_ai` | ⏳ En attente de validation npm |
49
+
50
+ **Fautes de frappe `faliproof*`** - inversion des lettres `a` et `i` :
51
+
52
+ | Package | Statut |
53
+ |---------|--------|
54
+ | `faliproof` | ✅ Publié |
55
+ | `faliproof-ai` | ✅ Publié |
56
+ | `faliproofai` | ⏳ En attente de validation npm |
57
+
58
+ > **Pourquoi « en attente » ?** La politique anti-spam de npm bloque les noms qui, après suppression de la ponctuation et application de vérifications de similarité, se normalisent vers la même chaîne qu'un package existant. Nous avons contacté le support npm pour réserver ces noms à des fins de protection contre le squatting. Ils seront activés une fois approuvés.
59
+
60
+ Vous pouvez vérifier que tout alias publié nous appartient :
61
+
62
+ ```bash
63
+ npm info failproof
64
+ # Look for: "ExosphereHost Inc." in the maintainers field
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Fonctionnement des alias
70
+
71
+ Chaque package alias :
72
+
73
+ 1. Liste `failproofai` comme dépendance — ainsi, le vrai package (y compris la configuration de son hook `postinstall`) s'exécute lors de l'installation
74
+ 2. Expose un binaire portant son propre nom (par exemple `failprof-ai`) qui transmet tous les arguments au binaire `failproofai`
75
+
76
+ Le proxy est un script Node de deux lignes ; il ne contient aucune logique, n'effectue aucun appel réseau et ne collecte aucune donnée au-delà de ce que fait `failproofai` lui-même.
77
+
78
+ ---
79
+
80
+ ## Si vous trouvez un nom que nous avons manqué
81
+
82
+ Ouvrez une issue sur [exospherehost/failproofai](https://github.com/exospherehost/failproofai/issues) et nous l'enregistrerons.