failproofai 0.0.6-beta.1 → 0.0.6-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.failproofai/policies/review-policies.mjs +4 -3
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/required-server-files.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +2 -2
- package/.next/standalone/.next/server/app/_not-found.rsc +15 -15
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +10 -10
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +4 -4
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +10 -10
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/policies/page/server-reference-manifest.json +8 -8
- package/.next/standalone/.next/server/app/policies/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/policies/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page/server-reference-manifest.json +2 -2
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/project/[name]/session/[sessionId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/page/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0g72weg._.js +1 -1
- package/.next/standalone/.next/server/chunks/package_json_[json]_cjs_0z7w.hh._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0~kmh8w._.js → [root-of-the-server]__05akje6._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__092s1ta._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__09icjsf._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0g.lg8b._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h..k-e._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0rh.18_._.js → [root-of-the-server]__0i5kvry._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0okos0k._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0w6l33k._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__11pa2ra._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__12t-wym._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_10lm7or._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/app_global-error_tsx_0xerkr6._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_policies_hooks-client_tsx_0q-m0y-._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/pages/404.html +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +9 -9
- package/.next/standalone/.next/static/chunks/{08t08igdql9yt.js → 00j0rr7rh8ef8.js} +1 -1
- package/.next/standalone/.next/static/chunks/{12~yi9oj8av8p.js → 05j1px0r8yzh6.js} +2 -2
- package/.next/standalone/.next/static/chunks/{09_k80d~cq2wg.js → 0badv41uxa56..js} +1 -1
- package/.next/standalone/.next/static/chunks/{0wlyoif4_kj_t.js → 0ijk_kek9_wyx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0bvhsa6zva2o..js → 0ksdlt_1hucdm.js} +1 -1
- package/.next/standalone/.next/static/chunks/{03rz6ykw-a2xi.js → 0npb~873.wvg3.js} +1 -1
- package/.next/standalone/.next/static/chunks/{01b~z8f1ws0rk.js → 0xpl.oscrakvx.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0gbf4cphy8ksq.js → 1052sguyd-.ka.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0v.yd0kg_ld3r.js → 14cl9poem30dq.js} +1 -1
- package/.next/standalone/CHANGELOG.md +11 -0
- package/.next/standalone/dist/cli.mjs +3 -3
- package/.next/standalone/docs/ar/built-in-policies.mdx +124 -87
- package/.next/standalone/docs/ar/custom-policies.mdx +72 -72
- package/.next/standalone/docs/ar/examples.mdx +86 -33
- package/.next/standalone/docs/ar/getting-started.mdx +82 -29
- package/.next/standalone/docs/built-in-policies.mdx +1 -1
- package/.next/standalone/docs/de/built-in-policies.mdx +93 -56
- package/.next/standalone/docs/de/custom-policies.mdx +56 -56
- package/.next/standalone/docs/de/examples.mdx +72 -18
- package/.next/standalone/docs/de/getting-started.mdx +72 -20
- package/.next/standalone/docs/es/built-in-policies.mdx +115 -78
- package/.next/standalone/docs/es/custom-policies.mdx +55 -55
- package/.next/standalone/docs/es/examples.mdx +73 -19
- package/.next/standalone/docs/es/getting-started.mdx +72 -20
- package/.next/standalone/docs/fr/built-in-policies.mdx +83 -46
- package/.next/standalone/docs/fr/custom-policies.mdx +51 -51
- package/.next/standalone/docs/fr/examples.mdx +78 -24
- package/.next/standalone/docs/fr/getting-started.mdx +65 -13
- package/.next/standalone/docs/he/built-in-policies.mdx +156 -117
- package/.next/standalone/docs/he/custom-policies.mdx +75 -75
- package/.next/standalone/docs/he/examples.mdx +87 -33
- package/.next/standalone/docs/he/getting-started.mdx +84 -33
- package/.next/standalone/docs/hi/built-in-policies.mdx +101 -60
- package/.next/standalone/docs/hi/custom-policies.mdx +71 -70
- package/.next/standalone/docs/hi/examples.mdx +90 -36
- package/.next/standalone/docs/hi/getting-started.mdx +80 -27
- package/.next/standalone/docs/i18n/README.ar.md +69 -69
- package/.next/standalone/docs/i18n/README.de.md +46 -46
- package/.next/standalone/docs/i18n/README.es.md +42 -42
- package/.next/standalone/docs/i18n/README.fr.md +39 -39
- package/.next/standalone/docs/i18n/README.he.md +83 -83
- package/.next/standalone/docs/i18n/README.hi.md +69 -69
- package/.next/standalone/docs/i18n/README.it.md +72 -72
- package/.next/standalone/docs/i18n/README.ja.md +71 -71
- package/.next/standalone/docs/i18n/README.ko.md +52 -52
- package/.next/standalone/docs/i18n/README.pt-br.md +44 -44
- package/.next/standalone/docs/i18n/README.ru.md +66 -66
- package/.next/standalone/docs/i18n/README.tr.md +82 -83
- package/.next/standalone/docs/i18n/README.vi.md +70 -71
- package/.next/standalone/docs/i18n/README.zh.md +51 -51
- package/.next/standalone/docs/it/built-in-policies.mdx +118 -81
- package/.next/standalone/docs/it/custom-policies.mdx +69 -69
- package/.next/standalone/docs/it/examples.mdx +93 -39
- package/.next/standalone/docs/it/getting-started.mdx +73 -21
- package/.next/standalone/docs/ja/built-in-policies.mdx +98 -61
- package/.next/standalone/docs/ja/custom-policies.mdx +71 -71
- package/.next/standalone/docs/ja/examples.mdx +76 -22
- package/.next/standalone/docs/ja/getting-started.mdx +65 -13
- package/.next/standalone/docs/ko/built-in-policies.mdx +137 -100
- package/.next/standalone/docs/ko/custom-policies.mdx +67 -67
- package/.next/standalone/docs/ko/examples.mdx +87 -33
- package/.next/standalone/docs/ko/getting-started.mdx +61 -9
- package/.next/standalone/docs/pt-br/built-in-policies.mdx +94 -57
- package/.next/standalone/docs/pt-br/custom-policies.mdx +56 -56
- package/.next/standalone/docs/pt-br/examples.mdx +78 -24
- package/.next/standalone/docs/pt-br/getting-started.mdx +64 -12
- package/.next/standalone/docs/ru/built-in-policies.mdx +142 -105
- package/.next/standalone/docs/ru/custom-policies.mdx +82 -81
- package/.next/standalone/docs/ru/examples.mdx +77 -22
- package/.next/standalone/docs/ru/getting-started.mdx +74 -22
- package/.next/standalone/docs/tr/built-in-policies.mdx +104 -67
- package/.next/standalone/docs/tr/custom-policies.mdx +59 -60
- package/.next/standalone/docs/tr/examples.mdx +97 -42
- package/.next/standalone/docs/tr/getting-started.mdx +75 -23
- package/.next/standalone/docs/vi/built-in-policies.mdx +110 -72
- package/.next/standalone/docs/vi/custom-policies.mdx +68 -68
- package/.next/standalone/docs/vi/examples.mdx +93 -38
- package/.next/standalone/docs/vi/getting-started.mdx +74 -22
- package/.next/standalone/docs/zh/built-in-policies.mdx +132 -95
- package/.next/standalone/docs/zh/custom-policies.mdx +49 -49
- package/.next/standalone/docs/zh/examples.mdx +90 -36
- package/.next/standalone/docs/zh/getting-started.mdx +73 -21
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/server.js +1 -1
- package/.next/standalone/src/hooks/builtin-policies.ts +5 -1
- package/dist/cli.mjs +3 -3
- package/package.json +1 -1
- package/src/hooks/builtin-policies.ts +5 -1
- /package/.next/standalone/.next/static/{CkmOT-ZvDN-sVULinGVKT → A9pNTZdoYJTVyPAYwQMx5}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{CkmOT-ZvDN-sVULinGVKT → A9pNTZdoYJTVyPAYwQMx5}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{CkmOT-ZvDN-sVULinGVKT → A9pNTZdoYJTVyPAYwQMx5}/_ssgManifest.js +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: السياسات المدمجة
|
|
3
|
-
description: "جميع 30
|
|
3
|
+
description: "جميع السياسات المدمجة الـ 30 التي تكتشف أنماط الفشل الشائعة للوكلاء"
|
|
4
4
|
icon: shield
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
يأتي failproofai مع 30 سياسة مدمجة
|
|
7
|
+
يأتي failproofai مع 30 سياسة مدمجة تكتشف أنماط الفشل الشائعة للوكلاء. تُطلق كل سياسة على نوع حدث hook محدد واسم أداة معينة. تقبل تسع سياسات معاملات تتيح لك ضبط سلوكها دون كتابة أي كود. تفرض أربع سياسات سير عمل خط أنابيب commit → push → PR → CI قبل توقف Claude.
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -13,45 +13,46 @@ icon: shield
|
|
|
13
13
|
يتم تجميع السياسات في فئات:
|
|
14
14
|
|
|
15
15
|
| الفئة | السياسات | نوع Hook |
|
|
16
|
-
|
|
17
|
-
| [الأوامر
|
|
18
|
-
| [الأسرار (
|
|
16
|
+
|-------|---------|----------|
|
|
17
|
+
| [الأوامر الخطيرة](#dangerous-commands) | block-sudo, block-rm-rf, block-curl-pipe-sh, block-failproofai-commands | PreToolUse |
|
|
18
|
+
| [الأسرار (المنظفات)](#secrets-sanitizers) | sanitize-jwt, sanitize-api-keys, sanitize-connection-strings, sanitize-private-key-content, sanitize-bearer-tokens | PostToolUse |
|
|
19
19
|
| [البيئة](#environment) | block-env-files, protect-env-vars | PreToolUse |
|
|
20
|
-
| [الوصول
|
|
20
|
+
| [الوصول للملفات](#file-access) | block-read-outside-cwd, block-secrets-write | PreToolUse |
|
|
21
21
|
| [Git](#git) | block-push-master, block-work-on-main, block-force-push, warn-git-amend, warn-git-stash-drop, warn-all-files-staged | PreToolUse |
|
|
22
22
|
| [قاعدة البيانات](#database) | warn-destructive-sql, warn-schema-alteration | PreToolUse |
|
|
23
23
|
| [التحذيرات](#warnings) | warn-large-file-write, warn-package-publish, warn-background-process, warn-global-package-install | PreToolUse |
|
|
24
|
+
| [مديرو الحزم](#package-managers) | prefer-package-manager | PreToolUse |
|
|
24
25
|
| [سير العمل](#workflow) | require-commit-before-stop, require-push-before-stop, require-pr-before-stop, require-ci-green-before-stop | Stop |
|
|
25
26
|
|
|
26
|
-
- **`block-`** — إيقاف الوكيل
|
|
27
|
-
- **`warn-`** — إعطاء الوكيل سياق إضافي حتى يتمكن من
|
|
28
|
-
- **`sanitize-`** —
|
|
29
|
-
- **`require-`** —
|
|
27
|
+
- **`block-`** — إيقاف الوكيل عن المتابعة.
|
|
28
|
+
- **`warn-`** — إعطاء الوكيل سياق إضافي حتى يتمكن من تصحيح نفسه.
|
|
29
|
+
- **`sanitize-`** — حذف البيانات الحساسة من مخرجات الأداة قبل أن يراها Claude.
|
|
30
|
+
- **`require-`** — حظر حدث Stop حتى يتم استيفاء الشروط.
|
|
30
31
|
|
|
31
32
|
---
|
|
32
33
|
|
|
33
34
|
<Tip>
|
|
34
|
-
كل سياسة تدعم حقل `hint` اختياري في `policyParams`. يتم
|
|
35
|
+
كل سياسة تدعم حقل `hint` اختياري في `policyParams`. يتم إلحاق التلميح برسالة الرفض أو التعليمات التي يراها Claude، مما يوفر إرشادات عملية دون تعديل كود السياسة. يعمل مع السياسات المدمجة والمخصصة وسياسات الاتفاقية. انظر [التكوين → hint](/ar/configuration#hint-cross-cutting) للتفاصيل.
|
|
35
36
|
</Tip>
|
|
36
37
|
|
|
37
38
|
---
|
|
38
39
|
|
|
39
|
-
## الأوامر
|
|
40
|
+
## الأوامر الخطيرة
|
|
40
41
|
|
|
41
|
-
منع الوكلاء من تشغيل العمليات التي يصعب التراجع عنها أو التي قد
|
|
42
|
+
منع الوكلاء من تشغيل العمليات التي يصعب التراجع عنها أو التي قد تلحق الضرر بنظام المضيف.
|
|
42
43
|
|
|
43
44
|
### `block-sudo`
|
|
44
45
|
|
|
45
46
|
**الحدث:** PreToolUse (Bash)
|
|
46
|
-
|
|
47
|
+
**الإعداد الافتراضي:** رفض أي أمر `sudo`.
|
|
47
48
|
|
|
48
|
-
|
|
49
|
+
يحظر الاستدعاءات التي تتضمن كلمة `sudo`. يتم مطابقة النمط على رموز الأوامر المحللة، وليس السلسلة الخام، لمنع الالتفاف عبر حقن مشغل shell.
|
|
49
50
|
|
|
50
51
|
**المعاملات:**
|
|
51
52
|
|
|
52
53
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
53
|
-
|
|
54
|
-
| `allowPatterns` | `string[]` | `[]` | بادئات الأوامر الدقيقة
|
|
54
|
+
|--------|-------|---------|-------|
|
|
55
|
+
| `allowPatterns` | `string[]` | `[]` | بادئات الأوامر الدقيقة المسموح بها. يتم مطابقة كل إدخال مقابل رموز argv المحللة. |
|
|
55
56
|
|
|
56
57
|
**مثال:**
|
|
57
58
|
|
|
@@ -65,10 +66,10 @@ icon: shield
|
|
|
65
66
|
}
|
|
66
67
|
```
|
|
67
68
|
|
|
68
|
-
مع هذا
|
|
69
|
+
مع هذا الإعداد، `sudo systemctl status nginx` مسموح به، لكن `sudo rm /etc/hosts` مرفوض.
|
|
69
70
|
|
|
70
71
|
<Note>
|
|
71
|
-
يتم مطابقة الأنماط مقابل الرموز المحللة، وليس
|
|
72
|
+
يتم مطابقة الأنماط مقابل الرموز المحللة، وليس السلسلة الخام للأمر. يمنع هذا الالتفاف عبر مشغلات shell المرفقة (مثلاً `sudo systemctl status x; rm -rf /` لا يطابق `sudo systemctl status *`).
|
|
72
73
|
</Note>
|
|
73
74
|
|
|
74
75
|
---
|
|
@@ -76,13 +77,13 @@ icon: shield
|
|
|
76
77
|
### `block-rm-rf`
|
|
77
78
|
|
|
78
79
|
**الحدث:** PreToolUse (Bash)
|
|
79
|
-
|
|
80
|
+
**الإعداد الافتراضي:** رفض `rm -rf`، `rm -fr`، والأشكال التكرارية المماثلة للحذف.
|
|
80
81
|
|
|
81
82
|
**المعاملات:**
|
|
82
83
|
|
|
83
84
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
84
|
-
|
|
85
|
-
| `allowPaths` | `string[]` | `[]` | المسارات الآمنة للحذف
|
|
85
|
+
|--------|-------|---------|-------|
|
|
86
|
+
| `allowPaths` | `string[]` | `[]` | المسارات الآمنة للحذف التكراري (مثلاً `/tmp`). |
|
|
86
87
|
|
|
87
88
|
**مثال:**
|
|
88
89
|
|
|
@@ -101,7 +102,7 @@ icon: shield
|
|
|
101
102
|
### `block-curl-pipe-sh`
|
|
102
103
|
|
|
103
104
|
**الحدث:** PreToolUse (Bash)
|
|
104
|
-
|
|
105
|
+
**الإعداد الافتراضي:** رفض `curl <url> | bash`، `curl <url> | sh`، `wget <url> | bash`، والأنماط المماثلة.
|
|
105
106
|
|
|
106
107
|
بدون معاملات.
|
|
107
108
|
|
|
@@ -110,20 +111,20 @@ icon: shield
|
|
|
110
111
|
### `block-failproofai-commands`
|
|
111
112
|
|
|
112
113
|
**الحدث:** PreToolUse (Bash)
|
|
113
|
-
|
|
114
|
+
**الإعداد الافتراضي:** رفض الأوامر التي ستلغي أو تعطل failproofai نفسه (مثلاً `npm uninstall failproofai`، `failproofai policies --uninstall`).
|
|
114
115
|
|
|
115
116
|
بدون معاملات.
|
|
116
117
|
|
|
117
118
|
---
|
|
118
119
|
|
|
119
|
-
## الأسرار (
|
|
120
|
+
## الأسرار (المنظفات)
|
|
120
121
|
|
|
121
|
-
منع الوكلاء من
|
|
122
|
+
منع الوكلاء من تسريب بيانات الاعتماد إلى سياقهم أو مخرجاتهم. تطلق سياسات المنظفة على أحداث **PostToolUse**. عندما يشغل Claude أمر Bash، أو يقرأ ملف، أو يستدعي أي أداة، تفتش هذه السياسات المخرجات قبل إرجاعها إلى Claude. إذا تم كشف نمط سري، ترجع السياسة قرار رفض يمنع إرجاع المخرجات.
|
|
122
123
|
|
|
123
124
|
### `sanitize-jwt`
|
|
124
125
|
|
|
125
126
|
**الحدث:** PostToolUse (جميع الأدوات)
|
|
126
|
-
|
|
127
|
+
**الإعداد الافتراضي:** حذف رموز JWT (ثلاث مقاطع base64url مفصولة بـ `.`).
|
|
127
128
|
|
|
128
129
|
بدون معاملات.
|
|
129
130
|
|
|
@@ -132,12 +133,12 @@ icon: shield
|
|
|
132
133
|
### `sanitize-api-keys`
|
|
133
134
|
|
|
134
135
|
**الحدث:** PostToolUse (جميع الأدوات)
|
|
135
|
-
|
|
136
|
+
**الإعداد الافتراضي:** حذف تنسيقات مفاتيح API الشائعة: Anthropic (`sk-ant-`)، OpenAI (`sk-`)، GitHub PATs (`ghp_`)، مفاتيح الوصول AWS (`AKIA`)، مفاتيح Stripe (`sk_live_`, `sk_test_`)، ومفاتيح Google API (`AIza`).
|
|
136
137
|
|
|
137
138
|
**المعاملات:**
|
|
138
139
|
|
|
139
140
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
140
|
-
|
|
141
|
+
|--------|-------|---------|-------|
|
|
141
142
|
| `additionalPatterns` | `{ regex: string; label: string }[]` | `[]` | أنماط regex إضافية يتم التعامل معها كأسرار. |
|
|
142
143
|
|
|
143
144
|
**مثال:**
|
|
@@ -160,7 +161,7 @@ icon: shield
|
|
|
160
161
|
### `sanitize-connection-strings`
|
|
161
162
|
|
|
162
163
|
**الحدث:** PostToolUse (جميع الأدوات)
|
|
163
|
-
|
|
164
|
+
**الإعداد الافتراضي:** حذف سلاسل اتصال قاعدة البيانات التي تحتوي على بيانات اعتماد مضمنة (مثلاً `postgresql://user:password@host/db`).
|
|
164
165
|
|
|
165
166
|
بدون معاملات.
|
|
166
167
|
|
|
@@ -169,7 +170,7 @@ icon: shield
|
|
|
169
170
|
### `sanitize-private-key-content`
|
|
170
171
|
|
|
171
172
|
**الحدث:** PostToolUse (جميع الأدوات)
|
|
172
|
-
|
|
173
|
+
**الإعداد الافتراضي:** حذف كتل PEM (`-----BEGIN PRIVATE KEY-----`، `-----BEGIN RSA PRIVATE KEY-----`، إلخ).
|
|
173
174
|
|
|
174
175
|
بدون معاملات.
|
|
175
176
|
|
|
@@ -178,7 +179,7 @@ icon: shield
|
|
|
178
179
|
### `sanitize-bearer-tokens`
|
|
179
180
|
|
|
180
181
|
**الحدث:** PostToolUse (جميع الأدوات)
|
|
181
|
-
|
|
182
|
+
**الإعداد الافتراضي:** حذف رؤوس `Authorization: Bearer <token>` حيث يكون الرمز 20 أو أكثر من الأحرف.
|
|
182
183
|
|
|
183
184
|
بدون معاملات.
|
|
184
185
|
|
|
@@ -186,14 +187,14 @@ icon: shield
|
|
|
186
187
|
|
|
187
188
|
## البيئة
|
|
188
189
|
|
|
189
|
-
حماية
|
|
190
|
+
حماية إعدادات البيئة الحساسة من القراءة أو الكشف عنها من قبل الوكلاء.
|
|
190
191
|
|
|
191
192
|
### `block-env-files`
|
|
192
193
|
|
|
193
|
-
**الحدث:** PreToolUse (Bash
|
|
194
|
-
|
|
194
|
+
**الحدث:** PreToolUse (Bash، Read)
|
|
195
|
+
**الإعداد الافتراضي:** رفض قراءة ملفات `.env` عبر `cat .env`، استدعاءات أداة Read مع `.env` كمسار الملف، إلخ.
|
|
195
196
|
|
|
196
|
-
لا
|
|
197
|
+
لا يحظر `.envrc` أو ملفات أخرى ذات صلة بالبيئة - فقط الملفات المسماة `.env` بالضبط.
|
|
197
198
|
|
|
198
199
|
بدون معاملات.
|
|
199
200
|
|
|
@@ -202,26 +203,26 @@ icon: shield
|
|
|
202
203
|
### `protect-env-vars`
|
|
203
204
|
|
|
204
205
|
**الحدث:** PreToolUse (Bash)
|
|
205
|
-
|
|
206
|
+
**الإعداد الافتراضي:** رفض الأوامر التي تطبع متغيرات البيئة: `printenv`، `env`، `echo $VAR`.
|
|
206
207
|
|
|
207
208
|
بدون معاملات.
|
|
208
209
|
|
|
209
210
|
---
|
|
210
211
|
|
|
211
|
-
## الوصول
|
|
212
|
+
## الوصول للملفات
|
|
212
213
|
|
|
213
|
-
|
|
214
|
+
الحفاظ على عمل الوكلاء داخل حدود المشروع بعيداً عن الملفات الحساسة.
|
|
214
215
|
|
|
215
216
|
### `block-read-outside-cwd`
|
|
216
217
|
|
|
217
|
-
**الحدث:** PreToolUse (Read
|
|
218
|
-
|
|
218
|
+
**الحدث:** PreToolUse (Read، Bash)
|
|
219
|
+
**الإعداد الافتراضي:** رفض قراءة الملفات خارج دليل العمل الحالي (جذر المشروع).
|
|
219
220
|
|
|
220
221
|
**المعاملات:**
|
|
221
222
|
|
|
222
223
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
223
|
-
|
|
224
|
-
| `allowPaths` | `string[]` | `[]` | بادئات المسار المطلق
|
|
224
|
+
|--------|-------|---------|-------|
|
|
225
|
+
| `allowPaths` | `string[]` | `[]` | بادئات المسار المطلق المسموح بها حتى لو كانت خارج cwd. |
|
|
225
226
|
|
|
226
227
|
**مثال:**
|
|
227
228
|
|
|
@@ -239,14 +240,14 @@ icon: shield
|
|
|
239
240
|
|
|
240
241
|
### `block-secrets-write`
|
|
241
242
|
|
|
242
|
-
**الحدث:** PreToolUse (Write
|
|
243
|
-
|
|
243
|
+
**الحدث:** PreToolUse (Write، Edit)
|
|
244
|
+
**الإعداد الافتراضي:** رفض الكتابة إلى الملفات المستخدمة بشكل شائع للمفاتيح الخاصة والشهادات: `id_rsa`، `id_ed25519`، `*.key`، `*.pem`، `*.p12`، `*.pfx`.
|
|
244
245
|
|
|
245
246
|
**المعاملات:**
|
|
246
247
|
|
|
247
248
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
248
|
-
|
|
249
|
-
| `additionalPatterns` | `string[]` | `[]` | أنماط
|
|
249
|
+
|--------|-------|---------|-------|
|
|
250
|
+
| `additionalPatterns` | `string[]` | `[]` | أنماط أسماء ملفات إضافية (نمط glob) للحظر. |
|
|
250
251
|
|
|
251
252
|
**مثال:**
|
|
252
253
|
|
|
@@ -264,17 +265,17 @@ icon: shield
|
|
|
264
265
|
|
|
265
266
|
## Git
|
|
266
267
|
|
|
267
|
-
منع الدفع العرضي والدفع القسري
|
|
268
|
+
منع الدفع العرضي والدفع القسري وأخطاء الفروع التي يصعب التراجع عنها.
|
|
268
269
|
|
|
269
270
|
### `block-push-master`
|
|
270
271
|
|
|
271
272
|
**الحدث:** PreToolUse (Bash)
|
|
272
|
-
|
|
273
|
+
**الإعداد الافتراضي:** رفض `git push origin main` و `git push origin master`.
|
|
273
274
|
|
|
274
275
|
**المعاملات:**
|
|
275
276
|
|
|
276
277
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
277
|
-
|
|
278
|
+
|--------|-------|---------|-------|
|
|
278
279
|
| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن الدفع إليها مباشرة. |
|
|
279
280
|
|
|
280
281
|
**مثال:**
|
|
@@ -290,7 +291,7 @@ icon: shield
|
|
|
290
291
|
```
|
|
291
292
|
|
|
292
293
|
<Tip>
|
|
293
|
-
للسماح بالدفع إلى جميع الفروع (تعطيل هذه السياسة بشكل
|
|
294
|
+
للسماح بالدفع إلى جميع الفروع (تعطيل هذه السياسة بشكل فعلي دون إزالتها من `enabledPolicies`)، اضبط `protectedBranches: []`.
|
|
294
295
|
</Tip>
|
|
295
296
|
|
|
296
297
|
---
|
|
@@ -298,22 +299,22 @@ icon: shield
|
|
|
298
299
|
### `block-work-on-main`
|
|
299
300
|
|
|
300
301
|
**الحدث:** PreToolUse (Bash)
|
|
301
|
-
|
|
302
|
+
**الإعداد الافتراضي:** رفض التبديل إلى فروع `main` أو `master` مباشرة.
|
|
302
303
|
|
|
303
304
|
**المعاملات:**
|
|
304
305
|
|
|
305
306
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
306
|
-
|
|
307
|
-
| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن
|
|
307
|
+
|--------|-------|---------|-------|
|
|
308
|
+
| `protectedBranches` | `string[]` | `["main", "master"]` | أسماء الفروع التي لا يمكن التبديل إليها مباشرة. |
|
|
308
309
|
|
|
309
310
|
---
|
|
310
311
|
|
|
311
312
|
### `block-force-push`
|
|
312
313
|
|
|
313
314
|
**الحدث:** PreToolUse (Bash)
|
|
314
|
-
|
|
315
|
+
**الإعداد الافتراضي:** رفض `git push --force` و `git push -f`.
|
|
315
316
|
|
|
316
|
-
بدون معاملات خاصة بالسياسة. استخدم
|
|
317
|
+
بدون معاملات خاصة بالسياسة. استخدم [`hint`](/ar/configuration#hint-cross-cutting) الشامل لاقتراح بدائل:
|
|
317
318
|
|
|
318
319
|
```json
|
|
319
320
|
{
|
|
@@ -330,7 +331,7 @@ icon: shield
|
|
|
330
331
|
### `warn-git-amend`
|
|
331
332
|
|
|
332
333
|
**الحدث:** PreToolUse (Bash)
|
|
333
|
-
|
|
334
|
+
**الإعداد الافتراضي:** تعليمات Claude للمتابعة بحذر عند تشغيل `git commit --amend`. لا يحظر الأمر.
|
|
334
335
|
|
|
335
336
|
بدون معاملات.
|
|
336
337
|
|
|
@@ -339,7 +340,7 @@ icon: shield
|
|
|
339
340
|
### `warn-git-stash-drop`
|
|
340
341
|
|
|
341
342
|
**الحدث:** PreToolUse (Bash)
|
|
342
|
-
|
|
343
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `git stash drop`. لا يحظر الأمر.
|
|
343
344
|
|
|
344
345
|
بدون معاملات.
|
|
345
346
|
|
|
@@ -348,7 +349,7 @@ icon: shield
|
|
|
348
349
|
### `warn-all-files-staged`
|
|
349
350
|
|
|
350
351
|
**الحدث:** PreToolUse (Bash)
|
|
351
|
-
|
|
352
|
+
**الإعداد الافتراضي:** تعليمات Claude لمراجعة ما ينص عليه عند تشغيل `git add -A` أو `git add .`. لا يحظر الأمر.
|
|
352
353
|
|
|
353
354
|
بدون معاملات.
|
|
354
355
|
|
|
@@ -356,12 +357,12 @@ icon: shield
|
|
|
356
357
|
|
|
357
358
|
## قاعدة البيانات
|
|
358
359
|
|
|
359
|
-
|
|
360
|
+
اكتشف العمليات التي تدمر SQL قبل تنفيذها ضد قاعدة البيانات الخاصة بك.
|
|
360
361
|
|
|
361
362
|
### `warn-destructive-sql`
|
|
362
363
|
|
|
363
364
|
**الحدث:** PreToolUse (Bash)
|
|
364
|
-
|
|
365
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل SQL يحتوي على `DROP TABLE`، `DROP DATABASE`، أو `DELETE` بدون جملة `WHERE`.
|
|
365
366
|
|
|
366
367
|
بدون معاملات.
|
|
367
368
|
|
|
@@ -370,7 +371,7 @@ icon: shield
|
|
|
370
371
|
### `warn-schema-alteration`
|
|
371
372
|
|
|
372
373
|
**الحدث:** PreToolUse (Bash)
|
|
373
|
-
|
|
374
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل بيانات `ALTER TABLE`.
|
|
374
375
|
|
|
375
376
|
بدون معاملات.
|
|
376
377
|
|
|
@@ -378,17 +379,17 @@ icon: shield
|
|
|
378
379
|
|
|
379
380
|
## التحذيرات
|
|
380
381
|
|
|
381
|
-
إعطاء الوكلاء سياق إضافي قبل العمليات المحتملة
|
|
382
|
+
إعطاء الوكلاء سياق إضافي قبل العمليات المحتملة ولكن غير المدمرة.
|
|
382
383
|
|
|
383
384
|
### `warn-large-file-write`
|
|
384
385
|
|
|
385
386
|
**الحدث:** PreToolUse (Write)
|
|
386
|
-
|
|
387
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل كتابة ملفات أكبر من 1024 كيلوبايت.
|
|
387
388
|
|
|
388
389
|
**المعاملات:**
|
|
389
390
|
|
|
390
391
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
391
|
-
|
|
392
|
+
|--------|-------|---------|-------|
|
|
392
393
|
| `thresholdKb` | `number` | `1024` | عتبة حجم الملف بالكيلوبايت التي يتم فوقها إصدار تحذير. |
|
|
393
394
|
|
|
394
395
|
**مثال:**
|
|
@@ -404,7 +405,7 @@ icon: shield
|
|
|
404
405
|
```
|
|
405
406
|
|
|
406
407
|
<Note>
|
|
407
|
-
يفرض معالج hook حد
|
|
408
|
+
يفرض معالج hook حد 1 ميجابايت لـ stdin على الحمول الثقيلة. لاختبار هذه السياسة بمحتوى صغير، اضبط `thresholdKb` على قيمة أقل بكثير من 1024.
|
|
408
409
|
</Note>
|
|
409
410
|
|
|
410
411
|
---
|
|
@@ -412,7 +413,7 @@ icon: shield
|
|
|
412
413
|
### `warn-package-publish`
|
|
413
414
|
|
|
414
415
|
**الحدث:** PreToolUse (Bash)
|
|
415
|
-
|
|
416
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `npm publish`.
|
|
416
417
|
|
|
417
418
|
بدون معاملات.
|
|
418
419
|
|
|
@@ -421,7 +422,7 @@ icon: shield
|
|
|
421
422
|
### `warn-background-process`
|
|
422
423
|
|
|
423
424
|
**الحدث:** PreToolUse (Bash)
|
|
424
|
-
|
|
425
|
+
**الإعداد الافتراضي:** تعليمات Claude بالحذر عند إطلاق العمليات في الخلفية عبر `nohup`، `&`، `disown`، أو `screen`.
|
|
425
426
|
|
|
426
427
|
بدون معاملات.
|
|
427
428
|
|
|
@@ -430,20 +431,56 @@ icon: shield
|
|
|
430
431
|
### `warn-global-package-install`
|
|
431
432
|
|
|
432
433
|
**الحدث:** PreToolUse (Bash)
|
|
433
|
-
|
|
434
|
+
**الإعداد الافتراضي:** تعليمات Claude بالتأكيد قبل تشغيل `npm install -g`، `yarn global add`، أو `pip install` بدون بيئة افتراضية.
|
|
434
435
|
|
|
435
436
|
بدون معاملات.
|
|
436
437
|
|
|
437
438
|
---
|
|
438
439
|
|
|
440
|
+
## مديرو الحزم
|
|
441
|
+
|
|
442
|
+
فرض مديري الحزم المسموح بهم على الوكيل.
|
|
443
|
+
|
|
444
|
+
### `prefer-package-manager`
|
|
445
|
+
|
|
446
|
+
**الحدث:** PreToolUse (Bash)
|
|
447
|
+
**الإعداد الافتراضي:** معطل. عند التفعيل، يحظر أي أمر مدير حزم غير موجود في قائمة `allowed` ويخبر Claude بإعادة كتابة الأمر باستخدام مدير مسموح به.
|
|
448
|
+
|
|
449
|
+
يكتشف: pip, pip3, python -m pip, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo.
|
|
450
|
+
|
|
451
|
+
| المعامل | النوع | الافتراضي | الوصف |
|
|
452
|
+
|--------|-------|---------|-------|
|
|
453
|
+
| `allowed` | string[] | `[]` | أسماء مديري الحزم المسموح بها. يتم حظر أي مدير مكتشف غير موجود في هذه القائمة. عند كونها فارغة، السياسة غير فعالة. |
|
|
454
|
+
| `blocked` | string[] | `[]` | أسماء مديري إضافية للحظر بما يتجاوز القائمة المدمجة (مثلاً `['pdm', 'pipx']`). |
|
|
455
|
+
|
|
456
|
+
تغطي قائمة الحظر المدمجة: pip, pip3, npm, npx, yarn, pnpm, pnpx, bun, bunx, uv, poetry, pipenv, conda, cargo. استخدم `blocked` لإضافة مديري غير موجودين في هذه القائمة.
|
|
457
|
+
|
|
458
|
+
**مثال التكوين:**
|
|
459
|
+
|
|
460
|
+
```json
|
|
461
|
+
{
|
|
462
|
+
"enabledPolicies": ["prefer-package-manager"],
|
|
463
|
+
"policyParams": {
|
|
464
|
+
"prefer-package-manager": {
|
|
465
|
+
"allowed": ["uv", "bun"],
|
|
466
|
+
"blocked": ["pdm", "pipx"]
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
مع هذا الإعداد، `pip install flask` و `pdm install flask` كلاهما مرفوض برسالة تخبر Claude بالاستخدام `uv` أو `bun` بدلاً من ذلك. أوامر مثل `uv pip install flask` مسموح بها لأن `uv` موجود في قائمة المسموحين ويتم فحصه أولاً.
|
|
473
|
+
|
|
474
|
+
---
|
|
475
|
+
|
|
439
476
|
## سلوك الذكاء الاصطناعي
|
|
440
477
|
|
|
441
|
-
|
|
478
|
+
كشف عندما يعلق الوكلاء أو يتصرفون بشكل غير متوقع.
|
|
442
479
|
|
|
443
480
|
### `warn-repeated-tool-calls`
|
|
444
481
|
|
|
445
482
|
**الحدث:** PreToolUse (جميع الأدوات)
|
|
446
|
-
|
|
483
|
+
**الإعداد الافتراضي:** تعليمات Claude لإعادة التفكير عند استدعاء نفس الأداة 3 مرات أو أكثر بنفس المعاملات - وهي علامة شائعة على أن الوكيل عالق في حلقة.
|
|
447
484
|
|
|
448
485
|
بدون معاملات.
|
|
449
486
|
|
|
@@ -451,14 +488,14 @@ icon: shield
|
|
|
451
488
|
|
|
452
489
|
## سير العمل
|
|
453
490
|
|
|
454
|
-
فرض سير عمل منضبط لنهاية الجلسة.
|
|
491
|
+
فرض سير عمل منضبط لنهاية الجلسة. تطلق هذه السياسات على حدث **Stop** وترفض Claude من التوقف حتى يتم استيفاء كل شرط. تتبع سلسلة اعتماد طبيعية: commit → push → PR → CI. إذا رفضت سياسة، يتم تخطي السياسات اللاحقة في السلسلة (الرفض يختصر).
|
|
455
492
|
|
|
456
|
-
جميع سياسات سير العمل **fail-open**: إذا
|
|
493
|
+
جميع سياسات سير العمل **fail-open**: إذا لم تكن الأداة المطلوبة متاحة (مثلاً `gh` غير مثبتة، لا يوجد remote git)، تسمح السياسة برسالة إعلامية توضح سبب تخطي الفحص.
|
|
457
494
|
|
|
458
495
|
### `require-commit-before-stop`
|
|
459
496
|
|
|
460
497
|
**الحدث:** Stop
|
|
461
|
-
|
|
498
|
+
**الإعداد الافتراضي:** رفض التوقف عندما توجد تغييرات غير مرتكبة (ملفات معدلة أو منصة أو غير متتبعة). إرجاع رسالة إعلامية عندما يكون دليل العمل نظيفاً.
|
|
462
499
|
|
|
463
500
|
بدون معاملات.
|
|
464
501
|
|
|
@@ -467,13 +504,13 @@ icon: shield
|
|
|
467
504
|
### `require-push-before-stop`
|
|
468
505
|
|
|
469
506
|
**الحدث:** Stop
|
|
470
|
-
|
|
507
|
+
**الإعداد الافتراضي:** رفض التوقف عندما توجد التزامات غير مدفوعة أو عندما لا يكون للفرع الحالي فرع تتبع بعيد. يقترح `git push -u` لإنشاء فرع تتبع إذا لزم الأمر. يفشل بشكل مفتوح إذا لم يتم تكوين remote.
|
|
471
508
|
|
|
472
509
|
**المعاملات:**
|
|
473
510
|
|
|
474
511
|
| المعامل | النوع | الافتراضي | الوصف |
|
|
475
|
-
|
|
476
|
-
| `remote` | `string` | `"origin"` | اسم
|
|
512
|
+
|--------|-------|---------|-------|
|
|
513
|
+
| `remote` | `string` | `"origin"` | اسم remote للدفع إليه. |
|
|
477
514
|
|
|
478
515
|
**مثال:**
|
|
479
516
|
|
|
@@ -492,14 +529,14 @@ icon: shield
|
|
|
492
529
|
### `require-pr-before-stop`
|
|
493
530
|
|
|
494
531
|
**الحدث:** Stop
|
|
495
|
-
|
|
532
|
+
**الإعداد الافتراضي:** رفض التوقف عندما لا يوجد طلب دمج للفرع الحالي، أو عندما يكون الطلب الموجود مغلقاً/مدمجاً. تعليمات Claude لإنشاء طلب دمج مع `gh pr create`.
|
|
496
533
|
|
|
497
534
|
بدون معاملات.
|
|
498
535
|
|
|
499
536
|
<Note>
|
|
500
|
-
تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`)
|
|
501
|
-
قم بتشغيل `gh auth login`
|
|
502
|
-
|
|
537
|
+
تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والتحقق منها.
|
|
538
|
+
قم بتشغيل `gh auth login` بـ personal access token يملك نطاق `repo` للوصول للقراءة إلى
|
|
539
|
+
طلبات الدمج. إذا لم يتم تثبيت `gh` أو لم يتم التحقق منها، تفشل السياسة بشكل مفتوح وتبلغ السبب إلى Claude.
|
|
503
540
|
</Note>
|
|
504
541
|
|
|
505
542
|
---
|
|
@@ -507,14 +544,14 @@ pull requests. إذا لم يتم تثبيت `gh` أو لم يتم المصاد
|
|
|
507
544
|
### `require-ci-green-before-stop`
|
|
508
545
|
|
|
509
546
|
**الحدث:** Stop
|
|
510
|
-
|
|
547
|
+
**الإعداد الافتراضي:** رفض التوقف عندما تكون فحوصات CI فاشلة أو لا تزال قيد التشغيل على الفرع الحالي. يفحص كل من مسارات عمل GitHub Actions والفحوصات من جهات خارجية (مثلاً CodeRabbit, SonarCloud, Codecov). يتعامل مع الاستنتاجات `skipped` كنجاح. إرجاع رسالة إعلامية عندما تمر جميع الفحوصات.
|
|
511
548
|
|
|
512
549
|
بدون معاملات.
|
|
513
550
|
|
|
514
551
|
<Note>
|
|
515
|
-
تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`)
|
|
516
|
-
قم بتشغيل `gh auth login`
|
|
517
|
-
|
|
552
|
+
تتطلب هذه السياسة تثبيت [GitHub CLI](https://cli.github.com/) (`gh`) والتحقق منها.
|
|
553
|
+
قم بتشغيل `gh auth login` بـ personal access token يملك نطاق `repo` للوصول للقراءة إلى
|
|
554
|
+
مسارات عمل Actions والـ Checks API. إذا لم يتم تثبيت `gh` أو لم يتم التحقق منها، تفشل السياسة بشكل مفتوح وتبلغ السبب إلى Claude.
|
|
518
555
|
</Note>
|
|
519
556
|
|
|
520
557
|
---
|
|
@@ -523,7 +560,7 @@ Actions workflow runs و Checks API. إذا لم يتم تثبيت `gh` أو ل
|
|
|
523
560
|
|
|
524
561
|
## تعطيل السياسات الفردية
|
|
525
562
|
|
|
526
|
-
أزل سياسة
|
|
563
|
+
أزل سياسة محددة من `enabledPolicies` في إعدادك، أو قم بإيقافها في علامة Policies بلوحة التحكم.
|
|
527
564
|
|
|
528
565
|
```json
|
|
529
566
|
{
|
|
@@ -534,4 +571,4 @@ Actions workflow runs و Checks API. إذا لم يتم تثبيت `gh` أو ل
|
|
|
534
571
|
}
|
|
535
572
|
```
|
|
536
573
|
|
|
537
|
-
|
|
574
|
+
السياسات غير المدرجة في `enabledPolicies` لا تعمل، حتى إذا كانت هناك إدخالات `policyParams` لها.
|