failproofai 0.0.6-beta.2 → 0.0.6-beta.4

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 (511) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +7 -1
  5. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  6. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  10. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  11. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  12. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  13. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  14. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  16. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  19. package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
  20. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
  21. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
  22. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
  23. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  24. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  25. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  26. package/.next/standalone/.next/server/app/index.html +1 -1
  27. package/.next/standalone/.next/server/app/index.rsc +16 -16
  28. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  29. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
  30. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
  31. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
  32. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  33. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  34. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
  37. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  40. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  43. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  44. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  47. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +1 -1
  50. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
  51. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
  52. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
  53. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
  54. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
  55. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
  56. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0i5kvry._.js → [root-of-the-server]__0om-5pe._.js} +2 -2
  57. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +2 -2
  58. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__05akje6._.js → [root-of-the-server]__111.vxi._.js} +2 -2
  59. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
  60. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
  61. package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
  62. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
  63. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
  64. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js +1 -1
  65. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  66. package/.next/standalone/.next/server/pages/404.html +2 -2
  67. package/.next/standalone/.next/server/pages/500.html +1 -1
  68. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
  70. package/.next/standalone/.next/static/chunks/{05j1px0r8yzh6.js → 02dqjyv6_9mhq.js} +2 -2
  71. package/.next/standalone/.next/static/chunks/{14cl9poem30dq.js → 070orfsl6.xal.js} +1 -1
  72. package/.next/standalone/.next/static/chunks/0mir9jdxn35~s.css +1 -0
  73. package/.next/standalone/.next/static/chunks/{00j0rr7rh8ef8.js → 0o547jv-k_k35.js} +1 -1
  74. package/.next/standalone/.next/static/chunks/{0ijk_kek9_wyx.js → 0pk2h2.mjxy.m.js} +1 -1
  75. package/.next/standalone/.next/static/chunks/{0xpl.oscrakvx.js → 0rcwkbh24w38b.js} +1 -1
  76. package/.next/standalone/.next/static/chunks/{1052sguyd-.ka.js → 140xx_tfr~lm_.js} +1 -1
  77. package/.next/standalone/.next/static/chunks/{0npb~873.wvg3.js → 169_e4dq~1~b6.js} +1 -1
  78. package/.next/standalone/.next/static/chunks/{0badv41uxa56..js → 17ne4p.1sw1jy.js} +1 -1
  79. package/.next/standalone/next.config.ts +6 -0
  80. package/.next/standalone/package.json +2 -2
  81. package/.next/standalone/server.js +1 -1
  82. package/bin/failproofai.mjs +91 -4
  83. package/dist/cli.mjs +1155 -54
  84. package/package.json +2 -2
  85. package/scripts/prune-standalone.mjs +128 -0
  86. package/src/auth/login.ts +104 -0
  87. package/src/auth/logout.ts +50 -0
  88. package/src/auth/token-store.ts +64 -0
  89. package/src/hooks/builtin-policies.ts +22 -20
  90. package/src/hooks/handler.ts +35 -15
  91. package/src/relay/daemon.ts +362 -0
  92. package/src/relay/pid.ts +76 -0
  93. package/src/relay/queue.ts +225 -0
  94. package/.next/standalone/.claude/settings.json +0 -316
  95. package/.next/standalone/.failproofai/policies/review-policies.mjs +0 -113
  96. package/.next/standalone/.failproofai/policies/workflow-policies.mjs +0 -63
  97. package/.next/standalone/.failproofai/policies-config.json +0 -39
  98. package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +0 -1
  99. package/.next/standalone/AGENTS.md +0 -80
  100. package/.next/standalone/CHANGELOG.md +0 -151
  101. package/.next/standalone/CLAUDE.md +0 -165
  102. package/.next/standalone/CONTRIBUTING.md +0 -76
  103. package/.next/standalone/Dockerfile.docs +0 -12
  104. package/.next/standalone/LICENSE +0 -42
  105. package/.next/standalone/README.md +0 -301
  106. package/.next/standalone/bin/failproofai.mjs +0 -352
  107. package/.next/standalone/bun.lock +0 -1119
  108. package/.next/standalone/components.json +0 -23
  109. package/.next/standalone/dist/cli.mjs +0 -3595
  110. package/.next/standalone/dist/index.js +0 -80
  111. package/.next/standalone/docs/ar/architecture.mdx +0 -334
  112. package/.next/standalone/docs/ar/built-in-policies.mdx +0 -574
  113. package/.next/standalone/docs/ar/cli/dashboard.mdx +0 -28
  114. package/.next/standalone/docs/ar/cli/environment-variables.mdx +0 -34
  115. package/.next/standalone/docs/ar/cli/hook.mdx +0 -31
  116. package/.next/standalone/docs/ar/cli/install-policies.mdx +0 -48
  117. package/.next/standalone/docs/ar/cli/list-policies.mdx +0 -31
  118. package/.next/standalone/docs/ar/cli/remove-policies.mdx +0 -43
  119. package/.next/standalone/docs/ar/cli/version.mdx +0 -13
  120. package/.next/standalone/docs/ar/configuration.mdx +0 -223
  121. package/.next/standalone/docs/ar/custom-policies.mdx +0 -354
  122. package/.next/standalone/docs/ar/dashboard.mdx +0 -142
  123. package/.next/standalone/docs/ar/examples.mdx +0 -307
  124. package/.next/standalone/docs/ar/for-agents.mdx +0 -39
  125. package/.next/standalone/docs/ar/getting-started.mdx +0 -187
  126. package/.next/standalone/docs/ar/introduction.mdx +0 -58
  127. package/.next/standalone/docs/ar/package-aliases.mdx +0 -82
  128. package/.next/standalone/docs/ar/testing.mdx +0 -261
  129. package/.next/standalone/docs/architecture.mdx +0 -332
  130. package/.next/standalone/docs/built-in-policies.mdx +0 -574
  131. package/.next/standalone/docs/cli/dashboard.mdx +0 -28
  132. package/.next/standalone/docs/cli/environment-variables.mdx +0 -34
  133. package/.next/standalone/docs/cli/hook.mdx +0 -30
  134. package/.next/standalone/docs/cli/install-policies.mdx +0 -47
  135. package/.next/standalone/docs/cli/list-policies.mdx +0 -31
  136. package/.next/standalone/docs/cli/remove-policies.mdx +0 -43
  137. package/.next/standalone/docs/cli/version.mdx +0 -12
  138. package/.next/standalone/docs/configuration.mdx +0 -222
  139. package/.next/standalone/docs/custom-policies.mdx +0 -353
  140. package/.next/standalone/docs/dashboard.mdx +0 -142
  141. package/.next/standalone/docs/de/architecture.mdx +0 -332
  142. package/.next/standalone/docs/de/built-in-policies.mdx +0 -574
  143. package/.next/standalone/docs/de/cli/dashboard.mdx +0 -28
  144. package/.next/standalone/docs/de/cli/environment-variables.mdx +0 -34
  145. package/.next/standalone/docs/de/cli/hook.mdx +0 -30
  146. package/.next/standalone/docs/de/cli/install-policies.mdx +0 -47
  147. package/.next/standalone/docs/de/cli/list-policies.mdx +0 -31
  148. package/.next/standalone/docs/de/cli/remove-policies.mdx +0 -43
  149. package/.next/standalone/docs/de/cli/version.mdx +0 -12
  150. package/.next/standalone/docs/de/configuration.mdx +0 -222
  151. package/.next/standalone/docs/de/custom-policies.mdx +0 -353
  152. package/.next/standalone/docs/de/dashboard.mdx +0 -142
  153. package/.next/standalone/docs/de/examples.mdx +0 -307
  154. package/.next/standalone/docs/de/for-agents.mdx +0 -38
  155. package/.next/standalone/docs/de/getting-started.mdx +0 -186
  156. package/.next/standalone/docs/de/introduction.mdx +0 -57
  157. package/.next/standalone/docs/de/package-aliases.mdx +0 -82
  158. package/.next/standalone/docs/de/testing.mdx +0 -260
  159. package/.next/standalone/docs/docs.json +0 -1002
  160. package/.next/standalone/docs/es/architecture.mdx +0 -332
  161. package/.next/standalone/docs/es/built-in-policies.mdx +0 -574
  162. package/.next/standalone/docs/es/cli/dashboard.mdx +0 -28
  163. package/.next/standalone/docs/es/cli/environment-variables.mdx +0 -34
  164. package/.next/standalone/docs/es/cli/hook.mdx +0 -30
  165. package/.next/standalone/docs/es/cli/install-policies.mdx +0 -47
  166. package/.next/standalone/docs/es/cli/list-policies.mdx +0 -31
  167. package/.next/standalone/docs/es/cli/remove-policies.mdx +0 -43
  168. package/.next/standalone/docs/es/cli/version.mdx +0 -12
  169. package/.next/standalone/docs/es/configuration.mdx +0 -222
  170. package/.next/standalone/docs/es/custom-policies.mdx +0 -353
  171. package/.next/standalone/docs/es/dashboard.mdx +0 -142
  172. package/.next/standalone/docs/es/examples.mdx +0 -307
  173. package/.next/standalone/docs/es/for-agents.mdx +0 -38
  174. package/.next/standalone/docs/es/getting-started.mdx +0 -186
  175. package/.next/standalone/docs/es/introduction.mdx +0 -57
  176. package/.next/standalone/docs/es/package-aliases.mdx +0 -82
  177. package/.next/standalone/docs/es/testing.mdx +0 -260
  178. package/.next/standalone/docs/examples.mdx +0 -307
  179. package/.next/standalone/docs/favicon.ico +0 -0
  180. package/.next/standalone/docs/for-agents.mdx +0 -38
  181. package/.next/standalone/docs/fr/architecture.mdx +0 -332
  182. package/.next/standalone/docs/fr/built-in-policies.mdx +0 -574
  183. package/.next/standalone/docs/fr/cli/dashboard.mdx +0 -28
  184. package/.next/standalone/docs/fr/cli/environment-variables.mdx +0 -34
  185. package/.next/standalone/docs/fr/cli/hook.mdx +0 -30
  186. package/.next/standalone/docs/fr/cli/install-policies.mdx +0 -47
  187. package/.next/standalone/docs/fr/cli/list-policies.mdx +0 -31
  188. package/.next/standalone/docs/fr/cli/remove-policies.mdx +0 -43
  189. package/.next/standalone/docs/fr/cli/version.mdx +0 -12
  190. package/.next/standalone/docs/fr/configuration.mdx +0 -222
  191. package/.next/standalone/docs/fr/custom-policies.mdx +0 -353
  192. package/.next/standalone/docs/fr/dashboard.mdx +0 -142
  193. package/.next/standalone/docs/fr/examples.mdx +0 -307
  194. package/.next/standalone/docs/fr/for-agents.mdx +0 -38
  195. package/.next/standalone/docs/fr/getting-started.mdx +0 -186
  196. package/.next/standalone/docs/fr/introduction.mdx +0 -57
  197. package/.next/standalone/docs/fr/package-aliases.mdx +0 -82
  198. package/.next/standalone/docs/fr/testing.mdx +0 -260
  199. package/.next/standalone/docs/getting-started.mdx +0 -186
  200. package/.next/standalone/docs/he/architecture.mdx +0 -333
  201. package/.next/standalone/docs/he/built-in-policies.mdx +0 -574
  202. package/.next/standalone/docs/he/cli/dashboard.mdx +0 -28
  203. package/.next/standalone/docs/he/cli/environment-variables.mdx +0 -34
  204. package/.next/standalone/docs/he/cli/hook.mdx +0 -30
  205. package/.next/standalone/docs/he/cli/install-policies.mdx +0 -47
  206. package/.next/standalone/docs/he/cli/list-policies.mdx +0 -32
  207. package/.next/standalone/docs/he/cli/remove-policies.mdx +0 -43
  208. package/.next/standalone/docs/he/cli/version.mdx +0 -12
  209. package/.next/standalone/docs/he/configuration.mdx +0 -223
  210. package/.next/standalone/docs/he/custom-policies.mdx +0 -353
  211. package/.next/standalone/docs/he/dashboard.mdx +0 -142
  212. package/.next/standalone/docs/he/examples.mdx +0 -307
  213. package/.next/standalone/docs/he/for-agents.mdx +0 -38
  214. package/.next/standalone/docs/he/getting-started.mdx +0 -186
  215. package/.next/standalone/docs/he/introduction.mdx +0 -57
  216. package/.next/standalone/docs/he/package-aliases.mdx +0 -82
  217. package/.next/standalone/docs/he/testing.mdx +0 -260
  218. package/.next/standalone/docs/hi/architecture.mdx +0 -334
  219. package/.next/standalone/docs/hi/built-in-policies.mdx +0 -576
  220. package/.next/standalone/docs/hi/cli/dashboard.mdx +0 -28
  221. package/.next/standalone/docs/hi/cli/environment-variables.mdx +0 -34
  222. package/.next/standalone/docs/hi/cli/hook.mdx +0 -30
  223. package/.next/standalone/docs/hi/cli/install-policies.mdx +0 -47
  224. package/.next/standalone/docs/hi/cli/list-policies.mdx +0 -31
  225. package/.next/standalone/docs/hi/cli/remove-policies.mdx +0 -43
  226. package/.next/standalone/docs/hi/cli/version.mdx +0 -12
  227. package/.next/standalone/docs/hi/configuration.mdx +0 -222
  228. package/.next/standalone/docs/hi/custom-policies.mdx +0 -354
  229. package/.next/standalone/docs/hi/dashboard.mdx +0 -142
  230. package/.next/standalone/docs/hi/examples.mdx +0 -309
  231. package/.next/standalone/docs/hi/for-agents.mdx +0 -38
  232. package/.next/standalone/docs/hi/getting-started.mdx +0 -187
  233. package/.next/standalone/docs/hi/introduction.mdx +0 -57
  234. package/.next/standalone/docs/hi/package-aliases.mdx +0 -82
  235. package/.next/standalone/docs/hi/testing.mdx +0 -260
  236. package/.next/standalone/docs/i18n/README.ar.md +0 -312
  237. package/.next/standalone/docs/i18n/README.de.md +0 -307
  238. package/.next/standalone/docs/i18n/README.es.md +0 -307
  239. package/.next/standalone/docs/i18n/README.fr.md +0 -307
  240. package/.next/standalone/docs/i18n/README.he.md +0 -312
  241. package/.next/standalone/docs/i18n/README.hi.md +0 -307
  242. package/.next/standalone/docs/i18n/README.it.md +0 -307
  243. package/.next/standalone/docs/i18n/README.ja.md +0 -307
  244. package/.next/standalone/docs/i18n/README.ko.md +0 -307
  245. package/.next/standalone/docs/i18n/README.pt-br.md +0 -307
  246. package/.next/standalone/docs/i18n/README.ru.md +0 -308
  247. package/.next/standalone/docs/i18n/README.tr.md +0 -307
  248. package/.next/standalone/docs/i18n/README.vi.md +0 -307
  249. package/.next/standalone/docs/i18n/README.zh.md +0 -307
  250. package/.next/standalone/docs/introduction.mdx +0 -57
  251. package/.next/standalone/docs/it/architecture.mdx +0 -334
  252. package/.next/standalone/docs/it/built-in-policies.mdx +0 -574
  253. package/.next/standalone/docs/it/cli/dashboard.mdx +0 -28
  254. package/.next/standalone/docs/it/cli/environment-variables.mdx +0 -34
  255. package/.next/standalone/docs/it/cli/hook.mdx +0 -30
  256. package/.next/standalone/docs/it/cli/install-policies.mdx +0 -47
  257. package/.next/standalone/docs/it/cli/list-policies.mdx +0 -31
  258. package/.next/standalone/docs/it/cli/remove-policies.mdx +0 -43
  259. package/.next/standalone/docs/it/cli/version.mdx +0 -12
  260. package/.next/standalone/docs/it/configuration.mdx +0 -222
  261. package/.next/standalone/docs/it/custom-policies.mdx +0 -353
  262. package/.next/standalone/docs/it/dashboard.mdx +0 -142
  263. package/.next/standalone/docs/it/examples.mdx +0 -307
  264. package/.next/standalone/docs/it/for-agents.mdx +0 -38
  265. package/.next/standalone/docs/it/getting-started.mdx +0 -186
  266. package/.next/standalone/docs/it/introduction.mdx +0 -57
  267. package/.next/standalone/docs/it/package-aliases.mdx +0 -82
  268. package/.next/standalone/docs/it/testing.mdx +0 -260
  269. package/.next/standalone/docs/ja/architecture.mdx +0 -332
  270. package/.next/standalone/docs/ja/built-in-policies.mdx +0 -572
  271. package/.next/standalone/docs/ja/cli/dashboard.mdx +0 -28
  272. package/.next/standalone/docs/ja/cli/environment-variables.mdx +0 -34
  273. package/.next/standalone/docs/ja/cli/hook.mdx +0 -30
  274. package/.next/standalone/docs/ja/cli/install-policies.mdx +0 -47
  275. package/.next/standalone/docs/ja/cli/list-policies.mdx +0 -31
  276. package/.next/standalone/docs/ja/cli/remove-policies.mdx +0 -43
  277. package/.next/standalone/docs/ja/cli/version.mdx +0 -12
  278. package/.next/standalone/docs/ja/configuration.mdx +0 -222
  279. package/.next/standalone/docs/ja/custom-policies.mdx +0 -353
  280. package/.next/standalone/docs/ja/dashboard.mdx +0 -142
  281. package/.next/standalone/docs/ja/examples.mdx +0 -307
  282. package/.next/standalone/docs/ja/for-agents.mdx +0 -38
  283. package/.next/standalone/docs/ja/getting-started.mdx +0 -186
  284. package/.next/standalone/docs/ja/introduction.mdx +0 -57
  285. package/.next/standalone/docs/ja/package-aliases.mdx +0 -82
  286. package/.next/standalone/docs/ja/testing.mdx +0 -260
  287. package/.next/standalone/docs/ko/architecture.mdx +0 -332
  288. package/.next/standalone/docs/ko/built-in-policies.mdx +0 -572
  289. package/.next/standalone/docs/ko/cli/dashboard.mdx +0 -28
  290. package/.next/standalone/docs/ko/cli/environment-variables.mdx +0 -34
  291. package/.next/standalone/docs/ko/cli/hook.mdx +0 -30
  292. package/.next/standalone/docs/ko/cli/install-policies.mdx +0 -47
  293. package/.next/standalone/docs/ko/cli/list-policies.mdx +0 -31
  294. package/.next/standalone/docs/ko/cli/remove-policies.mdx +0 -43
  295. package/.next/standalone/docs/ko/cli/version.mdx +0 -12
  296. package/.next/standalone/docs/ko/configuration.mdx +0 -222
  297. package/.next/standalone/docs/ko/custom-policies.mdx +0 -353
  298. package/.next/standalone/docs/ko/dashboard.mdx +0 -142
  299. package/.next/standalone/docs/ko/examples.mdx +0 -307
  300. package/.next/standalone/docs/ko/for-agents.mdx +0 -38
  301. package/.next/standalone/docs/ko/getting-started.mdx +0 -186
  302. package/.next/standalone/docs/ko/introduction.mdx +0 -57
  303. package/.next/standalone/docs/ko/package-aliases.mdx +0 -82
  304. package/.next/standalone/docs/ko/testing.mdx +0 -260
  305. package/.next/standalone/docs/logo/dark.svg +0 -21
  306. package/.next/standalone/docs/logo/exosphere-dark.png +0 -0
  307. package/.next/standalone/docs/logo/exosphere-light.png +0 -0
  308. package/.next/standalone/docs/logo/light.svg +0 -21
  309. package/.next/standalone/docs/package-aliases.mdx +0 -82
  310. package/.next/standalone/docs/pt-br/architecture.mdx +0 -332
  311. package/.next/standalone/docs/pt-br/built-in-policies.mdx +0 -574
  312. package/.next/standalone/docs/pt-br/cli/dashboard.mdx +0 -28
  313. package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +0 -34
  314. package/.next/standalone/docs/pt-br/cli/hook.mdx +0 -30
  315. package/.next/standalone/docs/pt-br/cli/install-policies.mdx +0 -47
  316. package/.next/standalone/docs/pt-br/cli/list-policies.mdx +0 -31
  317. package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +0 -43
  318. package/.next/standalone/docs/pt-br/cli/version.mdx +0 -12
  319. package/.next/standalone/docs/pt-br/configuration.mdx +0 -222
  320. package/.next/standalone/docs/pt-br/custom-policies.mdx +0 -353
  321. package/.next/standalone/docs/pt-br/dashboard.mdx +0 -142
  322. package/.next/standalone/docs/pt-br/examples.mdx +0 -307
  323. package/.next/standalone/docs/pt-br/for-agents.mdx +0 -38
  324. package/.next/standalone/docs/pt-br/getting-started.mdx +0 -186
  325. package/.next/standalone/docs/pt-br/introduction.mdx +0 -57
  326. package/.next/standalone/docs/pt-br/package-aliases.mdx +0 -82
  327. package/.next/standalone/docs/pt-br/testing.mdx +0 -260
  328. package/.next/standalone/docs/ru/architecture.mdx +0 -333
  329. package/.next/standalone/docs/ru/built-in-policies.mdx +0 -574
  330. package/.next/standalone/docs/ru/cli/dashboard.mdx +0 -28
  331. package/.next/standalone/docs/ru/cli/environment-variables.mdx +0 -34
  332. package/.next/standalone/docs/ru/cli/hook.mdx +0 -30
  333. package/.next/standalone/docs/ru/cli/install-policies.mdx +0 -48
  334. package/.next/standalone/docs/ru/cli/list-policies.mdx +0 -32
  335. package/.next/standalone/docs/ru/cli/remove-policies.mdx +0 -43
  336. package/.next/standalone/docs/ru/cli/version.mdx +0 -12
  337. package/.next/standalone/docs/ru/configuration.mdx +0 -222
  338. package/.next/standalone/docs/ru/custom-policies.mdx +0 -354
  339. package/.next/standalone/docs/ru/dashboard.mdx +0 -142
  340. package/.next/standalone/docs/ru/examples.mdx +0 -309
  341. package/.next/standalone/docs/ru/for-agents.mdx +0 -38
  342. package/.next/standalone/docs/ru/getting-started.mdx +0 -186
  343. package/.next/standalone/docs/ru/introduction.mdx +0 -57
  344. package/.next/standalone/docs/ru/package-aliases.mdx +0 -82
  345. package/.next/standalone/docs/ru/testing.mdx +0 -260
  346. package/.next/standalone/docs/testing.mdx +0 -260
  347. package/.next/standalone/docs/tr/architecture.mdx +0 -333
  348. package/.next/standalone/docs/tr/built-in-policies.mdx +0 -574
  349. package/.next/standalone/docs/tr/cli/dashboard.mdx +0 -28
  350. package/.next/standalone/docs/tr/cli/environment-variables.mdx +0 -34
  351. package/.next/standalone/docs/tr/cli/hook.mdx +0 -30
  352. package/.next/standalone/docs/tr/cli/install-policies.mdx +0 -47
  353. package/.next/standalone/docs/tr/cli/list-policies.mdx +0 -31
  354. package/.next/standalone/docs/tr/cli/remove-policies.mdx +0 -44
  355. package/.next/standalone/docs/tr/cli/version.mdx +0 -12
  356. package/.next/standalone/docs/tr/configuration.mdx +0 -222
  357. package/.next/standalone/docs/tr/custom-policies.mdx +0 -353
  358. package/.next/standalone/docs/tr/dashboard.mdx +0 -142
  359. package/.next/standalone/docs/tr/examples.mdx +0 -308
  360. package/.next/standalone/docs/tr/for-agents.mdx +0 -38
  361. package/.next/standalone/docs/tr/getting-started.mdx +0 -186
  362. package/.next/standalone/docs/tr/introduction.mdx +0 -57
  363. package/.next/standalone/docs/tr/package-aliases.mdx +0 -82
  364. package/.next/standalone/docs/tr/testing.mdx +0 -260
  365. package/.next/standalone/docs/vi/architecture.mdx +0 -334
  366. package/.next/standalone/docs/vi/built-in-policies.mdx +0 -575
  367. package/.next/standalone/docs/vi/cli/dashboard.mdx +0 -28
  368. package/.next/standalone/docs/vi/cli/environment-variables.mdx +0 -34
  369. package/.next/standalone/docs/vi/cli/hook.mdx +0 -30
  370. package/.next/standalone/docs/vi/cli/install-policies.mdx +0 -47
  371. package/.next/standalone/docs/vi/cli/list-policies.mdx +0 -31
  372. package/.next/standalone/docs/vi/cli/remove-policies.mdx +0 -43
  373. package/.next/standalone/docs/vi/cli/version.mdx +0 -13
  374. package/.next/standalone/docs/vi/configuration.mdx +0 -222
  375. package/.next/standalone/docs/vi/custom-policies.mdx +0 -353
  376. package/.next/standalone/docs/vi/dashboard.mdx +0 -142
  377. package/.next/standalone/docs/vi/examples.mdx +0 -308
  378. package/.next/standalone/docs/vi/for-agents.mdx +0 -38
  379. package/.next/standalone/docs/vi/getting-started.mdx +0 -186
  380. package/.next/standalone/docs/vi/introduction.mdx +0 -57
  381. package/.next/standalone/docs/vi/package-aliases.mdx +0 -82
  382. package/.next/standalone/docs/vi/testing.mdx +0 -260
  383. package/.next/standalone/docs/zh/architecture.mdx +0 -332
  384. package/.next/standalone/docs/zh/built-in-policies.mdx +0 -572
  385. package/.next/standalone/docs/zh/cli/dashboard.mdx +0 -28
  386. package/.next/standalone/docs/zh/cli/environment-variables.mdx +0 -34
  387. package/.next/standalone/docs/zh/cli/hook.mdx +0 -30
  388. package/.next/standalone/docs/zh/cli/install-policies.mdx +0 -47
  389. package/.next/standalone/docs/zh/cli/list-policies.mdx +0 -31
  390. package/.next/standalone/docs/zh/cli/remove-policies.mdx +0 -43
  391. package/.next/standalone/docs/zh/cli/version.mdx +0 -12
  392. package/.next/standalone/docs/zh/configuration.mdx +0 -222
  393. package/.next/standalone/docs/zh/custom-policies.mdx +0 -353
  394. package/.next/standalone/docs/zh/dashboard.mdx +0 -142
  395. package/.next/standalone/docs/zh/examples.mdx +0 -307
  396. package/.next/standalone/docs/zh/for-agents.mdx +0 -38
  397. package/.next/standalone/docs/zh/getting-started.mdx +0 -186
  398. package/.next/standalone/docs/zh/introduction.mdx +0 -57
  399. package/.next/standalone/docs/zh/package-aliases.mdx +0 -82
  400. package/.next/standalone/docs/zh/testing.mdx +0 -260
  401. package/.next/standalone/eslint.config.mjs +0 -15
  402. package/.next/standalone/examples/convention-policies/security-policies.mjs +0 -40
  403. package/.next/standalone/examples/convention-policies/workflow-policies.mjs +0 -41
  404. package/.next/standalone/examples/policies-advanced/index.js +0 -103
  405. package/.next/standalone/examples/policies-advanced/utils.js +0 -35
  406. package/.next/standalone/examples/policies-basic.js +0 -77
  407. package/.next/standalone/examples/policies-notification.js +0 -104
  408. package/.next/standalone/node_modules/@img/colour/color.cjs +0 -1594
  409. package/.next/standalone/node_modules/@img/colour/index.cjs +0 -1
  410. package/.next/standalone/node_modules/@img/colour/package.json +0 -45
  411. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +0 -46
  412. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +0 -221
  413. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/index.js +0 -1
  414. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  415. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +0 -42
  416. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/versions.json +0 -30
  417. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +0 -46
  418. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +0 -221
  419. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +0 -1
  420. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  421. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +0 -42
  422. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +0 -30
  423. package/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  424. package/.next/standalone/node_modules/@img/sharp-linux-x64/package.json +0 -46
  425. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  426. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +0 -46
  427. package/.next/standalone/node_modules/detect-libc/lib/detect-libc.js +0 -313
  428. package/.next/standalone/node_modules/detect-libc/lib/elf.js +0 -39
  429. package/.next/standalone/node_modules/detect-libc/lib/filesystem.js +0 -51
  430. package/.next/standalone/node_modules/detect-libc/lib/process.js +0 -24
  431. package/.next/standalone/node_modules/detect-libc/package.json +0 -44
  432. package/.next/standalone/node_modules/sharp/lib/channel.js +0 -177
  433. package/.next/standalone/node_modules/sharp/lib/colour.js +0 -195
  434. package/.next/standalone/node_modules/sharp/lib/composite.js +0 -212
  435. package/.next/standalone/node_modules/sharp/lib/constructor.js +0 -499
  436. package/.next/standalone/node_modules/sharp/lib/index.js +0 -16
  437. package/.next/standalone/node_modules/sharp/lib/input.js +0 -809
  438. package/.next/standalone/node_modules/sharp/lib/is.js +0 -143
  439. package/.next/standalone/node_modules/sharp/lib/libvips.js +0 -207
  440. package/.next/standalone/node_modules/sharp/lib/operation.js +0 -1016
  441. package/.next/standalone/node_modules/sharp/lib/output.js +0 -1666
  442. package/.next/standalone/node_modules/sharp/lib/resize.js +0 -595
  443. package/.next/standalone/node_modules/sharp/lib/sharp.js +0 -121
  444. package/.next/standalone/node_modules/sharp/lib/utility.js +0 -291
  445. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/comparator.js +0 -143
  446. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/range.js +0 -557
  447. package/.next/standalone/node_modules/sharp/node_modules/semver/classes/semver.js +0 -333
  448. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/cmp.js +0 -54
  449. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/coerce.js +0 -62
  450. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/compare.js +0 -7
  451. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/eq.js +0 -5
  452. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gt.js +0 -5
  453. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/gte.js +0 -5
  454. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lt.js +0 -5
  455. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/lte.js +0 -5
  456. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/neq.js +0 -5
  457. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/parse.js +0 -18
  458. package/.next/standalone/node_modules/sharp/node_modules/semver/functions/satisfies.js +0 -12
  459. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/constants.js +0 -37
  460. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/debug.js +0 -11
  461. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/identifiers.js +0 -29
  462. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/lrucache.js +0 -42
  463. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/parse-options.js +0 -17
  464. package/.next/standalone/node_modules/sharp/node_modules/semver/internal/re.js +0 -223
  465. package/.next/standalone/node_modules/sharp/node_modules/semver/package.json +0 -78
  466. package/.next/standalone/node_modules/sharp/package.json +0 -202
  467. package/.next/standalone/scripts/alias-proxy.js +0 -18
  468. package/.next/standalone/scripts/dev.ts +0 -3
  469. package/.next/standalone/scripts/install-telemetry.mjs +0 -108
  470. package/.next/standalone/scripts/launch.ts +0 -83
  471. package/.next/standalone/scripts/parse-script-args.ts +0 -87
  472. package/.next/standalone/scripts/postinstall.mjs +0 -121
  473. package/.next/standalone/scripts/preuninstall.mjs +0 -131
  474. package/.next/standalone/scripts/publish-aliases.mjs +0 -87
  475. package/.next/standalone/scripts/start.ts +0 -3
  476. package/.next/standalone/scripts/sync-hook-events-prompt.md +0 -60
  477. package/.next/standalone/scripts/translate-docs/cache.ts +0 -62
  478. package/.next/standalone/scripts/translate-docs/cli.ts +0 -357
  479. package/.next/standalone/scripts/translate-docs/config.ts +0 -248
  480. package/.next/standalone/scripts/translate-docs/mdx-translator.ts +0 -153
  481. package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +0 -107
  482. package/.next/standalone/scripts/translate-docs/readme-translator.ts +0 -154
  483. package/.next/standalone/scripts/translate-docs/translator.ts +0 -68
  484. package/.next/standalone/scripts/translate-docs/types.ts +0 -43
  485. package/.next/standalone/src/cli-error.ts +0 -18
  486. package/.next/standalone/src/hooks/builtin-policies.ts +0 -1613
  487. package/.next/standalone/src/hooks/custom-hooks-loader.ts +0 -205
  488. package/.next/standalone/src/hooks/custom-hooks-registry.ts +0 -30
  489. package/.next/standalone/src/hooks/handler.ts +0 -202
  490. package/.next/standalone/src/hooks/hook-activity-store.ts +0 -349
  491. package/.next/standalone/src/hooks/hook-logger.ts +0 -133
  492. package/.next/standalone/src/hooks/hook-telemetry.ts +0 -43
  493. package/.next/standalone/src/hooks/hooks-config.ts +0 -166
  494. package/.next/standalone/src/hooks/install-prompt.ts +0 -357
  495. package/.next/standalone/src/hooks/llm-client.ts +0 -90
  496. package/.next/standalone/src/hooks/loader-utils.ts +0 -178
  497. package/.next/standalone/src/hooks/manager.ts +0 -692
  498. package/.next/standalone/src/hooks/policy-evaluator.ts +0 -224
  499. package/.next/standalone/src/hooks/policy-helpers.ts +0 -16
  500. package/.next/standalone/src/hooks/policy-registry.ts +0 -90
  501. package/.next/standalone/src/hooks/policy-types.ts +0 -77
  502. package/.next/standalone/src/hooks/types.ts +0 -63
  503. package/.next/standalone/src/index.ts +0 -19
  504. package/.next/standalone/src/posthog-key.ts +0 -5
  505. package/.next/standalone/tailwind.config.ts +0 -11
  506. package/.next/standalone/tsconfig.json +0 -42
  507. package/.next/standalone/vitest.config.e2e.mts +0 -24
  508. package/.next/standalone/vitest.config.mts +0 -23
  509. /package/.next/standalone/.next/static/{A9pNTZdoYJTVyPAYwQMx5 → wOkJXoch1UmRAmyIuKZWc}/_buildManifest.js +0 -0
  510. /package/.next/standalone/.next/static/{A9pNTZdoYJTVyPAYwQMx5 → wOkJXoch1UmRAmyIuKZWc}/_clientMiddlewareManifest.js +0 -0
  511. /package/.next/standalone/.next/static/{A9pNTZdoYJTVyPAYwQMx5 → wOkJXoch1UmRAmyIuKZWc}/_ssgManifest.js +0 -0
@@ -1,307 +0,0 @@
1
- ---
2
- title: 使用例
3
- description: "Claude Code と Agents SDK にフックを設定する方法"
4
- icon: book-open
5
- ---
6
-
7
- よく使われるシナリオのすぐに使えるサンプル集です。インストール方法と期待される動作をそれぞれ示します。
8
-
9
- ---
10
-
11
- ## Claude Code 向けフックの設定
12
-
13
- Failproof AI は Claude Code の[フックシステム](https://docs.anthropic.com/en/docs/claude-code/hooks)を通じて連携します。`failproofai policies --install` を実行すると、Claude Code の `settings.json` にフックコマンドが登録され、すべてのツール呼び出し時に発火します。
14
-
15
- <Steps>
16
- <Step title="failproofai をインストールする">
17
- ```bash
18
- npm install -g failproofai
19
- ```
20
- </Step>
21
- <Step title="すべての組み込みポリシーを有効にする">
22
- ```bash
23
- failproofai policies --install
24
- ```
25
- </Step>
26
- <Step title="フックが登録されていることを確認する">
27
- ```bash
28
- cat ~/.claude/settings.json | grep failproofai
29
- ```
30
-
31
- `PreToolUse`、`PostToolUse`、`Notification`、`Stop` イベントのフックエントリーが表示されるはずです。
32
- </Step>
33
- <Step title="Claude Code を起動する">
34
- ```bash
35
- claude
36
- ```
37
-
38
- ポリシーがすべてのツール呼び出しで自動的に実行されるようになります。Claude に `sudo rm -rf /` を実行するよう依頼してみてください — ブロックされます。
39
- </Step>
40
- </Steps>
41
-
42
- ---
43
-
44
- ## Agents SDK 向けフックの設定
45
-
46
- [Agents SDK](https://docs.anthropic.com/en/docs/agents-sdk) を使って開発している場合、同じフックシステムをプログラムから利用できます。
47
-
48
- <Steps>
49
- <Step title="プロジェクトに failproofai をインストールする">
50
- ```bash
51
- npm install failproofai
52
- ```
53
- </Step>
54
- <Step title="エージェントにフックを設定する">
55
- エージェントプロセスの作成時にフックコマンドを渡します。フックは Claude Code と同様に stdin/stdout の JSON 形式で発火します。
56
-
57
- ```bash
58
- failproofai --hook PreToolUse # 各ツールの前に呼び出される
59
- failproofai --hook PostToolUse # 各ツールの後に呼び出される
60
- ```
61
- </Step>
62
- <Step title="エージェント用のカスタムポリシーを作成する">
63
- ```javascript
64
- import { customPolicies, allow, deny } from "failproofai";
65
-
66
- customPolicies.add({
67
- name: "limit-to-project-dir",
68
- description: "Keep the agent inside the project directory",
69
- match: { events: ["PreToolUse"] },
70
- fn: async (ctx) => {
71
- const path = String(ctx.toolInput?.file_path ?? "");
72
- if (path.startsWith("/") && !path.startsWith(ctx.session?.cwd ?? "")) {
73
- return deny("Agent is restricted to the project directory");
74
- }
75
- return allow();
76
- },
77
- });
78
- ```
79
- </Step>
80
- <Step title="カスタムポリシーをインストールする">
81
- ```bash
82
- failproofai policies --install --custom ./my-agent-policies.js
83
- ```
84
- </Step>
85
- </Steps>
86
-
87
- ---
88
-
89
- ## 破壊的なコマンドをブロックする
90
-
91
- 最も一般的なセットアップ — エージェントが取り返しのつかない操作を行わないようにします。
92
-
93
- ```bash
94
- failproofai policies --install block-sudo block-rm-rf block-force-push block-curl-pipe-sh
95
- ```
96
-
97
- この設定の効果:
98
- - `block-sudo` — すべての `sudo` コマンドをブロック
99
- - `block-rm-rf` — 再帰的なファイル削除をブロック
100
- - `block-force-push` — `git push --force` をブロック
101
- - `block-curl-pipe-sh` — リモートスクリプトをシェルにパイプする操作をブロック
102
-
103
- ---
104
-
105
- ## シークレットの漏洩を防ぐ
106
-
107
- ツールの出力に含まれる認証情報をエージェントが参照・漏洩しないようにします。
108
-
109
- ```bash
110
- failproofai policies --install sanitize-api-keys sanitize-jwt sanitize-connection-strings sanitize-bearer-tokens
111
- ```
112
-
113
- これらは `PostToolUse` で発火します — ツールの実行後、エージェントが出力を受け取る前にスクラブ処理が行われます。
114
-
115
- ---
116
-
117
- ## エージェントの待機時に Slack へアラートを送る
118
-
119
- 通知フックを使って、アイドル状態のアラートを Slack に転送します。
120
-
121
- ```javascript
122
- import { customPolicies, allow, instruct } from "failproofai";
123
-
124
- customPolicies.add({
125
- name: "slack-on-idle",
126
- description: "Alert Slack when the agent is waiting for input",
127
- match: { events: ["Notification"] },
128
- fn: async (ctx) => {
129
- const webhookUrl = process.env.SLACK_WEBHOOK_URL;
130
- if (!webhookUrl) return allow();
131
-
132
- const message = String(ctx.payload?.message ?? "Agent is waiting");
133
- const project = ctx.session?.cwd ?? "unknown";
134
-
135
- try {
136
- await fetch(webhookUrl, {
137
- method: "POST",
138
- headers: { "Content-Type": "application/json" },
139
- body: JSON.stringify({
140
- text: `*${message}*\nProject: \`${project}\``,
141
- }),
142
- signal: AbortSignal.timeout(5000),
143
- });
144
- } catch {
145
- // Slack に接続できない場合でもエージェントをブロックしない
146
- }
147
-
148
- return allow();
149
- },
150
- });
151
- ```
152
-
153
- インストール:
154
-
155
- ```bash
156
- SLACK_WEBHOOK_URL=https://hooks.slack.com/... failproofai policies --install --custom ./slack-alerts.js
157
- ```
158
-
159
- ---
160
-
161
- ## エージェントを特定のブランチに留める
162
-
163
- エージェントが他のブランチに切り替えたり、保護されたブランチにプッシュしたりできないようにします。
164
-
165
- ```javascript
166
- import { customPolicies, allow, deny } from "failproofai";
167
-
168
- customPolicies.add({
169
- name: "stay-on-branch",
170
- description: "Prevent the agent from checking out other branches",
171
- match: { events: ["PreToolUse"] },
172
- fn: async (ctx) => {
173
- if (ctx.toolName !== "Bash") return allow();
174
- const cmd = String(ctx.toolInput?.command ?? "");
175
- if (/git\s+checkout\s+(?!-b)/.test(cmd)) {
176
- return deny("Stay on the current branch. Create a new branch with -b if needed.");
177
- }
178
- return allow();
179
- },
180
- });
181
- ```
182
-
183
- ---
184
-
185
- ## コミット前にテストを必須にする
186
-
187
- コミットの前にテストを実行するようエージェントに促します。
188
-
189
- ```javascript
190
- import { customPolicies, allow, instruct } from "failproofai";
191
-
192
- customPolicies.add({
193
- name: "test-before-commit",
194
- description: "Remind the agent to run tests before committing",
195
- match: { events: ["PreToolUse"] },
196
- fn: async (ctx) => {
197
- if (ctx.toolName !== "Bash") return allow();
198
- const cmd = String(ctx.toolInput?.command ?? "");
199
- if (/git\s+commit/.test(cmd)) {
200
- return instruct("Run tests before committing. Use `npm test` or `bun test` first.");
201
- }
202
- return allow();
203
- },
204
- });
205
- ```
206
-
207
- ---
208
-
209
- ## 本番リポジトリをロックダウンする
210
-
211
- プロジェクトレベルの設定をコミットして、チーム全員が同じポリシーを適用できるようにします。
212
-
213
- リポジトリに `.failproofai/policies-config.json` を作成します:
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
- コミットします:
235
-
236
- ```bash
237
- git add .failproofai/policies-config.json
238
- git commit -m "Add failproofai team policies"
239
- ```
240
-
241
- failproofai をインストールしているすべてのチームメンバーが、これらのルールを自動的に取得します。
242
-
243
- ---
244
-
245
- ## コンベンションポリシーでチーム全体の品質基準を構築する
246
-
247
- 最も効果的なセットアップ: プロジェクトに合わせたポリシーを `.failproofai/policies/` にコミットします。チーム全員がインストールコマンドや設定変更なしに自動で適用されます。
248
-
249
- <Steps>
250
- <Step title="ディレクトリを作成してポリシーを追加する">
251
- ```bash
252
- mkdir -p .failproofai/policies
253
- ```
254
-
255
- ```js
256
- // .failproofai/policies/team-policies.mjs
257
- import { customPolicies, allow, deny, instruct } from "failproofai";
258
-
259
- // チームが使用するパッケージマネージャーを強制する
260
- // (組み込みの prefer-package-manager ポリシーを有効にしても構いません)
261
- customPolicies.add({
262
- name: "enforce-bun",
263
- match: { events: ["PreToolUse"] },
264
- fn: async (ctx) => {
265
- if (ctx.toolName !== "Bash") return allow();
266
- const cmd = String(ctx.toolInput?.command ?? "");
267
- if (/\bnpm\b/.test(cmd)) return deny("Use bun instead of npm.");
268
- return allow();
269
- },
270
- });
271
-
272
- // コミット前にテストを実行するようエージェントに促す
273
- customPolicies.add({
274
- name: "test-before-commit",
275
- match: { events: ["PreToolUse"] },
276
- fn: async (ctx) => {
277
- if (ctx.toolName !== "Bash") return allow();
278
- if (/git\s+commit/.test(ctx.toolInput?.command ?? "")) {
279
- return instruct("Run tests before committing.");
280
- }
281
- return allow();
282
- },
283
- });
284
- ```
285
- </Step>
286
- <Step title="git にコミットする">
287
- ```bash
288
- git add .failproofai/policies/
289
- git commit -m "Add team quality policies"
290
- ```
291
- </Step>
292
- <Step title="継続的に改善する">
293
- チームが新たな問題に直面するたびにポリシーを追加してプッシュしてください。全員が次の `git pull` 時にアップデートを受け取ります。これらのポリシーはチームとともに成長する、生きた品質基準になります。
294
- </Step>
295
- </Steps>
296
-
297
- ---
298
-
299
- ## その他のサンプル
300
-
301
- リポジトリの [`examples/`](https://github.com/exospherehost/failproofai/tree/main/examples) ディレクトリには以下が含まれています:
302
-
303
- | ファイル | 内容 |
304
- |------|---------------|
305
- | `policies-basic.js` | スターターポリシー — 本番環境への書き込み、force-push、パイプスクリプトのブロック |
306
- | `policies-notification.js` | アイドル通知とセッション終了時の Slack アラート |
307
- | `policies-advanced/index.js` | トランジティブインポート、非同期フック、PostToolUse 出力のスクラブ、Stop イベント処理 |
@@ -1,38 +0,0 @@
1
- ---
2
- title: "エージェント向け"
3
- description: "1つのコマンドでFailproof AIの知識をコーディングエージェントに追加できます。Claude Code、Cursor、Windsurfなどに対応しています。"
4
- ---
5
-
6
- 1つのコマンドで、Failproof AIのリファレンス全体をコーディングエージェントに追加できます。Claude Code、Cursor、Windsurf、その他スキルに対応しているエージェントであればどれでも利用可能です。
7
-
8
- ```bash
9
- npx skills add https://docs.befailproof.ai
10
- ```
11
-
12
- `npx skills` はインストール済みのエージェントを自動検出し、それぞれに適したフォーマットでスキルを追加します。
13
-
14
- ## スキルがカバーする内容
15
-
16
- | エリア | 含まれる内容 |
17
- |------|----------------|
18
- | ポリシー | 組み込みポリシー名、イベントタイプ、パラメータ、有効化/無効化 |
19
- | カスタムポリシー | `customPolicies.add()`、マッチフィルター、`allow`/`deny`/`instruct` API |
20
- | コンテキストオブジェクト | `ctx.eventType`、`ctx.toolName`、`ctx.toolInput`、`ctx.session` |
21
- | 設定 | `policies-config.json` の構造、スコープのマージ、`policyParams` |
22
- | CLI | `failproofai policies --install`、`--uninstall`、`--custom`、スコープ |
23
- | ダッシュボード | セッションビューワー、ポリシーアクティビティ、環境変数 |
24
- | アーキテクチャ | フックハンドラーのフロー、終了コード、stdin/stdout コントラクト |
25
-
26
- ## スキルの内容は完全ですか?
27
-
28
- Mintlify はナビゲーション内のすべてのページから `llms.txt` を生成します。Failproof AI のドキュメントは API 全体をカバーしており、すべてのポリシー、オプション、サンプルが含まれています。不足している内容が見つかった場合は、`https://docs.befailproof.ai/llms-full.txt` でソースを確認してください。
29
-
30
- 特定のコンテキストに絞り込みたい場合は、対象ページに直接リンクしてください:
31
-
32
- ```bash
33
- # カスタムポリシー API のみ
34
- npx skills add https://docs.befailproof.ai/custom-policies
35
-
36
- # 組み込みポリシーのみ
37
- npx skills add https://docs.befailproof.ai/built-in-policies
38
- ```
@@ -1,186 +0,0 @@
1
- ---
2
- title: はじめに
3
- description: "failproofaiをインストールし、ポリシーを有効化して、エージェントを安定して動かしましょう"
4
- icon: rocket
5
- ---
6
-
7
- ## 必要要件
8
-
9
- - **Node.js** >= 20.9.0
10
- - **Bun** >= 1.3.0(オプション — ソースからビルドする場合のみ必要)
11
-
12
- ---
13
-
14
- ## インストール
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
- ## クイックスタート
31
-
32
- <Steps>
33
- <Step title="ポリシーを有効化する">
34
- ポリシーは、エージェントのツール呼び出しの前後に実行されるルールです。破壊的なコマンドやシークレットの漏洩、その他の障害パターンを被害が発生する前に検出します。
35
-
36
- ```bash
37
- failproofai policies --install
38
- ```
39
-
40
- これにより、Claude Code の `settings.json` にフックエントリが書き込まれます。単一プロジェクト向けにインストールしたり、特定のポリシーを選択したりすることもできます。
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="確認する">
48
- ```bash
49
- failproofai policies
50
- ```
51
-
52
- すべてのポリシー、その有効・無効の状態、設定済みのパラメータを表示します。
53
- </Step>
54
- <Step title="ダッシュボードを起動する">
55
- ```bash
56
- failproofai
57
- ```
58
-
59
- `http://localhost:8020` にローカルダッシュボードを開きます。セッションの閲覧、ツール呼び出しの確認、ポリシーの管理が行えます。
60
- </Step>
61
- <Step title="エージェントを実行する">
62
- 通常通り Claude Code を起動してください。エージェントが危険な操作を試みた場合、failproofai が自動的に介入します。無人で実行したまま放置し、ダッシュボードで何が起きたかを後から確認できます。
63
- </Step>
64
- </Steps>
65
-
66
- ---
67
-
68
- ## ポリシーの仕組み
69
-
70
- エージェントがツールを実行するたびに、Claude Code はサブプロセスとして failproofai を呼び出します。
71
-
72
- ```text
73
- Claude Code → failproofai --hook PreToolUse → reads stdin JSON
74
- evaluates policies
75
- writes decision to stdout
76
- ```
77
-
78
- 各ポリシーは以下の3つの決定のいずれかを返します。
79
-
80
- - **allow** — エージェントは通常通り処理を続行する
81
- - **deny** — アクションがブロックされ、エージェントにその理由が通知される
82
- - **instruct** — エージェントのプロンプトに追加のコンテキストが付与される
83
-
84
- <Note>
85
- ポリシーはローカルプロセス内で実行されます。リモートサービスには何も送信されません。
86
- </Note>
87
-
88
- ---
89
-
90
- ## 規約ベースのポリシーでチームポリシーを設定する
91
-
92
- チーム全体で品質基準を素早く確立するには、`.failproofai/policies/` の規約を活用するのが最速です。このディレクトリにポリシーファイルを配置するだけで自動的に読み込まれます — フラグも設定変更もインストールコマンドも不要です。
93
-
94
- <Steps>
95
- <Step title="ポリシーディレクトリを作成する">
96
- ```bash
97
- mkdir -p .failproofai/policies
98
- ```
99
- </Step>
100
- <Step title="ポリシーファイルを追加する">
101
- サンプルのスターターファイルをコピーするか、独自に作成してください。
102
-
103
- ```bash
104
- cp node_modules/failproofai/examples/convention-policies/*.mjs .failproofai/policies/
105
- ```
106
-
107
- または新しいファイルを作成する場合:
108
-
109
- ```js
110
- // .failproofai/policies/team-policies.mjs
111
- import { customPolicies, allow, deny, instruct } from "failproofai";
112
-
113
- customPolicies.add({
114
- name: "test-before-commit",
115
- match: { events: ["PreToolUse"] },
116
- fn: async (ctx) => {
117
- if (ctx.toolName !== "Bash") return allow();
118
- if (/git\s+commit/.test(ctx.toolInput?.command ?? "")) {
119
- return instruct("Run tests before committing.");
120
- }
121
- return allow();
122
- },
123
- });
124
- ```
125
- </Step>
126
- <Step title="gitにコミットする">
127
- ```bash
128
- git add .failproofai/policies/
129
- git commit -m "Add team quality policies"
130
- ```
131
-
132
- failproofai をインストールしているすべてのチームメンバーが、これらのポリシーを自動的に受け取ります。開発者ごとのセットアップは不要です。
133
- </Step>
134
- </Steps>
135
-
136
- <Tip>
137
- `.failproofai/policies/` をリポジトリにコミットすることで、チーム全体が同じ基準を共有できます。チームが新たな障害パターンを発見したらポリシーを追加してプッシュするだけで、全員が次の `git pull` 時に更新を受け取れます。時間をかけてこれらのポリシーを積み重ねることで、継続的に改善される生きた品質基準が生まれます。
138
- </Tip>
139
-
140
- ---
141
-
142
- ## データの保存場所
143
-
144
- すべての設定とログはお使いのマシン上に保存されます。
145
-
146
- | パス | 保存内容 |
147
- |------|----------------|
148
- | `~/.failproofai/policies-config.json` | グローバルポリシー設定 |
149
- | `~/.failproofai/hook-activity.jsonl` | フック実行履歴 |
150
- | `~/.failproofai/hook.log` | カスタムフックエラーのデバッグログ |
151
- | `.failproofai/policies-config.json` | プロジェクト別設定(コミット対象) |
152
- | `.failproofai/policies-config.local.json` | 個人用上書き設定(gitignore対象) |
153
-
154
- ---
155
-
156
- ## アンインストール
157
-
158
- ```bash
159
- failproofai policies --uninstall
160
- ```
161
-
162
- `~/.claude/settings.json` からフックエントリを削除します。`~/.failproofai/` 内の設定ファイルは保持されます。
163
-
164
- ---
165
-
166
- ## 次のステップ
167
-
168
- <CardGroup cols={2}>
169
-
170
- <Card title="設定" icon="gear" href="/ja/configuration">
171
- スコープと設定ファイルのフォーマット
172
- </Card>
173
-
174
- <Card title="組み込みポリシー" icon="shield" href="/ja/built-in-policies">
175
- パラメータ付きの全26ポリシー
176
- </Card>
177
-
178
- <Card title="カスタムポリシー" icon="code" href="/ja/custom-policies">
179
- JavaScriptで独自のポリシーを作成する
180
- </Card>
181
-
182
- <Card title="エージェントモニター" icon="chart-line" href="/ja/dashboard">
183
- セッションの監視とポリシーアクティビティの確認
184
- </Card>
185
-
186
- </CardGroup>
@@ -1,57 +0,0 @@
1
- ---
2
- title: Failproof AI
3
- description: "AIエージェントの信頼性を保ち、自律的な動作を維持するフックとポリシーを管理する"
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
- **Claude Code** および **Agents SDK** 向けの、AIエージェントの信頼性を保ち自律的な動作を維持するフックとポリシー。
9
-
10
- AIエージェントは予測可能な形で失敗します。破壊的なコマンドを実行したり、シークレットを漏洩させたり、タスクから逸脱したり、ループにはまったり、mainブランチに直接プッシュしたりします。放置すれば、小さな失敗が連鎖して大きな問題へと発展します。
11
-
12
- Failproof AI はこの問題を **ポリシー** によって解決します。ポリシーとは、エージェントのすべてのツール呼び出しにフックするルールであり、**障害の検出**、**軽減処置**(ブロック・指示・サニタイズ)、そして注意が必要な場合の **アラート通知** を行います。ローカルダッシュボードで後から内容を確認することもできます。
13
-
14
- すべてはローカルで動作します。データが外部に送信されることはありません。
15
-
16
- ## はじめに
17
-
18
- <CardGroup cols={2}>
19
-
20
- <Card title="26個の組み込みポリシー" icon="shield" href="/ja/built-in-policies">
21
- 破壊的なコマンドのブロック、シークレットの漏洩防止、エージェントをプロジェクト境界内に制限するなど、すぐに使える機能が揃っています。
22
- </Card>
23
-
24
- <Card title="カスタムポリシー" icon="code" href="/ja/custom-policies">
25
- シンプルな allow / deny / instruct APIを使って、JavaScriptで独自のルールを記述できます。
26
- </Card>
27
-
28
- <Card title="エージェントモニター" icon="chart-line" href="/ja/dashboard">
29
- 離席中にエージェントが何をしたか確認できます。セッションの閲覧、ツール呼び出しの検査、ポリシーが発動した箇所のレビューが可能です。
30
- </Card>
31
-
32
- <Card title="簡単な設定" icon="gear" href="/ja/configuration">
33
- コードを書かずにポリシーを調整できます。許可リスト、保護ブランチ、しきい値をプロジェクト単位またはグローバルに設定できます。
34
- </Card>
35
-
36
- </CardGroup>
37
-
38
- ## クイックスタート
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
- 詳しい手順については、[入門ガイド](/ja/getting-started)をご覧ください。
@@ -1,82 +0,0 @@
1
- ---
2
- title: パッケージエイリアス
3
- description: "登録済みのタイポスクワット防止エイリアスとその仕組み"
4
- icon: copy
5
- ---
6
-
7
- ## 公式パッケージ
8
-
9
- npmの正式パッケージは **`failproofai`** です:
10
-
11
- ```bash
12
- npm install -g failproofai
13
- # または
14
- bun add -g failproofai
15
- ```
16
-
17
- ---
18
-
19
- ## エイリアス名を所有している理由
20
-
21
- タイポスクワッティングは、攻撃者が人気パッケージ名から1文字違いのパッケージ名を登録するサプライチェーン攻撃の一般的な手口です。インストールコマンドをうっかり誤入力してしまったユーザーは、フルシステムアクセス権を持つ攻撃者制御のコードを実行してしまいます — これはまさに Failproof AI が防御を目的とした脅威の一種です。
22
-
23
- この攻撃対象を排除するために、**`failproofai` の一般的なスペルミスや表記バリアントをすべてnpm上で先回りして取得しています**。これらの名前はいずれも第三者に登録されることはありません。それぞれは実際の `failproofai` パッケージへインストール・委譲する薄いプロキシです。
24
-
25
- ---
26
-
27
- ## 登録済みエイリアス
28
-
29
- **表記バリアント** — 「failproof ai」のさまざまな書き方:
30
-
31
- | パッケージ | ステータス |
32
- |-----------|-----------|
33
- | `failproof` | ✅ 公開済み |
34
- | `failproof-ai` | ⏳ npmサポート対応待ち |
35
- | `fail-proof-ai` | ⏳ npmサポート対応待ち |
36
- | `failproof_ai` | ⏳ npmサポート対応待ち |
37
- | `fail_proof_ai` | ⏳ npmサポート対応待ち |
38
- | `fail-proofai` | ⏳ npmサポート対応待ち |
39
-
40
- **`failprof*` タイポ** — 「proof」から `o` が1文字抜けたもの:
41
-
42
- | パッケージ | ステータス |
43
- |-----------|-----------|
44
- | `failprof` | ✅ 公開済み |
45
- | `failprof-ai` | ✅ 公開済み |
46
- | `failprofai` | ⏳ npmサポート対応待ち |
47
- | `fail-prof-ai` | ⏳ npmサポート対応待ち |
48
- | `failprof_ai` | ⏳ npmサポート対応待ち |
49
-
50
- **`faliproof*` タイポ** — `a` と `i` が入れ替わったもの:
51
-
52
- | パッケージ | ステータス |
53
- |-----------|-----------|
54
- | `faliproof` | ✅ 公開済み |
55
- | `faliproof-ai` | ✅ 公開済み |
56
- | `faliproofai` | ⏳ npmサポート対応待ち |
57
-
58
- > **対応待ちの理由は?** npmのスパム防止ポリシーにより、句読点を除去して類似度チェックを行った際に既存パッケージと同一文字列に正規化される名前はブロックされます。アンチスクワッティング目的でこれらの名前を予約するよう、npmサポートに連絡済みです。承認され次第、順次有効化されます。
59
-
60
- 公開済みのエイリアスが弊社所有であることは次のコマンドで確認できます:
61
-
62
- ```bash
63
- npm info failproof
64
- # 確認ポイント:maintainersフィールドに "ExosphereHost Inc." があること
65
- ```
66
-
67
- ---
68
-
69
- ## エイリアスの仕組み
70
-
71
- 各エイリアスパッケージは:
72
-
73
- 1. `failproofai` を依存関係として宣言しているため、インストール時に実際のパッケージ(`postinstall` フックのセットアップを含む)が実行されます
74
- 2. 自身の名前に対応するバイナリ(例:`failprof-ai`)を公開しており、すべての引数を `failproofai` バイナリへプロキシします
75
-
76
- プロキシは2行のNodeスクリプトで構成されており、ロジックも、ネットワーク呼び出しも、`failproofai` 自体が行うもの以外のデータ収集も一切ありません。
77
-
78
- ---
79
-
80
- ## 見落としている名前を見つけた場合
81
-
82
- [exospherehost/failproofai](https://github.com/exospherehost/failproofai/issues) にIssueを作成してください。登録対応いたします。