failproofai 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.claude/settings.json +316 -0
- package/.next/standalone/.failproofai/policies/workflow-policies.mjs +62 -0
- package/.next/standalone/.failproofai/policies-config.json +39 -0
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +3 -1
- package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +17 -17
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -17
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +11 -11
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +16 -16
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +16 -16
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +11 -11
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/policies/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
- package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0kjo7d_._.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_posthog-node_dist_entrypoints_index_node_mjs_05pz9._._.js +1 -1
- package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__12kr5~_._.js → [root-of-the-server]__03kiqd5._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qo8503._.js → [root-of-the-server]__0bo8s~-._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +9 -9
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0a_7sdg.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0ef3uwk.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0j79~gv.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0pbja1x.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0r6o0i2.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_11y81~_.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_12or2kf.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/node_modules_posthog-node_dist_entrypoints_index_node_mjs_0mebn66._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +5 -5
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
- package/.next/standalone/.next/static/chunks/{0x-625~1vx1lu.js → 02t9.s735hqyq.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0ov60i6md~37t.js → 03oepxbqx6o8~.js} +2 -2
- package/.next/standalone/.next/static/chunks/{031pa5~qfzt~_.js → 09e7drilkf1sn.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0y~0creqvl5wx.js → 0cwft44dh9bww.js} +1 -1
- package/.next/standalone/.next/static/chunks/{06og.7e9nkpjh.js → 0e2uz2g026ckb.js} +1 -1
- package/.next/standalone/.next/static/chunks/0gu_a.a80ritd.css +1 -0
- package/.next/standalone/.next/static/chunks/{15wf7x-e.8ia3.js → 0h5kbvg~.xf.v.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0_4y_t03jn2nq.js → 0od..umlku4bb.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0cvffh-pbsv5u.js → 0xbwzy4dl87-0.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0c_ljlxa._4lc.js → 18cl6wups7ouq.js} +2 -2
- package/.next/standalone/.next/static/chunks/{turbopack-0uc5y~g6h.n7-.js → turbopack-0r26pc8h0y_-e.js} +1 -1
- package/.next/standalone/CHANGELOG.md +103 -0
- package/.next/standalone/CLAUDE.md +28 -0
- package/.next/standalone/Dockerfile.docs +12 -0
- package/.next/standalone/README.md +95 -49
- package/.next/standalone/app/components/session-hooks-panel.tsx +14 -1
- package/.next/standalone/app/policies/hooks-client.tsx +14 -1
- package/.next/standalone/bin/failproofai.mjs +5 -0
- package/.next/standalone/bun.lock +76 -63
- package/.next/standalone/components/navbar.tsx +5 -0
- package/.next/standalone/dist/cli.mjs +539 -90
- package/.next/standalone/dist/index.js +2 -2
- package/.next/standalone/docs/ar/architecture.mdx +333 -0
- package/.next/standalone/docs/ar/built-in-policies.mdx +566 -0
- package/.next/standalone/docs/ar/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/ar/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/ar/cli/hook.mdx +31 -0
- package/.next/standalone/docs/ar/cli/install-policies.mdx +49 -0
- package/.next/standalone/docs/ar/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/ar/cli/remove-policies.mdx +45 -0
- package/.next/standalone/docs/ar/cli/version.mdx +13 -0
- package/.next/standalone/docs/ar/configuration.mdx +223 -0
- package/.next/standalone/docs/ar/custom-policies.mdx +359 -0
- package/.next/standalone/docs/ar/dashboard.mdx +142 -0
- package/.next/standalone/docs/ar/examples.mdx +254 -0
- package/.next/standalone/docs/ar/for-agents.mdx +39 -0
- package/.next/standalone/docs/ar/getting-started.mdx +134 -0
- package/.next/standalone/docs/ar/introduction.mdx +58 -0
- package/.next/standalone/docs/ar/package-aliases.mdx +82 -0
- package/.next/standalone/docs/ar/testing.mdx +261 -0
- package/.next/standalone/docs/{architecture.md → architecture.mdx} +40 -23
- package/.next/standalone/docs/{built-in-policies.md → built-in-policies.mdx} +151 -13
- package/.next/standalone/docs/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/cli/hook.mdx +30 -0
- package/.next/standalone/docs/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/cli/version.mdx +12 -0
- package/.next/standalone/docs/{configuration.md → configuration.mdx} +62 -16
- package/.next/standalone/docs/custom-policies.mdx +357 -0
- package/.next/standalone/docs/{dashboard.md → dashboard.mdx} +26 -29
- package/.next/standalone/docs/de/architecture.mdx +332 -0
- package/.next/standalone/docs/de/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/de/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/de/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/de/cli/hook.mdx +30 -0
- package/.next/standalone/docs/de/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/de/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/de/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/de/cli/version.mdx +12 -0
- package/.next/standalone/docs/de/configuration.mdx +222 -0
- package/.next/standalone/docs/de/custom-policies.mdx +357 -0
- package/.next/standalone/docs/de/dashboard.mdx +142 -0
- package/.next/standalone/docs/de/examples.mdx +253 -0
- package/.next/standalone/docs/de/for-agents.mdx +38 -0
- package/.next/standalone/docs/de/getting-started.mdx +134 -0
- package/.next/standalone/docs/de/introduction.mdx +57 -0
- package/.next/standalone/docs/de/package-aliases.mdx +82 -0
- package/.next/standalone/docs/de/testing.mdx +260 -0
- package/.next/standalone/docs/docs.json +938 -24
- package/.next/standalone/docs/es/architecture.mdx +332 -0
- package/.next/standalone/docs/es/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/es/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/es/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/es/cli/hook.mdx +30 -0
- package/.next/standalone/docs/es/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/es/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/es/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/es/cli/version.mdx +12 -0
- package/.next/standalone/docs/es/configuration.mdx +222 -0
- package/.next/standalone/docs/es/custom-policies.mdx +357 -0
- package/.next/standalone/docs/es/dashboard.mdx +142 -0
- package/.next/standalone/docs/es/examples.mdx +253 -0
- package/.next/standalone/docs/es/for-agents.mdx +38 -0
- package/.next/standalone/docs/es/getting-started.mdx +134 -0
- package/.next/standalone/docs/es/introduction.mdx +57 -0
- package/.next/standalone/docs/es/package-aliases.mdx +82 -0
- package/.next/standalone/docs/es/testing.mdx +260 -0
- package/.next/standalone/docs/examples.mdx +253 -0
- package/.next/standalone/docs/for-agents.mdx +38 -0
- package/.next/standalone/docs/fr/architecture.mdx +332 -0
- package/.next/standalone/docs/fr/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/fr/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/fr/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/fr/cli/hook.mdx +30 -0
- package/.next/standalone/docs/fr/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/fr/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/fr/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/fr/cli/version.mdx +12 -0
- package/.next/standalone/docs/fr/configuration.mdx +222 -0
- package/.next/standalone/docs/fr/custom-policies.mdx +357 -0
- package/.next/standalone/docs/fr/dashboard.mdx +142 -0
- package/.next/standalone/docs/fr/examples.mdx +253 -0
- package/.next/standalone/docs/fr/for-agents.mdx +38 -0
- package/.next/standalone/docs/fr/getting-started.mdx +134 -0
- package/.next/standalone/docs/fr/introduction.mdx +57 -0
- package/.next/standalone/docs/fr/package-aliases.mdx +82 -0
- package/.next/standalone/docs/fr/testing.mdx +260 -0
- package/.next/standalone/docs/getting-started.mdx +134 -0
- package/.next/standalone/docs/he/architecture.mdx +333 -0
- package/.next/standalone/docs/he/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/he/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/he/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/he/cli/hook.mdx +30 -0
- package/.next/standalone/docs/he/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/he/cli/list-policies.mdx +32 -0
- package/.next/standalone/docs/he/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/he/cli/version.mdx +12 -0
- package/.next/standalone/docs/he/configuration.mdx +222 -0
- package/.next/standalone/docs/he/custom-policies.mdx +357 -0
- package/.next/standalone/docs/he/dashboard.mdx +142 -0
- package/.next/standalone/docs/he/examples.mdx +253 -0
- package/.next/standalone/docs/he/for-agents.mdx +38 -0
- package/.next/standalone/docs/he/getting-started.mdx +135 -0
- package/.next/standalone/docs/he/introduction.mdx +57 -0
- package/.next/standalone/docs/he/package-aliases.mdx +82 -0
- package/.next/standalone/docs/he/testing.mdx +260 -0
- package/.next/standalone/docs/hi/architecture.mdx +334 -0
- package/.next/standalone/docs/hi/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/hi/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/hi/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/hi/cli/hook.mdx +30 -0
- package/.next/standalone/docs/hi/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/hi/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/hi/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/hi/cli/version.mdx +12 -0
- package/.next/standalone/docs/hi/configuration.mdx +222 -0
- package/.next/standalone/docs/hi/custom-policies.mdx +357 -0
- package/.next/standalone/docs/hi/dashboard.mdx +142 -0
- package/.next/standalone/docs/hi/examples.mdx +255 -0
- package/.next/standalone/docs/hi/for-agents.mdx +38 -0
- package/.next/standalone/docs/hi/getting-started.mdx +134 -0
- package/.next/standalone/docs/hi/introduction.mdx +57 -0
- package/.next/standalone/docs/hi/package-aliases.mdx +82 -0
- package/.next/standalone/docs/hi/testing.mdx +260 -0
- package/.next/standalone/docs/i18n/README.ar.md +312 -0
- package/.next/standalone/docs/i18n/README.de.md +307 -0
- package/.next/standalone/docs/i18n/README.es.md +307 -0
- package/.next/standalone/docs/i18n/README.fr.md +307 -0
- package/.next/standalone/docs/i18n/README.he.md +312 -0
- package/.next/standalone/docs/i18n/README.hi.md +307 -0
- package/.next/standalone/docs/i18n/README.it.md +307 -0
- package/.next/standalone/docs/i18n/README.ja.md +307 -0
- package/.next/standalone/docs/i18n/README.ko.md +307 -0
- package/.next/standalone/docs/i18n/README.pt-br.md +307 -0
- package/.next/standalone/docs/i18n/README.ru.md +308 -0
- package/.next/standalone/docs/i18n/README.tr.md +308 -0
- package/.next/standalone/docs/i18n/README.vi.md +308 -0
- package/.next/standalone/docs/i18n/README.zh.md +307 -0
- package/.next/standalone/docs/introduction.mdx +57 -0
- package/.next/standalone/docs/it/architecture.mdx +333 -0
- package/.next/standalone/docs/it/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/it/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/it/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/it/cli/hook.mdx +30 -0
- package/.next/standalone/docs/it/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/it/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/it/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/it/cli/version.mdx +12 -0
- package/.next/standalone/docs/it/configuration.mdx +223 -0
- package/.next/standalone/docs/it/custom-policies.mdx +358 -0
- package/.next/standalone/docs/it/dashboard.mdx +142 -0
- package/.next/standalone/docs/it/examples.mdx +253 -0
- package/.next/standalone/docs/it/for-agents.mdx +38 -0
- package/.next/standalone/docs/it/getting-started.mdx +134 -0
- package/.next/standalone/docs/it/introduction.mdx +57 -0
- package/.next/standalone/docs/it/package-aliases.mdx +82 -0
- package/.next/standalone/docs/it/testing.mdx +260 -0
- package/.next/standalone/docs/ja/architecture.mdx +332 -0
- package/.next/standalone/docs/ja/built-in-policies.mdx +562 -0
- package/.next/standalone/docs/ja/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/ja/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/ja/cli/hook.mdx +30 -0
- package/.next/standalone/docs/ja/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/ja/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/ja/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/ja/cli/version.mdx +12 -0
- package/.next/standalone/docs/ja/configuration.mdx +222 -0
- package/.next/standalone/docs/ja/custom-policies.mdx +357 -0
- package/.next/standalone/docs/ja/dashboard.mdx +142 -0
- package/.next/standalone/docs/ja/examples.mdx +253 -0
- package/.next/standalone/docs/ja/for-agents.mdx +38 -0
- package/.next/standalone/docs/ja/getting-started.mdx +134 -0
- package/.next/standalone/docs/ja/introduction.mdx +57 -0
- package/.next/standalone/docs/ja/package-aliases.mdx +82 -0
- package/.next/standalone/docs/ja/testing.mdx +260 -0
- package/.next/standalone/docs/ko/architecture.mdx +332 -0
- package/.next/standalone/docs/ko/built-in-policies.mdx +562 -0
- package/.next/standalone/docs/ko/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/ko/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/ko/cli/hook.mdx +30 -0
- package/.next/standalone/docs/ko/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/ko/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/ko/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/ko/cli/version.mdx +12 -0
- package/.next/standalone/docs/ko/configuration.mdx +222 -0
- package/.next/standalone/docs/ko/custom-policies.mdx +357 -0
- package/.next/standalone/docs/ko/dashboard.mdx +142 -0
- package/.next/standalone/docs/ko/examples.mdx +253 -0
- package/.next/standalone/docs/ko/for-agents.mdx +38 -0
- package/.next/standalone/docs/ko/getting-started.mdx +134 -0
- package/.next/standalone/docs/ko/introduction.mdx +57 -0
- package/.next/standalone/docs/ko/package-aliases.mdx +82 -0
- package/.next/standalone/docs/ko/testing.mdx +260 -0
- package/.next/standalone/docs/logo/dark.svg +21 -0
- package/.next/standalone/docs/logo/light.svg +21 -0
- package/.next/standalone/docs/{package-aliases.md → package-aliases.mdx} +5 -5
- package/.next/standalone/docs/pt-br/architecture.mdx +332 -0
- package/.next/standalone/docs/pt-br/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/pt-br/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/pt-br/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/pt-br/cli/hook.mdx +30 -0
- package/.next/standalone/docs/pt-br/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/pt-br/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/pt-br/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/pt-br/cli/version.mdx +12 -0
- package/.next/standalone/docs/pt-br/configuration.mdx +222 -0
- package/.next/standalone/docs/pt-br/custom-policies.mdx +357 -0
- package/.next/standalone/docs/pt-br/dashboard.mdx +142 -0
- package/.next/standalone/docs/pt-br/examples.mdx +253 -0
- package/.next/standalone/docs/pt-br/for-agents.mdx +38 -0
- package/.next/standalone/docs/pt-br/getting-started.mdx +134 -0
- package/.next/standalone/docs/pt-br/introduction.mdx +57 -0
- package/.next/standalone/docs/pt-br/package-aliases.mdx +82 -0
- package/.next/standalone/docs/pt-br/testing.mdx +260 -0
- package/.next/standalone/docs/ru/architecture.mdx +334 -0
- package/.next/standalone/docs/ru/built-in-policies.mdx +562 -0
- package/.next/standalone/docs/ru/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/ru/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/ru/cli/hook.mdx +30 -0
- package/.next/standalone/docs/ru/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/ru/cli/list-policies.mdx +32 -0
- package/.next/standalone/docs/ru/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/ru/cli/version.mdx +12 -0
- package/.next/standalone/docs/ru/configuration.mdx +223 -0
- package/.next/standalone/docs/ru/custom-policies.mdx +357 -0
- package/.next/standalone/docs/ru/dashboard.mdx +142 -0
- package/.next/standalone/docs/ru/examples.mdx +254 -0
- package/.next/standalone/docs/ru/for-agents.mdx +38 -0
- package/.next/standalone/docs/ru/getting-started.mdx +134 -0
- package/.next/standalone/docs/ru/introduction.mdx +57 -0
- package/.next/standalone/docs/ru/package-aliases.mdx +82 -0
- package/.next/standalone/docs/ru/testing.mdx +260 -0
- package/.next/standalone/docs/{testing.md → testing.mdx} +11 -11
- package/.next/standalone/docs/tr/architecture.mdx +333 -0
- package/.next/standalone/docs/tr/built-in-policies.mdx +562 -0
- package/.next/standalone/docs/tr/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/tr/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/tr/cli/hook.mdx +30 -0
- package/.next/standalone/docs/tr/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/tr/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/tr/cli/remove-policies.mdx +45 -0
- package/.next/standalone/docs/tr/cli/version.mdx +12 -0
- package/.next/standalone/docs/tr/configuration.mdx +223 -0
- package/.next/standalone/docs/tr/custom-policies.mdx +357 -0
- package/.next/standalone/docs/tr/dashboard.mdx +142 -0
- package/.next/standalone/docs/tr/examples.mdx +253 -0
- package/.next/standalone/docs/tr/for-agents.mdx +38 -0
- package/.next/standalone/docs/tr/getting-started.mdx +134 -0
- package/.next/standalone/docs/tr/introduction.mdx +57 -0
- package/.next/standalone/docs/tr/package-aliases.mdx +82 -0
- package/.next/standalone/docs/tr/testing.mdx +260 -0
- package/.next/standalone/docs/vi/architecture.mdx +333 -0
- package/.next/standalone/docs/vi/built-in-policies.mdx +564 -0
- package/.next/standalone/docs/vi/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/vi/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/vi/cli/hook.mdx +30 -0
- package/.next/standalone/docs/vi/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/vi/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/vi/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/vi/cli/version.mdx +13 -0
- package/.next/standalone/docs/vi/configuration.mdx +222 -0
- package/.next/standalone/docs/vi/custom-policies.mdx +357 -0
- package/.next/standalone/docs/vi/dashboard.mdx +142 -0
- package/.next/standalone/docs/vi/examples.mdx +253 -0
- package/.next/standalone/docs/vi/for-agents.mdx +38 -0
- package/.next/standalone/docs/vi/getting-started.mdx +134 -0
- package/.next/standalone/docs/vi/introduction.mdx +57 -0
- package/.next/standalone/docs/vi/package-aliases.mdx +82 -0
- package/.next/standalone/docs/vi/testing.mdx +260 -0
- package/.next/standalone/docs/zh/architecture.mdx +332 -0
- package/.next/standalone/docs/zh/built-in-policies.mdx +562 -0
- package/.next/standalone/docs/zh/cli/dashboard.mdx +28 -0
- package/.next/standalone/docs/zh/cli/environment-variables.mdx +34 -0
- package/.next/standalone/docs/zh/cli/hook.mdx +30 -0
- package/.next/standalone/docs/zh/cli/install-policies.mdx +48 -0
- package/.next/standalone/docs/zh/cli/list-policies.mdx +31 -0
- package/.next/standalone/docs/zh/cli/remove-policies.mdx +44 -0
- package/.next/standalone/docs/zh/cli/version.mdx +12 -0
- package/.next/standalone/docs/zh/configuration.mdx +222 -0
- package/.next/standalone/docs/zh/custom-policies.mdx +357 -0
- package/.next/standalone/docs/zh/dashboard.mdx +142 -0
- package/.next/standalone/docs/zh/examples.mdx +253 -0
- package/.next/standalone/docs/zh/for-agents.mdx +38 -0
- package/.next/standalone/docs/zh/getting-started.mdx +134 -0
- package/.next/standalone/docs/zh/introduction.mdx +57 -0
- package/.next/standalone/docs/zh/package-aliases.mdx +82 -0
- package/.next/standalone/docs/zh/testing.mdx +260 -0
- package/.next/standalone/examples/convention-policies/security-policies.mjs +40 -0
- package/.next/standalone/examples/convention-policies/workflow-policies.mjs +41 -0
- package/.next/standalone/next.config.ts +5 -3
- package/.next/standalone/node_modules/@next/env/package.json +1 -1
- package/.next/standalone/node_modules/next/dist/build/swc/index.js +1 -1
- package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/index.js +2 -2
- package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +1 -1
- package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +1 -1
- package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +1 -1
- package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
- package/.next/standalone/node_modules/next/dist/server/config.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +7 -2
- package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
- package/.next/standalone/node_modules/next/dist/server/render.js +20 -19
- package/.next/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
- package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
- package/.next/standalone/node_modules/next/package.json +15 -15
- package/.next/standalone/node_modules/react/cjs/react.development.js +1 -1
- package/.next/standalone/node_modules/react/cjs/react.production.js +1 -1
- package/.next/standalone/node_modules/react/package.json +1 -1
- package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +1 -1
- package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +1 -1
- package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +3 -3
- package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +3 -3
- package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +3 -3
- package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +1 -1
- package/.next/standalone/node_modules/react-dom/package.json +2 -2
- package/.next/standalone/package.json +13 -10
- package/.next/standalone/scripts/translate-docs/cache.ts +62 -0
- package/.next/standalone/scripts/translate-docs/cli.ts +357 -0
- package/.next/standalone/scripts/translate-docs/config.ts +248 -0
- package/.next/standalone/scripts/translate-docs/mdx-translator.ts +153 -0
- package/.next/standalone/scripts/translate-docs/mintlify-nav.ts +107 -0
- package/.next/standalone/scripts/translate-docs/readme-translator.ts +154 -0
- package/.next/standalone/scripts/translate-docs/translator.ts +68 -0
- package/.next/standalone/scripts/translate-docs/types.ts +43 -0
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/skills-lock.json +10 -0
- package/.next/standalone/src/hooks/builtin-policies.ts +405 -25
- package/.next/standalone/src/hooks/custom-hooks-loader.ts +165 -21
- package/.next/standalone/src/hooks/handler.ts +33 -6
- package/.next/standalone/src/hooks/hook-activity-store.ts +6 -1
- package/.next/standalone/src/hooks/hooks-config.ts +47 -2
- package/.next/standalone/src/hooks/llm-client.ts +2 -2
- package/.next/standalone/src/hooks/loader-utils.ts +4 -4
- package/.next/standalone/src/hooks/manager.ts +67 -16
- package/.next/standalone/src/hooks/policy-evaluator.ts +58 -19
- package/.next/standalone/src/hooks/policy-helpers.ts +2 -2
- package/.next/standalone/vitest.config.e2e.mts +3 -0
- package/.next/standalone/vitest.config.mts +3 -0
- package/README.md +95 -49
- package/bin/failproofai.mjs +5 -0
- package/dist/cli.mjs +539 -90
- package/dist/index.js +2 -2
- package/package.json +13 -10
- package/scripts/translate-docs/cache.ts +62 -0
- package/scripts/translate-docs/cli.ts +357 -0
- package/scripts/translate-docs/config.ts +248 -0
- package/scripts/translate-docs/mdx-translator.ts +153 -0
- package/scripts/translate-docs/mintlify-nav.ts +107 -0
- package/scripts/translate-docs/readme-translator.ts +154 -0
- package/scripts/translate-docs/translator.ts +68 -0
- package/scripts/translate-docs/types.ts +43 -0
- package/src/hooks/builtin-policies.ts +405 -25
- package/src/hooks/custom-hooks-loader.ts +165 -21
- package/src/hooks/handler.ts +33 -6
- package/src/hooks/hook-activity-store.ts +6 -1
- package/src/hooks/hooks-config.ts +47 -2
- package/src/hooks/llm-client.ts +2 -2
- package/src/hooks/loader-utils.ts +4 -4
- package/src/hooks/manager.ts +67 -16
- package/src/hooks/policy-evaluator.ts +58 -19
- package/src/hooks/policy-helpers.ts +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__02nt~6d._.js +0 -3
- package/.next/standalone/.next/static/chunks/15jpradyu_531.css +0 -1
- package/.next/standalone/docs/cli-reference.md +0 -175
- package/.next/standalone/docs/custom-hooks.md +0 -261
- package/.next/standalone/docs/getting-started.md +0 -128
- package/.next/standalone/docs/introduction.md +0 -47
- /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{WS-OQSqL1Lp1w_obXfjvl → En9eEShUkUjgeYbY9v6Gy}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,564 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: מדיניויות מובנות
|
|
3
|
+
description: "כל 30 מדיניויות מובנות התופסות מצבי כישלון נפוצים של סוכנים"
|
|
4
|
+
icon: shield
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
failproofai מגיע עם 30 מדיניויות מובנות התופסות מצבי כישלון נפוצים של סוכנים. כל מדיניות מופעלת על סוג אירוע hook ספציפי וושם כלי. תשע מדיניויות מקבלות פרמטרים שמאפשרים לך לכוונן את התנהגותן ללא כתיבת קוד. ארבע מדיניויות workflow בטא אוכפות צינור commit → push → PR → CI לפני שClaude עוצר.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## סקירה כללית
|
|
12
|
+
|
|
13
|
+
מדיניויות מקובצות לקטגוריות:
|
|
14
|
+
|
|
15
|
+
| קטגוריה | מדיניויות | סוג Hook |
|
|
16
|
+
|----------|----------|-----------|
|
|
17
|
+
| [פקודות מסוכנות](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
|
|
18
|
+
| [סודות (מסנני)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
|
|
19
|
+
| [סביבה](#environment) | block-env-files, protect-env-vars | PreToolUse |
|
|
20
|
+
| [גישת קבצים](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
|
|
21
|
+
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
|
|
22
|
+
| [מסד נתונים](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
|
|
23
|
+
| [אזהרות](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
|
|
24
|
+
| [Workflow (בטא)](#workflow-beta) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
|
|
25
|
+
|
|
26
|
+
- **`block-`** — עצור את הסוכן מהמשך.
|
|
27
|
+
- **`warn-`** — תן לסוכן הקשר נוסף כך שיוכל להתאושש בעצמו.
|
|
28
|
+
- **`sanitize-`** — סלק נתונים רגישים מפלט הכלי לפני שהסוכן רואה זאת.
|
|
29
|
+
- **`require-`** — חסום את אירוע ה-Stop עד שתנאים מתקיימים.
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
<Tip>
|
|
34
|
+
כל מדיניות תומכת בשדה `hint` אופציונלי ב-`policyParams`. ה-hint מצורף להודעת deny או instruct שClaude רואה, תוך מתן הנחיה מעשית ללא שינוי קוד מדיניות. עובד עם מדיניויות מובנות, מותאמות וקונווציה. ראה [תצורה → hint](/he/configuration#hint-cross-cutting) לפרטים.
|
|
35
|
+
</Tip>
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## פקודות מסוכנות
|
|
40
|
+
|
|
41
|
+
מנע סוכנים מהרצת פעולות שקשה להוציא מהן או שעלולות להזיק למערכת המארח.
|
|
42
|
+
|
|
43
|
+
### `block-sudo`
|
|
44
|
+
|
|
45
|
+
**אירוע:** PreToolUse (Bash)
|
|
46
|
+
**ברירת מחדל:** דוחה כל פקודת `sudo`.
|
|
47
|
+
|
|
48
|
+
חוסם הזעקות המכילות את המילה `sudo`. התאמת דפוס נעשית על סימנים מפוענחים של פקודה, לא על המחרוזת הגולמית, כדי למנוע עקיפה דרך הזרקת אופרטור shell.
|
|
49
|
+
|
|
50
|
+
**פרמטרים:**
|
|
51
|
+
|
|
52
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
53
|
+
|-------|------|---------|-------------|
|
|
54
|
+
| `allowPatterns` | `string[]` | `[]` | קידומות פקודה בדיוק המותרות. כל רשומה מתאימה לסימנים של argv המפוענחים. |
|
|
55
|
+
|
|
56
|
+
**דוגמה:**
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"policyParams": {
|
|
61
|
+
"block-sudo": {
|
|
62
|
+
"allowPatterns": ["sudo systemctl status", "sudo journalctl"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
עם תצורה זו, `sudo systemctl status nginx` מותר, אבל `sudo rm /etc/hosts` דחוי.
|
|
69
|
+
|
|
70
|
+
<Note>
|
|
71
|
+
דפוסים מתאימים לסימנים מפוענחים, לא למחרוזת הפקודה הגולמית. זה מונע עקיפה דרך אופרטורים shell מצורפים (למשל `sudo systemctl status x; rm -rf /` לא מתאים ל-`sudo systemctl status *`).
|
|
72
|
+
</Note>
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
### `block-rm-rf`
|
|
77
|
+
|
|
78
|
+
**אירוע:** PreToolUse (Bash)
|
|
79
|
+
**ברירת מחדל:** דוחה `rm -rf`, `rm -fr` וצורות מחיקה רקורסיביות דומות.
|
|
80
|
+
|
|
81
|
+
**פרמטרים:**
|
|
82
|
+
|
|
83
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
84
|
+
|-------|------|---------|-------------|
|
|
85
|
+
| `allowPaths` | `string[]` | `[]` | נתיבים בטוחים למחיקה רקורסיבית (למשל `/tmp`). |
|
|
86
|
+
|
|
87
|
+
**דוגמה:**
|
|
88
|
+
|
|
89
|
+
```json
|
|
90
|
+
{
|
|
91
|
+
"policyParams": {
|
|
92
|
+
"block-rm-rf": {
|
|
93
|
+
"allowPaths": ["/tmp", "/var/cache"]
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
### `block-curl-pipe-sh`
|
|
102
|
+
|
|
103
|
+
**אירוע:** PreToolUse (Bash)
|
|
104
|
+
**ברירת מחדל:** דוחה `curl <url> | bash`, `curl <url> | sh`, `wget <url> | bash` ודפוסים דומים.
|
|
105
|
+
|
|
106
|
+
ללא פרמטרים.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
### `block-failproofai-commands`
|
|
111
|
+
|
|
112
|
+
**אירוע:** PreToolUse (Bash)
|
|
113
|
+
**ברירת מחדל:** דוחה פקודות שיבטלו או בטלו את failproofai עצמו (למשל `npm uninstall failproofai`, `failproofai policies --uninstall`).
|
|
114
|
+
|
|
115
|
+
ללא פרמטרים.
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## סודות (מסנני)
|
|
120
|
+
|
|
121
|
+
עצור סוכנים מדליפת עתודות לקשרם או לפלט שלהם. מדיניויות מסנן מופעלות על אירועי **PostToolUse**. כאשר Claude מריץ פקודת Bash, קורא קובץ, או קורא לכל כלי, מדיניויות אלה בוחנות את הפלט לפני שהוא מוחזר ל-Claude. אם דפוס סוד מזוהה, המדיניות מחזירה החלטת deny המונעת את העברת הפלט חזרה.
|
|
122
|
+
|
|
123
|
+
### `sanitize-jwt`
|
|
124
|
+
|
|
125
|
+
**אירוע:** PostToolUse (כל הכלים)
|
|
126
|
+
**ברירת מחדל:** מחפה JWT tokens (שלוש קטעי base64url מופרדים ב-`.`).
|
|
127
|
+
|
|
128
|
+
ללא פרמטרים.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
### `sanitize-api-keys`
|
|
133
|
+
|
|
134
|
+
**אירוע:** PostToolUse (כל הכלים)
|
|
135
|
+
**ברירת מחדל:** מחפה פורמטי API key נפוצים: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS access keys (`AKIA`), Stripe keys (`sk_live_`, `sk_test_`) וגוגל API keys (`AIza`).
|
|
136
|
+
|
|
137
|
+
**פרמטרים:**
|
|
138
|
+
|
|
139
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
140
|
+
|-------|------|---------|-------------|
|
|
141
|
+
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | דפוסי regex נוספים להתיחס אליהם כסודות. |
|
|
142
|
+
|
|
143
|
+
**דוגמה:**
|
|
144
|
+
|
|
145
|
+
```json
|
|
146
|
+
{
|
|
147
|
+
"policyParams": {
|
|
148
|
+
"sanitize-api-keys": {
|
|
149
|
+
"additionalPatterns": [
|
|
150
|
+
{ "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo internal API key" },
|
|
151
|
+
{ "regex": "pat_[0-9a-f]{40}", "label": "Internal PAT" }
|
|
152
|
+
]
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
### `sanitize-connection-strings`
|
|
161
|
+
|
|
162
|
+
**אירוע:** PostToolUse (כל הכלים)
|
|
163
|
+
**ברירת מחדל:** מחפה מחרוזות חיבור במסד נתונים המכילות עתודות משובצות (למשל `postgresql://user:password@host/db`).
|
|
164
|
+
|
|
165
|
+
ללא פרמטרים.
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
### `sanitize-private-key-content`
|
|
170
|
+
|
|
171
|
+
**אירוע:** PostToolUse (כל הכלים)
|
|
172
|
+
**ברירת מחדל:** מחפה בלוקים PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, וכו').
|
|
173
|
+
|
|
174
|
+
ללא פרמטרים.
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
### `sanitize-bearer-tokens`
|
|
179
|
+
|
|
180
|
+
**אירוע:** PostToolUse (כל הכלים)
|
|
181
|
+
**ברירת מחדל:** מחפה headers `Authorization: Bearer <token>` כאשר האסימון הוא 20 תווים או יותר.
|
|
182
|
+
|
|
183
|
+
ללא פרמטרים.
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## סביבה
|
|
188
|
+
|
|
189
|
+
הגן על תצורת סביבה רגישה מלהיקרא או להיחשף על ידי סוכנים.
|
|
190
|
+
|
|
191
|
+
### `block-env-files`
|
|
192
|
+
|
|
193
|
+
**אירוע:** PreToolUse (Bash, Read)
|
|
194
|
+
**ברירת מחדל:** דוחה קריאת קבצי `.env` דרך `cat .env`, קריאות כלי Read עם `.env` כנתיב קובץ וכו'.
|
|
195
|
+
|
|
196
|
+
לא חוסם `.envrc` או קבצים סמוכים לסביבה אחרים - רק קבצים בשם בדיוק `.env`.
|
|
197
|
+
|
|
198
|
+
ללא פרמטרים.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
### `protect-env-vars`
|
|
203
|
+
|
|
204
|
+
**אירוע:** PreToolUse (Bash)
|
|
205
|
+
**ברירת מחדל:** דוחה פקודות המדפיסות משתני סביבה: `printenv`, `env`, `echo $VAR`.
|
|
206
|
+
|
|
207
|
+
ללא פרמטרים.
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## גישת קבצים
|
|
212
|
+
|
|
213
|
+
שמור סוכנים לעבודה בתוך גבולות הפרויקט וחוק מקבצים רגישים.
|
|
214
|
+
|
|
215
|
+
### `block-read-outside-cwd`
|
|
216
|
+
|
|
217
|
+
**אירוע:** PreToolUse (Read, Bash)
|
|
218
|
+
**ברירת מחדל:** דוחה קריאת קבצים מחוץ לספריה העובדת הנוכחית (שורש הפרויקט).
|
|
219
|
+
|
|
220
|
+
**פרמטרים:**
|
|
221
|
+
|
|
222
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
223
|
+
|-------|------|---------|-------------|
|
|
224
|
+
| `allowPaths` | `string[]` | `[]` | קידומות נתיב אבסולוטי המותרות גם אם מחוץ ל-cwd. |
|
|
225
|
+
|
|
226
|
+
**דוגמה:**
|
|
227
|
+
|
|
228
|
+
```json
|
|
229
|
+
{
|
|
230
|
+
"policyParams": {
|
|
231
|
+
"block-read-outside-cwd": {
|
|
232
|
+
"allowPaths": ["/shared/data", "/opt/company/config"]
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
### `block-secrets-write`
|
|
241
|
+
|
|
242
|
+
**אירוע:** PreToolUse (Write, Edit)
|
|
243
|
+
**ברירת מחדל:** דוחה כתיבות לקבצים בשימוש נפוץ למפתחות פרטיים ותעודות: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
|
|
244
|
+
|
|
245
|
+
**פרמטרים:**
|
|
246
|
+
|
|
247
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
248
|
+
|-------|------|---------|-------------|
|
|
249
|
+
| `additionalPatterns` | `string[]` | `[]` | דפוסי שם קובץ נוספים (בסגנון glob) לחסימה. |
|
|
250
|
+
|
|
251
|
+
**דוגמה:**
|
|
252
|
+
|
|
253
|
+
```json
|
|
254
|
+
{
|
|
255
|
+
"policyParams": {
|
|
256
|
+
"block-secrets-write": {
|
|
257
|
+
"additionalPatterns": [".token", ".secret"]
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## Git
|
|
266
|
+
|
|
267
|
+
מנע דחיפות מקריות, כפוי דחיפה וטעויות ענף שקשה להוציא מהן.
|
|
268
|
+
|
|
269
|
+
### `block-push-master`
|
|
270
|
+
|
|
271
|
+
**אירוע:** PreToolUse (Bash)
|
|
272
|
+
**ברירת מחדל:** דוחה `git push origin main` ו-`git push origin master`.
|
|
273
|
+
|
|
274
|
+
**פרמטרים:**
|
|
275
|
+
|
|
276
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
277
|
+
|-------|------|---------|-------------|
|
|
278
|
+
| `protectedBranches` | `string[]` | `["main", "master"]` | שמות ענפים שלא ניתן לדחוף אליהם ישירות. |
|
|
279
|
+
|
|
280
|
+
**דוגמה:**
|
|
281
|
+
|
|
282
|
+
```json
|
|
283
|
+
{
|
|
284
|
+
"policyParams": {
|
|
285
|
+
"block-push-master": {
|
|
286
|
+
"protectedBranches": ["main", "master", "release", "prod"]
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
<Tip>
|
|
293
|
+
כדי לאפשר דחיפה לכל הענפים (למעשה השבתת מדיניות זו ללא הסרתה מ-`enabledPolicies`), הגדר `protectedBranches: []`.
|
|
294
|
+
</Tip>
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
### `block-work-on-main`
|
|
299
|
+
|
|
300
|
+
**אירוע:** PreToolUse (Bash)
|
|
301
|
+
**ברירת מחדל:** דוחה checkout של ענפי `main` או `master` ישירות.
|
|
302
|
+
|
|
303
|
+
**פרמטרים:**
|
|
304
|
+
|
|
305
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
306
|
+
|-------|------|---------|-------------|
|
|
307
|
+
| `protectedBranches` | `string[]` | `["main", "master"]` | שמות ענפים שלא ניתן לעשות להם checkout ישירות. |
|
|
308
|
+
|
|
309
|
+
---
|
|
310
|
+
|
|
311
|
+
### `block-force-push`
|
|
312
|
+
|
|
313
|
+
**אירוע:** PreToolUse (Bash)
|
|
314
|
+
**ברירת מחדל:** דוחה `git push --force` ו-`git push -f`.
|
|
315
|
+
|
|
316
|
+
ללא פרמטרים ספציפיים למדיניות. השתמש ב-[`hint`](/he/configuration#hint-cross-cutting) החוצה-משימה כדי להציע אלטרנטיבות:
|
|
317
|
+
|
|
318
|
+
```json
|
|
319
|
+
{
|
|
320
|
+
"policyParams": {
|
|
321
|
+
"block-force-push": {
|
|
322
|
+
"hint": "Create a new branch from your current HEAD (e.g. `git checkout -b <new-branch>`) and push that instead."
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
---
|
|
329
|
+
|
|
330
|
+
### `warn-git-amend`
|
|
331
|
+
|
|
332
|
+
**אירוע:** PreToolUse (Bash)
|
|
333
|
+
**ברירת מחדל:** מורה ל-Claude להמשיך בזהירות בעת הרצת `git commit --amend`. לא חוסם את הפקודה.
|
|
334
|
+
|
|
335
|
+
ללא פרמטרים.
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
### `warn-git-stash-drop`
|
|
340
|
+
|
|
341
|
+
**אירוע:** PreToolUse (Bash)
|
|
342
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני הרצת `git stash drop`. לא חוסם את הפקודה.
|
|
343
|
+
|
|
344
|
+
ללא פרמטרים.
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
### `warn-all-files-staged`
|
|
349
|
+
|
|
350
|
+
**אירוע:** PreToolUse (Bash)
|
|
351
|
+
**ברירת מחדל:** מורה ל-Claude לבדוק מה הוא בתהליך staging כשהוא מריץ `git add -A` או `git add .`. לא חוסם את הפקודה.
|
|
352
|
+
|
|
353
|
+
ללא פרמטרים.
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## מסד נתונים
|
|
358
|
+
|
|
359
|
+
תפוס פעולות SQL הרסניות לפני שהן מתבצעות כנגד מסד הנתונים שלך.
|
|
360
|
+
|
|
361
|
+
### `warn-destructive-sql`
|
|
362
|
+
|
|
363
|
+
**אירוע:** PreToolUse (Bash)
|
|
364
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני הרצת SQL המכיל `DROP TABLE`, `DROP DATABASE` או `DELETE` ללא סעיף `WHERE`.
|
|
365
|
+
|
|
366
|
+
ללא פרמטרים.
|
|
367
|
+
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
### `warn-schema-alteration`
|
|
371
|
+
|
|
372
|
+
**אירוע:** PreToolUse (Bash)
|
|
373
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני הרצת הצהרות `ALTER TABLE`.
|
|
374
|
+
|
|
375
|
+
ללא פרמטרים.
|
|
376
|
+
|
|
377
|
+
---
|
|
378
|
+
|
|
379
|
+
## אזהרות
|
|
380
|
+
|
|
381
|
+
תן סוכנים הקשר נוסף לפני פעולות פוטנציאליות מסוכנות אך לא הרסניות.
|
|
382
|
+
|
|
383
|
+
### `warn-large-file-write`
|
|
384
|
+
|
|
385
|
+
**אירוע:** PreToolUse (Write)
|
|
386
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני כתיבת קבצים גדולים מ-1024 KB.
|
|
387
|
+
|
|
388
|
+
**פרמטרים:**
|
|
389
|
+
|
|
390
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
391
|
+
|-------|------|---------|-------------|
|
|
392
|
+
| `thresholdKb` | `number` | `1024` | סף גודל קובץ בקילובייטים שמעליו מוצאת אזהרה. |
|
|
393
|
+
|
|
394
|
+
**דוגמה:**
|
|
395
|
+
|
|
396
|
+
```json
|
|
397
|
+
{
|
|
398
|
+
"policyParams": {
|
|
399
|
+
"warn-large-file-write": {
|
|
400
|
+
"thresholdKb": 256
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
<Note>
|
|
407
|
+
ה-hook handler אוכף הגבלת stdin של 1 MB על payload. כדי לבדוק מדיניות זו עם תוכן קטן, הגדר `thresholdKb` לערך הרבה מתחת ל-1024.
|
|
408
|
+
</Note>
|
|
409
|
+
|
|
410
|
+
---
|
|
411
|
+
|
|
412
|
+
### `warn-package-publish`
|
|
413
|
+
|
|
414
|
+
**אירוע:** PreToolUse (Bash)
|
|
415
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני הרצת `npm publish`.
|
|
416
|
+
|
|
417
|
+
ללא פרמטרים.
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
|
|
421
|
+
### `warn-background-process`
|
|
422
|
+
|
|
423
|
+
**אירוע:** PreToolUse (Bash)
|
|
424
|
+
**ברירת מחדל:** מורה ל-Claude להיות זהיר בעת הפעלת תהליכים ברקע דרך `nohup`, `&`, `disown` או `screen`.
|
|
425
|
+
|
|
426
|
+
ללא פרמטרים.
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
### `warn-global-package-install`
|
|
431
|
+
|
|
432
|
+
**אירוע:** PreToolUse (Bash)
|
|
433
|
+
**ברירת מחדל:** מורה ל-Claude לאשר לפני הרצת `npm install -g`, `yarn global add` או `pip install` ללא סביבה וירטואלית.
|
|
434
|
+
|
|
435
|
+
ללא פרמטרים.
|
|
436
|
+
|
|
437
|
+
---
|
|
438
|
+
|
|
439
|
+
## התנהגות AI
|
|
440
|
+
|
|
441
|
+
גלה כאשר סוכנים נתקעים או מתנהגים בצורה בלתי צפויה.
|
|
442
|
+
|
|
443
|
+
### `warn-repeated-tool-calls`
|
|
444
|
+
|
|
445
|
+
**אירוע:** PreToolUse (כל הכלים)
|
|
446
|
+
**ברירת מחדל:** מורה ל-Claude לשקול מחדש כשאותו כלי נקרא 3+ פעמים עם פרמטרים זהים - סימן נפוץ לכך שהסוכן תקוע בלולאה.
|
|
447
|
+
|
|
448
|
+
ללא פרמטרים.
|
|
449
|
+
|
|
450
|
+
---
|
|
451
|
+
|
|
452
|
+
## Workflow (בטא)
|
|
453
|
+
|
|
454
|
+
אוכף workflow מסודר בקצה ההפעלה. מדיניויות אלה מופעלות על אירוע **Stop** ודוחות את Claude מהעצירה עד שכל תנאי מתקיים. הם עוקבים אחר שרשרת תלות טבעית: commit → push → PR → CI. אם מדיניות דוחה, מדיניויות מאוחרות יותר בשרשרת דולנות (deny קוטעות).
|
|
455
|
+
|
|
456
|
+
כל מדיניויות workflow הן **fail-open**: אם הכלי הנדרש אינו זמין (למשל `gh` לא מותקן, אין git remote), המדיניות מתירה עם הודעה אינפורמטיבית המסבירה מדוע הבדיקה דולנה.
|
|
457
|
+
|
|
458
|
+
### `require-commit-before-stop`
|
|
459
|
+
|
|
460
|
+
**אירוע:** Stop
|
|
461
|
+
**ברירת מחדל:** דוחה עצירה כשיש שינויים לא commited (קבצים משונים, staged או untracked). מחזיר הודעה אינפורמטיבית כשספריית העבודה נקייה.
|
|
462
|
+
|
|
463
|
+
ללא פרמטרים.
|
|
464
|
+
|
|
465
|
+
---
|
|
466
|
+
|
|
467
|
+
### `require-push-before-stop`
|
|
468
|
+
|
|
469
|
+
**אירוע:** Stop
|
|
470
|
+
**ברירת מחדל:** דוחה עצירה כשיש commits לא pushed או כשהענף הנוכחי אין לו ענף remote tracking. מציע `git push -u` ליצירת ענף tracking אם נחוץ. נכשל open אם לא מוגדר remote.
|
|
471
|
+
|
|
472
|
+
**פרמטרים:**
|
|
473
|
+
|
|
474
|
+
| Param | סוג | ברירת מחדל | תיאור |
|
|
475
|
+
|-------|------|---------|-------------|
|
|
476
|
+
| `remote` | `string` | `"origin"` | שם remote ללדחוף אליו. |
|
|
477
|
+
|
|
478
|
+
**דוגמה:**
|
|
479
|
+
|
|
480
|
+
```json
|
|
481
|
+
{
|
|
482
|
+
"policyParams": {
|
|
483
|
+
"require-push-before-stop": {
|
|
484
|
+
"remote": "upstream"
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
---
|
|
491
|
+
|
|
492
|
+
### `require-pr-before-stop`
|
|
493
|
+
|
|
494
|
+
**אירוע:** Stop
|
|
495
|
+
**ברירת מחדל:** דוחה עצירה כשלא קיים pull request לענף הנוכחי או כשה-PR הקיים סגור/merged. מורה ל-Claude ליצור PR עם `gh pr create`.
|
|
496
|
+
|
|
497
|
+
ללא פרמטרים.
|
|
498
|
+
|
|
499
|
+
<Note>
|
|
500
|
+
מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקן ומאומת.
|
|
501
|
+
הרץ `gh auth login` עם personal access token שיש לו scope `repo` לגישה קריאה ל-
|
|
502
|
+
pull requests. אם `gh` אינו מותקן או לא מאומת, המדיניות נכשלת open ומדווחת את הסיבה ל-Claude.
|
|
503
|
+
</Note>
|
|
504
|
+
|
|
505
|
+
---
|
|
506
|
+
|
|
507
|
+
### `require-ci-green-before-stop`
|
|
508
|
+
|
|
509
|
+
**אירוע:** Stop
|
|
510
|
+
**ברירת מחדל:** דוחה עצירה כשבדיקות CI כושלות או עדיין רצות בענף הנוכחי. בודק גם GitHub Actions workflow runs וגם third-party bot checks (למשל CodeRabbit, SonarCloud, Codecov). מתייחס ל-`skipped` conclusions כהצלחה. מחזיר הודעה אינפורמטיבית כשכל הבדיקות עוברות.
|
|
511
|
+
|
|
512
|
+
ללא פרמטרים.
|
|
513
|
+
|
|
514
|
+
<Note>
|
|
515
|
+
מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקן ומאומת.
|
|
516
|
+
הרץ `gh auth login` עם personal access token שיש לו scope `repo` לגישה קריאה ל-
|
|
517
|
+
Actions workflow runs וה-Checks API. אם `gh` אינו מותקן או לא מאומת, המדיניות נכשלת open ומדווחת את הסיבה ל-Claude.
|
|
518
|
+
</Note>
|
|
519
|
+
|
|
520
|
+
---
|
|
521
|
+
|
|
522
|
+
## מדיניויות בטא
|
|
523
|
+
|
|
524
|
+
כמה מדיניויות מסומנות `beta` ואינן מותקנות כברירת מחדל. מדיניויות בטא עשויות להיות בעלות קצוות גסים או ליצור false positives. הן בוגרות ליציב בהוצאות עתידיות.
|
|
525
|
+
|
|
526
|
+
**מדיניויות בטא נוכחיות:**
|
|
527
|
+
|
|
528
|
+
- `require-commit-before-stop` — commit כל השינויים לפני עצירה
|
|
529
|
+
- `require-push-before-stop` — push את כל ה-commits ל-remote
|
|
530
|
+
- `require-pr-before-stop` — וודא שקיים PR לענף
|
|
531
|
+
- `require-ci-green-before-stop` — כל בדיקות CI חייבות להצליח
|
|
532
|
+
|
|
533
|
+
ביחד, אלה אוכפות workflow של **commit → push → PR → CI**.
|
|
534
|
+
|
|
535
|
+
כדי להתקין את כל מדיניויות הבטא:
|
|
536
|
+
|
|
537
|
+
```bash
|
|
538
|
+
failproofai policies --install --beta
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
או התקן מדיניויות workflow ספציפיות:
|
|
542
|
+
|
|
543
|
+
```bash
|
|
544
|
+
failproofai policies --install require-commit-before-stop require-push-before-stop require-pr-before-stop require-ci-green-before-stop
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
הרץ `failproofai policies` כדי לראות אילו מדיניויות נושאות את דגל הבטא.
|
|
548
|
+
|
|
549
|
+
---
|
|
550
|
+
|
|
551
|
+
## השבתת מדיניויות בודדות
|
|
552
|
+
|
|
553
|
+
הסר מדיניות ספציפית מ-`enabledPolicies` בתצורה שלך, או הגדר אותה off בטאב Policies של ה-dashboard.
|
|
554
|
+
|
|
555
|
+
```json
|
|
556
|
+
{
|
|
557
|
+
"enabledPolicies": [
|
|
558
|
+
"block-rm-rf",
|
|
559
|
+
"sanitize-api-keys"
|
|
560
|
+
]
|
|
561
|
+
}
|
|
562
|
+
```
|
|
563
|
+
|
|
564
|
+
מדיניויות שלא רשומות ב-`enabledPolicies` אינן רצות, גם אם רשומות `policyParams` קיימות בשבילן.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: צפייה בהפעלות
|
|
3
|
+
description: "הפעל את לוח הבקרה לעיון בהפעלות הסוכן וניהול מדיניויות"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
```bash
|
|
7
|
+
failproofai
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
מפעיל את לוח הבקרה באינטרנט בכתובת `http://localhost:8020`.
|
|
11
|
+
|
|
12
|
+
## אפשרויות
|
|
13
|
+
|
|
14
|
+
| דגל | תיאור |
|
|
15
|
+
|------|-------------|
|
|
16
|
+
| `--port <number>` | יציאה להאזנה (ברירת מחדל: `8020`) |
|
|
17
|
+
| `--projects-path <path>` | החלף היכן נמצאים תיקיות פרויקט Claude Code |
|
|
18
|
+
| `--allowed-origins <origins>` | מארחים/כתובות IP מופרדות בפסיקים שמורשות לגשת למשאבי פיתוח |
|
|
19
|
+
|
|
20
|
+
## דוגמאות
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# הפעל ביציאה שונה
|
|
24
|
+
failproofai --port 9000
|
|
25
|
+
|
|
26
|
+
# השתמש בנתיב פרויקטים מותאם אישית
|
|
27
|
+
failproofai --projects-path ~/my-claude-projects
|
|
28
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: משתנים סביבתיים
|
|
3
|
+
description: "קביעת התנהגות failproofai באמצעות משתנים סביבתיים"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Dashboard
|
|
7
|
+
|
|
8
|
+
| משתנה | תיאור |
|
|
9
|
+
|----------|-------------|
|
|
10
|
+
| `PORT` | פורט ה-Dashboard (ברירת מחדל: `8020`) |
|
|
11
|
+
| `CLAUDE_PROJECTS_PATH` | הגדרת מיקום חלופי לתיקיות פרויקטי Claude Code |
|
|
12
|
+
| `FAILPROOFAI_DISABLE_PAGES=policies,projects` | עמודי Dashboard להסתרה, מופרדים בפסיקים |
|
|
13
|
+
| `FAILPROOFAI_ALLOWED_DEV_ORIGINS` | מערכות קצה/כתובות IP המורשות לגשת למשאבי פיתוח. זהה ל-`--allowed-origins`. |
|
|
14
|
+
|
|
15
|
+
## Logging
|
|
16
|
+
|
|
17
|
+
| משתנה | תיאור |
|
|
18
|
+
|----------|-------------|
|
|
19
|
+
| `FAILPROOFAI_LOG_LEVEL=info\|warn\|error` | רמת ה-log של השרת (ברירת מחדל: `warn`) |
|
|
20
|
+
| `FAILPROOFAI_HOOK_LOG_FILE` | נתיב קובץ log מותאם אישית, או `true` לברירת המחדל (`~/.failproofai/logs/hooks.log`) |
|
|
21
|
+
|
|
22
|
+
## Telemetry
|
|
23
|
+
|
|
24
|
+
| משתנה | תיאור |
|
|
25
|
+
|----------|-------------|
|
|
26
|
+
| `FAILPROOFAI_TELEMETRY_DISABLED=1` | השבתת ה-telemetry על שימוש אנונימי |
|
|
27
|
+
|
|
28
|
+
## LLM (להערכת מדיניות)
|
|
29
|
+
|
|
30
|
+
| משתנה | תיאור |
|
|
31
|
+
|----------|-------------|
|
|
32
|
+
| `FAILPROOFAI_LLM_BASE_URL` | נקודת קצה של API ל-LLM (ברירת מחדל: `https://api.openai.com/v1`) |
|
|
33
|
+
| `FAILPROOFAI_LLM_API_KEY` | מפתח API למדיניות המופעלת על ידי LLM |
|
|
34
|
+
| `FAILPROOFAI_LLM_MODEL` | שם המודל (ברירת מחדל: `gpt-4o-mini`) |
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Handler ווו (פנימי)
|
|
3
|
+
description: "תהליך משנה שClaude Code מפעיל בכל אירוע כלי"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
```bash
|
|
7
|
+
failproofai --hook <EventType>
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
זה הפקודה שנרשמת ב־`settings.json` של Claude Code על ידי `failproofai policies --install`. בדרך כלל אתה לא קורא לזה ישירות.
|
|
11
|
+
|
|
12
|
+
קורא payload JSON מ־stdin, מעריך את כל המדיניויות המופעלות, ויוצא עם קוד המציין את ההחלטה:
|
|
13
|
+
|
|
14
|
+
| קוד יציאה | החלטה | השפעה |
|
|
15
|
+
|-----------|--------|--------|
|
|
16
|
+
| `0` | `allow` | אפשר את הפעולה |
|
|
17
|
+
| `1` | `deny` | חסום את הפעולה - Claude רואה את סיבת הדחייה |
|
|
18
|
+
| `2` | `instruct` | הוסף הדרכה להקשר של Claude |
|
|
19
|
+
|
|
20
|
+
### סוגי אירועים נתמכים
|
|
21
|
+
|
|
22
|
+
| קטגוריה | אירועים |
|
|
23
|
+
|----------|--------|
|
|
24
|
+
| **ביצוע כלי** | `PreToolUse`, `PostToolUse`, `PostToolUseFailure`, `PermissionRequest`, `PermissionDenied` |
|
|
25
|
+
| **מחזור חיים של הסשן** | `SessionStart`, `SessionEnd`, `Stop`, `StopFailure` |
|
|
26
|
+
| **אינטראקציה של המשתמש** | `UserPromptSubmit`, `Notification`, `Elicitation`, `ElicitationResult` |
|
|
27
|
+
| **תת־אגנטים ומשימות** | `SubagentStart`, `SubagentStop`, `TaskCreated`, `TaskCompleted`, `TeammateIdle` |
|
|
28
|
+
| **תצורה** | `InstructionsLoaded`, `ConfigChange`, `CwdChanged` |
|
|
29
|
+
| **מערכת קבצים** | `FileChanged`, `WorktreeCreate`, `WorktreeRemove` |
|
|
30
|
+
| **הקשר** | `PreCompact`, `PostCompact` |
|