failproofai 0.0.2-beta.7 → 0.0.2-beta.9

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 (390) 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 +3 -3
  6. package/.next/standalone/.next/prerender-manifest.json +3 -3
  7. package/.next/standalone/.next/required-server-files.json +1 -1
  8. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  9. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  13. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  14. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  15. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  16. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  17. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  19. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  22. package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
  23. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
  24. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  25. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  26. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  27. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  28. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  29. package/.next/standalone/.next/server/app/index.html +1 -1
  30. package/.next/standalone/.next/server/app/index.rsc +16 -16
  31. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  32. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
  33. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
  34. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
  35. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  36. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  37. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
  40. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  43. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  46. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  47. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  50. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +3 -0
  53. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kjo7d_._.js +1 -1
  54. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
  55. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  56. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  57. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  58. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  59. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  60. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__05zi2mt._.js → [root-of-the-server]__0vn1ciw._.js} +2 -2
  61. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +2 -1
  62. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0kkt_9z._.js → [root-of-the-server]__0z-n~~r._.js} +2 -2
  63. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  64. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
  65. package/.next/standalone/.next/server/chunks/ssr/_0x..fj-._.js +1 -1
  66. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
  67. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
  68. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
  69. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  70. package/.next/standalone/.next/server/pages/404.html +2 -2
  71. package/.next/standalone/.next/server/pages/500.html +1 -1
  72. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
  74. package/.next/standalone/.next/static/chunks/{0ltx5i0xv85_s.js → 04wavch6dsfes.js} +1 -1
  75. package/.next/standalone/.next/static/chunks/{13jdpvk~s2da8.js → 0drr--vxs_m-c.js} +1 -1
  76. package/.next/standalone/.next/static/chunks/{0jf9lx3rkmqx_.css → 0gu_a.a80ritd.css} +1 -1
  77. package/.next/standalone/.next/static/chunks/{0e76l4~hq_sei.js → 0i1ilz5554nv9.js} +1 -1
  78. package/.next/standalone/.next/static/chunks/{0suauczjqzn07.js → 0keqg6-cjs8aa.js} +1 -1
  79. package/.next/standalone/.next/static/chunks/{0w.rtg9.m8dk-.js → 0myzx7y.rqqi3.js} +2 -2
  80. package/.next/standalone/.next/static/chunks/{02u4v.k5amfah.js → 0zfrusm~j404v.js} +1 -1
  81. package/.next/standalone/.next/static/chunks/{0bkizbynk9via.js → 10xhknzfyigcu.js} +1 -1
  82. package/.next/standalone/.next/static/chunks/{0q7atesxo-36k.js → 16yg3xhkmdb9v.js} +1 -1
  83. package/.next/standalone/CHANGELOG.md +27 -0
  84. package/.next/standalone/CLAUDE.md +14 -0
  85. package/.next/standalone/README.md +16 -0
  86. package/.next/standalone/bun.lock +45 -0
  87. package/.next/standalone/dist/cli.mjs +44 -23
  88. package/.next/standalone/docs/ar/architecture.mdx +333 -0
  89. package/.next/standalone/docs/ar/built-in-policies.mdx +566 -0
  90. package/.next/standalone/docs/ar/cli/dashboard.mdx +28 -0
  91. package/.next/standalone/docs/ar/cli/environment-variables.mdx +34 -0
  92. package/.next/standalone/docs/ar/cli/hook.mdx +31 -0
  93. package/.next/standalone/docs/ar/cli/install-policies.mdx +49 -0
  94. package/.next/standalone/docs/ar/cli/list-policies.mdx +31 -0
  95. package/.next/standalone/docs/ar/cli/remove-policies.mdx +45 -0
  96. package/.next/standalone/docs/ar/cli/version.mdx +13 -0
  97. package/.next/standalone/docs/ar/configuration.mdx +223 -0
  98. package/.next/standalone/docs/ar/custom-policies.mdx +359 -0
  99. package/.next/standalone/docs/ar/dashboard.mdx +142 -0
  100. package/.next/standalone/docs/ar/examples.mdx +254 -0
  101. package/.next/standalone/docs/ar/for-agents.mdx +39 -0
  102. package/.next/standalone/docs/ar/getting-started.mdx +134 -0
  103. package/.next/standalone/docs/ar/introduction.mdx +58 -0
  104. package/.next/standalone/docs/ar/package-aliases.mdx +82 -0
  105. package/.next/standalone/docs/ar/testing.mdx +261 -0
  106. package/.next/standalone/docs/built-in-policies.mdx +17 -1
  107. package/.next/standalone/docs/configuration.mdx +1 -1
  108. package/.next/standalone/docs/custom-policies.mdx +3 -3
  109. package/.next/standalone/docs/de/architecture.mdx +332 -0
  110. package/.next/standalone/docs/de/built-in-policies.mdx +564 -0
  111. package/.next/standalone/docs/de/cli/dashboard.mdx +28 -0
  112. package/.next/standalone/docs/de/cli/environment-variables.mdx +34 -0
  113. package/.next/standalone/docs/de/cli/hook.mdx +30 -0
  114. package/.next/standalone/docs/de/cli/install-policies.mdx +48 -0
  115. package/.next/standalone/docs/de/cli/list-policies.mdx +31 -0
  116. package/.next/standalone/docs/de/cli/remove-policies.mdx +44 -0
  117. package/.next/standalone/docs/de/cli/version.mdx +12 -0
  118. package/.next/standalone/docs/de/configuration.mdx +222 -0
  119. package/.next/standalone/docs/de/custom-policies.mdx +357 -0
  120. package/.next/standalone/docs/de/dashboard.mdx +142 -0
  121. package/.next/standalone/docs/de/examples.mdx +253 -0
  122. package/.next/standalone/docs/de/for-agents.mdx +38 -0
  123. package/.next/standalone/docs/de/getting-started.mdx +134 -0
  124. package/.next/standalone/docs/de/introduction.mdx +57 -0
  125. package/.next/standalone/docs/de/package-aliases.mdx +82 -0
  126. package/.next/standalone/docs/de/testing.mdx +260 -0
  127. package/.next/standalone/docs/docs.json +922 -35
  128. package/.next/standalone/docs/es/architecture.mdx +332 -0
  129. package/.next/standalone/docs/es/built-in-policies.mdx +564 -0
  130. package/.next/standalone/docs/es/cli/dashboard.mdx +28 -0
  131. package/.next/standalone/docs/es/cli/environment-variables.mdx +34 -0
  132. package/.next/standalone/docs/es/cli/hook.mdx +30 -0
  133. package/.next/standalone/docs/es/cli/install-policies.mdx +48 -0
  134. package/.next/standalone/docs/es/cli/list-policies.mdx +31 -0
  135. package/.next/standalone/docs/es/cli/remove-policies.mdx +44 -0
  136. package/.next/standalone/docs/es/cli/version.mdx +12 -0
  137. package/.next/standalone/docs/es/configuration.mdx +222 -0
  138. package/.next/standalone/docs/es/custom-policies.mdx +357 -0
  139. package/.next/standalone/docs/es/dashboard.mdx +142 -0
  140. package/.next/standalone/docs/es/examples.mdx +253 -0
  141. package/.next/standalone/docs/es/for-agents.mdx +38 -0
  142. package/.next/standalone/docs/es/getting-started.mdx +134 -0
  143. package/.next/standalone/docs/es/introduction.mdx +57 -0
  144. package/.next/standalone/docs/es/package-aliases.mdx +82 -0
  145. package/.next/standalone/docs/es/testing.mdx +260 -0
  146. package/.next/standalone/docs/fr/architecture.mdx +332 -0
  147. package/.next/standalone/docs/fr/built-in-policies.mdx +564 -0
  148. package/.next/standalone/docs/fr/cli/dashboard.mdx +28 -0
  149. package/.next/standalone/docs/fr/cli/environment-variables.mdx +34 -0
  150. package/.next/standalone/docs/fr/cli/hook.mdx +30 -0
  151. package/.next/standalone/docs/fr/cli/install-policies.mdx +48 -0
  152. package/.next/standalone/docs/fr/cli/list-policies.mdx +31 -0
  153. package/.next/standalone/docs/fr/cli/remove-policies.mdx +44 -0
  154. package/.next/standalone/docs/fr/cli/version.mdx +12 -0
  155. package/.next/standalone/docs/fr/configuration.mdx +222 -0
  156. package/.next/standalone/docs/fr/custom-policies.mdx +357 -0
  157. package/.next/standalone/docs/fr/dashboard.mdx +142 -0
  158. package/.next/standalone/docs/fr/examples.mdx +253 -0
  159. package/.next/standalone/docs/fr/for-agents.mdx +38 -0
  160. package/.next/standalone/docs/fr/getting-started.mdx +134 -0
  161. package/.next/standalone/docs/fr/introduction.mdx +57 -0
  162. package/.next/standalone/docs/fr/package-aliases.mdx +82 -0
  163. package/.next/standalone/docs/fr/testing.mdx +260 -0
  164. package/.next/standalone/docs/he/architecture.mdx +333 -0
  165. package/.next/standalone/docs/he/built-in-policies.mdx +564 -0
  166. package/.next/standalone/docs/he/cli/dashboard.mdx +28 -0
  167. package/.next/standalone/docs/he/cli/environment-variables.mdx +34 -0
  168. package/.next/standalone/docs/he/cli/hook.mdx +30 -0
  169. package/.next/standalone/docs/he/cli/install-policies.mdx +48 -0
  170. package/.next/standalone/docs/he/cli/list-policies.mdx +32 -0
  171. package/.next/standalone/docs/he/cli/remove-policies.mdx +44 -0
  172. package/.next/standalone/docs/he/cli/version.mdx +12 -0
  173. package/.next/standalone/docs/he/configuration.mdx +222 -0
  174. package/.next/standalone/docs/he/custom-policies.mdx +357 -0
  175. package/.next/standalone/docs/he/dashboard.mdx +142 -0
  176. package/.next/standalone/docs/he/examples.mdx +253 -0
  177. package/.next/standalone/docs/he/for-agents.mdx +38 -0
  178. package/.next/standalone/docs/he/getting-started.mdx +135 -0
  179. package/.next/standalone/docs/he/introduction.mdx +57 -0
  180. package/.next/standalone/docs/he/package-aliases.mdx +82 -0
  181. package/.next/standalone/docs/he/testing.mdx +260 -0
  182. package/.next/standalone/docs/hi/architecture.mdx +334 -0
  183. package/.next/standalone/docs/hi/built-in-policies.mdx +564 -0
  184. package/.next/standalone/docs/hi/cli/dashboard.mdx +28 -0
  185. package/.next/standalone/docs/hi/cli/environment-variables.mdx +34 -0
  186. package/.next/standalone/docs/hi/cli/hook.mdx +30 -0
  187. package/.next/standalone/docs/hi/cli/install-policies.mdx +48 -0
  188. package/.next/standalone/docs/hi/cli/list-policies.mdx +31 -0
  189. package/.next/standalone/docs/hi/cli/remove-policies.mdx +44 -0
  190. package/.next/standalone/docs/hi/cli/version.mdx +12 -0
  191. package/.next/standalone/docs/hi/configuration.mdx +222 -0
  192. package/.next/standalone/docs/hi/custom-policies.mdx +357 -0
  193. package/.next/standalone/docs/hi/dashboard.mdx +142 -0
  194. package/.next/standalone/docs/hi/examples.mdx +255 -0
  195. package/.next/standalone/docs/hi/for-agents.mdx +38 -0
  196. package/.next/standalone/docs/hi/getting-started.mdx +134 -0
  197. package/.next/standalone/docs/hi/introduction.mdx +57 -0
  198. package/.next/standalone/docs/hi/package-aliases.mdx +82 -0
  199. package/.next/standalone/docs/hi/testing.mdx +260 -0
  200. package/.next/standalone/docs/i18n/README.ar.md +312 -0
  201. package/.next/standalone/docs/i18n/README.de.md +307 -0
  202. package/.next/standalone/docs/i18n/README.es.md +307 -0
  203. package/.next/standalone/docs/i18n/README.fr.md +307 -0
  204. package/.next/standalone/docs/i18n/README.he.md +312 -0
  205. package/.next/standalone/docs/i18n/README.hi.md +307 -0
  206. package/.next/standalone/docs/i18n/README.it.md +307 -0
  207. package/.next/standalone/docs/i18n/README.ja.md +307 -0
  208. package/.next/standalone/docs/i18n/README.ko.md +307 -0
  209. package/.next/standalone/docs/i18n/README.pt-br.md +307 -0
  210. package/.next/standalone/docs/i18n/README.ru.md +308 -0
  211. package/.next/standalone/docs/i18n/README.tr.md +308 -0
  212. package/.next/standalone/docs/i18n/README.vi.md +308 -0
  213. package/.next/standalone/docs/i18n/README.zh.md +307 -0
  214. package/.next/standalone/docs/it/architecture.mdx +333 -0
  215. package/.next/standalone/docs/it/built-in-policies.mdx +564 -0
  216. package/.next/standalone/docs/it/cli/dashboard.mdx +28 -0
  217. package/.next/standalone/docs/it/cli/environment-variables.mdx +34 -0
  218. package/.next/standalone/docs/it/cli/hook.mdx +30 -0
  219. package/.next/standalone/docs/it/cli/install-policies.mdx +48 -0
  220. package/.next/standalone/docs/it/cli/list-policies.mdx +31 -0
  221. package/.next/standalone/docs/it/cli/remove-policies.mdx +44 -0
  222. package/.next/standalone/docs/it/cli/version.mdx +12 -0
  223. package/.next/standalone/docs/it/configuration.mdx +223 -0
  224. package/.next/standalone/docs/it/custom-policies.mdx +358 -0
  225. package/.next/standalone/docs/it/dashboard.mdx +142 -0
  226. package/.next/standalone/docs/it/examples.mdx +253 -0
  227. package/.next/standalone/docs/it/for-agents.mdx +38 -0
  228. package/.next/standalone/docs/it/getting-started.mdx +134 -0
  229. package/.next/standalone/docs/it/introduction.mdx +57 -0
  230. package/.next/standalone/docs/it/package-aliases.mdx +82 -0
  231. package/.next/standalone/docs/it/testing.mdx +260 -0
  232. package/.next/standalone/docs/ja/architecture.mdx +332 -0
  233. package/.next/standalone/docs/ja/built-in-policies.mdx +562 -0
  234. package/.next/standalone/docs/ja/cli/dashboard.mdx +28 -0
  235. package/.next/standalone/docs/ja/cli/environment-variables.mdx +34 -0
  236. package/.next/standalone/docs/ja/cli/hook.mdx +30 -0
  237. package/.next/standalone/docs/ja/cli/install-policies.mdx +48 -0
  238. package/.next/standalone/docs/ja/cli/list-policies.mdx +31 -0
  239. package/.next/standalone/docs/ja/cli/remove-policies.mdx +44 -0
  240. package/.next/standalone/docs/ja/cli/version.mdx +12 -0
  241. package/.next/standalone/docs/ja/configuration.mdx +222 -0
  242. package/.next/standalone/docs/ja/custom-policies.mdx +357 -0
  243. package/.next/standalone/docs/ja/dashboard.mdx +142 -0
  244. package/.next/standalone/docs/ja/examples.mdx +253 -0
  245. package/.next/standalone/docs/ja/for-agents.mdx +38 -0
  246. package/.next/standalone/docs/ja/getting-started.mdx +134 -0
  247. package/.next/standalone/docs/ja/introduction.mdx +57 -0
  248. package/.next/standalone/docs/ja/package-aliases.mdx +82 -0
  249. package/.next/standalone/docs/ja/testing.mdx +260 -0
  250. package/.next/standalone/docs/ko/architecture.mdx +332 -0
  251. package/.next/standalone/docs/ko/built-in-policies.mdx +562 -0
  252. package/.next/standalone/docs/ko/cli/dashboard.mdx +28 -0
  253. package/.next/standalone/docs/ko/cli/environment-variables.mdx +34 -0
  254. package/.next/standalone/docs/ko/cli/hook.mdx +30 -0
  255. package/.next/standalone/docs/ko/cli/install-policies.mdx +48 -0
  256. package/.next/standalone/docs/ko/cli/list-policies.mdx +31 -0
  257. package/.next/standalone/docs/ko/cli/remove-policies.mdx +44 -0
  258. package/.next/standalone/docs/ko/cli/version.mdx +12 -0
  259. package/.next/standalone/docs/ko/configuration.mdx +222 -0
  260. package/.next/standalone/docs/ko/custom-policies.mdx +357 -0
  261. package/.next/standalone/docs/ko/dashboard.mdx +142 -0
  262. package/.next/standalone/docs/ko/examples.mdx +253 -0
  263. package/.next/standalone/docs/ko/for-agents.mdx +38 -0
  264. package/.next/standalone/docs/ko/getting-started.mdx +134 -0
  265. package/.next/standalone/docs/ko/introduction.mdx +57 -0
  266. package/.next/standalone/docs/ko/package-aliases.mdx +82 -0
  267. package/.next/standalone/docs/ko/testing.mdx +260 -0
  268. package/.next/standalone/docs/pt-br/architecture.mdx +332 -0
  269. package/.next/standalone/docs/pt-br/built-in-policies.mdx +564 -0
  270. package/.next/standalone/docs/pt-br/cli/dashboard.mdx +28 -0
  271. package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +34 -0
  272. package/.next/standalone/docs/pt-br/cli/hook.mdx +30 -0
  273. package/.next/standalone/docs/pt-br/cli/install-policies.mdx +48 -0
  274. package/.next/standalone/docs/pt-br/cli/list-policies.mdx +31 -0
  275. package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +44 -0
  276. package/.next/standalone/docs/pt-br/cli/version.mdx +12 -0
  277. package/.next/standalone/docs/pt-br/configuration.mdx +222 -0
  278. package/.next/standalone/docs/pt-br/custom-policies.mdx +357 -0
  279. package/.next/standalone/docs/pt-br/dashboard.mdx +142 -0
  280. package/.next/standalone/docs/pt-br/examples.mdx +253 -0
  281. package/.next/standalone/docs/pt-br/for-agents.mdx +38 -0
  282. package/.next/standalone/docs/pt-br/getting-started.mdx +134 -0
  283. package/.next/standalone/docs/pt-br/introduction.mdx +57 -0
  284. package/.next/standalone/docs/pt-br/package-aliases.mdx +82 -0
  285. package/.next/standalone/docs/pt-br/testing.mdx +260 -0
  286. package/.next/standalone/docs/ru/architecture.mdx +334 -0
  287. package/.next/standalone/docs/ru/built-in-policies.mdx +562 -0
  288. package/.next/standalone/docs/ru/cli/dashboard.mdx +28 -0
  289. package/.next/standalone/docs/ru/cli/environment-variables.mdx +34 -0
  290. package/.next/standalone/docs/ru/cli/hook.mdx +30 -0
  291. package/.next/standalone/docs/ru/cli/install-policies.mdx +48 -0
  292. package/.next/standalone/docs/ru/cli/list-policies.mdx +32 -0
  293. package/.next/standalone/docs/ru/cli/remove-policies.mdx +44 -0
  294. package/.next/standalone/docs/ru/cli/version.mdx +12 -0
  295. package/.next/standalone/docs/ru/configuration.mdx +223 -0
  296. package/.next/standalone/docs/ru/custom-policies.mdx +357 -0
  297. package/.next/standalone/docs/ru/dashboard.mdx +142 -0
  298. package/.next/standalone/docs/ru/examples.mdx +254 -0
  299. package/.next/standalone/docs/ru/for-agents.mdx +38 -0
  300. package/.next/standalone/docs/ru/getting-started.mdx +134 -0
  301. package/.next/standalone/docs/ru/introduction.mdx +57 -0
  302. package/.next/standalone/docs/ru/package-aliases.mdx +82 -0
  303. package/.next/standalone/docs/ru/testing.mdx +260 -0
  304. package/.next/standalone/docs/tr/architecture.mdx +333 -0
  305. package/.next/standalone/docs/tr/built-in-policies.mdx +562 -0
  306. package/.next/standalone/docs/tr/cli/dashboard.mdx +28 -0
  307. package/.next/standalone/docs/tr/cli/environment-variables.mdx +34 -0
  308. package/.next/standalone/docs/tr/cli/hook.mdx +30 -0
  309. package/.next/standalone/docs/tr/cli/install-policies.mdx +48 -0
  310. package/.next/standalone/docs/tr/cli/list-policies.mdx +31 -0
  311. package/.next/standalone/docs/tr/cli/remove-policies.mdx +45 -0
  312. package/.next/standalone/docs/tr/cli/version.mdx +12 -0
  313. package/.next/standalone/docs/tr/configuration.mdx +223 -0
  314. package/.next/standalone/docs/tr/custom-policies.mdx +357 -0
  315. package/.next/standalone/docs/tr/dashboard.mdx +142 -0
  316. package/.next/standalone/docs/tr/examples.mdx +253 -0
  317. package/.next/standalone/docs/tr/for-agents.mdx +38 -0
  318. package/.next/standalone/docs/tr/getting-started.mdx +134 -0
  319. package/.next/standalone/docs/tr/introduction.mdx +57 -0
  320. package/.next/standalone/docs/tr/package-aliases.mdx +82 -0
  321. package/.next/standalone/docs/tr/testing.mdx +260 -0
  322. package/.next/standalone/docs/vi/architecture.mdx +333 -0
  323. package/.next/standalone/docs/vi/built-in-policies.mdx +564 -0
  324. package/.next/standalone/docs/vi/cli/dashboard.mdx +28 -0
  325. package/.next/standalone/docs/vi/cli/environment-variables.mdx +34 -0
  326. package/.next/standalone/docs/vi/cli/hook.mdx +30 -0
  327. package/.next/standalone/docs/vi/cli/install-policies.mdx +48 -0
  328. package/.next/standalone/docs/vi/cli/list-policies.mdx +31 -0
  329. package/.next/standalone/docs/vi/cli/remove-policies.mdx +44 -0
  330. package/.next/standalone/docs/vi/cli/version.mdx +13 -0
  331. package/.next/standalone/docs/vi/configuration.mdx +222 -0
  332. package/.next/standalone/docs/vi/custom-policies.mdx +357 -0
  333. package/.next/standalone/docs/vi/dashboard.mdx +142 -0
  334. package/.next/standalone/docs/vi/examples.mdx +253 -0
  335. package/.next/standalone/docs/vi/for-agents.mdx +38 -0
  336. package/.next/standalone/docs/vi/getting-started.mdx +134 -0
  337. package/.next/standalone/docs/vi/introduction.mdx +57 -0
  338. package/.next/standalone/docs/vi/package-aliases.mdx +82 -0
  339. package/.next/standalone/docs/vi/testing.mdx +260 -0
  340. package/.next/standalone/docs/zh/architecture.mdx +332 -0
  341. package/.next/standalone/docs/zh/built-in-policies.mdx +562 -0
  342. package/.next/standalone/docs/zh/cli/dashboard.mdx +28 -0
  343. package/.next/standalone/docs/zh/cli/environment-variables.mdx +34 -0
  344. package/.next/standalone/docs/zh/cli/hook.mdx +30 -0
  345. package/.next/standalone/docs/zh/cli/install-policies.mdx +48 -0
  346. package/.next/standalone/docs/zh/cli/list-policies.mdx +31 -0
  347. package/.next/standalone/docs/zh/cli/remove-policies.mdx +44 -0
  348. package/.next/standalone/docs/zh/cli/version.mdx +12 -0
  349. package/.next/standalone/docs/zh/configuration.mdx +222 -0
  350. package/.next/standalone/docs/zh/custom-policies.mdx +357 -0
  351. package/.next/standalone/docs/zh/dashboard.mdx +142 -0
  352. package/.next/standalone/docs/zh/examples.mdx +253 -0
  353. package/.next/standalone/docs/zh/for-agents.mdx +38 -0
  354. package/.next/standalone/docs/zh/getting-started.mdx +134 -0
  355. package/.next/standalone/docs/zh/introduction.mdx +57 -0
  356. package/.next/standalone/docs/zh/package-aliases.mdx +82 -0
  357. package/.next/standalone/docs/zh/testing.mdx +260 -0
  358. package/.next/standalone/package.json +8 -2
  359. package/.next/standalone/scripts/translate-docs/cache.ts +62 -0
  360. package/.next/standalone/scripts/translate-docs/cli.ts +357 -0
  361. package/.next/standalone/scripts/translate-docs/config.ts +248 -0
  362. package/.next/standalone/scripts/translate-docs/mdx-translator.ts +153 -0
  363. package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +107 -0
  364. package/.next/standalone/scripts/translate-docs/readme-translator.ts +154 -0
  365. package/.next/standalone/scripts/translate-docs/translator.ts +68 -0
  366. package/.next/standalone/scripts/translate-docs/types.ts +43 -0
  367. package/.next/standalone/server.js +1 -1
  368. package/.next/standalone/src/hooks/custom-hooks-loader.ts +12 -5
  369. package/.next/standalone/src/hooks/handler.ts +9 -3
  370. package/.next/standalone/src/hooks/manager.ts +10 -2
  371. package/.next/standalone/src/hooks/policy-evaluator.ts +20 -16
  372. package/README.md +16 -0
  373. package/dist/cli.mjs +44 -23
  374. package/package.json +8 -2
  375. package/scripts/translate-docs/cache.ts +62 -0
  376. package/scripts/translate-docs/cli.ts +357 -0
  377. package/scripts/translate-docs/config.ts +248 -0
  378. package/scripts/translate-docs/mdx-translator.ts +153 -0
  379. package/scripts/translate-docs/mintlify-nav.ts +107 -0
  380. package/scripts/translate-docs/readme-translator.ts +154 -0
  381. package/scripts/translate-docs/translator.ts +68 -0
  382. package/scripts/translate-docs/types.ts +43 -0
  383. package/src/hooks/custom-hooks-loader.ts +12 -5
  384. package/src/hooks/handler.ts +9 -3
  385. package/src/hooks/manager.ts +10 -2
  386. package/src/hooks/policy-evaluator.ts +20 -16
  387. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02nt~6d._.js +0 -3
  388. /package/.next/standalone/.next/static/{Opbai6exOQP2W488FWmr6 → XqGmAwGDuJ6fEQgD-8y60}/_buildManifest.js +0 -0
  389. /package/.next/standalone/.next/static/{Opbai6exOQP2W488FWmr6 → XqGmAwGDuJ6fEQgD-8y60}/_clientMiddlewareManifest.js +0 -0
  390. /package/.next/standalone/.next/static/{Opbai6exOQP2W488FWmr6 → XqGmAwGDuJ6fEQgD-8y60}/_ssgManifest.js +0 -0
@@ -0,0 +1,253 @@
1
+ ---
2
+ title: Ví dụ
3
+ description: "Cách thiết lập hooks cho Claude Code và Agents SDK"
4
+ icon: book-open
5
+ ---
6
+
7
+ Các ví dụ sẵn sàng sử dụng cho các tình huống phổ biến. Mỗi ví dụ cho thấy cách cài đặt và những gì bạn có thể mong đợi.
8
+
9
+ ---
10
+
11
+ ## Thiết lập hooks cho Claude Code
12
+
13
+ Failproof AI tích hợp với Claude Code thông qua [hệ thống hooks](https://docs.anthropic.com/en/docs/claude-code/hooks) của nó. Khi bạn chạy `failproofai policies --install`, nó sẽ đăng ký các lệnh hook trong `settings.json` của Claude Code để kích hoạt trên mỗi lệnh gọi công cụ.
14
+
15
+ <Steps>
16
+ <Step title="Cài đặt failproofai">
17
+ ```bash
18
+ npm install -g failproofai
19
+ ```
20
+ </Step>
21
+ <Step title="Bật tất cả các chính sách tích hợp">
22
+ ```bash
23
+ failproofai policies --install
24
+ ```
25
+ </Step>
26
+ <Step title="Xác minh rằng hooks đã được đăng ký">
27
+ ```bash
28
+ cat ~/.claude/settings.json | grep failproofai
29
+ ```
30
+
31
+ Bạn sẽ thấy các mục hook cho các sự kiện `PreToolUse`, `PostToolUse`, `Notification` và `Stop`.
32
+ </Step>
33
+ <Step title="Chạy Claude Code">
34
+ ```bash
35
+ claude
36
+ ```
37
+
38
+ Các chính sách giờ đây chạy tự động trên mỗi lệnh gọi công cụ. Hãy thử yêu cầu Claude chạy `sudo rm -rf /` - nó sẽ bị chặn.
39
+ </Step>
40
+ </Steps>
41
+
42
+ ---
43
+
44
+ ## Thiết lập hooks cho Agents SDK
45
+
46
+ Nếu bạn đang xây dựng bằng [Agents SDK](https://docs.anthropic.com/en/docs/agents-sdk), bạn có thể sử dụng hệ thống hook tương tự theo cách lập trình.
47
+
48
+ <Steps>
49
+ <Step title="Cài đặt failproofai trong dự án của bạn">
50
+ ```bash
51
+ npm install failproofai
52
+ ```
53
+ </Step>
54
+ <Step title="Cấu hình hooks trong agent của bạn">
55
+ Truyền các lệnh hook khi tạo quy trình agent của bạn. Các hooks kích hoạt giống như trong Claude Code - thông qua JSON stdin/stdout:
56
+
57
+ ```bash
58
+ failproofai --hook PreToolUse # được gọi trước mỗi công cụ
59
+ failproofai --hook PostToolUse # được gọi sau mỗi công cụ
60
+ ```
61
+ </Step>
62
+ <Step title="Viết một chính sách tùy chỉnh cho agent của bạn">
63
+ ```javascript
64
+ import { customPolicies, allow, deny } from "failproofai";
65
+
66
+ customPolicies.add({
67
+ name: "limit-to-project-dir",
68
+ description: "Giữ agent trong thư mục dự án",
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 bị hạn chế trong thư mục dự án");
74
+ }
75
+ return allow();
76
+ },
77
+ });
78
+ ```
79
+ </Step>
80
+ <Step title="Cài đặt chính sách tùy chỉnh">
81
+ ```bash
82
+ failproofai policies --install --custom ./my-agent-policies.js
83
+ ```
84
+ </Step>
85
+ </Steps>
86
+
87
+ ---
88
+
89
+ ## Chặn các lệnh có tính chất phá hủy
90
+
91
+ Cấu hình phổ biến nhất - ngăn chặn agents thực hiện các thiệt hại không thể đảo ngược.
92
+
93
+ ```bash
94
+ failproofai policies --install block-sudo block-rm-rf block-force-push block-curl-pipe-sh
95
+ ```
96
+
97
+ Điều này làm gì:
98
+ - `block-sudo` - chặn tất cả các lệnh `sudo`
99
+ - `block-rm-rf` - chặn xóa tệp đệ quy
100
+ - `block-force-push` - chặn `git push --force`
101
+ - `block-curl-pipe-sh` - chặn ống dẫn các tập lệnh từ xa đến shell
102
+
103
+ ---
104
+
105
+ ## Ngăn chặn rò rỉ bí mật
106
+
107
+ Dừng agents nhìn thấy hoặc rò rỉ thông tin xác thực trong kết quả đầu ra công cụ.
108
+
109
+ ```bash
110
+ failproofai policies --install sanitize-api-keys sanitize-jwt sanitize-connection-strings sanitize-bearer-tokens
111
+ ```
112
+
113
+ Những cái này kích hoạt trên `PostToolUse` - sau khi một công cụ chạy, chúng sẽ làm sạch kết quả đầu ra trước khi agent nhìn thấy.
114
+
115
+ ---
116
+
117
+ ## Nhận cảnh báo Slack khi agents cần chú ý
118
+
119
+ Sử dụng hook thông báo để chuyển tiếp cảnh báo nhàn rỗi đến Slack.
120
+
121
+ ```javascript
122
+ import { customPolicies, allow, instruct } from "failproofai";
123
+
124
+ customPolicies.add({
125
+ name: "slack-on-idle",
126
+ description: "Cảnh báo Slack khi agent đang chờ đầu vào",
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 đang chờ");
133
+ const project = ctx.session?.cwd ?? "không xác định";
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
+ // không bao giờ chặn agent nếu Slack không thể truy cập
146
+ }
147
+
148
+ return allow();
149
+ },
150
+ });
151
+ ```
152
+
153
+ Cài đặt nó:
154
+
155
+ ```bash
156
+ SLACK_WEBHOOK_URL=https://hooks.slack.com/... failproofai policies --install --custom ./slack-alerts.js
157
+ ```
158
+
159
+ ---
160
+
161
+ ## Giữ agents trên một nhánh
162
+
163
+ Ngăn chặn agents từ việc chuyển đổi nhánh hoặc đẩy đến các nhánh được bảo vệ.
164
+
165
+ ```javascript
166
+ import { customPolicies, allow, deny } from "failproofai";
167
+
168
+ customPolicies.add({
169
+ name: "stay-on-branch",
170
+ description: "Ngăn chặn agent kiểm tra các nhánh khác",
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("Giữ trên nhánh hiện tại. Tạo một nhánh mới bằng -b nếu cần.");
177
+ }
178
+ return allow();
179
+ },
180
+ });
181
+ ```
182
+
183
+ ---
184
+
185
+ ## Yêu cầu kiểm tra trước khi commit
186
+
187
+ Nhắc nhở agents chạy các kiểm tra trước khi commit.
188
+
189
+ ```javascript
190
+ import { customPolicies, allow, instruct } from "failproofai";
191
+
192
+ customPolicies.add({
193
+ name: "test-before-commit",
194
+ description: "Nhắc nhở agent chạy các kiểm tra trước khi 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("Chạy các kiểm tra trước khi commit. Sử dụng `npm test` hoặc `bun test` trước tiên.");
201
+ }
202
+ return allow();
203
+ },
204
+ });
205
+ ```
206
+
207
+ ---
208
+
209
+ ## Khóa kho lưu trữ sản xuất
210
+
211
+ Commit một cấu hình ở cấp độ dự án để mỗi nhà phát triển trong đội của bạn nhận được các chính sách tương tự.
212
+
213
+ Tạo `.failproofai/policies-config.json` trong kho lưu trữ của bạn:
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
+ Sau đó commit nó:
235
+
236
+ ```bash
237
+ git add .failproofai/policies-config.json
238
+ git commit -m "Add failproofai team policies"
239
+ ```
240
+
241
+ Mỗi thành viên trong đội có failproofai được cài đặt sẽ tự động áp dụng các quy tắc này.
242
+
243
+ ---
244
+
245
+ ## Thêm ví dụ
246
+
247
+ Thư mục [`examples/`](https://github.com/exospherehost/failproofai/tree/main/examples) trong kho lưu trữ chứa:
248
+
249
+ | Tệp | Những gì nó cho thấy |
250
+ |------|---------------|
251
+ | `policies-basic.js` | Các chính sách khởi động - chặn ghi sản xuất, force-push, tập lệnh ống dẫn |
252
+ | `policies-notification.js` | Cảnh báo Slack cho thông báo nhàn rỗi và kết thúc phiên |
253
+ | `policies-advanced/index.js` | Nhập cũng từ các tệp khác, hooks không đồng bộ, làm sạch kết quả đầu ra PostToolUse, xử lý sự kiện Stop |
@@ -0,0 +1,38 @@
1
+ ---
2
+ title: "Cho các agent"
3
+ description: "Thêm kiến thức Failproof AI vào coding agent của bạn chỉ trong một lệnh. Hoạt động với Claude Code, Cursor, Windsurf và nhiều hơn nữa."
4
+ ---
5
+
6
+ Thêm tham chiếu đầy đủ Failproof AI vào coding agent của bạn chỉ trong một lệnh. Hoạt động với Claude Code, Cursor, Windsurf và bất kỳ agent nào khác hỗ trợ skills.
7
+
8
+ ```bash
9
+ npx skills add https://docs.befailproof.ai
10
+ ```
11
+
12
+ `npx skills` phát hiện các agent bạn đã cài đặt và tự động thêm skill ở định dạng phù hợp cho từng agent.
13
+
14
+ ## Skill bao gồm những gì
15
+
16
+ | Lĩnh vực | Nội dung bao gồm |
17
+ |------|----------------|
18
+ | Policies | Tên policy có sẵn, các loại sự kiện, tham số, bật/tắt |
19
+ | Custom policies | `customPolicies.add()`, match filters, API `allow`/`deny`/`instruct` |
20
+ | Context object | `ctx.eventType`, `ctx.toolName`, `ctx.toolInput`, `ctx.session` |
21
+ | Configuration | Cấu trúc `policies-config.json`, scope merging, `policyParams` |
22
+ | CLI | `failproofai policies --install`, `--uninstall`, `--custom`, scopes |
23
+ | Dashboard | Session viewer, policy activity, environment variables |
24
+ | Architecture | Hook handler flow, exit codes, stdin/stdout contract |
25
+
26
+ ## Skill có đầy đủ không?
27
+
28
+ Mintlify tạo `llms.txt` từ tất cả các trang trong navigation. Tài liệu Failproof AI bao gồm toàn bộ API - mọi policy, option và ví dụ đều có. Nếu bạn phát hiện điều gì bị thiếu, nguồn gốc nằm ở `https://docs.befailproof.ai/llms-full.txt`.
29
+
30
+ Để có ngữ cảnh cụ thể, liên kết trực tiếp đến một trang cụ thể:
31
+
32
+ ```bash
33
+ # Chỉ custom policies API
34
+ npx skills add https://docs.befailproof.ai/custom-policies
35
+
36
+ # Chỉ built-in policies
37
+ npx skills add https://docs.befailproof.ai/built-in-policies
38
+ ```
@@ -0,0 +1,134 @@
1
+ ---
2
+ title: Bắt đầu
3
+ description: "Cài đặt failproofai, bật các chính sách và cho phép các agent của bạn chạy một cách đáng tin cậy"
4
+ icon: rocket
5
+ ---
6
+
7
+ ## Yêu cầu
8
+
9
+ - **Node.js** >= 20.9.0
10
+ - **Bun** >= 1.3.0 (tùy chọn - chỉ cần thiết khi xây dựng từ nguồn)
11
+
12
+ ---
13
+
14
+ ## Cài đặt
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
+ ## Bắt đầu nhanh
31
+
32
+ <Steps>
33
+ <Step title="Bật các chính sách">
34
+ Các chính sách là những quy tắc chạy trước và sau mỗi lời gọi công cụ của agent. Chúng bắt các lệnh có tính phá hủy, rò rỉ thông tin bí mật và các kiểu lỗi khác trước khi gây hại.
35
+
36
+ ```bash
37
+ failproofai policies --install
38
+ ```
39
+
40
+ Điều này ghi các mục hook vào `settings.json` của Claude Code. Bạn cũng có thể cài đặt cho một dự án duy nhất hoặc chọn các chính sách cụ thể:
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="Xác minh">
48
+ ```bash
49
+ failproofai policies
50
+ ```
51
+
52
+ Hiển thị mọi chính sách, liệu nó có được bật hay không và bất kỳ tham số nào được cấu hình.
53
+ </Step>
54
+ <Step title="Khởi chạy bảng điều khiển">
55
+ ```bash
56
+ failproofai
57
+ ```
58
+
59
+ Mở bảng điều khiển cục bộ tại `http://localhost:8020` nơi bạn có thể duyệt phiên, kiểm tra các lời gọi công cụ và quản lý các chính sách.
60
+ </Step>
61
+ <Step title="Chạy agent của bạn">
62
+ Khởi động Claude Code như bình thường. Nếu agent cố gắng làm điều gì đó rủi ro, failproofai sẽ chặn nó tự động. Hãy để nó chạy không giám sát và xem xét những gì đã xảy ra trong bảng điều khiển.
63
+ </Step>
64
+ </Steps>
65
+
66
+ ---
67
+
68
+ ## Cách các chính sách hoạt động
69
+
70
+ Mỗi khi một agent chạy một công cụ, Claude Code gọi failproofai như một tiến trình con:
71
+
72
+ ```text
73
+ Claude Code → failproofai --hook PreToolUse → đọc JSON từ stdin
74
+ đánh giá các chính sách
75
+ ghi quyết định vào stdout
76
+ ```
77
+
78
+ Mỗi chính sách trả về một trong ba quyết định:
79
+
80
+ - **allow** - agent tiếp tục bình thường
81
+ - **deny** - hành động bị chặn, agent được thông báo lý do
82
+ - **instruct** - bối cảnh bổ sung được thêm vào lời nhắc của agent
83
+
84
+ <Note>
85
+ Các chính sách chạy trong quy trình cục bộ của bạn. Không có gì được gửi đến một dịch vụ từ xa.
86
+ </Note>
87
+
88
+ ---
89
+
90
+ ## Lưu trữ dữ liệu
91
+
92
+ Tất cả cấu hình và nhật ký nằm trên máy của bạn:
93
+
94
+ | Đường dẫn | Những gì nó lưu trữ |
95
+ |------|----------------|
96
+ | `~/.failproofai/policies-config.json` | Cấu hình chính sách toàn cục |
97
+ | `~/.failproofai/hook-activity.jsonl` | Lịch sử thực thi hook |
98
+ | `~/.failproofai/hook.log` | Nhật ký gỡ lỗi cho các lỗi hook tùy chỉnh |
99
+ | `.failproofai/policies-config.json` | Cấu hình cho từng dự án (được cam kết) |
100
+ | `.failproofai/policies-config.local.json` | Ghi đè cá nhân (gitignored) |
101
+
102
+ ---
103
+
104
+ ## Gỡ cài đặt
105
+
106
+ ```bash
107
+ failproofai policies --uninstall
108
+ ```
109
+
110
+ Xóa các mục hook khỏi `~/.claude/settings.json`. Các tệp cấu hình trong `~/.failproofai/` được giữ lại.
111
+
112
+ ---
113
+
114
+ ## Các bước tiếp theo
115
+
116
+ <CardGroup cols={2}>
117
+
118
+ <Card title="Cấu hình" icon="gear" href="/vi/configuration">
119
+ Phạm vi và định dạng tệp cấu hình
120
+ </Card>
121
+
122
+ <Card title="Chính sách tích hợp" icon="shield" href="/vi/built-in-policies">
123
+ Tất cả 26 chính sách với tham số
124
+ </Card>
125
+
126
+ <Card title="Chính sách tùy chỉnh" icon="code" href="/vi/custom-policies">
127
+ Viết các chính sách của riêng bạn bằng JavaScript
128
+ </Card>
129
+
130
+ <Card title="Trình giám sát agent" icon="chart-line" href="/vi/dashboard">
131
+ Giám sát phiên và xem xét hoạt động của chính sách
132
+ </Card>
133
+
134
+ </CardGroup>
@@ -0,0 +1,57 @@
1
+ ---
2
+ title: Failproof AI
3
+ description: "Quản lý hooks và policies giúp các AI agents của bạn hoạt động tin cậy và tự động"
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
+ Hooks và policies giúp các AI agents của bạn hoạt động tin cậy và tự động - cho **Claude Code** và **Agents SDK**.
9
+
10
+ AI agents thất bại theo những cách có thể dự đoán được. Chúng chạy các lệnh phá hủy, rò rỉ bí mật, lệch khỏi nhiệm vụ, bị mắc kẹt trong vòng lặp, hoặc đẩy trực tiếp sang nhánh main. Nếu không được giám sát, những lỗi nhỏ sẽ phát triển thành vấn đề lớn.
11
+
12
+ Failproof AI giải quyết vấn đề này bằng **policies** - các quy tắc được kích hoạt ở mỗi lệnh gọi công cụ của agent và có thể **phát hiện lỗi**, **giảm nhẹ chúng** (chặn, hướng dẫn, làm sạch), và **cảnh báo bạn** khi có vấn đề cần được chú ý. Bảng điều khiển cục bộ cho phép bạn xem xét mọi thứ sau đó.
13
+
14
+ Mọi thứ chạy cục bộ. Không có dữ liệu nào rời khỏi máy của bạn.
15
+
16
+ ## Bắt đầu
17
+
18
+ <CardGroup cols={2}>
19
+
20
+ <Card title="26 policies tích hợp sẵn" icon="shield" href="/vi/built-in-policies">
21
+ Chặn các lệnh phá hủy, ngăn chặn rò rỉ bí mật, giữ agents trong phạm vi dự án, và nhiều hơn nữa - sẵn sàng sử dụng.
22
+ </Card>
23
+
24
+ <Card title="Custom policies" icon="code" href="/vi/custom-policies">
25
+ Viết các quy tắc của riêng bạn bằng JavaScript với API allow / deny / instruct đơn giản.
26
+ </Card>
27
+
28
+ <Card title="Agent monitor" icon="chart-line" href="/vi/dashboard">
29
+ Xem những gì các agents của bạn đã làm khi bạn vắng mặt. Duyệt các phiên, kiểm tra các lệnh gọi công cụ, xem xét nơi policies được kích hoạt.
30
+ </Card>
31
+
32
+ <Card title="Cấu hình dễ dàng" icon="gear" href="/vi/configuration">
33
+ Điều chỉnh bất kỳ policy nào mà không cần mã. Đặt danh sách cho phép, nhánh được bảo vệ, hoặc ngưỡng cho từng dự án hoặc toàn cục.
34
+ </Card>
35
+
36
+ </CardGroup>
37
+
38
+ ## Khởi động nhanh
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 # enable policies
54
+ failproofai # launch the dashboard
55
+ ```
56
+
57
+ Xem hướng dẫn [Getting started](/vi/getting-started) để có hướng dẫn chi tiết đầy đủ.
@@ -0,0 +1,82 @@
1
+ ---
2
+ title: Bí Danh Gói
3
+ description: "Các bí danh phòng chống typosquat đã đăng ký và cách chúng hoạt động"
4
+ icon: copy
5
+ ---
6
+
7
+ ## Gói chính thức
8
+
9
+ Gói npm canonical là **`failproofai`**:
10
+
11
+ ```bash
12
+ npm install -g failproofai
13
+ # hoặc
14
+ bun add -g failproofai
15
+ ```
16
+
17
+ ---
18
+
19
+ ## Tại sao chúng tôi sở hữu các tên bí danh
20
+
21
+ Typosquatting là một cuộc tấn công chuỗi cung ứng phổ biến trong đó kẻ tấn công đăng ký một tên gói cách một phím bàn phím so với gói phổ biến. Những người dùng vô tình gõ sai lệnh cài đặt sẽ chạy mã do kẻ tấn công kiểm soát với toàn quyền truy cập hệ thống - chính xác là loại mối đe dọa mà Failproof AI được thiết kế để bảo vệ.
22
+
23
+ Để loại bỏ bề mặt tấn công này, **chúng tôi chủ động sở hữu tất cả các lỗi chính tả và biến thể định dạng phổ biến** của `failproofai` trên npm. Không có tên nào trong số này có thể được đăng ký bởi bên thứ ba. Mỗi tên là một proxy mỏng cài đặt và ủy quyền cho gói `failproofai` thực tế.
24
+
25
+ ---
26
+
27
+ ## Các bí danh đã đăng ký
28
+
29
+ **Biến thể định dạng** - những cách khác nhau để viết "failproof ai":
30
+
31
+ | Gói | Trạng thái |
32
+ |---------|--------|
33
+ | `failproof` | ✅ Đã xuất bản |
34
+ | `failproof-ai` | ⏳ Chờ hỗ trợ npm |
35
+ | `fail-proof-ai` | ⏳ Chờ hỗ trợ npm |
36
+ | `failproof_ai` | ⏳ Chờ hỗ trợ npm |
37
+ | `fail_proof_ai` | ⏳ Chờ hỗ trợ npm |
38
+ | `fail-proofai` | ⏳ Chờ hỗ trợ npm |
39
+
40
+ **Lỗi typo `failprof*`** - thiếu một `o` từ "proof":
41
+
42
+ | Gói | Trạng thái |
43
+ |---------|--------|
44
+ | `failprof` | ✅ Đã xuất bản |
45
+ | `failprof-ai` | ✅ Đã xuất bản |
46
+ | `failprofai` | ⏳ Chờ hỗ trợ npm |
47
+ | `fail-prof-ai` | ⏳ Chờ hỗ trợ npm |
48
+ | `failprof_ai` | ⏳ Chờ hỗ trợ npm |
49
+
50
+ **Lỗi typo `faliproof*`** - `a` và `i` bị hoán đổi:
51
+
52
+ | Gói | Trạng thái |
53
+ |---------|--------|
54
+ | `faliproof` | ✅ Đã xuất bản |
55
+ | `faliproof-ai` | ✅ Đã xuất bản |
56
+ | `faliproofai` | ⏳ Chờ hỗ trợ npm |
57
+
58
+ > **Tại sao chờ?** Chính sách phòng chống spam của npm chặn những tên normalize thành chuỗi giống như một gói hiện có sau khi loại bỏ dấu chấm câu và chạy kiểm tra tương tự. Chúng tôi đã liên hệ với hỗ trợ npm để bảo lưu những tên này nhằm mục đích chống typosquat. Chúng sẽ được kích hoạt sau khi được phê duyệt.
59
+
60
+ Bạn có thể xác minh bất kỳ bí danh nào được xuất bản được sở hữu bởi chúng tôi:
61
+
62
+ ```bash
63
+ npm info failproof
64
+ # Tìm: "ExosphereHost Inc." trong trường maintainers
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Cách các bí danh hoạt động
70
+
71
+ Mỗi gói bí danh:
72
+
73
+ 1. Liệt kê `failproofai` làm phụ thuộc - vì vậy gói thực tế (bao gồm cả thiết lập hook `postinstall`) chạy khi cài đặt
74
+ 2. Cung cấp một binary khớp với tên của nó (ví dụ: `failprof-ai`) mà ủy quyền tất cả các đối số cho binary `failproofai`
75
+
76
+ Proxy là một script Node hai dòng; không có logic, không có cuộc gọi mạng và không có thu thập dữ liệu ngoài những gì `failproofai` tự làm.
77
+
78
+ ---
79
+
80
+ ## Nếu bạn tìm thấy một tên chúng tôi bỏ lỡ
81
+
82
+ Mở một issue tại [exospherehost/failproofai](https://github.com/exospherehost/failproofai/issues) và chúng tôi sẽ đăng ký nó.