failproofai 0.0.6-beta.3 → 0.0.6-beta.5

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 (509) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +7 -1
  5. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  6. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  10. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  11. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  12. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  13. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  14. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  16. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  19. package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
  20. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
  21. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  22. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  23. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  24. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  25. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  26. package/.next/standalone/.next/server/app/index.html +1 -1
  27. package/.next/standalone/.next/server/app/index.rsc +16 -16
  28. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  29. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
  30. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
  31. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
  32. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  33. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  34. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
  37. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  40. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  43. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  44. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  47. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +1 -1
  50. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
  51. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  52. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  53. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  54. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  55. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  56. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__096k.db._.js → [root-of-the-server]__0u49i20._.js} +2 -2
  57. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +2 -2
  58. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0kyh86x._.js → [root-of-the-server]__0xezw2w._.js} +2 -2
  59. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  60. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
  61. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
  62. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
  63. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
  64. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  65. package/.next/standalone/.next/server/pages/404.html +2 -2
  66. package/.next/standalone/.next/server/pages/500.html +1 -1
  67. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
  69. package/.next/standalone/.next/static/chunks/03xexm0jftw.x.js +6 -0
  70. package/.next/standalone/.next/static/chunks/{0-dm_9a6nsc2l.js → 0_-7qmtiagi-~.js} +1 -1
  71. package/.next/standalone/.next/static/chunks/{0l-mu4okl-cj1.js → 0af6vx3nh6v77.js} +1 -1
  72. package/.next/standalone/.next/static/chunks/{051m32nx~n5yr.js → 0hrob6m-1.n1d.js} +1 -1
  73. package/.next/standalone/.next/static/chunks/0mir9jdxn35~s.css +1 -0
  74. package/.next/standalone/.next/static/chunks/{156zca6aewyr-.js → 0ms9sfkvw5h5i.js} +1 -1
  75. package/.next/standalone/.next/static/chunks/{01pmw1-asbek~.js → 0on5naeqa0w.x.js} +2 -2
  76. package/.next/standalone/.next/static/chunks/{0mazj-p-~2kc6.js → 0q~7ymasjp~n7.js} +1 -1
  77. package/.next/standalone/.next/static/chunks/{0a-yctdwn368y.js → 11vga8q3t~527.js} +1 -1
  78. package/.next/standalone/next.config.ts +6 -0
  79. package/.next/standalone/package.json +2 -2
  80. package/.next/standalone/server.js +1 -1
  81. package/dist/cli.mjs +90 -2
  82. package/package.json +2 -2
  83. package/scripts/prune-standalone.mjs +128 -0
  84. package/src/hooks/builtin-policies.ts +117 -0
  85. package/.next/standalone/.claude/settings.json +0 -316
  86. package/.next/standalone/.failproofai/policies/review-policies.mjs +0 -113
  87. package/.next/standalone/.failproofai/policies/workflow-policies.mjs +0 -63
  88. package/.next/standalone/.failproofai/policies-config.json +0 -39
  89. package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +0 -1
  90. package/.next/standalone/.next/static/chunks/0qakntsrpc~1j.js +0 -6
  91. package/.next/standalone/AGENTS.md +0 -80
  92. package/.next/standalone/CHANGELOG.md +0 -158
  93. package/.next/standalone/CLAUDE.md +0 -165
  94. package/.next/standalone/CONTRIBUTING.md +0 -76
  95. package/.next/standalone/Dockerfile.docs +0 -12
  96. package/.next/standalone/LICENSE +0 -42
  97. package/.next/standalone/README.md +0 -301
  98. package/.next/standalone/bin/failproofai.mjs +0 -439
  99. package/.next/standalone/bun.lock +0 -1119
  100. package/.next/standalone/components.json +0 -23
  101. package/.next/standalone/dist/cli.mjs +0 -4696
  102. package/.next/standalone/dist/index.js +0 -80
  103. package/.next/standalone/docs/ar/architecture.mdx +0 -334
  104. package/.next/standalone/docs/ar/built-in-policies.mdx +0 -574
  105. package/.next/standalone/docs/ar/cli/dashboard.mdx +0 -28
  106. package/.next/standalone/docs/ar/cli/environment-variables.mdx +0 -34
  107. package/.next/standalone/docs/ar/cli/hook.mdx +0 -31
  108. package/.next/standalone/docs/ar/cli/install-policies.mdx +0 -48
  109. package/.next/standalone/docs/ar/cli/list-policies.mdx +0 -31
  110. package/.next/standalone/docs/ar/cli/remove-policies.mdx +0 -43
  111. package/.next/standalone/docs/ar/cli/version.mdx +0 -13
  112. package/.next/standalone/docs/ar/configuration.mdx +0 -223
  113. package/.next/standalone/docs/ar/custom-policies.mdx +0 -354
  114. package/.next/standalone/docs/ar/dashboard.mdx +0 -142
  115. package/.next/standalone/docs/ar/examples.mdx +0 -307
  116. package/.next/standalone/docs/ar/for-agents.mdx +0 -39
  117. package/.next/standalone/docs/ar/getting-started.mdx +0 -187
  118. package/.next/standalone/docs/ar/introduction.mdx +0 -58
  119. package/.next/standalone/docs/ar/package-aliases.mdx +0 -82
  120. package/.next/standalone/docs/ar/testing.mdx +0 -261
  121. package/.next/standalone/docs/architecture.mdx +0 -332
  122. package/.next/standalone/docs/built-in-policies.mdx +0 -574
  123. package/.next/standalone/docs/cli/dashboard.mdx +0 -28
  124. package/.next/standalone/docs/cli/environment-variables.mdx +0 -34
  125. package/.next/standalone/docs/cli/hook.mdx +0 -30
  126. package/.next/standalone/docs/cli/install-policies.mdx +0 -47
  127. package/.next/standalone/docs/cli/list-policies.mdx +0 -31
  128. package/.next/standalone/docs/cli/remove-policies.mdx +0 -43
  129. package/.next/standalone/docs/cli/version.mdx +0 -12
  130. package/.next/standalone/docs/configuration.mdx +0 -222
  131. package/.next/standalone/docs/custom-policies.mdx +0 -353
  132. package/.next/standalone/docs/dashboard.mdx +0 -142
  133. package/.next/standalone/docs/de/architecture.mdx +0 -332
  134. package/.next/standalone/docs/de/built-in-policies.mdx +0 -574
  135. package/.next/standalone/docs/de/cli/dashboard.mdx +0 -28
  136. package/.next/standalone/docs/de/cli/environment-variables.mdx +0 -34
  137. package/.next/standalone/docs/de/cli/hook.mdx +0 -30
  138. package/.next/standalone/docs/de/cli/install-policies.mdx +0 -47
  139. package/.next/standalone/docs/de/cli/list-policies.mdx +0 -31
  140. package/.next/standalone/docs/de/cli/remove-policies.mdx +0 -43
  141. package/.next/standalone/docs/de/cli/version.mdx +0 -12
  142. package/.next/standalone/docs/de/configuration.mdx +0 -222
  143. package/.next/standalone/docs/de/custom-policies.mdx +0 -353
  144. package/.next/standalone/docs/de/dashboard.mdx +0 -142
  145. package/.next/standalone/docs/de/examples.mdx +0 -307
  146. package/.next/standalone/docs/de/for-agents.mdx +0 -38
  147. package/.next/standalone/docs/de/getting-started.mdx +0 -186
  148. package/.next/standalone/docs/de/introduction.mdx +0 -57
  149. package/.next/standalone/docs/de/package-aliases.mdx +0 -82
  150. package/.next/standalone/docs/de/testing.mdx +0 -260
  151. package/.next/standalone/docs/docs.json +0 -1002
  152. package/.next/standalone/docs/es/architecture.mdx +0 -332
  153. package/.next/standalone/docs/es/built-in-policies.mdx +0 -574
  154. package/.next/standalone/docs/es/cli/dashboard.mdx +0 -28
  155. package/.next/standalone/docs/es/cli/environment-variables.mdx +0 -34
  156. package/.next/standalone/docs/es/cli/hook.mdx +0 -30
  157. package/.next/standalone/docs/es/cli/install-policies.mdx +0 -47
  158. package/.next/standalone/docs/es/cli/list-policies.mdx +0 -31
  159. package/.next/standalone/docs/es/cli/remove-policies.mdx +0 -43
  160. package/.next/standalone/docs/es/cli/version.mdx +0 -12
  161. package/.next/standalone/docs/es/configuration.mdx +0 -222
  162. package/.next/standalone/docs/es/custom-policies.mdx +0 -353
  163. package/.next/standalone/docs/es/dashboard.mdx +0 -142
  164. package/.next/standalone/docs/es/examples.mdx +0 -307
  165. package/.next/standalone/docs/es/for-agents.mdx +0 -38
  166. package/.next/standalone/docs/es/getting-started.mdx +0 -186
  167. package/.next/standalone/docs/es/introduction.mdx +0 -57
  168. package/.next/standalone/docs/es/package-aliases.mdx +0 -82
  169. package/.next/standalone/docs/es/testing.mdx +0 -260
  170. package/.next/standalone/docs/examples.mdx +0 -307
  171. package/.next/standalone/docs/favicon.ico +0 -0
  172. package/.next/standalone/docs/for-agents.mdx +0 -38
  173. package/.next/standalone/docs/fr/architecture.mdx +0 -332
  174. package/.next/standalone/docs/fr/built-in-policies.mdx +0 -574
  175. package/.next/standalone/docs/fr/cli/dashboard.mdx +0 -28
  176. package/.next/standalone/docs/fr/cli/environment-variables.mdx +0 -34
  177. package/.next/standalone/docs/fr/cli/hook.mdx +0 -30
  178. package/.next/standalone/docs/fr/cli/install-policies.mdx +0 -47
  179. package/.next/standalone/docs/fr/cli/list-policies.mdx +0 -31
  180. package/.next/standalone/docs/fr/cli/remove-policies.mdx +0 -43
  181. package/.next/standalone/docs/fr/cli/version.mdx +0 -12
  182. package/.next/standalone/docs/fr/configuration.mdx +0 -222
  183. package/.next/standalone/docs/fr/custom-policies.mdx +0 -353
  184. package/.next/standalone/docs/fr/dashboard.mdx +0 -142
  185. package/.next/standalone/docs/fr/examples.mdx +0 -307
  186. package/.next/standalone/docs/fr/for-agents.mdx +0 -38
  187. package/.next/standalone/docs/fr/getting-started.mdx +0 -186
  188. package/.next/standalone/docs/fr/introduction.mdx +0 -57
  189. package/.next/standalone/docs/fr/package-aliases.mdx +0 -82
  190. package/.next/standalone/docs/fr/testing.mdx +0 -260
  191. package/.next/standalone/docs/getting-started.mdx +0 -186
  192. package/.next/standalone/docs/he/architecture.mdx +0 -333
  193. package/.next/standalone/docs/he/built-in-policies.mdx +0 -575
  194. package/.next/standalone/docs/he/cli/dashboard.mdx +0 -28
  195. package/.next/standalone/docs/he/cli/environment-variables.mdx +0 -34
  196. package/.next/standalone/docs/he/cli/hook.mdx +0 -30
  197. package/.next/standalone/docs/he/cli/install-policies.mdx +0 -47
  198. package/.next/standalone/docs/he/cli/list-policies.mdx +0 -32
  199. package/.next/standalone/docs/he/cli/remove-policies.mdx +0 -43
  200. package/.next/standalone/docs/he/cli/version.mdx +0 -12
  201. package/.next/standalone/docs/he/configuration.mdx +0 -223
  202. package/.next/standalone/docs/he/custom-policies.mdx +0 -353
  203. package/.next/standalone/docs/he/dashboard.mdx +0 -142
  204. package/.next/standalone/docs/he/examples.mdx +0 -307
  205. package/.next/standalone/docs/he/for-agents.mdx +0 -38
  206. package/.next/standalone/docs/he/getting-started.mdx +0 -186
  207. package/.next/standalone/docs/he/introduction.mdx +0 -57
  208. package/.next/standalone/docs/he/package-aliases.mdx +0 -82
  209. package/.next/standalone/docs/he/testing.mdx +0 -260
  210. package/.next/standalone/docs/hi/architecture.mdx +0 -334
  211. package/.next/standalone/docs/hi/built-in-policies.mdx +0 -572
  212. package/.next/standalone/docs/hi/cli/dashboard.mdx +0 -28
  213. package/.next/standalone/docs/hi/cli/environment-variables.mdx +0 -34
  214. package/.next/standalone/docs/hi/cli/hook.mdx +0 -30
  215. package/.next/standalone/docs/hi/cli/install-policies.mdx +0 -47
  216. package/.next/standalone/docs/hi/cli/list-policies.mdx +0 -31
  217. package/.next/standalone/docs/hi/cli/remove-policies.mdx +0 -43
  218. package/.next/standalone/docs/hi/cli/version.mdx +0 -12
  219. package/.next/standalone/docs/hi/configuration.mdx +0 -222
  220. package/.next/standalone/docs/hi/custom-policies.mdx +0 -354
  221. package/.next/standalone/docs/hi/dashboard.mdx +0 -142
  222. package/.next/standalone/docs/hi/examples.mdx +0 -309
  223. package/.next/standalone/docs/hi/for-agents.mdx +0 -38
  224. package/.next/standalone/docs/hi/getting-started.mdx +0 -187
  225. package/.next/standalone/docs/hi/introduction.mdx +0 -57
  226. package/.next/standalone/docs/hi/package-aliases.mdx +0 -82
  227. package/.next/standalone/docs/hi/testing.mdx +0 -260
  228. package/.next/standalone/docs/i18n/README.ar.md +0 -312
  229. package/.next/standalone/docs/i18n/README.de.md +0 -307
  230. package/.next/standalone/docs/i18n/README.es.md +0 -307
  231. package/.next/standalone/docs/i18n/README.fr.md +0 -307
  232. package/.next/standalone/docs/i18n/README.he.md +0 -312
  233. package/.next/standalone/docs/i18n/README.hi.md +0 -307
  234. package/.next/standalone/docs/i18n/README.it.md +0 -307
  235. package/.next/standalone/docs/i18n/README.ja.md +0 -307
  236. package/.next/standalone/docs/i18n/README.ko.md +0 -307
  237. package/.next/standalone/docs/i18n/README.pt-br.md +0 -307
  238. package/.next/standalone/docs/i18n/README.ru.md +0 -308
  239. package/.next/standalone/docs/i18n/README.tr.md +0 -307
  240. package/.next/standalone/docs/i18n/README.vi.md +0 -307
  241. package/.next/standalone/docs/i18n/README.zh.md +0 -307
  242. package/.next/standalone/docs/introduction.mdx +0 -57
  243. package/.next/standalone/docs/it/architecture.mdx +0 -334
  244. package/.next/standalone/docs/it/built-in-policies.mdx +0 -574
  245. package/.next/standalone/docs/it/cli/dashboard.mdx +0 -28
  246. package/.next/standalone/docs/it/cli/environment-variables.mdx +0 -34
  247. package/.next/standalone/docs/it/cli/hook.mdx +0 -30
  248. package/.next/standalone/docs/it/cli/install-policies.mdx +0 -47
  249. package/.next/standalone/docs/it/cli/list-policies.mdx +0 -31
  250. package/.next/standalone/docs/it/cli/remove-policies.mdx +0 -43
  251. package/.next/standalone/docs/it/cli/version.mdx +0 -12
  252. package/.next/standalone/docs/it/configuration.mdx +0 -222
  253. package/.next/standalone/docs/it/custom-policies.mdx +0 -353
  254. package/.next/standalone/docs/it/dashboard.mdx +0 -142
  255. package/.next/standalone/docs/it/examples.mdx +0 -307
  256. package/.next/standalone/docs/it/for-agents.mdx +0 -38
  257. package/.next/standalone/docs/it/getting-started.mdx +0 -186
  258. package/.next/standalone/docs/it/introduction.mdx +0 -57
  259. package/.next/standalone/docs/it/package-aliases.mdx +0 -82
  260. package/.next/standalone/docs/it/testing.mdx +0 -260
  261. package/.next/standalone/docs/ja/architecture.mdx +0 -332
  262. package/.next/standalone/docs/ja/built-in-policies.mdx +0 -572
  263. package/.next/standalone/docs/ja/cli/dashboard.mdx +0 -28
  264. package/.next/standalone/docs/ja/cli/environment-variables.mdx +0 -34
  265. package/.next/standalone/docs/ja/cli/hook.mdx +0 -30
  266. package/.next/standalone/docs/ja/cli/install-policies.mdx +0 -47
  267. package/.next/standalone/docs/ja/cli/list-policies.mdx +0 -31
  268. package/.next/standalone/docs/ja/cli/remove-policies.mdx +0 -43
  269. package/.next/standalone/docs/ja/cli/version.mdx +0 -12
  270. package/.next/standalone/docs/ja/configuration.mdx +0 -222
  271. package/.next/standalone/docs/ja/custom-policies.mdx +0 -353
  272. package/.next/standalone/docs/ja/dashboard.mdx +0 -142
  273. package/.next/standalone/docs/ja/examples.mdx +0 -307
  274. package/.next/standalone/docs/ja/for-agents.mdx +0 -38
  275. package/.next/standalone/docs/ja/getting-started.mdx +0 -186
  276. package/.next/standalone/docs/ja/introduction.mdx +0 -57
  277. package/.next/standalone/docs/ja/package-aliases.mdx +0 -82
  278. package/.next/standalone/docs/ja/testing.mdx +0 -260
  279. package/.next/standalone/docs/ko/architecture.mdx +0 -332
  280. package/.next/standalone/docs/ko/built-in-policies.mdx +0 -572
  281. package/.next/standalone/docs/ko/cli/dashboard.mdx +0 -28
  282. package/.next/standalone/docs/ko/cli/environment-variables.mdx +0 -34
  283. package/.next/standalone/docs/ko/cli/hook.mdx +0 -30
  284. package/.next/standalone/docs/ko/cli/install-policies.mdx +0 -47
  285. package/.next/standalone/docs/ko/cli/list-policies.mdx +0 -31
  286. package/.next/standalone/docs/ko/cli/remove-policies.mdx +0 -43
  287. package/.next/standalone/docs/ko/cli/version.mdx +0 -12
  288. package/.next/standalone/docs/ko/configuration.mdx +0 -222
  289. package/.next/standalone/docs/ko/custom-policies.mdx +0 -353
  290. package/.next/standalone/docs/ko/dashboard.mdx +0 -142
  291. package/.next/standalone/docs/ko/examples.mdx +0 -307
  292. package/.next/standalone/docs/ko/for-agents.mdx +0 -38
  293. package/.next/standalone/docs/ko/getting-started.mdx +0 -186
  294. package/.next/standalone/docs/ko/introduction.mdx +0 -57
  295. package/.next/standalone/docs/ko/package-aliases.mdx +0 -82
  296. package/.next/standalone/docs/ko/testing.mdx +0 -260
  297. package/.next/standalone/docs/logo/dark.svg +0 -21
  298. package/.next/standalone/docs/logo/exosphere-dark.png +0 -0
  299. package/.next/standalone/docs/logo/exosphere-light.png +0 -0
  300. package/.next/standalone/docs/logo/light.svg +0 -21
  301. package/.next/standalone/docs/package-aliases.mdx +0 -82
  302. package/.next/standalone/docs/pt-br/architecture.mdx +0 -332
  303. package/.next/standalone/docs/pt-br/built-in-policies.mdx +0 -574
  304. package/.next/standalone/docs/pt-br/cli/dashboard.mdx +0 -28
  305. package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +0 -34
  306. package/.next/standalone/docs/pt-br/cli/hook.mdx +0 -30
  307. package/.next/standalone/docs/pt-br/cli/install-policies.mdx +0 -47
  308. package/.next/standalone/docs/pt-br/cli/list-policies.mdx +0 -31
  309. package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +0 -43
  310. package/.next/standalone/docs/pt-br/cli/version.mdx +0 -12
  311. package/.next/standalone/docs/pt-br/configuration.mdx +0 -222
  312. package/.next/standalone/docs/pt-br/custom-policies.mdx +0 -353
  313. package/.next/standalone/docs/pt-br/dashboard.mdx +0 -142
  314. package/.next/standalone/docs/pt-br/examples.mdx +0 -307
  315. package/.next/standalone/docs/pt-br/for-agents.mdx +0 -38
  316. package/.next/standalone/docs/pt-br/getting-started.mdx +0 -186
  317. package/.next/standalone/docs/pt-br/introduction.mdx +0 -57
  318. package/.next/standalone/docs/pt-br/package-aliases.mdx +0 -82
  319. package/.next/standalone/docs/pt-br/testing.mdx +0 -260
  320. package/.next/standalone/docs/ru/architecture.mdx +0 -333
  321. package/.next/standalone/docs/ru/built-in-policies.mdx +0 -574
  322. package/.next/standalone/docs/ru/cli/dashboard.mdx +0 -28
  323. package/.next/standalone/docs/ru/cli/environment-variables.mdx +0 -34
  324. package/.next/standalone/docs/ru/cli/hook.mdx +0 -30
  325. package/.next/standalone/docs/ru/cli/install-policies.mdx +0 -48
  326. package/.next/standalone/docs/ru/cli/list-policies.mdx +0 -32
  327. package/.next/standalone/docs/ru/cli/remove-policies.mdx +0 -43
  328. package/.next/standalone/docs/ru/cli/version.mdx +0 -12
  329. package/.next/standalone/docs/ru/configuration.mdx +0 -222
  330. package/.next/standalone/docs/ru/custom-policies.mdx +0 -354
  331. package/.next/standalone/docs/ru/dashboard.mdx +0 -142
  332. package/.next/standalone/docs/ru/examples.mdx +0 -309
  333. package/.next/standalone/docs/ru/for-agents.mdx +0 -38
  334. package/.next/standalone/docs/ru/getting-started.mdx +0 -186
  335. package/.next/standalone/docs/ru/introduction.mdx +0 -57
  336. package/.next/standalone/docs/ru/package-aliases.mdx +0 -82
  337. package/.next/standalone/docs/ru/testing.mdx +0 -260
  338. package/.next/standalone/docs/testing.mdx +0 -260
  339. package/.next/standalone/docs/tr/architecture.mdx +0 -333
  340. package/.next/standalone/docs/tr/built-in-policies.mdx +0 -574
  341. package/.next/standalone/docs/tr/cli/dashboard.mdx +0 -28
  342. package/.next/standalone/docs/tr/cli/environment-variables.mdx +0 -34
  343. package/.next/standalone/docs/tr/cli/hook.mdx +0 -30
  344. package/.next/standalone/docs/tr/cli/install-policies.mdx +0 -47
  345. package/.next/standalone/docs/tr/cli/list-policies.mdx +0 -31
  346. package/.next/standalone/docs/tr/cli/remove-policies.mdx +0 -44
  347. package/.next/standalone/docs/tr/cli/version.mdx +0 -12
  348. package/.next/standalone/docs/tr/configuration.mdx +0 -222
  349. package/.next/standalone/docs/tr/custom-policies.mdx +0 -353
  350. package/.next/standalone/docs/tr/dashboard.mdx +0 -142
  351. package/.next/standalone/docs/tr/examples.mdx +0 -308
  352. package/.next/standalone/docs/tr/for-agents.mdx +0 -38
  353. package/.next/standalone/docs/tr/getting-started.mdx +0 -186
  354. package/.next/standalone/docs/tr/introduction.mdx +0 -57
  355. package/.next/standalone/docs/tr/package-aliases.mdx +0 -82
  356. package/.next/standalone/docs/tr/testing.mdx +0 -260
  357. package/.next/standalone/docs/vi/architecture.mdx +0 -334
  358. package/.next/standalone/docs/vi/built-in-policies.mdx +0 -572
  359. package/.next/standalone/docs/vi/cli/dashboard.mdx +0 -28
  360. package/.next/standalone/docs/vi/cli/environment-variables.mdx +0 -34
  361. package/.next/standalone/docs/vi/cli/hook.mdx +0 -30
  362. package/.next/standalone/docs/vi/cli/install-policies.mdx +0 -47
  363. package/.next/standalone/docs/vi/cli/list-policies.mdx +0 -31
  364. package/.next/standalone/docs/vi/cli/remove-policies.mdx +0 -43
  365. package/.next/standalone/docs/vi/cli/version.mdx +0 -13
  366. package/.next/standalone/docs/vi/configuration.mdx +0 -222
  367. package/.next/standalone/docs/vi/custom-policies.mdx +0 -353
  368. package/.next/standalone/docs/vi/dashboard.mdx +0 -142
  369. package/.next/standalone/docs/vi/examples.mdx +0 -308
  370. package/.next/standalone/docs/vi/for-agents.mdx +0 -38
  371. package/.next/standalone/docs/vi/getting-started.mdx +0 -186
  372. package/.next/standalone/docs/vi/introduction.mdx +0 -57
  373. package/.next/standalone/docs/vi/package-aliases.mdx +0 -82
  374. package/.next/standalone/docs/vi/testing.mdx +0 -260
  375. package/.next/standalone/docs/zh/architecture.mdx +0 -332
  376. package/.next/standalone/docs/zh/built-in-policies.mdx +0 -570
  377. package/.next/standalone/docs/zh/cli/dashboard.mdx +0 -28
  378. package/.next/standalone/docs/zh/cli/environment-variables.mdx +0 -34
  379. package/.next/standalone/docs/zh/cli/hook.mdx +0 -30
  380. package/.next/standalone/docs/zh/cli/install-policies.mdx +0 -47
  381. package/.next/standalone/docs/zh/cli/list-policies.mdx +0 -31
  382. package/.next/standalone/docs/zh/cli/remove-policies.mdx +0 -43
  383. package/.next/standalone/docs/zh/cli/version.mdx +0 -12
  384. package/.next/standalone/docs/zh/configuration.mdx +0 -222
  385. package/.next/standalone/docs/zh/custom-policies.mdx +0 -353
  386. package/.next/standalone/docs/zh/dashboard.mdx +0 -142
  387. package/.next/standalone/docs/zh/examples.mdx +0 -307
  388. package/.next/standalone/docs/zh/for-agents.mdx +0 -38
  389. package/.next/standalone/docs/zh/getting-started.mdx +0 -186
  390. package/.next/standalone/docs/zh/introduction.mdx +0 -57
  391. package/.next/standalone/docs/zh/package-aliases.mdx +0 -82
  392. package/.next/standalone/docs/zh/testing.mdx +0 -260
  393. package/.next/standalone/eslint.config.mjs +0 -15
  394. package/.next/standalone/examples/convention-policies/security-policies.mjs +0 -40
  395. package/.next/standalone/examples/convention-policies/workflow-policies.mjs +0 -41
  396. package/.next/standalone/examples/policies-advanced/index.js +0 -103
  397. package/.next/standalone/examples/policies-advanced/utils.js +0 -35
  398. package/.next/standalone/examples/policies-basic.js +0 -77
  399. package/.next/standalone/examples/policies-notification.js +0 -104
  400. package/.next/standalone/node_modules/@img/colour/color.cjs +0 -1594
  401. package/.next/standalone/node_modules/@img/colour/index.cjs +0 -1
  402. package/.next/standalone/node_modules/@img/colour/package.json +0 -45
  403. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +0 -46
  404. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +0 -221
  405. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/index.js +0 -1
  406. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  407. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +0 -42
  408. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/versions.json +0 -30
  409. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +0 -46
  410. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +0 -221
  411. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +0 -1
  412. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  413. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +0 -42
  414. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +0 -30
  415. package/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  416. package/.next/standalone/node_modules/@img/sharp-linux-x64/package.json +0 -46
  417. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  418. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +0 -46
  419. package/.next/standalone/node_modules/detect-libc/lib/detect-libc.js +0 -313
  420. package/.next/standalone/node_modules/detect-libc/lib/elf.js +0 -39
  421. package/.next/standalone/node_modules/detect-libc/lib/filesystem.js +0 -51
  422. package/.next/standalone/node_modules/detect-libc/lib/process.js +0 -24
  423. package/.next/standalone/node_modules/detect-libc/package.json +0 -44
  424. package/.next/standalone/node_modules/sharp/lib/channel.js +0 -177
  425. package/.next/standalone/node_modules/sharp/lib/colour.js +0 -195
  426. package/.next/standalone/node_modules/sharp/lib/composite.js +0 -212
  427. package/.next/standalone/node_modules/sharp/lib/constructor.js +0 -499
  428. package/.next/standalone/node_modules/sharp/lib/index.js +0 -16
  429. package/.next/standalone/node_modules/sharp/lib/input.js +0 -809
  430. package/.next/standalone/node_modules/sharp/lib/is.js +0 -143
  431. package/.next/standalone/node_modules/sharp/lib/libvips.js +0 -207
  432. package/.next/standalone/node_modules/sharp/lib/operation.js +0 -1016
  433. package/.next/standalone/node_modules/sharp/lib/output.js +0 -1666
  434. package/.next/standalone/node_modules/sharp/lib/resize.js +0 -595
  435. package/.next/standalone/node_modules/sharp/lib/sharp.js +0 -121
  436. package/.next/standalone/node_modules/sharp/lib/utility.js +0 -291
  437. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/comparator.js +0 -143
  438. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/range.js +0 -557
  439. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/semver.js +0 -333
  440. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/cmp.js +0 -54
  441. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/coerce.js +0 -62
  442. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/compare.js +0 -7
  443. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/eq.js +0 -5
  444. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gt.js +0 -5
  445. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gte.js +0 -5
  446. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lt.js +0 -5
  447. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lte.js +0 -5
  448. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/neq.js +0 -5
  449. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/parse.js +0 -18
  450. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/satisfies.js +0 -12
  451. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/constants.js +0 -37
  452. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/debug.js +0 -11
  453. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/identifiers.js +0 -29
  454. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/lrucache.js +0 -42
  455. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/parse-options.js +0 -17
  456. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/re.js +0 -223
  457. package/.next/standalone/node_modules/sharp/node_modules/semver/package.json +0 -78
  458. package/.next/standalone/node_modules/sharp/package.json +0 -202
  459. package/.next/standalone/scripts/alias-proxy.js +0 -18
  460. package/.next/standalone/scripts/dev.ts +0 -3
  461. package/.next/standalone/scripts/install-telemetry.mjs +0 -108
  462. package/.next/standalone/scripts/launch.ts +0 -83
  463. package/.next/standalone/scripts/parse-script-args.ts +0 -87
  464. package/.next/standalone/scripts/postinstall.mjs +0 -121
  465. package/.next/standalone/scripts/preuninstall.mjs +0 -131
  466. package/.next/standalone/scripts/publish-aliases.mjs +0 -87
  467. package/.next/standalone/scripts/start.ts +0 -3
  468. package/.next/standalone/scripts/sync-hook-events-prompt.md +0 -60
  469. package/.next/standalone/scripts/translate-docs/cache.ts +0 -62
  470. package/.next/standalone/scripts/translate-docs/cli.ts +0 -357
  471. package/.next/standalone/scripts/translate-docs/config.ts +0 -248
  472. package/.next/standalone/scripts/translate-docs/mdx-translator.ts +0 -153
  473. package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +0 -107
  474. package/.next/standalone/scripts/translate-docs/readme-translator.ts +0 -154
  475. package/.next/standalone/scripts/translate-docs/translator.ts +0 -68
  476. package/.next/standalone/scripts/translate-docs/types.ts +0 -43
  477. package/.next/standalone/src/auth/login.ts +0 -104
  478. package/.next/standalone/src/auth/logout.ts +0 -50
  479. package/.next/standalone/src/auth/token-store.ts +0 -64
  480. package/.next/standalone/src/cli-error.ts +0 -18
  481. package/.next/standalone/src/hooks/builtin-policies.ts +0 -1615
  482. package/.next/standalone/src/hooks/custom-hooks-loader.ts +0 -205
  483. package/.next/standalone/src/hooks/custom-hooks-registry.ts +0 -30
  484. package/.next/standalone/src/hooks/handler.ts +0 -222
  485. package/.next/standalone/src/hooks/hook-activity-store.ts +0 -349
  486. package/.next/standalone/src/hooks/hook-logger.ts +0 -133
  487. package/.next/standalone/src/hooks/hook-telemetry.ts +0 -43
  488. package/.next/standalone/src/hooks/hooks-config.ts +0 -166
  489. package/.next/standalone/src/hooks/install-prompt.ts +0 -357
  490. package/.next/standalone/src/hooks/llm-client.ts +0 -90
  491. package/.next/standalone/src/hooks/loader-utils.ts +0 -178
  492. package/.next/standalone/src/hooks/manager.ts +0 -692
  493. package/.next/standalone/src/hooks/policy-evaluator.ts +0 -224
  494. package/.next/standalone/src/hooks/policy-helpers.ts +0 -16
  495. package/.next/standalone/src/hooks/policy-registry.ts +0 -90
  496. package/.next/standalone/src/hooks/policy-types.ts +0 -77
  497. package/.next/standalone/src/hooks/types.ts +0 -63
  498. package/.next/standalone/src/index.ts +0 -19
  499. package/.next/standalone/src/posthog-key.ts +0 -5
  500. package/.next/standalone/src/relay/daemon.ts +0 -362
  501. package/.next/standalone/src/relay/pid.ts +0 -76
  502. package/.next/standalone/src/relay/queue.ts +0 -225
  503. package/.next/standalone/tailwind.config.ts +0 -11
  504. package/.next/standalone/tsconfig.json +0 -42
  505. package/.next/standalone/vitest.config.e2e.mts +0 -24
  506. package/.next/standalone/vitest.config.mts +0 -23
  507. /package/.next/standalone/.next/static/{r-wX0MuAfCjbhJm3phQc8 → Q-y1SELeezrTyQx0E2uqg}/_buildManifest.js +0 -0
  508. /package/.next/standalone/.next/static/{r-wX0MuAfCjbhJm3phQc8 → Q-y1SELeezrTyQx0E2uqg}/_clientMiddlewareManifest.js +0 -0
  509. /package/.next/standalone/.next/static/{r-wX0MuAfCjbhJm3phQc8 → Q-y1SELeezrTyQx0E2uqg}/_ssgManifest.js +0 -0
@@ -1,307 +0,0 @@
1
- ---
2
- title: Esempi
3
- description: "Come configurare i hook per Claude Code e l'Agents SDK"
4
- icon: book-open
5
- ---
6
-
7
- Esempi pronti all'uso per scenari comuni. Ognuno mostra come installare e cosa aspettarsi.
8
-
9
- ---
10
-
11
- ## Configurazione dei hook per Claude Code
12
-
13
- Failproof AI si integra con Claude Code tramite il suo [sistema di hook](https://docs.anthropic.com/en/docs/claude-code/hooks). Quando esegui `failproofai policies --install`, registra i comandi dei hook in `settings.json` di Claude Code che si attivano ad ogni chiamata di strumento.
14
-
15
- <Steps>
16
- <Step title="Installa failproofai">
17
- ```bash
18
- npm install -g failproofai
19
- ```
20
- </Step>
21
- <Step title="Abilita tutte le politiche integrate">
22
- ```bash
23
- failproofai policies --install
24
- ```
25
- </Step>
26
- <Step title="Verifica che i hook siano registrati">
27
- ```bash
28
- cat ~/.claude/settings.json | grep failproofai
29
- ```
30
-
31
- Dovresti vedere le voci dei hook per gli eventi `PreToolUse`, `PostToolUse`, `Notification` e `Stop`.
32
- </Step>
33
- <Step title="Esegui Claude Code">
34
- ```bash
35
- claude
36
- ```
37
-
38
- Le politiche ora vengono eseguite automaticamente ad ogni chiamata di strumento. Prova a chiedere a Claude di eseguire `sudo rm -rf /` - verrà bloccato.
39
- </Step>
40
- </Steps>
41
-
42
- ---
43
-
44
- ## Configurazione dei hook per l'Agents SDK
45
-
46
- Se stai costruendo con l'[Agents SDK](https://docs.anthropic.com/en/docs/agents-sdk), puoi usare lo stesso sistema di hook a livello programmatico.
47
-
48
- <Steps>
49
- <Step title="Installa failproofai nel tuo progetto">
50
- ```bash
51
- npm install failproofai
52
- ```
53
- </Step>
54
- <Step title="Configura i hook nel tuo agent">
55
- Passa i comandi dei hook quando crei il tuo processo di agent. I hook si attivano allo stesso modo di Claude Code - tramite JSON su stdin/stdout:
56
-
57
- ```bash
58
- failproofai --hook PreToolUse # chiamato prima di ogni strumento
59
- failproofai --hook PostToolUse # chiamato dopo ogni strumento
60
- ```
61
- </Step>
62
- <Step title="Scrivi una politica personalizzata per il tuo agent">
63
- ```javascript
64
- import { customPolicies, allow, deny } from "failproofai";
65
-
66
- customPolicies.add({
67
- name: "limit-to-project-dir",
68
- description: "Mantieni l'agent all'interno della directory del progetto",
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("L'agent è limitato alla directory del progetto");
74
- }
75
- return allow();
76
- },
77
- });
78
- ```
79
- </Step>
80
- <Step title="Installa la politica personalizzata">
81
- ```bash
82
- failproofai policies --install --custom ./my-agent-policies.js
83
- ```
84
- </Step>
85
- </Steps>
86
-
87
- ---
88
-
89
- ## Blocca i comandi distruttivi
90
-
91
- La configurazione più comune - previeni agli agent di causare danni irreversibili.
92
-
93
- ```bash
94
- failproofai policies --install block-sudo block-rm-rf block-force-push block-curl-pipe-sh
95
- ```
96
-
97
- Cosa fa:
98
- - `block-sudo` - blocca tutti i comandi `sudo`
99
- - `block-rm-rf` - blocca l'eliminazione ricorsiva di file
100
- - `block-force-push` - blocca `git push --force`
101
- - `block-curl-pipe-sh` - blocca il piping di script remoti a shell
102
-
103
- ---
104
-
105
- ## Previeni la perdita di segreti
106
-
107
- Impedisci agli agent di visualizzare o perdere credenziali nell'output dello strumento.
108
-
109
- ```bash
110
- failproofai policies --install sanitize-api-keys sanitize-jwt sanitize-connection-strings sanitize-bearer-tokens
111
- ```
112
-
113
- Questi si attivano su `PostToolUse` - dopo che uno strumento è stato eseguito, ripuliscono l'output prima che l'agent lo veda.
114
-
115
- ---
116
-
117
- ## Ricevi avvisi Slack quando gli agent hanno bisogno di attenzione
118
-
119
- Usa l'hook di notifica per inoltrare gli avvisi di inattività a Slack.
120
-
121
- ```javascript
122
- import { customPolicies, allow, instruct } from "failproofai";
123
-
124
- customPolicies.add({
125
- name: "slack-on-idle",
126
- description: "Avvisa Slack quando l'agent è in attesa di 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 ?? "L'agent è in attesa");
133
- const project = ctx.session?.cwd ?? "sconosciuto";
134
-
135
- try {
136
- await fetch(webhookUrl, {
137
- method: "POST",
138
- headers: { "Content-Type": "application/json" },
139
- body: JSON.stringify({
140
- text: `*${message}*\nProgetto: \`${project}\``,
141
- }),
142
- signal: AbortSignal.timeout(5000),
143
- });
144
- } catch {
145
- // non bloccare mai l'agent se Slack non è raggiungibile
146
- }
147
-
148
- return allow();
149
- },
150
- });
151
- ```
152
-
153
- Installalo:
154
-
155
- ```bash
156
- SLACK_WEBHOOK_URL=https://hooks.slack.com/... failproofai policies --install --custom ./slack-alerts.js
157
- ```
158
-
159
- ---
160
-
161
- ## Mantieni gli agent su un branch
162
-
163
- Previeni agli agent di cambiare branch o fare push a quelli protetti.
164
-
165
- ```javascript
166
- import { customPolicies, allow, deny } from "failproofai";
167
-
168
- customPolicies.add({
169
- name: "stay-on-branch",
170
- description: "Impedisci all'agent di fare checkout di altri branch",
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("Rimani sul branch corrente. Crea un nuovo branch con -b se necessario.");
177
- }
178
- return allow();
179
- },
180
- });
181
- ```
182
-
183
- ---
184
-
185
- ## Richiedi i test prima dei commit
186
-
187
- Ricorda agli agent di eseguire i test prima di fare commit.
188
-
189
- ```javascript
190
- import { customPolicies, allow, instruct } from "failproofai";
191
-
192
- customPolicies.add({
193
- name: "test-before-commit",
194
- description: "Ricorda all'agent di eseguire i test prima di fare commit",
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("Esegui i test prima di fare commit. Usa prima `npm test` o `bun test`.");
201
- }
202
- return allow();
203
- },
204
- });
205
- ```
206
-
207
- ---
208
-
209
- ## Blocca un repository di produzione
210
-
211
- Commit una configurazione a livello di progetto in modo che ogni sviluppatore del tuo team ottenga le stesse politiche.
212
-
213
- Crea `.failproofai/policies-config.json` nel tuo repository:
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
- Poi fai il commit:
235
-
236
- ```bash
237
- git add .failproofai/policies-config.json
238
- git commit -m "Aggiungi politiche failproofai del team"
239
- ```
240
-
241
- Ogni membro del team che ha failproofai installato raccoglierà automaticamente queste regole.
242
-
243
- ---
244
-
245
- ## Costruisci uno standard di qualità a livello di organizzazione con politiche di convenzione
246
-
247
- La configurazione più impattante: commit `.failproofai/policies/` nel tuo repository con politiche personalizzate per il tuo progetto. Ogni membro del team le ottiene automaticamente — nessun comando di installazione, nessun cambiamento di configurazione.
248
-
249
- <Steps>
250
- <Step title="Crea la directory e aggiungi le politiche">
251
- ```bash
252
- mkdir -p .failproofai/policies
253
- ```
254
-
255
- ```js
256
- // .failproofai/policies/team-policies.mjs
257
- import { customPolicies, allow, deny, instruct } from "failproofai";
258
-
259
- // Applica il package manager preferito del tuo team
260
- // (o abilita invece la politica integrata prefer-package-manager)
261
- customPolicies.add({
262
- name: "enforce-bun",
263
- match: { events: ["PreToolUse"] },
264
- fn: async (ctx) => {
265
- if (ctx.toolName !== "Bash") return allow();
266
- const cmd = String(ctx.toolInput?.command ?? "");
267
- if (/\bnpm\b/.test(cmd)) return deny("Usa bun invece di npm.");
268
- return allow();
269
- },
270
- });
271
-
272
- // Ricorda all'agent di eseguire i test prima di fare commit
273
- customPolicies.add({
274
- name: "test-before-commit",
275
- match: { events: ["PreToolUse"] },
276
- fn: async (ctx) => {
277
- if (ctx.toolName !== "Bash") return allow();
278
- if (/git\s+commit/.test(ctx.toolInput?.command ?? "")) {
279
- return instruct("Esegui i test prima di fare commit.");
280
- }
281
- return allow();
282
- },
283
- });
284
- ```
285
- </Step>
286
- <Step title="Commit su git">
287
- ```bash
288
- git add .failproofai/policies/
289
- git commit -m "Aggiungi politiche di qualità del team"
290
- ```
291
- </Step>
292
- <Step title="Continua a migliorare">
293
- Mentre il tuo team incontra nuove modalità di fallimento, aggiungi politiche e fai push. Tutti ricevono l'aggiornamento al loro prossimo `git pull`. Queste politiche diventano uno standard di qualità vivo che cresce con il tuo team.
294
- </Step>
295
- </Steps>
296
-
297
- ---
298
-
299
- ## Altri esempi
300
-
301
- La directory [`examples/`](https://github.com/exospherehost/failproofai/tree/main/examples) nel repository contiene:
302
-
303
- | File | Cosa mostra |
304
- |------|---------------|
305
- | `policies-basic.js` | Politiche di avvio - blocca le scritture di produzione, force-push, script in pipe |
306
- | `policies-notification.js` | Avvisi Slack per notifiche di inattività e fine della sessione |
307
- | `policies-advanced/index.js` | Import transitivi, hook asincroni, scrubbing dell'output PostToolUse, gestione dell'evento Stop |
@@ -1,38 +0,0 @@
1
- ---
2
- title: "Per gli agenti"
3
- description: "Aggiungi la conoscenza di Failproof AI al tuo agente di codifica in un comando. Funziona con Claude Code, Cursor, Windsurf e altri."
4
- ---
5
-
6
- Aggiungi il riferimento completo di Failproof AI al tuo agente di codifica in un comando. Funziona con Claude Code, Cursor, Windsurf e qualsiasi altro agente che supporti le skill.
7
-
8
- ```bash
9
- npx skills add https://docs.befailproof.ai
10
- ```
11
-
12
- `npx skills` rileva quali agenti hai installato e aggiunge la skill nel formato corretto per ognuno automaticamente.
13
-
14
- ## Cosa copre la skill
15
-
16
- | Area | Cosa include |
17
- |------|---|
18
- | Policies | Nomi delle policy built-in, tipi di evento, parametri, abilita/disabilita |
19
- | Custom policies | `customPolicies.add()`, match filter, API `allow`/`deny`/`instruct` |
20
- | Context object | `ctx.eventType`, `ctx.toolName`, `ctx.toolInput`, `ctx.session` |
21
- | Configuration | Struttura di `policies-config.json`, scope merging, `policyParams` |
22
- | CLI | `failproofai policies --install`, `--uninstall`, `--custom`, scope |
23
- | Dashboard | Session viewer, policy activity, variabili di ambiente |
24
- | Architecture | Hook handler flow, exit code, contratto stdin/stdout |
25
-
26
- ## La skill è completa?
27
-
28
- Mintlify genera `llms.txt` da tutte le pagine nella navigazione. La documentazione di Failproof AI copre l'API completa - ogni policy, opzione ed esempio è incluso. Se trovi qualcosa di mancante, la fonte è disponibile a `https://docs.befailproof.ai/llms-full.txt`.
29
-
30
- Per un contesto più mirato, collega direttamente a una pagina specifica:
31
-
32
- ```bash
33
- # Solo l'API delle custom policies
34
- npx skills add https://docs.befailproof.ai/custom-policies
35
-
36
- # Solo le built-in policies
37
- npx skills add https://docs.befailproof.ai/built-in-policies
38
- ```
@@ -1,186 +0,0 @@
1
- ---
2
- title: Iniziare
3
- description: "Installa failproofai, abilita le policy e lascia che i tuoi agenti funzionino in modo affidabile"
4
- icon: rocket
5
- ---
6
-
7
- ## Requisiti
8
-
9
- - **Node.js** >= 20.9.0
10
- - **Bun** >= 1.3.0 (opzionale - necessario solo per compilare dal codice sorgente)
11
-
12
- ---
13
-
14
- ## Installazione
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
- ## Avvio rapido
31
-
32
- <Steps>
33
- <Step title="Abilita le policy">
34
- Le policy sono regole che vengono eseguite prima e dopo ogni chiamata a uno strumento dell'agente. Catturano i comandi distruttivi, le perdite di segreti e altre modalità di guasto prima che causino danni.
35
-
36
- ```bash
37
- failproofai policies --install
38
- ```
39
-
40
- Questo scrive le entry di hook nel file `settings.json` di Claude Code. Puoi anche installare per un singolo progetto o selezionare policy specifiche:
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="Verifica">
48
- ```bash
49
- failproofai policies
50
- ```
51
-
52
- Mostra ogni policy, se è abilitata e i parametri configurati.
53
- </Step>
54
- <Step title="Avvia la dashboard">
55
- ```bash
56
- failproofai
57
- ```
58
-
59
- Apre una dashboard locale su `http://localhost:8020` dove puoi sfogliare le sessioni, ispezionare le chiamate agli strumenti e gestire le policy.
60
- </Step>
61
- <Step title="Esegui il tuo agente">
62
- Avvia Claude Code come al solito. Se l'agente tenta qualcosa di rischioso, failproofai lo intercetta automaticamente. Lascialo in esecuzione senza supervisione e rivedi quello che è accaduto nella dashboard.
63
- </Step>
64
- </Steps>
65
-
66
- ---
67
-
68
- ## Come funzionano le policy
69
-
70
- Ogni volta che un agente esegue uno strumento, Claude Code chiama failproofai come sottoprocesso:
71
-
72
- ```text
73
- Claude Code → failproofai --hook PreToolUse → legge JSON da stdin
74
- valuta le policy
75
- scrive la decisione in stdout
76
- ```
77
-
78
- Ogni policy restituisce una di tre decisioni:
79
-
80
- - **allow** - l'agente procede normalmente
81
- - **deny** - l'azione è bloccata, all'agente viene spiegato il motivo
82
- - **instruct** - contesto aggiuntivo viene aggiunto al prompt dell'agente
83
-
84
- <Note>
85
- Le policy vengono eseguite nel tuo processo locale. Nulla viene inviato a un servizio remoto.
86
- </Note>
87
-
88
- ---
89
-
90
- ## Configura policy di team con policy basate su convenzione
91
-
92
- Il modo più veloce per stabilire standard di qualità in tutto il team è la convenzione `.failproofai/policies/`. Inserisci i file di policy in questa directory e vengono caricati automaticamente — nessun flag, nessuna modifica della configurazione, nessun comando di installazione.
93
-
94
- <Steps>
95
- <Step title="Crea la directory delle policy">
96
- ```bash
97
- mkdir -p .failproofai/policies
98
- ```
99
- </Step>
100
- <Step title="Aggiungi file di policy">
101
- Copia gli esempi iniziali o scrivi i tuoi:
102
-
103
- ```bash
104
- cp node_modules/failproofai/examples/convention-policies/*.mjs .failproofai/policies/
105
- ```
106
-
107
- Oppure creane uno nuovo:
108
-
109
- ```js
110
- // .failproofai/policies/team-policies.mjs
111
- import { customPolicies, allow, deny, instruct } from "failproofai";
112
-
113
- customPolicies.add({
114
- name: "test-before-commit",
115
- match: { events: ["PreToolUse"] },
116
- fn: async (ctx) => {
117
- if (ctx.toolName !== "Bash") return allow();
118
- if (/git\s+commit/.test(ctx.toolInput?.command ?? "")) {
119
- return instruct("Esegui i test prima di eseguire il commit.");
120
- }
121
- return allow();
122
- },
123
- });
124
- ```
125
- </Step>
126
- <Step title="Esegui il commit su git">
127
- ```bash
128
- git add .failproofai/policies/
129
- git commit -m "Add team quality policies"
130
- ```
131
-
132
- Ogni membro del team che ha failproofai installato raccoglie automaticamente queste policy. Non è necessaria alcuna configurazione per sviluppatore.
133
- </Step>
134
- </Steps>
135
-
136
- <Tip>
137
- Esegui il commit di `.failproofai/policies/` nel tuo repository in modo che l'intero team condivida gli stessi standard. Man mano che il tuo team scopre nuove modalità di guasto, aggiungi policy e esegui il push — tutti ricevono l'aggiornamento al prossimo `git pull`. Nel tempo queste policy diventano uno standard di qualità vivo che continua a migliorare.
138
- </Tip>
139
-
140
- ---
141
-
142
- ## Archiviazione dei dati
143
-
144
- Tutta la configurazione e i log rimangono sul tuo computer:
145
-
146
- | Percorso | Cosa conserva |
147
- |------|----------------|
148
- | `~/.failproofai/policies-config.json` | Configurazione globale delle policy |
149
- | `~/.failproofai/hook-activity.jsonl` | Cronologia dell'esecuzione dei hook |
150
- | `~/.failproofai/hook.log` | Log di debug per gli errori dei hook personalizzati |
151
- | `.failproofai/policies-config.json` | Configurazione per progetto (sottoposta a commit) |
152
- | `.failproofai/policies-config.local.json` | Override personali (gitignored) |
153
-
154
- ---
155
-
156
- ## Disinstallazione
157
-
158
- ```bash
159
- failproofai policies --uninstall
160
- ```
161
-
162
- Rimuove le entry di hook da `~/.claude/settings.json`. I file di configurazione in `~/.failproofai/` vengono mantenuti.
163
-
164
- ---
165
-
166
- ## Passaggi successivi
167
-
168
- <CardGroup cols={2}>
169
-
170
- <Card title="Configurazione" icon="gear" href="/it/configuration">
171
- Ambiti e formato del file di configurazione
172
- </Card>
173
-
174
- <Card title="Policy integrate" icon="shield" href="/it/built-in-policies">
175
- Tutte le 26 policy con parametri
176
- </Card>
177
-
178
- <Card title="Policy personalizzate" icon="code" href="/it/custom-policies">
179
- Scrivi le tue policy in JavaScript
180
- </Card>
181
-
182
- <Card title="Monitore agente" icon="chart-line" href="/it/dashboard">
183
- Monitora le sessioni e rivedi l'attività delle policy
184
- </Card>
185
-
186
- </CardGroup>
@@ -1,57 +0,0 @@
1
- ---
2
- title: Failproof AI
3
- description: "Gestisci hook e policy che mantengono i tuoi agenti AI affidabili e in esecuzione autonoma"
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
- Hook e policy che mantengono i tuoi agenti AI affidabili e in esecuzione autonoma - per **Claude Code** e **Agents SDK**.
9
-
10
- Gli agenti AI falliscono in modi prevedibili. Eseguono comandi distruttivi, perdono segreti, si allontanano dal compito assegnato, si bloccano in loop infiniti o spingono direttamente al ramo principale. Se lasciati incustoditi, i piccoli errori si moltiplicano a cascata.
11
-
12
- Failproof AI risolve questo problema con le **policy** - regole che si collegano ad ogni chiamata di strumento dell'agente e possono **rilevare i fallimenti**, **attenuarli** (bloccare, istruire, sanitizzare) e **avvisarti** quando qualcosa richiede attenzione. Una dashboard locale ti permette di controllare tutto in seguito.
13
-
14
- Tutto viene eseguito localmente. Nessun dato lascia la tua macchina.
15
-
16
- ## Inizia
17
-
18
- <CardGroup cols={2}>
19
-
20
- <Card title="26 policy predefinite" icon="shield" href="/it/built-in-policies">
21
- Blocca comandi distruttivi, previeni la perdita di segreti, mantieni gli agenti all'interno dei confini del progetto, e molto altro - pronto all'uso.
22
- </Card>
23
-
24
- <Card title="Policy personalizzate" icon="code" href="/it/custom-policies">
25
- Scrivi le tue regole in JavaScript con una semplice API allow / deny / instruct.
26
- </Card>
27
-
28
- <Card title="Monitor agente" icon="chart-line" href="/it/dashboard">
29
- Vedi cosa hanno fatto i tuoi agenti mentre eri via. Sfoglia le sessioni, ispeziona le chiamate ai tool, esamina dove le policy sono state applicate.
30
- </Card>
31
-
32
- <Card title="Configurazione semplice" icon="gear" href="/it/configuration">
33
- Regola qualsiasi policy senza scrivere codice. Imposta liste consentite, rami protetti o soglie per progetto o globalmente.
34
- </Card>
35
-
36
- </CardGroup>
37
-
38
- ## Avvio rapido
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 # abilita le policy
54
- failproofai # avvia la dashboard
55
- ```
56
-
57
- Consulta la guida [Inizia](/it/getting-started) per la procedura dettagliata completa.
@@ -1,82 +0,0 @@
1
- ---
2
- title: Alias dei Pacchetti
3
- description: "Alias registrati per la prevenzione del typosquatting e come funzionano"
4
- icon: copy
5
- ---
6
-
7
- ## Pacchetto ufficiale
8
-
9
- Il pacchetto npm canonico è **`failproofai`**:
10
-
11
- ```bash
12
- npm install -g failproofai
13
- # or
14
- bun add -g failproofai
15
- ```
16
-
17
- ---
18
-
19
- ## Perché possediamo i nomi degli alias
20
-
21
- Il typosquatting è un attacco comune alla supply chain in cui un malintenzionato registra un nome di pacchetto che è a una pressione di tasto di distanza da un pacchetto popolare. Gli utenti ignari che digitano male il comando di installazione finiscono per eseguire codice controllato dall'attaccante con accesso completo al sistema - esattamente il tipo di minaccia che Failproof AI è progettato per difendere.
22
-
23
- Per eliminare questa superficie di attacco, **possediamo preventivamente tutte le comuni varianti di ortografia e formattazione** di `failproofai` su npm. Nessuno di questi nomi può essere registrato da terzi. Ognuno di essi è un proxy sottile che installa e delega al vero pacchetto `failproofai`.
24
-
25
- ---
26
-
27
- ## Alias registrati
28
-
29
- **Varianti di formattazione** - diversi modi di scrivere "failproof ai":
30
-
31
- | Pacchetto | Stato |
32
- |---------|--------|
33
- | `failproof` | ✅ Pubblicato |
34
- | `failproof-ai` | ⏳ In attesa di supporto npm |
35
- | `fail-proof-ai` | ⏳ In attesa di supporto npm |
36
- | `failproof_ai` | ⏳ In attesa di supporto npm |
37
- | `fail_proof_ai` | ⏳ In attesa di supporto npm |
38
- | `fail-proofai` | ⏳ In attesa di supporto npm |
39
-
40
- **Errori di digitazione `failprof*`** - manca una `o` da "proof":
41
-
42
- | Pacchetto | Stato |
43
- |---------|--------|
44
- | `failprof` | ✅ Pubblicato |
45
- | `failprof-ai` | ✅ Pubblicato |
46
- | `failprofai` | ⏳ In attesa di supporto npm |
47
- | `fail-prof-ai` | ⏳ In attesa di supporto npm |
48
- | `failprof_ai` | ⏳ In attesa di supporto npm |
49
-
50
- **Errori di digitazione `faliproof*`** - `a` e `i` invertite:
51
-
52
- | Pacchetto | Stato |
53
- |---------|--------|
54
- | `faliproof` | ✅ Pubblicato |
55
- | `faliproof-ai` | ✅ Pubblicato |
56
- | `faliproofai` | ⏳ In attesa di supporto npm |
57
-
58
- > **Perché in sospeso?** La politica anti-spam di npm blocca i nomi che si normalizzano alla stessa stringa di un pacchetto esistente dopo aver rimosso la punteggiatura e eseguito controlli di somiglianza. Abbiamo contattato il supporto npm per riservare questi nomi a scopo di prevenzione del typosquatting. Saranno attivati una volta approvati.
59
-
60
- Puoi verificare che qualsiasi alias pubblicato sia di nostra proprietà:
61
-
62
- ```bash
63
- npm info failproof
64
- # Cercare: "ExosphereHost Inc." nel campo maintainers
65
- ```
66
-
67
- ---
68
-
69
- ## Come funzionano gli alias
70
-
71
- Ogni pacchetto alias:
72
-
73
- 1. Elenca `failproofai` come dipendenza - in modo che il vero pacchetto (inclusa la configurazione del suo hook `postinstall`) venga eseguito all'installazione
74
- 2. Espone un binario che corrisponde al suo nome (ad es. `failprof-ai`) che inoltra tutti gli argomenti al binario `failproofai`
75
-
76
- Il proxy è uno script Node a due righe; non c'è logica, nessuna chiamata di rete e nessuna raccolta dati oltre a quella che fa `failproofai` stesso.
77
-
78
- ---
79
-
80
- ## Se trovi un nome che ci è sfuggito
81
-
82
- Apri un issue su [exospherehost/failproofai](https://github.com/exospherehost/failproofai/issues) e lo registreremo.