diff --git a/docs/ar/built-in-policies.mdx b/docs/ar/built-in-policies.mdx
index 6bddd640..d6151607 100644
--- a/docs/ar/built-in-policies.mdx
+++ b/docs/ar/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
title: السياسات المدمجة
-description: "جميع السياسات المدمجة الـ 30 التي تكتشف أنماط الفشل الشائعة للوكلاء"
+description: "جميع 30 سياسة مدمجة تلتقط أنماط فشل الوكيل الشائعة"
icon: shield
---
-يأتي failproofai مع 30 سياسة مدمجة تكتشف أنماط الفشل الشائعة للوكلاء. تُطلق كل سياسة على نوع حدث hook محدد واسم أداة معينة. تقبل تسع سياسات معاملات تتيح لك ضبط سلوكها دون كتابة أي كود. تفرض أربع سياسات سير عمل خط أنابيب commit → push → PR → CI قبل توقف Claude.
+يأتي failproofai مع 30 سياسة مدمجة تلتقط أنماط فشل الوكيل الشائعة. تعمل كل سياسة على حدث خطاف معين واسم أداة محدد. تقبل تسع سياسات معاملات تسمح لك بضبط سلوكها دون كتابة أي كود. تفرض أربع سياسات سير عمل خط أنابيب commit → push → PR → CI قبل أن يتوقف Claude.
---
@@ -12,47 +12,47 @@ icon: shield
يتم تجميع السياسات في فئات:
-| الفئة | السياسات | نوع Hook |
-|-------|---------|----------|
-| [الأوامر الخطيرة](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
-| [الأسرار (المنظفات)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
-| [البيئة](#environment) | block-env-files, protect-env-vars | PreToolUse |
-| [الوصول للملفات](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
+| الفئة | السياسات | نوع الخطاف |
+|-------|----------|-----------|
+| [الأوامر الخطرة](#الأوامر-الخطرة) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
+| [الأسرار (مُنظفات)](#الأسرار-مُنظفات) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
+| [البيئة](#البيئة) | block-env-files, protect-env-vars | PreToolUse |
+| [الوصول إلى الملفات](#الوصول-إلى-الملفات) | block-read-outside-cwd, block-secrets-write | PreToolUse |
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
-| [قاعدة البيانات](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
-| [التحذيرات](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
-| [مديرو الحزم](#package-managers) | prefer-package-manager | PreToolUse |
-| [سير العمل](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
+| [قاعدة البيانات](#قاعدة-البيانات) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
+| [تحذيرات](#تحذيرات) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
+| [مديرو الحزم](#مديرو-الحزم) | prefer-package-manager | PreToolUse |
+| [سير العمل](#سير-العمل) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
- **`block-`** — إيقاف الوكيل عن المتابعة.
- **`warn-`** — إعطاء الوكيل سياق إضافي حتى يتمكن من تصحيح نفسه.
-- **`sanitize-`** — حذف البيانات الحساسة من مخرجات الأداة قبل أن يراها Claude.
+- **`sanitize-`** — حذف البيانات الحساسة من إخراج الأداة قبل أن يراها الوكيل.
- **`require-`** — حظر حدث Stop حتى يتم استيفاء الشروط.
---
-كل سياسة تدعم حقل `hint` اختياري في `policyParams`. يتم إلحاق التلميح برسالة الرفض أو التعليمات التي يراها Claude، مما يوفر إرشادات عملية دون تعديل كود السياسة. يعمل مع السياسات المدمجة والمخصصة وسياسات الاتفاقية. انظر [التكوين → hint](/ar/configuration#hint-cross-cutting) للتفاصيل.
+تدعم كل سياسة حقل اختياري `hint` في `policyParams`. يتم إلحاق التلميح برسالة deny أو instruct التي يراها Claude، مما يوفر إرشادات قابلة للتنفيذ دون تعديل كود السياسة. يعمل مع السياسات المدمجة والمخصصة وسياسات الاتفاقية. انظر [التكوين → hint](/ar/configuration#hint-cross-cutting) للتفاصيل.
---
-## الأوامر الخطيرة
+## الأوامر الخطرة
-منع الوكلاء من تشغيل العمليات التي يصعب التراجع عنها أو التي قد تلحق الضرر بنظام المضيف.
+منع الوكلاء من تشغيل العمليات التي يصعب التراجع عنها أو التي قد تضر بنظام الاستضافة.
### `block-sudo`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض أي أمر `sudo`.
+**الافتراضي:** ينكر أي أمر `sudo`.
-يحظر الاستدعاءات التي تتضمن كلمة `sudo`. يتم مطابقة النمط على رموز الأوامر المحللة، وليس السلسلة الخام، لمنع الالتفاف عبر حقن مشغل shell.
+يحظر الاستدعاءات التي تتضمن كلمة `sudo`. يتم مطابقة النمط على رموز الأوامر التي تم تحليلها، وليس السلسلة الخام، لمنع الالتفاف عن طريق حقن عامل قشرة.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `allowPatterns` | `string[]` | `[]` | بادئات الأوامر الدقيقة المسموح بها. يتم مطابقة كل إدخال مقابل رموز argv المحللة. |
+|--------|-------|----------|-------|
+| `allowPatterns` | `string[]` | `[]` | بادئات الأوامر الدقيقة المسموح بها. يتم مطابقة كل إدخال مقابل رموز argv التي تم تحليلها. |
**مثال:**
@@ -66,10 +66,10 @@ icon: shield
}
```
-مع هذا الإعداد، `sudo systemctl status nginx` مسموح به، لكن `sudo rm /etc/hosts` مرفوض.
+مع هذا التكوين، يُسمح بـ `sudo systemctl status nginx`، لكن `sudo rm /etc/hosts` مرفوض.
-يتم مطابقة الأنماط مقابل الرموز المحللة، وليس السلسلة الخام للأمر. يمنع هذا الالتفاف عبر مشغلات shell المرفقة (مثلاً `sudo systemctl status x; rm -rf /` لا يطابق `sudo systemctl status *`).
+يتم مطابقة الأنماط مقابل الرموز التي تم تحليلها، وليس سلسلة الأوامر الخام. هذا يمنع الالتفاف عن طريق عوامل قشرة ملحقة (على سبيل المثال، `sudo systemctl status x; rm -rf /` لا يطابق `sudo systemctl status *`).
---
@@ -77,13 +77,13 @@ icon: shield
### `block-rm-rf`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض `rm -rf`، `rm -fr`، والأشكال التكرارية المماثلة للحذف.
+**الافتراضي:** ينكر `rm -rf`، `rm -fr`، وأشكال الحذف العودية المماثلة.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `allowPaths` | `string[]` | `[]` | المسارات الآمنة للحذف التكراري (مثلاً `/tmp`). |
+|--------|-------|----------|-------|
+| `allowPaths` | `string[]` | `[]` | المسارات الآمنة للحذف العودي (على سبيل المثال، `/tmp`). |
**مثال:**
@@ -102,43 +102,43 @@ icon: shield
### `block-curl-pipe-sh`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض `curl | bash`، `curl | sh`، `wget | bash`، والأنماط المماثلة.
+**الافتراضي:** ينكر `curl | bash`، `curl | sh`، `wget | bash`، وأنماط مماثلة.
-بدون معاملات.
+لا توجد معاملات.
---
### `block-failproofai-commands`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض الأوامر التي ستلغي أو تعطل failproofai نفسه (مثلاً `npm uninstall failproofai`، `failproofai policies --uninstall`).
+**الافتراضي:** ينكر الأوامر التي ستلغي أو تعطل failproofai نفسه (على سبيل المثال، `npm uninstall failproofai`، `failproofai policies --uninstall`).
-بدون معاملات.
+لا توجد معاملات.
---
-## الأسرار (المنظفات)
+## الأسرار (مُنظفات)
-منع الوكلاء من تسريب بيانات الاعتماد إلى سياقهم أو مخرجاتهم. تطلق سياسات المنظفة على أحداث **PostToolUse**. عندما يشغل Claude أمر Bash، أو يقرأ ملف، أو يستدعي أي أداة، تفتش هذه السياسات المخرجات قبل إرجاعها إلى Claude. إذا تم كشف نمط سري، ترجع السياسة قرار رفض يمنع إرجاع المخرجات.
+منع الوكلاء من تسرب بيانات الاعتماد إلى السياق أو الإخراج. تعمل سياسات المُنظف على أحداث **PostToolUse**. عندما يقوم Claude بتشغيل أمر Bash أو قراءة ملف أو استدعاء أي أداة، تفحص هذه السياسات الإخراج قبل إرجاعه إلى Claude. إذا تم اكتشاف نمط سري، ترجع السياسة قرار إنكار يمنع تمرير الإخراج.
### `sanitize-jwt`
**الحدث:** PostToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** حذف رموز JWT (ثلاث مقاطع base64url مفصولة بـ `.`).
+**الافتراضي:** تحرير رموز JWT (ثلاث مقاطع base64url مفصولة بـ `.`).
-بدون معاملات.
+لا توجد معاملات.
---
### `sanitize-api-keys`
**الحدث:** PostToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** حذف تنسيقات مفاتيح API الشائعة: Anthropic (`sk-ant-`)، OpenAI (`sk-`)، GitHub PATs (`ghp_`)، مفاتيح الوصول AWS (`AKIA`)، مفاتيح Stripe (`sk_live_`, `sk_test_`)، ومفاتيح Google API (`AIza`).
+**الافتراضي:** تحرير صيغ مفاتيح API الشائعة: Anthropic (`sk-ant-`)، OpenAI (`sk-`)، GitHub PATs (`ghp_`)، مفاتيح الوصول AWS (`AKIA`)، مفاتيح Stripe (`sk_live_`، `sk_test_`)، ومفاتيح Google API (`AIza`).
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
+|--------|-------|----------|-------|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | أنماط regex إضافية يتم التعامل معها كأسرار. |
**مثال:**
@@ -161,67 +161,67 @@ icon: shield
### `sanitize-connection-strings`
**الحدث:** PostToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** حذف سلاسل اتصال قاعدة البيانات التي تحتوي على بيانات اعتماد مضمنة (مثلاً `postgresql://user:password@host/db`).
+**الافتراضي:** تحرير سلاسل اتصال قاعدة البيانات التي تحتوي على بيانات اعتماد مضمنة (على سبيل المثال، `postgresql://user:password@host/db`).
-بدون معاملات.
+لا توجد معاملات.
---
### `sanitize-private-key-content`
**الحدث:** PostToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** حذف كتل PEM (`-----BEGIN PRIVATE KEY-----`، `-----BEGIN RSA PRIVATE KEY-----`، إلخ).
+**الافتراضي:** تحرير كتل PEM (`-----BEGIN PRIVATE KEY-----`، `-----BEGIN RSA PRIVATE KEY-----`، إلخ).
-بدون معاملات.
+لا توجد معاملات.
---
### `sanitize-bearer-tokens`
**الحدث:** PostToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** حذف رؤوس `Authorization: Bearer ` حيث يكون الرمز 20 أو أكثر من الأحرف.
+**الافتراضي:** تحرير رؤوس `Authorization: Bearer ` حيث يكون الرمز 20 حرفًا أو أكثر.
-بدون معاملات.
+لا توجد معاملات.
---
## البيئة
-حماية إعدادات البيئة الحساسة من القراءة أو الكشف عنها من قبل الوكلاء.
+حماية تكوين البيئة الحساسة من أن يتم قراءتها أو كشفها من قبل الوكلاء.
### `block-env-files`
-**الحدث:** PreToolUse (Bash، Read)
-**الإعداد الافتراضي:** رفض قراءة ملفات `.env` عبر `cat .env`، استدعاءات أداة Read مع `.env` كمسار الملف، إلخ.
+**الحدث:** PreToolUse (Bash, Read)
+**الافتراضي:** ينكر قراءة ملفات `.env` عبر `cat .env` أو استدعاءات `Read` الأداة مع `.env` كمسار الملف، إلخ.
-لا يحظر `.envrc` أو ملفات أخرى ذات صلة بالبيئة - فقط الملفات المسماة `.env` بالضبط.
+لا يحظر `.envrc` أو ملفات أخرى مرتبطة بالبيئة - فقط الملفات المسماة بـ `.env` بالضبط.
-بدون معاملات.
+لا توجد معاملات.
---
### `protect-env-vars`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض الأوامر التي تطبع متغيرات البيئة: `printenv`، `env`، `echo $VAR`.
+**الافتراضي:** ينكر الأوامر التي تطبع متغيرات البيئة: `printenv`، `env`، `echo $VAR`.
-بدون معاملات.
+لا توجد معاملات.
---
-## الوصول للملفات
+## الوصول إلى الملفات
-الحفاظ على عمل الوكلاء داخل حدود المشروع بعيداً عن الملفات الحساسة.
+الحفاظ على عمل الوكلاء داخل حدود المشروع بعيدًا عن الملفات الحساسة.
### `block-read-outside-cwd`
-**الحدث:** PreToolUse (Read، Bash)
-**الإعداد الافتراضي:** رفض قراءة الملفات خارج دليل العمل الحالي (جذر المشروع).
+**الحدث:** PreToolUse (Read, Bash)
+**الافتراضي:** ينكر قراءة الملفات خارج دليل العمل الحالي (جذر المشروع).
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
+|--------|-------|----------|-------|
| `allowPaths` | `string[]` | `[]` | بادئات المسار المطلق المسموح بها حتى لو كانت خارج cwd. |
**مثال:**
@@ -240,14 +240,14 @@ icon: shield
### `block-secrets-write`
-**الحدث:** PreToolUse (Write، Edit)
-**الإعداد الافتراضي:** رفض الكتابة إلى الملفات المستخدمة بشكل شائع للمفاتيح الخاصة والشهادات: `id_rsa`، `id_ed25519`، `*.key`، `*.pem`، `*.p12`، `*.pfx`.
+**الحدث:** PreToolUse (Write, Edit)
+**الافتراضي:** ينكر الكتابة إلى الملفات المستخدمة بشكل شائع للمفاتيح الخاصة والشهادات: `id_rsa`، `id_ed25519`، `*.key`، `*.pem`، `*.p12`، `*.pfx`.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `additionalPatterns` | `string[]` | `[]` | أنماط أسماء ملفات إضافية (نمط glob) للحظر. |
+|--------|-------|----------|-------|
+| `additionalPatterns` | `string[]` | `[]` | أنماط اسم ملف إضافية (على غرار glob) للحظر. |
**مثال:**
@@ -265,17 +265,17 @@ icon: shield
## Git
-منع الدفع العرضي والدفع القسري وأخطاء الفروع التي يصعب التراجع عنها.
+منع الدفع العرضي والدفع القسري والأخطاء في الفروع التي يصعب التراجع عنها.
### `block-push-master`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض `git push origin main` و `git push origin master`.
+**الافتراضي:** ينكر `git push origin main` و `git push origin master`.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
+|--------|-------|----------|-------|
| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن الدفع إليها مباشرة. |
**مثال:**
@@ -291,7 +291,7 @@ icon: shield
```
-للسماح بالدفع إلى جميع الفروع (تعطيل هذه السياسة بشكل فعلي دون إزالتها من `enabledPolicies`)، اضبط `protectedBranches: []`.
+للسماح بالدفع إلى جميع الفروع (بفعالية تعطيل هذه السياسة دون إزالتها من `enabledPolicies`)، اضبط `protectedBranches: []`.
---
@@ -299,22 +299,22 @@ icon: shield
### `block-work-on-main`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض التبديل إلى فروع `main` أو `master` مباشرة.
+**الافتراضي:** ينكر الخروج من فروع `main` أو `master` مباشرة.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن التبديل إليها مباشرة. |
+|--------|-------|----------|-------|
+| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن الخروج منها مباشرة. |
---
### `block-force-push`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** رفض `git push --force` و `git push -f`.
+**الافتراضي:** ينكر `git push --force` و `git push -f`.
-بدون معاملات خاصة بالسياسة. استخدم [`hint`](/ar/configuration#hint-cross-cutting) الشامل لاقتراح بدائل:
+لا توجد معاملات خاصة بالسياسة. استخدم [hint](/ar/configuration#hint-cross-cutting) المتقاطع لاقتراح بدائل:
```json
{
@@ -331,66 +331,66 @@ icon: shield
### `warn-git-amend`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude للمتابعة بحذر عند تشغيل `git commit --amend`. لا يحظر الأمر.
+**الافتراضي:** يرشد Claude للمتابعة بحذر عند تشغيل `git commit --amend`. لا يحظر الأمر.
-بدون معاملات.
+لا توجد معاملات.
---
### `warn-git-stash-drop`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `git stash drop`. لا يحظر الأمر.
+**الافتراضي:** يرشد Claude للتأكيد قبل تشغيل `git stash drop`. لا يحظر الأمر.
-بدون معاملات.
+لا توجد معاملات.
---
### `warn-all-files-staged`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude لمراجعة ما ينص عليه عند تشغيل `git add -A` أو `git add .`. لا يحظر الأمر.
+**الافتراضي:** يرشد Claude لمراجعة ما يقوم بتخزينه عند تشغيل `git add -A` أو `git add .`. لا يحظر الأمر.
-بدون معاملات.
+لا توجد معاملات.
---
## قاعدة البيانات
-اكتشف العمليات التي تدمر SQL قبل تنفيذها ضد قاعدة البيانات الخاصة بك.
+اكتشف العمليات SQL المدمرة قبل تنفيذها ضد قاعدة البيانات الخاصة بك.
### `warn-destructive-sql`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل SQL يحتوي على `DROP TABLE`، `DROP DATABASE`، أو `DELETE` بدون جملة `WHERE`.
+**الافتراضي:** يرشد Claude للتأكيد قبل تشغيل SQL يحتوي على `DROP TABLE` أو `DROP DATABASE` أو `DELETE` بدون جملة `WHERE`.
-بدون معاملات.
+لا توجد معاملات.
---
### `warn-schema-alteration`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل بيانات `ALTER TABLE`.
+**الافتراضي:** يرشد Claude للتأكيد قبل تشغيل عبارات `ALTER TABLE`.
-بدون معاملات.
+لا توجد معاملات.
---
-## التحذيرات
+## تحذيرات
-إعطاء الوكلاء سياق إضافي قبل العمليات المحتملة ولكن غير المدمرة.
+إعطاء الوكلاء سياق إضافي قبل العمليات المحتملة الخطورة ولكن غير المدمرة.
### `warn-large-file-write`
**الحدث:** PreToolUse (Write)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل كتابة ملفات أكبر من 1024 كيلوبايت.
+**الافتراضي:** يرشد Claude للتأكيد قبل كتابة ملفات أكبر من 1024 KB.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `thresholdKb` | `number` | `1024` | عتبة حجم الملف بالكيلوبايت التي يتم فوقها إصدار تحذير. |
+|--------|-------|----------|-------|
+| `thresholdKb` | `number` | `1024` | عتبة حجم الملف بالكيلوبايت التي يتم إصدار تحذير فوقها. |
**مثال:**
@@ -405,7 +405,7 @@ icon: shield
```
-يفرض معالج hook حد 1 ميجابايت لـ stdin على الحمول الثقيلة. لاختبار هذه السياسة بمحتوى صغير، اضبط `thresholdKb` على قيمة أقل بكثير من 1024.
+يفرض معالج الخطاف حد stdin بحجم 1 ميجابايت على الحمولات. لاختبار هذه السياسة بمحتوى صغير، اضبط `thresholdKb` على قيمة أقل بكثير من 1024.
---
@@ -413,49 +413,49 @@ icon: shield
### `warn-package-publish`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `npm publish`.
+**الافتراضي:** يرشد Claude للتأكيد قبل تشغيل `npm publish`.
-بدون معاملات.
+لا توجد معاملات.
---
### `warn-background-process`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالحذر عند إطلاق العمليات في الخلفية عبر `nohup`، `&`، `disown`، أو `screen`.
+**الافتراضي:** يرشد Claude ليكون حذرًا عند إطلاق العمليات الخلفية عبر `nohup` أو `&` أو `disown` أو `screen`.
-بدون معاملات.
+لا توجد معاملات.
---
### `warn-global-package-install`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `npm install -g`، `yarn global add`، أو `pip install` بدون بيئة افتراضية.
+**الافتراضي:** يرشد Claude للتأكيد قبل تشغيل `npm install -g` أو `yarn global add` أو `pip install` بدون بيئة افتراضية.
-بدون معاملات.
+لا توجد معاملات.
---
## مديرو الحزم
-فرض مديري الحزم المسموح بهم على الوكيل.
+فرض أي مديري حزم يُسمح للوكيل باستخدامهم.
### `prefer-package-manager`
**الحدث:** PreToolUse (Bash)
-**الإعداد الافتراضي:** معطل. عند التفعيل، يحظر أي أمر مدير حزم غير موجود في قائمة `allowed` ويخبر Claude بإعادة كتابة الأمر باستخدام مدير مسموح به.
+**الافتراضي:** معطل. عند التفعيل، يحظر أي أمر مدير حزم ليس في قائمة `allowed` ويخبر Claude بإعادة كتابة الأمر باستخدام مدير مسموح به.
يكتشف: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
-| `allowed` | string[] | `[]` | أسماء مديري الحزم المسموح بها. يتم حظر أي مدير مكتشف غير موجود في هذه القائمة. عند كونها فارغة، السياسة غير فعالة. |
-| `blocked` | string[] | `[]` | أسماء مديري إضافية للحظر بما يتجاوز القائمة المدمجة (مثلاً `['pdm', 'pipx']`). |
+|--------|-------|----------|-------|
+| `allowed` | string[] | `[]` | أسماء مديري الحزم المسموح بها. يتم حظر أي مدير مكتشف ليس في هذه القائمة. عند ترك القائمة فارغة، السياسة بدون تأثير. |
+| `blocked` | string[] | `[]` | أسماء مديري حزم إضافية للحظر بما يتجاوز قائمة الحظر المدمجة (على سبيل المثال، `['pdm', 'pipx']`). |
-تغطي قائمة الحظر المدمجة: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. استخدم `blocked` لإضافة مديري غير موجودين في هذه القائمة.
+تغطي قائمة الحظر المدمجة: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. استخدم `blocked` لإضافة مديري حزم ليسوا في هذه القائمة.
-**مثال التكوين:**
+**تكوين مثال:**
```json
{
@@ -469,47 +469,47 @@ icon: shield
}
```
-مع هذا الإعداد، `pip install flask` و `pdm install flask` كلاهما مرفوض برسالة تخبر Claude بالاستخدام `uv` أو `bun` بدلاً من ذلك. أوامر مثل `uv pip install flask` مسموح بها لأن `uv` موجود في قائمة المسموحين ويتم فحصه أولاً.
+مع هذا التكوين، يتم رفض كل من `pip install flask` و `pdm install flask` برسالة تخبر Claude باستخدام `uv` أو `bun` بدلاً من ذلك. الأوامر مثل `uv pip install flask` مسموح بها لأن `uv` موجود في قائمة السماح ويتم التحقق منها أولاً.
---
## سلوك الذكاء الاصطناعي
-كشف عندما يعلق الوكلاء أو يتصرفون بشكل غير متوقع.
+اكتشف عندما يعلق الوكلاء أو يتصرفون بشكل غير متوقع.
### `warn-repeated-tool-calls`
**الحدث:** PreToolUse (جميع الأدوات)
-**الإعداد الافتراضي:** تعليمات Claude لإعادة التفكير عند استدعاء نفس الأداة 3 مرات أو أكثر بنفس المعاملات - وهي علامة شائعة على أن الوكيل عالق في حلقة.
+**الافتراضي:** يرشد Claude للتفكير مرة أخرى عندما يتم استدعاء نفس الأداة 3 مرات أو أكثر بمعاملات متطابقة - علامة شائعة على أن الوكيل عالق في حلقة.
-بدون معاملات.
+لا توجد معاملات.
---
## سير العمل
-فرض سير عمل منضبط لنهاية الجلسة. تطلق هذه السياسات على حدث **Stop** وترفض Claude من التوقف حتى يتم استيفاء كل شرط. تتبع سلسلة اعتماد طبيعية: commit → push → PR → CI. إذا رفضت سياسة، يتم تخطي السياسات اللاحقة في السلسلة (الرفض يختصر).
+فرض سير عمل منضبط لنهاية الجلسة. تعمل هذه السياسات على حدث **Stop** وتنكر على Claude التوقف حتى يتم استيفاء كل شرط. تتبع سلسلة اعتماد طبيعية: commit → push → PR → CI. إذا رفضت سياسة، يتم تخطي السياسات اللاحقة في السلسلة (الإنكار يختصر).
-جميع سياسات سير العمل **fail-open**: إذا لم تكن الأداة المطلوبة متاحة (مثلاً `gh` غير مثبتة، لا يوجد remote git)، تسمح السياسة برسالة إعلامية توضح سبب تخطي الفحص.
+جميع سياسات سير العمل هي **fail-open**: إذا لم تكن الأداة المطلوبة متاحة (على سبيل المثال، `gh` غير مثبتة، لا يوجد remote git)، السياسة تسمح برسالة إعلامية توضح سبب تجاهل الفحص.
### `require-commit-before-stop`
**الحدث:** Stop
-**الإعداد الافتراضي:** رفض التوقف عندما توجد تغييرات غير مرتكبة (ملفات معدلة أو منصة أو غير متتبعة). إرجاع رسالة إعلامية عندما يكون دليل العمل نظيفاً.
+**الافتراضي:** ينكر التوقف عند وجود تغييرات غير مؤكدة (ملفات معدلة أو مرحلة أو غير مرقبة). يرجع رسالة إعلامية عند نظافة دليل العمل.
-بدون معاملات.
+لا توجد معاملات.
---
### `require-push-before-stop`
**الحدث:** Stop
-**الإعداد الافتراضي:** رفض التوقف عندما توجد التزامات غير مدفوعة أو عندما لا يكون للفرع الحالي فرع تتبع بعيد. يقترح `git push -u` لإنشاء فرع تتبع إذا لزم الأمر. يفشل بشكل مفتوح إذا لم يتم تكوين remote.
+**الافتراضي:** ينكر التوقف عند وجود commits غير مدفوعة أو عند عدم وجود فرع تتبع remote للفرع الحالي. يقترح `git push -u` لإنشاء فرع تتبع إذا لزم الأمر. يفشل open إذا لم يتم تكوين أي remote.
**المعاملات:**
| المعامل | النوع | الافتراضي | الوصف |
-|--------|-------|---------|-------|
+|--------|-------|----------|-------|
| `remote` | `string` | `"origin"` | اسم remote للدفع إليه. |
**مثال:**
@@ -529,14 +529,14 @@ icon: shield
### `require-pr-before-stop`
**الحدث:** Stop
-**الإعداد الافتراضي:** رفض التوقف عندما لا يوجد طلب دمج للفرع الحالي، أو عندما يكون الطلب الموجود مغلقاً/مدمجاً. تعليمات Claude لإنشاء طلب دمج مع `gh pr create`.
+**الافتراضي:** ينكر التوقف عند عدم وجود طلب سحب للفرع الحالي، أو عند إغلاق أو دمج طلب السحب الموجود. يرشد Claude لإنشاء PR باستخدام `gh pr create`.
-بدون معاملات.
+لا توجد معاملات.
-تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والتحقق منها.
-قم بتشغيل `gh auth login` بـ personal access token يملك نطاق `repo` للوصول للقراءة إلى
-طلبات الدمج. إذا لم يتم تثبيت `gh` أو لم يتم التحقق منها، تفشل السياسة بشكل مفتوح وتبلغ السبب إلى Claude.
+تتطلب هذه السياسة [GitHub CLI](https://cli.github.com/) (`gh`) أن تكون مثبتة ومصرح بها.
+قم بتشغيل `gh auth login` برمز وصول شخصي يتمتع بنطاق `repo` لقراءة طلبات السحب.
+إذا لم تكن `gh` مثبتة أو غير مصرح بها، تفشل السياسة open وتبلغ السبب إلى Claude.
---
@@ -544,14 +544,14 @@ icon: shield
### `require-ci-green-before-stop`
**الحدث:** Stop
-**الإعداد الافتراضي:** رفض التوقف عندما تكون فحوصات CI فاشلة أو لا تزال قيد التشغيل على الفرع الحالي. يفحص كل من مسارات عمل GitHub Actions والفحوصات من جهات خارجية (مثلاً CodeRabbit, SonarCloud, Codecov). يتعامل مع الاستنتاجات `skipped` كنجاح. إرجاع رسالة إعلامية عندما تمر جميع الفحوصات.
+**الافتراضي:** ينكر التوقف عند فشل فحوصات CI أو استمرار تشغيلها على الفرع الحالي. يتحقق من كل من تشغيل مسار GitHub Actions والفحوصات من طرف ثالث (على سبيل المثال، CodeRabbit, SonarCloud, Codecov). يعامل `skipped` و `cancelled` على أنها نجاح. يرجع رسالة إعلامية عند نجاح جميع الفحوصات.
-بدون معاملات.
+لا توجد معاملات.
-تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والتحقق منها.
-قم بتشغيل `gh auth login` بـ personal access token يملك نطاق `repo` للوصول للقراءة إلى
-مسارات عمل Actions والـ Checks API. إذا لم يتم تثبيت `gh` أو لم يتم التحقق منها، تفشل السياسة بشكل مفتوح وتبلغ السبب إلى Claude.
+تتطلب هذه السياسة [GitHub CLI](https://cli.github.com/) (`gh`) أن تكون مثبتة ومصرح بها.
+قم بتشغيل `gh auth login` برمز وصول شخصي يتمتع بنطاق `repo` لقراءة تشغيل مسارات Actions و Checks API.
+إذا لم تكن `gh` مثبتة أو غير مصرح بها، تفشل السياسة open وتبلغ السبب إلى Claude.
---
@@ -560,7 +560,7 @@ icon: shield
## تعطيل السياسات الفردية
-أزل سياسة محددة من `enabledPolicies` في إعدادك، أو قم بإيقافها في علامة Policies بلوحة التحكم.
+أزل سياسة محددة من `enabledPolicies` في تكوينك، أو قم بتبديلها في علامة التبويب Policies بلوحة المعلومات.
```json
{
@@ -571,4 +571,4 @@ icon: shield
}
```
-السياسات غير المدرجة في `enabledPolicies` لا تعمل، حتى إذا كانت هناك إدخالات `policyParams` لها.
\ No newline at end of file
+السياسات غير المدرجة في `enabledPolicies` لا تعمل، حتى إذا كانت إدخالات `policyParams` موجودة لها.
\ No newline at end of file
diff --git a/docs/de/built-in-policies.mdx b/docs/de/built-in-policies.mdx
index 2db00a8d..e9f74fea 100644
--- a/docs/de/built-in-policies.mdx
+++ b/docs/de/built-in-policies.mdx
@@ -1,19 +1,19 @@
---
-title: Integrierte Richtlinien
-description: "Alle 30 integrierten Richtlinien, die häufige Fehlerquellen bei Agenten abdecken"
+title: Integrierte Policies
+description: "Alle 30 integrierten Policies, die häufige Fehlerszenarien von Agenten abfangen"
icon: shield
---
-failproofai wird mit 30 integrierten Richtlinien geliefert, die häufige Fehlerquellen bei Agenten abdecken. Jede Richtlinie wird bei einem bestimmten Hook-Ereignistyp und Toolnamen ausgelöst. Neun Richtlinien akzeptieren Parameter, mit denen Sie ihr Verhalten anpassen können, ohne Code zu schreiben. Vier Workflow-Richtlinien erzwingen eine Commit → Push → PR → CI-Pipeline, bevor Claude anhält.
+failproofai wird mit 30 integrierten Policies ausgeliefert, die häufige Fehlerszenarien von Agenten abfangen. Jede Policy wird bei einem bestimmten Hook-Ereignistyp und Toolnamen ausgelöst. Neun Policies akzeptieren Parameter, mit denen Sie ihr Verhalten anpassen können, ohne Code zu schreiben. Vier Workflow-Policies erzwingen eine commit → push → PR → CI-Pipeline, bevor Claude stoppt.
---
## Übersicht
-Richtlinien sind in Kategorien gruppiert:
+Policies sind in Kategorien gruppiert:
-| Kategorie | Richtlinien | Hook-Typ |
-|-----------|-------------|----------|
+| Kategorie | Policies | Hook-Typ |
+|-----------|----------|----------|
| [Gefährliche Befehle](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [Secrets (Sanitizer)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [Umgebung](#environment) | block-env-files, protect-env-vars | PreToolUse |
@@ -24,7 +24,7 @@ Richtlinien sind in Kategorien gruppiert:
| [Paketmanager](#package-managers) | prefer-package-manager | PreToolUse |
| [Workflow](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — verhindert, dass der Agent fortfahren kann.
+- **`block-`** — verhindert, dass der Agent fortfährt.
- **`warn-`** — gibt dem Agenten zusätzlichen Kontext, damit er sich selbst korrigieren kann.
- **`sanitize-`** — bereinigt sensible Daten aus der Tool-Ausgabe, bevor der Agent sie sieht.
- **`require-`** — blockiert das Stop-Ereignis, bis die Bedingungen erfüllt sind.
@@ -32,7 +32,7 @@ Richtlinien sind in Kategorien gruppiert:
---
-Jede Richtlinie unterstützt ein optionales `hint`-Feld in `policyParams`. Der Hinweis wird an die deny- oder instruct-Nachricht angehängt, die Claude sieht, und bietet umsetzbare Hinweise, ohne den Richtliniencode zu ändern. Funktioniert mit integrierten, benutzerdefinierten und konventionsbasierten Richtlinien. Weitere Informationen finden Sie unter [Konfiguration → hint](/de/configuration#hint-cross-cutting).
+Jede Policy unterstützt ein optionales `hint`-Feld in `policyParams`. Der Hinweis wird an die deny- oder instruct-Nachricht angehängt, die Claude sieht, und bietet umsetzbare Hilfestellung, ohne den Policy-Code zu ändern. Funktioniert mit integrierten, benutzerdefinierten und konventionsbasierten Policies. Siehe [Konfiguration → hint](/de/configuration#hint-cross-cutting) für Details.
---
@@ -46,13 +46,13 @@ Verhindert, dass Agenten Operationen ausführen, die schwer rückgängig zu mach
**Ereignis:** PreToolUse (Bash)
**Standard:** Verweigert jeden `sudo`-Befehl.
-Blockiert Aufrufe, die das Schlüsselwort `sudo` enthalten. Die Mustererkennung erfolgt auf geparsten Befehls-Tokens, nicht auf dem rohen String, um Umgehungsversuche über Shell-Operator-Injection zu verhindern.
+Blockiert Aufrufe, die das Schlüsselwort `sudo` enthalten. Der Musterabgleich erfolgt anhand geparster Befehlstoken, nicht anhand des Rohstrings, um Umgehungsversuche über Shell-Operatoren zu verhindern.
**Parameter:**
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `allowPatterns` | `string[]` | `[]` | Exakte Befehlspräfixe, die erlaubt sind. Jeder Eintrag wird gegen die geparsten argv-Tokens abgeglichen. |
+| `allowPatterns` | `string[]` | `[]` | Exakte Befehlspräfixe, die erlaubt sind. Jeder Eintrag wird mit den geparsten argv-Token abgeglichen. |
**Beispiel:**
@@ -69,7 +69,7 @@ Blockiert Aufrufe, die das Schlüsselwort `sudo` enthalten. Die Mustererkennung
Mit dieser Konfiguration ist `sudo systemctl status nginx` erlaubt, aber `sudo rm /etc/hosts` wird verweigert.
-Muster werden gegen geparste Tokens abgeglichen, nicht gegen den rohen Befehlsstring. Dies verhindert Umgehungsversuche über angehängte Shell-Operatoren (z. B. entspricht `sudo systemctl status x; rm -rf /` nicht `sudo systemctl status *`).
+Muster werden gegen geparste Token abgeglichen, nicht gegen den Rohbefehlsstring. Dies verhindert Umgehungsversuche über angehängte Shell-Operatoren (z. B. entspricht `sudo systemctl status x; rm -rf /` nicht `sudo systemctl status *`).
---
@@ -119,12 +119,12 @@ Keine Parameter.
## Secrets (Sanitizer)
-Verhindert, dass Agenten Zugangsdaten in ihren Kontext oder ihre Ausgabe weitergeben. Sanitizer-Richtlinien werden bei **PostToolUse**-Ereignissen ausgelöst. Wenn Claude einen Bash-Befehl ausführt, eine Datei liest oder ein beliebiges Tool aufruft, prüfen diese Richtlinien die Ausgabe, bevor sie an Claude zurückgegeben wird. Wird ein Secret-Muster erkannt, gibt die Richtlinie eine Deny-Entscheidung zurück, die verhindert, dass die Ausgabe weitergeleitet wird.
+Verhindert, dass Agenten Zugangsdaten in ihren Kontext oder ihre Ausgabe einschleusen. Sanitizer-Policies werden bei **PostToolUse**-Ereignissen ausgelöst. Wenn Claude einen Bash-Befehl ausführt, eine Datei liest oder ein beliebiges Tool aufruft, prüfen diese Policies die Ausgabe, bevor sie an Claude zurückgegeben wird. Wird ein Secret-Muster erkannt, gibt die Policy eine deny-Entscheidung zurück, die verhindert, dass die Ausgabe weitergeleitet wird.
### `sanitize-jwt`
**Ereignis:** PostToolUse (alle Tools)
-**Standard:** Schwärzt JWT-Tokens (drei base64url-Segmente, getrennt durch `.`).
+**Standard:** Schwärzt JWT-Token (drei base64url-Segmente, getrennt durch `.`).
Keine Parameter.
@@ -133,7 +133,7 @@ Keine Parameter.
### `sanitize-api-keys`
**Ereignis:** PostToolUse (alle Tools)
-**Standard:** Schwärzt gängige API-Key-Formate: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS-Zugriffsschlüssel (`AKIA`), Stripe-Schlüssel (`sk_live_`, `sk_test_`) und Google API-Schlüssel (`AIza`).
+**Standard:** Schwärzt gängige API-Key-Formate: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS-Zugriffsschlüssel (`AKIA`), Stripe-Schlüssel (`sk_live_`, `sk_test_`) und Google-API-Schlüssel (`AIza`).
**Parameter:**
@@ -161,7 +161,7 @@ Keine Parameter.
### `sanitize-connection-strings`
**Ereignis:** PostToolUse (alle Tools)
-**Standard:** Schwärzt Datenbankverbindungsstrings mit eingebetteten Zugangsdaten (z. B. `postgresql://user:password@host/db`).
+**Standard:** Schwärzt Datenbankverbindungsstrings, die eingebettete Zugangsdaten enthalten (z. B. `postgresql://user:password@host/db`).
Keine Parameter.
@@ -179,7 +179,7 @@ Keine Parameter.
### `sanitize-bearer-tokens`
**Ereignis:** PostToolUse (alle Tools)
-**Standard:** Schwärzt `Authorization: Bearer `-Header, bei denen der Token 20 oder mehr Zeichen hat.
+**Standard:** Schwärzt `Authorization: Bearer `-Header, bei denen das Token 20 oder mehr Zeichen lang ist.
Keine Parameter.
@@ -194,7 +194,7 @@ Schützt sensible Umgebungskonfigurationen davor, von Agenten gelesen oder offen
**Ereignis:** PreToolUse (Bash, Read)
**Standard:** Verweigert das Lesen von `.env`-Dateien über `cat .env`, `Read`-Tool-Aufrufe mit `.env` als Dateipfad usw.
-Blockiert keine `.envrc`- oder anderen umgebungsnahen Dateien – nur Dateien, die exakt `.env` heißen.
+Blockiert keine `.envrc`- oder anderen umgebungsähnlichen Dateien – nur Dateien, die exakt `.env` heißen.
Keine Parameter.
@@ -211,7 +211,7 @@ Keine Parameter.
## Dateizugriff
-Hält Agenten innerhalb der Projektgrenzen und fernab von sensiblen Dateien.
+Hält Agenten innerhalb der Projektgrenzen und von sensiblen Dateien fern.
### `block-read-outside-cwd`
@@ -222,7 +222,7 @@ Hält Agenten innerhalb der Projektgrenzen und fernab von sensiblen Dateien.
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `allowPaths` | `string[]` | `[]` | Absolute Pfadpräfixe, die auch außerhalb des aktuellen Verzeichnisses erlaubt sind. |
+| `allowPaths` | `string[]` | `[]` | Absolute Pfadpräfixe, die auch außerhalb des cwd erlaubt sind. |
**Beispiel:**
@@ -247,7 +247,7 @@ Hält Agenten innerhalb der Projektgrenzen und fernab von sensiblen Dateien.
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `additionalPatterns` | `string[]` | `[]` | Zusätzliche Dateinamenmuster (Glob-Format) zum Blockieren. |
+| `additionalPatterns` | `string[]` | `[]` | Zusätzliche Dateinamenmuster (Glob-Stil), die blockiert werden sollen. |
**Beispiel:**
@@ -276,7 +276,7 @@ Verhindert versehentliche Pushes, Force-Pushes und Branch-Fehler, die schwer rü
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Branch-Namen, auf die nicht direkt gepusht werden darf. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Branch-Namen, zu denen nicht direkt gepusht werden darf. |
**Beispiel:**
@@ -291,7 +291,7 @@ Verhindert versehentliche Pushes, Force-Pushes und Branch-Fehler, die schwer rü
```
-Um das Pushen auf alle Branches zu erlauben (und diese Richtlinie damit effektiv zu deaktivieren, ohne sie aus `enabledPolicies` zu entfernen), setzen Sie `protectedBranches: []`.
+Um das Pushen zu allen Branches zu erlauben (und diese Policy damit effektiv zu deaktivieren, ohne sie aus `enabledPolicies` zu entfernen), setzen Sie `protectedBranches: []`.
---
@@ -314,7 +314,7 @@ Um das Pushen auf alle Branches zu erlauben (und diese Richtlinie damit effektiv
**Ereignis:** PreToolUse (Bash)
**Standard:** Verweigert `git push --force` und `git push -f`.
-Keine richtlinienspezifischen Parameter. Verwenden Sie das übergreifende [`hint`](/de/configuration#hint-cross-cutting), um Alternativen vorzuschlagen:
+Keine policy-spezifischen Parameter. Verwenden Sie das übergreifende [`hint`](/de/configuration#hint-cross-cutting), um Alternativen vorzuschlagen:
```json
{
@@ -331,7 +331,7 @@ Keine richtlinienspezifischen Parameter. Verwenden Sie das übergreifende [`hint
### `warn-git-amend`
**Ereignis:** PreToolUse (Bash)
-**Standard:** Weist Claude an, vorsichtig vorzugehen, wenn `git commit --amend` ausgeführt wird. Blockiert den Befehl nicht.
+**Standard:** Weist Claude an, beim Ausführen von `git commit --amend` vorsichtig vorzugehen. Blockiert den Befehl nicht.
Keine Parameter.
@@ -340,7 +340,7 @@ Keine Parameter.
### `warn-git-stash-drop`
**Ereignis:** PreToolUse (Bash)
-**Standard:** Weist Claude an, zu bestätigen, bevor `git stash drop` ausgeführt wird. Blockiert den Befehl nicht.
+**Standard:** Weist Claude an, vor dem Ausführen von `git stash drop` zu bestätigen. Blockiert den Befehl nicht.
Keine Parameter.
@@ -349,7 +349,7 @@ Keine Parameter.
### `warn-all-files-staged`
**Ereignis:** PreToolUse (Bash)
-**Standard:** Weist Claude an, zu überprüfen, was es staged, wenn `git add -A` oder `git add .` ausgeführt wird. Blockiert den Befehl nicht.
+**Standard:** Weist Claude an, zu prüfen, was es stagt, wenn es `git add -A` oder `git add .` ausführt. Blockiert den Befehl nicht.
Keine Parameter.
@@ -357,7 +357,7 @@ Keine Parameter.
## Datenbank
-Erkennt destruktive SQL-Operationen, bevor sie gegen Ihre Datenbank ausgeführt werden.
+Fängt destruktive SQL-Operationen ab, bevor sie gegen Ihre Datenbank ausgeführt werden.
### `warn-destructive-sql`
@@ -384,7 +384,7 @@ Gibt Agenten zusätzlichen Kontext vor potenziell riskanten, aber nicht destrukt
### `warn-large-file-write`
**Ereignis:** PreToolUse (Write)
-**Standard:** Weist Claude an, zu bestätigen, bevor Dateien geschrieben werden, die größer als 1024 KB sind.
+**Standard:** Weist Claude an, zu bestätigen, bevor Dateien mit mehr als 1024 KB geschrieben werden.
**Parameter:**
@@ -405,7 +405,7 @@ Gibt Agenten zusätzlichen Kontext vor potenziell riskanten, aber nicht destrukt
```
-Der Hook-Handler erzwingt ein 1-MB-stdin-Limit für Payloads. Um diese Richtlinie mit kleinen Inhalten zu testen, setzen Sie `thresholdKb` auf einen Wert deutlich unter 1024.
+Der Hook-Handler erzwingt ein 1-MB-stdin-Limit für Payloads. Um diese Policy mit kleinen Inhalten zu testen, setzen Sie `thresholdKb` auf einen Wert deutlich unter 1024.
---
@@ -444,16 +444,16 @@ Legt fest, welche Paketmanager der Agent verwenden darf.
### `prefer-package-manager`
**Ereignis:** PreToolUse (Bash)
-**Standard:** Deaktiviert. Wenn aktiviert, blockiert es jeden Paketmanager-Befehl, der nicht in der `allowed`-Liste steht, und weist Claude an, den Befehl mit einem erlaubten Manager umzuschreiben.
+**Standard:** Deaktiviert. Wenn aktiviert, blockiert jeden Paketmanager-Befehl, der nicht in der `allowed`-Liste enthalten ist, und weist Claude an, den Befehl mit einem erlaubten Manager umzuschreiben.
Erkennt: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `allowed` | string[] | `[]` | Erlaubte Paketmanager-Namen. Jeder erkannte Manager, der nicht in dieser Liste steht, wird blockiert. Bei leer ist die Richtlinie wirkungslos. |
+| `allowed` | string[] | `[]` | Erlaubte Paketmanager-Namen. Jeder erkannte Manager, der nicht in dieser Liste steht, wird blockiert. Wenn leer, ist die Policy wirkungslos. |
| `blocked` | string[] | `[]` | Zusätzliche Manager-Namen, die über die integrierte Liste hinaus blockiert werden sollen (z. B. `['pdm', 'pipx']`). |
-Die integrierte Sperrliste umfasst: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Verwenden Sie `blocked`, um Manager hinzuzufügen, die nicht in dieser Liste enthalten sind.
+Die integrierte Blockliste umfasst: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Verwenden Sie `blocked`, um Manager hinzuzufügen, die nicht in dieser Liste enthalten sind.
**Beispielkonfiguration:**
@@ -469,7 +469,7 @@ Die integrierte Sperrliste umfasst: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun,
}
```
-Mit dieser Konfiguration werden sowohl `pip install flask` als auch `pdm install flask` verweigert, mit einer Meldung, die Claude anweist, stattdessen `uv` oder `bun` zu verwenden. Befehle wie `uv pip install flask` sind erlaubt, da `uv` in der Allowlist steht und zuerst geprüft wird.
+Mit dieser Konfiguration werden `pip install flask` und `pdm install flask` beide mit einer Meldung verweigert, die Claude auffordert, stattdessen `uv` oder `bun` zu verwenden. Befehle wie `uv pip install flask` sind erlaubt, da `uv` in der Allowlist steht und zuerst geprüft wird.
---
@@ -480,7 +480,7 @@ Erkennt, wenn Agenten feststecken oder sich unerwartet verhalten.
### `warn-repeated-tool-calls`
**Ereignis:** PreToolUse (alle Tools)
-**Standard:** Weist Claude an, zu überdenken, wenn dasselbe Tool 3 oder mehr Mal mit identischen Parametern aufgerufen wird – ein häufiges Zeichen dafür, dass der Agent in einer Schleife feststeckt.
+**Standard:** Weist Claude an, zu überdenken, wenn dasselbe Tool 3-mal oder öfter mit identischen Parametern aufgerufen wird – ein häufiges Zeichen dafür, dass der Agent in einer Schleife feststeckt.
Keine Parameter.
@@ -488,14 +488,14 @@ Keine Parameter.
## Workflow
-Erzwingt einen disziplinierten Sitzungsabschluss-Workflow. Diese Richtlinien werden beim **Stop**-Ereignis ausgelöst und verhindern, dass Claude anhält, bis jede Bedingung erfüllt ist. Sie folgen einer natürlichen Abhängigkeitskette: Commit → Push → PR → CI. Wenn eine Richtlinie verweigert, werden spätere Richtlinien in der Kette übersprungen (Deny schließt kurz).
+Erzwingt einen disziplinierten Sitzungsabschluss-Workflow. Diese Policies werden beim **Stop**-Ereignis ausgelöst und verhindern, dass Claude stoppt, bis jede Bedingung erfüllt ist. Sie folgen einer natürlichen Abhängigkeitskette: commit → push → PR → CI. Wenn eine Policy verweigert, werden spätere Policies in der Kette übersprungen (deny schließt kurz).
-Alle Workflow-Richtlinien sind **fail-open**: Wenn das erforderliche Tool nicht verfügbar ist (z. B. `gh` nicht installiert, kein Git-Remote vorhanden), lässt die Richtlinie den Vorgang zu und gibt eine informative Nachricht aus, warum die Prüfung übersprungen wurde.
+Alle Workflow-Policies sind **fail-open**: Wenn das benötigte Tool nicht verfügbar ist (z. B. `gh` nicht installiert, kein Git-Remote), erlaubt die Policy den Vorgang mit einer informativen Meldung, die erklärt, warum die Prüfung übersprungen wurde.
### `require-commit-before-stop`
**Ereignis:** Stop
-**Standard:** Verweigert das Anhalten, wenn uncommittete Änderungen vorhanden sind (geänderte, gestagte oder nicht verfolgte Dateien). Gibt eine informative Nachricht zurück, wenn das Arbeitsverzeichnis sauber ist.
+**Standard:** Verweigert das Stoppen, wenn uncommittete Änderungen vorliegen (geänderte, gestagte oder nicht verfolgte Dateien). Gibt eine informative Meldung zurück, wenn das Arbeitsverzeichnis sauber ist.
Keine Parameter.
@@ -504,13 +504,13 @@ Keine Parameter.
### `require-push-before-stop`
**Ereignis:** Stop
-**Standard:** Verweigert das Anhalten, wenn es nicht gepushte Commits gibt oder wenn der aktuelle Branch keinen Remote-Tracking-Branch hat. Schlägt `git push -u` vor, um bei Bedarf einen Tracking-Branch zu erstellen. Schlägt fehl-offen, wenn kein Remote konfiguriert ist.
+**Standard:** Verweigert das Stoppen, wenn nicht gepushte Commits vorhanden sind oder wenn der aktuelle Branch keinen Remote-Tracking-Branch hat. Schlägt `git push -u` vor, um bei Bedarf einen Tracking-Branch zu erstellen. Fail-open, wenn kein Remote konfiguriert ist.
**Parameter:**
| Parameter | Typ | Standard | Beschreibung |
|-----------|-----|----------|--------------|
-| `remote` | `string` | `"origin"` | Remote-Name, auf den gepusht werden soll. |
+| `remote` | `string` | `"origin"` | Remote-Name, zu dem gepusht werden soll. |
**Beispiel:**
@@ -529,14 +529,14 @@ Keine Parameter.
### `require-pr-before-stop`
**Ereignis:** Stop
-**Standard:** Verweigert das Anhalten, wenn für den aktuellen Branch kein Pull Request existiert oder wenn der vorhandene PR geschlossen/gemergt wurde. Weist Claude an, mit `gh pr create` einen PR zu erstellen.
+**Standard:** Verweigert das Stoppen, wenn kein Pull Request für den aktuellen Branch existiert oder wenn der vorhandene PR geschlossen/gemergt ist. Weist Claude an, einen PR mit `gh pr create` zu erstellen.
Keine Parameter.
-Diese Richtlinie erfordert, dass [GitHub CLI](https://cli.github.com/) (`gh`) installiert und authentifiziert ist.
+Diese Policy erfordert, dass [GitHub CLI](https://cli.github.com/) (`gh`) installiert und authentifiziert ist.
Führen Sie `gh auth login` mit einem Personal Access Token aus, das den `repo`-Scope für Lesezugriff auf
-Pull Requests hat. Wenn `gh` nicht installiert oder nicht authentifiziert ist, schlägt die Richtlinie fail-open fehl und meldet den Grund an Claude.
+Pull Requests besitzt. Wenn `gh` nicht installiert oder nicht authentifiziert ist, ist die Policy fail-open und meldet den Grund an Claude.
---
@@ -544,23 +544,23 @@ Pull Requests hat. Wenn `gh` nicht installiert oder nicht authentifiziert ist, s
### `require-ci-green-before-stop`
**Ereignis:** Stop
-**Standard:** Verweigert das Anhalten, wenn CI-Prüfungen für den aktuellen Branch fehlschlagen oder noch laufen. Prüft sowohl GitHub Actions-Workflow-Ausführungen als auch Drittanbieter-Bot-Prüfungen (z. B. CodeRabbit, SonarCloud, Codecov). Behandelt `skipped`-Abschlüsse als Erfolg. Gibt eine informative Nachricht zurück, wenn alle Prüfungen bestanden sind.
+**Standard:** Verweigert das Stoppen, wenn CI-Prüfungen fehlschlagen oder noch auf dem aktuellen Branch laufen. Prüft sowohl GitHub Actions-Workflow-Runs als auch Drittanbieter-Bot-Prüfungen (z. B. CodeRabbit, SonarCloud, Codecov). Behandelt `skipped`- und `cancelled`-Abschlüsse als Erfolg. Gibt eine informative Meldung zurück, wenn alle Prüfungen bestanden sind.
Keine Parameter.
-Diese Richtlinie erfordert, dass [GitHub CLI](https://cli.github.com/) (`gh`) installiert und authentifiziert ist.
+Diese Policy erfordert, dass [GitHub CLI](https://cli.github.com/) (`gh`) installiert und authentifiziert ist.
Führen Sie `gh auth login` mit einem Personal Access Token aus, das den `repo`-Scope für Lesezugriff auf
-Actions-Workflow-Ausführungen und die Checks API hat. Wenn `gh` nicht installiert oder nicht authentifiziert ist, schlägt die Richtlinie fail-open fehl und meldet den Grund an Claude.
+Actions-Workflow-Runs und die Checks API besitzt. Wenn `gh` nicht installiert oder nicht authentifiziert ist, ist die Policy fail-open und meldet den Grund an Claude.
---
---
-## Einzelne Richtlinien deaktivieren
+## Einzelne Policies deaktivieren
-Entfernen Sie eine bestimmte Richtlinie aus `enabledPolicies` in Ihrer Konfiguration, oder deaktivieren Sie sie im Dashboard-Tab „Policies".
+Entfernen Sie eine bestimmte Policy aus `enabledPolicies` in Ihrer Konfiguration, oder deaktivieren Sie sie im Policies-Tab des Dashboards.
```json
{
@@ -571,4 +571,4 @@ Entfernen Sie eine bestimmte Richtlinie aus `enabledPolicies` in Ihrer Konfigura
}
```
-Richtlinien, die nicht in `enabledPolicies` aufgeführt sind, werden nicht ausgeführt, auch wenn `policyParams`-Einträge für sie vorhanden sind.
\ No newline at end of file
+Policies, die nicht in `enabledPolicies` aufgeführt sind, werden nicht ausgeführt, auch wenn `policyParams`-Einträge für sie vorhanden sind.
\ No newline at end of file
diff --git a/docs/es/built-in-policies.mdx b/docs/es/built-in-policies.mdx
index de02f9cc..88431706 100644
--- a/docs/es/built-in-policies.mdx
+++ b/docs/es/built-in-policies.mdx
@@ -1,19 +1,19 @@
---
-title: Políticas integradas
+title: Políticas Integradas
description: "Las 30 políticas integradas que detectan los modos de fallo más comunes en agentes"
icon: shield
---
-failproofai incluye 30 políticas integradas que detectan los modos de fallo más comunes en agentes. Cada política se activa en un tipo de evento de hook específico y un nombre de herramienta determinado. Nueve políticas aceptan parámetros que permiten ajustar su comportamiento sin escribir código. Cuatro políticas de flujo de trabajo imponen un pipeline de commit → push → PR → CI antes de que Claude se detenga.
+failproofai incluye 30 políticas integradas que detectan los modos de fallo más comunes en agentes. Cada política se activa en un tipo de evento de hook específico y en un nombre de herramienta determinado. Nueve políticas aceptan parámetros que permiten ajustar su comportamiento sin escribir código. Cuatro políticas de flujo de trabajo imponen un pipeline de commit → push → PR → CI antes de que Claude se detenga.
---
## Descripción general
-Las políticas están agrupadas por categorías:
+Las políticas están agrupadas en categorías:
| Categoría | Políticas | Tipo de hook |
-|-----------|-----------|--------------|
+|----------|----------|-----------|
| [Comandos peligrosos](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [Secretos (sanitizadores)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [Entorno](#environment) | block-env-files, protect-env-vars | PreToolUse |
@@ -26,33 +26,33 @@ Las políticas están agrupadas por categorías:
- **`block-`** — impide que el agente continúe.
- **`warn-`** — proporciona contexto adicional al agente para que pueda corregirse.
-- **`sanitize-`** — elimina datos sensibles de la salida de la herramienta antes de que el agente los vea.
+- **`sanitize-`** — elimina datos sensibles de la salida de una herramienta antes de que el agente la vea.
- **`require-`** — bloquea el evento Stop hasta que se cumplan las condiciones.
---
-Todas las políticas admiten un campo opcional `hint` en `policyParams`. El hint se añade al mensaje de deny o instruct que ve Claude, proporcionando orientación práctica sin modificar el código de la política. Funciona con políticas integradas, personalizadas y de convención. Consulta [Configuración → hint](/es/configuration#hint-cross-cutting) para más detalles.
+Todas las políticas admiten un campo opcional `hint` en `policyParams`. El hint se agrega al mensaje de deny o instruct que ve Claude, ofreciendo orientación práctica sin modificar el código de la política. Funciona con políticas integradas, personalizadas y de convención. Consulta [Configuración → hint](/es/configuration#hint-cross-cutting) para más detalles.
---
## Comandos peligrosos
-Evita que los agentes ejecuten operaciones difíciles de deshacer o que puedan dañar el sistema host.
+Evita que los agentes ejecuten operaciones difíciles de deshacer o que puedan dañar el sistema anfitrión.
### `block-sudo`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega cualquier comando `sudo`.
+**Comportamiento predeterminado:** Deniega cualquier comando `sudo`.
-Bloquea las invocaciones que incluyen la palabra clave `sudo`. La coincidencia de patrones se realiza sobre los tokens del comando analizado, no sobre la cadena sin procesar, para evitar evasiones mediante inyección de operadores de shell.
+Bloquea las invocaciones que incluyen la palabra clave `sudo`. La coincidencia de patrones se realiza sobre los tokens de comando analizados, no sobre la cadena sin procesar, para evitar elusiones mediante inyección de operadores de shell.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `allowPatterns` | `string[]` | `[]` | Prefijos de comando exactos que están permitidos. Cada entrada se compara con los tokens argv analizados. |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
+| `allowPatterns` | `string[]` | `[]` | Prefijos de comandos exactos que están permitidos. Cada entrada se compara con los tokens argv analizados. |
**Ejemplo:**
@@ -69,7 +69,7 @@ Bloquea las invocaciones que incluyen la palabra clave `sudo`. La coincidencia d
Con esta configuración, `sudo systemctl status nginx` está permitido, pero `sudo rm /etc/hosts` es denegado.
-Los patrones se comparan con los tokens analizados, no con la cadena del comando sin procesar. Esto evita evasiones mediante operadores de shell añadidos (p. ej., `sudo systemctl status x; rm -rf /` no coincide con `sudo systemctl status *`).
+Los patrones se comparan con los tokens analizados, no con la cadena de comando sin procesar. Esto evita elusiones mediante operadores de shell añadidos (p. ej., `sudo systemctl status x; rm -rf /` no coincide con `sudo systemctl status *`).
---
@@ -77,13 +77,13 @@ Los patrones se comparan con los tokens analizados, no con la cadena del comando
### `block-rm-rf`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega `rm -rf`, `rm -fr` y formas similares de eliminación recursiva.
+**Comportamiento predeterminado:** Deniega `rm -rf`, `rm -fr` y formas similares de eliminación recursiva.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `allowPaths` | `string[]` | `[]` | Rutas donde la eliminación recursiva está permitida (p. ej., `/tmp`). |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
+| `allowPaths` | `string[]` | `[]` | Rutas donde es seguro eliminar de forma recursiva (p. ej., `/tmp`). |
**Ejemplo:**
@@ -102,7 +102,7 @@ Los patrones se comparan con los tokens analizados, no con la cadena del comando
### `block-curl-pipe-sh`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega `curl | bash`, `curl | sh`, `wget | bash` y patrones similares.
+**Comportamiento predeterminado:** Deniega `curl | bash`, `curl | sh`, `wget | bash` y patrones similares.
Sin parámetros.
@@ -111,7 +111,7 @@ Sin parámetros.
### `block-failproofai-commands`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega comandos que desinstalarían o deshabilitarían failproofai (p. ej., `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**Comportamiento predeterminado:** Deniega comandos que desinstalarían o desactivarían failproofai (p. ej., `npm uninstall failproofai`, `failproofai policies --uninstall`).
Sin parámetros.
@@ -119,12 +119,12 @@ Sin parámetros.
## Secretos (sanitizadores)
-Evita que los agentes filtren credenciales en su contexto o salida. Las políticas sanitizadoras se activan en eventos **PostToolUse**. Cuando Claude ejecuta un comando Bash, lee un archivo o llama a cualquier herramienta, estas políticas inspeccionan la salida antes de que se devuelva a Claude. Si se detecta un patrón de secreto, la política devuelve una decisión de deny que impide que la salida sea enviada de vuelta.
+Evita que los agentes filtren credenciales en su contexto o salida. Las políticas de sanitización se activan en eventos **PostToolUse**. Cuando Claude ejecuta un comando Bash, lee un archivo o invoca cualquier herramienta, estas políticas inspeccionan la salida antes de que se devuelva a Claude. Si se detecta un patrón de secreto, la política devuelve una decisión de deny que impide que la salida sea procesada.
### `sanitize-jwt`
**Evento:** PostToolUse (todas las herramientas)
-**Por defecto:** Elimina tokens JWT (tres segmentos base64url separados por `.`).
+**Comportamiento predeterminado:** Redacta tokens JWT (tres segmentos base64url separados por `.`).
Sin parámetros.
@@ -133,13 +133,13 @@ Sin parámetros.
### `sanitize-api-keys`
**Evento:** PostToolUse (todas las herramientas)
-**Por defecto:** Elimina formatos comunes de claves API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), claves de acceso AWS (`AKIA`), claves de Stripe (`sk_live_`, `sk_test_`) y claves de API de Google (`AIza`).
+**Comportamiento predeterminado:** Redacta formatos comunes de claves API: Anthropic (`sk-ant-`), OpenAI (`sk-`), PATs de GitHub (`ghp_`), claves de acceso de AWS (`AKIA`), claves de Stripe (`sk_live_`, `sk_test_`) y claves de API de Google (`AIza`).
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Patrones regex adicionales a tratar como secretos. |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Patrones regex adicionales para tratar como secretos. |
**Ejemplo:**
@@ -161,7 +161,7 @@ Sin parámetros.
### `sanitize-connection-strings`
**Evento:** PostToolUse (todas las herramientas)
-**Por defecto:** Elimina cadenas de conexión a bases de datos que contienen credenciales incrustadas (p. ej., `postgresql://user:password@host/db`).
+**Comportamiento predeterminado:** Redacta cadenas de conexión a bases de datos que contienen credenciales embebidas (p. ej., `postgresql://user:password@host/db`).
Sin parámetros.
@@ -170,7 +170,7 @@ Sin parámetros.
### `sanitize-private-key-content`
**Evento:** PostToolUse (todas las herramientas)
-**Por defecto:** Elimina bloques PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, etc.).
+**Comportamiento predeterminado:** Redacta bloques PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, etc.).
Sin parámetros.
@@ -179,7 +179,7 @@ Sin parámetros.
### `sanitize-bearer-tokens`
**Evento:** PostToolUse (todas las herramientas)
-**Por defecto:** Elimina encabezados `Authorization: Bearer ` donde el token tiene 20 o más caracteres.
+**Comportamiento predeterminado:** Redacta encabezados `Authorization: Bearer ` donde el token tiene 20 o más caracteres.
Sin parámetros.
@@ -192,9 +192,9 @@ Protege la configuración sensible del entorno para que los agentes no puedan le
### `block-env-files`
**Evento:** PreToolUse (Bash, Read)
-**Por defecto:** Deniega la lectura de archivos `.env` mediante `cat .env`, llamadas a la herramienta `Read` con `.env` como ruta de archivo, etc.
+**Comportamiento predeterminado:** Deniega la lectura de archivos `.env` mediante `cat .env`, llamadas a la herramienta `Read` con `.env` como ruta de archivo, etc.
-No bloquea `.envrc` ni otros archivos relacionados con el entorno; solo archivos con el nombre exacto `.env`.
+No bloquea `.envrc` ni otros archivos relacionados con el entorno; solo archivos denominados exactamente `.env`.
Sin parámetros.
@@ -203,7 +203,7 @@ Sin parámetros.
### `protect-env-vars`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega comandos que imprimen variables de entorno: `printenv`, `env`, `echo $VAR`.
+**Comportamiento predeterminado:** Deniega comandos que imprimen variables de entorno: `printenv`, `env`, `echo $VAR`.
Sin parámetros.
@@ -216,13 +216,13 @@ Mantiene a los agentes trabajando dentro de los límites del proyecto y alejados
### `block-read-outside-cwd`
**Evento:** PreToolUse (Read, Bash)
-**Por defecto:** Deniega la lectura de archivos fuera del directorio de trabajo actual (la raíz del proyecto).
+**Comportamiento predeterminado:** Deniega la lectura de archivos fuera del directorio de trabajo actual (la raíz del proyecto).
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `allowPaths` | `string[]` | `[]` | Prefijos de rutas absolutas permitidos aunque estén fuera del directorio de trabajo. |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
+| `allowPaths` | `string[]` | `[]` | Prefijos de rutas absolutas que están permitidos aunque estén fuera del cwd. |
**Ejemplo:**
@@ -241,13 +241,13 @@ Mantiene a los agentes trabajando dentro de los límites del proyecto y alejados
### `block-secrets-write`
**Evento:** PreToolUse (Write, Edit)
-**Por defecto:** Deniega escrituras en archivos habitualmente usados para claves privadas y certificados: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Comportamiento predeterminado:** Deniega escrituras en archivos habitualmente usados para claves privadas y certificados: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | Patrones de nombre de archivo adicionales (estilo glob) a bloquear. |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
+| `additionalPatterns` | `string[]` | `[]` | Patrones de nombre de archivo adicionales (estilo glob) que se deben bloquear. |
**Ejemplo:**
@@ -265,17 +265,17 @@ Mantiene a los agentes trabajando dentro de los límites del proyecto y alejados
## Git
-Previene pushes accidentales, force-pushes y errores de rama difíciles de deshacer.
+Previene pushes accidentales, force-pushes y errores de rama que son difíciles de deshacer.
### `block-push-master`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega `git push origin main` y `git push origin master`.
+**Comportamiento predeterminado:** Deniega `git push origin main` y `git push origin master`.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | Nombres de ramas a las que no se puede hacer push directamente. |
**Ejemplo:**
@@ -291,7 +291,7 @@ Previene pushes accidentales, force-pushes y errores de rama difíciles de desha
```
-Para permitir push a todas las ramas (deshabilitando efectivamente esta política sin eliminarla de `enabledPolicies`), establece `protectedBranches: []`.
+Para permitir push a todas las ramas (desactivando efectivamente esta política sin eliminarla de `enabledPolicies`), establece `protectedBranches: []`.
---
@@ -299,12 +299,12 @@ Para permitir push a todas las ramas (deshabilitando efectivamente esta polític
### `block-work-on-main`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega hacer checkout directamente a las ramas `main` o `master`.
+**Comportamiento predeterminado:** Deniega hacer checkout directamente de las ramas `main` o `master`.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | Nombres de ramas a las que no se puede hacer checkout directamente. |
---
@@ -312,9 +312,9 @@ Para permitir push a todas las ramas (deshabilitando efectivamente esta polític
### `block-force-push`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deniega `git push --force` y `git push -f`.
+**Comportamiento predeterminado:** Deniega `git push --force` y `git push -f`.
-Sin parámetros específicos de política. Usa el campo transversal [`hint`](/es/configuration#hint-cross-cutting) para sugerir alternativas:
+Sin parámetros específicos de la política. Usa el [`hint`](/es/configuration#hint-cross-cutting) transversal para sugerir alternativas:
```json
{
@@ -331,7 +331,7 @@ Sin parámetros específicos de política. Usa el campo transversal [`hint`](/es
### `warn-git-amend`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a proceder con cuidado al ejecutar `git commit --amend`. No bloquea el comando.
+**Comportamiento predeterminado:** Indica a Claude que proceda con cuidado al ejecutar `git commit --amend`. No bloquea el comando.
Sin parámetros.
@@ -340,7 +340,7 @@ Sin parámetros.
### `warn-git-stash-drop`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a confirmar antes de ejecutar `git stash drop`. No bloquea el comando.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de ejecutar `git stash drop`. No bloquea el comando.
Sin parámetros.
@@ -349,7 +349,7 @@ Sin parámetros.
### `warn-all-files-staged`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a revisar qué está añadiendo al área de staging cuando ejecuta `git add -A` o `git add .`. No bloquea el comando.
+**Comportamiento predeterminado:** Indica a Claude que revise lo que está añadiendo al área de preparación cuando ejecuta `git add -A` o `git add .`. No bloquea el comando.
Sin parámetros.
@@ -362,7 +362,7 @@ Detecta operaciones SQL destructivas antes de que se ejecuten contra tu base de
### `warn-destructive-sql`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a confirmar antes de ejecutar SQL que contenga `DROP TABLE`, `DROP DATABASE` o `DELETE` sin cláusula `WHERE`.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de ejecutar SQL que contenga `DROP TABLE`, `DROP DATABASE` o `DELETE` sin una cláusula `WHERE`.
Sin parámetros.
@@ -371,7 +371,7 @@ Sin parámetros.
### `warn-schema-alteration`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a confirmar antes de ejecutar sentencias `ALTER TABLE`.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de ejecutar sentencias `ALTER TABLE`.
Sin parámetros.
@@ -384,12 +384,12 @@ Proporciona contexto adicional a los agentes antes de operaciones potencialmente
### `warn-large-file-write`
**Evento:** PreToolUse (Write)
-**Por defecto:** Instruye a Claude a confirmar antes de escribir archivos de más de 1024 KB.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de escribir archivos de más de 1024 KB.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
| `thresholdKb` | `number` | `1024` | Umbral de tamaño de archivo en kilobytes a partir del cual se emite una advertencia. |
**Ejemplo:**
@@ -405,7 +405,7 @@ Proporciona contexto adicional a los agentes antes de operaciones potencialmente
```
-El manejador del hook impone un límite de 1 MB en stdin para los payloads. Para probar esta política con contenido pequeño, establece `thresholdKb` a un valor muy inferior a 1024.
+El manejador de hooks impone un límite de 1 MB en stdin para los payloads. Para probar esta política con contenido pequeño, establece `thresholdKb` en un valor muy inferior a 1024.
---
@@ -413,7 +413,7 @@ El manejador del hook impone un límite de 1 MB en stdin para los payloads. Para
### `warn-package-publish`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a confirmar antes de ejecutar `npm publish`.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de ejecutar `npm publish`.
Sin parámetros.
@@ -422,7 +422,7 @@ Sin parámetros.
### `warn-background-process`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a tener cuidado al lanzar procesos en segundo plano mediante `nohup`, `&`, `disown` o `screen`.
+**Comportamiento predeterminado:** Indica a Claude que tenga cuidado al lanzar procesos en segundo plano mediante `nohup`, `&`, `disown` o `screen`.
Sin parámetros.
@@ -431,7 +431,7 @@ Sin parámetros.
### `warn-global-package-install`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Instruye a Claude a confirmar antes de ejecutar `npm install -g`, `yarn global add` o `pip install` sin un entorno virtual.
+**Comportamiento predeterminado:** Indica a Claude que confirme antes de ejecutar `npm install -g`, `yarn global add` o `pip install` sin un entorno virtual.
Sin parámetros.
@@ -444,16 +444,16 @@ Impone qué gestores de paquetes puede utilizar el agente.
### `prefer-package-manager`
**Evento:** PreToolUse (Bash)
-**Por defecto:** Deshabilitado. Cuando está habilitado, bloquea cualquier comando de gestor de paquetes que no esté en la lista `allowed` e indica a Claude que reescriba el comando usando un gestor permitido.
+**Comportamiento predeterminado:** Desactivado. Cuando está habilitado, bloquea cualquier comando de gestor de paquetes que no esté en la lista `allowed` e indica a Claude que reescriba el comando usando un gestor permitido.
Detecta: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
-| `allowed` | string[] | `[]` | Nombres de gestores de paquetes permitidos. Cualquier gestor detectado que no esté en esta lista será bloqueado. Si está vacío, la política no hace nada. |
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-----------|------|---------|-------------|
+| `allowed` | string[] | `[]` | Nombres de gestores de paquetes permitidos. Cualquier gestor detectado que no esté en esta lista es bloqueado. Cuando está vacío, la política no tiene efecto. |
| `blocked` | string[] | `[]` | Nombres de gestores adicionales a bloquear más allá de la lista integrada (p. ej., `['pdm', 'pipx']`). |
-La lista de bloqueo integrada incluye: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Usa `blocked` para añadir gestores que no estén en esta lista.
+La lista de bloqueo integrada incluye: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Usa `blocked` para añadir gestores que no están en esta lista.
**Ejemplo de configuración:**
@@ -469,18 +469,18 @@ La lista de bloqueo integrada incluye: pip, pip3, npm, npx, yarn, pnpm, pnpx, bu
}
```
-Con esta configuración, tanto `pip install flask` como `pdm install flask` son denegados con un mensaje que indica a Claude que use `uv` o `bun`. Comandos como `uv pip install flask` están permitidos porque `uv` está en la lista de permitidos y se comprueba primero.
+Con esta configuración, tanto `pip install flask` como `pdm install flask` son denegados con un mensaje que indica a Claude que use `uv` o `bun` en su lugar. Comandos como `uv pip install flask` están permitidos porque `uv` está en la lista de permitidos y se verifica primero.
---
## Comportamiento de la IA
-Detecta cuándo los agentes se quedan atascados o se comportan de forma inesperada.
+Detecta cuándo los agentes se quedan bloqueados o se comportan de forma inesperada.
### `warn-repeated-tool-calls`
**Evento:** PreToolUse (todas las herramientas)
-**Por defecto:** Instruye a Claude a reconsiderar cuando la misma herramienta es llamada 3 o más veces con parámetros idénticos, lo que suele ser una señal de que el agente está atascado en un bucle.
+**Comportamiento predeterminado:** Indica a Claude que reconsidere cuando la misma herramienta se llama 3 o más veces con parámetros idénticos, lo cual es una señal habitual de que el agente está atascado en un bucle.
Sin parámetros.
@@ -488,14 +488,14 @@ Sin parámetros.
## Flujo de trabajo
-Impone un flujo de trabajo disciplinado al final de la sesión. Estas políticas se activan en el evento **Stop** y evitan que Claude se detenga hasta que se cumpla cada condición. Siguen una cadena de dependencia natural: commit → push → PR → CI. Si una política deniega, las políticas posteriores de la cadena se omiten (deny cortocircuita la cadena).
+Impone un flujo de trabajo disciplinado al final de la sesión. Estas políticas se activan en el evento **Stop** y deniegan a Claude la posibilidad de detenerse hasta que se cumpla cada condición. Siguen una cadena de dependencias natural: commit → push → PR → CI. Si una política deniega, las políticas posteriores en la cadena se omiten (la denegación interrumpe la cadena).
-Todas las políticas de flujo de trabajo son **fail-open**: si la herramienta requerida no está disponible (p. ej., `gh` no instalado, sin remote de git), la política permite la acción con un mensaje informativo explicando por qué se omitió la comprobación.
+Todas las políticas de flujo de trabajo son **fail-open**: si la herramienta requerida no está disponible (p. ej., `gh` no está instalado, no hay remote de git), la política permite la operación con un mensaje informativo que explica por qué se omitió la verificación.
### `require-commit-before-stop`
**Evento:** Stop
-**Por defecto:** Deniega la detención cuando hay cambios sin commitear (archivos modificados, en staging o sin seguimiento). Devuelve un mensaje informativo cuando el directorio de trabajo está limpio.
+**Comportamiento predeterminado:** Deniega la detención cuando hay cambios sin confirmar (archivos modificados, en el área de preparación o sin seguimiento). Devuelve un mensaje informativo cuando el directorio de trabajo está limpio.
Sin parámetros.
@@ -504,12 +504,12 @@ Sin parámetros.
### `require-push-before-stop`
**Evento:** Stop
-**Por defecto:** Deniega la detención cuando hay commits sin hacer push o cuando la rama actual no tiene una rama de seguimiento remota. Sugiere `git push -u` para crear una rama de seguimiento si es necesario. Falla de forma abierta si no hay remote configurado.
+**Comportamiento predeterminado:** Deniega la detención cuando hay commits sin enviar o cuando la rama actual no tiene una rama de seguimiento remota. Sugiere `git push -u` para crear una rama de seguimiento si es necesario. Falla de forma abierta si no hay un remote configurado.
**Parámetros:**
-| Parámetro | Tipo | Por defecto | Descripción |
-|-----------|------|-------------|-------------|
+| Parámetro | Tipo | Predeterminado | Descripción |
+|-------|------|---------|-------------|
| `remote` | `string` | `"origin"` | Nombre del remote al que hacer push. |
**Ejemplo:**
@@ -529,13 +529,13 @@ Sin parámetros.
### `require-pr-before-stop`
**Evento:** Stop
-**Por defecto:** Deniega la detención cuando no existe ningún pull request para la rama actual, o cuando el PR existente está cerrado o fusionado. Instruye a Claude a crear un PR con `gh pr create`.
+**Comportamiento predeterminado:** Deniega la detención cuando no existe ningún pull request para la rama actual, o cuando el PR existente está cerrado o fusionado. Indica a Claude que cree un PR con `gh pr create`.
Sin parámetros.
Esta política requiere que [GitHub CLI](https://cli.github.com/) (`gh`) esté instalado y autenticado.
-Ejecuta `gh auth login` con un token de acceso personal que tenga el scope `repo` para acceso de lectura a
+Ejecuta `gh auth login` con un token de acceso personal que tenga el ámbito `repo` para acceso de lectura a
pull requests. Si `gh` no está instalado o no está autenticado, la política falla de forma abierta e informa del motivo a Claude.
@@ -544,23 +544,23 @@ pull requests. Si `gh` no está instalado o no está autenticado, la política f
### `require-ci-green-before-stop`
**Evento:** Stop
-**Por defecto:** Deniega la detención cuando las comprobaciones de CI están fallando o aún en ejecución en la rama actual. Comprueba tanto las ejecuciones de flujos de trabajo de GitHub Actions como las comprobaciones de bots de terceros (p. ej., CodeRabbit, SonarCloud, Codecov). Trata las conclusiones `skipped` como éxito. Devuelve un mensaje informativo cuando todas las comprobaciones pasan.
+**Comportamiento predeterminado:** Deniega la detención cuando las verificaciones de CI están fallando o aún en ejecución en la rama actual. Comprueba tanto las ejecuciones de flujo de trabajo de GitHub Actions como las verificaciones de bots de terceros (p. ej., CodeRabbit, SonarCloud, Codecov). Trata las conclusiones `skipped` y `cancelled` como éxito. Devuelve un mensaje informativo cuando todas las verificaciones pasan.
Sin parámetros.
Esta política requiere que [GitHub CLI](https://cli.github.com/) (`gh`) esté instalado y autenticado.
-Ejecuta `gh auth login` con un token de acceso personal que tenga el scope `repo` para acceso de lectura a
-ejecuciones de flujos de trabajo de Actions y la API de Checks. Si `gh` no está instalado o no está autenticado, la política falla de forma abierta e informa del motivo a Claude.
+Ejecuta `gh auth login` con un token de acceso personal que tenga el ámbito `repo` para acceso de lectura a
+ejecuciones de flujo de trabajo de Actions y la API de Checks. Si `gh` no está instalado o no está autenticado, la política falla de forma abierta e informa del motivo a Claude.
---
---
-## Deshabilitar políticas individuales
+## Desactivar políticas individuales
-Elimina una política específica de `enabledPolicies` en tu configuración, o desactívala en la pestaña Policies del panel de control.
+Elimina una política específica de `enabledPolicies` en tu configuración, o desactívala desde la pestaña Políticas del panel de control.
```json
{
diff --git a/docs/fr/built-in-policies.mdx b/docs/fr/built-in-policies.mdx
index e70ec993..3a69d6a5 100644
--- a/docs/fr/built-in-policies.mdx
+++ b/docs/fr/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
title: Politiques intégrées
-description: "Les 30 politiques intégrées qui détectent les modes de défaillance courants des agents"
+description: "Les 30 politiques intégrées qui interceptent les modes d'échec courants des agents"
icon: shield
---
-failproofai est livré avec 30 politiques intégrées qui détectent les modes de défaillance courants des agents. Chaque politique se déclenche sur un type d'événement hook spécifique et un nom d'outil. Neuf politiques acceptent des paramètres permettant d'ajuster leur comportement sans écrire de code. Quatre politiques de workflow imposent un pipeline commit → push → PR → CI avant que Claude ne s'arrête.
+failproofai est livré avec 30 politiques intégrées qui interceptent les modes d'échec courants des agents. Chaque politique se déclenche sur un type d'événement de hook spécifique et un nom d'outil. Neuf politiques acceptent des paramètres permettant d'affiner leur comportement sans écrire de code. Quatre politiques de workflow imposent un pipeline commit → push → PR → CI avant que Claude s'arrête.
---
@@ -25,14 +25,14 @@ Les politiques sont regroupées par catégories :
| [Workflow](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
- **`block-`** — empêche l'agent de continuer.
-- **`warn-`** — fournit à l'agent un contexte supplémentaire pour qu'il puisse se corriger.
-- **`sanitize-`** — nettoie les données sensibles dans la sortie d'un outil avant que l'agent ne les voie.
+- **`warn-`** — fournit à l'agent du contexte supplémentaire pour lui permettre de se corriger.
+- **`sanitize-`** — supprime les données sensibles de la sortie d'un outil avant que l'agent ne les lise.
- **`require-`** — bloque l'événement Stop jusqu'à ce que les conditions soient remplies.
---
-Toutes les politiques supportent un champ `hint` optionnel dans `policyParams`. Ce hint est ajouté au message deny ou instruct que Claude reçoit, fournissant des conseils concrets sans modifier le code de la politique. Fonctionne avec les politiques intégrées, personnalisées et de convention. Voir [Configuration → hint](/fr/configuration#hint-cross-cutting) pour plus de détails.
+Toutes les politiques supportent un champ optionnel `hint` dans `policyParams`. Ce hint est ajouté au message deny ou instruct que Claude reçoit, fournissant des indications concrètes sans modifier le code de la politique. Compatible avec les politiques intégrées, personnalisées et de convention. Voir [Configuration → hint](/fr/configuration#hint-cross-cutting) pour plus de détails.
---
@@ -44,13 +44,13 @@ Empêche les agents d'exécuter des opérations difficiles à annuler ou suscept
### `block-sudo`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse toute commande `sudo`.
+**Comportement par défaut :** Refuse toute commande `sudo`.
-Bloque les invocations contenant le mot-clé `sudo`. La correspondance de motifs est effectuée sur les tokens de commande analysés, et non sur la chaîne brute, afin d'empêcher les contournements par injection d'opérateurs shell.
+Bloque les invocations contenant le mot-clé `sudo`. La correspondance de motifs est effectuée sur les tokens de commande analysés, et non sur la chaîne brute, afin d'éviter les contournements par injection d'opérateurs shell.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `allowPatterns` | `string[]` | `[]` | Préfixes de commandes exacts autorisés. Chaque entrée est comparée aux tokens argv analysés. |
@@ -69,7 +69,7 @@ Bloque les invocations contenant le mot-clé `sudo`. La correspondance de motifs
Avec cette configuration, `sudo systemctl status nginx` est autorisé, mais `sudo rm /etc/hosts` est refusé.
-Les motifs sont comparés aux tokens analysés, et non à la chaîne de commande brute. Cela empêche les contournements via des opérateurs shell ajoutés (ex. : `sudo systemctl status x; rm -rf /` ne correspond pas à `sudo systemctl status *`).
+Les motifs sont comparés aux tokens analysés, et non à la chaîne de commande brute. Cela empêche les contournements via des opérateurs shell ajoutés en suffixe (par exemple, `sudo systemctl status x; rm -rf /` ne correspond pas à `sudo systemctl status *`).
---
@@ -77,13 +77,13 @@ Les motifs sont comparés aux tokens analysés, et non à la chaîne de commande
### `block-rm-rf`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse `rm -rf`, `rm -fr` et autres formes similaires de suppression récursive.
+**Comportement par défaut :** Refuse `rm -rf`, `rm -fr` et les formes similaires de suppression récursive.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Chemins dont la suppression récursive est autorisée (ex. : `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | Chemins dont la suppression récursive est autorisée (ex. `/tmp`). |
**Exemple :**
@@ -102,7 +102,7 @@ Les motifs sont comparés aux tokens analysés, et non à la chaîne de commande
### `block-curl-pipe-sh`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse `curl | bash`, `curl | sh`, `wget | bash` et motifs similaires.
+**Comportement par défaut :** Refuse `curl | bash`, `curl | sh`, `wget | bash` et les motifs similaires.
Aucun paramètre.
@@ -111,7 +111,7 @@ Aucun paramètre.
### `block-failproofai-commands`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse les commandes qui désinstalleraient ou désactiveraient failproofai lui-même (ex. : `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**Comportement par défaut :** Refuse les commandes qui désinstalleraient ou désactiveraient failproofai lui-même (ex. `npm uninstall failproofai`, `failproofai policies --uninstall`).
Aucun paramètre.
@@ -119,12 +119,12 @@ Aucun paramètre.
## Secrets (sanitizers)
-Empêche les agents de faire fuiter des identifiants dans leur contexte ou leur sortie. Les politiques sanitizer se déclenchent sur les événements **PostToolUse**. Lorsque Claude exécute une commande Bash, lit un fichier ou appelle un outil quelconque, ces politiques inspectent la sortie avant qu'elle ne soit renvoyée à Claude. Si un motif secret est détecté, la politique retourne une décision deny qui empêche la sortie d'être transmise.
+Empêche les agents de faire fuiter des identifiants dans leur contexte ou leur sortie. Les politiques de sanitisation se déclenchent sur les événements **PostToolUse**. Lorsque Claude exécute une commande Bash, lit un fichier ou appelle un outil quelconque, ces politiques inspectent la sortie avant qu'elle ne soit renvoyée à Claude. Si un motif de secret est détecté, la politique retourne une décision deny qui empêche la sortie d'être transmise en retour.
### `sanitize-jwt`
**Événement :** PostToolUse (tous les outils)
-**Par défaut :** Masque les tokens JWT (trois segments base64url séparés par `.`).
+**Comportement par défaut :** Masque les tokens JWT (trois segments base64url séparés par `.`).
Aucun paramètre.
@@ -133,11 +133,11 @@ Aucun paramètre.
### `sanitize-api-keys`
**Événement :** PostToolUse (tous les outils)
-**Par défaut :** Masque les formats de clés API courants : Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), clés d'accès AWS (`AKIA`), clés Stripe (`sk_live_`, `sk_test_`) et clés Google API (`AIza`).
+**Comportement par défaut :** Masque les formats de clés API courants : Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), clés d'accès AWS (`AKIA`), clés Stripe (`sk_live_`, `sk_test_`), et clés Google API (`AIza`).
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Motifs regex supplémentaires à traiter comme des secrets. |
@@ -161,7 +161,7 @@ Aucun paramètre.
### `sanitize-connection-strings`
**Événement :** PostToolUse (tous les outils)
-**Par défaut :** Masque les chaînes de connexion de base de données contenant des identifiants intégrés (ex. : `postgresql://user:password@host/db`).
+**Comportement par défaut :** Masque les chaînes de connexion de base de données contenant des identifiants intégrés (ex. `postgresql://user:password@host/db`).
Aucun paramètre.
@@ -170,7 +170,7 @@ Aucun paramètre.
### `sanitize-private-key-content`
**Événement :** PostToolUse (tous les outils)
-**Par défaut :** Masque les blocs PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, etc.).
+**Comportement par défaut :** Masque les blocs PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, etc.).
Aucun paramètre.
@@ -179,7 +179,7 @@ Aucun paramètre.
### `sanitize-bearer-tokens`
**Événement :** PostToolUse (tous les outils)
-**Par défaut :** Masque les en-têtes `Authorization: Bearer ` dont le token fait 20 caractères ou plus.
+**Comportement par défaut :** Masque les en-têtes `Authorization: Bearer ` dont le token contient 20 caractères ou plus.
Aucun paramètre.
@@ -187,12 +187,12 @@ Aucun paramètre.
## Environnement
-Protège la configuration d'environnement sensible contre la lecture ou l'exposition par des agents.
+Protège la configuration d'environnement sensible contre la lecture ou l'exposition par les agents.
### `block-env-files`
**Événement :** PreToolUse (Bash, Read)
-**Par défaut :** Refuse la lecture des fichiers `.env` via `cat .env`, les appels à l'outil `Read` avec `.env` comme chemin de fichier, etc.
+**Comportement par défaut :** Refuse la lecture des fichiers `.env` via `cat .env`, les appels à l'outil `Read` avec `.env` comme chemin de fichier, etc.
Ne bloque pas `.envrc` ni les autres fichiers liés à l'environnement — uniquement les fichiers nommés exactement `.env`.
@@ -203,7 +203,7 @@ Aucun paramètre.
### `protect-env-vars`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse les commandes qui affichent les variables d'environnement : `printenv`, `env`, `echo $VAR`.
+**Comportement par défaut :** Refuse les commandes qui affichent les variables d'environnement : `printenv`, `env`, `echo $VAR`.
Aucun paramètre.
@@ -216,11 +216,11 @@ Maintient les agents dans les limites du projet et à l'écart des fichiers sens
### `block-read-outside-cwd`
**Événement :** PreToolUse (Read, Bash)
-**Par défaut :** Refuse la lecture de fichiers en dehors du répertoire de travail courant (la racine du projet).
+**Comportement par défaut :** Refuse la lecture de fichiers situés en dehors du répertoire de travail courant (la racine du projet).
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `allowPaths` | `string[]` | `[]` | Préfixes de chemins absolus autorisés même s'ils sont en dehors du répertoire courant. |
@@ -241,11 +241,11 @@ Maintient les agents dans les limites du projet et à l'écart des fichiers sens
### `block-secrets-write`
**Événement :** PreToolUse (Write, Edit)
-**Par défaut :** Refuse les écritures dans les fichiers couramment utilisés pour les clés privées et les certificats : `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Comportement par défaut :** Refuse l'écriture dans les fichiers couramment utilisés pour les clés privées et les certificats : `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `additionalPatterns` | `string[]` | `[]` | Motifs de noms de fichiers supplémentaires (style glob) à bloquer. |
@@ -265,18 +265,18 @@ Maintient les agents dans les limites du projet et à l'écart des fichiers sens
## Git
-Prévient les pushs accidentels, les force-pushs et les erreurs de branches difficiles à annuler.
+Prévient les pushs accidentels, les force-push et les erreurs de branche difficiles à annuler.
### `block-push-master`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse `git push origin main` et `git push origin master`.
+**Comportement par défaut :** Refuse `git push origin main` et `git push origin master`.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Noms de branches sur lesquelles il est impossible de pousser directement. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Noms de branches sur lesquelles le push direct est interdit. |
**Exemple :**
@@ -291,7 +291,7 @@ Prévient les pushs accidentels, les force-pushs et les erreurs de branches diff
```
-Pour autoriser le push sur toutes les branches (désactivant ainsi cette politique sans la retirer de `enabledPolicies`), définissez `protectedBranches: []`.
+Pour autoriser le push sur toutes les branches (ce qui désactive effectivement cette politique sans la retirer de `enabledPolicies`), définissez `protectedBranches: []`.
---
@@ -299,22 +299,22 @@ Pour autoriser le push sur toutes les branches (désactivant ainsi cette politiq
### `block-work-on-main`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse le checkout direct des branches `main` ou `master`.
+**Comportement par défaut :** Refuse le checkout direct des branches `main` ou `master`.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Noms de branches sur lesquelles il est impossible de basculer directement. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Noms de branches dont le checkout direct est interdit. |
---
### `block-force-push`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Refuse `git push --force` et `git push -f`.
+**Comportement par défaut :** Refuse `git push --force` et `git push -f`.
-Aucun paramètre spécifique à cette politique. Utilisez le champ transversal [`hint`](/fr/configuration#hint-cross-cutting) pour suggérer des alternatives :
+Aucun paramètre spécifique à cette politique. Utilisez le [`hint`](/fr/configuration#hint-cross-cutting) transversal pour suggérer des alternatives :
```json
{
@@ -331,7 +331,7 @@ Aucun paramètre spécifique à cette politique. Utilisez le champ transversal [
### `warn-git-amend`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de procéder avec précaution lors de l'exécution de `git commit --amend`. Ne bloque pas la commande.
+**Comportement par défaut :** Demande à Claude de procéder avec précaution lors de l'exécution de `git commit --amend`. Ne bloque pas la commande.
Aucun paramètre.
@@ -340,7 +340,7 @@ Aucun paramètre.
### `warn-git-stash-drop`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de confirmer avant d'exécuter `git stash drop`. Ne bloque pas la commande.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'exécuter `git stash drop`. Ne bloque pas la commande.
Aucun paramètre.
@@ -349,7 +349,7 @@ Aucun paramètre.
### `warn-all-files-staged`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de vérifier ce qu'il indexe lorsqu'il exécute `git add -A` ou `git add .`. Ne bloque pas la commande.
+**Comportement par défaut :** Demande à Claude de vérifier ce qu'il indexe lorsqu'il exécute `git add -A` ou `git add .`. Ne bloque pas la commande.
Aucun paramètre.
@@ -357,12 +357,12 @@ Aucun paramètre.
## Base de données
-Intercepte les opérations SQL destructrices avant qu'elles ne s'exécutent sur votre base de données.
+Intercepte les opérations SQL destructives avant leur exécution sur la base de données.
### `warn-destructive-sql`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de confirmer avant d'exécuter du SQL contenant `DROP TABLE`, `DROP DATABASE` ou `DELETE` sans clause `WHERE`.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'exécuter du SQL contenant `DROP TABLE`, `DROP DATABASE` ou `DELETE` sans clause `WHERE`.
Aucun paramètre.
@@ -371,7 +371,7 @@ Aucun paramètre.
### `warn-schema-alteration`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de confirmer avant d'exécuter des instructions `ALTER TABLE`.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'exécuter des instructions `ALTER TABLE`.
Aucun paramètre.
@@ -379,16 +379,16 @@ Aucun paramètre.
## Avertissements
-Fournit aux agents un contexte supplémentaire avant des opérations potentiellement risquées mais non destructrices.
+Fournit aux agents du contexte supplémentaire avant des opérations potentiellement risquées mais non destructives.
### `warn-large-file-write`
**Événement :** PreToolUse (Write)
-**Par défaut :** Demande à Claude de confirmer avant d'écrire des fichiers de plus de 1024 Ko.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'écrire des fichiers de plus de 1 024 Ko.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `thresholdKb` | `number` | `1024` | Seuil de taille de fichier en kilo-octets au-delà duquel un avertissement est émis. |
@@ -405,7 +405,7 @@ Fournit aux agents un contexte supplémentaire avant des opérations potentielle
```
-Le gestionnaire de hook impose une limite de 1 Mo sur stdin pour les payloads. Pour tester cette politique avec du contenu de petite taille, définissez `thresholdKb` à une valeur bien inférieure à 1024.
+Le gestionnaire de hook impose une limite de 1 Mo sur les payloads en stdin. Pour tester cette politique avec un contenu de petite taille, définissez `thresholdKb` à une valeur bien inférieure à 1024.
---
@@ -413,7 +413,7 @@ Le gestionnaire de hook impose une limite de 1 Mo sur stdin pour les payloads. P
### `warn-package-publish`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de confirmer avant d'exécuter `npm publish`.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'exécuter `npm publish`.
Aucun paramètre.
@@ -422,7 +422,7 @@ Aucun paramètre.
### `warn-background-process`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude d'être prudent lors du lancement de processus en arrière-plan via `nohup`, `&`, `disown` ou `screen`.
+**Comportement par défaut :** Demande à Claude d'être prudent lors du lancement de processus en arrière-plan via `nohup`, `&`, `disown` ou `screen`.
Aucun paramètre.
@@ -431,7 +431,7 @@ Aucun paramètre.
### `warn-global-package-install`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Demande à Claude de confirmer avant d'exécuter `npm install -g`, `yarn global add` ou `pip install` sans environnement virtuel.
+**Comportement par défaut :** Demande à Claude de confirmer avant d'exécuter `npm install -g`, `yarn global add` ou `pip install` sans environnement virtuel.
Aucun paramètre.
@@ -444,14 +444,14 @@ Impose les gestionnaires de paquets que l'agent est autorisé à utiliser.
### `prefer-package-manager`
**Événement :** PreToolUse (Bash)
-**Par défaut :** Désactivé. Lorsqu'il est activé, bloque toute commande de gestionnaire de paquets absent de la liste `allowed` et demande à Claude de réécrire la commande en utilisant un gestionnaire autorisé.
+**Comportement par défaut :** Désactivé. Lorsqu'activé, bloque toute commande de gestionnaire de paquets ne figurant pas dans la liste `allowed` et demande à Claude de réécrire la commande avec un gestionnaire autorisé.
Détecte : pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Noms de gestionnaires de paquets autorisés. Tout gestionnaire détecté absent de cette liste est bloqué. Lorsque la liste est vide, la politique est sans effet. |
-| `blocked` | string[] | `[]` | Noms de gestionnaires supplémentaires à bloquer au-delà de la liste intégrée (ex. : `['pdm', 'pipx']`). |
+| `allowed` | string[] | `[]` | Noms des gestionnaires de paquets autorisés. Tout gestionnaire détecté absent de cette liste est bloqué. Lorsque la liste est vide, la politique est inactive. |
+| `blocked` | string[] | `[]` | Noms de gestionnaires supplémentaires à bloquer en plus de la liste intégrée (ex. `['pdm', 'pipx']`). |
La liste de blocage intégrée couvre : pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Utilisez `blocked` pour ajouter des gestionnaires absents de cette liste.
@@ -469,18 +469,18 @@ La liste de blocage intégrée couvre : pip, pip3, npm, npx, yarn, pnpm, pnpx, b
}
```
-Avec cette configuration, `pip install flask` et `pdm install flask` sont tous deux refusés avec un message demandant à Claude d'utiliser `uv` ou `bun` à la place. Les commandes comme `uv pip install flask` sont autorisées car `uv` figure dans la liste d'autorisation et est vérifié en premier.
+Avec cette configuration, `pip install flask` et `pdm install flask` sont tous deux refusés avec un message indiquant à Claude d'utiliser `uv` ou `bun` à la place. Les commandes comme `uv pip install flask` sont autorisées car `uv` figure dans la liste des autorisations et est vérifié en premier.
---
## Comportement de l'IA
-Détecte quand les agents sont bloqués ou se comportent de manière inattendue.
+Détecte quand les agents se retrouvent bloqués ou se comportent de manière inattendue.
### `warn-repeated-tool-calls`
**Événement :** PreToolUse (tous les outils)
-**Par défaut :** Demande à Claude de reconsidérer son action lorsque le même outil est appelé 3 fois ou plus avec des paramètres identiques — signe courant que l'agent est bloqué dans une boucle.
+**Comportement par défaut :** Demande à Claude de reconsidérer son action lorsque le même outil est appelé 3 fois ou plus avec des paramètres identiques — signe courant que l'agent est bloqué dans une boucle.
Aucun paramètre.
@@ -488,14 +488,14 @@ Aucun paramètre.
## Workflow
-Impose un workflow de fin de session rigoureux. Ces politiques se déclenchent sur l'événement **Stop** et empêchent Claude de s'arrêter tant que chaque condition n'est pas remplie. Elles suivent une chaîne de dépendances naturelle : commit → push → PR → CI. Si une politique refuse, les politiques suivantes dans la chaîne sont ignorées (court-circuit sur deny).
+Impose une discipline de fin de session. Ces politiques se déclenchent sur l'événement **Stop** et empêchent Claude de s'arrêter tant que chaque condition n'est pas remplie. Elles suivent une chaîne de dépendances naturelle : commit → push → PR → CI. Si une politique refuse, les politiques suivantes dans la chaîne sont ignorées (court-circuit sur deny).
-Toutes les politiques de workflow sont **fail-open** : si l'outil requis n'est pas disponible (ex. : `gh` non installé, pas de remote git), la politique autorise l'arrêt avec un message d'information expliquant pourquoi la vérification a été ignorée.
+Toutes les politiques de workflow sont **fail-open** : si l'outil requis n'est pas disponible (ex. `gh` non installé, pas de remote git), la politique autorise avec un message informatif expliquant pourquoi la vérification a été ignorée.
### `require-commit-before-stop`
**Événement :** Stop
-**Par défaut :** Refuse l'arrêt lorsqu'il existe des modifications non commitées (fichiers modifiés, indexés ou non suivis). Retourne un message d'information lorsque le répertoire de travail est propre.
+**Comportement par défaut :** Refuse l'arrêt lorsqu'il existe des modifications non commitées (fichiers modifiés, indexés ou non suivis). Retourne un message informatif lorsque le répertoire de travail est propre.
Aucun paramètre.
@@ -504,11 +504,11 @@ Aucun paramètre.
### `require-push-before-stop`
**Événement :** Stop
-**Par défaut :** Refuse l'arrêt lorsqu'il existe des commits non poussés ou lorsque la branche courante n'a pas de branche de suivi distante. Suggère `git push -u` pour créer une branche de suivi si nécessaire. Fail-open si aucun remote n'est configuré.
+**Comportement par défaut :** Refuse l'arrêt lorsqu'il existe des commits non pushés ou lorsque la branche courante n'a pas de branche de suivi distante. Suggère `git push -u` pour créer une branche de suivi si nécessaire. Fail-open si aucun remote n'est configuré.
**Paramètres :**
-| Paramètre | Type | Par défaut | Description |
+| Paramètre | Type | Défaut | Description |
|-------|------|---------|-------------|
| `remote` | `string` | `"origin"` | Nom du remote vers lequel pousser. |
@@ -529,14 +529,14 @@ Aucun paramètre.
### `require-pr-before-stop`
**Événement :** Stop
-**Par défaut :** Refuse l'arrêt lorsqu'aucune pull request n'existe pour la branche courante, ou lorsque la PR existante est fermée ou fusionnée. Demande à Claude de créer une PR avec `gh pr create`.
+**Comportement par défaut :** Refuse l'arrêt lorsqu'aucune pull request n'existe pour la branche courante, ou lorsque la PR existante est fermée ou fusionnée. Demande à Claude de créer une PR avec `gh pr create`.
Aucun paramètre.
-Cette politique requiert que [GitHub CLI](https://cli.github.com/) (`gh`) soit installé et authentifié.
+Cette politique nécessite que [GitHub CLI](https://cli.github.com/) (`gh`) soit installé et authentifié.
Exécutez `gh auth login` avec un personal access token disposant du scope `repo` pour l'accès en lecture aux
-pull requests. Si `gh` n'est pas installé ou non authentifié, la politique est fail-open et rapporte la raison à Claude.
+pull requests. Si `gh` n'est pas installé ou pas authentifié, la politique est fail-open et signale la raison à Claude.
---
@@ -544,23 +544,23 @@ pull requests. Si `gh` n'est pas installé ou non authentifié, la politique est
### `require-ci-green-before-stop`
**Événement :** Stop
-**Par défaut :** Refuse l'arrêt lorsque les vérifications CI sont en échec ou encore en cours sur la branche courante. Vérifie à la fois les workflows GitHub Actions et les vérifications de bots tiers (ex. : CodeRabbit, SonarCloud, Codecov). Traite les conclusions `skipped` comme un succès. Retourne un message d'information lorsque toutes les vérifications sont réussies.
+**Comportement par défaut :** Refuse l'arrêt lorsque les vérifications CI échouent ou sont toujours en cours sur la branche courante. Vérifie à la fois les exécutions de workflow GitHub Actions et les vérifications de bots tiers (ex. CodeRabbit, SonarCloud, Codecov). Traite les conclusions `skipped` et `cancelled` comme des succès. Retourne un message informatif lorsque toutes les vérifications passent.
Aucun paramètre.
-Cette politique requiert que [GitHub CLI](https://cli.github.com/) (`gh`) soit installé et authentifié.
+Cette politique nécessite que [GitHub CLI](https://cli.github.com/) (`gh`) soit installé et authentifié.
Exécutez `gh auth login` avec un personal access token disposant du scope `repo` pour l'accès en lecture aux
-workflows GitHub Actions et à l'API Checks. Si `gh` n'est pas installé ou non authentifié, la politique est fail-open et rapporte la raison à Claude.
+exécutions de workflow Actions et à l'API Checks. Si `gh` n'est pas installé ou pas authentifié, la politique est fail-open et signale la raison à Claude.
---
---
-## Désactiver des politiques individuelles
+## Désactiver des politiques individuellement
-Retirez une politique spécifique de `enabledPolicies` dans votre configuration, ou désactivez-la depuis l'onglet Policies du tableau de bord.
+Retirez une politique spécifique de `enabledPolicies` dans votre configuration, ou désactivez-la dans l'onglet Politiques du tableau de bord.
```json
{
@@ -571,4 +571,4 @@ Retirez une politique spécifique de `enabledPolicies` dans votre configuration,
}
```
-Les politiques absentes de `enabledPolicies` ne s'exécutent pas, même si des entrées `policyParams` existent pour elles.
\ No newline at end of file
+Les politiques non listées dans `enabledPolicies` ne s'exécutent pas, même si des entrées `policyParams` existent pour elles.
\ No newline at end of file
diff --git a/docs/he/built-in-policies.mdx b/docs/he/built-in-policies.mdx
index 9dafbdd2..044f99b2 100644
--- a/docs/he/built-in-policies.mdx
+++ b/docs/he/built-in-policies.mdx
@@ -1,60 +1,61 @@
---
-title: מדיניויות מובנות
-description: "כל 30 המדיניויות המובנות שתופסות משטרי כשל נפוצים של סוכנים"
+---
+title: מדיניות מובנות
+description: "כל 30 המדיניות המובנות המתפסות מצבי כשל נפוצים של סוכנים"
icon: shield
---
-failproofai משלוח עם 30 מדיניויות מובנות תופסות משטרי כשל נפוצים של סוכנים. כל מדיניות נדלקת על סוג אירוע hook ספציפי ושם כלי. תשע מדיניויות מקבלות פרמטרים המאפשרים לך לכוונן את התנהגותן ללא כתיבת קוד. ארבע מדיניויות זרימת עבודה אוכפות צינור commit → push → PR → CI לפני שClaude עוצר.
+failproofai מגיע עם 30 מדיניות מובנות המתפסות מצבי כשל נפוצים של סוכנים. כל מדיניות מופעלת על סוג אירוע hook ספציפי ושם כלי. תשע מדיניות מקבלות פרמטרים המאפשרים לך לכוונן את התנהגותם ללא כתיבת קוד. ארבע מדיניות זרימת עבודה אוכפות צינור commit → push → PR → CI לפני שClaude עוצר.
---
## סקירה כללית
-מדיניויות מקובצות לקטגוריות:
+מדיניות מקובצות לקטגוריות:
-| קטגוריה | מדיניויות | סוג Hook |
+| קטגוריה | מדיניות | סוג Hook |
|----------|----------|-----------|
| [פקודות מסוכנות](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [סודות (מטהרים)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [סביבה](#environment) | block-env-files, protect-env-vars | PreToolUse |
| [גישת קבצים](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
-| [מסד נתונים](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
+| [בסיס נתונים](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
| [אזהרות](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
| [מנהלי חבילות](#package-managers) | prefer-package-manager | PreToolUse |
| [זרימת עבודה](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — עצור את הסוכן מהמשך.
-- **`warn-`** — תן להסוכן הקשר נוסף כדי שיוכל להתקן את עצמו.
+- **`block-`** — עצור את הסוכן מלהמשיך הלאה.
+- **`warn-`** — תן לסוכן הקשר נוסף כדי שיוכל לתקן בעצמו.
- **`sanitize-`** — נקה נתונים רגישים מפלט הכלי לפני שהסוכן רואה זאת.
-- **`require-`** — חסום את אירוע ה-Stop עד להשגת תנאים.
+- **`require-`** — חסום את אירוע העצירה עד למתן תנאים.
---
-כל מדיניות תומכת בשדה `hint` אופציונלי ב-`policyParams`. ה-hint מוצמד להודעה deny או instruct שClaude רואה, ומספק הנחיה פעולה ללא שינוי קוד מדיניות. עובד עם מדיניויות מובנות, מותאמות והסכמה. ראה [תצורה → hint](/he/configuration#hint-cross-cutting) לפרטים.
+כל מדיניות תומכת בשדה `hint` אופציונלי ב-`policyParams`. ה-hint מתווסף להודעת deny או instruct שClaude רואה, המספקת הנחיה מעשית ללא שינוי קוד מדיניות. עובד עם מדיניות מובנות, מותאמות ולפי כללים. ראה [Configuration → hint](/he/configuration#hint-cross-cutting) לפרטים.
---
## פקודות מסוכנות
-מנע מסוכנים הפעלת פעולות שקשה לבטל או שעלולות לפגוע במערכת המארחת.
+מנע מסוכנים הרצה של פעולות שקשה להשלים בהן או שעלולות לפגוע במערכת המארח.
### `block-sudo`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב לכל פקודת `sudo`.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה כל פקודת `sudo`.
-חוסם הפעלות המכילות את המילה-מפתח `sudo`. התאמת הדפוס נעשית על tokens פקודה מנותחים, לא על המחרוזת הגולמית, כדי למנוע עקיפה דרך הזרקה של אופרטור shell.
+חוסם הפעלות המכילות את המילה השמורה `sudo`. התאמת דפוס מבוצעת על אסימוני פקודה מפורסרים, לא על המחרוזת הגולמית, כדי למנוע עקיפה דרך הזרקה של סוכן shell.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | קידומות פקודה מדויקות המותרות. כל רשומה תואמת נגד tokens argv מנותחים. |
+| `allowPatterns` | `string[]` | `[]` | קידומות פקודה מדויקות המורשות. כל ערך מתואם נגד אסימוני argv מפורסרים. |
-**דוגמה:**
+**Example:**
```json
{
@@ -66,26 +67,26 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
}
```
-עם תצורה זו, `sudo systemctl status nginx` מותר, אך `sudo rm /etc/hosts` מסורב.
+עם תצורה זו, `sudo systemctl status nginx` מורשה, אך `sudo rm /etc/hosts` דחוי.
-דפוסים תואמים נגד tokens מנותחים, לא מחרוזת הפקודה הגולמית. זה מונע עקיפה דרך אופרטורים shell מצורפים (למשל `sudo systemctl status x; rm -rf /` לא תואם `sudo systemctl status *`).
+דפוסים מתואמים נגד אסימונים מפורסרים, לא מחרוזת הפקודה הגולמית. זה מונע עקיפה דרך מפעילים מצורפים (למשל `sudo systemctl status x; rm -rf /` אינו תואם `sudo systemctl status *`).
---
### `block-rm-rf`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב `rm -rf`, `rm -fr`, וצורות מחיקה רקורסיביות דומות.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה `rm -rf`, `rm -fr`, וצורות מחיקה רקורסיביות דומות.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | נתיבים שבטוח למחוק בצורה רקורסיבית (למשל `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | נתיבים שבטוח למחוק באופן רקורסיבי (למשל `/tmp`). |
-**דוגמה:**
+**Example:**
```json
{
@@ -101,8 +102,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `block-curl-pipe-sh`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב `curl | bash`, `curl | sh`, `wget | bash`, ודפוסים דומים.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה `curl | bash`, `curl | sh`, `wget | bash`, ודפוסים דומים.
אין פרמטרים.
@@ -110,8 +111,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `block-failproofai-commands`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב פקודות שהיו מסירות או מנטרלות את failproofai עצמו (למשל `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**Event:** PreToolUse (Bash)
+**Default:** דוחה פקודות שיסירו או תשביתו את failproofai עצמו (למשל `npm uninstall failproofai`, `failproofai policies --uninstall`).
אין פרמטרים.
@@ -119,12 +120,12 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
## סודות (מטהרים)
-עצור סוכנים מדליפת אישורים להקשרם או לפלטם. מדיניויות מטהר מופעלות על אירועי **PostToolUse**. כאשר Claude מפעיל פקודת Bash, קורא קובץ, או קורא לכל כלי, מדיניויות אלה בדוקות את הפלט לפני החזרתו ל-Claude. אם תבנית סוד מגוררת, המדיניות מחזירה החלטת deny שמונעת את הפלט מהעברה חזרה.
+עצור סוכנים מלהדליף אישורים להקשר שלהם או לפלט שלהם. מדיניות מטהרים מופעלות על אירועי **PostToolUse**. כאשר Claude מריץ פקודת Bash, קורא קובץ, או קורא לכל כלי, מדיניות אלו בוחנות את הפלט לפני שהוא מוחזר ל-Claude. אם דפוס סוד מתגלה, המדיניות מחזירה החלטת deny המונעת את הפלט מלהיות מועבר חזרה.
### `sanitize-jwt`
-**אירוע:** PostToolUse (כל הכלים)
-**ברירת מחדל:** גורם לעיבוד token JWT (שלושה segments base64url מופרדים ב-`.`).
+**Event:** PostToolUse (כל הכלים)
+**Default:** מסרבל אסימוני JWT (שלוש קטעי base64url מופרדים ב-`.`).
אין פרמטרים.
@@ -132,16 +133,16 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `sanitize-api-keys`
-**אירוע:** PostToolUse (כל הכלים)
-**ברירת מחדל:** גורם לעיבוד פורמטי מפתח API נפוצים: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), מפתחות גישה AWS (`AKIA`), Stripe keys (`sk_live_`, `sk_test_`), ו-Google API keys (`AIza`).
+**Event:** PostToolUse (כל הכלים)
+**Default:** מסרבל פורמטי מפתח API נפוצים: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), מפתחות גישה AWS (`AKIA`), מפתחות Stripe (`sk_live_`, `sk_test_`), ומפתחות Google API (`AIza`).
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | דפוסי regex נוספים לטיפול בהם כסודות. |
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | דפוסי regex נוספים לטיפול כסודות. |
-**דוגמה:**
+**Example:**
```json
{
@@ -160,8 +161,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `sanitize-connection-strings`
-**אירוע:** PostToolUse (כל הכלים)
-**ברירת מחדל:** גורם לעיבוד מחרוזות חיבור מסד נתונים המכילות אישורים משובצים (למשל `postgresql://user:password@host/db`).
+**Event:** PostToolUse (כל הכלים)
+**Default:** מסרבל מחרוזות חיבור בסיס נתונים המכילות אישורים משובצים (למשל `postgresql://user:password@host/db`).
אין פרמטרים.
@@ -169,8 +170,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `sanitize-private-key-content`
-**אירוע:** PostToolUse (כל הכלים)
-**ברירת מחדל:** גורם לעיבוד בלוקי PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, וכו').
+**Event:** PostToolUse (כל הכלים)
+**Default:** מסרבל בלוקי PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, וכו').
אין פרמטרים.
@@ -178,8 +179,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `sanitize-bearer-tokens`
-**אירוע:** PostToolUse (כל הכלים)
-**ברירת מחדל:** גורם לעיבוד כותרי `Authorization: Bearer ` כאשר ה-token הוא 20 תווים או יותר.
+**Event:** PostToolUse (כל הכלים)
+**Default:** מסרבל כותרי `Authorization: Bearer ` שבהם הטוקן הוא 20 תווים או יותר.
אין פרמטרים.
@@ -191,10 +192,10 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `block-env-files`
-**אירוע:** PreToolUse (Bash, Read)
-**ברירת מחדל:** מסרב קריאת קבצי `.env` דרך `cat .env`, קריאות כלי Read עם `.env` כנתיב הקובץ, וכו'.
+**Event:** PreToolUse (Bash, Read)
+**Default:** דוחה קריאת קבצי `.env` דרך `cat .env`, קריאות `Read` tool עם `.env` כנתיב הקובץ, וכו'.
-לא חוסם `.envrc` או קבצים סמוכים לסביבה אחרים - רק קבצים שנקראים בדיוק `.env`.
+לא חוסם `.envrc` או קבצים אחרים הקשורים לסביבה - רק קבצים בשם בדיוק `.env`.
אין פרמטרים.
@@ -202,8 +203,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `protect-env-vars`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב פקודות המדפיסות משתנים של סביבה: `printenv`, `env`, `echo $VAR`.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה פקודות המדפיסות משתני סביבה: `printenv`, `env`, `echo $VAR`.
אין פרמטרים.
@@ -211,20 +212,20 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
## גישת קבצים
-שמור סוכנים לעבוד בתוך גבולות פרויקט ורחוקים מקבצים רגישים.
+שמור על סוכנים העובדים בגבולות הפרויקט ורחוקים מקבצים רגישים.
### `block-read-outside-cwd`
-**אירוע:** PreToolUse (Read, Bash)
-**ברירת מחדל:** מסרב קריאת קבצים מחוץ לספריית העבודה הנוכחית (שורש הפרויקט).
+**Event:** PreToolUse (Read, Bash)
+**Default:** דוחה קריאת קבצים מחוץ לספריית העבודה הנוכחית (שורש הפרויקט).
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | קידומות נתיב מוחלט המותרות גם אם מחוץ ל-cwd. |
+| `allowPaths` | `string[]` | `[]` | קידומות נתיב מוחלט המורשות גם אם מחוץ cwd. |
-**דוגמה:**
+**Example:**
```json
{
@@ -240,16 +241,16 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `block-secrets-write`
-**אירוע:** PreToolUse (Write, Edit)
-**ברירת מחדל:** מסרב כתיבה לקבצים בשימוש נפוץ למפתחות פרטיים וסרטיפיקטים: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Event:** PreToolUse (Write, Edit)
+**Default:** דוחה כתיבה לקבצים המשמשים בדרך כלל למפתחות פרטיים ותעודות: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | דפוסי שם קובץ נוספים (סגנון glob) לחסימה. |
+| `additionalPatterns` | `string[]` | `[]` | דפוסי שם קובץ נוספים (בסגנון glob) לחסימה. |
-**דוגמה:**
+**Example:**
```json
{
@@ -265,20 +266,20 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
## Git
-מנע דחיפות מקרי, force-pushes, וטעויות בענף שקשה לבטל.
+מנע push, force-push, וטעויות בענף מקרי שקשה להשלים בהן.
### `block-push-master`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב `git push origin main` ו-`git push origin master`.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה `git push origin main` ו-`git push origin master`.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | שמות ענפים שלא ניתן לדחוף אליהם ישירות. |
-**דוגמה:**
+**Example:**
```json
{
@@ -291,30 +292,30 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
```
-לאפשור דחיפה לכל הענפים (למעשה להשבית מדיניות זו ללא הסרתה מ-`enabledPolicies`), קבע `protectedBranches: []`.
+כדי לאפשר דחיפה לכל הענפים (שביעטול אפקטיבי של מדיניות זו ללא הסרה מ-`enabledPolicies`), קבע `protectedBranches: []`.
---
### `block-work-on-main`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב בדיקה של ענפי `main` או `master` ישירות.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה checkout של ענפי `main` או `master` ישירות.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | שמות ענפים שלא ניתן לבדוק ישירות. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | שמות ענפים שלא ניתן לבצע checkout אليהם ישירות. |
---
### `block-force-push`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מסרב `git push --force` ו-`git push -f`.
+**Event:** PreToolUse (Bash)
+**Default:** דוחה `git push --force` ו-`git push -f`.
-אין פרמטרים ספציפיים למדיניות. השתמש ב-[`hint`](/he/configuration#hint-cross-cutting) חוצה-חתכי להצע חלופות:
+אין פרמטרים ספציפיים למדיניות. השתמש בחוצה תחומים [`hint`](/he/configuration#hint-cross-cutting) להצעת חלופות:
```json
{
@@ -330,8 +331,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-git-amend`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude להמשיך בזהירות בעת הפעלת `git commit --amend`. אל חוסם את הפקודה.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude להמשיך בזהירות בעת הרצה של `git commit --amend`. לא חוסם את הפקודה.
אין פרמטרים.
@@ -339,8 +340,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-git-stash-drop`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לאשר לפני הפעלת `git stash drop`. אל חוסם את הפקודה.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לאשר לפני הרצה של `git stash drop`. לא חוסם את הפקודה.
אין פרמטרים.
@@ -348,21 +349,21 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-all-files-staged`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לסקור את מה שהוא מפיץ בעת הפעלת `git add -A` או `git add .`. אל חוסם את הפקודה.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לבדוק מה הוא משדר כאשר הוא מריץ `git add -A` או `git add .`. לא חוסם את הפקודה.
אין פרמטרים.
---
-## מסד נתונים
+## בסיס נתונים
-תפס פעולות SQL הרסניות לפני שהן מתבצעות נגד מסד הנתונים שלך.
+תפוס פעולות SQL הרסניות לפני שהן מבוצעות בבסיס הנתונים שלך.
### `warn-destructive-sql`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לאשר לפני הפעלת SQL המכיל `DROP TABLE`, `DROP DATABASE`, או `DELETE` ללא סעיף `WHERE`.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לאשר לפני הרצה של SQL המכיל `DROP TABLE`, `DROP DATABASE`, או `DELETE` ללא סעיף `WHERE`.
אין פרמטרים.
@@ -370,8 +371,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-schema-alteration`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לאשר לפני הפעלת אמירות `ALTER TABLE`.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לאשר לפני הרצה של הצהרות `ALTER TABLE`.
אין פרמטרים.
@@ -383,16 +384,16 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-large-file-write`
-**אירוע:** PreToolUse (Write)
-**ברירת מחדל:** נדרש Claude לאשר לפני כתיבת קבצים גדולים מ-1024 KB.
+**Event:** PreToolUse (Write)
+**Default:** מדריך את Claude לאשר לפני כתיבת קבצים גדולים מ-1024 KB.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `thresholdKb` | `number` | `1024` | סף גודל קובץ בקילובייטים שמעליו מונפקת אזהרה. |
+| `thresholdKb` | `number` | `1024` | סף גודל קובץ בקילוביטים שמעליו מנופקת אזהרה. |
-**דוגמה:**
+**Example:**
```json
{
@@ -405,15 +406,15 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
```
-ה-hook handler אוכף מגבלת stdin בגודל 1 MB על payload. כדי לבדוק מדיניות זו עם תוכן קטן, קבע `thresholdKb` לערך בהרבה מתחת ל-1024.
+מטפל ה-hook אוכף מגבלת stdin של 1 MB על payload. כדי לבדוק מדיניות זו עם תוכן קטן, קבע `thresholdKb` לערך הרבה להלן 1024.
---
### `warn-package-publish`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לאשר לפני הפעלת `npm publish`.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לאשר לפני הרצה של `npm publish`.
אין פרמטרים.
@@ -421,8 +422,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-background-process`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude להיזהר בעת הפעלת תהליכי רקע דרך `nohup`, `&`, `disown`, או `screen`.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude להיות זהיר בעת הפעלה של תהליכים בחלק האחורי דרך `nohup`, `&`, `disown`, או `screen`.
אין פרמטרים.
@@ -430,8 +431,8 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `warn-global-package-install`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** נדרש Claude לאשר לפני הפעלת `npm install -g`, `yarn global add`, או `pip install` ללא סביבה וירטואלית.
+**Event:** PreToolUse (Bash)
+**Default:** מדריך את Claude לאשר לפני הרצה של `npm install -g`, `yarn global add`, או `pip install` ללא סביבה וירטואלית.
אין פרמטרים.
@@ -439,23 +440,23 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
## מנהלי חבילות
-אכוף אילו מנהלי חבילות מותרים לסוכן להשתמש.
+אכוף אילו מנהלי חבילות מורשים לסוכן.
### `prefer-package-manager`
-**אירוע:** PreToolUse (Bash)
-**ברירת מחדל:** מנוטרל. כאשר מופעל, חוסם כל פקודת מנהל חבילה לא ברשימת `allowed` ויאמר Claude לשכתב את הפקודה תוך שימוש במנהל מותר.
+**Event:** PreToolUse (Bash)
+**Default:** מושבת. כשמופעל, חוסם כל פקודת מנהל חבילות שלא ברשימת `allowed` ומדריך את Claude לשכתב את הפקודה באמצעות מנהל מורשה.
מגלה: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | שמות מנהל חבילה מותרים. כל מנהל מגוגדל לא בחסימה זו מחוסם. כאשר ריק, המדיניות היא no-op. |
-| `blocked` | string[] | `[]` | שמות מנהל נוספים לחסימה מעבר לחסימה המובנית (למשל `['pdm', 'pipx']`). |
+| `allowed` | string[] | `[]` | שמות מנהלי חבילות מורשים. כל מנהל מגולה שלא ברשימה זו דחוי. כשריק, המדיניות היא לא פעולה. |
+| `blocked` | string[] | `[]` | שמות מנהלים נוספים לחסימה מעבר לרשימה המובנית (למשל `['pdm', 'pipx']`). |
-רשימת החסימה המובנית מכסה: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. השתמש ב-`blocked` להוסיף מנהלים לא בחסימה זו.
+רשימת החסימה המובנית מכסה: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. השתמש ב-`blocked` להוספת מנהלים שלא ברשימה זו.
-**דוגמה תצורה:**
+**Example configuration:**
```json
{
@@ -469,18 +470,18 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
}
```
-עם תצורה זו, `pip install flask` ו-`pdm install flask` שניהם מסורבים עם הודעה שמחויבת Claude להשתמש ב-`uv` או `bun` במקום. פקודות כמו `uv pip install flask` מותרות כי `uv` בחסימה ובדוקה ראשונה.
+עם תצורה זו, `pip install flask` ו-`pdm install flask` שניהם דחויים עם הודעה המדריכה את Claude להשתמש ב-`uv` או `bun` במקום זאת. פקודות כמו `uv pip install flask` מורשות מכיוון ש-`uv` ברשימת ההרשאות ובדק ראשון.
---
## התנהגות AI
-גלה כאשר סוכנים תקועים או מתנהגים בצפוי.
+גלה כאשר סוכנים תקועים או מתנהגים בצורה בלתי צפויה.
### `warn-repeated-tool-calls`
-**אירוע:** PreToolUse (כל הכלים)
-**ברירת מחדל:** נדרש Claude לשקול מחדש כאשר אותו כלי נקרא 3+ פעמים עם פרמטרים זהים - סימן נפוץ לכך שהסוכן תקוע בלולאה.
+**Event:** PreToolUse (כל הכלים)
+**Default:** מדריך את Claude לשקול מחדש כאשר אותו כלי נקרא 3+ פעמים עם פרמטרים זהים - סימן נפוץ שהסוכן תקוע בלולאה.
אין פרמטרים.
@@ -488,14 +489,14 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
## זרימת עבודה
-אכוף זרימת עבודה משומרת בסוף הסשן. מדיניויות אלה מופעלות על אירוע **Stop** וכן Claude עוצר עד להשגת כל תנאי. הם עוקבים אחרי שרשרת תלות טבעית: commit → push → PR → CI. אם מדיניות מסירה, מדיניויות מאוחרות יותר בשרשרת מתדלדלות (deny קיצור-מעגל).
+אכוף זרימת עבודה משמעותית בסוף ההפעלה. מדיניות אלה מופעלות על אירוע **Stop** ודוחות את Claude מלעצור עד למתן כל תנאי. הן עוקבות אחר שרשרת תלות טבעית: commit → push → PR → CI. אם מדיניות דוחה, מדיניות מאוחרות בשרשרת מדלג (deny short-circuits).
-כל מדיניויות זרימת עבודה הם **fail-open**: אם הכלי הנדרש אינו זמין (למשל `gh` לא מותקן, אין git remote), המדיניות מאפשרת עם הודעה מידעתית מסבירה מדוע בדיקה דלקדה.
+כל מדיניות זרימת עבודה היא **fail-open**: אם הכלי הנדרש אינו זמין (למשל `gh` אינו מותקן, אין git remote), המדיניות מאפשרת עם הודעה מידע המסבירה מדוע בדיקה דולקה.
### `require-commit-before-stop`
-**אירוע:** Stop
-**ברירת מחדל:** מסרב עצירה כאשר יש שינויים לא מעודכנים (קבצים שונים, בשלב או לא מעקובים). מחזיר הודעה מידעתית כאשר ספריית עבודה נקייה.
+**Event:** Stop
+**Default:** דוחה עצירה כשיש שינויים לא מעומדים (קבצים שונויים, משודרים, או לא מעקובים). מחזיר הודעת מידע כאשר ספריית העבודה נקייה.
אין פרמטרים.
@@ -503,16 +504,16 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `require-push-before-stop`
-**אירוע:** Stop
-**ברירת מחדל:** מסרב עצירה כאשר יש commits לא דחופים או כאשר לענף הנוכחי אין ענף עקיבה רחוק. מצביע על `git push -u` ליצור ענף עקיבה במידת הצורך. נכשל פתוח אם אין remote מוגדר.
+**Event:** Stop
+**Default:** דוחה עצירה כשיש commits לא דחופים או כאשר לענף הנוכחי אין ענף tracking מרוחק. מציע `git push -u` ליצירת ענף tracking אם צריך. נכשל open אם אין remote מוגדר.
-**פרמטרים:**
+**Parameters:**
| Param | Type | Default | Description |
|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | שם remote לדחוף אליו. |
+| `remote` | `string` | `"origin"` | שם ה-remote לדחוף אליו. |
-**דוגמה:**
+**Example:**
```json
{
@@ -528,39 +529,39 @@ failproofai משלוח עם 30 מדיניויות מובנות תופסות מש
### `require-pr-before-stop`
-**אירוע:** Stop
-**ברירת מחדל:** מסרב עצירה כאשר אין בקשת pull לענף הנוכחי, או כאשר ה-PR הקיים סגור/מונוזג. נדרש Claude ליצור PR עם `gh pr create`.
+**Event:** Stop
+**Default:** דוחה עצירה כאשר לא קיים pull request לענף הנוכחי, או כאשר ה-PR הקיים סגור/merged. מדריך את Claude ליצור PR עם `gh pr create`.
אין פרמטרים.
-מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקנת ומאומתת.
-הפעל `gh auth login` עם token גישה אישי שיש לו `repo` scope לקריאה גישה ל-
-בקשות pull. אם `gh` לא מותקן או לא מאומת, המדיניות נכשלת פתוחה ודוחה את הסיבה ל-Claude.
+מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקן ומאומת.
+הריץ `gh auth login` עם טוקן גישה אישי שיש לו `repo` scope לגישת קריאה ל-
+pull requests. אם `gh` אינו מותקן או אינו מאומת, המדיניות נכשלת open ודווח הסיבה ל-Claude.
---
### `require-ci-green-before-stop`
-**אירוע:** Stop
-**ברירת מחדל:** מסרב עצירה כאשר בדיקות CI נכשלות או עדיין מפעיל בענף הנוכחי. בדוקות GitHub Actions workflow runs ובדיקות bot צד שלישי (למשל CodeRabbit, SonarCloud, Codecov). טיפול `skipped` סיום כהצלחה. מחזיר הודעה מידעתית כאשר כל בדיקות עברו.
+**Event:** Stop
+**Default:** דוחה עצירה כאשר בדיקות CI נכשלות או עדיין פועלות בענף הנוכחי. בודק גם ריצות סדר עבודה של GitHub Actions וביקורות בוט צד שלישי (למשל CodeRabbit, SonarCloud, Codecov). מטפל בתוצאות `skipped` ו-`cancelled` כהצלחה. מחזיר הודעת מידע כאשר כל הבדיקות עוברות.
אין פרמטרים.
-מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקנת ומאומתת.
-הפעל `gh auth login` עם token גישה אישי שיש לו `repo` scope לקריאה גישה ל-
-Actions workflow runs ו-Checks API. אם `gh` לא מותקן או לא מאומת, המדיניות נכשלת פתוחה ודוחה את הסיבה ל-Claude.
+מדיניות זו דורשת [GitHub CLI](https://cli.github.com/) (`gh`) להיות מותקן ומאומת.
+הריץ `gh auth login` עם טוקן גישה אישי שיש לו `repo` scope לגישת קריאה ל-
+ריצות סדר עבודה של Actions ו-Checks API. אם `gh` אינו מותקן או אינו מאומת, המדיניות נכשלת open ודווח הסיבה ל-Claude.
---
---
-## השבתת מדיניויות בודדות
+## השבתה של מדיניות בודדות
-הסר מדיניות ספציפית מ-`enabledPolicies` בתצורה שלך, או שחקה אותה ב-tab Policies של לוח הבקרה.
+הסר מדיניות ספציפית מ-`enabledPolicies` בתצורה שלך, או החלף אותה בלשונית Policies של לוח המחוונים.
```json
{
@@ -571,4 +572,4 @@ Actions workflow runs ו-Checks API. אם `gh` לא מותקן או לא מאו
}
```
-מדיניויות לא רשומות ב-`enabledPolicies` לא מופעלות, גם אם רשומות `policyParams` קיימות עבורן.
\ No newline at end of file
+מדיניות שאינן רשומות ב-`enabledPolicies` אינן פועלות, גם אם ערכי `policyParams` קיימים עבורן.
\ No newline at end of file
diff --git a/docs/hi/built-in-policies.mdx b/docs/hi/built-in-policies.mdx
index cfcd5070..e38c8aca 100644
--- a/docs/hi/built-in-policies.mdx
+++ b/docs/hi/built-in-policies.mdx
@@ -1,62 +1,60 @@
---
-
----
-title: Built-in Policies
-description: "सभी 30 built-in policies जो agent failure modes को पकड़ते हैं"
+title: बिल्ट-इन पॉलिसीज़
+description: "सभी 30 बिल्ट-इन पॉलिसीज़ जो एजेंट की सामान्य विफलता को रोकती हैं"
icon: shield
---
-failproofai के साथ 30 built-in policies आती हैं जो common agent failure modes को पकड़ते हैं। प्रत्येक policy एक specific hook event type और tool name पर fire होती है। नौ policies parameters स्वीकार करती हैं जो आपको code लिखे बिना उनके behavior को tune करने देते हैं। चार workflow policies एक commit → push → PR → CI pipeline को enforce करती हैं इससे पहले कि Claude stop हो।
+failproofai 30 बिल्ट-इन पॉलिसीज़ के साथ आता है जो एजेंट की सामान्य विफलता मोड को रोकती हैं। प्रत्येक पॉलिसी एक विशिष्ट हुक इवेंट प्रकार और टूल नाम पर काम करती है। नौ पॉलिसीज़ पैरामीटर स्वीकार करती हैं जो आपको कोड लिखे बिना उनके व्यवहार को ट्यून करने देते हैं। चार वर्कफ़्लो पॉलिसीज़ एक commit → push → PR → CI पाइपलाइन लागू करती हैं इससे पहले कि Claude रुके।
---
-## Overview
+## अवलोकन
-Policies को categories में grouped किया गया है:
+पॉलिसीज़ को श्रेणियों में विभाजित किया गया है:
-| Category | Policies | Hook type |
+| श्रेणी | पॉलिसीज़ | हुक प्रकार |
|----------|----------|-----------|
-| [Dangerous commands](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
-| [Secrets (sanitizers)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
-| [Environment](#environment) | block-env-files, protect-env-vars | PreToolUse |
-| [File access](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
+| [खतरनाक कमांड](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
+| [सीक्रेट्स (सैनिटाइज़र)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
+| [पर्यावरण](#environment) | block-env-files, protect-env-vars | PreToolUse |
+| [फाइल एक्सेस](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
-| [Database](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
-| [Warnings](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
-| [Package managers](#package-managers) | prefer-package-manager | PreToolUse |
-| [Workflow](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
+| [डेटाबेस](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
+| [चेतावनियां](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
+| [पैकेज मैनेजर](#package-managers) | prefer-package-manager | PreToolUse |
+| [वर्कफ़्लो](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — agent को आगे बढ़ने से रोकता है।
-- **`warn-`** — agent को additional context देता है ताकि वह self-correct कर सके।
-- **`sanitize-`** — agent को देखने से पहले tool output से sensitive data को scrub करता है।
-- **`require-`** — जब तक conditions पूरी न हों Stop event को block करता है।
+- **`block-`** — एजेंट को आगे बढ़ने से रोकें।
+- **`warn-`** — एजेंट को अतिरिक्त संदर्भ दें ताकि यह स्वयं को सही कर सके।
+- **`sanitize-`** — एजेंट को देखने से पहले टूल आउटपुट से संवेदनशील डेटा हटाएं।
+- **`require-`** — शर्तें पूरी होने तक Stop इवेंट को ब्लॉक करें।
---
-हर policy `policyParams` में एक optional `hint` field को support करती है। hint को deny या instruct message में append किया जाता है जो Claude देखता है, जिससे policy code को modify किए बिना actionable guidance मिलती है। Built-in, custom, और convention policies के साथ काम करता है। विवरण के लिए [Configuration → hint](/hi/configuration#hint-cross-cutting) देखें।
+हर पॉलिसी `policyParams` में एक वैकल्पिक `hint` फील्ड को सपोर्ट करती है। hint को deny या instruct संदेश में जोड़ा जाता है जो Claude देखता है, जिससे कार्यसंचालन मार्गदर्शन मिलता है बिना पॉलिसी कोड को संशोधित किए। बिल्ट-इन, कस्टम, और कन्वेंशन पॉलिसीज़ के साथ काम करता है। विवरण के लिए [Configuration → hint](/hi/configuration#hint-cross-cutting) देखें।
---
-## Dangerous commands
+## खतरनाक कमांड
-Agents को उन operations चलाने से रोकें जो undo करना मुश्किल हैं या host system को damage कर सकते हैं।
+एजेंट्स को ऐसे ऑपरेशन चलाने से रोकें जो पूर्ववत करना मुश्किल हैं या होस्ट सिस्टम को नुकसान पहुंचा सकते हैं।
### `block-sudo`
-**Event:** PreToolUse (Bash)
-**Default:** किसी भी `sudo` command को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** किसी भी `sudo` कमांड को अस्वीकार करता है।
-उन invocations को block करता है जिनमें `sudo` keyword शामिल है। Pattern matching parsed command tokens पर की जाती है, raw string पर नहीं, shell operator injection के माध्यम से bypass को prevent करने के लिए।
+ऐसे इनवोकेशन को ब्लॉक करता है जिनमें `sudo` कीवर्ड शामिल हो। पैटर्न मिलान कच्ची स्ट्रिंग के बजाय पार्स किए गए कमांड टोकन पर किया जाता है, shell ऑपरेटर इंजेक्शन के माध्यम से बाईपास को रोकने के लिए।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | Exact command prefixes जो permitted हैं। प्रत्येक entry को parsed argv tokens के विरुद्ध match किया जाता है। |
+| `allowPatterns` | `string[]` | `[]` | सटीक कमांड प्रीफिक्स जो अनुमति हैं। प्रत्येक प्रविष्टि पार्स किए गए argv टोकन के विरुद्ध मिलाई जाती है। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -68,26 +66,26 @@ Agents को उन operations चलाने से रोकें जो un
}
```
-इस config के साथ, `sudo systemctl status nginx` allowed है, लेकिन `sudo rm /etc/hosts` denied है।
+इस कॉन्फ़िगरेशन के साथ, `sudo systemctl status nginx` अनुमति है, लेकिन `sudo rm /etc/hosts` अस्वीकृत है।
-Patterns को raw command string के विरुद्ध नहीं, parsed tokens के विरुद्ध match किया जाता है। यह appended shell operators के माध्यम से bypass को prevent करता है (उदाहरण के लिए `sudo systemctl status x; rm -rf /` `sudo systemctl status *` से match नहीं करता)।
+पैटर्न कच्ची कमांड स्ट्रिंग के बजाय पार्स किए गए टोकन के विरुद्ध मिलाए जाते हैं। यह अपेंड किए गए shell ऑपरेटर के माध्यम से बाईपास को रोकता है (उदा. `sudo systemctl status x; rm -rf /` `sudo systemctl status *` से मेल नहीं खाता)।
---
### `block-rm-rf`
-**Event:** PreToolUse (Bash)
-**Default:** `rm -rf`, `rm -fr`, और similar recursive deletion forms को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** `rm -rf`, `rm -fr`, और समान पुनरावर्ती विलोपन फॉर्म को अस्वीकार करता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Paths जो recursively delete करने के लिए safe हैं (उदाहरण के लिए `/tmp`)। |
+| `allowPaths` | `string[]` | `[]` | पथ जो पुनरावर्ती रूप से हटाने के लिए सुरक्षित हैं (उदा. `/tmp`)। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -103,47 +101,47 @@ Patterns को raw command string के विरुद्ध नहीं, pa
### `block-curl-pipe-sh`
-**Event:** PreToolUse (Bash)
-**Default:** `curl | bash`, `curl | sh`, `wget | bash`, और similar patterns को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** `curl | bash`, `curl | sh`, `wget | bash`, और समान पैटर्न को अस्वीकार करता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `block-failproofai-commands`
-**Event:** PreToolUse (Bash)
-**Default:** उन commands को deny करता है जो failproofai को uninstall या disable करेंगे (उदाहरण के लिए `npm uninstall failproofai`, `failproofai policies --uninstall`)।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** ऐसी कमांड को अस्वीकार करता है जो failproofai को अनइंस्टॉल या अक्षम करेंगी (उदा. `npm uninstall failproofai`, `failproofai policies --uninstall`)।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Secrets (sanitizers)
+## सीक्रेट्स (सैनिटाइज़र)
-Agents को credentials को अपने context या output में leak करने से रोकें। Sanitizer policies **PostToolUse** events पर fire होती हैं। जब Claude एक Bash command चलाता है, एक file को read करता है, या कोई भी tool को call करता है, ये policies output को inspect करते हैं इससे पहले कि यह Claude को return किया जाए। अगर एक secret pattern detect होता है, तो policy एक deny decision return करता है जो output को pass back होने से prevent करता है।
+एजेंट्स को अपने संदर्भ या आउटपुट में क्रेडेंशियल लीक करने से रोकें। सैनिटाइज़र पॉलिसीज़ **PostToolUse** इवेंट पर काम करती हैं। जब Claude एक Bash कमांड चलाता है, एक फाइल पढ़ता है, या कोई भी टूल कॉल करता है, ये पॉलिसीज़ आउटपुट को Claude को लौटाए जाने से पहले निरीक्षण करती हैं। यदि एक सीक्रेट पैटर्न पाया जाता है, पॉलिसी एक अस्वीकार निर्णय देती है जो आउटपुट को वापस पास किए जाने से रोकता है।
### `sanitize-jwt`
-**Event:** PostToolUse (all tools)
-**Default:** JWT tokens को redact करता है (तीन base64url segments `.` से separated)।
+**इवेंट:** PostToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** JWT टोकन को रिडैक्ट करता है (तीन base64url सेगमेंट `.` से अलग)।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `sanitize-api-keys`
-**Event:** PostToolUse (all tools)
-**Default:** Common API key formats को redact करता है: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS access keys (`AKIA`), Stripe keys (`sk_live_`, `sk_test_`), और Google API keys (`AIza`)।
+**इवेंट:** PostToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** सामान्य API कुंजी फॉर्मेट को रिडैक्ट करता है: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS एक्सेस कुंजियां (`AKIA`), Stripe कुंजियां (`sk_live_`, `sk_test_`), और Google API कुंजियां (`AIza`)।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Additional regex patterns जो secrets के रूप में treat किए जाएं। |
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | सीक्रेट मानने के लिए अतिरिक्त regex पैटर्न। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -162,71 +160,71 @@ Agents को credentials को अपने context या output में le
### `sanitize-connection-strings`
-**Event:** PostToolUse (all tools)
-**Default:** Database connection strings को redact करता है जिनमें embedded credentials हैं (उदाहरण के लिए `postgresql://user:password@host/db`)।
+**इवेंट:** PostToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** डेटाबेस कनेक्शन स्ट्रिंग को रिडैक्ट करता है जिनमें एंबेडेड क्रेडेंशियल हैं (उदा. `postgresql://user:password@host/db`)।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `sanitize-private-key-content`
-**Event:** PostToolUse (all tools)
-**Default:** PEM blocks को redact करता है (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, आदि)।
+**इवेंट:** PostToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** PEM ब्लॉक को रिडैक्ट करता है (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, आदि)।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `sanitize-bearer-tokens`
-**Event:** PostToolUse (all tools)
-**Default:** `Authorization: Bearer ` headers को redact करता है जहां token 20 या उससे अधिक characters का हो।
+**इवेंट:** PostToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** `Authorization: Bearer ` हेडर को रिडैक्ट करता है जहां टोकन 20 या अधिक वर्णों का है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Environment
+## पर्यावरण
-Agents द्वारा sensitive environment configuration को read या expose होने से protect करें।
+एजेंट्स द्वारा संवेदनशील पर्यावरण कॉन्फ़िगरेशन को पढ़े या उजागर किए जाने से सुरक्षित रखें।
### `block-env-files`
-**Event:** PreToolUse (Bash, Read)
-**Default:** `.env` files को read करने को deny करता है `cat .env` के माध्यम से, Read tool calls जहां file path `.env` हो, आदि।
+**इवेंट:** PreToolUse (Bash, Read)
+**डिफ़ॉल्ट:** `.env` फाइलों को `cat .env`, Read टूल कॉल के माध्यम से फाइल पथ के रूप में `.env` के साथ, आदि पढ़ने से अस्वीकार करता है।
-`.envrc` या अन्य environment-adjacent files को block नहीं करता - केवल उन files को जो exactly `.env` नाम के हों।
+`.envrc` या अन्य पर्यावरण-निकटवर्ती फाइलों को ब्लॉक नहीं करता है - केवल ठीक `.env` नामित फाइलें।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `protect-env-vars`
-**Event:** PreToolUse (Bash)
-**Default:** उन commands को deny करता है जो environment variables को print करते हैं: `printenv`, `env`, `echo $VAR`।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** पर्यावरण वेरिएबल प्रिंट करने वाली कमांड को अस्वीकार करता है: `printenv`, `env`, `echo $VAR`।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## File access
+## फाइल एक्सेस
-Agents को project boundaries के अंदर काम करने और sensitive files से दूर रखें।
+एजेंट्स को प्रोजेक्ट सीमाओं के अंदर काम करने और संवेदनशील फाइलों से दूर रखें।
### `block-read-outside-cwd`
-**Event:** PreToolUse (Read, Bash)
-**Default:** Current working directory (project root) के बाहर files को read करने को deny करता है।
+**इवेंट:** PreToolUse (Read, Bash)
+**डिफ़ॉल्ट:** वर्तमान कार्य निर्देशिका (प्रोजेक्ट रूट) के बाहर फाइलों को पढ़ने से अस्वीकार करता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Absolute path prefixes जो permitted हैं भले ही cwd के बाहर हों। |
+| `allowPaths` | `string[]` | `[]` | निरपेक्ष पथ प्रीफिक्स जो अनुमति हैं यहां तक कि अगर cwd के बाहर। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -242,16 +240,16 @@ Agents को project boundaries के अंदर काम करने औ
### `block-secrets-write`
-**Event:** PreToolUse (Write, Edit)
-**Default:** उन common files में writes को deny करता है जो private keys और certificates के लिए उपयोग किए जाते हैं: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`।
+**इवेंट:** PreToolUse (Write, Edit)
+**डिफ़ॉल्ट:** निजी कुंजियों और प्रमाणपत्रों के लिए आमतौर पर उपयोग की जाने वाली फाइलों में लिखने से अस्वीकार करता है: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | Additional filename patterns (glob-style) जो block करने हैं। |
+| `additionalPatterns` | `string[]` | `[]` | ब्लॉक करने के लिए अतिरिक्त फाइलनाम पैटर्न (glob-स्टाइल)। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -267,20 +265,20 @@ Agents को project boundaries के अंदर काम करने औ
## Git
-Accidental pushes, force-pushes, और branch mistakes को prevent करें जो undo करना मुश्किल है।
+आकस्मिक पुश, force-पुश, और ब्रांच गलतियों को रोकें जो पूर्ववत करना मुश्किल हैं।
### `block-push-master`
-**Event:** PreToolUse (Bash)
-**Default:** `git push origin main` और `git push origin master` को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** `git push origin main` और `git push origin master` को अस्वीकार करता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Branch names जो directly push नहीं किए जा सकते। |
+| `protectedBranches` | `string[]` | `["main", "master"]` | ब्रांच नाम जो सीधे नहीं धकेले जा सकते। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -293,36 +291,36 @@ Accidental pushes, force-pushes, और branch mistakes को prevent करे
```
-सभी branches में pushing को allow करने के लिए (इस policy को `enabledPolicies` से remove किए बिना effectively disable करने के लिए), `protectedBranches: []` set करें।
+सभी ब्रांचों में पुश करने की अनुमति देने के लिए (प्रभावी रूप से इस पॉलिसी को `enabledPolicies` से हटाए बिना अक्षम करने के लिए), `protectedBranches: []` सेट करें।
---
### `block-work-on-main`
-**Event:** PreToolUse (Bash)
-**Default:** `main` या `master` branches को directly checkout करने को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** `main` या `master` ब्रांच को सीधे चेक आउट करने से अस्वीकार करता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Branch names जो directly checkout नहीं किए जा सकते। |
+| `protectedBranches` | `string[]` | `["main", "master"]` | ब्रांच नाम जो सीधे चेक आउट नहीं किए जा सकते। |
---
### `block-force-push`
-**Event:** PreToolUse (Bash)
-**Default:** `git push --force` और `git push -f` को deny करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** `git push --force` और `git push -f` को अस्वीकार करता है।
-कोई policy-specific parameters नहीं। Alternatives suggest करने के लिए cross-cutting [`hint`](/hi/configuration#hint-cross-cutting) का उपयोग करें:
+कोई नीति-विशिष्ट पैरामीटर नहीं। विकल्प सुझाने के लिए क्रॉस-कटिंग [`hint`](/hi/configuration#hint-cross-cutting) का उपयोग करें:
```json
{
"policyParams": {
"block-force-push": {
- "hint": "अपने current HEAD से एक नया branch create करें (उदाहरण के लिए `git checkout -b `) और उसे push करें।"
+ "hint": "अपने वर्तमान HEAD से एक नई ब्रांच बनाएं (उदा. `git checkout -b `) और इसके बजाय उसे पुश करें।"
}
}
}
@@ -332,69 +330,69 @@ Accidental pushes, force-pushes, और branch mistakes को prevent करे
### `warn-git-amend`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को carefully proceed करने के लिए instruct करता है जब `git commit --amend` चला रहा हो। Command को block नहीं करता।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `git commit --amend` चलाते समय सावधानी से आगे बढ़ने के लिए निर्देश देता है। कमांड को ब्लॉक नहीं करता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `warn-git-stash-drop`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को `git stash drop` चलाने से पहले confirm करने के लिए instruct करता है। Command को block नहीं करता।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `git stash drop` चलाने से पहले पुष्टि करने के लिए निर्देश देता है। कमांड को ब्लॉक नहीं करता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `warn-all-files-staged`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को review करने के लिए instruct करता है कि वह क्या stage कर रहा है जब `git add -A` या `git add .` चलाता है। Command को block नहीं करता।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को समीक्षा करने के लिए निर्देश देता है कि जब यह `git add -A` या `git add .` चलाता है तो क्या स्टेजिंग कर रहा है। कमांड को ब्लॉक नहीं करता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Database
+## डेटाबेस
-Database के विरुद्ध execute होने से पहले destructive SQL operations को catch करें।
+विनाशकारी SQL ऑपरेशन को आपके डेटाबेस के विरुद्ध निष्पादित होने से पहले पकड़ें।
### `warn-destructive-sql`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को confirm करने के लिए instruct करता है `DROP TABLE`, `DROP DATABASE`, या `WHERE` clause के बिना `DELETE` containing SQL चलाने से पहले।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को SQL युक्त `DROP TABLE`, `DROP DATABASE`, या `WHERE` क्लॉज़ के बिना `DELETE` चलाने से पहले पुष्टि करने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `warn-schema-alteration`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को `ALTER TABLE` statements चलाने से पहले confirm करने के लिए instruct करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `ALTER TABLE` स्टेटमेंट चलाने से पहले पुष्टि करने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Warnings
+## चेतावनियां
-Agents को potentially risky लेकिन non-destructive operations से पहले extra context दें।
+एजेंट्स को संभावित रूप से जोखिम भरे लेकिन गैर-विनाशकारी ऑपरेशन से पहले अतिरिक्त संदर्भ दें।
### `warn-large-file-write`
-**Event:** PreToolUse (Write)
-**Default:** Claude को 1024 KB से बड़ी files write करने से पहले confirm करने के लिए instruct करता है।
+**इवेंट:** PreToolUse (Write)
+**डिफ़ॉल्ट:** Claude को 1024 KB से बड़ी फाइलें लिखने से पहले पुष्टि करने के लिए निर्देश देता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `thresholdKb` | `number` | `1024` | File size threshold kilobytes में जिससे ऊपर एक warning issue किया जाता है। |
+| `thresholdKb` | `number` | `1024` | फाइल आकार थ्रेसहोल्ड किलोबाइट में जिससे ऊपर चेतावनी जारी की जाती है। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -407,57 +405,57 @@ Agents को potentially risky लेकिन non-destructive operations स
```
-Hook handler payloads पर 1 MB stdin limit enforce करता है। इस policy को small content के साथ test करने के लिए, `thresholdKb` को एक value set करें जो 1024 से बहुत कम हो।
+हुक हैंडलर पेलोड पर 1 MB stdin सीमा लागू करता है। छोटी सामग्री के साथ इस पॉलिसी का परीक्षण करने के लिए, `thresholdKb` को 1024 से कहीं नीचे एक मान पर सेट करें।
---
### `warn-package-publish`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को `npm publish` चलाने से पहले confirm करने के लिए instruct करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `npm publish` चलाने से पहले पुष्टि करने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `warn-background-process`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को careful रहने के लिए instruct करता है जब `nohup`, `&`, `disown`, या `screen` के via background processes launch कर रहा हो।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `nohup`, `&`, `disown`, या `screen` के माध्यम से बैकग्राउंड प्रक्रियाएं लॉन्च करते समय सावधान रहने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `warn-global-package-install`
-**Event:** PreToolUse (Bash)
-**Default:** Claude को `npm install -g`, `yarn global add`, या virtual environment के बिना `pip install` चलाने से पहले confirm करने के लिए instruct करता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** Claude को `npm install -g`, `yarn global add`, या `pip install` को वर्चुअल वातावरण के बिना चलाने से पहले पुष्टि करने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Package managers
+## पैकेज मैनेजर
-Enforce करें कि agent किस package manager को use करने के लिए allowed है।
+यह लागू करें कि एजेंट किस पैकेज मैनेजर का उपयोग करने की अनुमति है।
### `prefer-package-manager`
-**Event:** PreToolUse (Bash)
-**Default:** Disabled। जब enabled हो, तो `allowed` list में न होने वाली किसी भी package manager command को block करता है और Claude को एक allowed manager का उपयोग करके command को rewrite करने के लिए कहता है।
+**इवेंट:** PreToolUse (Bash)
+**डिफ़ॉल्ट:** अक्षम। जब सक्षम किया जाता है, `allowed` सूची में न होने वाली किसी भी पैकेज मैनेजर कमांड को ब्लॉक करता है और Claude को अनुमत मैनेजर का उपयोग करके कमांड को फिर से लिखने के लिए कहता है।
-Detects: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo।
+पहचानता है: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo।
-| Parameter | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Allowed package manager names। इस list में न होने वाले किसी भी detected manager को block किया जाता है। जब empty हो, तो policy एक no-op है। |
-| `blocked` | string[] | `[]` | Built-in list के beyond additional manager names को block करने के लिए (उदाहरण के लिए `['pdm', 'pipx']`)। |
+| `allowed` | string[] | `[]` | अनुमत पैकेज मैनेजर नाम। इस सूची में न होने वाला कोई भी पहचाना गया मैनेजर ब्लॉक किया जाता है। जब खाली हो, पॉलिसी एक नो-ऑप है। |
+| `blocked` | string[] | `[]` | बिल्ट-इन सूची से परे अतिरिक्त मैनेजर नाम को ब्लॉक करने के लिए (उदा. `['pdm', 'pipx']`)। |
-Built-in block list cover करता है: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo। इस list में न होने वाले managers को append करने के लिए `blocked` का उपयोग करें।
+बिल्ट-इन ब्लॉक सूची शामिल है: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo। इस सूची में न होने वाले मैनेजर को जोड़ने के लिए `blocked` का उपयोग करें।
-**Example configuration:**
+**उदाहरण कॉन्फ़िगरेशन:**
```json
{
@@ -471,50 +469,50 @@ Built-in block list cover करता है: pip, pip3, npm, npx, yarn, pnpm,
}
```
-इस config के साथ, `pip install flask` और `pdm install flask` दोनों denied हैं Claude को `uv` या `bun` का उपयोग करने के लिए कहने वाले एक message के साथ। `uv pip install flask` जैसे commands allowed हैं क्योंकि `uv` allowlist में है और पहले check किया जाता है।
+इस कॉन्फ़िगरेशन के साथ, `pip install flask` और `pdm install flask` दोनों को Claude को `uv` या `bun` का उपयोग करने के लिए कहने वाले संदेश के साथ अस्वीकार किया जाता है। `uv pip install flask` जैसी कमांड अनुमत हैं क्योंकि `uv` allowlist में है और पहले चेक किया जाता है।
---
-## AI behavior
+## AI व्यवहार
-Detect करें जब agents stuck हो जाएं या unexpectedly behave करें।
+पहचानें कि जब एजेंट्स अटक जाते हैं या अप्रत्याशित व्यवहार करते हैं।
### `warn-repeated-tool-calls`
-**Event:** PreToolUse (all tools)
-**Default:** Claude को reconsider करने के लिए instruct करता है जब same tool को 3+ बार identical parameters के साथ call किया जाता है - एक common sign कि agent एक loop में stuck है।
+**इवेंट:** PreToolUse (सभी टूल्स)
+**डिफ़ॉल्ट:** Claude को पुनर्विचार करने के लिए निर्देश देता है जब एक ही टूल को समान पैरामीटर के साथ 3 या अधिक बार कॉल किया जाता है - एक सामान्य संकेत कि एजेंट एक लूप में फंसा है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
-## Workflow
+## वर्कफ़्लो
-एक disciplined end-of-session workflow को enforce करें। ये policies **Stop** event पर fire होती हैं और जब तक प्रत्येक condition पूरी न हो Claude को stop करने से deny करती हैं। वे एक natural dependency chain follow करती हैं: commit → push → PR → CI। अगर एक policy deny करती है, तो chain में later policies को skip किया जाता है (deny short-circuits)।
+एक अनुशासित सत्र-के-अंत वर्कफ़्लो लागू करें। ये पॉलिसीज़ **Stop** इवेंट पर काम करती हैं और Claude को तब तक रोकते हैं जब तक प्रत्येक शर्त पूरी नहीं हो जाती। वे एक प्राकृतिक निर्भरता श्रृंखला का पालन करते हैं: commit → push → PR → CI। यदि एक पॉलिसी अस्वीकार करती है, बाद की पॉलिसीज़ श्रृंखला में छोड़ दी जाती हैं (deny शॉर्ट-सर्किट)।
-सभी workflow policies **fail-open** हैं: अगर required tool available नहीं है (उदाहरण के लिए `gh` installed नहीं है, no git remote), तो policy allow करती है एक informational message के साथ जो explain करता है कि check को क्यों skip किया गया था।
+सभी वर्कफ़्लो पॉलिसीज़ **fail-open** हैं: यदि आवश्यक टूल उपलब्ध नहीं है (उदा. `gh` इंस्टॉल नहीं है, कोई git remote नहीं), पॉलिसी एक सूचना संदेश के साथ अनुमति देती है जो समझाती है कि जांच क्यों छोड़ी गई थी।
### `require-commit-before-stop`
-**Event:** Stop
-**Default:** Uncommitted changes (modified, staged, या untracked files) होने पर stop करने को deny करता है। Working directory clean होने पर एक informational message return करता है।
+**इवेंट:** Stop
+**डिफ़ॉल्ट:** जब अप्रतिबद्ध परिवर्तन होते हैं (संशोधित, स्टेजड, या अनट्रैक किए गए फाइलें) तो रोकने से अस्वीकार करता है। कार्य निर्देशिका स्वच्छ होने पर एक सूचना संदेश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
---
### `require-push-before-stop`
-**Event:** Stop
-**Default:** Unpushed commits होने या current branch के पास no remote tracking branch होने पर stop करने को deny करता है। `git push -u` suggest करता है एक tracking branch create करने के लिए अगर जरूरत हो। अगर कोई remote configured न हो तो fail open करता है।
+**इवेंट:** Stop
+**डिफ़ॉल्ट:** जब अपुष्ट कमिट होते हैं या जब वर्तमान ब्रांच के पास कोई remote tracking ब्रांच नहीं होती तो रोकने से अस्वीकार करता है। यदि आवश्यक हो तो ट्रैकिंग ब्रांच बनाने के लिए `git push -u` का सुझाव देता है। यदि कोई remote कॉन्फ़िगर नहीं है तो fail open करता है।
-**Parameters:**
+**पैरामीटर:**
-| Param | Type | Default | Description |
+| पैरामीटर | प्रकार | डिफ़ॉल्ट | विवरण |
|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | Remote name जिसे push करना है। |
+| `remote` | `string` | `"origin"` | Remote नाम जिसे पुश करना है। |
-**Example:**
+**उदाहरण:**
```json
{
@@ -530,39 +528,37 @@ Detect करें जब agents stuck हो जाएं या unexpectedly
### `require-pr-before-stop`
-**Event:** Stop
-**Default:** जब current branch के लिए कोई pull request exist नहीं करता, या जब existing PR closed/merged हो, तो stop करने को deny करता है। Claude को `gh pr create` के साथ PR create करने के लिए instruct करता है।
+**इवेंट:** Stop
+**डिफ़ॉल्ट:** जब वर्तमान ब्रांच के लिए कोई pull request मौजूद नहीं है, या जब मौजूदा PR बंद/merged है तो रोकने से अस्वीकार करता है। Claude को `gh pr create` के साथ एक PR बनाने के लिए निर्देश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
-इस policy को [GitHub CLI](https://cli.github.com/) (`gh`) install और authenticated होना required है।
-एक personal access token के साथ `gh auth login` चलाएं जिसके पास pull requests तक read access के लिए `repo` scope हो।
-अगर `gh` install नहीं है या authenticated नहीं है, तो policy fail open करती है और reason को Claude को report करती है।
+इस पॉलिसी के लिए [GitHub CLI](https://cli.github.com/) (`gh`) को इंस्टॉल और प्रमाणित किया जाना आवश्यक है।
+pull request के लिए read access के साथ `repo` scope वाले एक व्यक्तिगत एक्सेस टोकन के साथ `gh auth login` चलाएं। यदि `gh` इंस्टॉल या प्रमाणित नहीं है, पॉलिसी fail open करती है और कारण को Claude को रिपोर्ट करती है।
---
### `require-ci-green-before-stop`
-**Event:** Stop
-**Default:** जब CI checks current branch पर failing या still running हों, तो stop करने को deny करता है। GitHub Actions workflow runs और third-party bot checks दोनों को check करता है (उदाहरण के लिए CodeRabbit, SonarCloud, Codecov)। `skipped` conclusions को success के रूप में treat करता है। सभी checks pass होने पर एक informational message return करता है।
+**इवेंट:** Stop
+**डिफ़ॉल्ट:** जब CI चेक वर्तमान ब्रांच पर विफल हो रहे हैं या अभी भी चल रहे हैं तो रोकने से अस्वीकार करता है। GitHub Actions वर्कफ़्लो चलाता है और तीसरे पक्ष के बॉट चेक दोनों की जांच करता है (उदा. CodeRabbit, SonarCloud, Codecov)। `skipped` और `cancelled` निष्कर्षों को सफलता मानता है। सभी चेक पास होने पर एक सूचना संदेश देता है।
-कोई parameters नहीं।
+कोई पैरामीटर नहीं।
-इस policy को [GitHub CLI](https://cli.github.com/) (`gh`) install और authenticated होना required है।
-एक personal access token के साथ `gh auth login` चलाएं जिसके पास Actions workflow runs और Checks API तक read access के लिए `repo` scope हो।
-अगर `gh` install नहीं है या authenticated नहीं है, तो policy fail open करती है और reason को Claude को report करती है।
+इस पॉलिसी के लिए [GitHub CLI](https://cli.github.com/) (`gh`) को इंस्टॉल और प्रमाणित किया जाना आवश्यक है।
+Actions वर्कफ़्लो चलता है और Checks API के लिए read access के साथ `repo` scope वाले एक व्यक्तिगत एक्सेस टोकन के साथ `gh auth login` चलाएं। यदि `gh` इंस्टॉल या प्रमाणित नहीं है, पॉलिसी fail open करती है और कारण को Claude को रिपोर्ट करती है।
---
---
-## Individual policies को disable करना
+## व्यक्तिगत पॉलिसीज़ को अक्षम करना
-अपने config में `enabledPolicies` से एक specific policy को remove करें, या dashboard के Policies tab में इसे toggle off करें।
+अपनी कॉन्फ़िगरेशन में `enabledPolicies` से एक विशिष्ट पॉलिसी को हटाएं, या डैशबोर्ड के Policies टैब में इसे बंद करें।
```json
{
@@ -573,4 +569,4 @@ Detect करें जब agents stuck हो जाएं या unexpectedly
}
```
-`enabledPolicies` में listed न होने वाली policies run नहीं होती हैं, भले ही उनके लिए `policyParams` entries exist हों।
\ No newline at end of file
+`enabledPolicies` में सूचीबद्ध नहीं की गई पॉलिसीज़ चलती नहीं हैं, भले ही उनके लिए `policyParams` प्रविष्टियां मौजूद हों।
\ No newline at end of file
diff --git a/docs/it/built-in-policies.mdx b/docs/it/built-in-policies.mdx
index f669d08d..6e060f00 100644
--- a/docs/it/built-in-policies.mdx
+++ b/docs/it/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
-title: Politiche Integrate
-description: "Tutte le 30 politiche integrate che catturano le modalità di errore comuni degli agenti"
+title: Politiche integrate
+description: "Tutte le 30 politiche integrate che rilevano i comuni modi di fallimento degli agenti"
icon: shield
---
-failproofai viene fornito con 30 politiche integrate che catturano le modalità di errore comuni degli agenti. Ogni politica si attiva su un tipo di evento hook e un nome di strumento specifici. Nove politiche accettano parametri che ti permettono di regolarne il comportamento senza scrivere codice. Quattro politiche di flusso di lavoro applicano una pipeline commit → push → PR → CI prima che Claude si fermi.
+failproofai include 30 politiche integrate che rilevano i comuni modi di fallimento degli agenti. Ogni politica si attiva su un tipo specifico di evento hook e nome dello strumento. Nove politiche accettano parametri che ti permettono di regolarne il comportamento senza scrivere codice. Quattro politiche di workflow applicano una pipeline commit → push → PR → CI prima che Claude si fermi.
---
@@ -12,7 +12,7 @@ failproofai viene fornito con 30 politiche integrate che catturano le modalità
Le politiche sono raggruppate in categorie:
-| Categoria | Politiche | Tipo di Hook |
+| Categoria | Politiche | Tipo di hook |
|----------|----------|-----------|
| [Comandi pericolosi](#comandi-pericolosi) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [Segreti (sanitizzatori)](#segreti-sanitizzatori) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
@@ -22,17 +22,17 @@ Le politiche sono raggruppate in categorie:
| [Database](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
| [Avvisi](#avvisi) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
| [Gestori di pacchetti](#gestori-di-pacchetti) | prefer-package-manager | PreToolUse |
-| [Flusso di lavoro](#flusso-di-lavoro) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
+| [Workflow](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
- **`block-`** — impedisce all'agente di procedere.
- **`warn-`** — fornisce all'agente contesto aggiuntivo in modo che possa autocorreggersi.
-- **`sanitize-`** — ripulisce i dati sensibili dall'output dello strumento prima che l'agente li veda.
-- **`require-`** — blocca l'evento Stop fino al soddisfacimento delle condizioni.
+- **`sanitize-`** — rimuove i dati sensibili dall'output dello strumento prima che l'agente li veda.
+- **`require-`** — blocca l'evento Stop fino a quando le condizioni non sono soddisfatte.
---
-Ogni politica supporta un campo `hint` facoltativo in `policyParams`. L'hint viene aggiunto al messaggio deny o instruct che Claude vede, fornendo indicazioni utili senza modificare il codice della politica. Funziona con politiche integrate, personalizzate e di convenzione. Consulta [Configuration → hint](/it/configuration#hint-cross-cutting) per i dettagli.
+Ogni politica supporta un campo opzionale `hint` in `policyParams`. L'hint viene aggiunto al messaggio di negazione o istruzione che Claude vede, fornendo una guida pratica senza modificare il codice della politica. Funziona con politiche integrate, personalizzate e di convenzione. Vedi [Configurazione → hint](/it/configuration#hint-cross-cutting) per i dettagli.
---
@@ -46,13 +46,13 @@ Impedisci agli agenti di eseguire operazioni difficili da annullare o che potreb
**Evento:** PreToolUse (Bash)
**Predefinito:** Nega qualsiasi comando `sudo`.
-Blocca gli invocamenti che includono la parola chiave `sudo`. La corrispondenza del pattern viene eseguita sui token del comando analizzati, non sulla stringa grezza, per prevenire l'aggiramento tramite iniezione di operatori shell.
+Blocca gli invocazioni che includono la parola chiave `sudo`. L'abbinamento dei modelli viene eseguito su token di comando analizzati, non sulla stringa grezza, per prevenire bypass tramite iniezione di operatori shell.
**Parametri:**
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | Prefissi di comando esatti consentiti. Ogni voce viene confrontata con i token argv analizzati. |
+| `allowPatterns` | `string[]` | `[]` | Prefissi di comando esatti che sono consentiti. Ogni voce viene abbinata ai token argv analizzati. |
**Esempio:**
@@ -66,10 +66,10 @@ Blocca gli invocamenti che includono la parola chiave `sudo`. La corrispondenza
}
```
-Con questa configurazione, `sudo systemctl status nginx` è consentito, ma `sudo rm /etc/hosts` viene negato.
+Con questa configurazione, `sudo systemctl status nginx` è consentito, ma `sudo rm /etc/hosts` è negato.
-I pattern vengono confrontati con i token analizzati, non con la stringa di comando grezza. Ciò impedisce l'aggiramento tramite operatori shell aggiunti (ad es. `sudo systemctl status x; rm -rf /` non corrisponde a `sudo systemctl status *`).
+I modelli vengono abbinati ai token analizzati, non alla stringa di comando grezza. Questo previene il bypass tramite operatori shell aggiunti (ad es. `sudo systemctl status x; rm -rf /` non corrisponde a `sudo systemctl status *`).
---
@@ -83,7 +83,7 @@ I pattern vengono confrontati con i token analizzati, non con la stringa di coma
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Percorsi che è sicuro eliminare ricorsivamente (ad es. `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | Percorsi che sono sicuri da eliminare ricorsivamente (ad es. `/tmp`). |
**Esempio:**
@@ -102,7 +102,7 @@ I pattern vengono confrontati con i token analizzati, non con la stringa di coma
### `block-curl-pipe-sh`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Nega `curl | bash`, `curl | sh`, `wget | bash` e pattern simili.
+**Predefinito:** Nega `curl | bash`, `curl | sh`, `wget | bash` e modelli simili.
Nessun parametro.
@@ -119,12 +119,12 @@ Nessun parametro.
## Segreti (sanitizzatori)
-Impedisci agli agenti di filtrare le credenziali nel loro contesto o output. Le politiche dei sanitizzatori si attivano su eventi **PostToolUse**. Quando Claude esegue un comando Bash, legge un file o chiama qualsiasi strumento, queste politiche ispezionano l'output prima che venga restituito a Claude. Se viene rilevato un pattern di segreto, la politica restituisce una decisione di deny che impedisce l'output di essere passato indietro.
+Impedisci agli agenti di far trapelare credenziali nel loro contesto o output. Le politiche di sanitizzazione si attivano su eventi **PostToolUse**. Quando Claude esegue un comando Bash, legge un file o chiama qualsiasi strumento, queste politiche ispezionano l'output prima che venga restituito a Claude. Se viene rilevato un modello di segreto, la politica restituisce una decisione di negazione che impedisce il passaggio dell'output.
### `sanitize-jwt`
**Evento:** PostToolUse (tutti gli strumenti)
-**Predefinito:** Redige i token JWT (tre segmenti base64url separati da `.`).
+**Predefinito:** Offusca i token JWT (tre segmenti base64url separati da `.`).
Nessun parametro.
@@ -133,13 +133,13 @@ Nessun parametro.
### `sanitize-api-keys`
**Evento:** PostToolUse (tutti gli strumenti)
-**Predefinito:** Redige i formati comuni delle chiavi API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), chiavi di accesso AWS (`AKIA`), chiavi Stripe (`sk_live_`, `sk_test_`), e chiavi API Google (`AIza`).
+**Predefinito:** Offusca i formati comuni di chiavi API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), chiavi di accesso AWS (`AKIA`), chiavi Stripe (`sk_live_`, `sk_test_`) e chiavi API Google (`AIza`).
**Parametri:**
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Pattern regex aggiuntivi da trattare come segreti. |
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Modelli regex aggiuntivi da trattare come segreti. |
**Esempio:**
@@ -148,8 +148,8 @@ Nessun parametro.
"policyParams": {
"sanitize-api-keys": {
"additionalPatterns": [
- { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo internal API key" },
- { "regex": "pat_[0-9a-f]{40}", "label": "Internal PAT" }
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "Chiave API interna MyCo" },
+ { "regex": "pat_[0-9a-f]{40}", "label": "PAT interno" }
]
}
}
@@ -161,7 +161,7 @@ Nessun parametro.
### `sanitize-connection-strings`
**Evento:** PostToolUse (tutti gli strumenti)
-**Predefinito:** Redige le stringhe di connessione del database che contengono credenziali incorporate (ad es. `postgresql://user:password@host/db`).
+**Predefinito:** Offusca le stringhe di connessione del database che contengono credenziali incorporate (ad es. `postgresql://user:password@host/db`).
Nessun parametro.
@@ -170,7 +170,7 @@ Nessun parametro.
### `sanitize-private-key-content`
**Evento:** PostToolUse (tutti gli strumenti)
-**Predefinito:** Redige i blocchi PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, ecc.).
+**Predefinito:** Offusca i blocchi PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, ecc.).
Nessun parametro.
@@ -179,7 +179,7 @@ Nessun parametro.
### `sanitize-bearer-tokens`
**Evento:** PostToolUse (tutti gli strumenti)
-**Predefinito:** Redige le intestazioni `Authorization: Bearer ` dove il token è di 20 o più caratteri.
+**Predefinito:** Offusca gli header `Authorization: Bearer ` dove il token è 20 o più caratteri.
Nessun parametro.
@@ -194,7 +194,7 @@ Proteggi la configurazione dell'ambiente sensibile dalla lettura o dall'esposizi
**Evento:** PreToolUse (Bash, Read)
**Predefinito:** Nega la lettura dei file `.env` tramite `cat .env`, chiamate dello strumento Read con `.env` come percorso del file, ecc.
-Non blocca `.envrc` o altri file legati all'ambiente — solo i file denominati esattamente `.env`.
+Non blocca `.envrc` o altri file correlati all'ambiente - solo file denominati esattamente `.env`.
Nessun parametro.
@@ -203,7 +203,7 @@ Nessun parametro.
### `protect-env-vars`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Nega i comandi che stampano le variabili d'ambiente: `printenv`, `env`, `echo $VAR`.
+**Predefinito:** Nega i comandi che stampano variabili di ambiente: `printenv`, `env`, `echo $VAR`.
Nessun parametro.
@@ -211,12 +211,12 @@ Nessun parametro.
## Accesso ai file
-Mantieni gli agenti che lavorano all'interno dei confini del progetto e lontani dai file sensibili.
+Mantieni gli agenti dentro i confini del progetto e lontani dai file sensibili.
### `block-read-outside-cwd`
**Evento:** PreToolUse (Read, Bash)
-**Predefinito:** Nega la lettura dei file al di fuori della directory di lavoro corrente (radice del progetto).
+**Predefinito:** Nega la lettura dei file al di fuori della directory di lavoro corrente (la root del progetto).
**Parametri:**
@@ -241,13 +241,13 @@ Mantieni gli agenti che lavorano all'interno dei confini del progetto e lontani
### `block-secrets-write`
**Evento:** PreToolUse (Write, Edit)
-**Predefinito:** Nega le scritture nei file comunemente utilizzati per le chiavi private e i certificati: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Predefinito:** Nega le scritture su file comunemente usati per chiavi private e certificati: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Parametri:**
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | Pattern di nome file aggiuntivi (stile glob) da bloccare. |
+| `additionalPatterns` | `string[]` | `[]` | Modelli di nome file aggiuntivi (stile glob) da bloccare. |
**Esempio:**
@@ -265,7 +265,7 @@ Mantieni gli agenti che lavorano all'interno dei confini del progetto e lontani
## Git
-Previeni push accidentali, force-push e errori di branch difficili da annullare.
+Previeni accidentali push, force-push e errori di branch difficili da annullare.
### `block-push-master`
@@ -276,7 +276,7 @@ Previeni push accidentali, force-push e errori di branch difficili da annullare.
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Nomi dei branch che non possono essere pushati direttamente. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Nomi di branch che non possono essere pushati direttamente. |
**Esempio:**
@@ -291,7 +291,7 @@ Previeni push accidentali, force-push e errori di branch difficili da annullare.
```
-Per consentire il push in tutti i branch (disabilitando effettivamente questa politica senza rimuoverla da `enabledPolicies`), imposta `protectedBranches: []`.
+Per consentire il push a tutti i branch (disabilitando effettivamente questa politica senza rimuoverla da `enabledPolicies`), imposta `protectedBranches: []`.
---
@@ -299,13 +299,13 @@ Per consentire il push in tutti i branch (disabilitando effettivamente questa po
### `block-work-on-main`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Nega il checkout diretto dei branch `main` o `master`.
+**Predefinito:** Nega il checkout dei branch `main` o `master` direttamente.
**Parametri:**
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Nomi dei branch che non possono essere controllati direttamente. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Nomi di branch che non possono essere controllati direttamente. |
---
@@ -314,13 +314,13 @@ Per consentire il push in tutti i branch (disabilitando effettivamente questa po
**Evento:** PreToolUse (Bash)
**Predefinito:** Nega `git push --force` e `git push -f`.
-Nessun parametro specifico della politica. Usa il [`hint`](/it/configuration#hint-cross-cutting) cross-cutting per suggerire alternative:
+Nessun parametro specifico della politica. Usa il [`hint`](/it/configuration#hint-cross-cutting) trasversale per suggerire alternative:
```json
{
"policyParams": {
"block-force-push": {
- "hint": "Crea un nuovo branch dal tuo HEAD attuale (ad es. `git checkout -b `) e esegui il push di questo."
+ "hint": "Crea un nuovo branch dal tuo HEAD attuale (ad es. `git checkout -b `) e fai il push di quello invece."
}
}
}
@@ -349,7 +349,7 @@ Nessun parametro.
### `warn-all-files-staged`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Istruisce Claude a rivedere ciò che sta preparando quando esegue `git add -A` o `git add .`. Non blocca il comando.
+**Predefinito:** Istruisce Claude a rivedere cosa sta preparando quando esegue `git add -A` o `git add .`. Non blocca il comando.
Nessun parametro.
@@ -357,12 +357,12 @@ Nessun parametro.
## Database
-Cattura le operazioni SQL distruttive prima che vengano eseguite nel tuo database.
+Rileva le operazioni SQL distruttive prima che vengano eseguite sul tuo database.
### `warn-destructive-sql`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Istruisce Claude a confermare prima di eseguire SQL contenente `DROP TABLE`, `DROP DATABASE`, o `DELETE` senza una clausola `WHERE`.
+**Predefinito:** Istruisce Claude a confermare prima di eseguire SQL contenente `DROP TABLE`, `DROP DATABASE` o `DELETE` senza una clausola `WHERE`.
Nessun parametro.
@@ -371,7 +371,7 @@ Nessun parametro.
### `warn-schema-alteration`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Istruisce Claude a confermare prima di eseguire istruzioni `ALTER TABLE`.
+**Predefinito:** Istruisce Claude a confermare prima di eseguire le istruzioni `ALTER TABLE`.
Nessun parametro.
@@ -405,7 +405,7 @@ Fornisci agli agenti contesto aggiuntivo prima di operazioni potenzialmente risc
```
-Il gestore dell'hook applica un limite stdin di 1 MB sui payload. Per testare questa politica con contenuto piccolo, imposta `thresholdKb` su un valore ben al di sotto di 1024.
+L'handler dell'hook applica un limite stdin di 1 MB sui payload. Per testare questa politica con contenuti piccoli, imposta `thresholdKb` a un valore ben al di sotto di 1024.
---
@@ -422,7 +422,7 @@ Nessun parametro.
### `warn-background-process`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Istruisce Claude di stare attento quando avvia processi in background tramite `nohup`, `&`, `disown`, o `screen`.
+**Predefinito:** Istruisce Claude a stare attento quando avvia processi in background tramite `nohup`, `&`, `disown` o `screen`.
Nessun parametro.
@@ -431,7 +431,7 @@ Nessun parametro.
### `warn-global-package-install`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Istruisce Claude a confermare prima di eseguire `npm install -g`, `yarn global add`, o `pip install` senza un ambiente virtuale.
+**Predefinito:** Istruisce Claude a confermare prima di eseguire `npm install -g`, `yarn global add` o `pip install` senza un ambiente virtuale.
Nessun parametro.
@@ -439,21 +439,21 @@ Nessun parametro.
## Gestori di pacchetti
-Applica quale gestore di pacchetti l'agente è autorizzato a utilizzare.
+Applica quali gestori di pacchetti l'agente può usare.
### `prefer-package-manager`
**Evento:** PreToolUse (Bash)
-**Predefinito:** Disabilitato. Quando abilitato, blocca qualsiasi comando del gestore di pacchetti non nell'elenco `allowed` e dice a Claude di riscrivere il comando utilizzando un gestore consentito.
+**Predefinito:** Disabilitato. Quando abilitato, blocca qualsiasi comando del gestore di pacchetti non nell'elenco `allowed` e comunica a Claude di riscrivere il comando usando un gestore consentito.
Rileva: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Parametro | Tipo | Predefinito | Descrizione |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Nomi dei gestori di pacchetti consentiti. Qualsiasi gestore rilevato non in questo elenco viene bloccato. Quando vuoto, la politica è inoperante. |
+| `allowed` | string[] | `[]` | Nomi dei gestori di pacchetti consentiti. Qualsiasi gestore rilevato non in questo elenco viene bloccato. Quando vuoto, la politica non esegue alcuna operazione. |
| `blocked` | string[] | `[]` | Nomi di gestori aggiuntivi da bloccare oltre all'elenco integrato (ad es. `['pdm', 'pipx']`). |
-L'elenco di blocchi integrato copre: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Usa `blocked` per aggiungere gestori non in questo elenco.
+L'elenco di blocco integrato include: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Usa `blocked` per aggiungere gestori non in questo elenco.
**Configurazione di esempio:**
@@ -469,33 +469,33 @@ L'elenco di blocchi integrato copre: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun,
}
```
-Con questa configurazione, `pip install flask` e `pdm install flask` sono entrambi negati con un messaggio che dice a Claude di utilizzare `uv` o `bun`. Comandi come `uv pip install flask` sono consentiti perché `uv` è nell'elenco consentito e viene verificato per primo.
+Con questa configurazione, sia `pip install flask` che `pdm install flask` vengono negati con un messaggio che comunica a Claude di usare `uv` o `bun` invece. Comandi come `uv pip install flask` sono consentiti perché `uv` è nella whitelist e viene verificato per primo.
---
## Comportamento dell'IA
-Rileva quando gli agenti rimangono bloccati o si comportano inaspettatamente.
+Rileva quando gli agenti si bloccano o si comportano in modo inaspettato.
### `warn-repeated-tool-calls`
**Evento:** PreToolUse (tutti gli strumenti)
-**Predefinito:** Istruisce Claude a riconsiderare quando lo stesso strumento viene chiamato 3 o più volte con parametri identici — un segno comune che l'agente è bloccato in un loop.
+**Predefinito:** Istruisce Claude a riconsiderare quando lo stesso strumento viene chiamato 3 o più volte con parametri identici - un segno comune che l'agente è bloccato in un ciclo.
Nessun parametro.
---
-## Flusso di lavoro
+## Workflow
-Applica un flusso di lavoro di fine sessione disciplinato. Queste politiche si attivano sull'evento **Stop** e negano a Claude di fermarsi fino a quando ogni condizione non è soddisfatta. Seguono una catena di dipendenza naturale: commit → push → PR → CI. Se una politica nega, le politiche successive nella catena vengono saltate (deny short-circuits).
+Applica un disciplinato workflow di fine sessione. Queste politiche si attivano sull'evento **Stop** e negano a Claude di fermarsi fino a quando ogni condizione non è soddisfatta. Seguono una catena di dipendenze naturale: commit → push → PR → CI. Se una politica nega, le politiche successive nella catena vengono saltate (la negazione interrompe la catena).
-Tutte le politiche di flusso di lavoro sono **fail-open**: se lo strumento richiesto non è disponibile (ad es. `gh` non installato, nessun remote git), la politica consente con un messaggio informativo che spiega perché il controllo è stato saltato.
+Tutte le politiche di workflow sono **fail-open**: se lo strumento richiesto non è disponibile (ad es. `gh` non installato, nessun remote git), la politica consente con un messaggio informativo che spiega perché il controllo è stato saltato.
### `require-commit-before-stop`
**Evento:** Stop
-**Predefinito:** Nega l'arresto quando ci sono modifiche non commitatte (file modificati, preparati o non tracciati). Restituisce un messaggio informativo quando la directory di lavoro è pulita.
+**Predefinito:** Nega l'arresto quando ci sono modifiche non committate (file modificati, preparati o non tracciati). Restituisce un messaggio informativo quando la directory di lavoro è pulita.
Nessun parametro.
@@ -504,13 +504,13 @@ Nessun parametro.
### `require-push-before-stop`
**Evento:** Stop
-**Predefinito:** Nega l'arresto quando ci sono commit non pushati o quando il branch attuale non ha un remote branch di tracciamento. Suggerisce `git push -u` per creare un branch di tracciamento se necessario. Fallisce aperto se nessun remote è configurato.
+**Predefinito:** Nega l'arresto quando ci sono commit non pushati o quando il branch attuale non ha un remote tracking branch. Suggerisce `git push -u` per creare un tracking branch se necessario. Fallisce open se nessun remote è configurato.
**Parametri:**
| Parametro | Tipo | Predefinito | Descrizione |
|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | Nome del remote per eseguire il push. |
+| `remote` | `string` | `"origin"` | Nome del remote su cui fare il push. |
**Esempio:**
@@ -529,14 +529,14 @@ Nessun parametro.
### `require-pr-before-stop`
**Evento:** Stop
-**Predefinito:** Nega l'arresto quando nessuna pull request esiste per il branch attuale, o quando la PR esistente è chiusa/unita. Istruisce Claude a creare una PR con `gh pr create`.
+**Predefinito:** Nega l'arresto quando nessuna pull request esiste per il branch attuale, o quando il PR esistente è chiuso/mergiato. Istruisce Claude a creare un PR con `gh pr create`.
Nessun parametro.
Questa politica richiede che [GitHub CLI](https://cli.github.com/) (`gh`) sia installato e autenticato.
-Esegui `gh auth login` con un personal access token che ha scope `repo` per l'accesso in lettura alle
-pull request. Se `gh` non è installato o non autenticato, la politica fallisce aperta e segnala il motivo a Claude.
+Esegui `gh auth login` con un personal access token che ha lo scope `repo` per l'accesso in lettura alle
+pull request. Se `gh` non è installato o non autenticato, la politica fallisce open e segnala il motivo a Claude.
---
@@ -544,23 +544,23 @@ pull request. Se `gh` non è installato o non autenticato, la politica fallisce
### `require-ci-green-before-stop`
**Evento:** Stop
-**Predefinito:** Nega l'arresto quando i controlli CI hanno esito negativo o sono ancora in esecuzione nel branch attuale. Verifica sia i GitHub Actions workflow run che i controlli di bot di terze parti (ad es. CodeRabbit, SonarCloud, Codecov). Tratta le conclusioni `skipped` come successo. Restituisce un messaggio informativo quando tutti i controlli passano.
+**Predefinito:** Nega l'arresto quando i controlli CI sono in fallimento o ancora in esecuzione nel branch attuale. Verifica sia i workflow GitHub Actions che i controlli bot di terze parti (ad es. CodeRabbit, SonarCloud, Codecov). Tratta le conclusioni `skipped` e `cancelled` come successo. Restituisce un messaggio informativo quando tutti i controlli passano.
Nessun parametro.
Questa politica richiede che [GitHub CLI](https://cli.github.com/) (`gh`) sia installato e autenticato.
-Esegui `gh auth login` con un personal access token che ha scope `repo` per l'accesso in lettura ai
-GitHub Actions workflow run e all'API dei Checks. Se `gh` non è installato o non autenticato, la politica fallisce aperta e segnala il motivo a Claude.
+Esegui `gh auth login` con un personal access token che ha lo scope `repo` per l'accesso in lettura ai
+workflow Actions e all'API Checks. Se `gh` non è installato o non autenticato, la politica fallisce open e segnala il motivo a Claude.
---
---
-## Disabilitazione delle singole politiche
+## Disabilitazione di singole politiche
-Rimuovi una politica specifica da `enabledPolicies` nella tua configurazione, o disattivala nella scheda Politiche del dashboard.
+Rimuovi una politica specifica da `enabledPolicies` nella tua configurazione, o disattivala nella scheda Policies della dashboard.
```json
{
diff --git a/docs/ja/built-in-policies.mdx b/docs/ja/built-in-policies.mdx
index fa18205a..07562ce9 100644
--- a/docs/ja/built-in-policies.mdx
+++ b/docs/ja/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
title: 組み込みポリシー
-description: "エージェントの一般的な障害モードを検出する30の組み込みポリシー"
+description: "エージェントの一般的な障害モードを検出する30種類の組み込みポリシー"
icon: shield
---
-failproofai には、エージェントの一般的な障害モードを検出する30の組み込みポリシーが含まれています。各ポリシーは特定のフックイベントタイプとツール名に対して動作します。9つのポリシーはコードを書かずに動作を調整できるパラメーターを受け付けます。4つのワークフローポリシーは、Claude が停止する前にコミット → プッシュ → PR → CI のパイプラインを強制します。
+failproofaiには、エージェントの一般的な障害モードを検出する30種類の組み込みポリシーが付属しています。各ポリシーは特定のフックイベントタイプとツール名に対して動作します。9つのポリシーはコードを書くことなく動作を調整できるパラメーターを受け付けます。4つのワークフローポリシーは、Claudeが停止する前にコミット → プッシュ → PR → CIのパイプラインを強制します。
---
@@ -24,37 +24,37 @@ failproofai には、エージェントの一般的な障害モードを検出
| [パッケージマネージャー](#package-managers) | prefer-package-manager | PreToolUse |
| [ワークフロー](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — エージェントの処理を停止する。
-- **`warn-`** — エージェントが自己修正できるよう追加のコンテキストを提供する。
-- **`sanitize-`** — エージェントに返す前にツールの出力から機密データを除去する。
-- **`require-`** — 条件が満たされるまで Stop イベントをブロックする。
+- **`block-`** — エージェントの処理を停止します。
+- **`warn-`** — エージェントが自己修正できるよう追加のコンテキストを提供します。
+- **`sanitize-`** — エージェントが参照する前にツールの出力から機密データを除去します。
+- **`require-`** — 条件が満たされるまでStopイベントをブロックします。
---
-すべてのポリシーは `policyParams` にオプションの `hint` フィールドをサポートしています。hint は Claude が受け取る deny または instruct メッセージに追加され、ポリシーコードを変更せずに実行可能なガイダンスを提供します。組み込み、カスタム、コンベンションポリシーで使用できます。詳細は [設定 → hint](/ja/configuration#hint-cross-cutting) を参照してください。
+すべてのポリシーは`policyParams`でオプションの`hint`フィールドをサポートしています。ヒントはClaudeが参照するdenyまたはinstructメッセージに追加され、ポリシーコードを変更せずに実用的なガイダンスを提供します。組み込み、カスタム、規約ポリシーで動作します。詳細は[設定 → hint](/ja/configuration#hint-cross-cutting)を参照してください。
---
-## 危険なコマンド
+## 危険なコマンド {#dangerous-commands}
-取り消しが困難な操作や、ホストシステムに損害を与える可能性のある操作をエージェントが実行するのを防ぎます。
+元に戻しにくい操作やホストシステムに損害を与える可能性のある操作をエージェントが実行しないようにします。
### `block-sudo`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `sudo` コマンドを含むすべてのコマンドを拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `sudo`コマンドをすべて拒否します。
-`sudo` キーワードを含む呼び出しをブロックします。パターンマッチングは生の文字列ではなく、パース済みのコマンドトークンに対して行われるため、シェル演算子インジェクションによるバイパスを防ぎます。
+`sudo`キーワードを含む呼び出しをブロックします。パターンマッチングは生の文字列ではなく、解析されたコマンドトークンに対して行われるため、シェル演算子インジェクションによるバイパスを防ぎます。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | 許可されるコマンドの正確なプレフィックス。各エントリはパース済みの argv トークンと照合されます。 |
+| `allowPatterns` | `string[]` | `[]` | 許可する正確なコマンドプレフィックス。各エントリは解析されたargvトークンと照合されます。 |
-**例:**
+**例:**
```json
{
@@ -66,26 +66,26 @@ failproofai には、エージェントの一般的な障害モードを検出
}
```
-この設定では、`sudo systemctl status nginx` は許可されますが、`sudo rm /etc/hosts` は拒否されます。
+この設定では`sudo systemctl status nginx`は許可されますが、`sudo rm /etc/hosts`は拒否されます。
-パターンは生のコマンド文字列ではなく、パース済みのトークンと照合されます。これにより、シェル演算子を追加することによるバイパスを防ぎます(例:`sudo systemctl status x; rm -rf /` は `sudo systemctl status *` にマッチしません)。
+パターンは生のコマンド文字列ではなく、解析されたトークンと照合されます。これにより、シェル演算子を追加することによるバイパスを防ぎます(例:`sudo systemctl status x; rm -rf /`は`sudo systemctl status *`にマッチしません)。
---
### `block-rm-rf`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `rm -rf`、`rm -fr`、およびそれに類似した再帰的削除コマンドを拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `rm -rf`、`rm -fr`、およびそれに類する再帰的削除のパターンをすべて拒否します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | 再帰的な削除が安全なパス(例:`/tmp`)。 |
+| `allowPaths` | `string[]` | `[]` | 再帰的に削除しても安全なパス(例:`/tmp`)。 |
-**例:**
+**例:**
```json
{
@@ -101,8 +101,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `block-curl-pipe-sh`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `curl | bash`、`curl | sh`、`wget | bash`、およびそれに類似したパターンを拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `curl | bash`、`curl | sh`、`wget | bash`、およびそれに類するパターンをすべて拒否します。
パラメーターなし。
@@ -110,21 +110,21 @@ failproofai には、エージェントの一般的な障害モードを検出
### `block-failproofai-commands`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** failproofai 自体をアンインストールまたは無効化するコマンド(例:`npm uninstall failproofai`、`failproofai policies --uninstall`)を拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** failproofai自体をアンインストールまたは無効化するコマンド(例:`npm uninstall failproofai`、`failproofai policies --uninstall`)を拒否します。
パラメーターなし。
---
-## シークレット(サニタイザー)
+## シークレット(サニタイザー) {#secrets-sanitizers}
-エージェントが認証情報をコンテキストや出力に漏洩するのを防ぎます。サニタイザーポリシーは **PostToolUse** イベントで動作します。Claude が Bash コマンドを実行したり、ファイルを読み込んだり、任意のツールを呼び出したりすると、これらのポリシーは Claude に返される前に出力を検査します。シークレットパターンが検出された場合、ポリシーは出力が返されるのを防ぐ deny 判定を返します。
+エージェントがコンテキストや出力に認証情報を漏洩しないようにします。サニタイザーポリシーは**PostToolUse**イベントで動作します。ClaudeがBashコマンドを実行したり、ファイルを読み取ったり、ツールを呼び出したりすると、これらのポリシーはClaudeに返される前に出力を検査します。シークレットのパターンが検出された場合、ポリシーはdeny決定を返し、出力が返されないようにします。
### `sanitize-jwt`
-**イベント:** PostToolUse(全ツール)
-**デフォルト:** JWT トークン(`.` で区切られた3つの base64url セグメント)を削除します。
+**イベント:** PostToolUse(全ツール)
+**デフォルト:** JWTトークン(`.`で区切られた3つのbase64urlセグメント)を削除します。
パラメーターなし。
@@ -132,16 +132,16 @@ failproofai には、エージェントの一般的な障害モードを検出
### `sanitize-api-keys`
-**イベント:** PostToolUse(全ツール)
-**デフォルト:** 一般的な API キー形式を削除します:Anthropic(`sk-ant-`)、OpenAI(`sk-`)、GitHub PAT(`ghp_`)、AWS アクセスキー(`AKIA`)、Stripe キー(`sk_live_`、`sk_test_`)、Google API キー(`AIza`)。
+**イベント:** PostToolUse(全ツール)
+**デフォルト:** 一般的なAPIキー形式を削除します:Anthropic(`sk-ant-`)、OpenAI(`sk-`)、GitHub PAT(`ghp_`)、AWSアクセスキー(`AKIA`)、Stripeキー(`sk_live_`、`sk_test_`)、Google APIキー(`AIza`)。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | シークレットとして扱う追加の正規表現パターン。 |
-**例:**
+**例:**
```json
{
@@ -160,8 +160,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `sanitize-connection-strings`
-**イベント:** PostToolUse(全ツール)
-**デフォルト:** 認証情報が埋め込まれたデータベース接続文字列(例:`postgresql://user:password@host/db`)を削除します。
+**イベント:** PostToolUse(全ツール)
+**デフォルト:** 認証情報が埋め込まれたデータベース接続文字列(例:`postgresql://user:password@host/db`)を削除します。
パラメーターなし。
@@ -169,8 +169,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `sanitize-private-key-content`
-**イベント:** PostToolUse(全ツール)
-**デフォルト:** PEM ブロック(`-----BEGIN PRIVATE KEY-----`、`-----BEGIN RSA PRIVATE KEY-----` など)を削除します。
+**イベント:** PostToolUse(全ツール)
+**デフォルト:** PEMブロック(`-----BEGIN PRIVATE KEY-----`、`-----BEGIN RSA PRIVATE KEY-----`など)を削除します。
パラメーターなし。
@@ -178,23 +178,23 @@ failproofai には、エージェントの一般的な障害モードを検出
### `sanitize-bearer-tokens`
-**イベント:** PostToolUse(全ツール)
-**デフォルト:** トークンが20文字以上の `Authorization: Bearer ` ヘッダーを削除します。
+**イベント:** PostToolUse(全ツール)
+**デフォルト:** トークンが20文字以上の`Authorization: Bearer `ヘッダーを削除します。
パラメーターなし。
---
-## 環境
+## 環境 {#environment}
-エージェントによる機密環境設定の読み取りや漏洩を保護します。
+エージェントによる機密環境設定の読み取りや露出を防ぎます。
### `block-env-files`
-**イベント:** PreToolUse (Bash, Read)
-**デフォルト:** `cat .env` や `.env` をファイルパスとした `Read` ツール呼び出しなど、`.env` ファイルの読み取りを拒否します。
+**イベント:** PreToolUse (Bash, Read)
+**デフォルト:** `cat .env`、ファイルパスに`.env`を指定した`Read`ツール呼び出しなど、`.env`ファイルの読み取りを拒否します。
-`.envrc` やその他の環境関連ファイルはブロックしません。正確に `.env` という名前のファイルのみが対象です。
+`.envrc`やその他の環境関連ファイルはブロックしません。`.env`という名前のファイルのみが対象です。
パラメーターなし。
@@ -202,29 +202,29 @@ failproofai には、エージェントの一般的な障害モードを検出
### `protect-env-vars`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** 環境変数を出力するコマンド(`printenv`、`env`、`echo $VAR`)を拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** 環境変数を出力するコマンド(`printenv`、`env`、`echo $VAR`)を拒否します。
パラメーターなし。
---
-## ファイルアクセス
+## ファイルアクセス {#file-access}
エージェントをプロジェクトの境界内に留め、機密ファイルへのアクセスを防ぎます。
### `block-read-outside-cwd`
-**イベント:** PreToolUse (Read, Bash)
-**デフォルト:** カレントワーキングディレクトリ(プロジェクトルート)の外部にあるファイルの読み取りを拒否します。
+**イベント:** PreToolUse (Read, Bash)
+**デフォルト:** カレントワーキングディレクトリ(プロジェクトルート)の外にあるファイルの読み取りを拒否します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | cwd の外部であっても許可される絶対パスのプレフィックス。 |
+| `allowPaths` | `string[]` | `[]` | cwdの外でも許可する絶対パスのプレフィックス。 |
-**例:**
+**例:**
```json
{
@@ -240,16 +240,16 @@ failproofai には、エージェントの一般的な障害モードを検出
### `block-secrets-write`
-**イベント:** PreToolUse (Write, Edit)
-**デフォルト:** 秘密鍵や証明書によく使用されるファイルへの書き込みを拒否します:`id_rsa`、`id_ed25519`、`*.key`、`*.pem`、`*.p12`、`*.pfx`。
+**イベント:** PreToolUse (Write, Edit)
+**デフォルト:** 秘密鍵や証明書によく使われるファイル(`id_rsa`、`id_ed25519`、`*.key`、`*.pem`、`*.p12`、`*.pfx`)への書き込みを拒否します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | ブロックする追加のファイル名パターン(glob形式)。 |
+| `additionalPatterns` | `string[]` | `[]` | ブロックする追加のファイル名パターン(グロブ形式)。 |
-**例:**
+**例:**
```json
{
@@ -263,22 +263,22 @@ failproofai には、エージェントの一般的な障害モードを検出
---
-## Git
+## Git {#git}
-取り消しが困難な誤ったプッシュ、フォースプッシュ、ブランチ操作を防ぎます。
+元に戻しにくい誤ったプッシュ、強制プッシュ、ブランチの操作ミスを防ぎます。
### `block-push-master`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `git push origin main` および `git push origin master` を拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `git push origin main`および`git push origin master`を拒否します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | 直接プッシュできないブランチ名。 |
-**例:**
+**例:**
```json
{
@@ -291,17 +291,17 @@ failproofai には、エージェントの一般的な障害モードを検出
```
-すべてのブランチへのプッシュを許可する(`enabledPolicies` からポリシーを削除せずに実質的に無効化する)には、`protectedBranches: []` を設定してください。
+すべてのブランチへのプッシュを許可する(`enabledPolicies`からポリシーを削除せずに実質的に無効化する)には、`protectedBranches: []`を設定してください。
---
### `block-work-on-main`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `main` または `master` ブランチへの直接チェックアウトを拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `main`または`master`ブランチへの直接チェックアウトを拒否します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
@@ -311,10 +311,10 @@ failproofai には、エージェントの一般的な障害モードを検出
### `block-force-push`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `git push --force` および `git push -f` を拒否します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `git push --force`および`git push -f`を拒否します。
-ポリシー固有のパラメーターはありません。クロスカッティングの [`hint`](/ja/configuration#hint-cross-cutting) を使用して代替手段を提案できます:
+ポリシー固有のパラメーターはありません。クロスカッティングの[`hint`](/ja/configuration#hint-cross-cutting)を使用して代替手段を提案できます:
```json
{
@@ -330,8 +330,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-git-amend`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `git commit --amend` の実行時に注意して進むよう Claude に指示します。コマンドはブロックしません。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `git commit --amend`を実行する際に慎重に進むようClaudeに指示します。コマンドはブロックしません。
パラメーターなし。
@@ -339,8 +339,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-git-stash-drop`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `git stash drop` の実行前に確認するよう Claude に指示します。コマンドはブロックしません。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `git stash drop`を実行する前に確認するようClaudeに指示します。コマンドはブロックしません。
パラメーターなし。
@@ -348,21 +348,21 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-all-files-staged`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `git add -A` または `git add .` を実行する際に、ステージングする内容を確認するよう Claude に指示します。コマンドはブロックしません。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `git add -A`または`git add .`を実行する際にステージングする内容を確認するようClaudeに指示します。コマンドはブロックしません。
パラメーターなし。
---
-## データベース
+## データベース {#database}
-破壊的な SQL 操作がデータベースに対して実行される前に検出します。
+データベースに対して実行される前に、破壊的なSQL操作を検出します。
### `warn-destructive-sql`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `DROP TABLE`、`DROP DATABASE`、または `WHERE` 句のない `DELETE` を含む SQL を実行する前に確認するよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `DROP TABLE`、`DROP DATABASE`、または`WHERE`句のない`DELETE`を含むSQLを実行する前に確認するようClaudeに指示します。
パラメーターなし。
@@ -370,29 +370,29 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-schema-alteration`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `ALTER TABLE` ステートメントを実行する前に確認するよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `ALTER TABLE`文を実行する前に確認するようClaudeに指示します。
パラメーターなし。
---
-## 警告
+## 警告 {#warnings}
-潜在的にリスクはあるが破壊的ではない操作の前に、エージェントに追加のコンテキストを提供します。
+潜在的にリスクがあるものの非破壊的な操作の前に、エージェントに追加のコンテキストを提供します。
### `warn-large-file-write`
-**イベント:** PreToolUse (Write)
-**デフォルト:** 1024 KB を超えるファイルを書き込む前に確認するよう Claude に指示します。
+**イベント:** PreToolUse (Write)
+**デフォルト:** 1024 KBを超えるファイルを書き込む前に確認するようClaudeに指示します。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
| `thresholdKb` | `number` | `1024` | 警告が発生するファイルサイズのしきい値(キロバイト)。 |
-**例:**
+**例:**
```json
{
@@ -405,15 +405,15 @@ failproofai には、エージェントの一般的な障害モードを検出
```
-フックハンドラーはペイロードの stdin に 1 MB の制限を適用します。小さなコンテンツでこのポリシーをテストするには、`thresholdKb` を 1024 よりかなり小さい値に設定してください。
+フックハンドラーはペイロードに対してstdinの1 MB制限を適用します。小さなコンテンツでこのポリシーをテストするには、`thresholdKb`を1024より十分に小さい値に設定してください。
---
### `warn-package-publish`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `npm publish` を実行する前に確認するよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `npm publish`を実行する前に確認するようClaudeに指示します。
パラメーターなし。
@@ -421,8 +421,8 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-background-process`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `nohup`、`&`、`disown`、または `screen` を使用してバックグラウンドプロセスを起動する際に注意するよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `nohup`、`&`、`disown`、または`screen`を使用してバックグラウンドプロセスを起動する際に注意するようClaudeに指示します。
パラメーターなし。
@@ -430,32 +430,32 @@ failproofai には、エージェントの一般的な障害モードを検出
### `warn-global-package-install`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** `npm install -g`、`yarn global add`、または仮想環境なしの `pip install` を実行する前に確認するよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** `npm install -g`、`yarn global add`、または仮想環境なしの`pip install`を実行する前に確認するようClaudeに指示します。
パラメーターなし。
---
-## パッケージマネージャー
+## パッケージマネージャー {#package-managers}
-エージェントが使用できるパッケージマネージャーを強制します。
+エージェントが使用できるパッケージマネージャーを制限します。
### `prefer-package-manager`
-**イベント:** PreToolUse (Bash)
-**デフォルト:** 無効。有効にすると、`allowed` リストにないパッケージマネージャーコマンドをブロックし、許可されたマネージャーを使用してコマンドを書き直すよう Claude に指示します。
+**イベント:** PreToolUse (Bash)
+**デフォルト:** 無効。有効にすると、`allowed`リストにないパッケージマネージャーコマンドをブロックし、許可されたマネージャーを使用してコマンドを書き直すようClaudeに指示します。
検出対象:pip、pip3、python -m pip、npm、npx、yarn、pnpm、pnpx、bun、bunx、uv、poetry、pipenv、conda、cargo。
| パラメーター | 型 | デフォルト | 説明 |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | 許可されるパッケージマネージャー名。このリストにない検出済みマネージャーはブロックされます。空の場合、ポリシーは何も行いません。 |
-| `blocked` | string[] | `[]` | 組み込みリストに加えてブロックする追加のマネージャー名(例:`['pdm', 'pipx']`)。 |
+| `allowed` | string[] | `[]` | 許可するパッケージマネージャー名。このリストにない検出されたマネージャーはブロックされます。空の場合、ポリシーは何もしません。 |
+| `blocked` | string[] | `[]` | 組み込みリストに加えてブロックするマネージャー名(例:`['pdm', 'pipx']`)。 |
-組み込みのブロックリストは以下をカバーします:pip、pip3、npm、npx、yarn、pnpm、pnpx、bun、bunx、uv、poetry、pipenv、conda、cargo。このリストにないマネージャーを追加するには `blocked` を使用してください。
+組み込みのブロックリストには以下が含まれます:pip、pip3、npm、npx、yarn、pnpm、pnpx、bun、bunx、uv、poetry、pipenv、conda、cargo。`blocked`を使用して、このリストにないマネージャーを追加できます。
-**設定例:**
+**設定例:**
```json
{
@@ -469,33 +469,33 @@ failproofai には、エージェントの一般的な障害モードを検出
}
```
-この設定では、`pip install flask` と `pdm install flask` はどちらも拒否され、`uv` または `bun` を使用するよう Claude に通知されます。`uv pip install flask` のようなコマンドは、`uv` が allowlist に含まれており最初にチェックされるため許可されます。
+この設定では、`pip install flask`と`pdm install flask`はどちらも拒否され、`uv`または`bun`を使用するよう指示されます。`uv pip install flask`のようなコマンドは`uv`がallowlistにあり最初にチェックされるため許可されます。
---
-## AI の動作
+## AIの動作 {#ai-behavior}
-エージェントが行き詰まったり予期しない動作をしたりするときに検出します。
+エージェントが行き詰まったり予期しない動作をしたりするケースを検出します。
### `warn-repeated-tool-calls`
-**イベント:** PreToolUse(全ツール)
-**デフォルト:** 同じツールが同じパラメーターで3回以上呼び出された場合(エージェントがループにはまっている一般的な兆候)に再考するよう Claude に指示します。
+**イベント:** PreToolUse(全ツール)
+**デフォルト:** 同じツールが同じパラメーターで3回以上呼び出された場合(エージェントがループに陥っているよくある兆候)に再考するようClaudeに指示します。
パラメーターなし。
---
-## ワークフロー
+## ワークフロー {#workflow}
-セッション終了時の規律あるワークフローを強制します。これらのポリシーは **Stop** イベントで動作し、各条件が満たされるまで Claude の停止を拒否します。コミット → プッシュ → PR → CI という自然な依存チェーンに従います。ポリシーが拒否した場合、チェーン内の後続のポリシーはスキップされます(deny はショートサーキットします)。
+セッション終了時の規律あるワークフローを強制します。これらのポリシーは**Stop**イベントで動作し、各条件が満たされるまでClaudeの停止を拒否します。コミット → プッシュ → PR → CIという自然な依存チェーンに従います。ポリシーが拒否した場合、チェーン内の後続のポリシーはスキップされます(denyによるショートサーキット)。
-すべてのワークフローポリシーは **フェイルオープン** です。必要なツールが利用できない場合(例:`gh` がインストールされていない、git リモートがないなど)、ポリシーはチェックがスキップされた理由を説明する情報メッセージとともに許可します。
+すべてのワークフローポリシーは**フェイルオープン**です:必要なツールが利用できない場合(例:`gh`がインストールされていない、gitリモートがない)、ポリシーはチェックがスキップされた理由を説明する情報メッセージとともに許可します。
### `require-commit-before-stop`
-**イベント:** Stop
-**デフォルト:** コミットされていない変更(変更済み、ステージング済み、または未追跡のファイル)がある場合に停止を拒否します。ワーキングディレクトリがクリーンな場合は情報メッセージを返します。
+**イベント:** Stop
+**デフォルト:** コミットされていない変更(変更済み、ステージ済み、または未追跡のファイル)がある場合に停止を拒否します。ワーキングディレクトリがクリーンな場合は情報メッセージを返します。
パラメーターなし。
@@ -503,16 +503,16 @@ failproofai には、エージェントの一般的な障害モードを検出
### `require-push-before-stop`
-**イベント:** Stop
-**デフォルト:** プッシュされていないコミットがある場合、または現在のブランチにリモートトラッキングブランチがない場合に停止を拒否します。必要に応じてトラッキングブランチを作成するために `git push -u` を提案します。リモートが設定されていない場合はフェイルオープンします。
+**イベント:** Stop
+**デフォルト:** プッシュされていないコミットがある場合、または現在のブランチにリモートトラッキングブランチがない場合に停止を拒否します。必要に応じてトラッキングブランチを作成するために`git push -u`を提案します。リモートが設定されていない場合はフェイルオープンします。
-**パラメーター:**
+**パラメーター:**
| パラメーター | 型 | デフォルト | 説明 |
|-------|------|---------|-------------|
| `remote` | `string` | `"origin"` | プッシュ先のリモート名。 |
-**例:**
+**例:**
```json
{
@@ -528,28 +528,28 @@ failproofai には、エージェントの一般的な障害モードを検出
### `require-pr-before-stop`
-**イベント:** Stop
-**デフォルト:** 現在のブランチにプルリクエストが存在しない場合、または既存の PR がクローズ/マージされている場合に停止を拒否します。`gh pr create` で PR を作成するよう Claude に指示します。
+**イベント:** Stop
+**デフォルト:** 現在のブランチにプルリクエストが存在しない場合、または既存のPRがクローズ済み/マージ済みの場合に停止を拒否します。`gh pr create`でPRを作成するようClaudeに指示します。
パラメーターなし。
-このポリシーには [GitHub CLI](https://cli.github.com/)(`gh`)がインストールされ認証されている必要があります。
-プルリクエストへの読み取りアクセスのために `repo` スコープを持つ個人アクセストークンで `gh auth login` を実行してください。`gh` がインストールされていないか認証されていない場合、ポリシーはフェイルオープンし、その理由を Claude に報告します。
+このポリシーには[GitHub CLI](https://cli.github.com/)(`gh`)のインストールと認証が必要です。
+プルリクエストへの読み取りアクセスのために`repo`スコープを持つ個人アクセストークンで`gh auth login`を実行してください。`gh`がインストールされていないか認証されていない場合、ポリシーはフェイルオープンし、その理由をClaudeに報告します。
---
### `require-ci-green-before-stop`
-**イベント:** Stop
-**デフォルト:** 現在のブランチで CI チェックが失敗中またはまだ実行中の場合に停止を拒否します。GitHub Actions のワークフロー実行とサードパーティのボットチェック(例:CodeRabbit、SonarCloud、Codecov)の両方を確認します。`skipped` の結論は成功として扱います。すべてのチェックが通過した場合は情報メッセージを返します。
+**イベント:** Stop
+**デフォルト:** 現在のブランチでCIチェックが失敗または実行中の場合に停止を拒否します。GitHub Actionsのワークフロー実行とサードパーティのボットチェック(例:CodeRabbit、SonarCloud、Codecov)の両方を確認します。`skipped`および`cancelled`の結論は成功として扱います。すべてのチェックが通過した場合は情報メッセージを返します。
パラメーターなし。
-このポリシーには [GitHub CLI](https://cli.github.com/)(`gh`)がインストールされ認証されている必要があります。
-Actions ワークフロー実行と Checks API への読み取りアクセスのために `repo` スコープを持つ個人アクセストークンで `gh auth login` を実行してください。`gh` がインストールされていないか認証されていない場合、ポリシーはフェイルオープンし、その理由を Claude に報告します。
+このポリシーには[GitHub CLI](https://cli.github.com/)(`gh`)のインストールと認証が必要です。
+Actionsワークフロー実行とChecks APIへの読み取りアクセスのために`repo`スコープを持つ個人アクセストークンで`gh auth login`を実行してください。`gh`がインストールされていないか認証されていない場合、ポリシーはフェイルオープンし、その理由をClaudeに報告します。
---
@@ -558,7 +558,7 @@ Actions ワークフロー実行と Checks API への読み取りアクセスの
## 個別ポリシーの無効化
-設定の `enabledPolicies` から特定のポリシーを削除するか、ダッシュボードの「Policies」タブでオフに切り替えてください。
+設定の`enabledPolicies`から特定のポリシーを削除するか、ダッシュボードのPoliciesタブでオフに切り替えます。
```json
{
@@ -569,4 +569,4 @@ Actions ワークフロー実行と Checks API への読み取りアクセスの
}
```
-`enabledPolicies` にリストされていないポリシーは、`policyParams` にエントリが存在していても実行されません。
\ No newline at end of file
+`enabledPolicies`に記載されていないポリシーは、`policyParams`のエントリが存在しても実行されません。
\ No newline at end of file
diff --git a/docs/ko/built-in-policies.mdx b/docs/ko/built-in-policies.mdx
index 95af47b9..466240d4 100644
--- a/docs/ko/built-in-policies.mdx
+++ b/docs/ko/built-in-policies.mdx
@@ -1,20 +1,20 @@
---
-title: 기본 제공 정책
-description: "에이전트의 일반적인 오류 패턴을 감지하는 30개의 기본 제공 정책"
+title: 내장 정책
+description: "일반적인 에이전트 오류 패턴을 감지하는 30가지 내장 정책"
icon: shield
---
-failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30개의 기본 제공 정책이 포함되어 있습니다. 각 정책은 특정 훅 이벤트 유형 및 도구 이름에서 실행됩니다. 9개의 정책은 코드 작성 없이 동작을 조정할 수 있는 매개변수를 지원합니다. 4개의 워크플로 정책은 Claude가 종료되기 전에 커밋 → 푸시 → PR → CI 파이프라인을 강제합니다.
+failproofai에는 일반적인 에이전트 오류 패턴을 감지하는 30가지 내장 정책이 포함되어 있습니다. 각 정책은 특정 훅 이벤트 유형 및 도구 이름에 따라 실행됩니다. 9가지 정책은 코드를 작성하지 않고도 동작을 조정할 수 있는 파라미터를 제공합니다. 4가지 워크플로우 정책은 Claude가 중단하기 전에 커밋 → 푸시 → PR → CI 파이프라인을 완료하도록 강제합니다.
---
## 개요
-정책은 다음 카테고리로 분류됩니다:
+정책은 다음과 같은 카테고리로 분류됩니다:
| 카테고리 | 정책 | 훅 유형 |
|----------|----------|-----------|
-| [위험 명령어](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
+| [위험한 명령어](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [시크릿 (새니타이저)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [환경](#environment) | block-env-files, protect-env-vars | PreToolUse |
| [파일 접근](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
@@ -22,37 +22,37 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
| [데이터베이스](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
| [경고](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
| [패키지 매니저](#package-managers) | prefer-package-manager | PreToolUse |
-| [워크플로](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
+| [워크플로우](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — 에이전트의 진행을 차단합니다.
-- **`warn-`** — 에이전트가 스스로 수정할 수 있도록 추가 컨텍스트를 제공합니다.
-- **`sanitize-`** — 에이전트에게 전달되기 전에 도구 출력에서 민감한 데이터를 제거합니다.
+- **`block-`** — 에이전트가 계속 진행하지 못하도록 차단합니다.
+- **`warn-`** — 에이전트가 스스로 수정할 수 있도록 추가 맥락 정보를 제공합니다.
+- **`sanitize-`** — 에이전트가 도구 출력을 받기 전에 민감한 데이터를 제거합니다.
- **`require-`** — 조건이 충족될 때까지 Stop 이벤트를 차단합니다.
---
-모든 정책은 `policyParams`에서 선택적 `hint` 필드를 지원합니다. 힌트는 Claude가 보는 deny 또는 instruct 메시지에 추가되어, 정책 코드를 수정하지 않고도 실질적인 안내를 제공합니다. 기본 제공, 커스텀, 컨벤션 정책 모두에서 작동합니다. 자세한 내용은 [구성 → hint](/ko/configuration#hint-cross-cutting)를 참조하세요.
+모든 정책은 `policyParams`에서 선택적 `hint` 필드를 지원합니다. hint는 Claude가 보는 deny 또는 instruct 메시지에 추가되어, 정책 코드를 수정하지 않고도 실행 가능한 안내를 제공합니다. 내장 정책, 커스텀 정책, 컨벤션 정책 모두에서 사용할 수 있습니다. 자세한 내용은 [설정 → hint](/ko/configuration#hint-cross-cutting)를 참고하세요.
---
-## 위험 명령어
+## 위험한 명령어
-에이전트가 되돌리기 어렵거나 호스트 시스템에 손상을 줄 수 있는 작업을 실행하지 못하도록 방지합니다.
+에이전트가 실행하기 어렵거나 호스트 시스템에 손상을 줄 수 있는 작업을 실행하지 못하도록 방지합니다.
### `block-sudo`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `sudo` 명령어가 포함된 모든 명령을 차단합니다.
+**기본값:** `sudo` 명령어가 포함된 모든 명령을 차단합니다.
-`sudo` 키워드가 포함된 호출을 차단합니다. 패턴 매칭은 원시 문자열이 아닌 파싱된 명령어 토큰을 기준으로 수행되므로, 셸 연산자 주입을 통한 우회를 방지합니다.
+`sudo` 키워드가 포함된 명령 실행을 차단합니다. 패턴 매칭은 원시 문자열이 아닌 파싱된 명령 토큰을 기준으로 수행되므로, 셸 연산자 삽입을 통한 우회를 방지합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | 허용되는 정확한 명령어 접두사입니다. 각 항목은 파싱된 argv 토큰과 매칭됩니다. |
+| `allowPatterns` | `string[]` | `[]` | 허용되는 정확한 명령 접두사. 각 항목은 파싱된 argv 토큰과 대조됩니다. |
**예시:**
@@ -66,10 +66,10 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
}
```
-이 설정에서는 `sudo systemctl status nginx`는 허용되지만, `sudo rm /etc/hosts`는 차단됩니다.
+이 설정에서 `sudo systemctl status nginx`는 허용되지만, `sudo rm /etc/hosts`는 차단됩니다.
-패턴은 원시 명령어 문자열이 아닌 파싱된 토큰과 매칭됩니다. 이를 통해 추가된 셸 연산자를 통한 우회를 방지합니다 (예: `sudo systemctl status x; rm -rf /`는 `sudo systemctl status *`와 매칭되지 않습니다).
+패턴은 원시 명령 문자열이 아닌 파싱된 토큰과 대조됩니다. 이를 통해 셸 연산자 추가를 통한 우회를 방지합니다 (예: `sudo systemctl status x; rm -rf /`는 `sudo systemctl status *`와 매칭되지 않습니다).
---
@@ -77,13 +77,13 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-rm-rf`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `rm -rf`, `rm -fr` 및 유사한 재귀 삭제 형태를 차단합니다.
+**기본값:** `rm -rf`, `rm -fr` 및 유사한 재귀적 삭제 형식을 차단합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | 재귀 삭제가 허용되는 안전한 경로 (예: `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | 재귀적 삭제가 허용되는 경로 (예: `/tmp`). |
**예시:**
@@ -102,42 +102,42 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-curl-pipe-sh`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `curl | bash`, `curl | sh`, `wget | bash` 및 유사한 패턴을 차단합니다.
+**기본값:** `curl | bash`, `curl | sh`, `wget | bash` 및 유사한 패턴을 차단합니다.
-매개변수 없음.
+파라미터 없음.
---
### `block-failproofai-commands`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** failproofai 자체를 제거하거나 비활성화하는 명령어를 차단합니다 (예: `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**기본값:** failproofai 자체를 제거하거나 비활성화하는 명령(예: `npm uninstall failproofai`, `failproofai policies --uninstall`)을 차단합니다.
-매개변수 없음.
+파라미터 없음.
---
## 시크릿 (새니타이저)
-에이전트가 자격 증명을 컨텍스트나 출력에 노출하지 못하도록 방지합니다. 새니타이저 정책은 **PostToolUse** 이벤트에서 실행됩니다. Claude가 Bash 명령어를 실행하거나, 파일을 읽거나, 도구를 호출할 때 이 정책들은 출력이 Claude에게 반환되기 전에 검사합니다. 시크릿 패턴이 감지되면, 정책은 출력이 전달되지 않도록 차단 결정을 반환합니다.
+에이전트가 자격 증명을 컨텍스트나 출력에 노출하지 못하도록 방지합니다. 새니타이저 정책은 **PostToolUse** 이벤트에서 실행됩니다. Claude가 Bash 명령을 실행하거나, 파일을 읽거나, 도구를 호출하면 이 정책들이 출력값을 Claude에 반환하기 전에 검사합니다. 시크릿 패턴이 감지되면 해당 정책은 출력이 다시 전달되지 않도록 deny 결정을 반환합니다.
### `sanitize-jwt`
**이벤트:** PostToolUse (모든 도구)
-**기본 동작:** JWT 토큰(`.`으로 구분된 3개의 base64url 세그먼트)을 마스킹합니다.
+**기본값:** JWT 토큰(`.`으로 구분된 세 개의 base64url 세그먼트)을 마스킹합니다.
-매개변수 없음.
+파라미터 없음.
---
### `sanitize-api-keys`
**이벤트:** PostToolUse (모든 도구)
-**기본 동작:** 일반적인 API 키 형식을 마스킹합니다: Anthropic(`sk-ant-`), OpenAI(`sk-`), GitHub PAT(`ghp_`), AWS 액세스 키(`AKIA`), Stripe 키(`sk_live_`, `sk_test_`), Google API 키(`AIza`).
+**기본값:** 일반적인 API 키 형식을 마스킹합니다: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PAT (`ghp_`), AWS 액세스 키 (`AKIA`), Stripe 키 (`sk_live_`, `sk_test_`), Google API 키 (`AIza`).
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | 시크릿으로 처리할 추가 정규식 패턴. |
@@ -161,27 +161,27 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `sanitize-connection-strings`
**이벤트:** PostToolUse (모든 도구)
-**기본 동작:** 자격 증명이 포함된 데이터베이스 연결 문자열을 마스킹합니다 (예: `postgresql://user:password@host/db`).
+**기본값:** 자격 증명이 포함된 데이터베이스 연결 문자열(예: `postgresql://user:password@host/db`)을 마스킹합니다.
-매개변수 없음.
+파라미터 없음.
---
### `sanitize-private-key-content`
**이벤트:** PostToolUse (모든 도구)
-**기본 동작:** PEM 블록(`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----` 등)을 마스킹합니다.
+**기본값:** PEM 블록(`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----` 등)을 마스킹합니다.
-매개변수 없음.
+파라미터 없음.
---
### `sanitize-bearer-tokens`
**이벤트:** PostToolUse (모든 도구)
-**기본 동작:** 토큰이 20자 이상인 `Authorization: Bearer ` 헤더를 마스킹합니다.
+**기본값:** 토큰이 20자 이상인 `Authorization: Bearer ` 헤더를 마스킹합니다.
-매개변수 없음.
+파라미터 없음.
---
@@ -192,37 +192,37 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-env-files`
**이벤트:** PreToolUse (Bash, Read)
-**기본 동작:** `cat .env`, `.env`를 파일 경로로 사용하는 `Read` 도구 호출 등을 통한 `.env` 파일 읽기를 차단합니다.
+**기본값:** `cat .env`, 파일 경로가 `.env`인 `Read` 도구 호출 등 `.env` 파일을 읽는 것을 차단합니다.
-`.envrc`나 다른 환경 관련 파일은 차단하지 않으며, 정확히 `.env`라는 이름의 파일만 차단합니다.
+`.envrc`나 다른 환경 관련 파일은 차단하지 않으며, 정확히 `.env`로 명명된 파일만 차단합니다.
-매개변수 없음.
+파라미터 없음.
---
### `protect-env-vars`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** 환경 변수를 출력하는 명령어를 차단합니다: `printenv`, `env`, `echo $VAR`.
+**기본값:** 환경 변수를 출력하는 명령(`printenv`, `env`, `echo $VAR`)을 차단합니다.
-매개변수 없음.
+파라미터 없음.
---
## 파일 접근
-에이전트가 프로젝트 경계 내에서만 작업하고 민감한 파일에 접근하지 못하도록 합니다.
+에이전트가 프로젝트 경계 내에서만 작업하고 민감한 파일에 접근하지 못하도록 유지합니다.
### `block-read-outside-cwd`
**이벤트:** PreToolUse (Read, Bash)
-**기본 동작:** 현재 작업 디렉터리(프로젝트 루트) 외부의 파일 읽기를 차단합니다.
+**기본값:** 현재 작업 디렉터리(프로젝트 루트) 외부의 파일을 읽는 것을 차단합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | cwd 외부라도 허용되는 절대 경로 접두사. |
+| `allowPaths` | `string[]` | `[]` | cwd 외부에 있더라도 허용되는 절대 경로 접두사. |
**예시:**
@@ -241,13 +241,13 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-secrets-write`
**이벤트:** PreToolUse (Write, Edit)
-**기본 동작:** 개인 키 및 인증서에 일반적으로 사용되는 파일에 대한 쓰기를 차단합니다: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**기본값:** 개인 키 및 인증서에 일반적으로 사용되는 파일(`id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`)에 대한 쓰기를 차단합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | 차단할 추가 파일명 패턴 (glob 형식). |
+| `additionalPatterns` | `string[]` | `[]` | 차단할 추가 파일명 패턴 (글로브 방식). |
**예시:**
@@ -270,11 +270,11 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-push-master`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `git push origin main` 및 `git push origin master`를 차단합니다.
+**기본값:** `git push origin main` 및 `git push origin master`를 차단합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | 직접 푸시할 수 없는 브랜치 이름. |
@@ -291,7 +291,7 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
```
-모든 브랜치로의 푸시를 허용하려면 (`enabledPolicies`에서 제거하지 않고 이 정책을 사실상 비활성화), `protectedBranches: []`로 설정하세요.
+`enabledPolicies`에서 제거하지 않고 이 정책을 사실상 비활성화하려면(모든 브랜치에 푸시 허용), `protectedBranches: []`로 설정하세요.
---
@@ -299,11 +299,11 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-work-on-main`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `main` 또는 `master` 브랜치로의 직접 체크아웃을 차단합니다.
+**기본값:** `main` 또는 `master` 브랜치를 직접 체크아웃하는 것을 차단합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
| `protectedBranches` | `string[]` | `["main", "master"]` | 직접 체크아웃할 수 없는 브랜치 이름. |
@@ -312,9 +312,9 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `block-force-push`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `git push --force` 및 `git push -f`를 차단합니다.
+**기본값:** `git push --force` 및 `git push -f`를 차단합니다.
-정책별 매개변수는 없습니다. 대안을 제안하려면 공통 [`hint`](/ko/configuration#hint-cross-cutting)를 사용하세요:
+정책별 파라미터는 없습니다. 공통 [`hint`](/ko/configuration#hint-cross-cutting)를 사용하여 대안을 제안할 수 있습니다:
```json
{
@@ -331,64 +331,64 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `warn-git-amend`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `git commit --amend` 실행 시 Claude에게 신중하게 진행하도록 안내합니다. 명령어를 차단하지는 않습니다.
+**기본값:** `git commit --amend` 실행 시 Claude에게 주의하여 진행하도록 안내합니다. 명령을 차단하지는 않습니다.
-매개변수 없음.
+파라미터 없음.
---
### `warn-git-stash-drop`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `git stash drop` 실행 전에 Claude에게 확인을 요청합니다. 명령어를 차단하지는 않습니다.
+**기본값:** `git stash drop` 실행 전 Claude에게 확인하도록 안내합니다. 명령을 차단하지는 않습니다.
-매개변수 없음.
+파라미터 없음.
---
### `warn-all-files-staged`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `git add -A` 또는 `git add .` 실행 시 Claude에게 스테이징할 내용을 검토하도록 안내합니다. 명령어를 차단하지는 않습니다.
+**기본값:** `git add -A` 또는 `git add .` 실행 시 Claude에게 스테이징할 내용을 검토하도록 안내합니다. 명령을 차단하지는 않습니다.
-매개변수 없음.
+파라미터 없음.
---
## 데이터베이스
-데이터베이스에 대해 실행되기 전에 파괴적인 SQL 작업을 감지합니다.
+데이터베이스에 실행되기 전에 파괴적인 SQL 작업을 감지합니다.
### `warn-destructive-sql`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `DROP TABLE`, `DROP DATABASE`, 또는 `WHERE` 절 없는 `DELETE`가 포함된 SQL 실행 전에 Claude에게 확인을 요청합니다.
+**기본값:** `DROP TABLE`, `DROP DATABASE`, 또는 `WHERE` 절이 없는 `DELETE`가 포함된 SQL 실행 전 Claude에게 확인하도록 안내합니다.
-매개변수 없음.
+파라미터 없음.
---
### `warn-schema-alteration`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `ALTER TABLE` 구문 실행 전에 Claude에게 확인을 요청합니다.
+**기본값:** `ALTER TABLE` 구문 실행 전 Claude에게 확인하도록 안내합니다.
-매개변수 없음.
+파라미터 없음.
---
## 경고
-잠재적으로 위험하지만 파괴적이지 않은 작업 전에 에이전트에게 추가 컨텍스트를 제공합니다.
+잠재적으로 위험하지만 파괴적이지 않은 작업 전에 에이전트에게 추가 맥락을 제공합니다.
### `warn-large-file-write`
**이벤트:** PreToolUse (Write)
-**기본 동작:** 1024 KB보다 큰 파일을 쓰기 전에 Claude에게 확인을 요청합니다.
+**기본값:** 1024 KB보다 큰 파일을 쓰기 전에 Claude에게 확인하도록 안내합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
| `thresholdKb` | `number` | `1024` | 경고가 발생하는 파일 크기 임계값 (킬로바이트). |
@@ -405,7 +405,7 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
```
-훅 핸들러는 페이로드에 대해 1 MB stdin 제한을 적용합니다. 작은 콘텐츠로 이 정책을 테스트하려면 `thresholdKb`를 1024보다 훨씬 낮은 값으로 설정하세요.
+훅 핸들러는 페이로드에 대해 1 MB stdin 제한을 적용합니다. 소용량 콘텐츠로 이 정책을 테스트하려면 `thresholdKb`를 1024보다 훨씬 낮은 값으로 설정하세요.
---
@@ -413,27 +413,27 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `warn-package-publish`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `npm publish` 실행 전에 Claude에게 확인을 요청합니다.
+**기본값:** `npm publish` 실행 전 Claude에게 확인하도록 안내합니다.
-매개변수 없음.
+파라미터 없음.
---
### `warn-background-process`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** `nohup`, `&`, `disown`, 또는 `screen`을 통해 백그라운드 프로세스를 시작할 때 Claude에게 주의를 촉구합니다.
+**기본값:** `nohup`, `&`, `disown`, `screen`을 통해 백그라운드 프로세스를 시작할 때 Claude에게 주의하도록 안내합니다.
-매개변수 없음.
+파라미터 없음.
---
### `warn-global-package-install`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** 가상 환경 없이 `npm install -g`, `yarn global add`, 또는 `pip install` 실행 전에 Claude에게 확인을 요청합니다.
+**기본값:** `npm install -g`, `yarn global add`, 또는 가상 환경 없이 `pip install` 실행 전 Claude에게 확인하도록 안내합니다.
-매개변수 없음.
+파라미터 없음.
---
@@ -444,18 +444,18 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `prefer-package-manager`
**이벤트:** PreToolUse (Bash)
-**기본 동작:** 비활성화됨. 활성화 시, `allowed` 목록에 없는 패키지 매니저 명령어를 차단하고 허용된 매니저를 사용하도록 Claude에게 안내합니다.
+**기본값:** 비활성화됨. 활성화 시, `allowed` 목록에 없는 패키지 매니저 명령을 차단하고 허용된 매니저를 사용하도록 Claude에게 명령을 재작성하도록 안내합니다.
감지 대상: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | 허용된 패키지 매니저 이름. 이 목록에 없는 감지된 매니저는 차단됩니다. 비어 있으면 정책이 동작하지 않습니다. |
-| `blocked` | string[] | `[]` | 기본 목록 외에 추가로 차단할 매니저 이름 (예: `['pdm', 'pipx']`). |
+| `allowed` | string[] | `[]` | 허용되는 패키지 매니저 이름. 이 목록에 없는 감지된 매니저는 차단됩니다. 비어 있으면 정책이 동작하지 않습니다. |
+| `blocked` | string[] | `[]` | 내장 목록 외에 추가로 차단할 매니저 이름 (예: `['pdm', 'pipx']`). |
-기본 차단 목록: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. 이 목록에 없는 매니저를 추가하려면 `blocked`를 사용하세요.
+내장 차단 목록에는 pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo가 포함됩니다. `blocked`를 사용하여 이 목록에 없는 매니저를 추가할 수 있습니다.
-**설정 예시:**
+**예시 설정:**
```json
{
@@ -469,46 +469,46 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
}
```
-이 설정에서는 `pip install flask`와 `pdm install flask` 모두 차단되며, Claude에게 `uv` 또는 `bun`을 사용하라는 메시지가 표시됩니다. `uv pip install flask`와 같은 명령어는 `uv`가 허용 목록에 있고 먼저 확인되므로 허용됩니다.
+이 설정에서 `pip install flask`와 `pdm install flask`는 모두 차단되며, `uv` 또는 `bun`을 사용하도록 안내하는 메시지가 표시됩니다. `uv pip install flask`와 같은 명령은 `uv`가 허용 목록에 있고 우선적으로 확인되므로 허용됩니다.
---
## AI 동작
-에이전트가 멈추거나 예기치 않게 동작하는 경우를 감지합니다.
+에이전트가 루프에 빠지거나 예상치 못한 동작을 보일 때 감지합니다.
### `warn-repeated-tool-calls`
**이벤트:** PreToolUse (모든 도구)
-**기본 동작:** 동일한 도구가 동일한 매개변수로 3회 이상 호출될 때 Claude에게 재고를 권유합니다. 이는 에이전트가 루프에 빠진 일반적인 징후입니다.
+**기본값:** 동일한 도구가 동일한 파라미터로 3회 이상 호출될 때 Claude에게 재고하도록 안내합니다. 이는 에이전트가 루프에 빠졌다는 일반적인 신호입니다.
-매개변수 없음.
+파라미터 없음.
---
-## 워크플로
+## 워크플로우
-세션 종료 시 규율 있는 워크플로를 강제합니다. 이 정책들은 **Stop** 이벤트에서 실행되며, 각 조건이 충족될 때까지 Claude의 종료를 차단합니다. 커밋 → 푸시 → PR → CI의 자연스러운 의존성 체인을 따릅니다. 정책이 차단되면 체인의 이후 정책은 건너뜁니다 (차단 시 단락).
+세션 종료 시 규율 있는 워크플로우를 강제합니다. 이 정책들은 **Stop** 이벤트에서 실행되며, 각 조건이 충족될 때까지 Claude의 중단을 차단합니다. 커밋 → 푸시 → PR → CI의 자연스러운 의존성 체인을 따릅니다. 정책이 deny를 반환하면 이후 정책들은 건너뜁니다 (deny 단락 평가).
-모든 워크플로 정책은 **fail-open** 방식입니다: 필요한 도구를 사용할 수 없는 경우 (예: `gh`가 설치되지 않음, git 원격 없음), 정책은 검사가 건너뛰어진 이유를 설명하는 안내 메시지와 함께 허용합니다.
+모든 워크플로우 정책은 **fail-open** 방식입니다: 필요한 도구를 사용할 수 없는 경우(예: `gh` 미설치, git 원격 없음), 정책은 검사가 건너뛰어진 이유를 설명하는 안내 메시지와 함께 허용합니다.
### `require-commit-before-stop`
**이벤트:** Stop
-**기본 동작:** 커밋되지 않은 변경 사항(수정됨, 스테이징됨, 추적되지 않은 파일)이 있을 때 종료를 차단합니다. 작업 디렉터리가 깨끗할 때는 안내 메시지를 반환합니다.
+**기본값:** 커밋되지 않은 변경사항(수정됨, 스테이징됨, 추적되지 않은 파일)이 있을 때 중단을 차단합니다. 작업 디렉터리가 깨끗한 경우 안내 메시지를 반환합니다.
-매개변수 없음.
+파라미터 없음.
---
### `require-push-before-stop`
**이벤트:** Stop
-**기본 동작:** 푸시되지 않은 커밋이 있거나 현재 브랜치에 원격 추적 브랜치가 없을 때 종료를 차단합니다. 필요한 경우 추적 브랜치를 생성하기 위해 `git push -u`를 제안합니다. 원격이 설정되어 있지 않으면 fail-open 처리됩니다.
+**기본값:** 푸시되지 않은 커밋이 있거나 현재 브랜치에 원격 추적 브랜치가 없을 때 중단을 차단합니다. 필요한 경우 추적 브랜치를 생성하도록 `git push -u`를 제안합니다. 원격이 설정되지 않은 경우 fail-open 방식으로 동작합니다.
-**매개변수:**
+**파라미터:**
-| 매개변수 | 타입 | 기본값 | 설명 |
+| 파라미터 | 타입 | 기본값 | 설명 |
|-------|------|---------|-------------|
| `remote` | `string` | `"origin"` | 푸시할 원격 이름. |
@@ -529,13 +529,13 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `require-pr-before-stop`
**이벤트:** Stop
-**기본 동작:** 현재 브랜치에 대한 풀 리퀘스트가 없거나 기존 PR이 닫혔거나 병합된 경우 종료를 차단합니다. `gh pr create`로 PR을 생성하도록 Claude에게 안내합니다.
+**기본값:** 현재 브랜치에 풀 리퀘스트가 없거나 기존 PR이 closed/merged 상태일 때 중단을 차단합니다. `gh pr create`로 PR을 생성하도록 Claude에게 안내합니다.
-매개변수 없음.
+파라미터 없음.
-이 정책은 [GitHub CLI](https://cli.github.com/) (`gh`)가 설치되고 인증된 상태여야 합니다.
-풀 리퀘스트에 대한 읽기 접근을 위해 `repo` 스코프를 가진 개인 액세스 토큰으로 `gh auth login`을 실행하세요. `gh`가 설치되지 않았거나 인증되지 않은 경우, 정책은 fail-open 처리되며 그 이유를 Claude에게 보고합니다.
+이 정책을 사용하려면 [GitHub CLI](https://cli.github.com/) (`gh`)가 설치되어 있고 인증되어 있어야 합니다.
+풀 리퀘스트 읽기 권한을 위해 `repo` 스코프를 가진 개인 액세스 토큰으로 `gh auth login`을 실행하세요. `gh`가 설치되어 있지 않거나 인증되지 않은 경우, 정책은 fail-open 방식으로 동작하며 그 이유를 Claude에게 보고합니다.
---
@@ -543,13 +543,13 @@ failproofai에는 에이전트의 일반적인 오류 패턴을 감지하는 30
### `require-ci-green-before-stop`
**이벤트:** Stop
-**기본 동작:** 현재 브랜치의 CI 검사가 실패하거나 아직 실행 중일 때 종료를 차단합니다. GitHub Actions 워크플로 실행과 서드파티 봇 검사(예: CodeRabbit, SonarCloud, Codecov)를 모두 확인합니다. `skipped` 결론은 성공으로 처리합니다. 모든 검사가 통과되면 안내 메시지를 반환합니다.
+**기본값:** 현재 브랜치의 CI 검사가 실패하거나 아직 실행 중일 때 중단을 차단합니다. GitHub Actions 워크플로우 실행과 서드파티 봇 검사(예: CodeRabbit, SonarCloud, Codecov) 모두를 확인합니다. `skipped` 및 `cancelled` 결과는 성공으로 처리합니다. 모든 검사가 통과되면 안내 메시지를 반환합니다.
-매개변수 없음.
+파라미터 없음.
-이 정책은 [GitHub CLI](https://cli.github.com/) (`gh`)가 설치되고 인증된 상태여야 합니다.
-Actions 워크플로 실행 및 Checks API에 대한 읽기 접근을 위해 `repo` 스코프를 가진 개인 액세스 토큰으로 `gh auth login`을 실행하세요. `gh`가 설치되지 않았거나 인증되지 않은 경우, 정책은 fail-open 처리되며 그 이유를 Claude에게 보고합니다.
+이 정책을 사용하려면 [GitHub CLI](https://cli.github.com/) (`gh`)가 설치되어 있고 인증되어 있어야 합니다.
+Actions 워크플로우 실행 및 Checks API에 대한 읽기 권한을 위해 `repo` 스코프를 가진 개인 액세스 토큰으로 `gh auth login`을 실행하세요. `gh`가 설치되어 있지 않거나 인증되지 않은 경우, 정책은 fail-open 방식으로 동작하며 그 이유를 Claude에게 보고합니다.
---
@@ -558,7 +558,7 @@ Actions 워크플로 실행 및 Checks API에 대한 읽기 접근을 위해 `re
## 개별 정책 비활성화
-설정의 `enabledPolicies`에서 특정 정책을 제거하거나, 대시보드의 Policies 탭에서 해제하세요.
+설정 파일의 `enabledPolicies`에서 특정 정책을 제거하거나, 대시보드의 Policies 탭에서 해제합니다.
```json
{
diff --git a/docs/pt-br/built-in-policies.mdx b/docs/pt-br/built-in-policies.mdx
index 6cf37c9b..7c77c788 100644
--- a/docs/pt-br/built-in-policies.mdx
+++ b/docs/pt-br/built-in-policies.mdx
@@ -1,19 +1,19 @@
---
title: Políticas Integradas
-description: "Todas as 30 políticas integradas que detectam modos comuns de falha de agentes"
+description: "Todas as 30 políticas integradas que detectam falhas comuns em agentes"
icon: shield
---
-failproofai vem com 30 políticas integradas que detectam modos comuns de falha de agentes. Cada política é acionada em um tipo específico de evento de hook e nome de ferramenta. Nove políticas aceitam parâmetros que permitem ajustar seu comportamento sem escrever código. Quatro políticas de workflow impõem um pipeline commit → push → PR → CI antes que o Claude pare.
+failproofai vem com 30 políticas integradas que detectam falhas comuns em agentes. Cada política é acionada em um tipo específico de evento de hook e nome de ferramenta. Nove políticas aceitam parâmetros que permitem ajustar seu comportamento sem escrever código. Quatro políticas de fluxo de trabalho impõem um pipeline de commit → push → PR → CI antes que Claude pare.
---
-## Visão geral
+## Visão Geral
As políticas são agrupadas em categorias:
| Categoria | Políticas | Tipo de hook |
-|----------|----------|-----------|
+|-----------|-----------|--------------|
| [Comandos perigosos](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [Segredos (sanitizadores)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [Ambiente](#environment) | block-env-files, protect-env-vars | PreToolUse |
@@ -22,7 +22,7 @@ As políticas são agrupadas em categorias:
| [Banco de dados](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
| [Avisos](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
| [Gerenciadores de pacotes](#package-managers) | prefer-package-manager | PreToolUse |
-| [Workflow](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
+| [Fluxo de trabalho](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
- **`block-`** — impede o agente de prosseguir.
- **`warn-`** — fornece contexto adicional ao agente para que ele possa se autocorrigir.
@@ -32,27 +32,27 @@ As políticas são agrupadas em categorias:
---
-Toda política suporta um campo `hint` opcional em `policyParams`. O hint é anexado à mensagem de deny ou instruct que o Claude vê, fornecendo orientações práticas sem modificar o código da política. Funciona com políticas integradas, customizadas e de convenção. Veja [Configuração → hint](/pt-br/configuration#hint-cross-cutting) para detalhes.
+Toda política suporta um campo opcional `hint` em `policyParams`. O hint é anexado à mensagem de deny ou instruct que Claude vê, fornecendo orientação prática sem modificar o código da política. Funciona com políticas integradas, personalizadas e de convenção. Consulte [Configuração → hint](/pt-br/configuration#hint-cross-cutting) para mais detalhes.
---
## Comandos perigosos
-Impede agentes de executar operações difíceis de desfazer ou que possam danificar o sistema host.
+Impede que agentes executem operações difíceis de desfazer ou que possam danificar o sistema host.
### `block-sudo`
**Evento:** PreToolUse (Bash)
**Padrão:** Nega qualquer comando `sudo`.
-Bloqueia invocações que incluem a palavra-chave `sudo`. A correspondência de padrões é feita em tokens de comando analisados, não na string bruta, para evitar bypass por injeção de operadores shell.
+Bloqueia invocações que incluem a palavra-chave `sudo`. A correspondência de padrão é feita nos tokens de comando analisados, não na string bruta, para evitar bypass por injeção de operadores shell.
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | Prefixos exatos de comando que são permitidos. Cada entrada é correspondida com os tokens argv analisados. |
+|-----------|------|--------|-----------|
+| `allowPatterns` | `string[]` | `[]` | Prefixos de comando exatos que são permitidos. Cada entrada é comparada com os tokens argv analisados. |
**Exemplo:**
@@ -69,7 +69,7 @@ Bloqueia invocações que incluem a palavra-chave `sudo`. A correspondência de
Com esta configuração, `sudo systemctl status nginx` é permitido, mas `sudo rm /etc/hosts` é negado.
-Os padrões são correspondidos com tokens analisados, não com a string de comando bruta. Isso evita bypass por meio de operadores shell anexados (ex.: `sudo systemctl status x; rm -rf /` não corresponde a `sudo systemctl status *`).
+Os padrões são comparados com os tokens analisados, não com a string de comando bruta. Isso impede bypass por meio de operadores shell anexados (ex.: `sudo systemctl status x; rm -rf /` não corresponde a `sudo systemctl status *`).
---
@@ -82,8 +82,8 @@ Os padrões são correspondidos com tokens analisados, não com a string de coma
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Caminhos que são seguros para exclusão recursiva (ex.: `/tmp`). |
+|-----------|------|--------|-----------|
+| `allowPaths` | `string[]` | `[]` | Caminhos que podem ser excluídos recursivamente com segurança (ex.: `/tmp`). |
**Exemplo:**
@@ -119,7 +119,7 @@ Sem parâmetros.
## Segredos (sanitizadores)
-Impede agentes de vazar credenciais em seu contexto ou saída. As políticas de sanitização são acionadas em eventos **PostToolUse**. Quando o Claude executa um comando Bash, lê um arquivo ou chama qualquer ferramenta, essas políticas inspecionam a saída antes de ela ser retornada ao Claude. Se um padrão de segredo for detectado, a política retorna uma decisão de deny que impede a saída de ser repassada.
+Impede que agentes vazem credenciais em seu contexto ou saída. As políticas de sanitização são acionadas em eventos **PostToolUse**. Quando Claude executa um comando Bash, lê um arquivo ou chama qualquer ferramenta, essas políticas inspecionam a saída antes de ela ser retornada a Claude. Se um padrão de segredo for detectado, a política retorna uma decisão de deny que impede que a saída seja repassada.
### `sanitize-jwt`
@@ -133,12 +133,12 @@ Sem parâmetros.
### `sanitize-api-keys`
**Evento:** PostToolUse (todas as ferramentas)
-**Padrão:** Redige formatos comuns de chave de API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), chaves de acesso AWS (`AKIA`), chaves Stripe (`sk_live_`, `sk_test_`) e chaves Google API (`AIza`).
+**Padrão:** Redige formatos comuns de chave de API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), chaves de acesso AWS (`AKIA`), chaves Stripe (`sk_live_`, `sk_test_`) e chaves de API do Google (`AIza`).
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
+|-----------|------|--------|-----------|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Padrões regex adicionais para tratar como segredos. |
**Exemplo:**
@@ -161,7 +161,7 @@ Sem parâmetros.
### `sanitize-connection-strings`
**Evento:** PostToolUse (todas as ferramentas)
-**Padrão:** Redige strings de conexão de banco de dados que contêm credenciais incorporadas (ex.: `postgresql://user:password@host/db`).
+**Padrão:** Redige strings de conexão de banco de dados que contêm credenciais embutidas (ex.: `postgresql://user:password@host/db`).
Sem parâmetros.
@@ -187,14 +187,14 @@ Sem parâmetros.
## Ambiente
-Protege configurações sensíveis de ambiente de serem lidas ou expostas por agentes.
+Protege a configuração sensível do ambiente de ser lida ou exposta por agentes.
### `block-env-files`
**Evento:** PreToolUse (Bash, Read)
**Padrão:** Nega a leitura de arquivos `.env` via `cat .env`, chamadas da ferramenta `Read` com `.env` como caminho do arquivo, etc.
-Não bloqueia `.envrc` ou outros arquivos relacionados a ambiente — apenas arquivos com o nome exato `.env`.
+Não bloqueia `.envrc` ou outros arquivos relacionados ao ambiente — apenas arquivos nomeados exatamente `.env`.
Sem parâmetros.
@@ -221,8 +221,8 @@ Mantém os agentes trabalhando dentro dos limites do projeto e longe de arquivos
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Prefixos de caminho absoluto que são permitidos mesmo que estejam fora do cwd. |
+|-----------|------|--------|-----------|
+| `allowPaths` | `string[]` | `[]` | Prefixos de caminho absoluto que são permitidos mesmo estando fora do cwd. |
**Exemplo:**
@@ -246,8 +246,8 @@ Mantém os agentes trabalhando dentro dos limites do projeto e longe de arquivos
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | Padrões adicionais de nome de arquivo (estilo glob) para bloquear. |
+|-----------|------|--------|-----------|
+| `additionalPatterns` | `string[]` | `[]` | Padrões de nome de arquivo adicionais (estilo glob) para bloquear. |
**Exemplo:**
@@ -275,8 +275,8 @@ Previne pushes acidentais, force-pushes e erros de branch que são difíceis de
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Nomes de branches que não podem receber push diretamente. |
+|-----------|------|--------|-----------|
+| `protectedBranches` | `string[]` | `["main", "master"]` | Nomes de branch para os quais não é possível fazer push diretamente. |
**Exemplo:**
@@ -291,7 +291,7 @@ Previne pushes acidentais, force-pushes e erros de branch que são difíceis de
```
-Para permitir push em todos os branches (efetivamente desabilitando esta política sem removê-la de `enabledPolicies`), defina `protectedBranches: []`.
+Para permitir push em todos os branches (desativando efetivamente esta política sem removê-la de `enabledPolicies`), defina `protectedBranches: []`.
---
@@ -299,13 +299,13 @@ Para permitir push em todos os branches (efetivamente desabilitando esta políti
### `block-work-on-main`
**Evento:** PreToolUse (Bash)
-**Padrão:** Nega checkout direto nos branches `main` ou `master`.
+**Padrão:** Nega o checkout direto dos branches `main` ou `master`.
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Nomes de branches que não podem receber checkout diretamente. |
+|-----------|------|--------|-----------|
+| `protectedBranches` | `string[]` | `["main", "master"]` | Nomes de branch que não podem ser acessados diretamente via checkout. |
---
@@ -314,7 +314,7 @@ Para permitir push em todos os branches (efetivamente desabilitando esta políti
**Evento:** PreToolUse (Bash)
**Padrão:** Nega `git push --force` e `git push -f`.
-Sem parâmetros específicos da política. Use o [`hint`](/pt-br/configuration#hint-cross-cutting) transversal para sugerir alternativas:
+Sem parâmetros específicos de política. Use o [`hint`](/pt-br/configuration#hint-cross-cutting) transversal para sugerir alternativas:
```json
{
@@ -331,7 +331,7 @@ Sem parâmetros específicos da política. Use o [`hint`](/pt-br/configuration#h
### `warn-git-amend`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a prosseguir com cuidado ao executar `git commit --amend`. Não bloqueia o comando.
+**Padrão:** Instrui Claude a prosseguir com cuidado ao executar `git commit --amend`. Não bloqueia o comando.
Sem parâmetros.
@@ -340,7 +340,7 @@ Sem parâmetros.
### `warn-git-stash-drop`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a confirmar antes de executar `git stash drop`. Não bloqueia o comando.
+**Padrão:** Instrui Claude a confirmar antes de executar `git stash drop`. Não bloqueia o comando.
Sem parâmetros.
@@ -349,7 +349,7 @@ Sem parâmetros.
### `warn-all-files-staged`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a revisar o que está sendo adicionado ao stage ao executar `git add -A` ou `git add .`. Não bloqueia o comando.
+**Padrão:** Instrui Claude a revisar o que está sendo preparado para commit ao executar `git add -A` ou `git add .`. Não bloqueia o comando.
Sem parâmetros.
@@ -357,12 +357,12 @@ Sem parâmetros.
## Banco de dados
-Detecta operações SQL destrutivas antes que sejam executadas no seu banco de dados.
+Detecta operações SQL destrutivas antes que sejam executadas no banco de dados.
### `warn-destructive-sql`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a confirmar antes de executar SQL contendo `DROP TABLE`, `DROP DATABASE` ou `DELETE` sem uma cláusula `WHERE`.
+**Padrão:** Instrui Claude a confirmar antes de executar SQL contendo `DROP TABLE`, `DROP DATABASE` ou `DELETE` sem uma cláusula `WHERE`.
Sem parâmetros.
@@ -371,7 +371,7 @@ Sem parâmetros.
### `warn-schema-alteration`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a confirmar antes de executar instruções `ALTER TABLE`.
+**Padrão:** Instrui Claude a confirmar antes de executar instruções `ALTER TABLE`.
Sem parâmetros.
@@ -384,12 +384,12 @@ Fornece contexto extra aos agentes antes de operações potencialmente arriscada
### `warn-large-file-write`
**Evento:** PreToolUse (Write)
-**Padrão:** Instrui o Claude a confirmar antes de gravar arquivos maiores que 1024 KB.
+**Padrão:** Instrui Claude a confirmar antes de gravar arquivos maiores que 1024 KB.
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
+|-----------|------|--------|-----------|
| `thresholdKb` | `number` | `1024` | Limite de tamanho de arquivo em kilobytes acima do qual um aviso é emitido. |
**Exemplo:**
@@ -405,7 +405,7 @@ Fornece contexto extra aos agentes antes de operações potencialmente arriscada
```
-O handler do hook impõe um limite de 1 MB de stdin em payloads. Para testar esta política com conteúdo pequeno, defina `thresholdKb` para um valor bem abaixo de 1024.
+O handler do hook impõe um limite de 1 MB no stdin para payloads. Para testar esta política com conteúdo pequeno, defina `thresholdKb` com um valor bem abaixo de 1024.
---
@@ -413,7 +413,7 @@ O handler do hook impõe um limite de 1 MB de stdin em payloads. Para testar est
### `warn-package-publish`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a confirmar antes de executar `npm publish`.
+**Padrão:** Instrui Claude a confirmar antes de executar `npm publish`.
Sem parâmetros.
@@ -422,7 +422,7 @@ Sem parâmetros.
### `warn-background-process`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a ter cuidado ao iniciar processos em segundo plano via `nohup`, `&`, `disown` ou `screen`.
+**Padrão:** Instrui Claude a ter cuidado ao iniciar processos em segundo plano via `nohup`, `&`, `disown` ou `screen`.
Sem parâmetros.
@@ -431,7 +431,7 @@ Sem parâmetros.
### `warn-global-package-install`
**Evento:** PreToolUse (Bash)
-**Padrão:** Instrui o Claude a confirmar antes de executar `npm install -g`, `yarn global add` ou `pip install` sem um ambiente virtual.
+**Padrão:** Instrui Claude a confirmar antes de executar `npm install -g`, `yarn global add` ou `pip install` sem um ambiente virtual.
Sem parâmetros.
@@ -439,21 +439,21 @@ Sem parâmetros.
## Gerenciadores de pacotes
-Impõe quais gerenciadores de pacotes o agente tem permissão de usar.
+Impõe quais gerenciadores de pacotes o agente pode usar.
### `prefer-package-manager`
**Evento:** PreToolUse (Bash)
-**Padrão:** Desabilitado. Quando habilitado, bloqueia qualquer comando de gerenciador de pacotes que não esteja na lista `allowed` e diz ao Claude para reescrever o comando usando um gerenciador permitido.
+**Padrão:** Desabilitado. Quando habilitado, bloqueia qualquer comando de gerenciador de pacotes que não esteja na lista `allowed` e instrui Claude a reescrever o comando usando um gerenciador permitido.
Detecta: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Parâmetro | Tipo | Padrão | Descrição |
-|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Nomes de gerenciadores de pacotes permitidos. Qualquer gerenciador detectado que não esteja nesta lista é bloqueado. Quando vazio, a política não faz nada. |
-| `blocked` | string[] | `[]` | Nomes de gerenciadores adicionais para bloquear além da lista integrada (ex.: `['pdm', 'pipx']`). |
+|-----------|------|--------|-----------|
+| `allowed` | string[] | `[]` | Nomes de gerenciadores de pacotes permitidos. Qualquer gerenciador detectado que não esteja nesta lista é bloqueado. Quando vazia, a política não faz nada. |
+| `blocked` | string[] | `[]` | Nomes adicionais de gerenciadores a bloquear além da lista integrada (ex.: `['pdm', 'pipx']`). |
-A lista de bloqueio integrada cobre: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Use `blocked` para adicionar gerenciadores que não estão nesta lista.
+A lista de bloqueio integrada abrange: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Use `blocked` para adicionar gerenciadores que não estão nesta lista.
**Exemplo de configuração:**
@@ -469,33 +469,33 @@ A lista de bloqueio integrada cobre: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun,
}
```
-Com esta configuração, `pip install flask` e `pdm install flask` são ambos negados com uma mensagem dizendo ao Claude para usar `uv` ou `bun` em vez disso. Comandos como `uv pip install flask` são permitidos porque `uv` está na lista de permitidos e é verificado primeiro.
+Com esta configuração, `pip install flask` e `pdm install flask` são ambos negados com uma mensagem instruindo Claude a usar `uv` ou `bun`. Comandos como `uv pip install flask` são permitidos porque `uv` está na lista de permissões e é verificado primeiro.
---
## Comportamento de IA
-Detecta quando agentes ficam presos ou se comportam de forma inesperada.
+Detecta quando agentes ficam travados ou se comportam de forma inesperada.
### `warn-repeated-tool-calls`
**Evento:** PreToolUse (todas as ferramentas)
-**Padrão:** Instrui o Claude a reconsiderar quando a mesma ferramenta é chamada 3 ou mais vezes com parâmetros idênticos — um sinal comum de que o agente está preso em um loop.
+**Padrão:** Instrui Claude a reconsiderar quando a mesma ferramenta é chamada 3 ou mais vezes com parâmetros idênticos — um sinal comum de que o agente está preso em um loop.
Sem parâmetros.
---
-## Workflow
+## Fluxo de trabalho
-Impõe um workflow disciplinado de fim de sessão. Essas políticas são acionadas no evento **Stop** e impedem o Claude de parar até que cada condição seja atendida. Elas seguem uma cadeia de dependência natural: commit → push → PR → CI. Se uma política negar, as políticas posteriores na cadeia são ignoradas (deny causa curto-circuito).
+Impõe um fluxo de trabalho disciplinado ao final da sessão. Essas políticas são acionadas no evento **Stop** e impedem Claude de parar até que cada condição seja atendida. Elas seguem uma cadeia de dependência natural: commit → push → PR → CI. Se uma política negar, as políticas subsequentes na cadeia são ignoradas (deny provoca curto-circuito).
-Todas as políticas de workflow são **fail-open**: se a ferramenta necessária não estiver disponível (ex.: `gh` não instalado, sem remote git), a política permite com uma mensagem informativa explicando por que a verificação foi ignorada.
+Todas as políticas de fluxo de trabalho são **fail-open**: se a ferramenta necessária não estiver disponível (ex.: `gh` não instalado, sem remote git), a política permite com uma mensagem informativa explicando por que a verificação foi ignorada.
### `require-commit-before-stop`
**Evento:** Stop
-**Padrão:** Nega a parada quando há alterações não commitadas (arquivos modificados, em stage ou não rastreados). Retorna uma mensagem informativa quando o diretório de trabalho está limpo.
+**Padrão:** Nega a parada quando há alterações não commitadas (arquivos modificados, preparados ou não rastreados). Retorna uma mensagem informativa quando o diretório de trabalho está limpo.
Sem parâmetros.
@@ -504,13 +504,13 @@ Sem parâmetros.
### `require-push-before-stop`
**Evento:** Stop
-**Padrão:** Nega a parada quando há commits não enviados por push ou quando o branch atual não tem um branch de rastreamento remoto. Sugere `git push -u` para criar um branch de rastreamento se necessário. Falha de forma aberta se nenhum remote estiver configurado.
+**Padrão:** Nega a parada quando há commits não enviados ou quando o branch atual não possui um branch de rastreamento remoto. Sugere `git push -u` para criar um branch de rastreamento se necessário. Fail-open se nenhum remote estiver configurado.
**Parâmetros:**
| Parâmetro | Tipo | Padrão | Descrição |
-|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | Nome do remote para o qual fazer push. |
+|-----------|------|--------|-----------|
+| `remote` | `string` | `"origin"` | Nome do remote para onde fazer push. |
**Exemplo:**
@@ -529,14 +529,14 @@ Sem parâmetros.
### `require-pr-before-stop`
**Evento:** Stop
-**Padrão:** Nega a parada quando não existe nenhum pull request para o branch atual, ou quando o PR existente está fechado/mesclado. Instrui o Claude a criar um PR com `gh pr create`.
+**Padrão:** Nega a parada quando não existe pull request para o branch atual, ou quando o PR existente está fechado/mergeado. Instrui Claude a criar um PR com `gh pr create`.
Sem parâmetros.
Esta política requer que o [GitHub CLI](https://cli.github.com/) (`gh`) esteja instalado e autenticado.
-Execute `gh auth login` com um personal access token que tenha o escopo `repo` para acesso de leitura a
-pull requests. Se `gh` não estiver instalado ou autenticado, a política falha de forma aberta e informa o motivo ao Claude.
+Execute `gh auth login` com um token de acesso pessoal que tenha escopo `repo` para acesso de leitura a
+pull requests. Se `gh` não estiver instalado ou autenticado, a política falha de forma aberta (fail-open) e reporta o motivo a Claude.
---
@@ -544,14 +544,14 @@ pull requests. Se `gh` não estiver instalado ou autenticado, a política falha
### `require-ci-green-before-stop`
**Evento:** Stop
-**Padrão:** Nega a parada quando verificações de CI estão falhando ou ainda em execução no branch atual. Verifica tanto execuções de workflow do GitHub Actions quanto verificações de bots de terceiros (ex.: CodeRabbit, SonarCloud, Codecov). Trata conclusões `skipped` como sucesso. Retorna uma mensagem informativa quando todas as verificações passam.
+**Padrão:** Nega a parada quando as verificações de CI estão falhando ou ainda em execução no branch atual. Verifica tanto execuções de workflows do GitHub Actions quanto verificações de bots de terceiros (ex.: CodeRabbit, SonarCloud, Codecov). Trata conclusões `skipped` e `cancelled` como sucesso. Retorna uma mensagem informativa quando todas as verificações passam.
Sem parâmetros.
Esta política requer que o [GitHub CLI](https://cli.github.com/) (`gh`) esteja instalado e autenticado.
-Execute `gh auth login` com um personal access token que tenha o escopo `repo` para acesso de leitura a
-execuções de workflow do Actions e à API de Checks. Se `gh` não estiver instalado ou autenticado, a política falha de forma aberta e informa o motivo ao Claude.
+Execute `gh auth login` com um token de acesso pessoal que tenha escopo `repo` para acesso de leitura a
+execuções de workflows do Actions e à API de Checks. Se `gh` não estiver instalado ou autenticado, a política falha de forma aberta (fail-open) e reporta o motivo a Claude.
---
@@ -560,7 +560,7 @@ execuções de workflow do Actions e à API de Checks. Se `gh` não estiver inst
## Desabilitando políticas individuais
-Remova uma política específica de `enabledPolicies` na sua configuração, ou desative-a na aba Policies do dashboard.
+Remova uma política específica de `enabledPolicies` na sua configuração, ou desative-a na aba Políticas do painel.
```json
{
diff --git a/docs/ru/built-in-policies.mdx b/docs/ru/built-in-policies.mdx
index 77c637ca..684cf349 100644
--- a/docs/ru/built-in-policies.mdx
+++ b/docs/ru/built-in-policies.mdx
@@ -1,16 +1,16 @@
---
title: Встроенные политики
-description: "Все 30 встроенных политик, которые выявляют распространённые режимы отказа агентов"
+description: "Все 30 встроенных политик, которые ловят распространённые режимы отказа агентов"
icon: shield
---
-failproofai поставляется с 30 встроенными политиками, которые выявляют распространённые режимы отказа агентов. Каждая политика срабатывает при определённом типе события хука и имени инструмента. Девять политик принимают параметры, позволяющие настраивать их поведение без написания кода. Четыре рабочие политики обеспечивают выполнение конвейера commit → push → PR → CI, прежде чем Claude остановится.
+failproofai поставляется с 30 встроенными политиками, которые ловят распространённые режимы отказа агентов. Каждая политика срабатывает на определённый тип события хука и имя инструмента. Девять политик принимают параметры, которые позволяют вам настраивать их поведение без написания кода. Четыре политики рабочего процесса обеспечивают конвейер commit → push → PR → CI перед тем, как Claude остановится.
---
## Обзор
-Политики разделены на категории:
+Политики сгруппированы по категориям:
| Категория | Политики | Тип хука |
|----------|----------|-----------|
@@ -25,28 +25,28 @@ failproofai поставляется с 30 встроенными политик
| [Рабочий процесс](#рабочий-процесс) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
- **`block-`** — остановить агента от продолжения.
-- **`warn-`** — дать агенту дополнительный контекст, чтобы он смог самостоятельно исправиться.
-- **`sanitize-`** — удалить конфиденциальные данные из результата инструмента перед передачей агенту.
-- **`require-`** — блокировать событие Stop до выполнения условий.
+- **`warn-`** — дать агенту дополнительный контекст, чтобы он мог сам исправиться.
+- **`sanitize-`** — удалить чувствительные данные из вывода инструмента перед тем, как их увидит агент.
+- **`require-`** — заблокировать событие Stop до выполнения условий.
---
-Каждая политика поддерживает необязательное поле `hint` в `policyParams`. Подсказка добавляется к сообщению deny или instruct, которое видит Claude, предоставляя практические рекомендации без изменения кода политики. Работает со встроенными, пользовательскими и конвенционными политиками. Подробнее см. [Конфигурация → hint](/ru/configuration#hint-cross-cutting).
+Каждая политика поддерживает опциональное поле `hint` в `policyParams`. Подсказка добавляется к сообщению отказа или инструкции, которые видит Claude, предоставляя полезные рекомендации без изменения кода политики. Работает с встроенными, пользовательскими и политиками соглашений. См. раздел [Конфигурация → hint](/ru/configuration#hint-cross-cutting) для деталей.
---
## Опасные команды
-Предотвращение запуска операций агентами, которые сложно отменить или которые могут повредить хост-систему.
+Предотвратите запуск агентами операций, которые трудно отменить или которые могут повредить хост-систему.
### `block-sudo`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует любую команду `sudo`.
+**По умолчанию:** Запрещает любую команду `sudo`.
-Блокирует вызовы, содержащие ключевое слово `sudo`. Сопоставление паттернов выполняется на разобранных токенах команд, а не на сыром строке, чтобы предотвратить обход путём инъекции оператора shell.
+Блокирует вызовы, включающие ключевое слово `sudo`. Сопоставление шаблонов выполняется на разобранных токенах команды, а не на исходной строке, чтобы предотвратить обход через инъекцию оператора shell.
**Параметры:**
@@ -66,10 +66,10 @@ failproofai поставляется с 30 встроенными политик
}
```
-С этой конфигурацией `sudo systemctl status nginx` разрешён, но `sudo rm /etc/hosts` блокирован.
+С этой конфигурацией `sudo systemctl status nginx` разрешается, но `sudo rm /etc/hosts` запрещается.
-Паттерны сопоставляются с разобранными токенами, а не с сыром строком команды. Это предотвращает обход путём добавления операторов shell (например, `sudo systemctl status x; rm -rf /` не соответствует `sudo systemctl status *`).
+Шаблоны сопоставляются с разобранными токенами, а не с исходной строкой команды. Это предотвращает обход через добавленные операторы shell (например, `sudo systemctl status x; rm -rf /` не соответствует `sudo systemctl status *`).
---
@@ -77,13 +77,13 @@ failproofai поставляется с 30 встроенными политик
### `block-rm-rf`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует `rm -rf`, `rm -fr` и аналогичные формы рекурсивного удаления.
+**По умолчанию:** Запрещает `rm -rf`, `rm -fr` и аналогичные формы рекурсивного удаления.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Пути, которые безопасно удалять рекурсивно (например, `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | Пути, безопасные для рекурсивного удаления (например, `/tmp`). |
**Пример:**
@@ -102,7 +102,7 @@ failproofai поставляется с 30 встроенными политик
### `block-curl-pipe-sh`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует `curl | bash`, `curl | sh`, `wget | bash` и аналогичные паттерны.
+**По умолчанию:** Запрещает `curl | bash`, `curl | sh`, `wget | bash` и аналогичные шаблоны.
Нет параметров.
@@ -111,7 +111,7 @@ failproofai поставляется с 30 встроенными политик
### `block-failproofai-commands`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует команды, которые удаляют или отключают failproofai (например, `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**По умолчанию:** Запрещает команды, которые выполняли бы удаление или отключение самого failproofai (например, `npm uninstall failproofai`, `failproofai policies --uninstall`).
Нет параметров.
@@ -119,7 +119,7 @@ failproofai поставляется с 30 встроенными политик
## Секреты (санитайзеры)
-Предотвращение утечки учётных данных агентами в их контекст или вывод. Политики санитайзеров срабатывают при событиях **PostToolUse**. Когда Claude запускает команду Bash, читает файл или вызывает любой инструмент, эти политики проверяют результат перед возвратом Claude. Если обнаружен паттерн секрета, политика возвращает решение deny, которое предотвращает передачу результата обратно.
+Предотвратите утечку агентами учётных данных в их контекст или вывод. Политики санитайзеры срабатывают на событиях **PostToolUse**. Когда Claude запускает команду Bash, читает файл или вызывает любой инструмент, эти политики проверяют вывод перед возвратом Claude. Если обнаруживается шаблон секрета, политика возвращает решение отказа, которое предотвращает передачу вывода.
### `sanitize-jwt`
@@ -133,13 +133,13 @@ failproofai поставляется с 30 встроенными политик
### `sanitize-api-keys`
**Событие:** PostToolUse (все инструменты)
-**По умолчанию:** Скрывает распространённые форматы ключей API: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS ключи доступа (`AKIA`), ключи Stripe (`sk_live_`, `sk_test_`), и Google API ключи (`AIza`).
+**По умолчанию:** Скрывает распространённые форматы API ключей: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS access keys (`AKIA`), Stripe keys (`sk_live_`, `sk_test_`), и Google API keys (`AIza`).
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Дополнительные regex паттерны, которые рассматриваются как секреты. |
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Дополнительные regex шаблоны для обработки как секреты. |
**Пример:**
@@ -161,7 +161,7 @@ failproofai поставляется с 30 встроенными политик
### `sanitize-connection-strings`
**Событие:** PostToolUse (все инструменты)
-**По умолчанию:** Скрывает строки подключения к базе данных, содержащие встроенные учётные данные (например, `postgresql://user:password@host/db`).
+**По умолчанию:** Скрывает строки подключения базы данных, содержащие встроенные учётные данные (например, `postgresql://user:password@host/db`).
Нет параметров.
@@ -170,7 +170,7 @@ failproofai поставляется с 30 встроенными политик
### `sanitize-private-key-content`
**Событие:** PostToolUse (все инструменты)
-**По умолчанию:** Скрывает PEM блоки (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----` и т.д.).
+**По умолчанию:** Скрывает блоки PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, и т. д.).
Нет параметров.
@@ -187,14 +187,14 @@ failproofai поставляется с 30 встроенными политик
## Окружение
-Защита конфиденциальной конфигурации окружения от чтения или разглашения агентами.
+Защитите чувствительную конфигурацию окружения от чтения или раскрытия агентами.
### `block-env-files`
**Событие:** PreToolUse (Bash, Read)
-**По умолчанию:** Блокирует чтение файлов `.env` через `cat .env`, вызовы инструмента Read с `.env` как путь файла и т.д.
+**По умолчанию:** Запрещает чтение файлов `.env` через `cat .env`, вызовы инструмента Read с `.env` как путём к файлу и т. д.
-Не блокирует `.envrc` или другие похожие файлы окружения — только файлы, названные ровно `.env`.
+Не блокирует `.envrc` или другие файлы, связанные с окружением — только файлы с именем ровно `.env`.
Нет параметров.
@@ -203,7 +203,7 @@ failproofai поставляется с 30 встроенными политик
### `protect-env-vars`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует команды, которые выводят переменные окружения: `printenv`, `env`, `echo $VAR`.
+**По умолчанию:** Запрещает команды, которые выводят переменные окружения: `printenv`, `env`, `echo $VAR`.
Нет параметров.
@@ -211,18 +211,18 @@ failproofai поставляется с 30 встроенными политик
## Доступ к файлам
-Обеспечение работы агентов внутри границ проекта и вдали от конфиденциальных файлов.
+Держите агентов работающими внутри границ проекта и вдали от чувствительных файлов.
### `block-read-outside-cwd`
**Событие:** PreToolUse (Read, Bash)
-**По умолчанию:** Блокирует чтение файлов вне текущей рабочей директории (корень проекта).
+**По умолчанию:** Запрещает чтение файлов вне текущей рабочей директории (корень проекта).
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Абсолютные префиксы путей, которые разрешены, даже если находятся вне cwd. |
+| `allowPaths` | `string[]` | `[]` | Абсолютные префиксы путей, которые разрешены даже если они вне cwd. |
**Пример:**
@@ -241,13 +241,13 @@ failproofai поставляется с 30 встроенными политик
### `block-secrets-write`
**Событие:** PreToolUse (Write, Edit)
-**По умолчанию:** Блокирует запись в файлы, обычно используемые для приватных ключей и сертификатов: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**По умолчанию:** Запрещает записи в файлы, обычно используемые для приватных ключей и сертификатов: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | Дополнительные паттерны имён файлов (glob-стиль) для блокировки. |
+| `additionalPatterns` | `string[]` | `[]` | Дополнительные шаблоны имён файлов (glob-стиль) для блокировки. |
**Пример:**
@@ -265,18 +265,18 @@ failproofai поставляется с 30 встроенными политик
## Git
-Предотвращение случайных push'ей, force-push'ей и ошибок в ветках, которые сложно отменить.
+Предотвратите случайные push, force-push и ошибки ветвей, которые трудно отменить.
### `block-push-master`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует `git push origin main` и `git push origin master`.
+**По умолчанию:** Запрещает `git push origin main` и `git push origin master`.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Имена веток, которые не могут быть запушены напрямую. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Имена ветвей, на которые нельзя пушить напрямую. |
**Пример:**
@@ -291,7 +291,7 @@ failproofai поставляется с 30 встроенными политик
```
-Чтобы разрешить push на все ветки (эффективно отключить эту политику без удаления из `enabledPolicies`), установите `protectedBranches: []`.
+Чтобы разрешить пушинг во все ветви (фактически отключив эту политику без удаления её из `enabledPolicies`), установите `protectedBranches: []`.
---
@@ -299,28 +299,28 @@ failproofai поставляется с 30 встроенными политик
### `block-work-on-main`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует checkout веток `main` или `master` напрямую.
+**По умолчанию:** Запрещает checkout веток `main` или `master` напрямую.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Имена веток, которые не могут быть переключены напрямую. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Имена ветвей, которые нельзя checkoutить напрямую. |
---
### `block-force-push`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Блокирует `git push --force` и `git push -f`.
+**По умолчанию:** Запрещает `git push --force` и `git push -f`.
-Нет специфичных параметров политики. Используйте кросс-секционную [`hint`](/ru/configuration#hint-cross-cutting) для предложения альтернатив:
+Нет политик-специфичных параметров. Используйте кросс-режущую [`hint`](/ru/configuration#hint-cross-cutting) для предложения альтернатив:
```json
{
"policyParams": {
"block-force-push": {
- "hint": "Создайте новую ветку от текущего HEAD (например, `git checkout -b `) и запушьте её."
+ "hint": "Создайте новую ветвь из вашего текущего HEAD (например, `git checkout -b `) и пушьте её вместо этого."
}
}
}
@@ -331,7 +331,7 @@ failproofai поставляется с 30 встроенными политик
### `warn-git-amend`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude действовать осторожнее при запуске `git commit --amend`. Не блокирует команду.
+**По умолчанию:** Инструктирует Claude действовать осторожно при запуске `git commit --amend`. Не блокирует команду.
Нет параметров.
@@ -349,7 +349,7 @@ failproofai поставляется с 30 встроенными политик
### `warn-all-files-staged`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude проверить, что он стейджит при запуске `git add -A` или `git add .`. Не блокирует команду.
+**По умолчанию:** Инструктирует Claude просмотреть то, что он staging, когда запускает `git add -A` или `git add .`. Не блокирует команду.
Нет параметров.
@@ -357,12 +357,12 @@ failproofai поставляется с 30 встроенными политик
## База данных
-Выявление деструктивных SQL операций перед их выполнением против вашей базы данных.
+Ловите деструктивные SQL операции перед их выполнением против вашей базы данных.
### `warn-destructive-sql`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude подтвердить перед запуском SQL, содержащего `DROP TABLE`, `DROP DATABASE` или `DELETE` без `WHERE` предложения.
+**По умолчанию:** Инструктирует Claude подтвердить перед запуском SQL, содержащего `DROP TABLE`, `DROP DATABASE`, или `DELETE` без `WHERE` предложения.
Нет параметров.
@@ -371,7 +371,7 @@ failproofai поставляется с 30 встроенными политик
### `warn-schema-alteration`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude подтвердить перед запуском команд `ALTER TABLE`.
+**По умолчанию:** Инструктирует Claude подтвердить перед запуском операций `ALTER TABLE`.
Нет параметров.
@@ -379,18 +379,18 @@ failproofai поставляется с 30 встроенными политик
## Предупреждения
-Предоставление агентам дополнительного контекста перед потенциально рискованными, но не деструктивными операциями.
+Дайте агентам дополнительный контекст перед потенциально рискованными, но не деструктивными операциями.
### `warn-large-file-write`
**Событие:** PreToolUse (Write)
-**По умолчанию:** Инструктирует Claude подтвердить перед записью файлов больше 1024 KB.
+**По умолчанию:** Инструктирует Claude подтвердить перед записью файлов больше 1024 КБ.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `thresholdKb` | `number` | `1024` | Порог размера файла в килобайтах, выше которого выдаётся предупреждение. |
+| `thresholdKb` | `number` | `1024` | Порог размера файла в килобайтах, выше которого выводится предупреждение. |
**Пример:**
@@ -405,7 +405,7 @@ failproofai поставляется с 30 встроенными политик
```
-Обработчик хука применяет лимит stdin в 1 MB для полезных нагрузок. Для тестирования этой политики с малым содержимым установите `thresholdKb` на значение значительно ниже 1024.
+Обработчик хука обеспечивает лимит stdin в 1 МБ на полезные нагрузки. Для тестирования этой политики с малым содержимым установите `thresholdKb` на значение хорошо ниже 1024.
---
@@ -422,7 +422,7 @@ failproofai поставляется с 30 встроенными политик
### `warn-background-process`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude быть осторожнее при запуске фоновых процессов через `nohup`, `&`, `disown` или `screen`.
+**По умолчанию:** Инструктирует Claude быть осторожным при запуске фоновых процессов через `nohup`, `&`, `disown`, или `screen`.
Нет параметров.
@@ -431,7 +431,7 @@ failproofai поставляется с 30 встроенными политик
### `warn-global-package-install`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Инструктирует Claude подтвердить перед запуском `npm install -g`, `yarn global add` или `pip install` без виртуального окружения.
+**По умолчанию:** Инструктирует Claude подтвердить перед запуском `npm install -g`, `yarn global add`, или `pip install` без виртуального окружения.
Нет параметров.
@@ -439,21 +439,21 @@ failproofai поставляется с 30 встроенными политик
## Менеджеры пакетов
-Определение того, какие менеджеры пакетов разрешено использовать агенту.
+Обеспечьте, какой менеджер пакетов агенту разрешено использовать.
### `prefer-package-manager`
**Событие:** PreToolUse (Bash)
-**По умолчанию:** Отключено. При включении блокирует любую команду менеджера пакетов, отсутствующую в списке `allowed`, и указывает Claude переписать команду, используя разрешённый менеджер.
+**По умолчанию:** Отключено. Когда включено, блокирует любую команду менеджера пакетов, не входящую в список `allowed`, и говорит Claude переписать команду, используя разрешённый менеджер.
Обнаруживает: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Параметр | Тип | По умолчанию | Описание |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Разрешённые имена менеджеров пакетов. Любой обнаруженный менеджер, отсутствующий в списке, блокируется. При пустом списке политика является холостой. |
+| `allowed` | string[] | `[]` | Разрешённые имена менеджеров пакетов. Любой обнаруженный менеджер, не входящий в этот список, блокируется. Когда пусто, политика неоперативна. |
| `blocked` | string[] | `[]` | Дополнительные имена менеджеров для блокировки сверх встроенного списка (например, `['pdm', 'pipx']`). |
-Встроенный список блокировки включает: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Используйте `blocked` для добавления менеджеров, отсутствующих в этом списке.
+Встроенный список блокировки охватывает: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Используйте `blocked` для добавления менеджеров, не входящих в этот список.
**Пример конфигурации:**
@@ -469,18 +469,18 @@ failproofai поставляется с 30 встроенными политик
}
```
-С этой конфигурацией `pip install flask` и `pdm install flask` оба блокируются с сообщением, указывающим Claude использовать `uv` или `bun`. Команды вроде `uv pip install flask` разрешены, потому что `uv` в списке разрешений и проверяется первым.
+С этой конфигурацией `pip install flask` и `pdm install flask` оба запрещены с сообщением, говорящим Claude использовать `uv` или `bun` вместо этого. Команды типа `uv pip install flask` разрешены, потому что `uv` находится в списке разрешённых и проверяется первым.
---
-## Поведение ИИ
+## Поведение AI
-Обнаружение, когда агенты застревают или ведут себя неожиданно.
+Обнаружьте, когда агенты застревают или ведут себя неожиданно.
### `warn-repeated-tool-calls`
**Событие:** PreToolUse (все инструменты)
-**По умолчанию:** Инструктирует Claude пересмотреть, когда один и тот же инструмент вызывается 3+ раза с идентичными параметрами — распространённый признак того, что агент застрял в цикле.
+**По умолчанию:** Инструктирует Claude пересмотреть, когда тот же инструмент вызывается 3+ раза с идентичными параметрами — распространённый признак того, что агент застрял в цикле.
Нет параметров.
@@ -488,14 +488,14 @@ failproofai поставляется с 30 встроенными политик
## Рабочий процесс
-Обеспечение дисциплинированного рабочего процесса конца сеанса. Эти политики срабатывают при событии **Stop** и блокируют Claude от остановки до выполнения каждого условия. Они следуют естественной цепочке зависимостей: commit → push → PR → CI. Если политика блокирует, более поздние политики в цепочке пропускаются (deny короткие замыкания).
+Обеспечьте дисциплинированный рабочий процесс конца сессии. Эти политики срабатывают на событии **Stop** и запрещают Claude останавливаться до выполнения каждого условия. Они следуют естественной цепочке зависимостей: commit → push → PR → CI. Если политика запрещает, позже идущие политики в цепи пропускаются (отказ коротко-замыкает).
Все политики рабочего процесса **fail-open**: если требуемый инструмент недоступен (например, `gh` не установлен, нет git remote), политика разрешает с информационным сообщением, объясняющим, почему проверка была пропущена.
### `require-commit-before-stop`
**Событие:** Stop
-**По умолчанию:** Блокирует остановку при наличии неиндексированных изменений (изменённые, индексированные или неотслеживаемые файлы). Возвращает информационное сообщение, когда рабочая директория чиста.
+**По умолчанию:** Запрещает остановку, когда есть незакоммиченные изменения (изменённые, поставленные на stage или неотслеживаемые файлы). Возвращает информационное сообщение, когда рабочая директория чистая.
Нет параметров.
@@ -504,13 +504,13 @@ failproofai поставляется с 30 встроенными политик
### `require-push-before-stop`
**Событие:** Stop
-**По умолчанию:** Блокирует остановку при наличии неотправленных коммитов или когда текущая ветка не имеет ветки отслеживания на удалённом сервере. Предлагает `git push -u` для создания ветки отслеживания, если необходимо. Открывается, если нет настроенного удалённого сервера.
+**По умолчанию:** Запрещает остановку, когда есть неотправленные коммиты или когда текущая ветвь не имеет удалённой отслеживаемой ветви. Предлагает `git push -u` для создания отслеживаемой ветви при необходимости. Fails open если no remote не сконфигурирован.
**Параметры:**
| Параметр | Тип | По умолчанию | Описание |
|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | Имя удалённого сервера для push. |
+| `remote` | `string` | `"origin"` | Имя remote для пушинга. |
**Пример:**
@@ -529,14 +529,14 @@ failproofai поставляется с 30 встроенными политик
### `require-pr-before-stop`
**Событие:** Stop
-**По умолчанию:** Блокирует остановку при отсутствии pull request для текущей ветки или когда существующий PR закрыт/объединён. Инструктирует Claude создать PR с помощью `gh pr create`.
+**По умолчанию:** Запрещает остановку, когда для текущей ветви не существует pull request, или когда существующий PR закрыт/merged. Инструктирует Claude создать PR с `gh pr create`.
Нет параметров.
-Эта политика требует установки [GitHub CLI](https://cli.github.com/) (`gh`) и аутентификации.
-Запустите `gh auth login` с личным маркером доступа с областью действия `repo` для чтения
-pull request'ов. Если `gh` не установлен или не аутентифицирован, политика открывается и докладывает причину Claude.
+Эта политика требует установки и аутентификации [GitHub CLI](https://cli.github.com/) (`gh`).
+Запустите `gh auth login` с личным токеном доступа, имеющим область `repo` для чтения доступа к
+pull requests. Если `gh` не установлен или не аутентифицирован, политика fails open и сообщает причину Claude.
---
@@ -544,14 +544,14 @@ pull request'ов. Если `gh` не установлен или не ауте
### `require-ci-green-before-stop`
**Событие:** Stop
-**По умолчанию:** Блокирует остановку при сбое или продолжении выполнения CI проверок на текущей ветке. Проверяет как запуски рабочих процессов GitHub Actions, так и проверки ботов третьих сторон (например, CodeRabbit, SonarCloud, Codecov). Рассматривает `skipped` выводы как успех. Возвращает информационное сообщение, когда все проверки пройдены.
+**По умолчанию:** Запрещает остановку, когда CI проверки не проходят или ещё выполняются на текущей ветви. Проверяет как запуски рабочих процессов GitHub Actions, так и проверки сторонних ботов (например, CodeRabbit, SonarCloud, Codecov). Рассматривает `skipped` и `cancelled` выводы как успех. Возвращает информационное сообщение, когда все проверки проходят.
Нет параметров.
-Эта политика требует установки [GitHub CLI](https://cli.github.com/) (`gh`) и аутентификации.
-Запустите `gh auth login` с личным маркером доступа с областью действия `repo` для чтения
-запусков рабочих процессов Actions и Checks API. Если `gh` не установлен или не аутентифицирован, политика открывается и докладывает причину Claude.
+Эта политика требует установки и аутентификации [GitHub CLI](https://cli.github.com/) (`gh`).
+Запустите `gh auth login` с личным токеном доступа, имеющим область `repo` для чтения доступа к
+запускам рабочих процессов Actions и Checks API. Если `gh` не установлен или не аутентифицирован, политика fails open и сообщает причину Claude.
---
@@ -560,7 +560,7 @@ pull request'ов. Если `gh` не установлен или не ауте
## Отключение отдельных политик
-Удалите определённую политику из `enabledPolicies` в вашей конфигурации или отключите её на вкладке Policies в панели управления.
+Удалите определённую политику из `enabledPolicies` в вашей конфигурации или отключите её на вкладке Policies в dashboardе.
```json
{
@@ -571,4 +571,4 @@ pull request'ов. Если `gh` не установлен или не ауте
}
```
-Политики, не указанные в `enabledPolicies`, не запускаются, даже если существуют для них записи `policyParams`.
\ No newline at end of file
+Политики, не указанные в `enabledPolicies`, не запускаются, даже если для них существуют записи `policyParams`.
\ No newline at end of file
diff --git a/docs/tr/built-in-policies.mdx b/docs/tr/built-in-policies.mdx
index 140f3dda..0fe2f327 100644
--- a/docs/tr/built-in-policies.mdx
+++ b/docs/tr/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
title: Yerleşik İlkeler
-description: "Yaygın agent başarısızlık modlarını yakalayan 30 yerleşik ilke"
+description: "Yaygın aracı başarısızlık modlarını yakalayan 30 yerleşik ilke"
icon: shield
---
-failproofai, yaygın agent başarısızlık modlarını yakalayan 30 yerleşik ilkeyle birlikte gelir. Her ilke belirli bir hook olay türü ve araç adında tetiklenir. Dokuz ilke, kod yazmadan davranışlarını ayarlamanıza olanak veren parametreleri kabul eder. Dört iş akışı ilkesi, Claude'un durmadan önce commit → push → PR → CI ardışık düzenini uygular.
+failproofai yaygın aracı başarısızlık modlarını yakalayan 30 yerleşik ilke ile birlikte gelir. Her ilke belirli bir kanca olay türü ve araç adında tetiklenir. Dokuz ilke, kod yazmadan davranışlarını ayarlaymanıza izin veren parametreleri kabul eder. Dört iş akışı ilkesi, Claude'un durması öncesinde commit → push → PR → CI boru hattını uygular.
---
@@ -12,10 +12,10 @@ failproofai, yaygın agent başarısızlık modlarını yakalayan 30 yerleşik i
İlkeler kategorilere ayrılmıştır:
-| Kategori | İlkeler | Hook türü |
+| Kategori | İlkeler | Kanca türü |
|----------|---------|-----------|
| [Tehlikeli komutlar](#tehlikeli-komutlar) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
-| [Sırlar (sanitizers)](#sırlar-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
+| [Gizlilikler (sanitizer'lar)](#gizlilikler-sanitizarlar) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [Ortam](#ortam) | block-env-files, protect-env-vars | PreToolUse |
| [Dosya erişimi](#dosya-erişimi) | block-read-outside-cwd, block-secrets-write | PreToolUse |
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
@@ -24,35 +24,35 @@ failproofai, yaygın agent başarısızlık modlarını yakalayan 30 yerleşik i
| [Paket yöneticileri](#paket-yöneticileri) | prefer-package-manager | PreToolUse |
| [İş akışı](#iş-akışı) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — agentin devam etmesini durdur.
-- **`warn-`** — agente kendi kendini düzeltebilmesi için ek bağlam ver.
-- **`sanitize-`** — agent tarafından görülmeden önce aracın çıktısından hassas verileri temizle.
-- **`require-`** — koşullar yerine getirilene kadar Stop olayını engelle.
+- **`block-`** — aracıyı devam etmesini durdur.
+- **`warn-`** — aracıya kendini düzeltmesi için ek bağlam sağla.
+- **`sanitize-`** — aracı görmeden önce araç çıktısından hassas verileri temizle.
+- **`require-`** — koşullar karşılanana kadar Stop olayını engelle.
---
-Her ilke `policyParams` içinde isteğe bağlı bir `hint` alanını destekler. İpucu, deny veya instruct mesajına eklenir ve Claude tarafından görülür, ilke kodunu değiştirmeden işlem yapılabilir rehberlik sağlar. Yerleşik, özel ve kural ilkeleriyle çalışır. Ayrıntılar için bkz. [Yapılandırma → hint](/tr/configuration#hint-cross-cutting).
+Her ilke `policyParams` içinde isteğe bağlı bir `hint` alanını destekler. İpucu, Claude'un göreceği deny veya instruct mesajına eklenerek, ilke kodunu değiştirmeden işlem yapılabilir rehberlik sağlar. Yerleşik, özel ve konvansiyon ilkeleriyle çalışır. Ayrıntılar için [Konfigürasyon → hint](/tr/configuration#hint-cross-cutting) bölümüne bakın.
---
## Tehlikeli komutlar
-Agentleri geri alınması zor olan veya ana bilgisayar sistemine zarar verebilecek işlemlerden koruyun.
+Aracıları geri almasi zor veya ana sisteme zarar verebilecek işlemleri çalıştırmaktan alıkoy.
### `block-sudo`
**Olay:** PreToolUse (Bash)
**Varsayılan:** Tüm `sudo` komutlarını reddeder.
-`sudo` anahtar sözcüğünü içeren çağrıları engeller. Desen eşleştirmesi, kabuk operatör enjeksiyonu aracılığıyla bypass'i önlemek için ham dize yerine ayrıştırılmış komut belirteçleri üzerinde yapılır.
+`sudo` anahtar sözcüğünü içeren çağrıları engeller. Model eşleştirmesi kabuk operatör enjeksiyonu aracılığıyla atlatmayı önlemek için ham dizede değil, ayrıştırılmış komut tokenlerinde yapılır.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `allowPatterns` | `string[]` | `[]` | İzin verilen tam komut önekleri. Her giriş ayrıştırılmış argv belirteçlerine karşı eşleştirilir. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `allowPatterns` | `string[]` | `[]` | İzin verilen tam komut önekleri. Her giriş, ayrıştırılmış argv tokenlerine göre eşleştirilir. |
**Örnek:**
@@ -66,10 +66,10 @@ Agentleri geri alınması zor olan veya ana bilgisayar sistemine zarar verebilec
}
```
-Bu yapılandırmayla, `sudo systemctl status nginx` izin verilir, ancak `sudo rm /etc/hosts` reddedilir.
+Bu konfigürasyon ile `sudo systemctl status nginx` izin verilir, ancak `sudo rm /etc/hosts` reddedilir.
-Desenler ham komut dizesi değil, ayrıştırılmış belirteçlere karşı eşleştirilir. Bu, eklenen kabuk operatörleri aracılığıyla bypass'i önler (örneğin `sudo systemctl status x; rm -rf /` `sudo systemctl status *` ile eşleşmez).
+Desenler ham komut dizesinde değil, ayrıştırılmış tokenler karşısında eşleştirilir. Bu, eklenen kabuk operatörleri aracılığıyla atlatmayı önler (örn. `sudo systemctl status x; rm -rf /` `sudo systemctl status *` ile eşleşmez).
---
@@ -77,13 +77,13 @@ Desenler ham komut dizesi değil, ayrıştırılmış belirteçlere karşı eşl
### `block-rm-rf`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** `rm -rf`, `rm -fr` ve benzeri özyinelemeli silme formlarını reddeder.
+**Varsayılan:** `rm -rf`, `rm -fr` ve benzeri özyinelemeli silme biçimlerini reddeder.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `allowPaths` | `string[]` | `[]` | Özyinelemeli olarak silinmesi güvenli olan yollar (örneğin `/tmp`). |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `allowPaths` | `string[]` | `[]` | Özyinelemeli silme işleminin güvenli olduğu yollar (örn. `/tmp`). |
**Örnek:**
@@ -111,20 +111,20 @@ Parametre yok.
### `block-failproofai-commands`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** failproofai'yi kendisini kaldıracak veya devre dışı bırakacak komutları reddeder (örneğin `npm uninstall failproofai`, `failproofai policies --uninstall`).
+**Varsayılan:** failproofai'nı kendisini kaldıracak veya devre dışı bırakacak komutları reddeder (örn. `npm uninstall failproofai`, `failproofai policies --uninstall`).
Parametre yok.
---
-## Sırlar (sanitizers)
+## Gizlilikler (sanitizer'lar)
-Agentlerin kimlik bilgilerini bağlamlarına veya çıktılarına sızdırmasını önleyin. Sanitizer ilkeleri **PostToolUse** olaylarında tetiklenir. Claude bir Bash komutu çalıştırdığında, bir dosya okuduğunda veya herhangi bir araç çağırdığında, bu ilkeler Claude'a döndürülmeden önce çıktıyı inceler. Bir sır deseni algılanırsa, ilke çıktının geri iletilmesini önleyen bir deny kararı döndürür.
+Aracıların kimlik bilgilerini bağlamlarına veya çıktılarına sızmasını engelle. Sanitizer ilkeleri **PostToolUse** olaylarında tetiklenir. Claude bir Bash komutu çalıştırdığında, bir dosya okuduğunda veya herhangi bir aracı çağırdığında, bu ilkeler Claude'a döndürülmeden önce çıktıyı inceler. Gizli bir desen algılanırsa, ilke çıktının geri geçmesini önleyen bir deny kararı döndürür.
### `sanitize-jwt`
**Olay:** PostToolUse (tüm araçlar)
-**Varsayılan:** JWT belirteçlerini gizler (`.` ile ayrılmış üç base64url segmenti).
+**Varsayılan:** JWT tokenlerini (nokta ile ayrılmış üç base64url segmenti) temizler.
Parametre yok.
@@ -133,13 +133,13 @@ Parametre yok.
### `sanitize-api-keys`
**Olay:** PostToolUse (tüm araçlar)
-**Varsayılan:** Yaygın API anahtarı formatlarını gizler: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), AWS erişim anahtarları (`AKIA`), Stripe anahtarları (`sk_live_`, `sk_test_`) ve Google API anahtarları (`AIza`).
+**Varsayılan:** Yaygın API anahtarı biçimlerini temizler: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PAT'leri (`ghp_`), AWS erişim anahtarları (`AKIA`), Stripe anahtarları (`sk_live_`, `sk_test_`) ve Google API anahtarları (`AIza`).
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Sır olarak değerlendirilecek ek regex desenleri. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Gizli olarak düşünülecek ek regex desenleri. |
**Örnek:**
@@ -148,8 +148,8 @@ Parametre yok.
"policyParams": {
"sanitize-api-keys": {
"additionalPatterns": [
- { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo iç API anahtarı" },
- { "regex": "pat_[0-9a-f]{40}", "label": "İç PAT" }
+ { "regex": "myco_[A-Za-z0-9]{32}", "label": "MyCo internal API key" },
+ { "regex": "pat_[0-9a-f]{40}", "label": "Internal PAT" }
]
}
}
@@ -161,7 +161,7 @@ Parametre yok.
### `sanitize-connection-strings`
**Olay:** PostToolUse (tüm araçlar)
-**Varsayılan:** Gömülü kimlik bilgileri içeren veritabanı bağlantı dizelerini gizler (örneğin `postgresql://user:password@host/db`).
+**Varsayılan:** Gömülü kimlik bilgileri içeren veritabanı bağlantı dizelerini temizler (örn. `postgresql://user:password@host/db`).
Parametre yok.
@@ -170,7 +170,7 @@ Parametre yok.
### `sanitize-private-key-content`
**Olay:** PostToolUse (tüm araçlar)
-**Varsayılan:** PEM bloklarını gizler (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, vb.).
+**Varsayılan:** PEM bloklarını temizler (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, vb.).
Parametre yok.
@@ -179,7 +179,7 @@ Parametre yok.
### `sanitize-bearer-tokens`
**Olay:** PostToolUse (tüm araçlar)
-**Varsayılan:** `Authorization: Bearer ` başlıklarını gizler; burada belirteç 20 veya daha fazla karakter içerir.
+**Varsayılan:** `Authorization: Bearer ` başlıklarını temizler; burada token 20 veya daha fazla karakterdir.
Parametre yok.
@@ -187,14 +187,14 @@ Parametre yok.
## Ortam
-Hassas ortam yapılandırmasını agentler tarafından okunmaktan veya açığa çıkmaktan koruyun.
+Hassas ortam konfigürasyonunu aracılar tarafından okunmaktan veya ortaya çıkarılmaktan koru.
### `block-env-files`
**Olay:** PreToolUse (Bash, Read)
-**Varsayılan:** `cat .env`, dosya yolu olarak `.env` olan Read aracı çağrıları vb. aracılığıyla `.env` dosyalarını okumasını reddeder.
+**Varsayılan:** `.env` dosyalarının `cat .env`, dosya yolu olarak `.env` ile Read araç çağrıları vb. aracılığıyla okunmasını reddeder.
-`.envrc` veya diğer ortam-ilgili dosyaları engelleme — yalnızca `.env` adıyla tam olarak adlandırılan dosyaları engeller.
+`.envrc` veya diğer ortam-yakın dosyaları engellemez - yalnızca tam olarak `.env` adlı dosyaları engeller.
Parametre yok.
@@ -203,7 +203,7 @@ Parametre yok.
### `protect-env-vars`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Ortam değişkenlerini yazdıran komutları reddeder: `printenv`, `env`, `echo $VAR`.
+**Varsayılan:** Ortam değişkenlerini yazdıracak komutları reddeder: `printenv`, `env`, `echo $VAR`.
Parametre yok.
@@ -211,18 +211,18 @@ Parametre yok.
## Dosya erişimi
-Agentleri proje sınırlarının içinde ve hassas dosyalardan uzak tutun.
+Aracıları proje sınırları içinde tutun ve hassas dosyalardan uzak tut.
### `block-read-outside-cwd`
**Olay:** PreToolUse (Read, Bash)
-**Varsayılan:** Geçerli çalışma dizini (proje kökü) dışındaki dosyaları okumasını reddeder.
+**Varsayılan:** Geçerli çalışma dizini dışındaki dosyaları (proje kökü) okumayı reddeder.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `allowPaths` | `string[]` | `[]` | Cwd dışında olsa bile izin verilen mutlak yol önekleri. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `allowPaths` | `string[]` | `[]` | cwd dışında olsa bile izin verilen mutlak yol ön ekleri. |
**Örnek:**
@@ -241,13 +241,13 @@ Agentleri proje sınırlarının içinde ve hassas dosyalardan uzak tutun.
### `block-secrets-write`
**Olay:** PreToolUse (Write, Edit)
-**Varsayılan:** Özel anahtarlar ve sertifikalar için yaygın olarak kullanılan dosyalara yazmasını reddeder: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Varsayılan:** Özel anahtarlar ve sertifikalar için yaygın olarak kullanılan dosyalara yazma işlemlerini reddeder: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `additionalPatterns` | `string[]` | `[]` | Engellenmesi gereken ek dosya adı desenleri (glob stilinde). |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `additionalPatterns` | `string[]` | `[]` | Engellenecek ek dosya adı desenleri (glob tarzı). |
**Örnek:**
@@ -265,7 +265,7 @@ Agentleri proje sınırlarının içinde ve hassas dosyalardan uzak tutun.
## Git
-Yanlışlıkla push, force-push ve geri alınması zor olan dal hatalarını önleyin.
+Yanlışlıkla yapılan push'ları, force-push'ları ve geri almasi zor olan dal hatalarını engelle.
### `block-push-master`
@@ -274,9 +274,9 @@ Yanlışlıkla push, force-push ve geri alınması zor olan dal hatalarını ön
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Doğrudan push yapılamayan dal adları. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `protectedBranches` | `string[]` | `["main", "master"]` | Doğrudan push'a karşı korunan dal adları. |
**Örnek:**
@@ -291,7 +291,7 @@ Yanlışlıkla push, force-push ve geri alınması zor olan dal hatalarını ön
```
-Tüm dallara push yapmaya izin vermek için (bu ilkeyi `enabledPolicies` öğesinden kaldırmadan etkili bir şekilde devre dışı bırakmak), `protectedBranches: []` olarak ayarlayın.
+Tüm dallara push yapmaya izin vermek için (bu ilkeyi `enabledPolicies`'den kaldırmadan etkili bir şekilde devre dışı bırakmak için) `protectedBranches: []` olarak ayarlayın.
---
@@ -299,13 +299,13 @@ Tüm dallara push yapmaya izin vermek için (bu ilkeyi `enabledPolicies` öğesi
### `block-work-on-main`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** `main` veya `master` dallarına doğrudan checkout yapmasını reddeder.
+**Varsayılan:** `main` veya `master` dallarının doğrudan kontrol edilmesini reddeder.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Doğrudan checkout yapılamayan dal adları. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `protectedBranches` | `string[]` | `["main", "master"]` | Doğrudan kontrol edilemeyecek dal adları. |
---
@@ -314,13 +314,13 @@ Tüm dallara push yapmaya izin vermek için (bu ilkeyi `enabledPolicies` öğesi
**Olay:** PreToolUse (Bash)
**Varsayılan:** `git push --force` ve `git push -f` komutlarını reddeder.
-İlkeye özgü parametre yok. Alternatif önerisi için çapraz kesitli [`hint`](/tr/configuration#hint-cross-cutting) kullanın:
+İlkeye özel parametre yok. Alternatif önermeleri için çapraz kesim [`hint`](/tr/configuration#hint-cross-cutting) kullan:
```json
{
"policyParams": {
"block-force-push": {
- "hint": "Geçerli HEAD'inizden yeni bir dal oluşturun (örneğin `git checkout -b `) ve onun yerine o dalı push edin."
+ "hint": "Mevcut HEAD'nizden yeni bir dal oluşturun (örn. `git checkout -b `) ve bunun yerine bu dalı push edin."
}
}
}
@@ -331,7 +331,7 @@ Tüm dallara push yapmaya izin vermek için (bu ilkeyi `enabledPolicies` öğesi
### `warn-git-amend`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `git commit --amend` çalıştırırken dikkatli olmaya talimat verir. Komutu engelleme.
+**Varsayılan:** Claude'a `git commit --amend` çalıştırırken dikkatli olmak üzere talimat verir. Komutu engellmez.
Parametre yok.
@@ -340,7 +340,7 @@ Parametre yok.
### `warn-git-stash-drop`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `git stash drop` çalıştırmadan önce onaylamaya talimat verir. Komutu engelleme.
+**Varsayılan:** Claude'a `git stash drop` çalıştırmadan önce onaylaması gerektiğini talimat verir. Komutu engellmez.
Parametre yok.
@@ -349,7 +349,7 @@ Parametre yok.
### `warn-all-files-staged`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `git add -A` veya `git add .` çalıştırdığında stage aldığı şeyleri incelemeye talimat verir. Komutu engelleme.
+**Varsayılan:** Claude'a `git add -A` veya `git add .` çalıştırdığında sahneye aldığı şeyi gözden geçirmesini talimat verir. Komutu engellmez.
Parametre yok.
@@ -357,12 +357,12 @@ Parametre yok.
## Veritabanı
-Yıkıcı SQL işlemlerini veritabanınıza karşı yürütülmeden önce yakala.
+Veritabanınıza karşı yürütülmeden önce yıkıcı SQL işlemlerini yakala.
### `warn-destructive-sql`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `DROP TABLE`, `DROP DATABASE` veya `WHERE` yan tümcesi olmayan `DELETE` içeren SQL çalıştırmadan önce onaylamaya talimat verir.
+**Varsayılan:** Claude'a `DROP TABLE`, `DROP DATABASE` veya `WHERE` cümlesi olmayan `DELETE` içeren SQL'i çalıştırmadan önce onay alması talimatı verir.
Parametre yok.
@@ -371,7 +371,7 @@ Parametre yok.
### `warn-schema-alteration`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `ALTER TABLE` ifadeleri çalıştırmadan önce onaylamaya talimat verir.
+**Varsayılan:** Claude'a `ALTER TABLE` deyimlerini çalıştırmadan önce onay alması talimatı verir.
Parametre yok.
@@ -379,18 +379,18 @@ Parametre yok.
## Uyarılar
-Agentlere potansiyel olarak riskli ama yıkıcı olmayan işlemlerden önce ekstra bağlam verin.
+Aracılara potansiyel olarak riskli ancak yıkıcı olmayan işlemler öncesinde ekstra bağlam sağla.
### `warn-large-file-write`
**Olay:** PreToolUse (Write)
-**Varsayılan:** Claude'u 1024 KB'tan büyük dosyalar yazmadan önce onaylamaya talimat verir.
+**Varsayılan:** Claude'a 1024 KB'tan daha büyük dosya yazmadan önce onay alması talimatı verir.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `thresholdKb` | `number` | `1024` | Uyarı verilen dosya boyutu eşiği (kilobayt cinsinden). |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `thresholdKb` | `number` | `1024` | Dosya boyutu eşiği, kilobayt cinsinden; bu değerin üzerinde bir uyarı verilir. |
**Örnek:**
@@ -405,7 +405,7 @@ Agentlere potansiyel olarak riskli ama yıkıcı olmayan işlemlerden önce ekst
```
-Hook işleyicisi yükleri için 1 MB stdin sınırını uygular. Bu ilkeyi küçük içerikle test etmek için `thresholdKb` değerini 1024'ün çok altında bir değere ayarlayın.
+Kanca işleyicisi yükümlülükler için 1 MB stdin sınırını uygular. Bu ilkeyi küçük içerikle test etmek için `thresholdKb`'yi 1024'ten çok daha düşük bir değere ayarlayın.
---
@@ -413,7 +413,7 @@ Hook işleyicisi yükleri için 1 MB stdin sınırını uygular. Bu ilkeyi küç
### `warn-package-publish`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `npm publish` çalıştırmadan önce onaylamaya talimat verir.
+**Varsayılan:** Claude'a `npm publish` çalıştırmadan önce onay alması talimatı verir.
Parametre yok.
@@ -422,7 +422,7 @@ Parametre yok.
### `warn-background-process`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `nohup`, `&`, `disown` veya `screen` aracılığıyla arka plan işlemleri başlatırken dikkatli olmaya talimat verir.
+**Varsayılan:** Claude'a `nohup`, `&`, `disown` veya `screen` aracılığıyla arka plan işlemleri başlatırken dikkatli olmak talimatı verir.
Parametre yok.
@@ -431,7 +431,7 @@ Parametre yok.
### `warn-global-package-install`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Claude'u `npm install -g`, `yarn global add` veya sanal ortam olmadan `pip install` çalıştırmadan önce onaylamaya talimat verir.
+**Varsayılan:** Claude'a `npm install -g`, `yarn global add` veya sanal ortam olmayan `pip install` çalıştırmadan önce onay alması talimatı verir.
Parametre yok.
@@ -439,23 +439,23 @@ Parametre yok.
## Paket yöneticileri
-Agentin hangi paket yöneticilerini kullanmasına izin verildiğini uygula.
+Aracının kullanmasına izin verilen paket yöneticilerini zorunlu kıl.
### `prefer-package-manager`
**Olay:** PreToolUse (Bash)
-**Varsayılan:** Devre dışı. Etkinleştirildiğinde, `allowed` listesinde olmayan herhangi bir paket yöneticisi komutunu engeller ve Claude'a komutu izin verilen bir yöneticiyi kullanarak yeniden yazmasını söyler.
+**Varsayılan:** Devre dışı. Etkinleştirildiğinde, `allowed` listesinde olmayan paket yöneticisi komutunu engeller ve Claude'a komutu izin verilen bir yöneticiyi kullanarak yeniden yazması talimatı verir.
Algılar: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `allowed` | string[] | `[]` | İzin verilen paket yöneticisi adları. Bu listedeki olmayan algılanan herhangi bir yönetici engellenir. Boş olduğunda, ilke hiçbir işlev görmez. |
-| `blocked` | string[] | `[]` | Yerleşik listenin ötesinde engellenecek ek yönetici adları (örneğin `['pdm', 'pipx']`). |
+|-----------|-----|-----------|---------|
+| `allowed` | string[] | `[]` | İzin verilen paket yöneticisi adları. Bu listede olmayan herhangi bir algılanan yönetici engellenir. Boş olduğunda, ilke işlem yapmaz. |
+| `blocked` | string[] | `[]` | Yerleşik listenin ötesinde engellenecek ek yönetici adları (örn. `['pdm', 'pipx']`). |
-Yerleşik engel listesi şunları kapsar: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Bu listedeki olmayan yöneticiler için `blocked` kullanın.
+Yerleşik engel listesi şunları kapsar: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Bu listede yer almayan yöneticileri eklemek için `blocked` kullan.
-**Örnek yapılandırma:**
+**Örnek konfigürasyon:**
```json
{
@@ -469,18 +469,18 @@ Yerleşik engel listesi şunları kapsar: pip, pip3, npm, npx, yarn, pnpm, pnpx,
}
```
-Bu yapılandırmayla, `pip install flask` ve `pdm install flask` her ikisi de reddedilir ve Claude'a bunun yerine `uv` veya `bun` kullanmasını söyleyen bir mesaj alırız. `uv pip install flask` gibi komutlar izin verilir çünkü `uv` allowlist'te ve ilk olarak kontrol edilir.
+Bu konfigürasyonda `pip install flask` ve `pdm install flask` her ikisi de Claude'a bunun yerine `uv` veya `bun` kullanması söyleyen bir mesajla reddedilir. `uv` izin listesinde olduğu ve ilk kontrol edilen olduğu için `uv pip install flask` gibi komutlar izin verilir.
---
## AI davranışı
-Agentlerin sıkışıp kalması veya beklenmedik şekilde davranması durumlarını tespit edin.
+Aracıların takılı kaldığını veya beklenmedik şekilde davrandığını algıla.
### `warn-repeated-tool-calls`
**Olay:** PreToolUse (tüm araçlar)
-**Varsayılan:** Aynı araç 3+ kez aynı parametrelerle çağrıldığında Claude'u yeniden düşünmeye talimat verir — agentin bir döngüye takılı olduğunun yaygın bir işareti.
+**Varsayılan:** Claude'a aynı aracı aynı parametrelerle 3 veya daha fazla kez çağırdığında - aracının bir döngüde takılı olduğunun yaygın işareti - düşünmesi gerektiğini talimat verir.
Parametre yok.
@@ -488,14 +488,14 @@ Parametre yok.
## İş akışı
-Disiplinli bir oturum sonu iş akışını uygula. Bu ilkeler **Stop** olayında tetiklenir ve Claude'un her koşul yerine getirilene kadar duramadığını reddeder. Bunlar doğal bir bağımlılık zinciri izler: commit → push → PR → CI. Bir ilke reddederse, zincirdeki sonraki ilkeler atlanır (deny kısa devre yapılır).
+Disiplinli bir oturum sonu iş akışını zorunlu kıl. Bu ilkeler **Stop** olayında tetiklenir ve her koşul karşılanana kadar Claude'un durmasını engeller. Doğal bir bağımlılık zinciri izlerler: commit → push → PR → CI. Bir ilke reddederse, zincirdeki sonraki ilkeler atlanır (deny kısa devreler).
-Tüm iş akışı ilkeleri **fail-open** modundadır: gerekli araç mevcut değilse (örneğin `gh` yüklü değil, git remote yok), ilke denetimin neden atlandığını açıklayan bilgilendirici bir mesajla izin verir.
+Tüm iş akışı ilkeleri **başarısız-açık**: gerekli araç mevcut değilse (örn. `gh` kurulu değil, git remote yok), ilke neden kontrolün atlandığını açıklayan bir bilgilendirme mesajı ile izin verir.
### `require-commit-before-stop`
**Olay:** Stop
-**Varsayılan:** İşlenmemiş değişiklikler (değiştirilmiş, staged veya izlenmeyen dosyalar) olduğunda durmasını reddeder. Çalışma dizini temiz olduğunda bilgilendirici bir mesaj döndürür.
+**Varsayılan:** Taahhüt edilmemiş değişiklikler olduğunda (değiştirilen, sahneye alınan veya izlenmemiş dosyalar) durmasını engeller. Çalışma dizini temiz olduğunda bilgilendirici bir mesaj döndürür.
Parametre yok.
@@ -504,13 +504,13 @@ Parametre yok.
### `require-push-before-stop`
**Olay:** Stop
-**Varsayılan:** Push yapılmamış taahhütler olduğunda veya geçerli dalın uzak izleme dalı olmadığında durmasını reddeder. Gerekirse izleme dalı oluşturmak için `git push -u` önerir. Hiçbir remote yapılandırılmadıysa fail-open olur.
+**Varsayılan:** Gönderilmemiş commits olduğunda veya mevcut dal hiçbir uzak izleme dalına sahip olmadığında durmasını engeller. Gerekirse izleme dalı oluşturmak için `git push -u` önerir. Hiçbir uzak yapılandırılmadıysa açık başarısız olur.
**Parametreler:**
-| Parametre | Tür | Varsayılan | Açıklama |
-|-----------|-----|-----------|----------|
-| `remote` | `string` | `"origin"` | Push yapılacak remote adı. |
+| Param | Tür | Varsayılan | Açıklama |
+|-------|-----|-----------|---------|
+| `remote` | `string` | `"origin"` | Push yapılacak uzak adı. |
**Örnek:**
@@ -529,14 +529,14 @@ Parametre yok.
### `require-pr-before-stop`
**Olay:** Stop
-**Varsayılan:** Geçerli dal için pull request yoksa veya mevcut PR kapalı/merge edilmişse durmasını reddeder. Claude'a `gh pr create` ile PR oluşturmasını talimat verir.
+**Varsayılan:** Mevcut dal için hiçbir pull request yoksa veya mevcut PR kapalı/birleştirilmişse durmasını engeller. Claude'a `gh pr create` ile bir PR oluşturması talimatı verir.
Parametre yok.
-Bu ilke [GitHub CLI](https://cli.github.com/) (`gh`) yüklü ve kimlik doğrulaması yapılmış olmasını gerektirir.
-`gh auth login` komutunu pull request'lere okuma erişimi için `repo` kapsamına sahip kişisel erişim belirteci ile çalıştırın.
-`gh` yüklü değilse veya kimlik doğrulaması yapılmadıysa, ilke fail-open olur ve nedeni Claude'a bildirir.
+Bu ilke, [GitHub CLI](https://cli.github.com/) (`gh`) kurulu ve kimlik doğrulamasından geçmiş olmasını gerektirir.
+`gh auth login` komutunu, pull request'leri okumak için `repo` kapsamı olan bir kişisel erişim tokeni ile çalıştırın.
+`gh` kurulu değilse veya kimlik doğrulaması yapılmamışsa, ilke açık başarısız olur ve nedeni Claude'a raporlar.
---
@@ -544,14 +544,14 @@ Bu ilke [GitHub CLI](https://cli.github.com/) (`gh`) yüklü ve kimlik doğrulam
### `require-ci-green-before-stop`
**Olay:** Stop
-**Varsayılan:** Geçerli dal üzerinde CI denetimi başarısız olduğunda veya çalışmaya devam ettiğinde durmasını reddeder. Hem GitHub Actions iş akışı çalıştırmalarını hem de üçüncü taraf bot denetimlerini kontrol eder (örneğin CodeRabbit, SonarCloud, Codecov). `skipped` sonuçlarını başarı olarak değerlendirir. Tüm denetimler geçtiğinde bilgilendirici bir mesaj döndürür.
+**Varsayılan:** Mevcut dal üzerinde CI kontrolleri başarısız olduğunda veya hâlâ çalışırken durmasını engeller. GitHub Actions iş akışı çalıştırmaları ve üçüncü taraf bot kontrolleri (örn. CodeRabbit, SonarCloud, Codecov) ikisini de kontrol eder. `skipped` ve `cancelled` sonuçlarını başarı olarak değerlendirir. Tüm kontroller geçtiğinde bilgilendirici bir mesaj döndürür.
Parametre yok.
-Bu ilke [GitHub CLI](https://cli.github.com/) (`gh`) yüklü ve kimlik doğrulaması yapılmış olmasını gerektirir.
-`gh auth login` komutunu Actions iş akışı çalıştırmalarına ve Checks API'ye okuma erişimi için `repo` kapsamına sahip kişisel erişim belirteci ile çalıştırın.
-`gh` yüklü değilse veya kimlik doğrulaması yapılmadıysa, ilke fail-open olur ve nedeni Claude'a bildirir.
+Bu ilke, [GitHub CLI](https://cli.github.com/) (`gh`) kurulu ve kimlik doğrulamasından geçmiş olmasını gerektirir.
+`gh auth login` komutunu, Actions iş akışı çalıştırmalarına ve Checks API'sine okuma erişimi için `repo` kapsamı olan bir kişisel erişim tokeni ile çalıştırın.
+`gh` kurulu değilse veya kimlik doğrulaması yapılmamışsa, ilke açık başarısız olur ve nedeni Claude'a raporlar.
---
@@ -560,7 +560,7 @@ Bu ilke [GitHub CLI](https://cli.github.com/) (`gh`) yüklü ve kimlik doğrulam
## Bireysel ilkeleri devre dışı bırakma
-Yapılandırmanızdaki `enabledPolicies` öğesinden belirli bir ilkeyi kaldırın veya pano'nun İlkeler sekmesinde devre dışı bırakın.
+Konfigürasyondaki `enabledPolicies`'den belirli bir ilkeyi kaldırın veya gösterge panosunun Policies sekmesinde kapatın.
```json
{
@@ -571,4 +571,4 @@ Yapılandırmanızdaki `enabledPolicies` öğesinden belirli bir ilkeyi kaldır
}
```
-`enabledPolicies` listesinde yer almayan ilkeler, `policyParams` girişleri olsa bile çalışmaz.
\ No newline at end of file
+`enabledPolicies` içinde listelenmemiş ilkeler, `policyParams` girdileri olsa bile çalışmaz.
\ No newline at end of file
diff --git a/docs/vi/built-in-policies.mdx b/docs/vi/built-in-policies.mdx
index 2d179a1c..61b76cbd 100644
--- a/docs/vi/built-in-policies.mdx
+++ b/docs/vi/built-in-policies.mdx
@@ -1,22 +1,21 @@
---
----
-title: Chính sách tích hợp sẵn
-description: "30 chính sách tích hợp sẵn giúp bắt các chế độ lỗi thông thường của agent"
+title: Các chính sách tích hợp sẵn
+description: "Tất cả 30 chính sách tích hợp sẵn để bắt các chế độ lỗi phổ biến của agent"
icon: shield
---
-failproofai được cung cấp với 30 chính sách tích hợp sẵn giúp bắt các chế độ lỗi thông thường của agent. Mỗi chính sách được kích hoạt trên một loại sự kiện hook cụ thể và tên công cụ. Chín chính sách chấp nhận các tham số cho phép bạn điều chỉnh hành vi của chúng mà không cần viết mã. Bốn chính sách quy trình làm việc thực thi đường ống commit → push → PR → CI trước khi Claude dừng lại.
+failproofai đi kèm với 30 chính sách tích hợp sẵn để bắt các chế độ lỗi phổ biến của agent. Mỗi chính sách kích hoạt trên một loại sự kiện hook cụ thể và tên công cụ. Chín chính sách chấp nhận các tham số cho phép bạn tinh chỉnh hành vi của chúng mà không cần viết mã. Bốn chính sách quy trình làm việc thực thi đường dẫn commit → push → PR → CI trước khi Claude dừng lại.
---
## Tổng quan
-Chính sách được nhóm thành các danh mục:
+Các chính sách được nhóm thành các danh mục:
| Danh mục | Chính sách | Loại hook |
|----------|----------|-----------|
-| [Lệnh nguy hiểm](#lệnh-nguy-hiểm) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
-| [Bí mật (bộ làm sạch)](#bí-mật-bộ-làm-sạch) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
+| [Các lệnh nguy hiểm](#các-lệnh-nguy-hiểm) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
+| [Bí mật (các công cụ khử trùng)](#bí-mật-các-công-cụ-khử-trùng) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [Môi trường](#môi-trường) | block-env-files, protect-env-vars | PreToolUse |
| [Truy cập tệp](#truy-cập-tệp) | block-read-outside-cwd, block-secrets-write | PreToolUse |
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
@@ -25,35 +24,35 @@ Chính sách được nhóm thành các danh mục:
| [Trình quản lý gói](#trình-quản-lý-gói) | prefer-package-manager | PreToolUse |
| [Quy trình làm việc](#quy-trình-làm-việc) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
-- **`block-`** — dừng agent không được tiếp tục.
-- **`warn-`** — cung cấp cho agent ngữ cảnh bổ sung để nó có thể tự sửa.
-- **`sanitize-`** — loại bỏ dữ liệu nhạy cảm từ đầu ra công cụ trước khi agent nhìn thấy.
+- **`block-`** — dừng agent không cho tiếp tục.
+- **`warn-`** — cung cấp cho agent ngữ cảnh bổ sung để nó có thể tự sửa chữa.
+- **`sanitize-`** — xoá các dữ liệu nhạy cảm từ đầu ra công cụ trước khi agent nhìn thấy.
- **`require-`** — chặn sự kiện Stop cho đến khi các điều kiện được đáp ứng.
---
-Mỗi chính sách hỗ trợ một trường `hint` tùy chọn trong `policyParams`. Hint được thêm vào thông báo deny hoặc instruct mà Claude nhìn thấy, cung cấp hướng dẫn có thể hành động mà không cần sửa đổi mã chính sách. Hoạt động với chính sách tích hợp sẵn, tùy chỉnh và quy ước. Xem [Configuration → hint](/vi/configuration#hint-cross-cutting) để biết chi tiết.
+Mỗi chính sách hỗ trợ một trường `hint` tùy chọn trong `policyParams`. Hint được thêm vào thông báo deny hoặc instruct mà Claude nhìn thấy, cung cấp hướng dẫn hữu ích mà không cần sửa đổi mã chính sách. Hoạt động với các chính sách tích hợp sẵn, tùy chỉnh và quy ước. Xem [Configuration → hint](/vi/configuration#hint-cross-cutting) để biết chi tiết.
---
-## Lệnh nguy hiểm
+## Các lệnh nguy hiểm
-Ngăn chặn agent chạy các hoạt động khó hoàn tác hoặc có thể làm hại hệ thống chủ.
+Ngăn chặn agent chạy các hoạt động khó hoàn tác hoặc có thể làm hỏng hệ thống chủ.
### `block-sudo`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Từ chối bất kỳ lệnh `sudo` nào.
+**Mặc định:** Từ chối mọi lệnh `sudo`.
-Chặn các lời gọi bao gồm từ khóa `sudo`. Khớp mẫu được thực hiện trên các token lệnh được phân tích, không phải chuỗi thô, để ngăn chặn vòng qua injection toán tử shell.
+Chặn các lần gọi bao gồm từ khóa `sudo`. Khớp mẫu được thực hiện trên các token lệnh đã phân tích cú pháp, không phải chuỗi thô, để ngăn chặn vòng qua tiêm toán tử shell.
**Tham số:**
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | Tiền tố lệnh chính xác được phép. Mỗi mục được khớp với các token argv được phân tích. |
+| `allowPatterns` | `string[]` | `[]` | Tiền tố lệnh chính xác được phép. Mỗi mục được so khớp với các token argv đã phân tích cú pháp. |
**Ví dụ:**
@@ -67,10 +66,10 @@ Chặn các lời gọi bao gồm từ khóa `sudo`. Khớp mẫu được thự
}
```
-Với cấu hình này, `sudo systemctl status nginx` được phép, nhưng `sudo rm /etc/hosts` bị từ chối.
+Với cấu hình này, `sudo systemctl status nginx` được cho phép, nhưng `sudo rm /etc/hosts` bị từ chối.
-Mẫu được khớp với các token được phân tích, không phải chuỗi lệnh thô. Điều này ngăn chặn vòng qua các toán tử shell được nối thêm (ví dụ: `sudo systemctl status x; rm -rf /` không khớp `sudo systemctl status *`).
+Các mẫu được so khớp với các token đã phân tích cú pháp, không phải chuỗi lệnh thô. Điều này ngăn chặn vòng qua các toán tử shell được thêm vào (ví dụ: `sudo systemctl status x; rm -rf /` không khớp với `sudo systemctl status *`).
---
@@ -84,7 +83,7 @@ Mẫu được khớp với các token được phân tích, không phải chu
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Đường dẫn an toàn để xóa đệ quy (ví dụ: `/tmp`). |
+| `allowPaths` | `string[]` | `[]` | Các đường dẫn an toàn để xóa đệ quy (ví dụ: `/tmp`). |
**Ví dụ:**
@@ -118,14 +117,14 @@ Không có tham số.
---
-## Bí mật (bộ làm sạch)
+## Bí mật (các công cụ khử trùng)
-Ngăn chặn agent rò rỉ thông tin xác thực vào ngữ cảnh hoặc đầu ra của chúng. Chính sách bộ làm sạch được kích hoạt trên các sự kiện **PostToolUse**. Khi Claude chạy lệnh Bash, đọc tệp hoặc gọi bất kỳ công cụ nào, những chính sách này kiểm tra đầu ra trước khi nó được trả lại Claude. Nếu phát hiện mẫu bí mật, chính sách sẽ trả về quyết định deny ngăn chặn đầu ra không được chuyển lại.
+Ngăn chặn agent rò rỉ thông tin xác thực vào ngữ cảnh hoặc đầu ra của chúng. Các chính sách khử trùng kích hoạt trên các sự kiện **PostToolUse**. Khi Claude chạy lệnh Bash, đọc tệp hoặc gọi bất kỳ công cụ nào, các chính sách này kiểm tra đầu ra trước khi nó được trả về cho Claude. Nếu phát hiện mẫu bí mật, chính sách trả về quyết định deny ngăn chặn đầu ra được truyền lại.
### `sanitize-jwt`
-**Sự kiện:** PostToolUse (tất cả công cụ)
-**Mặc định:** Redact các token JWT (ba segment base64url được phân tách bằng `.`).
+**Sự kiện:** PostToolUse (tất cả các công cụ)
+**Mặc định:** Che đi các token JWT (ba phân đoạn base64url được phân tách bằng `.`).
Không có tham số.
@@ -133,14 +132,14 @@ Không có tham số.
### `sanitize-api-keys`
-**Sự kiện:** PostToolUse (tất cả công cụ)
-**Mặc định:** Redact các định dạng khóa API thông thường: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), khóa truy cập AWS (`AKIA`), khóa Stripe (`sk_live_`, `sk_test_`) và khóa Google API (`AIza`).
+**Sự kiện:** PostToolUse (tất cả các công cụ)
+**Mặc định:** Che đi các định dạng khóa API phổ biến: Anthropic (`sk-ant-`), OpenAI (`sk-`), GitHub PATs (`ghp_`), Khóa truy cập AWS (`AKIA`), Khóa Stripe (`sk_live_`, `sk_test_`) và Khóa API Google (`AIza`).
**Tham số:**
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Các mẫu regex bổ sung được coi là bí mật. |
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | Các mẫu regex bổ sung để coi như bí mật. |
**Ví dụ:**
@@ -161,8 +160,8 @@ Không có tham số.
### `sanitize-connection-strings`
-**Sự kiện:** PostToolUse (tất cả công cụ)
-**Mặc định:** Redact các chuỗi kết nối cơ sở dữ liệu chứa thông tin xác thực được nhúng (ví dụ: `postgresql://user:password@host/db`).
+**Sự kiện:** PostToolUse (tất cả các công cụ)
+**Mặc định:** Che đi các chuỗi kết nối cơ sở dữ liệu chứa thông tin xác thực nhúng (ví dụ: `postgresql://user:password@host/db`).
Không có tham số.
@@ -170,8 +169,8 @@ Không có tham số.
### `sanitize-private-key-content`
-**Sự kiện:** PostToolUse (tất cả công cụ)
-**Mặc định:** Redact các khối PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, v.v.).
+**Sự kiện:** PostToolUse (tất cả các công cụ)
+**Mặc định:** Che đi các khối PEM (`-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----`, v.v.).
Không có tham số.
@@ -179,8 +178,8 @@ Không có tham số.
### `sanitize-bearer-tokens`
-**Sự kiện:** PostToolUse (tất cả công cụ)
-**Mặc định:** Redact các header `Authorization: Bearer ` trong đó token có 20 ký tự trở lên.
+**Sự kiện:** PostToolUse (tất cả các công cụ)
+**Mặc định:** Che đi tiêu đề `Authorization: Bearer ` trong đó token có 20 ký tự trở lên.
Không có tham số.
@@ -188,14 +187,14 @@ Không có tham số.
## Môi trường
-Bảo vệ cấu hình môi trường nhạy cảm khỏi bị agent đọc hoặc tiếp xúc.
+Bảo vệ cấu hình môi trường nhạy cảm không bị agent đọc hoặc lộ ra.
### `block-env-files`
**Sự kiện:** PreToolUse (Bash, Read)
-**Mặc định:** Từ chối đọc các tệp `.env` thông qua `cat .env`, gọi công cụ Read với `.env` làm đường dẫn tệp, v.v.
+**Mặc định:** Từ chối đọc các tệp `.env` qua `cat .env`, các lệnh gọi công cụ Read với `.env` là đường dẫn tệp, v.v.
-Không chặn `.envrc` hoặc các tệp liên quan môi trường khác - chỉ các tệp được đặt tên chính xác `.env`.
+Không chặn `.envrc` hoặc các tệp liên quan môi trường khác - chỉ các tệp có tên chính xác là `.env`.
Không có tham số.
@@ -212,7 +211,7 @@ Không có tham số.
## Truy cập tệp
-Giữ agent hoạt động bên trong ranh giới dự án và xa khỏi các tệp nhạy cảm.
+Giữ cho agent hoạt động trong ranh giới dự án và tránh xa các tệp nhạy cảm.
### `block-read-outside-cwd`
@@ -223,7 +222,7 @@ Giữ agent hoạt động bên trong ranh giới dự án và xa khỏi các t
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | Tiền tố đường dẫn tuyệt đối được phép ngay cả khi bên ngoài cwd. |
+| `allowPaths` | `string[]` | `[]` | Các tiền tố đường dẫn tuyệt đối được phép ngay cả khi bên ngoài cwd. |
**Ví dụ:**
@@ -242,7 +241,7 @@ Giữ agent hoạt động bên trong ranh giới dự án và xa khỏi các t
### `block-secrets-write`
**Sự kiện:** PreToolUse (Write, Edit)
-**Mặc định:** Từ chối ghi vào các tệp thường được sử dụng cho khóa riêng và chứng chỉ: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
+**Mặc định:** Từ chối ghi vào các tệp thường được sử dụng cho khóa riêng tư và chứng chỉ: `id_rsa`, `id_ed25519`, `*.key`, `*.pem`, `*.p12`, `*.pfx`.
**Tham số:**
@@ -266,7 +265,7 @@ Giữ agent hoạt động bên trong ranh giới dự án và xa khỏi các t
## Git
-Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nhánh khó hoàn tác.
+Ngăn chặn các push, force-push và lỗi nhánh đột ngột khó hoàn tác.
### `block-push-master`
@@ -277,7 +276,7 @@ Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nh
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể được đẩy trực tiếp. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể push trực tiếp. |
**Ví dụ:**
@@ -292,7 +291,7 @@ Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nh
```
-Để cho phép đẩy đến tất cả các nhánh (có hiệu lực vô hiệu hóa chính sách này mà không xóa nó khỏi `enabledPolicies`), hãy đặt `protectedBranches: []`.
+Để cho phép push tới tất cả các nhánh (thực tế là vô hiệu hóa chính sách này mà không cần xóa khỏi `enabledPolicies`), hãy đặt `protectedBranches: []`.
---
@@ -300,13 +299,13 @@ Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nh
### `block-work-on-main`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Từ chối kiểm tra trực tiếp các nhánh `main` hoặc `master`.
+**Mặc định:** Từ chối kiểm tra các nhánh `main` hoặc `master` trực tiếp.
**Tham số:**
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể được kiểm tra trực tiếp. |
+| `protectedBranches` | `string[]` | `["main", "master"]` | Tên nhánh không thể kiểm tra trực tiếp. |
---
@@ -315,7 +314,7 @@ Ngăn chặn các đẩy (push) không cố ý, force-push và các sai lầm nh
**Sự kiện:** PreToolUse (Bash)
**Mặc định:** Từ chối `git push --force` và `git push -f`.
-Không có tham số cụ thể chính sách. Sử dụng [`hint`](/vi/configuration#hint-cross-cutting) xuyên suốt để gợi ý các lựa chọn thay thế:
+Không có tham số cụ thể chính sách. Sử dụng [`hint`](/vi/configuration#hint-cross-cutting) chuyên toàn để gợi ý các lựa chọn thay thế:
```json
{
@@ -350,7 +349,7 @@ Không có tham số.
### `warn-all-files-staged`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Hướng dẫn Claude xem xét những gì nó đang staging khi chạy `git add -A` hoặc `git add .`. Không chặn lệnh.
+**Mặc định:** Hướng dẫn Claude xem xét những gì nó đang sử dụng khi chạy `git add -A` hoặc `git add .`. Không chặn lệnh.
Không có tham số.
@@ -372,7 +371,7 @@ Không có tham số.
### `warn-schema-alteration`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Hướng dẫn Claude xác nhận trước khi chạy các lệnh `ALTER TABLE`.
+**Mặc định:** Hướng dẫn Claude xác nhận trước khi chạy các câu lệnh `ALTER TABLE`.
Không có tham số.
@@ -380,18 +379,18 @@ Không có tham số.
## Cảnh báo
-Cung cấp cho agent ngữ cảnh bổ sung trước các hoạt động có rủi ro nhưng không phá hủy.
+Cung cấp cho agent ngữ cảnh bổ sung trước các hoạt động có rủi ro nhưng không tàn phá.
### `warn-large-file-write`
**Sự kiện:** PreToolUse (Write)
-**Mặc định:** Hướng dẫn Claude xác nhận trước khi viết các tệp lớn hơn 1024 KB.
+**Mặc định:** Hướng dẫn Claude xác nhận trước khi ghi các tệp lớn hơn 1024 KB.
**Tham số:**
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `thresholdKb` | `number` | `1024` | Ngưỡng kích thước tệp tính bằng kilobyte mà trên đó cảnh báo được phát hành. |
+| `thresholdKb` | `number` | `1024` | Ngưỡng kích thước tệp tính bằng kilobyte trên đó cảnh báo được cấp. |
**Ví dụ:**
@@ -406,7 +405,7 @@ Cung cấp cho agent ngữ cảnh bổ sung trước các hoạt động có r
```
-Trình xử lý hook thực thi giới hạn 1 MB stdin trên tải trọng. Để kiểm tra chính sách này với nội dung nhỏ, hãy đặt `thresholdKb` thành giá trị nằm dưới 1024.
+Trình xử lý hook thực thi giới hạn stdin 1 MB trên các tải trọng. Để kiểm tra chính sách này với nội dung nhỏ, hãy đặt `thresholdKb` thành giá trị tốt dưới 1024.
---
@@ -423,7 +422,7 @@ Không có tham số.
### `warn-background-process`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Hướng dẫn Claude cẩn thận khi khởi chạy các quy trình nền qua `nohup`, `&`, `disown` hoặc `screen`.
+**Mặc định:** Hướng dẫn Claude cẩn thận khi khởi chạy các quá trình nền qua `nohup`, `&`, `disown` hoặc `screen`.
Không có tham số.
@@ -445,18 +444,18 @@ Thực thi trình quản lý gói nào được agent phép sử dụng.
### `prefer-package-manager`
**Sự kiện:** PreToolUse (Bash)
-**Mặc định:** Bị vô hiệu hóa. Khi được bật, chặn bất kỳ lệnh trình quản lý gói nào không có trong danh sách `allowed` và yêu cầu Claude viết lại lệnh bằng trình quản lý được phép.
+**Mặc định:** Vô hiệu hóa. Khi được bật, chặn bất kỳ lệnh trình quản lý gói nào không có trong danh sách `allowed` và hướng dẫn Claude viết lại lệnh bằng trình quản lý được phép.
Phát hiện: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
| Tham số | Loại | Mặc định | Mô tả |
|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | Tên trình quản lý gói được phép. Bất kỳ trình quản lý được phát hiện nào không có trong danh sách này sẽ bị chặn. Khi trống, chính sách là no-op. |
-| `blocked` | string[] | `[]` | Tên trình quản lý bổ sung để chặn ngoài danh sách được xây dựng sẵn (ví dụ: `['pdm', 'pipx']`). |
+| `allowed` | string[] | `[]` | Tên trình quản lý gói được phép. Bất kỳ trình quản lý được phát hiện nào không có trong danh sách này đều bị chặn. Khi trống, chính sách là không hoạt động. |
+| `blocked` | string[] | `[]` | Tên trình quản lý bổ sung để chặn ngoài danh sách tích hợp sẵn (ví dụ: `['pdm', 'pipx']`). |
Danh sách chặn tích hợp sẵn bao gồm: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. Sử dụng `blocked` để thêm các trình quản lý không có trong danh sách này.
-**Cấu hình ví dụ:**
+**Ví dụ cấu hình:**
```json
{
@@ -470,18 +469,18 @@ Danh sách chặn tích hợp sẵn bao gồm: pip, pip3, npm, npx, yarn, pnpm,
}
```
-Với cấu hình này, `pip install flask` và `pdm install flask` đều bị từ chối với thông báo yêu cầu Claude sử dụng `uv` hoặc `bun` thay thế. Các lệnh như `uv pip install flask` được phép vì `uv` có trong danh sách cho phép và được kiểm tra trước tiên.
+Với cấu hình này, `pip install flask` và `pdm install flask` đều bị từ chối với thông báo hướng dẫn Claude sử dụng `uv` hoặc `bun`. Các lệnh như `uv pip install flask` được cho phép vì `uv` có trong danh sách cho phép và được kiểm tra trước tiên.
---
## Hành vi AI
-Phát hiện khi agent bị mắc kẹt hoặc hành xử bất thường.
+Phát hiện khi agent bị kẹt hoặc có hành vi bất thường.
### `warn-repeated-tool-calls`
-**Sự kiện:** PreToolUse (tất cả công cụ)
-**Mặc định:** Hướng dẫn Claude cân nhắc lại khi cùng một công cụ được gọi 3 lần trở lên với các tham số giống nhau - dấu hiệu thông thường cho thấy agent bị mắc kẹt trong một vòng lặp.
+**Sự kiện:** PreToolUse (tất cả các công cụ)
+**Mặc định:** Hướng dẫn Claude cân nhắc kỹ khi cùng một công cụ được gọi 3 lần trở lên với các tham số giống hệt - một dấu hiệu phổ biến của agent bị kẹt trong vòng lặp.
Không có tham số.
@@ -489,14 +488,14 @@ Không có tham số.
## Quy trình làm việc
-Thực thi quy trình làm việc kết thúc phiên làm việc theo kỷ luật. Những chính sách này được kích hoạt trên sự kiện **Stop** và từ chối Claude dừng lại cho đến khi mỗi điều kiện được đáp ứng. Chúng tuân theo một chuỗi phụ thuộc tự nhiên: commit → push → PR → CI. Nếu chính sách từ chối, các chính sách sau trong chuỗi sẽ bị bỏ qua (deny rút ngắn).
+Thực thi quy trình làm việc kỷ luật ở cuối phiên. Các chính sách này kích hoạt trên sự kiện **Stop** và từ chối Claude dừng lại cho đến khi mỗi điều kiện được đáp ứng. Chúng tuân theo chuỗi phụ thuộc tự nhiên: commit → push → PR → CI. Nếu chính sách từ chối, các chính sách sau đó trong chuỗi sẽ bị bỏ qua (deny ngắn mạch).
-Tất cả chính sách quy trình làm việc đều **fail-open**: nếu công cụ được yêu cầu không khả dụng (ví dụ: `gh` không được cài đặt, không có git remote), chính sách cho phép với thông báo thông tin giải thích tại sao kiểm tra bị bỏ qua.
+Tất cả các chính sách quy trình làm việc **fail-open**: nếu công cụ được yêu cầu không có sẵn (ví dụ: `gh` chưa cài đặt, không có git remote), chính sách cho phép với thông báo thông tin giải thích lý do kiểm tra bị bỏ qua.
### `require-commit-before-stop`
**Sự kiện:** Stop
-**Mặc định:** Từ chối dừng khi có các thay đổi chưa được commit (các tệp đã sửa đổi, được staging hoặc không được theo dõi). Trả về thông báo thông tin khi thư mục làm việc sạch.
+**Mặc định:** Từ chối dừng khi có các thay đổi chưa được commit (các tệp đã sửa đổi, đã chuẩn bị hoặc chưa theo dõi). Trả về thông báo thông tin khi thư mục làm việc sạch sẽ.
Không có tham số.
@@ -505,13 +504,13 @@ Không có tham số.
### `require-push-before-stop`
**Sự kiện:** Stop
-**Mặc định:** Từ chối dừng khi có các commit chưa được đẩy hoặc khi nhánh hiện tại không có nhánh theo dõi từ xa. Gợi ý `git push -u` để tạo một nhánh theo dõi nếu cần. Fails open nếu không có remote được cấu hình.
+**Mặc định:** Từ chối dừng khi có các commit chưa được push hoặc khi nhánh hiện tại không có nhánh remote theo dõi. Gợi ý `git push -u` để tạo nhánh theo dõi nếu cần. Fails open nếu không có remote được cấu hình.
**Tham số:**
| Tham số | Loại | Mặc định | Mô tả |
|-------|------|---------|-------------|
-| `remote` | `string` | `"origin"` | Tên remote để đẩy tới. |
+| `remote` | `string` | `"origin"` | Tên remote để push tới. |
**Ví dụ:**
@@ -530,14 +529,13 @@ Không có tham số.
### `require-pr-before-stop`
**Sự kiện:** Stop
-**Mặc định:** Từ chối dừng khi không có pull request nào tồn tại cho nhánh hiện tại hoặc khi PR hiện có bị đóng/hợp nhất. Hướng dẫn Claude tạo một PR bằng `gh pr create`.
+**Mặc định:** Từ chối dừng khi không có pull request cho nhánh hiện tại hoặc khi PR hiện có bị đóng/hợp nhất. Hướng dẫn Claude tạo PR bằng `gh pr create`.
Không có tham số.
Chính sách này yêu cầu [GitHub CLI](https://cli.github.com/) (`gh`) được cài đặt và xác thực.
-Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc đến
-các yêu cầu kéo. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách fails open và báo cáo lý do cho Claude.
+Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc các yêu cầu kéo. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách sẽ fail open và báo cáo lý do cho Claude.
---
@@ -545,14 +543,13 @@ các yêu cầu kéo. Nếu `gh` không được cài đặt hoặc không đư
### `require-ci-green-before-stop`
**Sự kiện:** Stop
-**Mặc định:** Từ chối dừng khi các kiểm tra CI đang thất bại hoặc vẫn đang chạy trên nhánh hiện tại. Kiểm tra cả các lần chạy quy trình làm việc GitHub Actions và các kiểm tra bot của bên thứ ba (ví dụ: CodeRabbit, SonarCloud, Codecov). Coi kết luận `skipped` là thành công. Trả về thông báo thông tin khi tất cả các kiểm tra vượt qua.
+**Mặc định:** Từ chối dừng khi các kiểm tra CI đang thất bại hoặc vẫn đang chạy trên nhánh hiện tại. Kiểm tra cả chạy quy trình làm việc GitHub Actions và kiểm tra bot của bên thứ ba (ví dụ: CodeRabbit, SonarCloud, Codecov). Coi `skipped` và `cancelled` kết luận là thành công. Trả về thông báo thông tin khi tất cả các kiểm tra đều đạt.
Không có tham số.
Chính sách này yêu cầu [GitHub CLI](https://cli.github.com/) (`gh`) được cài đặt và xác thực.
-Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc đến
-các lần chạy quy trình làm việc Actions và API Checks. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách fails open và báo cáo lý do cho Claude.
+Chạy `gh auth login` với một token truy cập cá nhân có phạm vi `repo` để truy cập đọc các chạy quy trình làm việc Actions và API Kiểm tra. Nếu `gh` không được cài đặt hoặc không được xác thực, chính sách sẽ fail open và báo cáo lý do cho Claude.
---
@@ -561,7 +558,7 @@ các lần chạy quy trình làm việc Actions và API Checks. Nếu `gh` khô
## Vô hiệu hóa các chính sách riêng lẻ
-Xóa chính sách cụ thể khỏi `enabledPolicies` trong cấu hình của bạn hoặc tắt nó trong tab Policies của dashboard.
+Xóa một chính sách cụ thể khỏi `enabledPolicies` trong cấu hình của bạn, hoặc tắt nó trong tab Chính sách của bảng điều khiển.
```json
{
@@ -572,4 +569,4 @@ Xóa chính sách cụ thể khỏi `enabledPolicies` trong cấu hình của b
}
```
-Các chính sách không được liệt kê trong `enabledPolicies` không chạy, ngay cả khi các mục `policyParams` tồn tại cho chúng.
\ No newline at end of file
+Các chính sách không được liệt kê trong `enabledPolicies` không chạy, ngay cả khi có các mục `policyParams` tồn tại cho chúng.
\ No newline at end of file
diff --git a/docs/zh/built-in-policies.mdx b/docs/zh/built-in-policies.mdx
index 27b92051..d3ee73f4 100644
--- a/docs/zh/built-in-policies.mdx
+++ b/docs/zh/built-in-policies.mdx
@@ -1,10 +1,10 @@
---
title: 内置策略
-description: "涵盖常见 Agent 故障模式的 30 条内置策略"
+description: "30 条内置策略,可捕获常见的 Agent 故障模式"
icon: shield
---
-failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。每条策略针对特定的钩子事件类型和工具名称触发。九条策略接受参数,让你无需编写代码即可调整其行为。四条工作流策略在 Claude 停止前强制执行 提交 → 推送 → PR → CI 的流水线。
+failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。每条策略会在特定的 Hook 事件类型和工具名称上触发。其中九条策略支持参数配置,让你无需编写代码即可调整其行为。四条工作流策略在 Claude 停止前强制执行 commit → push → PR → CI 流水线。
---
@@ -12,8 +12,8 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
策略按类别分组:
-| 类别 | 策略 | 钩子类型 |
-|----------|----------|-----------|
+| 类别 | 策略 | Hook 类型 |
+|------|------|-----------|
| [危险命令](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
| [密钥(清理器)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
| [环境](#environment) | block-env-files, protect-env-vars | PreToolUse |
@@ -26,13 +26,13 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
- **`block-`** — 阻止 Agent 继续执行。
- **`warn-`** — 为 Agent 提供额外上下文,使其能够自我纠正。
-- **`sanitize-`** — 在 Agent 看到工具输出之前清除其中的敏感数据。
-- **`require-`** — 在条件满足之前阻止 Stop 事件触发。
+- **`sanitize-`** — 在 Agent 看到工具输出之前,从中清除敏感数据。
+- **`require-`** — 在条件满足之前阻断 Stop 事件。
---
-每条策略在 `policyParams` 中都支持可选的 `hint` 字段。该提示会附加到 Claude 所看到的 deny 或 instruct 消息中,提供可操作的指导,而无需修改策略代码。适用于内置策略、自定义策略和约定策略。详见 [配置 → hint](/zh/configuration#hint-cross-cutting)。
+每条策略都支持在 `policyParams` 中设置可选的 `hint` 字段。该提示会追加到 Claude 看到的 deny 或 instruct 消息中,提供可操作的指导,无需修改策略代码。适用于内置策略、自定义策略和约定策略。详见 [配置 → hint](/zh/configuration#hint-cross-cutting)。
---
@@ -44,15 +44,15 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `block-sudo`
**事件:** PreToolUse (Bash)
-**默认行为:** 拒绝任何包含 `sudo` 的命令。
+**默认行为:** 拒绝所有包含 `sudo` 关键字的命令。
-阻止包含 `sudo` 关键字的调用。模式匹配基于解析后的命令词元(token),而非原始字符串,以防止通过 shell 运算符注入绕过检测。
+拦截包含 `sudo` 关键字的调用。模式匹配基于解析后的命令 token,而非原始字符串,以防止通过 Shell 操作符注入来绕过检测。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
-| `allowPatterns` | `string[]` | `[]` | 允许执行的精确命令前缀。每个条目与解析后的 argv 词元进行匹配。 |
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
+| `allowPatterns` | `string[]` | `[]` | 允许通过的精确命令前缀。每个条目与解析后的 argv token 进行匹配。 |
**示例:**
@@ -66,10 +66,10 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
}
```
-使用此配置,`sudo systemctl status nginx` 会被允许,但 `sudo rm /etc/hosts` 会被拒绝。
+使用此配置,`sudo systemctl status nginx` 将被允许,而 `sudo rm /etc/hosts` 将被拒绝。
-模式匹配基于解析后的词元,而非原始命令字符串。这可以防止通过追加 shell 运算符绕过(例如 `sudo systemctl status x; rm -rf /` 不会匹配 `sudo systemctl status *`)。
+模式匹配基于解析后的 token,而非原始命令字符串。这可以防止通过附加 Shell 操作符来绕过检测(例如,`sudo systemctl status x; rm -rf /` 不会匹配 `sudo systemctl status *`)。
---
@@ -81,9 +81,9 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
-| `allowPaths` | `string[]` | `[]` | 允许递归删除的安全路径(例如 `/tmp`)。 |
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
+| `allowPaths` | `string[]` | `[]` | 允许递归删除的安全路径(如 `/tmp`)。 |
**示例:**
@@ -111,20 +111,20 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `block-failproofai-commands`
**事件:** PreToolUse (Bash)
-**默认行为:** 拒绝可能卸载或禁用 failproofai 自身的命令(例如 `npm uninstall failproofai`、`failproofai policies --uninstall`)。
+**默认行为:** 拒绝可能卸载或禁用 failproofai 自身的命令(如 `npm uninstall failproofai`、`failproofai policies --uninstall`)。
无参数。
---
-## 密钥(清理器) {#secrets-sanitizers}
+## 密钥(清理器){#secrets-sanitizers}
-防止 Agent 将凭据泄露到其上下文或输出中。清理器策略在 **PostToolUse** 事件上触发。当 Claude 运行 Bash 命令、读取文件或调用任何工具时,这些策略会在输出返回给 Claude 之前对其进行检查。如果检测到密钥模式,策略会返回 deny 决策,阻止输出被传回。
+防止 Agent 将凭证泄露到其上下文或输出中。清理器策略在 **PostToolUse** 事件上触发。当 Claude 运行 Bash 命令、读取文件或调用任何工具时,这些策略会在输出返回给 Claude 之前对其进行检查。若检测到密钥模式,策略将返回 deny 决策,阻止输出被传回。
### `sanitize-jwt`
**事件:** PostToolUse(所有工具)
-**默认行为:** 脱敏 JWT 令牌(三段由 `.` 分隔的 base64url 片段)。
+**默认行为:** 脱敏 JWT token(三段由 `.` 分隔的 base64url 字符串)。
无参数。
@@ -133,13 +133,13 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `sanitize-api-keys`
**事件:** PostToolUse(所有工具)
-**默认行为:** 脱敏常见 API 密钥格式:Anthropic(`sk-ant-`)、OpenAI(`sk-`)、GitHub PAT(`ghp_`)、AWS 访问密钥(`AKIA`)、Stripe 密钥(`sk_live_`、`sk_test_`)以及 Google API 密钥(`AIza`)。
+**默认行为:** 脱敏常见 API Key 格式:Anthropic(`sk-ant-`)、OpenAI(`sk-`)、GitHub PAT(`ghp_`)、AWS Access Key(`AKIA`)、Stripe Key(`sk_live_`、`sk_test_`)以及 Google API Key(`AIza`)。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
-| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | 需要视为密钥的额外正则表达式模式。 |
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
+| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | 额外需要视为密钥的正则表达式模式。 |
**示例:**
@@ -161,7 +161,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `sanitize-connection-strings`
**事件:** PostToolUse(所有工具)
-**默认行为:** 脱敏包含嵌入式凭据的数据库连接字符串(例如 `postgresql://user:password@host/db`)。
+**默认行为:** 脱敏包含内嵌凭证的数据库连接字符串(如 `postgresql://user:password@host/db`)。
无参数。
@@ -179,7 +179,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `sanitize-bearer-tokens`
**事件:** PostToolUse(所有工具)
-**默认行为:** 脱敏 `Authorization: Bearer ` 请求头中长度不少于 20 个字符的令牌。
+**默认行为:** 脱敏 `Authorization: Bearer ` 请求头中长度大于等于 20 个字符的 token。
无参数。
@@ -187,14 +187,14 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 环境 {#environment}
-防止 Agent 读取或暴露敏感的环境配置。
+保护敏感的环境配置,防止 Agent 读取或暴露这些信息。
### `block-env-files`
**事件:** PreToolUse (Bash, Read)
-**默认行为:** 拒绝通过 `cat .env`、以 `.env` 为文件路径的 `Read` 工具调用等方式读取 `.env` 文件。
+**默认行为:** 拒绝通过 `cat .env`、文件路径为 `.env` 的 `Read` 工具调用等方式读取 `.env` 文件。
-不会阻止 `.envrc` 或其他与环境相关的文件,仅阻止名称恰好为 `.env` 的文件。
+不拦截 `.envrc` 或其他相关环境文件,仅拦截名称严格为 `.env` 的文件。
无参数。
@@ -211,7 +211,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 文件访问 {#file-access}
-让 Agent 保持在项目边界内工作,远离敏感文件。
+将 Agent 限制在项目目录内,并使其远离敏感文件。
### `block-read-outside-cwd`
@@ -220,8 +220,8 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
| `allowPaths` | `string[]` | `[]` | 即使在当前工作目录之外也允许访问的绝对路径前缀。 |
**示例:**
@@ -241,13 +241,13 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `block-secrets-write`
**事件:** PreToolUse (Write, Edit)
-**默认行为:** 拒绝写入常用于私钥和证书的文件:`id_rsa`、`id_ed25519`、`*.key`、`*.pem`、`*.p12`、`*.pfx`。
+**默认行为:** 拒绝写入常用于存储私钥和证书的文件:`id_rsa`、`id_ed25519`、`*.key`、`*.pem`、`*.p12`、`*.pfx`。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
-| `additionalPatterns` | `string[]` | `[]` | 需要阻止的额外文件名模式(glob 风格)。 |
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
+| `additionalPatterns` | `string[]` | `[]` | 额外需要拦截的文件名模式(glob 风格)。 |
**示例:**
@@ -265,7 +265,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## Git {#git}
-防止意外推送、强制推送以及难以撤销的分支误操作。
+防止意外推送、强制推送以及难以撤销的分支操作失误。
### `block-push-master`
@@ -274,8 +274,8 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
| `protectedBranches` | `string[]` | `["main", "master"]` | 不允许直接推送的分支名称。 |
**示例:**
@@ -291,7 +291,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
```
-若要允许推送到所有分支(即在不从 `enabledPolicies` 中移除该策略的情况下将其禁用),请将 `protectedBranches` 设置为 `[]`。
+若要允许推送到所有分支(即在不将其从 `enabledPolicies` 中移除的情况下有效禁用此策略),可将 `protectedBranches` 设为 `[]`。
---
@@ -303,8 +303,8 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
| `protectedBranches` | `string[]` | `["main", "master"]` | 不允许直接切换的分支名称。 |
---
@@ -314,7 +314,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**事件:** PreToolUse (Bash)
**默认行为:** 拒绝 `git push --force` 和 `git push -f`。
-无策略专属参数。使用通用 [`hint`](/zh/configuration#hint-cross-cutting) 来建议替代方案:
+无策略特定参数。可使用通用 [`hint`](/zh/configuration#hint-cross-cutting) 建议替代方案:
```json
{
@@ -331,7 +331,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `warn-git-amend`
**事件:** PreToolUse (Bash)
-**默认行为:** 当运行 `git commit --amend` 时,指示 Claude 谨慎操作。不会阻止该命令执行。
+**默认行为:** 在运行 `git commit --amend` 时指示 Claude 谨慎操作。不阻止该命令执行。
无参数。
@@ -340,7 +340,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `warn-git-stash-drop`
**事件:** PreToolUse (Bash)
-**默认行为:** 在运行 `git stash drop` 之前,指示 Claude 进行确认。不会阻止该命令执行。
+**默认行为:** 在运行 `git stash drop` 前指示 Claude 进行确认。不阻止该命令执行。
无参数。
@@ -349,7 +349,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `warn-all-files-staged`
**事件:** PreToolUse (Bash)
-**默认行为:** 当运行 `git add -A` 或 `git add .` 时,指示 Claude 审查所暂存的内容。不会阻止该命令执行。
+**默认行为:** 在运行 `git add -A` 或 `git add .` 时指示 Claude 检查其所暂存的内容。不阻止该命令执行。
无参数。
@@ -357,7 +357,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 数据库 {#database}
-在破坏性 SQL 操作执行之前将其拦截。
+在破坏性 SQL 操作对数据库执行之前将其拦截。
### `warn-destructive-sql`
@@ -379,7 +379,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 警告 {#warnings}
-在执行可能存在风险但非破坏性的操作之前,为 Agent 提供额外上下文。
+在执行潜在有风险但非破坏性的操作前,为 Agent 提供额外上下文。
### `warn-large-file-write`
@@ -388,8 +388,8 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
| `thresholdKb` | `number` | `1024` | 触发警告的文件大小阈值(单位:KB)。 |
**示例:**
@@ -405,7 +405,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
```
-钩子处理器对 stdin 的有效负载强制限制为 1 MB。若要使用较小内容测试此策略,请将 `thresholdKb` 设置为远低于 1024 的值。
+Hook 处理器对 stdin 负载强制执行 1 MB 的大小限制。若要使用较小内容测试此策略,请将 `thresholdKb` 设为远低于 1024 的值。
---
@@ -422,7 +422,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `warn-background-process`
**事件:** PreToolUse (Bash)
-**默认行为:** 当通过 `nohup`、`&`、`disown` 或 `screen` 启动后台进程时,指示 Claude 保持谨慎。
+**默认行为:** 在通过 `nohup`、`&`、`disown` 或 `screen` 启动后台进程时,指示 Claude 谨慎操作。
无参数。
@@ -431,7 +431,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `warn-global-package-install`
**事件:** PreToolUse (Bash)
-**默认行为:** 在运行 `npm install -g`、`yarn global add` 或不在虚拟环境中执行 `pip install` 之前,指示 Claude 进行确认。
+**默认行为:** 在运行 `npm install -g`、`yarn global add` 或未在虚拟环境中执行的 `pip install` 之前,指示 Claude 进行确认。
无参数。
@@ -439,23 +439,23 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 包管理器 {#package-managers}
-强制规定 Agent 可以使用的包管理器。
+限制 Agent 只能使用指定的包管理器。
### `prefer-package-manager`
**事件:** PreToolUse (Bash)
-**默认行为:** 默认禁用。启用后,会阻止所有不在 `allowed` 列表中的包管理器命令,并告知 Claude 使用允许的包管理器重写该命令。
+**默认行为:** 默认禁用。启用后,将拦截不在 `allowed` 列表中的任何包管理器命令,并告知 Claude 使用允许的包管理器重写该命令。
可检测的包管理器:pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo。
-| 参数 | 类型 | 默认值 | 描述 |
-|-----------|------|---------|-------------|
-| `allowed` | string[] | `[]` | 允许使用的包管理器名称。检测到的管理器若不在此列表中则会被阻止。为空时,该策略不生效。 |
-| `blocked` | string[] | `[]` | 在内置列表之外额外需要阻止的管理器名称(例如 `['pdm', 'pipx']`)。 |
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
+| `allowed` | string[] | `[]` | 允许使用的包管理器名称。检测到的管理器若不在此列表中将被拦截。列表为空时,策略不生效。 |
+| `blocked` | string[] | `[]` | 除内置列表之外需要额外拦截的包管理器名称(如 `['pdm', 'pipx']`)。 |
-内置阻止列表涵盖:pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo。使用 `blocked` 追加不在此列表中的管理器。
+内置拦截列表包含:pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo。使用 `blocked` 可追加不在此列表中的包管理器。
-**配置示例:**
+**示例配置:**
```json
{
@@ -469,18 +469,18 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
}
```
-使用此配置,`pip install flask` 和 `pdm install flask` 都会被拒绝,并告知 Claude 改用 `uv` 或 `bun`。`uv pip install flask` 等命令会被允许,因为 `uv` 在允许列表中且优先被检查。
+使用此配置,`pip install flask` 和 `pdm install flask` 均会被拒绝,并告知 Claude 改用 `uv` 或 `bun`。而 `uv pip install flask` 则会被允许,因为 `uv` 在允许列表中且优先检查。
---
## AI 行为
-检测 Agent 卡住或行为异常的情况。
+检测 Agent 陷入循环或行为异常的情况。
### `warn-repeated-tool-calls`
**事件:** PreToolUse(所有工具)
-**默认行为:** 当同一工具以完全相同的参数被调用 3 次及以上时,指示 Claude 重新考虑——这通常是 Agent 陷入循环的常见信号。
+**默认行为:** 当同一工具以相同参数被调用 3 次或以上时,指示 Claude 重新考虑——这通常是 Agent 陷入循环的信号。
无参数。
@@ -488,14 +488,14 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 工作流 {#workflow}
-强制执行规范的会话结束工作流。这些策略在 **Stop** 事件上触发,在每个条件满足之前拒绝 Claude 停止。它们遵循自然的依赖链:提交 → 推送 → PR → CI。如果某条策略返回 deny,则链中后续策略会被跳过(deny 短路)。
+强制执行有纪律的会话结束工作流。这些策略在 **Stop** 事件上触发,在每个条件满足之前拒绝 Claude 停止。它们遵循自然的依赖链:commit → push → PR → CI。若某条策略拒绝,则链中后续策略将被跳过(deny 短路)。
-所有工作流策略都是**失败开放**的:如果所需工具不可用(例如未安装 `gh`、没有 git 远程仓库),策略会放行并附带一条说明性消息,解释为何跳过该检查。
+所有工作流策略均为**失败开放(fail-open)**模式:如果所需工具不可用(如 `gh` 未安装、无 git 远程仓库),策略将放行并附带说明性消息,解释跳过检查的原因。
### `require-commit-before-stop`
**事件:** Stop
-**默认行为:** 当存在未提交的更改(已修改、已暂存或未追踪的文件)时,拒绝停止。工作目录干净时返回说明性消息。
+**默认行为:** 当存在未提交的更改(已修改、已暂存或未跟踪的文件)时,拒绝停止。当工作目录干净时,返回说明性消息。
无参数。
@@ -504,12 +504,12 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `require-push-before-stop`
**事件:** Stop
-**默认行为:** 当存在未推送的提交,或当前分支没有远程追踪分支时,拒绝停止。如需创建追踪分支,建议使用 `git push -u`。若未配置远程仓库,则失败开放。
+**默认行为:** 当存在未推送的 commit,或当前分支没有远程追踪分支时,拒绝停止。若需要,建议使用 `git push -u` 创建追踪分支。如果未配置远程仓库,则失败开放。
**参数:**
-| 参数 | 类型 | 默认值 | 描述 |
-|-------|------|---------|-------------|
+| 参数 | 类型 | 默认值 | 说明 |
+|------|------|--------|------|
| `remote` | `string` | `"origin"` | 推送目标的远程仓库名称。 |
**示例:**
@@ -534,8 +534,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
无参数。
-此策略需要安装并完成身份验证的 [GitHub CLI](https://cli.github.com/)(`gh`)。
-运行 `gh auth login` 时,请使用具有 `repo` 权限(用于读取 Pull Request)的个人访问令牌。若 `gh` 未安装或未通过身份验证,该策略会失败开放并向 Claude 报告原因。
+此策略需要安装并已完成身份验证的 [GitHub CLI](https://cli.github.com/)(`gh`)。请使用具有 `repo` 作用域(用于读取 Pull Request)的个人访问 token 运行 `gh auth login`。如果 `gh` 未安装或未完成身份验证,策略将失败开放并向 Claude 报告原因。
---
@@ -543,13 +542,12 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
### `require-ci-green-before-stop`
**事件:** Stop
-**默认行为:** 当当前分支的 CI 检查失败或仍在运行时,拒绝停止。同时检查 GitHub Actions 工作流运行和第三方机器人检查(例如 CodeRabbit、SonarCloud、Codecov)。将 `skipped` 结论视为成功。所有检查通过时返回说明性消息。
+**默认行为:** 当当前分支上的 CI 检查失败或仍在运行时,拒绝停止。同时检查 GitHub Actions 工作流运行状态和第三方 Bot 检查(如 CodeRabbit、SonarCloud、Codecov)。将 `skipped` 和 `cancelled` 结论视为成功。所有检查通过时,返回说明性消息。
无参数。
-此策略需要安装并完成身份验证的 [GitHub CLI](https://cli.github.com/)(`gh`)。
-运行 `gh auth login` 时,请使用具有 `repo` 权限(用于读取 Actions 工作流运行和 Checks API)的个人访问令牌。若 `gh` 未安装或未通过身份验证,该策略会失败开放并向 Claude 报告原因。
+此策略需要安装并已完成身份验证的 [GitHub CLI](https://cli.github.com/)(`gh`)。请使用具有 `repo` 作用域(用于读取 Actions 工作流运行状态和 Checks API)的个人访问 token 运行 `gh auth login`。如果 `gh` 未安装或未完成身份验证,策略将失败开放并向 Claude 报告原因。
---
@@ -558,7 +556,7 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
## 禁用单条策略
-从配置文件的 `enabledPolicies` 中移除特定策略,或在控制台的"策略"标签页中将其关闭。
+从配置文件的 `enabledPolicies` 中移除特定策略,或在控制台的策略标签页中将其关闭。
```json
{
@@ -569,4 +567,4 @@ failproofai 内置了 30 条策略,用于捕获常见的 Agent 故障模式。
}
```
-未列在 `enabledPolicies` 中的策略不会运行,即使在 `policyParams` 中存在对应的条目也不例外。
\ No newline at end of file
+未在 `enabledPolicies` 中列出的策略不会运行,即使 `policyParams` 中存在对应的条目也不例外。
\ No newline at end of file