> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Local configuration

title: "التكوين المحلي"
description: "التحكم في نطاق السياسة والمعاملات والملفات المخصصة وإعدادات Failproof AI على مستوى الجهاز."
icon: "file-cog"
----------------

يفصل Failproof AI بين اختيار السياسة وإعدادات الجهاز والخادم. يحافظ هذا على مراجعة خيارات السياسة في المستودع بينما تبقى بيانات الاعتماد وحالة الخادم خارج المستودع.

## اختر نطاق السياسة

<Tabs>
  <Tab title="Dashboard">
    شغّل `failproofai` بدون معاملات لفتح لوحة معلومات السياسة المحلية. اختر نطاق المستخدم أو المشروع أو المحلي قبل تفعيل السياسة بحيث يتم كتابة التغيير في ملف التكوين المقصود.

    * **User** ينطبق على جميع المشاريع على هذا الجهاز.
    * **Project** ينتمي إلى المستودع ويمكن التزامه.
    * **Local** يتجاوز مشروعاً واحداً لمستخدم واحد ويجب أن يبقى في gitignore.
  </Tab>

  <Tab title="CLI">
    ```bash theme={null}
    failproofai policy add block-rm-rf --scope user
    failproofai policy add block-force-push --scope project
    failproofai policy add warn-large-file-write --scope local
    failproofai policies
    ```

    لا يدعم كل محرّك النطاق المحلي. ترفض واجهة سطر الأوامر نطاقاً لا يمكن للمحرّك المحدد تمثيله.
  </Tab>
</Tabs>

| النطاق  | ملف تكوين السياسة                                   |
| ------- | --------------------------------------------------- |
| Project | `<project>/.failproofai/policies-config.json`       |
| Local   | `<project>/.failproofai/policies-config.local.json` |
| User    | `~/.failproofai/policies-config.json`               |

يتم دمج السياسات المفعّلة كاتحاد. معاملات السياسة تستخدم النطاق الأول الذي يحدد المعاملات لتلك السياسة، بترتيب project → local → user. مسارات السياسة المخصصة الصريحة تستخدم النطاق الأول الذي يحددها.

## قم بتكوين معاملات السياسة

<Tabs>
  <Tab title="Dashboard">
    افتح السياسة في لوحة معلومات المحلية، عدّل معاملات مدعومة، وحفظ في النطاق المحدد. شغّل إجراء وكيل متطابق وغير متطابق، ثم افحص القرار في **Observe → policy**.
  </Tab>

  <Tab title="CLI">
    عدّل `policies-config.json` للنطاق المحدد، ثم شغّل `failproofai policies` لإظهار أسماء السياسات أو مفاتيح المعاملات غير المعروفة.

    ```json theme={null}
    {
      "enabledPolicies": ["block-rm-rf", "block-force-push"],
      "policyParams": {
        "block-rm-rf": {
          "allowPaths": ["/tmp/build-output"]
        }
      }
    }
    ```

    ```bash theme={null}
    failproofai policies
    ```
  </Tab>
</Tabs>

## افهم ملفات الجهاز

`~/.failproofai` يحتوي على ملفات منفصلة لحدود الثقة المختلفة:

| المسار                 | الغرض                                                            |
| ---------------------- | ---------------------------------------------------------------- |
| `config.json`          | إعدادات الخادم والتدقيق والقياس غير السرية                       |
| `credentials.json`     | بيانات اعتماد السحابة؛ مخزنة برخصات المالك فقط                   |
| `policies-config.json` | اختيار نطاق المستخدم المدمج والمعاملات والمسارات المخصصة الصريحة |
| `policies/`            | سياسات اتفاقية المستخدم وأيضاً سياسات مدارة بواسطة السحابة       |
| `hook-activity/`       | سجل قرار السياسة المحلي                                          |
| `state/`               | الخادم والصحة والإيقاف المؤقت وحالة وقت التشغيل                  |

استخدم `FAILPROOFAI_HOME` لنقل مخطط الجهاز الكامل لحاوية أو اختبار معزول. لا تنقل دلائل الحالة الفردية بشكل مستقل.

<Warning>
  لا تلتزم أبداً بـ `credentials.json`. التزم بتكوين سياسة المشروع ومشروع سياسات الاتفاقية فقط بعد مراجعتها كرمز التطبيق.
</Warning>
