diff --git a/docs/ar/policies/builtin-catalog.mdx b/docs/ar/policies/builtin-catalog.mdx
index d8405531..afda0631 100644
--- a/docs/ar/policies/builtin-catalog.mdx
+++ b/docs/ar/policies/builtin-catalog.mdx
@@ -1,112 +1,112 @@
---
-title: "Builtin policy catalog"
-description: "Review every builtin Failproof AI policy, its trigger, recommended state, and configurable parameters."
+title: "كتالوج السياسات المدمجة"
+description: "اطّلع على كل سياسة مدمجة من سياسات Failproof AI، وحافزها، والحالة الموصى بها، والمعاملات القابلة للتكوين."
icon: "list-checks"
---
-الحزمة المثبتة هي مصدر الحقيقة لتوفر السياسات. قم بتشغيل `failproofai policies` بعد كل ترقية لأن إدخالات الكتالوج والسلوك قد يتغيران مع إصدار الحزمة.
+الحزمة المثبتة هي مصدر الحقيقة لتوفر السياسات. قم بتشغيل `failproofai policies` بعد كل تحديث لأن إدخالات الكتالوج والسلوك قد يتغيران مع إصدار الحزمة.
-## الأساس الموصى به
+## خط الأساس الموصى به
-يفعّل التحديد الموصى به من الإعداد الموجه حاليًا معقمات الأسرار وحماية البيئة والحماية الذاتية وحماية الأوامر الكارثية وسلامة الفروع المحمية:
+يعمل الإعداد الموجه حالياً على تفعيل معقمات الأسرار، وحماية البيئة، الحماية الذاتية، حراس الأوامر الكارثية، وسلامة الفروع المحمية:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-الموصى به أضيق بقصد من **Everything**. يمكن لسياسات البنية التحتية وسير العمل أن تقاطع العمل الصحيح وينبغي تفعيلها للمستودعات والآلات التي تحتاجها.
+`block-failproofai-commands` **مفعل دائماً**. تم إدراجه أعلاه لتوضيح المعلومات، لكنه يتسجل عند كل تقييم سواء ظهر في مجموعة السياسات المفعلة لديك أم لا، ولا يمكن تعطيله أو إيقافه مؤقتاً — فالحارس الذي يمكن للعامل إيقاف الإنفاذ عنه ليس حارساً.
+
+الموصى به مقصود أن يكون أضيق من **الكل**. سياسات البنية التحتية وسير العمل يمكن أن تقاطع العمل الصحيح وينبغي تفعيلها للمستودعات والأجهزة التي تحتاجها.
## الأسرار والبيئة
-| السياسة | المُحَفِّز | النتيجة |
+| السياسة | الحافز | النتيجة |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | تحرير JWTs من مخرجات الأداة قبل أن يراها النموذج. |
-| `sanitize-api-keys` | `PostToolUse` | تحرير مفاتيح OpenAI و Anthropic و GitHub و AWS و Stripe و Google الشائعة. |
-| `sanitize-connection-strings` | `PostToolUse` | تحرير سلاسل اتصال قواعد البيانات التي تحتوي على بيانات الاعتماد. |
-| `sanitize-private-key-content` | `PostToolUse` | تحرير أجسام مفاتيح PEM الخاصة. |
-| `sanitize-bearer-tokens` | `PostToolUse` | تحرير رموز التفويض من نوع bearer. |
-| `protect-env-vars` | `PreToolUse` على أدوات shell | حظر الأوامر التي تفرغ متغيرات البيئة. |
-| `block-env-files` | `PreToolUse` | حظر قراءة وكتابة ملفات `.env`. |
-| `block-read-outside-cwd` | `PreToolUse` على قراءة أو glob أو grep أو أدوات shell | إبقاء القراءات داخل دليل عمل الجلسة. |
-| `block-secrets-write` | `PreToolUse` على أدوات الكتابة | حظر الكتابة إلى أسماء ملفات مفاتيح الأسرار وبيانات الاعتماد الشائعة. |
-
-## الأوامر الخطرة والبنية التحتية
-
-| السياسة | المُحَفِّز | النتيجة |
+| `sanitize-jwt` | `PostToolUse` | إخفاء JWTs من مخرجات الأدوات قبل أن يراها النموذج. |
+| `sanitize-api-keys` | `PostToolUse` | إخفاء مفاتيح OpenAI و Anthropic و GitHub و AWS و Stripe و Google الشائعة. |
+| `sanitize-connection-strings` | `PostToolUse` | إخفاء سلاسل اتصال قواعد البيانات التي تحتوي على بيانات اعتماد. |
+| `sanitize-private-key-content` | `PostToolUse` | إخفاء أجسام مفاتيح PEM الخاصة. |
+| `sanitize-bearer-tokens` | `PostToolUse` | إخفاء رموز الترخيص. |
+| `protect-env-vars` | `PreToolUse` على أدوات الغلاف | منع الأوامر التي تفرغ متغيرات البيئة. |
+| `block-env-files` | `PreToolUse` | منع قراءة وكتابة ملفات `.env`. |
+| `block-read-outside-cwd` | `PreToolUse` على أدوات القراءة أو glob أو grep أو shell | إبقاء القراءة داخل دليل العمل للجلسة. |
+| `block-secrets-write` | `PreToolUse` على أدوات الكتابة | منع الكتابة إلى أسماء ملفات المفاتيح السرية والبيانات الاعتمادية الشائعة. |
+
+## الأوامر الخطيرة والبنية التحتية
+
+| السياسة | الحافز | النتيجة |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | منع الوكيل من إيقاف إنفاذه الخاص. |
-| `block-sudo` | `PreToolUse`, `PermissionRequest` | حظر `sudo` إلا إذا طابق نمط السماح. |
-| `block-curl-pipe-sh` | `PreToolUse` | حظر البرامج النصية المُحملة الموجهة مباشرة إلى shell. |
-| `block-rm-rf` | `PreToolUse` | حظر أنماط الحذف العودية الكارثية. |
-| `block-failproofai-commands` | `PreToolUse` | منع الوكلاء من تغيير أو إلغاء تثبيت Failproof AI. |
-| `block-kubectl` | `PreToolUse` | التحكم في أوامر Kubernetes. |
-| `block-terraform` | `PreToolUse` | التحكم في أوامر Terraform و OpenTofu. |
-| `block-aws-cli` | `PreToolUse` | التحكم في أوامر AWS CLI. |
-| `block-gcloud` | `PreToolUse` | التحكم في أوامر Google Cloud CLI. |
-| `block-az-cli` | `PreToolUse` | التحكم في أوامر Azure CLI. |
-| `block-helm` | `PreToolUse` | التحكم في أوامر Helm. |
-| `block-gh-pipeline` | `PreToolUse` | التحكم في عمليات GitHub CLI الطفيفة في سير العمل والتشغيل والدمج والإصدار والذاكرة والسر. |
+| `block-sudo` | `PreToolUse`, `PermissionRequest` | منع `sudo` إلا إذا تطابق نمط السماح. |
+| `block-curl-pipe-sh` | `PreToolUse` | منع النصوص البرمجية المحملة الموجهة مباشرة إلى الغلاف. |
+| `block-rm-rf` | `PreToolUse` | منع أنماط الحذف العودية الكارثية. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **مفعل دائماً، لا يمكن تعطيله.** منع كل استدعاء CLI من Failproof AI، والإيقاف الذاتي، وإلغاء تثبيت مدير الحزم. |
+| `block-kubectl` | `PreToolUse` | حماية أوامر Kubernetes. |
+| `block-terraform` | `PreToolUse` | حماية أوامر Terraform و OpenTofu. |
+| `block-aws-cli` | `PreToolUse` | حماية أوامر AWS CLI. |
+| `block-gcloud` | `PreToolUse` | حماية أوامر Google Cloud CLI. |
+| `block-az-cli` | `PreToolUse` | حماية أوامر Azure CLI. |
+| `block-helm` | `PreToolUse` | حماية أوامر Helm. |
+| `block-gh-pipeline` | `PreToolUse` | حماية عمليات GitHub CLI الطافرة لسير العمل والتشغيل والدمج والإصدار والذاكرة والعمليات السرية. |
## سلامة Git وقاعدة البيانات
-| السياسة | المُحَفِّز | النتيجة |
+| السياسة | الحافز | النتيجة |
| --- | --- | --- |
-| `block-push-master` | `PreToolUse` | حظر الدفع المباشر إلى الفروع المحمية المُعَدَّة. |
-| `block-force-push` | `PreToolUse` | حظر الدفع القسري؛ يبقى `--force-with-lease` مسموحًا بالتنفيذ الحالي. |
-| `block-work-on-main` | `PreToolUse` | حظر الالتزامات والدمجات على الفروع المحمية. |
-| `warn-git-amend` | `PreToolUse` | تحذير قبل إعادة كتابة التزام مع `--amend`. |
-| `warn-git-stash-drop` | `PreToolUse` | تحذير قبل حذف أو مسح المخزن المؤقت بشكل دائم. |
+| `block-push-master` | `PreToolUse` | منع الدفع المباشر إلى الفروع المحمية المُعدَّلة. |
+| `block-force-push` | `PreToolUse` | منع الدفع القسري؛ يبقى `--force-with-lease` مسموحاً بالتطبيق الحالي. |
+| `block-work-on-main` | `PreToolUse` | منع الالتزامات والدمج على الفروع المحمية. |
+| `warn-git-amend` | `PreToolUse` | تحذير قبل إعادة كتابة التزام باستخدام `--amend`. |
+| `warn-git-stash-drop` | `PreToolUse` | تحذير قبل حذف أو مسح المخزن المؤقت نهائياً. |
| `warn-all-files-staged` | `PreToolUse` | تحذير على `git add -A` أو `git add .` أو `git add --all` الواسع. |
-| `warn-destructive-sql` | `PreToolUse` | تحذير على `DROP` و `TRUNCATE` و `DELETE` بدون `WHERE` عبر عملاء قاعدة البيانات المعروفة. |
-| `warn-schema-alteration` | `PreToolUse` | تحذير على عمليات `ALTER TABLE` للعمود وإعادة التسمية المعروفة. |
+| `warn-destructive-sql` | `PreToolUse` | تحذير على `DROP` و `TRUNCATE` و `DELETE` بدون `WHERE` من خلال عملاء قواعد البيانات المعروفة. |
+| `warn-schema-alteration` | `PreToolUse` | تحذير على عمليات `ALTER TABLE` المعروفة لأعمدة وإعادة تسمية. |
-## الحزم وسلوك النظام وحلقات الوكيل
+## الحزم وسلوك النظام وحلقات العامل
-| السياسة | المُحَفِّز | النتيجة |
+| السياسة | الحافز | النتيجة |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | تحذير قبل النشر إلى سجلات الحزم. |
-| `warn-global-package-install` | `PreToolUse` | تحذير قبل التثبيت العام للحزم. |
-| `prefer-package-manager` | `PreToolUse` | إرشاد الوكيل لاستخدام مدير حزم مسموح. |
-| `warn-large-file-write` | `PreToolUse` على أدوات الكتابة | تحذير فوق حد حجم الملف المُعَدَّ. |
-| `warn-background-process` | `PreToolUse` | تحذير على أنماط العمليات الخلفية المنفصلة أو طويلة الأمد. |
-| `warn-repeated-tool-calls` | `PreToolUse` | تحذير بعد ثلاث مكالمات أداة متطابقة أو أكثر. |
+| `warn-package-publish` | `PreToolUse` | تحذير قبل النشر إلى السجلات. |
+| `warn-global-package-install` | `PreToolUse` | تحذير قبل التثبيت العام للحزمة. |
+| `prefer-package-manager` | `PreToolUse` | إرشاد العامل لاستخدام مدير حزم مسموح. |
+| `warn-large-file-write` | `PreToolUse` على أدوات الكتابة | تحذير فوق حد حجم الملف المُعدَّل. |
+| `warn-background-process` | `PreToolUse` | تحذير على أنماط العمليات الخلفية المنفصلة أو طويلة العمر. |
+| `warn-repeated-tool-calls` | `PreToolUse` | تحذير بعد ثلاث مكالمات أدوات متطابقة أو أكثر. |
## سير عمل نهاية المهمة
-تتطلب هذه السياسات جهازًا يصدر حدث `Stop` متوافقًا.
+تتطلب هذه السياسات حزام يصدر حدث `Stop` متوافق.
| السياسة | النتيجة |
| --- | --- |
-| `require-commit-before-stop` | رفض الإكمال بينما يبقى العمل المتتبع غير مرتكب. |
-| `require-push-before-stop` | رفض الإكمال بينما تبقى الالتزامات محلية فقط. |
-| `require-pr-before-stop` | مطلوب طلب دمج للفرع الحالي. |
-| `require-no-conflicts-before-stop` | مطلوب دمج نظيف ضد فرع القاعدة المُعَدَّ. |
-| `require-ci-green-before-stop` | مطلوب إكمال فحوصات CI للرأس الحالي بنجاح. |
+| `require-commit-before-stop` | رفض الإنجاز بينما يبقى العمل المتتبع غير ملتزم. |
+| `require-push-before-stop` | رفض الإنجاز بينما تبقى الالتزامات محلية فقط. |
+| `require-pr-before-stop` | طلب طلب دمج للفرع الحالي. |
+| `require-no-conflicts-before-stop` | طلب دمج نظيف مقابل فرع القاعدة المُعدَّل. |
+| `require-ci-green-before-stop` | طلب اكتمال فحوصات CI في HEAD الحالي بنجاح. |
## مرجع المعاملات
-قم بتكوين المعاملات ضمن كائن `policyParams` للنطاق المحدد. يتم التحقق من الأنواع بواسطة كل سياسة.
+قم بتكوين المعاملات تحت كائن `policyParams` للنطاق المحدد. يتم التحقق من الأنواع من قبل كل سياسة.
| السياسة | المعامل | النوع والافتراضي |
| --- | --- | --- |
-| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`; تحتوي الإدخالات على `regex` و `label` |
+| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`؛ الإدخالات تحتوي على `regex` و `label` |
| `block-read-outside-cwd` | `allowPaths` | `string[]`, `[]` |
| `block-sudo` | `allowPatterns` | `string[]`, `[]` |
| `block-rm-rf` | `allowPaths` | `string[]`, `[]` |
-| Infrastructure blockers | `allowPatterns` | `string[]`, `[]` |
+| حاجبات البنية التحتية | `allowPatterns` | `string[]`, `[]` |
| `block-secrets-write` | `additionalPatterns` | `string[]`, `[]` |
| `block-push-master` | `protectedBranches` | `string[]`, `["main", "master"]` |
| `block-work-on-main` | `protectedBranches` | `string[]`, `["main", "master"]` |
| `prefer-package-manager` | `allowed`, `blocked` | `string[]`, `[]` |
| `warn-large-file-write` | `thresholdKb` | `number`, `1024` |
-| `require-push-before-stop` | `remote`, `baseBranch` | `string`, `"origin"`; `string`, `"main"` |
+| `require-push-before-stop` | `remote`, `baseBranch` | `string`, `"origin"`؛ `string`, `"main"` |
| `require-pr-before-stop` | `baseBranch` | `string`, `"main"` |
| `require-no-conflicts-before-stop` | `baseBranch` | `string`, `"main"` |
@@ -125,5 +125,5 @@ block-force-push
```
- نمط السماح يوسع ما قد يفعله الوكيل. اختبر الترميز الدقيق وأشكال الأوامر على جهاز الهدف قبل نشره عبر الأسطول.
+ نمط السماح يوسّع ما قد يفعله العامل. اختبر الرمزنة الدقيقة وأنماط الأوامر على الحزام المستهدف قبل نشره عبر الأسطول.
\ No newline at end of file
diff --git a/docs/ar/policies/failure-behavior.mdx b/docs/ar/policies/failure-behavior.mdx
index 4386f396..a75a67cb 100644
--- a/docs/ar/policies/failure-behavior.mdx
+++ b/docs/ar/policies/failure-behavior.mdx
@@ -1,19 +1,20 @@
---
+---
title: "سلوك الفشل"
-description: "افهم ما يحدث عندما يكون تقييم السياسة أو مستودع الملفات المحلي غير متاح."
+description: "افهم ما يحدث عند عدم توفر تقييم السياسة أو daemon المحلي."
icon: "shield-alert"
---
-تم تصميم Failproof AI بحيث يكون فشل الإنفاذ مرئياً بدلاً من السماح بصمت بعمل محفوف بالمخاطر.
+تم تصميم Failproof AI بحيث يكون فشل الإنفاذ مرئياً بدلاً من السماح الصامت بعمل محفوف بالمخاطر.
-## تشخيص كتلة الفشل المغلقة
+## تشخيص كتلة مغلقة الفشل
- 1. انتقل إلى **Admin → enforcement** وافتح الجهاز.
- 2. تحقق من آخر تسجيل دخول له والنشر المعين والنشر المبلغ عنه.
+ 1. انتقل إلى **Admin → enforcement** وافتح الآلة.
+ 2. تحقق من آخر تسجيل دخول، والنشر المعين، والنشر المبلغ عنه.
3. انتقل إلى **Observe → policy** وافتح جلسة القرار المرفوض.
- 4. تأكد مما إذا كان السبب يبلغ عن إمكانية الوصول إلى مستودع الملفات أو عدم تطابق الإصدار أو السياسة نفسها.
+ 4. تأكد مما إذا كان السبب يشير إلى إمكانية الوصول إلى daemon أم عدم التطابق في الإصدار أم السياسة نفسها.
@@ -23,21 +24,45 @@ icon: "shield-alert"
failproofai config
```
- إعادة تشغيل `failproofai config` تحدّث وتعيد تشغيل مستودع الملفات بعد ترقية الحزمة.
+ إعادة تشغيل `failproofai config` يحدّث ويعيد تشغيل daemon بعد ترقية الحزمة.
-على جهاز تم تكوينه للاستخدام مع `failproofaid`، مستودع الملفات هو المقيّم الوحيد. إذا كان غير قابل للوصول أو كان إصدار البروتوكول الخاص به غير متطابق مع CLI، يفشل تقييم الخطاف بشكل مغلق. يتم رفض الإجراء مع سبب يوجه المشغل للتحقق من مستودع الملفات أو تحديثه.
+على آلة تم تكوينها لاستخدام `failproofaid`، يكون daemon هو المقيّم الوحيد. إذا كان غير قابل للوصول أو كان إصدار البروتوكول الخاص به لا يطابق CLI، يفشل تقييم hook بشكل مغلق. يتم رفض الإجراء مع سبب يوجه المشغل إلى التحقق من daemon أو تحديثه.
-قبل تكوين مستودع الملفات، تقيّم الخطاطيف السياسات في العملية. بمجرد تسجيل تكوين مستودع الملفات، لا يعود Failproof AI إلى مقيّم ثانٍ بصمت عند فشل مستودع الملفات.
+قبل تكوين daemon، تقيّم hooks السياسات أثناء المعالجة. بمجرد تسجيل تكوين daemon، لا يعود Failproof AI إلى تقييم ثاني بصمت عند فشل daemon.
-## الرد على قرار الفشل المغلق
+## الاستجابة لقرار مغلق الفشل
1. قم بتشغيل `failproofai config --status`.
2. إذا اختلفت الإصدارات، أعد تشغيل `failproofai config` بعد تحديث الحزمة.
-3. إذا كان مستودع الملفات غير قابل للوصول، افحص حالة خدمته والسجلات المحلية.
-4. استأنف عمل الوكيل فقط بعد التحقق من صحة مسار تقييم السياسة المعروف.
+3. إذا كان daemon غير قابل للوصول، افحص حالة الخدمة وسجلات الملف الشخصي المحلي.
+4. استأنف عمل agent فقط بعد التأكد من أن مسار تقييم السياسة المعروف سليم.
- لا تعيد محاولة الإجراء المحظور بشكل متكرر. رد الفشل المغلق يعني أن النظام لم يتمكن من التأكد من أن الإجراء كان آمناً.
-
\ No newline at end of file
+ لا تحاول تكرار الإجراء المحظور بشكل متكرر. استجابة مغلقة الفشل تعني أن النظام لم يتمكن من إثبات أن الإجراء كان آمناً.
+
+
+## لن يتم تحميل الحزمة
+
+آلة تم إخبارها بفرض حزمة، ولا يمكنها تشغيلها، ترفض بدلاً من المتابعة بصمت. المحفز هو **توقع مسجل**، وليس توقع فارغ: آلة بدون حزم مثبتة تكون صامتة، بينما حزمة تم إعلانها ولن تُحل — أو تسجل أقل من ما يعلنه البيان الخاص بها — ترفض.
+
+الرفض **ضيق**، على عكس daemon غير قابل للوصول. daemon الذي لا يمكن الوصول إليه يعني أنه لم يحدث أي تقييم على الإطلاق، لذلك لا يمكن معرفة شيء آمن. حزمة لن تتحمل لديها مجموعة قابلة للعد من الحراس المفقودين، لأن كل سياسة معلنة تحمل `match` خاصة بها — لذلك ترفض فقط الأحداث والأدوات التي غطتها تلك السياسات، وكل شيء آخر يمضي قدماً.
+
+لا تنطلق بسبب:
+
+- حزمة `observe`، التي تقيّم وتتجاهل بالبناء
+- سياسات لم تأخذها، أو أوقفتها بشكل صريح
+- حزمة لم يتلقاها المحمّل، حيث لا يمكن التمييز بين «لا تسجيلات» و تخطي متعمد
+- توقف جلسة نشطة
+- مهلة زمنية للتحميل، وهي عابرة — لحظة قرص واحدة بطيئة يجب ألا ترفض حتى يتدخل إنسان
+
+`UserPromptSubmit` **توجه** بدلاً من الرفض، مهما أعلنت السياسة المفقودة. رفض شامل سيأخذ معه ويغلقك خارج agent الذي يمكنه إصلاح المشكلة.
+
+### ماذا تفعل
+
+```bash
+failproofai pack list
+```
+
+يسمي أي حزمة مثبتة لن يتم تحميلها، ويقول السبب، ويخرج برمز غير صفر. ثم إما أعد تثبيتها (`failproofai pack add `) أو أزلها (`failproofai pack remove `) — إزالتها تسحب التوقع، والرفض يتوقف معها.
\ No newline at end of file
diff --git a/docs/ar/policies/packs.mdx b/docs/ar/policies/packs.mdx
new file mode 100644
index 00000000..ed48e435
--- /dev/null
+++ b/docs/ar/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "حزم السياسات"
+description: "قم بتثبيت مجموعة من السياسات المنشورة كإصدار GitHub، وأدر ما تفرضه."
+icon: "package"
+---
+
+الحزمة عبارة عن مجموعة من السياسات المنشورة كإصدار GitHub. أمر واحد يثبتها، ويتم التحقق من قيم تجزئة الإصدار قبل تشغيل أي شيء، ويتم تسجيل البصمة بحيث لا يمكن للحزمة أن تتغير على جهازك بعد ذلك.
+
+## قم بتثبيت سياسات Failproof AI
+
+```bash
+failproofai pack add core
+```
+
+هذا يثبت المجموعة التي ننشرها، من النسخة داخل الحزمة — لذلك لا تحتاج إلى شبكة ولا يمكن أن تفشل خلف وكيل. خذ جزءًا منها:
+
+```bash
+failproofai pack add core --policy block-rm-rf # واحدة، أو عدة مفصولة بفواصل
+failproofai pack add core --category dangerous-commands # فئة كاملة
+failproofai pack add core --all # كل شيء فيها
+```
+
+يسمي `failproofai pack list` كل فئة تقدمها الحزمة.
+
+## اطلع على محتويات الحزمة، قبل تثبيتها
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+يسرد كل سياسة تحملها الحزمة، مجمعة حسب الفئة، مع تحديد أيها يفعّلها مؤلفها افتراضيًا وأيها اختيارية. يقرأ **البيان فقط** — لا يتم أبدًا تنزيل القطعة الرئيسية ولا استيرادها، لذا فإن النظر إلى حزمة غريب لا يمكن أن يشغل كود غريب. البيان لا يزال يتحقق منه مقابل `SHA256SUMS` الخاص بالإصدار، لذا ما تقرأه هو ما سيتم تثبيته.
+
+يسرد `failproofai pack list` بدون مصدر الحزم المثبتة بالفعل هنا.
+
+## قم بتثبيت حزمة شخص آخر
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+أي من هذه تعمل — الصق أيًا منها لديك:
+
+| المصدر | النتيجة |
+| --- | --- |
+| `acme/support-agent` | أحدث إصدار، **محدد** بالعلامة الدقيقة التي تم حلها |
+| `acme/support-agent@v2.1.0` | هذا الإصدار |
+| `github:acme/support-agent@v2.1.0` | نفس الشيء، مكتوب بوضوح |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | نفس الشيء، تم نسخه من متصفح |
+
+عدم تسمية علامة يثبت أحدث إصدار **ويحددها**، ثم يخبرك بالعلامة التي اختارها. ما يتم تسجيله دائمًا يسمي بالضبط إصدارًا واحدًا، لذا لا يمكن لإعادة التثبيت أن تنجرف.
+
+## خذ جزءًا من الحزمة
+
+بشكل افتراضي تحصل على **الافتراضيات الخاصة** بالحزمة — السياسات التي وضع مؤلفها علامة عليها آمنة للتشغيل دون مراقبة — وليس كل ما تحتويه.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+يتم دمج `--category` و `--policy` كاتحاد (`--only` مقبول كمرادف لـ `--policy`). إضافة مجددًا بإصدار أحدث تحتفظ بما اخترته بدلاً من إعادة تشغيل الباقي.
+
+## أدر ما هو قيد التشغيل
+
+```bash
+failproofai policies # كل مصدر في قائمة واحدة، الحزم مضمنة
+failproofai pack list # الحزم فقط، مجمعة حسب الفئة
+failproofai policies --uninstall block-refunds # أوقف سياسة حزمة واحدة
+failproofai policies --install block-refunds # وإعادة تشغيلها
+failproofai pack remove acme/support-agent
+```
+
+الاسم العادي يعني **المدمج** عندما يكون موجودًا بهذا الاسم. اذكر نسخة الحزمة بوضوح عندما تحتاج إلى:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+إذا كانت الحزمة تشحن سياسة اسمها هو أيضًا **مدمج مفعّل**، يتم تشغيل المدمج وتخطي نسخة الحزمة — سيتم تقييم نفس الحماية مرتين وإلا. أوقف المدمج لاستخدام نسخة الحزمة بدلاً من ذلك.
+
+
+## من أين تأتي سياسات Failproof AI
+
+يقرأ `core` النسخة المدرجة في حزمة npm. نفس المجموعة منشورة كإصدار GitHub، وهو ما تثبته إذا كنت تريد إصدارًا محددًا:
+
+```bash
+failproofai pack add core # من هذه الحزمة، بدون شبكة
+failproofai pack add FailproofAI/policies # نفس المجموعة، من إصدار GitHub الخاص بها
+```
+
+## ما الذي توفره السلامة الكاملة وما الذي لا توفره
+
+`SHA256SUMS` مرسلة في نفس الإصدار مثل القطعة، لذا فهي **ليست** توقيعًا ولا تثبت شيئًا عن هوية ناشرها. ما تثبته هو أن البايتات هي الموجودة في ذلك الإصدار — وبسبب تسجيل البصمة عند إضافة الحزمة وإعادة التحقق منها قبل كل استيراد، لا يمكن للحزمة أن تتغير على جهازك بعد ذلك. يتوقف المستودع الذي يُعيد وسم أو يستبدل أحد الأصول عن التحميل بدلاً من تشغيل شيء آخر بهدوء.
+
+في وقت التثبيت، يتم أيضًا **استيراد الحزمة مرة واحدة** والتحقق منها مقابل بيانها الخاص. يتم رفض الحزمة التي لا يمكن تحليل قطعتها أو التي تسجل شيئًا مختلفًا عما تعلنه قبل تفعيل أي شيء — بدلاً من التثبيت بنجاح والفشل في استدعاء الأداة التالية.
+
+## عندما لن تحميل الحزمة
+
+الحزمة التي تم إخبار هذا الجهاز بفرضها ولا يمكنه تشغيلها **ترفض** الأحداث التي غطتها سياساته المفقودة، بدلاً من السماح بها صمتًا. انظر [سلوك الفشل](/ar/policies/failure-behavior). `failproofai pack list` يسمي أي حزمة في تلك الحالة ويخرج بقيمة غير صفرية.
+
+## بلا اتصال والمرايا
+
+| المتغير | التأثير |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | يرفض الجلب؛ الحزم المثبتة بالفعل تستمر في الفرض |
+| `FAILPROOFAI_PACK_BASE_URL` | يوجه جلب الحزم إلى مرآة بدلاً من `github.com` |
+
+نشر حزمتك الخاصة: انظر [نشر حزمة](/ar/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/ar/policies/publish-a-pack.mdx b/docs/ar/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..df91a432
--- /dev/null
+++ b/docs/ar/policies/publish-a-pack.mdx
@@ -0,0 +1,92 @@
+---
+---
+title: "نشر حزمة"
+description: "شحن سياساتك الخاصة كإصدار GitHub يمكن لأي شخص تثبيته."
+icon: "upload"
+---
+
+الحزمة عبارة عن ثلاثة ملفات مرفقة بإصدار GitHub. يكتب `failproofai pack build` جميع الثلاثة من ملف سياسة لديك بالفعل.
+
+## 1. اكتب السياسات
+
+ملف واحد، يستخدم نفس الواجهة البرمجية لأي سياسة مخصصة. يهمان حقلان إضافيان للحزمة:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+يتم تعيين `defaultEnabled` افتراضيًا إلى **false** عند حذفه. `failproofai pack add` البسيط يقوم بتشغيل فقط ما حددته — تثبيت كل سياسة من سياسات الغريب دون مراقبة ليست قرارًا يجب على المثبت أن يتخذه للمستخدم.
+
+
+يجب أن يكون الإدخال **ملف واحد مكتفٍ بذاته**. فقط الإدخال هو ما يتم تثبيت الخلاصة عليه، لذا فإن حزمة تستورد ملفات محلية لا يمكنها بصراحة المطالبة بأن الخلاصة تغطي ما يعمل. قم بالدمج أولاً (`esbuild` أو `bun build` أو `rollup`) وأنشئ الحزمة من الحزمة المدمجة — يرفض `pack build` الاستيراد المحلي بدلاً من شحن وعد لا يمكنه الوفاء به.
+
+
+## 2. بناء أصول الإصدار
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+يكتب ثلاثة ملفات ويتحقق من صحة كل سياسة باستخدام **قواعد المُحمِّل الخاصة** أولاً — لذا فإن الحزمة التي لن تتمكن من التثبيت تفشل هنا، حيث يمكنك إصلاحها:
+
+| الملف | ما هو |
+| --- | --- |
+| `failproofai-pack.json` | البيان: المعرّف والإصدار والتأثير وإدخال واحد لكل سياسة |
+| `failproofai-pack.mjs` | إدخالك، كما هو حرفيًا |
+| `SHA256SUMS` | `` للملفين الآخرين |
+
+تم الرفض عند وقت البناء: معرف ليس `publisher/name`، اسم سياسة يحتوي على `/`، سياسة تعلن `alwaysOn`، وصف مفقود أو `category` أو `match`، إدخال لا يسجل أي شيء، وإدخال يستورد ملفات محلية.
+
+## 3. أرفقها بإصدار
+
+ضع علامة على الإصدار بنفس الإصدار الذي أنشأته، وأرفق جميع الملفات الثلاثة كأصول الإصدار:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+يمكن لأي شخص الآن تثبيته:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+أسماء الأصول ثابتة — وهي ما ينشئها CLI الخاص بالمستهلك من عناوين URL الخاصة به، بدون استدعاء API وبدون اكتشاف.
+
+## شحن إصدار جديد
+
+قم بالبناء باستخدام `--version` الجديد، وضع علامة على إصدار جديد، وأرفق الأصول الثلاثة مرة أخرى. يقوم المستهلكون بتشغيل نفس `pack add` والاحتفاظ بأي مجموعة اختاروها؛ تبقى السياسة التي أطفأوها مطفأة عبر الترقية.
+
+تغيير **اسم** السياسة هو تغيير كسر: جهاز قام بإيقاف تشغيله يقوم بإيقاف تشغيل اسم لم يعد موجودًا، والاسم الجديد يصل إلى أيًا كان `defaultEnabled` يقول.
+
+## ما يثق به المستخدمون
+
+`SHA256SUMS` يعيش في نفس الإصدار مثل الأصل، لذا فإنه يثبت أن البايتات هي تلك التي نشرتها — وليس من أنت. أي شخص يمكنه الكتابة إلى المستودع يمكنه كتابة كلا الملفين. حماية المستخدمين هي أن الخلاصة يتم تثبيتها عند التثبيت، بحيث لا يمكن لما شحنته أن يتغير تحتهم بعد ذلك.
+
+قم بالنشر من مستودع يمكنك التحكم في الوصول الكتابي إليه، وتعامل مع إصدار حزمة مثل نشر حزمة.
+
+## راقب قبل أن تفرض
+
+قد يعلن البيان عن `"effect": "observe"`. تعمل تلك السياسات وتُسجل أحكامها **وتُرفض** — لا شيء محجوب. إنها الطريقة لقياس قاعدة جديدة مقابل حركة المرور الحقيقية قبل أن تتمكن من مقاطعة عمل أي شخص.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/ar/reference/failproof-cli.mdx b/docs/ar/reference/failproof-cli.mdx
index ea5391a4..190f1349 100644
--- a/docs/ar/reference/failproof-cli.mdx
+++ b/docs/ar/reference/failproof-cli.mdx
@@ -1,14 +1,14 @@
---
-title: "واجهة سطر الأوامر Failproof AI"
-description: "تثبيت الخطافات، إدارة السياسات المحلية، الاتصال بالسحابة، وتشغيل خادم الويب المحلي."
+title: "واجهة سطر أوامر Failproof AI"
+description: "تثبيت الخطافات وإدارة السياسات المحلية والاتصال بالسحابة وتشغيل خادم محلي."
icon: "terminal"
---
-قم بتثبيت واجهة سطر الأوامر المحلية باستخدام `npm install -g failproofai`. قم بتشغيلها بدون وسائط لفتح لوحة التحكم للسياسات المحلية.
+قم بتثبيت واجهة سطر الأوامر المحلية باستخدام `npm install -g failproofai`. قم بتشغيلها بدون وسيطات لفتح لوحة معلومات السياسات المحلية.
-تتطلب الحزمة Node.js 20.9 أو الإصدار الأحدث. Bun 1.3 أو الإصدار الأحدث مدعوم للتطوير والتثبيتات من المصدر. `failproofai configure` و`failproofai setup` هي بدائل لـ `failproofai config`؛ `failproofai p` هي بديل لـ `failproofai policies`.
+تتطلب الحزمة Node.js 20.9 أو أحدث. يتم دعم Bun 1.3 أو أحدث للتطوير والتثبيت من المصدر. `failproofai configure` و `failproofai setup` هما أسماء مستعارة لـ `failproofai config`؛ `failproofai p` اسم مستعار لـ `failproofai policies`.
-## إعداد الجهاز
+## إعداد جهاز
```bash
npm install -g failproofai
@@ -20,64 +20,69 @@ failproofai policies --install
failproofai config --status
```
-قم بتشغيل `failproofai` بدون وسائط لفتح لوحة التحكم للسياسات المحلية.
+قم بتشغيل `failproofai` بدون وسيطات لفتح لوحة معلومات السياسات المحلية.
| الأمر | النتيجة |
| --- | --- |
| `failproofai config` | تشغيل إعداد الجهاز التفاعلي |
-| `failproofai config --connect --token ` | الاتصال بسحابة استقبال البيانات وتسليم السياسات |
+| `failproofai config --connect --token ` | الاتصال بالسحابة وتسليم السياسات |
| `failproofai config --status` | عرض حالة الاتصال والخادم والتسليم والإيقاف المؤقت |
-| `failproofai policies` | قائمة السياسات المدمجة والمخصصة |
+| `failproofai policies` | قائمة السياسات المدمجة والمخصصة والمتفق عليها والحزم والمدارة من السحابة |
| `failproofai policies --install` | تثبيت الخطافات وتفعيل السياسات |
-| `failproofai policy add ` | تفعيل سياسة مدمجة واحدة |
-| `failproofai policy remove ` | تعطيل سياسة مدمجة واحدة |
+| `failproofai policy add ` | تفعيل سياسة واحدة — مدمجة أو `:` من حزمة مثبتة |
+| `failproofai policy remove ` | تعطيل سياسة واحدة بنفس التسمية |
| `failproofai policies --uninstall` | تعطيل السياسات أو إزالة خطافات الهيكل |
-| `failproofai audit` | مسح سجل الوكيل المحلي وفتح عرض التدقيق المحلي |
-| `failproofai audit --schedule [days] --email ` | جدولة عمليات مسح محلية متكررة وإرسال النتائج عبر البريد الإلكتروني |
+| `failproofai pack list` | قائمة حزم السياسات المثبتة وكل سياسة في كل واحدة |
+| `failproofai pack add ` | تثبيت حزمة سياسة من إصدار GitHub؛ بدون علامة يأخذ الأحدث ويثبتها |
+| `failproofai pack add --bundled` | تثبيت السياسات المدمجة كحزمة من هذه الحزمة بدون شبكة |
+| `failproofai pack build ` | بناء ثلاثة موارد إصدار لحزمة خاصة بك |
+| `failproofai pack remove ` | إلغاء تفعيل حزمة مثبتة |
+| `failproofai audit` | فحص السجل المحلي للوكيل وفتح عرض التدقيق المحلي |
+| `failproofai audit --schedule [days] --email ` | جدولة عمليات مسح محلية متكررة وإرسال نتائجها بالبريد الإلكتروني |
| `failproofai audit --status` | عرض عنوان التقرير والفاصل الزمني والمسح المجدول التالي |
-| `failproofai audit --no-schedule` | إيقاف عمليات المسح المتكررة دون حذف سجل التدقيق |
-| `failproofai harness list` | قائمة المسارات الإضافية للالتقاط |
+| `failproofai audit --no-schedule` | إيقاف المسح المتكرر بدون حذف سجل التدقيق |
+| `failproofai harness list` | قائمة مسارات المقارنة الإضافية |
| `failproofai flush --wait` | تسليم ملف الأحداث الحالي |
-| `failproofai backfill --since 30d` | إعادة قراءة السجل السابق الذي تم تمريره |
-| `failproofai config --pause [duration]` | إيقاف جلسة محلية واحدة مؤقتاً لمدة 30 دقيقة افتراضياً، حتى 8 ساعات |
-| `failproofai config --resume` | استئناف جلسة محلية معلقة واحدة؛ أضف `--all` لإزالة جميع الإيقافات المؤقتة |
+| `failproofai backfill --since 30d` | إعادة قراءة السجل السابق المنقول |
+| `failproofai config --pause [duration]` | إيقاف جلسة محلية واحدة لمدة 30 دقيقة افتراضياً، حتى 8 ساعات |
+| `failproofai config --resume` | استئناف جلسة محلية مؤقوفة؛ أضف `--all` لمسح جميع الإيقافات |
| `failproofai update` | إنهاء ترحيلات الحزمة وتحديث الخادم |
-| `failproofai migrate --dry-run` | معاينة أو تشغيل ترحيلات تخطيط المنزل المعلقة |
+| `failproofai migrate --dry-run` | معاينة أو تشغيل ترحيلات التخطيط المنزلي المعلقة |
| `failproofai uninstall` | إزالة الخطافات والخادم قبل إزالة الحزمة |
| `failproofai --version` | طباعة إصدار الحزمة المثبتة |
| `failproofai --help` | عرض الأوامر والاستخدام العام |
-## علامات التكوين
+## أعلام التكوين
| العلم | الاستخدام |
| --- | --- |
| `--connect --token ` | الاتصال بشكل غير تفاعلي |
| `--machine-id ` | تعيين معرف الجهاز المستقر |
-| `--machine-label ` | تعيين أو تغيير تسمية لوحة التحكم |
-| `--no-transcripts` | إرسال القرارات بدون محتوى النص |
-| `--disconnect` | إيقاف سحب سياسات السحابة وتسليم الأحداث |
+| `--machine-label ` | تعيين أو تغيير تسمية لوحة المعلومات |
+| `--no-transcripts` | إرسال القرارات بدون محتوى النصوص |
+| `--disconnect` | إيقاف سحب سياسة السحابة وتسليم الأحداث |
| `--status` | عرض حالة الجهاز الحالية |
-| `--pause [duration]` | إيقاف أحدث جلسة في المجلد الحالي مؤقتاً؛ تقبل الثواني أو الدقائق أو الساعات وتفترض 30 دقيقة |
-| `--resume` | إنهاء إيقاف مطابق مبكراً |
+| `--pause [duration]` | إيقاف الجلسة الأحدث في المجلد الحالي؛ يقبل ثوان أو دقائق أو ساعات ويفترض 30 دقيقة |
+| `--resume` | إنهاء الإيقاف المطابق مبكراً |
| `--session ` | استهداف جلسة صريحة للإيقاف المؤقت أو الاستئناف |
| `--all` | مع `--resume`، أنهِ كل إيقاف نشط |
-تعليق الإيقافات المحلية السياسات المدمجة والمخصصة وسياسات الاتفاقية لجلسة واحدة. تنتهي دائماً ولا تعطل سياسات السحابة المدارة. `block-self-pause` يمنع وكيل مزود من استخدام هذا الثغر بنفسه.
+تعليق الإيقافات المحلية السياسات المدمجة والمخصصة والمتفق عليها والحزمة لجلسة واحدة. تنتهي دائماً ولا تعطل سياسات السحابة المدارة. `block-failproofai-commands` — وهي تكون مفعلة دائماً ولا يمكن تعطيلها أو إيقافها — تمنع وكيل مدعوم من استخدام هذا الهروب بنفسه.
-## علامات السياسة
+## أعلام السياسات
| العلم | الاستخدام |
| --- | --- |
| `--install`, `-i` | تفعيل السياسات وتثبيت خطافات الهيكل |
| `--uninstall`, `-u` | تعطيل السياسات أو إزالة الخطافات |
-| `--cli ` | استهدف هيكل واحد أو أكثر مدعوم |
-| `--scope user\|project\|local\|all` | اختر نطاق التكوين؛ `all` للإزالة |
-| `--beta` | تضمين سياسات بيتا |
+| `--cli ` | استهداف أحد أو أكثر من الهياكل المدعومة |
+| `--scope user\|project\|local\|all` | اختيار نطاق التكوين؛ `all` لإلغاء التثبيت |
+| `--beta` | تضمين سياسات تجريبية |
| `--custom`, `-c ` | التحقق من صحة وتحميل ملف سياسة مخصص؛ قابل للتكرار |
-## علامات التسليم والصيانة
+## أعلام التسليم والصيانة
-| الأمر | العلامات |
+| الأمر | الأعلام |
| --- | --- |
| `backfill` | `--since <30d\|6m\|YYYY-MM-DD>`, `--dry-run` |
| `flush` | `--wait`, `--timeout ` |
@@ -85,7 +90,7 @@ failproofai config --status
| `migrate` | `--dry-run` |
| `uninstall` | `--purge`, `--dry-run`, `--yes` |
-يجب تشغيل `failproofai update` بعد `npm install -g failproofai@latest`؛ يقوم بإجراء ترحيلات تخطيط المنزل وتثبيت ملف الخادم المطابق وإعادة تشغيل الخدمة. `--no-daemon` يقوم بترحيل التخطيط فقط.
+يجب تشغيل `failproofai update` بعد `npm install -g failproofai@latest`؛ فهو يقوم بترحيلات التخطيط المنزلي وتثبيت ثنائي الخادم المطابق وإعادة تشغيل الخدمة. `--no-daemon` يقوم فقط بترحيل التخطيط.
## مسارات الهيكل
@@ -95,36 +100,38 @@ failproofai harness add-path [label=]
failproofai harness remove-path
```
-أسماء الهياكل المدعومة هي `claude` و`codex` و`copilot` و`cursor` و`opencode` و`pi` و`hermes` و`openclaw` و`factory` و`devin` و`antigravity` و`goose`.
+أسماء الهياكل المدعومة هي `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, و `goose`.
-تسميات الأسماء معرّفات الوكيل المشتقة عندما يحتوي جذران على نسخ من نفس المشروع. يتم رفض الجذور المتداخلة والتسميات المكررة لمنع الجمع المكرر أو تلف المؤشر. إعادة تحميل تكوين المسار الإضافي بدون إعادة تشغيل الخادم.
+تقوم التسميات بتجميع معرفات الوكيل المشتقة عندما يحتوي جذران على نسخ من نفس المشروع. يتم رفض الجذور المتداخلة والتسميات المكررة لمنع المجموعة المكررة أو تلف المؤشر. إعادة تحميل تكوين المسار الإضافي بدون إعادة تشغيل الخادم.
-يمكن لبيئات الحاوية استبدال المسارات الإضافية المكونة بالملف بمتغير مفصول بفواصل يسمى `FAILPROOFAI__EXTRA_PATHS`، على سبيل المثال:
+يمكن لبيئات الحاويات استبدال المسارات الإضافية المكونة بملف بمتغير مفصول بفواصل يسمى `FAILPROOFAI__EXTRA_PATHS`، على سبيل المثال:
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
```
-## المتغيرات البيئية
+## متغيرات البيئة
-استخدم ملفات التكوين لسلوك الجهاز الدائم. المتغيرات البيئية مفيدة جداً للحاويات والاختبارات وعملية واحدة.
+استخدم ملفات التكوين للسلوك المستمر للجهاز. متغيرات البيئة الأكثر فائدة للحاويات والاختبارات والعملية الواحدة.
| المتغير | الاستخدام |
| --- | --- |
| `FAILPROOFAI_HOME` | نقل تخطيط `~/.failproofai` الكامل |
-| `FAILPROOFAI_LOG_LEVEL` | ضبط مستوى التفاصيل للتسجيل المحلي |
+| `FAILPROOFAI_LOG_LEVEL` | تعيين طول الكلام المحلي |
| `FAILPROOFAI_HOOK_LOG_FILE` | كتابة تشخيصات الخطاف إلى ملف محدد |
-| `FAILPROOFAI_TELEMETRY_DISABLED=1` | تعطيل التلمترا المجهولة لهذه العملية |
+| `FAILPROOFAI_TELEMETRY_DISABLED=1` | تعطيل القياس عن بعد المجهول لهذه العملية |
| `FAILPROOFAI_NO_FIRST_RUN=1` | تخطي إعداد التشغيل الأول التفاعلي |
-| `FAILPROOFAI_NO_AUTO_AUDIT=1` | تخطي تدقيق ما بعد الإعداد المحلي |
-| `FAILPROOFAI_LLM_BASE_URL` | تجاوز نقطة نهاية متوافقة مع OpenAI التي تستخدمها سياسات LLM |
-| `FAILPROOFAI_LLM_API_KEY` | توفير مفتاح API الذي تستخدمه سياسات LLM |
-| `FAILPROOFAI_LLM_MODEL` | تحديد النموذج الذي تستخدمه سياسات LLM |
+| `FAILPROOFAI_NO_AUTO_AUDIT=1` | تخطي التدقيق المحلي بعد الإعداد |
+| `FAILPROOFAI_LLM_BASE_URL` | تجاوز نقطة نهاية OpenAI المتوافقة المستخدمة في سياسات LLM |
+| `FAILPROOFAI_LLM_API_KEY` | توفير مفتاح API المستخدم في سياسات LLM |
+| `FAILPROOFAI_LLM_MODEL` | اختيار النموذج المستخدم في سياسات LLM |
| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | ربط تحميل وحدة السياسة المخصصة |
-| `FAILPROOFAI__EXTRA_PATHS` | استبدال مسارات الالتقاط الإضافية المكونة لهيكل واحد |
-| `NO_COLOR` | تعطيل إخراج الطرفية الملون |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | رفض جلب الحزم وثنائيات الخادم؛ ما هو مثبت يبقى قائماً |
+| `FAILPROOFAI_PACK_BASE_URL` | جلب الحزم من مرآة بدلاً من `github.com` |
+| `FAILPROOFAI__EXTRA_PATHS` | استبدال مسارات المقارنة الإضافية المكونة لهيكل واحد |
+| `NO_COLOR` | تعطيل إخراج المحطة الملونة |
-متغيرات المنزل الخاصة بالوكيل مثل `CLAUDE_PROJECTS_PATH` و`CURSOR_HOME` و`HERMES_HOME` و`OPENCLAW_HOME` تتجاوز المكان الذي يكتشف فيه Failproof AI جلسات محلية لهذا الهيكل.
+متغيرات المنزل الخاصة بالوكيل مثل `CLAUDE_PROJECTS_PATH` و `CURSOR_HOME` و `HERMES_HOME` و `OPENCLAW_HOME` تجاوز حيث يكتشف Failproof AI الجلسات المحلية لهذا الهيكل.
## إيقاف أو إزالة جهاز بأمان
@@ -134,7 +141,7 @@ failproofai config --status
failproofai config --resume
```
-إيقاف جلسة محلية مؤقتاً لا يعطل سياسات السحابة المدارة. استعد نشرات السحابة من خلال سير عمل إنفاذ السحابة عندما تكون الطرح نفسه هو المشكلة.
+إيقاف جلسة محلية لا يعطل سياسات السحابة المدارة. استرجع نشر السحابة من خلال سير عمل إنفاذ السحابة عندما تكون الطرح نفسه هو المشكلة.
قبل إزالة حزمة npm، أزل الخطافات المثبتة والخادم:
@@ -144,7 +151,7 @@ failproofai uninstall --yes
npm rm -g failproofai
```
-قم بتشغيل `failproofai --help` للحصول على تفاصيل محددة للإصدار.
+قم بتشغيل `failproofai --help` للحصول على تفاصيل خاصة بالإصدار.
قم بتشغيل `failproofai uninstall` قبل `npm rm -g failproofai`؛ npm لا يزيل خطافات الوكيل المثبتة أو خدمة الخادم.
diff --git a/docs/ar/start/quickstart.mdx b/docs/ar/start/quickstart.mdx
index 0932384e..cedf7608 100644
--- a/docs/ar/start/quickstart.mdx
+++ b/docs/ar/start/quickstart.mdx
@@ -1,13 +1,12 @@
---
----
title: "البدء السريع"
-description: "التقط جلسة وكيل، ابحث عن عطل، وابدأ بمنع حدوثه."
+description: "التقط جلسة وكيل، ابحث عن عطل، وابدأ في منعه."
icon: "zap"
---
-يوفر هذا البدء السريع تقريراً من جهاز واحد عن الجلسات، وتشغيل عملية تدقيق، ونشر سياسة. استخدم المهارة لإعداد Failproof AI، أو اتبع الخطوات اليدوية.
+يوضح هذا البدء السريع كيفية جعل جهاز واحد يرسل الجلسات، وتشغيل تدقيق، ونشر سياسة. استخدم المهارة لإعداد Failproof AI، أو اتبع الخطوات اليدوية.
-**أي المسار يناسبك؟** إذا كان وكيلك يعمل في أحد الأدوات 12 المدعومة [harnesses](/ar/reference/harnesses) — واجهة أوامر للبرمجة أو بوابة مثل Hermes أو OpenClaw — اتبع الخطوات أدناه؛ تحتاج إلى Node.js 20.9 أو أحدث. إذا كان وكيلك لا يملك أداة، قم بتجهيزه باستخدام [Python SDK](/ar/reference/custom-agents) للتتبع والتدقيق، ثم عد إلى [تشغيل فحص الفشل الأول](/ar/start/first-audit)؛ يتطلب التنفيذ في هذا المسار خطاف في وقت التشغيل الخاص بك.
+**أي مسار هو مسارك؟** إذا كان وكيلك يعمل في أحد [الأطر](/ar/reference/harnesses) الـ 12 المدعومة — واجهة سطر أوامر لكتابة الأكواد، أو بوابة مثل Hermes أو OpenClaw — اتبع الخطوات أدناه؛ تحتاج Node.js 20.9 أو إصدار أحدث. إذا كان وكيلك لا يحتوي على إطار، فقم بتجهيزه باستخدام [Python SDK](/ar/reference/custom-agents) للتتبع والتدقيقات، ثم عد إلى [تشغيل فحص الفشل الأول الخاص بك](/ar/start/first-audit)؛ الإنفاذ في هذا المسار يتطلب خطاف في وقت التشغيل الخاص بك.
@@ -22,16 +21,16 @@ icon: "zap"
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- يفحص وكيلك المشروع، ويختار التكامل ذا الصلة، ويقوم بالإعداد، والتحقق منه. انظر إلى [مستودع مهارات FailproofAI](https://github.com/FailproofAI/skills) للمهارات الفردية وخيارات التثبيت المتقدمة.
+ يقوم وكيلك بفحص المشروع، واختيار التكامل ذي الصلة، وتنفيذ الإعداد، والتحقق منه. راجع [مستودع مهارات FailproofAI](https://github.com/FailproofAI/skills) للحصول على المهارات الفردية وخيارات التثبيت المتقدمة.
- ## قبل البدء
+ ## قبل أن تبدأ
-1. افتح [لوحة تحكم Failproof AI](https://app.befailproof.ai) وأنشئ حساباً أو سجل الدخول ببريدك الإلكتروني للعمل.
-2. انتقل إلى **Administration → Keys** وأنشئ مفتاحاً باستخدام `events:add` و `policies:pull`.
-3. انسخ السر لمرة واحدة واحفظه على الجهاز المستهدف:
+1. افتح [لوحة تحكم Failproof AI](https://app.befailproof.ai) وأنشئ حسابًا أو سجل الدخول باستخدام بريدك الإلكتروني للعمل.
+2. انتقل إلى **Administration → Keys** وأنشئ مفتاحًا باستخدام `events:add` و `policies:pull`.
+3. انسخ السر لمرة واحدة وخزنه على الجهاز الهدف:
```bash
export FAILPROOFAI_KEY=""
@@ -40,15 +39,15 @@ export FAILPROOFAI_KEY=""
## التثبيت
-
+
```bash
npm install -g failproofai
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- يتم إرسال نصوص الجلسة بشكل افتراضي. أضف `--no-transcripts` للإبلاغ عن نشاط الخطاف وقرارات السياسة دون محتوى النصوص.
+ يتم إرسال نسخ جلسات العمل بشكل افتراضي. أضف `--no-transcripts` للإبلاغ عن نشاط الخطاف وقرارات السياسة دون محتوى النسخة.
- إذا كان هذا الجهاز يحتوي بالفعل على سجل وكيل، معاينة واستيراد آخر سبعة أيام، ثم انتظر انتهاء التسليم. تخطى هذه الخطوة على جهاز جديد.
+ إذا كان لديك هذا الجهاز بالفعل سجل وكيل، فقم بمعاينة واستيراد آخر سبعة أيام، ثم انتظر انتهاء التسليم. تخطَّ هذه الخطوة على جهاز جديد.
```bash
failproofai backfill --since 7d --dry-run
@@ -56,30 +55,30 @@ export FAILPROOFAI_KEY=""
failproofai flush --wait
```
- افتح **Sessions** في Failproof AI وحدد جلسة مستوردة.
+ افتح **Sessions** في Failproof AI واختر جلسة تم استيرادها.
- يقوم هذا بربط Failproof AI بأداتك وتثبيت 40 سياسة مدمجة. استخدمها لرؤية قرارات السياسة المحلية وتجربة التنفيذ قبل أن يقوم Failproof AI بتدقيق جلساتك وكتابة السياسات لوكلائك.
+ يرفق هذا Failproof AI بإطارك ويثبت السياسات المدمجة الـ 39. استخدمها لمشاهدة قرارات السياسة المحلية وتجربة الإنفاذ قبل أن يدقق Failproof AI جلساتك وينشئ سياسات لوكلائك.
- دع برنامج التثبيت يكتشف أداتك، أو قم بتسمية واحدة صراحة. كل واحد من الـ 12 هو قيمة `--cli` صحيحة — `claude`و`codex`و`copilot`و`cursor`و`opencode`و`pi`و`hermes`و`openclaw`و`factory`و`devin`و`antigravity`و`goose`.
+ دع المثبت يكتشف إطارك، أو سمِّ واحدًا بشكل صريح. كل واحد من الـ 12 هو قيمة `--cli` صحيحة — `claude`، `codex`، `copilot`، `cursor`، `opencode`، `pi`، `hermes`، `openclaw`، `factory`، `devin`، `antigravity`، `goose`.
```bash
failproofai policies --install --cli claude --scope user # a coding CLI
failproofai policies --install --cli hermes --scope user # a Slack/Telegram gateway
```
- يتم التحقق من حجب استدعاء أداة قبل تشغيله على الأدوات الـ 12 جميعها. يتم التحقق من بوابات نهاية الدور على 8 — انظر [القدرة على التنفيذ](/ar/reference/harnesses#enforcement-capability) للمصفوفة لكل أداة.
+ يتم التحقق من حجب استدعاء أداة قبل تشغيله على الـ 12 جميعًا. يتم التحقق من بوابات نهاية الدور على 8 — راجع [إمكانية الإنفاذ](/ar/reference/harnesses#enforcement-capability) للحصول على مصفوفة كل إطار.
- اتبع [تشغيل فحص الفشل الأول](/ar/start/first-audit). استخدم هدفاً محدداً مثل "ابحث عن الجلسات حيث أعاد الوكيل محاولة أداة فاشلة دون تغيير نهجه."
+ اتبع [تشغيل فحص الفشل الأول الخاص بك](/ar/start/first-audit). استخدم هدفًا محددًا مثل البحث عن الجلسات التي أعاد فيها الوكيل محاولة أداة فاشلة دون تغيير نهجه.
- اتبع [منع الفشل الأول باستخدام سياسة](/ar/start/first-policy). ابدأ في وضع المراقبة، افحص المطابقات، ثم نفذ الإصدار المراجع.
+ اتبع [منع الفشل الأول الخاص بك باستخدام سياسة](/ar/start/first-policy). ابدأ في وضع المراقبة، افحص المطابقات، ثم أنفذ النسخة المراجعة.
- شغّل `failproofai config --status`. يقدم الإعداد الصحي تقرير الاتصال بالسحابة وحالة الخادم والقوى العاملة وما إذا كان التنفيذ موقوفاً.
+ شغّل `failproofai config --status`. يرسل الإعداد السليم الاتصال بالسحابة وحالة المراقب وما إذا كان الإنفاذ موقوفًا.
\ No newline at end of file
diff --git a/docs/de/policies/builtin-catalog.mdx b/docs/de/policies/builtin-catalog.mdx
index e80f57d7..f2cea5ed 100644
--- a/docs/de/policies/builtin-catalog.mdx
+++ b/docs/de/policies/builtin-catalog.mdx
@@ -1,100 +1,100 @@
---
-title: "Integrierter Policy-Katalog"
-description: "Übersicht aller integrierten Failproof AI Policies mit Auslöser, empfohlenem Zustand und konfigurierbaren Parametern."
+title: "Integrierter Richtlinienkatalog"
+description: "Übersicht aller integrierten Failproof AI-Richtlinien mit Auslöser, empfohlenem Status und konfigurierbaren Parametern."
icon: "list-checks"
---
-Das installierte Paket ist die maßgebliche Quelle für die verfügbaren Policies. Führen Sie nach jedem Upgrade `failproofai policies` aus, da sich Katalogeinträge und Verhalten mit der Paketversion ändern können.
+Das installierte Paket ist die maßgebliche Quelle für die Verfügbarkeit von Richtlinien. Führen Sie `failproofai policies` nach jedem Upgrade aus, da sich Katalogeinträge und Verhalten mit der Paketversion ändern können.
-## Empfohlene Basiskonfiguration
+## Empfohlene Grundkonfiguration
-Die empfohlene Auswahl des geführten Setups aktiviert derzeit Secret-Sanitizer, Umgebungsschutz, Selbstschutz, Schutz vor katastrophalen Befehlen sowie Sicherheit für geschützte Branches:
+Die empfohlene Auswahl des geführten Setups aktiviert derzeit Secret-Sanitizer, Umgebungsschutzmaßnahmen, Selbstschutz, Absicherungen gegen katastrophale Befehle sowie Schutz für geschützte Branches:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-Die empfohlene Auswahl ist bewusst schmaler als **Alles**. Infrastruktur- und Workflow-Policies können legitime Arbeit unterbrechen und sollten nur für die Repositories und Maschinen aktiviert werden, die sie tatsächlich benötigen.
+`block-failproofai-commands` ist **immer aktiv**. Es wird oben der Vollständigkeit halber aufgeführt, registriert sich jedoch bei jeder Auswertung unabhängig davon, ob es in Ihrem aktivierten Set erscheint – und es kann weder deaktiviert noch pausiert werden. Eine Absicherung gegen das Abschalten der Durchsetzung durch den Agenten ist keine Absicherung, wenn der Agent sie selbst abschalten kann.
+
+„Empfohlen" ist bewusst enger gefasst als **Alles**. Infrastruktur- und Workflow-Richtlinien können gültige Arbeitsabläufe unterbrechen und sollten nur für die Repositories und Systeme aktiviert werden, die sie benötigen.
## Secrets und Umgebung
-| Policy | Auslöser | Ergebnis |
+| Richtlinie | Auslöser | Ergebnis |
| --- | --- | --- |
| `sanitize-jwt` | `PostToolUse` | JWTs aus der Tool-Ausgabe entfernen, bevor das Modell sie sieht. |
| `sanitize-api-keys` | `PostToolUse` | Gängige OpenAI-, Anthropic-, GitHub-, AWS-, Stripe- und Google-Schlüssel entfernen. |
-| `sanitize-connection-strings` | `PostToolUse` | Datenbankverbindungszeichenfolgen mit Zugangsdaten entfernen. |
+| `sanitize-connection-strings` | `PostToolUse` | Datenbankverbindungszeichenfolgen mit Anmeldedaten entfernen. |
| `sanitize-private-key-content` | `PostToolUse` | PEM-Private-Key-Inhalte entfernen. |
-| `sanitize-bearer-tokens` | `PostToolUse` | Authorization-Bearer-Token entfernen. |
-| `protect-env-vars` | `PreToolUse` auf Shell-Tools | Befehle blockieren, die Umgebungsvariablen ausgeben. |
+| `sanitize-bearer-tokens` | `PostToolUse` | Authorization-Bearer-Tokens entfernen. |
+| `protect-env-vars` | `PreToolUse` bei Shell-Tools | Befehle blockieren, die Umgebungsvariablen ausgeben. |
| `block-env-files` | `PreToolUse` | Lese- und Schreibzugriffe auf `.env`-Dateien blockieren. |
-| `block-read-outside-cwd` | `PreToolUse` auf Lese-, Glob-, Grep- oder Shell-Tools | Lesezugriffe auf das Arbeitsverzeichnis der Sitzung beschränken. |
-| `block-secrets-write` | `PreToolUse` auf Schreib-Tools | Schreibzugriffe auf bekannte Secret-Key- und Credential-Dateinamen blockieren. |
+| `block-read-outside-cwd` | `PreToolUse` bei Lese-, Glob-, Grep- oder Shell-Tools | Lesezugriffe auf das Arbeitsverzeichnis der Sitzung beschränken. |
+| `block-secrets-write` | `PreToolUse` bei Schreib-Tools | Schreibzugriffe auf bekannte Secret-Key- und Credential-Dateinamen blockieren. |
## Gefährliche Befehle und Infrastruktur
-| Policy | Auslöser | Ergebnis |
+| Richtlinie | Auslöser | Ergebnis |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | Verhindert, dass ein Agent seine eigene Durchsetzung pausiert. |
| `block-sudo` | `PreToolUse`, `PermissionRequest` | `sudo` blockieren, sofern kein Allow-Muster übereinstimmt. |
-| `block-curl-pipe-sh` | `PreToolUse` | Heruntergeladene Skripte blockieren, die direkt an eine Shell weitergeleitet werden. |
+| `block-curl-pipe-sh` | `PreToolUse` | Heruntergeladene Skripte, die direkt an eine Shell geleitet werden, blockieren. |
| `block-rm-rf` | `PreToolUse` | Katastrophale rekursive Löschmuster blockieren. |
-| `block-failproofai-commands` | `PreToolUse` | Verhindert, dass Agents Failproof AI ändern oder deinstallieren. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **Immer aktiv, kann nicht deaktiviert werden.** Jeden Failproof AI CLI-Aufruf, Self-Pause und Paketmanager-Deinstallation blockieren. |
| `block-kubectl` | `PreToolUse` | Kubernetes-Befehle absichern. |
| `block-terraform` | `PreToolUse` | Terraform- und OpenTofu-Befehle absichern. |
-| `block-aws-cli` | `PreToolUse` | AWS-CLI-Befehle absichern. |
-| `block-gcloud` | `PreToolUse` | Google-Cloud-CLI-Befehle absichern. |
-| `block-az-cli` | `PreToolUse` | Azure-CLI-Befehle absichern. |
+| `block-aws-cli` | `PreToolUse` | AWS CLI-Befehle absichern. |
+| `block-gcloud` | `PreToolUse` | Google Cloud CLI-Befehle absichern. |
+| `block-az-cli` | `PreToolUse` | Azure CLI-Befehle absichern. |
| `block-helm` | `PreToolUse` | Helm-Befehle absichern. |
-| `block-gh-pipeline` | `PreToolUse` | Mutierende GitHub-CLI-Operationen für Workflow, Run, Merge, Release, Cache und Secrets absichern. |
+| `block-gh-pipeline` | `PreToolUse` | Verändernde GitHub CLI-Operationen für Workflows, Runs, Merges, Releases, Caches und Secrets absichern. |
## Git- und Datenbanksicherheit
-| Policy | Auslöser | Ergebnis |
+| Richtlinie | Auslöser | Ergebnis |
| --- | --- | --- |
| `block-push-master` | `PreToolUse` | Direkte Pushes auf konfigurierte geschützte Branches blockieren. |
| `block-force-push` | `PreToolUse` | Force-Pushes blockieren; `--force-with-lease` bleibt in der aktuellen Implementierung erlaubt. |
| `block-work-on-main` | `PreToolUse` | Commits und Merges auf geschützten Branches blockieren. |
-| `warn-git-amend` | `PreToolUse` | Warnung vor dem Überschreiben eines Commits mit `--amend`. |
-| `warn-git-stash-drop` | `PreToolUse` | Warnung vor dem dauerhaften Löschen oder Leeren von Stashes. |
-| `warn-all-files-staged` | `PreToolUse` | Warnung bei umfassendem `git add -A`, `git add .` oder `git add --all`. |
-| `warn-destructive-sql` | `PreToolUse` | Warnung bei `DROP`, `TRUNCATE` und `DELETE` ohne `WHERE` über bekannte Datenbankclients. |
-| `warn-schema-alteration` | `PreToolUse` | Warnung bei erkannten `ALTER TABLE`-Spalten- und Umbenennungsoperationen. |
+| `warn-git-amend` | `PreToolUse` | Warnen, bevor ein Commit mit `--amend` überschrieben wird. |
+| `warn-git-stash-drop` | `PreToolUse` | Warnen, bevor Stashes dauerhaft gelöscht oder geleert werden. |
+| `warn-all-files-staged` | `PreToolUse` | Bei umfangreichen `git add -A`-, `git add .`- oder `git add --all`-Befehlen warnen. |
+| `warn-destructive-sql` | `PreToolUse` | Bei `DROP`, `TRUNCATE` und `DELETE` ohne `WHERE` über bekannte Datenbankclients warnen. |
+| `warn-schema-alteration` | `PreToolUse` | Bei erkannten `ALTER TABLE`-Spalten- und Umbenennungsoperationen warnen. |
-## Pakete, Systemverhalten und Agent-Schleifen
+## Pakete, Systemverhalten und Agentenschleifen
-| Policy | Auslöser | Ergebnis |
+| Richtlinie | Auslöser | Ergebnis |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | Warnung vor dem Veröffentlichen in Paket-Registries. |
-| `warn-global-package-install` | `PreToolUse` | Warnung vor der globalen Paketinstallation. |
-| `prefer-package-manager` | `PreToolUse` | Den Agent anweisen, einen erlaubten Paketmanager zu verwenden. |
-| `warn-large-file-write` | `PreToolUse` auf Schreib-Tools | Warnung bei Überschreiten des konfigurierten Dateigrößen-Schwellenwerts. |
-| `warn-background-process` | `PreToolUse` | Warnung bei abgetrennten oder langlebigen Hintergrundprozess-Mustern. |
-| `warn-repeated-tool-calls` | `PreToolUse` | Warnung nach drei oder mehr identischen Tool-Aufrufen. |
+| `warn-package-publish` | `PreToolUse` | Warnen, bevor in Paketregistries veröffentlicht wird. |
+| `warn-global-package-install` | `PreToolUse` | Warnen, bevor Pakete global installiert werden. |
+| `prefer-package-manager` | `PreToolUse` | Den Agenten anweisen, einen erlaubten Paketmanager zu verwenden. |
+| `warn-large-file-write` | `PreToolUse` bei Schreib-Tools | Bei Überschreitung des konfigurierten Dateigrößenschwellenwerts warnen. |
+| `warn-background-process` | `PreToolUse` | Bei abgetrennten oder langlebigen Hintergrundprozessmustern warnen. |
+| `warn-repeated-tool-calls` | `PreToolUse` | Nach drei oder mehr identischen Tool-Aufrufen warnen. |
## Aufgabenabschluss-Workflow
-Diese Policies erfordern ein Harness, das ein kompatibles `Stop`-Ereignis ausgibt.
+Diese Richtlinien erfordern ein Harness, das ein kompatibles `Stop`-Event ausgibt.
-| Policy | Ergebnis |
+| Richtlinie | Ergebnis |
| --- | --- |
-| `require-commit-before-stop` | Abschluss verweigern, solange nachverfolgbare Arbeit nicht committed wurde. |
+| `require-commit-before-stop` | Abschluss verweigern, solange verfolgte Änderungen nicht committet sind. |
| `require-push-before-stop` | Abschluss verweigern, solange Commits nur lokal vorhanden sind. |
| `require-pr-before-stop` | Einen Pull Request für den aktuellen Branch erfordern. |
-| `require-no-conflicts-before-stop` | Einen sauberen Merge gegen den konfigurierten Basis-Branch erfordern. |
-| `require-ci-green-before-stop` | Erfordern, dass CI-Checks für den aktuellen HEAD erfolgreich abgeschlossen werden. |
+| `require-no-conflicts-before-stop` | Einen konfliktfreien Merge gegen den konfigurierten Basis-Branch erfordern. |
+| `require-ci-green-before-stop` | Erfordern, dass die CI-Prüfungen für den aktuellen HEAD erfolgreich abgeschlossen werden. |
-## Parameter-Referenz
+## Parameterreferenz
-Parameter werden im `policyParams`-Objekt des gewählten Scopes konfiguriert. Typen werden von jeder Policy validiert.
+Parameter werden unter dem `policyParams`-Objekt des ausgewählten Scopes konfiguriert. Typen werden von jeder Richtlinie validiert.
-| Policy | Parameter | Typ und Standard |
+| Richtlinie | Parameter | Typ und Standard |
| --- | --- | --- |
| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`; Einträge enthalten `regex` und `label` |
| `block-read-outside-cwd` | `allowPaths` | `string[]`, `[]` |
@@ -125,5 +125,5 @@ Parameter werden im `policyParams`-Objekt des gewählten Scopes konfiguriert. Ty
```
- Ein Allow-Muster erweitert den Handlungsspielraum eines Agents. Testen Sie die genaue Tokenisierung und Befehlsvarianten auf dem Ziel-Harness, bevor Sie es flächendeckend einsetzen.
+ Ein Allow-Muster erweitert den Handlungsspielraum eines Agenten. Testen Sie die genaue Tokenisierung und Befehlsvarianten auf dem Ziel-Harness, bevor Sie es flächendeckend einsetzen.
\ No newline at end of file
diff --git a/docs/de/policies/failure-behavior.mdx b/docs/de/policies/failure-behavior.mdx
index e3e22714..57067efa 100644
--- a/docs/de/policies/failure-behavior.mdx
+++ b/docs/de/policies/failure-behavior.mdx
@@ -1,19 +1,19 @@
---
title: "Fehlerverhalten"
-description: "Verstehen Sie, was passiert, wenn die Richtlinienauswertung oder der lokale Daemon nicht verfügbar ist."
+description: "Verstehen, was passiert, wenn die Richtlinienauswertung oder der lokale Daemon nicht verfügbar ist."
icon: "shield-alert"
---
-Failproof AI ist so konzipiert, dass ein Durchsetzungsfehler sichtbar wird, anstatt riskante Aktionen stillschweigend zuzulassen.
+Failproof AI ist so konzipiert, dass ein Durchsetzungsfehler sichtbar wird, anstatt riskante Aktionen stillschweigend zu erlauben.
-## Einen failure-closed-Block diagnostizieren
+## Einen „failure-closed"-Block diagnostizieren
- 1. Gehen Sie zu **Admin → Durchsetzung** und öffnen Sie die Maschine.
- 2. Überprüfen Sie das letzte Check-in, die zugewiesene Bereitstellung und die gemeldete Bereitstellung.
- 3. Gehen Sie zu **Beobachten → Richtlinie** und öffnen Sie die Sitzung der abgelehnten Entscheidung.
- 4. Bestätigen Sie, ob der Grund auf die Erreichbarkeit des Daemons, einen Versionsunterschied oder die Richtlinie selbst hindeutet.
+ 1. Gehen Sie zu **Admin → Durchsetzung** und öffnen Sie den Computer.
+ 2. Prüfen Sie seinen letzten Check-in, das zugewiesene Deployment und das gemeldete Deployment.
+ 3. Gehen Sie zu **Observe → Richtlinie** und öffnen Sie die Sitzung der abgelehnten Entscheidung.
+ 4. Stellen Sie fest, ob der Grund auf Daemon-Erreichbarkeit, Versionsunterschiede oder die Richtlinie selbst hinweist.
@@ -27,17 +27,41 @@ Failproof AI ist so konzipiert, dass ein Durchsetzungsfehler sichtbar wird, anst
-Auf einer Maschine, die zur Verwendung von `failproofaid` konfiguriert ist, ist der Daemon der einzige Auswertungsdienst. Ist er nicht erreichbar oder stimmt seine Protokollversion nicht mit der CLI überein, schlägt die Hook-Auswertung failure-closed fehl. Die Aktion wird mit einer Begründung abgelehnt, die den Operator anweist, den Daemon zu überprüfen oder zu aktualisieren.
+Auf einem Computer, der zur Verwendung von `failproofaid` konfiguriert ist, ist der Daemon der einzige Auswertungsinstanz. Ist er nicht erreichbar oder stimmt seine Protokollversion nicht mit der CLI überein, schlägt die Hook-Auswertung geschlossen fehl. Die Aktion wird mit einer Begründung abgelehnt, die den Betreiber anweist, den Daemon zu prüfen oder zu aktualisieren.
-Vor der Daemon-Konfiguration wertet Failproof AI Richtlinien direkt im Prozess aus. Sobald die Daemon-Konfiguration gespeichert ist, fällt Failproof AI bei einem Daemon-Ausfall nicht stillschweigend auf einen zweiten Auswertungsdienst zurück.
+Vor der Daemon-Konfiguration werten Hooks Richtlinien im Prozess aus. Sobald die Daemon-Konfiguration gespeichert ist, fällt Failproof AI bei einem Daemon-Fehler nicht stillschweigend auf eine zweite Auswertungsinstanz zurück.
-## Auf eine failure-closed-Entscheidung reagieren
+## Auf eine „failure-closed"-Entscheidung reagieren
1. Führen Sie `failproofai config --status` aus.
-2. Wenn sich die Versionen unterscheiden, führen Sie nach dem Aktualisieren des Pakets erneut `failproofai config` aus.
-3. Wenn der Daemon nicht erreichbar ist, prüfen Sie seinen Dienststatus und die lokalen Protokolle.
-4. Setzen Sie die Agent-Arbeit erst fort, wenn ein bekannter Richtlinienauswertungspfad fehlerfrei funktioniert.
+2. Wenn sich die Versionen unterscheiden, führen Sie `failproofai config` nach dem Aktualisieren des Pakets erneut aus.
+3. Ist der Daemon nicht erreichbar, prüfen Sie seinen Servicestatus und die lokalen Logs.
+4. Nehmen Sie die Agenten-Arbeit erst wieder auf, wenn ein bekannter Richtlinienauswertungspfad funktionsfähig ist.
- Versuchen Sie nicht wiederholt, die blockierte Aktion erneut auszuführen. Eine failure-closed-Antwort bedeutet, dass das System nicht feststellen konnte, ob die Aktion sicher war.
-
\ No newline at end of file
+ Versuchen Sie nicht wiederholt, die blockierte Aktion zu wiederholen. Eine „failure-closed"-Antwort bedeutet, dass das System nicht feststellen konnte, dass die Aktion sicher war.
+
+
+## Ein Pack lässt sich nicht laden
+
+Ein Computer, der angewiesen wurde, ein Pack durchzusetzen, und es nicht ausführen kann, lehnt ab, anstatt stillschweigend fortzufahren. Auslöser ist eine **aufgezeichnete Erwartung**, niemals eine leere: Ein Computer ohne installierte Packs ist still, während ein Pack, das deklariert ist und sich nicht auflösen lässt – oder das weniger registriert als sein Manifest angibt – ablehnt.
+
+Die Ablehnung ist **eng gefasst**, anders als bei einem nicht erreichbaren Daemon. Ein Daemon, der nicht erreichbar ist, bedeutet, dass überhaupt keine Auswertung stattgefunden hat, sodass nichts als sicher bekannt sein kann. Ein Pack, das sich nicht lädt, hat eine aufzählbare Menge fehlender Wächter, da jede deklarierte Richtlinie ihr eigenes `match` mitbringt – daher lehnt es nur die Ereignisse und Tools ab, die von diesen Richtlinien abgedeckt werden, und alles andere läuft weiter.
+
+Es greift nicht bei:
+
+- einem `observe`-Pack, das konstruktionsbedingt auswertet und verwirft
+- Richtlinien, die Sie nie übernommen oder explizit deaktiviert haben
+- einem Pack, das der Loader nie empfangen hat, wo sich „keine Registrierungen" nicht von einem bewussten Überspringen unterscheiden lässt
+- einer aktiven Sitzungspause
+- einem Lade-Timeout, das vorübergehend ist – ein einzelner langsamer Festplattenmoment darf nicht ablehnen, bis ein Mensch eingreift
+
+`UserPromptSubmit` **instruiert** anstatt abzulehnen, unabhängig davon, was die fehlende Richtlinie deklariert hat. Eine pauschale Ablehnung würde es ebenfalls erfassen und Sie aus dem Agenten aussperren, der das Problem beheben könnte.
+
+### Vorgehensweise
+
+```bash
+failproofai pack list
+```
+
+Dieser Befehl nennt alle installierten Packs, die sich nicht laden lassen, gibt den Grund an und beendet sich mit einem Fehlercode. Installieren Sie das Pack anschließend neu (`failproofai pack add `) oder entfernen Sie es (`failproofai pack remove `) – durch das Entfernen wird die Erwartung zurückgezogen, und die Ablehnung hört damit auf.
\ No newline at end of file
diff --git a/docs/de/policies/packs.mdx b/docs/de/policies/packs.mdx
new file mode 100644
index 00000000..03252fdb
--- /dev/null
+++ b/docs/de/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "Policy Packs"
+description: "Installiere einen Satz von Policies, der als GitHub-Release veröffentlicht wurde, und verwalte, was er durchsetzt."
+icon: "package"
+---
+
+Ein Pack ist ein Satz von Policies, der als GitHub-Release veröffentlicht wurde. Ein einziger Befehl installiert ihn, die eigenen Prüfsummen des Releases werden vor der Ausführung verifiziert, und der Digest wird gespeichert, damit sich der Pack auf deinem Rechner anschließend nicht mehr verändern kann.
+
+## Die Failproof AI Policies installieren
+
+```bash
+failproofai pack add core
+```
+
+Damit wird der von uns veröffentlichte Satz aus der im Paket enthaltenen Kopie installiert — es ist also keine Netzwerkverbindung erforderlich, und hinter einem Proxy kann es nicht fehlschlagen. Nur einen Teil davon übernehmen:
+
+```bash
+failproofai pack add core --policy block-rm-rf # eine oder mehrere kommagetrennte Policies
+failproofai pack add core --category dangerous-commands # eine gesamte Kategorie
+failproofai pack add core --all # alles darin
+```
+
+`failproofai pack list` listet alle Kategorien auf, die der Pack enthält.
+
+## Den Inhalt eines Packs vor der Installation prüfen
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+Listet alle Policies des Packs gruppiert nach Kategorie auf und zeigt an, welche der Autor standardmäßig aktiviert hat und welche optional sind. Es wird **ausschließlich das Manifest** gelesen — das eigentliche Artefakt wird weder heruntergeladen noch importiert. Das Anzeigen eines fremden Packs führt also keinen fremden Code aus. Das Manifest wird dennoch gegen die `SHA256SUMS` des Releases geprüft, sodass das, was du siehst, auch das ist, was installiert würde.
+
+`failproofai pack list` ohne Angabe einer Quelle listet die bereits hier installierten Packs auf.
+
+## Einen fremden Pack installieren
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Alle folgenden Formate funktionieren — füge einfach das ein, was du hast:
+
+| Quelle | Ergebnis |
+| --- | --- |
+| `acme/support-agent` | Neuestes Release, **fixiert** auf den exakt aufgelösten Tag |
+| `acme/support-agent@v2.1.0` | Dieses Release |
+| `github:acme/support-agent@v2.1.0` | Dasselbe, explizit geschrieben |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | Dasselbe, aus dem Browser kopiert |
+
+Wird kein Tag angegeben, wird das neueste Release installiert **und fixiert**, und anschließend wird angezeigt, welcher Tag gewählt wurde. Was gespeichert wird, benennt immer genau ein Release, sodass eine Neuinstallation nicht abweichen kann.
+
+## Nur einen Teil eines Packs verwenden
+
+Standardmäßig erhältst du die **eigenen** Standardwerte des Packs — die Policies, die der Autor als sicher für die unbeaufsichtigte Aktivierung markiert hat — nicht alles, was er enthält.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` und `--policy` werden als Vereinigung kombiniert (`--only` wird als Synonym für `--policy` akzeptiert). Wird ein Pack in einer neueren Version erneut hinzugefügt, bleiben die gewählten Einstellungen erhalten, anstatt alles andere wieder einzuschalten.
+
+## Verwaltung der aktiven Policies
+
+```bash
+failproofai policies # alle Quellen in einer Liste, einschließlich Packs
+failproofai pack list # nur Packs, gruppiert nach Kategorie
+failproofai policies --uninstall block-refunds # eine Pack-Policy deaktivieren
+failproofai policies --install block-refunds # und wieder aktivieren
+failproofai pack remove acme/support-agent
+```
+
+Ein einfacher Name bezieht sich auf die **eingebaute** Policy, sofern eine mit diesem Namen existiert. Den Namen einer Pack-Kopie explizit angeben, wenn nötig:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+Wenn ein Pack eine Policy mitbringt, deren Name auch ein **aktiviertes Builtin** ist, wird das Builtin ausgeführt und die Pack-Kopie übersprungen — andernfalls würde dieselbe Prüfung zweimal ausgewertet. Das Builtin deaktivieren, um stattdessen die Pack-Kopie zu verwenden.
+
+
+## Woher die Failproof AI Policies stammen
+
+`core` liest die im npm-Paket mitgelieferte Kopie. Derselbe Satz wird auch als GitHub-Release veröffentlicht, was du installierst, wenn du eine bestimmte Version möchtest:
+
+```bash
+failproofai pack add core # aus diesem Paket, ohne Netzwerkverbindung
+failproofai pack add FailproofAI/policies # derselbe Satz, aus dem GitHub-Release
+```
+
+## Was Integritätsprüfung leistet und was nicht
+
+`SHA256SUMS` wird im selben Release wie das Artefakt ausgeliefert und ist daher **keine** Signatur und beweist nichts darüber, wer es veröffentlicht hat. Was sie beweist, ist, dass die Bytes genau die des veröffentlichten Releases sind — und da der Digest beim Hinzufügen des Packs gespeichert und vor jedem Import erneut geprüft wird, kann sich ein Pack auf deinem Rechner anschließend nicht mehr verändern. Ein Repository, das einen Asset-Tag neu setzt oder ersetzt, wird nicht mehr geladen, anstatt still etwas anderes auszuführen.
+
+Bei der Installation wird der Pack auch **einmalig importiert** und gegen sein eigenes Manifest geprüft. Ein Pack, dessen Artefakt nicht geparst werden kann oder der etwas anderes als deklariert registriert, wird abgelehnt, bevor etwas aktiviert wird — anstatt sauber zu installieren und beim nächsten Tool-Aufruf zu versagen.
+
+## Wenn ein Pack nicht geladen werden kann
+
+Ein Pack, der auf diesem Rechner durchgesetzt werden soll, aber nicht ausgeführt werden kann, **verweigert** die Ereignisse, die von den fehlenden Policies abgedeckt wurden, anstatt sie stillschweigend zuzulassen. Siehe [Fehlerverhalten](/de/policies/failure-behavior). `failproofai pack list` benennt jeden Pack in diesem Zustand und beendet sich mit einem Fehlercode ungleich null.
+
+## Offline-Betrieb und Mirrors
+
+| Variable | Auswirkung |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Verhindert jeden Abruf; bereits installierte Packs erzwingen weiterhin ihre Policies |
+| `FAILPROOFAI_PACK_BASE_URL` | Leitet den Pack-Abruf an einen Mirror statt an `github.com` weiter |
+
+Eigene Packs veröffentlichen: siehe [Pack veröffentlichen](/de/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/de/policies/publish-a-pack.mdx b/docs/de/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..e4963529
--- /dev/null
+++ b/docs/de/policies/publish-a-pack.mdx
@@ -0,0 +1,91 @@
+---
+title: "Ein Pack veröffentlichen"
+description: "Eigene Policies als GitHub-Release bereitstellen, das jeder installieren kann."
+icon: "upload"
+---
+
+Ein Pack besteht aus drei Dateien, die einem GitHub-Release beigefügt werden. `failproofai pack build` erzeugt alle drei aus einer Policy-Datei, die bereits vorhanden ist.
+
+## 1. Die Policies schreiben
+
+Eine einzelne Datei, die dieselbe API wie jede benutzerdefinierte Policy verwendet. Zwei zusätzliche Felder sind für ein Pack relevant:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+`defaultEnabled` ist standardmäßig **false**, wenn es weggelassen wird. Ein einfaches `failproofai pack add` aktiviert nur das, was explizit markiert wurde — ob alle Policies eines Fremden unbeaufsichtigt installiert werden, sollte nicht stillschweigend für den Nutzer entschieden werden.
+
+
+Der Eintrag muss eine **in sich geschlossene Datei** sein. Nur der Eintrag wird mit einem Digest verknüpft. Ein Pack, das lokale Dateien importiert, kann nicht ernsthaft behaupten, der Digest decke ab, was tatsächlich ausgeführt wird. Daher zunächst bündeln (`esbuild`, `bun build`, `rollup`) und das Pack aus dem Bundle erstellen — `pack build` lehnt einen lokalen Import ab, anstatt ein Versprechen zu machen, das es nicht halten kann.
+
+
+## 2. Die Release-Assets erstellen
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+Es werden drei Dateien geschrieben, und jede Policy wird zuerst mit den **eigenen Regeln des Loaders** validiert — so schlägt ein Pack, das niemals installiert werden könnte, bereits hier fehl, wo es noch behoben werden kann:
+
+| Datei | Beschreibung |
+| --- | --- |
+| `failproofai-pack.json` | Das Manifest: ID, Version, Effekt und ein Eintrag pro Policy |
+| `failproofai-pack.mjs` | Der Eintrag, unverändert |
+| `SHA256SUMS` | `` für die anderen beiden Dateien |
+
+Zur Build-Zeit abgelehnt werden: eine ID, die nicht dem Format `publisher/name` entspricht; ein Policy-Name, der `/` enthält; eine Policy, die `alwaysOn` deklariert; eine fehlende `description`, `category` oder `match`; ein Eintrag, der nichts registriert; sowie ein Eintrag, der lokale Dateien importiert.
+
+## 3. Dem Release beifügen
+
+Das Release mit derselben Version taggen, die beim Build angegeben wurde, und alle drei Dateien als Release-Assets anhängen:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+Nun kann es jeder installieren:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Die Asset-Namen sind festgelegt — sie sind das, woraus die CLI des Consumers ihre URLs konstruiert, ohne API-Aufruf und ohne Erkennung.
+
+## Eine neue Version veröffentlichen
+
+Mit dem neuen `--version` bauen, ein neues Release taggen und die drei Assets erneut anhängen. Consumer führen dasselbe `pack add` aus und behalten die Teilmenge, die sie ausgewählt hatten; eine deaktivierte Policy bleibt auch nach dem Upgrade deaktiviert.
+
+Das **Umbenennen** einer Policy ist eine breaking change: Ein System, das sie deaktiviert hatte, deaktiviert jetzt einen Namen, der nicht mehr existiert, und der neue Name wird mit dem Standardwert von `defaultEnabled` aktiviert.
+
+## Was Nutzer vertrauen
+
+`SHA256SUMS` liegt im selben Release wie das Artefakt und beweist daher, dass die Bytes mit dem übereinstimmen, was veröffentlicht wurde — nicht jedoch, wer der Urheber ist. Wer Schreibzugriff auf das Repository hat, kann beide Dateien schreiben. Der Schutz für die Nutzer besteht darin, dass der Digest bei der Installation eingefroren wird — was veröffentlicht wurde, kann nachträglich nicht mehr verändert werden.
+
+Aus einem Repository veröffentlichen, dessen Schreibzugriff kontrolliert wird, und ein Pack-Release wie die Veröffentlichung eines Packages behandeln.
+
+## Beobachten vor dem Durchsetzen
+
+Ein Manifest kann `"effect": "observe"` deklarieren. Diese Policies werden ausgeführt und ihre Urteile werden **aufgezeichnet und verworfen** — nichts wird blockiert. So lässt sich eine neue Regel gegen echten Traffic messen, bevor sie die Arbeit von jemandem unterbrechen kann.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/de/reference/failproof-cli.mdx b/docs/de/reference/failproof-cli.mdx
index 786ce7e7..4802d176 100644
--- a/docs/de/reference/failproof-cli.mdx
+++ b/docs/de/reference/failproof-cli.mdx
@@ -4,11 +4,11 @@ description: "Hooks installieren, lokale Richtlinien verwalten, Cloud verbinden
icon: "terminal"
---
-Installiere die lokale CLI mit `npm install -g failproofai`. Ohne Argumente aufgerufen öffnet sie das lokale Richtlinien-Dashboard.
+Installiere die lokale CLI mit `npm install -g failproofai`. Starte sie ohne Argumente, um das lokale Richtlinien-Dashboard zu öffnen.
-Das Paket benötigt Node.js 20.9 oder neuer. Bun 1.3 oder neuer wird für Entwicklungs- und Quellinstallationen unterstützt. `failproofai configure` und `failproofai setup` sind Aliase für `failproofai config`; `failproofai p` ist ein Alias für `failproofai policies`.
+Das Paket erfordert Node.js 20.9 oder neuer. Bun 1.3 oder neuer wird für Entwicklung und Quell-Installationen unterstützt. `failproofai configure` und `failproofai setup` sind Aliase für `failproofai config`; `failproofai p` ist ein Alias für `failproofai policies`.
-## Maschine einrichten
+## Eine Maschine einrichten
```bash
npm install -g failproofai
@@ -20,31 +20,36 @@ failproofai policies --install
failproofai config --status
```
-Führe `failproofai` ohne Argumente aus, um das lokale Richtlinien-Dashboard zu öffnen.
+Starte `failproofai` ohne Argumente, um das lokale Richtlinien-Dashboard zu öffnen.
| Befehl | Ergebnis |
| --- | --- |
-| `failproofai config` | Interaktives Maschinensetup starten |
-| `failproofai config --connect --token ` | Cloud-Ingestion und Richtlinienlieferung verbinden |
-| `failproofai config --status` | Verbindungs-, Daemon-, Liefer- und Pausenstatus anzeigen |
-| `failproofai policies` | Eingebaute und benutzerdefinierte Richtlinien auflisten |
+| `failproofai config` | Interaktive Maschineneinrichtung starten |
+| `failproofai config --connect --token ` | Cloud-Ingest und Richtlinienbereitstellung verbinden |
+| `failproofai config --status` | Verbindungs-, Daemon-, Bereitstellungs- und Pausenstatus anzeigen |
+| `failproofai policies` | Eingebaute, benutzerdefinierte, konventionsbasierte, Pack- und Cloud-verwaltete Richtlinien auflisten |
| `failproofai policies --install` | Hooks installieren und Richtlinien aktivieren |
-| `failproofai policy add ` | Eine eingebaute Richtlinie aktivieren |
-| `failproofai policy remove ` | Eine eingebaute Richtlinie deaktivieren |
+| `failproofai policy add ` | Eine Richtlinie aktivieren – eine eingebaute oder `:` aus einem installierten Pack |
+| `failproofai policy remove ` | Eine Richtlinie deaktivieren, gleiche Benennung |
| `failproofai policies --uninstall` | Richtlinien deaktivieren oder Harness-Hooks entfernen |
-| `failproofai audit` | Lokalen Agentenverlauf scannen und lokale Audit-Ansicht öffnen |
-| `failproofai audit --schedule [days] --email ` | Wiederkehrende lokale Scans planen und deren Ergebnisse per E-Mail senden |
+| `failproofai pack list` | Installierte Richtlinien-Packs und alle enthaltenen Richtlinien auflisten |
+| `failproofai pack add ` | Ein Richtlinien-Pack von einem GitHub-Release installieren; ohne Tag wird das neueste genommen und angeheftet |
+| `failproofai pack add --bundled` | Die eingebauten Richtlinien als Pack installieren, aus diesem Paket, ohne Netzwerkzugriff |
+| `failproofai pack build ` | Die drei Release-Assets für ein eigenes Pack erstellen |
+| `failproofai pack remove ` | Ein installiertes Pack deaktivieren |
+| `failproofai audit` | Lokale Agent-History durchsuchen und die lokale Audit-Ansicht öffnen |
+| `failproofai audit --schedule [days] --email ` | Wiederkehrende lokale Scans planen und Ergebnisse per E-Mail senden |
| `failproofai audit --status` | Berichtsadresse, Intervall und nächsten geplanten Scan anzeigen |
-| `failproofai audit --no-schedule` | Wiederkehrende Scans stoppen, ohne den Audit-Verlauf zu löschen |
+| `failproofai audit --no-schedule` | Wiederkehrende Scans stoppen, ohne die Audit-History zu löschen |
| `failproofai harness list` | Zusätzliche Erfassungspfade auflisten |
-| `failproofai flush --wait` | Aktuellen Ereignis-Spool ausliefern |
-| `failproofai backfill --since 30d` | Zuvor verarbeiteten Verlauf erneut einlesen |
-| `failproofai config --pause [duration]` | Eine lokale Sitzung standardmäßig 30 Minuten pausieren, maximal 8 Stunden |
-| `failproofai config --resume` | Eine pausierte lokale Sitzung fortsetzen; `--all` beendet alle Pausen |
-| `failproofai update` | Paketmigrationen abschließen und den Daemon aktualisieren |
+| `failproofai flush --wait` | Den aktuellen Ereignis-Spool übermitteln |
+| `failproofai backfill --since 30d` | Zuvor verarbeitete History erneut einlesen |
+| `failproofai config --pause [duration]` | Eine lokale Sitzung standardmäßig 30 Minuten pausieren, bis zu 8 Stunden |
+| `failproofai config --resume` | Eine pausierte lokale Sitzung fortsetzen; `--all` hinzufügen, um alle Pausen aufzuheben |
+| `failproofai update` | Paket-Migrationen abschließen und den Daemon aktualisieren |
| `failproofai migrate --dry-run` | Ausstehende Home-Layout-Migrationen vorab anzeigen oder ausführen |
-| `failproofai uninstall` | Hooks und Daemon entfernen, bevor das Paket deinstalliert wird |
-| `failproofai --version` | Installierte Paketversion ausgeben |
+| `failproofai uninstall` | Hooks und den Daemon entfernen, bevor das Paket deinstalliert wird |
+| `failproofai --version` | Die installierte Paketversion ausgeben |
| `failproofai --help` | Befehle und allgemeine Nutzungshinweise anzeigen |
## Konfigurationsflags
@@ -52,17 +57,17 @@ Führe `failproofai` ohne Argumente aus, um das lokale Richtlinien-Dashboard zu
| Flag | Verwendung |
| --- | --- |
| `--connect --token ` | Nicht-interaktiv verbinden |
-| `--machine-id ` | Stabile Maschinen-ID festlegen |
-| `--machine-label ` | Dashboard-Bezeichnung festlegen oder ändern |
+| `--machine-id ` | Die stabile Maschinen-ID setzen |
+| `--machine-label ` | Das Dashboard-Label setzen oder ändern |
| `--no-transcripts` | Entscheidungen ohne Transkriptinhalt senden |
-| `--disconnect` | Cloud-Richtlinienabfragen und Ereignislieferung stoppen |
+| `--disconnect` | Cloud-Richtlinienabfragen und Ereignisübermittlung stoppen |
| `--status` | Aktuellen Maschinenstatus anzeigen |
-| `--pause [duration]` | Die neueste Sitzung im aktuellen Verzeichnis pausieren; akzeptiert Sekunden, Minuten oder Stunden, Standard 30 Minuten |
+| `--pause [duration]` | Die neueste Sitzung im aktuellen Verzeichnis pausieren; akzeptiert Sekunden, Minuten oder Stunden, Standard ist 30 Minuten |
| `--resume` | Eine passende Pause vorzeitig beenden |
| `--session ` | Eine explizite Sitzung für Pause oder Fortsetzen auswählen |
-| `--all` | Zusammen mit `--resume` alle aktiven Pausen beenden |
+| `--all` | Mit `--resume` alle aktiven Pausen beenden |
-Lokale Pausen setzen eingebaute, benutzerdefinierte und konventionelle Richtlinien für eine Sitzung aus. Sie laufen stets ab und deaktivieren keine Cloud-verwalteten Richtlinien. `block-self-pause` verhindert, dass ein instrumentierter Agent diesen Ausweg selbst nutzt.
+Lokale Pausen setzen eingebaute, benutzerdefinierte, konventionsbasierte und Pack-Richtlinien für eine Sitzung aus. Sie laufen immer ab und deaktivieren keine Cloud-verwalteten Richtlinien. `block-failproofai-commands` – das immer aktiv ist und selbst weder deaktiviert noch pausiert werden kann – verhindert, dass ein instrumentierter Agent diesen Ausweg selbst nutzt.
## Richtlinienflags
@@ -71,11 +76,11 @@ Lokale Pausen setzen eingebaute, benutzerdefinierte und konventionelle Richtlini
| `--install`, `-i` | Richtlinien aktivieren und Harness-Hooks installieren |
| `--uninstall`, `-u` | Richtlinien deaktivieren oder Hooks entfernen |
| `--cli ` | Einen oder mehrere unterstützte Harnesses auswählen |
-| `--scope user\|project\|local\|all` | Konfigurationsbereich wählen; `all` gilt für die Deinstallation |
+| `--scope user\|project\|local\|all` | Den Konfigurationsbereich auswählen; `all` ist für die Deinstallation |
| `--beta` | Beta-Richtlinien einschließen |
-| `--custom`, `-c ` | Benutzerdefinierte Richtliniendatei validieren und laden; wiederholbar |
+| `--custom`, `-c ` | Eine benutzerdefinierte Richtliniendatei validieren und laden; wiederholbar |
-## Liefer- und Wartungsflags
+## Übermittlungs- und Wartungsflags
| Befehl | Flags |
| --- | --- |
@@ -97,9 +102,9 @@ failproofai harness remove-path
Unterstützte Harness-Namen sind `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` und `goose`.
-Labels versehen abgeleitete Agenten-IDs mit einem Namensraum, wenn zwei Wurzelverzeichnisse Kopien desselben Projekts enthalten. Überlappende Wurzeln und doppelte Labels werden abgelehnt, um doppelte Erfassung oder Cursor-Korruption zu verhindern. Die Konfiguration zusätzlicher Pfade wird ohne Daemon-Neustart neu geladen.
+Labels versehen abgeleitete Agent-IDs mit einem Namensraum, wenn zwei Stammverzeichnisse Kopien desselben Projekts enthalten. Überlappende Stammverzeichnisse und doppelte Labels werden abgelehnt, um doppelte Erfassung oder Cursor-Korruption zu verhindern. Die Konfiguration zusätzlicher Pfade wird ohne Daemon-Neustart neu geladen.
-Container-Umgebungen können dateibasiert konfigurierte zusätzliche Pfade durch eine kommagetrennte Variable namens `FAILPROOFAI__EXTRA_PATHS` ersetzen, zum Beispiel:
+Container-Umgebungen können dateibasierte Zusatzpfade durch eine kommagetrennte Variable namens `FAILPROOFAI__EXTRA_PATHS` ersetzen, zum Beispiel:
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
@@ -112,21 +117,23 @@ Verwende Konfigurationsdateien für dauerhaftes Maschinenverhalten. Umgebungsvar
| Variable | Verwendung |
| --- | --- |
| `FAILPROOFAI_HOME` | Das vollständige `~/.failproofai`-Layout verschieben |
-| `FAILPROOFAI_LOG_LEVEL` | Lokale Protokollierungsdetails festlegen |
-| `FAILPROOFAI_HOOK_LOG_FILE` | Hook-Diagnosen in eine ausgewählte Datei schreiben |
+| `FAILPROOFAI_LOG_LEVEL` | Lokale Protokollierungsausführlichkeit einstellen |
+| `FAILPROOFAI_HOOK_LOG_FILE` | Hook-Diagnosedaten in eine ausgewählte Datei schreiben |
| `FAILPROOFAI_TELEMETRY_DISABLED=1` | Anonyme Telemetrie für diesen Prozess deaktivieren |
-| `FAILPROOFAI_NO_FIRST_RUN=1` | Interaktives Ersteinrichtungs-Setup überspringen |
-| `FAILPROOFAI_NO_AUTO_AUDIT=1` | Lokalen Audit nach dem Setup überspringen |
+| `FAILPROOFAI_NO_FIRST_RUN=1` | Interaktive Ersteinrichtung überspringen |
+| `FAILPROOFAI_NO_AUTO_AUDIT=1` | Lokalen Audit nach der Einrichtung überspringen |
| `FAILPROOFAI_LLM_BASE_URL` | Den von LLM-Richtlinien verwendeten OpenAI-kompatiblen Endpunkt überschreiben |
-| `FAILPROOFAI_LLM_API_KEY` | Den von LLM-Richtlinien verwendeten API-Schlüssel bereitstellen |
+| `FAILPROOFAI_LLM_API_KEY` | Den von LLM-Richtlinien verwendeten API-Schlüssel angeben |
| `FAILPROOFAI_LLM_MODEL` | Das von LLM-Richtlinien verwendete Modell auswählen |
-| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Ladezeit benutzerdefinierter Richtlinienmodule begrenzen |
+| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Das Laden benutzerdefinierter Richtlinienmodule zeitlich begrenzen |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Das Abrufen von Packs und Daemon-Binaries ablehnen; bereits Installiertes wird weiter durchgesetzt |
+| `FAILPROOFAI_PACK_BASE_URL` | Packs von einem Spiegel statt von `github.com` abrufen |
| `FAILPROOFAI__EXTRA_PATHS` | Konfigurierte zusätzliche Erfassungspfade für einen Harness ersetzen |
-| `NO_COLOR` | Farbige Terminal-Ausgabe deaktivieren |
+| `NO_COLOR` | Farbige Terminalausgabe deaktivieren |
-Agentenspezifische Home-Variablen wie `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` und `OPENCLAW_HOME` überschreiben, wo Failproof AI lokale Sitzungen für diesen Harness erkennt.
+Agenten-spezifische Home-Variablen wie `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` und `OPENCLAW_HOME` überschreiben, wo Failproof AI lokale Sitzungen für diesen Harness erkennt.
-## Maschine sicher pausieren oder entfernen
+## Eine Maschine sicher pausieren oder entfernen
```bash
failproofai config --pause
@@ -136,7 +143,7 @@ failproofai config --resume
Eine lokale Sitzungspause deaktiviert keine Cloud-verwalteten Richtlinien. Stelle Cloud-Deployments über den Cloud-Enforcement-Workflow wieder her, wenn das Rollout selbst das Problem ist.
-Bevor du das npm-Paket entfernst, entferne die installierten Hooks und den Daemon:
+Bevor das npm-Paket entfernt wird, installierte Hooks und den Daemon entfernen:
```bash
failproofai uninstall --dry-run
@@ -144,8 +151,8 @@ failproofai uninstall --yes
npm rm -g failproofai
```
-Führe `failproofai --help` für versionsspezifische Details aus.
+Führe `failproofai --help` aus, um versionsspezifische Details zu erhalten.
- Führe `failproofai uninstall` vor `npm rm -g failproofai` aus; npm entfernt keine installierten Agenten-Hooks oder den Daemon-Dienst.
+ Führe `failproofai uninstall` vor `npm rm -g failproofai` aus; npm entfernt weder installierte Agent-Hooks noch den Daemon-Dienst.
\ No newline at end of file
diff --git a/docs/de/start/quickstart.mdx b/docs/de/start/quickstart.mdx
index 515080a8..37dacf98 100644
--- a/docs/de/start/quickstart.mdx
+++ b/docs/de/start/quickstart.mdx
@@ -1,12 +1,12 @@
---
title: "Quickstart"
-description: "Erfasse eine Agent-Session, finde einen Fehler und verhindere ihn."
+description: "Zeichne eine Agentensitzung auf, finde einen Fehler und verhindere ihn künftig."
icon: "zap"
---
-Dieser Quickstart richtet eine Maschine zum Melden von Sessions ein, führt ein Audit durch und stellt eine Policy bereit. Nutze die Skill-Option oder folge den manuellen Schritten.
+Dieser Quickstart richtet eine Maschine für das Melden von Sitzungen ein, führt ein Audit durch und stellt eine Policy bereit. Nutze den Skill, um Failproof einzurichten, oder folge den manuellen Schritten.
-**Welcher Weg ist deiner?** Wenn dein Agent in einem der 12 unterstützten [Harnesses](/de/reference/harnesses) läuft — einer Coding-CLI oder einem Gateway wie Hermes oder OpenClaw — folge den Schritten unten; du benötigst Node.js 20.9 oder neuer. Wenn dein Agent kein Harness hat, instrumentiere ihn mit dem [Python SDK](/de/reference/custom-agents) für Tracing und Audits und steig dann bei [Ersten Fehlercheck ausführen](/de/start/first-audit) wieder ein; für Durchsetzung auf diesem Weg ist ein Hook in deiner Runtime erforderlich.
+**Welcher Weg passt zu dir?** Wenn dein Agent in einem der 12 unterstützten [Harnesses](/de/reference/harnesses) läuft — einem Coding-CLI oder einem Gateway wie Hermes oder OpenClaw — folge den nachstehenden Schritten; du benötigst Node.js 20.9 oder neuer. Wenn dein Agent kein Harness hat, instrumentiere ihn mit dem [Python SDK](/de/reference/custom-agents) für Tracing und Audits und steige dann bei [Führe deine erste Fehlerprüfung durch](/de/start/first-audit) wieder ein; Enforcement auf diesem Weg erfordert einen Hook in deiner Runtime.
@@ -16,27 +16,27 @@ Dieser Quickstart richtet eine Maschine zum Melden von Sessions ein, führt ein
npx skills add FailproofAI/skills
```
-
+
```text
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- Dein Agent analysiert das Projekt, wählt die passende Integration, führt das Setup durch und überprüft es. Siehe das [FailproofAI Skills-Repository](https://github.com/FailproofAI/skills) für einzelne Skills und erweiterte Installationsoptionen.
+ Dein Agent analysiert das Projekt, wählt die passende Integration, führt die Einrichtung durch und überprüft sie. Einzelne Skills und erweiterte Installationsoptionen findest du im [FailproofAI Skills-Repository](https://github.com/FailproofAI/skills).
-
- ## Bevor du beginnst
+
+ ## Voraussetzungen
-1. Öffne das [Failproof AI Dashboard](https://app.befailproof.ai) und erstelle ein Konto oder melde dich mit deiner Arbeits-E-Mail an.
-2. Gehe zu **Administration → Keys** und erstelle einen Key mit `events:add` und `policies:pull`.
-3. Kopiere das Einmal-Secret und speichere es auf der Zielmaschine:
+1. Öffne das [Failproof AI Dashboard](https://app.befailproof.ai) und erstelle ein Konto oder melde dich mit deiner geschäftlichen E-Mail-Adresse an.
+2. Gehe zu **Administration → Keys** und erstelle einen Schlüssel mit `events:add` und `policies:pull`.
+3. Kopiere das einmalige Secret und speichere es auf der Zielmaschine:
```bash
export FAILPROOFAI_KEY=""
```
- ## Installieren
+ ## Installation
@@ -45,9 +45,9 @@ export FAILPROOFAI_KEY=""
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- Session-Transkripte werden standardmäßig übertragen. Füge `--no-transcripts` hinzu, um Hook-Aktivitäten und Policy-Entscheidungen ohne Transkriptinhalte zu melden.
+ Sitzungstranskripte werden standardmäßig übertragen. Füge `--no-transcripts` hinzu, um Hook-Aktivitäten und Policy-Entscheidungen ohne Transkriptinhalt zu melden.
- Falls diese Maschine bereits Agent-Verlaufsdaten hat, zeige die letzten sieben Tage in der Vorschau an und importiere sie, dann warte bis die Übertragung abgeschlossen ist. Überspringe diesen Schritt auf einer neuen Maschine.
+ Wenn auf dieser Maschine bereits Agentenhistorie vorhanden ist, kannst du die letzten sieben Tage vorab anzeigen und importieren — warte anschließend, bis die Übertragung abgeschlossen ist. Überspringe diesen Schritt auf einer neuen Maschine.
```bash
failproofai backfill --since 7d --dry-run
@@ -55,30 +55,30 @@ export FAILPROOFAI_KEY=""
failproofai flush --wait
```
- Öffne **Sessions** in Failproof AI und wähle eine importierte Session aus.
+ Öffne **Sessions** in Failproof AI und wähle eine importierte Sitzung aus.
-
- Dadurch wird Failproof AI mit deinem Harness verbunden und die 40 integrierten Policies werden installiert. Nutze sie, um lokale Policy-Entscheidungen zu sehen und Durchsetzung auszuprobieren, bevor Failproof AI deine Sessions auditiert und Policies für deine Agents schreibt.
+
+ Damit wird Failproof AI an dein Harness angebunden und die 39 integrierten Policies werden installiert. Nutze sie, um lokale Policy-Entscheidungen zu beobachten und Enforcement auszuprobieren, bevor Failproof AI deine Sitzungen prüft und Policies für deine Agenten erstellt.
- Lass den Installer dein Harness erkennen oder gib eines explizit an. Jedes der 12 ist ein gültiger `--cli`-Wert — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
+ Lass den Installer dein Harness automatisch erkennen oder gib eines explizit an. Alle 12 sind gültige `--cli`-Werte — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
```bash
- failproofai policies --install --cli claude --scope user # eine Coding-CLI
+ failproofai policies --install --cli claude --scope user # ein Coding-CLI
failproofai policies --install --cli hermes --scope user # ein Slack/Telegram-Gateway
```
- Das Blockieren eines Tool-Calls vor der Ausführung wird auf allen 12 unterstützt. Turn-End-Gates werden auf 8 unterstützt — siehe [Durchsetzungsfähigkeit](/de/reference/harnesses#enforcement-capability) für die Harness-spezifische Matrix.
+ Das Blockieren eines Tool-Calls vor seiner Ausführung ist für alle 12 verifiziert. Turn-End-Gates sind für 8 verifiziert — die harnessspezifische Matrix findest du unter [Enforcement-Fähigkeit](/de/reference/harnesses#enforcement-capability).
- Folge [Ersten Fehlercheck ausführen](/de/start/first-audit). Nutze ein konkretes Ziel, zum Beispiel: „Sessions finden, in denen der Agent einen fehlschlagenden Tool-Call erneut versucht hat, ohne seinen Ansatz zu ändern."
+ Folge [Führe deine erste Fehlerprüfung durch](/de/start/first-audit). Verwende ein konkretes Ziel, z. B. „Sitzungen finden, in denen der Agent ein fehlgeschlagenes Tool ohne Änderung des Ansatzes erneut aufgerufen hat."
- Folge [Ersten Fehler mit einer Policy verhindern](/de/start/first-policy). Starte im Beobachtungsmodus, prüfe Treffer und setze dann die überprüfte Version durch.
+ Folge [Verhindere deinen ersten Fehler mit einer Policy](/de/start/first-policy). Beginne im Beobachtungsmodus, prüfe Treffer und setze die überarbeitete Version dann durch.
- Führe `failproofai config --status` aus. Ein gesundes Setup meldet die Cloud-Verbindung, den Daemon-Status und ob die Durchsetzung pausiert ist.
+ Führe `failproofai config --status` aus. Eine gesunde Einrichtung meldet die Cloud-Verbindung, den Daemon-Status und ob Enforcement pausiert ist.
\ No newline at end of file
diff --git a/docs/docs.json b/docs/docs.json
index 81034e0a..cda19dd2 100644
--- a/docs/docs.json
+++ b/docs/docs.json
@@ -323,6 +323,8 @@
"zh/policies/builtin",
"zh/policies/builtin-catalog",
"zh/policies/custom",
+ "zh/policies/packs",
+ "zh/policies/publish-a-pack",
"zh/policies/local-configuration",
"zh/policies/editor",
"zh/policies/deploy",
@@ -477,6 +479,8 @@
"ja/policies/builtin",
"ja/policies/builtin-catalog",
"ja/policies/custom",
+ "ja/policies/packs",
+ "ja/policies/publish-a-pack",
"ja/policies/local-configuration",
"ja/policies/editor",
"ja/policies/deploy",
@@ -631,6 +635,8 @@
"ko/policies/builtin",
"ko/policies/builtin-catalog",
"ko/policies/custom",
+ "ko/policies/packs",
+ "ko/policies/publish-a-pack",
"ko/policies/local-configuration",
"ko/policies/editor",
"ko/policies/deploy",
@@ -785,6 +791,8 @@
"es/policies/builtin",
"es/policies/builtin-catalog",
"es/policies/custom",
+ "es/policies/packs",
+ "es/policies/publish-a-pack",
"es/policies/local-configuration",
"es/policies/editor",
"es/policies/deploy",
@@ -939,6 +947,8 @@
"pt-br/policies/builtin",
"pt-br/policies/builtin-catalog",
"pt-br/policies/custom",
+ "pt-br/policies/packs",
+ "pt-br/policies/publish-a-pack",
"pt-br/policies/local-configuration",
"pt-br/policies/editor",
"pt-br/policies/deploy",
@@ -1093,6 +1103,8 @@
"de/policies/builtin",
"de/policies/builtin-catalog",
"de/policies/custom",
+ "de/policies/packs",
+ "de/policies/publish-a-pack",
"de/policies/local-configuration",
"de/policies/editor",
"de/policies/deploy",
@@ -1247,6 +1259,8 @@
"fr/policies/builtin",
"fr/policies/builtin-catalog",
"fr/policies/custom",
+ "fr/policies/packs",
+ "fr/policies/publish-a-pack",
"fr/policies/local-configuration",
"fr/policies/editor",
"fr/policies/deploy",
@@ -1401,6 +1415,8 @@
"ru/policies/builtin",
"ru/policies/builtin-catalog",
"ru/policies/custom",
+ "ru/policies/packs",
+ "ru/policies/publish-a-pack",
"ru/policies/local-configuration",
"ru/policies/editor",
"ru/policies/deploy",
@@ -1555,6 +1571,8 @@
"hi/policies/builtin",
"hi/policies/builtin-catalog",
"hi/policies/custom",
+ "hi/policies/packs",
+ "hi/policies/publish-a-pack",
"hi/policies/local-configuration",
"hi/policies/editor",
"hi/policies/deploy",
@@ -1709,6 +1727,8 @@
"tr/policies/builtin",
"tr/policies/builtin-catalog",
"tr/policies/custom",
+ "tr/policies/packs",
+ "tr/policies/publish-a-pack",
"tr/policies/local-configuration",
"tr/policies/editor",
"tr/policies/deploy",
@@ -1863,6 +1883,8 @@
"vi/policies/builtin",
"vi/policies/builtin-catalog",
"vi/policies/custom",
+ "vi/policies/packs",
+ "vi/policies/publish-a-pack",
"vi/policies/local-configuration",
"vi/policies/editor",
"vi/policies/deploy",
@@ -2017,6 +2039,8 @@
"it/policies/builtin",
"it/policies/builtin-catalog",
"it/policies/custom",
+ "it/policies/packs",
+ "it/policies/publish-a-pack",
"it/policies/local-configuration",
"it/policies/editor",
"it/policies/deploy",
@@ -2171,6 +2195,8 @@
"ar/policies/builtin",
"ar/policies/builtin-catalog",
"ar/policies/custom",
+ "ar/policies/packs",
+ "ar/policies/publish-a-pack",
"ar/policies/local-configuration",
"ar/policies/editor",
"ar/policies/deploy",
@@ -2325,6 +2351,8 @@
"he/policies/builtin",
"he/policies/builtin-catalog",
"he/policies/custom",
+ "he/policies/packs",
+ "he/policies/publish-a-pack",
"he/policies/local-configuration",
"he/policies/editor",
"he/policies/deploy",
diff --git a/docs/es/policies/builtin-catalog.mdx b/docs/es/policies/builtin-catalog.mdx
index bf487d57..64178e91 100644
--- a/docs/es/policies/builtin-catalog.mdx
+++ b/docs/es/policies/builtin-catalog.mdx
@@ -1,37 +1,41 @@
---
title: "Catálogo de políticas integradas"
-description: "Consulta cada política integrada de Failproof AI, su activador, estado recomendado y parámetros configurables."
+description: "Revisa todas las políticas integradas de Failproof AI, su disparador, estado recomendado y parámetros configurables."
icon: "list-checks"
---
-El paquete instalado es la fuente de verdad para la disponibilidad de políticas. Ejecuta `failproofai policies` después de cada actualización, ya que las entradas del catálogo y el comportamiento pueden cambiar con la versión del paquete.
+El paquete instalado es la fuente de verdad para la disponibilidad de políticas. Ejecuta `failproofai policies` tras cada actualización, ya que las entradas del catálogo y el comportamiento pueden cambiar con la versión del paquete.
## Línea base recomendada
-La selección recomendada del asistente de configuración guiada activa actualmente los sanitizadores de secretos, las protecciones de entorno, la autoprotección, las salvaguardas de comandos catastróficos y la seguridad de ramas protegidas:
+La selección recomendada por la configuración guiada activa actualmente los sanitizadores de secretos, las protecciones de entorno, la autoprotección, las defensas contra comandos catastróficos y la seguridad de ramas protegidas:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-La configuración recomendada es deliberadamente más restrictiva que **Todo**. Las políticas de infraestructura y flujo de trabajo pueden interrumpir trabajo válido, por lo que deben habilitarse únicamente en los repositorios y máquinas que las necesiten.
+`block-failproofai-commands` está **siempre activo**. Se incluye arriba por
+completitud, pero se registra en cada evaluación independientemente de si aparece en
+tu conjunto habilitado, y no puede desactivarse ni pausarse — una protección contra
+que el agente desactive la aplicación que el propio agente puede desactivar no es una protección.
+
+La selección recomendada es deliberadamente más acotada que **Todo**. Las políticas de infraestructura y flujo de trabajo pueden interrumpir trabajo válido, y deben habilitarse únicamente en los repositorios y máquinas que las necesiten.
## Secretos y entorno
-| Política | Activador | Resultado |
+| Política | Disparador | Resultado |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | Redacta los JWT de la salida de la herramienta antes de que el modelo los procese. |
+| `sanitize-jwt` | `PostToolUse` | Redacta JWTs de la salida de las herramientas antes de que el modelo los vea. |
| `sanitize-api-keys` | `PostToolUse` | Redacta claves comunes de OpenAI, Anthropic, GitHub, AWS, Stripe y Google. |
| `sanitize-connection-strings` | `PostToolUse` | Redacta cadenas de conexión a bases de datos que contengan credenciales. |
| `sanitize-private-key-content` | `PostToolUse` | Redacta cuerpos de claves privadas PEM. |
-| `sanitize-bearer-tokens` | `PostToolUse` | Redacta tokens bearer de autorización. |
+| `sanitize-bearer-tokens` | `PostToolUse` | Redacta tokens de autorización de tipo bearer. |
| `protect-env-vars` | `PreToolUse` en herramientas de shell | Bloquea comandos que vuelcan variables de entorno. |
| `block-env-files` | `PreToolUse` | Bloquea lecturas y escrituras de archivos `.env`. |
| `block-read-outside-cwd` | `PreToolUse` en herramientas de lectura, glob, grep o shell | Restringe las lecturas al directorio de trabajo de la sesión. |
@@ -39,60 +43,59 @@ La configuración recomendada es deliberadamente más restrictiva que **Todo**.
## Comandos peligrosos e infraestructura
-| Política | Activador | Resultado |
+| Política | Disparador | Resultado |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | Impide que un agente pause su propia aplicación de políticas. |
-| `block-sudo` | `PreToolUse`, `PermissionRequest` | Bloquea `sudo` salvo que coincida un patrón de lista de permitidos. |
-| `block-curl-pipe-sh` | `PreToolUse` | Bloquea scripts descargados que se redirigen directamente a un shell. |
-| `block-rm-rf` | `PreToolUse` | Bloquea patrones de eliminación recursiva catastrófica. |
-| `block-failproofai-commands` | `PreToolUse` | Impide que los agentes modifiquen o desinstalen Failproof AI. |
-| `block-kubectl` | `PreToolUse` | Controla los comandos de Kubernetes. |
-| `block-terraform` | `PreToolUse` | Controla los comandos de Terraform y OpenTofu. |
-| `block-aws-cli` | `PreToolUse` | Controla los comandos de la CLI de AWS. |
-| `block-gcloud` | `PreToolUse` | Controla los comandos de la CLI de Google Cloud. |
-| `block-az-cli` | `PreToolUse` | Controla los comandos de la CLI de Azure. |
-| `block-helm` | `PreToolUse` | Controla los comandos de Helm. |
-| `block-gh-pipeline` | `PreToolUse` | Controla las operaciones mutantes de workflow, run, merge, release, cache y secret de la CLI de GitHub. |
+| `block-sudo` | `PreToolUse`, `PermissionRequest` | Bloquea `sudo` salvo que coincida un patrón de permiso. |
+| `block-curl-pipe-sh` | `PreToolUse` | Bloquea scripts descargados y canalizados directamente a un shell. |
+| `block-rm-rf` | `PreToolUse` | Bloquea patrones de eliminación recursiva catastróficos. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **Siempre activo, no puede desactivarse.** Bloquea toda invocación del CLI de Failproof AI, autopausas y desinstalaciones mediante gestores de paquetes. |
+| `block-kubectl` | `PreToolUse` | Controla comandos de Kubernetes. |
+| `block-terraform` | `PreToolUse` | Controla comandos de Terraform y OpenTofu. |
+| `block-aws-cli` | `PreToolUse` | Controla comandos del CLI de AWS. |
+| `block-gcloud` | `PreToolUse` | Controla comandos del CLI de Google Cloud. |
+| `block-az-cli` | `PreToolUse` | Controla comandos del CLI de Azure. |
+| `block-helm` | `PreToolUse` | Controla comandos de Helm. |
+| `block-gh-pipeline` | `PreToolUse` | Controla operaciones mutantes del CLI de GitHub: workflow, run, merge, release, cache y secret. |
## Seguridad en Git y bases de datos
-| Política | Activador | Resultado |
+| Política | Disparador | Resultado |
| --- | --- | --- |
-| `block-push-master` | `PreToolUse` | Bloquea los push directos a las ramas protegidas configuradas. |
-| `block-force-push` | `PreToolUse` | Bloquea los force-push; `--force-with-lease` sigue estando permitido por la implementación actual. |
+| `block-push-master` | `PreToolUse` | Bloquea pushes directos a las ramas protegidas configuradas. |
+| `block-force-push` | `PreToolUse` | Bloquea los force-pushes; `--force-with-lease` sigue siendo permitido por la implementación actual. |
| `block-work-on-main` | `PreToolUse` | Bloquea commits y merges en ramas protegidas. |
| `warn-git-amend` | `PreToolUse` | Advierte antes de reescribir un commit con `--amend`. |
| `warn-git-stash-drop` | `PreToolUse` | Advierte antes de eliminar o limpiar stashes de forma permanente. |
-| `warn-all-files-staged` | `PreToolUse` | Advierte sobre `git add -A`, `git add .` o `git add --all` de amplio alcance. |
-| `warn-destructive-sql` | `PreToolUse` | Advierte sobre `DROP`, `TRUNCATE` y `DELETE` sin `WHERE` a través de clientes de base de datos reconocidos. |
-| `warn-schema-alteration` | `PreToolUse` | Advierte sobre operaciones reconocidas de `ALTER TABLE` en columnas y renombrados. |
+| `warn-all-files-staged` | `PreToolUse` | Advierte ante el uso amplio de `git add -A`, `git add .` o `git add --all`. |
+| `warn-destructive-sql` | `PreToolUse` | Advierte ante `DROP`, `TRUNCATE` y `DELETE` sin `WHERE` en clientes de base de datos reconocidos. |
+| `warn-schema-alteration` | `PreToolUse` | Advierte ante operaciones reconocidas de `ALTER TABLE` para columnas y renombrados. |
## Paquetes, comportamiento del sistema y bucles de agente
-| Política | Activador | Resultado |
+| Política | Disparador | Resultado |
| --- | --- | --- |
| `warn-package-publish` | `PreToolUse` | Advierte antes de publicar en registros de paquetes. |
| `warn-global-package-install` | `PreToolUse` | Advierte antes de instalar paquetes de forma global. |
| `prefer-package-manager` | `PreToolUse` | Instruye al agente para que use un gestor de paquetes permitido. |
| `warn-large-file-write` | `PreToolUse` en herramientas de escritura | Advierte cuando se supera el umbral de tamaño de archivo configurado. |
-| `warn-background-process` | `PreToolUse` | Advierte sobre patrones de procesos en segundo plano desvinculados o de larga duración. |
+| `warn-background-process` | `PreToolUse` | Advierte ante patrones de procesos en segundo plano desacoplados o de larga duración. |
| `warn-repeated-tool-calls` | `PreToolUse` | Advierte tras tres o más llamadas idénticas a una herramienta. |
-## Flujo de trabajo al finalizar la tarea
+## Flujo de trabajo al final de la tarea
Estas políticas requieren un harness que emita un evento `Stop` compatible.
| Política | Resultado |
| --- | --- |
| `require-commit-before-stop` | Rechaza la finalización mientras haya trabajo rastreado sin confirmar. |
-| `require-push-before-stop` | Rechaza la finalización mientras haya commits que solo existen en local. |
-| `require-pr-before-stop` | Requiere una pull request para la rama actual. |
+| `require-push-before-stop` | Rechaza la finalización mientras haya commits solo en local. |
+| `require-pr-before-stop` | Requiere un pull request para la rama actual. |
| `require-no-conflicts-before-stop` | Requiere un merge limpio contra la rama base configurada. |
-| `require-ci-green-before-stop` | Requiere que las comprobaciones de CI del HEAD actual se completen satisfactoriamente. |
+| `require-ci-green-before-stop` | Requiere que las comprobaciones de CI del HEAD actual finalicen con éxito. |
## Referencia de parámetros
-Configura los parámetros en el objeto `policyParams` del ámbito seleccionado. Los tipos son validados por cada política.
+Configura los parámetros en el objeto `policyParams` del scope seleccionado. Los tipos son validados por cada política.
| Política | Parámetro | Tipo y valor por defecto |
| --- | --- | --- |
@@ -125,5 +128,5 @@ Configura los parámetros en el objeto `policyParams` del ámbito seleccionado.
```
- Un patrón de lista de permitidos amplía lo que un agente puede hacer. Prueba la tokenización exacta y las variantes de comando en el harness de destino antes de desplegarlo en toda una flota.
+ Un patrón de permiso amplía lo que un agente puede hacer. Prueba la tokenización exacta y las variantes de comandos en el harness de destino antes de desplegarlo en una flota.
\ No newline at end of file
diff --git a/docs/es/policies/failure-behavior.mdx b/docs/es/policies/failure-behavior.mdx
index 71f66620..50344625 100644
--- a/docs/es/policies/failure-behavior.mdx
+++ b/docs/es/policies/failure-behavior.mdx
@@ -1,19 +1,19 @@
---
title: "Comportamiento ante fallos"
-description: "Entiende qué ocurre cuando la evaluación de políticas o el daemon local no están disponibles."
+description: "Entiende qué sucede cuando la evaluación de políticas o el daemon local no están disponibles."
icon: "shield-alert"
---
-Failproof AI está diseñado para que un fallo de aplicación sea visible en lugar de permitir silenciosamente trabajo riesgoso.
+Failproof AI está diseñado para que un fallo de aplicación sea visible, en lugar de permitir silenciosamente trabajo riesgoso.
## Diagnosticar un bloqueo por fallo cerrado
-
+
1. Ve a **Admin → enforcement** y abre la máquina.
- 2. Verifica su último registro de actividad, el despliegue asignado y el despliegue reportado.
+ 2. Revisa su último registro de entrada, el despliegue asignado y el despliegue reportado.
3. Ve a **Observe → policy** y abre la sesión de la decisión denegada.
- 4. Confirma si el motivo indica problemas de alcanzabilidad del daemon, diferencia de versiones o la propia política.
+ 4. Confirma si el motivo reporta inaccesibilidad del daemon, desajuste de versión o la política en sí.
@@ -23,21 +23,45 @@ Failproof AI está diseñado para que un fallo de aplicación sea visible en lug
failproofai config
```
- Volver a ejecutar `failproofai config` actualiza y reinicia el daemon tras actualizar el paquete.
+ Volver a ejecutar `failproofai config` actualiza y reinicia el daemon tras una actualización del paquete.
-En una máquina configurada para usar `failproofaid`, el daemon es el único evaluador. Si no es alcanzable o su versión de protocolo no coincide con la del CLI, la evaluación de hooks falla de forma cerrada. La acción se deniega con un motivo que indica al operador que verifique o actualice el daemon.
+En una máquina configurada para usar `failproofaid`, el daemon es el único evaluador. Si no es accesible o su versión de protocolo no coincide con la CLI, la evaluación del hook falla en modo cerrado. La acción se deniega con un motivo que indica al operador que verifique o actualice el daemon.
-Antes de la configuración del daemon, los hooks evalúan las políticas en proceso. Una vez que la configuración del daemon queda registrada, Failproof AI no recurre silenciosamente a un segundo evaluador cuando el daemon falla.
+Antes de configurar el daemon, los hooks evalúan las políticas en proceso. Una vez que la configuración del daemon queda registrada, Failproof AI no recurre silenciosamente a un segundo evaluador cuando el daemon falla.
-## Responder ante una decisión de fallo cerrado
+## Responder a una decisión de fallo cerrado
1. Ejecuta `failproofai config --status`.
2. Si las versiones difieren, vuelve a ejecutar `failproofai config` después de actualizar el paquete.
-3. Si el daemon no es alcanzable, inspecciona el estado de su servicio y los registros locales.
-4. Reanuda el trabajo del agente solo después de confirmar que la ruta de evaluación de políticas está funcionando correctamente.
+3. Si el daemon no es accesible, inspecciona el estado de su servicio y los logs locales.
+4. Reanuda el trabajo del agente solo después de confirmar que la ruta de evaluación de políticas conocida está en buen estado.
- No reintentes repetidamente la acción bloqueada. Una respuesta de fallo cerrado significa que el sistema no pudo determinar que la acción era segura.
-
\ No newline at end of file
+ No reintentes repetidamente la acción bloqueada. Una respuesta de fallo cerrado significa que el sistema no pudo establecer que la acción era segura.
+
+
+## Un pack no carga
+
+Una máquina a la que se le indicó aplicar un pack, y no puede ejecutarlo, deniega en lugar de continuar silenciosamente. El disparador es una **expectativa registrada**, nunca una vacía: una máquina sin packs instalados permanece en silencio, mientras que un pack que está declarado y no se puede resolver — o que registra menos de lo que declara su manifiesto — deniega.
+
+La denegación es **acotada**, a diferencia de un daemon inaccesible. Un daemon que no puede alcanzarse significa que no se realizó ninguna evaluación, por lo que nada puede considerarse seguro. Un pack que no carga tiene un conjunto enumerable de guardas faltantes, ya que cada política declarada lleva su propio `match` — por lo tanto, deniega solo los eventos y herramientas que esas políticas cubrían, y todo lo demás continúa.
+
+No se activa para:
+
+- un pack de `observe`, que evalúa y descarta por construcción
+- políticas que nunca tomaste, o que desactivaste explícitamente
+- un pack que el cargador nunca recibió, donde "sin registros" no se puede distinguir de una omisión deliberada
+- una pausa de sesión activa
+- un tiempo de espera de carga, que es transitorio — un momento de disco lento no debe denegar hasta que intervenga un humano
+
+`UserPromptSubmit` **instructs** en lugar de denegar, independientemente de lo que declarara la política faltante. Una denegación general lo incluiría y te dejaría sin acceso al agente que podría solucionar el problema.
+
+### Qué hacer
+
+```bash
+failproofai pack list
+```
+
+Nombra cualquier pack instalado que no cargue, indica el motivo y termina con código distinto de cero. Luego reinstálalo (`failproofai pack add `) o elimínalo (`failproofai pack remove `) — eliminarlo retira la expectativa, y la denegación cesa con ella.
\ No newline at end of file
diff --git a/docs/es/policies/packs.mdx b/docs/es/policies/packs.mdx
new file mode 100644
index 00000000..5e862d13
--- /dev/null
+++ b/docs/es/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "Paquetes de políticas"
+description: "Instala un conjunto de políticas publicadas como una versión de GitHub y gestiona lo que se aplica."
+icon: "package"
+---
+
+Un paquete es un conjunto de políticas publicadas como una versión de GitHub. Un solo comando lo instala, los checksums propios de la versión se verifican antes de ejecutar nada, y el digest queda registrado para que el paquete no pueda cambiar en tu máquina posteriormente.
+
+## Instalar las políticas de Failproof AI
+
+```bash
+failproofai pack add core
+```
+
+Esto instala el conjunto que publicamos, desde la copia incluida en el paquete npm, por lo que no necesita red y no puede fallar detrás de un proxy. Puedes instalar solo una parte:
+
+```bash
+failproofai pack add core --policy block-rm-rf # una, o varias separadas por comas
+failproofai pack add core --category dangerous-commands # una categoría completa
+failproofai pack add core --all # todo lo que contiene
+```
+
+`failproofai pack list` muestra todas las categorías que ofrece el paquete.
+
+## Ver qué contiene un paquete antes de instalarlo
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+Lista todas las políticas del paquete, agrupadas por categoría, indicando cuáles activa su autor por defecto y cuáles son opcionales. Solo lee el **manifiesto** — el artefacto principal nunca se descarga ni se importa, así que consultar el paquete de un desconocido no puede ejecutar código ajeno. El manifiesto se verifica igualmente contra el archivo `SHA256SUMS` de la versión, de modo que lo que estás leyendo es exactamente lo que se instalaría.
+
+`failproofai pack list` sin ningún argumento lista los paquetes ya instalados en esta máquina.
+
+## Instalar el paquete de otra persona
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Cualquiera de estas formas funciona — pega la que tengas a mano:
+
+| Origen | Resultado |
+| --- | --- |
+| `acme/support-agent` | Versión más reciente, **fijada** al tag exacto que se resolvió |
+| `acme/support-agent@v2.1.0` | Esa versión concreta |
+| `github:acme/support-agent@v2.1.0` | Lo mismo, escrito de forma explícita |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | Lo mismo, copiado desde el navegador |
+
+Si no se especifica ningún tag, se instala la versión más reciente **y se fija**, informándote del tag elegido. Lo que queda registrado siempre nombra exactamente una versión, así que una reinstalación no puede derivar.
+
+## Instalar solo una parte de un paquete
+
+Por defecto obtienes los **propios** valores predeterminados del paquete — las políticas que su autor marcó como seguras para activar sin supervisión — no todo lo que contiene.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` y `--policy` se combinan como unión (`--only` se acepta como sinónimo de `--policy`). Al volver a añadir el paquete en una versión más reciente se conserva lo que elegiste en lugar de reactivar el resto.
+
+## Gestionar lo que está activo
+
+```bash
+failproofai policies # todas las fuentes en una lista, paquetes incluidos
+failproofai pack list # solo paquetes, agrupados por categoría
+failproofai policies --uninstall block-refunds # desactivar una política de paquete
+failproofai policies --install block-refunds # volver a activarla
+failproofai pack remove acme/support-agent
+```
+
+Un nombre sin prefijo hace referencia a la política **incorporada** si existe una con ese nombre. Especifica la copia de un paquete de forma explícita cuando lo necesites:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+Si un paquete incluye una política cuyo nombre coincide con un **incorporado habilitado**, el incorporado se ejecuta y la copia del paquete se omite — de lo contrario, la misma protección se evaluaría dos veces. Desactiva el incorporado para usar la copia del paquete en su lugar.
+
+
+## De dónde vienen las políticas de Failproof AI
+
+`core` lee la copia incluida en el paquete npm. El mismo conjunto se publica como una versión de GitHub, que es lo que se instala si quieres una versión específica:
+
+```bash
+failproofai pack add core # desde este paquete, sin red
+failproofai pack add FailproofAI/policies # el mismo conjunto, desde su versión de GitHub
+```
+
+## Qué garantiza la integridad y qué no
+
+`SHA256SUMS` se distribuye en la misma versión que el artefacto, por lo que **no** es una firma y no prueba nada sobre quién lo publicó. Lo que sí prueba es que los bytes son los que esa versión publicó — y como el digest se registra al añadir el paquete y se vuelve a verificar antes de cada importación, un paquete no puede cambiar en tu máquina posteriormente. Un repositorio que reetiquetar o reemplaza un asset deja de cargarse en lugar de ejecutar silenciosamente algo diferente.
+
+En el momento de la instalación, el paquete también se **importa una vez** y se verifica contra su propio manifiesto. Un paquete cuyo artefacto no se puede analizar, o que registra algo distinto a lo que declara, se rechaza antes de activar nada — en lugar de instalarse correctamente y fallar en tu siguiente llamada a una herramienta.
+
+## Cuándo un paquete no carga
+
+Un paquete que esta máquina tiene orden de aplicar y no puede ejecutar **deniega** los eventos cubiertos por sus políticas ausentes, en lugar de permitirlos silenciosamente. Consulta [Comportamiento ante fallos](/es/policies/failure-behavior). `failproofai pack list` identifica cualquier paquete en ese estado y termina con código de salida distinto de cero.
+
+## Sin conexión y mirrors
+
+| Variable | Efecto |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Rechaza cualquier descarga; los paquetes ya instalados siguen aplicándose |
+| `FAILPROOFAI_PACK_BASE_URL` | Redirige la descarga de paquetes a un mirror en lugar de `github.com` |
+
+Para publicar tu propio paquete, consulta [Publicar un paquete](/es/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/es/policies/publish-a-pack.mdx b/docs/es/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..915b02eb
--- /dev/null
+++ b/docs/es/policies/publish-a-pack.mdx
@@ -0,0 +1,91 @@
+---
+title: "Publicar un pack"
+description: "Distribuye tus propias políticas como una release de GitHub que cualquiera puede instalar."
+icon: "upload"
+---
+
+Un pack son tres archivos adjuntos a una release de GitHub. `failproofai pack build` genera los tres a partir de un archivo de políticas que ya tienes.
+
+## 1. Escribe las políticas
+
+Un solo archivo, usando la misma API que cualquier política personalizada. Dos campos adicionales son importantes para un pack:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+`defaultEnabled` es **false** por defecto cuando se omite. Un `failproofai pack add` simple solo activa lo que hayas marcado — instalar automáticamente todas las políticas de un desconocido no es una decisión que el instalador deba tomar por su usuario.
+
+
+La entrada debe ser **un único archivo autocontenido**. Solo la entrada tiene el digest fijado, por lo que un pack que importe archivos locales no podría garantizar honestamente que el digest cubre lo que se ejecuta. Primero empaqueta con (`esbuild`, `bun build`, `rollup`) y construye el pack desde el bundle — `pack build` rechaza una importación local en lugar de hacer una promesa que no puede cumplir.
+
+
+## 2. Construye los archivos de la release
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+Genera tres archivos y valida cada política con las **reglas propias del loader** antes — así un pack que nunca podría instalarse falla aquí, donde puedes corregirlo:
+
+| Archivo | Descripción |
+| --- | --- |
+| `failproofai-pack.json` | El manifiesto: id, versión, efecto y una entrada por política |
+| `failproofai-pack.mjs` | Tu entrada, tal cual |
+| `SHA256SUMS` | `` para los otros dos |
+
+Se rechaza en tiempo de construcción: un id que no sea `publisher/name`, un nombre de política que contenga `/`, una política que declare `alwaysOn`, una `description`, `category` o `match` ausente, una entrada que no registra nada, y una entrada que importa archivos locales.
+
+## 3. Adjúntalos a una release
+
+Etiqueta la release con la misma versión que construiste y adjunta los tres archivos como assets de la release:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+Ahora cualquiera puede instalarlo:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Los nombres de los assets son fijos — son los que la CLI del consumidor usa para construir sus URLs, sin llamadas a la API ni descubrimiento automático.
+
+## Publicar una nueva versión
+
+Construye con el nuevo `--version`, crea una nueva release, adjunta los tres assets nuevamente. Los consumidores ejecutan el mismo `pack add` y conservan el subconjunto que habían elegido; una política que desactivaron permanece desactivada tras la actualización.
+
+Cambiar el **nombre** de una política es un cambio incompatible: una máquina que la había desactivado está desactivando un nombre que ya no existe, y el nuevo nombre llega con lo que `defaultEnabled` indique.
+
+## En qué confían tus usuarios
+
+`SHA256SUMS` vive en la misma release que el artefacto, por lo que prueba que los bytes son los que publicaste — no quién eres. Cualquiera que pueda escribir en el repositorio puede escribir ambos archivos. La protección de tus usuarios es que el digest queda fijado al instalar, de modo que lo que publicaste no puede cambiar posteriormente.
+
+Publica desde un repositorio cuyo acceso de escritura controles, y trata una release de pack como si fuera la publicación de un paquete.
+
+## Observar antes de aplicar
+
+Un manifiesto puede declarar `"effect": "observe"`. Esas políticas se ejecutan y sus veredictos se **registran y descartan** — nada queda bloqueado. Es la forma de medir una nueva regla frente al tráfico real antes de que pueda interrumpir el trabajo de alguien.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/es/reference/failproof-cli.mdx b/docs/es/reference/failproof-cli.mdx
index 545f38cd..f481903a 100644
--- a/docs/es/reference/failproof-cli.mdx
+++ b/docs/es/reference/failproof-cli.mdx
@@ -1,12 +1,12 @@
---
title: "Failproof AI CLI"
-description: "Instala hooks, gestiona políticas locales, conecta a Cloud y opera el demonio local."
+description: "Instala hooks, gestiona políticas locales, conecta con Cloud y opera el daemon local."
icon: "terminal"
---
-Instala la CLI local con `npm install -g failproofai`. Ejecútala sin argumentos para abrir el panel de políticas local.
+Instala el CLI local con `npm install -g failproofai`. Ejecútalo sin argumentos para abrir el panel de políticas local.
-El paquete requiere Node.js 20.9 o superior. Bun 1.3 o superior es compatible para desarrollo e instalaciones desde fuente. `failproofai configure` y `failproofai setup` son alias de `failproofai config`; `failproofai p` es un alias de `failproofai policies`.
+El paquete requiere Node.js 20.9 o superior. Bun 1.3 o superior es compatible para desarrollo e instalaciones desde el código fuente. `failproofai configure` y `failproofai setup` son alias de `failproofai config`; `failproofai p` es un alias de `failproofai policies`.
## Configurar una máquina
@@ -25,59 +25,64 @@ Ejecuta `failproofai` sin argumentos para abrir el panel de políticas local.
| Comando | Resultado |
| --- | --- |
| `failproofai config` | Ejecuta la configuración interactiva de la máquina |
-| `failproofai config --connect --token ` | Conecta la ingesta Cloud y la entrega de políticas |
-| `failproofai config --status` | Muestra el estado de la conexión, el demonio, la entrega y la pausa |
-| `failproofai policies` | Lista las políticas integradas y personalizadas |
-| `failproofai policies --install` | Instala hooks y habilita políticas |
-| `failproofai policy add ` | Habilita una política integrada |
-| `failproofai policy remove ` | Deshabilita una política integrada |
-| `failproofai policies --uninstall` | Deshabilita políticas o elimina los hooks del harness |
-| `failproofai audit` | Analiza el historial local del agente y abre la vista de auditoría local |
-| `failproofai audit --schedule [days] --email ` | Programa análisis locales recurrentes y envía sus resultados por correo |
-| `failproofai audit --status` | Muestra la dirección del informe, el intervalo y el próximo análisis programado |
-| `failproofai audit --no-schedule` | Detiene los análisis recurrentes sin eliminar el historial de auditoría |
+| `failproofai config --connect --token ` | Conecta la ingesta de Cloud y la entrega de políticas |
+| `failproofai config --status` | Muestra el estado de conexión, daemon, entrega y pausa |
+| `failproofai policies` | Lista las políticas integradas, personalizadas, de convención, de pack y gestionadas por Cloud |
+| `failproofai policies --install` | Instala hooks y activa las políticas |
+| `failproofai policy add ` | Activa una política: una integrada o `:` de un pack instalado |
+| `failproofai policy remove ` | Desactiva una política con la misma nomenclatura |
+| `failproofai policies --uninstall` | Desactiva políticas o elimina los hooks del harness |
+| `failproofai pack list` | Lista los packs de políticas instalados y todas las políticas que incluye cada uno |
+| `failproofai pack add ` | Instala un pack de políticas desde una release de GitHub; sin etiqueta toma la más reciente y la fija |
+| `failproofai pack add --bundled` | Instala las políticas integradas como un pack, desde este paquete, sin red |
+| `failproofai pack build ` | Construye los tres archivos de release para un pack propio |
+| `failproofai pack remove ` | Desactiva un pack instalado |
+| `failproofai audit` | Escanea el historial del agente local y abre la vista de auditoría local |
+| `failproofai audit --schedule [days] --email ` | Programa escaneos locales periódicos y envía los hallazgos por correo |
+| `failproofai audit --status` | Muestra la dirección de informes, el intervalo y el próximo escaneo programado |
+| `failproofai audit --no-schedule` | Detiene los escaneos periódicos sin eliminar el historial de auditoría |
| `failproofai harness list` | Lista las rutas de captura adicionales |
-| `failproofai flush --wait` | Entrega el spool de eventos actual |
-| `failproofai backfill --since 30d` | Vuelve a leer el historial previamente procesado |
-| `failproofai config --pause [duration]` | Pausa una sesión local durante 30 minutos por defecto, hasta 8 horas |
+| `failproofai flush --wait` | Entrega la cola de eventos actual |
+| `failproofai backfill --since 30d` | Relee el historial previamente procesado |
+| `failproofai config --pause [duration]` | Pausa una sesión local durante 30 minutos por defecto, hasta un máximo de 8 horas |
| `failproofai config --resume` | Reanuda una sesión local pausada; añade `--all` para limpiar todas las pausas |
-| `failproofai update` | Completa las migraciones del paquete y actualiza el demonio |
+| `failproofai update` | Completa las migraciones del paquete y actualiza el daemon |
| `failproofai migrate --dry-run` | Previsualiza o ejecuta las migraciones de diseño del directorio home pendientes |
-| `failproofai uninstall` | Elimina los hooks y el demonio antes de desinstalar el paquete |
+| `failproofai uninstall` | Elimina los hooks y el daemon antes de desinstalar el paquete |
| `failproofai --version` | Muestra la versión del paquete instalado |
| `failproofai --help` | Muestra los comandos y el uso global |
-## Flags de configuración
+## Opciones de configuración
-| Flag | Uso |
+| Opción | Uso |
| --- | --- |
| `--connect --token ` | Conecta de forma no interactiva |
| `--machine-id ` | Establece el ID estable de la máquina |
| `--machine-label ` | Establece o cambia la etiqueta del panel |
| `--no-transcripts` | Envía decisiones sin el contenido de la transcripción |
-| `--disconnect` | Detiene las extracciones de políticas Cloud y la entrega de eventos |
+| `--disconnect` | Detiene las descargas de políticas de Cloud y la entrega de eventos |
| `--status` | Muestra el estado actual de la máquina |
| `--pause [duration]` | Pausa la sesión más reciente en el directorio actual; acepta segundos, minutos u horas y tiene un valor por defecto de 30 minutos |
-| `--resume` | Finaliza una pausa coincidente antes de tiempo |
+| `--resume` | Finaliza anticipadamente una pausa coincidente |
| `--session ` | Apunta a una sesión explícita para pausar o reanudar |
-| `--all` | Junto con `--resume`, finaliza todas las pausas activas |
+| `--all` | Con `--resume`, finaliza todas las pausas activas |
-Las pausas locales suspenden las políticas integradas, personalizadas y de convención para una sesión. Siempre expiran y no deshabilitan las políticas gestionadas por Cloud. `block-self-pause` impide que un agente instrumentado use este mecanismo de escape por sí mismo.
+Las pausas locales suspenden las políticas integradas, personalizadas, de convención y de pack para una sesión. Siempre expiran y no desactivan las políticas gestionadas por Cloud. `block-failproofai-commands` —que siempre está activo y no puede desactivarse ni pausarse— impide que un agente instrumentado use esta vía de escape.
-## Flags de políticas
+## Opciones de políticas
-| Flag | Uso |
+| Opción | Uso |
| --- | --- |
-| `--install`, `-i` | Habilita políticas e instala hooks del harness |
-| `--uninstall`, `-u` | Deshabilita políticas o elimina hooks |
+| `--install`, `-i` | Activa las políticas e instala los hooks del harness |
+| `--uninstall`, `-u` | Desactiva las políticas o elimina los hooks |
| `--cli ` | Apunta a uno o más harnesses compatibles |
| `--scope user\|project\|local\|all` | Elige el ámbito de configuración; `all` es para desinstalar |
-| `--beta` | Incluye políticas en versión beta |
-| `--custom`, `-c ` | Valida y carga un archivo de política personalizada; repetible |
+| `--beta` | Incluye políticas en fase beta |
+| `--custom`, `-c ` | Valida y carga un archivo de política personalizado; se puede repetir |
-## Flags de entrega y mantenimiento
+## Opciones de entrega y mantenimiento
-| Comando | Flags |
+| Comando | Opciones |
| --- | --- |
| `backfill` | `--since <30d\|6m\|YYYY-MM-DD>`, `--dry-run` |
| `flush` | `--wait`, `--timeout ` |
@@ -85,9 +90,9 @@ Las pausas locales suspenden las políticas integradas, personalizadas y de conv
| `migrate` | `--dry-run` |
| `uninstall` | `--purge`, `--dry-run`, `--yes` |
-`failproofai update` debe ejecutarse después de `npm install -g failproofai@latest`; realiza las migraciones del diseño del directorio home, instala el binario del demonio correspondiente y reinicia el servicio. `--no-daemon` solo realiza la migración del diseño.
+`failproofai update` debe ejecutarse después de `npm install -g failproofai@latest`; realiza las migraciones del diseño del directorio home, instala el binario del daemon correspondiente y reinicia el servicio. `--no-daemon` realiza únicamente la migración del diseño.
-## Rutas de harness
+## Rutas del harness
```text
failproofai harness list [harness]
@@ -97,9 +102,9 @@ failproofai harness remove-path
Los nombres de harness compatibles son `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` y `goose`.
-Las etiquetas dan espacio de nombres a los IDs de agente derivados cuando dos raíces contienen copias del mismo proyecto. Las raíces superpuestas y las etiquetas duplicadas se rechazan para evitar recolección duplicada o corrupción del cursor. La configuración de rutas adicionales se recarga sin necesidad de reiniciar el demonio.
+Las etiquetas delimitan los IDs de agente derivados cuando dos raíces contienen copias del mismo proyecto. Las raíces solapadas y las etiquetas duplicadas son rechazadas para evitar la recolección duplicada o la corrupción del cursor. La configuración de rutas adicionales se recarga sin necesidad de reiniciar el daemon.
-Los entornos de contenedor pueden reemplazar las rutas adicionales configuradas en archivos con una variable separada por comas llamada `FAILPROOFAI__EXTRA_PATHS`, por ejemplo:
+Los entornos de contenedor pueden reemplazar las rutas adicionales configuradas en archivos mediante una variable separada por comas con el nombre `FAILPROOFAI__EXTRA_PATHS`, por ejemplo:
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
@@ -113,18 +118,20 @@ Usa archivos de configuración para el comportamiento persistente de la máquina
| --- | --- |
| `FAILPROOFAI_HOME` | Reubica el diseño completo de `~/.failproofai` |
| `FAILPROOFAI_LOG_LEVEL` | Establece la verbosidad del registro local |
-| `FAILPROOFAI_HOOK_LOG_FILE` | Escribe diagnósticos de hooks en un archivo seleccionado |
-| `FAILPROOFAI_TELEMETRY_DISABLED=1` | Deshabilita la telemetría anónima para este proceso |
-| `FAILPROOFAI_NO_FIRST_RUN=1` | Omite la configuración interactiva del primer arranque |
+| `FAILPROOFAI_HOOK_LOG_FILE` | Escribe los diagnósticos del hook en un archivo seleccionado |
+| `FAILPROOFAI_TELEMETRY_DISABLED=1` | Desactiva la telemetría anónima para este proceso |
+| `FAILPROOFAI_NO_FIRST_RUN=1` | Omite la configuración interactiva del primer inicio |
| `FAILPROOFAI_NO_AUTO_AUDIT=1` | Omite la auditoría local posterior a la configuración |
-| `FAILPROOFAI_LLM_BASE_URL` | Reemplaza el endpoint compatible con OpenAI usado por las políticas LLM |
-| `FAILPROOFAI_LLM_API_KEY` | Proporciona la clave API usada por las políticas LLM |
-| `FAILPROOFAI_LLM_MODEL` | Selecciona el modelo usado por las políticas LLM |
-| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Limita la carga del módulo de políticas personalizadas |
+| `FAILPROOFAI_LLM_BASE_URL` | Reemplaza el endpoint compatible con OpenAI utilizado por las políticas LLM |
+| `FAILPROOFAI_LLM_API_KEY` | Proporciona la clave de API utilizada por las políticas LLM |
+| `FAILPROOFAI_LLM_MODEL` | Selecciona el modelo utilizado por las políticas LLM |
+| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Limita el tiempo de carga del módulo de política personalizada |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Impide la descarga de packs y binarios del daemon; lo que esté instalado continúa aplicándose |
+| `FAILPROOFAI_PACK_BASE_URL` | Descarga packs desde un espejo en lugar de `github.com` |
| `FAILPROOFAI__EXTRA_PATHS` | Reemplaza las rutas de captura adicionales configuradas para un harness |
-| `NO_COLOR` | Deshabilita la salida de terminal con colores |
+| `NO_COLOR` | Desactiva la salida de terminal con color |
-Las variables de directorio home específicas del agente, como `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` y `OPENCLAW_HOME`, anulan la ubicación donde Failproof AI descubre las sesiones locales para ese harness.
+Las variables de directorio home específicas del agente, como `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` y `OPENCLAW_HOME`, reemplazan la ubicación donde Failproof AI descubre las sesiones locales para ese harness.
## Pausar o eliminar una máquina de forma segura
@@ -134,9 +141,9 @@ failproofai config --status
failproofai config --resume
```
-Una pausa de sesión local no deshabilita las políticas gestionadas por Cloud. Restaura los despliegues de Cloud a través del flujo de trabajo de aplicación de Cloud cuando el propio despliegue es el problema.
+Una pausa de sesión local no desactiva las políticas gestionadas por Cloud. Restaura los despliegues de Cloud a través del flujo de trabajo de aplicación de Cloud cuando el propio despliegue es el problema.
-Antes de eliminar el paquete npm, elimina los hooks instalados y el demonio:
+Antes de eliminar el paquete npm, elimina los hooks instalados y el daemon:
```bash
failproofai uninstall --dry-run
@@ -147,5 +154,5 @@ npm rm -g failproofai
Ejecuta `failproofai --help` para obtener detalles específicos de la versión.
- Ejecuta `failproofai uninstall` antes de `npm rm -g failproofai`; npm no elimina los hooks del agente instalados ni el servicio del demonio.
+ Ejecuta `failproofai uninstall` antes de `npm rm -g failproofai`; npm no elimina los hooks del agente instalados ni el servicio del daemon.
\ No newline at end of file
diff --git a/docs/es/start/quickstart.mdx b/docs/es/start/quickstart.mdx
index 9c330db2..5ecd4886 100644
--- a/docs/es/start/quickstart.mdx
+++ b/docs/es/start/quickstart.mdx
@@ -1,12 +1,12 @@
---
title: "Inicio rápido"
-description: "Captura una sesión de agente, detecta un fallo y empieza a prevenirlo."
+description: "Captura una sesión del agente, encuentra un fallo y empieza a prevenirlo."
icon: "zap"
---
-Este inicio rápido configura una máquina para que reporte sesiones, ejecuta una auditoría y despliega una política. Usa la skill para configurar Failproof o sigue los pasos manuales.
+Este inicio rápido conecta una máquina para que reporte sesiones, ejecuta una auditoría y despliega una política. Usa la skill para configurar Failproof AI, o sigue los pasos manuales.
-**¿Cuál es tu camino?** Si tu agente se ejecuta en uno de los 12 [harnesses](/es/reference/harnesses) compatibles — una CLI de codificación, o una gateway como Hermes u OpenClaw — sigue los pasos a continuación; necesitas Node.js 20.9 o posterior. Si tu agente no tiene harness, instrumértalo con el [SDK de Python](/es/reference/custom-agents) para trazado y auditorías, y luego continúa en [Ejecuta tu primera verificación de fallos](/es/start/first-audit); el control de acceso en esa ruta requiere un hook en tu runtime.
+**¿Cuál es tu camino?** Si tu agente se ejecuta en uno de los 12 [harnesses](/es/reference/harnesses) compatibles — una CLI de programación, o un gateway como Hermes u OpenClaw — sigue los pasos a continuación; necesitas Node.js 20.9 o posterior. Si tu agente no tiene harness, instrumétalo con el [SDK de Python](/es/reference/custom-agents) para trazas y auditorías, y luego continúa en [Ejecuta tu primera verificación de fallos](/es/start/first-audit); la aplicación de políticas en ese camino requiere un hook en tu runtime.
@@ -21,7 +21,7 @@ Este inicio rápido configura una máquina para que reporte sesiones, ejecuta un
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- Tu agente inspecciona el proyecto, elige la integración correspondiente, realiza la configuración y la verifica. Consulta el [repositorio de skills de FailproofAI](https://github.com/FailproofAI/skills) para ver skills individuales y opciones de instalación avanzadas.
+ Tu agente inspecciona el proyecto, elige la integración relevante, realiza la configuración y la verifica. Consulta el [repositorio de skills de FailproofAI](https://github.com/FailproofAI/skills) para ver skills individuales y opciones de instalación avanzadas.
@@ -45,7 +45,7 @@ export FAILPROOFAI_KEY=""
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- Las transcripciones de sesiones se envían por defecto. Añade `--no-transcripts` para reportar la actividad de hooks y las decisiones de políticas sin el contenido de la transcripción.
+ Los transcritos de sesión se envían de forma predeterminada. Añade `--no-transcripts` para reportar la actividad de hooks y las decisiones de políticas sin el contenido del transcrito.
Si esta máquina ya tiene historial de agente, previsualiza e importa los últimos siete días, luego espera a que finalice la entrega. Omite este paso en una máquina nueva.
@@ -58,27 +58,27 @@ export FAILPROOFAI_KEY=""
Abre **Sessions** en Failproof AI y selecciona una sesión importada.
- Esto conecta Failproof AI a tu harness e instala las 40 políticas integradas. Úsalas para ver las decisiones de políticas locales y probar el control de acceso antes de que Failproof AI audite tus sesiones y escriba políticas para tus agentes.
+ Esto conecta Failproof AI a tu harness e instala las 39 políticas integradas. Úsalas para ver las decisiones de políticas locales y probar la aplicación antes de que Failproof AI audite tus sesiones y escriba políticas para tus agentes.
Deja que el instalador detecte tu harness, o indícalo explícitamente. Cualquiera de los 12 es un valor válido para `--cli` — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
```bash
- failproofai policies --install --cli claude --scope user # una CLI de codificación
- failproofai policies --install --cli hermes --scope user # una gateway de Slack/Telegram
+ failproofai policies --install --cli claude --scope user # una CLI de programación
+ failproofai policies --install --cli hermes --scope user # un gateway de Slack/Telegram
```
- El bloqueo de una llamada a herramienta antes de que se ejecute está verificado en los 12. Las compuertas de fin de turno están verificadas en 8 — consulta la [capacidad de control de acceso](/es/reference/harnesses#enforcement-capability) para ver la matriz por harness.
+ El bloqueo de una llamada a herramienta antes de que se ejecute está verificado en los 12. Las compuertas de fin de turno están verificadas en 8 — consulta la [capacidad de aplicación](/es/reference/harnesses#enforcement-capability) para ver la matriz por harness.
- Sigue [Ejecuta tu primera verificación de fallos](/es/start/first-audit). Usa un objetivo concreto como «encontrar sesiones donde el agente reintentó una herramienta fallida sin cambiar su enfoque».
+ Sigue [Ejecuta tu primera verificación de fallos](/es/start/first-audit). Usa un objetivo concreto como "encontrar sesiones donde el agente reintentó una herramienta fallida sin cambiar su enfoque".
- Sigue [Previene tu primer fallo con una política](/es/start/first-policy). Empieza en modo de observación, inspecciona las coincidencias y luego aplica la versión revisada.
+ Sigue [Previene tu primer fallo con una política](/es/start/first-policy). Empieza en modo observación, inspecciona las coincidencias y luego aplica la versión revisada.
- Ejecuta `failproofai config --status`. Una configuración correcta reporta la conexión en la nube, el estado del daemon y si el control de acceso está pausado.
+ Ejecuta `failproofai config --status`. Una configuración saludable reporta la conexión a la nube, el estado del daemon y si la aplicación de políticas está pausada.
\ No newline at end of file
diff --git a/docs/fr/policies/builtin-catalog.mdx b/docs/fr/policies/builtin-catalog.mdx
index 3ad4b839..4305632e 100644
--- a/docs/fr/policies/builtin-catalog.mdx
+++ b/docs/fr/policies/builtin-catalog.mdx
@@ -1,94 +1,98 @@
---
title: "Catalogue des politiques intégrées"
-description: "Découvrez chaque politique intégrée de Failproof AI, son déclencheur, l'état recommandé et ses paramètres configurables."
+description: "Consultez chaque politique intégrée de Failproof AI, son déclencheur, l'état recommandé et les paramètres configurables."
icon: "list-checks"
---
-Le package installé fait autorité quant à la disponibilité des politiques. Exécutez `failproofai policies` après chaque mise à jour, car les entrées du catalogue et leur comportement peuvent évoluer avec la version du package.
+Le package installé fait foi pour la disponibilité des politiques. Exécutez `failproofai policies` après chaque mise à jour, car les entrées du catalogue et leur comportement peuvent évoluer avec la version du package.
-## Configuration de référence recommandée
+## Base recommandée
-La sélection recommandée par l'assistant de configuration active actuellement les assainisseurs de secrets, les protections d'environnement, la protection du service lui-même, les gardes contre les commandes catastrophiques et la sécurité des branches protégées :
+La sélection recommandée par l'assistant de configuration active actuellement les assainisseurs de secrets, les protections d'environnement, l'auto-protection, les gardes contre les commandes catastrophiques et la sécurité des branches protégées :
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-La sélection recommandée est délibérément plus restreinte que **Tout activer**. Les politiques d'infrastructure et de workflow peuvent interrompre un travail légitime ; elles doivent être activées uniquement pour les dépôts et les machines qui en ont besoin.
+`block-failproofai-commands` est **toujours actif**. Il figure ci-dessus pour
+être exhaustif, mais il s'enregistre à chaque évaluation, qu'il apparaisse ou non
+dans votre ensemble activé, et il ne peut pas être désactivé ni mis en pause — une
+garde contre la désactivation de l'application par l'agent ne saurait être
+désactivable par l'agent lui-même.
+
+La base recommandée est délibérément plus restreinte que **Tout**. Les politiques d'infrastructure et de workflow peuvent interrompre un travail valide et ne devraient être activées que pour les dépôts et les machines qui en ont besoin.
## Secrets et environnement
| Politique | Déclencheur | Résultat |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | Masque les JWT dans la sortie des outils avant que le modèle ne les voie. |
-| `sanitize-api-keys` | `PostToolUse` | Masque les clés OpenAI, Anthropic, GitHub, AWS, Stripe et Google courantes. |
-| `sanitize-connection-strings` | `PostToolUse` | Masque les chaînes de connexion à des bases de données contenant des identifiants. |
+| `sanitize-jwt` | `PostToolUse` | Masque les JWTs dans la sortie des outils avant que le modèle ne les voie. |
+| `sanitize-api-keys` | `PostToolUse` | Masque les clés courantes OpenAI, Anthropic, GitHub, AWS, Stripe et Google. |
+| `sanitize-connection-strings` | `PostToolUse` | Masque les chaînes de connexion aux bases de données contenant des identifiants. |
| `sanitize-private-key-content` | `PostToolUse` | Masque les corps de clés privées PEM. |
-| `sanitize-bearer-tokens` | `PostToolUse` | Masque les jetons bearer d'autorisation. |
+| `sanitize-bearer-tokens` | `PostToolUse` | Masque les jetons d'autorisation bearer. |
| `protect-env-vars` | `PreToolUse` sur les outils shell | Bloque les commandes qui exposent les variables d'environnement. |
| `block-env-files` | `PreToolUse` | Bloque les lectures et écritures des fichiers `.env`. |
-| `block-read-outside-cwd` | `PreToolUse` sur les outils read, glob, grep ou shell | Limite les lectures au répertoire de travail de la session. |
+| `block-read-outside-cwd` | `PreToolUse` sur les outils de lecture, glob, grep ou shell | Restreint les lectures au répertoire de travail de la session. |
| `block-secrets-write` | `PreToolUse` sur les outils d'écriture | Bloque les écritures vers les noms de fichiers courants de clés secrètes et d'identifiants. |
## Commandes dangereuses et infrastructure
| Politique | Déclencheur | Résultat |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | Empêche un agent de suspendre sa propre application des règles. |
-| `block-sudo` | `PreToolUse`, `PermissionRequest` | Bloque `sudo` sauf si un modèle d'autorisation correspond. |
-| `block-curl-pipe-sh` | `PreToolUse` | Bloque les scripts téléchargés et directement transmis à un shell via un pipe. |
-| `block-rm-rf` | `PreToolUse` | Bloque les patterns de suppression récursive catastrophiques. |
-| `block-failproofai-commands` | `PreToolUse` | Empêche les agents de modifier ou de désinstaller Failproof AI. |
+| `block-sudo` | `PreToolUse`, `PermissionRequest` | Bloque `sudo` sauf si un motif d'autorisation correspond. |
+| `block-curl-pipe-sh` | `PreToolUse` | Bloque les scripts téléchargés redirigés directement vers un shell. |
+| `block-rm-rf` | `PreToolUse` | Bloque les motifs de suppression récursive catastrophiques. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **Toujours actif, ne peut pas être désactivé.** Bloque toute invocation de la CLI Failproof AI, toute mise en pause automatique et toute désinstallation via le gestionnaire de packages. |
| `block-kubectl` | `PreToolUse` | Contrôle les commandes Kubernetes. |
| `block-terraform` | `PreToolUse` | Contrôle les commandes Terraform et OpenTofu. |
| `block-aws-cli` | `PreToolUse` | Contrôle les commandes AWS CLI. |
| `block-gcloud` | `PreToolUse` | Contrôle les commandes Google Cloud CLI. |
| `block-az-cli` | `PreToolUse` | Contrôle les commandes Azure CLI. |
| `block-helm` | `PreToolUse` | Contrôle les commandes Helm. |
-| `block-gh-pipeline` | `PreToolUse` | Contrôle les opérations GitHub CLI mutantes : workflow, run, merge, release, cache et secret. |
+| `block-gh-pipeline` | `PreToolUse` | Contrôle les opérations mutantes de workflow, run, merge, release, cache et secret de la CLI GitHub. |
-## Sécurité Git et bases de données
+## Sécurité Git et base de données
| Politique | Déclencheur | Résultat |
| --- | --- | --- |
-| `block-push-master` | `PreToolUse` | Bloque les push directs vers les branches protégées configurées. |
-| `block-force-push` | `PreToolUse` | Bloque les force-push ; `--force-with-lease` reste autorisé par l'implémentation actuelle. |
-| `block-work-on-main` | `PreToolUse` | Bloque les commits et merges sur les branches protégées. |
+| `block-push-master` | `PreToolUse` | Bloque les pousses directes vers les branches protégées configurées. |
+| `block-force-push` | `PreToolUse` | Bloque les pousses forcées ; `--force-with-lease` reste autorisé par l'implémentation actuelle. |
+| `block-work-on-main` | `PreToolUse` | Bloque les commits et fusions sur les branches protégées. |
| `warn-git-amend` | `PreToolUse` | Avertit avant de réécrire un commit avec `--amend`. |
-| `warn-git-stash-drop` | `PreToolUse` | Avertit avant de supprimer ou vider définitivement des stashes. |
-| `warn-all-files-staged` | `PreToolUse` | Avertit en cas d'ajout global via `git add -A`, `git add .` ou `git add --all`. |
-| `warn-destructive-sql` | `PreToolUse` | Avertit en cas de `DROP`, `TRUNCATE` ou `DELETE` sans `WHERE` via des clients de base de données reconnus. |
-| `warn-schema-alteration` | `PreToolUse` | Avertit lors d'opérations reconnues `ALTER TABLE` sur des colonnes ou des renommages. |
+| `warn-git-stash-drop` | `PreToolUse` | Avertit avant de supprimer ou vider définitivement des remises. |
+| `warn-all-files-staged` | `PreToolUse` | Avertit en cas d'indexation large avec `git add -A`, `git add .` ou `git add --all`. |
+| `warn-destructive-sql` | `PreToolUse` | Avertit en cas de `DROP`, `TRUNCATE` et `DELETE` sans `WHERE` via les clients de base de données reconnus. |
+| `warn-schema-alteration` | `PreToolUse` | Avertit lors d'opérations reconnues de `ALTER TABLE` sur des colonnes et de renommage. |
## Packages, comportement système et boucles d'agent
| Politique | Déclencheur | Résultat |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | Avertit avant de publier sur des registres de packages. |
+| `warn-package-publish` | `PreToolUse` | Avertit avant la publication vers des registres de packages. |
| `warn-global-package-install` | `PreToolUse` | Avertit avant l'installation globale d'un package. |
-| `prefer-package-manager` | `PreToolUse` | Indique à l'agent d'utiliser un gestionnaire de packages autorisé. |
+| `prefer-package-manager` | `PreToolUse` | Demande à l'agent d'utiliser un gestionnaire de packages autorisé. |
| `warn-large-file-write` | `PreToolUse` sur les outils d'écriture | Avertit au-delà du seuil de taille de fichier configuré. |
-| `warn-background-process` | `PreToolUse` | Avertit en cas de patterns de processus en arrière-plan détachés ou de longue durée. |
+| `warn-background-process` | `PreToolUse` | Avertit en cas de motifs de processus détachés ou de longue durée en arrière-plan. |
| `warn-repeated-tool-calls` | `PreToolUse` | Avertit après trois appels d'outil identiques ou plus. |
## Workflow de fin de tâche
-Ces politiques nécessitent un harnais émettant un événement `Stop` compatible.
+Ces politiques requièrent un harnais qui émet un événement `Stop` compatible.
| Politique | Résultat |
| --- | --- |
-| `require-commit-before-stop` | Refuse la complétion tant que des modifications suivies ne sont pas commitées. |
+| `require-commit-before-stop` | Refuse la complétion tant que du travail suivi reste non validé. |
| `require-push-before-stop` | Refuse la complétion tant que des commits restent uniquement en local. |
| `require-pr-before-stop` | Exige une pull request pour la branche courante. |
-| `require-no-conflicts-before-stop` | Exige un merge propre par rapport à la branche de base configurée. |
-| `require-ci-green-before-stop` | Exige que les vérifications CI du HEAD actuel se terminent avec succès. |
+| `require-no-conflicts-before-stop` | Exige une fusion propre avec la branche de base configurée. |
+| `require-ci-green-before-stop` | Exige que les vérifications CI du HEAD courant se terminent avec succès. |
## Référence des paramètres
@@ -125,5 +129,5 @@ Configurez les paramètres dans l'objet `policyParams` du scope sélectionné. L
```
- Un modèle d'autorisation élargit ce qu'un agent peut faire. Testez la tokenisation exacte et les variantes de commandes sur le harnais cible avant de le déployer sur une flotte de machines.
+ Un motif d'autorisation élargit ce qu'un agent peut faire. Testez la tokenisation exacte et les variantes de commandes sur le harnais cible avant de le déployer sur un parc de machines.
\ No newline at end of file
diff --git a/docs/fr/policies/failure-behavior.mdx b/docs/fr/policies/failure-behavior.mdx
index 621acd2d..3f81f042 100644
--- a/docs/fr/policies/failure-behavior.mdx
+++ b/docs/fr/policies/failure-behavior.mdx
@@ -1,19 +1,19 @@
---
title: "Comportement en cas d'échec"
-description: "Comprenez ce qui se passe lorsque l'évaluation des politiques ou le daemon local est indisponible."
+description: "Comprendre ce qui se passe lorsque l'évaluation des politiques ou le démon local est indisponible."
icon: "shield-alert"
---
-Failproof AI est conçu de sorte qu'un échec d'application soit visible plutôt que de permettre silencieusement des actions risquées.
+Failproof AI est conçu de sorte qu'un échec d'application soit visible plutôt que de laisser silencieusement passer des actions risquées.
-## Diagnostiquer un blocage en mode échec fermé
+## Diagnostiquer un blocage en mode fermé sur échec
- 1. Accédez à **Admin → enforcement** et ouvrez la machine.
+ 1. Allez dans **Admin → enforcement** et ouvrez la machine.
2. Vérifiez sa dernière connexion, le déploiement assigné et le déploiement rapporté.
- 3. Accédez à **Observe → policy** et ouvrez la session de la décision refusée.
- 4. Confirmez si la raison indique l'accessibilité du daemon, un écart de version ou la politique elle-même.
+ 3. Allez dans **Observe → policy** et ouvrez la session de la décision refusée.
+ 4. Confirmez si la raison indique une inaccessibilité du démon, un décalage de version ou la politique elle-même.
@@ -23,21 +23,45 @@ Failproof AI est conçu de sorte qu'un échec d'application soit visible plutôt
failproofai config
```
- Relancer `failproofai config` met à jour et redémarre le daemon après une mise à jour du package.
+ Relancer `failproofai config` met à jour et redémarre le démon après une mise à jour du package.
-Sur une machine configurée pour utiliser `failproofaid`, le daemon est le seul évaluateur. S'il est inaccessible ou si sa version de protocole ne correspond pas à celle du CLI, l'évaluation des hooks échoue en mode fermé. L'action est refusée avec un message indiquant à l'opérateur de vérifier ou mettre à jour le daemon.
+Sur une machine configurée pour utiliser `failproofaid`, le démon est le seul évaluateur. S'il est inaccessible ou si sa version de protocole ne correspond pas à celle du CLI, l'évaluation des hooks échoue en mode fermé. L'action est refusée avec une raison qui invite l'opérateur à vérifier ou mettre à jour le démon.
-Avant la configuration du daemon, les hooks évaluent les politiques en cours de processus. Une fois la configuration du daemon enregistrée, Failproof AI ne bascule pas silencieusement vers un second évaluateur en cas d'échec du daemon.
+Avant la configuration du démon, les hooks évaluent les politiques en cours de processus. Une fois la configuration du démon enregistrée, Failproof AI ne bascule pas silencieusement vers un second évaluateur en cas d'échec du démon.
-## Répondre à une décision en mode échec fermé
+## Réagir à une décision de blocage en mode fermé sur échec
1. Exécutez `failproofai config --status`.
2. Si les versions diffèrent, relancez `failproofai config` après avoir mis à jour le package.
-3. Si le daemon est inaccessible, inspectez son état de service et ses journaux locaux.
-4. Ne reprenez le travail de l'agent qu'après avoir confirmé qu'un chemin d'évaluation des politiques connu est opérationnel.
+3. Si le démon est inaccessible, inspectez l'état de son service et les journaux locaux.
+4. Ne reprenez le travail de l'agent qu'une fois qu'un chemin d'évaluation de politique connu est sain.
- Ne réessayez pas l'action bloquée de manière répétée. Une réponse en mode échec fermé signifie que le système n'a pas pu établir que l'action était sûre.
-
\ No newline at end of file
+ Ne réessayez pas répétitivement l'action bloquée. Une réponse en mode fermé sur échec signifie que le système n'a pas pu établir que l'action était sûre.
+
+
+## Un pack ne se charge pas
+
+Une machine à qui l'on a demandé d'appliquer un pack, et qui ne peut pas l'exécuter, refuse plutôt que de continuer silencieusement. Le déclencheur est une **attente enregistrée**, jamais une attente vide : une machine sans pack installé reste silencieuse, tandis qu'un pack déclaré qui ne peut pas se résoudre — ou qui enregistre moins que ce que son manifeste déclare — provoque un refus.
+
+Le refus est **ciblé**, contrairement à un démon inaccessible. Un démon inaccessible signifie qu'aucune évaluation n'a eu lieu, donc rien ne peut être considéré comme sûr. Un pack qui ne se charge pas dispose d'un ensemble dénombrable de gardes manquantes, car chaque politique déclarée porte son propre `match` — il ne refuse donc que les événements et outils couverts par ces politiques, et tout le reste continue.
+
+Il ne se déclenche pas pour :
+
+- un pack `observe`, qui évalue et ignore par construction
+- des politiques que vous n'avez jamais adoptées, ou explicitement désactivées
+- un pack que le chargeur n'a jamais reçu, où « aucune inscription » ne peut être distinguée d'un saut délibéré
+- une pause de session active
+- un délai d'expiration du chargement, qui est transitoire — un instant de disque lent ne doit pas provoquer un refus jusqu'à ce qu'un humain intervienne
+
+`UserPromptSubmit` **instruit** plutôt que de refuser, quelle que soit la politique manquante déclarée. Un refus général l'emporterait avec lui et vous bloquerait hors de l'agent qui pourrait résoudre le problème.
+
+### Que faire
+
+```bash
+failproofai pack list
+```
+
+Cette commande identifie tout pack installé qui ne se charge pas, indique pourquoi, et se termine avec un code non-zéro. Ensuite, soit réinstallez-le (`failproofai pack add `), soit supprimez-le (`failproofai pack remove `) — le supprimer retire l'attente, et le refus cesse avec elle.
\ No newline at end of file
diff --git a/docs/fr/policies/packs.mdx b/docs/fr/policies/packs.mdx
new file mode 100644
index 00000000..9b9497bc
--- /dev/null
+++ b/docs/fr/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "Packs de politiques"
+description: "Installez un ensemble de politiques publiées sous forme de release GitHub et gérez ce qu'elles appliquent."
+icon: "package"
+---
+
+Un pack est un ensemble de politiques publiées sous forme de release GitHub. Une seule commande suffit à l'installer, les checksums de la release sont vérifiés avant toute exécution, et le digest est enregistré pour que le pack ne puisse pas être modifié sur votre machine par la suite.
+
+## Installer les politiques Failproof AI
+
+```bash
+failproofai pack add core
+```
+
+Cette commande installe l'ensemble que nous publions, depuis la copie incluse dans le package — aucune connexion réseau n'est nécessaire et elle ne peut pas échouer derrière un proxy. Vous pouvez n'en prendre qu'une partie :
+
+```bash
+failproofai pack add core --policy block-rm-rf # une seule, ou quelques-unes séparées par des virgules
+failproofai pack add core --category dangerous-commands # toute une catégorie
+failproofai pack add core --all # tout son contenu
+```
+
+`failproofai pack list` liste toutes les catégories proposées par le pack.
+
+## Consulter le contenu d'un pack avant de l'installer
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+Liste toutes les politiques du pack, regroupées par catégorie, en indiquant celles que l'auteur active par défaut et celles qui sont optionnelles. Seul le **manifeste** est lu — l'artefact principal n'est jamais téléchargé ni importé, ce qui fait que consulter le pack d'un inconnu n'exécute aucun code étranger. Le manifeste est tout de même vérifié par rapport au `SHA256SUMS` de la release, de sorte que ce que vous lisez correspond exactement à ce qui serait installé.
+
+`failproofai pack list` sans argument liste les packs déjà installés sur cette machine.
+
+## Installer le pack de quelqu'un d'autre
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Chacune de ces formes est acceptée — collez celle que vous avez sous la main :
+
+| Source | Résultat |
+| --- | --- |
+| `acme/support-agent` | Dernière release, **épinglée** au tag exact résolu |
+| `acme/support-agent@v2.1.0` | Cette release précise |
+| `github:acme/support-agent@v2.1.0` | La même, écrite explicitement |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | La même, copiée depuis un navigateur |
+
+Ne pas spécifier de tag installe la dernière release **et l'épingle**, puis vous indique le tag choisi. Ce qui est enregistré désigne toujours exactement une release, de sorte qu'une réinstallation ne peut pas dériver.
+
+## Ne prendre qu'une partie d'un pack
+
+Par défaut, vous obtenez les **propres** valeurs par défaut du pack — les politiques que son auteur a jugées sûres à activer sans surveillance — et non son contenu intégral.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` et `--policy` se combinent en union (`--only` est accepté comme synonyme de `--policy`). Réinstaller à une version plus récente conserve vos sélections plutôt que de tout réactiver.
+
+## Gérer ce qui est activé
+
+```bash
+failproofai policies # toutes les sources en une seule liste, packs inclus
+failproofai pack list # les packs uniquement, regroupés par catégorie
+failproofai policies --uninstall block-refunds # désactiver une politique de pack
+failproofai policies --install block-refunds # la réactiver
+failproofai pack remove acme/support-agent
+```
+
+Un nom seul désigne la politique **intégrée** si elle existe sous ce nom. Désignez explicitement la copie d'un pack lorsque nécessaire :
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+Si un pack fournit une politique dont le nom correspond à une **politique intégrée activée**, c'est la version intégrée qui s'exécute et la copie du pack est ignorée — la même protection serait sinon évaluée deux fois. Désactivez la politique intégrée pour utiliser la copie du pack à la place.
+
+
+## Origine des politiques Failproof AI
+
+`core` lit la copie fournie dans le package npm. Ce même ensemble est publié sous forme de release GitHub, que vous installez si vous souhaitez une version spécifique :
+
+```bash
+failproofai pack add core # depuis ce package, sans réseau
+failproofai pack add FailproofAI/policies # le même ensemble, depuis sa release GitHub
+```
+
+## Ce que l'intégrité garantit et ce qu'elle ne garantit pas
+
+`SHA256SUMS` est livré dans la même release que l'artefact, ce qui signifie que ce **n'est pas** une signature et ne prouve rien sur l'identité de l'éditeur. Ce que cela prouve, c'est que les octets sont bien ceux publiés dans cette release — et comme le digest est enregistré lors de l'ajout du pack et re-vérifié avant chaque import, un pack ne peut pas être modifié sur votre machine par la suite. Un dépôt qui retague ou remplace un artefact cesse de se charger au lieu d'exécuter silencieusement autre chose.
+
+Au moment de l'installation, le pack est également **importé une fois** et vérifié par rapport à son propre manifeste. Un pack dont l'artefact ne se parse pas, ou qui enregistre autre chose que ce qu'il déclare, est refusé avant toute activation — plutôt que de s'installer proprement et d'échouer lors de votre prochain appel d'outil.
+
+## Quand un pack ne se charge pas
+
+Un pack que cette machine a reçu l'ordre d'appliquer et qu'elle ne peut pas exécuter **refuse** les événements couverts par ses politiques manquantes, plutôt que de les autoriser silencieusement. Voir [Comportement en cas d'échec](/fr/policies/failure-behavior). `failproofai pack list` indique tout pack dans cet état et retourne un code de sortie non nul.
+
+## Hors ligne et miroirs
+
+| Variable | Effet |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Refuse tout téléchargement ; les packs déjà installés continuent d'être appliqués |
+| `FAILPROOFAI_PACK_BASE_URL` | Redirige le téléchargement des packs vers un miroir plutôt que `github.com` |
+
+Pour publier votre propre pack, consultez [Publier un pack](/fr/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/fr/policies/publish-a-pack.mdx b/docs/fr/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..46164851
--- /dev/null
+++ b/docs/fr/policies/publish-a-pack.mdx
@@ -0,0 +1,91 @@
+---
+title: "Publier un pack"
+description: "Distribuez vos propres politiques sous forme de release GitHub que tout le monde peut installer."
+icon: "upload"
+---
+
+Un pack est composé de trois fichiers attachés à une release GitHub. `failproofai pack build` génère les trois à partir d'un fichier de politiques que vous possédez déjà.
+
+## 1. Écrire les politiques
+
+Un seul fichier, utilisant la même API que n'importe quelle politique personnalisée. Deux champs supplémentaires sont importants pour un pack :
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+`defaultEnabled` vaut **false** par défaut si vous l'omettez. Un simple `failproofai pack add` n'active que ce que vous avez marqué — activer en bloc toutes les politiques d'un inconnu sans supervision n'est pas une décision que l'installeur devrait prendre à la place de son utilisateur.
+
+
+L'entrée doit être **un fichier unique et autonome**. Seule l'entrée est épinglée par son condensat, donc un pack qui importe des fichiers locaux ne pourrait pas honnêtement prétendre que le condensat couvre ce qui s'exécute. Bundlez d'abord (`esbuild`, `bun build`, `rollup`) et construisez le pack à partir du bundle — `pack build` refuse une importation locale plutôt que de livrer une promesse qu'il ne peut pas tenir.
+
+
+## 2. Construire les assets de la release
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+Cette commande génère trois fichiers et valide chaque politique avec **les propres règles du chargeur** — ainsi, un pack qui ne pourrait jamais s'installer échoue ici, là où vous pouvez corriger le problème :
+
+| Fichier | Description |
+| --- | --- |
+| `failproofai-pack.json` | Le manifeste : id, version, effet, et une entrée par politique |
+| `failproofai-pack.mjs` | Votre entrée, verbatim |
+| `SHA256SUMS` | `` pour les deux autres fichiers |
+
+Refusés à la construction : un id qui n'est pas `publisher/name`, un nom de politique contenant `/`, une politique déclarant `alwaysOn`, une `description`, une `category` ou un `match` manquants, une entrée qui n'enregistre rien, et une entrée qui importe des fichiers locaux.
+
+## 3. Attacher les fichiers à une release
+
+Taguez la release avec la même version que celle utilisée lors de la construction, et attachez les trois fichiers comme assets de la release :
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+N'importe qui peut désormais l'installer :
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Les noms des assets sont fixes — c'est à partir d'eux que le CLI du consommateur construit ses URLs, sans appel API ni mécanisme de découverte.
+
+## Publier une nouvelle version
+
+Construisez avec le nouveau `--version`, taguez une nouvelle release, attachez à nouveau les trois assets. Les consommateurs exécutent le même `pack add` et conservent le sous-ensemble qu'ils avaient choisi ; une politique qu'ils ont désactivée reste désactivée après la mise à jour.
+
+Changer le **nom** d'une politique est un changement cassant : une machine qui l'avait désactivée désactive un nom qui n'existe plus, et le nouveau nom arrive avec ce que `defaultEnabled` indique.
+
+## Ce que vos utilisateurs vous font confiance
+
+`SHA256SUMS` se trouve dans la même release que l'artefact, ce qui prouve que les octets sont bien ceux que vous avez publiés — mais pas qui vous êtes. Quiconque peut écrire dans le dépôt peut écrire les deux fichiers. La protection de vos utilisateurs réside dans le fait que le condensat est épinglé au moment de l'installation, ce qui empêche ce que vous avez publié de changer à leur insu par la suite.
+
+Publiez depuis un dépôt dont vous contrôlez les accès en écriture, et traitez une release de pack comme la publication d'un package.
+
+## Observer avant d'appliquer
+
+Un manifeste peut déclarer `"effect": "observe"`. Ces politiques s'exécutent et leurs verdicts sont **enregistrés puis ignorés** — rien n'est bloqué. C'est la façon de mesurer une nouvelle règle face au trafic réel avant qu'elle ne puisse interrompre le travail de quiconque.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/fr/reference/failproof-cli.mdx b/docs/fr/reference/failproof-cli.mdx
index c75970c3..67481731 100644
--- a/docs/fr/reference/failproof-cli.mdx
+++ b/docs/fr/reference/failproof-cli.mdx
@@ -1,12 +1,12 @@
---
title: "Failproof AI CLI"
-description: "Installer les hooks, gérer les politiques locales, connecter le Cloud et opérer le daemon local."
+description: "Installez les hooks, gérez les politiques locales, connectez le Cloud et pilotez le démon local."
icon: "terminal"
---
-Installez le CLI local avec `npm install -g failproofai`. Exécutez-le sans arguments pour ouvrir le tableau de bord des politiques locales.
+Installez le CLI local avec `npm install -g failproofai`. Lancez-le sans argument pour ouvrir le tableau de bord des politiques locales.
-Le package nécessite Node.js 20.9 ou une version plus récente. Bun 1.3 ou une version plus récente est pris en charge pour le développement et les installations depuis les sources. `failproofai configure` et `failproofai setup` sont des alias de `failproofai config` ; `failproofai p` est un alias de `failproofai policies`.
+Le package requiert Node.js 20.9 ou une version plus récente. Bun 1.3 ou une version plus récente est pris en charge pour le développement et les installations depuis les sources. `failproofai configure` et `failproofai setup` sont des alias de `failproofai config` ; `failproofai p` est un alias de `failproofai policies`.
## Configurer une machine
@@ -20,62 +20,67 @@ failproofai policies --install
failproofai config --status
```
-Exécutez `failproofai` sans arguments pour ouvrir le tableau de bord des politiques locales.
+Lancez `failproofai` sans argument pour ouvrir le tableau de bord des politiques locales.
| Commande | Résultat |
| --- | --- |
-| `failproofai config` | Lancer la configuration interactive de la machine |
-| `failproofai config --connect --token ` | Connecter l'ingestion Cloud et la distribution des politiques |
-| `failproofai config --status` | Afficher l'état de connexion, du daemon, de la distribution et de la pause |
-| `failproofai policies` | Lister les politiques intégrées et personnalisées |
-| `failproofai policies --install` | Installer les hooks et activer les politiques |
-| `failproofai policy add ` | Activer une politique intégrée |
-| `failproofai policy remove ` | Désactiver une politique intégrée |
-| `failproofai policies --uninstall` | Désactiver les politiques ou supprimer les hooks du harness |
-| `failproofai audit` | Analyser l'historique local de l'agent et ouvrir la vue d'audit locale |
-| `failproofai audit --schedule [days] --email ` | Planifier des analyses locales récurrentes et envoyer leurs résultats par e-mail |
-| `failproofai audit --status` | Afficher l'adresse du rapport, l'intervalle et la prochaine analyse planifiée |
-| `failproofai audit --no-schedule` | Arrêter les analyses récurrentes sans supprimer l'historique d'audit |
-| `failproofai harness list` | Lister les chemins de capture supplémentaires |
-| `failproofai flush --wait` | Livrer le spool d'événements actuel |
-| `failproofai backfill --since 30d` | Relire l'historique précédemment traité |
-| `failproofai config --pause [duration]` | Mettre en pause une session locale pendant 30 minutes par défaut, jusqu'à 8 heures |
-| `failproofai config --resume` | Reprendre une session locale en pause ; ajouter `--all` pour lever toutes les pauses |
-| `failproofai update` | Terminer les migrations du package et mettre à jour le daemon |
-| `failproofai migrate --dry-run` | Prévisualiser ou exécuter les migrations de disposition du répertoire personnel en attente |
-| `failproofai uninstall` | Supprimer les hooks et le daemon avant de désinstaller le package |
-| `failproofai --version` | Afficher la version du package installé |
-| `failproofai --help` | Afficher les commandes et l'utilisation globale |
+| `failproofai config` | Lance la configuration interactive de la machine |
+| `failproofai config --connect --token ` | Connecte l'ingestion Cloud et la distribution des politiques |
+| `failproofai config --status` | Affiche la connexion, le démon, la distribution et l'état de pause |
+| `failproofai policies` | Liste les politiques intégrées, personnalisées, de convention, de pack et gérées par le Cloud |
+| `failproofai policies --install` | Installe les hooks et active les politiques |
+| `failproofai policy add ` | Active une politique — intégrée, ou `:` depuis un pack installé |
+| `failproofai policy remove ` | Désactive une politique, même convention de nommage |
+| `failproofai policies --uninstall` | Désactive les politiques ou supprime les hooks du harnais |
+| `failproofai pack list` | Liste les packs de politiques installés et chaque politique qu'ils contiennent |
+| `failproofai pack add ` | Installe un pack de politiques depuis une release GitHub ; sans tag, prend la dernière version et la fixe |
+| `failproofai pack add --bundled` | Installe les politiques intégrées sous forme de pack, depuis ce package, sans réseau |
+| `failproofai pack build ` | Construit les trois fichiers de release pour un pack personnalisé |
+| `failproofai pack remove ` | Désactive un pack installé |
+| `failproofai audit` | Analyse l'historique local de l'agent et ouvre la vue d'audit locale |
+| `failproofai audit --schedule [days] --email ` | Planifie des analyses locales récurrentes et envoie leurs résultats par e-mail |
+| `failproofai audit --status` | Affiche l'adresse du rapport, l'intervalle et la prochaine analyse planifiée |
+| `failproofai audit --no-schedule` | Arrête les analyses récurrentes sans supprimer l'historique d'audit |
+| `failproofai harness list` | Liste les chemins de capture supplémentaires |
+| `failproofai flush --wait` | Livre le spool d'événements actuel |
+| `failproofai backfill --since 30d` | Relit l'historique précédemment traité |
+| `failproofai config --pause [duration]` | Met en pause une session locale pendant 30 minutes par défaut, jusqu'à 8 heures |
+| `failproofai config --resume` | Reprend une session locale en pause ; ajoutez `--all` pour lever toutes les pauses |
+| `failproofai update` | Finalise les migrations du package et met à jour le démon |
+| `failproofai migrate --dry-run` | Prévisualise ou exécute les migrations de disposition du répertoire personnel en attente |
+| `failproofai uninstall` | Supprime les hooks et le démon avant de désinstaller le package |
+| `failproofai --version` | Affiche la version du package installé |
+| `failproofai --help` | Affiche les commandes et l'utilisation globale |
## Options de configuration
| Option | Utilisation |
| --- | --- |
-| `--connect --token ` | Se connecter de manière non interactive |
-| `--machine-id ` | Définir l'identifiant stable de la machine |
-| `--machine-label ` | Définir ou modifier le libellé du tableau de bord |
-| `--no-transcripts` | Envoyer les décisions sans le contenu des transcriptions |
-| `--disconnect` | Arrêter les récupérations de politiques Cloud et la livraison d'événements |
-| `--status` | Afficher l'état actuel de la machine |
-| `--pause [duration]` | Mettre en pause la session la plus récente dans le répertoire courant ; accepte des secondes, minutes ou heures, avec une valeur par défaut de 30 minutes |
-| `--resume` | Terminer une pause correspondante avant son expiration |
-| `--session ` | Cibler une session explicite pour la mise en pause ou la reprise |
-| `--all` | Avec `--resume`, terminer toutes les pauses actives |
+| `--connect --token ` | Connexion non interactive |
+| `--machine-id ` | Définit l'identifiant stable de la machine |
+| `--machine-label ` | Définit ou modifie le libellé du tableau de bord |
+| `--no-transcripts` | Envoie les décisions sans le contenu des transcripts |
+| `--disconnect` | Arrête les téléchargements de politiques Cloud et la distribution d'événements |
+| `--status` | Affiche l'état actuel de la machine |
+| `--pause [duration]` | Met en pause la session la plus récente dans le répertoire courant ; accepte des secondes, minutes ou heures, avec une valeur par défaut de 30 minutes |
+| `--resume` | Met fin à une pause correspondante avant son expiration |
+| `--session ` | Cible une session explicite pour la pause ou la reprise |
+| `--all` | Avec `--resume`, met fin à toutes les pauses actives |
-Les pauses locales suspendent les politiques intégrées, personnalisées et de convention pour une session. Elles expirent toujours et ne désactivent pas les politiques gérées par le Cloud. `block-self-pause` empêche un agent instrumenté d'utiliser cette échappatoire lui-même.
+Les pauses locales suspendent les politiques intégrées, personnalisées, de convention et de pack pour une session. Elles expirent toujours et ne désactivent pas les politiques gérées par le Cloud. `block-failproofai-commands` — qui est toujours actif et ne peut lui-même être ni désactivé ni mis en pause — empêche un agent instrumenté d'utiliser cette échappatoire.
-## Options de politiques
+## Options des politiques
| Option | Utilisation |
| --- | --- |
-| `--install`, `-i` | Activer les politiques et installer les hooks du harness |
-| `--uninstall`, `-u` | Désactiver les politiques ou supprimer les hooks |
-| `--cli ` | Cibler un ou plusieurs harnesses pris en charge |
-| `--scope user\|project\|local\|all` | Choisir la portée de configuration ; `all` est réservé à la désinstallation |
-| `--beta` | Inclure les politiques bêta |
-| `--custom`, `-c ` | Valider et charger un fichier de politique personnalisé ; répétable |
+| `--install`, `-i` | Active les politiques et installe les hooks du harnais |
+| `--uninstall`, `-u` | Désactive les politiques ou supprime les hooks |
+| `--cli ` | Cible un ou plusieurs harnais pris en charge |
+| `--scope user\|project\|local\|all` | Choisit la portée de la configuration ; `all` est réservé à la désinstallation |
+| `--beta` | Inclut les politiques en version bêta |
+| `--custom`, `-c ` | Valide et charge un fichier de politique personnalisé ; répétable |
-## Options de livraison et de maintenance
+## Options de distribution et de maintenance
| Commande | Options |
| --- | --- |
@@ -85,9 +90,9 @@ Les pauses locales suspendent les politiques intégrées, personnalisées et de
| `migrate` | `--dry-run` |
| `uninstall` | `--purge`, `--dry-run`, `--yes` |
-`failproofai update` doit être exécuté après `npm install -g failproofai@latest` ; il effectue les migrations de disposition du répertoire personnel, installe le binaire daemon correspondant et redémarre le service. `--no-daemon` effectue uniquement la migration de disposition.
+`failproofai update` doit être exécuté après `npm install -g failproofai@latest` ; il effectue les migrations de disposition du répertoire personnel, installe le binaire du démon correspondant et redémarre le service. `--no-daemon` effectue uniquement la migration de disposition.
-## Chemins du harness
+## Chemins du harnais
```text
failproofai harness list [harness]
@@ -95,11 +100,11 @@ failproofai harness add-path [label=]
failproofai harness remove-path
```
-Les noms de harness pris en charge sont `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` et `goose`.
+Les noms de harnais pris en charge sont `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` et `goose`.
-Les libellés permettent de distinguer les identifiants d'agents dérivés lorsque deux racines contiennent des copies du même projet. Les racines qui se chevauchent et les libellés en double sont rejetés pour éviter les collectes dupliquées ou la corruption du curseur. La configuration des chemins supplémentaires se recharge sans redémarrage du daemon.
+Les libellés permettent de distinguer les identifiants d'agents dérivés lorsque deux racines contiennent des copies du même projet. Les racines qui se chevauchent et les libellés en double sont rejetés pour éviter les collectes en double ou la corruption du curseur. La configuration des chemins supplémentaires se recharge sans redémarrage du démon.
-Les environnements conteneurisés peuvent remplacer les chemins supplémentaires configurés par fichier par une variable séparée par des virgules nommée `FAILPROOFAI__EXTRA_PATHS`, par exemple :
+Les environnements conteneurisés peuvent remplacer les chemins supplémentaires configurés par fichier avec une variable séparée par des virgules nommée `FAILPROOFAI__EXTRA_PATHS`, par exemple :
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
@@ -107,26 +112,28 @@ export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/opencl
## Variables d'environnement
-Utilisez les fichiers de configuration pour le comportement persistant de la machine. Les variables d'environnement sont particulièrement utiles pour les conteneurs, les tests et les processus uniques.
+Utilisez des fichiers de configuration pour le comportement persistant de la machine. Les variables d'environnement sont plus utiles pour les conteneurs, les tests et un seul processus.
| Variable | Utilisation |
| --- | --- |
-| `FAILPROOFAI_HOME` | Déplacer l'ensemble de la disposition `~/.failproofai` |
-| `FAILPROOFAI_LOG_LEVEL` | Définir le niveau de verbosité des journaux locaux |
-| `FAILPROOFAI_HOOK_LOG_FILE` | Écrire les diagnostics des hooks dans un fichier sélectionné |
-| `FAILPROOFAI_TELEMETRY_DISABLED=1` | Désactiver la télémétrie anonyme pour ce processus |
-| `FAILPROOFAI_NO_FIRST_RUN=1` | Ignorer la configuration interactive au premier lancement |
-| `FAILPROOFAI_NO_AUTO_AUDIT=1` | Ignorer l'audit local après la configuration |
-| `FAILPROOFAI_LLM_BASE_URL` | Remplacer le point de terminaison compatible OpenAI utilisé par les politiques LLM |
-| `FAILPROOFAI_LLM_API_KEY` | Fournir la clé API utilisée par les politiques LLM |
-| `FAILPROOFAI_LLM_MODEL` | Sélectionner le modèle utilisé par les politiques LLM |
-| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Limiter le temps de chargement des modules de politiques personnalisés |
-| `FAILPROOFAI__EXTRA_PATHS` | Remplacer les chemins de capture supplémentaires configurés pour un harness |
-| `NO_COLOR` | Désactiver la sortie terminal colorée |
-
-Les variables de répertoire personnel propres à chaque agent, telles que `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` et `OPENCLAW_HOME`, remplacent l'emplacement où Failproof AI découvre les sessions locales pour ce harness.
-
-## Mettre en pause ou supprimer une machine en toute sécurité
+| `FAILPROOFAI_HOME` | Déplace la disposition complète de `~/.failproofai` |
+| `FAILPROOFAI_LOG_LEVEL` | Définit le niveau de verbosité des journaux locaux |
+| `FAILPROOFAI_HOOK_LOG_FILE` | Écrit les diagnostics des hooks dans un fichier sélectionné |
+| `FAILPROOFAI_TELEMETRY_DISABLED=1` | Désactive la télémétrie anonyme pour ce processus |
+| `FAILPROOFAI_NO_FIRST_RUN=1` | Ignore la configuration interactive au premier lancement |
+| `FAILPROOFAI_NO_AUTO_AUDIT=1` | Ignore l'audit local après la configuration |
+| `FAILPROOFAI_LLM_BASE_URL` | Remplace le point de terminaison compatible OpenAI utilisé par les politiques LLM |
+| `FAILPROOFAI_LLM_API_KEY` | Fournit la clé API utilisée par les politiques LLM |
+| `FAILPROOFAI_LLM_MODEL` | Sélectionne le modèle utilisé par les politiques LLM |
+| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Limite le temps de chargement des modules de politiques personnalisées |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Refuse de télécharger les packs et les binaires du démon ; ce qui est installé continue d'être appliqué |
+| `FAILPROOFAI_PACK_BASE_URL` | Récupère les packs depuis un miroir au lieu de `github.com` |
+| `FAILPROOFAI__EXTRA_PATHS` | Remplace les chemins de capture supplémentaires configurés pour un harnais |
+| `NO_COLOR` | Désactive la colorisation de la sortie terminal |
+
+Les variables de répertoire personnel spécifiques aux agents, telles que `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` et `OPENCLAW_HOME`, remplacent l'emplacement où Failproof AI découvre les sessions locales pour ce harnais.
+
+## Mettre en pause ou retirer une machine en toute sécurité
```bash
failproofai config --pause
@@ -134,9 +141,9 @@ failproofai config --status
failproofai config --resume
```
-La mise en pause d'une session locale ne désactive pas les politiques gérées par le Cloud. Restaurez les déploiements Cloud via le workflow d'application Cloud lorsque le déploiement lui-même est à l'origine du problème.
+La mise en pause d'une session locale ne désactive pas les politiques gérées par le Cloud. Restaurez les déploiements Cloud via le workflow d'application Cloud lorsque le déploiement lui-même pose problème.
-Avant de supprimer le package npm, supprimez les hooks installés et le daemon :
+Avant de supprimer le package npm, supprimez les hooks installés et le démon :
```bash
failproofai uninstall --dry-run
@@ -147,5 +154,5 @@ npm rm -g failproofai
Exécutez `failproofai --help` pour obtenir des détails spécifiques à la version.
- Exécutez `failproofai uninstall` avant `npm rm -g failproofai` ; npm ne supprime pas les hooks d'agent installés ni le service daemon.
+ Exécutez `failproofai uninstall` avant `npm rm -g failproofai` ; npm ne supprime pas les hooks d'agent installés ni le service du démon.
\ No newline at end of file
diff --git a/docs/fr/start/quickstart.mdx b/docs/fr/start/quickstart.mdx
index b3ea096f..c2b6240c 100644
--- a/docs/fr/start/quickstart.mdx
+++ b/docs/fr/start/quickstart.mdx
@@ -1,17 +1,17 @@
---
title: "Démarrage rapide"
-description: "Capturez une session d'agent, identifiez un échec et commencez à le prévenir."
+description: "Capturez une session d'agent, identifiez une défaillance et commencez à la prévenir."
icon: "zap"
---
-Ce guide de démarrage rapide vous permet de configurer une machine pour qu'elle transmette des sessions, d'effectuer un audit et de déployer une politique. Utilisez la compétence pour configurer Failproof AI, ou suivez les étapes manuelles.
+Ce guide de démarrage rapide vous permet de configurer une machine pour qu'elle rapporte des sessions, d'exécuter un audit et de déployer une politique. Utilisez le skill pour configurer Failproof AI, ou suivez les étapes manuelles.
-**Quelle est votre situation ?** Si votre agent s'exécute dans l'un des 12 [harnais](/fr/reference/harnesses) pris en charge — une CLI de développement, ou une passerelle comme Hermes ou OpenClaw — suivez les étapes ci-dessous ; vous avez besoin de Node.js 20.9 ou version ultérieure. Si votre agent ne possède pas de harnais, instrumentez-le avec le [SDK Python](/fr/reference/custom-agents) pour le traçage et les audits, puis rejoignez la section [Exécutez votre premier contrôle d'échec](/fr/start/first-audit) ; l'application des politiques sur cette voie nécessite un hook dans votre environnement d'exécution.
+**Quelle est votre situation ?** Si votre agent s'exécute dans l'un des 12 [harnais](/fr/reference/harnesses) pris en charge — un CLI de codage, ou une passerelle comme Hermes ou OpenClaw — suivez les étapes ci-dessous ; vous aurez besoin de Node.js 20.9 ou version ultérieure. Si votre agent n'a pas de harnais, instrumentez-le avec le [SDK Python](/fr/reference/custom-agents) pour le traçage et les audits, puis rejoignez la section [Exécuter votre premier contrôle de défaillance](/fr/start/first-audit) ; l'application des politiques sur ce chemin nécessite un hook dans votre runtime.
-
+
-
+
```bash
npx skills add FailproofAI/skills
```
@@ -21,7 +21,7 @@ Ce guide de démarrage rapide vous permet de configurer une machine pour qu'elle
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- Votre agent inspecte le projet, choisit l'intégration appropriée, effectue la configuration et vérifie son bon fonctionnement. Consultez le [dépôt de compétences FailproofAI](https://github.com/FailproofAI/skills) pour les compétences individuelles et les options d'installation avancées.
+ Votre agent inspecte le projet, choisit l'intégration pertinente, effectue la configuration et la vérifie. Consultez le [dépôt de skills FailproofAI](https://github.com/FailproofAI/skills) pour les skills individuels et les options d'installation avancées.
@@ -29,7 +29,7 @@ Ce guide de démarrage rapide vous permet de configurer une machine pour qu'elle
## Avant de commencer
1. Ouvrez le [tableau de bord Failproof AI](https://app.befailproof.ai) et créez un compte ou connectez-vous avec votre adresse e-mail professionnelle.
-2. Accédez à **Administration → Keys** et créez une clé avec `events:add` et `policies:pull`.
+2. Accédez à **Administration → Clés** et créez une clé avec `events:add` et `policies:pull`.
3. Copiez le secret à usage unique et stockez-le sur la machine cible :
```bash
@@ -45,7 +45,7 @@ export FAILPROOFAI_KEY=""
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- Les transcriptions de sessions sont envoyées par défaut. Ajoutez `--no-transcripts` pour transmettre l'activité des hooks et les décisions de politique sans le contenu des transcriptions.
+ Les transcriptions de sessions sont envoyées par défaut. Ajoutez `--no-transcripts` pour rapporter l'activité des hooks et les décisions de politique sans le contenu des transcriptions.
Si cette machine possède déjà un historique d'agent, prévisualisez et importez les sept derniers jours, puis attendez la fin de la livraison. Ignorez cette étape sur une nouvelle machine.
@@ -57,28 +57,28 @@ export FAILPROOFAI_KEY=""
Ouvrez **Sessions** dans Failproof AI et sélectionnez une session importée.
-
- Cette étape attache Failproof AI à votre harnais et installe les 40 politiques intégrées. Utilisez-les pour observer les décisions de politique locales et tester l'application avant que Failproof AI n'audite vos sessions et n'écrive des politiques pour vos agents.
+
+ Cette étape connecte Failproof AI à votre harnais et installe les 39 politiques intégrées. Utilisez-les pour visualiser les décisions de politique locales et tester l'application avant que Failproof AI n'audite vos sessions et n'écrive des politiques pour vos agents.
- Laissez l'installateur détecter votre harnais automatiquement, ou nommez-en un explicitement. Chacun des 12 est une valeur `--cli` valide — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
+ Laissez l'installateur détecter votre harnais, ou nommez-en un explicitement. Chacun des 12 est une valeur `--cli` valide — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
```bash
- failproofai policies --install --cli claude --scope user # une CLI de développement
+ failproofai policies --install --cli claude --scope user # un CLI de codage
failproofai policies --install --cli hermes --scope user # une passerelle Slack/Telegram
```
- Le blocage d'un appel d'outil avant son exécution est vérifié sur les 12 harnais. Les contrôles en fin de tour sont vérifiés sur 8 — consultez la [capacité d'application](/fr/reference/harnesses#enforcement-capability) pour la matrice par harnais.
+ Le blocage d'un appel d'outil avant son exécution est vérifié sur les 12. Les verrous de fin de tour sont vérifiés sur 8 — consultez les [capacités d'application](/fr/reference/harnesses#enforcement-capability) pour la matrice par harnais.
- Suivez [Exécutez votre premier contrôle d'échec](/fr/start/first-audit). Utilisez un objectif concret tel que « trouver les sessions où l'agent a réessayé un outil défaillant sans modifier son approche ».
+ Suivez [Exécuter votre premier contrôle de défaillance](/fr/start/first-audit). Utilisez un objectif concret, par exemple « trouver les sessions où l'agent a réessayé un outil défaillant sans modifier son approche ».
-
- Suivez [Prévenez votre premier échec avec une politique](/fr/start/first-policy). Commencez en mode observation, inspectez les correspondances, puis appliquez la version révisée.
+
+ Suivez [Prévenir votre première défaillance avec une politique](/fr/start/first-policy). Commencez en mode observation, inspectez les correspondances, puis appliquez la version révisée.
- Exécutez `failproofai config --status`. Une configuration saine indique la connexion au cloud, l'état du démon et si l'application des politiques est en pause.
+ Exécutez `failproofai config --status`. Une configuration saine signale la connexion au cloud, l'état du daemon et si l'application des politiques est en pause.
\ No newline at end of file
diff --git a/docs/he/policies/builtin-catalog.mdx b/docs/he/policies/builtin-catalog.mdx
index 0d67ef8d..1e418ffc 100644
--- a/docs/he/policies/builtin-catalog.mdx
+++ b/docs/he/policies/builtin-catalog.mdx
@@ -1,106 +1,106 @@
---
-title: "קטלוג מדיניויות מובנה"
-description: "בדוק כל מדיניות Failproof AI מובנית, את הטריגר שלה, המצב המומלץ, והפרמטרים הניתנים להגדרה."
+title: "קטלוג המדיניויות המובנות"
+description: "סקור כל מדיניות Failproof AI מובנית, את הטריגר שלה, המצב המומלץ והפרמטרים הניתנים להגדרה."
icon: "list-checks"
---
-החבילה המותקנת היא מקור האמת לזמינות המדיניויות. הרץ `failproofai policies` אחרי כל שדרוג כי ערכי הקטלוג וההתנהגות עשויים להשתנות עם גרסת החבילה.
+החבילה המותקנת היא מקור האמת לזמינות המדיניויות. הרץ את `failproofai policies` אחרי כל שדרוג כי ערכי הקטלוג וההתנהגות עלולים להשתנות עם גרסת החבילה.
-## בסיס מומלץ
+## קו בסיס מומלץ
-הבחירה המומלצת של ההגדרה המודרכת כרגע מאפשרת מחטאי סודות, הגנות סביבה, הגנה עצמית, שומרי פקודות קטסטרופליים והגנת ענפים מוגנים:
+הבחירה המומלצת של ההתקנה המודרכת מאפשרת כרגע מטהרי סודות, הגנות סביבה, הגנה עצמית, שומרי פקודות קטסטרופליות והגנת ענפים מוגנים:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-המומלץ הוא בכוונה צר יותר מ**הכל**. מדיניויות תשתית וזרימת עבודה עשויות להפריע לעבודה תקפה ויש להפעיל אותן במאגרים ובמכונות שצריכים אותן.
+`block-failproofai-commands` **תמיד פעילה**. היא רשומה למעלה לצורך שלמות, אך היא נרשמת בכל הערכה בין אם היא מופיעה בסט המופעל שלך ובין אם לא, ולא ניתן להשבית או להשהות אותה — זוהי הגנה נגד הסוכן שמסיר את האכיפה שהסוכן יכול להסיר אינה הגנה.
+
+המומלץ הוא בכוונה צר יותר מ**הכל**. מדיניויות תשתית וזרימת עבודה יכולות להפריע לעבודה תקינה וצריך להיות מופעלות עבור המאגרים והמכונות הזקוקות להן.
## סודות וסביבה
| מדיניות | טריגר | תוצאה |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | הסתר JWTs מפלט כלים לפני שהמודל רואה אותם. |
-| `sanitize-api-keys` | `PostToolUse` | הסתר OpenAI, Anthropic, GitHub, AWS, Stripe, ומפתחות Google נפוצים. |
-| `sanitize-connection-strings` | `PostToolUse` | הסתר מחרוזות חיבור מסד נתונים המכילות כמויות. |
-| `sanitize-private-key-content` | `PostToolUse` | הסתר גופי PEM של מפתח פרטי. |
-| `sanitize-bearer-tokens` | `PostToolUse` | הסתר אסימוני ההרשאה. |
-| `protect-env-vars` | `PreToolUse` בכלים של shell | חסום פקודות שמעדכנות משתני סביבה. |
+| `sanitize-jwt` | `PostToolUse` | הסר JWTs מפלט הכלי לפני שהמודל רואה אותם. |
+| `sanitize-api-keys` | `PostToolUse` | הסר מפתחות נפוצים של OpenAI, Anthropic, GitHub, AWS, Stripe ו-Google. |
+| `sanitize-connection-strings` | `PostToolUse` | הסר מחרוזות חיבור לבסיס נתונים המכילות אישורים. |
+| `sanitize-private-key-content` | `PostToolUse` | הסר גופי מפתח פרטי PEM. |
+| `sanitize-bearer-tokens` | `PostToolUse` | הסר אסימוני הרשאה. |
+| `protect-env-vars` | `PreToolUse` בכלים של shell | חסום פקודות שמזלזלות משתנות סביבה. |
| `block-env-files` | `PreToolUse` | חסום קריאה וכתיבה של קבצי `.env`. |
-| `block-read-outside-cwd` | `PreToolUse` בכלים read, glob, grep, או shell | שמור קריאות בתוך ספריית העבודה של הסשן. |
-| `block-secrets-write` | `PreToolUse` בכלים של write | חסום כתיבה לשמות קבצים נפוצים של מפתחות סוד והעמדות בתוקף. |
+| `block-read-outside-cwd` | `PreToolUse` בכלים של read, glob, grep או shell | השאר קריאות בתוך תיקיית העבודה של ההפעלה. |
+| `block-secrets-write` | `PreToolUse` בכלים של write | חסום כתיבה לשמות קבצים של מפתח סודי ואישורים נפוצים. |
## פקודות מסוכנות ותשתית
| מדיניות | טריגר | תוצאה |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | מנע סוכן מהשהיית אכיפתו שלו. |
-| `block-sudo` | `PreToolUse`, `PermissionRequest` | חסום `sudo` אלא אם קיים שיוך לדפוס allow. |
-| `block-curl-pipe-sh` | `PreToolUse` | חסום סקריפטים שהורדו מופנים ישירות ל-shell. |
+| `block-sudo` | `PreToolUse`, `PermissionRequest` | חסום `sudo` אלא אם דפוס allow תואם. |
+| `block-curl-pipe-sh` | `PreToolUse` | חסום סקריפטים מורידים המועברים ישירות לשל. |
| `block-rm-rf` | `PreToolUse` | חסום דפוסי מחיקה רקורסיבית קטסטרופליים. |
-| `block-failproofai-commands` | `PreToolUse` | מנע סוכנים משינוי או הסרת Failproof AI. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **תמיד פעילה, לא ניתן להשבית.** חסום כל הפעלה של Failproof AI CLI, השהיית עצמית וביטול התקנת מנהל חבילות. |
| `block-kubectl` | `PreToolUse` | שער פקודות Kubernetes. |
-| `block-terraform` | `PreToolUse` | שער פקודות Terraform וOpenTofu. |
+| `block-terraform` | `PreToolUse` | שער פקודות Terraform ו-OpenTofu. |
| `block-aws-cli` | `PreToolUse` | שער פקודות AWS CLI. |
| `block-gcloud` | `PreToolUse` | שער פקודות Google Cloud CLI. |
| `block-az-cli` | `PreToolUse` | שער פקודות Azure CLI. |
| `block-helm` | `PreToolUse` | שער פקודות Helm. |
-| `block-gh-pipeline` | `PreToolUse` | שער פקודות GitHub CLI שמשנות זרימת עבודה, הפעלה, מיזוג, שחרור, cache, וחלקי סוד. |
+| `block-gh-pipeline` | `PreToolUse` | שער פעולות GitHub CLI המשנות של זרימת עבודה, הפעלה, מיזוג, שחרור, מטמון וסודות. |
-## בטיחות Git ומסד נתונים
+## בטיחות Git ובסיס נתונים
| מדיניות | טריגר | תוצאה |
| --- | --- | --- |
| `block-push-master` | `PreToolUse` | חסום דחיפות ישירות לענפים מוגנים שהוגדרו. |
-| `block-force-push` | `PreToolUse` | חסום דחיפות כפויות; `--force-with-lease` נשאר מורשה בהטמעה הנוכחית. |
-| `block-work-on-main` | `PreToolUse` | חסום commits ומיזוגים בענפים מוגנים. |
-| `warn-git-amend` | `PreToolUse` | התרא לפני שכתוב מחדש של commit עם `--amend`. |
-| `warn-git-stash-drop` | `PreToolUse` | התרא לפני הפלת או ניקוי סטאשים קבוע. |
-| `warn-all-files-staged` | `PreToolUse` | התרא על `git add -A`, `git add .`, או `git add --all` רחב. |
-| `warn-destructive-sql` | `PreToolUse` | התרא על `DROP`, `TRUNCATE`, ו`DELETE` ללא `WHERE` דרך לקוחות מסד נתונים מוכרים. |
-| `warn-schema-alteration` | `PreToolUse` | התרא על פעולות `ALTER TABLE` עמודות וביטול שם מוכרות. |
+| `block-force-push` | `PreToolUse` | חסום כפיית דחיפות; `--force-with-lease` נשאר מותר בהטמעה הנוכחית. |
+| `block-work-on-main` | `PreToolUse` | חסום commits וmergים בענפים מוגנים. |
+| `warn-git-amend` | `PreToolUse` | הזהר לפני שכתוב מחדש commit עם `--amend`. |
+| `warn-git-stash-drop` | `PreToolUse` | הזהר לפני הטלה קבועה או ניקוי של stashes. |
+| `warn-all-files-staged` | `PreToolUse` | הזהר על `git add -A`, `git add .` או `git add --all` רחבים. |
+| `warn-destructive-sql` | `PreToolUse` | הזהר על `DROP`, `TRUNCATE` ו-`DELETE` ללא `WHERE` דרך לקוחות בסיס נתונים מוכרים. |
+| `warn-schema-alteration` | `PreToolUse` | הזהר על פעולות `ALTER TABLE` של עמודות ושינוי שמות מוכרים. |
-## חבילות, התנהגות מערכת, וזוגות סוכנים
+## חבילות, התנהגות מערכת וحلقות סוכן
| מדיניות | טריגר | תוצאה |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | התרא לפני פרסום לרישומי חבילות. |
-| `warn-global-package-install` | `PreToolUse` | התרא לפני התקנה גלובלית של חבילה. |
-| `prefer-package-manager` | `PreToolUse` | הנחה הסוכן להשתמש במנהל חבילות מותר. |
-| `warn-large-file-write` | `PreToolUse` בכלים של write | התרא מעל סף גודל קובץ שהוגדר. |
-| `warn-background-process` | `PreToolUse` | התרא על דפוסי תהליך רקע מנותקים או ארוכי טווח. |
-| `warn-repeated-tool-calls` | `PreToolUse` | התרא אחרי שלוש או יותר קריאות כלים זהות. |
+| `warn-package-publish` | `PreToolUse` | הזהר לפני פרסום למאגרי חבילות. |
+| `warn-global-package-install` | `PreToolUse` | הזהר לפני התקנה גלובלית של חבילות. |
+| `prefer-package-manager` | `PreToolUse` | הנחה את הסוכן להשתמש במנהל חבילות מותר. |
+| `warn-large-file-write` | `PreToolUse` בכלים של write | הזהר מעל סף גודל קובץ שהוגדר. |
+| `warn-background-process` | `PreToolUse` | הזהר על דפוסי תהליכים רקע מנותקים או בעלי חיים ארוכים. |
+| `warn-repeated-tool-calls` | `PreToolUse` | הזהר אחרי שלוש או יותר קריאות כלי זהות. |
-## זרימת עבודה של סיום משימה
+## זרימת עבודה סוף משימה
-מדיניויות אלה דורשות מנוף שפולט אירוע `Stop` תואם.
+מדיניויות אלו דורשות הרתעה הפולטת אירוע `Stop` תואם.
| מדיניות | תוצאה |
| --- | --- |
-| `require-commit-before-stop` | סרב להשלמה בזמן שעבודה מעקב נותרה לא מובילה. |
-| `require-push-before-stop` | סרב להשלמה בזמן שהתחייבויות נשארות מקומיות בלבד. |
-| `require-pr-before-stop` | דרוש בקשת משיכה לענף הנוכחי. |
-| `require-no-conflicts-before-stop` | דרוש מיזוג נקי כנגד ענף הבסיס שהוגדר. |
-| `require-ci-green-before-stop` | דרוש שבדיקות CI של HEAD הנוכחי יושלמו בהצלחה. |
+| `require-commit-before-stop` | דחה השלמה בזמן שעבודה מעקב נשארת לא committed. |
+| `require-push-before-stop` | דחה השלמה בזמן שcommits נשאר ברמה מקומית בלבד. |
+| `require-pr-before-stop` | דרוש pull request לענף הנוכחי. |
+| `require-no-conflicts-before-stop` | דרוש merge נקי מול ענף הבסיס שהוגדר. |
+| `require-ci-green-before-stop` | דרוש בדיקות CI של current-HEAD להשלים בהצלחה. |
-## הפניה פרמטרים
+## ייחוס פרמטרים
הגדר פרמטרים תחת אובייקט `policyParams` של ההיקף שנבחר. סוגים מאומתים על ידי כל מדיניות.
| מדיניות | פרמטר | סוג וברירת מחדל |
| --- | --- | --- |
-| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`; רשומות מכילות `regex` ו`label` |
+| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`; ערכים מכילים `regex` ו-`label` |
| `block-read-outside-cwd` | `allowPaths` | `string[]`, `[]` |
| `block-sudo` | `allowPatterns` | `string[]`, `[]` |
| `block-rm-rf` | `allowPaths` | `string[]`, `[]` |
-| Infrastructure blockers | `allowPatterns` | `string[]`, `[]` |
+| חוסמי תשתית | `allowPatterns` | `string[]`, `[]` |
| `block-secrets-write` | `additionalPatterns` | `string[]`, `[]` |
| `block-push-master` | `protectedBranches` | `string[]`, `["main", "master"]` |
| `block-work-on-main` | `protectedBranches` | `string[]`, `["main", "master"]` |
@@ -125,5 +125,5 @@ block-force-push
```
- דפוס allow מרחיב את מה שסוכן עשוי לעשות. בדוק את הטוקניזציה המדויקת וגרסאות פקודה בתוך המנוף המטרה לפני פריסה בחברה.
+ דפוס allow מרחיב את מה שסוכן עשוי לעשות. בדוק את הטוקניזציה המדויקת וגרסאות הפקודה בהרתעה היעד לפני פריסה בכל הצי.
\ No newline at end of file
diff --git a/docs/he/policies/failure-behavior.mdx b/docs/he/policies/failure-behavior.mdx
index 34a33202..0d11f875 100644
--- a/docs/he/policies/failure-behavior.mdx
+++ b/docs/he/policies/failure-behavior.mdx
@@ -1,19 +1,20 @@
---
-title: "התנהגות בעת כשל"
-description: "הבנת מה קורה כאשר הערכת המדיניות או ה-daemon המקומי אינו זמין."
+---
+title: "התנהגות כשלון"
+description: "הבן מה קורה כשהערכת המדיניות או הדימון המקומי אינו זמין."
icon: "shield-alert"
---
-Failproof AI תוכנן כך שכשל אכיפה יהיה גלוי במקום להתיר בשקט עבודה מסוכנת.
+Failproof AI מעוצב כך שכשל בהטמעה יהיה נראה במקום להתיר בשקט עבודה מסוכנת.
-## אבחון בלוק סגור כשל
+## אבחן בלוק סגור כשלון
- 1. עברו ל-**Admin → enforcement** ופתחו את המכונה.
- 2. בדקו את ה-check-in האחרון שלה, את ה-deployment המוקצה, וה-deployment המדווח.
- 3. עברו ל-**Observe → policy** ופתחו את הסשן של ההחלטה המדחויה.
- 4. אשרו האם הסיבה מדווחת בנוגע לנגישות daemon, חוסר התאמה בגרסה, או המדיניות עצמה.
+ 1. עבור ל **Admin → enforcement** ופתח את המכונה.
+ 2. בדוק את ה-check-in האחרון שלה, את ההטמעה שהוקצתה, ואת ההטמעה שדווחה.
+ 3. עבור ל **Observe → policy** ופתח את הסשן של החלטת הכשל.
+ 4. אשר האם הסיבה מדווחת על נגישות דימון, חוסר התאמה של גרסה, או המדיניות עצמה.
@@ -23,21 +24,45 @@ Failproof AI תוכנן כך שכשל אכיפה יהיה גלוי במקום ל
failproofai config
```
- הרצה חוזרת של `failproofai config` מעדכנת ומפעילה מחדש את ה-daemon לאחר שדרוג חבילה.
+ הפעלה מחדש של `failproofai config` מעדכנת ומפעילה מחדש את הדימון לאחר שדרוג חבילה.
-על מכונה שהוגדרה להשתמש ב-`failproofaid`, ה-daemon הוא המעריך היחיד. אם הוא לא נגיש או גרסת הפרוטוקול שלו אינה תואמת ל-CLI, הערכת ה-hook נכשלת בצורה סגורה. הפעולה מדוחית עם סיבה המכוונת את המפעיל לבדיקה או עדכון ה-daemon.
+על מכונה המוגדרת להשתמש ב-`failproofaid`, הדימון הוא המעריך היחיד. אם הוא אינו נגיש או גרסת הפרוטוקול שלו אינה תואמת ל-CLI, הערכת ה-hook נכשלת בצורה סגורה. הפעולה נשללת עם סיבה המכוונת את המפעיל לבדוק או לעדכן את הדימון.
-לפני קביעת daemon, ה-hooks מעריכים מדיניות בתוך התהליך. לאחר ש-daemon configuration מוקלט, Failproof AI לא חוזר בשקט למעריך שני כאשר ה-daemon נכשל.
+לפני תצורת הדימון, ה-hooks מעריכים מדיניויות בתהליך. לאחר שהתצורה של הדימון נרשמה, Failproof AI לא חוזר בשקט למעריך שני כאשר הדימון נכשל.
-## תגובה להחלטה סגורה כשל
+## הגב להחלטה סגורה כשלון
-1. הריצו `failproofai config --status`.
-2. אם הגרסאות שונות, הריצו מחדש את `failproofai config` לאחר עדכון החבילה.
-3. אם ה-daemon אינו נגיש, בדקו את מצב השירות שלו ואת יומני המקום.
-4. המשיכו בעבודת agent רק לאחר שנתיב הערכת מדיניות ידוע הוא בריא.
+1. הרץ `failproofai config --status`.
+2. אם הגרסאות שונות, הרץ מחדש `failproofai config` לאחר עדכון החבילה.
+3. אם הדימון אינו נגיש, בדוק את מצב השירות שלו ואת היומנים המקומיים.
+4. חזור לעבודת סוכן רק לאחר שנתיב הערכת מדיניות ידוע הוא בריא.
- אל תנסו שוב וחוזר על הפעולה המחוסמת. תגובה סגורה כשל פירושה שהמערכת לא הצליחה לקבוע שהפעולה הייתה בטוחה.
-
\ No newline at end of file
+ אל תנסה שוב וחוזר פעמים רבות את הפעולה החסומה. תגובה סגורה כשלון פירושה שהמערכת לא יכלה לקבוע שהפעולה הייתה בטוחה.
+
+
+## חבילה לא תעלה
+
+מכונה שנאמר לה להטיל ממשלה חבילה, ולא יכולה להפעיל אותה, משללת במקום להמשיך בשקט. הטריגר הוא **ציפיה מתועדת**, לעולם לא ריקה: מכונה ללא חבילות מותקנות שקטה, בעוד שחבילה שנהנת וכמויות לא יתפרו - או שמגיעה פחות מאשר המניפסט שלה מהנה - משללת.
+
+ה-deny הוא **צר**, בניגוד לדימון אי-נגיש. דימון שלא ניתן להגיע אליו פירושו שלא התרחשה הערכה כלל, כך ששום דבר לא יכול להיות ידוע כבטוח. חבילה שלא תעלה יש לה קבוצה ספירה של שומרים חסרים, כי כל מדיניות המוצהרת נושאת את שלה `match` - כך שהיא משללת רק את האירועים והכלים שהמדיניויות הללו כיסו, והכל אחר ממשיך.
+
+הוא לא יורה עבור:
+
+- חבילה `observe`, המעריכה ויוצרת על ידי בנייה
+- מדיניויות שלעולם לא לקחת, או הדלקת מפורשת
+- חבילה שהטוען לעולם לא קיבל, כאשר "אין הרשמות" לא יכול להיות מובחן מדילוג מכוון
+- השהיית סשן פעילה
+- זמן הקצאה טעון, שהוא חולף - רגע אחד של דיסק איטי חייב לא שלל עד שאדם אנושי מתערב
+
+`UserPromptSubmit` **מנחה** במקום משלול, כל מה שהמדיניות החסרה הצהירה. משלול כללי היה לוקח את זה ויינעול אותך מהסוכן שיכול לתקן את הבעיה.
+
+### מה לעשות
+
+```bash
+failproofai pack list
+```
+
+זה שם כל חבילה מותקנת שלא תעלה, אומר למה, ויוצא לא אפס. לאחר מכן או התקן אותה מחדש (`failproofai pack add `) או הסר אותה (`failproofai pack remove `) - הסרתה משוללת את הציפיה, והשלול מפסיק איתו.
\ No newline at end of file
diff --git a/docs/he/policies/packs.mdx b/docs/he/policies/packs.mdx
new file mode 100644
index 00000000..ff53046b
--- /dev/null
+++ b/docs/he/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "חבילות מדיניויות"
+description: "התקן מערכת מדיניויות שפורסמה כהוצאת GitHub, וניהל את מה שהיא אוכפת."
+icon: "package"
+---
+
+חבילה היא מערכת מדיניויות שפורסמה כהוצאת GitHub. פקודה אחת מתקינה אותה, סכומי הביקורת של ההוצאה מאומתים לפני כל פעולה, והתמצות מתועדת כדי שהחבילה לא תוכל להשתנות במכונה שלך בעתיד.
+
+## התקן את מדיניויות Failproof AI
+
+```bash
+failproofai pack add core
+```
+
+זה מתקין את המערכה שאנו מפרסמים, מהעותק בתוך החבילה — לכן הוא לא צריך רשת ולא יכול להיכשל מאחורי proxy. קח חלק ממנה:
+
+```bash
+failproofai pack add core --policy block-rm-rf # אחת, או כמה מופרדות בפסיק
+failproofai pack add core --category dangerous-commands # קטגוריה שלמה
+failproofai pack add core --all # הכל בה
+```
+
+`failproofai pack list` מפרט כל קטגוריה שהחבילה מציעה.
+
+## ראה מה חבילה מכילה, לפני התקנה
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+מפרט כל מדיניות שהחבילה מחזיקה, מקובצת לפי קטגוריה, וסימון איזו מהן הכותב שלה מפעיל כברירת מחדל ואילו הן הצמדות. זה קורא **רק את המניפסט** — הקובץ העיקרי לעולם לא מוּרד ולעולם לא יובא, כך שהסתכלות בחבילה של זר לא יכול להריץ קוד של זר. המניפסט עדיין בדוק נגד `SHA256SUMS` של ההוצאה עצמה, לכן מה שאתה קורא זה מה שיתקין.
+
+`failproofai pack list` ללא מקור מפרט את החבילות שכבר מותקנות כאן.
+
+## התקן חבילה של מישהו אחר
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+כל אלה עובדים — הדבק איזה שיש לך:
+
+| מקור | תוצאה |
+| --- | --- |
+| `acme/support-agent` | הוצאה החדשה ביותר, **מוצמדת** לתג המדויק שלה |
+| `acme/support-agent@v2.1.0` | הוצאה זו |
+| `github:acme/support-agent@v2.1.0` | אותו הדבר, כתוב במפורש |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | אותו הדבר, מועתק מדפדפן |
+
+ללא שם תג מתקין את ההוצאה החדשה ביותר **ומצמיד אותה**, ואז מגיד לך איזה תג הוא בחר. מה שנרשם תמיד קובע בדיוק הוצאה אחת, כך שהתקנה חוזרת לא יכולה להסחף.
+
+## קח חלק מחבילה
+
+כברירת מחדל אתה מקבל את **שלה** של החבילה עצמה — המדיניויות שהכותב שלה סימן כבטוחות להפעלה ללא השגחה — לא הכל שהיא מכילה.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` ו-`--policy` משתלבים כאיחוד (`--only` מקובל כנרדף ל-`--policy`). הוספה חוזרת בגרסה חדשה יותר שומרת על מה שבחרת במקום להחזיר את השאר בהפעלה.
+
+## נהל מה פועל
+
+```bash
+failproofai policies # כל מקור ברשימה אחת, חבילות כלולות
+failproofai pack list # רק חבילות, מקובצות לפי קטגוריה
+failproofai policies --uninstall block-refunds # כבה מדיניות חבילה אחת
+failproofai policies --install block-refunds # ובחזרה הפעל
+failproofai pack remove acme/support-agent
+```
+
+שם חשוף פירושו ה-**builtin** כאשר קיים אחד בשם זה. שם את עותק החבילה בבירור כשאתה צריך ל:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+אם חבילה משלחת מדיניות שגם שם שלה הוא **builtin מופעל**, ה-builtin רץ והעותק של החבילה דלוק — אותו הגן היה מוערך פעמיים אחרת. כבה את ה-builtin כדי להשתמש בעותק של החבילה במקום.
+
+
+## מהיכן מדיניויות Failproof AI מגיעות
+
+`core` קורא את העותק שנשלח בחבילת npm. אותה מערכה פורסמת כהוצאת GitHub, שמה שאתה מתקין אם אתה רוצה גרסה ספציפית:
+
+```bash
+failproofai pack add core # מחבילה זו, ללא רשת
+failproofai pack add FailproofAI/policies # אותה מערכה, מהוצאת GitHub שלה
+```
+
+## מה שלמות עושה ולא עושה
+
+`SHA256SUMS` משלח בהוצאה זהה לקובץ, כך שהוא **לא** חתימה ולא מוכיח כלום על מי פרסם אותה. מה שהוא כן מוכיח זה שה-bytes הם שהוצאה פרסמה — וכי תמצות מתועדת כאשר אתה מוסיף את החבילה וחדש־אומתת לפני כל יבוא, חבילה לא יכולה להשתנות תחת מכונתך. מאגר שמסדר מחדש תגים או מחליף קובץ מפסיק לטעון במקום להריץ בשקט משהו אחר.
+
+בזמן התקנה החבילה גם **מיובאת פעם אחת** ובדוקה נגד המניפסט שלה. חבילה שקובץ שלה לא משתתח, או שרושמת משהו שלא הוא הצהיר, מסורבת לפני שום הפעלה — במקום התקנה ניקיה וכשל בקריאת כלי הבאה שלך.
+
+## כאשר חבילה לא תטען
+
+חבילה שמכונה זו נאמרה לאכוף ולא יכולה להריץ **דוחה** את האירועים שהמדיניויות החסרות שלה כיסו, במקום להתיר אותם בשקט. ראה [Failure behavior](/he/policies/failure-behavior). `failproofai pack list` מפרט כל חבילה במצב זה וצוא לא אפס.
+
+## אופלין וראי
+
+| משתנה | השפעה |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | מסרב להביא; חבילות שכבר מותקנות ממשיכות אוכיפות |
+| `FAILPROOFAI_PACK_BASE_URL` | מצביע הבאה חבילות על ראי במקום `github.com` |
+
+פרסום החבילה שלך: ראה [Publish a pack](/he/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/he/policies/publish-a-pack.mdx b/docs/he/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..24e12786
--- /dev/null
+++ b/docs/he/policies/publish-a-pack.mdx
@@ -0,0 +1,91 @@
+---
+title: "פרסום חבילה"
+description: "שלח את המדיניויות שלך כהוצאת GitHub שכל אחד יוכל להתקין."
+icon: "upload"
+---
+
+חבילה היא שלושה קבצים המצורפים להוצאת GitHub. `failproofai pack build` כותב את שלושתם מקובץ מדיניות שכבר יש לך.
+
+## 1. כתוב את המדיניויות
+
+קובץ אחד, תוך שימוש באותה API כמו כל מדיניות מותאמת אישית. שני שדות נוספים משנים:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+`defaultEnabled` מוגדר כברירת מחדל ל־**false** כשאתה משמיט אותו. `failproofai pack add` פשוטה מדליקה רק את מה שסימנת — התקנת כל מדיניות של זר ללא감독מאינה החלטה שהמתקין צריך להחליט עבור המשתמש שלו.
+
+
+הקובץ חייב להיות **קובץ עצמאי אחד**. רק הקובץ מוצמד ל־digest, כך שחבילה שמייבאת קבצים מקומיים לא יכולה להצהיר בכנות שה־digest מכסה מה שפועל. צרור קודם (`esbuild`, `bun build`, `rollup`) ובנה את החבילה מה־bundle — `pack build` דוחה ייבוא מקומי ולא משלח הבטחה שהיא לא יכולה לשמור.
+
+
+## 2. בנה את נכסי ההוצאה
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+הוא כותב שלושה קבצים, ומאמת כל מדיניות עם **כללי הטוען שלו** קודם — כך שחבילה שלא הייתה יכולה להתקין אף פעם נכשלת כאן, שם אתה יכול לתקן אותה:
+
+| קובץ | מה זה |
+| --- | --- |
+| `failproofai-pack.json` | המניפסט: id, גרסה, אפקט, וערך אחד לכל מדיניות |
+| `failproofai-pack.mjs` | הקובץ שלך, כפי שהוא |
+| `SHA256SUMS` | `` לשני האחרים |
+
+דחוי בזמן בנייה: id שאינו `publisher/name`, שם מדיניות המכיל `/`, מדיניות שמצהירה `alwaysOn`, `description`, `category` או `match` חסר, קובץ שלא רושם כלום, וקובץ שמייבא קבצים מקומיים.
+
+## 3. צרף אותם להוצאה
+
+תג את ההוצאה עם אותה גרסה שבנית, וצרף את שלושת הקבצים כנכסי הוצאה:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+כל אחד יכול כעת להתקין אותה:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+שמות הנכסים קבועים — אלה מה שה־CLI של הצרכן בונה את כתובות ה־URL שלהם, ללא קריאת API וללא גילוי.
+
+## משלוח גרסה חדשה
+
+בנה עם ה־`--version` החדש, תג הוצאה חדשה, צרף את שלושת הנכסים שוב. הצרכנים מריצים את אותו `pack add` ושומרים על כל תת־קבוצה שבחרו; מדיניות שהם כיבו נשארת כבויה בעלייה.
+
+שינוי **השם** של מדיניות הוא שינוי משברי: מכונה שכיבתה אותה מדליקה הגדרה שלא קיימת עוד, והשם החדש מגיע בכל מה ש־`defaultEnabled` אומר.
+
+## מה המשתמשים שלך סומכים
+
+`SHA256SUMS` חיה באותה הוצאה כמו הקובץ, כך שהוא מוכיח שהבייטים הם אלה שפרסמת — לא מי אתה. כל מי שיכול לכתוב למאגר יכול לכתוב לשני הקבצים. ההגנה של המשתמשים שלך היא שה־digest מוצמד כשהם מתקינים, כך שמה שחדשת לא יכול להשתנות אחריהם.
+
+פרסום מממאגר שגישת הכתיבה שלו אתה שולט, וטפל בהוצאת חבילה כמו פרסום חבילה.
+
+## התבונן לפני שאתה אוכף
+
+מניפסט עשוי להצהיר `"effect": "observe"`. מדיניויות אלה פועלות והפסקותיהן **מתועדות ומושלכות** — כלום לא חסום. זו הדרך למדוד כלל חדש מול תנועה אמיתית לפני שהוא יכול להפריע לעבודה של מישהו.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/he/reference/failproof-cli.mdx b/docs/he/reference/failproof-cli.mdx
index b4b52530..ec755a3b 100644
--- a/docs/he/reference/failproof-cli.mdx
+++ b/docs/he/reference/failproof-cli.mdx
@@ -1,12 +1,12 @@
---
title: "Failproof AI CLI"
-description: "התקן hooks, נהל מדיניות מקומית, התחבר לענן והפעל את daemon המקומי."
+description: "התקן hooks, נהל מדיניות מקומית, התחבר ל-Cloud, והפעל את ה-daemon המקומי."
icon: "terminal"
---
התקן את ה-CLI המקומי עם `npm install -g failproofai`. הרץ אותו ללא ארגומנטים כדי לפתוח את לוח הבקרה של המדיניות המקומית.
-החבילה דורשת Node.js 20.9 ואילך. Bun 1.3 ואילך נתמך לפיתוח והתקנות מקוד מקור. `failproofai configure` ו-`failproofai setup` הם כינויים ל-`failproofai config`; `failproofai p` הוא כינוי ל-`failproofai policies`.
+החבילה דורשת Node.js גרסה 20.9 ומעלה. Bun גרסה 1.3 ומעלה נתמך לפיתוח והתקנות מקוד מקור. `failproofai configure` ו-`failproofai setup` הם כינויים ל-`failproofai config`; `failproofai p` הוא כינוי ל-`failproofai policies`.
## הגדר מכונה
@@ -25,57 +25,62 @@ failproofai config --status
| פקודה | תוצאה |
| --- | --- |
| `failproofai config` | הרץ הגדרת מכונה אינטראקטיבית |
-| `failproofai config --connect --token ` | התחבר לספיגת ענן וביצוע מדיניות |
-| `failproofai config --status` | הצג מצב חיבור, daemon, ביצוע והשהיה |
-| `failproofai policies` | רשום מדיניות מובנות ומותאמות |
+| `failproofai config --connect --token ` | התחבר ל-Cloud ingestion והעברת מדיניות |
+| `failproofai config --status` | הצג חיבור, daemon, משלוח, ומצב השהיה |
+| `failproofai policies` | רשום מדיניות מובנית, מותאמת אישית, קונבנציה, pack, וניהול ב-Cloud |
| `failproofai policies --install` | התקן hooks והפעל מדיניות |
-| `failproofai policy add ` | הפעל מדיניות מובנית אחת |
-| `failproofai policy remove ` | כבה מדיניות מובנית אחת |
-| `failproofai policies --uninstall` | כבה מדיניות או הסר hooks של ציוד |
-| `failproofai audit` | סרוק היסטוריית סוכן מקומית ופתח את תצוגת הביקורת המקומית |
-| `failproofai audit --schedule [days] --email ` | תזמן סריקות מקומיות חוזרות ושלח את הממצאים לאימייל |
-| `failproofai audit --status` | הצג את כתובת הדוח, המרווח והסריקה המתוזמנת הבאה |
-| `failproofai audit --no-schedule` | עצור סריקות חוזרות ללא מחיקת היסטוריית הביקורת |
+| `failproofai policy add ` | הפעל מדיניות אחת — מובנית, או `:` מ-pack מותקן |
+| `failproofai policy remove ` | השבת מדיניות אחת, אותה שמות |
+| `failproofai policies --uninstall` | השבת מדיניות או הסר hooks בחרוז |
+| `failproofai pack list` | רשום policy packs מותקנים וכל מדיניות שכל אחד מהם מכיל |
+| `failproofai pack add ` | התקן policy pack משחרור GitHub; ללא tag מייצר הכי חדש והצמוד |
+| `failproofai pack add --bundled` | התקן את המדיניות המובנית כ-pack, מהחבילה הזו, ללא רשת |
+| `failproofai pack build ` | בנה את שלושת נכסי ההפצה ל-pack שלך |
+| `failproofai pack remove ` | השבת pack מותקן |
+| `failproofai audit` | סרוק את היסטוריית agent מקומית ופתח את תצוגת הביקורת המקומית |
+| `failproofai audit --schedule [days] --email ` | תזמן סריקות מקומיות חוזרות ושלח את ממצאיהן בדוא״ל |
+| `failproofai audit --status` | הצג כתובת דו״ח, מרווח, וסריקה מתוזמנת הבאה |
+| `failproofai audit --no-schedule` | עצור סריקות חוזרות ללא מחיקת היסטוריית ביקורת |
| `failproofai harness list` | רשום נתיבי לכידה נוספים |
-| `failproofai flush --wait` | הספק את ספול האירוע הנוכחי |
-| `failproofai backfill --since 30d` | קרא מחדש היסטוריה שעברה בעבר |
-| `failproofai config --pause [duration]` | השהה הפעלה מקומית אחת למשך 30 דקות כברירת מחדל, עד 8 שעות |
-| `failproofai config --resume` | שחזר הפעלה מקומית מושהית אחת; הוסף `--all` כדי לנקות את כל ההשהיות |
-| `failproofai update` | סיים הגרות חבילות ועדכן את ה-daemon |
-| `failproofai migrate --dry-run` | תצוג קדימה או הרץ הגרות פריסת בית שלא בוצעו |
-| `failproofai uninstall` | הסר hooks ו-daemon לפני הסרת החבילה |
+| `failproofai flush --wait` | השלח את ספול האירועים הנוכחי |
+| `failproofai backfill --since 30d` | קרא מחדש היסטוריה שעברה קודם לכן |
+| `failproofai config --pause [duration]` | השהה הפעלה מקומית אחת ל-30 דקות כברירת מחדל, עד 8 שעות |
+| `failproofai config --resume` | חזור הפעלה מקומית מושהית; הוסף `--all` כדי לנקות את כל ההשהיות |
+| `failproofai update` | סיים הגדרות חבילה והדוק את ה-daemon |
+| `failproofai migrate --dry-run` | תצפית או הרץ הגדרות בקיץ-בבית מסיימות |
+| `failproofai uninstall` | הסר hooks וה-daemon לפני הסרת החבילה |
| `failproofai --version` | הדפס את גרסת החבילה המותקנת |
-| `failproofai --help` | הצג פקודות וגבול שימוש |
+| `failproofai --help` | הצג פקודות ושימוש גלובלי |
## דגלי תצורה
| דגל | שימוש |
| --- | --- |
-| `--connect --token ` | התחבר ללא אינטראקטיביות |
-| `--machine-id ` | הגדר את מזהה המכונה היציב |
-| `--machine-label ` | הגדר או שנה את תווית לוח הבקרה |
-| `--no-transcripts` | שלח החלטות ללא תוכן תמליל |
-| `--disconnect` | עצור משיכות מדיניות ענן והעברת אירוע |
+| `--connect --token ` | התחבר ללא אינטראקציה |
+| `--machine-id ` | קבע את זהות המכונה היציבה |
+| `--machine-label ` | קבע או שנה את תווית לוח הבקרה |
+| `--no-transcripts` | שלח החלטות ללא תוכן תמלול |
+| `--disconnect` | עצור משיכות מדיניות ב-Cloud ושילוח אירועים |
| `--status` | הצג את מצב המכונה הנוכחי |
-| `--pause [duration]` | השהה את ההפעלה החדשה ביותר בספריה הנוכחית; קבל שניות, דקות או שעות וברירת מחדל של 30 דקות |
-| `--resume` | סיים השהיה תואמת מוקדם |
-| `--session ` | כוון להפעלה מפורשת להשהיה או חידוש |
+| `--pause [duration]` | השהה את ההפעלה החדשה ביותר בספרייה הנוכחית; קבל שניות, דקות או שעות וברירת מחדל ל-30 דקות |
+| `--resume` | סיים השהיה משחקת מוקדם |
+| `--session ` | יעד הפעלה מפורשת להשהיה או חזרה |
| `--all` | עם `--resume`, סיים כל השהיה פעילה |
-השהיות מקומיות מושהות מדיניות מובנית, מותאמת וכנס למספר הפעלה אחת. הן תמיד פוקעות ואינן משבתות מדיניות מנוהלת בענן. `block-self-pause` מונע מסוכן מוכשר להשתמש בפתח בריחה זה בעצמו.
+השהיות מקומיות משעות מדיניות מובנית, מותאמת אישית, קונבנציה, ו-pack עבור הפעלה אחת. הם תמיד פוקעים ואינם משביתים מדיניות ניהול ב-Cloud. `block-failproofai-commands` — שהוא תמיד פועל ולא יכול להיות משביתה בעצמו — מונע מ-agent מלוכד להשתמש בדלת מילוט זו בעצמו.
## דגלי מדיניות
| דגל | שימוש |
| --- | --- |
-| `--install`, `-i` | הפעל מדיניות והתקן hooks ציוד |
-| `--uninstall`, `-u` | כבה מדיניות או הסר hooks |
-| `--cli ` | כוון לאחד או יותר ציודים נתמכים |
-| `--scope user\|project\|local\|all` | בחר את ניתוק ההגדרה; `all` הוא להסרה |
+| `--install`, `-i` | הפעל מדיניות והתקן hooks בחרוז |
+| `--uninstall`, `-u` | השבת מדיניות או הסר hooks |
+| `--cli ` | יעד חרוז אחד או יותר נתמך |
+| `--scope user\|project\|local\|all` | בחר טווח תצורה; `all` עבור uninstall |
| `--beta` | כלול מדיניות בטא |
-| `--custom`, `-c ` | אמת וטען קובץ מדיניות מותאם; חוזר |
+| `--custom`, `-c ` | אמת וטען קובץ מדיניות מותאם אישית; חוזר |
-## דגלי ביצוע ותחזוקה
+## דגלי משלוח ותחזוקה
| פקודה | דגלים |
| --- | --- |
@@ -85,9 +90,9 @@ failproofai config --status
| `migrate` | `--dry-run` |
| `uninstall` | `--purge`, `--dry-run`, `--yes` |
-`failproofai update` צריך להיות מורץ אחרי `npm install -g failproofai@latest`; הוא מבצע הגרות פריסת בית, מתקין את ה-daemon בינארי התואם ומפעיל מחדש את השירות. `--no-daemon` מבצע רק הגרת פריסה.
+`failproofai update` צריך להיות מופעל אחרי `npm install -g failproofai@latest`; זה מבצע הגדרות פריסה, מתקין את בינארי ה-daemon תואם, ומפעיל מחדש את השירות. `--no-daemon` מבצע רק הגדרות פריסה.
-## נתיבי ציוד
+## נתיבי חרוז
```text
failproofai harness list [harness]
@@ -95,11 +100,11 @@ failproofai harness add-path [label=]
failproofai harness remove-path
```
-שמות ציוד נתמכים הם `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` ו-`goose`.
+שמות חרוז נתמך הם `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, ו-`goose`.
-תוויות משמרות מזהי סוכן נגזרים כאשר שני שורשים מכילים עותקים של אותו פרויקט. שורשים חופפים וכינויים כפולים נדחים כדי למנוע אוסף כפול או קטע. תצורת נתיב נוסף טוענת מחדש ללא הפעלה מחדש של daemon.
+תוויות מרחב זהות agent נגזרות כאשר שני שורשים מכילים עותקים של אותו פרויקט. שורשים חופפים ותוויות כפולות נדחו כדי למנוע אוסף כפול או חרב corruption. תצורת נתיב נוסף מטענת מחדש ללא הפעלה מחדש של daemon.
-סביבות מכולה יכולות להחליף נתיבים נוספים שנוצרו בקובץ בעזרת משתנה המופרד בפסיקים בשם `FAILPROOFAI__EXTRA_PATHS`, למשל:
+סביבות קונטיינר יכולות להחליף נתיבים קבוצים בקובץ עם משתנה מופרד בפסיקים בשם `FAILPROOFAI__EXTRA_PATHS`, לדוגמה:
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
@@ -107,24 +112,26 @@ export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/opencl
## משתני סביבה
-השתמש בקובצי תצורה לתנהגות מכונה קבועה. משתני סביבה שימושיים ביותר למכולות, בדיקות והפעלה יחידה.
+השתמש בקובצי תצורה להתנהגות מכונה קבועה. משתני סביבה הם שימושיים ביותר לקונטיינרים, בדיקות, ותהליך אחד.
| משתנה | שימוש |
| --- | --- |
-| `FAILPROOFAI_HOME` | העבר את פריסת `~/.failproofai` המוחלטת |
-| `FAILPROOFAI_LOG_LEVEL` | הגדר את מילולות הרישום המקומי |
+| `FAILPROOFAI_HOME` | העבר את הפריסה המלאה `~/.failproofai` |
+| `FAILPROOFAI_LOG_LEVEL` | קבע רמת רבונות רישום מקומית |
| `FAILPROOFAI_HOOK_LOG_FILE` | כתוב אבחון hook לקובץ נבחר |
-| `FAILPROOFAI_TELEMETRY_DISABLED=1` | כבה טלמטריה אנונימית לתהליך זה |
-| `FAILPROOFAI_NO_FIRST_RUN=1` | דלג על הגדרת הפעלה ראשונה אינטראקטיבית |
-| `FAILPROOFAI_NO_AUTO_AUDIT=1` | דלג על ביקורת מקומית לאחר הגדרה |
-| `FAILPROOFAI_LLM_BASE_URL` | עקוף את נקודת הקצה התואמת OpenAI המשמשת למדיניות LLM |
-| `FAILPROOFAI_LLM_API_KEY` | ספק את מפתח ה-API המשמש למדיניות LLM |
-| `FAILPROOFAI_LLM_MODEL` | בחר את המודל המשמש למדיניות LLM |
-| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | חוסם טעינת מודול מדיניות מותאמת |
-| `FAILPROOFAI__EXTRA_PATHS` | החלף נתיבי לכידה נוספים מוגדרים לציוד אחד |
-| `NO_COLOR` | כבה פלט טרמינל צבוע |
-
-משתני בית ספציפיים לסוכן כגון `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` ו-`OPENCLAW_HOME` עוקפים היכן Failproof AI גילה הפעלות מקומיות לציוד זה.
+| `FAILPROOFAI_TELEMETRY_DISABLED=1` | השבת טלמטריה אנונימית להפעלה זו |
+| `FAILPROOFAI_NO_FIRST_RUN=1` | דלג על הגדרת הרצה ראשונה אינטראקטיבית |
+| `FAILPROOFAI_NO_AUTO_AUDIT=1` | דלג על ביקורת מקומית אחרי הגדרה |
+| `FAILPROOFAI_LLM_BASE_URL` | דרוס את נקודת הקצה תואמת OpenAI בשימוש במדיניות LLM |
+| `FAILPROOFAI_LLM_API_KEY` | ספק את מפתח ה-API בשימוש במדיניות LLM |
+| `FAILPROOFAI_LLM_MODEL` | בחר את המודל בשימוש במדיניות LLM |
+| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | חוק טעינת מודול מדיניות מותאמת אישית |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | דחה להביא packs ובינאריים daemon; מה שמותקן שומר על אכיפה |
+| `FAILPROOFAI_PACK_BASE_URL` | הביא packs ממראה במקום `github.com` |
+| `FAILPROOFAI__EXTRA_PATHS` | החלף נתיבי לכידה נוספים מוגדרים לחרוז אחד |
+| `NO_COLOR` | השבת פלט טרמינל צבעוני |
+
+משתני בית ספציפיים ל-agent כגון `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME`, ו-`OPENCLAW_HOME` דורסים היכן Failproof AI גוגל הפעלות מקומיות לחרוז זה.
## השהה או הסר מכונה בבטחה
@@ -134,9 +141,9 @@ failproofai config --status
failproofai config --resume
```
-השהיה של הפעלה מקומית אינה משבתת מדיניות מנוהלת בענן. שחזר פריסות ענן דרך זרימת האכיפה של ענן כאשר התצוג עצמו הוא הבעיה.
+השהיית הפעלה מקומית אינה משביתה מדיניות ניהול ב-Cloud. שחזר פריסות Cloud דרך זרימת עבודת אכיפה ב-Cloud כאשר ההטלה עצמה היא הבעיה.
-לפני הסרת חבילת npm, הסר hooks והוקינים daemon:
+לפני הסרת החבילה npm, הסר hooks מותקנים וה-daemon:
```bash
failproofai uninstall --dry-run
@@ -147,5 +154,5 @@ npm rm -g failproofai
הרץ `failproofai --help` לפרטים ספציפיים לגרסה.
- הרץ `failproofai uninstall` לפני `npm rm -g failproofai`; npm אינו מסיר hooks סוכן מותקנים או שירות daemon.
+ הרץ `failproofai uninstall` לפני `npm rm -g failproofai`; npm לא מסיר hooks agent מותקנים או שירות daemon.
\ No newline at end of file
diff --git a/docs/he/start/quickstart.mdx b/docs/he/start/quickstart.mdx
index 2e27d13e..cd8dc171 100644
--- a/docs/he/start/quickstart.mdx
+++ b/docs/he/start/quickstart.mdx
@@ -1,15 +1,16 @@
---
+---
title: "התחלה מהירה"
-description: "תופס סשן של סוכן, מוצא כשל, והתחל למנוע אותו."
+description: "תפוס הפעלת סוכן, מצא כשל והתחל למנוע אותו."
icon: "zap"
---
-התחלה מהירה זו מגבילה מכונה אחת לדיווח סשנים, מפעילה ביקורת, וממשנת מדיניות. השתמש בכישרון כדי להגדיר את Failproof AI, או עקוב אחר השלבים הידניים.
+התחלה מהירה זו מעלה מכונה אחת לדיווח הפעלות, מריצה ביקורת ופורסת מדיניות. השתמש בכישור כדי להגדיר את Failproof AI, או בצע את השלבים ידנית.
-**איזה נתיב הוא שלך?** אם הסוכן שלך פועל באחד מ-12 [מנשקים](/he/reference/harnesses) שנתמכים — CLI לקידוד, או שער כמו Hermes או OpenClaw — עקוב אחר השלבים למטה; אתה צריך Node.js 20.9 או מאוחר יותר. אם לסוכן שלך אין מנשק, תרגם אותו עם [Python SDK](/he/reference/custom-agents) לעקיבה וביקורות, ואז חזור ל-[הפעל את בדיקת הכשל הראשונה שלך](/he/start/first-audit); אוכיפוי בנתיב זה דורש hook בסביבת הריצה שלך.
+**איזו דרך היא שלך?** אם הסוכן שלך פועל באחד מ-12 [הרתקים](/he/reference/harnesses) הנתמכים — CLI קידוד, או שער כמו Hermes או OpenClaw — בצע את השלבים להלן; אתה זקוק Node.js 20.9 ואילך. אם לסוכן שלך אין הרתק, צור אותו בעזרת [Python SDK](/he/reference/custom-agents) לעקיבה וביקורות, ואז חזור אל [הרץ את בדיקת הכשל הראשונה שלך](/he/start/first-audit); אכיפה בנתיב זה דורשת hook בזמן ריצה שלך.
-
+
```bash
@@ -21,22 +22,22 @@ icon: "zap"
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- הסוכן שלך בוחן את הפרויקט, בוחר את האינטגרציה הרלוונטית, מבצע את ההגדרה, ומאמת אותה. ראה את [מאגר הכישורים של FailproofAI](https://github.com/FailproofAI/skills) לכישורים בודדים ואפשרויות התקנה מתקדמות.
+ הסוכן שלך בוחן את הפרויקט, בוחר את האינטגרציה הרלוונטית, מבצע את ההגדרה ומאמת אותה. ראה את [מאגר כישורי FailproofAI](https://github.com/FailproofAI/skills) לקבלת כישורים בודדים ואפשרויות התקנה מתקדמות.
## לפני שתתחיל
-1. פתח את [לוח הבקרה של Failproof AI](https://app.befailproof.ai) וצור חשבון או התחבר עם אימייל עבודה.
-2. עבור ל-**Administration → Keys** וצור מפתח עם `events:add` ו-`policies:pull`.
-3. העתק את הסוד החד-פעמי ושמור אותו במכונת היעד:
+1. פתח את [לוח הבקרה של Failproof AI](https://app.befailproof.ai) וצור חשבון או היכנס עם כתובת הדוא"ל שלך בעבודה.
+2. עבור אל **Administration → Keys** וצור מפתח עם `events:add` ו-`policies:pull`.
+3. העתק את הסוד לשימוש חד-פעמי והנח אותו במכונת היעד:
```bash
export FAILPROOFAI_KEY=""
```
- ## התקן
+ ## התקנה
@@ -45,9 +46,9 @@ export FAILPROOFAI_KEY=""
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- תמלילי סשן נשלחים כברירת מחדל. הוסף `--no-transcripts` כדי לדווח על פעילות hook והחלטות מדיניות ללא תוכן תמלילים.
+ תמלילי הפעלות נשלחים כברירת מחדל. הוסף `--no-transcripts` כדי לדווח על פעילות hook והחלטות מדיניות ללא תוכן תמליל.
- אם למכונה זו יש כבר היסטוריה של סוכן, תצפה וייבא את שבעת הימים האחרונים, ואז חכה שההסגרה תסתיים. דלג על שלב זה במכונה חדשה.
+ אם למכונה זו כבר יש היסטוריה סוכן, הצג תצוגה מקדימה וייבא את שבעת הימים האחרונים, ואז חכה שהמסירה תסתיים. דלג על שלב זה במכונה חדשה.
```bash
failproofai backfill --since 7d --dry-run
@@ -55,30 +56,30 @@ export FAILPROOFAI_KEY=""
failproofai flush --wait
```
- פתח את **Sessions** ב-Failproof AI ובחר סשן שיובא.
+ פתח **Sessions** ב-Failproof AI ובחר הפעלה מיובאת.
-
- זה מחבר את Failproof AI למנשק שלך ומתקין את 40 המדיניויות המובנות. השתמש בהם כדי לראות החלטות מדיניות מקומיות ולנסות אוכיפוי לפני שFailproof AI מבקר בסשנים שלך וכותב מדיניויות לסוכנים שלך.
+
+ פעולה זו מחברת את Failproof AI להרתק שלך ומתקנת את 39 המדיניות הבנויות. השתמש בהם כדי לראות החלטות מדיניות מקומיות וכדי לנסות אכיפה לפני שFailproof AI מבקר בהפעלות שלך וכותב מדיניות לסוכנים שלך.
- תן למתקין לגלות את המנשק שלך, או תן שם למשהו באופן מפורש. כל אחד מ-12 הוא ערך `--cli` תקף — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
+ אפשר לגלאי להעלות את ההרתק שלך, או ציין אחד במפורש. כל אחד מ-12 הוא ערך `--cli` תקף — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`.
```bash
failproofai policies --install --cli claude --scope user # a coding CLI
failproofai policies --install --cli hermes --scope user # a Slack/Telegram gateway
```
- חסימת קריאת כלי לפני שהיא פועלת מתאומתת בכל 12. שערי סוף תור מתאומתים ב-8 — ראה [יכולת אוכיפוי](/he/reference/harnesses#enforcement-capability) למטריצת ההפעלה לכל מנשק.
+ חסימת קריאת כלי לפני שהיא רצה מאומתת על כל 12. שערים בסוף פנייה מאומתים ב-8 — ראה [יכולת אכיפה](/he/reference/harnesses#enforcement-capability) למטריצה לפי הרתק.
-
- עקוב אחר [הפעל את בדיקת הכשל הראשונה שלך](/he/start/first-audit). השתמש במטרה קונקרטית כגון "מצא סשנים שבהם הסוכן ניסה שוב כלי שנכשל ללא שינוי בגישתו."
+
+ עקוב אחר [הרץ את בדיקת הכשל הראשונה שלך](/he/start/first-audit). השתמש במטרה קונקרטית כמו "מצא הפעלות שבהן הסוכן ניסה שוב כלי שכישל ללא שינוי בגישתו."
- עקוב אחר [מנע את הכשל הראשון שלך עם מדיניות](/he/start/first-policy). התחל במצב צפייה, בדוק התאמות, ואז אוכף את הגרסה שנבדקה.
+ עקוב אחר [מנע את הכשל הראשון שלך עם מדיניות](/he/start/first-policy). התחל במצב תצפית, בדוק התאמות, ואז אכוף את הגרסה שבדוקה.
- הפעל `failproofai config --status`. הגדרה בריאה מדווחת על חיבור הענן, מצב daemon, ואם אוכיפוי מושהה.
+ הרץ `failproofai config --status`. הגדרה בריאה מדווחת על חיבור ענן, מצב daemon, ויומא האכיפה מושהה.
\ No newline at end of file
diff --git a/docs/hi/policies/builtin-catalog.mdx b/docs/hi/policies/builtin-catalog.mdx
index 40c17c83..d6613857 100644
--- a/docs/hi/policies/builtin-catalog.mdx
+++ b/docs/hi/policies/builtin-catalog.mdx
@@ -1,98 +1,98 @@
---
title: "बिल्ट-इन पॉलिसी कैटलॉग"
-description: "प्रत्येक बिल्ट-इन Failproof AI पॉलिसी, इसके ट्रिगर, अनुशंसित स्थिति और कॉन्फ़िगरेबल पैरामीटर की समीक्षा करें।"
+description: "प्रत्येक बिल्ट-इन Failproof AI पॉलिसी, इसके ट्रिगर, अनुशंसित स्थिति और कॉन्फ़िगर करने योग्य पैरामीटर की समीक्षा करें।"
icon: "list-checks"
---
-इंस्टॉल किया गया पैकेज पॉलिसी उपलब्धता का स्रोत है। हर अपग्रेड के बाद `failproofai policies` चलाएं क्योंकि कैटलॉग प्रविष्टियां और व्यवहार पैकेज संस्करण के साथ बदल सकते हैं।
+स्थापित पैकेज पॉलिसी उपलब्धता का सत्य स्रोत है। हर अपग्रेड के बाद `failproofai policies` चलाएं क्योंकि कैटलॉग प्रविष्टियां और व्यवहार पैकेज संस्करण के साथ बदल सकते हैं।
## अनुशंसित बेसलाइन
-गाइडेड सेटअप की अनुशंसित चयन वर्तमान में सीक्रेट सैनिटाइज़र, पर्यावरण संरक्षण, स्व-सुरक्षा, विनाशकारी-कमांड गार्ड और संरक्षित-शाखा सुरक्षा को सक्षम करता है:
+निर्देशित सेटअप की अनुशंसित चयन वर्तमान में सीक्रेट सैनिटाइजर, पर्यावरण सुरक्षा, आत्म-सुरक्षा, विनाशकारी-कमांड गार्ड और संरक्षित-ब्रांच सुरक्षा सक्षम करता है:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-अनुशंसित जानबूझकर **Everything** से संकीर्ण है। इंफ्रास्ट्रक्चर और वर्कफ़्लो पॉलिसियां वैध कार्य को बाधित कर सकती हैं और उन्हें उन रिपॉजिटरीज़ और मशीनों के लिए सक्षम किया जाना चाहिए जिन्हें उनकी आवश्यकता है।
+`block-failproofai-commands` **हमेशा चालू** रहता है। यह पूर्णता के लिए ऊपर सूचीबद्ध है, लेकिन यह हर मूल्यांकन पर पंजीकृत होता है, चाहे यह आपके सक्षम समुच्चय में दिखाई दे या नहीं, और इसे अक्षम या रोका नहीं जा सकता — यह एजेंट द्वारा बंद किए जा सकने वाले प्रवर्तन को बंद करने के खिलाफ एक सुरक्षा है।
-## सीक्रेट्स और पर्यावरण
+अनुशंसित जानबूझकर **Everything** से अधिक संकीर्ण है। बुनियादी ढांचा और वर्कफ़्लो पॉलिसियां वैध कार्य को बाधित कर सकती हैं और उन्हें उन रिपॉजिटरी और मशीनों के लिए सक्षम किया जाना चाहिए जिन्हें उनकी आवश्यकता है।
+
+## सीक्रेट और पर्यावरण
| पॉलिसी | ट्रिगर | परिणाम |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | मॉडल देखने से पहले टूल आउटपुट से JWTs को संपादित करें। |
-| `sanitize-api-keys` | `PostToolUse` | सामान्य OpenAI, Anthropic, GitHub, AWS, Stripe और Google कुंजियों को संपादित करें। |
-| `sanitize-connection-strings` | `PostToolUse` | क्रेडेंशियल्स युक्त डेटाबेस कनेक्शन स्ट्रिंग्स को संपादित करें। |
-| `sanitize-private-key-content` | `PostToolUse` | PEM प्राइवेट-की बॉडीज़ को संपादित करें। |
-| `sanitize-bearer-tokens` | `PostToolUse` | अधिकरण वाहक टोकन को संपादित करें। |
-| `protect-env-vars` | शेल टूल्स पर `PreToolUse` | पर्यावरण चर डंप करने वाली कमांड्स को ब्लॉक करें। |
-| `block-env-files` | `PreToolUse` | `.env` फ़ाइलों के पढ़ने और लिखने को ब्लॉक करें। |
-| `block-read-outside-cwd` | रीड, ग्लोब, ग्रेप या शेल टूल्स पर `PreToolUse` | रीड को सेशन कार्य निर्देशिका के भीतर रखें। |
-| `block-secrets-write` | राइट टूल्स पर `PreToolUse` | सामान्य सीक्रेट-की और क्रेडेंशियल फ़ाइलनामों में राइट को ब्लॉक करें। |
-
-## खतरनाक कमांड्स और इंफ्रास्ट्रक्चर
+| `sanitize-jwt` | `PostToolUse` | मॉडल के द्वारा देखे जाने से पहले टूल आउटपुट से JWT को हटाएं। |
+| `sanitize-api-keys` | `PostToolUse` | सामान्य OpenAI, Anthropic, GitHub, AWS, Stripe और Google कुंजियों को हटाएं। |
+| `sanitize-connection-strings` | `PostToolUse` | क्रेडेंशियल वाली डेटाबेस कनेक्शन स्ट्रिंग को हटाएं। |
+| `sanitize-private-key-content` | `PostToolUse` | PEM प्राइवेट-की बॉडी को हटाएं। |
+| `sanitize-bearer-tokens` | `PostToolUse` | प्राधिकरण बीयरर टोकन को हटाएं। |
+| `protect-env-vars` | शेल टूल्स पर `PreToolUse` | पर्यावरण चर डंप करने वाली कमांड को ब्लॉक करें। |
+| `block-env-files` | `PreToolUse` | `.env` फाइलों को पढ़ना और लिखना ब्लॉक करें। |
+| `block-read-outside-cwd` | पढ़ने, ग्लोब, ग्रेप या शेल टूल्स पर `PreToolUse` | सेशन कार्य निर्देशिका के अंदर पढ़ना रखें। |
+| `block-secrets-write` | लेखन टूल्स पर `PreToolUse` | सामान्य सीक्रेट-की और क्रेडेंशियल फाइलनामों में लिखना ब्लॉक करें। |
+
+## खतरनाक कमांड और बुनियादी ढांचा
| पॉलिसी | ट्रिगर | परिणाम |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | एजेंट को अपने स्वयं के प्रवर्तन को रोकने से रोकें। |
-| `block-sudo` | `PreToolUse`, `PermissionRequest` | `sudo` को ब्लॉक करें जब तक कि अनुमति पैटर्न मेल न खाए। |
-| `block-curl-pipe-sh` | `PreToolUse` | डाउनलोड की गई स्क्रिप्ट्स को सीधे शेल में पाइप करने से ब्लॉक करें। |
+| `block-sudo` | `PreToolUse`, `PermissionRequest` | `sudo` को ब्लॉक करें जब तक कि कोई allow पैटर्न मेल न खाए। |
+| `block-curl-pipe-sh` | `PreToolUse` | डाउनलोड की गई स्क्रिप्ट को सीधे शेल में पाइप किए जाने को ब्लॉक करें। |
| `block-rm-rf` | `PreToolUse` | विनाशकारी रिकर्सिव डिलीशन पैटर्न को ब्लॉक करें। |
-| `block-failproofai-commands` | `PreToolUse` | एजेंट्स को Failproof AI बदलने या अनइंस्टॉल करने से रोकें। |
-| `block-kubectl` | `PreToolUse` | Kubernetes कमांड्स को गेट करें। |
-| `block-terraform` | `PreToolUse` | Terraform और OpenTofu कमांड्स को गेट करें। |
-| `block-aws-cli` | `PreToolUse` | AWS CLI कमांड्स को गेट करें। |
-| `block-gcloud` | `PreToolUse` | Google Cloud CLI कमांड्स को गेट करें। |
-| `block-az-cli` | `PreToolUse` | Azure CLI कमांड्स को गेट करें। |
-| `block-helm` | `PreToolUse` | Helm कमांड्स को गेट करें। |
-| `block-gh-pipeline` | `PreToolUse` | म्यूटेटिंग GitHub CLI वर्कफ़्लो, रन, मर्ज, रिलीज़, कैश और सीक्रेट ऑपरेशन्स को गेट करें। |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **हमेशा चालू, अक्षम नहीं किया जा सकता।** हर Failproof AI CLI आह्वान, आत्म-रोक और पैकेज-प्रबंधक अनइंस्टॉल को ब्लॉक करें। |
+| `block-kubectl` | `PreToolUse` | Kubernetes कमांड गेट करें। |
+| `block-terraform` | `PreToolUse` | Terraform और OpenTofu कमांड गेट करें। |
+| `block-aws-cli` | `PreToolUse` | AWS CLI कमांड गेट करें। |
+| `block-gcloud` | `PreToolUse` | Google Cloud CLI कमांड गेट करें। |
+| `block-az-cli` | `PreToolUse` | Azure CLI कमांड गेट करें। |
+| `block-helm` | `PreToolUse` | Helm कमांड गेट करें। |
+| `block-gh-pipeline` | `PreToolUse` | म्यूटेटिंग GitHub CLI वर्कफ़्लो, रन, मर्ज, रिलीज, कैश और सीक्रेट ऑपरेशन गेट करें। |
-## गिट और डेटाबेस सुरक्षा
+## Git और डेटाबेस सुरक्षा
| पॉलिसी | ट्रिगर | परिणाम |
| --- | --- | --- |
-| `block-push-master` | `PreToolUse` | कॉन्फ़िगर की गई संरक्षित शाखाओं में सीधे पुश को ब्लॉक करें। |
+| `block-push-master` | `PreToolUse` | कॉन्फ़िगर किए गए संरक्षित ब्रांचों में सीधे पुश को ब्लॉक करें। |
| `block-force-push` | `PreToolUse` | फोर्स-पुश को ब्लॉक करें; `--force-with-lease` वर्तमान कार्यान्वयन द्वारा अनुमत रहता है। |
-| `block-work-on-main` | `PreToolUse` | संरक्षित शाखाओं पर कमिट्स और मर्जेस को ब्लॉक करें। |
+| `block-work-on-main` | `PreToolUse` | संरक्षित ब्रांचों पर कमिट और मर्ज को ब्लॉक करें। |
| `warn-git-amend` | `PreToolUse` | `--amend` के साथ कमिट को फिर से लिखने से पहले चेतावनी दें। |
-| `warn-git-stash-drop` | `PreToolUse` | स्टेशेस को स्थायी रूप से ड्रॉप या क्लीयर करने से पहले चेतावनी दें। |
+| `warn-git-stash-drop` | `PreToolUse` | स्टैश को स्थायी रूप से हटाने या साफ करने से पहले चेतावनी दें। |
| `warn-all-files-staged` | `PreToolUse` | व्यापक `git add -A`, `git add .` या `git add --all` पर चेतावनी दें। |
-| `warn-destructive-sql` | `PreToolUse` | मान्यता प्राप्त डेटाबेस क्लाइंट्स के माध्यम से `WHERE` के बिना `DROP`, `TRUNCATE` और `DELETE` पर चेतावनी दें। |
-| `warn-schema-alteration` | `PreToolUse` | मान्यता प्राप्त `ALTER TABLE` कॉलम और नाम बदलने के ऑपरेशन्स पर चेतावनी दें। |
+| `warn-destructive-sql` | `PreToolUse` | मान्यता प्राप्त डेटाबेस क्लाइंट के माध्यम से `WHERE` के बिना `DROP`, `TRUNCATE` और `DELETE` पर चेतावनी दें। |
+| `warn-schema-alteration` | `PreToolUse` | मान्यता प्राप्त `ALTER TABLE` कॉलम और पुनः नाम संचालन पर चेतावनी दें। |
-## पैकेजेस, सिस्टम व्यवहार और एजेंट लूप्स
+## पैकेज, सिस्टम व्यवहार और एजेंट लूप
| पॉलिसी | ट्रिगर | परिणाम |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | पैकेज रजिस्ट्रीज़ में प्रकाशित करने से पहले चेतावनी दें। |
-| `warn-global-package-install` | `PreToolUse` | ग्लोबल पैकेज इंस्टॉलेशन से पहले चेतावनी दें। |
-| `prefer-package-manager` | `PreToolUse` | एजेंट को अनुमत पैकेज मैनेजर का उपयोग करने का निर्देश दें। |
-| `warn-large-file-write` | राइट टूल्स पर `PreToolUse` | कॉन्फ़िगर की गई फ़ाइल-साइज़ थ्रेशोल्ड के ऊपर चेतावनी दें। |
-| `warn-background-process` | `PreToolUse` | डिटेच्ड या लॉन्ग-लिव्ड बैकग्राउंड-प्रोसेस पैटर्न पर चेतावनी दें। |
-| `warn-repeated-tool-calls` | `PreToolUse` | तीन या अधिक समान टूल कॉल्स के बाद चेतावनी दें। |
+| `warn-package-publish` | `PreToolUse` | पैकेज रजिस्ट्री में प्रकाशित करने से पहले चेतावनी दें। |
+| `warn-global-package-install` | `PreToolUse` | वैश्विक पैकेज स्थापना से पहले चेतावनी दें। |
+| `prefer-package-manager` | `PreToolUse` | एजेंट को अनुमत पैकेज प्रबंधक का उपयोग करने के लिए निर्देश दें। |
+| `warn-large-file-write` | लेखन टूल्स पर `PreToolUse` | कॉन्फ़िगर की गई फाइल-आकार थ्रेसहोल्ड से ऊपर चेतावनी दें। |
+| `warn-background-process` | `PreToolUse` | डिटेच्ड या दीर्घकालीन बैकग्राउंड-प्रोसेस पैटर्न पर चेतावनी दें। |
+| `warn-repeated-tool-calls` | `PreToolUse` | तीन या अधिक समान टूल कॉल के बाद चेतावनी दें। |
-## कार्य के अंत का वर्कफ़्लो
+## कार्य-समाप्ति वर्कफ़्लो
-ये पॉलिसियां एक हार्नेस की आवश्यकता करती हैं जो संगत `Stop` इवेंट उत्सर्जित करे।
+ये पॉलिसियों को एक हार्नेस की आवश्यकता है जो संगत `Stop` इवेंट उत्सर्जित करता है।
| पॉलिसी | परिणाम |
| --- | --- |
-| `require-commit-before-stop` | ट्रैक किया गया कार्य अपरिवर्तित रहते हुए समापन से इनकार करें। |
-| `require-push-before-stop` | कमिट्स लोकल-ओनली रहते हुए समापन से इनकार करें। |
-| `require-pr-before-stop` | वर्तमान शाखा के लिए पुल रिक्वेस्ट की आवश्यकता है। |
-| `require-no-conflicts-before-stop` | कॉन्फ़िगर की गई बेस शाखा के खिलाफ क्लीन मर्ज की आवश्यकता है। |
-| `require-ci-green-before-stop` | वर्तमान-HEAD CI चेक्स के सफलतापूर्वक पूर्ण होने की आवश्यकता है। |
+| `require-commit-before-stop` | ट्रैक किए गए कार्य के साथ पूर्ण होने से इनकार करें जो अनकमिटेड रहते हैं। |
+| `require-push-before-stop` | कमिट के साथ पूर्ण होने से इनकार करें जो केवल स्थानीय रहते हैं। |
+| `require-pr-before-stop` | वर्तमान ब्रांच के लिए एक पुल अनुरोध की आवश्यकता है। |
+| `require-no-conflicts-before-stop` | कॉन्फ़िगर की गई बेस ब्रांच के विरुद्ध स्वच्छ मर्ज की आवश्यकता है। |
+| `require-ci-green-before-stop` | वर्तमान-HEAD CI चेक को सफलतापूर्वक पूर्ण करने की आवश्यकता है। |
## पैरामीटर संदर्भ
-चयनित स्कोप के `policyParams` ऑब्जेक्ट के तहत पैरामीटर कॉन्फ़िगर करें। प्रकार प्रत्येक पॉलिसी द्वारा मान्य किए जाते हैं।
+चयनित स्कोप के `policyParams` ऑब्जेक्ट के तहत पैरामीटर कॉन्फ़िगर करें। प्रकारों को प्रत्येक पॉलिसी द्वारा मान्य किया जाता है।
| पॉलिसी | पैरामीटर | प्रकार और डिफ़ॉल्ट |
| --- | --- | --- |
@@ -100,7 +100,7 @@ block-force-push
| `block-read-outside-cwd` | `allowPaths` | `string[]`, `[]` |
| `block-sudo` | `allowPatterns` | `string[]`, `[]` |
| `block-rm-rf` | `allowPaths` | `string[]`, `[]` |
-| इंफ्रास्ट्रक्चर ब्लॉकर्स | `allowPatterns` | `string[]`, `[]` |
+| बुनियादी ढांचा ब्लॉकर | `allowPatterns` | `string[]`, `[]` |
| `block-secrets-write` | `additionalPatterns` | `string[]`, `[]` |
| `block-push-master` | `protectedBranches` | `string[]`, `["main", "master"]` |
| `block-work-on-main` | `protectedBranches` | `string[]`, `["main", "master"]` |
@@ -125,5 +125,5 @@ block-force-push
```
- एक अनुमति पैटर्न एजेंट को जो कर सकता है उसे व्यापक करता है। फ्लीट में तैनात करने से पहले लक्ष्य हार्नेस पर सटीक टोकनाइजेशन और कमांड वेरिएंट्स का परीक्षण करें।
+ एक allow पैटर्न एजेंट को अधिक क्या कर सकता है यह चौड़ा करता है। लक्ष्य हार्नेस पर पूरे फ्लीट में तैनात करने से पहले सटीक टोकनाइजेशन और कमांड वेरिएंट का परीक्षण करें।
\ No newline at end of file
diff --git a/docs/hi/policies/failure-behavior.mdx b/docs/hi/policies/failure-behavior.mdx
index 0af5f8a4..cd829497 100644
--- a/docs/hi/policies/failure-behavior.mdx
+++ b/docs/hi/policies/failure-behavior.mdx
@@ -1,19 +1,20 @@
---
-title: "विफलता का व्यवहार"
-description: "समझें कि जब नीति मूल्यांकन या स्थानीय daemon अनुपलब्ध हो तो क्या होता है।"
+---
+title: "विफलता व्यवहार"
+description: "समझें कि नीति मूल्यांकन या स्थानीय डेमॉन अनुपलब्ध होने पर क्या होता है।"
icon: "shield-alert"
---
-Failproof AI को इस तरह डिज़ाइन किया गया है कि प्रवर्तन विफलता दृश्यमान हो, न कि जोखिम भरे काम को चुप्पी से अनुमति दी जाए।
+Failproof AI इस तरह डिज़ाइन किया गया है कि प्रवर्तन विफलता दृश्यमान हो, न कि जोखिम भरे काम को मौन रूप से अनुमति देने दे।
## विफलता-बंद ब्लॉक का निदान करें
- 1. **Admin → enforcement** पर जाएं और मशीन को खोलें।
- 2. इसकी अंतिम जांच-इन, असाइन किया गया डिप्लॉयमेंट, और रिपोर्ट किया गया डिप्लॉयमेंट जांचें।
- 3. **Observe → policy** पर जाएं और अस्वीकृत निर्णय का सेशन खोलें।
- 4. पुष्टि करें कि क्या कारण daemon पहुंच, संस्करण विसंगति, या नीति को रिपोर्ट करता है।
+ 1. **Admin → enforcement** पर जाएं और मशीन खोलें।
+ 2. इसकी अंतिम चेक-इन, असाइन की गई तैनाती, और रिपोर्ट की गई तैनाती की जांच करें।
+ 3. **Observe → policy** पर जाएं और अस्वीकृत निर्णय का सत्र खोलें।
+ 4. पुष्टि करें कि क्या कारण डेमॉन पहुंचने की क्षमता, संस्करण विसंगति, या नीति स्वयं की रिपोर्ट करता है।
@@ -23,21 +24,45 @@ Failproof AI को इस तरह डिज़ाइन किया गय
failproofai config
```
- `failproofai config` को फिर से चलाने से पैकेज अपग्रेड के बाद daemon को अपडेट और पुनः शुरू किया जाता है।
+ `failproofai config` को फिर से चलाना पैकेज अपग्रेड के बाद डेमॉन को अपडेट और पुनः शुरू करता है।
-`failproofaid` का उपयोग करने के लिए कॉन्फ़िगर की गई मशीन पर, daemon एकमात्र मूल्यांकनकर्ता है। यदि यह अनुपलब्ध है या इसका प्रोटोकॉल संस्करण CLI से मेल नहीं खाता है, तो हुक मूल्यांकन विफल हो जाता है। क्रिया को एक कारण के साथ अस्वीकार कर दिया जाता है जो ऑपरेटर को daemon की जांच या अपडेट करने के लिए निर्देशित करता है।
+`failproofaid` का उपयोग करने के लिए कॉन्फ़िगर की गई मशीन पर, डेमॉन एकमात्र मूल्यांकनकर्ता है। यदि यह अनुपलब्ध है या इसका प्रोटोकॉल संस्करण CLI से मेल नहीं खाता है, तो हुक मूल्यांकन बंद हो जाता है। कार्रवाई को एक कारण के साथ अस्वीकार कर दिया जाता है जो ऑपरेटर को डेमॉन की जांच या अपडेट करने के लिए निर्देशित करता है।
-Daemon कॉन्फ़िगरेशन से पहले, हुक नीतियों का प्रक्रिया में मूल्यांकन करते हैं। एक बार daemon कॉन्फ़िगरेशन रिकॉर्ड किए जाने के बाद, Failproof AI daemon विफल होने पर दूसरे मूल्यांकनकर्ता को चुप्पी से वापस नहीं लौटाता है।
+डेमॉन कॉन्फ़िगरेशन से पहले, हुक नीतियों का प्रक्रिया में मूल्यांकन करते हैं। एक बार डेमॉन कॉन्फ़िगरेशन दर्ज हो जाने के बाद, Failproof AI जब डेमॉन विफल हो तो मौन रूप से दूसरे मूल्यांकनकर्ता को वापस नहीं करता है।
## विफलता-बंद निर्णय का जवाब दें
1. `failproofai config --status` चलाएं।
-2. यदि संस्करण भिन्न हैं, तो पैकेज अपडेट करने के बाद `failproofai config` को फिर से चलाएं।
-3. यदि daemon अनुपलब्ध है, तो इसकी सेवा स्थिति और स्थानीय लॉग का निरीक्षण करें।
-4. केवल तभी एजेंट कार्य फिर से शुरू करें जब एक ज्ञात नीति मूल्यांकन पथ स्वस्थ हो।
+2. यदि संस्करण अलग हैं, पैकेज अपडेट करने के बाद `failproofai config` को फिर से चलाएं।
+3. यदि डेमॉन अनुपलब्ध है, तो इसकी सेवा स्थिति और स्थानीय लॉग का निरीक्षण करें।
+4. एक ज्ञात नीति मूल्यांकन पथ स्वस्थ होने के बाद ही एजेंट कार्य फिर से शुरू करें।
- अवरुद्ध क्रिया को बार-बार पुनः प्रयास न करें। विफलता-बंद प्रतिक्रिया का मतलब है कि सिस्टम यह स्थापित नहीं कर सका कि क्रिया सुरक्षित थी।
-
\ No newline at end of file
+ अवरुद्ध कार्रवाई को बार-बार फिर से प्रयास न करें। विफलता-बंद प्रतिक्रिया का मतलब है कि सिस्टम यह स्थापित नहीं कर सका कि कार्रवाई सुरक्षित थी।
+
+
+## एक पैक लोड नहीं होगा
+
+एक मशीन जिसे पैक को लागू करने के लिए कहा गया था, और इसे चलाने में असमर्थ है, चुप रहने के बजाय अस्वीकार कर देती है। ट्रिगर एक **दर्ज अपेक्षा** है, कभी खाली नहीं: कोई पैक स्थापित नहीं होने वाली मशीन चुप रहती है, जबकि एक पैक जो घोषित है और समाधान नहीं होगा — या जो अपने मैनिफेस्ट से कम पंजीकृत करता है — अस्वीकार कर देता है।
+
+यह अस्वीकार **संकीर्ण** है, अनुपलब्ध डेमॉन के विपरीत। एक डेमॉन जो नहीं पहुंचा जा सकता वह कोई मूल्यांकन नहीं हुआ, इसलिए कुछ भी सुरक्षित ज्ञात नहीं है। एक पैक जो लोड नहीं होगा में गायब सुरक्षा की एक गणनीय सेट है, क्योंकि हर घोषित नीति अपना स्वयं का `match` रखती है — इसलिए यह केवल उन नीतियों द्वारा कवर की गई घटनाओं और उपकरणों को अस्वीकार करता है, और बाकी सब कुछ आगे बढ़ता है।
+
+यह निम्नलिखित के लिए नहीं चलता:
+
+- एक `observe` पैक, जो निर्माण द्वारा मूल्यांकन और त्याग करता है
+- नीतियां जो आपने कभी नहीं लीं, या स्पष्ट रूप से बंद कीं
+- एक पैक जो लोडर को कभी नहीं मिला, जहां "कोई पंजीकरण नहीं" एक जानबूझकर छोड़ से अलग नहीं किया जा सकता
+- एक सक्रिय सत्र विराम
+- एक लोड टाइमआउट, जो क्षणिक है — एक धीमी डिस्क का क्षण तब तक अस्वीकार नहीं करना चाहिए जब तक कोई मानव हस्तक्षेप न करे
+
+`UserPromptSubmit` अस्वीकार करने के बजाय **निर्देश** देता है, चाहे लापता नीति ने क्या घोषित किया हो। एक व्यापक अस्वीकार इसे साथ ले जाएगा और आपको उस एजेंट से बाहर कर देगा जो समस्या को ठीक कर सकता था।
+
+### क्या करना है
+
+```bash
+failproofai pack list
+```
+
+यह किसी भी स्थापित पैक का नाम रखता है जो लोड नहीं होगा, कहता है कि क्यों, और गैर-शून्य के साथ निकलता है। फिर इसे फिर से स्थापित करें (`failproofai pack add `) या हटा दें (`failproofai pack remove `) — इसे हटाने से अपेक्षा वापस ली जाती है, और अस्वीकार इसके साथ रुक जाता है।
\ No newline at end of file
diff --git a/docs/hi/policies/packs.mdx b/docs/hi/policies/packs.mdx
new file mode 100644
index 00000000..1aac1420
--- /dev/null
+++ b/docs/hi/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "Policy packs"
+description: "GitHub रिलीज़ के रूप में प्रकाशित नीतियों का एक सेट इंस्टॉल करें, और यह क्या लागू करता है इसे प्रबंधित करें।"
+icon: "package"
+---
+
+एक pack GitHub रिलीज़ के रूप में प्रकाशित नीतियों का एक सेट है। एक कमांड इसे इंस्टॉल करता है, रिलीज़ के अपने चेकसम को कुछ भी चलाने से पहले सत्यापित किया जाता है, और डाइजेस्ट रिकॉर्ड किया जाता है ताकि pack आपकी मशीन के बाद बदल न सके।
+
+## Failproof AI नीतियों को इंस्टॉल करें
+
+```bash
+failproofai pack add core
+```
+
+यह पैकेज के अंदर की कॉपी से प्रकाशित सेट को इंस्टॉल करता है — इसलिए इसे नेटवर्क की आवश्यकता नहीं है और यह प्रॉक्सी के पीछे विफल नहीं हो सकता। इसका एक हिस्सा लें:
+
+```bash
+failproofai pack add core --policy block-rm-rf # एक, या अल्पविराम से अलग कुछ
+failproofai pack add core --category dangerous-commands # एक पूरी श्रेणी
+failproofai pack add core --all # इसमें सब कुछ
+```
+
+`failproofai pack list` pack द्वारा प्रदान की गई हर श्रेणी का नाम देता है।
+
+## इंस्टॉल करने से पहले एक pack में क्या है यह देखें
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+pack द्वारा की जाने वाली हर नीति को सूचीबद्ध करता है, श्रेणी द्वारा समूहीकृत, यह चिह्नित करता है कि इसके लेखक डिफ़ॉल्ट रूप से कौन से को चालू करते हैं और कौन से opt-in हैं। यह **केवल manifest को** पढ़ता है — entry artifact कभी डाउनलोड नहीं किया जाता और कभी imported नहीं किया जाता, इसलिए एक अपरिचित pack को देखना अपरिचित कोड को नहीं चला सकता। manifest को अभी भी रिलीज़ के अपने `SHA256SUMS` के विरुद्ध जांचा जाता है, इसलिए आप जो पढ़ रहे हैं वह वही है जो इंस्टॉल होगा।
+
+`failproofai pack list` कोई स्रोत के बिना यहां पहले से इंस्टॉल किए गए packs को सूचीबद्ध करता है।
+
+## किसी और के pack को इंस्टॉल करें
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+इनमें से कोई भी काम करता है — जो भी आपके पास है वह पेस्ट करें:
+
+| स्रोत | परिणाम |
+| --- | --- |
+| `acme/support-agent` | नवीनतम रिलीज़, **pinned** सटीक टैग के लिए जो इसे हल किया |
+| `acme/support-agent@v2.1.0` | वह रिलीज़ |
+| `github:acme/support-agent@v2.1.0` | वही, स्पष्ट रूप से लिखा |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | वही, ब्राउज़र से कॉपी किया |
+
+कोई टैग नाम नहीं देने से नवीनतम रिलीज़ इंस्टॉल होता है **और इसे pin किया जाता है**, फिर आपको यह बताता है कि किस टैग को चुना। जो कुछ भी रिकॉर्ड किया जाता है वह हमेशा ठीक एक रिलीज़ का नाम देता है, इसलिए एक reinstall drift नहीं हो सकता।
+
+## एक pack का हिस्सा लें
+
+डिफ़ॉल्ट रूप से आप pack के **अपने** defaults प्राप्त करते हैं — जिन नीतियों को इसके लेखक ने निरीक्षण के साथ चालू करने के लिए सुरक्षित चिह्नित किया है — इसमें सब कुछ नहीं।
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` और `--policy` एक union के रूप में संयोजित होते हैं (`--only` को `--policy` का पर्यायवाची माना जाता है)। एक नए संस्करण में फिर से जोड़ने से आपने जो चुना है वह रहता है न कि बाकी को वापस चालू करना।
+
+## प्रबंधित करें कि क्या चालू है
+
+```bash
+failproofai policies # एक सूची में हर स्रोत, packs सहित
+failproofai pack list # केवल packs, श्रेणी द्वारा समूहीकृत
+failproofai policies --uninstall block-refunds # एक pack policy को बंद करें
+failproofai policies --install block-refunds # और वापस चालू करें
+failproofai pack remove acme/support-agent
+```
+
+एक bare name का अर्थ है **builtin** जब उस नाम द्वारा एक मौजूद हो। जब आपको चाहिए तो एक pack की कॉपी को स्पष्ट रूप से नाम दें:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+यदि एक pack एक नीति भेजता है जिसका नाम भी एक **enabled builtin** है, तो builtin चलता है और pack की कॉपी को छोड़ दिया जाता है — अन्यथा एक ही guard का दो बार मूल्यांकन किया जाएगा। इसके बजाय pack की कॉपी का उपयोग करने के लिए builtin को बंद करें।
+
+
+## Failproof AI नीतियां कहां से आती हैं
+
+`core` npm पैकेज में vendored कॉपी को पढ़ता है। एक ही सेट GitHub रिलीज़ के रूप में प्रकाशित होता है, जो आप इंस्टॉल करते हैं यदि आप एक विशिष्ट संस्करण चाहते हैं:
+
+```bash
+failproofai pack add core # इस पैकेज से, कोई नेटवर्क नहीं
+failproofai pack add FailproofAI/policies # एक ही सेट, इसकी GitHub रिलीज़ से
+```
+
+## अखंडता क्या करती है और नहीं करती है
+
+`SHA256SUMS` artifact के समान रिलीज़ में शिप होता है, इसलिए यह **एक हस्ताक्षर नहीं है** और प्रकाशक के बारे में कुछ भी साबित नहीं करता। जो यह साबित करता है वह यह है कि bytes वही हैं जो उस रिलीज़ ने प्रकाशित किए — और क्योंकि डाइजेस्ट को pack जोड़ते समय रिकॉर्ड किया जाता है और हर import से पहले फिर से सत्यापित किया जाता है, एक pack आपकी मशीन के बाद नहीं बदल सकता। एक repository जो retags करता है या एक asset को बदलता है वह चुप से कुछ और चलाने के बजाय लोड करना बंद कर देता है।
+
+इंस्टॉल समय पर pack को भी **एक बार imported** किया जाता है और अपने manifest के विरुद्ध जांचा जाता है। एक pack जिसके artifact को parse नहीं किया जा सकता, या जो अपनी घोषणा के अलावा कुछ और register करता है, को activate होने के बजाय इंस्टॉल होने से पहले reject किया जाता है — अपने अगले tool call पर विफल होने के बजाय।
+
+## जब एक pack load नहीं होगा
+
+एक pack जिसे यह मशीन लागू करने के लिए कहा गया था और नहीं चला सकता **उन events को deny करता है** जिनकी इसकी missing नीतियों ने coverage दी, बजाय इसके कि उन्हें चुप से allow किया जाए। [Failure behavior](/hi/policies/failure-behavior) देखें। `failproofai pack list` उस state में किसी भी pack का नाम देता है और non-zero के साथ exit करता है।
+
+## Offline और mirrors
+
+| Variable | प्रभाव |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | fetch करने से इनकार करता है; पहले से इंस्टॉल किए गए packs लागू रहते हैं |
+| `FAILPROOFAI_PACK_BASE_URL` | pack fetching को `github.com` के बजाय एक mirror की ओर इंगित करता है |
+
+अपना खुद का pack प्रकाशित करना: [Publish a pack](/hi/policies/publish-a-pack) देखें।
\ No newline at end of file
diff --git a/docs/hi/policies/publish-a-pack.mdx b/docs/hi/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..02f62f44
--- /dev/null
+++ b/docs/hi/policies/publish-a-pack.mdx
@@ -0,0 +1,92 @@
+---
+---
+title: "एक पैक प्रकाशित करें"
+description: "GitHub रिलीज़ के रूप में अपनी नीतियों को शिप करें जिन्हें कोई भी इंस्टॉल कर सके।"
+icon: "upload"
+---
+
+एक पैक GitHub रिलीज़ से जुड़ी तीन फाइलें हैं। `failproofai pack build` एक नीति फाइल से सभी तीन को लिखता है जो आपके पास पहले से है।
+
+## 1. नीतियां लिखें
+
+एक फाइल, किसी भी कस्टम नीति के समान API का उपयोग करते हुए। एक पैक के लिए दो अतिरिक्त फील्ड महत्वपूर्ण हैं:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+जब आप इसे छोड़ते हैं तो `defaultEnabled` डिफ़ॉल्ट रूप से **false** होता है। एक सादा `failproofai pack add` केवल वह सक्षम करता है जिसे आपने चिह्नित किया है — किसी अजनबी की हर नीति को निरीक्षित तरीके से इंस्टॉल करना एक ऐसा निर्णय नहीं है जो इंस्टॉलर अपने उपयोगकर्ता के लिए ले सकता है।
+
+
+प्रविष्टि **एक आत्मनिर्भर फाइल** होनी चाहिए। केवल प्रविष्टि ही डाइजेस्ट-पिन की गई है, इसलिए एक पैक जो स्थानीय फाइलों को आयात करता है वह ईमानदारी से यह दावा नहीं कर सकता कि डाइजेस्ट उस सब को कवर करता है जो चलता है। पहले बंडल करें (`esbuild`, `bun build`, `rollup`) और बंडल से पैक बनाएं — `pack build` स्थानीय आयात को अस्वीकार करता है बजाय उस प्रतिश्रुति को शिप करने के जिसे वह रख नहीं सकता।
+
+
+## 2. रिलीज़ संपत्ति बनाएं
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+यह तीन फाइलें लिखता है, और पहले **लोडर के अपने नियमों** के साथ हर नीति को मान्य करता है — तो एक पैक जो कभी इंस्टॉल नहीं हो सकता वह यहां विफल होता है, जहां आप इसे ठीक कर सकते हैं:
+
+| फाइल | यह क्या है |
+| --- | --- |
+| `failproofai-pack.json` | मेनिफेस्ट: id, version, effect, और प्रति नीति एक प्रविष्टि |
+| `failproofai-pack.mjs` | आपकी प्रविष्टि, ज्यों की त्यों |
+| `SHA256SUMS` | `` अन्य दोनों के लिए |
+
+बिल्ड समय पर अस्वीकृत: एक id जो `publisher/name` नहीं है, `/` युक्त नीति का नाम, `alwaysOn` की घोषणा करने वाली नीति, गायब `description`, `category` या `match`, एक प्रविष्टि जो कुछ भी रजिस्टर नहीं करती, और एक प्रविष्टि जो स्थानीय फाइलों को आयात करती है।
+
+## 3. उन्हें एक रिलीज़ से जोड़ें
+
+रिलीज़ को उसी संस्करण के साथ टैग करें जو आपने बनाया था, और तीनों फाइलों को रिलीज़ संपत्ति के रूप में जोड़ें:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+अब कोई भी इसे इंस्टॉल कर सकता है:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+संपत्ति के नाम निश्चित हैं — वे वह हैं जो एक उपभोक्ता की CLI अपने URLs से बनाती है, कोई API कॉल नहीं और कोई खोज नहीं।
+
+## एक नया संस्करण शिप करना
+
+नए `--version` के साथ बनाएं, एक नई रिलीज़ टैग करें, तीनों संपत्ति को फिर से जोड़ें। उपभोक्ता एक ही `pack add` चलाते हैं और जो भी सबसेट उन्होंने चुना था उसे रखते हैं; एक नीति जिसे वे बंद कर गए थे वह अपग्रेड में बंद रहती है।
+
+एक नीति के **name** को बदलना एक विघ्नकारी परिवर्तन है: एक मशीन जिसने इसे बंद कर दिया था वह एक नाम बंद कर रही है जो अब मौजूद नहीं है, और नया नाम जो कुछ भी `defaultEnabled` कहता है उस पर आता है।
+
+## आपके उपयोगकर्ता क्या विश्वास कर रहे हैं
+
+`SHA256SUMS` उसी रिलीज़ में है जो कलाकृति है, इसलिए यह साबित करता है कि बाइट्स वे हैं जो आपने प्रकाशित किए — न कि आप कौन हैं। जो कोई भी रिपॉजिटरी में लिख सकता है वह दोनों फाइलें लिख सकता है। आपके उपयोगकर्ताओं की सुरक्षा यह है कि डाइजेस्ट तब पिन किया जाता है जब वे इंस्टॉल करते हैं, इसलिए जो आपने शिप किया वह उनके बाद नहीं बदल सकता।
+
+एक रिपॉजिटरी से प्रकाशित करें जिसके लिखने की पहुंच आप नियंत्रित करते हैं, और एक पैक रिलीज़ को एक पैकेज प्रकाशित करने जैसे मानें।
+
+## लागू करने से पहले अवलोकन करें
+
+एक मेनिफेस्ट `"effect": "observe"` घोषित कर सकता है। वे नीतियां चलती हैं और उनके निर्णय **रिकॉर्ड किए जाते हैं और त्याग दिए जाते हैं** — कुछ भी ब्लॉक नहीं है। यह एक नए नियम को वास्तविक ट्रैफिक के खिलाफ मापने का तरीका है इससे पहले कि यह किसी के काम को बाधित कर सके।
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/hi/reference/failproof-cli.mdx b/docs/hi/reference/failproof-cli.mdx
index 7b480892..3a085b1a 100644
--- a/docs/hi/reference/failproof-cli.mdx
+++ b/docs/hi/reference/failproof-cli.mdx
@@ -1,12 +1,12 @@
---
title: "Failproof AI CLI"
-description: "हुक इंस्टॉल करें, स्थानीय नीतियों का प्रबंधन करें, क्लाउड से कनेक्ट करें, और स्थानीय डेमन को चलाएं।"
+description: "हुक इंस्टॉल करें, स्थानीय नीतियों को प्रबंधित करें, क्लाउड कनेक्ट करें, और स्थानीय डेमॉन संचालित करें।"
icon: "terminal"
---
-`npm install -g failproofai` के साथ स्थानीय CLI इंस्टॉल करें। इसे बिना किसी तर्क के चलाएं ताकि स्थानीय नीति डैशबोर्ड खुल जाए।
+`npm install -g failproofai` के साथ स्थानीय CLI इंस्टॉल करें। इसे बिना किसी आर्गुमेंट के चलाएं ताकि स्थानीय नीति डैशबोर्ड खुले।
-पैकेज के लिए Node.js 20.9 या नए संस्करण की आवश्यकता है। Bun 1.3 या नए संस्करण विकास और स्रोत इंस्टॉल के लिए समर्थित हैं। `failproofai configure` और `failproofai setup`, `failproofai config` के लिए उपनाम हैं; `failproofai p`, `failproofai policies` के लिए एक उपनाम है।
+पैकेज को Node.js 20.9 या नए संस्करण की आवश्यकता है। Bun 1.3 या नए संस्करण विकास और स्रोत इंस्टॉल के लिए समर्थित हैं। `failproofai configure` और `failproofai setup` के लिए `failproofai config` के उपनाम हैं; `failproofai p` के लिए `failproofai policies` का उपनाम है।
## एक मशीन सेट अप करें
@@ -20,64 +20,69 @@ failproofai policies --install
failproofai config --status
```
-बिना किसी तर्क के `failproofai` चलाएं ताकि स्थानीय नीति डैशबोर्ड खुल जाए।
+स्थानीय नीति डैशबोर्ड खोलने के लिए बिना किसी आर्गुमेंट के `failproofai` चलाएं।
| कमांड | परिणाम |
| --- | --- |
-| `failproofai config` | इंटरैक्टिव मशीन सेटअप चलाएं |
-| `failproofai config --connect --token ` | क्लाउड इंजेशन और नीति डिलीवरी से कनेक्ट करें |
-| `failproofai config --status` | कनेक्शन, डेमन, डिलीवरी और पॉज़ स्थिति दिखाएं |
-| `failproofai policies` | बिल्ट-इन और कस्टम नीतियों की सूची बनाएं |
+| `failproofai config` | इंटरएक्टिव मशीन सेटअप चलाएं |
+| `failproofai config --connect --token ` | क्लाउड इनजेशन और नीति डिलीवरी को कनेक्ट करें |
+| `failproofai config --status` | कनेक्शन, डेमॉन, डिलीवरी और पॉज स्थिति दिखाएं |
+| `failproofai policies` | बिल्ट-इन, कस्टम, कन्वेंशन, पैक और क्लाउड-प्रबंधित नीतियां सूचीबद्ध करें |
| `failproofai policies --install` | हुक इंस्टॉल करें और नीतियों को सक्षम करें |
-| `failproofai policy add ` | एक बिल्ट-इन नीति सक्षम करें |
-| `failproofai policy remove ` | एक बिल्ट-इन नीति अक्षम करें |
-| `failproofai policies --uninstall` | नीतियों को अक्षम करें या हार्नेस हुक हटाएं |
+| `failproofai policy add ` | एक नीति सक्षम करें — एक बिल्ट-इन या इंस्टॉल किए गए पैक से `:` |
+| `failproofai policy remove ` | एक नीति को अक्षम करें, समान नामकरण |
+| `failproofai policies --uninstall` | नीतियों को अक्षम करें या हार्नेस हुक निकालें |
+| `failproofai pack list` | इंस्टॉल किए गए नीति पैक और प्रत्येक एक द्वारा वहन की गई प्रत्येक नीति सूचीबद्ध करें |
+| `failproofai pack add ` | GitHub रिलीज़ से एक नीति पैक इंस्टॉल करें; कोई टैग नहीं सबसे नया लेता है और इसे पिन करता है |
+| `failproofai pack add --bundled` | बिल्ट-इन नीतियों को एक पैक के रूप में इंस्टॉल करें, इस पैकेज से, कोई नेटवर्क नहीं |
+| `failproofai pack build ` | अपने स्वयं के पैक के लिए तीन रिलीज़ एसेट बनाएं |
+| `failproofai pack remove ` | एक इंस्टॉल किए गए पैक को निष्क्रिय करें |
| `failproofai audit` | स्थानीय एजेंट इतिहास स्कैन करें और स्थानीय ऑडिट दृश्य खोलें |
-| `failproofai audit --schedule [days] --email ` | आवर्ती स्थानीय स्कैन शेड्यूल करें और उनके निष्कर्षों को ईमेल करें |
-| `failproofai audit --status` | रिपोर्ट पता, अंतराल और अगला निर्धारित स्कैन दिखाएं |
-| `failproofai audit --no-schedule` | आवर्ती स्कैन रोकें ऑडिट इतिहास हटाए बिना |
-| `failproofai harness list` | अतिरिक्त कैप्चर पाथ की सूची बनाएं |
-| `failproofai flush --wait` | वर्तमान इवेंट स्पूल डिलीवर करें |
-| `failproofai backfill --since 30d` | पहले से पास किए गए इतिहास को फिर से पढ़ें |
-| `failproofai config --pause [duration]` | एक स्थानीय सत्र को डिफॉल्ट रूप से 30 मिनट के लिए पॉज़ करें, 8 घंटे तक |
-| `failproofai config --resume` | एक पॉज़ किए गए स्थानीय सत्र को फिर से शुरू करें; सभी पॉज़ को स्पष्ट करने के लिए `--all` जोड़ें |
-| `failproofai update` | पैकेज माइग्रेशन पूरा करें और डेमन को अपडेट करें |
-| `failproofai migrate --dry-run` | लंबित होम-लेआउट माइग्रेशन का पूर्वावलोकन या चलाएं |
-| `failproofai uninstall` | हुक और डेमन को हटाएं पैकेज को हटाने से पहले |
+| `failproofai audit --schedule [days] --email ` | आवर्ती स्थानीय स्कैन शेड्यूल करें और उनके निष्कर्ष ईमेल करें |
+| `failproofai audit --status` | रिपोर्ट पता, अंतराल और अगली अनुसूचित स्कैन दिखाएं |
+| `failproofai audit --no-schedule` | आवर्ती स्कैन को बंद करें ऑडिट इतिहास को हटाए बिना |
+| `failproofai harness list` | अतिरिक्त कैप्चर पाथ सूचीबद्ध करें |
+| `failproofai flush --wait` | वर्तमान ईवेंट स्पूल डिलीवर करें |
+| `failproofai backfill --since 30d` | पहले पास किए गए इतिहास को फिर से पढ़ें |
+| `failproofai config --pause [duration]` | एक स्थानीय सेशन को 30 मिनट के लिए डिफ़ॉल्ट रूप से पॉज करें, 8 घंटे तक |
+| `failproofai config --resume` | एक पॉज किए गए स्थानीय सेशन को फिर से शुरू करें; सभी पॉज को साफ़ करने के लिए `--all` जोड़ें |
+| `failproofai update` | पैकेज माइग्रेशन समाप्त करें और डेमॉन अपडेट करें |
+| `failproofai migrate --dry-run` | लंबित होम-लेआउट माइग्रेशन को प्रिव्यू या चलाएं |
+| `failproofai uninstall` | पैकेज हटाने से पहले हुक और डेमॉन निकालें |
| `failproofai --version` | इंस्टॉल किए गए पैकेज संस्करण को प्रिंट करें |
| `failproofai --help` | कमांड और वैश्विक उपयोग दिखाएं |
-## कॉन्फ़िगरेशन फ़्लैग
+## कॉन्फ़िगरेशन फ्लैग
-| फ़्लैग | उपयोग |
+| फ्लैग | उपयोग |
| --- | --- |
-| `--connect --token ` | गैर-इंटरैक्टिव रूप से कनेक्ट करें |
+| `--connect --token ` | गैर-इंटरएक्टिव रूप से कनेक्ट करें |
| `--machine-id ` | स्थिर मशीन ID सेट करें |
| `--machine-label ` | डैशबोर्ड लेबल सेट या बदलें |
| `--no-transcripts` | ट्रांसक्रिप्ट सामग्री के बिना निर्णय भेजें |
-| `--disconnect` | क्लाउड नीति पुल और इवेंट डिलीवरी रोकें |
+| `--disconnect` | क्लाउड नीति पुल और ईवेंट डिलीवरी बंद करें |
| `--status` | वर्तमान मशीन स्थिति दिखाएं |
-| `--pause [duration]` | वर्तमान निर्देशिका में नवीनतम सत्र को पॉज़ करें; सेकंड, मिनट, या घंटे स्वीकार करता है और डिफॉल्ट रूप से 30 मिनट है |
-| `--resume` | मिलान करने वाले पॉज़ को जल्दी समाप्त करें |
-| `--session ` | पॉज़ या रिज़्यूम के लिए एक स्पष्ट सत्र लक्ष्य करें |
-| `--all` | `--resume` के साथ, हर सक्रिय पॉज़ को समाप्त करें |
+| `--pause [duration]` | वर्तमान निर्देशिका में सबसे नए सेशन को पॉज करें; सेकंड, मिनट या घंटे स्वीकार करता है और 30 मिनट के लिए डिफ़ॉल्ट |
+| `--resume` | एक मेल खाते वाले पॉज को जल्दी समाप्त करें |
+| `--session ` | पॉज या रिज्यूम के लिए एक स्पष्ट सेशन को लक्ष्य करें |
+| `--all` | `--resume` के साथ, हर सक्रिय पॉज को समाप्त करें |
-स्थानीय पॉज़ बिल्ट-इन, कस्टम और सम्मेलन नीतियों को एक सत्र के लिए निलंबित करते हैं। वे हमेशा समाप्त होते हैं और क्लाउड-प्रबंधित नीतियों को अक्षम नहीं करते हैं। `block-self-pause` एक साधन एजेंट को इस एस्केप हैच का स्वयं उपयोग करने से रोकता है।
+स्थानीय पॉज एक सेशन के लिए बिल्ट-इन, कस्टम, कन्वेंशन और पैक नीतियों को निलंबित करते हैं। वे हमेशा समाप्त हो जाते हैं और क्लाउड-प्रबंधित नीतियों को अक्षम नहीं करते। `block-failproofai-commands` — जो हमेशा चालू है और स्वयं को अक्षम या पॉज नहीं किया जा सकता — एक इंस्ट्रूमेंटेड एजेंट को इस एस्केप हैच का उपयोग करने से रोकता है।
-## नीति फ़्लैग
+## नीति फ्लैग
-| फ़्लैग | उपयोग |
+| फ्लैग | उपयोग |
| --- | --- |
| `--install`, `-i` | नीतियों को सक्षम करें और हार्नेस हुक इंस्टॉल करें |
-| `--uninstall`, `-u` | नीतियों को अक्षम करें या हुक हटाएं |
+| `--uninstall`, `-u` | नीतियों को अक्षम करें या हुक निकालें |
| `--cli ` | एक या अधिक समर्थित हार्नेस को लक्ष्य करें |
| `--scope user\|project\|local\|all` | कॉन्फ़िगरेशन स्कोप चुनें; `all` अनइंस्टॉल के लिए है |
| `--beta` | बीटा नीतियों को शामिल करें |
-| `--custom`, `-c ` | एक कस्टम नीति फ़ाइल को मान्य करें और लोड करें; दोहराए जा सकते हैं |
+| `--custom`, `-c ` | कस्टम नीति फ़ाइल को मान्य करें और लोड करें; दोहराया जा सकता है |
-## डिलीवरी और रखरखाव फ़्लैग
+## डिलीवरी और रखरखाव फ्लैग
-| कमांड | फ़्लैग |
+| कमांड | फ्लैग |
| --- | --- |
| `backfill` | `--since <30d\|6m\|YYYY-MM-DD>`, `--dry-run` |
| `flush` | `--wait`, `--timeout ` |
@@ -85,7 +90,7 @@ failproofai config --status
| `migrate` | `--dry-run` |
| `uninstall` | `--purge`, `--dry-run`, `--yes` |
-`failproofai update` को `npm install -g failproofai@latest` के बाद चलाया जाना चाहिए; यह होम-लेआउट माइग्रेशन करता है, मिलान करने वाले डेमन बाइनरी को इंस्टॉल करता है, और सेवा को पुनः शुरू करता है। `--no-daemon` केवल लेआउट माइग्रेशन करता है।
+`npm install -g failproofai@latest` के बाद `failproofai update` चलाया जाना चाहिए; यह होम-लेआउट माइग्रेशन करता है, मेल खाते वाले डेमॉन बाइनरी को इंस्टॉल करता है, और सेवा को पुनः शुरू करता है। `--no-daemon` केवल लेआउट माइग्रेशन करता है।
## हार्नेस पाथ
@@ -95,11 +100,11 @@ failproofai harness add-path [label=]
failproofai harness remove-path
```
-समर्थित हार्नेस नाम `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, और `goose` हैं।
+समर्थित हार्नेस नाम `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` और `goose` हैं।
-लेबल व्युत्पन्न एजेंट ID को नेमस्पेस करते हैं जब दो रूट एक ही प्रोजेक्ट की प्रतियां रखते हैं। ओवरलैपिंग रूट और डुप्लिकेट लेबल को अस्वीकार किया जाता है ताकि डुप्लिकेट संग्रह या कर्सर भ्रष्टाचार को रोका जा सके। अतिरिक्त-पाथ कॉन्फ़िगरेशन डेमन पुनरारंभ के बिना पुनः लोड होता है।
+लेबल व्युत्पन्न एजेंट आईडी को नामस्थान करते हैं जब दो रूट एक ही प्रोजेक्ट की प्रतियां रखते हैं। डुप्लिकेट संग्रह या कर्सर भ्रष्टाचार को रोकने के लिए ओवरलैपिंग रूट और डुप्लिकेट लेबल को अस्वीकार किया जाता है। अतिरिक्त-पाथ कॉन्फ़िगरेशन डेमॉन रीस्टार्ट के बिना पुनः लोड होता है।
-कंटेनर पर्यावरण फ़ाइल-कॉन्फ़िगर किए गए अतिरिक्त पाथों को `FAILPROOFAI__EXTRA_PATHS` नामक अल्पविराम-अलग किए गए चर से बदल सकते हैं, उदाहरण के लिए:
+कंटेनर वातावरण फ़ाइल-कॉन्फ़िगर किए गए अतिरिक्त पाथ को एक अल्पविराम-अलग किए गए वेरिएबल से बदल सकते हैं जिसे `FAILPROOFAI__EXTRA_PATHS` कहा जाता है, उदाहरण के लिए:
```bash
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
@@ -109,24 +114,26 @@ export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/opencl
स्थायी मशीन व्यवहार के लिए कॉन्फ़िगरेशन फ़ाइलों का उपयोग करें। पर्यावरण चर कंटेनर, परीक्षण और एक प्रक्रिया के लिए सबसे उपयोगी हैं।
-| चर | उपयोग |
+| वेरिएबल | उपयोग |
| --- | --- |
| `FAILPROOFAI_HOME` | संपूर्ण `~/.failproofai` लेआउट को स्थानांतरित करें |
-| `FAILPROOFAI_LOG_LEVEL` | स्थानीय लॉगिंग वर्बोसिटी सेट करें |
-| `FAILPROOFAI_HOOK_LOG_FILE` | हुक डायग्नोस्टिक्स को चयनित फ़ाइल में लिखें |
+| `FAILPROOFAI_LOG_LEVEL` | स्थानीय लॉगिंग विस्तार सेट करें |
+| `FAILPROOFAI_HOOK_LOG_FILE` | हुक डायग्नोस्टिक्स को एक चयनित फ़ाइल में लिखें |
| `FAILPROOFAI_TELEMETRY_DISABLED=1` | इस प्रक्रिया के लिए अनाम टेलीमेट्री अक्षम करें |
-| `FAILPROOFAI_NO_FIRST_RUN=1` | इंटरैक्टिव पहली बार सेटअप छोड़ें |
-| `FAILPROOFAI_NO_AUTO_AUDIT=1` | पोस्ट-सेटअप स्थानीय ऑडिट छोड़ें |
-| `FAILPROOFAI_LLM_BASE_URL` | LLM नीतियों द्वारा उपयोग किए गए OpenAI-संगत एंडपॉइंट को ओवरराइड करें |
-| `FAILPROOFAI_LLM_API_KEY` | LLM नीतियों द्वारा उपयोग किए गए API कुंजी की आपूर्ति करें |
-| `FAILPROOFAI_LLM_MODEL` | LLM नीतियों द्वारा उपयोग किए गए मॉडल का चयन करें |
-| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | कस्टम नीति मॉड्यूल लोडिंग को बाउंड करें |
+| `FAILPROOFAI_NO_FIRST_RUN=1` | इंटरएक्टिव पहली बार चलाएं सेटअप छोड़ें |
+| `FAILPROOFAI_NO_AUTO_AUDIT=1` | सेटअप के बाद स्थानीय ऑडिट छोड़ें |
+| `FAILPROOFAI_LLM_BASE_URL` | LLM नीतियों द्वारा उपयोग किए जाने वाले OpenAI-संगत एंडपॉइंट को ओवरराइड करें |
+| `FAILPROOFAI_LLM_API_KEY` | LLM नीतियों द्वारा उपयोग किया जाने वाला API कुंजी प्रदान करें |
+| `FAILPROOFAI_LLM_MODEL` | LLM नीतियों द्वारा उपयोग किए गए मॉडल को चुनें |
+| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | कस्टम नीति मॉड्यूल लोडिंग को बाध्य करें |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | पैक और डेमॉन बाइनरी लाने से इनकार करें; जो इंस्टॉल है वह लागू रहता है |
+| `FAILPROOFAI_PACK_BASE_URL` | `github.com` के बजाय मिरर से पैक लाएं |
| `FAILPROOFAI__EXTRA_PATHS` | एक हार्नेस के लिए कॉन्फ़िगर किए गए अतिरिक्त कैप्चर पाथ को बदलें |
| `NO_COLOR` | रंगीन टर्मिनल आउटपुट अक्षम करें |
-एजेंट-विशिष्ट होम चर जैसे `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME`, और `OPENCLAW_HOME` ओवरराइड करते हैं कि Failproof AI उस हार्नेस के लिए स्थानीय सत्र खोज करता है।
+एजेंट-विशिष्ट होम वेरिएबल जैसे `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` और `OPENCLAW_HOME` ओवरराइड करते हैं कि Failproof AI उस हार्नेस के लिए स्थानीय सेशन कहां खोजता है।
-## एक मशीन को सुरक्षित रूप से पॉज़ या निकालें
+## एक मशीन को सुरक्षित रूप से पॉज या निकालें
```bash
failproofai config --pause
@@ -134,9 +141,9 @@ failproofai config --status
failproofai config --resume
```
-स्थानीय सत्र पॉज़ क्लाउड-प्रबंधित नीतियों को अक्षम नहीं करता है। जब रोलआउट ही समस्या है तो क्लाउड प्रवर्तन वर्कफ़्लो के माध्यम से क्लाउड परिनियोजन को पुनः स्थापित करें।
+एक स्थानीय सेशन पॉज क्लाउड-प्रबंधित नीतियों को अक्षम नहीं करता। जब रोलआउट स्वयं समस्या है तो क्लाउड एन्फोर्समेंट वर्कफ़्लो के माध्यम से क्लाउड तैनाती को पुनः स्थापित करें।
-npm पैकेज को हटाने से पहले, इंस्टॉल किए गए हुक और डेमन को हटाएं:
+npm पैकेज को हटाने से पहले, इंस्टॉल किए गए हुक और डेमॉन को निकालें:
```bash
failproofai uninstall --dry-run
@@ -147,5 +154,5 @@ npm rm -g failproofai
संस्करण-विशिष्ट विवरण के लिए `failproofai --help` चलाएं।
- `npm rm -g failproofai` से पहले `failproofai uninstall` चलाएं; npm इंस्टॉल किए गए एजेंट हुक या डेमन सेवा को नहीं हटाता है।
+ `npm rm -g failproofai` से पहले `failproofai uninstall` चलाएं; npm इंस्टॉल किए गए एजेंट हुक या डेमॉन सेवा को नहीं हटाता।
\ No newline at end of file
diff --git a/docs/hi/start/quickstart.mdx b/docs/hi/start/quickstart.mdx
index 16a83d5a..d281365f 100644
--- a/docs/hi/start/quickstart.mdx
+++ b/docs/hi/start/quickstart.mdx
@@ -1,37 +1,36 @@
---
----
-title: "त्वरित शुरुआत"
-description: "एक एजेंट सेशन कैप्चर करें, एक विफलता खोजें, और इसे रोकना शुरू करें।"
+title: "क्विकस्टार्ट"
+description: "एक एजेंट सेशन कैप्चर करें, विफलता खोजें, और इसे रोकना शुरू करें।"
icon: "zap"
---
-यह त्वरित शुरुआत एक मशीन को सेशन रिपोर्ट करने, एक ऑडिट चलाने और एक नीति तैनात करने के लिए सेट अप करती है। Failproof AI को सेट करने के लिए कौशल का उपयोग करें, या मैनुअल चरणों का पालन करें।
+यह क्विकस्टार्ट एक मशीन को सेशन रिपोर्ट करने के लिए सेट करता है, एक ऑडिट चलाता है, और एक नीति तैनात करता है। Failproof AI को सेट अप करने के लिए स्किल का उपयोग करें, या मैनुअल स्टेप्स का पालन करें।
-**आपका पथ कौन सा है?** यदि आपका एजेंट 12 समर्थित [हार्नेस](/hi/reference/harnesses) में से एक में चलता है — एक कोडिंग CLI, या Hermes या OpenClaw जैसा गेटवे — नीचे दिए गए चरणों का पालन करें; आपको Node.js 20.9 या बाद का संस्करण चाहिए। यदि आपके एजेंट के पास कोई हार्नेस नहीं है, तो ट्रेसिंग और ऑडिट के लिए इसे [Python SDK](/hi/reference/custom-agents) से इंस्ट्रूमेंट करें, फिर [अपनी पहली विफलता जांच चलाएं](/hi/start/first-audit) पर फिर से शामिल हों; उस पथ पर enforcement के लिए आपके runtime में एक hook की आवश्यकता है।
+**आपका पाथ कौन सा है?** यदि आपका एजेंट 12 समर्थित [harnesses](/hi/reference/harnesses) में से एक में चलता है — एक कोडिंग CLI, या Hermes या OpenClaw जैसा गेटवे — नीचे दिए गए स्टेप्स का पालन करें; आपको Node.js 20.9 या बाद का संस्करण चाहिए। यदि आपके एजेंट के पास कोई harness नहीं है, तो ट्रेसिंग और ऑडिट के लिए इसे [Python SDK](/hi/reference/custom-agents) से इंस्ट्रूमेंट करें, फिर [Run your first failure check](/hi/start/first-audit) पर वापस आएं; उस पाथ पर एनफोर्समेंट के लिए आपके रनटाइम में एक हुक की आवश्यकता होती है।
-
+
-
+
```bash
npx skills add FailproofAI/skills
```
-
+
```text
Set up Failproof AI for this project, connect this machine, install the right hooks and policies, and verify that a session arrives.
```
- आपका एजेंट प्रोजेक्ट का निरीक्षण करता है, प्रासंगिक एकीकरण चुनता है, सेटअप करता है, और इसे सत्यापित करता है। व्यक्तिगत कौशल और उन्नत इंस्टॉलेशन विकल्पों के लिए [FailproofAI कौशल रिपोजिटरी](https://github.com/FailproofAI/skills) देखें।
+ आपका एजेंट प्रोजेक्ट की जांच करता है, प्रासंगिक इंटीग्रेशन चुनता है, सेटअप करता है, और इसे सत्यापित करता है। व्यक्तिगत स्किल्स और उन्नत इंस्टॉलेशन विकल्प के लिए [FailproofAI skills repository](https://github.com/FailproofAI/skills) देखें।
- ## शुरू करने से पहले
+ ## शुरुआत करने से पहले
1. [Failproof AI डैशबोर्ड](https://app.befailproof.ai) खोलें और एक खाता बनाएं या अपने कार्य ईमेल से साइन इन करें।
2. **Administration → Keys** पर जाएं और `events:add` और `policies:pull` के साथ एक कुंजी बनाएं।
-3. एकबारी गुप्त को कॉपी करें और इसे लक्ष्य मशीन पर संग्रहीत करें:
+3. एकबारगी गुप्त को कॉपी करें और इसे लक्ष्य मशीन पर स्टोर करें:
```bash
export FAILPROOFAI_KEY=""
@@ -46,9 +45,9 @@ export FAILPROOFAI_KEY=""
failproofai config --connect https://app.befailproof.ai --token "$FAILPROOFAI_KEY"
```
- सेशन ट्रांसक्रिप्ट डिफ़ॉल्ट रूप से भेजी जाती हैं। `--no-transcripts` जोड़ें ताकि ट्रांसक्रिप्ट सामग्री के बिना hook activity और नीति निर्णय रिपोर्ट किए जाएं।
+ सेशन ट्रांसक्रिप्ट्स डिफ़ॉल्ट रूप से भेजे जाते हैं। ट्रांसक्रिप्ट सामग्री के बिना हुक गतिविधि और नीति निर्णयों की रिपोर्ट करने के लिए `--no-transcripts` जोड़ें।
- यदि इस मशीन के पास पहले से एजेंट history है, तो पिछले सात दिनों का पूर्वावलोकन करें और आयात करें, फिर delivery समाप्त होने का इंतजार करें। नई मशीन पर इस चरण को छोड़ें।
+ यदि इस मशीन पर पहले से एजेंट इतिहास है, तो अंतिम सात दिनों का पूर्वावलोकन करें और आयात करें, फिर डिलीवरी समाप्त होने की प्रतीक्षा करें। नई मशीन पर इस स्टेप को छोड़ दें।
```bash
failproofai backfill --since 7d --dry-run
@@ -58,28 +57,28 @@ export FAILPROOFAI_KEY=""
Failproof AI में **Sessions** खोलें और एक आयातित सेशन चुनें।
-
- यह Failproof AI को आपके हार्नेस से जोड़ता है और 40 built-in नीतियां इंस्टॉल करता है। उन्हें स्थानीय नीति निर्णय देखने और Failproof AI आपके सेशन ऑडिट करने और आपके एजेंट के लिए नीतियां लिखने से पहले enforcement आजमाने के लिए उपयोग करें।
+
+ यह Failproof AI को आपके harness से जोड़ता है और 39 बिल्ट-इन नीतियां इंस्टॉल करता है। स्थानीय नीति निर्णय देखने के लिए और Failproof AI आपके सेशन ऑडिट करने और आपके एजेंट्स के लिए नीतियां लिखने से पहले एनफोर्समेंट आजमाने के लिए इनका उपयोग करें।
- इंस्टॉलर को अपने हार्नेस को detect करने दें, या एक को explicitly नाम दें। 12 में से प्रत्येक एक वैध `--cli` मान है — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`।
+ इंस्टॉलर को अपना harness डिटेक्ट करने दें, या एक स्पष्ट रूप से नाम दें। 12 में से प्रत्येक एक वैध `--cli` मान है — `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity`, `goose`।
```bash
failproofai policies --install --cli claude --scope user # a coding CLI
failproofai policies --install --cli hermes --scope user # a Slack/Telegram gateway
```
- एक tool call को चलने से पहले block करना सभी 12 पर verified है। Turn-end gates 8 पर verified हैं — per-harness matrix के लिए [enforcement capability](/hi/reference/harnesses#enforcement-capability) देखें।
+ सभी 12 पर चलने से पहले एक टूल कॉल को ब्लॉक करना सत्यापित है। टर्न-एंड गेट्स 8 पर सत्यापित हैं — प्रति-harness मैट्रिक्स के लिए [enforcement capability](/hi/reference/harnesses#enforcement-capability) देखें।
-
- [अपनी पहली विफलता जांच चलाएं](/hi/start/first-audit) का पालन करें। एक ठोस लक्ष्य का उपयोग करें जैसे कि "ऐसे सेशन खोजें जहां एजेंट ने अपने दृष्टिकोण को बदले बिना एक विफल tool को फिर से try किया।"
+
+ [Run your first failure check](/hi/start/first-audit) का पालन करें। एक ठोस लक्ष्य का उपयोग करें जैसे "सेशन खोजें जहां एजेंट ने अपने दृष्टिकोण को बदले बिना विफल टूल को फिर से आजमाया।"
- [एक नीति के साथ अपनी पहली विफलता को रोकें](/hi/start/first-policy) का पालन करें। observe mode में शुरू करें, matches को inspect करें, फिर reviewed संस्करण को enforce करें।
+ [Prevent your first failure with a policy](/hi/start/first-policy) का पालन करें। अवलोकन मोड में शुरू करें, मिलान का निरीक्षण करें, फिर समीक्षा किए गए संस्करण को लागू करें।
- `failproofai config --status` चलाएं। एक स्वस्थ सेटअप क्लाउड कनेक्शन, daemon state, और क्या enforcement को paused किया गया है यह रिपोर्ट करता है।
+ `failproofai config --status` चलाएं। एक स्वस्थ सेटअप क्लाउड कनेक्शन, डेमॉन स्थिति, और क्या एनफोर्समेंट को रोका गया है इसकी रिपोर्ट करता है।
\ No newline at end of file
diff --git a/docs/i18n/README.ar.md b/docs/i18n/README.ar.md
index 408fc74e..094c30c2 100644
--- a/docs/i18n/README.ar.md
+++ b/docs/i18n/README.ar.md
@@ -22,29 +22,29 @@
**الترجمات:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**قابلية الملاحظة والفرض لكل بيئة تقنية يعمل فيها وكيلك الذكي.** أينما يعمل وكيلك
-الذكي، نحن نراه — ويمكننا الرفض. يتصل failproofai بـ 12 بيئة تقنية — واجهات سطر
-أوامر البرمجة مثل Claude Code و Codex، بوابات الدردشة مثل Hermes، المساعدات ذاتية
-الاستضافة مثل OpenClaw — لالتقاط كل عملية وحجب استدعاءات الأدوات الخطيرة قبل تنفيذها.
-40 سياسة مدمجة. بدون تأخير. يعمل محليًا.
+**قابلية الملاحظة والإنفاذ لكل محرك يشغّل وكلاءك.**
+حيثما يعمل وكلاؤك، نحن نراهم — ويمكننا الاعتراض. يدعم failproofai 12 محرك وكيل
+— واجهات سطر أوامر الترميز مثل Claude Code و Codex، وبوابات الدردشة مثل Hermes،
+والمساعدات ذاتية الاستضافة مثل OpenClaw — حيث يعكس كل عملية تشغيل ويحجب استدعاءات الأدوات الخطرة
+قبل تنفيذها. 39 سياسة مدمجة. لا توجد تأخيرات زمنية. يعمل محلياً.
-
+
---
-## البيئات التقنية المدعومة
+## المحركات المدعومة
-اثنتا عشرة بيئة تقنية في فئتين — عشر واجهات سطر أوامر برمجة، وبوابتا دردشة ومساعد
-(Hermes، OpenClaw). نفس الأحداث، نفس السياسات، نفس سجل الجلسة، أيًا كانت البيئة التي
-يعمل فيها وكيلك الذكي.
+اثنا عشر محركاً في فئتين — عشر واجهات سطر أوامر للترميز، وبوابتان للدردشة والمساعدات
+(Hermes، OpenClaw). نفس الأحداث، نفس السياسات، نفس سجل الجلسات،
+أياً كان المحرك الذي يعمل فيه وكيلك.
-الوكلاء الذين لا يعملون في أي منها يقدمون التقارير من خلال [Python SDK](https://docs.befailproof.ai/reference/custom-agents)،
-والذي يوفر لك التتبع والجلسات والتدقيق. يحتاج الفرض هناك إلى خطاف في وقت التشغيل الخاص بك
-— [تحدث معنا](mailto:support@befailproof.ai) وسنقوم بتعيينه.
+تقدم الوكلاء الذين لا يعملون في أي منهم تقاريرهم عبر [Python SDK](https://docs.befailproof.ai/reference/custom-agents)،
+والذي يوفر لك التتبع والجلسات والمراجعات. يتطلب الإنفاذ هناك ربط في
+وقت تشغيلك الخاص — [تحدث إلينا](mailto:support@befailproof.ai) وسنقوم بتعيينه.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -144,38 +144,38 @@
```sh
npm install -g failproofai
-failproofai policies --install # أو قم بتشغيل `failproofai` فقط واقبل رسالة التشغيل الأول
+failproofai policies --install # أو فقط قم بتشغيل `failproofai` واقبل موجه التشغيل الأول
failproofai
```
-40 سياسة مدمجة تتفعل فورًا. لوحة التحكم في `localhost:8020`. عطّل رسالة التشغيل الأول باستخدام `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 سياسة مدمجة تُفعَّل فوراً. لوحة المعلومات على `localhost:8020`. عطّل موجه التشغيل الأول باستخدام `FAILPROOFAI_NO_FIRST_RUN=1`.
---
-## ما يمنعه
+## ما الذي يوقفه
-| السياسة | ما يحجبه |
+| السياسة | ما الذي يحجبه |
|---|---|
-| `sanitize-api-keys` | تسرب مفاتيح API إلى سياق الوكيل |
+| `sanitize-api-keys` | مفاتيح API تتسرب إلى سياق الوكيل |
| `block-env-files` | قراءة ملفات `.env` والملفات السرية الأخرى |
-| `warn-repeated-tool-calls` | حلقة الوكيل على نفس الاستدعاء |
+| `warn-repeated-tool-calls` | الوكيل يكرر نفس الاستدعاء |
| `block-sudo` | تصعيد الامتيازات |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` غير المحدود |
-| `block-terraform` / `block-kubectl` | التغييرات غير المراجعة للبنية الأساسية الحية |
+| `warn-destructive-sql` | `DROP`، `TRUNCATE`، `DELETE` غير المحدود |
+| `block-terraform` / `block-kubectl` | تغييرات غير مراجعة على البنية التحتية الحية |
| `block-rm-rf` | حذف الملفات بشكل متكرر |
| `block-force-push` / `block-push-master` | `git push --force`، الدفع المباشر إلى `main` |
-تنطبق أول خمسة على أي وكيل يمكنه استدعاء أداة. الثلاثة الأخيرة هي المفضلة لدى المطورين —
-واجهات سطر أوامر البرمجة هي الفئة من البيئات التقنية التي نغطيها بعمق أكثر.
+الخمس الأولى تنطبق على أي وكيل يمكنه استدعاء أداة. الثلاث الأخيرة مفضلة المطورين —
+واجهات سطر أوامر الترميز هي فئة المحرك التي نغطيها بعمق أكبر.
-→ [جميع السياسات المدمجة البالغ عددها 40](https://docs.befailproof.ai/policies/builtin)
+→ [جميع السياسات المدمجة الـ 39](https://docs.befailproof.ai/policies/builtin)
---
## سياساتك الخاصة
-ضع ملفًا في `.failproofai/policies/` — يتم تحميله تلقائيًا، لا توجد حاجة لعلامات.
-قم بارتكابه وستحصل الفريق بأكمله عليه في الجلب التالي.
+ضع ملفاً في `.failproofai/policies/` — يحمّل تلقائياً، لا توجد أعلام مطلوبة.
+التزمه وستحصل الفريق بالكامل عليه في السحب التالي.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -185,19 +185,19 @@ customPolicies.add({
match: { events: ["PreToolUse"] },
fn: async (ctx) => {
if (ctx.toolInput?.file_path?.includes("production"))
- return deny("Writes to production paths are blocked.");
+ return deny("الكتابة إلى مسارات الإنتاج محجوبة.");
return allow();
},
});
```
-هناك ثلاثة قرارات متاحة لكل سياسة:
+ثلاثة قرارات متاحة لكل سياسة:
| القرار | التأثير |
|---|---|
| `allow()` | السماح بالعملية |
-| `deny(message)` | حجبها — يعود الرسالة إلى الوكيل |
-| `instruct(message)` | السماح بها، لكن أضف سياقًا إلى المحفز التالي للوكيل |
+| `deny(message)` | حجبها — الرسالة تعود إلى الوكيل |
+| `instruct(message)` | السماح بها، لكن أضف سياق إلى موجه الوكيل التالي |
→ [دليل السياسات المخصصة](https://docs.befailproof.ai/policies/custom)
@@ -205,29 +205,31 @@ customPolicies.add({
## قابلية الملاحظة
-الفرض نصف واحد. النصف الآخر هو رؤية ما فعله الوكيل فعلاً.
+الإنفاذ هو نصف واحد. النصف الآخر هو رؤية ما فعله الوكيل فعلاً.
-قم بتشغيل `failproofai` بدون مُعاملات وسيخدم لوحة تحكم على `localhost:8020`
-تقرأ سجل التشغيل الموجود بالفعل على جهازك — لا حساب، لا تسجيل، لا شيء يترك الصندوق.
-تحصل على قائمة الجلسة، وتسلسل استدعاءات النموذج، واستدعاءات الأدوات وقرارات الخطاف داخل كل تشغيل،
-وما تم حجبه وما قالته السياسة للوكيل، وتدقيق غير متصل (`failproofai audit`) الذي يمسح سجلك
-بحثًا عن أنماط محفوفة بالمخاطر ويقترح السياسات لإيقافها.
+شغّل `failproofai` بدون وسائط وسيخدم لوحة معلومات على `localhost:8020`
+قارئاً سجل التشغيل الموجود بالفعل على جهازك — لا حساب، لا اشتراك، لا شيء
+يترك الصندوق. تحصل على قائمة الجلسات، وتسلسل استدعاءات النموذج، واستدعاءات الأدوات
+وقرارات الربط داخل كل تشغيل، ما تم حجبه وما قالته السياسة للوكيل،
+وتدقيق غير متصل (`failproofai audit`) الذي يفحص سجلك بحثاً عن أنماط محفوفة بالمخاطر
+ويقترح سياسات لإيقافها.
-→ [لوحة التحكم المحلية](https://docs.befailproof.ai/reference/local-dashboard) ·
-[اقرأ تتبعًا](https://docs.befailproof.ai/sessions/read-a-trace) ·
+→ [لوحة المعلومات المحلية](https://docs.befailproof.ai/reference/local-dashboard) ·
+[قراءة التتبع](https://docs.befailproof.ai/sessions/read-a-trace) ·
[التدقيق المحلي](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** هو الجانب المستضاف من نفس نموذج البيانات، للفرق التي
-تدير الوكلاء عبر أسطول: كل تشغيل من كل بيئة تقنية في مكان واحد، رسم بياني للتنفيذ مع
-وكلاء فرعيين متوازيين على ممراتهم الخاصة، كمون p50/p95/p99 للنماذج والأدوات والخطافات،
-التكلفة لكل نموذج وتتبع نافذة السياق، تتبع الأخطاء، SQL فوق آثارك مع لوحات تحكم قابلة
-للمشاركة، التقييمات التي تسجلها خدمتك الخاصة، المراجعات المجدولة التي تحول الأعطال المتكررة
-إلى نتائج مدعومة بالأدلة، والتنبيهات الموجهة إلى Slack أو البريد الإلكتروني أو webhook موقّع.
-الاستضافة الذاتية في مجموعتك الخاصة متاحة في خطة Enterprise.
+**قابلية ملاحظة Failproof AI** هي الجانب المستضاف من نفس نموذج البيانات، للفرق
+التي تشغّل الوكلاء عبر مجموعة: كل تشغيل من كل محرك في مكان واحد، رسم بياني للتنفيذ
+مع وكلاء فرعيين متوازيين على مساراتهم الخاصة، زمن الاستجابة p50/p95/p99
+للنماذج والأدوات والربط، التكلفة لكل نموذج وتتبع نافذة السياق، تتبع الأخطاء، SQL
+على تتبعاتك الخاصة مع لوحات معلومات قابلة للمشاركة، التقييمات المسجلة من قبل خدمتك الخاصة،
+التدقيقات المجدولة التي تحول الفشل المتكرر إلى نتائج مدعومة بالأدلة، والتنبيهات
+الموجهة إلى Slack أو البريد الإلكتروني أو webhook موقع. الاستضافة الذاتية في مجموعتك الخاصة
+متاحة في خطة Enterprise.
→ [الجلسات](https://docs.befailproof.ai/sessions/overview) ·
[التدقيقات](https://docs.befailproof.ai/audits/overview) ·
-[احجز عرضًا توضيحيًا](https://befailproof.ai/get-a-demo)
+[احجز عرضاً توضيحياً](https://befailproof.ai/get-a-demo)
---
@@ -235,50 +237,49 @@ customPolicies.add({
| ابدأ | |
|---|---|
-| [البدء السريع](https://docs.befailproof.ai/start/quickstart) | التثبيت، والاتصال بالبيئة التقنية، وشاهد التشغيل الأول |
-| [المفاهيم](https://docs.befailproof.ai/start/concepts) | كيف يعمل نظام الخطاف |
-| [البيئات التقنية المدعومة](https://docs.befailproof.ai/reference/harnesses) | الكل 12، وما يمكن لكل منها فرضه |
+| [البدء السريع](https://docs.befailproof.ai/start/quickstart) | التثبيت وربط محرك وشاهد التشغيل الأول |
+| [المفاهيم](https://docs.befailproof.ai/start/concepts) | كيفية عمل نظام الربط |
+| [المحركات المدعومة](https://docs.befailproof.ai/reference/harnesses) | جميع الـ 12 وما يمكن لكل واحد منها إنفاذه |
| لاحظ | |
|---|---|
-| [الجلسات](https://docs.befailproof.ai/sessions/overview) | تابع التشغيل: النماذج والأدوات والأخطاء والكمون |
-| [اقرأ تتبعًا](https://docs.befailproof.ai/sessions/read-a-trace) | ما يخبرك به الرسم البياني للتنفيذ |
-| [التدقيقات](https://docs.befailproof.ai/audits/overview) | ابحث عن أنماط الفشل عبر جلسات كثيرة |
-| [لوحة التحكم المحلية](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`، لا حاجة للحساب |
+| [الجلسات](https://docs.befailproof.ai/sessions/overview) | اتبع تشغيلاً: النماذج والأدوات والأخطاء وزمن الاستجابة |
+| [قراءة التتبع](https://docs.befailproof.ai/sessions/read-a-trace) | ما الذي يخبرك به رسم البياني للتنفيذ |
+| [التدقيقات](https://docs.befailproof.ai/audits/overview) | ابحث عن أنماط الفشل عبر عدد من الجلسات |
+| [لوحة المعلومات المحلية](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`، لا يوجد حساب مطلوب |
-| فرض | |
+| أنفذ | |
|---|---|
-| [السياسات المدمجة](https://docs.befailproof.ai/policies/builtin) | جميع السياسات الـ 40 مع المعاملات |
-| [السياسات المخصصة](https://docs.befailproof.ai/policies/custom) | اكتب الخاصة بك |
+| [السياسات المدمجة](https://docs.befailproof.ai/policies/builtin) | جميع السياسات الـ 39 مع المعاملات |
+| [السياسات المخصصة](https://docs.befailproof.ai/policies/custom) | اكتب سياساتك الخاصة |
| [التكوين](https://docs.befailproof.ai/policies/local-configuration) | نطاقات التكوين وقواعد الدمج |
-| أداة وكيلك الخاص | |
+| أدوات وكيلك الخاص | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | الإبلاغ عن التشغيلات من وكيل بدون بيئة تقنية |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | ابلغ عن التشغيلات من وكيل بدون محرك |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | مرجع `allow` / `deny` / `instruct` |
---
## الترخيص
-MIT مع [Commons Clause](https://commonsclause.com/) — مجاني للاستخدام الداخلي والشخصي؛
-يتطلب إعادة بيع تجارية لـ failproofai نفسه اتفاقية منفصلة. انظر [LICENSE](../../LICENSE) للنص الكامل.
+MIT مع [Commons Clause](https://commonsclause.com/) — مجاني للاستخدام الداخلي والشخصي؛ إعادة بيع تجارية من failproofai نفسه يتطلب اتفاقية منفصلة. انظر [LICENSE](../../LICENSE) للنص الكامل.
---
## المساهمة
-انظر [CONTRIBUTING.md](../../CONTRIBUTING.md). السياسات الجديدة والحالات الحدية والترجمات كلها مرحب بها.
+انظر [CONTRIBUTING.md](../../CONTRIBUTING.md). السياسات الجديدة والحالات الحدية والترجمات جميعها مرحب بها.
-> **ابنِ قبل أن تبدأ.** قم بتشغيل `bun install && bun run build` أولاً. يعمل هذا المستودع
-> خطافات failproofai الخاصة به على نفسه، وهي تحل استيراد `failproofai` مقابل حزمة `dist/`
-> المترجمة — بدون بناء ستواجه أخطاء خطاف `Cannot find package 'failproofai'`. أعد البناء
-> بعد تغيير `src/`. انظر
-> [ابنِ قبل أن تعمل خطافات dev داخل المستودع](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **بناء قبل أن تبدأ.** شغّل `bun install && bun run build` أولاً. يشغّل هذا الريبو
+> ربطات failproofai الخاصة به على نفسه، ويحل استيراد `failproofai` مقابل
+> حزمة `dist/` المترجمة — بدون بناء ستصطدم بأخطاء ربط `Cannot find package 'failproofai'`.
+> أعد البناء بعد تغيير `src/`. انظر
+> [بناء قبل أن تعمل ربطات dev في المريبو](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-تم البناء بـ ❤️ بواسطة [befailproof.ai](https://befailproof.ai) في SF وBengaluru.
+بُني بـ ❤️ من قِبل [befailproof.ai](https://befailproof.ai) في SF و Bengaluru.
\ No newline at end of file
diff --git a/docs/i18n/README.de.md b/docs/i18n/README.de.md
index 1707c9d2..497c215f 100644
--- a/docs/i18n/README.de.md
+++ b/docs/i18n/README.de.md
@@ -20,8 +20,8 @@
**Übersetzungen:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Observability und Durchsetzung für jeden Harness, in dem deine Agenten laufen.**
-Egal wo deine Agenten ausgeführt werden – wir sehen es und können eingreifen. Failproof bindet sich in 12 Agent-Harnesses ein – Coding-CLIs wie Claude Code und Codex, Chat-Gateways wie Hermes, selbst gehostete Assistenten wie OpenClaw – erfasst jeden Durchlauf und blockiert gefährliche Tool-Aufrufe, bevor sie ausgeführt werden. 40 eingebaute Richtlinien. Keine Latenz. Läuft lokal.
+**Observability und Durchsetzung für jede Umgebung, in der Ihre Agents laufen.**
+Egal wo Ihre Agents laufen – wir sehen es und können eingreifen. Failproof unterstützt 12 Agent-Umgebungen (Harnesses) — Coding-CLIs wie Claude Code und Codex, Chat-Gateways wie Hermes, selbst gehostete Assistenten wie OpenClaw — erfasst jeden Lauf und blockiert gefährliche Tool-Aufrufe, bevor sie ausgeführt werden. 39 eingebaute Richtlinien. Null Latenz. Läuft lokal.
@@ -33,9 +33,9 @@ Egal wo deine Agenten ausgeführt werden – wir sehen es und können eingreifen
## Unterstützte Harnesses
-Zwölf Harnesses in zwei Klassen – zehn Coding-CLIs und zwei Chat- und Assistenz-Gateways (Hermes, OpenClaw). Dieselben Events, dieselben Richtlinien, dieselbe Sitzungshistorie – unabhängig davon, welchen Harness dein Agent verwendet.
+Zwölf Harnesses in zwei Klassen — zehn Coding-CLIs und zwei Chat- und Assistenten-Gateways (Hermes, OpenClaw). Gleiche Events, gleiche Richtlinien, gleiche Sitzungshistorie — unabhängig davon, in welcher Umgebung Ihr Agent läuft.
-Agenten, die in keinem davon laufen, können über das [Python SDK](https://docs.befailproof.ai/reference/custom-agents) berichten – es bietet Tracing, Sessions und Audits. Durchsetzung erfordert dort einen Hook in deiner eigenen Laufzeitumgebung – [sprich uns an](mailto:support@befailproof.ai) und wir erarbeiten eine Lösung.
+Agents, die in keiner dieser Umgebungen laufen, berichten über das [Python SDK](https://docs.befailproof.ai/reference/custom-agents), das Tracing, Sitzungen und Audits bietet. Für die Durchsetzung dort benötigen Sie einen Hook in Ihrer eigenen Laufzeitumgebung — [sprechen Sie uns an](mailto:support@befailproof.ai) und wir helfen Ihnen dabei.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,36 +135,36 @@ Agenten, die in keinem davon laufen, können über das [Python SDK](https://docs
```sh
npm install -g failproofai
-failproofai policies --install # oder einfach `failproofai` ausführen und den Erststart-Dialog bestätigen
+failproofai policies --install # oder einfach `failproofai` ausführen und die Erststart-Eingabeaufforderung bestätigen
failproofai
```
-40 eingebaute Richtlinien werden sofort aktiviert. Dashboard unter `localhost:8020`. Den Erststart-Dialog deaktivieren mit `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 eingebaute Richtlinien werden sofort aktiviert. Dashboard unter `localhost:8020`. Den Erststart-Dialog deaktivieren Sie mit `FAILPROOFAI_NO_FIRST_RUN=1`.
---
## Was es verhindert
-| Richtlinie | Was sie blockiert |
+| Richtlinie | Was wird blockiert |
|---|---|
-| `sanitize-api-keys` | API-Schlüssel, die in den Kontext des Agenten gelangen |
+| `sanitize-api-keys` | API-Schlüssel, die in den Kontext des Agents gelangen |
| `block-env-files` | Lesezugriffe auf `.env` und andere Secret-Dateien |
-| `warn-repeated-tool-calls` | Den Agenten, der denselben Aufruf in einer Schleife wiederholt |
-| `block-sudo` | Privilege-Escalation |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, unbegrenzte `DELETE`-Abfragen |
-| `block-terraform` / `block-kubectl` | Nicht geprüfte Änderungen an Live-Infrastruktur |
+| `warn-repeated-tool-calls` | Agent-Schleifen beim selben Aufruf |
+| `block-sudo` | Privilege Escalation |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, unbegrenzte `DELETE`-Anweisungen |
+| `block-terraform` / `block-kubectl` | Nicht geprüfte Änderungen an produktiver Infrastruktur |
| `block-rm-rf` | Rekursives Löschen von Dateien |
| `block-force-push` / `block-push-master` | `git push --force`, direkte Pushes auf `main` |
-Die ersten fünf gelten für jeden Agenten, der Tools aufrufen kann. Die letzten drei sind die Favoriten unter Entwicklern – Coding-CLIs sind die Harness-Klasse, die wir am umfassendsten abdecken.
+Die ersten fünf gelten für jeden Agent, der Tools aufrufen kann. Die letzten drei sind die Favoriten unter Entwicklern — Coding-CLIs sind die Harness-Klasse, die wir am tiefsten abdecken.
-→ [Alle 40 eingebauten Richtlinien](https://docs.befailproof.ai/policies/builtin)
+→ [Alle 39 eingebauten Richtlinien](https://docs.befailproof.ai/policies/builtin)
---
## Eigene Richtlinien
-Lege eine Datei in `.failproofai/policies/` ab – sie wird automatisch geladen, ohne zusätzliche Flags. Committe sie und das gesamte Team erhält sie beim nächsten Pull.
+Legen Sie eine Datei in `.failproofai/policies/` ab — sie wird automatisch geladen, ohne Flags. Committen Sie sie, und das gesamte Team erhält sie beim nächsten Pull.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -180,13 +180,13 @@ customPolicies.add({
});
```
-Drei Entscheidungen stehen jeder Richtlinie zur Verfügung:
+Jede Richtlinie kann eine von drei Entscheidungen treffen:
| Entscheidung | Wirkung |
|---|---|
| `allow()` | Operation erlauben |
-| `deny(message)` | Blockieren – die Nachricht wird an den Agenten zurückgegeben |
-| `instruct(message)` | Durchlassen, aber dem nächsten Prompt des Agenten Kontext hinzufügen |
+| `deny(message)` | Blockieren — die Nachricht wird an den Agent zurückgegeben |
+| `instruct(message)` | Durchlassen, aber dem nächsten Prompt des Agents Kontext hinzufügen |
→ [Leitfaden für eigene Richtlinien](https://docs.befailproof.ai/policies/custom)
@@ -196,15 +196,15 @@ Drei Entscheidungen stehen jeder Richtlinie zur Verfügung:
Durchsetzung ist die eine Hälfte. Die andere Hälfte ist zu sehen, was der Agent tatsächlich getan hat.
-Starte `failproofai` ohne Argumente, und es stellt ein Dashboard unter `localhost:8020` bereit, das die bereits auf deinem Rechner vorhandene Ausführungshistorie liest – kein Konto, keine Registrierung, nichts verlässt das Gerät. Du erhältst die Sitzungsliste, die Abfolge von Modellaufrufen, Tool-Aufrufen und Hook-Entscheidungen innerhalb jedes Durchlaufs, was blockiert wurde und was die Richtlinie dem Agenten mitgeteilt hat, sowie ein Offline-Audit (`failproofai audit`), das deine Historie nach riskanten Mustern durchsucht und Richtlinien vorschlägt, um sie zu unterbinden.
+Führen Sie `failproofai` ohne Argumente aus, und es startet ein Dashboard auf `localhost:8020`, das die bereits auf Ihrem Rechner vorhandene Verlaufshistorie ausliest — kein Konto, keine Registrierung, nichts verlässt Ihren Rechner. Sie erhalten die Sitzungsliste, die Abfolge von Modell-Aufrufen, Tool-Aufrufen und Hook-Entscheidungen innerhalb jedes Laufs, was blockiert wurde und was die Richtlinie dem Agent mitgeteilt hat, sowie ein Offline-Audit (`failproofai audit`), das Ihre Historie nach riskanten Mustern durchsucht und Richtlinien vorschlägt, um diese zu unterbinden.
→ [Lokales Dashboard](https://docs.befailproof.ai/reference/local-dashboard) ·
-[Einen Trace lesen](https://docs.befailproof.ai/sessions/read-a-trace) ·
+[Eine Ablaufverfolgung lesen](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Lokales Audit](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** ist die gehostete Seite desselben Datenmodells – für Teams, die Agenten über eine gesamte Flotte hinweg betreiben: alle Durchläufe aus allen Harnesses an einem Ort, ein Ausführungsgraph mit parallelen Sub-Agenten auf eigenen Spuren, p50/p95/p99-Latenz für Modelle, Tools und Hooks, modellbezogene Kosten- und Kontextfensterverfolgung, Fehlerverfolgung, SQL über eigene Traces mit teilbaren Dashboards, Evaluierungen bewertet durch deinen eigenen Dienst, geplante Audits, die wiederkehrende Fehler in evidenzgestützte Befunde umwandeln, sowie Benachrichtigungen über Slack, E-Mail oder einen signierten Webhook. Self-Hosting im eigenen Cluster ist im Enterprise-Plan verfügbar.
+**Failproof AI Observability** ist die gehostete Seite desselben Datenmodells, für Teams, die Agents in einer ganzen Flotte betreiben: jeder Lauf aus jeder Harness an einem Ort, ein Ausführungsgraph mit parallelen Sub-Agents auf eigenen Spuren, p50/p95/p99-Latenz für Modelle, Tools und Hooks, modellbezogenes Kosten- und Kontextfenster-Tracking, Fehlerverfolgung, SQL über Ihre eigenen Traces mit teilbaren Dashboards, Evaluierungen bewertet durch Ihren eigenen Dienst, geplante Audits, die wiederkehrende Fehler in evidenzbasierte Befunde umwandeln, sowie Benachrichtigungen an Slack, E-Mail oder einen signierten Webhook. Self-Hosting im eigenen Cluster ist im Enterprise-Plan verfügbar.
-→ [Sessions](https://docs.befailproof.ai/sessions/overview) ·
+→ [Sitzungen](https://docs.befailproof.ai/sessions/overview) ·
[Audits](https://docs.befailproof.ai/audits/overview) ·
[Demo buchen](https://befailproof.ai/get-a-demo)
@@ -214,43 +214,43 @@ Starte `failproofai` ohne Argumente, und es stellt ein Dashboard unter `localhos
| Einstieg | |
|---|---|
-| [Schnellstart](https://docs.befailproof.ai/start/quickstart) | Installieren, einen Harness verbinden, den ersten Durchlauf ansehen |
+| [Schnellstart](https://docs.befailproof.ai/start/quickstart) | Installieren, eine Harness verbinden, den ersten Lauf ansehen |
| [Konzepte](https://docs.befailproof.ai/start/concepts) | Wie das Hook-System funktioniert |
-| [Unterstützte Harnesses](https://docs.befailproof.ai/reference/harnesses) | Alle 12 und was jeder davon durchsetzen kann |
+| [Unterstützte Harnesses](https://docs.befailproof.ai/reference/harnesses) | Alle 12 und was jede davon durchsetzen kann |
| Beobachten | |
|---|---|
-| [Sessions](https://docs.befailproof.ai/sessions/overview) | Einen Durchlauf verfolgen: Modelle, Tools, Fehler, Latenz |
-| [Einen Trace lesen](https://docs.befailproof.ai/sessions/read-a-trace) | Was der Ausführungsgraph aussagt |
-| [Audits](https://docs.befailproof.ai/audits/overview) | Fehlermuster über viele Sessions hinweg erkennen |
+| [Sitzungen](https://docs.befailproof.ai/sessions/overview) | Einem Lauf folgen: Modelle, Tools, Fehler, Latenz |
+| [Eine Ablaufverfolgung lesen](https://docs.befailproof.ai/sessions/read-a-trace) | Was der Ausführungsgraph Ihnen mitteilt |
+| [Audits](https://docs.befailproof.ai/audits/overview) | Fehlermuster über viele Sitzungen hinweg finden |
| [Lokales Dashboard](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, kein Konto erforderlich |
| Durchsetzen | |
|---|---|
-| [Eingebaute Richtlinien](https://docs.befailproof.ai/policies/builtin) | Alle 40 Richtlinien mit Parametern |
-| [Eigene Richtlinien](https://docs.befailproof.ai/policies/custom) | Eigene schreiben |
+| [Eingebaute Richtlinien](https://docs.befailproof.ai/policies/builtin) | Alle 39 Richtlinien mit Parametern |
+| [Eigene Richtlinien](https://docs.befailproof.ai/policies/custom) | Schreiben Sie Ihre eigenen |
| [Konfiguration](https://docs.befailproof.ai/policies/local-configuration) | Konfigurations-Scopes und Zusammenführungsregeln |
-| Eigenen Agenten instrumentieren | |
+| Eigenen Agent instrumentieren | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Durchläufe von einem Agenten ohne Harness melden |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Läufe von einem Agent ohne Harness melden |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` Referenz |
---
## Lizenz
-MIT mit [Commons Clause](https://commonsclause.com/) – kostenlos für den internen und persönlichen Gebrauch; der kommerzielle Weiterverkauf von failproofai selbst erfordert eine separate Vereinbarung. Den vollständigen Text findest du unter [LICENSE](../../LICENSE).
+MIT mit [Commons Clause](https://commonsclause.com/) — kostenlos für den internen und privaten Einsatz; der kommerzielle Weiterverkauf von failproofai selbst erfordert eine gesonderte Vereinbarung. Den vollständigen Text finden Sie unter [LICENSE](../../LICENSE).
---
## Mitwirken
-Siehe [CONTRIBUTING.md](../../CONTRIBUTING.md). Neue Richtlinien, Grenzfälle und Übersetzungen sind herzlich willkommen.
+Siehe [CONTRIBUTING.md](../../CONTRIBUTING.md). Neue Richtlinien, Randfälle und Übersetzungen sind herzlich willkommen.
-> **Vor dem Start bauen.** Führe zuerst `bun install && bun run build` aus. Dieses Repository führt failproofais eigene Hooks auf sich selbst aus, und diese lösen den `failproofai`-Import gegen das kompilierte `dist/`-Bundle auf – ohne einen Build erhältst du `Cannot find package 'failproofai'`-Hook-Fehler. Nach Änderungen an `src/` neu bauen. Siehe
+> **Vor dem Start bauen.** Führen Sie zuerst `bun install && bun run build` aus. Dieses Repository verwendet failproofai's eigene Hooks auf sich selbst, und diese lösen den `failproofai`-Import gegen das kompilierte `dist/`-Bundle auf — ohne einen Build erhalten Sie `Cannot find package 'failproofai'`-Hook-Fehler. Nach Änderungen in `src/` neu bauen. Siehe
> [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-Mit ❤️ gebaut von [befailproof.ai](https://befailproof.ai) in SF und Bengaluru.
+Gebaut mit ❤️ von [befailproof.ai](https://befailproof.ai) in SF und Bengaluru.
diff --git a/docs/i18n/README.es.md b/docs/i18n/README.es.md
index 746a8887..2e77c6ed 100644
--- a/docs/i18n/README.es.md
+++ b/docs/i18n/README.es.md
@@ -20,8 +20,8 @@
**Traducciones:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Observabilidad y control para cada entorno en el que corren tus agentes.**
-Donde sea que corran tus agentes, nosotros lo vemos — y podemos decir que no. Failproof intercepta 12 entornos de agentes — CLIs de programación como Claude Code y Codex, pasarelas de chat como Hermes, asistentes autoalojados como OpenClaw — capturando cada ejecución y bloqueando llamadas peligrosas a herramientas antes de que se ejecuten. 40 políticas integradas. Cero latencia. Se ejecuta localmente.
+**Observabilidad y control para todos los entornos en los que corren tus agentes.**
+Dondequiera que se ejecuten tus agentes, nosotros lo vemos — y podemos decir que no. Failproof engancha 12 entornos de ejecución de agentes — CLIs de programación como Claude Code y Codex, pasarelas de chat como Hermes, asistentes autoalojados como OpenClaw — capturando cada ejecución y bloqueando llamadas a herramientas peligrosas antes de que se ejecuten. 39 políticas integradas. Cero latencia. Se ejecuta localmente.
@@ -33,9 +33,9 @@ Donde sea que corran tus agentes, nosotros lo vemos — y podemos decir que no.
## Entornos compatibles
-Doce entornos en dos categorías — diez CLIs de programación, y dos pasarelas de chat y asistentes (Hermes, OpenClaw). Los mismos eventos, las mismas políticas, el mismo historial de sesiones, sin importar en cuál de ellos corra tu agente.
+Doce entornos en dos categorías — diez CLIs de programación y dos pasarelas de chat y asistentes (Hermes, OpenClaw). Los mismos eventos, las mismas políticas, el mismo historial de sesiones, independientemente del entorno en que se ejecute tu agente.
-Los agentes que no se ejecuten en ninguno de estos entornos pueden reportar a través del [SDK de Python](https://docs.befailproof.ai/reference/custom-agents), que ofrece trazas, sesiones y auditorías. Para aplicar controles en esos casos se necesita un hook en tu propio runtime — [contáctanos](mailto:support@befailproof.ai) y lo diseñamos juntos.
+Los agentes que no corran en ninguno de ellos pueden informar a través del [SDK de Python](https://docs.befailproof.ai/reference/custom-agents), que ofrece trazado, sesiones y auditorías. El control en esos entornos requiere un hook en tu propio runtime — [contáctanos](mailto:support@befailproof.ai) y lo mapearemos juntos.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,11 +135,11 @@ Los agentes que no se ejecuten en ninguno de estos entornos pueden reportar a tr
```sh
npm install -g failproofai
-failproofai policies --install # o simplemente ejecuta `failproofai` y acepta el aviso del primer inicio
+failproofai policies --install # o simplemente ejecuta `failproofai` y acepta el aviso de primera ejecución
failproofai
```
-40 políticas integradas se activan de inmediato. Panel de control en `localhost:8020`. Desactiva el aviso del primer inicio con `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 políticas integradas se activan de inmediato. Panel de control en `localhost:8020`. Desactiva el aviso de primera ejecución con `FAILPROOFAI_NO_FIRST_RUN=1`.
---
@@ -148,24 +148,24 @@ failproofai
| Política | Qué bloquea |
|---|---|
| `sanitize-api-keys` | Claves de API que se filtran al contexto del agente |
-| `block-env-files` | Lecturas de `.env` y otros archivos con secretos |
-| `warn-repeated-tool-calls` | El agente haciendo un bucle con la misma llamada |
+| `block-env-files` | Lecturas de `.env` y otros archivos de secretos |
+| `warn-repeated-tool-calls` | El agente en bucle sobre la misma llamada |
| `block-sudo` | Escalada de privilegios |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` sin condiciones |
-| `block-terraform` / `block-kubectl` | Cambios sin revisión en infraestructura en producción |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` sin restricciones |
+| `block-terraform` / `block-kubectl` | Cambios no revisados en infraestructura en producción |
| `block-rm-rf` | Eliminación recursiva de archivos |
| `block-force-push` / `block-push-master` | `git push --force`, pushes directos a `main` |
-Las primeras cinco se aplican a cualquier agente que pueda llamar a una herramienta. Las últimas tres son las favoritas de los desarrolladores — las CLIs de programación son la categoría de entorno que cubrimos con mayor profundidad.
+Las primeras cinco se aplican a cualquier agente que pueda llamar a una herramienta. Las últimas tres son las favoritas de los desarrolladores — las CLIs de programación son la categoría de entornos que cubrimos con mayor profundidad.
-→ [Las 40 políticas integradas](https://docs.befailproof.ai/policies/builtin)
+→ [Las 39 políticas integradas](https://docs.befailproof.ai/policies/builtin)
---
## Tus propias políticas
Coloca un archivo en `.failproofai/policies/` — se carga automáticamente, sin necesidad de flags.
-Confírmalo en el repositorio y todo el equipo lo recibirá en el próximo pull.
+Haz commit y todo el equipo lo tendrá en el próximo pull.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -198,51 +198,51 @@ Tres decisiones disponibles para cada política:
El control es una mitad. La otra mitad es ver qué hizo realmente el agente.
Ejecuta `failproofai` sin argumentos y sirve un panel de control en `localhost:8020`
-que lee el historial de ejecuciones ya almacenado en tu máquina — sin cuenta, sin registro, sin que nada salga del equipo. Obtienes la lista de sesiones, la secuencia de llamadas al modelo, llamadas a herramientas y decisiones del hook dentro de cada ejecución, qué fue bloqueado y qué le dijo la política al agente, y una auditoría offline (`failproofai audit`) que analiza tu historial en busca de patrones arriesgados y sugiere políticas para detenerlos.
+que lee el historial de ejecuciones ya almacenado en tu máquina — sin cuenta, sin registro, sin que nada salga del equipo. Obtienes la lista de sesiones, la secuencia de llamadas al modelo, llamadas a herramientas y decisiones de hooks dentro de cada ejecución, qué fue bloqueado y qué le indicó la política al agente, y una auditoría sin conexión (`failproofai audit`) que analiza tu historial en busca de patrones de riesgo y sugiere políticas para detenerlos.
→ [Panel local](https://docs.befailproof.ai/reference/local-dashboard) ·
-[Leer una traza](https://docs.befailproof.ai/sessions/read-a-trace) ·
+[Leer un trazado](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Auditoría local](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** es la versión alojada del mismo modelo de datos, para equipos que ejecutan agentes en una flota: cada ejecución de cada entorno en un solo lugar, un grafo de ejecución con subagentes paralelos en sus propios carriles, latencia p50/p95/p99 para modelos, herramientas y hooks, seguimiento de costos y ventana de contexto por modelo, seguimiento de errores, SQL sobre tus propias trazas con paneles compartibles, evaluaciones puntuadas por tu propio servicio, auditorías programadas que convierten fallos recurrentes en hallazgos respaldados por evidencia, y alertas enrutadas a Slack, email o un webhook firmado. El autoalojamiento en tu propio clúster está disponible en el plan Enterprise.
+**Failproof AI Observability** es la parte alojada del mismo modelo de datos, para equipos que ejecutan agentes en una flota: todas las ejecuciones de todos los entornos en un solo lugar, un grafo de ejecución con subagentes paralelos en sus propios canales, latencia p50/p95/p99 para modelos, herramientas y hooks, seguimiento de costes y ventana de contexto por modelo, seguimiento de errores, SQL sobre tus propios trazados con paneles compartibles, evaluaciones puntuadas por tu propio servicio, auditorías programadas que convierten fallos recurrentes en hallazgos respaldados por evidencias, y alertas enrutadas a Slack, correo electrónico o un webhook firmado. El autoalojamiento en tu propio clúster está disponible en el plan Enterprise.
→ [Sesiones](https://docs.befailproof.ai/sessions/overview) ·
[Auditorías](https://docs.befailproof.ai/audits/overview) ·
-[Solicitar una demo](https://befailproof.ai/get-a-demo)
+[Reservar una demo](https://befailproof.ai/get-a-demo)
---
## Documentación
-| Empezar | |
+| Comenzar | |
|---|---|
-| [Inicio rápido](https://docs.befailproof.ai/start/quickstart) | Instalar, conectar un entorno, ver la primera ejecución |
+| [Inicio rápido](https://docs.befailproof.ai/start/quickstart) | Instala, conecta un entorno, ve la primera ejecución |
| [Conceptos](https://docs.befailproof.ai/start/concepts) | Cómo funciona el sistema de hooks |
-| [Entornos compatibles](https://docs.befailproof.ai/reference/harnesses) | Los 12, y qué puede controlar cada uno |
+| [Entornos compatibles](https://docs.befailproof.ai/reference/harnesses) | Los 12 entornos y qué puede controlar cada uno |
| Observar | |
|---|---|
-| [Sesiones](https://docs.befailproof.ai/sessions/overview) | Seguir una ejecución: modelos, herramientas, errores, latencia |
-| [Leer una traza](https://docs.befailproof.ai/sessions/read-a-trace) | Qué te está diciendo el grafo de ejecución |
-| [Auditorías](https://docs.befailproof.ai/audits/overview) | Encontrar patrones de fallo en muchas sesiones |
+| [Sesiones](https://docs.befailproof.ai/sessions/overview) | Sigue una ejecución: modelos, herramientas, errores, latencia |
+| [Leer un trazado](https://docs.befailproof.ai/sessions/read-a-trace) | Qué te indica el grafo de ejecución |
+| [Auditorías](https://docs.befailproof.ai/audits/overview) | Encuentra patrones de fallo en múltiples sesiones |
| [Panel local](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, sin cuenta necesaria |
| Controlar | |
|---|---|
-| [Políticas integradas](https://docs.befailproof.ai/policies/builtin) | Las 40 políticas con sus parámetros |
-| [Políticas personalizadas](https://docs.befailproof.ai/policies/custom) | Escribe las tuyas |
-| [Configuración](https://docs.befailproof.ai/policies/local-configuration) | Ámbitos de configuración y reglas de fusión |
+| [Políticas integradas](https://docs.befailproof.ai/policies/builtin) | Las 39 políticas con sus parámetros |
+| [Políticas personalizadas](https://docs.befailproof.ai/policies/custom) | Escribe las tuyas propias |
+| [Configuración](https://docs.befailproof.ai/policies/local-configuration) | Ámbitos de configuración y reglas de combinación |
| Instrumentar tu propio agente | |
|---|---|
-| [SDK de Python](https://docs.befailproof.ai/reference/custom-agents) | Reportar ejecuciones desde un agente sin entorno propio |
+| [SDK de Python](https://docs.befailproof.ai/reference/custom-agents) | Reporta ejecuciones desde un agente sin entorno |
| [SDK de políticas](https://docs.befailproof.ai/reference/policy-sdk) | Referencia de `allow` / `deny` / `instruct` |
---
## Licencia
-MIT con [Commons Clause](https://commonsclause.com/) — gratuito para uso interno y personal; la reventa comercial de failproofai en sí misma requiere un acuerdo separado. Consulta [LICENSE](../../LICENSE) para el texto completo.
+MIT con [Commons Clause](https://commonsclause.com/) — libre para uso interno y personal; la reventa comercial de failproofai en sí requiere un acuerdo independiente. Consulta [LICENSE](../../LICENSE) para el texto completo.
---
@@ -250,8 +250,9 @@ MIT con [Commons Clause](https://commonsclause.com/) — gratuito para uso inter
Consulta [CONTRIBUTING.md](../../CONTRIBUTING.md). Se aceptan con gusto nuevas políticas, casos límite y traducciones.
-> **Compila antes de empezar.** Ejecuta primero `bun install && bun run build`. Este repositorio ejecuta sus propios hooks de failproofai sobre sí mismo, y resuelven la importación de `failproofai` contra el bundle compilado en `dist/` — sin una compilación previa obtendrás errores de hook `Cannot find package 'failproofai'`. Recompila tras modificar `src/`. Consulta [Compila antes de que funcionen los hooks de desarrollo del repositorio](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **Compila antes de empezar.** Ejecuta primero `bun install && bun run build`. Este repositorio ejecuta los propios hooks de failproofai sobre sí mismo, y resuelven la importación de `failproofai` contra el bundle compilado en `dist/` — sin una compilación previa obtendrás errores de hook `Cannot find package 'failproofai'`. Vuelve a compilar tras modificar `src/`. Consulta
+> [Compila antes de que funcionen los hooks de desarrollo del repositorio](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-Construido con ❤️ por [befailproof.ai](https://befailproof.ai) en SF y Bengaluru.
+Hecho con ❤️ por [befailproof.ai](https://befailproof.ai) en SF y Bengaluru.
diff --git a/docs/i18n/README.fr.md b/docs/i18n/README.fr.md
index 5e1aa467..cc963faa 100644
--- a/docs/i18n/README.fr.md
+++ b/docs/i18n/README.fr.md
@@ -21,7 +21,7 @@
**Traductions :** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
**Observabilité et contrôle pour chaque environnement d'exécution de vos agents.**
-Où que vos agents s'exécutent, nous le voyons — et nous pouvons dire non. Failproof s'intègre à 12 environnements d'exécution d'agents — des CLI de développement comme Claude Code et Codex, des passerelles de chat comme Hermes, des assistants auto-hébergés comme OpenClaw — en capturant chaque exécution et en bloquant les appels d'outils dangereux avant qu'ils ne s'exécutent. 40 politiques intégrées. Zéro latence. Fonctionne en local.
+Où que vos agents s'exécutent, nous le voyons — et nous pouvons dire non. Failproof s'intègre à 12 environnements d'agents — des CLI de codage comme Claude Code et Codex, des passerelles de chat comme Hermes, des assistants auto-hébergés comme OpenClaw — capturant chaque exécution et bloquant les appels d'outils dangereux avant qu'ils ne s'exécutent. 39 politiques intégrées. Zéro latence. Fonctionne en local.
@@ -31,11 +31,11 @@ Où que vos agents s'exécutent, nous le voyons — et nous pouvons dire non. Fa
---
-## Environnements d'exécution pris en charge
+## Environnements pris en charge
-Douze environnements d'exécution en deux catégories — dix CLI de développement, et deux passerelles de chat et d'assistant (Hermes, OpenClaw). Mêmes événements, mêmes politiques, même historique de session, quel que soit l'environnement dans lequel votre agent s'exécute.
+Douze environnements en deux catégories — dix CLI de codage, et deux passerelles de chat et d'assistant (Hermes, OpenClaw). Mêmes événements, mêmes politiques, même historique de session, quel que soit l'environnement dans lequel votre agent s'exécute.
-Les agents qui ne s'exécutent dans aucun d'eux envoient leurs données via le [SDK Python](https://docs.befailproof.ai/reference/custom-agents), qui vous offre le traçage, la gestion des sessions et les audits. L'application des politiques dans ce cas nécessite un hook dans votre propre runtime — [contactez-nous](mailto:support@befailproof.ai) et nous l'adapterons.
+Les agents qui ne s'exécutent dans aucun d'entre eux remontent leurs données via le [SDK Python](https://docs.befailproof.ai/reference/custom-agents), qui vous offre le traçage, les sessions et les audits. L'application des politiques y nécessite un hook dans votre propre runtime — [contactez-nous](mailto:support@befailproof.ai) et nous le configurerons ensemble.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,11 +135,11 @@ Les agents qui ne s'exécutent dans aucun d'eux envoient leurs données via le [
```sh
npm install -g failproofai
-failproofai policies --install # ou lancez simplement `failproofai` et acceptez l'invite au premier démarrage
+failproofai policies --install # or just run `failproofai` and accept the first-run prompt
failproofai
```
-40 politiques intégrées s'activent immédiatement. Tableau de bord disponible sur `localhost:8020`. Désactivez l'invite au premier démarrage avec `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 politiques intégrées s'activent immédiatement. Tableau de bord sur `localhost:8020`. Désactivez l'invite de premier démarrage avec `FAILPROOFAI_NO_FIRST_RUN=1`.
---
@@ -151,21 +151,20 @@ failproofai
| `block-env-files` | La lecture des fichiers `.env` et autres fichiers secrets |
| `warn-repeated-tool-calls` | L'agent qui boucle sur le même appel |
| `block-sudo` | L'élévation de privilèges |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` sans condition |
-| `block-terraform` / `block-kubectl` | Les modifications non examinées sur l'infrastructure en production |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` non borné |
+| `block-terraform` / `block-kubectl` | Les modifications non révisées de l'infrastructure en production |
| `block-rm-rf` | La suppression récursive de fichiers |
| `block-force-push` / `block-push-master` | `git push --force`, les pushs directs vers `main` |
-Les cinq premières s'appliquent à tout agent capable d'appeler un outil. Les trois dernières sont les préférées des développeurs — les CLI de développement sont la catégorie d'environnements que nous couvrons le plus en profondeur.
+Les cinq premières s'appliquent à tout agent capable d'appeler un outil. Les trois dernières sont les préférées des développeurs — les CLI de codage sont la catégorie d'environnements que nous couvrons le plus en profondeur.
-→ [Les 40 politiques intégrées](https://docs.befailproof.ai/policies/builtin)
+→ [Les 39 politiques intégrées](https://docs.befailproof.ai/policies/builtin)
---
## Vos propres politiques
-Déposez un fichier dans `.failproofai/policies/` — il se charge automatiquement, sans aucun flag.
-Commitez-le et toute l'équipe en bénéficie dès le prochain pull.
+Déposez un fichier dans `.failproofai/policies/` — il se charge automatiquement, sans aucun flag nécessaire. Committez-le et toute l'équipe l'obtient au prochain pull.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -185,9 +184,9 @@ Trois décisions disponibles pour chaque politique :
| Décision | Effet |
|---|---|
-| `allow()` | Autoriser l'opération |
-| `deny(message)` | La bloquer — le message est renvoyé à l'agent |
-| `instruct(message)` | La laisser passer, mais ajouter du contexte à la prochaine invite de l'agent |
+| `allow()` | Autorise l'opération |
+| `deny(message)` | La bloque — le message est renvoyé à l'agent |
+| `instruct(message)` | La laisse passer, mais ajoute du contexte au prochain prompt de l'agent |
→ [Guide des politiques personnalisées](https://docs.befailproof.ai/policies/custom)
@@ -195,15 +194,15 @@ Trois décisions disponibles pour chaque politique :
## Observabilité
-L'application des politiques n'est qu'une moitié. L'autre moitié consiste à voir ce que l'agent a réellement fait.
+L'application des politiques n'est qu'une moitié. L'autre moitié, c'est voir ce que l'agent a réellement fait.
-Lancez `failproofai` sans argument et il sert un tableau de bord sur `localhost:8020` en lisant l'historique d'exécution déjà présent sur votre machine — sans compte, sans inscription, sans rien quitter votre poste. Vous obtenez la liste des sessions, la séquence des appels de modèles, les appels d'outils et les décisions de hook à l'intérieur de chaque exécution, ce qui a été bloqué et ce que la politique a dit à l'agent, ainsi qu'un audit hors ligne (`failproofai audit`) qui analyse votre historique à la recherche de patterns risqués et suggère des politiques pour les arrêter.
+Lancez `failproofai` sans argument et il sert un tableau de bord sur `localhost:8020` en lisant l'historique d'exécution déjà présent sur votre machine — sans compte, sans inscription, sans rien qui quitte la machine. Vous obtenez la liste des sessions, la séquence des appels de modèles, les appels d'outils et les décisions des hooks à l'intérieur de chaque exécution, ce qui a été bloqué et ce que la politique a indiqué à l'agent, ainsi qu'un audit hors ligne (`failproofai audit`) qui analyse votre historique à la recherche de patterns risqués et suggère des politiques pour y remédier.
→ [Tableau de bord local](https://docs.befailproof.ai/reference/local-dashboard) ·
[Lire une trace](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Audit local](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** est la version hébergée du même modèle de données, pour les équipes qui exécutent des agents sur une flotte : chaque exécution de chaque environnement en un seul endroit, un graphe d'exécution avec des sous-agents parallèles sur leurs propres voies, la latence p50/p95/p99 pour les modèles, les outils et les hooks, le suivi du coût et de la fenêtre de contexte par modèle, le suivi des erreurs, du SQL sur vos propres traces avec des tableaux de bord partageables, des évaluations notées par votre propre service, des audits planifiés qui transforment les échecs récurrents en conclusions étayées par des preuves, et des alertes routées vers Slack, par e-mail ou via un webhook signé. L'auto-hébergement dans votre propre cluster est disponible avec le plan Enterprise.
+**Failproof AI Observability** est le volet hébergé du même modèle de données, pour les équipes qui font tourner des agents sur une flotte de machines : chaque exécution de chaque environnement au même endroit, un graphe d'exécution avec des sous-agents parallèles sur leurs propres lignes, la latence p50/p95/p99 pour les modèles, les outils et les hooks, le suivi des coûts et de la fenêtre de contexte par modèle, le suivi des erreurs, du SQL sur vos propres traces avec des tableaux de bord partageables, des évaluations scorées par votre propre service, des audits planifiés qui transforment les échecs récurrents en constats étayés par des preuves, et des alertes acheminées vers Slack, par e-mail ou via un webhook signé. L'auto-hébergement dans votre propre cluster est disponible sur le plan Entreprise.
→ [Sessions](https://docs.befailproof.ai/sessions/overview) ·
[Audits](https://docs.befailproof.ai/audits/overview) ·
@@ -213,28 +212,28 @@ Lancez `failproofai` sans argument et il sert un tableau de bord sur `localhost:
## Documentation
-| Démarrage | |
+| Démarrer | |
|---|---|
| [Démarrage rapide](https://docs.befailproof.ai/start/quickstart) | Installer, connecter un environnement, voir la première exécution |
-| [Concepts](https://docs.befailproof.ai/start/concepts) | Comment fonctionne le système de hooks |
-| [Environnements pris en charge](https://docs.befailproof.ai/reference/harnesses) | Les 12 environnements et ce que chacun peut appliquer |
+| [Concepts](https://docs.befailproof.ai/start/concepts) | Comment le système de hooks fonctionne |
+| [Environnements pris en charge](https://docs.befailproof.ai/reference/harnesses) | Les 12 environnements, et ce que chacun peut appliquer |
| Observer | |
|---|---|
| [Sessions](https://docs.befailproof.ai/sessions/overview) | Suivre une exécution : modèles, outils, erreurs, latence |
| [Lire une trace](https://docs.befailproof.ai/sessions/read-a-trace) | Ce que le graphe d'exécution vous indique |
-| [Audits](https://docs.befailproof.ai/audits/overview) | Identifier les patterns d'échec sur de nombreuses sessions |
-| [Tableau de bord local](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, sans compte nécessaire |
+| [Audits](https://docs.befailproof.ai/audits/overview) | Identifier des patterns d'échec sur de nombreuses sessions |
+| [Tableau de bord local](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, aucun compte requis |
-| Appliquer | |
+| Appliquer des politiques | |
|---|---|
-| [Politiques intégrées](https://docs.befailproof.ai/policies/builtin) | Les 40 politiques avec leurs paramètres |
+| [Politiques intégrées](https://docs.befailproof.ai/policies/builtin) | Les 39 politiques avec leurs paramètres |
| [Politiques personnalisées](https://docs.befailproof.ai/policies/custom) | Écrire les vôtres |
| [Configuration](https://docs.befailproof.ai/policies/local-configuration) | Portées de configuration et règles de fusion |
| Instrumenter votre propre agent | |
|---|---|
-| [SDK Python](https://docs.befailproof.ai/reference/custom-agents) | Rapporter les exécutions d'un agent sans environnement d'exécution |
+| [SDK Python](https://docs.befailproof.ai/reference/custom-agents) | Remonter les exécutions depuis un agent sans environnement |
| [SDK de politiques](https://docs.befailproof.ai/reference/policy-sdk) | Référence `allow` / `deny` / `instruct` |
---
@@ -249,9 +248,8 @@ MIT avec [Commons Clause](https://commonsclause.com/) — gratuit pour un usage
Voir [CONTRIBUTING.md](../../CONTRIBUTING.md). Nouvelles politiques, cas limites et traductions sont les bienvenus.
-> **Compilez avant de commencer.** Exécutez d'abord `bun install && bun run build`. Ce dépôt fait tourner les propres hooks de failproofai sur lui-même, et ils résolvent l'import `failproofai` par rapport au bundle `dist/` compilé — sans compilation, vous obtiendrez des erreurs de hook `Cannot find package 'failproofai'`. Recompilez après avoir modifié `src/`. Voir
-> [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **Compilez avant de commencer.** Exécutez `bun install && bun run build` en premier. Ce dépôt fait tourner les propres hooks de failproofai sur lui-même, et ils résolvent l'import `failproofai` par rapport au bundle compilé `dist/` — sans compilation, vous obtiendrez des erreurs de hook `Cannot find package 'failproofai'`. Recompilez après avoir modifié `src/`. Voir [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-Fait avec ❤️ par [befailproof.ai](https://befailproof.ai) à San Francisco et Bengaluru.
+Construit avec ❤️ par [befailproof.ai](https://befailproof.ai) à SF et Bengaluru.
diff --git a/docs/i18n/README.he.md b/docs/i18n/README.he.md
index d19bb49c..7f0ca936 100644
--- a/docs/i18n/README.he.md
+++ b/docs/i18n/README.he.md
@@ -22,8 +22,7 @@
**תרגומים:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**ניטור והטלת אכיפה לכל קוסם שהסוכנים שלך רצים בו.**
-איפה שהסוכנים שלך רצים, אנחנו רואים את זה — ואנחנו יכולים להגיד לא. Failproof מתחבר ל-12 קוסמים של סוכנים — ממשקי שורת פקודה לקידוד כמו Claude Code ו-Codex, שערי צ'אט כמו Hermes, עוזרים ממוחזקים עצמאיים כמו OpenClaw — תופסים כל הרצה וחוסמים קריאות כלים מסוכנות לפני שהן מתבצעות. 40 מדיניות מובנות. זמן אפס. רץ בעמדה מקומית.
+**תצפיתיות ואכיפה לכל מנוע שבו רצים הסוכנים שלך.** בכל מקום בו רצים הסוכנים שלך, אנו רואים זאת — ואנו יכולים לסרב. Failproof מתחבר ל-12 מנועי סוכנים — CLIs קידוד כמו Claude Code ו-Codex, שערי צ'אט כמו Hermes, עוזרים מאורחנים עצמיים כמו OpenClaw — תופסים כל הפעלה וחוסמים קריאות כלים מסוכנות לפני ביצוע. 39 מדיניות מובנות. זמן חיתוך אפס. רץ ברמה מקומית.
@@ -33,12 +32,11 @@
---
-## קוסמים נתמכים
+## מנועים נתמכים
-שנים עשר קוסמים בשתי מחלקות — עשרה ממשקי שורת פקודה לקידוד, ושני שערי צ'אט ועוזרים (Hermes, OpenClaw). אותם האירועים, אותן המדיניויות, אותו ההיסטוריה של הפגישה, בכל אחד מהקוסמים שהסוכן שלך רץ בו.
+שנים עשר מנועים בשתי מחלקות — עשרה CLIs קידוד, ושני שערי צ'אט ועוזרים (Hermes, OpenClaw). אירועים זהים, מדיניות זהה, היסטוריית סדרה זהה, בכל מנוע בו רץ הסוכן שלך.
-סוכנים שרצים בשום אחד מהם מדווחים דרך [Python SDK](https://docs.befailproof.ai/reference/custom-agents),
-שנותן לך עקבוב, פגישות וביקורות. אכיפה שם דורשת קרס בזמן ריצה שלך — [שדברו אלינו](mailto:support@befailproof.ai) והנו נמפה את זה.
+סוכנים הרצים בשום אחד מהם מדווחים דרך [Python SDK](https://docs.befailproof.ai/reference/custom-agents), שמעניק לך עקיבה, סדרות וביקורות. אכיפה שם דורשת hook בקרנטיים שלך — [דברו איתנו](mailto:support@befailproof.ai) ותחול אותה.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -138,11 +136,11 @@
```sh
npm install -g failproofai
-failproofai policies --install
+failproofai policies --install # או פשוט הרץ `failproofai` וקבל את ההנחיה של ההפעלה הראשונה
failproofai
```
-40 מדיניויות מובנות מופעלות מיידית. לוח בקרה ב-`localhost:8020`. השבת את הנושא בהרצה ראשונה עם `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 מדיניות מובנות מופעלות מיד. לוח בקרה ב-`localhost:8020`. השבת את הנחיית ההפעלה הראשונה עם `FAILPROOFAI_NO_FIRST_RUN=1`.
---
@@ -150,25 +148,24 @@ failproofai
| מדיניות | מה היא חוסמת |
|---|---|
-| `sanitize-api-keys` | מפתחות API שדולפים להקשר של הסוכן |
-| `block-env-files` | קריאות של קבצי `.env` וקבצי סודות אחרים |
-| `warn-repeated-tool-calls` | הסוכן עוקף את אותה הקריאה |
+| `sanitize-api-keys` | מפתחות API דולפים להקשר של הסוכן |
+| `block-env-files` | קריאות של `.env` וקבצי סודות אחרים |
+| `warn-repeated-tool-calls` | הסוכן נתקע בקרא אותה |
| `block-sudo` | הסלמת הרשאות |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` ללא גבול |
-| `block-terraform` / `block-kubectl` | שינויים ללא ביקורת לתשתית חיה |
-| `block-rm-rf` | מחיקה רקורסיבית של קבצים |
-| `block-force-push` / `block-push-master` | `git push --force`, דחיפה ישירה ל-`main` |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, unbounded `DELETE` |
+| `block-terraform` / `block-kubectl` | שינויים שלא נבדקו לתשתית חיה |
+| `block-rm-rf` | מחיקת קבצים רקורסיבית |
+| `block-force-push` / `block-push-master` | `git push --force`, push ישיר ל-`main` |
-חמשת הראשונים חלים על כל סוכן שיכול לקרוא לכלי. השלוש אחרונות הן אהובות על המפתחים — ממשקי שורת פקודה לקידוד הם מחלקת הקוסם שאנחנו מכסים את העומק ביותר.
+חמשת הראשונים חלים על כל סוכן שיכול להתקשר לכלי. שלוש האחרונות הן המועדפות של מפתחים — CLIs קידוד הם מחלקת ה-harness בה אנו מכסים בעומק הרבה ביותר.
-→ [כל 40 המדיניויות המובנות](https://docs.befailproof.ai/policies/builtin)
+→ [כל 39 המדיניות המובנות](https://docs.befailproof.ai/policies/builtin)
---
-## המדיניויות שלך
+## המדיניות שלך
-שחרר קובץ ל-`.failproofai/policies/` — הוא טוען באופן אוטומטי, אין צורך בדגלים.
-העלו את זה והצוות כולו מקבל את זה בשלימת הבא.
+הנח קובץ ל-`.failproofai/policies/` — הוא נטען באופן אוטומטי, ללא דגלים נדרשים. בצע commit אותו והצוות כולו יקבל אותו ב-pull הבא.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -186,43 +183,31 @@ customPolicies.add({
שלוש החלטות זמינות לכל מדיניות:
-| החלטה | השפעה |
+| החלטה | אפקט |
|---|---|
| `allow()` | אפשר את הפעולה |
-| `deny(message)` | חסום את זה — ההודעה חוזרת לסוכן |
-| `instruct(message)` | תן את זה דרך, אבל הוסף הקשר להנמקה הבאה של הסוכן |
+| `deny(message)` | חסום זאת — ההודעה חוזרת לסוכן |
+| `instruct(message)` | תן לזה עבור, אך הוסף הקשר לנושא הבא של הסוכן |
-→ [מדריך מדיניויות מותאמות](https://docs.befailproof.ai/policies/custom)
+→ [מדריך המדיניות המותאמת](https://docs.befailproof.ai/policies/custom)
---
-## ניטור
+## תצפיתיות
-אכיפה היא חצי אחד. החצי השני הוא לראות מה הסוכן בעצם עשה.
+אכיפה היא חצי אחד. החצי השני הוא ראיית מה הסוכן בעצם עשה.
-הרץ `failproofai` ללא ארגומנטים והוא משרת לוח בקרה ב-`localhost:8020`
-קורא את היסטוריית הריצה כבר במכונה שלך — אין חשבון, אין הרשמה, שום דבר
-עוזב את הקופסה. אתה מקבל את רשימת הפגישות, את הרצף של קריאות דגם, קריאות כלים
-והחלטות קרס בתוך כל הרצה, מה חוסם ומה המדיניות אמרה לסוכן,
-וביקורת בעבודה קשה (`failproofai audit`) שסורקת את ההיסטוריה שלך לדפוסים מסוכנים
-ומציעה מדיניויות לעצירתם.
+הרץ את `failproofai` ללא ארגומנטים ויש לו לשרת לוח בקרה ב-`localhost:8020` קורא את היסטוריית הריצה שכבר קיימת במכונה שלך — אין חשבון, אין הרשמה, כלום לא עוזב את הקופסה. אתה מקבל את רשימת הסדרה, את הרצף של קריאות דגם, קריאות כלים וקבלת החלטות hook בתוך כל ריצה, מה שנחסם ומה המדיניות אמרה לסוכן, וביקורת לא מקוונת (`failproofai audit`) שסורקת את היסטוריה שלך לדפוסים מסוכנים וממליצה על מדיניות לעצור אותם.
→ [לוח בקרה מקומי](https://docs.befailproof.ai/reference/local-dashboard) ·
-[קראו עקבוב](https://docs.befailproof.ai/sessions/read-a-trace) ·
+[קרא עקבות](https://docs.befailproof.ai/sessions/read-a-trace) ·
[ביקורת מקומית](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** היא הצד המארח של אותו מודל נתונים, לצוותים
-המריצים סוכנים על פני צי: כל ריצה מכל קוסם במקום אחד, גרף ביצוע עם תת-סוכנים מקבילים
-בנתיבים שלהם, זמן פעולה p50/p95/p99 לדגמים, כלים וקרסים,
-עלות לכל דגם ועקבוב חלון הקשר, עקבוב שגיאות, SQL על העקבות שלך
-עם לוחות בקרה ניתנים לשיתוף, הערכות המדורגות על ידי השירות שלך,
-ביקורות מתוזמנות המהפכות כשלים חוזרים לממצאים המבוססים על עדויות,
-והתנעות המנותבות ל-Slack, דוא"ל או webhook חתום. אירוח עצמי בקבוצה שלך
-זמין בתוכנית Enterprise.
+**Failproof AI Observability** היא הצד המעונן של אותו מודל נתונים, לצוותים שמפעילים סוכנים על פני צי: כל ריצה מכל harness במקום אחד, גרף הביצוע עם תת-סוכנים מקבילים בנתיביהם שלהם, p50/p95/p99 חביון לדגמים, כלים והוקים, עלות לפי דגם ועקיבת חלון הקשר, עקיבת שגיאות, SQL על עקבותיך שלך עם לוחות בקרה שניתן לשתף, הערכות שדורגו על ידי השירות שלך, ביקורות מתוזמנות שהופכות כשלים חוזרים להוכחות, והתריעות שמקובלות ל-Slack, דוא"ל או webhook חתום. Self-hosting בקלאסטר שלך זמין בתוכנית Enterprise.
-→ [פגישות](https://docs.befailproof.ai/sessions/overview) ·
+→ [סדרות](https://docs.befailproof.ai/sessions/overview) ·
[ביקורות](https://docs.befailproof.ai/audits/overview) ·
-[הזמנת הדגמה](https://befailproof.ai/get-a-demo)
+[הזמן הדגמה](https://befailproof.ai/get-a-demo)
---
@@ -230,49 +215,45 @@ customPolicies.add({
| התחל | |
|---|---|
-| [התחלה מהירה](https://docs.befailproof.ai/start/quickstart) | התקנה, חיבור קוסם, ראה את ההרצה הראשונה |
-| [קונספטים](https://docs.befailproof.ai/start/concepts) | איך מערכת הקרס עובדת |
-| [קוסמים נתמכים](https://docs.befailproof.ai/reference/harnesses) | כל 12, ומה כל אחד יכול להטיל |
+| [התחלה מהירה](https://docs.befailproof.ai/start/quickstart) | התקנה, חיבור harness, ראה את הריצה הראשונה |
+| [קונספטים](https://docs.befailproof.ai/start/concepts) | כיצד מערכת ה-hook עובדת |
+| [Harnesses נתמכים](https://docs.befailproof.ai/reference/harnesses) | כל 12, ומה כל אחד יכול לאכוף |
-| לראות | |
+| תצפיתיות | |
|---|---|
-| [פגישות](https://docs.befailproof.ai/sessions/overview) | עקוב אחר הרצה: דגמים, כלים, שגיאות, זמן פעולה |
-| [קראו עקבוב](https://docs.befailproof.ai/sessions/read-a-trace) | מה גרף הביצוע אומר לך |
-| [ביקורות](https://docs.befailproof.ai/audits/overview) | מצא דפוסי כשל על פני הרבה פגישות |
+| [סדרות](https://docs.befailproof.ai/sessions/overview) | עקוב אחרי ריצה: דגמים, כלים, שגיאות, זמן חביון |
+| [קרא עקבות](https://docs.befailproof.ai/sessions/read-a-trace) | מה גרף ההביצוע אומר לך |
+| [ביקורות](https://docs.befailproof.ai/audits/overview) | מצא דפוסי כשל על פני הרבה סדרות |
| [לוח בקרה מקומי](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, אין צורך בחשבון |
-| הטל | |
+| אכיפה | |
|---|---|
-| [מדיניויות מובנות](https://docs.befailproof.ai/policies/builtin) | כל 40 המדיניויות עם פרמטרים |
-| [מדיניויות מותאמות](https://docs.befailproof.ai/policies/custom) | כתוב שלך |
-| [תצורה](https://docs.befailproof.ai/policies/local-configuration) | טווחי תצורה וכללי מיזוג |
+| [מדיניות מובנות](https://docs.befailproof.ai/policies/builtin) | כל 39 המדיניות עם פרמטרים |
+| [מדיניות מותאמת](https://docs.befailproof.ai/policies/custom) | כתוב שלך שלך |
+| [תצורה](https://docs.befailproof.ai/policies/local-configuration) | היקפי תצורה וכללי מיזוג |
-| הנתק את הסוכן שלך | |
+| כלים את הסוכן שלך | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | דוח הריצות מסוכן ללא קוסם |
-| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | התייחסות `allow` / `deny` / `instruct` |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | דווח על הרצות מסוכן ללא harness |
+| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` reference |
---
## רישיון
-MIT עם [Commons Clause](https://commonsclause.com/) — חופשי לשימוש פנימי והשימוש אישי; מכירה מסחרית של failproofai עצמו דורשת הסכם נפרד. ראה [LICENSE](../../LICENSE) לטקסט המלא.
+MIT עם [Commons Clause](https://commonsclause.com/) — חינם לשימוש פנימי ואישי; מכירה מסחרית של failproofai עצמו דורשת הסכם נפרד. ראה [LICENSE](../../LICENSE) לטקסט המלא.
---
## תרומה
-ראה [CONTRIBUTING.md](../../CONTRIBUTING.md). מדיניויות חדשות, מקרי קצה, ותרגומים כולם מרוחקים.
+ראה [CONTRIBUTING.md](../../CONTRIBUTING.md). מדיניות חדשות, קצוות קיצון, ותרגומים כולם ברוכים הבאים.
-> **בנה לפני שתתחיל.** הרץ `bun install && bun run build` תחילה. ריפו זה מריץ
-> את הקרסים שלו על עצמו, והם פותרים את ה-`failproofai` import מול
-> ה-`dist/` bundle המורכב — ללא בנייה תפגע בשגיאות קרס `Cannot find package 'failproofai'`.
-> בנה מחדש לאחר שינוי `src/`. ראה
-> [בנה לפני שקרסי dev בתוך הריפו יעבדו](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **בנה לפני שתתחיל.** הרץ `bun install && bun run build` תחילה. ריפו זה מריץ את ה-hooks של failproofai שלו בעצמו, והם פותרים את ה-import של `failproofai` לעומת ה-bundle של `dist/` שהורכב — ללא build אתה תפגע בשגיאות hook של `Cannot find package 'failproofai'`. בנה מחדש לאחר שינוי ב-`src/`. ראה [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-בנוי עם ❤️ על ידי [befailproof.ai](https://befailproof.ai) ב-SF ו-Bengaluru.
+בנויה עם ❤️ על ידי [befailproof.ai](https://befailproof.ai) ב-SF וב-Bengaluru.
\ No newline at end of file
diff --git a/docs/i18n/README.hi.md b/docs/i18n/README.hi.md
index c99c9126..f3202bf3 100644
--- a/docs/i18n/README.hi.md
+++ b/docs/i18n/README.hi.md
@@ -20,11 +20,8 @@
**अनुवाद:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**हर harness के लिए निरीक्षण और प्रवर्तन जहाँ आपके agents चलते हैं।**
-जहाँ भी आपके agents चलते हैं, हम देख सकते हैं — और हम मना कर सकते हैं। Failproof 12 agent
-harnesses को hook करता है — Claude Code और Codex जैसे coding CLIs, Hermes जैसे chat
-gateways, OpenClaw जैसे self-hosted assistants — हर run को capture करता है और
-खतरनाक tool calls को execute होने से पहले रोकता है। 40 built-in policies। Zero latency। Locally चलता है।
+**आपके एजेंट्स द्वारा चलाए जाने वाले हर हार्नेस के लिए अवलोकन और प्रवर्तन।**
+जहाँ भी आपके एजेंट्स चलते हैं, हम उन्हें देखते हैं — और हम ना कह सकते हैं। Failproof 12 एजेंट हार्नेस को हुक करता है — कोडिंग CLIs जैसे Claude Code और Codex, चैट गेटवे जैसे Hermes, सेल्फ-होस्टेड असिस्टेंट्स जैसे OpenClaw — हर चलाव को कैप्चर करता है और खतरनाक टूल कॉल्स को निष्पादन से पहले ब्लॉक करता है। 39 बिल्ट-इन पॉलिसीज़। शून्य लेटेंसी। स्थानीय रूप से चलता है।
@@ -34,15 +31,11 @@ gateways, OpenClaw जैसे self-hosted assistants — हर run को cap
---
-## समर्थित harnesses
+## समर्थित हार्नेस
-दो classes में बारह harnesses — दस coding CLIs, और दो chat और assistant
-gateways (Hermes, OpenClaw)। एक जैसी events, एक जैसी policies, एक जैसी session history,
-चाहे आपका agent उनमें से कोई भी हो।
+दो वर्गों में बारह हार्नेस — दस कोडिंग CLIs, और दो चैट और असिस्टेंट गेटवे (Hermes, OpenClaw)। समान इवेंट्स, समान पॉलिसीज़, समान सेशन हिस्ट्री, भले ही आपका एजेंट किसी में भी चले।
-Agents जो इनमें से किसी में भी नहीं चलते वे [Python SDK](https://docs.befailproof.ai/reference/custom-agents) के
-माध्यम से report करते हैं, जो आपको tracing, sessions और audits देता है। वहाँ प्रवर्तन के लिए आपके
-own runtime में एक hook की जरूरत है — [हमसे बात करें](mailto:support@befailproof.ai) और हम इसे map कर देंगे।
+जो एजेंट्स इनमें से किसी में भी नहीं चलते, वे [Python SDK](https://docs.befailproof.ai/reference/custom-agents) के माध्यम से रिपोर्ट करते हैं, जो आपको ट्रेसिंग, सेशन्स और ऑडिट्स देता है। वहाँ प्रवर्तन के लिए आपके स्वयं के रनटाइम में एक हुक की आवश्यकता है — [हमसे बात करें](mailto:support@befailproof.ai) और हम इसे मैप करेंगे।
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -138,42 +131,40 @@ own runtime में एक hook की जरूरत है — [हमस
-## स्थापना
+## इंस्टॉल करें
```sh
npm install -g failproofai
-failproofai policies --install # या बस `failproofai` चलाएँ और पहली बार के प्रॉम्प्ट को स्वीकार करें
+failproofai policies --install # या बस `failproofai` चलाएं और पहली बार के प्रॉम्प्ट को स्वीकार करें
failproofai
```
-40 built-in policies तुरंत सक्रिय हो जाती हैं। Dashboard `localhost:8020` पर है। पहली बार के प्रॉम्प्ट को `FAILPROOFAI_NO_FIRST_RUN=1` से अक्षम करें।
+39 बिल्ट-इन पॉलिसीज़ तुरंत सक्रिय हो जाती हैं। डैशबोर्ड `localhost:8020` पर। पहली बार के प्रॉम्प्ट को `FAILPROOFAI_NO_FIRST_RUN=1` के साथ अक्षम करें।
---
## यह क्या रोकता है
-| Policy | क्या यह ब्लॉक करता है |
+| पॉलिसी | यह क्या ब्लॉक करता है |
|---|---|
-| `sanitize-api-keys` | API keys का agent के context में leak होना |
-| `block-env-files` | `.env` और अन्य secret files का read होना |
-| `warn-repeated-tool-calls` | Agent का एक ही call पर loop करना |
-| `block-sudo` | Privilege escalation |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, unbounded `DELETE` |
-| `block-terraform` / `block-kubectl` | Live infrastructure में unreviewed changes |
-| `block-rm-rf` | Recursive file deletion |
-| `block-force-push` / `block-push-master` | `git push --force`, `main` को direct pushes |
+| `sanitize-api-keys` | एजेंट के कॉन्टेक्स्ट में एपीआई कीज़ का लीक होना |
+| `block-env-files` | `.env` और अन्य गुप्त फ़ाइलों को पढ़ना |
+| `warn-repeated-tool-calls` | एजेंट का एक ही कॉल पर लूप करना |
+| `block-sudo` | प्रिविलेज एस्केलेशन |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, अनबाउंडेड `DELETE` |
+| `block-terraform` / `block-kubectl` | लाइव इंफ्रास्ट्रक्चर में अनरिव्यूड परिवर्तन |
+| `block-rm-rf` | रिकर्सिव फ़ाइल डिलीशन |
+| `block-force-push` / `block-push-master` | `git push --force`, `main` को सीधे पुश |
-पहली पाँच किसी भी agent पर लागू होती हैं जो एक tool को call कर सकता है। अंतिम तीन
-developer पसंदीदा हैं — coding CLIs वह harness class हैं जिसे हम सबसे गहराई से cover करते हैं।
+पहली पाँच किसी भी एजेंट पर लागू होती हैं जो टूल कॉल कर सकता है। अंतिम तीन डेवलपर के पसंदीदा हैं — कोडिंग CLIs वह हार्नेस क्लास है जिसे हम सबसे गहराई से कवर करते हैं।
-→ [सभी 40 built-in policies](https://docs.befailproof.ai/policies/builtin)
+→ [सभी 39 बिल्ट-इन पॉलिसीज़](https://docs.befailproof.ai/policies/builtin)
---
-## आपकी अपनी policies
+## आपकी अपनी पॉलिसीज़
-`.failproofai/policies/` में एक फाइल डालें — यह automatically load हो जाती है, कोई flags की जरूरत नहीं।
-इसे commit करें और पूरी team को अगले pull पर यह मिल जाएगी।
+`.failproofai/policies/` में एक फ़ाइल ड्रॉप करें — यह स्वचालित रूप से लोड होती है, कोई फ्लैग की आवश्यकता नहीं है। इसे कमिट करें और पूरी टीम को अगले पुल पर यह मिलेगा।
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -189,90 +180,72 @@ customPolicies.add({
});
```
-हर policy के लिए तीन निर्णय उपलब्ध हैं:
+हर पॉलिसी के लिए तीन निर्णय उपलब्ध हैं:
| निर्णय | प्रभाव |
|---|---|
-| `allow()` | Operation को permit करें |
-| `deny(message)` | इसे ब्लॉक करें — message agent को वापस जाता है |
-| `instruct(message)` | इसे through होने दें, लेकिन agent के अगले prompt में context जोड़ें |
+| `allow()` | ऑपरेशन को अनुमति दें |
+| `deny(message)` | इसे ब्लॉक करें — संदेश एजेंट को वापस जाता है |
+| `instruct(message)` | इसे अनुमति दें, लेकिन एजेंट के अगले प्रॉम्प्ट में कॉन्टेक्स्ट जोड़ें |
-→ [Custom policies guide](https://docs.befailproof.ai/policies/custom)
+→ [कस्टम पॉलिसीज़ गाइड](https://docs.befailproof.ai/policies/custom)
---
-## निरीक्षण
+## अवलोकन
-प्रवर्तन एक आधा है। दूसरा आधा यह देखना है कि agent ने वास्तव में क्या किया।
+प्रवर्तन एक आधा है। दूसरा आधा यह देखना है कि एजेंट ने वास्तव में क्या किया।
-बिना किसी argument के `failproofai` चलाएँ और यह `localhost:8020` पर एक dashboard serve करता है
-जो आपकी machine पर पहले से मौजूद run history को read करता है — कोई account नहीं, कोई signup नहीं, कुछ भी
-बाहर नहीं जाता। आपको session list, हर run के अंदर model calls, tool calls और hook decisions का sequence,
-क्या block किया गया और policy ने agent को क्या बताया, और एक offline audit (`failproofai audit`) जो
-आपके history को risky patterns के लिए scan करता है और policies सुझाता है उन्हें रोकने के लिए।
+बिना किसी तर्क के `failproofai` चलाएं और यह `localhost:8020` पर एक डैशबोर्ड परोसता है जो आपकी मशीन पर पहले से मौजूद रन हिस्ट्री को पढ़ता है — कोई अकाउंट, कोई साइनअप, कुछ भी बॉक्स से बाहर नहीं जाता। आप सेशन लिस्ट, हर रन के अंदर मॉडल कॉल्स, टूल कॉल्स और हुक डिसिजन्स का अनुक्रम, क्या ब्लॉक किया गया और पॉलिसी ने एजेंट को क्या बताया, और एक ऑफलाइन ऑडिट (`failproofai audit`) देखते हैं जो आपकी हिस्ट्री को जोखिम भरे पैटर्न के लिए स्कैन करता है और पॉलिसीज़ सुझाता है उन्हें रोकने के लिए।
-→ [Local dashboard](https://docs.befailproof.ai/reference/local-dashboard) ·
-[एक trace पढ़ें](https://docs.befailproof.ai/sessions/read-a-trace) ·
-[Local audit](https://docs.befailproof.ai/audits/local-audit)
+→ [लोकल डैशबोर्ड](https://docs.befailproof.ai/reference/local-dashboard) · [ट्रेस पढ़ें](https://docs.befailproof.ai/sessions/read-a-trace) · [लोकल ऑडिट](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** एक team के लिए hosted side है जो एक fleet में agents चला रहे हैं:
-हर harness से हर run एक ही जगह, parallel sub-agents के अपने lanes के साथ एक execution graph,
-models, tools और hooks के लिए p50/p95/p99 latency, per-model cost और context-window tracking, error
-tracking, आपके own traces पर SQL shareable dashboards के साथ, आपकी own service द्वारा scored
-evaluations, scheduled audits जो recurring failures को evidence-backed findings में turn करते हैं,
-और alerts जो Slack, email या एक signed webhook को route करते हैं। आपके own cluster में self-hosting
-Enterprise plan पर उपलब्ध है।
+**Failproof AI अवलोकन** एक ही डेटा मॉडल का होस्टेड हिस्सा है, एजेंट्स को एक फ्लीट में चलाने वाली टीमों के लिए: हर हार्नेस से हर रन एक जगह में, समानांतर सब-एजेंट्स के साथ एक निष्पादन ग्राफ उनकी अपनी लेन में, मॉडल्स, टूल्स और हुक्स के लिए p50/p95/p99 लेटेंसी, प्रति-मॉडल लागत और कॉन्टेक्स्ट-विंडो ट्रैकिंग, एरर ट्रैकिंग, आपके स्वयं के ट्रेस्स पर SQL शेयरेबल डैशबोर्ड के साथ, आपकी स्वयं की सेवा द्वारा स्कोर किए गए इवैल्यूएशन्स, शेड्यूल किए गए ऑडिट्स जो आवर्ती विफलताओं को साक्ष्य-समर्थित निष्कर्षों में बदलते हैं, और Slack, ईमेल या एक हस्ताक्षरित वेबहुक को रूट किए गए अलर्ट। आपके अपने क्लस्टर में सेल्फ-होस्टिंग एंटरप्राइज प्लान पर उपलब्ध है।
-→ [Sessions](https://docs.befailproof.ai/sessions/overview) ·
-[Audits](https://docs.befailproof.ai/audits/overview) ·
-[एक demo बुक करें](https://befailproof.ai/get-a-demo)
+→ [सेशन्स](https://docs.befailproof.ai/sessions/overview) · [ऑडिट्स](https://docs.befailproof.ai/audits/overview) · [डेमो बुक करें](https://befailproof.ai/get-a-demo)
---
-## Documentation
+## प्रलेखन
| शुरुआत करें | |
|---|---|
-| [Quickstart](https://docs.befailproof.ai/start/quickstart) | Install करें, एक harness को connect करें, पहला run देखें |
-| [Concepts](https://docs.befailproof.ai/start/concepts) | Hook system कैसे काम करता है |
-| [समर्थित harnesses](https://docs.befailproof.ai/reference/harnesses) | सभी 12, और हर एक क्या enforce कर सकता है |
+| [क्विकस्टार्ट](https://docs.befailproof.ai/start/quickstart) | इंस्टॉल करें, एक हार्नेस कनेक्ट करें, पहला रन देखें |
+| [अवधारणाएं](https://docs.befailproof.ai/start/concepts) | हुक सिस्टम कैसे काम करता है |
+| [समर्थित हार्नेस](https://docs.befailproof.ai/reference/harnesses) | सभी 12, और हर एक क्या प्रवर्तन कर सकता है |
-| निरीक्षण करें | |
+| अवलोकन करें | |
|---|---|
-| [Sessions](https://docs.befailproof.ai/sessions/overview) | एक run को follow करें: models, tools, errors, latency |
-| [एक trace पढ़ें](https://docs.befailproof.ai/sessions/read-a-trace) | Execution graph आपको क्या बता रहा है |
-| [Audits](https://docs.befailproof.ai/audits/overview) | कई sessions में failure patterns खोजें |
-| [Local dashboard](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, कोई account की जरूरत नहीं |
+| [सेशन्स](https://docs.befailproof.ai/sessions/overview) | एक रन को फॉलो करें: मॉडल्स, टूल्स, एरर्स, लेटेंसी |
+| [ट्रेस पढ़ें](https://docs.befailproof.ai/sessions/read-a-trace) | निष्पादन ग्राफ आपको क्या बता रहा है |
+| [ऑडिट्स](https://docs.befailproof.ai/audits/overview) | कई सेशन्स में विफलता पैटर्न खोजें |
+| [लोकल डैशबोर्ड](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, कोई अकाउंट की आवश्यकता नहीं |
| प्रवर्तन करें | |
|---|---|
-| [Built-in policies](https://docs.befailproof.ai/policies/builtin) | सभी 40 policies parameters के साथ |
-| [Custom policies](https://docs.befailproof.ai/policies/custom) | अपनी खुद की policies लिखें |
-| [Configuration](https://docs.befailproof.ai/policies/local-configuration) | Config scopes और merge rules |
+| [बिल्ट-इन पॉलिसीज़](https://docs.befailproof.ai/policies/builtin) | सभी 39 पॉलिसीज़ पैरामीटर्स के साथ |
+| [कस्टम पॉलिसीज़](https://docs.befailproof.ai/policies/custom) | अपनी अपनी पॉलिसीज़ लिखें |
+| [कॉन्फ़िगरेशन](https://docs.befailproof.ai/policies/local-configuration) | कॉन्फ़िग स्कोप्स और मर्ज नियम |
-| अपने agent को instrument करें | |
+| अपने स्वयं के एजेंट को इंस्ट्रूमेंट करें | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | कोई harness वाले agent से runs report करें |
-| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` reference |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | कोई हार्नेस न होने वाले एजेंट से रन रिपोर्ट करें |
+| [पॉलिसी SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` संदर्भ |
---
## लाइसेंस
-MIT with [Commons Clause](https://commonsclause.com/) — internal और personal use के लिए free; failproofai
-के commercial resale के लिए एक separate agreement की जरूरत है। पूरे text के लिए [LICENSE](../../LICENSE) देखें।
+MIT with [Commons Clause](https://commonsclause.com/) — आंतरिक और व्यक्तिगत उपयोग के लिए निःशुल्क; failproofai स्वयं के वाणिज्यिक पुनर्विक्रय के लिए एक अलग समझौते की आवश्यकता है। पूर्ण पाठ के लिए [LICENSE](../../LICENSE) देखें।
---
-## योगदान
+## योगदान देना
-[CONTRIBUTING.md](../../CONTRIBUTING.md) देखें। नई policies, edge cases, और translations सभी स्वागत हैं।
+[CONTRIBUTING.md](../../CONTRIBUTING.md) देखें। नई पॉलिसीज़, एज केसेस, और अनुवाद सभी स्वागत हैं।
-> **शुरू करने से पहले build करें।** पहले `bun install && bun run build` चलाएँ। यह repo failproofai की अपनी
-> hooks को अपने पर चलाता है, और वे `failproofai` import को compiled `dist/` bundle के विरुद्ध resolve करते हैं —
-> build के बिना आपको `Cannot find package 'failproofai'` hook errors का सामना करना पड़ेगा। `src/` को
-> बदलने के बाद rebuild करें। [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work) देखें।
+> **शुरुआत करने से पहले बिल्ड करें।** पहले `bun install && bun run build` चलाएं। यह रेपो failproofai की अपनी हुक्स को स्वयं पर चलाता है, और वे कंपाइल किए गए `dist/` बंडल के विरुद्ध `failproofai` आयात को हल करते हैं — बिल्ड के बिना आप `Cannot find package 'failproofai'` हुक एरर्स से टकराएंगे। `src/` बदलने के बाद रीबिल्ड करें। [इन-रेपो डेव हुक्स काम करने के लिए पहले बिल्ड करें](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work) देखें।
---
-SF और Bengaluru में [befailproof.ai](https://befailproof.ai) द्वारा ❤️ के साथ built।
+SF और बेंगलुरु में [befailproof.ai](https://befailproof.ai) द्वारा ❤️ के साथ बनाया गया।
diff --git a/docs/i18n/README.it.md b/docs/i18n/README.it.md
index 249498bd..bfa6973a 100644
--- a/docs/i18n/README.it.md
+++ b/docs/i18n/README.it.md
@@ -20,22 +20,22 @@
**Traduzioni:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Osservabilità e applicazione per ogni esecuzione dei tuoi agenti.**
-Ovunque gli agenti vengono eseguiti, noi li vediamo — e possiamo dire di no. Failproof si aggancia a 12 ambienti di esecuzione per agenti — CLI di codifica come Claude Code e Codex, gateway di chat come Hermes, assistenti self-hosted come OpenClaw — catturando ogni esecuzione e bloccando le chiamate di strumenti pericolose prima che vengano eseguite. 40 politiche integrate. Latenza zero. Esecuzione locale.
+**Osservabilità e controllo per ogni harness in cui i tuoi agenti vengono eseguiti.**
+Ovunque i tuoi agenti vengono eseguiti, li vediamo — e possiamo dire no. Failproof aggancia 12 harness per agenti — CLI di coding come Claude Code e Codex, gateway di chat come Hermes, assistenti self-hosted come OpenClaw — catturando ogni esecuzione e bloccando le chiamate di strumento pericolose prima che vengano eseguite. 39 policy built-in. Zero latenza. Viene eseguito localmente.
-
+
---
-## Ambienti di esecuzione supportati
+## Harness supportati
-Dodici ambienti in due categorie — dieci CLI di codifica e due gateway di chat e assistenti (Hermes, OpenClaw). Gli stessi eventi, le stesse politiche, la stessa cronologia delle sessioni, indipendentemente da quale ambiente il tuo agente utilizza.
+Dodici harness in due classi — dieci CLI di coding e due gateway di chat e assistente (Hermes, OpenClaw). Gli stessi eventi, le stesse policy, lo stesso cronologia delle sessioni, indipendentemente da quale harness il tuo agente utilizza.
-Gli agenti che non vengono eseguiti in nessuno di questi si collegano tramite l'[SDK Python](https://docs.befailproof.ai/reference/custom-agents), che ti offre tracciamento, sessioni e audit. L'applicazione lì richiede un hook nel tuo runtime — [contattaci](mailto:support@befailproof.ai) e lo mapperemo.
+Gli agenti che non vengono eseguiti in nessuno di questi riferiscono attraverso [Python SDK](https://docs.befailproof.ai/reference/custom-agents), che ti offre tracciamento, sessioni e audit. L'enforcement lì richiede un hook nel tuo runtime — [contattaci](mailto:support@befailproof.ai) e lo mapperemo.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,37 +135,37 @@ Gli agenti che non vengono eseguiti in nessuno di questi si collegano tramite l'
```sh
npm install -g failproofai
-failproofai policies --install # oppure esegui `failproofai` e accetta il prompt al primo avvio
+failproofai policies --install # oppure esegui solo `failproofai` e accetta il prompt al primo utilizzo
failproofai
```
-40 politiche integrate si attivano immediatamente. Dashboard su `localhost:8020`. Disabilita il prompt al primo avvio con `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 policy built-in si attivano immediatamente. Dashboard su `localhost:8020`. Disabilita il prompt al primo utilizzo con `FAILPROOFAI_NO_FIRST_RUN=1`.
---
## Cosa blocca
-| Politica | Cosa blocca |
+| Policy | Cosa blocca |
|---|---|
-| `sanitize-api-keys` | Perdite di chiavi API nel contesto dell'agente |
-| `block-env-files` | Letture di `.env` e altri file segreti |
-| `warn-repeated-tool-calls` | L'agente che si blocca sulla stessa chiamata |
+| `sanitize-api-keys` | Chiavi API che trapelano nel contesto dell'agente |
+| `block-env-files` | Letture di `.env` e altri file di segreti |
+| `warn-repeated-tool-calls` | L'agente in loop sulla stessa chiamata |
| `block-sudo` | Escalation dei privilegi |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` illimitati |
-| `block-terraform` / `block-kubectl` | Modifiche non riviste all'infrastruttura in produzione |
-| `block-rm-rf` | Cancellazione ricorsiva di file |
-| `block-force-push` / `block-push-master` | `git push --force`, push diretti a `main` |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` senza limiti |
+| `block-terraform` / `block-kubectl` | Modifiche non revisionate all'infrastruttura live |
+| `block-rm-rf` | Eliminazione ricorsiva di file |
+| `block-force-push` / `block-push-master` | `git push --force`, spinte dirette a `main` |
-I primi cinque si applicano a qualsiasi agente che possa chiamare uno strumento. Gli ultimi tre sono i preferiti dagli sviluppatori — le CLI di codifica sono la categoria di ambienti che copriamo più a fondo.
+I primi cinque si applicano a qualsiasi agente che possa chiamare uno strumento. Gli ultimi tre sono i preferiti degli sviluppatori — i CLI di coding sono la classe di harness che copriamo più in profondità.
-→ [Tutte e 40 le politiche integrate](https://docs.befailproof.ai/policies/builtin)
+→ [Tutte le 39 policy built-in](https://docs.befailproof.ai/policies/builtin)
---
-## Le tue politiche personali
+## Le tue policy
-Rilascia un file in `.failproofai/policies/` — si carica automaticamente, non servono flag.
-Eseguine il commit e l'intero team lo riceverà al prossimo pull.
+Copia un file in `.failproofai/policies/` — viene caricato automaticamente, non sono necessari flag.
+Eseguine il commit e il team intero lo otterrà al prossimo pull.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -175,35 +175,36 @@ customPolicies.add({
match: { events: ["PreToolUse"] },
fn: async (ctx) => {
if (ctx.toolInput?.file_path?.includes("production"))
- return deny("Writes to production paths are blocked.");
+ return deny("Le scritture nei percorsi di produzione sono bloccate.");
return allow();
},
});
```
-Tre decisioni disponibili per ogni politica:
+Tre decisioni disponibili per ogni policy:
| Decisione | Effetto |
|---|---|
| `allow()` | Consenti l'operazione |
| `deny(message)` | Bloccala — il messaggio torna all'agente |
-| `instruct(message)` | Lasciala passare, ma aggiungi contesto al prossimo prompt dell'agente |
+| `instruct(message)` | Lasciarla passare, ma aggiungi contesto al prossimo prompt dell'agente |
-→ [Guida alle politiche personalizzate](https://docs.befailproof.ai/policies/custom)
+→ [Guida alle policy personalizzate](https://docs.befailproof.ai/policies/custom)
---
## Osservabilità
-L'applicazione è una metà. L'altra metà è vedere cosa ha veramente fatto l'agente.
+L'enforcement è una metà. L'altra metà è vedere quello che l'agente ha effettivamente fatto.
-Esegui `failproofai` senza argomenti e servirà un dashboard su `localhost:8020` leggendo la cronologia delle esecuzioni già presente sulla tua macchina — nessun account, nessuna registrazione, nulla che esce dal sistema. Ottieni l'elenco delle sessioni, la sequenza di chiamate di modello, chiamate di strumenti e decisioni di hook all'interno di ogni esecuzione, cosa è stato bloccato e cosa la politica ha detto all'agente, e un audit offline (`failproofai audit`) che scansiona la tua cronologia per modelli rischiosi e suggerisce politiche per bloccarli.
+Esegui `failproofai` senza argomenti e serve un dashboard su `localhost:8020`
+leggendo la cronologia delle esecuzioni già presente sulla tua macchina — nessun account, nessuna iscrizione, nulla che lascia il box. Ottieni l'elenco delle sessioni, la sequenza di chiamate del modello, chiamate di strumenti e decisioni di hook all'interno di ogni esecuzione, cosa è stato bloccato e cosa la policy ha detto all'agente, e un audit offline (`failproofai audit`) che scansiona la tua cronologia per pattern rischiosi e suggerisce policy per fermarli.
→ [Dashboard locale](https://docs.befailproof.ai/reference/local-dashboard) ·
[Leggi una traccia](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Audit locale](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** è il lato ospitato dello stesso modello di dati, per team che eseguono agenti su una flotta: ogni esecuzione da ogni ambiente in un unico posto, un grafo di esecuzione con sub-agenti paralleli sui propri percorsi, latenza p50/p95/p99 per modelli, strumenti e hook, costo per modello e tracciamento della finestra di contesto, tracciamento degli errori, SQL sulle tue tracce con dashboard condivisibili, valutazioni puntate dal tuo servizio, audit pianificati che trasformano i fallimenti ricorrenti in risultati basati su prove, e avvisi instradati a Slack, email o un webhook firmato. L'auto-hosting nel tuo cluster è disponibile nel piano Enterprise.
+**Failproof AI Observability** è il lato ospitato dello stesso modello di dati, per i team che eseguono agenti su una flotta: ogni esecuzione da ogni harness in un unico posto, un grafico di esecuzione con sotto-agenti paralleli su loro corsie, latenza p50/p95/p99 per modelli, strumenti e hook, costo per modello e tracciamento della finestra di contesto, tracciamento degli errori, SQL sulle tue tracce con dashboard condivisibili, valutazioni puntate dal tuo servizio, audit programmati che trasformano i fallimenti ricorrenti in risultati supportati da prove, e avvisi indirizzati a Slack, email o webhook firmato. L'auto-hosting nel tuo cluster è disponibile nel piano Enterprise.
→ [Sessioni](https://docs.befailproof.ai/sessions/overview) ·
[Audit](https://docs.befailproof.ai/audits/overview) ·
@@ -213,44 +214,45 @@ Esegui `failproofai` senza argomenti e servirà un dashboard su `localhost:8020`
## Documentazione
-| Inizio | |
+| Inizia | |
|---|---|
-| [Quickstart](https://docs.befailproof.ai/start/quickstart) | Installa, connetti un ambiente, vedi la prima esecuzione |
+| [Guida rapida](https://docs.befailproof.ai/start/quickstart) | Installa, connetti un harness, vedi la prima esecuzione |
| [Concetti](https://docs.befailproof.ai/start/concepts) | Come funziona il sistema di hook |
-| [Ambienti di esecuzione supportati](https://docs.befailproof.ai/reference/harnesses) | Tutti e 12, e cosa ciascuno può applicare |
+| [Harness supportati](https://docs.befailproof.ai/reference/harnesses) | Tutti i 12, e cosa ciascuno può enforce |
| Osserva | |
|---|---|
| [Sessioni](https://docs.befailproof.ai/sessions/overview) | Segui un'esecuzione: modelli, strumenti, errori, latenza |
-| [Leggi una traccia](https://docs.befailproof.ai/sessions/read-a-trace) | Cosa il grafo di esecuzione ti sta dicendo |
-| [Audit](https://docs.befailproof.ai/audits/overview) | Trova modelli di fallimento su molte sessioni |
+| [Leggi una traccia](https://docs.befailproof.ai/sessions/read-a-trace) | Cosa ti sta dicendo il grafico di esecuzione |
+| [Audit](https://docs.befailproof.ai/audits/overview) | Trova pattern di fallimento su molte sessioni |
| [Dashboard locale](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, nessun account necessario |
| Applica | |
|---|---|
-| [Politiche integrate](https://docs.befailproof.ai/policies/builtin) | Tutte le 40 politiche con parametri |
-| [Politiche personalizzate](https://docs.befailproof.ai/policies/custom) | Scrivi le tue |
+| [Policy built-in](https://docs.befailproof.ai/policies/builtin) | Tutte le 39 policy con parametri |
+| [Policy personalizzate](https://docs.befailproof.ai/policies/custom) | Scrivi le tue |
| [Configurazione](https://docs.befailproof.ai/policies/local-configuration) | Ambiti di configurazione e regole di merge |
| Strumenta il tuo agente | |
|---|---|
-| [SDK Python](https://docs.befailproof.ai/reference/custom-agents) | Segnala esecuzioni da un agente senza ambiente |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Riporta esecuzioni da un agente senza harness |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Riferimento `allow` / `deny` / `instruct` |
---
## Licenza
-MIT con [Commons Clause](https://commonsclause.com/) — libera per uso interno e personale; la rivendita commerciale di failproofai stesso richiede un accordo separato. Vedi [LICENSE](../../LICENSE) per il testo completo.
+MIT con [Commons Clause](https://commonsclause.com/) — gratuito per uso interno e personale; la rivendita commerciale di failproofai stesso richiede un accordo separato. Vedi [LICENSE](../../LICENSE) per il testo completo.
---
## Contribuire
-Vedi [CONTRIBUTING.md](../../CONTRIBUTING.md). Nuove politiche, casi limite e traduzioni sono tutti benvenuti.
+Vedi [CONTRIBUTING.md](../../CONTRIBUTING.md). Nuove policy, casi limite e traduzioni sono tutti benvenuti.
-> **Compila prima di iniziare.** Esegui prima `bun install && bun run build`. Questo repository esegue i propri hook di failproofai su se stesso, e risolvono l'importazione di `failproofai` contro il bundle compilato `dist/` — senza una build avrai errori di hook `Cannot find package 'failproofai'`. Ricompila dopo aver modificato `src/`. Vedi [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **Costruisci prima di iniziare.** Esegui `bun install && bun run build` per primo. Questo repo esegue i propri hook di failproofai su se stesso, e risolvono l'import di `failproofai` rispetto al bundle compilato `dist/` — senza una compilazione ti troverai con errori di hook `Cannot find package 'failproofai'`. Ricompila dopo aver modificato `src/`. Vedi
+> [Costruisci prima che i dev hook in-repo funzionino](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-Realizzato con ❤️ da [befailproof.ai](https://befailproof.ai) a San Francisco e Bengaluru.
+Realizzato con ❤️ da [befailproof.ai](https://befailproof.ai) a SF e Bengaluru.
diff --git a/docs/i18n/README.ja.md b/docs/i18n/README.ja.md
index f079f001..8b9ccf67 100644
--- a/docs/i18n/README.ja.md
+++ b/docs/i18n/README.ja.md
@@ -18,10 +18,10 @@
[](https://docs.befailproof.ai/)
[](../../LICENSE)
-**翻訳版:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
+**翻訳:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**あらゆるハーネスで動くエージェントに、オブザーバビリティと制御を。**
-エージェントがどこで動いていても、Failproofはすべてを把握し、必要なときに「ノー」と言えます。Failproofは12のエージェントハーネスにフックし — Claude Code や Codex などのコーディングCLI、Hermes などのチャットゲートウェイ、OpenClaw などのセルフホスト型アシスタント — すべての実行を記録し、危険なツール呼び出しを実行前にブロックします。40の組み込みポリシー。レイテンシゼロ。ローカル動作。
+**あらゆるハーネスで動くエージェントに、可観測性と制御を。**
+エージェントがどこで動いていても、私たちはそれを見ています——そして「No」と言えます。Failproof は 12 種類のエージェントハーネスにフックします。Claude Code や Codex のようなコーディング CLI、Hermes のようなチャットゲートウェイ、OpenClaw のようなセルフホスト型アシスタントに対応し、すべての実行をキャプチャして危険なツール呼び出しを実行前にブロックします。39 のビルトインポリシー。レイテンシーゼロ。ローカルで動作。
@@ -33,9 +33,9 @@
## 対応ハーネス
-2つのクラスに分かれた12のハーネス — 10のコーディングCLIと、2つのチャット・アシスタントゲートウェイ(Hermes、OpenClaw)。どのハーネスを使っても、同じイベント、同じポリシー、同じセッション履歴が利用できます。
+12 種類のハーネスを 2 つのクラスに分類しています——コーディング CLI が 10 種類、チャット・アシスタントゲートウェイ(Hermes、OpenClaw)が 2 種類です。どのハーネスで動かしても、同じイベント、同じポリシー、同じセッション履歴が使えます。
-いずれのハーネスにも属さないエージェントは [Python SDK](https://docs.befailproof.ai/reference/custom-agents) を通じてレポートできます。トレース、セッション、監査機能が利用可能です。その環境でのエンフォースメントにはご自身のランタイムへのフック実装が必要です — [お問い合わせください](mailto:support@befailproof.ai)。対応方法をご案内します。
+いずれのハーネスでも動作しないエージェントは [Python SDK](https://docs.befailproof.ai/reference/custom-agents) を通じてレポートできます。トレーシング、セッション管理、監査が利用可能です。そこでのエンフォースメントには自前のランタイムへのフックが必要です——[お問い合わせ](mailto:support@befailproof.ai)いただければ対応方法をご案内します。
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,36 +135,37 @@
```sh
npm install -g failproofai
-failproofai policies --install # または `failproofai` を実行して初回プロンプトに従うだけでもOK
+failproofai policies --install # または `failproofai` を実行して初回起動のプロンプトに従う
failproofai
```
-40の組み込みポリシーが即座に有効化されます。ダッシュボードは `localhost:8020` で確認できます。初回プロンプトを無効にするには `FAILPROOFAI_NO_FIRST_RUN=1` を設定してください。
+39 のビルトインポリシーが即座に有効になります。ダッシュボードは `localhost:8020` で確認できます。`FAILPROOFAI_NO_FIRST_RUN=1` を設定すると初回起動プロンプトを無効化できます。
---
-## ブロックできる操作
+## 防げること
-| ポリシー | ブロック対象 |
+| ポリシー | ブロックする内容 |
|---|---|
-| `sanitize-api-keys` | エージェントのコンテキストへのAPIキー漏洩 |
-| `block-env-files` | `.env` などのシークレットファイルの読み取り |
-| `warn-repeated-tool-calls` | 同じ呼び出しをループし続けるエージェント |
+| `sanitize-api-keys` | エージェントのコンテキストへの API キー漏洩 |
+| `block-env-files` | `.env` やその他のシークレットファイルの読み取り |
+| `warn-repeated-tool-calls` | 同じ呼び出しでループするエージェント |
| `block-sudo` | 権限昇格 |
| `warn-destructive-sql` | `DROP`、`TRUNCATE`、条件なし `DELETE` |
-| `block-terraform` / `block-kubectl` | 本番インフラへの未レビュー変更 |
+| `block-terraform` / `block-kubectl` | レビューなしの本番インフラへの変更 |
| `block-rm-rf` | 再帰的なファイル削除 |
| `block-force-push` / `block-push-master` | `git push --force`、`main` への直接プッシュ |
-最初の5つはツールを呼び出せるあらゆるエージェントに適用されます。残りの3つは開発者に特に人気のポリシーで、コーディングCLIはもっとも深くカバーしているハーネスクラスです。
+最初の 5 つはツールを呼び出せるすべてのエージェントに適用されます。残りの 3 つは開発者に特に人気で——コーディング CLI は私たちが最も深くカバーしているハーネスクラスです。
-→ [組み込みポリシー一覧(40件)](https://docs.befailproof.ai/policies/builtin)
+→ [39 のビルトインポリシー一覧](https://docs.befailproof.ai/policies/builtin)
---
-## カスタムポリシー
+## 独自ポリシー
-`.failproofai/policies/` にファイルを置くだけで自動的に読み込まれます。フラグ不要。コミットすればチーム全員が次のプルで使えます。
+`.failproofai/policies/` にファイルを置くだけで自動的に読み込まれます——フラグ不要です。
+コミットすれば、次回プル時にチーム全員に適用されます。
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -180,29 +181,29 @@ customPolicies.add({
});
```
-各ポリシーで使用できる3つの判断:
+すべてのポリシーで使用できる 3 つの判定:
-| 判断 | 効果 |
+| 判定 | 効果 |
|---|---|
| `allow()` | 操作を許可する |
-| `deny(message)` | ブロックする — メッセージはエージェントに返される |
+| `deny(message)` | ブロックする——メッセージはエージェントに返される |
| `instruct(message)` | 通過させるが、エージェントの次のプロンプトにコンテキストを追加する |
→ [カスタムポリシーガイド](https://docs.befailproof.ai/policies/custom)
---
-## オブザーバビリティ
+## 可観測性
-エンフォースメントは半分にすぎません。もう半分は、エージェントが実際に何をしたかを把握することです。
+エンフォースメントは機能の半分です。もう半分は、エージェントが実際に何をしたかを把握することです。
-`failproofai` を引数なしで実行すると、`localhost:8020` にダッシュボードが起動し、マシン上の実行履歴を読み込みます — アカウント不要、サインアップ不要、データは外部に出ません。セッション一覧、モデル呼び出しのシーケンス、各実行内のツール呼び出しとフック判断、ブロックされた内容とポリシーがエージェントに伝えた内容、そしてオフライン監査(`failproofai audit`)で履歴からリスクのあるパターンを検出してポリシーの提案を行います。
+引数なしで `failproofai` を実行すると、`localhost:8020` でダッシュボードが起動し、マシン上の実行履歴を読み取ります——アカウント不要、サインアップ不要、データは外部に送信されません。セッション一覧、モデル呼び出しのシーケンス、各実行内のツール呼び出しとフック判定、ブロックされた内容とポリシーがエージェントに伝えた内容、そしてオフライン監査(`failproofai audit`)による履歴スキャンでリスクのあるパターンを検出し、対策ポリシーを提案します。
→ [ローカルダッシュボード](https://docs.befailproof.ai/reference/local-dashboard) ·
[トレースの読み方](https://docs.befailproof.ai/sessions/read-a-trace) ·
[ローカル監査](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** は同じデータモデルのホスト型サービスで、フリートでエージェントを運用するチーム向けです。全ハーネスのすべての実行を一か所に集約し、並列サブエージェントを独立レーンで表示する実行グラフ、モデル・ツール・フックのp50/p95/p99レイテンシ、モデルごとのコストとコンテキストウィンドウのトラッキング、エラートラッキング、共有可能なダッシュボード付きSQLクエリ、独自サービスによるスコアリング評価、繰り返す失敗をエビデンスに基づく知見に変える定期監査、そしてSlack・メール・署名付きWebhookへのアラートルーティングを提供します。自社クラスターへのセルフホスティングはEnterpriseプランで利用可能です。
+**Failproof AI Observability** は同じデータモデルのホスト版で、フリートでエージェントを運用するチーム向けです。全ハーネスからのすべての実行を一か所に集約し、並列サブエージェントを独立レーンで表示する実行グラフ、モデル・ツール・フックの p50/p95/p99 レイテンシー、モデルごとのコストとコンテキストウィンドウのトラッキング、エラートラッキング、共有可能なダッシュボード付きの自前トレースへの SQL クエリ、自社サービスによるスコアリング付き評価、繰り返す障害をエビデンスベースの知見に変えるスケジュール監査、そして Slack・メール・署名付き Webhook へのアラートルーティングを提供します。Enterprise プランでは自社クラスターへのセルフホスティングも利用可能です。
→ [セッション](https://docs.befailproof.ai/sessions/overview) ·
[監査](https://docs.befailproof.ai/audits/overview) ·
@@ -216,40 +217,40 @@ customPolicies.add({
|---|---|
| [クイックスタート](https://docs.befailproof.ai/start/quickstart) | インストール、ハーネスの接続、最初の実行を確認する |
| [コンセプト](https://docs.befailproof.ai/start/concepts) | フックシステムの仕組み |
-| [対応ハーネス](https://docs.befailproof.ai/reference/harnesses) | 全12件と各ハーネスで適用できるポリシー |
+| [対応ハーネス](https://docs.befailproof.ai/reference/harnesses) | 全 12 種類と各ハーネスで適用できるエンフォースメント |
-| 観測する | |
+| 観察する | |
|---|---|
-| [セッション](https://docs.befailproof.ai/sessions/overview) | 実行を追う:モデル、ツール、エラー、レイテンシ |
+| [セッション](https://docs.befailproof.ai/sessions/overview) | 実行を追跡する: モデル、ツール、エラー、レイテンシー |
| [トレースの読み方](https://docs.befailproof.ai/sessions/read-a-trace) | 実行グラフが示していること |
-| [監査](https://docs.befailproof.ai/audits/overview) | 多数のセッションにまたがる失敗パターンを発見する |
+| [監査](https://docs.befailproof.ai/audits/overview) | 複数セッションにまたがる障害パターンを見つける |
| [ローカルダッシュボード](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`、アカウント不要 |
| 制御する | |
|---|---|
-| [組み込みポリシー](https://docs.befailproof.ai/policies/builtin) | パラメータ付き全40ポリシー |
-| [カスタムポリシー](https://docs.befailproof.ai/policies/custom) | 独自ポリシーを作成する |
+| [ビルトインポリシー](https://docs.befailproof.ai/policies/builtin) | パラメーター付き全 39 ポリシー |
+| [カスタムポリシー](https://docs.befailproof.ai/policies/custom) | 独自のポリシーを作成する |
| [設定](https://docs.befailproof.ai/policies/local-configuration) | 設定スコープとマージルール |
-| 独自エージェントを計測する | |
+| 独自エージェントを計装する | |
|---|---|
| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | ハーネスなしのエージェントから実行をレポートする |
-| [ポリシーSDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` リファレンス |
+| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` リファレンス |
---
## ライセンス
-MIT with [Commons Clause](https://commonsclause.com/) — 社内利用・個人利用は無料。failproofai 自体の商業的な再販には別途契約が必要です。全文は [LICENSE](../../LICENSE) をご覧ください。
+MIT with [Commons Clause](https://commonsclause.com/) ——社内利用および個人利用は無料です。failproofai 自体の商用再販には別途契約が必要です。全文は [LICENSE](../../LICENSE) をご覧ください。
---
## コントリビューション
-[CONTRIBUTING.md](../../CONTRIBUTING.md) をご参照ください。新しいポリシー、エッジケースの対応、翻訳の追加はいずれも歓迎します。
+[CONTRIBUTING.md](../../CONTRIBUTING.md) をご参照ください。新しいポリシー、エッジケースの対応、翻訳はいずれも歓迎します。
-> **作業前にビルドしてください。** まず `bun install && bun run build` を実行してください。このリポジトリはfailproofai自身のフックを自分自身に適用しており、フックはコンパイル済みの `dist/` バンドルに対して `failproofai` インポートを解決します。ビルドなしで実行すると `Cannot find package 'failproofai'` というフックエラーが発生します。`src/` を変更した後は再ビルドしてください。詳細は [リポジトリ内の開発用フックを動作させるためのビルド手順](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work) をご覧ください。
+> **作業を始める前にビルドしてください。** まず `bun install && bun run build` を実行してください。このリポジトリは failproofai 自身のフックを自分自身に適用しており、`failproofai` のインポートはコンパイル済みの `dist/` バンドルに対して解決されます——ビルドなしで実行すると `Cannot find package 'failproofai'` というフックエラーが発生します。`src/` を変更した後は再ビルドしてください。詳細は [リポジトリ内の開発フックが動作するようにビルドする](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work) をご覧ください。
---
-SFとベンガルールのチームが ❤️ を込めて開発。[befailproof.ai](https://befailproof.ai)
+❤️ を込めて [befailproof.ai](https://befailproof.ai) が SF とベンガルールで開発。
diff --git a/docs/i18n/README.ko.md b/docs/i18n/README.ko.md
index c154bc49..da95d71e 100644
--- a/docs/i18n/README.ko.md
+++ b/docs/i18n/README.ko.md
@@ -20,10 +20,11 @@
**번역:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**에이전트가 실행되는 모든 하네스에 대한 관찰 가능성과 정책 적용.**
-에이전트가 어디서 실행되든 우리는 확인하고 — 필요하다면 차단합니다. Failproof는 12개의 에이전트
+**에이전트가 실행되는 모든 하네스에 대한 가시성과 정책 적용.**
+에이전트가 어디서 실행되든 우리는 모두 감지하고 — 차단할 수 있습니다. Failproof는 12개의 에이전트
하네스에 훅을 연결합니다 — Claude Code, Codex 같은 코딩 CLI, Hermes 같은 채팅 게이트웨이,
-OpenClaw 같은 자체 호스팅 어시스턴트 — 모든 실행을 캡처하고 위험한 도구 호출을 실행 전에 차단합니다. 기본 제공 정책 40개. 레이턴시 제로. 로컬 실행.
+OpenClaw 같은 자체 호스팅 어시스턴트 — 모든 실행을 캡처하고 위험한 도구 호출을
+실행 전에 차단합니다. 39개의 내장 정책. 지연 시간 제로. 로컬에서 실행.
@@ -35,9 +36,11 @@ OpenClaw 같은 자체 호스팅 어시스턴트 — 모든 실행을 캡처하
## 지원 하네스
-두 가지 유형의 하네스 12개 — 코딩 CLI 10개, 채팅 및 어시스턴트 게이트웨이(Hermes, OpenClaw) 2개. 에이전트가 어느 하네스에서 실행되든 동일한 이벤트, 동일한 정책, 동일한 세션 히스토리가 적용됩니다.
+두 가지 유형의 12개 하네스 — 10개의 코딩 CLI와 2개의 채팅 및 어시스턴트
+게이트웨이(Hermes, OpenClaw). 에이전트가 어느 하네스에서 실행되든 동일한 이벤트, 동일한 정책, 동일한 세션 기록을 제공합니다.
-위에 해당하는 하네스를 사용하지 않는 에이전트는 [Python SDK](https://docs.befailproof.ai/reference/custom-agents)를 통해 리포트할 수 있으며, 트레이싱·세션·감사 기능을 제공합니다. 해당 환경에서의 정책 적용은 런타임에 직접 훅을 추가해야 합니다 — [문의하기](mailto:support@befailproof.ai)로 연락 주시면 방법을 안내해 드립니다.
+이 중 어느 하네스에서도 실행되지 않는 에이전트는 [Python SDK](https://docs.befailproof.ai/reference/custom-agents)를 통해 보고할 수 있으며,
+트레이싱, 세션 및 감사 기능을 제공합니다. 해당 환경에서의 정책 적용은 자체 런타임에 훅이 필요합니다 — [문의하시면](mailto:support@befailproof.ai) 함께 방법을 찾아드립니다.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -137,37 +140,38 @@ OpenClaw 같은 자체 호스팅 어시스턴트 — 모든 실행을 캡처하
```sh
npm install -g failproofai
-failproofai policies --install # 또는 `failproofai`를 실행하고 최초 실행 프롬프트에서 수락
+failproofai policies --install # or just run `failproofai` and accept the first-run prompt
failproofai
```
-기본 제공 정책 40개가 즉시 활성화됩니다. 대시보드는 `localhost:8020`에서 확인할 수 있습니다. `FAILPROOFAI_NO_FIRST_RUN=1`로 최초 실행 프롬프트를 비활성화할 수 있습니다.
+39개의 내장 정책이 즉시 활성화됩니다. 대시보드는 `localhost:8020`에서 확인하세요. 최초 실행 프롬프트는 `FAILPROOFAI_NO_FIRST_RUN=1`로 비활성화할 수 있습니다.
---
-## 차단 항목
+## 차단 대상
| 정책 | 차단 내용 |
|---|---|
| `sanitize-api-keys` | 에이전트 컨텍스트로 유출되는 API 키 |
| `block-env-files` | `.env` 및 기타 시크릿 파일 읽기 |
| `warn-repeated-tool-calls` | 동일한 호출을 반복하는 에이전트 루프 |
-| `block-sudo` | 권한 상승 |
+| `block-sudo` | 권한 상승 시도 |
| `warn-destructive-sql` | `DROP`, `TRUNCATE`, 조건 없는 `DELETE` |
-| `block-terraform` / `block-kubectl` | 검토 없는 라이브 인프라 변경 |
+| `block-terraform` / `block-kubectl` | 검토되지 않은 운영 인프라 변경 |
| `block-rm-rf` | 재귀적 파일 삭제 |
| `block-force-push` / `block-push-master` | `git push --force`, `main` 브랜치 직접 푸시 |
-처음 다섯 가지는 도구를 호출할 수 있는 모든 에이전트에 적용됩니다. 나머지 세 가지는 개발자들이 가장 선호하는 정책으로 — 코딩 CLI는 우리가 가장 깊이 지원하는 하네스 유형입니다.
+처음 다섯 가지는 도구를 호출할 수 있는 모든 에이전트에 적용됩니다. 나머지 세 가지는
+개발자들이 가장 선호하는 정책입니다 — 코딩 CLI는 우리가 가장 깊이 지원하는 하네스 유형입니다.
-→ [기본 제공 정책 40개 전체 보기](https://docs.befailproof.ai/policies/builtin)
+→ [39개 내장 정책 전체 목록](https://docs.befailproof.ai/policies/builtin)
---
## 커스텀 정책
-`.failproofai/policies/` 디렉토리에 파일을 추가하면 자동으로 로드됩니다 — 별도 플래그 불필요.
-커밋하면 팀 전체가 다음 풀 시 적용받습니다.
+`.failproofai/policies/` 폴더에 파일을 추가하기만 하면 — 별도 플래그 없이 자동으로 로드됩니다.
+커밋하면 팀 전체가 다음 pull 때 적용받습니다.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -188,24 +192,27 @@ customPolicies.add({
| 결정 | 효과 |
|---|---|
| `allow()` | 작업 허용 |
-| `deny(message)` | 차단 — 메시지가 에이전트로 반환됨 |
+| `deny(message)` | 차단 — 메시지가 에이전트에게 반환됨 |
| `instruct(message)` | 통과시키되, 에이전트의 다음 프롬프트에 컨텍스트 추가 |
→ [커스텀 정책 가이드](https://docs.befailproof.ai/policies/custom)
---
-## 관찰 가능성
+## 가시성
-정책 적용은 절반입니다. 나머지 절반은 에이전트가 실제로 무엇을 했는지 파악하는 것입니다.
+정책 적용은 절반에 불과합니다. 나머지 절반은 에이전트가 실제로 무엇을 했는지 파악하는 것입니다.
-`failproofai`를 인수 없이 실행하면 `localhost:8020`에서 대시보드가 시작되며, 이미 로컬에 저장된 실행 히스토리를 읽습니다 — 계정 불필요, 회원가입 불필요, 데이터가 외부로 나가지 않습니다. 세션 목록, 각 실행 내의 모델 호출 순서·도구 호출·훅 결정, 차단된 항목과 정책이 에이전트에 전달한 내용, 그리고 오프라인 감사(`failproofai audit`) 기능으로 히스토리에서 위험 패턴을 스캔하고 이를 방지할 정책을 제안받을 수 있습니다.
+`failproofai`를 인수 없이 실행하면 `localhost:8020`에서 대시보드를 제공합니다.
+이미 로컬 머신에 저장된 실행 기록을 읽어오며 — 계정도, 회원가입도, 데이터 외부 전송도 필요 없습니다.
+세션 목록, 모델 호출 순서, 각 실행 내의 도구 호출 및 훅 결정 사항, 차단된 내용과 정책이 에이전트에게 전달한 내용,
+그리고 기록에서 위험한 패턴을 스캔하고 이를 방지할 정책을 제안하는 오프라인 감사(`failproofai audit`)까지 제공합니다.
→ [로컬 대시보드](https://docs.befailproof.ai/reference/local-dashboard) ·
[트레이스 읽기](https://docs.befailproof.ai/sessions/read-a-trace) ·
[로컬 감사](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability**는 동일한 데이터 모델의 호스팅 버전으로, 여러 머신에서 에이전트를 운영하는 팀을 위한 서비스입니다: 모든 하네스에서 실행된 전체 기록을 한 곳에서 확인, 독립 레인에서 병렬 서브에이전트가 표시되는 실행 그래프, 모델·도구·훅의 p50/p95/p99 레이턴시, 모델별 비용 및 컨텍스트 윈도우 추적, 에러 추적, 공유 가능한 대시보드가 포함된 자체 트레이스 SQL 쿼리, 자체 서비스로 채점하는 평가, 반복 실패를 근거 있는 발견으로 전환하는 정기 감사, Slack·이메일·서명된 웹훅으로 알림 라우팅. 자체 클러스터 셀프호스팅은 Enterprise 플랜에서 제공됩니다.
+**Failproof AI Observability**는 동일한 데이터 모델의 호스팅 버전으로, 여러 머신에서 에이전트를 운영하는 팀을 위해 설계되었습니다: 모든 하네스의 모든 실행을 한 곳에서, 독립 레인에서 병렬 실행되는 서브 에이전트를 포함한 실행 그래프, 모델·도구·훅의 p50/p95/p99 지연 시간, 모델별 비용 및 컨텍스트 윈도우 추적, 오류 추적, 공유 가능한 대시보드와 함께 자체 트레이스에 대한 SQL 쿼리, 자체 서비스로 평가 점수 산정, 반복되는 장애를 근거 기반 분석 결과로 전환하는 정기 감사, 그리고 Slack·이메일·서명된 웹훅으로 라우팅되는 알림까지 제공합니다. 자체 클러스터 셀프 호스팅은 Enterprise 플랜에서 이용 가능합니다.
→ [세션](https://docs.befailproof.ai/sessions/overview) ·
[감사](https://docs.befailproof.ai/audits/overview) ·
@@ -217,33 +224,33 @@ customPolicies.add({
| 시작하기 | |
|---|---|
-| [퀵스타트](https://docs.befailproof.ai/start/quickstart) | 설치, 하네스 연결, 첫 번째 실행 확인 |
-| [개념](https://docs.befailproof.ai/start/concepts) | 훅 시스템 작동 원리 |
-| [지원 하네스](https://docs.befailproof.ai/reference/harnesses) | 12개 전체 및 각 하네스의 적용 가능한 정책 |
+| [빠른 시작](https://docs.befailproof.ai/start/quickstart) | 설치, 하네스 연결, 첫 번째 실행 확인 |
+| [개념](https://docs.befailproof.ai/start/concepts) | 훅 시스템 동작 방식 |
+| [지원 하네스](https://docs.befailproof.ai/reference/harnesses) | 12개 전체 및 각각의 정책 적용 범위 |
-| 관찰 | |
+| 관찰하기 | |
|---|---|
-| [세션](https://docs.befailproof.ai/sessions/overview) | 실행 추적: 모델, 도구, 에러, 레이턴시 |
-| [트레이스 읽기](https://docs.befailproof.ai/sessions/read-a-trace) | 실행 그래프가 말해주는 것 |
-| [감사](https://docs.befailproof.ai/audits/overview) | 여러 세션에 걸친 실패 패턴 탐색 |
+| [세션](https://docs.befailproof.ai/sessions/overview) | 실행 추적: 모델, 도구, 오류, 지연 시간 |
+| [트레이스 읽기](https://docs.befailproof.ai/sessions/read-a-trace) | 실행 그래프가 알려주는 정보 |
+| [감사](https://docs.befailproof.ai/audits/overview) | 여러 세션에 걸친 장애 패턴 파악 |
| [로컬 대시보드](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, 계정 불필요 |
| 정책 적용 | |
|---|---|
-| [기본 제공 정책](https://docs.befailproof.ai/policies/builtin) | 파라미터가 포함된 40개 정책 전체 |
+| [내장 정책](https://docs.befailproof.ai/policies/builtin) | 파라미터 포함 39개 정책 전체 |
| [커스텀 정책](https://docs.befailproof.ai/policies/custom) | 직접 작성하기 |
| [설정](https://docs.befailproof.ai/policies/local-configuration) | 설정 스코프 및 병합 규칙 |
-| 에이전트 직접 계측 | |
+| 자체 에이전트 계측 | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | 하네스 없는 에이전트에서 실행 리포트 |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | 하네스 없는 에이전트에서 실행 보고 |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` 레퍼런스 |
---
## 라이선스
-[Commons Clause](https://commonsclause.com/)가 포함된 MIT 라이선스 — 내부 및 개인 사용은 무료이며, failproofai 자체의 상업적 재판매는 별도 계약이 필요합니다. 전문은 [LICENSE](../../LICENSE)를 참고하세요.
+[Commons Clause](https://commonsclause.com/)가 포함된 MIT 라이선스 — 내부 및 개인 사용은 무료이며, failproofai 자체의 상업적 재판매에는 별도 계약이 필요합니다. 전문은 [LICENSE](../../LICENSE)를 참고하세요.
---
@@ -251,11 +258,11 @@ customPolicies.add({
[CONTRIBUTING.md](../../CONTRIBUTING.md)를 참고하세요. 새로운 정책, 엣지 케이스, 번역 모두 환영합니다.
-> **시작 전에 먼저 빌드하세요.** `bun install && bun run build`를 먼저 실행해야 합니다. 이 저장소는
-> failproofai 자체 훅을 스스로에 적용하며, 훅은 `failproofai` 임포트를 컴파일된 `dist/` 번들에서
-> 해석합니다 — 빌드 없이 실행하면 `Cannot find package 'failproofai'` 훅 오류가 발생합니다.
-> `src/` 변경 후에는 다시 빌드하세요. 자세한 내용은
-> [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work)를 참고하세요.
+> **시작 전에 빌드하세요.** 먼저 `bun install && bun run build`를 실행하세요. 이 저장소는
+> failproofai 자체 훅을 직접 적용하며, `failproofai` 임포트를 컴파일된 `dist/` 번들에서
+> 찾습니다 — 빌드 없이는 `Cannot find package 'failproofai'` 훅 오류가 발생합니다.
+> `src/`를 변경한 후에는 다시 빌드하세요. 자세한 내용은
+> [저장소 내 개발 훅이 작동하려면 빌드가 먼저입니다](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work)를 참고하세요.
---
diff --git a/docs/i18n/README.pt-br.md b/docs/i18n/README.pt-br.md
index fd57fd73..6754370c 100644
--- a/docs/i18n/README.pt-br.md
+++ b/docs/i18n/README.pt-br.md
@@ -20,8 +20,8 @@
**Traduções:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Observabilidade e controle para cada ambiente em que seus agentes rodam.**
-Onde quer que seus agentes estejam, a gente enxerga — e pode dizer não. O Failproof se integra a 12 ambientes de agentes — CLIs de codificação como Claude Code e Codex, gateways de chat como Hermes, assistentes auto-hospedados como OpenClaw — capturando cada execução e bloqueando chamadas de ferramenta perigosas antes que aconteçam. 40 políticas embutidas. Zero latência. Roda localmente.
+**Observabilidade e controle para todos os ambientes em que seus agentes rodam.**
+Onde quer que seus agentes executem, nós enxergamos — e podemos dizer não. O Failproof se conecta a 12 harnesses de agentes — CLIs de codificação como Claude Code e Codex, gateways de chat como Hermes, assistentes auto-hospedados como OpenClaw — capturando cada execução e bloqueando chamadas de ferramentas perigosas antes que elas aconteçam. 39 políticas integradas. Zero latência. Roda localmente.
@@ -31,11 +31,11 @@ Onde quer que seus agentes estejam, a gente enxerga — e pode dizer não. O Fai
---
-## Ambientes suportados
+## Harnesses suportados
-Doze ambientes em duas categorias — dez CLIs de codificação e dois gateways de chat e assistentes (Hermes, OpenClaw). Mesmos eventos, mesmas políticas, mesmo histórico de sessão, independentemente de qual o seu agente utiliza.
+Doze harnesses em duas categorias — dez CLIs de codificação e dois gateways de chat e assistentes (Hermes, OpenClaw). Mesmos eventos, mesmas políticas, mesmo histórico de sessão, independentemente de qual seu agente utilize.
-Agentes que não rodam em nenhum deles reportam por meio do [Python SDK](https://docs.befailproof.ai/reference/custom-agents), que oferece rastreamento, sessões e auditorias. Para aplicar controles nesses casos, é necessário um hook no seu próprio runtime — [fale conosco](mailto:support@befailproof.ai) e mapeamos juntos.
+Agentes que não rodam em nenhum deles reportam através do [Python SDK](https://docs.befailproof.ai/reference/custom-agents), que oferece rastreamento, sessões e auditorias. A aplicação de políticas nesses casos requer um hook no seu próprio runtime — [fale conosco](mailto:support@befailproof.ai) e mapeamos juntos.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,11 +135,11 @@ Agentes que não rodam em nenhum deles reportam por meio do [Python SDK](https:/
```sh
npm install -g failproofai
-failproofai policies --install # ou apenas execute `failproofai` e aceite o prompt da primeira execução
+failproofai policies --install # ou simplesmente rode `failproofai` e aceite o prompt da primeira execução
failproofai
```
-40 políticas embutidas são ativadas imediatamente. Dashboard em `localhost:8020`. Desative o prompt da primeira execução com `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 políticas integradas são ativadas imediatamente. Dashboard em `localhost:8020`. Desative o prompt da primeira execução com `FAILPROOFAI_NO_FIRST_RUN=1`.
---
@@ -147,25 +147,25 @@ failproofai
| Política | O que bloqueia |
|---|---|
-| `sanitize-api-keys` | Vazamento de chaves de API para o contexto do agente |
-| `block-env-files` | Leitura de `.env` e outros arquivos com segredos |
-| `warn-repeated-tool-calls` | O agente entrando em loop na mesma chamada |
-| `block-sudo` | Escalada de privilégios |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` sem cláusula WHERE |
+| `sanitize-api-keys` | Vazamento de chaves de API no contexto do agente |
+| `block-env-files` | Leitura de arquivos `.env` e outros arquivos com segredos |
+| `warn-repeated-tool-calls` | O agente em loop na mesma chamada |
+| `block-sudo` | Escalação de privilégios |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` sem cláusula `WHERE` |
| `block-terraform` / `block-kubectl` | Alterações não revisadas em infraestrutura em produção |
| `block-rm-rf` | Exclusão recursiva de arquivos |
| `block-force-push` / `block-push-master` | `git push --force`, pushes diretos para `main` |
-As cinco primeiras se aplicam a qualquer agente que possa chamar uma ferramenta. As três últimas são as favoritas dos desenvolvedores — CLIs de codificação são a categoria de ambiente em que temos a cobertura mais profunda.
+As primeiras cinco se aplicam a qualquer agente que possa chamar uma ferramenta. As três últimas são as favoritas dos desenvolvedores — CLIs de codificação são a categoria de harness que cobrimos com mais profundidade.
-→ [Todas as 40 políticas embutidas](https://docs.befailproof.ai/policies/builtin)
+→ [Todas as 39 políticas integradas](https://docs.befailproof.ai/policies/builtin)
---
## Suas próprias políticas
-Coloque um arquivo em `.failproofai/policies/` — ele é carregado automaticamente, sem necessidade de flags.
-Faça commit e toda a equipe recebe na próxima atualização.
+Coloque um arquivo em `.failproofai/policies/` — ele é carregado automaticamente, sem flags adicionais.
+Faça commit e toda a equipe receberá na próxima atualização.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -186,7 +186,7 @@ Três decisões disponíveis para cada política:
| Decisão | Efeito |
|---|---|
| `allow()` | Permite a operação |
-| `deny(message)` | Bloqueia — a mensagem é devolvida ao agente |
+| `deny(message)` | Bloqueia — a mensagem é enviada de volta ao agente |
| `instruct(message)` | Deixa passar, mas adiciona contexto ao próximo prompt do agente |
→ [Guia de políticas personalizadas](https://docs.befailproof.ai/policies/custom)
@@ -195,19 +195,19 @@ Três decisões disponíveis para cada política:
## Observabilidade
-Controle é uma metade. A outra é enxergar o que o agente realmente fez.
+A aplicação de políticas é uma metade. A outra metade é enxergar o que o agente realmente fez.
-Execute `failproofai` sem argumentos e ele serve um dashboard em `localhost:8020` lendo o histórico de execuções já disponível na sua máquina — sem conta, sem cadastro, nada sai do seu ambiente. Você tem a lista de sessões, a sequência de chamadas ao modelo, chamadas de ferramenta e decisões de hook dentro de cada execução, o que foi bloqueado e o que a política disse ao agente, além de uma auditoria offline (`failproofai audit`) que varre seu histórico em busca de padrões arriscados e sugere políticas para contê-los.
+Execute `failproofai` sem argumentos e ele servirá um dashboard em `localhost:8020` lendo o histórico de execuções já presente na sua máquina — sem conta, sem cadastro, sem nada sair do ambiente. Você tem a lista de sessões, a sequência de chamadas de modelo, chamadas de ferramentas e decisões de hook em cada execução, o que foi bloqueado e o que a política comunicou ao agente, além de uma auditoria offline (`failproofai audit`) que analisa seu histórico em busca de padrões de risco e sugere políticas para contê-los.
→ [Dashboard local](https://docs.befailproof.ai/reference/local-dashboard) ·
[Lendo um trace](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Auditoria local](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** é o lado hospedado do mesmo modelo de dados, para equipes que rodam agentes em múltiplas máquinas: todas as execuções de todos os ambientes em um só lugar, um grafo de execução com sub-agentes paralelos em suas próprias raias, latência p50/p95/p99 para modelos, ferramentas e hooks, rastreamento de custo e janela de contexto por modelo, rastreamento de erros, SQL sobre seus próprios traces com dashboards compartilháveis, avaliações pontuadas pelo seu próprio serviço, auditorias agendadas que transformam falhas recorrentes em descobertas com evidências, e alertas roteados para Slack, e-mail ou um webhook assinado. Auto-hospedagem no seu próprio cluster está disponível no plano Enterprise.
+**Failproof AI Observability** é a versão hospedada do mesmo modelo de dados, para equipes que rodam agentes em uma frota: todas as execuções de todos os harnesses em um só lugar, um grafo de execução com sub-agentes paralelos em suas próprias faixas, latência p50/p95/p99 para modelos, ferramentas e hooks, rastreamento de custo e janela de contexto por modelo, rastreamento de erros, SQL sobre seus próprios traces com dashboards compartilháveis, avaliações pontuadas pelo seu próprio serviço, auditorias agendadas que transformam falhas recorrentes em achados embasados em evidências, e alertas roteados para Slack, e-mail ou um webhook assinado. Auto-hospedagem no seu próprio cluster está disponível no plano Enterprise.
→ [Sessões](https://docs.befailproof.ai/sessions/overview) ·
[Auditorias](https://docs.befailproof.ai/audits/overview) ·
-[Agende uma demo](https://befailproof.ai/get-a-demo)
+[Agendar uma demo](https://befailproof.ai/get-a-demo)
---
@@ -215,33 +215,33 @@ Execute `failproofai` sem argumentos e ele serve um dashboard em `localhost:8020
| Início | |
|---|---|
-| [Quickstart](https://docs.befailproof.ai/start/quickstart) | Instale, conecte um ambiente e veja a primeira execução |
+| [Quickstart](https://docs.befailproof.ai/start/quickstart) | Instale, conecte um harness, veja a primeira execução |
| [Conceitos](https://docs.befailproof.ai/start/concepts) | Como o sistema de hooks funciona |
-| [Ambientes suportados](https://docs.befailproof.ai/reference/harnesses) | Todos os 12 e o que cada um pode controlar |
+| [Harnesses suportados](https://docs.befailproof.ai/reference/harnesses) | Todos os 12 e o que cada um pode aplicar |
| Observar | |
|---|---|
| [Sessões](https://docs.befailproof.ai/sessions/overview) | Acompanhe uma execução: modelos, ferramentas, erros, latência |
-| [Lendo um trace](https://docs.befailproof.ai/sessions/read-a-trace) | O que o grafo de execução está te dizendo |
-| [Auditorias](https://docs.befailproof.ai/audits/overview) | Encontre padrões de falha em múltiplas sessões |
+| [Lendo um trace](https://docs.befailproof.ai/sessions/read-a-trace) | O que o grafo de execução está mostrando |
+| [Auditorias](https://docs.befailproof.ai/audits/overview) | Encontre padrões de falha em várias sessões |
| [Dashboard local](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, sem conta necessária |
-| Controlar | |
+| Aplicar políticas | |
|---|---|
-| [Políticas embutidas](https://docs.befailproof.ai/policies/builtin) | Todas as 40 políticas com parâmetros |
+| [Políticas integradas](https://docs.befailproof.ai/policies/builtin) | Todas as 39 políticas com parâmetros |
| [Políticas personalizadas](https://docs.befailproof.ai/policies/custom) | Escreva as suas próprias |
| [Configuração](https://docs.befailproof.ai/policies/local-configuration) | Escopos de configuração e regras de mesclagem |
-| Instrumente seu próprio agente | |
+| Instrumentar seu próprio agente | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Reporte execuções de um agente sem ambiente |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Reporte execuções de um agente sem harness |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Referência de `allow` / `deny` / `instruct` |
---
## Licença
-MIT com [Commons Clause](https://commonsclause.com/) — gratuito para uso interno e pessoal; a revenda comercial do failproofai em si requer um acordo separado. Veja [LICENSE](../../LICENSE) para o texto completo.
+MIT com [Commons Clause](https://commonsclause.com/) — gratuito para uso interno e pessoal; a revenda comercial do próprio failproofai requer um acordo separado. Veja [LICENSE](../../LICENSE) para o texto completo.
---
@@ -249,7 +249,7 @@ MIT com [Commons Clause](https://commonsclause.com/) — gratuito para uso inter
Veja [CONTRIBUTING.md](../../CONTRIBUTING.md). Novas políticas, casos extremos e traduções são bem-vindos.
-> **Faça o build antes de começar.** Execute `bun install && bun run build` primeiro. Este repositório roda os próprios hooks do failproofai sobre si mesmo, e eles resolvem o import `failproofai` contra o bundle compilado em `dist/` — sem um build, você vai encontrar erros de hook com `Cannot find package 'failproofai'`. Refaça o build após alterar `src/`. Veja
+> **Faça o build antes de começar.** Execute `bun install && bun run build` primeiro. Este repositório roda os próprios hooks do failproofai sobre si mesmo, e eles resolvem o import `failproofai` contra o bundle compilado em `dist/` — sem um build você encontrará erros de hook `Cannot find package 'failproofai'`. Reconstrua após alterar `src/`. Veja
> [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
diff --git a/docs/i18n/README.ru.md b/docs/i18n/README.ru.md
index e3e98882..bd7213f8 100644
--- a/docs/i18n/README.ru.md
+++ b/docs/i18n/README.ru.md
@@ -20,8 +20,8 @@
**Переводы:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Видимость и контроль для каждого окружения, в котором работают ваши агенты.**
-Где бы ни работали ваши агенты, мы это видим — и можем сказать нет. failproofai подключается к 12 окружениям агентов — coding CLI, таким как Claude Code и Codex, шлюзам чата, таким как Hermes, самостоятельным помощникам, таким как OpenClaw — перехватывая каждый запуск и блокируя опасные вызовы инструментов перед их выполнением. 40 встроенных политик. Нулевая задержка. Работает локально.
+**Наблюдаемость и контроль для каждой платформы, на которой работают ваши агенты.**
+Где бы ни работали ваши агенты, мы видим это — и мы можем остановить опасные действия. Failproof интегрируется с 12 платформами для запуска агентов — от кодовых CLI, таких как Claude Code и Codex, до шлюзов чатов, таких как Hermes, и самостоятельных ассистентов, таких как OpenClaw — перехватывая каждый запуск и блокируя опасные вызовы инструментов до их выполнения. 39 встроенных политик. Нулевая задержка. Работает локально.
@@ -31,11 +31,12 @@
---
-## Поддерживаемые окружения
+## Поддерживаемые платформы
-Двенадцать окружений в двух категориях — десять coding CLI и два шлюза для чата и ассистентов (Hermes, OpenClaw). Одни и те же события, одни и те же политики, одна и та же история сессий, независимо от того, в каком из них работает ваш агент.
+Двенадцать платформ в двух классах — десять кодовых CLI и два шлюза для чатов и ассистентов (Hermes, OpenClaw). Одни и те же события, одни и те же политики, одна и та же история сеансов, независимо от платформы, на которой работает ваш агент.
-Агенты, работающие ни в одном из них, отправляют отчеты через [Python SDK](https://docs.befailproof.ai/reference/custom-agents), который дает вам трассировку, сессии и аудит. Контроль там требует подключения в вашем собственном рантайме — [свяжитесь с нами](mailto:support@befailproof.ai) и мы его настроим.
+Агенты, работающие ни на одной из них, отправляют отчёты через [Python SDK](https://docs.befailproof.ai/reference/custom-agents),
+который предоставляет вам трассировку, сеансы и аудиты. Контроль там требует подключения в вашей собственной среде выполнения — [свяжитесь с нами](mailto:support@befailproof.ai) и мы поможем.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,36 +136,36 @@
```sh
npm install -g failproofai
-failproofai policies --install # или просто запустите `failproofai` и примите запрос при первом запуске
+failproofai policies --install # или просто запустите `failproofai` и примите подсказку при первом запуске
failproofai
```
-40 встроенных политик активируются сразу же. Панель управления на `localhost:8020`. Отключите запрос при первом запуске с помощью `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 встроенных политик активируются немедленно. Панель управления доступна на `localhost:8020`. Отключите подсказку при первом запуске с помощью `FAILPROOFAI_NO_FIRST_RUN=1`.
---
-## Что это блокирует
+## Что блокируется
-| Политика | Что она блокирует |
+| Политика | Что блокируется |
|---|---|
-| `sanitize-api-keys` | Утечку API-ключей в контекст агента |
-| `block-env-files` | Чтение файлов `.env` и других секретных файлов |
-| `warn-repeated-tool-calls` | Зацикливание агента на одном и том же вызове |
+| `sanitize-api-keys` | Утечка ключей API в контекст агента |
+| `block-env-files` | Чтение файлов `.env` и других файлов с секретами |
+| `warn-repeated-tool-calls` | Агент зацикливается на одном и том же вызове |
| `block-sudo` | Повышение привилегий |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, неограниченный `DELETE` |
-| `block-terraform` / `block-kubectl` | Непроверенные изменения работающей инфраструктуры |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, неограниченные `DELETE` |
+| `block-terraform` / `block-kubectl` | Непроверенные изменения активной инфраструктуры |
| `block-rm-rf` | Рекурсивное удаление файлов |
-| `block-force-push` / `block-push-master` | `git push --force`, прямые push в `main` |
+| `block-force-push` / `block-push-master` | `git push --force`, прямые толчки в `main` |
-Первые пять применяются к любому агенту, который может вызывать инструмент. Последние три — фавориты разработчиков — coding CLI — это класс окружения, который мы поддерживаем наиболее глубоко.
+Первые пять применяются к любому агенту, который может вызвать инструмент. Последние три — фавориты разработчиков — кодовые CLI — это класс платформ, который мы охватываем наиболее глубоко.
-→ [Все 40 встроенных политик](https://docs.befailproof.ai/policies/builtin)
+→ [Все 39 встроенных политик](https://docs.befailproof.ai/policies/builtin)
---
## Ваши собственные политики
-Просто разместите файл в `.failproofai/policies/` — он загружается автоматически, флаги не требуются.
+Добавьте файл в `.failproofai/policies/` — он загружается автоматически без дополнительных флагов.
Закоммитьте его и вся команда получит его при следующем pull.
```js
@@ -186,26 +187,28 @@ customPolicies.add({
| Решение | Эффект |
|---|---|
| `allow()` | Разрешить операцию |
-| `deny(message)` | Заблокировать её — сообщение вернется агенту |
+| `deny(message)` | Заблокировать — сообщение вернётся агенту |
| `instruct(message)` | Пропустить, но добавить контекст в следующий запрос агента |
→ [Руководство по пользовательским политикам](https://docs.befailproof.ai/policies/custom)
---
-## Видимость
+## Наблюдаемость
-Контроль — это одна половина. Другая половина — это видение того, что на самом деле сделал агент.
+Контроль — это одна половина. Другая половина — видеть, что на самом деле сделал агент.
-Запустите `failproofai` без аргументов и она откроет панель управления на `localhost:8020`, читая историю запусков, уже находящуюся на вашей машине — никакого аккаунта, никакой регистрации, ничего не выходит за границы. Вы получаете список сессий, последовательность вызовов модели, вызовов инструментов и решений подключения в каждом запуске, что было заблокировано и что политика сказала агенту, а также автономный аудит (`failproofai audit`), который сканирует вашу историю на предмет рискованных паттернов и предлагает политики для их остановки.
+Запустите `failproofai` без аргументов и он будет служить панель управления на `localhost:8020`,
+читая историю запусков уже находящуюся на вашей машине — никаких учётных записей, никаких регистраций, ничего не покидает периметр. Вы получаете список сеансов, последовательность вызовов моделей, вызовов инструментов и решений подключений в каждом запуске, что было заблокировано и что политика сообщила агенту, а также автономный аудит (`failproofai audit`), который сканирует вашу историю на предмет рискованных паттернов и предлагает политики для их остановки.
→ [Локальная панель управления](https://docs.befailproof.ai/reference/local-dashboard) ·
[Чтение трассировки](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Локальный аудит](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** — это хостированная часть той же модели данных для команд, работающих с агентами на флоте: каждый запуск от каждого окружения в одном месте, граф выполнения с параллельными под-агентами на своих полосах, латентность p50/p95/p99 для моделей, инструментов и подключений, стоимость на модель и отслеживание окна контекста, отслеживание ошибок, SQL над вашими собственными трассировками с общими панелями управления, оценки, оцениваемые вашим сервисом, запланированные аудиты, которые превращают повторяющиеся сбои в подтвержденные выводы, и оповещения, направляемые в Slack, электронную почту или подписанный вебхук. Самостоятельный хостинг в вашем собственном кластере доступен в плане Enterprise.
+**Failproof AI Observability** — это размещённая сторона той же модели данных, для команд,
+запускающих агентов по всему флоту: каждый запуск от каждой платформы в одном месте, граф выполнения с параллельными под-агентами на их собственных линиях, p50/p95/p99 задержка для моделей, инструментов и подключений, стоимость и отслеживание окна контекста для каждой модели, отслеживание ошибок, SQL по вашим собственным трассам с общими панелями управления, оценки, оценённые вашей собственной службой, запланированные аудиты, которые превращают повторяющиеся сбои в подтверждённые выводы, и оповещения, направленные в Slack, электронную почту или подписанный webhook. Собственное хостирование в вашем собственном кластере доступно в плане Enterprise.
-→ [Сессии](https://docs.befailproof.ai/sessions/overview) ·
+→ [Сеансы](https://docs.befailproof.ai/sessions/overview) ·
[Аудиты](https://docs.befailproof.ai/audits/overview) ·
[Запросить демонстрацию](https://befailproof.ai/get-a-demo)
@@ -215,42 +218,42 @@ customPolicies.add({
| Начало | |
|---|---|
-| [Быстрый старт](https://docs.befailproof.ai/start/quickstart) | Установка, подключение окружения, просмотр первого запуска |
-| [Концепции](https://docs.befailproof.ai/start/concepts) | Как работает система подключения |
-| [Поддерживаемые окружения](https://docs.befailproof.ai/reference/harnesses) | Все 12, и что каждое может контролировать |
+| [Быстрый старт](https://docs.befailproof.ai/start/quickstart) | Установка, подключение платформы, первый запуск |
+| [Концепции](https://docs.befailproof.ai/start/concepts) | Как работает система подключений |
+| [Поддерживаемые платформы](https://docs.befailproof.ai/reference/harnesses) | Все 12 и что может контролировать каждая |
| Наблюдение | |
|---|---|
-| [Сессии](https://docs.befailproof.ai/sessions/overview) | Следите за запуском: модели, инструменты, ошибки, задержка |
+| [Сеансы](https://docs.befailproof.ai/sessions/overview) | Отследите запуск: модели, инструменты, ошибки, задержка |
| [Чтение трассировки](https://docs.befailproof.ai/sessions/read-a-trace) | Что вам говорит граф выполнения |
-| [Аудиты](https://docs.befailproof.ai/audits/overview) | Найдите паттерны сбоев в разных сессиях |
-| [Локальная панель управления](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, аккаунт не требуется |
+| [Аудиты](https://docs.befailproof.ai/audits/overview) | Найдите паттерны сбоев в нескольких сеансах |
+| [Локальная панель управления](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, никакой учётной записи не требуется |
| Контроль | |
|---|---|
-| [Встроенные политики](https://docs.befailproof.ai/policies/builtin) | Все 40 политик с параметрами |
-| [Пользовательские политики](https://docs.befailproof.ai/policies/custom) | Напишите свои собственные |
+| [Встроенные политики](https://docs.befailproof.ai/policies/builtin) | Все 39 политик с параметрами |
+| [Пользовательские политики](https://docs.befailproof.ai/policies/custom) | Напишите свои |
| [Конфигурация](https://docs.befailproof.ai/policies/local-configuration) | Области конфигурации и правила слияния |
-| Подключите свой собственный агент | |
+| Инструмент вашего собственного агента | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Отправляйте запуски от агента без окружения |
-| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Справочник `allow` / `deny` / `instruct` |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Отправляйте отчёты от агента без платформы |
+| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Справка `allow` / `deny` / `instruct` |
---
## Лицензия
-MIT с [Commons Clause](https://commonsclause.com/) — бесплатно для внутреннего и личного использования; коммерческая перепродажа самого failproofai требует отдельного соглашения. Полный текст см. в [LICENSE](../../LICENSE).
+MIT с [Commons Clause](https://commonsclause.com/) — свободна для внутреннего и личного использования; коммерческая перепродажа самого failproofai требует отдельного соглашения. См. [LICENSE](../../LICENSE) для полного текста.
---
## Вклад
-См. [CONTRIBUTING.md](../../CONTRIBUTING.md). Новые политики, граничные случаи и переводы всегда приветствуются.
+Смотрите [CONTRIBUTING.md](../../CONTRIBUTING.md). Новые политики, граничные случаи и переводы приветствуются.
-> **Постройте перед началом работы.** Сначала запустите `bun install && bun run build`. Этот репозиторий запускает собственные подключения failproofai для себя, и они разрешают импорт `failproofai` к скомпилированному пакету `dist/` — без сборки вы получите ошибки подключения `Cannot find package 'failproofai'`. Перестройте после изменения `src/`. См. раздел
-> [Постройте перед тем, как будут работать in-repo dev подключения](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **Постройте перед началом.** Запустите `bun install && bun run build` в первый раз. Этот репозиторий запускает собственные подключения failproofai на себе, и они разрешают импорт `failproofai` для скомпилированного пакета `dist/` — без сборки вы получите ошибки подключения `Cannot find package 'failproofai'`. Перестройте после изменения `src/`. Смотрите
+> [Постройте перед тем, как в-репо девелопер подключения будут работать](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
diff --git a/docs/i18n/README.tr.md b/docs/i18n/README.tr.md
index 7e7cd39f..7558d1b3 100644
--- a/docs/i18n/README.tr.md
+++ b/docs/i18n/README.tr.md
@@ -20,8 +20,8 @@
**Çeviriler:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Ajanların çalıştığı her ortamda gözlemlenebilirlik ve uygulama.**
-Ajanların nerede çalıştığını görebiliriz — ve hayır diyebiliriz. Failproof, Claude Code ve Codex gibi kodlama CLI'ları, Hermes gibi sohbet ağ geçitleri, OpenClaw gibi kendi kendine barındırılan asistanlar olmak üzere 12 ajan ortamını kancalamakta, her çalışmayı yakalamakta ve tehlikeli araç çağrılarını yürütülmeden önce engellemektedir. 40 yerleşik politika. Sıfır gecikme. Yerel olarak çalışır.
+**Aracılarınızın çalıştığı her ortam için gözlemlenebilirlik ve zorlama.**
+Aracılarınız nereye koşarsa koşsun, biz bunu görüyoruz — ve hayır diyebiliriz. Failproof, 12 aracı ortamına bağlanıyor — Claude Code ve Codex gibi kodlama CLIleri, Hermes gibi sohbet ağ geçitleri, OpenClaw gibi kendi kendine barındırılan asistanlar — her çalıştırmayı yakalayarak ve tehlikeli araç çağrılarını yürütülmeden önce engellemeyi sağlıyor. 39 yerleşik politika. Sıfır gecikme. Yerel olarak çalışıyor.
@@ -33,9 +33,9 @@ Ajanların nerede çalıştığını görebiliriz — ve hayır diyebiliriz. Fai
## Desteklenen ortamlar
-İki sınıfta on iki ortam — on kodlama CLI'sı ve iki sohbet ve asistan ağ geçidi (Hermes, OpenClaw). Aynı olaylar, aynı politikalar, aynı oturum geçmişi, ajan hangi ortamda çalışırsa çalışsın.
+İki sınıfta on iki ortam — on kodlama CLIsi ve iki sohbet ile asistan ağ geçidi (Hermes, OpenClaw). Aynı olaylar, aynı politikalar, aynı oturum geçmişi, aracınız nerede çalışırsa çalışsın.
-Bunların hiçbirinde çalışmayan Ajanlar [Python SDK](https://docs.befailproof.ai/reference/custom-agents) aracılığıyla rapor verir; bu size izleme, oturumlar ve denetim yeteneği sağlar. Orada uygulama, kendi çalışma ortamınızda bir kanca gerektirir — [bize yazın](mailto:support@befailproof.ai) ve biz bunu eşleştireceğiz.
+Bunlardan hiçbirinde çalışmayan aracılar, [Python SDK](https://docs.befailproof.ai/reference/custom-agents) aracılığıyla rapor verir. Burada izleme, oturumlar ve denetimler alabilirsiniz. Zorlama burada kendi çalışma zamanınızda bir kanca gerektirir — [bizimle iletişime geçin](mailto:support@befailproof.ai) ve onu harita çizeriz.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -131,41 +131,41 @@ Bunların hiçbirinde çalışmayan Ajanlar [Python SDK](https://docs.befailproo
-## Kurulum
+## Yükleme
```sh
npm install -g failproofai
-failproofai policies --install # veya sadece `failproofai` çalıştırın ve ilk çalıştırma istemini kabul edin
+failproofai policies --install # veya sadece `failproofai` çalıştırın ve ilk çalışma istemine katılın
failproofai
```
-40 yerleşik politika hemen etkinleştirilir. Pano şu adreste bulunur: `localhost:8020`. İlk çalıştırma istemini `FAILPROOFAI_NO_FIRST_RUN=1` ile devre dışı bırakın.
+39 yerleşik politika hemen etkinleştirilir. Kontrol paneli `localhost:8020` adresinde mevcuttur. İlk çalışma istemini `FAILPROOFAI_NO_FIRST_RUN=1` ile devre dışı bırakın.
---
-## Neleri engeller
+## Engellediği neler
-| Politika | Neyi engeller |
+| Politika | Engellediği |
|---|---|
-| `sanitize-api-keys` | API anahtarlarının ajanın bağlamına sızması |
+| `sanitize-api-keys` | API anahtarlarının aracının bağlamına sızması |
| `block-env-files` | `.env` ve diğer gizli dosyaların okunması |
-| `warn-repeated-tool-calls` | Ajanın aynı çağrıda döngüye girmesi |
+| `warn-repeated-tool-calls` | Aracının aynı çağrıda döngüye girmesi |
| `block-sudo` | Ayrıcalık yükseltme |
-| `warn-destructive-sql` | `DROP`, `TRUNCATE`, sınırsız `DELETE` |
-| `block-terraform` / `block-kubectl` | Canlı altyapıya incelenmemiş değişiklikler |
-| `block-rm-rf` | Yinelemeli dosya silme |
-| `block-force-push` / `block-push-master` | `git push --force`, `main` öğesine doğrudan push işlemleri |
+| `warn-destructive-sql` | `DROP`, `TRUNCATE`, sınırlandırılmamış `DELETE` |
+| `block-terraform` / `block-kubectl` | İncelenmemiş canlı altyapı değişiklikleri |
+| `block-rm-rf` | Özyinelemeli dosya silme |
+| `block-force-push` / `block-push-master` | `git push --force`, `main` adresine doğrudan itme |
-İlk beş tanesinin herhangi bir araç çağırabilen ajan için geçerlidir. Son üçü geliştirici favori notları — kodlama CLI'ları, en derinlemesine kapsadığımız ortam sınıfıdır.
+İlk beşi bir araç çağırabilen herhangi bir aracıya uygulanır. Son üçü geliştirici favorileridir — kodlama CLIleri, en derin kapsadığımız ortam sınıfıdır.
-→ [40 yerleşik politikanın tümü](https://docs.befailproof.ai/policies/builtin)
+→ [Tüm 39 yerleşik politika](https://docs.befailproof.ai/policies/builtin)
---
## Kendi politikalarınız
-`.failproofai/policies/` klasörüne bir dosya bırakın — bayrak gerekli olmaksızın otomatik olarak yüklenir.
-İşleyin ve tüm takım bunu sonraki pull'da alır.
+`.failproofai/policies/` klasörüne bir dosya bırakın — otomatik olarak yüklenir, hiçbir bayrak gerekmez.
+Bunu commitleyin ve tüm takım sonraki pull'da alır.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -175,19 +175,19 @@ customPolicies.add({
match: { events: ["PreToolUse"] },
fn: async (ctx) => {
if (ctx.toolInput?.file_path?.includes("production"))
- return deny("Production yollarına yazma işlemleri engellenir.");
+ return deny("Writings to production paths are blocked.");
return allow();
},
});
```
-Her politika için kullanılabilir üç karar:
+Her politikaya açık üç karar:
| Karar | Etki |
|---|---|
| `allow()` | İşleme izin ver |
-| `deny(message)` | Engelle — ileti ajana geri gider |
-| `instruct(message)` | Bunu geçir, ancak ajanın sonraki istemine bağlam ekle |
+| `deny(message)` | Engelle — mesaj aracıya geri gider |
+| `instruct(message)` | İzin ver, ancak aracının sonraki istemine bağlam ekle |
→ [Özel politikalar rehberi](https://docs.befailproof.ai/policies/custom)
@@ -195,15 +195,15 @@ Her politika için kullanılabilir üç karar:
## Gözlemlenebilirlik
-Uygulama bir yarısı. Diğer yarısı ise ajanın gerçekte ne yaptığını görmektir.
+Zorlama yarısı. Diğer yarısı aracının gerçekten ne yaptığını görmektir.
-`failproofai` parametresiz çalıştırın ve makinenizde zaten bulunan çalışma geçmişini okuyan `localhost:8020` adresinde bir pano sunar — hesap yok, kayıt yok, hiçbir şey kutudan dışarı çıkmaz. Oturum listesini, model çağrılarının sırasını, her çalışma içindeki araç çağrılarını ve kanca kararlarını, neyin engellendiğini ve politikanın ajana söylediklerini, ve risky desenleri için çalışma geçmişinizi taraması yapan ve onları durdurmak için politikalar önerenin çevrimdışı denetimini (`failproofai audit`) alırsınız.
+`failproofai`'yi hiçbir argüman olmadan çalıştırın ve `localhost:8020` adresinde zaten makinenizde bulunan çalışma geçmişini okuyan bir kontrol paneli sunar — hesap yok, kaydolma yok, kutunun dışına çıkan hiçbir şey yok. Oturum listesini, her çalıştırma içindeki model çağrılarının, araç çağrılarının ve kanca kararlarının sırasını, bloke edilen şeyi ve politikanın aracıya söylediğini alırsınız ve geçmişinizi taraması ve önlemek için politikalar önermesi gereken çevrimdışı bir denetim (`failproofai audit`) alırsınız.
-→ [Yerel pano](https://docs.befailproof.ai/reference/local-dashboard) ·
-[İz oku](https://docs.befailproof.ai/sessions/read-a-trace) ·
+→ [Yerel kontrol paneli](https://docs.befailproof.ai/reference/local-dashboard) ·
+[İzleme okuyun](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Yerel denetim](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Gözlemlenebilirliği**, bir filo arasında ajanlar çalıştıran takımlar için aynı veri modelinin barındırılan tarafıdır: her ortamdan her çalışma tek bir yerde, kendi şeritlerinde paralel alt-ajanlar içeren bir yürütme grafiği, modeller, araçlar ve kancalar için p50/p95/p99 gecikmesi, model başına maliyet ve bağlam penceresi izlemesi, hata izlemesi, kendi izlemeleri üzerinden SQL paylaşılabilir panolarla, kendi hizmetiniz tarafından puanlandırılan değerlendirmeler, yinelenen hataları kanıta dayalı bulgulara dönüştüren planlanan denetimler ve Slack, e-posta veya imzalı webhooks'a yönlendirilen uyarılar. Kendi kümenizde kendi kendine barındırma, Enterprise planında kullanılabilir.
+**Failproof AI Gözlemlenebilirlik**, aynı veri modelinin barındırılan tarafıdır, bir filo genelinde aracılar çalıştıran ekipler için: her ortamdan her çalıştırma tek bir yerde, kendi şeritlerinde paralel alt aracıları olan bir yürütme grafiği, modeller, araçlar ve kancalar için p50/p95/p99 gecikme süresi, model başına maliyet ve bağlam penceresi izlemesi, hata izlemesi, kendi izlemeleriniz üzerinde SQL ve paylaşılabilir kontrol panelleri, kendi hizmetiniz tarafından puanlanan değerlendirmeler, tekrarlayan hataları kanıta dayalı bulgulara dönüştüren planlanan denetimler ve Slack, e-posta veya imzalı bir webhook'a yönlendirilen uyarılar. Kendi kümenizde kendi kendine barındırma, Kurumsal planda mevcuttur.
→ [Oturumlar](https://docs.befailproof.ai/sessions/overview) ·
[Denetimler](https://docs.befailproof.ai/audits/overview) ·
@@ -211,46 +211,47 @@ Uygulama bir yarısı. Diğer yarısı ise ajanın gerçekte ne yaptığını g
---
-## Belgeleme
+## Dokümantasyon
-| Başlangıç | |
+| Başlayın | |
|---|---|
-| [Hızlı başlangıç](https://docs.befailproof.ai/start/quickstart) | Kurulum yapın, bir ortamı bağlayın, ilk çalışmayı görün |
+| [Hızlı başlangıç](https://docs.befailproof.ai/start/quickstart) | Yükleme, bir ortam bağlama, ilk çalıştırmayı görme |
| [Kavramlar](https://docs.befailproof.ai/start/concepts) | Kanca sistemi nasıl çalışır |
-| [Desteklenen ortamlar](https://docs.befailproof.ai/reference/harnesses) | Tümü 12 ve her birinin uygulayabileceği |
+| [Desteklenen ortamlar](https://docs.befailproof.ai/reference/harnesses) | Tüm 12'si ve her birinin zorlayabileceği şey |
-| Gözlemleyin | |
+| Gözlemle | |
|---|---|
-| [Oturumlar](https://docs.befailproof.ai/sessions/overview) | Bir çalışmayı izleyin: modeller, araçlar, hatalar, gecikme |
-| [İz oku](https://docs.befailproof.ai/sessions/read-a-trace) | Yürütme grafiği size ne anlatıyor |
-| [Denetimler](https://docs.befailproof.ai/audits/overview) | Birçok oturumdaki başarısızlık desenleri bulun |
-| [Yerel pano](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, hesap gerekli değil |
+| [Oturumlar](https://docs.befailproof.ai/sessions/overview) | Bir çalıştırmayı takip et: modeller, araçlar, hatalar, gecikme |
+| [İzleme okuyun](https://docs.befailproof.ai/sessions/read-a-trace) | Yürütme grafiği size ne söylüyor |
+| [Denetimler](https://docs.befailproof.ai/audits/overview) | Birçok oturumda hata desenlerini bulun |
+| [Yerel kontrol paneli](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, hesap gerekli değil |
-| Uygulayın | |
+| Zorla | |
|---|---|
-| [Yerleşik politikalar](https://docs.befailproof.ai/policies/builtin) | Tüm 40 politika parametrelerle |
-| [Özel politikalar](https://docs.befailproof.ai/policies/custom) | Kendinizinkini yazın |
+| [Yerleşik politikalar](https://docs.befailproof.ai/policies/builtin) | Tüm 39 politika parametrelerle |
+| [Özel politikalar](https://docs.befailproof.ai/policies/custom) | Kendi yazınızı yazın |
| [Yapılandırma](https://docs.befailproof.ai/policies/local-configuration) | Yapılandırma kapsamları ve birleştirme kuralları |
-| Kendi ajanınızı enstrüman edin | |
+| Kendi aracınızı enstrüman edin | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Ortamı olmayan bir ajanın çalışmalarını raporlayın |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Ortamı olmayan bir aracıdan çalıştırmaları rapor edin |
| [Politika SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` başvurusu |
---
## Lisans
-MIT ile [Commons Clause](https://commonsclause.com/) — dahili ve kişisel kullanım için ücretsiz; failproofai'nin kendisinin ticari yeniden satışı ayrı bir anlaşma gerektirir. Tam metin için [LICENSE](../../LICENSE) dosyasına bakın.
+[Commons Clause](https://commonsclause.com/) ile MIT — dahili ve kişisel kullanım için ücretsiz; failproofai'nın kendisinin ticari olarak yeniden satılması ayrı bir anlaşma gerektirir. Tam metin için [LICENSE](../../LICENSE) adresine bakın.
---
-## Katkı
+## Katkıda bulunma
-[CONTRIBUTING.md](../../CONTRIBUTING.md) dosyasına bakın. Yeni politikalar, kenar durumları ve çeviriler hepsi hoş geldiniz.
+Bkz. [CONTRIBUTING.md](../../CONTRIBUTING.md). Yeni politikalar, kenar durumları ve çeviriler hoş geldiniz.
-> **Başlamadan önce derleyin.** Önce `bun install && bun run build` çalıştırın. Bu depo failproofai'nin kendi kancalarını kendisinde çalıştırır ve bunlar `failproofai` ithalatını derlenmiş `dist/` paketine karşı çözer — derleme olmadan `Cannot find package 'failproofai'` kanca hatalarına çarparsınız. `src/` dosyalarını değiştirdikten sonra yeniden derleyin. Bkz. [In-repo dev kankaları çalışacak şekilde Derle](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
+> **Başlamadan önce inşa edin.** Öncelikle `bun install && bun run build` çalıştırın. Bu depo failproofai'nın kendi kancalarını kendisinde çalıştırır ve bunlar `failproofai` ithalatını derlenmiş `dist/` paketi ile karşılaştırırlar — inşa olmadan `Cannot find package 'failproofai'` kanca hatalarına çarparsınız. `src/` değiştirildikten sonra yeniden inşa edin. Bkz.
+> [İn-repo dev kancaları çalışması için inşa edin](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-San Francisco ve Bengaluru'da [befailproof.ai](https://befailproof.ai) tarafından ❤️ ile yapılmıştır.
+❤️ ile [befailproof.ai](https://befailproof.ai) tarafından SF ve Bengaluru'da inşa edildi.
diff --git a/docs/i18n/README.vi.md b/docs/i18n/README.vi.md
index 2d302fe4..d98cb9b5 100644
--- a/docs/i18n/README.vi.md
+++ b/docs/i18n/README.vi.md
@@ -20,29 +20,29 @@
**Bản dịch:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**Quan sát và thực thi mọi công cụ chạy trên agents của bạn.**
-Bất cứ nơi nào agents chạy, chúng tôi đều thấy được — và chúng tôi có thể từ chối. Failproof kết nối với 12 công cụ agent
-— các CLI lập trình như Claude Code và Codex, các cổng chat như Hermes,
-các trợ lý tự lưu trữ như OpenClaw — ghi lại mọi lần chạy và chặn các lệnh gọi công cụ
-nguy hiểm trước khi chúng thực thi. 40 chính sách được tích hợp sẵn. Độ trễ bằng không. Chạy cục bộ.
+**Quan sát và thực thi cho mỗi công cụ chạy các agents của bạn.**
+Cho dù agents chạy ở đâu, chúng tôi đều nhìn thấy — và chúng tôi có thể từ chối. failproofai kết nối 12 công cụ agent
+— các CLI mã hóa như Claude Code và Codex, các cổng chat như Hermes,
+trợ lý tự lưu trữ như OpenClaw — ghi lại mọi lần chạy và chặn các lệnh gọi công cụ nguy hiểm
+trước khi chúng thực thi. 39 chính sách tích hợp sẵn. Độ trễ bằng không. Chạy cục bộ.
-
+
---
## Các công cụ được hỗ trợ
-Mười hai công cụ trong hai lớp — mười CLI lập trình, và hai cổng chat và trợ lý
-(Hermes, OpenClaw). Cùng các sự kiện, cùng chính sách, cùng lịch sử phiên làm việc,
-bất kể công cụ nào mà agent chạy trên đó.
+Mười hai công cụ trong hai lớp — mười CLI mã hóa và hai cổng chat và trợ lý
+(Hermes, OpenClaw). Các sự kiện giống nhau, các chính sách giống nhau, lịch sử phiên giống nhau,
+bất kể agent của bạn chạy trong công cụ nào.
-Các agents chạy trên không có công cụ nào báo cáo thông qua [Python SDK](https://docs.befailproof.ai/reference/custom-agents),
-nó cung cấp cho bạn tracing, phiên làm việc và kiểm toán. Thực thi ở đó cần một hook trong
-runtime của riêng bạn — [hãy liên hệ với chúng tôi](mailto:support@befailproof.ai) và chúng tôi sẽ ánh xạ nó.
+Các agents chạy trong không có công cụ nào báo cáo thông qua [Python SDK](https://docs.befailproof.ai/reference/custom-agents),
+cung cấp cho bạn tracing, phiên và kiểm toán. Thực thi ở đó cần một hook trong
+runtime của riêng bạn — [liên hệ với chúng tôi](mailto:support@befailproof.ai) và chúng tôi sẽ ánh xạ nó.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -146,7 +146,7 @@ failproofai policies --install # hoặc chỉ chạy `failproofai` và chấp
failproofai
```
-40 chính sách được tích hợp sẵn sẽ kích hoạt ngay lập tức. Bảng điều khiển tại `localhost:8020`. Vô hiệu hóa lời nhắc lần đầu bằng `FAILPROOFAI_NO_FIRST_RUN=1`.
+39 chính sách tích hợp sẵn được kích hoạt ngay lập tức. Dashboard tại `localhost:8020`. Vô hiệu hóa lời nhắc lần đầu với `FAILPROOFAI_NO_FIRST_RUN=1`.
---
@@ -155,25 +155,25 @@ failproofai
| Chính sách | Những gì nó chặn |
|---|---|
| `sanitize-api-keys` | Các khóa API rò rỉ vào ngữ cảnh của agent |
-| `block-env-files` | Đọc các tệp `.env` và các tệp bí mật khác |
-| `warn-repeated-tool-calls` | Agent lặp lại trên cùng một lệnh gọi |
-| `block-sudo` | Nâng cao đặc quyền |
+| `block-env-files` | Đọc các tệp `.env` và tệp bí mật khác |
+| `warn-repeated-tool-calls` | Agent lặp lại cùng một lệnh gọi |
+| `block-sudo` | Nâng cao quyền hạn |
| `warn-destructive-sql` | `DROP`, `TRUNCATE`, `DELETE` không giới hạn |
| `block-terraform` / `block-kubectl` | Các thay đổi không được xem xét đối với cơ sở hạ tầng trực tiếp |
| `block-rm-rf` | Xóa tệp đệ quy |
-| `block-force-push` / `block-push-master` | `git push --force`, các lần đẩy trực tiếp đến `main` |
+| `block-force-push` / `block-push-master` | `git push --force`, đẩy trực tiếp đến `main` |
-Năm chính sách đầu tiên áp dụng cho bất kỳ agent nào có thể gọi một công cụ. Ba chính sách cuối cùng là những yêu thích
-của nhà phát triển — CLI lập trình là lớp công cụ mà chúng tôi bao phủ sâu nhất.
+Năm cái đầu tiên áp dụng cho bất kỳ agent nào có thể gọi một công cụ. Ba cái cuối cùng là
+những yêu thích của nhà phát triển — CLI mã hóa là lớp công cụ chúng tôi bao phủ sâu nhất.
-→ [Tất cả 40 chính sách được tích hợp sẵn](https://docs.befailproof.ai/policies/builtin)
+→ [Tất cả 39 chính sách tích hợp sẵn](https://docs.befailproof.ai/policies/builtin)
---
-## Chính sách của riêng bạn
+## Các chính sách của riêng bạn
-Thả một tệp vào `.failproofai/policies/` — nó sẽ tải tự động, không cần bất kỳ cờ nào.
-Commit nó và toàn bộ đội sẽ nhận được nó khi kéo xuống tiếp theo.
+Thả một tệp vào `.failproofai/policies/` — nó tải tự động, không cần cờ nào.
+Cam kết nó và toàn bộ nhóm của bạn sẽ nhận được nó vào lần kéo tiếp theo.
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -189,44 +189,45 @@ customPolicies.add({
});
```
-Ba quyết định có sẵn cho mọi chính sách:
+Ba quyết định có sẵn cho mỗi chính sách:
-| Quyết định | Hiệu quả |
+| Quyết định | Hiệu ứng |
|---|---|
| `allow()` | Cho phép hoạt động |
-| `deny(message)` | Chặn nó — tin nhắn quay lại agent |
-| `instruct(message)` | Cho phép nó tiếp tục, nhưng thêm ngữ cảnh vào lời nhắc tiếp theo của agent |
+| `deny(message)` | Chặn nó — tin nhắn quay trở lại agent |
+| `instruct(message)` | Cho phép nó, nhưng thêm ngữ cảnh vào lời nhắc tiếp theo của agent |
→ [Hướng dẫn chính sách tùy chỉnh](https://docs.befailproof.ai/policies/custom)
---
-## Khả năng quan sát
+## Quan sát
-Thực thi là một nửa. Nửa còn lại là thấy được agent thực sự đã làm gì.
+Thực thi là một nửa. Nửa còn lại là nhìn thấy những gì agent thực sự đã làm.
-Chạy `failproofai` không có đối số và nó phục vụ một bảng điều khiển trên `localhost:8020`
+Chạy `failproofai` mà không có đối số và nó phục vụ một dashboard trên `localhost:8020`
đọc lịch sử chạy đã có trên máy của bạn — không có tài khoản, không có đăng ký, không có gì
-rời khỏi hộp. Bạn nhận được danh sách phiên, trình tự các lệnh gọi mô hình, lệnh gọi công cụ
-và quyết định hook bên trong mỗi lần chạy, những gì bị chặn và chính sách nói với agent, và một kiểm toán ngoại tuyến (`failproofai audit`) quét lịch sử của bạn để tìm các mẫu rủi ro
-và gợi ý các chính sách để ngăn chặn chúng.
+rời khỏi hộp. Bạn nhận được danh sách phiên, chuỗi các lệnh gọi mô hình, các lệnh gọi công cụ
+và quyết định hook bên trong mỗi lần chạy, những gì bị chặn và những gì chính sách đã nói với agent,
+và kiểm toán ngoại tuyến (`failproofai audit`) quét lịch sử của bạn để tìm các mô hình rủi ro
+và đề xuất các chính sách để ngăn chặn chúng.
-→ [Bảng điều khiển cục bộ](https://docs.befailproof.ai/reference/local-dashboard) ·
+→ [Dashboard cục bộ](https://docs.befailproof.ai/reference/local-dashboard) ·
[Đọc một trace](https://docs.befailproof.ai/sessions/read-a-trace) ·
[Kiểm toán cục bộ](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI Observability** là phía lưu trữ của cùng một mô hình dữ liệu, cho các đội
-chạy agents trên một đội: mỗi lần chạy từ mỗi công cụ ở một nơi, biểu đồ thực thi
-với các sub-agents song song trên các làn riêng của chúng, độ trễ p50/p95/p99
-cho mô hình, công cụ và hook, chi phí cho mỗi mô hình và theo dõi cửa sổ ngữ cảnh, theo dõi lỗi, SQL
-trên các trace của riêng bạn với bảng điều khiển có thể chia sẻ, các đánh giá được chấm bởi
-dịch vụ của riêng bạn, các kiểm toán định kỳ biến các lỗi định kỳ thành những phát hiện được hỗ trợ bằng bằng chứng, và các cảnh báo
-được định tuyến đến Slack, email hoặc webhook được ký. Tự lưu trữ trong cluster của riêng bạn
-có sẵn trong gói Enterprise.
+**Failproof AI Observability** là phía được lưu trữ của cùng một mô hình dữ liệu, cho các nhóm
+chạy agents trên một loạt: mỗi lần chạy từ mỗi công cụ ở một nơi, một biểu đồ thực thi
+với các agents phụ song song trên các làn của riêng chúng, độ trễ p50/p95/p99 cho các mô hình, công cụ và hooks,
+chi phí trên mỗi mô hình và theo dõi cửa sổ ngữ cảnh, theo dõi lỗi, SQL trên các traces của riêng bạn
+với các dashboard có thể chia sẻ, các đánh giá được tính điểm bởi dịch vụ của riêng bạn,
+các kiểm toán theo lịch trình biến các lỗi định kỳ thành các kết quả được hỗ trợ bằng bằng chứng,
+và các cảnh báo được định tuyến đến Slack, email hoặc một webhook đã ký. Tự lưu trữ trong
+cụm của riêng bạn có sẵn trong gói Enterprise.
-→ [Phiên làm việc](https://docs.befailproof.ai/sessions/overview) ·
+→ [Phiên](https://docs.befailproof.ai/sessions/overview) ·
[Kiểm toán](https://docs.befailproof.ai/audits/overview) ·
-[Đặt lịch demo](https://befailproof.ai/get-a-demo)
+[Đặt một buổi demo](https://befailproof.ai/get-a-demo)
---
@@ -234,46 +235,46 @@ có sẵn trong gói Enterprise.
| Bắt đầu | |
|---|---|
-| [Hướng dẫn nhanh](https://docs.befailproof.ai/start/quickstart) | Cài đặt, kết nối một công cụ, xem lần chạy đầu tiên |
-| [Khái niệm](https://docs.befailproof.ai/start/concepts) | Cách hệ thống hook hoạt động |
-| [Các công cụ được hỗ trợ](https://docs.befailproof.ai/reference/harnesses) | Tất cả 12, và những gì mỗi công cụ có thể thực thi |
+| [Quickstart](https://docs.befailproof.ai/start/quickstart) | Cài đặt, kết nối một công cụ, xem lần chạy đầu tiên |
+| [Khái niệm](https://docs.befailproof.ai/start/concepts) | Hệ thống hook hoạt động như thế nào |
+| [Các công cụ được hỗ trợ](https://docs.befailproof.ai/reference/harnesses) | Tất cả 12, và những gì mỗi cái có thể thực thi |
| Quan sát | |
|---|---|
-| [Phiên làm việc](https://docs.befailproof.ai/sessions/overview) | Theo dõi một lần chạy: mô hình, công cụ, lỗi, độ trễ |
-| [Đọc một trace](https://docs.befailproof.ai/sessions/read-a-trace) | Những gì biểu đồ thực thi đang cho bạn biết |
-| [Kiểm toán](https://docs.befailproof.ai/audits/overview) | Tìm các mẫu lỗi trên nhiều phiên |
-| [Bảng điều khiển cục bộ](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, không cần tài khoản |
+| [Phiên](https://docs.befailproof.ai/sessions/overview) | Theo dõi một lần chạy: mô hình, công cụ, lỗi, độ trễ |
+| [Đọc một trace](https://docs.befailproof.ai/sessions/read-a-trace) | Biểu đồ thực thi đang nói với bạn điều gì |
+| [Kiểm toán](https://docs.befailproof.ai/audits/overview) | Tìm các mô hình lỗi trên nhiều phiên |
+| [Dashboard cục bộ](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`, không cần tài khoản |
| Thực thi | |
|---|---|
-| [Chính sách được tích hợp sẵn](https://docs.befailproof.ai/policies/builtin) | Tất cả 40 chính sách với các tham số |
-| [Chính sách tùy chỉnh](https://docs.befailproof.ai/policies/custom) | Viết chính sách của riêng bạn |
-| [Cấu hình](https://docs.befailproof.ai/policies/local-configuration) | Phạm vi cấu hình và quy tắc hợp nhất |
+| [Chính sách tích hợp sẵn](https://docs.befailproof.ai/policies/builtin) | Tất cả 39 chính sách với các tham số |
+| [Chính sách tùy chỉnh](https://docs.befailproof.ai/policies/custom) | Viết của riêng bạn |
+| [Cấu hình](https://docs.befailproof.ai/policies/local-configuration) | Các phạm vi cấu hình và quy tắc hợp nhất |
-| Thiết lập agents của riêng bạn | |
+| Công cụ các agent của riêng bạn | |
|---|---|
| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | Báo cáo các lần chạy từ một agent không có công cụ |
-| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Tham khảo `allow` / `deny` / `instruct` |
+| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | Tham chiếu `allow` / `deny` / `instruct` |
---
## Giấy phép
-MIT với [Commons Clause](https://commonsclause.com/) — miễn phí để sử dụng nội bộ và cá nhân; bán lại failproofai yêu cầu một thỏa thuận riêng. Xem [LICENSE](../../LICENSE) để biết toàn bộ văn bản.
+MIT với [Commons Clause](https://commonsclause.com/) — miễn phí cho mục đích sử dụng nội bộ và cá nhân; bán lại thương mại của failproofai yêu cầu một thỏa thuận riêng biệt. Xem [LICENSE](../../LICENSE) để xem toàn bộ văn bản.
---
## Đóng góp
-Xem [CONTRIBUTING.md](../../CONTRIBUTING.md). Các chính sách mới, trường hợp cạnh và bản dịch đều được chào đón.
+Xem [CONTRIBUTING.md](../../CONTRIBUTING.md). Các chính sách mới, trường hợp cạnh và bản dịch đều được hoan nghênh.
-> **Build trước khi bạn bắt đầu.** Chạy `bun install && bun run build` trước. Repo này chạy
-> các hook của failproofai trên chính nó, và chúng giải quyết import `failproofai` dựa trên
-> bundled `dist/` được biên dịch — nếu không có build bạn sẽ gặp lỗi hook `Cannot find package 'failproofai'`.
-> Xây dựng lại sau khi thay đổi `src/`. Xem
+> **Xây dựng trước khi bạn bắt đầu.** Chạy `bun install && bun run build` trước tiên. Repo này chạy
+> các hook của failproofai trên chính nó, và chúng phân giải import `failproofai` dựa trên
+> gói đã biên dịch `dist/` — mà không có bản dựng bạn sẽ gặp lỗi hook
+> `Cannot find package 'failproofai'`. Xây dựng lại sau khi thay đổi `src/`. Xem
> [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work).
---
-Xây dựng với ❤️ bởi [befailproof.ai](https://befailproof.ai) tại SF và Bengaluru.
+Được xây dựng với ❤️ bởi [befailproof.ai](https://befailproof.ai) ở SF và Bengaluru.
diff --git a/docs/i18n/README.zh.md b/docs/i18n/README.zh.md
index a7799b29..ec890d09 100644
--- a/docs/i18n/README.zh.md
+++ b/docs/i18n/README.zh.md
@@ -20,8 +20,8 @@
**翻译版本:** [简体中文](../../docs/i18n/README.zh.md) · [日本語](../../docs/i18n/README.ja.md) · [한국어](../../docs/i18n/README.ko.md) · [Español](../../docs/i18n/README.es.md) · [Português](../../docs/i18n/README.pt-br.md) · [Deutsch](../../docs/i18n/README.de.md) · [Français](../../docs/i18n/README.fr.md) · [Русский](../../docs/i18n/README.ru.md) · [हिन्दी](../../docs/i18n/README.hi.md) · [Türkçe](../../docs/i18n/README.tr.md) · [Tiếng Việt](../../docs/i18n/README.vi.md) · [Italiano](../../docs/i18n/README.it.md) · [العربية](../../docs/i18n/README.ar.md) · [עברית](../../docs/i18n/README.he.md)
-**为每一个 Agent 运行环境提供可观测性与执行管控。**
-无论你的 Agent 在哪里运行,我们都能看到——并且可以说不。Failproof 接入了 12 个 Agent 运行框架——包括 Claude Code、Codex 等编程 CLI,Hermes 等聊天网关,以及 OpenClaw 等自托管助手——捕获每一次运行,并在危险工具调用执行前将其拦截。40 条内置策略,零延迟,本地运行。
+**为你的 Agent 在每个执行环境中提供可观测性与执行控制。**
+无论 Agent 在哪里运行,我们都能看见——并且可以说不。Failproof 接入了 12 个 Agent 执行框架——包括 Claude Code、Codex 等编程 CLI,Hermes 等对话网关,以及 OpenClaw 等自托管助手——捕获每一次运行,并在危险工具调用执行前将其拦截。39 条内置策略,零延迟,本地运行。
@@ -31,11 +31,11 @@
---
-## 支持的运行框架
+## 支持的执行框架
-共十二个框架,分为两类——十个编程 CLI,以及两个聊天与助手网关(Hermes、OpenClaw)。无论你的 Agent 运行在哪个框架中,事件、策略和会话历史完全一致。
+共十二个执行框架,分为两类——十个编程 CLI,以及两个对话与助手网关(Hermes、OpenClaw)。无论你的 Agent 运行在哪一个框架中,事件、策略和会话历史完全一致。
-对于未接入上述框架的 Agent,可通过 [Python SDK](https://docs.befailproof.ai/reference/custom-agents) 上报数据,获得追踪、会话和审计能力。在该场景下的执行管控需要在你自己的运行时中植入 hook——[联系我们](mailto:support@befailproof.ai),我们来帮你完成映射。
+若 Agent 不在上述任何框架中运行,可通过 [Python SDK](https://docs.befailproof.ai/reference/custom-agents) 上报数据,获得追踪、会话和审计能力。执行控制则需要在你自己的运行时中集成 hook——[联系我们](mailto:support@befailproof.ai),我们会协助完成映射。
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2×6 at any window width (scrolling on very narrow screens
@@ -135,36 +135,37 @@
```sh
npm install -g failproofai
-failproofai policies --install # 或直接运行 `failproofai` 并在首次运行提示时确认
+failproofai policies --install # 或直接运行 `failproofai` 并接受首次运行提示
failproofai
```
-40 条内置策略立即生效。Dashboard 地址:`localhost:8020`。可通过设置 `FAILPROOFAI_NO_FIRST_RUN=1` 禁用首次运行提示。
+39 条内置策略立即生效。仪表板地址为 `localhost:8020`。可通过设置 `FAILPROOFAI_NO_FIRST_RUN=1` 禁用首次运行提示。
---
-## 拦截范围
+## 它能拦截什么
| 策略 | 拦截内容 |
|---|---|
-| `sanitize-api-keys` | API 密钥泄露到 Agent 上下文 |
+| `sanitize-api-keys` | API 密钥泄漏到 Agent 上下文中 |
| `block-env-files` | 读取 `.env` 及其他密钥文件 |
-| `warn-repeated-tool-calls` | Agent 在同一调用上循环执行 |
+| `warn-repeated-tool-calls` | Agent 在同一调用上陷入循环 |
| `block-sudo` | 权限提升 |
| `warn-destructive-sql` | `DROP`、`TRUNCATE`、无条件 `DELETE` |
| `block-terraform` / `block-kubectl` | 未经审查的生产基础设施变更 |
| `block-rm-rf` | 递归删除文件 |
| `block-force-push` / `block-push-master` | `git push --force`、直接推送到 `main` |
-前五条适用于任何可以调用工具的 Agent,后三条是开发者最爱——编程 CLI 是我们覆盖最深入的框架类型。
+前五条适用于任何能调用工具的 Agent,后三条是开发者最常用的——编程 CLI 是我们覆盖最深的执行框架类别。
-→ [全部 40 条内置策略](https://docs.befailproof.ai/policies/builtin)
+→ [全部 39 条内置策略](https://docs.befailproof.ai/policies/builtin)
---
## 自定义策略
-将文件放入 `.failproofai/policies/` 目录即可自动加载,无需任何参数。提交到代码仓库后,全团队在下次拉取时即可生效。
+在 `.failproofai/policies/` 目录中放入一个文件——它会自动加载,无需任何标志。
+提交到代码仓库后,团队所有成员在下次拉取时即可生效。
```js
import { customPolicies, deny, allow } from "failproofai";
@@ -180,13 +181,13 @@ customPolicies.add({
});
```
-每条策略可使用三种决策:
+每条策略可做出以下三种决策:
| 决策 | 效果 |
|---|---|
| `allow()` | 允许该操作 |
-| `deny(message)` | 拦截操作——消息返回给 Agent |
-| `instruct(message)` | 放行操作,但在 Agent 的下一次提示中附加上下文信息 |
+| `deny(message)` | 拦截它——消息会回传给 Agent |
+| `instruct(message)` | 放行,但在 Agent 的下一个提示中附加上下文 |
→ [自定义策略指南](https://docs.befailproof.ai/policies/custom)
@@ -194,18 +195,18 @@ customPolicies.add({
## 可观测性
-执行管控是一半,另一半是看清 Agent 实际做了什么。
+执行控制是一半,另一半是看清 Agent 究竟做了什么。
-不带任何参数运行 `failproofai`,它会在 `localhost:8020` 启动一个 Dashboard,读取已存储在本机的运行历史——无需账户,无需注册,数据不离开本机。你可以查看会话列表、每次运行中模型调用和工具调用的序列、hook 决策记录、哪些操作被拦截、策略向 Agent 传达了什么,以及离线审计(`failproofai audit`)——它会扫描你的历史记录,发现风险模式并推荐相应策略。
+不带参数运行 `failproofai`,它会在 `localhost:8020` 启动一个仪表板,读取已存储在本机上的运行历史——无需账号、无需注册、数据不离机。你可以查看会话列表、每次运行中模型调用的序列、工具调用和 hook 决策、被拦截的内容以及策略告知 Agent 的信息,还可以进行离线审计(`failproofai audit`),扫描历史记录中的风险模式并推荐相应策略加以防范。
-→ [本地 Dashboard](https://docs.befailproof.ai/reference/local-dashboard) ·
-[读取追踪记录](https://docs.befailproof.ai/sessions/read-a-trace) ·
+→ [本地仪表板](https://docs.befailproof.ai/reference/local-dashboard) ·
+[解读追踪记录](https://docs.befailproof.ai/sessions/read-a-trace) ·
[本地审计](https://docs.befailproof.ai/audits/local-audit)
-**Failproof AI 可观测性**是同一数据模型的托管端,面向在集群中跨多个框架运行 Agent 的团队:所有框架的每次运行集中呈现,带有并行子 Agent 独立泳道的执行图,模型、工具和 hook 的 p50/p95/p99 延迟,按模型的费用和上下文窗口跟踪,错误追踪,基于自有 trace 数据的 SQL 查询与可分享 Dashboard,由你自己的服务评分的评估结果,将重复失败转化为有据可查发现的定时审计,以及路由到 Slack、邮件或签名 Webhook 的告警。在企业版计划中支持在你自己的集群中自托管部署。
+**Failproof AI Observability** 是同一数据模型的托管版本,专为在集群中运行 Agent 的团队而设计:来自所有框架的每次运行都汇聚在一处,执行图以独立泳道展示并行子 Agent,提供模型、工具和 hook 的 p50/p95/p99 延迟数据,按模型统计成本与上下文窗口用量,错误追踪,基于自有追踪数据的 SQL 查询与可分享仪表板,由你自己的服务评分的评估功能,将重复性故障转化为有据可查发现的定期审计,以及路由到 Slack、邮件或签名 Webhook 的告警。Enterprise 计划支持在你自己的集群中自托管。
-→ [Sessions](https://docs.befailproof.ai/sessions/overview) ·
-[Audits](https://docs.befailproof.ai/audits/overview) ·
+→ [会话](https://docs.befailproof.ai/sessions/overview) ·
+[审计](https://docs.befailproof.ai/audits/overview) ·
[预约演示](https://befailproof.ai/get-a-demo)
---
@@ -214,42 +215,42 @@ customPolicies.add({
| 入门 | |
|---|---|
-| [快速开始](https://docs.befailproof.ai/start/quickstart) | 安装、接入框架、查看首次运行结果 |
-| [核心概念](https://docs.befailproof.ai/start/concepts) | Hook 系统的工作原理 |
-| [支持的框架](https://docs.befailproof.ai/reference/harnesses) | 全部 12 个框架及各自的执行管控能力 |
+| [快速开始](https://docs.befailproof.ai/start/quickstart) | 安装、连接执行框架、查看第一次运行 |
+| [核心概念](https://docs.befailproof.ai/start/concepts) | hook 系统的工作原理 |
+| [支持的执行框架](https://docs.befailproof.ai/reference/harnesses) | 全部 12 个,以及每个可执行的控制能力 |
-| 可观测性 | |
+| 观测 | |
|---|---|
-| [Sessions](https://docs.befailproof.ai/sessions/overview) | 跟踪运行过程:模型、工具、错误、延迟 |
-| [读取追踪记录](https://docs.befailproof.ai/sessions/read-a-trace) | 执行图所反映的信息 |
-| [Audits](https://docs.befailproof.ai/audits/overview) | 跨多个会话发现失败模式 |
-| [本地 Dashboard](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`,无需账户 |
+| [会话](https://docs.befailproof.ai/sessions/overview) | 跟踪一次运行:模型、工具、错误、延迟 |
+| [解读追踪记录](https://docs.befailproof.ai/sessions/read-a-trace) | 执行图在告诉你什么 |
+| [审计](https://docs.befailproof.ai/audits/overview) | 在多个会话中发现故障模式 |
+| [本地仪表板](https://docs.befailproof.ai/reference/local-dashboard) | `localhost:8020`,无需账号 |
-| 执行管控 | |
+| 执行控制 | |
|---|---|
-| [内置策略](https://docs.befailproof.ai/policies/builtin) | 全部 40 条策略及参数说明 |
+| [内置策略](https://docs.befailproof.ai/policies/builtin) | 全部 39 条策略及其参数 |
| [自定义策略](https://docs.befailproof.ai/policies/custom) | 编写你自己的策略 |
-| [配置说明](https://docs.befailproof.ai/policies/local-configuration) | 配置作用域与合并规则 |
+| [配置](https://docs.befailproof.ai/policies/local-configuration) | 配置作用域与合并规则 |
-| 接入自定义 Agent | |
+| 接入你自己的 Agent | |
|---|---|
-| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | 为无框架的 Agent 上报运行数据 |
+| [Python SDK](https://docs.befailproof.ai/reference/custom-agents) | 从没有执行框架的 Agent 上报运行数据 |
| [Policy SDK](https://docs.befailproof.ai/reference/policy-sdk) | `allow` / `deny` / `instruct` 参考文档 |
---
## 许可证
-MIT 附加 [Commons Clause](https://commonsclause.com/)——个人和企业内部使用免费;将 failproofai 本身作为商业产品转售需要单独签署协议。完整条款请见 [LICENSE](../../LICENSE)。
+MIT 附加 [Commons Clause](https://commonsclause.com/)——个人和内部使用免费;将 failproofai 本身用于商业转售需另行签订协议。完整条款请参阅 [LICENSE](../../LICENSE)。
---
-## 参与贡献
+## 贡献
-请参阅 [CONTRIBUTING.md](../../CONTRIBUTING.md)。欢迎贡献新策略、边界案例和翻译内容。
+请参阅 [CONTRIBUTING.md](../../CONTRIBUTING.md)。欢迎贡献新策略、边界情况处理和翻译。
-> **开始前请先构建项目。** 请先运行 `bun install && bun run build`。本仓库会将 failproofai 自身的 hook 应用于自己,这些 hook 会从编译后的 `dist/` 包中解析 `failproofai` 模块导入——未执行构建将导致出现 `Cannot find package 'failproofai'` 的 hook 错误。修改 `src/` 后需重新构建。详见 [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work)。
+> **开始前请先构建。** 首先运行 `bun install && bun run build`。本仓库会在自身上运行 failproofai 的 hook,这些 hook 会将 `failproofai` 的导入解析到编译后的 `dist/` 包——如果没有构建,你会遇到 `Cannot find package 'failproofai'` 的 hook 错误。修改 `src/` 后需重新构建。详见 [Build before the in-repo dev hooks will work](../../CONTRIBUTING.md#build-before-the-in-repo-dev-hooks-will-work)。
---
-由 [befailproof.ai](https://befailproof.ai) 团队在旧金山和班加罗尔倾心打造 ❤️。
+由 [befailproof.ai](https://befailproof.ai) 团队在旧金山和班加罗尔用 ❤️ 打造。
diff --git a/docs/it/policies/builtin-catalog.mdx b/docs/it/policies/builtin-catalog.mdx
index 36b79014..80b9b052 100644
--- a/docs/it/policies/builtin-catalog.mdx
+++ b/docs/it/policies/builtin-catalog.mdx
@@ -1,106 +1,110 @@
---
-title: "Catalogo delle politiche integrate"
-description: "Rivedi ogni politica integrata di Failproof AI, il suo trigger, lo stato consigliato e i parametri configurabili."
+title: "Catalogo delle policy builtin"
+description: "Esamina ogni policy builtin di Failproof AI, il suo trigger, lo stato consigliato e i parametri configurabili."
icon: "list-checks"
---
-Il pacchetto installato è la fonte di verità per la disponibilità delle politiche. Esegui `failproofai policies` dopo ogni aggiornamento perché le voci del catalogo e il comportamento possono cambiare con la versione del pacchetto.
+Il pacchetto installato è la fonte di verità per la disponibilità delle policy. Esegui `failproofai policies` dopo ogni aggiornamento perché le voci del catalogo e il comportamento possono cambiare con la versione del pacchetto.
-## Baseline consigliata
+## Configurazione di base consigliata
-La selezione consigliata della configurazione guidata attualmente abilita i sanitizzatori di segreti, le protezioni dell'ambiente, l'auto-protezione, le protezioni dai comandi catastrofici e la sicurezza dei rami protetti:
+La selezione consigliata dalla configurazione guidata abilita attualmente i sanitizzatori di segreti, le protezioni ambientali, l'autoprotection, i guard per i comandi catastrofici e la sicurezza dei rami protetti:
```text
sanitize-jwt sanitize-api-keys
sanitize-connection-strings sanitize-private-key-content
sanitize-bearer-tokens protect-env-vars
block-env-files block-secrets-write
-block-self-pause block-failproofai-commands
-block-sudo block-curl-pipe-sh
-block-rm-rf block-push-master
-block-force-push
+block-failproofai-commands block-sudo
+block-curl-pipe-sh block-rm-rf
+block-push-master block-force-push
```
-La configurazione consigliata è deliberatamente più ristretta di **Everything**. Le politiche infrastrutturali e di workflow possono interrompere il lavoro valido e dovrebbero essere abilitate per i repository e le macchine che ne hanno bisogno.
+`block-failproofai-commands` è **sempre attivo**. È elencato sopra per
+completezza, ma si registra ad ogni valutazione indipendentemente dal fatto che
+appaia nel tuo set abilitato, e non può essere disabilitato o messo in pausa — una
+protezione contro l'agente che disattiva l'enforcement che l'agente potrebbe
+disattivare non è una protezione.
+
+La configurazione consigliata è volutamente più ristretta di **Everything**. Le policy infrastrutturali e di workflow possono interrompere operazioni valide e dovrebbero essere abilitate solo per i repository e le macchine che ne hanno bisogno.
## Segreti e ambiente
-| Politica | Trigger | Risultato |
+| Policy | Trigger | Risultato |
| --- | --- | --- |
-| `sanitize-jwt` | `PostToolUse` | Redige i JWT dall'output dello strumento prima che il modello li veda. |
-| `sanitize-api-keys` | `PostToolUse` | Redige le chiavi comuni di OpenAI, Anthropic, GitHub, AWS, Stripe e Google. |
-| `sanitize-connection-strings` | `PostToolUse` | Redige le stringhe di connessione ai database contenenti credenziali. |
-| `sanitize-private-key-content` | `PostToolUse` | Redige i corpi delle chiavi private PEM. |
-| `sanitize-bearer-tokens` | `PostToolUse` | Redige i token bearer di autorizzazione. |
-| `protect-env-vars` | `PreToolUse` sugli strumenti shell | Blocca i comandi che dumpa le variabili d'ambiente. |
-| `block-env-files` | `PreToolUse` | Blocca le letture e le scritture dei file `.env`. |
-| `block-read-outside-cwd` | `PreToolUse` sugli strumenti read, glob, grep o shell | Mantiene le letture all'interno della directory di lavoro della sessione. |
-| `block-secrets-write` | `PreToolUse` sugli strumenti di scrittura | Blocca le scritture su nomi di file comuni di chiavi segrete e credenziali. |
+| `sanitize-jwt` | `PostToolUse` | Rimuovi i JWT dall'output dello strumento prima che il modello li veda. |
+| `sanitize-api-keys` | `PostToolUse` | Rimuovi le chiavi comuni di OpenAI, Anthropic, GitHub, AWS, Stripe e Google. |
+| `sanitize-connection-strings` | `PostToolUse` | Rimuovi le stringhe di connessione al database contenenti credenziali. |
+| `sanitize-private-key-content` | `PostToolUse` | Rimuovi i corpi delle chiavi private PEM. |
+| `sanitize-bearer-tokens` | `PostToolUse` | Rimuovi i token bearer di autorizzazione. |
+| `protect-env-vars` | `PreToolUse` su strumenti shell | Blocca i comandi che scaricano le variabili di ambiente. |
+| `block-env-files` | `PreToolUse` | Blocca letture e scritture dei file `.env`. |
+| `block-read-outside-cwd` | `PreToolUse` su strumenti read, glob, grep o shell | Mantieni le letture all'interno della directory di lavoro della sessione. |
+| `block-secrets-write` | `PreToolUse` su strumenti di scrittura | Blocca le scritture ai nomi di file di chiavi segrete e credenziali comuni. |
## Comandi pericolosi e infrastruttura
-| Politica | Trigger | Risultato |
+| Policy | Trigger | Risultato |
| --- | --- | --- |
-| `block-self-pause` | `PreToolUse`, `PermissionRequest` | Impedisce a un agente di mettere in pausa la propria applicazione. |
| `block-sudo` | `PreToolUse`, `PermissionRequest` | Blocca `sudo` a meno che un pattern di allow non corrisponda. |
-| `block-curl-pipe-sh` | `PreToolUse` | Blocca gli script scaricati incanalati direttamente a una shell. |
+| `block-curl-pipe-sh` | `PreToolUse` | Blocca gli script scaricati inviati direttamente a una shell. |
| `block-rm-rf` | `PreToolUse` | Blocca i pattern di eliminazione ricorsiva catastrofici. |
-| `block-failproofai-commands` | `PreToolUse` | Impedisce agli agenti di modificare o disinstallare Failproof AI. |
+| `block-failproofai-commands` | `PreToolUse`, `PermissionRequest` | **Sempre attivo, non può essere disabilitato.** Blocca ogni invocazione CLI di Failproof AI, l'auto-pausa e la disinstallazione del package manager. |
| `block-kubectl` | `PreToolUse` | Controlla i comandi Kubernetes. |
| `block-terraform` | `PreToolUse` | Controlla i comandi Terraform e OpenTofu. |
| `block-aws-cli` | `PreToolUse` | Controlla i comandi AWS CLI. |
| `block-gcloud` | `PreToolUse` | Controlla i comandi Google Cloud CLI. |
| `block-az-cli` | `PreToolUse` | Controlla i comandi Azure CLI. |
| `block-helm` | `PreToolUse` | Controlla i comandi Helm. |
-| `block-gh-pipeline` | `PreToolUse` | Controlla le operazioni mutanti di GitHub CLI per workflow, run, merge, release, cache e secret. |
+| `block-gh-pipeline` | `PreToolUse` | Controlla le operazioni mutevoli di GitHub CLI per workflow, run, merge, release, cache e secret. |
-## Sicurezza di Git e database
+## Sicurezza Git e database
-| Politica | Trigger | Risultato |
+| Policy | Trigger | Risultato |
| --- | --- | --- |
| `block-push-master` | `PreToolUse` | Blocca i push diretti ai rami protetti configurati. |
-| `block-force-push` | `PreToolUse` | Blocca i force-push; `--force-with-lease` rimane consentito nell'implementazione attuale. |
-| `block-work-on-main` | `PreToolUse` | Blocca i commit e i merge su rami protetti. |
-| `warn-git-amend` | `PreToolUse` | Avverte prima di riscrivere un commit con `--amend`. |
-| `warn-git-stash-drop` | `PreToolUse` | Avverte prima di eliminare o cancellare permanentemente gli stash. |
-| `warn-all-files-staged` | `PreToolUse` | Avverte su `git add -A`, `git add .` o `git add --all` ampi. |
-| `warn-destructive-sql` | `PreToolUse` | Avverte su `DROP`, `TRUNCATE` e `DELETE` senza `WHERE` attraverso client di database riconosciuti. |
-| `warn-schema-alteration` | `PreToolUse` | Avverte su operazioni di rinomina e colonne `ALTER TABLE` riconosciute. |
+| `block-force-push` | `PreToolUse` | Blocca i force-push; `--force-with-lease` rimane consentito dall'implementazione attuale. |
+| `block-work-on-main` | `PreToolUse` | Blocca i commit e i merge sui rami protetti. |
+| `warn-git-amend` | `PreToolUse` | Avvisa prima di riscrivere un commit con `--amend`. |
+| `warn-git-stash-drop` | `PreToolUse` | Avvisa prima di eliminare o cancellare definitivamente gli stash. |
+| `warn-all-files-staged` | `PreToolUse` | Avvisa su ampi `git add -A`, `git add .` o `git add --all`. |
+| `warn-destructive-sql` | `PreToolUse` | Avvisa su `DROP`, `TRUNCATE` e `DELETE` senza `WHERE` tramite client database riconosciuti. |
+| `warn-schema-alteration` | `PreToolUse` | Avvisa su operazioni di colonna e rinomina di `ALTER TABLE` riconosciute. |
-## Pacchetti, comportamento del sistema e loop degli agenti
+## Pacchetti, comportamento del sistema e loop dell'agente
-| Politica | Trigger | Risultato |
+| Policy | Trigger | Risultato |
| --- | --- | --- |
-| `warn-package-publish` | `PreToolUse` | Avverte prima di pubblicare nei registri dei pacchetti. |
-| `warn-global-package-install` | `PreToolUse` | Avverte prima dell'installazione globale dei pacchetti. |
-| `prefer-package-manager` | `PreToolUse` | Istruisce l'agente a utilizzare un gestore di pacchetti consentito. |
-| `warn-large-file-write` | `PreToolUse` sugli strumenti di scrittura | Avverte oltre la soglia di dimensione del file configurata. |
-| `warn-background-process` | `PreToolUse` | Avverte su pattern di processi in background distaccati o di lunga durata. |
-| `warn-repeated-tool-calls` | `PreToolUse` | Avverte dopo tre o più chiamate identiche dello strumento. |
+| `warn-package-publish` | `PreToolUse` | Avvisa prima di pubblicare nei registri dei pacchetti. |
+| `warn-global-package-install` | `PreToolUse` | Avvisa prima dell'installazione globale dei pacchetti. |
+| `prefer-package-manager` | `PreToolUse` | Indica all'agente di utilizzare un package manager consentito. |
+| `warn-large-file-write` | `PreToolUse` su strumenti di scrittura | Avvisa oltre la soglia di dimensione file configurata. |
+| `warn-background-process` | `PreToolUse` | Avvisa su pattern di processi in background distaccati o di lunga durata. |
+| `warn-repeated-tool-calls` | `PreToolUse` | Avvisa dopo tre o più chiamate di strumento identiche. |
-## Workflow di fine compito
+## Workflow di fine attività
-Queste politiche richiedono un harness che emetta un evento `Stop` compatibile.
+Queste policy richiedono un harness che emetta un evento `Stop` compatibile.
-| Politica | Risultato |
+| Policy | Risultato |
| --- | --- |
-| `require-commit-before-stop` | Rifiuta il completamento mentre il lavoro tracciato rimane uncommitted. |
+| `require-commit-before-stop` | Rifiuta il completamento mentre il lavoro tracciato rimane non committato. |
| `require-push-before-stop` | Rifiuta il completamento mentre i commit rimangono solo locali. |
-| `require-pr-before-stop` | Richiede una pull request per il ramo attuale. |
-| `require-no-conflicts-before-stop` | Richiede un merge pulito rispetto al ramo di base configurato. |
-| `require-ci-green-before-stop` | Richiede il completamento corretto dei controlli CI di current-HEAD. |
+| `require-pr-before-stop` | Richiede una pull request per il ramo corrente. |
+| `require-no-conflicts-before-stop` | Richiede un merge pulito rispetto al ramo base configurato. |
+| `require-ci-green-before-stop` | Richiede che i controlli CI di current-HEAD si completino con successo. |
## Riferimento dei parametri
-Configura i parametri nell'oggetto `policyParams` dello scope selezionato. I tipi sono validati da ogni politica.
+Configura i parametri sotto l'oggetto `policyParams` dell'ambito selezionato. I tipi sono validati da ogni policy.
-| Politica | Parametro | Tipo e default |
+| Policy | Parametro | Tipo e default |
| --- | --- | --- |
| `sanitize-api-keys` | `additionalPatterns` | `pattern[]`, `[]`; le voci contengono `regex` e `label` |
| `block-read-outside-cwd` | `allowPaths` | `string[]`, `[]` |
| `block-sudo` | `allowPatterns` | `string[]`, `[]` |
| `block-rm-rf` | `allowPaths` | `string[]`, `[]` |
-| Bloccanti infrastrutturali | `allowPatterns` | `string[]`, `[]` |
+| Blocchi infrastrutturali | `allowPatterns` | `string[]`, `[]` |
| `block-secrets-write` | `additionalPatterns` | `string[]`, `[]` |
| `block-push-master` | `protectedBranches` | `string[]`, `["main", "master"]` |
| `block-work-on-main` | `protectedBranches` | `string[]`, `["main", "master"]` |
@@ -125,5 +129,5 @@ Configura i parametri nell'oggetto `policyParams` dello scope selezionato. I tip
```
- Un pattern di allow amplia ciò che un agente può fare. Testa la tokenizzazione esatta e le varianti di comando sull'harness di destinazione prima di distribuirla su una flotta.
+ Un pattern di allow allarga ciò che un agente può fare. Testa la tokenizzazione esatta e le varianti di comando sull'harness target prima di distribuirla in una flotta.
\ No newline at end of file
diff --git a/docs/it/policies/failure-behavior.mdx b/docs/it/policies/failure-behavior.mdx
index 35160dc7..a248d508 100644
--- a/docs/it/policies/failure-behavior.mdx
+++ b/docs/it/policies/failure-behavior.mdx
@@ -1,19 +1,20 @@
---
+---
title: "Comportamento in caso di errore"
description: "Comprendi cosa accade quando la valutazione delle policy o il daemon locale non è disponibile."
icon: "shield-alert"
---
-Failproof AI è progettato in modo che un errore di enforcement sia visibile piuttosto che consentire silenziosamente operazioni rischiose.
+Failproof AI è progettato affinché un errore di enforcement sia visibile piuttosto che consentire silenziosamente lavori rischiosi.
## Diagnosticare un blocco failure-closed
- 1. Vai su **Admin → enforcement** e apri la macchina.
- 2. Verifica il suo ultimo check-in, la deployment assegnata e la deployment segnalata.
- 3. Vai su **Observe → policy** e apri la sessione della decisione negata.
- 4. Conferma se il motivo segnala la raggiungibilità del daemon, lo skew di versione o la policy stessa.
+ 1. Vai a **Admin → enforcement** e apri la macchina.
+ 2. Controlla il suo ultimo check-in, il deployment assegnato e il deployment segnalato.
+ 3. Vai a **Observe → policy** e apri la sessione della decisione negata.
+ 4. Conferma se il motivo segnala raggiungibilità del daemon, version skew o la policy stessa.
@@ -23,21 +24,45 @@ Failproof AI è progettato in modo che un errore di enforcement sia visibile piu
failproofai config
```
- Rieseguire `failproofai config` aggiorna e riavvia il daemon dopo un aggiornamento del pacchetto.
+ Rieseguire `failproofai config` aggiorna e riavvia il daemon dopo un upgrade del pacchetto.
-Su una macchina configurata per utilizzare `failproofaid`, il daemon è l'unico valutatore. Se non è raggiungibile o la sua versione di protocollo non corrisponde a quella della CLI, la valutazione dell'hook fallisce in modalità chiusa. L'azione viene negata con un motivo che dirige l'operatore a controllare o aggiornare il daemon.
+Su una macchina configurata per usare `failproofaid`, il daemon è l'unico valutatore. Se non è raggiungibile o la sua versione del protocollo non corrisponde alla CLI, la valutazione dell'hook fallisce in modo chiuso. L'azione viene negata con un motivo che indirizza l'operatore a controllare o aggiornare il daemon.
-Prima della configurazione del daemon, gli hook valutano le policy in process. Una volta registrata la configurazione del daemon, Failproof AI non ritorna silenziosamente a un secondo valutatore quando il daemon fallisce.
+Prima della configurazione del daemon, gli hook valutano le policy in process. Una volta registrata la configurazione del daemon, Failproof AI non torna silenziosamente a un secondo valutatore quando il daemon fallisce.
## Rispondere a una decisione failure-closed
1. Esegui `failproofai config --status`.
2. Se le versioni differiscono, riesegui `failproofai config` dopo aver aggiornato il pacchetto.
-3. Se il daemon non è raggiungibile, ispeziona lo stato del servizio e i log locali.
-4. Riprendi il lavoro dell'agent solo dopo aver verificato che un percorso noto di valutazione delle policy è sano.
+3. Se il daemon non è raggiungibile, ispeziona lo stato del suo servizio e i log locali.
+4. Riprendi il lavoro dell'agent solo dopo aver verificato che un percorso di valutazione della policy noto è sano.
- Non riprovare ripetutamente l'azione bloccata. Una risposta failure-closed significa che il sistema non ha potuto stabilire che l'azione fosse sicura.
-
\ No newline at end of file
+ Non ritentare ripetutamente l'azione bloccata. Una risposta failure-closed significa che il sistema non ha potuto stabilire che l'azione era sicura.
+
+
+## Un pack non si caricherà
+
+Una macchina a cui è stato ordinato di applicare un pack, e che non può eseguirlo, nega piuttosto che continuare silenziosamente. Il trigger è un'**aspettativa registrata**, mai una vuota: una macchina senza pack installati è silenziosa, mentre un pack che è dichiarato e non si risolverà — o che registra meno di quanto dichiara il suo manifest — nega.
+
+La negazione è **ristretta**, a differenza di un daemon non raggiungibile. Un daemon che non può essere raggiunto significa che nessuna valutazione è avvenuta affatto, quindi nulla può essere conosciuto come sicuro. Un pack che non si carica ha un insieme enumerabile di guardie mancanti, perché ogni policy dichiarata porta il suo `match` — quindi nega solo gli eventi e i tool coperti da quelle policy, e tutto il resto procede.
+
+Non si attiva per:
+
+- un pack `observe`, che valuta e scarta per costruzione
+- policy che non hai mai preso, o che hai esplicitamente disattivato
+- un pack che il loader non ha mai ricevuto, dove "nessuna registrazione" non può essere distinta da un salto deliberato
+- una pausa di sessione attiva
+- un timeout di caricamento, che è transitorio — un momento di disco lento non deve negare fino a quando un umano interviene
+
+`UserPromptSubmit` **istruisce** invece di negare, indipendentemente da cosa dichiarava la policy mancante. Una negazione generale la porterebbe con sé e ti bloccherebbe fuori dall'agent che potrebbe risolvere il problema.
+
+### Cosa fare
+
+```bash
+failproofai pack list
+```
+
+Elenca qualsiasi pack installato che non si carica, spiega il motivo, ed esce con codice non-zero. Poi o reinstallalo (`failproofai pack add `) o rimuovilo (`failproofai pack remove `) — rimuoverlo ritira l'aspettativa, e la negazione si ferma con essa.
\ No newline at end of file
diff --git a/docs/it/policies/packs.mdx b/docs/it/policies/packs.mdx
new file mode 100644
index 00000000..10f70eb7
--- /dev/null
+++ b/docs/it/policies/packs.mdx
@@ -0,0 +1,110 @@
+---
+title: "Policy pack"
+description: "Installa un set di policy pubblicato come release di GitHub e gestisci ciò che applica."
+icon: "package"
+---
+
+Un pack è un set di policy pubblicato come release di GitHub. Un solo comando lo installa, i checksum della release vengono verificati prima che qualsiasi cosa venga eseguita e il digest viene registrato in modo che il pack non possa cambiare sulla tua macchina successivamente.
+
+## Installa le policy di Failproof AI
+
+```bash
+failproofai pack add core
+```
+
+Questo installa il set che pubblichiamo, dalla copia contenuta nel package — quindi non richiede rete e non può fallire dietro a un proxy. Puoi prenderne parte:
+
+```bash
+failproofai pack add core --policy block-rm-rf # una, o un gruppo separato da virgole
+failproofai pack add core --category dangerous-commands # un'intera categoria
+failproofai pack add core --all # tutto ciò che contiene
+```
+
+`failproofai pack list` mostra il nome di ogni categoria che il pack offre.
+
+## Vedi cosa contiene un pack, prima di installarlo
+
+```bash
+failproofai pack list acme/support-agent
+```
+
+Elenca ogni policy che il pack contiene, raggruppate per categoria, contrassegnando quali l'autore attiva per default e quali sono facoltative. Legge **solo il manifest** — l'artifact principale non viene mai scaricato né importato, quindi guardare il pack di uno sconosciuto non può eseguire il codice di uno sconosciuto. Il manifest è comunque verificato rispetto al `SHA256SUMS` della release, quindi quello che stai leggendo è quello che verrebbe installato.
+
+`failproofai pack list` senza sorgente elenca i pack già installati qui.
+
+## Installa il pack di qualcun altro
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+Una qualsiasi di queste opzioni funziona — incolla quella che hai:
+
+| Sorgente | Risultato |
+| --- | --- |
+| `acme/support-agent` | Release più recente, **fissata** al tag esatto a cui è stata risolta |
+| `acme/support-agent@v2.1.0` | Quella release |
+| `github:acme/support-agent@v2.1.0` | La stessa, scritta esplicitamente |
+| `https://github.com/acme/support-agent/releases/tag/v2.1.0` | La stessa, copiata da un browser |
+
+Se non specifichi un tag, installa la release più recente **e la fissa**, poi ti dice quale tag ha scelto. Ciò che viene registrato nomina sempre esattamente una release, quindi una reinstallazione non può deviare.
+
+## Prendi parte di un pack
+
+Per default ottieni i **propri** default del pack — le policy che l'autore ha contrassegnato come sicure da attivare senza sorveglianza — non tutto ciò che contiene.
+
+```bash
+failproofai pack add acme/support-agent --category billing,git
+failproofai pack add acme/support-agent --policy block-refunds
+failproofai pack add acme/support-agent --all
+```
+
+`--category` e `--policy` si combinano come un'unione (`--only` è accettato come sinonimo di `--policy`). Aggiungere di nuovo una versione più recente mantiene ciò che hai scelto invece di riattivare il resto.
+
+## Gestisci cosa è attivo
+
+```bash
+failproofai policies # ogni sorgente in un unico elenco, pack inclusi
+failproofai pack list # solo i pack, raggruppati per categoria
+failproofai policies --uninstall block-refunds # disattiva una policy del pack
+failproofai policies --install block-refunds # e riattivala
+failproofai pack remove acme/support-agent
+```
+
+Un nome senza qualificazione significa quella **incorporata** quando esiste con quel nome. Qualifica esplicitamente il nome della copia del pack quando necessario:
+
+```bash
+failproofai policies --uninstall acme/support-agent:block-refunds
+```
+
+
+Se un pack contiene una policy il cui nome è anche una **builtin abilitata**, la builtin viene eseguita e la copia del pack viene saltata — altrimenti lo stesso controllo verrebbe valutato due volte. Disattiva la builtin per usare la copia del pack.
+
+
+## Da dove provengono le policy di Failproof AI
+
+`core` legge la copia vendored nel package npm. Lo stesso set è pubblicato come release di GitHub, che è ciò che installi se vuoi una versione specifica:
+
+```bash
+failproofai pack add core # da questo package, senza rete
+failproofai pack add FailproofAI/policies # lo stesso set, dalla sua release di GitHub
+```
+
+## Cosa l'integrità garantisce e non garantisce
+
+`SHA256SUMS` viene fornito nella stessa release dell'artifact, quindi **non** è una firma e non prova nulla su chi l'ha pubblicato. Ciò che prova è che i byte sono quelli che quella release ha pubblicato — e poiché il digest viene registrato quando aggiungi il pack e viene ri-verificato prima di ogni importazione, un pack non può cambiare sulla tua macchina successivamente. Un repository che retag o sostituisce un asset smette di caricarsi invece di eseguire silenziosamente qualcos'altro.
+
+Al momento dell'installazione il pack viene anche **importato una volta** e verificato rispetto al suo manifest. Un pack il cui artifact non analizza, o che registra qualcosa di diverso da quello che dichiara, viene rifiutato prima che qualsiasi cosa venga attivata — piuttosto che installarsi correttamente e fallire alla tua prossima tool call.
+
+## Quando un pack non si caricherà
+
+Un pack che questa macchina è stata istruita ad applicare e non può eseguire **nega** gli eventi che le sue policy mancanti coprivano, invece di consentirli silenziosamente. Vedi [Failure behavior](/it/policies/failure-behavior). `failproofai pack list` nomina qualsiasi pack in quello stato ed esce con non-zero.
+
+## Offline e mirror
+
+| Variabile | Effetto |
+| --- | --- |
+| `FAILPROOFAI_NO_DOWNLOAD=1` | Rifiuta di recuperare; i pack già installati continuano ad applicarsi |
+| `FAILPROOFAI_PACK_BASE_URL` | Indirizza il recupero dei pack a un mirror invece di `github.com` |
+
+Pubblicare il tuo pack: vedi [Publish a pack](/it/policies/publish-a-pack).
\ No newline at end of file
diff --git a/docs/it/policies/publish-a-pack.mdx b/docs/it/policies/publish-a-pack.mdx
new file mode 100644
index 00000000..10ae47d1
--- /dev/null
+++ b/docs/it/policies/publish-a-pack.mdx
@@ -0,0 +1,91 @@
+---
+title: "Pubblicare un pack"
+description: "Distribuisci le tue policy come release GitHub che chiunque può installare."
+icon: "upload"
+---
+
+Un pack è costituito da tre file allegati a una release GitHub. `failproofai pack build` scrive tutti e tre a partire da un file di policy che hai già.
+
+## 1. Scrivi le policy
+
+Un file, usando la stessa API di qualsiasi policy personalizzata. Due campi extra sono importanti per un pack:
+
+```js
+import { customPolicies, deny, allow } from "failproofai";
+
+customPolicies.add({
+ name: "block-refunds",
+ description: "Refunds above the approved limit need a human",
+ category: "Billing", // groups it, and is what --category selects on
+ defaultEnabled: true, // switched on by a plain `pack add`
+ match: { events: ["PreToolUse"], tools: ["Bash"] },
+ fn: async (ctx) =>
+ String(ctx.toolInput?.command ?? "").includes("refund")
+ ? deny("Refunds need a human. Ask before running this.")
+ : allow(),
+});
+```
+
+`defaultEnabled` ha il valore predefinito **false** quando lo ometti. Un semplice `failproofai pack add` attiva solo quello che hai contrassegnato — installare ogni policy di uno sconosciuto senza controllo non è una decisione che l'installatore dovrebbe prendere per l'utente.
+
+
+La voce deve essere **un file autonomo e autocontenuto**. Solo la voce è protetta dal digest, quindi un pack che importa file locali non potrebbe onestamente affermare che il digest copre ciò che viene eseguito. Raggruppa prima (`esbuild`, `bun build`, `rollup`) e costruisci il pack dal bundle — `pack build` rifiuta un'importazione locale piuttosto che distribuire una promessa che non può mantenere.
+
+
+## 2. Costruisci gli asset della release
+
+```bash
+failproofai pack build ./policies.mjs \
+ --id acme/support-agent \
+ --version 1.0.0 \
+ --out ./dist-pack
+```
+
+Scrive tre file e convalida ogni policy con **le regole proprie del loader** prima — quindi un pack che non potrebbe mai essere installato fallisce qui, dove puoi correggerlo:
+
+| File | Cosa è |
+| --- | --- |
+| `failproofai-pack.json` | Il manifest: id, version, effect, e una voce per policy |
+| `failproofai-pack.mjs` | La tua voce, esattamente come è |
+| `SHA256SUMS` | `` per gli altri due |
+
+Rifiutato al momento della costruzione: un id che non è `publisher/name`, un nome di policy contenente `/`, una policy che dichiara `alwaysOn`, una `description`, `category` o `match` mancante, una voce che non registra nulla, e una voce che importa file locali.
+
+## 3. Allegali a una release
+
+Etichetta la release con la stessa versione che hai costruito, e allega tutti e tre i file come asset di release:
+
+```bash
+gh release create 1.0.0 \
+ ./dist-pack/failproofai-pack.json \
+ ./dist-pack/failproofai-pack.mjs \
+ ./dist-pack/SHA256SUMS
+```
+
+Ora chiunque può installarlo:
+
+```bash
+failproofai pack add acme/support-agent
+```
+
+I nomi degli asset sono fissi — sono quelli da cui il CLI del consumer costruisce i suoi URL, senza chiamate API e senza discovery.
+
+## Distribuire una nuova versione
+
+Costruisci con il nuovo `--version`, etichetta una nuova release, allega di nuovo i tre asset. I consumer eseguono lo stesso `pack add` e mantengono qualsiasi sottoinsieme avevano scelto; una policy che avevano disattivato rimane disattivata durante l'aggiornamento.
+
+Cambiare il **name** di una policy è un breaking change: una macchina che l'aveva disattivata sta disattivando un nome che non esiste più, e il nuovo nome arriva con qualsiasi `defaultEnabled` dica.
+
+## Su cosa i tuoi utenti si stanno fidando
+
+`SHA256SUMS` si trova nella stessa release dell'artefatto, quindi dimostra che i byte sono quelli che hai pubblicato — non chi sei. Chiunque possa scrivere nel repository può scrivere entrambi i file. La protezione dei tuoi utenti è che il digest è bloccato quando installano, quindi quello che hai distribuito non può cambiare sotto di loro successivamente.
+
+Pubblica da un repository il cui accesso in scrittura controlli, e tratta una release pack come se stessi pubblicando un pacchetto.
+
+## Osserva prima di forzare
+
+Un manifest può dichiarare `"effect": "observe"`. Quelle policy vengono eseguite e i loro verdetti sono **registrati e scartati** — nulla viene bloccato. È il modo per misurare una nuova regola contro il traffico reale prima che possa interrompere il lavoro di chiunque.
+
+```json
+{ "id": "acme/support-agent", "version": "1.1.0", "effect": "observe", "policies": [ ... ] }
+```
\ No newline at end of file
diff --git a/docs/it/reference/failproof-cli.mdx b/docs/it/reference/failproof-cli.mdx
index d390cdca..657ccb9f 100644
--- a/docs/it/reference/failproof-cli.mdx
+++ b/docs/it/reference/failproof-cli.mdx
@@ -1,12 +1,12 @@
---
title: "Failproof AI CLI"
-description: "Installa hook, gestisci politiche locali, connetti Cloud e gestisci il daemon locale."
+description: "Installa gli hook, gestisci le politiche locali, connetti il Cloud e gestisci il daemon locale."
icon: "terminal"
---
Installa la CLI locale con `npm install -g failproofai`. Eseguila senza argomenti per aprire il dashboard delle politiche locali.
-Il pacchetto richiede Node.js 20.9 o versione successiva. Bun 1.3 o versione successiva è supportato per sviluppo e installazioni da sorgente. `failproofai configure` e `failproofai setup` sono alias per `failproofai config`; `failproofai p` è un alias per `failproofai policies`.
+Il pacchetto richiede Node.js 20.9 o più recente. Bun 1.3 o più recente è supportato per sviluppo e installazioni da sorgente. `failproofai configure` e `failproofai setup` sono alias per `failproofai config`; `failproofai p` è un alias per `failproofai policies`.
## Configura una macchina
@@ -26,23 +26,28 @@ Esegui `failproofai` senza argomenti per aprire il dashboard delle politiche loc
| --- | --- |
| `failproofai config` | Esegui la configurazione interattiva della macchina |
| `failproofai config --connect --token ` | Connetti l'acquisizione Cloud e la distribuzione delle politiche |
-| `failproofai config --status` | Mostra lo stato della connessione, del daemon, della consegna e della pausa |
-| `failproofai policies` | Elenca le politiche predefinite e personalizzate |
+| `failproofai config --status` | Mostra lo stato della connessione, daemon, distribuzione e pausa |
+| `failproofai policies` | Elenca le politiche integrate, personalizzate, convenzionali, pack e gestite da Cloud |
| `failproofai policies --install` | Installa gli hook e abilita le politiche |
-| `failproofai policy add ` | Abilita una politica predefinita |
-| `failproofai policy remove ` | Disabilita una politica predefinita |
-| `failproofai policies --uninstall` | Disabilita le politiche o rimuovi gli hook di harness |
-| `failproofai audit` | Scansiona la cronologia locale dell'agente e apri la vista di audit locale |
-| `failproofai audit --schedule [days] --email ` | Pianifica scansioni locali ricorrenti e invia i loro risultati via email |
-| `failproofai audit --status` | Mostra l'indirizzo del rapporto, l'intervallo e la prossima scansione pianificata |
-| `failproofai audit --no-schedule` | Interrompi le scansioni ricorrenti senza eliminare la cronologia di audit |
+| `failproofai policy add ` | Abilita una politica — una integrata, o `:` da un pack installato |
+| `failproofai policy remove ` | Disabilita una politica, stessa nomenclatura |
+| `failproofai policies --uninstall` | Disabilita le politiche o rimuovi gli hook |
+| `failproofai pack list` | Elenca i pack di politiche installati e tutte le politiche che contengono |
+| `failproofai pack add ` | Installa un pack di politiche da un rilascio GitHub; nessun tag prende il più recente e lo fissa |
+| `failproofai pack add --bundled` | Installa le politiche integrate come pack, da questo pacchetto, senza rete |
+| `failproofai pack build ` | Compila i tre asset di rilascio per un tuo pack personalizzato |
+| `failproofai pack remove ` | Disattiva un pack installato |
+| `failproofai audit` | Scansiona la cronologia locale dell'agente e apri la vista di controllo locale |
+| `failproofai audit --schedule [days] --email ` | Pianifica scansioni ricorrenti locali e invia i risultati per email |
+| `failproofai audit --status` | Mostra l'indirizzo del report, l'intervallo e la prossima scansione pianificata |
+| `failproofai audit --no-schedule` | Interrompi le scansioni ricorrenti senza eliminare la cronologia di controllo |
| `failproofai harness list` | Elenca i percorsi di acquisizione aggiuntivi |
-| `failproofai flush --wait` | Consegna il spool di eventi corrente |
+| `failproofai flush --wait` | Distribuisci lo spool di eventi corrente |
| `failproofai backfill --since 30d` | Rileggi la cronologia precedentemente passata |
-| `failproofai config --pause [duration]` | Metti in pausa una sessione locale per 30 minuti per impostazione predefinita, fino a 8 ore |
+| `failproofai config --pause [duration]` | Pausa una sessione locale per 30 minuti per impostazione predefinita, fino a 8 ore |
| `failproofai config --resume` | Riprendi una sessione locale in pausa; aggiungi `--all` per cancellare tutte le pause |
-| `failproofai update` | Completa le migrazioni dei pacchetti e aggiorna il daemon |
-| `failproofai migrate --dry-run` | Anteprima o esegui le migrazioni del layout home in sospeso |
+| `failproofai update` | Completa le migrazioni del pacchetto e aggiorna il daemon |
+| `failproofai migrate --dry-run` | Anteprima o esegui le migrazioni di layout in sospeso |
| `failproofai uninstall` | Rimuovi gli hook e il daemon prima di rimuovere il pacchetto |
| `failproofai --version` | Stampa la versione del pacchetto installato |
| `failproofai --help` | Mostra i comandi e l'utilizzo globale |
@@ -51,31 +56,31 @@ Esegui `failproofai` senza argomenti per aprire il dashboard delle politiche loc
| Flag | Utilizzo |
| --- | --- |
-| `--connect --token ` | Connettiti non in modo interattivo |
-| `--machine-id ` | Imposta l'ID stabile della macchina |
-| `--machine-label ` | Imposta o modifica l'etichetta del dashboard |
-| `--no-transcripts` | Invia le decisioni senza il contenuto della trascrizione |
-| `--disconnect` | Interrompi i pull delle politiche Cloud e la consegna degli eventi |
+| `--connect --token