failproofai 1.0.1-beta.0 → 1.0.1

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 (986) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +6 -6
  3. package/.next/standalone/.next/prerender-manifest.json +4 -4
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
  6. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
  7. package/.next/standalone/.next/server/app/_global-error/page.js +1 -1
  8. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
  9. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
  12. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +6 -6
  13. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  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/build-manifest.json +3 -3
  16. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  17. package/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  18. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  21. package/.next/standalone/.next/server/app/_not-found.rsc +14 -14
  22. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
  23. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +13 -13
  24. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  25. package/.next/standalone/.next/server/app/api/audit/invite/route.js +1 -1
  26. package/.next/standalone/.next/server/app/api/audit/invite/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/audit/run/route.js +1 -1
  28. package/.next/standalone/.next/server/app/api/audit/run/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/audit/status/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/auth/login-request/route.js +1 -1
  31. package/.next/standalone/.next/server/app/api/auth/login-request/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/auth/login-verify/route.js +1 -1
  33. package/.next/standalone/.next/server/app/api/auth/login-verify/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/api/auth/logout/route.js +1 -1
  35. package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/auth/status/route.js +1 -1
  37. package/.next/standalone/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js +1 -1
  39. package/.next/standalone/.next/server/app/api/download/[project]/[session]/route.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/audit/page/build-manifest.json +3 -3
  41. package/.next/standalone/.next/server/app/audit/page/server-reference-manifest.json +2 -2
  42. package/.next/standalone/.next/server/app/audit/page.js +1 -1
  43. package/.next/standalone/.next/server/app/audit/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/index.html +1 -1
  46. package/.next/standalone/.next/server/app/index.rsc +14 -14
  47. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +13 -13
  48. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +14 -14
  49. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  50. package/.next/standalone/.next/server/app/page/build-manifest.json +3 -3
  51. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
  52. package/.next/standalone/.next/server/app/page.js +1 -1
  53. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/policies/page/build-manifest.json +3 -3
  56. package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +10 -10
  57. package/.next/standalone/.next/server/app/policies/page.js +1 -1
  58. package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +3 -3
  61. package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
  62. package/.next/standalone/.next/server/app/project/[name]/page.js +2 -2
  63. package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +3 -3
  66. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
  67. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
  68. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js +2 -2
  69. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/projects/page/build-manifest.json +3 -3
  72. package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
  73. package/.next/standalone/.next/server/app/projects/page.js +2 -2
  74. package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  75. package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/settings/page/build-manifest.json +3 -3
  77. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +4 -4
  78. package/.next/standalone/.next/server/app/settings/page.js +1 -1
  79. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0nne229._.js → [root-of-the-server]__0_usx0j._.js} +1 -1
  82. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__1hstmft._.js → [root-of-the-server]__0_zk340._.js} +1 -1
  83. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0d1u_na._.js +1 -1
  84. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1adacul._.js +5 -5
  85. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0ny9q5d._.js → [root-of-the-server]__1l-khtb._.js} +1 -1
  86. package/.next/standalone/.next/server/chunks/_0lxbzdq._.js +1 -1
  87. package/.next/standalone/.next/server/chunks/{_18ty6si._.js → _1ger0a2._.js} +1 -1
  88. package/.next/standalone/.next/server/chunks/_1vslkoe._.js +1 -1
  89. package/.next/standalone/.next/server/chunks/_1zuiiy3._.js +1 -1
  90. package/.next/standalone/.next/server/chunks/lib_telemetry_ts_0dctyyw._.js +1 -1
  91. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_01r25oi._.js +2 -2
  92. package/.next/standalone/.next/server/chunks/{node_modules_posthog-node_dist_entrypoints_index_node_mjs_0f-x2b0._.js → node_modules_posthog-node_dist_entrypoints_index_node_mjs_09d5c79._.js} +1 -1
  93. package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_09z9-p7._.js +2 -2
  94. package/.next/standalone/.next/server/chunks/{node_modules_posthog-node_dist_entrypoints_index_node_mjs_0hwvl7e._.js → node_modules_posthog-node_dist_entrypoints_index_node_mjs_0el6rg8._.js} +1 -1
  95. package/.next/standalone/.next/server/chunks/{node_modules_posthog-node_dist_entrypoints_index_node_mjs_1ctjdzl._.js → node_modules_posthog-node_dist_entrypoints_index_node_mjs_1d2g73o._.js} +1 -1
  96. package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_1nxcc4v._.js +1 -1
  97. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__07tbbf3._.js +3 -0
  98. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0cxe_2_._.js +1 -1
  99. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__15c_z97._.js → [root-of-the-server]__0jzbk4_._.js} +1 -1
  100. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kc8_v5._.js +4 -0
  101. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kgy9da._.js +2 -2
  102. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0mhqk5a._.js +4 -0
  103. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oa1lav._.js +1 -1
  104. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0pltpn8._.js +4 -0
  105. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qkcyf-._.js +4 -0
  106. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0spkm68._.js +2 -2
  107. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w0x_ok._.js +4 -0
  108. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1_dfocn._.js +2 -2
  109. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__03eykvd._.js → [root-of-the-server]__1bfex62._.js} +1 -1
  110. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__07oh8b5._.js → [root-of-the-server]__1ctpynv._.js} +1 -1
  111. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1kzapg5._.js +2 -2
  112. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__11z_299._.js → [root-of-the-server]__1m84s36._.js} +1 -1
  113. package/.next/standalone/.next/server/chunks/ssr/_08x1r5t._.js +1 -1
  114. package/.next/standalone/.next/server/chunks/ssr/{_04j57fb._.js → _0h_douw._.js} +1 -1
  115. package/.next/standalone/.next/server/chunks/ssr/_0lvyuv4._.js +23 -0
  116. package/.next/standalone/.next/server/chunks/ssr/{_05enntk._.js → _0u5zauv._.js} +1 -1
  117. package/.next/standalone/.next/server/chunks/ssr/_1_ozgif._.js +1 -1
  118. package/.next/standalone/.next/server/chunks/ssr/{_0hom1s1._.js → _1u8-lu2._.js} +2 -2
  119. package/.next/standalone/.next/server/chunks/ssr/{_1q7j05x._.js → _1zopuov._.js} +2 -2
  120. package/.next/standalone/.next/server/chunks/ssr/app_audit__components_audit-dashboard_tsx_0p9ud47._.js +1 -1
  121. package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_1kp6l3x._.js +1 -1
  122. package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_19dqvpc._.js +1 -1
  123. package/.next/standalone/.next/server/chunks/ssr/app_settings_settings-client_tsx_20lq-mq._.js +1 -1
  124. package/.next/standalone/.next/server/chunks/ssr/node_modules_13n822a._.js +3 -0
  125. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1v8aef8._.js +1 -1
  126. package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_11bnuzn._.js +2 -2
  127. package/.next/standalone/.next/server/middleware-build-manifest.js +6 -6
  128. package/.next/standalone/.next/server/pages/404.html +1 -1
  129. package/.next/standalone/.next/server/pages/500.html +1 -1
  130. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/server-reference-manifest.json +15 -15
  132. package/.next/standalone/.next/static/chunks/{1o5sxp_mdaoci.js → 0k5050ezjvv49.js} +1 -1
  133. package/.next/standalone/.next/static/chunks/{054eg7y_cjyf9.js → 1ide1wl2f7zi1.js} +1 -1
  134. package/.next/standalone/.next/static/chunks/1oml7c7env4-g.js +31 -0
  135. package/.next/standalone/.next/static/chunks/1za08zjcctyil.js +22 -0
  136. package/.next/standalone/.next/static/chunks/2_2lhuojq2xop.js +1 -0
  137. package/.next/standalone/.next/static/chunks/{0mjufa_0xxz75.js → 2zpp1we2jv6tb.js} +1 -1
  138. package/.next/standalone/.next/static/chunks/{1-oz4co31nvc5.js → 31s1smp-g7gks.js} +1 -1
  139. package/.next/standalone/.next/static/chunks/36fw6yk1s6x_f.js +1 -0
  140. package/.next/standalone/.next/static/chunks/{2es4z1ei90vsv.js → 37fcpc36x9gpe.js} +1 -1
  141. package/.next/standalone/.next/static/chunks/{136ldjmzxhush.js → 3c808qrfcq0im.js} +1 -1
  142. package/.next/standalone/.next/static/chunks/3k7mxbp9hiom0.js +1 -0
  143. package/.next/standalone/.next/static/chunks/3tzq0260n17ae.js +6 -0
  144. package/.next/standalone/.next/static/chunks/{turbopack-0-gxz80mjds94.js → turbopack-3kjgdgwci4tqf.js} +1 -1
  145. package/.next/standalone/docs-old/agenteye/alerts.mdx +63 -0
  146. package/.next/standalone/docs-old/agenteye/api-keys.mdx +280 -0
  147. package/.next/standalone/docs-old/agenteye/assistant.mdx +63 -0
  148. package/.next/standalone/docs-old/agenteye/audits.mdx +54 -0
  149. package/.next/standalone/docs-old/agenteye/cli-and-agents.mdx +80 -0
  150. package/.next/standalone/docs-old/agenteye/cli-recipes.mdx +179 -0
  151. package/.next/standalone/docs-old/agenteye/cli-skill.mdx +159 -0
  152. package/.next/standalone/docs-old/agenteye/cli.mdx +350 -0
  153. package/.next/standalone/docs-old/agenteye/codex-capture.mdx +55 -0
  154. package/.next/standalone/docs-old/agenteye/concepts.mdx +87 -0
  155. package/.next/standalone/docs-old/agenteye/dashboards.mdx +46 -0
  156. package/.next/standalone/docs-old/agenteye/error-tracking.mdx +41 -0
  157. package/.next/standalone/docs-old/agenteye/evaluation-suite.mdx +402 -0
  158. package/.next/standalone/docs-old/agenteye/evaluations.mdx +51 -0
  159. package/.next/standalone/docs-old/agenteye/evaluator-skill.mdx +167 -0
  160. package/.next/standalone/docs-old/agenteye/event-stream.mdx +50 -0
  161. package/.next/standalone/docs-old/agenteye/hermes-capture.mdx +53 -0
  162. package/.next/standalone/docs-old/agenteye/images/alert-new.png +0 -0
  163. package/.next/standalone/docs-old/agenteye/images/alerts.png +0 -0
  164. package/.next/standalone/docs-old/agenteye/images/api-keys.png +0 -0
  165. package/.next/standalone/docs-old/agenteye/images/assistant.png +0 -0
  166. package/.next/standalone/docs-old/agenteye/images/audits.png +0 -0
  167. package/.next/standalone/docs-old/agenteye/images/dashboard-fleet.png +0 -0
  168. package/.next/standalone/docs-old/agenteye/images/dashboard-quality.png +0 -0
  169. package/.next/standalone/docs-old/agenteye/images/errors.png +0 -0
  170. package/.next/standalone/docs-old/agenteye/images/events-stream.png +0 -0
  171. package/.next/standalone/docs-old/agenteye/images/hooks.png +0 -0
  172. package/.next/standalone/docs-old/agenteye/images/incident-detail.png +0 -0
  173. package/.next/standalone/docs-old/agenteye/images/incidents.png +0 -0
  174. package/.next/standalone/docs-old/agenteye/images/login.png +0 -0
  175. package/.next/standalone/docs-old/agenteye/images/models.png +0 -0
  176. package/.next/standalone/docs-old/agenteye/images/queries.png +0 -0
  177. package/.next/standalone/docs-old/agenteye/images/query-lab.png +0 -0
  178. package/.next/standalone/docs-old/agenteye/images/session-detail.png +0 -0
  179. package/.next/standalone/docs-old/agenteye/images/sessions-list.png +0 -0
  180. package/.next/standalone/docs-old/agenteye/images/settings.png +0 -0
  181. package/.next/standalone/docs-old/agenteye/images/tools.png +0 -0
  182. package/.next/standalone/docs-old/agenteye/images/users.png +0 -0
  183. package/.next/standalone/docs-old/agenteye/images/video-audit.jpg +0 -0
  184. package/.next/standalone/docs-old/agenteye/images/video-tracing.jpg +0 -0
  185. package/.next/standalone/docs-old/agenteye/incidents.mdx +50 -0
  186. package/.next/standalone/docs-old/agenteye/observability.mdx +23 -0
  187. package/.next/standalone/docs-old/agenteye/openclaw-capture.mdx +49 -0
  188. package/.next/standalone/docs-old/agenteye/overview.mdx +108 -0
  189. package/.next/standalone/docs-old/agenteye/python-sdk-skill.mdx +131 -0
  190. package/.next/standalone/docs-old/agenteye/python-sdk.mdx +436 -0
  191. package/.next/standalone/docs-old/agenteye/queries.mdx +56 -0
  192. package/.next/standalone/docs-old/agenteye/security.mdx +68 -0
  193. package/.next/standalone/docs-old/agenteye/sessions.mdx +57 -0
  194. package/.next/standalone/docs-old/agenteye/telemetry.mdx +52 -0
  195. package/.next/standalone/docs-old/ar/agenteye/alerts.mdx +63 -0
  196. package/.next/standalone/docs-old/ar/agenteye/api-keys.mdx +279 -0
  197. package/.next/standalone/docs-old/ar/agenteye/assistant.mdx +62 -0
  198. package/.next/standalone/docs-old/ar/agenteye/audits.mdx +55 -0
  199. package/.next/standalone/docs-old/ar/agenteye/cli-and-agents.mdx +81 -0
  200. package/.next/standalone/docs-old/ar/agenteye/cli-recipes.mdx +178 -0
  201. package/.next/standalone/docs-old/ar/agenteye/cli-skill.mdx +160 -0
  202. package/.next/standalone/docs-old/ar/agenteye/cli.mdx +349 -0
  203. package/.next/standalone/docs-old/ar/agenteye/codex-capture.mdx +56 -0
  204. package/.next/standalone/docs-old/ar/agenteye/concepts.mdx +88 -0
  205. package/.next/standalone/docs-old/ar/agenteye/dashboards.mdx +46 -0
  206. package/.next/standalone/docs-old/ar/agenteye/error-tracking.mdx +41 -0
  207. package/.next/standalone/docs-old/ar/agenteye/evaluation-suite.mdx +299 -0
  208. package/.next/standalone/docs-old/ar/agenteye/evaluations.mdx +51 -0
  209. package/.next/standalone/docs-old/ar/agenteye/evaluator-skill.mdx +168 -0
  210. package/.next/standalone/docs-old/ar/agenteye/event-stream.mdx +50 -0
  211. package/.next/standalone/docs-old/ar/agenteye/hermes-capture.mdx +54 -0
  212. package/.next/standalone/docs-old/ar/agenteye/incidents.mdx +51 -0
  213. package/.next/standalone/docs-old/ar/agenteye/observability.mdx +24 -0
  214. package/.next/standalone/docs-old/ar/agenteye/openclaw-capture.mdx +50 -0
  215. package/.next/standalone/docs-old/ar/agenteye/overview.mdx +108 -0
  216. package/.next/standalone/docs-old/ar/agenteye/python-sdk-skill.mdx +129 -0
  217. package/.next/standalone/docs-old/ar/agenteye/python-sdk.mdx +435 -0
  218. package/.next/standalone/docs-old/ar/agenteye/queries.mdx +57 -0
  219. package/.next/standalone/docs-old/ar/agenteye/security.mdx +68 -0
  220. package/.next/standalone/docs-old/ar/agenteye/sessions.mdx +58 -0
  221. package/.next/standalone/docs-old/ar/agenteye/telemetry.mdx +52 -0
  222. package/.next/standalone/docs-old/ar/architecture.mdx +333 -0
  223. package/.next/standalone/docs-old/ar/built-in-policies.mdx +860 -0
  224. package/.next/standalone/docs-old/ar/cli/audit.mdx +120 -0
  225. package/.next/standalone/docs-old/ar/cli/dashboard.mdx +30 -0
  226. package/.next/standalone/docs-old/ar/cli/environment-variables.mdx +70 -0
  227. package/.next/standalone/docs-old/ar/cli/hook.mdx +31 -0
  228. package/.next/standalone/docs-old/ar/cli/install-policies.mdx +57 -0
  229. package/.next/standalone/docs-old/ar/cli/list-policies.mdx +32 -0
  230. package/.next/standalone/docs-old/ar/cli/migrate.mdx +110 -0
  231. package/.next/standalone/docs-old/ar/cli/remove-policies.mdx +44 -0
  232. package/.next/standalone/docs-old/ar/cli/update.mdx +79 -0
  233. package/.next/standalone/docs-old/ar/cli/version.mdx +13 -0
  234. package/.next/standalone/docs-old/ar/configuration.mdx +268 -0
  235. package/.next/standalone/docs-old/ar/custom-policies.mdx +359 -0
  236. package/.next/standalone/docs-old/ar/dashboard.mdx +152 -0
  237. package/.next/standalone/docs-old/ar/examples.mdx +307 -0
  238. package/.next/standalone/docs-old/ar/for-agents.mdx +38 -0
  239. package/.next/standalone/docs-old/ar/getting-started.mdx +199 -0
  240. package/.next/standalone/docs-old/ar/introduction.mdx +58 -0
  241. package/.next/standalone/docs-old/ar/package-aliases.mdx +83 -0
  242. package/.next/standalone/docs-old/ar/testing.mdx +260 -0
  243. package/.next/standalone/docs-old/architecture.mdx +332 -0
  244. package/.next/standalone/docs-old/built-in-policies.mdx +859 -0
  245. package/.next/standalone/docs-old/cli/audit.mdx +188 -0
  246. package/.next/standalone/docs-old/cli/dashboard.mdx +29 -0
  247. package/.next/standalone/docs-old/cli/environment-variables.mdx +75 -0
  248. package/.next/standalone/docs-old/cli/hook.mdx +30 -0
  249. package/.next/standalone/docs-old/cli/install-policies.mdx +57 -0
  250. package/.next/standalone/docs-old/cli/list-policies.mdx +31 -0
  251. package/.next/standalone/docs-old/cli/migrate.mdx +117 -0
  252. package/.next/standalone/docs-old/cli/remove-policies.mdx +43 -0
  253. package/.next/standalone/docs-old/cli/update.mdx +94 -0
  254. package/.next/standalone/docs-old/cli/version.mdx +12 -0
  255. package/.next/standalone/docs-old/configuration.mdx +295 -0
  256. package/.next/standalone/docs-old/custom-policies.mdx +362 -0
  257. package/.next/standalone/docs-old/dashboard.mdx +176 -0
  258. package/.next/standalone/docs-old/de/agenteye/alerts.mdx +63 -0
  259. package/.next/standalone/docs-old/de/agenteye/api-keys.mdx +280 -0
  260. package/.next/standalone/docs-old/de/agenteye/assistant.mdx +63 -0
  261. package/.next/standalone/docs-old/de/agenteye/audits.mdx +54 -0
  262. package/.next/standalone/docs-old/de/agenteye/cli-and-agents.mdx +80 -0
  263. package/.next/standalone/docs-old/de/agenteye/cli-recipes.mdx +179 -0
  264. package/.next/standalone/docs-old/de/agenteye/cli-skill.mdx +159 -0
  265. package/.next/standalone/docs-old/de/agenteye/cli.mdx +350 -0
  266. package/.next/standalone/docs-old/de/agenteye/codex-capture.mdx +55 -0
  267. package/.next/standalone/docs-old/de/agenteye/concepts.mdx +87 -0
  268. package/.next/standalone/docs-old/de/agenteye/dashboards.mdx +46 -0
  269. package/.next/standalone/docs-old/de/agenteye/error-tracking.mdx +41 -0
  270. package/.next/standalone/docs-old/de/agenteye/evaluation-suite.mdx +300 -0
  271. package/.next/standalone/docs-old/de/agenteye/evaluations.mdx +50 -0
  272. package/.next/standalone/docs-old/de/agenteye/evaluator-skill.mdx +167 -0
  273. package/.next/standalone/docs-old/de/agenteye/event-stream.mdx +50 -0
  274. package/.next/standalone/docs-old/de/agenteye/hermes-capture.mdx +53 -0
  275. package/.next/standalone/docs-old/de/agenteye/incidents.mdx +50 -0
  276. package/.next/standalone/docs-old/de/agenteye/observability.mdx +23 -0
  277. package/.next/standalone/docs-old/de/agenteye/openclaw-capture.mdx +49 -0
  278. package/.next/standalone/docs-old/de/agenteye/overview.mdx +108 -0
  279. package/.next/standalone/docs-old/de/agenteye/python-sdk-skill.mdx +131 -0
  280. package/.next/standalone/docs-old/de/agenteye/python-sdk.mdx +436 -0
  281. package/.next/standalone/docs-old/de/agenteye/queries.mdx +56 -0
  282. package/.next/standalone/docs-old/de/agenteye/security.mdx +68 -0
  283. package/.next/standalone/docs-old/de/agenteye/sessions.mdx +57 -0
  284. package/.next/standalone/docs-old/de/agenteye/telemetry.mdx +52 -0
  285. package/.next/standalone/docs-old/de/architecture.mdx +332 -0
  286. package/.next/standalone/docs-old/de/built-in-policies.mdx +859 -0
  287. package/.next/standalone/docs-old/de/cli/audit.mdx +131 -0
  288. package/.next/standalone/docs-old/de/cli/dashboard.mdx +29 -0
  289. package/.next/standalone/docs-old/de/cli/environment-variables.mdx +72 -0
  290. package/.next/standalone/docs-old/de/cli/hook.mdx +30 -0
  291. package/.next/standalone/docs-old/de/cli/install-policies.mdx +57 -0
  292. package/.next/standalone/docs-old/de/cli/list-policies.mdx +31 -0
  293. package/.next/standalone/docs-old/de/cli/migrate.mdx +122 -0
  294. package/.next/standalone/docs-old/de/cli/remove-policies.mdx +43 -0
  295. package/.next/standalone/docs-old/de/cli/update.mdx +75 -0
  296. package/.next/standalone/docs-old/de/cli/version.mdx +12 -0
  297. package/.next/standalone/docs-old/de/configuration.mdx +272 -0
  298. package/.next/standalone/docs-old/de/custom-policies.mdx +358 -0
  299. package/.next/standalone/docs-old/de/dashboard.mdx +151 -0
  300. package/.next/standalone/docs-old/de/examples.mdx +307 -0
  301. package/.next/standalone/docs-old/de/for-agents.mdx +38 -0
  302. package/.next/standalone/docs-old/de/getting-started.mdx +199 -0
  303. package/.next/standalone/docs-old/de/introduction.mdx +57 -0
  304. package/.next/standalone/docs-old/de/package-aliases.mdx +82 -0
  305. package/.next/standalone/docs-old/de/testing.mdx +260 -0
  306. package/.next/standalone/docs-old/docs.json +1830 -0
  307. package/.next/standalone/docs-old/es/agenteye/alerts.mdx +63 -0
  308. package/.next/standalone/docs-old/es/agenteye/api-keys.mdx +280 -0
  309. package/.next/standalone/docs-old/es/agenteye/assistant.mdx +63 -0
  310. package/.next/standalone/docs-old/es/agenteye/audits.mdx +54 -0
  311. package/.next/standalone/docs-old/es/agenteye/cli-and-agents.mdx +80 -0
  312. package/.next/standalone/docs-old/es/agenteye/cli-recipes.mdx +178 -0
  313. package/.next/standalone/docs-old/es/agenteye/cli-skill.mdx +159 -0
  314. package/.next/standalone/docs-old/es/agenteye/cli.mdx +350 -0
  315. package/.next/standalone/docs-old/es/agenteye/codex-capture.mdx +55 -0
  316. package/.next/standalone/docs-old/es/agenteye/concepts.mdx +87 -0
  317. package/.next/standalone/docs-old/es/agenteye/dashboards.mdx +46 -0
  318. package/.next/standalone/docs-old/es/agenteye/error-tracking.mdx +41 -0
  319. package/.next/standalone/docs-old/es/agenteye/evaluation-suite.mdx +300 -0
  320. package/.next/standalone/docs-old/es/agenteye/evaluations.mdx +50 -0
  321. package/.next/standalone/docs-old/es/agenteye/evaluator-skill.mdx +167 -0
  322. package/.next/standalone/docs-old/es/agenteye/event-stream.mdx +50 -0
  323. package/.next/standalone/docs-old/es/agenteye/hermes-capture.mdx +53 -0
  324. package/.next/standalone/docs-old/es/agenteye/incidents.mdx +50 -0
  325. package/.next/standalone/docs-old/es/agenteye/observability.mdx +23 -0
  326. package/.next/standalone/docs-old/es/agenteye/openclaw-capture.mdx +49 -0
  327. package/.next/standalone/docs-old/es/agenteye/overview.mdx +108 -0
  328. package/.next/standalone/docs-old/es/agenteye/python-sdk-skill.mdx +135 -0
  329. package/.next/standalone/docs-old/es/agenteye/python-sdk.mdx +436 -0
  330. package/.next/standalone/docs-old/es/agenteye/queries.mdx +56 -0
  331. package/.next/standalone/docs-old/es/agenteye/security.mdx +68 -0
  332. package/.next/standalone/docs-old/es/agenteye/sessions.mdx +56 -0
  333. package/.next/standalone/docs-old/es/agenteye/telemetry.mdx +52 -0
  334. package/.next/standalone/docs-old/es/architecture.mdx +332 -0
  335. package/.next/standalone/docs-old/es/built-in-policies.mdx +853 -0
  336. package/.next/standalone/docs-old/es/cli/audit.mdx +137 -0
  337. package/.next/standalone/docs-old/es/cli/dashboard.mdx +29 -0
  338. package/.next/standalone/docs-old/es/cli/environment-variables.mdx +72 -0
  339. package/.next/standalone/docs-old/es/cli/hook.mdx +30 -0
  340. package/.next/standalone/docs-old/es/cli/install-policies.mdx +57 -0
  341. package/.next/standalone/docs-old/es/cli/list-policies.mdx +31 -0
  342. package/.next/standalone/docs-old/es/cli/migrate.mdx +86 -0
  343. package/.next/standalone/docs-old/es/cli/remove-policies.mdx +43 -0
  344. package/.next/standalone/docs-old/es/cli/update.mdx +64 -0
  345. package/.next/standalone/docs-old/es/cli/version.mdx +12 -0
  346. package/.next/standalone/docs-old/es/configuration.mdx +271 -0
  347. package/.next/standalone/docs-old/es/custom-policies.mdx +358 -0
  348. package/.next/standalone/docs-old/es/dashboard.mdx +151 -0
  349. package/.next/standalone/docs-old/es/examples.mdx +307 -0
  350. package/.next/standalone/docs-old/es/for-agents.mdx +38 -0
  351. package/.next/standalone/docs-old/es/getting-started.mdx +199 -0
  352. package/.next/standalone/docs-old/es/introduction.mdx +57 -0
  353. package/.next/standalone/docs-old/es/package-aliases.mdx +82 -0
  354. package/.next/standalone/docs-old/es/testing.mdx +260 -0
  355. package/.next/standalone/docs-old/examples.mdx +307 -0
  356. package/.next/standalone/docs-old/favicon.ico +0 -0
  357. package/.next/standalone/docs-old/for-agents.mdx +38 -0
  358. package/.next/standalone/docs-old/fr/agenteye/alerts.mdx +63 -0
  359. package/.next/standalone/docs-old/fr/agenteye/api-keys.mdx +280 -0
  360. package/.next/standalone/docs-old/fr/agenteye/assistant.mdx +63 -0
  361. package/.next/standalone/docs-old/fr/agenteye/audits.mdx +54 -0
  362. package/.next/standalone/docs-old/fr/agenteye/cli-and-agents.mdx +79 -0
  363. package/.next/standalone/docs-old/fr/agenteye/cli-recipes.mdx +179 -0
  364. package/.next/standalone/docs-old/fr/agenteye/cli-skill.mdx +159 -0
  365. package/.next/standalone/docs-old/fr/agenteye/cli.mdx +350 -0
  366. package/.next/standalone/docs-old/fr/agenteye/codex-capture.mdx +55 -0
  367. package/.next/standalone/docs-old/fr/agenteye/concepts.mdx +87 -0
  368. package/.next/standalone/docs-old/fr/agenteye/dashboards.mdx +46 -0
  369. package/.next/standalone/docs-old/fr/agenteye/error-tracking.mdx +40 -0
  370. package/.next/standalone/docs-old/fr/agenteye/evaluation-suite.mdx +401 -0
  371. package/.next/standalone/docs-old/fr/agenteye/evaluations.mdx +50 -0
  372. package/.next/standalone/docs-old/fr/agenteye/evaluator-skill.mdx +167 -0
  373. package/.next/standalone/docs-old/fr/agenteye/event-stream.mdx +50 -0
  374. package/.next/standalone/docs-old/fr/agenteye/hermes-capture.mdx +53 -0
  375. package/.next/standalone/docs-old/fr/agenteye/incidents.mdx +50 -0
  376. package/.next/standalone/docs-old/fr/agenteye/observability.mdx +23 -0
  377. package/.next/standalone/docs-old/fr/agenteye/openclaw-capture.mdx +49 -0
  378. package/.next/standalone/docs-old/fr/agenteye/overview.mdx +108 -0
  379. package/.next/standalone/docs-old/fr/agenteye/python-sdk-skill.mdx +135 -0
  380. package/.next/standalone/docs-old/fr/agenteye/python-sdk.mdx +436 -0
  381. package/.next/standalone/docs-old/fr/agenteye/queries.mdx +56 -0
  382. package/.next/standalone/docs-old/fr/agenteye/security.mdx +68 -0
  383. package/.next/standalone/docs-old/fr/agenteye/sessions.mdx +57 -0
  384. package/.next/standalone/docs-old/fr/agenteye/telemetry.mdx +52 -0
  385. package/.next/standalone/docs-old/fr/architecture.mdx +332 -0
  386. package/.next/standalone/docs-old/fr/built-in-policies.mdx +851 -0
  387. package/.next/standalone/docs-old/fr/cli/audit.mdx +126 -0
  388. package/.next/standalone/docs-old/fr/cli/dashboard.mdx +29 -0
  389. package/.next/standalone/docs-old/fr/cli/environment-variables.mdx +70 -0
  390. package/.next/standalone/docs-old/fr/cli/hook.mdx +30 -0
  391. package/.next/standalone/docs-old/fr/cli/install-policies.mdx +57 -0
  392. package/.next/standalone/docs-old/fr/cli/list-policies.mdx +31 -0
  393. package/.next/standalone/docs-old/fr/cli/migrate.mdx +86 -0
  394. package/.next/standalone/docs-old/fr/cli/remove-policies.mdx +43 -0
  395. package/.next/standalone/docs-old/fr/cli/update.mdx +64 -0
  396. package/.next/standalone/docs-old/fr/cli/version.mdx +12 -0
  397. package/.next/standalone/docs-old/fr/configuration.mdx +271 -0
  398. package/.next/standalone/docs-old/fr/custom-policies.mdx +358 -0
  399. package/.next/standalone/docs-old/fr/dashboard.mdx +151 -0
  400. package/.next/standalone/docs-old/fr/examples.mdx +307 -0
  401. package/.next/standalone/docs-old/fr/for-agents.mdx +38 -0
  402. package/.next/standalone/docs-old/fr/getting-started.mdx +199 -0
  403. package/.next/standalone/docs-old/fr/introduction.mdx +57 -0
  404. package/.next/standalone/docs-old/fr/package-aliases.mdx +82 -0
  405. package/.next/standalone/docs-old/fr/testing.mdx +260 -0
  406. package/.next/standalone/docs-old/getting-started.mdx +201 -0
  407. package/.next/standalone/docs-old/he/agenteye/alerts.mdx +63 -0
  408. package/.next/standalone/docs-old/he/agenteye/api-keys.mdx +279 -0
  409. package/.next/standalone/docs-old/he/agenteye/assistant.mdx +63 -0
  410. package/.next/standalone/docs-old/he/agenteye/audits.mdx +53 -0
  411. package/.next/standalone/docs-old/he/agenteye/cli-and-agents.mdx +80 -0
  412. package/.next/standalone/docs-old/he/agenteye/cli-recipes.mdx +179 -0
  413. package/.next/standalone/docs-old/he/agenteye/cli-skill.mdx +160 -0
  414. package/.next/standalone/docs-old/he/agenteye/cli.mdx +349 -0
  415. package/.next/standalone/docs-old/he/agenteye/codex-capture.mdx +56 -0
  416. package/.next/standalone/docs-old/he/agenteye/concepts.mdx +87 -0
  417. package/.next/standalone/docs-old/he/agenteye/dashboards.mdx +46 -0
  418. package/.next/standalone/docs-old/he/agenteye/error-tracking.mdx +41 -0
  419. package/.next/standalone/docs-old/he/agenteye/evaluation-suite.mdx +299 -0
  420. package/.next/standalone/docs-old/he/agenteye/evaluations.mdx +51 -0
  421. package/.next/standalone/docs-old/he/agenteye/evaluator-skill.mdx +168 -0
  422. package/.next/standalone/docs-old/he/agenteye/event-stream.mdx +50 -0
  423. package/.next/standalone/docs-old/he/agenteye/hermes-capture.mdx +54 -0
  424. package/.next/standalone/docs-old/he/agenteye/incidents.mdx +50 -0
  425. package/.next/standalone/docs-old/he/agenteye/observability.mdx +23 -0
  426. package/.next/standalone/docs-old/he/agenteye/openclaw-capture.mdx +50 -0
  427. package/.next/standalone/docs-old/he/agenteye/overview.mdx +108 -0
  428. package/.next/standalone/docs-old/he/agenteye/python-sdk-skill.mdx +132 -0
  429. package/.next/standalone/docs-old/he/agenteye/python-sdk.mdx +436 -0
  430. package/.next/standalone/docs-old/he/agenteye/queries.mdx +56 -0
  431. package/.next/standalone/docs-old/he/agenteye/security.mdx +67 -0
  432. package/.next/standalone/docs-old/he/agenteye/sessions.mdx +58 -0
  433. package/.next/standalone/docs-old/he/agenteye/telemetry.mdx +52 -0
  434. package/.next/standalone/docs-old/he/architecture.mdx +332 -0
  435. package/.next/standalone/docs-old/he/built-in-policies.mdx +857 -0
  436. package/.next/standalone/docs-old/he/cli/audit.mdx +116 -0
  437. package/.next/standalone/docs-old/he/cli/dashboard.mdx +30 -0
  438. package/.next/standalone/docs-old/he/cli/environment-variables.mdx +69 -0
  439. package/.next/standalone/docs-old/he/cli/hook.mdx +30 -0
  440. package/.next/standalone/docs-old/he/cli/install-policies.mdx +58 -0
  441. package/.next/standalone/docs-old/he/cli/list-policies.mdx +32 -0
  442. package/.next/standalone/docs-old/he/cli/migrate.mdx +87 -0
  443. package/.next/standalone/docs-old/he/cli/remove-policies.mdx +44 -0
  444. package/.next/standalone/docs-old/he/cli/update.mdx +64 -0
  445. package/.next/standalone/docs-old/he/cli/version.mdx +13 -0
  446. package/.next/standalone/docs-old/he/configuration.mdx +264 -0
  447. package/.next/standalone/docs-old/he/custom-policies.mdx +359 -0
  448. package/.next/standalone/docs-old/he/dashboard.mdx +155 -0
  449. package/.next/standalone/docs-old/he/examples.mdx +308 -0
  450. package/.next/standalone/docs-old/he/for-agents.mdx +38 -0
  451. package/.next/standalone/docs-old/he/getting-started.mdx +200 -0
  452. package/.next/standalone/docs-old/he/introduction.mdx +58 -0
  453. package/.next/standalone/docs-old/he/package-aliases.mdx +82 -0
  454. package/.next/standalone/docs-old/he/testing.mdx +260 -0
  455. package/.next/standalone/docs-old/hi/agenteye/alerts.mdx +62 -0
  456. package/.next/standalone/docs-old/hi/agenteye/api-keys.mdx +279 -0
  457. package/.next/standalone/docs-old/hi/agenteye/assistant.mdx +63 -0
  458. package/.next/standalone/docs-old/hi/agenteye/audits.mdx +53 -0
  459. package/.next/standalone/docs-old/hi/agenteye/cli-and-agents.mdx +80 -0
  460. package/.next/standalone/docs-old/hi/agenteye/cli-recipes.mdx +178 -0
  461. package/.next/standalone/docs-old/hi/agenteye/cli-skill.mdx +159 -0
  462. package/.next/standalone/docs-old/hi/agenteye/cli.mdx +350 -0
  463. package/.next/standalone/docs-old/hi/agenteye/codex-capture.mdx +56 -0
  464. package/.next/standalone/docs-old/hi/agenteye/concepts.mdx +87 -0
  465. package/.next/standalone/docs-old/hi/agenteye/dashboards.mdx +47 -0
  466. package/.next/standalone/docs-old/hi/agenteye/error-tracking.mdx +42 -0
  467. package/.next/standalone/docs-old/hi/agenteye/evaluation-suite.mdx +299 -0
  468. package/.next/standalone/docs-old/hi/agenteye/evaluations.mdx +51 -0
  469. package/.next/standalone/docs-old/hi/agenteye/evaluator-skill.mdx +171 -0
  470. package/.next/standalone/docs-old/hi/agenteye/event-stream.mdx +49 -0
  471. package/.next/standalone/docs-old/hi/agenteye/hermes-capture.mdx +53 -0
  472. package/.next/standalone/docs-old/hi/agenteye/incidents.mdx +50 -0
  473. package/.next/standalone/docs-old/hi/agenteye/observability.mdx +23 -0
  474. package/.next/standalone/docs-old/hi/agenteye/openclaw-capture.mdx +50 -0
  475. package/.next/standalone/docs-old/hi/agenteye/overview.mdx +107 -0
  476. package/.next/standalone/docs-old/hi/agenteye/python-sdk-skill.mdx +133 -0
  477. package/.next/standalone/docs-old/hi/agenteye/python-sdk.mdx +434 -0
  478. package/.next/standalone/docs-old/hi/agenteye/queries.mdx +57 -0
  479. package/.next/standalone/docs-old/hi/agenteye/security.mdx +68 -0
  480. package/.next/standalone/docs-old/hi/agenteye/sessions.mdx +57 -0
  481. package/.next/standalone/docs-old/hi/agenteye/telemetry.mdx +51 -0
  482. package/.next/standalone/docs-old/hi/architecture.mdx +332 -0
  483. package/.next/standalone/docs-old/hi/built-in-policies.mdx +848 -0
  484. package/.next/standalone/docs-old/hi/cli/audit.mdx +117 -0
  485. package/.next/standalone/docs-old/hi/cli/dashboard.mdx +29 -0
  486. package/.next/standalone/docs-old/hi/cli/environment-variables.mdx +64 -0
  487. package/.next/standalone/docs-old/hi/cli/hook.mdx +30 -0
  488. package/.next/standalone/docs-old/hi/cli/install-policies.mdx +57 -0
  489. package/.next/standalone/docs-old/hi/cli/list-policies.mdx +31 -0
  490. package/.next/standalone/docs-old/hi/cli/migrate.mdx +85 -0
  491. package/.next/standalone/docs-old/hi/cli/remove-policies.mdx +43 -0
  492. package/.next/standalone/docs-old/hi/cli/update.mdx +65 -0
  493. package/.next/standalone/docs-old/hi/cli/version.mdx +12 -0
  494. package/.next/standalone/docs-old/hi/configuration.mdx +264 -0
  495. package/.next/standalone/docs-old/hi/custom-policies.mdx +359 -0
  496. package/.next/standalone/docs-old/hi/dashboard.mdx +152 -0
  497. package/.next/standalone/docs-old/hi/examples.mdx +307 -0
  498. package/.next/standalone/docs-old/hi/for-agents.mdx +38 -0
  499. package/.next/standalone/docs-old/hi/getting-started.mdx +200 -0
  500. package/.next/standalone/docs-old/hi/introduction.mdx +58 -0
  501. package/.next/standalone/docs-old/hi/package-aliases.mdx +83 -0
  502. package/.next/standalone/docs-old/hi/testing.mdx +260 -0
  503. package/.next/standalone/docs-old/i18n/README.ar.md +230 -0
  504. package/.next/standalone/docs-old/i18n/README.de.md +225 -0
  505. package/.next/standalone/docs-old/i18n/README.es.md +225 -0
  506. package/.next/standalone/docs-old/i18n/README.fr.md +225 -0
  507. package/.next/standalone/docs-old/i18n/README.he.md +230 -0
  508. package/.next/standalone/docs-old/i18n/README.hi.md +222 -0
  509. package/.next/standalone/docs-old/i18n/README.it.md +225 -0
  510. package/.next/standalone/docs-old/i18n/README.ja.md +219 -0
  511. package/.next/standalone/docs-old/i18n/README.ko.md +225 -0
  512. package/.next/standalone/docs-old/i18n/README.pt-br.md +225 -0
  513. package/.next/standalone/docs-old/i18n/README.ru.md +222 -0
  514. package/.next/standalone/docs-old/i18n/README.tr.md +221 -0
  515. package/.next/standalone/docs-old/i18n/README.vi.md +225 -0
  516. package/.next/standalone/docs-old/i18n/README.zh.md +219 -0
  517. package/.next/standalone/docs-old/introduction.mdx +57 -0
  518. package/.next/standalone/docs-old/it/agenteye/alerts.mdx +62 -0
  519. package/.next/standalone/docs-old/it/agenteye/api-keys.mdx +279 -0
  520. package/.next/standalone/docs-old/it/agenteye/assistant.mdx +63 -0
  521. package/.next/standalone/docs-old/it/agenteye/audits.mdx +54 -0
  522. package/.next/standalone/docs-old/it/agenteye/cli-and-agents.mdx +80 -0
  523. package/.next/standalone/docs-old/it/agenteye/cli-recipes.mdx +179 -0
  524. package/.next/standalone/docs-old/it/agenteye/cli-skill.mdx +159 -0
  525. package/.next/standalone/docs-old/it/agenteye/cli.mdx +349 -0
  526. package/.next/standalone/docs-old/it/agenteye/codex-capture.mdx +56 -0
  527. package/.next/standalone/docs-old/it/agenteye/concepts.mdx +87 -0
  528. package/.next/standalone/docs-old/it/agenteye/dashboards.mdx +46 -0
  529. package/.next/standalone/docs-old/it/agenteye/error-tracking.mdx +41 -0
  530. package/.next/standalone/docs-old/it/agenteye/evaluation-suite.mdx +299 -0
  531. package/.next/standalone/docs-old/it/agenteye/evaluations.mdx +51 -0
  532. package/.next/standalone/docs-old/it/agenteye/evaluator-skill.mdx +170 -0
  533. package/.next/standalone/docs-old/it/agenteye/event-stream.mdx +50 -0
  534. package/.next/standalone/docs-old/it/agenteye/hermes-capture.mdx +53 -0
  535. package/.next/standalone/docs-old/it/agenteye/incidents.mdx +49 -0
  536. package/.next/standalone/docs-old/it/agenteye/observability.mdx +23 -0
  537. package/.next/standalone/docs-old/it/agenteye/openclaw-capture.mdx +49 -0
  538. package/.next/standalone/docs-old/it/agenteye/overview.mdx +107 -0
  539. package/.next/standalone/docs-old/it/agenteye/python-sdk-skill.mdx +132 -0
  540. package/.next/standalone/docs-old/it/agenteye/python-sdk.mdx +437 -0
  541. package/.next/standalone/docs-old/it/agenteye/queries.mdx +55 -0
  542. package/.next/standalone/docs-old/it/agenteye/security.mdx +68 -0
  543. package/.next/standalone/docs-old/it/agenteye/sessions.mdx +57 -0
  544. package/.next/standalone/docs-old/it/agenteye/telemetry.mdx +52 -0
  545. package/.next/standalone/docs-old/it/architecture.mdx +333 -0
  546. package/.next/standalone/docs-old/it/built-in-policies.mdx +853 -0
  547. package/.next/standalone/docs-old/it/cli/audit.mdx +126 -0
  548. package/.next/standalone/docs-old/it/cli/dashboard.mdx +30 -0
  549. package/.next/standalone/docs-old/it/cli/environment-variables.mdx +65 -0
  550. package/.next/standalone/docs-old/it/cli/hook.mdx +30 -0
  551. package/.next/standalone/docs-old/it/cli/install-policies.mdx +57 -0
  552. package/.next/standalone/docs-old/it/cli/list-policies.mdx +31 -0
  553. package/.next/standalone/docs-old/it/cli/migrate.mdx +122 -0
  554. package/.next/standalone/docs-old/it/cli/remove-policies.mdx +43 -0
  555. package/.next/standalone/docs-old/it/cli/update.mdx +86 -0
  556. package/.next/standalone/docs-old/it/cli/version.mdx +12 -0
  557. package/.next/standalone/docs-old/it/configuration.mdx +269 -0
  558. package/.next/standalone/docs-old/it/custom-policies.mdx +359 -0
  559. package/.next/standalone/docs-old/it/dashboard.mdx +151 -0
  560. package/.next/standalone/docs-old/it/examples.mdx +307 -0
  561. package/.next/standalone/docs-old/it/for-agents.mdx +38 -0
  562. package/.next/standalone/docs-old/it/getting-started.mdx +199 -0
  563. package/.next/standalone/docs-old/it/introduction.mdx +58 -0
  564. package/.next/standalone/docs-old/it/package-aliases.mdx +82 -0
  565. package/.next/standalone/docs-old/it/testing.mdx +261 -0
  566. package/.next/standalone/docs-old/ja/agenteye/alerts.mdx +63 -0
  567. package/.next/standalone/docs-old/ja/agenteye/api-keys.mdx +280 -0
  568. package/.next/standalone/docs-old/ja/agenteye/assistant.mdx +63 -0
  569. package/.next/standalone/docs-old/ja/agenteye/audits.mdx +54 -0
  570. package/.next/standalone/docs-old/ja/agenteye/cli-and-agents.mdx +80 -0
  571. package/.next/standalone/docs-old/ja/agenteye/cli-recipes.mdx +179 -0
  572. package/.next/standalone/docs-old/ja/agenteye/cli-skill.mdx +159 -0
  573. package/.next/standalone/docs-old/ja/agenteye/cli.mdx +350 -0
  574. package/.next/standalone/docs-old/ja/agenteye/codex-capture.mdx +55 -0
  575. package/.next/standalone/docs-old/ja/agenteye/concepts.mdx +87 -0
  576. package/.next/standalone/docs-old/ja/agenteye/dashboards.mdx +46 -0
  577. package/.next/standalone/docs-old/ja/agenteye/error-tracking.mdx +41 -0
  578. package/.next/standalone/docs-old/ja/agenteye/evaluation-suite.mdx +300 -0
  579. package/.next/standalone/docs-old/ja/agenteye/evaluations.mdx +51 -0
  580. package/.next/standalone/docs-old/ja/agenteye/evaluator-skill.mdx +167 -0
  581. package/.next/standalone/docs-old/ja/agenteye/event-stream.mdx +50 -0
  582. package/.next/standalone/docs-old/ja/agenteye/hermes-capture.mdx +53 -0
  583. package/.next/standalone/docs-old/ja/agenteye/incidents.mdx +50 -0
  584. package/.next/standalone/docs-old/ja/agenteye/observability.mdx +23 -0
  585. package/.next/standalone/docs-old/ja/agenteye/openclaw-capture.mdx +49 -0
  586. package/.next/standalone/docs-old/ja/agenteye/overview.mdx +108 -0
  587. package/.next/standalone/docs-old/ja/agenteye/python-sdk-skill.mdx +131 -0
  588. package/.next/standalone/docs-old/ja/agenteye/python-sdk.mdx +433 -0
  589. package/.next/standalone/docs-old/ja/agenteye/queries.mdx +56 -0
  590. package/.next/standalone/docs-old/ja/agenteye/security.mdx +68 -0
  591. package/.next/standalone/docs-old/ja/agenteye/sessions.mdx +57 -0
  592. package/.next/standalone/docs-old/ja/agenteye/telemetry.mdx +52 -0
  593. package/.next/standalone/docs-old/ja/architecture.mdx +332 -0
  594. package/.next/standalone/docs-old/ja/built-in-policies.mdx +848 -0
  595. package/.next/standalone/docs-old/ja/cli/audit.mdx +116 -0
  596. package/.next/standalone/docs-old/ja/cli/dashboard.mdx +29 -0
  597. package/.next/standalone/docs-old/ja/cli/environment-variables.mdx +63 -0
  598. package/.next/standalone/docs-old/ja/cli/hook.mdx +30 -0
  599. package/.next/standalone/docs-old/ja/cli/install-policies.mdx +57 -0
  600. package/.next/standalone/docs-old/ja/cli/list-policies.mdx +31 -0
  601. package/.next/standalone/docs-old/ja/cli/migrate.mdx +86 -0
  602. package/.next/standalone/docs-old/ja/cli/remove-policies.mdx +43 -0
  603. package/.next/standalone/docs-old/ja/cli/update.mdx +64 -0
  604. package/.next/standalone/docs-old/ja/cli/version.mdx +12 -0
  605. package/.next/standalone/docs-old/ja/configuration.mdx +264 -0
  606. package/.next/standalone/docs-old/ja/custom-policies.mdx +358 -0
  607. package/.next/standalone/docs-old/ja/dashboard.mdx +151 -0
  608. package/.next/standalone/docs-old/ja/examples.mdx +307 -0
  609. package/.next/standalone/docs-old/ja/for-agents.mdx +38 -0
  610. package/.next/standalone/docs-old/ja/getting-started.mdx +199 -0
  611. package/.next/standalone/docs-old/ja/introduction.mdx +57 -0
  612. package/.next/standalone/docs-old/ja/package-aliases.mdx +82 -0
  613. package/.next/standalone/docs-old/ja/testing.mdx +260 -0
  614. package/.next/standalone/docs-old/ko/agenteye/alerts.mdx +63 -0
  615. package/.next/standalone/docs-old/ko/agenteye/api-keys.mdx +280 -0
  616. package/.next/standalone/docs-old/ko/agenteye/assistant.mdx +63 -0
  617. package/.next/standalone/docs-old/ko/agenteye/audits.mdx +54 -0
  618. package/.next/standalone/docs-old/ko/agenteye/cli-and-agents.mdx +80 -0
  619. package/.next/standalone/docs-old/ko/agenteye/cli-recipes.mdx +179 -0
  620. package/.next/standalone/docs-old/ko/agenteye/cli-skill.mdx +159 -0
  621. package/.next/standalone/docs-old/ko/agenteye/cli.mdx +350 -0
  622. package/.next/standalone/docs-old/ko/agenteye/codex-capture.mdx +55 -0
  623. package/.next/standalone/docs-old/ko/agenteye/concepts.mdx +87 -0
  624. package/.next/standalone/docs-old/ko/agenteye/dashboards.mdx +46 -0
  625. package/.next/standalone/docs-old/ko/agenteye/error-tracking.mdx +40 -0
  626. package/.next/standalone/docs-old/ko/agenteye/evaluation-suite.mdx +303 -0
  627. package/.next/standalone/docs-old/ko/agenteye/evaluations.mdx +50 -0
  628. package/.next/standalone/docs-old/ko/agenteye/evaluator-skill.mdx +167 -0
  629. package/.next/standalone/docs-old/ko/agenteye/event-stream.mdx +50 -0
  630. package/.next/standalone/docs-old/ko/agenteye/hermes-capture.mdx +53 -0
  631. package/.next/standalone/docs-old/ko/agenteye/incidents.mdx +50 -0
  632. package/.next/standalone/docs-old/ko/agenteye/observability.mdx +23 -0
  633. package/.next/standalone/docs-old/ko/agenteye/openclaw-capture.mdx +49 -0
  634. package/.next/standalone/docs-old/ko/agenteye/overview.mdx +108 -0
  635. package/.next/standalone/docs-old/ko/agenteye/python-sdk-skill.mdx +130 -0
  636. package/.next/standalone/docs-old/ko/agenteye/python-sdk.mdx +433 -0
  637. package/.next/standalone/docs-old/ko/agenteye/queries.mdx +56 -0
  638. package/.next/standalone/docs-old/ko/agenteye/security.mdx +68 -0
  639. package/.next/standalone/docs-old/ko/agenteye/sessions.mdx +57 -0
  640. package/.next/standalone/docs-old/ko/agenteye/telemetry.mdx +52 -0
  641. package/.next/standalone/docs-old/ko/architecture.mdx +332 -0
  642. package/.next/standalone/docs-old/ko/built-in-policies.mdx +854 -0
  643. package/.next/standalone/docs-old/ko/cli/audit.mdx +131 -0
  644. package/.next/standalone/docs-old/ko/cli/dashboard.mdx +29 -0
  645. package/.next/standalone/docs-old/ko/cli/environment-variables.mdx +66 -0
  646. package/.next/standalone/docs-old/ko/cli/hook.mdx +30 -0
  647. package/.next/standalone/docs-old/ko/cli/install-policies.mdx +57 -0
  648. package/.next/standalone/docs-old/ko/cli/list-policies.mdx +31 -0
  649. package/.next/standalone/docs-old/ko/cli/migrate.mdx +86 -0
  650. package/.next/standalone/docs-old/ko/cli/remove-policies.mdx +43 -0
  651. package/.next/standalone/docs-old/ko/cli/update.mdx +64 -0
  652. package/.next/standalone/docs-old/ko/cli/version.mdx +12 -0
  653. package/.next/standalone/docs-old/ko/configuration.mdx +267 -0
  654. package/.next/standalone/docs-old/ko/custom-policies.mdx +358 -0
  655. package/.next/standalone/docs-old/ko/dashboard.mdx +151 -0
  656. package/.next/standalone/docs-old/ko/examples.mdx +307 -0
  657. package/.next/standalone/docs-old/ko/for-agents.mdx +38 -0
  658. package/.next/standalone/docs-old/ko/getting-started.mdx +199 -0
  659. package/.next/standalone/docs-old/ko/introduction.mdx +57 -0
  660. package/.next/standalone/docs-old/ko/package-aliases.mdx +82 -0
  661. package/.next/standalone/docs-old/ko/testing.mdx +260 -0
  662. package/.next/standalone/docs-old/logo/Failproof_AI_logo.png +0 -0
  663. package/.next/standalone/docs-old/logo/Failproof_AI_logo_light.png +0 -0
  664. package/.next/standalone/docs-old/package-aliases.mdx +82 -0
  665. package/.next/standalone/docs-old/pt-br/agenteye/alerts.mdx +63 -0
  666. package/.next/standalone/docs-old/pt-br/agenteye/api-keys.mdx +280 -0
  667. package/.next/standalone/docs-old/pt-br/agenteye/assistant.mdx +63 -0
  668. package/.next/standalone/docs-old/pt-br/agenteye/audits.mdx +54 -0
  669. package/.next/standalone/docs-old/pt-br/agenteye/cli-and-agents.mdx +80 -0
  670. package/.next/standalone/docs-old/pt-br/agenteye/cli-recipes.mdx +179 -0
  671. package/.next/standalone/docs-old/pt-br/agenteye/cli-skill.mdx +159 -0
  672. package/.next/standalone/docs-old/pt-br/agenteye/cli.mdx +350 -0
  673. package/.next/standalone/docs-old/pt-br/agenteye/codex-capture.mdx +55 -0
  674. package/.next/standalone/docs-old/pt-br/agenteye/concepts.mdx +87 -0
  675. package/.next/standalone/docs-old/pt-br/agenteye/dashboards.mdx +45 -0
  676. package/.next/standalone/docs-old/pt-br/agenteye/error-tracking.mdx +40 -0
  677. package/.next/standalone/docs-old/pt-br/agenteye/evaluation-suite.mdx +401 -0
  678. package/.next/standalone/docs-old/pt-br/agenteye/evaluations.mdx +51 -0
  679. package/.next/standalone/docs-old/pt-br/agenteye/evaluator-skill.mdx +167 -0
  680. package/.next/standalone/docs-old/pt-br/agenteye/event-stream.mdx +50 -0
  681. package/.next/standalone/docs-old/pt-br/agenteye/hermes-capture.mdx +53 -0
  682. package/.next/standalone/docs-old/pt-br/agenteye/incidents.mdx +50 -0
  683. package/.next/standalone/docs-old/pt-br/agenteye/observability.mdx +23 -0
  684. package/.next/standalone/docs-old/pt-br/agenteye/openclaw-capture.mdx +49 -0
  685. package/.next/standalone/docs-old/pt-br/agenteye/overview.mdx +108 -0
  686. package/.next/standalone/docs-old/pt-br/agenteye/python-sdk-skill.mdx +136 -0
  687. package/.next/standalone/docs-old/pt-br/agenteye/python-sdk.mdx +436 -0
  688. package/.next/standalone/docs-old/pt-br/agenteye/queries.mdx +56 -0
  689. package/.next/standalone/docs-old/pt-br/agenteye/security.mdx +68 -0
  690. package/.next/standalone/docs-old/pt-br/agenteye/sessions.mdx +56 -0
  691. package/.next/standalone/docs-old/pt-br/agenteye/telemetry.mdx +52 -0
  692. package/.next/standalone/docs-old/pt-br/architecture.mdx +332 -0
  693. package/.next/standalone/docs-old/pt-br/built-in-policies.mdx +858 -0
  694. package/.next/standalone/docs-old/pt-br/cli/audit.mdx +132 -0
  695. package/.next/standalone/docs-old/pt-br/cli/dashboard.mdx +29 -0
  696. package/.next/standalone/docs-old/pt-br/cli/environment-variables.mdx +72 -0
  697. package/.next/standalone/docs-old/pt-br/cli/hook.mdx +30 -0
  698. package/.next/standalone/docs-old/pt-br/cli/install-policies.mdx +57 -0
  699. package/.next/standalone/docs-old/pt-br/cli/list-policies.mdx +31 -0
  700. package/.next/standalone/docs-old/pt-br/cli/migrate.mdx +86 -0
  701. package/.next/standalone/docs-old/pt-br/cli/remove-policies.mdx +43 -0
  702. package/.next/standalone/docs-old/pt-br/cli/update.mdx +64 -0
  703. package/.next/standalone/docs-old/pt-br/cli/version.mdx +12 -0
  704. package/.next/standalone/docs-old/pt-br/configuration.mdx +268 -0
  705. package/.next/standalone/docs-old/pt-br/custom-policies.mdx +358 -0
  706. package/.next/standalone/docs-old/pt-br/dashboard.mdx +151 -0
  707. package/.next/standalone/docs-old/pt-br/examples.mdx +307 -0
  708. package/.next/standalone/docs-old/pt-br/for-agents.mdx +38 -0
  709. package/.next/standalone/docs-old/pt-br/getting-started.mdx +199 -0
  710. package/.next/standalone/docs-old/pt-br/introduction.mdx +57 -0
  711. package/.next/standalone/docs-old/pt-br/package-aliases.mdx +82 -0
  712. package/.next/standalone/docs-old/pt-br/testing.mdx +260 -0
  713. package/.next/standalone/docs-old/ru/agenteye/alerts.mdx +63 -0
  714. package/.next/standalone/docs-old/ru/agenteye/api-keys.mdx +280 -0
  715. package/.next/standalone/docs-old/ru/agenteye/assistant.mdx +63 -0
  716. package/.next/standalone/docs-old/ru/agenteye/audits.mdx +54 -0
  717. package/.next/standalone/docs-old/ru/agenteye/cli-and-agents.mdx +80 -0
  718. package/.next/standalone/docs-old/ru/agenteye/cli-recipes.mdx +179 -0
  719. package/.next/standalone/docs-old/ru/agenteye/cli-skill.mdx +159 -0
  720. package/.next/standalone/docs-old/ru/agenteye/cli.mdx +350 -0
  721. package/.next/standalone/docs-old/ru/agenteye/codex-capture.mdx +55 -0
  722. package/.next/standalone/docs-old/ru/agenteye/concepts.mdx +87 -0
  723. package/.next/standalone/docs-old/ru/agenteye/dashboards.mdx +46 -0
  724. package/.next/standalone/docs-old/ru/agenteye/error-tracking.mdx +41 -0
  725. package/.next/standalone/docs-old/ru/agenteye/evaluation-suite.mdx +401 -0
  726. package/.next/standalone/docs-old/ru/agenteye/evaluations.mdx +51 -0
  727. package/.next/standalone/docs-old/ru/agenteye/evaluator-skill.mdx +171 -0
  728. package/.next/standalone/docs-old/ru/agenteye/event-stream.mdx +51 -0
  729. package/.next/standalone/docs-old/ru/agenteye/hermes-capture.mdx +53 -0
  730. package/.next/standalone/docs-old/ru/agenteye/incidents.mdx +50 -0
  731. package/.next/standalone/docs-old/ru/agenteye/observability.mdx +23 -0
  732. package/.next/standalone/docs-old/ru/agenteye/openclaw-capture.mdx +49 -0
  733. package/.next/standalone/docs-old/ru/agenteye/overview.mdx +107 -0
  734. package/.next/standalone/docs-old/ru/agenteye/python-sdk-skill.mdx +131 -0
  735. package/.next/standalone/docs-old/ru/agenteye/python-sdk.mdx +437 -0
  736. package/.next/standalone/docs-old/ru/agenteye/queries.mdx +56 -0
  737. package/.next/standalone/docs-old/ru/agenteye/security.mdx +68 -0
  738. package/.next/standalone/docs-old/ru/agenteye/sessions.mdx +57 -0
  739. package/.next/standalone/docs-old/ru/agenteye/telemetry.mdx +52 -0
  740. package/.next/standalone/docs-old/ru/architecture.mdx +333 -0
  741. package/.next/standalone/docs-old/ru/built-in-policies.mdx +853 -0
  742. package/.next/standalone/docs-old/ru/cli/audit.mdx +132 -0
  743. package/.next/standalone/docs-old/ru/cli/dashboard.mdx +29 -0
  744. package/.next/standalone/docs-old/ru/cli/environment-variables.mdx +72 -0
  745. package/.next/standalone/docs-old/ru/cli/hook.mdx +30 -0
  746. package/.next/standalone/docs-old/ru/cli/install-policies.mdx +57 -0
  747. package/.next/standalone/docs-old/ru/cli/list-policies.mdx +31 -0
  748. package/.next/standalone/docs-old/ru/cli/migrate.mdx +91 -0
  749. package/.next/standalone/docs-old/ru/cli/remove-policies.mdx +44 -0
  750. package/.next/standalone/docs-old/ru/cli/update.mdx +64 -0
  751. package/.next/standalone/docs-old/ru/cli/version.mdx +12 -0
  752. package/.next/standalone/docs-old/ru/configuration.mdx +269 -0
  753. package/.next/standalone/docs-old/ru/custom-policies.mdx +358 -0
  754. package/.next/standalone/docs-old/ru/dashboard.mdx +155 -0
  755. package/.next/standalone/docs-old/ru/examples.mdx +307 -0
  756. package/.next/standalone/docs-old/ru/for-agents.mdx +38 -0
  757. package/.next/standalone/docs-old/ru/getting-started.mdx +199 -0
  758. package/.next/standalone/docs-old/ru/introduction.mdx +58 -0
  759. package/.next/standalone/docs-old/ru/package-aliases.mdx +82 -0
  760. package/.next/standalone/docs-old/ru/testing.mdx +260 -0
  761. package/.next/standalone/docs-old/styles/config/vocabularies/Mintlify/accept.txt +52 -0
  762. package/.next/standalone/docs-old/superpowers/specs/2026-06-11-audit-poster-restructure-design.md +332 -0
  763. package/.next/standalone/docs-old/testing.mdx +260 -0
  764. package/.next/standalone/docs-old/tr/agenteye/alerts.mdx +63 -0
  765. package/.next/standalone/docs-old/tr/agenteye/api-keys.mdx +279 -0
  766. package/.next/standalone/docs-old/tr/agenteye/assistant.mdx +63 -0
  767. package/.next/standalone/docs-old/tr/agenteye/audits.mdx +54 -0
  768. package/.next/standalone/docs-old/tr/agenteye/cli-and-agents.mdx +80 -0
  769. package/.next/standalone/docs-old/tr/agenteye/cli-recipes.mdx +179 -0
  770. package/.next/standalone/docs-old/tr/agenteye/cli-skill.mdx +161 -0
  771. package/.next/standalone/docs-old/tr/agenteye/cli.mdx +350 -0
  772. package/.next/standalone/docs-old/tr/agenteye/codex-capture.mdx +56 -0
  773. package/.next/standalone/docs-old/tr/agenteye/concepts.mdx +87 -0
  774. package/.next/standalone/docs-old/tr/agenteye/dashboards.mdx +46 -0
  775. package/.next/standalone/docs-old/tr/agenteye/error-tracking.mdx +41 -0
  776. package/.next/standalone/docs-old/tr/agenteye/evaluation-suite.mdx +299 -0
  777. package/.next/standalone/docs-old/tr/agenteye/evaluations.mdx +51 -0
  778. package/.next/standalone/docs-old/tr/agenteye/evaluator-skill.mdx +167 -0
  779. package/.next/standalone/docs-old/tr/agenteye/event-stream.mdx +50 -0
  780. package/.next/standalone/docs-old/tr/agenteye/hermes-capture.mdx +53 -0
  781. package/.next/standalone/docs-old/tr/agenteye/incidents.mdx +50 -0
  782. package/.next/standalone/docs-old/tr/agenteye/observability.mdx +23 -0
  783. package/.next/standalone/docs-old/tr/agenteye/openclaw-capture.mdx +50 -0
  784. package/.next/standalone/docs-old/tr/agenteye/overview.mdx +107 -0
  785. package/.next/standalone/docs-old/tr/agenteye/python-sdk-skill.mdx +130 -0
  786. package/.next/standalone/docs-old/tr/agenteye/python-sdk.mdx +436 -0
  787. package/.next/standalone/docs-old/tr/agenteye/queries.mdx +55 -0
  788. package/.next/standalone/docs-old/tr/agenteye/security.mdx +69 -0
  789. package/.next/standalone/docs-old/tr/agenteye/sessions.mdx +57 -0
  790. package/.next/standalone/docs-old/tr/agenteye/telemetry.mdx +52 -0
  791. package/.next/standalone/docs-old/tr/architecture.mdx +332 -0
  792. package/.next/standalone/docs-old/tr/built-in-policies.mdx +848 -0
  793. package/.next/standalone/docs-old/tr/cli/audit.mdx +117 -0
  794. package/.next/standalone/docs-old/tr/cli/dashboard.mdx +29 -0
  795. package/.next/standalone/docs-old/tr/cli/environment-variables.mdx +65 -0
  796. package/.next/standalone/docs-old/tr/cli/hook.mdx +31 -0
  797. package/.next/standalone/docs-old/tr/cli/install-policies.mdx +57 -0
  798. package/.next/standalone/docs-old/tr/cli/list-policies.mdx +31 -0
  799. package/.next/standalone/docs-old/tr/cli/migrate.mdx +87 -0
  800. package/.next/standalone/docs-old/tr/cli/remove-policies.mdx +43 -0
  801. package/.next/standalone/docs-old/tr/cli/update.mdx +88 -0
  802. package/.next/standalone/docs-old/tr/cli/version.mdx +12 -0
  803. package/.next/standalone/docs-old/tr/configuration.mdx +268 -0
  804. package/.next/standalone/docs-old/tr/custom-policies.mdx +358 -0
  805. package/.next/standalone/docs-old/tr/dashboard.mdx +152 -0
  806. package/.next/standalone/docs-old/tr/examples.mdx +307 -0
  807. package/.next/standalone/docs-old/tr/for-agents.mdx +38 -0
  808. package/.next/standalone/docs-old/tr/getting-started.mdx +199 -0
  809. package/.next/standalone/docs-old/tr/introduction.mdx +57 -0
  810. package/.next/standalone/docs-old/tr/package-aliases.mdx +82 -0
  811. package/.next/standalone/docs-old/tr/testing.mdx +261 -0
  812. package/.next/standalone/docs-old/vi/agenteye/alerts.mdx +63 -0
  813. package/.next/standalone/docs-old/vi/agenteye/api-keys.mdx +280 -0
  814. package/.next/standalone/docs-old/vi/agenteye/assistant.mdx +63 -0
  815. package/.next/standalone/docs-old/vi/agenteye/audits.mdx +54 -0
  816. package/.next/standalone/docs-old/vi/agenteye/cli-and-agents.mdx +80 -0
  817. package/.next/standalone/docs-old/vi/agenteye/cli-recipes.mdx +178 -0
  818. package/.next/standalone/docs-old/vi/agenteye/cli-skill.mdx +159 -0
  819. package/.next/standalone/docs-old/vi/agenteye/cli.mdx +349 -0
  820. package/.next/standalone/docs-old/vi/agenteye/codex-capture.mdx +55 -0
  821. package/.next/standalone/docs-old/vi/agenteye/concepts.mdx +88 -0
  822. package/.next/standalone/docs-old/vi/agenteye/dashboards.mdx +46 -0
  823. package/.next/standalone/docs-old/vi/agenteye/error-tracking.mdx +41 -0
  824. package/.next/standalone/docs-old/vi/agenteye/evaluation-suite.mdx +300 -0
  825. package/.next/standalone/docs-old/vi/agenteye/evaluations.mdx +51 -0
  826. package/.next/standalone/docs-old/vi/agenteye/evaluator-skill.mdx +171 -0
  827. package/.next/standalone/docs-old/vi/agenteye/event-stream.mdx +50 -0
  828. package/.next/standalone/docs-old/vi/agenteye/hermes-capture.mdx +53 -0
  829. package/.next/standalone/docs-old/vi/agenteye/incidents.mdx +50 -0
  830. package/.next/standalone/docs-old/vi/agenteye/observability.mdx +23 -0
  831. package/.next/standalone/docs-old/vi/agenteye/openclaw-capture.mdx +49 -0
  832. package/.next/standalone/docs-old/vi/agenteye/overview.mdx +109 -0
  833. package/.next/standalone/docs-old/vi/agenteye/python-sdk-skill.mdx +131 -0
  834. package/.next/standalone/docs-old/vi/agenteye/python-sdk.mdx +433 -0
  835. package/.next/standalone/docs-old/vi/agenteye/queries.mdx +55 -0
  836. package/.next/standalone/docs-old/vi/agenteye/security.mdx +68 -0
  837. package/.next/standalone/docs-old/vi/agenteye/sessions.mdx +57 -0
  838. package/.next/standalone/docs-old/vi/agenteye/telemetry.mdx +52 -0
  839. package/.next/standalone/docs-old/vi/architecture.mdx +332 -0
  840. package/.next/standalone/docs-old/vi/built-in-policies.mdx +853 -0
  841. package/.next/standalone/docs-old/vi/cli/audit.mdx +120 -0
  842. package/.next/standalone/docs-old/vi/cli/dashboard.mdx +29 -0
  843. package/.next/standalone/docs-old/vi/cli/environment-variables.mdx +69 -0
  844. package/.next/standalone/docs-old/vi/cli/hook.mdx +30 -0
  845. package/.next/standalone/docs-old/vi/cli/install-policies.mdx +57 -0
  846. package/.next/standalone/docs-old/vi/cli/list-policies.mdx +32 -0
  847. package/.next/standalone/docs-old/vi/cli/migrate.mdx +122 -0
  848. package/.next/standalone/docs-old/vi/cli/remove-policies.mdx +43 -0
  849. package/.next/standalone/docs-old/vi/cli/update.mdx +95 -0
  850. package/.next/standalone/docs-old/vi/cli/version.mdx +12 -0
  851. package/.next/standalone/docs-old/vi/configuration.mdx +268 -0
  852. package/.next/standalone/docs-old/vi/custom-policies.mdx +358 -0
  853. package/.next/standalone/docs-old/vi/dashboard.mdx +151 -0
  854. package/.next/standalone/docs-old/vi/examples.mdx +308 -0
  855. package/.next/standalone/docs-old/vi/for-agents.mdx +39 -0
  856. package/.next/standalone/docs-old/vi/getting-started.mdx +200 -0
  857. package/.next/standalone/docs-old/vi/introduction.mdx +57 -0
  858. package/.next/standalone/docs-old/vi/package-aliases.mdx +83 -0
  859. package/.next/standalone/docs-old/vi/testing.mdx +261 -0
  860. package/.next/standalone/docs-old/zh/agenteye/alerts.mdx +63 -0
  861. package/.next/standalone/docs-old/zh/agenteye/api-keys.mdx +280 -0
  862. package/.next/standalone/docs-old/zh/agenteye/assistant.mdx +63 -0
  863. package/.next/standalone/docs-old/zh/agenteye/audits.mdx +54 -0
  864. package/.next/standalone/docs-old/zh/agenteye/cli-and-agents.mdx +79 -0
  865. package/.next/standalone/docs-old/zh/agenteye/cli-recipes.mdx +179 -0
  866. package/.next/standalone/docs-old/zh/agenteye/cli-skill.mdx +159 -0
  867. package/.next/standalone/docs-old/zh/agenteye/cli.mdx +350 -0
  868. package/.next/standalone/docs-old/zh/agenteye/codex-capture.mdx +55 -0
  869. package/.next/standalone/docs-old/zh/agenteye/concepts.mdx +87 -0
  870. package/.next/standalone/docs-old/zh/agenteye/dashboards.mdx +46 -0
  871. package/.next/standalone/docs-old/zh/agenteye/error-tracking.mdx +40 -0
  872. package/.next/standalone/docs-old/zh/agenteye/evaluation-suite.mdx +300 -0
  873. package/.next/standalone/docs-old/zh/agenteye/evaluations.mdx +51 -0
  874. package/.next/standalone/docs-old/zh/agenteye/evaluator-skill.mdx +167 -0
  875. package/.next/standalone/docs-old/zh/agenteye/event-stream.mdx +50 -0
  876. package/.next/standalone/docs-old/zh/agenteye/hermes-capture.mdx +53 -0
  877. package/.next/standalone/docs-old/zh/agenteye/incidents.mdx +50 -0
  878. package/.next/standalone/docs-old/zh/agenteye/observability.mdx +23 -0
  879. package/.next/standalone/docs-old/zh/agenteye/openclaw-capture.mdx +49 -0
  880. package/.next/standalone/docs-old/zh/agenteye/overview.mdx +108 -0
  881. package/.next/standalone/docs-old/zh/agenteye/python-sdk-skill.mdx +131 -0
  882. package/.next/standalone/docs-old/zh/agenteye/python-sdk.mdx +433 -0
  883. package/.next/standalone/docs-old/zh/agenteye/queries.mdx +56 -0
  884. package/.next/standalone/docs-old/zh/agenteye/security.mdx +68 -0
  885. package/.next/standalone/docs-old/zh/agenteye/sessions.mdx +56 -0
  886. package/.next/standalone/docs-old/zh/agenteye/telemetry.mdx +52 -0
  887. package/.next/standalone/docs-old/zh/architecture.mdx +332 -0
  888. package/.next/standalone/docs-old/zh/built-in-policies.mdx +850 -0
  889. package/.next/standalone/docs-old/zh/cli/audit.mdx +115 -0
  890. package/.next/standalone/docs-old/zh/cli/dashboard.mdx +29 -0
  891. package/.next/standalone/docs-old/zh/cli/environment-variables.mdx +62 -0
  892. package/.next/standalone/docs-old/zh/cli/hook.mdx +30 -0
  893. package/.next/standalone/docs-old/zh/cli/install-policies.mdx +57 -0
  894. package/.next/standalone/docs-old/zh/cli/list-policies.mdx +31 -0
  895. package/.next/standalone/docs-old/zh/cli/migrate.mdx +86 -0
  896. package/.next/standalone/docs-old/zh/cli/remove-policies.mdx +43 -0
  897. package/.next/standalone/docs-old/zh/cli/update.mdx +65 -0
  898. package/.next/standalone/docs-old/zh/cli/version.mdx +12 -0
  899. package/.next/standalone/docs-old/zh/configuration.mdx +266 -0
  900. package/.next/standalone/docs-old/zh/custom-policies.mdx +358 -0
  901. package/.next/standalone/docs-old/zh/dashboard.mdx +151 -0
  902. package/.next/standalone/docs-old/zh/examples.mdx +307 -0
  903. package/.next/standalone/docs-old/zh/for-agents.mdx +38 -0
  904. package/.next/standalone/docs-old/zh/getting-started.mdx +199 -0
  905. package/.next/standalone/docs-old/zh/introduction.mdx +57 -0
  906. package/.next/standalone/docs-old/zh/package-aliases.mdx +82 -0
  907. package/.next/standalone/docs-old/zh/testing.mdx +260 -0
  908. package/.next/standalone/lib/telemetry.ts +45 -40
  909. package/.next/standalone/node_modules/@next/env/package.json +1 -1
  910. package/.next/standalone/node_modules/@swc/helpers/esm/_interop_require_default.js +4 -0
  911. package/.next/standalone/node_modules/@swc/helpers/esm/_interop_require_wildcard.js +36 -0
  912. package/.next/standalone/node_modules/@swc/helpers/package.json +703 -469
  913. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  914. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js +8 -6
  915. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/ppr-navigations.js +26 -20
  916. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/refresh-reducer.js +2 -1
  917. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/restore-reducer.js +5 -2
  918. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-action-reducer.js +2 -1
  919. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-patch-reducer.js +3 -1
  920. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache.js +150 -169
  921. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation-testing-lock.js +16 -54
  922. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation.js +115 -23
  923. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/optimistic-routes.js +61 -6
  924. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/scheduler.js +53 -36
  925. package/.next/standalone/node_modules/next/dist/client/route-params.js +4 -8
  926. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +26 -26
  927. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +26 -26
  928. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +2 -2
  929. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +9 -9
  930. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  931. package/.next/standalone/node_modules/next/dist/lib/turbopack-cache-seed.js +15 -7
  932. package/.next/standalone/node_modules/next/dist/server/app-render/app-render.js +2 -0
  933. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-worker-snapshot.js +2 -1
  934. package/.next/standalone/node_modules/next/dist/server/async-storage/request-store.js +29 -20
  935. package/.next/standalone/node_modules/next/dist/server/async-storage/work-store.js +1 -0
  936. package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
  937. package/.next/standalone/node_modules/next/dist/server/dev/dev-validation-worker-pool.js +90 -11
  938. package/.next/standalone/node_modules/next/dist/server/dev/dev-validation-worker.js +51 -9
  939. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +24 -4
  940. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  941. package/.next/standalone/node_modules/next/dist/server/dev/use-cache-probe-worker.js +1 -0
  942. package/.next/standalone/node_modules/next/dist/server/image-optimizer.js +1 -0
  943. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  944. package/.next/standalone/node_modules/next/dist/server/lib/encode-header-safe.js +44 -0
  945. package/.next/standalone/node_modules/next/dist/server/lib/implicit-tags.js +3 -3
  946. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +2 -2
  947. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  948. package/.next/standalone/node_modules/next/dist/server/use-cache/handlers.js +14 -0
  949. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-probe-scheduler.js +2 -1
  950. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +100 -31
  951. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/headers.js +88 -2
  952. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/revalidate.js +12 -5
  953. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/unstable-cache.js +13 -1
  954. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  955. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  956. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  957. package/.next/standalone/node_modules/next/package.json +11 -11
  958. package/.next/standalone/package.json +10 -10
  959. package/.next/standalone/server.js +1 -1
  960. package/README.md +11 -11
  961. package/dist/cli.mjs +81 -101
  962. package/dist/worker.mjs +1 -1
  963. package/lib/telemetry.ts +45 -40
  964. package/package.json +10 -10
  965. package/scripts/release-announcement.mjs +686 -0
  966. package/scripts/translate-docs/config.ts +19 -1
  967. package/src/audit/cli.ts +64 -49
  968. package/src/hooks/hook-telemetry.ts +3 -2
  969. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g2rg69._.js +0 -3
  970. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0m98kzy._.js +0 -4
  971. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0v5_91z._.js +0 -4
  972. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1-a3135._.js +0 -4
  973. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1e5g_ur._.js +0 -4
  974. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1hmqefd._.js +0 -4
  975. package/.next/standalone/.next/server/chunks/ssr/_1nq-35m._.js +0 -23
  976. package/.next/standalone/.next/server/chunks/ssr/node_modules_1j2z5jb._.js +0 -3
  977. package/.next/standalone/.next/static/chunks/00q6cfzuzpc85.js +0 -1
  978. package/.next/standalone/.next/static/chunks/13--2yvqek_s1.js +0 -1
  979. package/.next/standalone/.next/static/chunks/18fqy3doo2ial.js +0 -6
  980. package/.next/standalone/.next/static/chunks/2ts65czrjjd_k.js +0 -31
  981. package/.next/standalone/.next/static/chunks/31orv9uidm1fn.js +0 -22
  982. package/.next/standalone/.next/static/chunks/3peix2vxzj7eh.js +0 -1
  983. package/.next/standalone/node_modules/next/dist/server/lib/encode-cache-tag.js +0 -45
  984. /package/.next/standalone/.next/static/{jSKB7CQQSNTX-uSbY2bUs → ZklXxyA5ygsWSQz2u_zii}/_buildManifest.js +0 -0
  985. /package/.next/standalone/.next/static/{jSKB7CQQSNTX-uSbY2bUs → ZklXxyA5ygsWSQz2u_zii}/_clientMiddlewareManifest.js +0 -0
  986. /package/.next/standalone/.next/static/{jSKB7CQQSNTX-uSbY2bUs → ZklXxyA5ygsWSQz2u_zii}/_ssgManifest.js +0 -0
@@ -0,0 +1,267 @@
1
+ ---
2
+ title: 설정
3
+ description: "설정 파일 형식, 세 가지 스코프 시스템, 그리고 병합 규칙"
4
+ icon: gear
5
+ ---
6
+
7
+ failproofai는 JSON 설정 파일을 사용하여 어떤 정책이 활성화될지, 정책이 어떻게 동작할지, 커스텀 정책을 어디서 불러올지를 제어합니다. 설정은 팀과 쉽게 공유할 수 있도록 설계되어 있습니다 — 저장소에 커밋하면 모든 개발자가 동일한 에이전트 안전망을 갖게 됩니다.
8
+
9
+ ---
10
+
11
+ ## 설정 스코프
12
+
13
+ 설정 스코프는 세 가지이며, 우선순위 순서대로 평가됩니다:
14
+
15
+ | 스코프 | 파일 경로 | 목적 |
16
+ |-------|-----------|---------|
17
+ | **project** | `.failproofai/policies-config.json` | 저장소별 설정, 버전 관리에 커밋 |
18
+ | **local** | `.failproofai/policies-config.local.json` | 개인 저장소별 재정의, gitignore 처리 |
19
+ | **global** | `~/.failproofai/policies-config.json` | 모든 프로젝트에 걸친 사용자 수준 기본값 |
20
+
21
+ failproofai가 훅 이벤트를 수신하면, 현재 작업 디렉터리에 존재하는 세 파일을 모두 불러와 병합합니다.
22
+
23
+ ### 병합 규칙
24
+
25
+ **`enabledPolicies`** — 세 스코프의 합집합입니다. 어느 한 레벨에서라도 활성화된 정책은 모두 적용됩니다.
26
+
27
+ ```text
28
+ project: ["block-sudo"]
29
+ local: ["block-rm-rf"]
30
+ global: ["block-sudo", "sanitize-api-keys"]
31
+
32
+ resolved: ["block-sudo", "block-rm-rf", "sanitize-api-keys"] ← 중복 제거된 합집합
33
+ ```
34
+
35
+ **`policyParams`** — 특정 정책에 대한 파라미터를 먼저 정의한 스코프가 전적으로 우선합니다. 정책의 파라미터 내부 값은 깊은 병합(deep merge)이 이루어지지 않습니다.
36
+
37
+ ```text
38
+ project: block-sudo → { allowPatterns: ["sudo apt-get update"] }
39
+ global: block-sudo → { allowPatterns: ["sudo systemctl status"] }
40
+
41
+ resolved: { allowPatterns: ["sudo apt-get update"] } ← project가 우선, global은 무시됨
42
+ ```
43
+
44
+ ```text
45
+ project: (block-sudo 항목 없음)
46
+ local: (block-sudo 항목 없음)
47
+ global: block-sudo → { allowPatterns: ["sudo systemctl status"] }
48
+
49
+ resolved: { allowPatterns: ["sudo systemctl status"] } ← global까지 내려감
50
+ ```
51
+
52
+ **`customPoliciesPaths` / `customPoliciesPath`** — 두 형태 중 어느 하나를 먼저 정의한 스코프가 우선합니다.
53
+
54
+ **`disabledCustomPolicies`** — 모든 스코프의 합집합입니다. 명시적 또는 컨벤션 정책 파일에서 개별 정책을 비활성화하면 대시보드가 소스가 포함된 ID를 여기에 기록합니다. 목록에 없는 정책은 기본적으로 활성화 상태를 유지합니다. ID에는 소스 파일이 포함되어 있어, 여러 파일에 동일한 이름의 정책이 있더라도 독립적으로 제어할 수 있습니다.
55
+
56
+ **`llm`** — 먼저 정의한 스코프가 우선합니다.
57
+
58
+ ---
59
+
60
+ ## 설정 파일 형식
61
+
62
+ ```json
63
+ {
64
+ "enabledPolicies": [
65
+ "block-sudo",
66
+ "block-rm-rf",
67
+ "block-push-master",
68
+ "sanitize-api-keys",
69
+ "sanitize-jwt",
70
+ "block-env-files",
71
+ "block-read-outside-cwd"
72
+ ],
73
+ "policyParams": {
74
+ "block-sudo": {
75
+ "allowPatterns": ["sudo systemctl status", "sudo journalctl"]
76
+ },
77
+ "block-push-master": {
78
+ "protectedBranches": ["main", "release", "prod"]
79
+ },
80
+ "block-rm-rf": {
81
+ "allowPaths": ["/tmp"]
82
+ },
83
+ "block-read-outside-cwd": {
84
+ "allowPaths": ["/shared/data", "/opt/company"]
85
+ },
86
+ "sanitize-api-keys": {
87
+ "additionalPatterns": [
88
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo API key" }
89
+ ]
90
+ },
91
+ "warn-large-file-write": {
92
+ "thresholdKb": 512
93
+ }
94
+ },
95
+ "customPoliciesPath": "/home/alice/myproject/my-policies.js"
96
+ }
97
+ ```
98
+
99
+ ---
100
+
101
+ ## 필드 참조
102
+
103
+ ### `enabledPolicies`
104
+
105
+ 타입: `string[]`
106
+
107
+ 활성화할 정책 이름 목록입니다. 이름은 `failproofai policies`에 표시되는 정책 식별자와 정확히 일치해야 합니다. 전체 목록은 [기본 제공 정책](/ko/built-in-policies)을 참조하세요.
108
+
109
+ `enabledPolicies`에 없는 정책은 `policyParams`에 항목이 있더라도 비활성 상태입니다.
110
+
111
+ ### `policyParams`
112
+
113
+ 타입: `Record<string, Record<string, unknown>>`
114
+
115
+ 정책별 파라미터 재정의입니다. 외부 키는 정책 이름이고, 내부 키는 각 정책에 고유합니다. 각 정책의 사용 가능한 파라미터는 [기본 제공 정책](/ko/built-in-policies)에서 확인할 수 있습니다.
116
+
117
+ 파라미터가 있는 정책이라도 직접 지정하지 않으면 해당 정책의 기본값이 사용됩니다. `policyParams`를 전혀 설정하지 않은 사용자는 이전 버전과 동일하게 동작합니다.
118
+
119
+ 정책 파라미터 블록의 알 수 없는 키는 훅 실행 시에는 자동으로 무시되지만, `failproofai policies`를 실행할 때는 경고로 표시됩니다.
120
+
121
+ #### `hint` (공통 옵션)
122
+
123
+ 타입: `string` (선택 사항)
124
+
125
+ 정책이 `deny` 또는 `instruct`를 반환할 때 사유에 추가되는 메시지입니다. 정책 자체를 수정하지 않고도 Claude에게 실행 가능한 안내를 제공할 수 있습니다.
126
+
127
+ 기본 제공 정책, 커스텀 정책(`custom/`), 프로젝트 컨벤션(`.failproofai-project/`), 사용자 컨벤션(`.failproofai-user/`) 등 모든 정책 유형에서 동작합니다.
128
+
129
+ ```json
130
+ {
131
+ "policyParams": {
132
+ "block-force-push": {
133
+ "hint": "Try creating a fresh branch instead."
134
+ },
135
+ "block-sudo": {
136
+ "allowPatterns": ["sudo apt-get"],
137
+ "hint": "Use apt-get directly without sudo."
138
+ },
139
+ "custom/my-policy": {
140
+ "hint": "Ask the user for approval first."
141
+ }
142
+ }
143
+ }
144
+ ```
145
+
146
+ `block-force-push`가 거부하면 Claude는 다음 메시지를 받습니다: *"Force-pushing is blocked. Try creating a fresh branch instead."*
147
+
148
+ 문자열이 아닌 값과 빈 문자열은 자동으로 무시됩니다. `hint`를 설정하지 않으면 동작은 변경되지 않습니다(하위 호환).
149
+
150
+ ### `customPoliciesPath`
151
+
152
+ 타입: `string` (절대 경로)
153
+
154
+ 커스텀 훅 정책이 담긴 JavaScript 파일의 경로입니다. `failproofai policies --install --custom <path>` 명령으로 자동 설정되며, 경로는 저장 전 절대 경로로 변환됩니다.
155
+
156
+ 이 파일은 훅 이벤트마다 새로 불러옵니다 — 캐싱이 없습니다. 작성 방법은 [커스텀 정책](/ko/custom-policies)을 참조하세요.
157
+
158
+ ### 컨벤션 기반 정책
159
+
160
+ 명시적인 `customPoliciesPath` 외에도, failproofai는 `.failproofai/policies/` 디렉터리에서 정책 파일을 자동으로 탐색하고 불러옵니다:
161
+
162
+ | 레벨 | 디렉터리 | 스코프 |
163
+ |-------|-----------|-------|
164
+ | 프로젝트 | `.failproofai/policies/` | 버전 관리로 팀과 공유 |
165
+ | 사용자 | `~/.failproofai/policies/custom-policies/` | 개인용, 모든 프로젝트에 적용 |
166
+
167
+ <Note>
168
+ 사용자 수준 디렉터리가 홈 디렉터리 재구성으로 한 단계 아래로 이동했습니다.
169
+ 이전 경로인 `~/.failproofai/policies/`에 남아 있는 파일은 업그레이드 후
170
+ 처음 `failproofai` 명령을 실행할 때 `custom-policies/`로 자동으로 이동되며,
171
+ 어떤 파일이 이동됐는지 안내 메시지가 표시됩니다.
172
+ </Note>
173
+
174
+ **파일 매칭:** `*policies.{js,mjs,ts}` 패턴과 일치하는 파일만 불러옵니다(예: `security-policies.mjs`, `workflow-policies.js`). 디렉터리의 다른 파일은 무시됩니다.
175
+
176
+ **설정 불필요:** 컨벤션 정책은 `policies-config.json`에 항목을 추가할 필요가 없습니다. 디렉터리에 파일을 넣기만 하면 다음 훅 이벤트 시 자동으로 인식됩니다.
177
+
178
+ **합집합 로딩:** 프로젝트와 사용자 컨벤션 디렉터리가 모두 스캔됩니다. 두 레벨의 일치하는 파일이 모두 불러와집니다(`customPoliciesPath`는 첫 번째 스코프 우선이지만, 컨벤션 정책은 그렇지 않습니다).
179
+
180
+ 자세한 내용과 예시는 [커스텀 정책](/ko/custom-policies)을 참조하세요.
181
+
182
+ ### `llm`
183
+
184
+ 타입: `object` (선택 사항)
185
+
186
+ AI 호출을 수행하는 정책을 위한 LLM 클라이언트 설정입니다. 대부분의 설정에서는 필요하지 않습니다.
187
+
188
+ ```json
189
+ {
190
+ "llm": {
191
+ "model": "claude-sonnet-4-6",
192
+ "apiKey": "sk-ant-..."
193
+ }
194
+ }
195
+ ```
196
+
197
+ ---
198
+
199
+ ## CLI에서 설정 관리
200
+
201
+ `policies --install`과 `policies --uninstall` 명령은 에이전트 CLI의 훅 설정 파일(훅 진입점)에 쓰는 반면, `policies-config.json`은 직접 관리하는 파일입니다. 두 가지는 별개입니다:
202
+
203
+ - **에이전트 CLI 설정** — 에이전트가 각 도구 사용 시 `failproofai --hook <event>`를 호출하도록 지시합니다:
204
+ - **Claude Code**: `~/.claude/settings.json` (user), `<cwd>/.claude/settings.json` (project), `<cwd>/.claude/settings.local.json` (local)
205
+ - **OpenAI Codex**: `~/.codex/hooks.json` (user), `<cwd>/.codex/hooks.json` (project) — Codex에는 `local` 스코프가 없음
206
+ - **GitHub Copilot CLI _(beta)_**: `~/.copilot/hooks/failproofai.json` (user), `<cwd>/.github/hooks/failproofai.json` (project) — Copilot에는 `local` 스코프가 없습니다. 훅 항목은 `timeoutSec`와 함께 Copilot의 OS별 `bash`/`powershell` 커맨드 필드를 사용하며, 파일에는 최상위 `version: 1` 마커가 있습니다. Copilot CLI 지원은 **beta** 단계로, 공개 문서에 명시되지 않은 `events.jsonl` 레코드 스키마를 더 많은 실제 세션을 통해 검증 중입니다. **VS Code Copilot Chat 에이전트 모드 (Preview)**는 `chat.hookFilesLocations` 설정에 따라 `.github/hooks/*.json`, `~/.copilot/hooks/*.json`, `~/.claude/settings.json`에서 훅 설정을 읽으며, Claude 형식의 `{hookSpecificOutput:{permissionDecision:"deny",…}}` 계약을 사용합니다 — 이는 `copilot` 통합과 `claude` 통합(`~/.claude/settings.json`)이 이미 쓰는 경로이므로, `failproofai policies --install --cli copilot` (또는 `--cli claude`)으로 별도의 `vscode` 통합 없이 **VS Code 에이전트 모드에서 이미 적용됩니다**(VS Code 검색 로그에서 확인됨).
207
+ - **Cursor Agent _(beta)_**: `~/.cursor/hooks.json` (user), `<cwd>/.cursor/hooks.json` (project) — Cursor에는 `local` 스코프가 없습니다. 훅 항목은 Claude 형식의 `{type, command, timeout}` 구조를 사용하지만(`bash`/`powershell` 분리 없음), Cursor의 [훅 스키마](https://cursor.com/docs/hooks)에 따라 camelCase 이벤트 키(`preToolUse`, `beforeSubmitPrompt`, …) 아래 평면 배열로 저장됩니다. 파일에는 최상위 `version: 1` 마커가 있습니다. 핸들러는 `CURSOR_EVENT_MAP`을 통해 camelCase를 PascalCase로 정규화하므로 기존 기본 제공 정책이 변경 없이 실행됩니다. Cursor Agent 지원은 **beta** 단계로, 공개 문서에 명시되지 않은 Cursor의 트랜스크립트 온디스크 형식을 더 많은 실제 설치를 통해 검증 중입니다.
208
+ - **OpenCode _(beta)_**: `~/.config/opencode/opencode.json` + `~/.config/opencode/plugins/failproofai.mjs` (user), `<cwd>/.opencode/opencode.json` + `<cwd>/.opencode/plugins/failproofai.mjs` (project) — OpenCode에는 `local` 스코프가 없습니다. 다른 다섯 CLI와 달리 OpenCode에는 **외부 명령 훅 시스템이 없습니다**: `opencode.json`의 `plugin: []` 배열을 통해 명시적으로 등록된 인프로세스 JS/TS 플러그인을 불러옵니다(`.opencode/plugins/`에서의 자동 검색은 opencode v1.14.33에서 플러그인 로드 방식이 **아닙니다**). 설치 시 failproofai 바이너리를 서브프로세스로 호출하고 바이너리의 Claude 형식 JSON 응답을 플러그인 시맨틱으로 변환하는 소형 생성 플러그인 심(shim)이 배포됩니다: 도구 이벤트 거부에는 `throw new Error()`(도구 호출 취소), instruct와 `Stop` / `SubagentStop` 거부에는 `client.session.prompt(...)`(거부 사유를 다음 사용자 메시지로 제출 — `session.idle`은 알림 전용이고 여기서 throw는 no-op이라 유일한 강제 재시도 채널), allow에는 no-op입니다. 심은 도구 이름(`OPENCODE_TOOL_MAP`을 통해 소문자 → PascalCase)과 도구 입력 인수 키(`OPENCODE_TOOL_INPUT_MAP`을 통해 `Read` / `Write` / `Edit`에 대해 camelCase → snake_case, 예: `filePath` → `file_path`, `oldString` → `old_string`)를 정규화한 후 바이너리에 전달하므로, `block-read-outside-cwd`, `block-env-files`, `block-secrets-write` 같은 경로 검사 기본 정책이 OpenCode 도구 호출에서 변경 없이 실행됩니다. 세션은 `~/.local/share/opencode/opencode.db`의 OpenCode SQLite DB에 저장되며, 대시보드의 세션 뷰어는 `opencode db --format json`과 `opencode export <id>`를 통해 이를 읽습니다. OpenCode 지원은 **beta** 단계로, 버전별 동작 및 더 많은 실제 세션을 통해 검증 중입니다. [OpenCode 플러그인 문서](https://opencode.ai/docs/plugins/)를 참조하세요.
209
+ - **Pi _(beta)_**: `~/.pi/agent/settings.json` (user), `<cwd>/.pi/settings.json` (project) — Pi에는 `local` 스코프가 없습니다. Pi는 시작 시 TypeScript 확장 패키지를 로드하며, 설정 파일은 `{"packages": ["./relative/path", …]}` 형태의 평면 문자열 배열입니다. failproofai는 번들된 `pi-extension/` 디렉터리를 가리키는 단일 packages-array 항목을 씁니다. 확장은 내부적으로 Pi의 `tool_call` / `user_bash` / `input` / `session_start` 이벤트를 구독하고 `failproofai --hook <Event> --cli pi`를 셸아웃합니다. 핸들러는 `PI_EVENT_MAP`을 통해 underscore_lower_snake_case를 PascalCase로 정규화하므로 기존 기본 제공 정책이 변경 없이 실행됩니다. 도구 입력 인수도 `PI_TOOL_INPUT_MAP`을 통해 정규화됩니다(Pi의 Read / Write / Edit는 `file_path` 대신 `path`를 사용하며, 최상위 키를 매핑하면 `block-env-files`와 `block-secrets-write`가 실행됩니다 — `block-read-outside-cwd`는 이미 `path` 폴백이 있었습니다). Pi 지원은 **beta** 단계로, Pi의 확장 API와 세션 로그 레이아웃이 안정화되는 동안 검증 중입니다.
210
+ - **Hermes (hermes-agent)**: `~/.hermes/config.yaml` (**user 스코프만** — Hermes에는 project/local 설정이 없음). Hermes는 Slack/Telegram **게이트웨이**이므로, 설치 한 번으로 모든 플랫폼(Slack/Telegram/cli/cron)의 도구 호출과 내부 서브에이전트를 가로챕니다. 훅 항목은 Hermes의 snake_case 이벤트(`pre_tool_call` / `post_tool_call` / `on_session_start` / `on_session_end` / `subagent_stop`)를 키로 하는 `hooks:` 맵 아래의 `{command, timeout}` 쌍이며, timeout은 **초** 단위입니다. 핸들러는 `HERMES_EVENT_MAP`을 통해 이벤트를, `HERMES_TOOL_MAP`을 통해 도구 이름을 정규화하므로 기본 제공 정책이 변경 없이 실행됩니다. 설정은 주석을 보존하는 YAML `Document` 라운드트립으로 편집되므로 운영자의 다른 설정이 유지되며, 설치 시 `hooks_auto_accept: true`를 설정하여 헤드리스 게이트웨이(TTY 없음)가 동의 프롬프트 없이 훅을 실행합니다. 평가자는 Hermes의 `{"decision":"block","reason"}` stdout 계약을 출력합니다(Hermes는 종료 코드를 무시합니다). **제한 사항:** Hermes에는 턴 종료 `Stop` 이벤트가 없으므로 `require-*-before-stop` 기본 정책이 실행되지 않습니다(적용 불가이지, 버그가 아님). `instruct`는 allow-with-logged-note로 성능이 저하됩니다(추가 컨텍스트 채널 없음). 출력 시크릿 편집(`sanitize-*`)은 셸 훅 계약을 통해 도구 출력을 재작성할 수 없습니다. Hermes는 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.hermes/state.db`에서 게이트웨이 세션을 직접 읽습니다.
211
+ - **OpenClaw (openclaw gateway)**: `~/.openclaw/openclaw.json` (**user 스코프만** — OpenClaw에는 project/local 설정이 없음). Hermes처럼 OpenClaw도 자체 호스팅 멀티채널 **게이트웨이**이므로, 설치 한 번으로 모든 채널과 내부 서브에이전트의 도구 호출을 가로챕니다. 적용은 OpenClaw의 **인프로세스 플러그인 훅**을 통해 실행됩니다(파일 기반 내부 훅은 관찰 전용으로 차단 불가). 따라서 OpenCode/Pi와 마찬가지로 failproofai는 failproofai 바이너리를 비동기로 스폰하고 판정 결과를 변환하는 정적 `openclaw-plugin/` 패키지를 제공합니다. 설치 시 `openclaw.json`의 `plugins.load.paths[]`에 제공된 플러그인 디렉터리를 등록하고 `plugins.entries.failproofai` 아래에서 활성화합니다(`hooks.allowConversationAccess: true` 포함, 원시 대화 훅에 필요). 평가자는 평면 `{permission, reason}` 판정을 출력하고 심이 이를 각 훅의 네이티브 반환 형태로 매핑합니다: `before_tool_call → {block:true, blockReason}` (**PreToolUse**), `before_agent_run → {outcome:"block", reason}` (**UserPromptSubmit**), `before_agent_finalize → {action:"revise", reason}` (**Stop** — 실제 턴 종료 게이트이므로 `require-*-before-stop` 기본 정책이 Hermes와 달리 OpenClaw에서 **적용됩니다**). 이벤트와 도구 이름은 `OPENCLAW_EVENT_MAP` / `OPENCLAW_TOOL_MAP`(`exec→Bash`, `read→Read`, …)을 통해 바이너리 측에서 정규화되므로 기본 제공 정책이 변경 없이 실행됩니다. 심은 스폰/파싱/타임아웃 오류 시 열린 상태로 실패합니다. OpenClaw는 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.openclaw/agents/<agentId>/sessions/<uuid>.jsonl`의 JSONL 세션을 읽습니다.
212
+ - **Factory Droid (`droid`)**: `~/.factory/hooks.json` (user), `<cwd>/.factory/hooks.json` (project) — Factory에는 `local` 스코프가 없습니다. droid는 Claude 형식의 외부 명령 훅 시스템을 제공하지만, droid v0.171.0에서 실제로 검증된 두 가지 특이점이 있습니다: (1) 이벤트 이름은 `hooks.json`의 **최상위 레벨**에 위치합니다 — **`"hooks"` 래퍼가 없습니다**(droid가 거부함). 도구 이벤트(`PreToolUse`/`PostToolUse`)는 `"matcher": "*"`를 포함하고, 비도구 이벤트는 생략합니다. (2) 거부는 JSON 결정이 아니라 훅 **종료 코드 2 + stderr**로 처리됩니다 — 평가자의 `factory` 브랜치는 도구/프롬프트 이벤트에 대해 종료 코드 2를 반환하고, 턴 종료 `Stop` 이벤트(droid의 유일한 강제 재시도 채널)에서만 `{decision:"block", reason}`을 반환합니다. 이벤트는 이미 PascalCase이며(이벤트 맵 불필요), 페이로드는 Claude snake_case입니다. 도구 이름만 `FACTORY_TOOL_MAP`(`Execute→Bash`, `Create→Write`, `FetchUrl→WebFetch`, …)을 통해 정규화됩니다. Factory는 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.factory/sessions/<encoded-cwd>/<sessionId>.jsonl`의 온디스크 JSONL 세션을 읽습니다.
213
+ - **Devin CLI (`devin`, Cognition)**: `~/.config/devin/config.json` (user), `<cwd>/.devin/config.json` (project) — Devin에는 `local` 스코프가 없습니다. Devin은 devin v3000.1.27에서 실제로 검증된 **순수 Claude 클론**입니다: 표준 Claude `"hooks"` 래퍼 스키마를 사용하고(쓰기는 병합 보존 방식이라 설정 파일의 다른 키 — `org_id`, `theme_mode`, … — 가 유지됨), 이미 PascalCase 이벤트 이름(이벤트 맵 없음, 핸들러 브랜치 없음), Claude snake_case stdin 페이로드(정규화 불필요)를 사용합니다. 평가자의 `devin` 브랜치는 **모든** 이벤트에 대해 종료 코드 0에서 `{"decision":"block","reason"}` JSON을 stdout으로 출력하여 거부합니다(검증됨 — 블록이 `--permission-mode dangerous`를 재정의함). 턴 종료 `Stop` 이벤트에서는 `require-*-before-stop` 기본 정책이 적용되도록 사유에 MANDATORY-ACTION 강제 재시도 문구가 포함됩니다. 도구 이름만 `DEVIN_TOOL_MAP`(`exec→Bash`; `tool_input.command`는 이미 정규화됨)을 통해 정규화됩니다. Devin은 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.local/share/devin/cli/sessions.db`의 SQLite 세션을 읽습니다(각 `sessions` 행에 실제 `working_directory`가 있어, Claude처럼 프로젝트 cwd별로 세션이 그룹화됨).
214
+ - **Antigravity CLI (`agy`)**: `~/.gemini/config/hooks.json` (user), `<cwd>/.agents/hooks.json` (project) — Antigravity에는 `local` 스코프가 없습니다. Factory/Devin과 달리 Antigravity는 agy v1.1.2에서 실제로 검증된 **자체 계약**(Claude 클론이 아님)을 사용합니다. `hooks.json`은 **이름 있는 훅** 스키마를 사용합니다: 최상위 키는 훅 *이름*(`"failproofai"`)이며, 그 값은 이벤트 → 핸들러 맵입니다 — 도구 이벤트(`PreToolUse`/`PostToolUse`)는 핸들러를 `{matcher:"*", hooks:[…]}`로 감싸고, `PreInvocation`/`Stop`은 **평면** 핸들러 배열입니다(다른 이름 있는 훅은 보존됩니다). stdin 페이로드는 **camelCase protojson** 형식(`toolCall:{name,args}`, `conversationId`, `workspacePaths`, `transcriptPath`)으로, failproofai는 정책 실행 전 이를 snake_case로 정규화하고 `run_command`의 PascalCase 인수(`CommandLine`/`Cwd`)를 `ANTIGRAVITY_TOOL_INPUT_MAP`으로 매핑합니다. 평가자의 `antigravity` 브랜치는 Antigravity의 **자체** 응답 형태를 사용합니다: `{decision:"deny", reason}`은 도구/프롬프트를 차단하고(종료 0), 턴 종료 `Stop`에서 `{decision:"continue", reason}`은 루프를 재진입하므로(`require-*-before-stop` 기본 정책이 적용됨), `{injectSteps:[{ephemeralMessage}]}`는 `PreInvocation`(→ `UserPromptSubmit`)에서 지시를 주입합니다. 도구 이름은 `ANTIGRAVITY_TOOL_MAP`(`run_command→Bash`, `view_file→Read`, …)을 통해 정규화됩니다. Antigravity는 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.gemini/antigravity-cli/brain/<conversationId>/.system_generated/logs/transcript_full.jsonl`의 일반 JSONL 트랜스크립트를 읽습니다(대화 인덱스는 `conversation_summaries.db`에 있음).
215
+ - **Goose (codename goose, Block)**: `~/.agents/plugins/failproofai/hooks/hooks.json` (user), `<cwd>/.agents/plugins/failproofai/hooks/hooks.json` (project) — Goose에는 `local` 스코프가 없습니다. 적용은 Goose의 **훅** 시스템인 크로스에이전트 **Open Plugins** 스펙을 통해 이루어집니다: 설치 시 `failproofai` 플러그인 디렉터리만 배포하면 Goose가 시작 시 자동으로 검색합니다(이를 `~/.config/goose/config.yaml`에 자동 등록). `hooks.json`은 최상위 `"hooks"` 래퍼가 **있는** Open Plugins 스키마를 사용하며, **모든** 이벤트에서 matcher가 **생략됩니다** — 단순 `"*"`는 아무것도 일치하지 않는 잘못된 정규식입니다(goose v1.43.0에서 실제로 검증됨). 이벤트 이름은 이미 PascalCase이며(이벤트 맵 불필요), stdin 페이로드는 `event`/`working_dir`를 사용하고 핸들러가 이를 `hook_event_name`/`cwd`로 정규화합니다. 평가자의 `goose` 브랜치는 종료 코드 0에서 `{"decision":"block","reason"}` JSON을 stdout으로 출력하며, **`PreToolUse`** 이벤트에서만 적용됩니다(goose ≥ v1.37.0에 제공됨) — 이는 셸 도구와 **위임된 서브에이전트 내부** 모두에서 실행되므로 유일하게 충분한 거부 지점입니다. 다른 훅 오류는 **열린 상태로** 실패합니다. Goose에는 **`Stop` 이벤트가 없으므로** `require-*-before-stop` 기본 정책이 적용되지 않습니다(Hermes와 동일). 도구 이름은 `GOOSE_TOOL_MAP`(`shell→Bash`, `write→Write`, `todo__todo_write→TodoWrite`, …)을 통해, 경로 키는 `GOOSE_TOOL_INPUT_MAP`(`path`/`source` → `file_path`)을 통해 정규화됩니다. Goose는 **오프라인 감사** 소스이기도 합니다 — 대시보드는 `~/.local/share/goose/sessions/sessions.db`의 SQLite 세션을 읽습니다(각 `sessions` 행에 실제 `working_dir`가 있어 Devin처럼 프로젝트 cwd별로 세션이 그룹화됨. `--no-session` 임시 실행은 필터링됨).
216
+ - **`policies-config.json`** — failproofai가 어떤 정책을 어떤 파라미터로 평가할지 지시합니다(모든 에이전트 CLI에서 공유)
217
+
218
+ 특정 에이전트를 지정하려면 `--cli claude|codex|copilot|cursor|opencode|pi|hermes|openclaw|factory|devin|antigravity|goose`를 전달하세요(공백으로 구분하거나 반복 사용하여 부분 집합 지정 가능):
219
+
220
+ ```bash
221
+ failproofai policies --install --cli codex --scope project
222
+ failproofai policies --install --cli copilot --scope project
223
+ failproofai policies --install --cli cursor --scope project
224
+ failproofai policies --install --cli opencode --scope project
225
+ failproofai policies --install --cli pi --scope project
226
+ failproofai policies --install --cli hermes --scope user
227
+ failproofai policies --install --cli openclaw --scope user
228
+ failproofai policies --install --cli factory --scope project
229
+ failproofai policies --install --cli devin --scope project
230
+ failproofai policies --install --cli antigravity --scope project
231
+ failproofai policies --install --cli goose --scope project
232
+ failproofai policies --install --cli claude codex copilot cursor opencode pi hermes openclaw factory devin antigravity goose
233
+ ```
234
+
235
+ `--cli`를 생략하면 `failproofai`가 설치된 에이전트 CLI를 자동으로 감지합니다(`which claude` / `which codex` / `which copilot` / `which cursor-agent` / `which opencode` / `which pi` / `which hermes` / `which openclaw` / `which droid` / `which devin` / `which agy` / `which goose`):
236
+
237
+ - **CLI 하나 감지** — 프롬프트 없이 해당 CLI를 자동으로 선택합니다.
238
+ - **여러 CLI 감지** (인터랙티브 터미널) — `Detected (N)` 섹션(`Install for all N detected` 통합 행 + 감지된 각 CLI)과 `Not installed (M) · install hooks ahead of time` 섹션(감지되지 않은 모든 지원 CLI를 사전 설치 옵션으로 표시)으로 구성된 화살표 키 단일 선택 프롬프트를 표시합니다(↑↓로 이동, Enter로 선택, ^C로 종료). 제거 흐름에서는 Detected 섹션만 표시합니다.
239
+ - **여러 CLI 감지** (비인터랙티브 실행, TTY 없음 — CI 등) — 프롬프트 없이 감지된 모든 CLI에 설치합니다.
240
+ - **감지 없음** — `claude`로 폴백하며, PATH에서 에이전트 바이너리를 찾을 수 없다는 경고를 표시합니다. 훅 명령은 그래도 기록되어, 설치 후 즉시 활성화됩니다.
241
+
242
+ `policies-config.json`은 언제든지 직접 편집할 수 있으며, 재시작 없이 다음 훅 이벤트부터 즉시 변경 사항이 적용됩니다.
243
+
244
+ ---
245
+
246
+ ## 예시: 팀 기본값이 포함된 프로젝트 수준 설정
247
+
248
+ `.failproofai/policies-config.json`을 저장소에 커밋하세요:
249
+
250
+ ```json
251
+ {
252
+ "enabledPolicies": [
253
+ "block-sudo",
254
+ "block-rm-rf",
255
+ "block-push-master",
256
+ "sanitize-api-keys",
257
+ "block-env-files"
258
+ ],
259
+ "policyParams": {
260
+ "block-push-master": {
261
+ "protectedBranches": ["main", "release", "hotfix"]
262
+ }
263
+ }
264
+ }
265
+ ```
266
+
267
+ 그러면 각 개발자는 팀원에게 영향을 주지 않고 개인 재정의를 위해 `.failproofai/policies-config.local.json`(gitignore 처리됨)을 별도로 만들 수 있습니다.
@@ -0,0 +1,358 @@
1
+ ---
2
+ title: 커스텀 정책
3
+ description: "JavaScript로 직접 정책 작성 - 컨벤션 강제, 드리프트 방지, 실패 감지, 외부 시스템 연동"
4
+ icon: code
5
+ ---
6
+
7
+ 커스텀 정책을 사용하면 에이전트 동작에 관한 규칙을 직접 작성할 수 있습니다. 프로젝트 컨벤션 강제, 드리프트 방지, 위험한 작업 차단, 멈춘 에이전트 감지, Slack 연동, 승인 워크플로우 등 다양한 용도로 활용할 수 있습니다. 내장 정책과 동일한 훅 이벤트 시스템과 `allow`, `deny`, `instruct` 결정 방식을 사용합니다.
8
+
9
+ ---
10
+
11
+ ## 빠른 예시
12
+
13
+ ```js
14
+ // my-policies.js
15
+ import { customPolicies, allow, deny, instruct } from "failproofai";
16
+
17
+ customPolicies.add({
18
+ name: "no-production-writes",
19
+ description: "Block writes to paths containing 'production'",
20
+ match: { events: ["PreToolUse"] },
21
+ fn: async (ctx) => {
22
+ if (ctx.toolName !== "Write" && ctx.toolName !== "Edit") return allow();
23
+ const path = ctx.toolInput?.file_path ?? "";
24
+ if (path.includes("production")) {
25
+ return deny("Writes to production paths are blocked");
26
+ }
27
+ return allow();
28
+ },
29
+ });
30
+ ```
31
+
32
+ 설치:
33
+
34
+ ```bash
35
+ failproofai policies --install --custom ./my-policies.js
36
+ ```
37
+
38
+ ---
39
+
40
+ ## 커스텀 정책을 로드하는 두 가지 방법
41
+
42
+ ### 옵션 1: 컨벤션 기반 (권장)
43
+
44
+ `.failproofai/policies/` 디렉터리에 `*policies.{js,mjs,ts}` 파일을 추가하면 자동으로 로드됩니다 — 별도 플래그나 설정 변경이 필요 없습니다. git hooks처럼 파일을 추가하기만 하면 바로 동작합니다.
45
+
46
+ ```
47
+ # 프로젝트 레벨 — git에 커밋되어 팀과 공유
48
+ .failproofai/policies/security-policies.mjs
49
+ .failproofai/policies/workflow-policies.mjs
50
+
51
+ # 사용자 레벨 — 개인용, 모든 프로젝트에 적용
52
+ ~/.failproofai/policies/my-policies.mjs
53
+ ```
54
+
55
+ **동작 방식:**
56
+ - 프로젝트 및 사용자 디렉터리 모두 스캔됨 (합집합 방식 — 첫 번째 스코프 우선이 아님)
57
+ - 각 디렉터리 내에서 파일은 알파벳 순으로 로드됨. 순서 조정이 필요하면 `01-`, `02-` 등의 접두사 사용
58
+ - `*policies.{js,mjs,ts}` 패턴에 매칭되는 파일만 로드되며, 그 외 파일은 무시됨
59
+ - 각 파일은 독립적으로 로드됨 (파일 단위 fail-open)
60
+ - 명시적 `--custom` 및 내장 정책과 함께 동작
61
+
62
+ <Tip>
63
+ 컨벤션 정책은 조직의 품질 기준을 세우는 가장 쉬운 방법입니다. `.failproofai/policies/`를 git에 커밋하면 모든 팀원이 별도 설정 없이 동일한 규칙을 자동으로 적용받습니다. 새로운 실패 패턴을 발견할 때마다 정책을 추가하고 푸시하세요. 시간이 지날수록 팀의 기여로 점점 개선되는 살아있는 품질 기준이 됩니다.
64
+ </Tip>
65
+
66
+ ### 옵션 2: 명시적 파일 경로
67
+
68
+ ```bash
69
+ # 커스텀 정책 파일로 설치
70
+ failproofai policies --install --custom ./my-policies.js
71
+
72
+ # 커스텀 정책 경로 교체
73
+ failproofai policies --install --custom ./new-policies.js
74
+
75
+ # 여러 파일 설정 (플래그 순서대로 로드)
76
+ failproofai policies --install --custom ./security.js --custom ./workflow.js
77
+
78
+ # 설정에서 모든 명시적 커스텀 정책 경로 제거
79
+ failproofai policies --uninstall --custom
80
+ ```
81
+
82
+ 해석된 절대 경로는 `policies-config.json`에 `customPoliciesPaths`로 저장됩니다. 여러 파일을 설정하려면 `--custom`을 반복해서 사용하세요. 레거시 `customPoliciesPath` 필드를 사용하는 기존 설정도 계속 동작합니다. 파일은 훅 이벤트마다 새로 로드되며 — 이벤트 간 캐싱은 없습니다.
83
+
84
+ 등록된 각 정책은 대시보드에서 개별 토글로 표시됩니다. 정책을 비활성화하면 소스 한정 ID가 `disabledCustomPolicies`에 기록되고, 해당 파일과 다른 정책들은 계속 로드되지만 비활성화된 정책은 이벤트 매칭 전에 제외됩니다. 파일이 달라도 같은 이름의 정책은 각각 독립적인 토글을 갖습니다.
85
+
86
+ ### 두 방법 함께 사용하기
87
+
88
+ 컨벤션 정책과 명시적 `--custom` 파일은 함께 사용할 수 있습니다. 로드 순서:
89
+
90
+ 1. 명시적 `customPoliciesPaths` 파일 (설정된 순서)
91
+ 2. 프로젝트 컨벤션 파일 (`{cwd}/.failproofai/policies/`, 알파벳 순)
92
+ 3. 사용자 컨벤션 파일 (`~/.failproofai/policies/`, 알파벳 순)
93
+
94
+ ---
95
+
96
+ ## API
97
+
98
+ ### 가져오기
99
+
100
+ ```js
101
+ import { customPolicies, allow, deny, instruct } from "failproofai";
102
+ ```
103
+
104
+ ### `customPolicies.add(hook)`
105
+
106
+ 정책을 등록합니다. 같은 파일에 여러 정책을 등록하려면 원하는 만큼 호출하세요.
107
+
108
+ ```ts
109
+ customPolicies.add({
110
+ name: string; // 필수 - 고유 식별자
111
+ description?: string; // `failproofai policies` 출력에 표시됨
112
+ match?: { events?: HookEventType[] }; // 이벤트 타입으로 필터링; 생략하면 모든 이벤트에 매칭
113
+ fn: (ctx: PolicyContext) => PolicyResult | Promise<PolicyResult>;
114
+ });
115
+ ```
116
+
117
+ ### 결정 헬퍼
118
+
119
+ | 함수 | 효과 | 사용 시점 |
120
+ |----------|--------|----------|
121
+ | `allow()` | 작업을 조용히 허용 | 작업이 안전하며 메시지가 필요 없을 때 |
122
+ | `deny(message)` | 작업 차단 | 에이전트가 이 작업을 수행하지 않아야 할 때 |
123
+ | `instruct(message)` | 차단 없이 컨텍스트 추가 | 에이전트가 올바른 방향을 유지하도록 추가 컨텍스트를 제공할 때 |
124
+
125
+ `deny(message)` — 메시지는 `"Blocked by failproofai:"` 접두사와 함께 Claude에 표시됩니다. 하나의 `deny`가 발생하면 이후 모든 평가가 단락됩니다.
126
+
127
+ `instruct(message)` — 메시지는 현재 툴 호출에 대한 Claude의 컨텍스트에 추가됩니다. 모든 `instruct` 메시지는 누적되어 함께 전달됩니다.
128
+
129
+ <Tip>
130
+ `policyParams`의 `hint` 필드를 추가하면 코드 변경 없이 `deny` 또는 `instruct` 메시지에 추가 안내를 덧붙일 수 있습니다. 커스텀(`custom/`), 프로젝트 컨벤션(`.failproofai-project/`), 사용자 컨벤션(`.failproofai-user/`) 정책 모두에서 동작합니다. 자세한 내용은 [Configuration → hint](/ko/configuration#hint-cross-cutting)를 참고하세요.
131
+ </Tip>
132
+
133
+ ### 정보성 allow 메시지
134
+
135
+ `allow(message)`는 작업을 허용하면서 **동시에** Claude에 정보성 메시지를 전송합니다. 메시지는 훅 핸들러의 stdout 응답에서 `additionalContext`로 전달됩니다 — `instruct`와 동일한 메커니즘이지만 의미상 차이가 있습니다. 경고가 아닌 상태 업데이트입니다.
136
+
137
+ | 함수 | 효과 | 사용 시점 |
138
+ |----------|--------|----------|
139
+ | `allow(message)` | 허용하면서 Claude에 컨텍스트 전송 | 검사 통과를 확인하거나 검사를 건너뛴 이유를 설명할 때 |
140
+
141
+ 사용 사례:
142
+ - **상태 확인:** `allow("All CI checks passed.")` — Claude에 모든 것이 정상임을 알림
143
+ - **Fail-open 설명:** `allow("GitHub CLI not installed, skipping CI check.")` — 검사를 건너뛴 이유를 Claude에 알려 완전한 컨텍스트 제공
144
+ - **메시지 누적:** 여러 정책이 각각 `allow(message)`를 반환하면 모든 메시지가 줄바꿈으로 합쳐져 함께 전달됨
145
+
146
+ ```js
147
+ customPolicies.add({
148
+ name: "confirm-branch-status",
149
+ match: { events: ["Stop"] },
150
+ fn: async (ctx) => {
151
+ const cwd = ctx.session?.cwd;
152
+ if (!cwd) return allow("No working directory, skipping branch check.");
153
+
154
+ // ... check branch status ...
155
+ if (allPushed) {
156
+ return allow("Branch is up to date with remote.");
157
+ }
158
+ return deny("Unpushed changes detected.");
159
+ },
160
+ });
161
+ ```
162
+
163
+ ### `PolicyContext` 필드
164
+
165
+ | 필드 | 타입 | 설명 |
166
+ |-------|------|-------------|
167
+ | `eventType` | `string` | `"PreToolUse"`, `"PostToolUse"`, `"Notification"`, `"Stop"` |
168
+ | `toolName` | `string \| undefined` | 호출되는 툴 (예: `"Bash"`, `"Write"`, `"Read"`) |
169
+ | `toolInput` | `Record<string, unknown> \| undefined` | 툴의 입력 파라미터 |
170
+ | `payload` | `Record<string, unknown>` | Claude Code에서 전달된 전체 원시 이벤트 페이로드 |
171
+ | `session` | `SessionMetadata \| undefined` | 세션 컨텍스트 (아래 참고) |
172
+
173
+ ### `SessionMetadata` 필드
174
+
175
+ | 필드 | 타입 | 설명 |
176
+ |-------|------|-------------|
177
+ | `sessionId` | `string` | Claude Code 세션 식별자 |
178
+ | `cwd` | `string` | Claude Code 세션의 작업 디렉터리 |
179
+ | `transcriptPath` | `string` | 세션의 JSONL 트랜스크립트 파일 경로 |
180
+
181
+ ### 이벤트 타입
182
+
183
+ | 이벤트 | 발생 시점 | `toolInput` 내용 |
184
+ |-------|--------------|----------------------|
185
+ | `PreToolUse` | Claude가 툴을 실행하기 전 | 툴의 입력 (예: Bash의 경우 `{ command: "..." }`) |
186
+ | `PostToolUse` | 툴 실행 완료 후 | 툴의 입력 + `tool_result` (출력) |
187
+ | `Notification` | Claude가 알림을 보낼 때 | `{ message: "...", notification_type: "idle" \| "permission_prompt" \| ... }` - 훅은 반드시 `allow()`를 반환해야 하며, 알림을 차단할 수 없음 |
188
+ | `Stop` | Claude 세션이 종료될 때 | 비어있음 |
189
+
190
+ ---
191
+
192
+ ## 평가 순서
193
+
194
+ 정책은 다음 순서로 평가됩니다:
195
+
196
+ 1. 내장 정책 (정의 순서)
197
+ 2. `customPoliciesPath`의 명시적 커스텀 정책 (`.add()` 순서)
198
+ 3. 프로젝트 `.failproofai/policies/`의 컨벤션 정책 (파일 알파벳 순, 파일 내 `.add()` 순서)
199
+ 4. 사용자 `~/.failproofai/policies/`의 컨벤션 정책 (파일 알파벳 순, 파일 내 `.add()` 순서)
200
+
201
+ <Note>
202
+ 첫 번째 `deny`가 이후 모든 정책을 단락시킵니다. 모든 `instruct` 메시지는 누적되어 함께 전달됩니다.
203
+ </Note>
204
+
205
+ ---
206
+
207
+ ## 전이적 가져오기
208
+
209
+ 커스텀 정책 파일은 상대 경로를 사용하여 로컬 모듈을 가져올 수 있습니다:
210
+
211
+ ```js
212
+ // my-policies.js
213
+ import { isBlockedPath } from "./utils.js";
214
+ import { checkApproval } from "./approval-client.js";
215
+
216
+ customPolicies.add({
217
+ name: "approval-gate",
218
+ fn: async (ctx) => {
219
+ if (ctx.toolName !== "Bash") return allow();
220
+ const approved = await checkApproval(ctx.toolInput?.command, ctx.session?.sessionId);
221
+ return approved ? allow() : deny("Approval required for this command");
222
+ },
223
+ });
224
+ ```
225
+
226
+ 엔트리 파일에서 접근 가능한 모든 상대 가져오기가 해석됩니다. 이는 `from "failproofai"` 가져오기를 실제 dist 경로로 재작성하고 ESM 호환성을 위해 임시 `.mjs` 파일을 생성하는 방식으로 구현됩니다.
227
+
228
+ ---
229
+
230
+ ## 이벤트 타입 필터링
231
+
232
+ `match.events`를 사용하여 정책이 발동되는 시점을 제한할 수 있습니다:
233
+
234
+ ```js
235
+ customPolicies.add({
236
+ name: "require-summary-on-stop",
237
+ match: { events: ["Stop"] },
238
+ fn: async (ctx) => {
239
+ // 세션이 종료될 때만 발동됨
240
+ // ctx.session.transcriptPath에 전체 세션 로그가 포함됨
241
+ return allow();
242
+ },
243
+ });
244
+ ```
245
+
246
+ 모든 이벤트 타입에서 발동시키려면 `match`를 완전히 생략하세요.
247
+
248
+ ---
249
+
250
+ ## 오류 처리 및 실패 모드
251
+
252
+ 커스텀 정책은 **fail-open** 방식입니다. 오류가 발생해도 내장 정책이 차단되거나 훅 핸들러가 크래시되지 않습니다.
253
+
254
+ | 실패 원인 | 동작 |
255
+ |---------|----------|
256
+ | `customPoliciesPath` 미설정 | 명시적 커스텀 정책 미실행; 컨벤션 정책 및 내장 정책은 정상 계속 |
257
+ | 파일을 찾을 수 없음 | `~/.failproofai/hook.log`에 경고 기록; 내장 정책 계속 |
258
+ | 구문/가져오기 오류 (명시적) | `~/.failproofai/hook.log`에 오류 기록; 명시적 커스텀 정책 건너뜀 |
259
+ | 구문/가져오기 오류 (컨벤션) | 오류 기록; 해당 파일 건너뜀, 다른 컨벤션 파일은 계속 로드 |
260
+ | `fn` 런타임 오류 | 오류 기록; 해당 훅은 `allow`로 처리; 다른 훅 계속 |
261
+ | `fn` 10초 초과 | 타임아웃 기록; `allow`로 처리 |
262
+ | 컨벤션 디렉터리 없음 | 컨벤션 정책 미실행; 오류 없음 |
263
+
264
+ <Tip>
265
+ 커스텀 정책 오류를 디버그하려면 로그 파일을 실시간으로 확인하세요:
266
+
267
+ ```bash
268
+ tail -f ~/.failproofai/hook.log
269
+ ```
270
+ </Tip>
271
+
272
+ ---
273
+
274
+ ## 전체 예시: 여러 정책
275
+
276
+ ```js
277
+ // my-policies.js
278
+ import { customPolicies, allow, deny, instruct } from "failproofai";
279
+
280
+ // 에이전트가 secrets/ 디렉터리에 쓰는 것을 방지
281
+ customPolicies.add({
282
+ name: "block-secrets-dir",
283
+ description: "Prevent agent from writing to secrets/ directory",
284
+ match: { events: ["PreToolUse"] },
285
+ fn: async (ctx) => {
286
+ if (!["Write", "Edit"].includes(ctx.toolName ?? "")) return allow();
287
+ const path = ctx.toolInput?.file_path ?? "";
288
+ if (path.includes("secrets/")) return deny("Writing to secrets/ is not permitted");
289
+ return allow();
290
+ },
291
+ });
292
+
293
+ // 에이전트 방향 유지: 커밋 전 테스트 확인
294
+ customPolicies.add({
295
+ name: "remind-test-before-commit",
296
+ description: "Keep the agent on track: verify tests pass before committing",
297
+ match: { events: ["PreToolUse"] },
298
+ fn: async (ctx) => {
299
+ if (ctx.toolName !== "Bash") return allow();
300
+ const cmd = ctx.toolInput?.command ?? "";
301
+ if (/git\s+commit/.test(cmd)) {
302
+ return instruct("Verify all tests pass before committing. Run `bun test` if you haven't already.");
303
+ }
304
+ return allow();
305
+ },
306
+ });
307
+
308
+ // 동결 기간 중 계획되지 않은 의존성 변경 방지
309
+ customPolicies.add({
310
+ name: "dependency-freeze",
311
+ description: "Prevent unplanned dependency changes during freeze period",
312
+ match: { events: ["PreToolUse"] },
313
+ fn: async (ctx) => {
314
+ if (ctx.toolName !== "Bash") return allow();
315
+ const cmd = ctx.toolInput?.command ?? "";
316
+ const isInstall = /^(npm install|yarn add|bun add|pnpm add)\s+\S/.test(cmd);
317
+ if (isInstall && process.env.DEPENDENCY_FREEZE === "1") {
318
+ return deny("Package installs are frozen. Unset DEPENDENCY_FREEZE to allow.");
319
+ }
320
+ return allow();
321
+ },
322
+ });
323
+
324
+ export { customPolicies };
325
+ ```
326
+
327
+ ---
328
+
329
+ ## 예시 파일
330
+
331
+ `examples/` 디렉터리에 바로 사용할 수 있는 정책 파일이 포함되어 있습니다:
332
+
333
+ | 파일 | 내용 |
334
+ |------|----------|
335
+ | `examples/policies-basic.js` | 일반적인 에이전트 실패 패턴을 다루는 5가지 기본 정책 |
336
+ | `examples/policies-advanced/index.js` | 고급 패턴: 전이적 가져오기, 비동기 호출, 출력 스크러빙, 세션 종료 훅 |
337
+ | `examples/convention-policies/security-policies.mjs` | 컨벤션 기반 보안 정책 (.env 파일 쓰기 차단, git 히스토리 재작성 방지) |
338
+ | `examples/convention-policies/workflow-policies.mjs` | 컨벤션 기반 워크플로우 정책 (테스트 리마인더, 감사 파일 쓰기) |
339
+
340
+ ### 명시적 파일 예시 사용
341
+
342
+ ```bash
343
+ failproofai policies --install --custom ./examples/policies-basic.js
344
+ ```
345
+
346
+ ### 컨벤션 기반 예시 사용
347
+
348
+ ```bash
349
+ # 프로젝트 레벨로 복사
350
+ mkdir -p .failproofai/policies
351
+ cp examples/convention-policies/*.mjs .failproofai/policies/
352
+
353
+ # 또는 사용자 레벨로 복사
354
+ mkdir -p ~/.failproofai/policies
355
+ cp examples/convention-policies/*.mjs ~/.failproofai/policies/
356
+ ```
357
+
358
+ 별도 설치 명령이 필요 없습니다 — 다음 훅 이벤트 시 파일이 자동으로 감지됩니다.