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,354 +0,0 @@
1
- ---
2
- ---
3
- title: कस्टम पॉलिसीज़
4
- description: "JavaScript में अपने नियम लिखें - कन्वेंशन को लागू करें, ड्रिफ्ट को रोकें, विफलताओं का पता लगाएं, बाहरी सिस्टम्स के साथ एकीकृत करें"
5
- icon: code
6
- ---
7
-
8
- कस्टम पॉलिसीज़ आपको किसी भी एजेंट व्यवहार के लिए नियम लिखने देती हैं: प्रोजेक्ट कन्वेंशन को लागू करें, ड्रिफ्ट को रोकें, विनाशकारी ऑपरेशन्स को गेट करें, फंसे हुए एजेंट्स का पता लगाएं, या Slack, अनुमोदन वर्कफ्लो, और अन्य सिस्टम्स के साथ एकीकृत करें। ये वही हुक इवेंट सिस्टम और `allow`, `deny`, `instruct` निर्णय का उपयोग करते हैं जो बिल्ट-इन पॉलिसीज़ करती हैं।
9
-
10
- ---
11
-
12
- ## त्वरित उदाहरण
13
-
14
- ```js
15
- // my-policies.js
16
- import { customPolicies, allow, deny, instruct } from "failproofai";
17
-
18
- customPolicies.add({
19
- name: "no-production-writes",
20
- description: "Block writes to paths containing 'production'",
21
- match: { events: ["PreToolUse"] },
22
- fn: async (ctx) => {
23
- if (ctx.toolName !== "Write" && ctx.toolName !== "Edit") return allow();
24
- const path = ctx.toolInput?.file_path ?? "";
25
- if (path.includes("production")) {
26
- return deny("Writes to production paths are blocked");
27
- }
28
- return allow();
29
- },
30
- });
31
- ```
32
-
33
- इसे इंस्टॉल करें:
34
-
35
- ```bash
36
- failproofai policies --install --custom ./my-policies.js
37
- ```
38
-
39
- ---
40
-
41
- ## कस्टम पॉलिसीज़ को लोड करने के दो तरीके
42
-
43
- ### विकल्प 1: कन्वेंशन-आधारित (अनुशंसित)
44
-
45
- `.failproofai/policies/` में `*policies.{js,mjs,ts}` फाइलें ड्रॉप करें और वे स्वचालित रूप से लोड हो जाती हैं — कोई फ्लैग या कॉन्फ़िग परिवर्तन की आवश्यकता नहीं। यह git हुक्स की तरह काम करता है: एक फाइल ड्रॉप करें, बस काम करता है।
46
-
47
- ```
48
- # प्रोजेक्ट स्तर — git के लिए प्रतिबद्ध, टीम के साथ साझा किया गया
49
- .failproofai/policies/security-policies.mjs
50
- .failproofai/policies/workflow-policies.mjs
51
-
52
- # उपयोगकर्ता स्तर — व्यक्तिगत, सभी प्रोजेक्ट्स पर लागू होता है
53
- ~/.failproofai/policies/my-policies.mjs
54
- ```
55
-
56
- **यह कैसे काम करता है:**
57
- - प्रोजेक्ट और उपयोगकर्ता दोनों डायरेक्टरीज़ को स्कैन किया जाता है (यूनियन — पहली स्कोप-जीत नहीं)
58
- - फाइलें प्रत्येक डायरेक्टरी के भीतर वर्णानुक्रमिक रूप से लोड होती हैं। क्रम को नियंत्रित करने के लिए `01-`, `02-` से प्रीफ़िक्स करें
59
- - केवल `*policies.{js,mjs,ts}` से मेल खाने वाली फाइलें लोड होती हैं; अन्य फाइलें नजरअंदाज की जाती हैं
60
- - प्रत्येक फाइल स्वतंत्र रूप से लोड होती है (प्रति फाइल फेल-ओपन)
61
- - स्पष्ट `--custom` और बिल्ट-इन पॉलिसीज़ के साथ काम करता है
62
-
63
- <Tip>
64
- कन्वेंशन पॉलिसीज़ आपके संगठन के लिए एक गुणवत्ता मानक बनाने का सबसे आसान तरीका हैं। `.failproofai/policies/` को git में प्रतिबद्ध करें और हर टीम सदस्य को स्वचालित रूप से वही नियम मिलते हैं — कोई प्रति-डेवलपर सेटअप की आवश्यकता नहीं। जैसे-जैसे आपकी टीम नई विफलता के तरीके खोजती है, एक पॉलिसी जोड़ें और पुश करें। समय के साथ ये एक जीवंत गुणवत्ता मानक बन जाते हैं जो हर योगदान के साथ सुधरते रहते हैं।
65
- </Tip>
66
-
67
- ### विकल्प 2: स्पष्ट फाइल पाथ
68
-
69
- ```bash
70
- # कस्टम पॉलिसीज़ फाइल के साथ इंस्टॉल करें
71
- failproofai policies --install --custom ./my-policies.js
72
-
73
- # पॉलिसीज़ फाइल पाथ को प्रतिस्थापित करें
74
- failproofai policies --install --custom ./new-policies.js
75
-
76
- # कॉन्फ़िग से कस्टम पॉलिसीज़ पाथ को हटाएं
77
- failproofai policies --uninstall --custom
78
- ```
79
-
80
- हल किया गया निरपेक्ष पाथ `policies-config.json` में `customPoliciesPath` के रूप में संग्रहीत होता है। फाइल हर हुक इवेंट पर ताज़ी लोड होती है - इवेंट्स के बीच कोई कैशिंग नहीं होती है।
81
-
82
- ### दोनों को एक साथ उपयोग करना
83
-
84
- कन्वेंशन पॉलिसीज़ और स्पष्ट `--custom` फाइल एक साथ सह-अस्तित्व कर सकती हैं। लोड क्रम:
85
-
86
- 1. स्पष्ट `customPoliciesPath` फाइल (यदि कॉन्फ़िगर की गई है)
87
- 2. प्रोजेक्ट कन्वेंशन फाइलें (`{cwd}/.failproofai/policies/`, वर्णानुक्रमिक)
88
- 3. उपयोगकर्ता कन्वेंशन फाइलें (`~/.failproofai/policies/`, वर्णानुक्रमिक)
89
-
90
- ---
91
-
92
- ## API
93
-
94
- ### आयात करें
95
-
96
- ```js
97
- import { customPolicies, allow, deny, instruct } from "failproofai";
98
- ```
99
-
100
- ### `customPolicies.add(hook)`
101
-
102
- एक पॉलिसी को पंजीकृत करता है। एक ही फाइल में कई पॉलिसीज़ के लिए आवश्यकतानुसार कई बार कॉल करें।
103
-
104
- ```ts
105
- customPolicies.add({
106
- name: string; // आवश्यक - अद्वितीय पहचानकर्ता
107
- description?: string; // `failproofai policies` आउटपुट में दिखाया गया
108
- match?: { events?: HookEventType[] }; // इवेंट प्रकार द्वारा फ़िल्टर करें; सभी से मेल खाने के लिए छोड़ दें
109
- fn: (ctx: PolicyContext) => PolicyResult | Promise<PolicyResult>;
110
- });
111
- ```
112
-
113
- ### निर्णय सहायक
114
-
115
- | फंक्शन | प्रभाव | उपयोग करें जब |
116
- |----------|--------|----------|
117
- | `allow()` | ऑपरेशन को चुप से अनुमति दें | कार्य सुरक्षित है, कोई संदेश की आवश्यकता नहीं |
118
- | `deny(message)` | ऑपरेशन को ब्लॉक करें | एजेंट को यह कार्य नहीं करना चाहिए |
119
- | `instruct(message)` | बिना ब्लॉक किए संदर्भ जोड़ें | एजेंट को ट्रैक पर रहने के लिए अतिरिक्त संदर्भ दें |
120
-
121
- `deny(message)` - संदेश Claude को `"Blocked by failproofai:"` प्रीफ़िक्स के साथ दिखाई देता है। एक ही `deny` सभी आगामी मूल्यांकन को शॉर्ट-सर्किट करता है।
122
-
123
- `instruct(message)` - संदेश Claude के संदर्भ में वर्तमान टूल कॉल के लिए जोड़ा जाता है। सभी `instruct` संदेश एकत्र किए जाते हैं और एक साथ दिए जाते हैं।
124
-
125
- <Tip>
126
- आप `policyParams` में एक `hint` फील्ड जोड़कर किसी भी `deny` या `instruct` संदेश के लिए अतिरिक्त मार्गदर्शन जोड़ सकते हैं — कोई कोड परिवर्तन की आवश्यकता नहीं। यह कस्टम (`custom/`), प्रोजेक्ट कन्वेंशन (`.failproofai-project/`), और उपयोगकर्ता कन्वेंशन (`.failproofai-user/`) पॉलिसीज़ के लिए भी काम करता है। [कॉन्फ़िगरेशन → hint](/hi/configuration#hint-cross-cutting) विवरण के लिए देखें।
127
- </Tip>
128
-
129
- ### सूचनात्मक allow संदेश
130
-
131
- `allow(message)` ऑपरेशन को अनुमति देता है **और** Claude को वापस एक सूचनात्मक संदेश भेजता है। संदेश हुक हैंडलर के stdout प्रतिक्रिया में `additionalContext` के रूप में दिया जाता है — `instruct` द्वारा उपयोग की जाने वाली एक ही तंत्र, लेकिन शब्दार्थ अलग: यह एक चेतावनी नहीं बल्कि एक स्थिति अपडेट है।
132
-
133
- | फंक्शन | प्रभाव | उपयोग करें जब |
134
- |----------|--------|----------|
135
- | `allow(message)` | अनुमति दें और Claude को संदर्भ भेजें | एक चेक पास हुई की पुष्टि करें, या समझाएं कि एक चेक क्यों छोड़ा गया |
136
-
137
- उपयोग के मामले:
138
- - **स्थिति पुष्टियां:** `allow("All CI checks passed.")` — Claude को बताएं कि सब कुछ हरा है
139
- - **फेल-ओपन स्पष्टीकरण:** `allow("GitHub CLI not installed, skipping CI check.")` — Claude को बताएं कि एक चेक क्यों छोड़ा गया ताकि उसके पास पूर्ण संदर्भ हो
140
- - **कई संदेश जमा होते हैं:** यदि कई पॉलिसीज़ प्रत्येक `allow(message)` लौटाती हैं, सभी संदेश नई पंक्तियों के साथ जुड़ जाते हैं और एक साथ दिए जाते हैं
141
-
142
- ```js
143
- customPolicies.add({
144
- name: "confirm-branch-status",
145
- match: { events: ["Stop"] },
146
- fn: async (ctx) => {
147
- const cwd = ctx.session?.cwd;
148
- if (!cwd) return allow("No working directory, skipping branch check.");
149
-
150
- // ... branch status चेक करें ...
151
- if (allPushed) {
152
- return allow("Branch is up to date with remote.");
153
- }
154
- return deny("Unpushed changes detected.");
155
- },
156
- });
157
- ```
158
-
159
- ### `PolicyContext` फील्ड्स
160
-
161
- | फील्ड | प्रकार | विवरण |
162
- |-------|------|-------------|
163
- | `eventType` | `string` | `"PreToolUse"`, `"PostToolUse"`, `"Notification"`, `"Stop"` |
164
- | `toolName` | `string \| undefined` | कॉल किया जा रहा टूल (उदाहरण के लिए `"Bash"`, `"Write"`, `"Read"`) |
165
- | `toolInput` | `Record<string, unknown> \| undefined` | टूल के इनपुट पैरामीटर |
166
- | `payload` | `Record<string, unknown>` | Claude Code से संपूर्ण कच्चा इवेंट पेलोड |
167
- | `session` | `SessionMetadata \| undefined` | सेशन संदर्भ (नीचे देखें) |
168
-
169
- ### `SessionMetadata` फील्ड्स
170
-
171
- | फील्ड | प्रकार | विवरण |
172
- |-------|------|-------------|
173
- | `sessionId` | `string` | Claude Code सेशन पहचानकर्ता |
174
- | `cwd` | `string` | Claude Code सेशन की कार्य निर्देशिका |
175
- | `transcriptPath` | `string` | सेशन की JSONL ट्रांसक्रिप्ट फाइल का पाथ |
176
-
177
- ### इवेंट प्रकार
178
-
179
- | इवेंट | कब फायर होता है | `toolInput` सामग्री |
180
- |-------|--------------|----------------------|
181
- | `PreToolUse` | Claude एक टूल चलाने से पहले | टूल का इनपुट (उदाहरण के लिए Bash के लिए `{ command: "..." }`) |
182
- | `PostToolUse` | एक टूल पूरा होने के बाद | टूल का इनपुट + `tool_result` (आउटपुट) |
183
- | `Notification` | जब Claude एक सूचना भेजता है | `{ message: "...", notification_type: "idle" \| "permission_prompt" \| ... }` - हुक्स को हमेशा `allow()` लौटना चाहिए, वे सूचनाओं को ब्लॉक नहीं कर सकते |
184
- | `Stop` | जब Claude सेशन समाप्त होता है | खाली |
185
-
186
- ---
187
-
188
- ## मूल्यांकन क्रम
189
-
190
- पॉलिसीज़ को इस क्रम में मूल्यांकन किया जाता है:
191
-
192
- 1. बिल्ट-इन पॉलिसीज़ (परिभाषा क्रम में)
193
- 2. `customPoliciesPath` से स्पष्ट कस्टम पॉलिसीज़ (`.add()` क्रम में)
194
- 3. प्रोजेक्ट `.failproofai/policies/` से कन्वेंशन पॉलिसीज़ (फाइलें वर्णानुक्रमिक, `.add()` क्रम के भीतर)
195
- 4. उपयोगकर्ता `~/.failproofai/policies/` से कन्वेंशन पॉलिसीज़ (फाइलें वर्णानुक्रमिक, `.add()` क्रम के भीतर)
196
-
197
- <Note>
198
- पहला `deny` सभी बाद की पॉलिसीज़ को शॉर्ट-सर्किट करता है। सभी `instruct` संदेश एकत्र किए जाते हैं और एक साथ दिए जाते हैं।
199
- </Note>
200
-
201
- ---
202
-
203
- ## संक्रमणकारी आयात
204
-
205
- कस्टम पॉलिसी फाइलें सापेक्ष पाथ का उपयोग करके स्थानीय मॉड्यूल को आयात कर सकती हैं:
206
-
207
- ```js
208
- // my-policies.js
209
- import { isBlockedPath } from "./utils.js";
210
- import { checkApproval } from "./approval-client.js";
211
-
212
- customPolicies.add({
213
- name: "approval-gate",
214
- fn: async (ctx) => {
215
- if (ctx.toolName !== "Bash") return allow();
216
- const approved = await checkApproval(ctx.toolInput?.command, ctx.session?.sessionId);
217
- return approved ? allow() : deny("Approval required for this command");
218
- },
219
- });
220
- ```
221
-
222
- प्रवेश फाइल से पहुंचने योग्य सभी सापेक्ष आयात हल किए जाते हैं। यह `from "failproofai"` आयात को वास्तविक dist पाथ में फिर से लिखकर और ESM संगतता सुनिश्चित करने के लिए अस्थायी `.mjs` फाइलें बनाकर लागू किया जाता है।
223
-
224
- ---
225
-
226
- ## इवेंट प्रकार फ़िल्टरिंग
227
-
228
- `match.events` का उपयोग करके सीमित करें कि कोई पॉलिसी कब फायर होती है:
229
-
230
- ```js
231
- customPolicies.add({
232
- name: "require-summary-on-stop",
233
- match: { events: ["Stop"] },
234
- fn: async (ctx) => {
235
- // केवल तब फायर होता है जब सेशन समाप्त होता है
236
- // ctx.session.transcriptPath में पूर्ण सेशन लॉग होता है
237
- return allow();
238
- },
239
- });
240
- ```
241
-
242
- सभी इवेंट प्रकारों पर फायर करने के लिए `match` को पूरी तरह छोड़ दें।
243
-
244
- ---
245
-
246
- ## त्रुटि हैंडलिंग और विफलता मोड
247
-
248
- कस्टम पॉलिसीज़ **फेल-ओपन** हैं: त्रुटियां कभी बिल्ट-इन पॉलिसीज़ को ब्लॉक नहीं करती हैं या हुक हैंडलर को क्रैश नहीं करती हैं।
249
-
250
- | विफलता | व्यवहार |
251
- |---------|----------|
252
- | `customPoliciesPath` सेट नहीं है | कोई स्पष्ट कस्टम पॉलिसीज़ नहीं चलती हैं; कन्वेंशन पॉलिसीज़ और बिल्ट-इन सामान्य रूप से जारी रहते हैं |
253
- | फाइल नहीं मिली | `~/.failproofai/hook.log` में चेतावनी लॉग की गई; बिल्ट-इन जारी रहते हैं |
254
- | सिंटैक्स/आयात त्रुटि (स्पष्ट) | `~/.failproofai/hook.log` में त्रुटि लॉग की गई; स्पष्ट कस्टम पॉलिसीज़ छोड़ी गई |
255
- | सिंटैक्स/आयात त्रुटि (कन्वेंशन) | त्रुटि लॉग की गई; वह फाइल छोड़ी गई, अन्य कन्वेंशन फाइलें अभी भी लोड होती हैं |
256
- | `fn` रन-टाइम पर फेंक देता है | त्रुटि लॉग की गई; वह हुक `allow` के रूप में मानी जाती है; अन्य हुक्स जारी रहते हैं |
257
- | `fn` 10 सेकंड से अधिक समय लेता है | टाइमआउट लॉग किया जाता है; `allow` के रूप में मानी जाती है |
258
- | कन्वेंशन डायरेक्टरी गायब है | कोई कन्वेंशन पॉलिसीज़ नहीं चलती हैं; कोई त्रुटि नहीं |
259
-
260
- <Tip>
261
- कस्टम पॉलिसी त्रुटियों को डिबग करने के लिए, लॉग फाइल देखें:
262
-
263
- ```bash
264
- tail -f ~/.failproofai/hook.log
265
- ```
266
- </Tip>
267
-
268
- ---
269
-
270
- ## पूर्ण उदाहरण: कई पॉलिसीज़
271
-
272
- ```js
273
- // my-policies.js
274
- import { customPolicies, allow, deny, instruct } from "failproofai";
275
-
276
- // एजेंट को secrets/ डायरेक्टरी में लिखने से रोकें
277
- customPolicies.add({
278
- name: "block-secrets-dir",
279
- description: "Prevent agent from writing to secrets/ directory",
280
- match: { events: ["PreToolUse"] },
281
- fn: async (ctx) => {
282
- if (!["Write", "Edit"].includes(ctx.toolName ?? "")) return allow();
283
- const path = ctx.toolInput?.file_path ?? "";
284
- if (path.includes("secrets/")) return deny("Writing to secrets/ is not permitted");
285
- return allow();
286
- },
287
- });
288
-
289
- // एजेंट को ट्रैक पर रखें: कमिट करने से पहले टेस्ट सत्यापित करें
290
- customPolicies.add({
291
- name: "remind-test-before-commit",
292
- description: "Keep the agent on track: verify tests pass before committing",
293
- match: { events: ["PreToolUse"] },
294
- fn: async (ctx) => {
295
- if (ctx.toolName !== "Bash") return allow();
296
- const cmd = ctx.toolInput?.command ?? "";
297
- if (/git\s+commit/.test(cmd)) {
298
- return instruct("Verify all tests pass before committing. Run `bun test` if you haven't already.");
299
- }
300
- return allow();
301
- },
302
- });
303
-
304
- // फ्रीज़ अवधि के दौरान अनियोजित निर्भरता परिवर्तन को रोकें
305
- customPolicies.add({
306
- name: "dependency-freeze",
307
- description: "Prevent unplanned dependency changes during freeze period",
308
- match: { events: ["PreToolUse"] },
309
- fn: async (ctx) => {
310
- if (ctx.toolName !== "Bash") return allow();
311
- const cmd = ctx.toolInput?.command ?? "";
312
- const isInstall = /^(npm install|yarn add|bun add|pnpm add)\s+\S/.test(cmd);
313
- if (isInstall && process.env.DEPENDENCY_FREEZE === "1") {
314
- return deny("Package installs are frozen. Unset DEPENDENCY_FREEZE to allow.");
315
- }
316
- return allow();
317
- },
318
- });
319
-
320
- export { customPolicies };
321
- ```
322
-
323
- ---
324
-
325
- ## उदाहरण
326
-
327
- `examples/` डायरेक्टरी में तैयार-से-चलाने के लिए पॉलिसी फाइलें हैं:
328
-
329
- | फाइल | सामग्री |
330
- |------|----------|
331
- | `examples/policies-basic.js` | पांच स्टार्टर पॉलिसीज़ जो सामान्य एजेंट विफलता के तरीकों को कवर करती हैं |
332
- | `examples/policies-advanced/index.js` | उन्नत पैटर्न: संक्रमणकारी आयात, async कॉल, आउटपुट स्क्रबिंग, और सेशन-एंड हुक्स |
333
- | `examples/convention-policies/security-policies.mjs` | कन्वेंशन-आधारित सुरक्षा पॉलिसीज़ (.env लिखता है ब्लॉक करें, git हिस्ट्री पुनर्लेखन रोकें) |
334
- | `examples/convention-policies/workflow-policies.mjs` | कन्वेंशन-आधारित वर्कफ्लो पॉलिसीज़ (टेस्ट रिमाइंडर, ऑडिट फाइल लिखता है) |
335
-
336
- ### स्पष्ट फाइल उदाहरण का उपयोग करना
337
-
338
- ```bash
339
- failproofai policies --install --custom ./examples/policies-basic.js
340
- ```
341
-
342
- ### कन्वेंशन-आधारित उदाहरण का उपयोग करना
343
-
344
- ```bash
345
- # प्रोजेक्ट स्तर पर कॉपी करें
346
- mkdir -p .failproofai/policies
347
- cp examples/convention-policies/*.mjs .failproofai/policies/
348
-
349
- # या उपयोगकर्ता स्तर पर कॉपी करें
350
- mkdir -p ~/.failproofai/policies
351
- cp examples/convention-policies/*.mjs ~/.failproofai/policies/
352
- ```
353
-
354
- कोई इंस्टॉल कमांड की आवश्यकता नहीं — फाइलें अगले हुक इवेंट पर स्वचालित रूप से उठाई जाती हैं।
@@ -1,142 +0,0 @@
1
- ---
2
- title: डैशबोर्ड
3
- description: "एजेंट सेशन की निगरानी करें, टूल कॉल की समीक्षा करें, और नीतियों का प्रबंधन करें"
4
- icon: chart-line
5
- ---
6
-
7
- failproofai डैशबोर्ड आपके AI एजेंट सेशन की निगरानी और नीतियों के प्रबंधन के लिए एक स्थानीय वेब एप्लिकेशन है। देखें कि आपके एजेंट आपके न होने के दौरान क्या करते थे।
8
-
9
- ---
10
-
11
- ## डैशबोर्ड शुरू करना
12
-
13
- ```bash
14
- failproofai
15
- ```
16
-
17
- `http://localhost:8020` पर खुलता है।
18
-
19
- डैशबोर्ड सीधे फाइलसिस्टम से पढ़ता है - आपके Claude Code प्रोजेक्ट फोल्डर और failproofai कॉन्फ़िगरेशन फाइलें। कोई भी डेटा दूरस्थ सेवा में नहीं लिखा जाता है।
20
-
21
- ---
22
-
23
- ## पृष्ठ
24
-
25
- ### प्रोजेक्ट्स
26
-
27
- आपकी मशीन पर मिले सभी Claude Code प्रोजेक्ट्स को सूचीबद्ध करता है। प्रोजेक्ट्स `~/.claude/projects/` से खोजे जाते हैं (या `CLAUDE_PROJECTS_PATH` द्वारा सेट किए गए पथ से)।
28
-
29
- प्रत्येक प्रोजेक्ट दिखाता है:
30
- - प्रोजेक्ट का नाम (फोल्डर पथ से व्युत्पन्न)
31
- - सेशन की संख्या
32
- - सबसे हाल की सेशन गतिविधि की तारीख
33
-
34
- प्रोजेक्ट के सेशन देखने के लिए उस पर क्लिक करें।
35
-
36
- ### सेशन्स
37
-
38
- एक प्रोजेक्ट के भीतर सभी सेशन्स को सूचीबद्ध करता है। प्रत्येक सेशन दिखाता है:
39
- - सेशन ID
40
- - शुरुआत और समाप्ति समय
41
- - टूल कॉल की संख्या
42
- - हुक गतिविधि गणना (नीतियां जो सक्रिय हुईं)
43
-
44
- सूची को कम करने के लिए दिनांक सीमा फ़िल्टर और सेशन ID खोज का उपयोग करें। सेशन्स पृष्ठांकित होते हैं।
45
-
46
- सेशन दर्शक खोलने के लिए एक सेशन पर क्लिक करें।
47
-
48
- ### सेशन दर्शक
49
-
50
- सेशन दर्शक स्वायत्त एजेंट के लिए मुख्य प्रश्न का उत्तर देता है: एजेंट ने क्या किया, और क्या वह सही रास्ते पर रहा? यह एक सेशन में हुई हर चीज की समयरेखा दिखाता है:
51
-
52
- - **संदेश** - Claude के पाठ प्रतिक्रियाएं और उपयोगकर्ता संकेत
53
- - **टूल कॉल्स** - हर टूल जो Claude ने आह्वान किया, इसके इनपुट और आउटपुट के साथ
54
- - **नीति गतिविधि** - प्रत्येक टूल कॉल के लिए, कौन सी नीतियां सक्रिय हुईं और उन्होंने कौन सा निर्णय लौटाया
55
-
56
- शीर्ष पर सांख्यिकी पट्टी सेशन अवधि, कुल टूल कॉल्स, और हुक निर्णयों का सारांश (allow / deny / instruct गणना) दिखाती है।
57
-
58
- आप डाउनलोड बटन का उपयोग करके सेशन को ZIP या JSONL फाइल के रूप में निर्यात कर सकते हैं।
59
-
60
- ### नीतियां
61
-
62
- नीतियों के प्रबंधन और गतिविधि की समीक्षा के लिए एक दो-टैब पृष्ठ।
63
-
64
- <Tabs>
65
- <Tab title="नीतियां टैब">
66
- - एक क्लिक के साथ व्यक्तिगत नीतियों को चालू या बंद करें (`~/.failproofai/policies-config.json` में लिखता है)
67
- - किसी नीति को उसके पैरामीटर को कॉन्फ़िगर करने के लिए विस्तृत करें (नीतियों के लिए जो `policyParams` का समर्थन करते हैं)
68
- - दिए गए स्कोप के लिए हुक्स को स्थापित या हटाएं
69
- - एक कस्टम नीतियां फाइल पथ सेट करें
70
- </Tab>
71
- <Tab title="गतिविधि टैब">
72
- - सभी सेशन्स में हर हुक घटना का पूर्ण पृष्ठांकित इतिहास जो सक्रिय हुई है
73
- - नीति नाम, सेशन ID, टूल नाम, या निर्णय द्वारा खोजें
74
- - प्रत्येक पंक्ति दिखाती है: समय, नीति नाम, निर्णय, टूल नाम, सेशन ID, और deny/instruct निर्णयों का कारण
75
- </Tab>
76
- </Tabs>
77
-
78
- ---
79
-
80
- ## ऑटो-रीफ्रेश
81
-
82
- डैशबोर्ड के शीर्ष नेविगेशन में एक ऑटो-रीफ्रेश टॉगल है। जब सक्षम किया जाता है, तो वर्तमान पृष्ठ नई सेशन्स और नीति गतिविधि दिखाने के लिए समय-समय पर रीफ्रेश होता है। दीर्घकालीन स्वायत्त एजेंट सेशन्स की निगरानी के लिए आवश्यक है।
83
-
84
- ---
85
-
86
- ## पृष्ठों को अक्षम करना
87
-
88
- यदि आपको डैशबोर्ड के केवल कुछ हिस्सों की आवश्यकता है, तो `FAILPROOFAI_DISABLE_PAGES` को पृष्ठ नामों की अल्पविराम-सूची पर सेट करें:
89
-
90
- ```bash
91
- FAILPROOFAI_DISABLE_PAGES=policies failproofai
92
- ```
93
-
94
- मान्य मान: `policies`, `projects`.
95
-
96
- ---
97
-
98
- ## थीम
99
-
100
- डैशबोर्ड हल्के और गहरे मोड का समर्थन करता है। नेविगेशन बार में बटन के माध्यम से टॉगल करें। वरीयता आपके ब्राउज़र के स्थानीय भंडार में संग्रहीत होती है।
101
-
102
- ---
103
-
104
- ## प्रोजेक्ट्स पथ को कॉन्फ़िगर करना
105
-
106
- डिफ़ॉल्ट रूप से, डैशबोर्ड मानक Claude Code प्रोजेक्ट्स निर्देशिका से पढ़ता है। कस्टम सेटअप के लिए इसे ओवरराइड करें:
107
-
108
- ```bash
109
- CLAUDE_PROJECTS_PATH=/custom/path/to/projects failproofai
110
- ```
111
-
112
- ---
113
-
114
- ## गैर-localhost होस्ट से पहुंचना
115
-
116
- जब **dev मोड** में डैशबोर्ड चल रहा है (`npm run dev`) और आप इसे `localhost` के अलावा किसी होस्टनाम से एक्सेस कर रहे हैं - उदाहरण के लिए, एक कस्टम डोमेन, एक दूरस्थ IP, या एक सुरंगबद्ध URL - आप इस तरह एक चेतावनी देख सकते हैं:
117
-
118
- ```text
119
- ⚠ Blocked cross-origin request to Next.js dev resource /_next/webpack-hmr from "dashboard.example.com".
120
- ```
121
-
122
- यह Next.js अपने HMR (hot module reload) वेबसॉकेट के लिए क्रॉस-ऑरिजिन पहुंच को ब्लॉक कर रहा है, जो एक dev-only फीचर है। अपने होस्ट को अनुमति देने के लिए, `--allowed-origins` फ्लैग का उपयोग करें:
123
-
124
- ```bash
125
- npm run dev -- --allowed-origins dashboard.example.com
126
- ```
127
-
128
- कई होस्ट या IP के लिए, एक अल्पविराम-सूची पास करें:
129
-
130
- ```bash
131
- npm run dev -- --allowed-origins dashboard.example.com,192.168.1.5
132
- ```
133
-
134
- आप इसके बजाय `FAILPROOFAI_ALLOWED_DEV_ORIGINS` पर्यावरण चर सेट कर सकते हैं:
135
-
136
- ```bash
137
- FAILPROOFAI_ALLOWED_DEV_ORIGINS=dashboard.example.com npm run dev
138
- ```
139
-
140
- <Note>
141
- यह केवल dev मोड पर लागू होता है। जब `failproofai` चल रहा है (production mode), कोई HMR वेबसॉकेट नहीं है और कोई क्रॉस-ऑरिजिन dev संसाधन समस्या नहीं है।
142
- </Note>