failproofai 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/.next/standalone/.claude/settings.json +316 -0
  2. package/.next/standalone/.failproofai/policies/workflow-policies.mjs +62 -0
  3. package/.next/standalone/.failproofai/policies-config.json +39 -0
  4. package/.next/standalone/.next/BUILD_ID +1 -1
  5. package/.next/standalone/.next/build-manifest.json +5 -5
  6. package/.next/standalone/.next/prerender-manifest.json +3 -3
  7. package/.next/standalone/.next/required-server-files.json +3 -1
  8. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  9. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  10. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  14. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  15. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  16. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  17. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  18. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  20. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  21. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  24. package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
  25. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
  26. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  27. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  28. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  29. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  30. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  31. package/.next/standalone/.next/server/app/index.html +1 -1
  32. package/.next/standalone/.next/server/app/index.rsc +16 -16
  33. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  34. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
  35. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
  36. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
  37. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  38. package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
  39. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  40. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
  43. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
  44. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
  47. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  48. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
  51. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  52. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  53. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
  56. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  57. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +3 -0
  60. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kjo7d_._.js +1 -1
  61. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_05pz9._._.js +1 -1
  62. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
  63. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__12kr5~_._.js → [root-of-the-server]__03kiqd5._.js} +2 -2
  64. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  65. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  66. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qo8503._.js → [root-of-the-server]__0bo8s~-._.js} +2 -2
  67. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  68. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  69. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  70. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +9 -9
  71. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  72. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
  73. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
  74. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
  75. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
  76. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0a_7sdg.js +2 -2
  77. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ef3uwk.js +2 -2
  78. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j79~gv.js +2 -2
  79. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pbja1x.js +2 -2
  80. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0r6o0i2.js +2 -2
  81. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11y81~_.js +2 -2
  82. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_12or2kf.js +2 -2
  83. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js +1 -1
  84. package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
  85. package/.next/standalone/.next/server/pages/404.html +2 -2
  86. package/.next/standalone/.next/server/pages/500.html +1 -1
  87. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
  89. package/.next/standalone/.next/static/chunks/{0x-625~1vx1lu.js → 02t9.s735hqyq.js} +1 -1
  90. package/.next/standalone/.next/static/chunks/{0ov60i6md~37t.js → 03oepxbqx6o8~.js} +2 -2
  91. package/.next/standalone/.next/static/chunks/{031pa5~qfzt~_.js → 09e7drilkf1sn.js} +1 -1
  92. package/.next/standalone/.next/static/chunks/{0y~0creqvl5wx.js → 0cwft44dh9bww.js} +1 -1
  93. package/.next/standalone/.next/static/chunks/{06og.7e9nkpjh.js → 0e2uz2g026ckb.js} +1 -1
  94. package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +1 -0
  95. package/.next/standalone/.next/static/chunks/{15wf7x-e.8ia3.js → 0h5kbvg~.xf.v.js} +1 -1
  96. package/.next/standalone/.next/static/chunks/{0_4y_t03jn2nq.js → 0od..umlku4bb.js} +1 -1
  97. package/.next/standalone/.next/static/chunks/{0cvffh-pbsv5u.js → 0xbwzy4dl87-0.js} +1 -1
  98. package/.next/standalone/.next/static/chunks/{0c_ljlxa._4lc.js → 18cl6wups7ouq.js} +2 -2
  99. package/.next/standalone/.next/static/chunks/{turbopack-0uc5y~g6h.n7-.js → turbopack-0r26pc8h0y_-e.js} +1 -1
  100. package/.next/standalone/CHANGELOG.md +103 -0
  101. package/.next/standalone/CLAUDE.md +28 -0
  102. package/.next/standalone/Dockerfile.docs +12 -0
  103. package/.next/standalone/README.md +95 -49
  104. package/.next/standalone/app/components/session-hooks-panel.tsx +14 -1
  105. package/.next/standalone/app/policies/hooks-client.tsx +14 -1
  106. package/.next/standalone/bin/failproofai.mjs +5 -0
  107. package/.next/standalone/bun.lock +76 -63
  108. package/.next/standalone/components/navbar.tsx +5 -0
  109. package/.next/standalone/dist/cli.mjs +539 -90
  110. package/.next/standalone/dist/index.js +2 -2
  111. package/.next/standalone/docs/ar/architecture.mdx +333 -0
  112. package/.next/standalone/docs/ar/built-in-policies.mdx +566 -0
  113. package/.next/standalone/docs/ar/cli/dashboard.mdx +28 -0
  114. package/.next/standalone/docs/ar/cli/environment-variables.mdx +34 -0
  115. package/.next/standalone/docs/ar/cli/hook.mdx +31 -0
  116. package/.next/standalone/docs/ar/cli/install-policies.mdx +49 -0
  117. package/.next/standalone/docs/ar/cli/list-policies.mdx +31 -0
  118. package/.next/standalone/docs/ar/cli/remove-policies.mdx +45 -0
  119. package/.next/standalone/docs/ar/cli/version.mdx +13 -0
  120. package/.next/standalone/docs/ar/configuration.mdx +223 -0
  121. package/.next/standalone/docs/ar/custom-policies.mdx +359 -0
  122. package/.next/standalone/docs/ar/dashboard.mdx +142 -0
  123. package/.next/standalone/docs/ar/examples.mdx +254 -0
  124. package/.next/standalone/docs/ar/for-agents.mdx +39 -0
  125. package/.next/standalone/docs/ar/getting-started.mdx +134 -0
  126. package/.next/standalone/docs/ar/introduction.mdx +58 -0
  127. package/.next/standalone/docs/ar/package-aliases.mdx +82 -0
  128. package/.next/standalone/docs/ar/testing.mdx +261 -0
  129. package/.next/standalone/docs/{architecture.md → architecture.mdx} +40 -23
  130. package/.next/standalone/docs/{built-in-policies.md → built-in-policies.mdx} +151 -13
  131. package/.next/standalone/docs/cli/dashboard.mdx +28 -0
  132. package/.next/standalone/docs/cli/environment-variables.mdx +34 -0
  133. package/.next/standalone/docs/cli/hook.mdx +30 -0
  134. package/.next/standalone/docs/cli/install-policies.mdx +48 -0
  135. package/.next/standalone/docs/cli/list-policies.mdx +31 -0
  136. package/.next/standalone/docs/cli/remove-policies.mdx +44 -0
  137. package/.next/standalone/docs/cli/version.mdx +12 -0
  138. package/.next/standalone/docs/{configuration.md → configuration.mdx} +62 -16
  139. package/.next/standalone/docs/custom-policies.mdx +357 -0
  140. package/.next/standalone/docs/{dashboard.md → dashboard.mdx} +26 -29
  141. package/.next/standalone/docs/de/architecture.mdx +332 -0
  142. package/.next/standalone/docs/de/built-in-policies.mdx +564 -0
  143. package/.next/standalone/docs/de/cli/dashboard.mdx +28 -0
  144. package/.next/standalone/docs/de/cli/environment-variables.mdx +34 -0
  145. package/.next/standalone/docs/de/cli/hook.mdx +30 -0
  146. package/.next/standalone/docs/de/cli/install-policies.mdx +48 -0
  147. package/.next/standalone/docs/de/cli/list-policies.mdx +31 -0
  148. package/.next/standalone/docs/de/cli/remove-policies.mdx +44 -0
  149. package/.next/standalone/docs/de/cli/version.mdx +12 -0
  150. package/.next/standalone/docs/de/configuration.mdx +222 -0
  151. package/.next/standalone/docs/de/custom-policies.mdx +357 -0
  152. package/.next/standalone/docs/de/dashboard.mdx +142 -0
  153. package/.next/standalone/docs/de/examples.mdx +253 -0
  154. package/.next/standalone/docs/de/for-agents.mdx +38 -0
  155. package/.next/standalone/docs/de/getting-started.mdx +134 -0
  156. package/.next/standalone/docs/de/introduction.mdx +57 -0
  157. package/.next/standalone/docs/de/package-aliases.mdx +82 -0
  158. package/.next/standalone/docs/de/testing.mdx +260 -0
  159. package/.next/standalone/docs/docs.json +938 -24
  160. package/.next/standalone/docs/es/architecture.mdx +332 -0
  161. package/.next/standalone/docs/es/built-in-policies.mdx +564 -0
  162. package/.next/standalone/docs/es/cli/dashboard.mdx +28 -0
  163. package/.next/standalone/docs/es/cli/environment-variables.mdx +34 -0
  164. package/.next/standalone/docs/es/cli/hook.mdx +30 -0
  165. package/.next/standalone/docs/es/cli/install-policies.mdx +48 -0
  166. package/.next/standalone/docs/es/cli/list-policies.mdx +31 -0
  167. package/.next/standalone/docs/es/cli/remove-policies.mdx +44 -0
  168. package/.next/standalone/docs/es/cli/version.mdx +12 -0
  169. package/.next/standalone/docs/es/configuration.mdx +222 -0
  170. package/.next/standalone/docs/es/custom-policies.mdx +357 -0
  171. package/.next/standalone/docs/es/dashboard.mdx +142 -0
  172. package/.next/standalone/docs/es/examples.mdx +253 -0
  173. package/.next/standalone/docs/es/for-agents.mdx +38 -0
  174. package/.next/standalone/docs/es/getting-started.mdx +134 -0
  175. package/.next/standalone/docs/es/introduction.mdx +57 -0
  176. package/.next/standalone/docs/es/package-aliases.mdx +82 -0
  177. package/.next/standalone/docs/es/testing.mdx +260 -0
  178. package/.next/standalone/docs/examples.mdx +253 -0
  179. package/.next/standalone/docs/for-agents.mdx +38 -0
  180. package/.next/standalone/docs/fr/architecture.mdx +332 -0
  181. package/.next/standalone/docs/fr/built-in-policies.mdx +564 -0
  182. package/.next/standalone/docs/fr/cli/dashboard.mdx +28 -0
  183. package/.next/standalone/docs/fr/cli/environment-variables.mdx +34 -0
  184. package/.next/standalone/docs/fr/cli/hook.mdx +30 -0
  185. package/.next/standalone/docs/fr/cli/install-policies.mdx +48 -0
  186. package/.next/standalone/docs/fr/cli/list-policies.mdx +31 -0
  187. package/.next/standalone/docs/fr/cli/remove-policies.mdx +44 -0
  188. package/.next/standalone/docs/fr/cli/version.mdx +12 -0
  189. package/.next/standalone/docs/fr/configuration.mdx +222 -0
  190. package/.next/standalone/docs/fr/custom-policies.mdx +357 -0
  191. package/.next/standalone/docs/fr/dashboard.mdx +142 -0
  192. package/.next/standalone/docs/fr/examples.mdx +253 -0
  193. package/.next/standalone/docs/fr/for-agents.mdx +38 -0
  194. package/.next/standalone/docs/fr/getting-started.mdx +134 -0
  195. package/.next/standalone/docs/fr/introduction.mdx +57 -0
  196. package/.next/standalone/docs/fr/package-aliases.mdx +82 -0
  197. package/.next/standalone/docs/fr/testing.mdx +260 -0
  198. package/.next/standalone/docs/getting-started.mdx +134 -0
  199. package/.next/standalone/docs/he/architecture.mdx +333 -0
  200. package/.next/standalone/docs/he/built-in-policies.mdx +564 -0
  201. package/.next/standalone/docs/he/cli/dashboard.mdx +28 -0
  202. package/.next/standalone/docs/he/cli/environment-variables.mdx +34 -0
  203. package/.next/standalone/docs/he/cli/hook.mdx +30 -0
  204. package/.next/standalone/docs/he/cli/install-policies.mdx +48 -0
  205. package/.next/standalone/docs/he/cli/list-policies.mdx +32 -0
  206. package/.next/standalone/docs/he/cli/remove-policies.mdx +44 -0
  207. package/.next/standalone/docs/he/cli/version.mdx +12 -0
  208. package/.next/standalone/docs/he/configuration.mdx +222 -0
  209. package/.next/standalone/docs/he/custom-policies.mdx +357 -0
  210. package/.next/standalone/docs/he/dashboard.mdx +142 -0
  211. package/.next/standalone/docs/he/examples.mdx +253 -0
  212. package/.next/standalone/docs/he/for-agents.mdx +38 -0
  213. package/.next/standalone/docs/he/getting-started.mdx +135 -0
  214. package/.next/standalone/docs/he/introduction.mdx +57 -0
  215. package/.next/standalone/docs/he/package-aliases.mdx +82 -0
  216. package/.next/standalone/docs/he/testing.mdx +260 -0
  217. package/.next/standalone/docs/hi/architecture.mdx +334 -0
  218. package/.next/standalone/docs/hi/built-in-policies.mdx +564 -0
  219. package/.next/standalone/docs/hi/cli/dashboard.mdx +28 -0
  220. package/.next/standalone/docs/hi/cli/environment-variables.mdx +34 -0
  221. package/.next/standalone/docs/hi/cli/hook.mdx +30 -0
  222. package/.next/standalone/docs/hi/cli/install-policies.mdx +48 -0
  223. package/.next/standalone/docs/hi/cli/list-policies.mdx +31 -0
  224. package/.next/standalone/docs/hi/cli/remove-policies.mdx +44 -0
  225. package/.next/standalone/docs/hi/cli/version.mdx +12 -0
  226. package/.next/standalone/docs/hi/configuration.mdx +222 -0
  227. package/.next/standalone/docs/hi/custom-policies.mdx +357 -0
  228. package/.next/standalone/docs/hi/dashboard.mdx +142 -0
  229. package/.next/standalone/docs/hi/examples.mdx +255 -0
  230. package/.next/standalone/docs/hi/for-agents.mdx +38 -0
  231. package/.next/standalone/docs/hi/getting-started.mdx +134 -0
  232. package/.next/standalone/docs/hi/introduction.mdx +57 -0
  233. package/.next/standalone/docs/hi/package-aliases.mdx +82 -0
  234. package/.next/standalone/docs/hi/testing.mdx +260 -0
  235. package/.next/standalone/docs/i18n/README.ar.md +312 -0
  236. package/.next/standalone/docs/i18n/README.de.md +307 -0
  237. package/.next/standalone/docs/i18n/README.es.md +307 -0
  238. package/.next/standalone/docs/i18n/README.fr.md +307 -0
  239. package/.next/standalone/docs/i18n/README.he.md +312 -0
  240. package/.next/standalone/docs/i18n/README.hi.md +307 -0
  241. package/.next/standalone/docs/i18n/README.it.md +307 -0
  242. package/.next/standalone/docs/i18n/README.ja.md +307 -0
  243. package/.next/standalone/docs/i18n/README.ko.md +307 -0
  244. package/.next/standalone/docs/i18n/README.pt-br.md +307 -0
  245. package/.next/standalone/docs/i18n/README.ru.md +308 -0
  246. package/.next/standalone/docs/i18n/README.tr.md +308 -0
  247. package/.next/standalone/docs/i18n/README.vi.md +308 -0
  248. package/.next/standalone/docs/i18n/README.zh.md +307 -0
  249. package/.next/standalone/docs/introduction.mdx +57 -0
  250. package/.next/standalone/docs/it/architecture.mdx +333 -0
  251. package/.next/standalone/docs/it/built-in-policies.mdx +564 -0
  252. package/.next/standalone/docs/it/cli/dashboard.mdx +28 -0
  253. package/.next/standalone/docs/it/cli/environment-variables.mdx +34 -0
  254. package/.next/standalone/docs/it/cli/hook.mdx +30 -0
  255. package/.next/standalone/docs/it/cli/install-policies.mdx +48 -0
  256. package/.next/standalone/docs/it/cli/list-policies.mdx +31 -0
  257. package/.next/standalone/docs/it/cli/remove-policies.mdx +44 -0
  258. package/.next/standalone/docs/it/cli/version.mdx +12 -0
  259. package/.next/standalone/docs/it/configuration.mdx +223 -0
  260. package/.next/standalone/docs/it/custom-policies.mdx +358 -0
  261. package/.next/standalone/docs/it/dashboard.mdx +142 -0
  262. package/.next/standalone/docs/it/examples.mdx +253 -0
  263. package/.next/standalone/docs/it/for-agents.mdx +38 -0
  264. package/.next/standalone/docs/it/getting-started.mdx +134 -0
  265. package/.next/standalone/docs/it/introduction.mdx +57 -0
  266. package/.next/standalone/docs/it/package-aliases.mdx +82 -0
  267. package/.next/standalone/docs/it/testing.mdx +260 -0
  268. package/.next/standalone/docs/ja/architecture.mdx +332 -0
  269. package/.next/standalone/docs/ja/built-in-policies.mdx +562 -0
  270. package/.next/standalone/docs/ja/cli/dashboard.mdx +28 -0
  271. package/.next/standalone/docs/ja/cli/environment-variables.mdx +34 -0
  272. package/.next/standalone/docs/ja/cli/hook.mdx +30 -0
  273. package/.next/standalone/docs/ja/cli/install-policies.mdx +48 -0
  274. package/.next/standalone/docs/ja/cli/list-policies.mdx +31 -0
  275. package/.next/standalone/docs/ja/cli/remove-policies.mdx +44 -0
  276. package/.next/standalone/docs/ja/cli/version.mdx +12 -0
  277. package/.next/standalone/docs/ja/configuration.mdx +222 -0
  278. package/.next/standalone/docs/ja/custom-policies.mdx +357 -0
  279. package/.next/standalone/docs/ja/dashboard.mdx +142 -0
  280. package/.next/standalone/docs/ja/examples.mdx +253 -0
  281. package/.next/standalone/docs/ja/for-agents.mdx +38 -0
  282. package/.next/standalone/docs/ja/getting-started.mdx +134 -0
  283. package/.next/standalone/docs/ja/introduction.mdx +57 -0
  284. package/.next/standalone/docs/ja/package-aliases.mdx +82 -0
  285. package/.next/standalone/docs/ja/testing.mdx +260 -0
  286. package/.next/standalone/docs/ko/architecture.mdx +332 -0
  287. package/.next/standalone/docs/ko/built-in-policies.mdx +562 -0
  288. package/.next/standalone/docs/ko/cli/dashboard.mdx +28 -0
  289. package/.next/standalone/docs/ko/cli/environment-variables.mdx +34 -0
  290. package/.next/standalone/docs/ko/cli/hook.mdx +30 -0
  291. package/.next/standalone/docs/ko/cli/install-policies.mdx +48 -0
  292. package/.next/standalone/docs/ko/cli/list-policies.mdx +31 -0
  293. package/.next/standalone/docs/ko/cli/remove-policies.mdx +44 -0
  294. package/.next/standalone/docs/ko/cli/version.mdx +12 -0
  295. package/.next/standalone/docs/ko/configuration.mdx +222 -0
  296. package/.next/standalone/docs/ko/custom-policies.mdx +357 -0
  297. package/.next/standalone/docs/ko/dashboard.mdx +142 -0
  298. package/.next/standalone/docs/ko/examples.mdx +253 -0
  299. package/.next/standalone/docs/ko/for-agents.mdx +38 -0
  300. package/.next/standalone/docs/ko/getting-started.mdx +134 -0
  301. package/.next/standalone/docs/ko/introduction.mdx +57 -0
  302. package/.next/standalone/docs/ko/package-aliases.mdx +82 -0
  303. package/.next/standalone/docs/ko/testing.mdx +260 -0
  304. package/.next/standalone/docs/logo/dark.svg +21 -0
  305. package/.next/standalone/docs/logo/light.svg +21 -0
  306. package/.next/standalone/docs/{package-aliases.md → package-aliases.mdx} +5 -5
  307. package/.next/standalone/docs/pt-br/architecture.mdx +332 -0
  308. package/.next/standalone/docs/pt-br/built-in-policies.mdx +564 -0
  309. package/.next/standalone/docs/pt-br/cli/dashboard.mdx +28 -0
  310. package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +34 -0
  311. package/.next/standalone/docs/pt-br/cli/hook.mdx +30 -0
  312. package/.next/standalone/docs/pt-br/cli/install-policies.mdx +48 -0
  313. package/.next/standalone/docs/pt-br/cli/list-policies.mdx +31 -0
  314. package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +44 -0
  315. package/.next/standalone/docs/pt-br/cli/version.mdx +12 -0
  316. package/.next/standalone/docs/pt-br/configuration.mdx +222 -0
  317. package/.next/standalone/docs/pt-br/custom-policies.mdx +357 -0
  318. package/.next/standalone/docs/pt-br/dashboard.mdx +142 -0
  319. package/.next/standalone/docs/pt-br/examples.mdx +253 -0
  320. package/.next/standalone/docs/pt-br/for-agents.mdx +38 -0
  321. package/.next/standalone/docs/pt-br/getting-started.mdx +134 -0
  322. package/.next/standalone/docs/pt-br/introduction.mdx +57 -0
  323. package/.next/standalone/docs/pt-br/package-aliases.mdx +82 -0
  324. package/.next/standalone/docs/pt-br/testing.mdx +260 -0
  325. package/.next/standalone/docs/ru/architecture.mdx +334 -0
  326. package/.next/standalone/docs/ru/built-in-policies.mdx +562 -0
  327. package/.next/standalone/docs/ru/cli/dashboard.mdx +28 -0
  328. package/.next/standalone/docs/ru/cli/environment-variables.mdx +34 -0
  329. package/.next/standalone/docs/ru/cli/hook.mdx +30 -0
  330. package/.next/standalone/docs/ru/cli/install-policies.mdx +48 -0
  331. package/.next/standalone/docs/ru/cli/list-policies.mdx +32 -0
  332. package/.next/standalone/docs/ru/cli/remove-policies.mdx +44 -0
  333. package/.next/standalone/docs/ru/cli/version.mdx +12 -0
  334. package/.next/standalone/docs/ru/configuration.mdx +223 -0
  335. package/.next/standalone/docs/ru/custom-policies.mdx +357 -0
  336. package/.next/standalone/docs/ru/dashboard.mdx +142 -0
  337. package/.next/standalone/docs/ru/examples.mdx +254 -0
  338. package/.next/standalone/docs/ru/for-agents.mdx +38 -0
  339. package/.next/standalone/docs/ru/getting-started.mdx +134 -0
  340. package/.next/standalone/docs/ru/introduction.mdx +57 -0
  341. package/.next/standalone/docs/ru/package-aliases.mdx +82 -0
  342. package/.next/standalone/docs/ru/testing.mdx +260 -0
  343. package/.next/standalone/docs/{testing.md → testing.mdx} +11 -11
  344. package/.next/standalone/docs/tr/architecture.mdx +333 -0
  345. package/.next/standalone/docs/tr/built-in-policies.mdx +562 -0
  346. package/.next/standalone/docs/tr/cli/dashboard.mdx +28 -0
  347. package/.next/standalone/docs/tr/cli/environment-variables.mdx +34 -0
  348. package/.next/standalone/docs/tr/cli/hook.mdx +30 -0
  349. package/.next/standalone/docs/tr/cli/install-policies.mdx +48 -0
  350. package/.next/standalone/docs/tr/cli/list-policies.mdx +31 -0
  351. package/.next/standalone/docs/tr/cli/remove-policies.mdx +45 -0
  352. package/.next/standalone/docs/tr/cli/version.mdx +12 -0
  353. package/.next/standalone/docs/tr/configuration.mdx +223 -0
  354. package/.next/standalone/docs/tr/custom-policies.mdx +357 -0
  355. package/.next/standalone/docs/tr/dashboard.mdx +142 -0
  356. package/.next/standalone/docs/tr/examples.mdx +253 -0
  357. package/.next/standalone/docs/tr/for-agents.mdx +38 -0
  358. package/.next/standalone/docs/tr/getting-started.mdx +134 -0
  359. package/.next/standalone/docs/tr/introduction.mdx +57 -0
  360. package/.next/standalone/docs/tr/package-aliases.mdx +82 -0
  361. package/.next/standalone/docs/tr/testing.mdx +260 -0
  362. package/.next/standalone/docs/vi/architecture.mdx +333 -0
  363. package/.next/standalone/docs/vi/built-in-policies.mdx +564 -0
  364. package/.next/standalone/docs/vi/cli/dashboard.mdx +28 -0
  365. package/.next/standalone/docs/vi/cli/environment-variables.mdx +34 -0
  366. package/.next/standalone/docs/vi/cli/hook.mdx +30 -0
  367. package/.next/standalone/docs/vi/cli/install-policies.mdx +48 -0
  368. package/.next/standalone/docs/vi/cli/list-policies.mdx +31 -0
  369. package/.next/standalone/docs/vi/cli/remove-policies.mdx +44 -0
  370. package/.next/standalone/docs/vi/cli/version.mdx +13 -0
  371. package/.next/standalone/docs/vi/configuration.mdx +222 -0
  372. package/.next/standalone/docs/vi/custom-policies.mdx +357 -0
  373. package/.next/standalone/docs/vi/dashboard.mdx +142 -0
  374. package/.next/standalone/docs/vi/examples.mdx +253 -0
  375. package/.next/standalone/docs/vi/for-agents.mdx +38 -0
  376. package/.next/standalone/docs/vi/getting-started.mdx +134 -0
  377. package/.next/standalone/docs/vi/introduction.mdx +57 -0
  378. package/.next/standalone/docs/vi/package-aliases.mdx +82 -0
  379. package/.next/standalone/docs/vi/testing.mdx +260 -0
  380. package/.next/standalone/docs/zh/architecture.mdx +332 -0
  381. package/.next/standalone/docs/zh/built-in-policies.mdx +562 -0
  382. package/.next/standalone/docs/zh/cli/dashboard.mdx +28 -0
  383. package/.next/standalone/docs/zh/cli/environment-variables.mdx +34 -0
  384. package/.next/standalone/docs/zh/cli/hook.mdx +30 -0
  385. package/.next/standalone/docs/zh/cli/install-policies.mdx +48 -0
  386. package/.next/standalone/docs/zh/cli/list-policies.mdx +31 -0
  387. package/.next/standalone/docs/zh/cli/remove-policies.mdx +44 -0
  388. package/.next/standalone/docs/zh/cli/version.mdx +12 -0
  389. package/.next/standalone/docs/zh/configuration.mdx +222 -0
  390. package/.next/standalone/docs/zh/custom-policies.mdx +357 -0
  391. package/.next/standalone/docs/zh/dashboard.mdx +142 -0
  392. package/.next/standalone/docs/zh/examples.mdx +253 -0
  393. package/.next/standalone/docs/zh/for-agents.mdx +38 -0
  394. package/.next/standalone/docs/zh/getting-started.mdx +134 -0
  395. package/.next/standalone/docs/zh/introduction.mdx +57 -0
  396. package/.next/standalone/docs/zh/package-aliases.mdx +82 -0
  397. package/.next/standalone/docs/zh/testing.mdx +260 -0
  398. package/.next/standalone/examples/convention-policies/security-policies.mjs +40 -0
  399. package/.next/standalone/examples/convention-policies/workflow-policies.mjs +41 -0
  400. package/.next/standalone/next.config.ts +5 -3
  401. package/.next/standalone/node_modules/@next/env/package.json +1 -1
  402. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  403. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/index.js +2 -2
  404. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +1 -1
  405. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +1 -1
  406. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +1 -1
  407. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  408. package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
  409. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +7 -2
  410. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  411. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  412. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  413. package/.next/standalone/node_modules/next/dist/server/render.js +20 -19
  414. package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  415. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  416. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  417. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  418. package/.next/standalone/node_modules/next/package.json +15 -15
  419. package/.next/standalone/node_modules/react/cjs/react.development.js +1 -1
  420. package/.next/standalone/node_modules/react/cjs/react.production.js +1 -1
  421. package/.next/standalone/node_modules/react/package.json +1 -1
  422. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +1 -1
  423. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +1 -1
  424. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +3 -3
  425. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +3 -3
  426. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +3 -3
  427. package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +1 -1
  428. package/.next/standalone/node_modules/react-dom/package.json +2 -2
  429. package/.next/standalone/package.json +13 -10
  430. package/.next/standalone/scripts/translate-docs/cache.ts +62 -0
  431. package/.next/standalone/scripts/translate-docs/cli.ts +357 -0
  432. package/.next/standalone/scripts/translate-docs/config.ts +248 -0
  433. package/.next/standalone/scripts/translate-docs/mdx-translator.ts +153 -0
  434. package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +107 -0
  435. package/.next/standalone/scripts/translate-docs/readme-translator.ts +154 -0
  436. package/.next/standalone/scripts/translate-docs/translator.ts +68 -0
  437. package/.next/standalone/scripts/translate-docs/types.ts +43 -0
  438. package/.next/standalone/server.js +1 -1
  439. package/.next/standalone/skills-lock.json +10 -0
  440. package/.next/standalone/src/hooks/builtin-policies.ts +405 -25
  441. package/.next/standalone/src/hooks/custom-hooks-loader.ts +165 -21
  442. package/.next/standalone/src/hooks/handler.ts +33 -6
  443. package/.next/standalone/src/hooks/hook-activity-store.ts +6 -1
  444. package/.next/standalone/src/hooks/hooks-config.ts +47 -2
  445. package/.next/standalone/src/hooks/llm-client.ts +2 -2
  446. package/.next/standalone/src/hooks/loader-utils.ts +4 -4
  447. package/.next/standalone/src/hooks/manager.ts +67 -16
  448. package/.next/standalone/src/hooks/policy-evaluator.ts +58 -19
  449. package/.next/standalone/src/hooks/policy-helpers.ts +2 -2
  450. package/.next/standalone/vitest.config.e2e.mts +3 -0
  451. package/.next/standalone/vitest.config.mts +3 -0
  452. package/README.md +95 -49
  453. package/bin/failproofai.mjs +5 -0
  454. package/dist/cli.mjs +539 -90
  455. package/dist/index.js +2 -2
  456. package/package.json +13 -10
  457. package/scripts/translate-docs/cache.ts +62 -0
  458. package/scripts/translate-docs/cli.ts +357 -0
  459. package/scripts/translate-docs/config.ts +248 -0
  460. package/scripts/translate-docs/mdx-translator.ts +153 -0
  461. package/scripts/translate-docs/mintlify-nav.ts +107 -0
  462. package/scripts/translate-docs/readme-translator.ts +154 -0
  463. package/scripts/translate-docs/translator.ts +68 -0
  464. package/scripts/translate-docs/types.ts +43 -0
  465. package/src/hooks/builtin-policies.ts +405 -25
  466. package/src/hooks/custom-hooks-loader.ts +165 -21
  467. package/src/hooks/handler.ts +33 -6
  468. package/src/hooks/hook-activity-store.ts +6 -1
  469. package/src/hooks/hooks-config.ts +47 -2
  470. package/src/hooks/llm-client.ts +2 -2
  471. package/src/hooks/loader-utils.ts +4 -4
  472. package/src/hooks/manager.ts +67 -16
  473. package/src/hooks/policy-evaluator.ts +58 -19
  474. package/src/hooks/policy-helpers.ts +2 -2
  475. package/.next/standalone/.next/server/chunks/[root-of-the-server]__02nt~6d._.js +0 -3
  476. package/.next/standalone/.next/static/chunks/15jpradyu_531.css +0 -1
  477. package/.next/standalone/docs/cli-reference.md +0 -175
  478. package/.next/standalone/docs/custom-hooks.md +0 -261
  479. package/.next/standalone/docs/getting-started.md +0 -128
  480. package/.next/standalone/docs/introduction.md +0 -47
  481. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_buildManifest.js +0 -0
  482. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_clientMiddlewareManifest.js +0 -0
  483. /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_ssgManifest.js +0 -0
@@ -0,0 +1,307 @@
1
+ > **⚠️** This is an auto-generated translation. For the latest version, see the [English README](../../README.md). Community corrections welcome!
2
+
3
+ [🇺🇸 English](../../README.md) | [🇨🇳 简体中文](README.zh.md) | **🇯🇵 日本語** | [🇰🇷 한국어](README.ko.md) | [🇪🇸 Español](README.es.md) | [🇧🇷 Português](README.pt-br.md) | [🇩🇪 Deutsch](README.de.md) | [🇫🇷 Français](README.fr.md) | [🇷🇺 Русский](README.ru.md) | [🇮🇳 हिन्दी](README.hi.md) | [🇹🇷 Türkçe](README.tr.md) | [🇻🇳 Tiếng Việt](README.vi.md) | [🇮🇹 Italiano](README.it.md) | [🇸🇦 العربية](README.ar.md) | [🇮🇱 עברית](README.he.md)
4
+
5
+ ---
6
+
7
+ ```
8
+ ______ _ __ ____ ___ ____
9
+ / ____/___ _(_) /___ _________ ____ / __/ / | / _/
10
+ / /_ / __ `/ / / __ \/ ___/ __ \/ __ \/ /_ / /| | / /
11
+ / __/ / /_/ / / / /_/ / / / /_/ / /_/ / __/ / ___ |_/ /
12
+ /_/ \__,_/_/_/ .___/_/ \____/\____/_/ /_/ |_/___/
13
+ /_/
14
+ ```
15
+
16
+ # Failproof AI
17
+
18
+ [![Docs](https://img.shields.io/badge/docs-befailproof.ai-002CA7?style=flat-square)](https://befailproof.ai)
19
+ [![npm](https://img.shields.io/npm/v/failproofai?style=flat-square&color=CB3837)](https://www.npmjs.com/package/failproofai)
20
+ [![License](https://img.shields.io/badge/license-MIT%20%2B%20Commons%20Clause-blue?style=flat-square)](LICENSE)
21
+ [![CI](https://img.shields.io/github/actions/workflow/status/exospherehost/failproofai/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/exospherehost/failproofai/actions)
22
+ [![Slack](https://img.shields.io/badge/Slack-join%20us-4A154B?style=flat-square&logo=slack)](https://join.slack.com/t/failproofai/shared_invite/zt-3v63b7k5e-O3NBHmj8X6n9gZSGDx6ggQ)
23
+
24
+ **翻訳**: [简体中文](docs/i18n/README.zh.md) | [日本語](docs/i18n/README.ja.md) | [한국어](docs/i18n/README.ko.md) | [Español](docs/i18n/README.es.md) | [Português](docs/i18n/README.pt-br.md) | [Deutsch](docs/i18n/README.de.md) | [Français](docs/i18n/README.fr.md) | [Русский](docs/i18n/README.ru.md) | [हिन्दी](docs/i18n/README.hi.md) | [Türkçe](docs/i18n/README.tr.md) | [Tiếng Việt](docs/i18n/README.vi.md) | [Italiano](docs/i18n/README.it.md) | [العربية](docs/i18n/README.ar.md) | [עברית](docs/i18n/README.he.md)
25
+
26
+ AIエージェントの信頼性を維持し、タスクに集中させ、自律的に動作させるためのポリシー管理ツール — **Claude Code** と **Agents SDK** に対応。
27
+
28
+ - **30種のビルトインポリシー** - よくあるエージェントの障害パターンをすぐに検出。破壊的なコマンドのブロック、シークレット漏洩の防止、プロジェクト境界内へのエージェント制限、ループ検出など。
29
+ - **カスタムポリシー** - JavaScriptで独自の信頼性ルールを記述。`allow`/`deny`/`instruct` APIを使って、規約の適用・ドリフトの防止・操作のゲート処理・外部システムとの連携が可能。
30
+ - **簡単な設定** - コードを書かずにポリシーをチューニング。許可リスト、保護ブランチ、しきい値をプロジェクト単位またはグローバルに設定。3つのスコープの設定が自動でマージされる。
31
+ - **エージェントモニター** - 離席中にエージェントが何をしたか確認。セッションを閲覧し、すべてのツール呼び出しを検査し、ポリシーが発動した箇所を詳細にレビュー。
32
+
33
+ すべてローカルで動作 — データがマシン外に出ることはありません。
34
+
35
+ ---
36
+
37
+ ## 動作要件
38
+
39
+ - Node.js >= 20.9.0
40
+ - Bun >= 1.3.0(任意 — 開発時またはソースからのビルド時のみ必要)
41
+
42
+ ---
43
+
44
+ ## インストール
45
+
46
+ ```bash
47
+ npm install -g failproofai
48
+ # または
49
+ bun add -g failproofai
50
+ ```
51
+
52
+ ---
53
+
54
+ ## クイックスタート
55
+
56
+ ### 1. ポリシーをグローバルに有効化
57
+
58
+ ```bash
59
+ failproofai policies --install
60
+ ```
61
+
62
+ `~/.claude/settings.json` にフックエントリを書き込みます。これにより Claude Code は各ツール呼び出しの前後に failproofai を呼び出すようになります。
63
+
64
+ ### 2. ダッシュボードを起動
65
+
66
+ ```bash
67
+ failproofai
68
+ ```
69
+
70
+ `http://localhost:8020` が開きます — セッションの閲覧、ログの検査、ポリシーの管理が行えます。
71
+
72
+ ### 3. 有効なポリシーを確認
73
+
74
+ ```bash
75
+ failproofai policies
76
+ ```
77
+
78
+ ---
79
+
80
+ ## ポリシーのインストール
81
+
82
+ ### スコープ
83
+
84
+ | スコープ | コマンド | 書き込み先 |
85
+ |---------|---------|-----------|
86
+ | グローバル(デフォルト) | `failproofai policies --install` | `~/.claude/settings.json` |
87
+ | プロジェクト | `failproofai policies --install --scope project` | `.claude/settings.json` |
88
+ | ローカル | `failproofai policies --install --scope local` | `.claude/settings.local.json` |
89
+
90
+ ### 特定のポリシーをインストール
91
+
92
+ ```bash
93
+ failproofai policies --install block-sudo block-rm-rf sanitize-api-keys
94
+ ```
95
+
96
+ ### ポリシーの削除
97
+
98
+ ```bash
99
+ failproofai policies --uninstall
100
+ # または特定のスコープを指定する場合:
101
+ failproofai policies --uninstall --scope project
102
+ ```
103
+
104
+ ---
105
+
106
+ ## 設定
107
+
108
+ ポリシーの設定は `~/.failproofai/policies-config.json`(グローバル)またはプロジェクト内の `.failproofai/policies-config.json`(プロジェクト単位)に保存されます。
109
+
110
+ ```json
111
+ {
112
+ "enabledPolicies": [
113
+ "block-sudo",
114
+ "block-rm-rf",
115
+ "sanitize-api-keys",
116
+ "block-push-master",
117
+ "block-env-files",
118
+ "block-read-outside-cwd"
119
+ ],
120
+ "policyParams": {
121
+ "block-sudo": {
122
+ "allowPatterns": ["sudo systemctl status", "sudo journalctl"],
123
+ "hint": "Use apt-get directly without sudo."
124
+ },
125
+ "block-push-master": {
126
+ "protectedBranches": ["main", "release", "prod"],
127
+ "hint": "Try creating a fresh branch instead."
128
+ },
129
+ "sanitize-api-keys": {
130
+ "additionalPatterns": [
131
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo API key" }
132
+ ]
133
+ },
134
+ "warn-large-file-write": {
135
+ "thresholdKb": 512
136
+ }
137
+ }
138
+ }
139
+ ```
140
+
141
+ **3つの設定スコープ**は自動的にマージされます(プロジェクト → ローカル → グローバル)。マージルールの詳細は [docs/configuration.mdx](docs/configuration.mdx) を参照してください。
142
+
143
+ ---
144
+
145
+ ## ビルトインポリシー
146
+
147
+ | ポリシー | 説明 | 設定可能パラメータ |
148
+ |---------|------|:-----------------:|
149
+ | `block-sudo` | エージェントによる特権システムコマンドの実行を防止 | `allowPatterns` |
150
+ | `block-rm-rf` | 誤った再帰的ファイル削除を防止 | `allowPaths` |
151
+ | `block-curl-pipe-sh` | 信頼できないスクリプトのシェルへのパイプを防止 | |
152
+ | `block-failproofai-commands` | 自己アンインストールを防止 | |
153
+ | `sanitize-jwt` | JWTトークンがエージェントコンテキストへ漏洩するのを防止 | |
154
+ | `sanitize-api-keys` | APIキーがエージェントコンテキストへ漏洩するのを防止 | `additionalPatterns` |
155
+ | `sanitize-connection-strings` | データベース認証情報がエージェントコンテキストへ漏洩するのを防止 | |
156
+ | `sanitize-private-key-content` | 出力からPEM秘密鍵ブロックを除去 | |
157
+ | `sanitize-bearer-tokens` | 出力からAuthorization Bearerトークンを除去 | |
158
+ | `block-env-files` | エージェントによる.envファイルの読み取りを防止 | |
159
+ | `protect-env-vars` | エージェントによる環境変数の出力を防止 | |
160
+ | `block-read-outside-cwd` | エージェントをプロジェクト境界内に制限 | `allowPaths` |
161
+ | `block-secrets-write` | 秘密鍵・証明書ファイルへの書き込みを防止 | `additionalPatterns` |
162
+ | `block-push-master` | main/masterブランチへの誤ったプッシュを防止 | `protectedBranches` |
163
+ | `block-work-on-main` | 保護ブランチでの作業からエージェントを遠ざける | `protectedBranches` |
164
+ | `block-force-push` | `git push --force` を防止 | |
165
+ | `warn-git-amend` | コミット修正前にエージェントへ通知 | |
166
+ | `warn-git-stash-drop` | スタッシュ削除前にエージェントへ通知 | |
167
+ | `warn-all-files-staged` | 誤った `git add -A` を検出 | |
168
+ | `warn-destructive-sql` | 実行前にDROP/DELETE SQLを検出 | |
169
+ | `warn-schema-alteration` | 実行前にALTER TABLEを検出 | |
170
+ | `warn-large-file-write` | 予期しない大きなファイル書き込みを検出 | `thresholdKb` |
171
+ | `warn-package-publish` | 誤った `npm publish` を検出 | |
172
+ | `warn-background-process` | 意図しないバックグラウンドプロセスの起動を検出 | |
173
+ | `warn-global-package-install` | 意図しないグローバルパッケージインストールを検出 | |
174
+ | …その他 | | |
175
+
176
+ ポリシーの詳細とパラメータのリファレンス: [docs/built-in-policies.mdx](docs/built-in-policies.mdx)
177
+
178
+ ---
179
+
180
+ ## カスタムポリシー
181
+
182
+ エージェントの信頼性とタスク集中を維持するために、独自のポリシーを記述できます:
183
+
184
+ ```js
185
+ import { customPolicies, allow, deny, instruct } from "failproofai";
186
+
187
+ customPolicies.add({
188
+ name: "no-production-writes",
189
+ description: "Block writes to paths containing 'production'",
190
+ match: { events: ["PreToolUse"] },
191
+ fn: async (ctx) => {
192
+ if (!["Write", "Edit"].includes(ctx.toolName ?? "")) return allow();
193
+ const path = ctx.toolInput?.file_path ?? "";
194
+ if (path.includes("production")) return deny("Writes to production paths are blocked");
195
+ return allow();
196
+ },
197
+ });
198
+ ```
199
+
200
+ 以下のコマンドでインストール:
201
+
202
+ ```bash
203
+ failproofai policies --install --custom ./my-policies.js
204
+ ```
205
+
206
+ ### 判定ヘルパー
207
+
208
+ | 関数 | 効果 |
209
+ |------|------|
210
+ | `allow()` | 操作を許可 |
211
+ | `allow(message)` | 許可し、情報コンテキストを Claude に送信 *(ベータ)* |
212
+ | `deny(message)` | 操作をブロック。メッセージが Claude に表示される |
213
+ | `instruct(message)` | Claude のプロンプトにコンテキストを追加。ブロックはしない |
214
+
215
+ ### コンテキストオブジェクト(`ctx`)
216
+
217
+ | フィールド | 型 | 説明 |
218
+ |-----------|----|----|
219
+ | `eventType` | `string` | `"PreToolUse"`、`"PostToolUse"`、`"Notification"`、`"Stop"` |
220
+ | `toolName` | `string` | 呼び出されるツール(`"Bash"`、`"Write"`、`"Read"`、…) |
221
+ | `toolInput` | `object` | ツールの入力パラメータ |
222
+ | `payload` | `object` | 生のイベントペイロード全体 |
223
+ | `session.cwd` | `string` | Claude Code セッションの作業ディレクトリ |
224
+ | `session.sessionId` | `string` | セッション識別子 |
225
+ | `session.transcriptPath` | `string` | セッショントランスクリプトファイルのパス |
226
+
227
+ カスタムフックは推移的なローカルインポート、async/await、`process.env` へのアクセスをサポートしています。エラーはフェイルオープン(`~/.failproofai/hook.log` に記録され、ビルトインポリシーは継続)となります。詳細なガイドは [docs/custom-hooks.mdx](docs/custom-hooks.mdx) を参照してください。
228
+
229
+ ### 規約ベースのポリシー(v0.0.2-beta.7+)
230
+
231
+ `*policies.{js,mjs,ts}` ファイルを `.failproofai/policies/` に配置するだけで自動的に読み込まれます — `--custom` フラグや設定変更は不要です。gitフックと同じように、ファイルを置くだけで動作します。
232
+
233
+ ```text
234
+ # プロジェクトレベル — gitにコミットしてチームで共有
235
+ .failproofai/policies/security-policies.mjs
236
+ .failproofai/policies/workflow-policies.mjs
237
+
238
+ # ユーザーレベル — 個人用、すべてのプロジェクトに適用
239
+ ~/.failproofai/policies/my-policies.mjs
240
+ ```
241
+
242
+ 両方のレベルが読み込まれます(和集合)。ファイルは各ディレクトリ内でアルファベット順に読み込まれます。読み込み順を制御するには `01-`、`02-` などのプレフィックスを使用してください。すぐに使えるサンプルは [examples/convention-policies/](examples/convention-policies/) を参照してください。
243
+
244
+ ---
245
+
246
+ ## テレメトリ
247
+
248
+ Failproof AI は機能の利用状況を把握するため、PostHog を通じて匿名の使用状況テレメトリを収集します。セッションの内容、ファイル名、ツールの入力、個人情報は一切送信されません。
249
+
250
+ 無効化するには:
251
+
252
+ ```bash
253
+ FAILPROOFAI_TELEMETRY_DISABLED=1 failproofai
254
+ ```
255
+
256
+ ---
257
+
258
+ ## ドキュメント
259
+
260
+ | ガイド | 説明 |
261
+ |--------|------|
262
+ | [はじめに](docs/getting-started.mdx) | インストールと最初のステップ |
263
+ | [ビルトインポリシー](docs/built-in-policies.mdx) | パラメータ付き30種のビルトインポリシー |
264
+ | [カスタムポリシー](docs/custom-policies.mdx) | 独自のポリシーを記述する |
265
+ | [設定](docs/configuration.mdx) | 設定ファイルの形式とスコープのマージ |
266
+ | [ダッシュボード](docs/dashboard.mdx) | セッションの監視とポリシーアクティビティのレビュー |
267
+ | [アーキテクチャ](docs/architecture.mdx) | フックシステムの仕組み |
268
+ | [テスト](docs/testing.mdx) | テストの実行と新規テストの作成 |
269
+
270
+ ### ドキュメントをローカルで実行
271
+
272
+ ```bash
273
+ docker build -f Dockerfile.docs -t failproofai-docs .
274
+ docker run --rm -p 3000:3000 failproofai-docs
275
+ ```
276
+
277
+ `http://localhost:3000` にMintlifyのドキュメントサイトが開きます。docsディレクトリをマウントすると、コンテナが変更を監視します:
278
+
279
+ ```bash
280
+ docker run --rm -p 3000:3000 -v $(pwd)/docs:/app/docs failproofai-docs
281
+ ```
282
+
283
+ ---
284
+
285
+ ## failproofaiコントリビューターへの注意
286
+
287
+ このリポジトリの `.claude/settings.json` は、標準の `npx -y failproofai` コマンドの代わりに `bun ./bin/failproofai.mjs --hook <EventType>` を使用しています。これは、failproofai プロジェクト内で `npx -y failproofai` を実行すると自己参照の競合が発生するためです。
288
+
289
+ その他すべてのリポジトリでは、推奨されるアプローチは `npx -y failproofai` であり、以下でインストールされます:
290
+
291
+ ```bash
292
+ failproofai policies --install --scope project
293
+ ```
294
+
295
+ ## コントリビュート
296
+
297
+ [CONTRIBUTING.md](CONTRIBUTING.md) を参照してください。
298
+
299
+ ---
300
+
301
+ ## ライセンス
302
+
303
+ [LICENSE](LICENSE) を参照してください。
304
+
305
+ ---
306
+
307
+ **ExosphereHost: Reliability Research Lab for Your Agents** によって構築・メンテナンスされています。私たちは自社のエージェント、ソフトウェア、専門知識を通じて、企業やスタートアップのAIエージェントの信頼性向上を支援しています。詳細は [exosphere.host](https://exosphere.host) をご覧ください。
@@ -0,0 +1,307 @@
1
+ > **⚠️** This is an auto-generated translation. For the latest version, see the [English README](../../README.md). Community corrections welcome!
2
+
3
+ [🇺🇸 English](../../README.md) | [🇨🇳 简体中文](README.zh.md) | [🇯🇵 日本語](README.ja.md) | **🇰🇷 한국어** | [🇪🇸 Español](README.es.md) | [🇧🇷 Português](README.pt-br.md) | [🇩🇪 Deutsch](README.de.md) | [🇫🇷 Français](README.fr.md) | [🇷🇺 Русский](README.ru.md) | [🇮🇳 हिन्दी](README.hi.md) | [🇹🇷 Türkçe](README.tr.md) | [🇻🇳 Tiếng Việt](README.vi.md) | [🇮🇹 Italiano](README.it.md) | [🇸🇦 العربية](README.ar.md) | [🇮🇱 עברית](README.he.md)
4
+
5
+ ---
6
+
7
+ ```
8
+ ______ _ __ ____ ___ ____
9
+ / ____/___ _(_) /___ _________ ____ / __/ / | / _/
10
+ / /_ / __ `/ / / __ \/ ___/ __ \/ __ \/ /_ / /| | / /
11
+ / __/ / /_/ / / / /_/ / / / /_/ / /_/ / __/ / ___ |_/ /
12
+ /_/ \__,_/_/_/ .___/_/ \____/\____/_/ /_/ |_/___/
13
+ /_/
14
+ ```
15
+
16
+ # Failproof AI
17
+
18
+ [![Docs](https://img.shields.io/badge/docs-befailproof.ai-002CA7?style=flat-square)](https://befailproof.ai)
19
+ [![npm](https://img.shields.io/npm/v/failproofai?style=flat-square&color=CB3837)](https://www.npmjs.com/package/failproofai)
20
+ [![License](https://img.shields.io/badge/license-MIT%20%2B%20Commons%20Clause-blue?style=flat-square)](LICENSE)
21
+ [![CI](https://img.shields.io/github/actions/workflow/status/exospherehost/failproofai/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/exospherehost/failproofai/actions)
22
+ [![Slack](https://img.shields.io/badge/Slack-join%20us-4A154B?style=flat-square&logo=slack)](https://join.slack.com/t/failproofai/shared_invite/zt-3v63b7k5e-O3NBHmj8X6n9gZSGDx6ggQ)
23
+
24
+ **번역**: [简体中文](docs/i18n/README.zh.md) | [日本語](docs/i18n/README.ja.md) | [한국어](docs/i18n/README.ko.md) | [Español](docs/i18n/README.es.md) | [Português](docs/i18n/README.pt-br.md) | [Deutsch](docs/i18n/README.de.md) | [Français](docs/i18n/README.fr.md) | [Русский](docs/i18n/README.ru.md) | [हिन्दी](docs/i18n/README.hi.md) | [Türkçe](docs/i18n/README.tr.md) | [Tiếng Việt](docs/i18n/README.vi.md) | [Italiano](docs/i18n/README.it.md) | [العربية](docs/i18n/README.ar.md) | [עברית](docs/i18n/README.he.md)
25
+
26
+ AI 에이전트를 안정적으로 유지하고, 목표에 집중하며, 자율적으로 실행되도록 정책을 관리하는 가장 쉬운 방법 — **Claude Code** 및 **Agents SDK** 용.
27
+
28
+ - **30가지 기본 제공 정책** - 흔히 발생하는 에이전트 장애 패턴을 즉시 감지합니다. 위험한 명령 차단, 시크릿 유출 방지, 에이전트를 프로젝트 경계 내로 제한, 루프 감지 등을 제공합니다.
29
+ - **커스텀 정책** - JavaScript로 나만의 신뢰성 규칙을 작성하세요. `allow`/`deny`/`instruct` API를 활용해 컨벤션을 강제하거나, 드리프트를 방지하거나, 작업을 게이팅하거나, 외부 시스템과 연동할 수 있습니다.
30
+ - **간편한 설정** - 코드 없이 정책을 세밀하게 조정하세요. 프로젝트별 또는 전역으로 허용 목록, 보호 브랜치, 임계값을 설정할 수 있습니다. 세 가지 스코프 설정이 자동으로 병합됩니다.
31
+ - **에이전트 모니터** - 자리를 비운 사이 에이전트가 무엇을 했는지 확인하세요. 세션을 탐색하고, 모든 도구 호출을 검사하며, 정책이 발동된 위치를 정확히 확인할 수 있습니다.
32
+
33
+ 모든 처리는 로컬에서 이루어지며 데이터는 외부로 전송되지 않습니다.
34
+
35
+ ---
36
+
37
+ ## 요구 사항
38
+
39
+ - Node.js >= 20.9.0
40
+ - Bun >= 1.3.0 (선택 사항 - 개발 또는 소스 빌드 시에만 필요)
41
+
42
+ ---
43
+
44
+ ## 설치
45
+
46
+ ```bash
47
+ npm install -g failproofai
48
+ # 또는
49
+ bun add -g failproofai
50
+ ```
51
+
52
+ ---
53
+
54
+ ## 빠른 시작
55
+
56
+ ### 1. 전역으로 정책 활성화
57
+
58
+ ```bash
59
+ failproofai policies --install
60
+ ```
61
+
62
+ `~/.claude/settings.json`에 훅 항목을 작성합니다. 이제 Claude Code는 각 도구 호출 전후로 failproofai를 실행합니다.
63
+
64
+ ### 2. 대시보드 실행
65
+
66
+ ```bash
67
+ failproofai
68
+ ```
69
+
70
+ `http://localhost:8020`을 엽니다 — 세션 탐색, 로그 검사, 정책 관리가 가능합니다.
71
+
72
+ ### 3. 활성 정책 확인
73
+
74
+ ```bash
75
+ failproofai policies
76
+ ```
77
+
78
+ ---
79
+
80
+ ## 정책 설치
81
+
82
+ ### 스코프
83
+
84
+ | 스코프 | 명령어 | 저장 위치 |
85
+ |--------|--------|-----------|
86
+ | 전역 (기본값) | `failproofai policies --install` | `~/.claude/settings.json` |
87
+ | 프로젝트 | `failproofai policies --install --scope project` | `.claude/settings.json` |
88
+ | 로컬 | `failproofai policies --install --scope local` | `.claude/settings.local.json` |
89
+
90
+ ### 특정 정책 설치
91
+
92
+ ```bash
93
+ failproofai policies --install block-sudo block-rm-rf sanitize-api-keys
94
+ ```
95
+
96
+ ### 정책 제거
97
+
98
+ ```bash
99
+ failproofai policies --uninstall
100
+ # 또는 특정 스코프 지정 시:
101
+ failproofai policies --uninstall --scope project
102
+ ```
103
+
104
+ ---
105
+
106
+ ## 설정
107
+
108
+ 정책 설정은 전역의 경우 `~/.failproofai/policies-config.json`, 프로젝트별 설정은 프로젝트 내 `.failproofai/policies-config.json`에 저장됩니다.
109
+
110
+ ```json
111
+ {
112
+ "enabledPolicies": [
113
+ "block-sudo",
114
+ "block-rm-rf",
115
+ "sanitize-api-keys",
116
+ "block-push-master",
117
+ "block-env-files",
118
+ "block-read-outside-cwd"
119
+ ],
120
+ "policyParams": {
121
+ "block-sudo": {
122
+ "allowPatterns": ["sudo systemctl status", "sudo journalctl"],
123
+ "hint": "Use apt-get directly without sudo."
124
+ },
125
+ "block-push-master": {
126
+ "protectedBranches": ["main", "release", "prod"],
127
+ "hint": "Try creating a fresh branch instead."
128
+ },
129
+ "sanitize-api-keys": {
130
+ "additionalPatterns": [
131
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo API key" }
132
+ ]
133
+ },
134
+ "warn-large-file-write": {
135
+ "thresholdKb": 512
136
+ }
137
+ }
138
+ }
139
+ ```
140
+
141
+ **세 가지 설정 스코프**는 자동으로 병합됩니다 (프로젝트 → 로컬 → 전역). 전체 병합 규칙은 [docs/configuration.mdx](docs/configuration.mdx)를 참고하세요.
142
+
143
+ ---
144
+
145
+ ## 기본 제공 정책
146
+
147
+ | 정책 | 설명 | 설정 가능 |
148
+ |------|------|:---------:|
149
+ | `block-sudo` | 에이전트의 권한 있는 시스템 명령 실행 방지 | `allowPatterns` |
150
+ | `block-rm-rf` | 실수로 인한 재귀적 파일 삭제 방지 | `allowPaths` |
151
+ | `block-curl-pipe-sh` | 에이전트가 신뢰할 수 없는 스크립트를 셸로 파이핑하는 것을 방지 | |
152
+ | `block-failproofai-commands` | 자가 제거 방지 | |
153
+ | `sanitize-jwt` | JWT 토큰이 에이전트 컨텍스트로 유출되는 것을 차단 | |
154
+ | `sanitize-api-keys` | API 키가 에이전트 컨텍스트로 유출되는 것을 차단 | `additionalPatterns` |
155
+ | `sanitize-connection-strings` | 데이터베이스 자격 증명이 에이전트 컨텍스트로 유출되는 것을 차단 | |
156
+ | `sanitize-private-key-content` | 출력에서 PEM 개인 키 블록 제거 | |
157
+ | `sanitize-bearer-tokens` | 출력에서 Authorization Bearer 토큰 제거 | |
158
+ | `block-env-files` | 에이전트가 .env 파일을 읽는 것을 방지 | |
159
+ | `protect-env-vars` | 에이전트가 환경 변수를 출력하는 것을 방지 | |
160
+ | `block-read-outside-cwd` | 에이전트를 프로젝트 경계 내로 제한 | `allowPaths` |
161
+ | `block-secrets-write` | 개인 키 및 인증서 파일 쓰기 방지 | `additionalPatterns` |
162
+ | `block-push-master` | main/master 브랜치에 실수로 푸시하는 것을 방지 | `protectedBranches` |
163
+ | `block-work-on-main` | 에이전트가 보호된 브랜치에서 작업하는 것을 방지 | `protectedBranches` |
164
+ | `block-force-push` | `git push --force` 방지 | |
165
+ | `warn-git-amend` | 커밋 수정 전 에이전트에게 알림 | |
166
+ | `warn-git-stash-drop` | 스태시 삭제 전 에이전트에게 알림 | |
167
+ | `warn-all-files-staged` | 실수로 인한 `git add -A` 감지 | |
168
+ | `warn-destructive-sql` | 실행 전 DROP/DELETE SQL 감지 | |
169
+ | `warn-schema-alteration` | 실행 전 ALTER TABLE 감지 | |
170
+ | `warn-large-file-write` | 예상치 못한 대용량 파일 쓰기 감지 | `thresholdKb` |
171
+ | `warn-package-publish` | 실수로 인한 `npm publish` 감지 | |
172
+ | `warn-background-process` | 의도치 않은 백그라운드 프로세스 실행 감지 | |
173
+ | `warn-global-package-install` | 의도치 않은 전역 패키지 설치 감지 | |
174
+ | …그 외 다수 | | |
175
+
176
+ 전체 정책 상세 정보 및 파라미터 참조: [docs/built-in-policies.mdx](docs/built-in-policies.mdx)
177
+
178
+ ---
179
+
180
+ ## 커스텀 정책
181
+
182
+ 에이전트를 안정적으로 유지하고 목표에 집중시키기 위한 나만의 정책을 작성하세요:
183
+
184
+ ```js
185
+ import { customPolicies, allow, deny, instruct } from "failproofai";
186
+
187
+ customPolicies.add({
188
+ name: "no-production-writes",
189
+ description: "Block writes to paths containing 'production'",
190
+ match: { events: ["PreToolUse"] },
191
+ fn: async (ctx) => {
192
+ if (!["Write", "Edit"].includes(ctx.toolName ?? "")) return allow();
193
+ const path = ctx.toolInput?.file_path ?? "";
194
+ if (path.includes("production")) return deny("Writes to production paths are blocked");
195
+ return allow();
196
+ },
197
+ });
198
+ ```
199
+
200
+ 다음 명령어로 설치하세요:
201
+
202
+ ```bash
203
+ failproofai policies --install --custom ./my-policies.js
204
+ ```
205
+
206
+ ### 결정 헬퍼
207
+
208
+ | 함수 | 동작 |
209
+ |------|------|
210
+ | `allow()` | 작업 허용 |
211
+ | `allow(message)` | 허용하고 Claude에 정보성 컨텍스트 전달 *(베타)* |
212
+ | `deny(message)` | 작업 차단; 메시지가 Claude에 표시됨 |
213
+ | `instruct(message)` | Claude 프롬프트에 컨텍스트 추가; 차단하지 않음 |
214
+
215
+ ### 컨텍스트 객체 (`ctx`)
216
+
217
+ | 필드 | 타입 | 설명 |
218
+ |------|------|------|
219
+ | `eventType` | `string` | `"PreToolUse"`, `"PostToolUse"`, `"Notification"`, `"Stop"` |
220
+ | `toolName` | `string` | 호출되는 도구 (`"Bash"`, `"Write"`, `"Read"`, …) |
221
+ | `toolInput` | `object` | 도구의 입력 파라미터 |
222
+ | `payload` | `object` | 전체 원시 이벤트 페이로드 |
223
+ | `session.cwd` | `string` | Claude Code 세션의 작업 디렉토리 |
224
+ | `session.sessionId` | `string` | 세션 식별자 |
225
+ | `session.transcriptPath` | `string` | 세션 트랜스크립트 파일 경로 |
226
+
227
+ 커스텀 훅은 전이적 로컬 임포트, async/await, `process.env` 접근을 지원합니다. 오류는 fail-open 방식으로 처리됩니다 (`~/.failproofai/hook.log`에 기록되며, 기본 제공 정책은 계속 실행됩니다). 전체 가이드는 [docs/custom-hooks.mdx](docs/custom-hooks.mdx)를 참고하세요.
228
+
229
+ ### 컨벤션 기반 정책 (v0.0.2-beta.7 이상)
230
+
231
+ `.failproofai/policies/` 디렉토리에 `*policies.{js,mjs,ts}` 파일을 추가하면 자동으로 로드됩니다 — `--custom` 플래그나 설정 변경이 필요 없습니다. git 훅처럼 파일을 추가하기만 하면 바로 동작합니다.
232
+
233
+ ```text
234
+ # 프로젝트 수준 — git에 커밋되어 팀과 공유
235
+ .failproofai/policies/security-policies.mjs
236
+ .failproofai/policies/workflow-policies.mjs
237
+
238
+ # 사용자 수준 — 개인용, 모든 프로젝트에 적용
239
+ ~/.failproofai/policies/my-policies.mjs
240
+ ```
241
+
242
+ 두 수준 모두 로드됩니다 (합집합). 각 디렉토리 내 파일은 알파벳 순서로 로드됩니다. 순서를 제어하려면 `01-`, `02-` 등의 접두사를 사용하세요. 바로 사용 가능한 예제는 [examples/convention-policies/](examples/convention-policies/)를 참고하세요.
243
+
244
+ ---
245
+
246
+ ## 텔레메트리
247
+
248
+ Failproof AI는 기능 사용 현황을 파악하기 위해 PostHog를 통해 익명 사용 텔레메트리를 수집합니다. 세션 내용, 파일 이름, 도구 입력, 개인 정보는 절대 전송되지 않습니다.
249
+
250
+ 비활성화 방법:
251
+
252
+ ```bash
253
+ FAILPROOFAI_TELEMETRY_DISABLED=1 failproofai
254
+ ```
255
+
256
+ ---
257
+
258
+ ## 문서
259
+
260
+ | 가이드 | 설명 |
261
+ |--------|------|
262
+ | [시작하기](docs/getting-started.mdx) | 설치 및 첫 단계 |
263
+ | [기본 제공 정책](docs/built-in-policies.mdx) | 파라미터 포함 30가지 기본 정책 전체 목록 |
264
+ | [커스텀 정책](docs/custom-policies.mdx) | 나만의 정책 작성하기 |
265
+ | [설정](docs/configuration.mdx) | 설정 파일 형식 및 스코프 병합 |
266
+ | [대시보드](docs/dashboard.mdx) | 세션 모니터링 및 정책 활동 검토 |
267
+ | [아키텍처](docs/architecture.mdx) | 훅 시스템 동작 원리 |
268
+ | [테스팅](docs/testing.mdx) | 테스트 실행 및 새 테스트 작성 |
269
+
270
+ ### 문서 로컬 실행
271
+
272
+ ```bash
273
+ docker build -f Dockerfile.docs -t failproofai-docs .
274
+ docker run --rm -p 3000:3000 failproofai-docs
275
+ ```
276
+
277
+ `http://localhost:3000`에서 Mintlify 문서 사이트를 엽니다. docs 디렉토리를 마운트하면 컨테이너가 변경 사항을 감시합니다:
278
+
279
+ ```bash
280
+ docker run --rm -p 3000:3000 -v $(pwd)/docs:/app/docs failproofai-docs
281
+ ```
282
+
283
+ ---
284
+
285
+ ## failproofai 기여자를 위한 참고 사항
286
+
287
+ 이 저장소의 `.claude/settings.json`은 표준 `npx -y failproofai` 명령 대신 `bun ./bin/failproofai.mjs --hook <EventType>`을 사용합니다. failproofai 프로젝트 내에서 `npx -y failproofai`를 실행하면 자기 참조 충돌이 발생하기 때문입니다.
288
+
289
+ 다른 모든 저장소에서는 `npx -y failproofai` 방식을 권장하며, 다음 명령으로 설치할 수 있습니다:
290
+
291
+ ```bash
292
+ failproofai policies --install --scope project
293
+ ```
294
+
295
+ ## 기여하기
296
+
297
+ [CONTRIBUTING.md](CONTRIBUTING.md)를 참고하세요.
298
+
299
+ ---
300
+
301
+ ## 라이선스
302
+
303
+ [LICENSE](LICENSE)를 참고하세요.
304
+
305
+ ---
306
+
307
+ **ExosphereHost: 에이전트를 위한 신뢰성 연구소**가 개발하고 유지 관리합니다. 저희는 자체 에이전트, 소프트웨어, 전문 지식을 통해 기업과 스타트업이 AI 에이전트의 신뢰성을 향상시킬 수 있도록 돕고 있습니다. 자세한 내용은 [exosphere.host](https://exosphere.host)를 방문하세요.