# أنماط التنفيذ والأذونات (/ar/docs/verdent-for-vscode/execution-modes/overview)

> فهم أنماط التنفيذ المختلفة ووقت استخدام كل منها



***

يوفّر Verdent for VS Code عدة أنماط تنفيذ تتحكم في طريقة تفاعل الذكاء الاصطناعي مع ملفاتك وتنفيذ الأوامر. يقدّم كل نمط توازنًا مختلفًا بين التحكم والسرعة والأمان.

### ما ستتعلمه [#ما-ستتعلمه]

* كيف يعمل كل نمط تنفيذ ومتى تستخدمه
* نماذج الأذونات واعتبارات الأمان
* مقارنة الأنماط واستراتيجيات التبديل بينها
* Think Hard Mode لمهام الاستدلال المعقدة

### الأنماط الرئيسية المتاحة [#الأنماط-الرئيسية-المتاحة]

<CardGroup cols="2">
  <Card title="Manual Accept Mode" icon="hand">
    النمط الافتراضي الذي يطلب إذنًا لكل عملية محمية. أقصى درجات التحكم والمراقبة.
  </Card>

  <Card title="Auto-Run Mode" icon="play">
    عمليات ملفات تلقائية، ويتطلب إذنًا للأوامر. يوازن بين السرعة والأمان.
  </Card>

  <Card title="Skip Permission Mode" icon="forward">
    استقلالية كاملة للبيئات المعزولة. لا توجد أي مطالبات إذن على الإطلاق.
  </Card>

  <Card title="Plan Mode" icon="clipboard-list">
    نمط تخطيط للقراءة فقط. راجع الخطة الكاملة قبل بدء التنفيذ.
  </Card>
</CardGroup>

***

## أنماط التنفيذ [#أنماط-التنفيذ]

<Tabs>
  <Tab title="Manual Accept Mode">
    Manual Accept Mode هو نمط التنفيذ الافتراضي الذي يوفّر تحكمًا في تعديلات الملفات وتنفيذ الأوامر.

    **العمليات التلقائية:**

    * قراءة الملفات وتحليل الكود
    * استعراض الدلائل

    **يتطلب إذنًا:**

    * تحرير الملفات (إنشاء، تعديل، حذف)
    * تنفيذ الأوامر (أوامر الطرفية، الاختبارات، عمليات البناء)

    عندما يحتاج Verdent إلى تنفيذ عملية محمية، فإنه يعرض الإجراء الذي يريد اتخاذه والملف/الأمر المتعلق به. يمكنك **قبول** أو **رفض** كل عملية.

    **مهم:** كل إذن يخص تلك العملية المحددة فقط. يتطلب Manual Accept Mode الموافقة على كل عملية محمية طوال الجلسة.

    #### متى تستخدمه [#متى-تستخدمه]

    * عند تعلّم إمكانات Verdent وأنماط سير عمله
    * عند العمل في قواعد كود غير مألوفة تتطلب مراقبة دقيقة
    * عند إجراء تغييرات حرجة على كود الإنتاج أو المناطق الحساسة أمنيًا
    * عند وجود متطلبات امتثال تحتاج إلى سجلات موافقة صريحة

    #### التفعيل [#التفعيل]

    يكون Manual Accept Mode مفعّلًا افتراضيًا. للتبديل إليه مجددًا:

    <Steps>
      <Step title="افتح قائمة الأذونات">
        حدد زر "Switch Permission" في مربع الإدخال
      </Step>

      <Step title="حدد Manual Accept Mode">
        اختر "Manual Accept Mode" من القائمة المنسدلة
      </Step>

      <Step title="تحقق من التفعيل">
        يعرض الزر "Manual" للتأكيد على أن النمط مفعّل
      </Step>
    </Steps>

    #### اعتبارات الأمان [#اعتبارات-الأمان]

    **المزايا:**

    * موافقة عند أول استخدام لكل نوع أداة (تحرير الملفات، الأوامر، الأدوات)
    * رؤية كاملة قبل منح الوصول
    * أقصى درجات التحكم والشفافية

    **القيود:**

    * بعد الموافقة الأولى على نوع أداة معيّن، تمضي الاستخدامات اللاحقة دون مطالبات
    * الموافقة تتم على مستوى نوع الأداة، لا على مستوى كل عملية
    * ابدأ جلسات جديدة عند العمل على كود حرج لإعادة ضبط موافقات الأدوات
  </Tab>

  <Tab title="Auto-Run Mode">
    يوافق Auto-Run Mode تلقائيًا على عمليات الملفات بينما يطلب إذنًا للأوامر. هذا يقلل من مطالبات الإذن في عمل الملفات الروتيني مع الحفاظ على الأمان للعمليات الخطرة.

    **تلقائي:**

    * قراءة الملفات وتحريرها وإنشاؤها وحذفها داخل مساحة العمل
    * نقل الملفات وإعادة تسميتها وتنظيمها داخل مساحة العمل
    * عمليات البحث في الملفات والتنقّل بينها

    **يتطلب إذنًا:**

    * **أي أمر يتضمن مسارات خارج مساحة العمل الحالية**
    * **أوامر bash الخطرة:** `rm -rf`، `git commit`، `git push`، وغيرها
    * تنفيذ الأوامر (الطرفية، النصوص البرمجية، عمليات البناء)
    * تثبيت الحزم والتعديلات على النظام

    #### متى تستخدمه [#متى-تستخدمه-1]

    | استخدم Auto-Run في                                         | لا تستخدمه في                                |
    | ---------------------------------------------------------- | -------------------------------------------- |
    | قواعد كود موثوقة مع نظام تحكم بالإصدارات                   | قاعدة كود غير مألوفة                         |
    | النمذجة السريعة والتجريب                                   | كود إنتاج حرج                                |
    | إعادة الهيكلة عبر ملفات متعددة (15+ ملف = توفير 15 مطالبة) | عدم وجود شبكة أمان من نظام التحكم بالإصدارات |
    | التطوير المركّز الذي يقلل المقاطعات                        | متطلبات الامتثال                             |

    #### التفعيل [#التفعيل-1]

    <Steps>
      <Step title="افتح قائمة الأذونات">
        حدد زر "Switch Permission" الذي يعرض النمط الحالي
      </Step>

      <Step title="حدد Auto-Run Mode">
        اختر "Auto-Run Mode" من القائمة المنسدلة
      </Step>

      <Step title="تحقق من التفعيل">
        يعرض الزر "Auto" للتأكيد على أن النمط مفعّل
      </Step>
    </Steps>

    يستمر هذا الإعداد عبر الجلسات وإعادة تشغيل VS Code. ويُطبّق عالميًا على جميع مساحات العمل.

    #### مثال على سير العمل [#مثال-على-سير-العمل]

    **بناء نقطة نهاية POST /api/tasks:**

    1. فعّل Auto-Run Mode
    2. أرسل: "أنشئ نقطة نهاية POST /api/tasks تتحقق من وجود الفئة وتحفظ في قاعدة البيانات"
    3. يقرأ Verdent أكثر من 5 ملفات، ويعدّل 3 ملفات تلقائيًا (دون مطالبات)
    4. راجع التغييرات في لوحة Source Control
    5. اطلب الاختبارات: "شغّل اختبارات API الخاصة بالمهام"
    6. مطالبة إذن لأمر `npm test` - اقبل
    7. أضف التحقق: "أضف تحققًا للعناوين الفارغة"
    8. يعدّل Verdent تلقائيًا (دون مطالبة)
    9. اطلب الاختبارات مجددًا - مطالبة إذن - اقبل
    10. راجع الاختلافات، وثبّت التغييرات (commit)

    **النتيجة:** 3 مطالبات أوامر، صفر مطالبات ملفات. القبول اليدوي كان سيتطلب 4 مطالبات ملفات إضافية.

    #### اعتبارات الأمان [#اعتبارات-الأمان-1]

    **المزايا:**

    * التغييرات مرئية فورًا في VS Code
    * محصور بمساحة العمل (لا يمكن أن يؤثر على ملفات النظام)
    * يوفّر Git شبكة أمان للتراجع

    **المخاطر:**

    * لا توجد مراقبة على عمليات الملفات
    * نطاق غير متوقع (مثل "أعد تسمية User إلى Account" قد يعدّل عشرات الملفات)
    * إمكانية حذف الملفات أثناء التنظيف
    * قد يعدّل ملفات حساسة إذا طُلب منه ذلك

    **التخفيف من المخاطر:**

    * استخدم prompts واضحة ومحددة
    * راجع لوحة Source Control بعد انتهاء العمليات
    * ثبّت التغييرات (commit) بشكل متكرر للحصول على نقاط تفقّد نظيفة
    * استخدم Plan Mode للعمليات المعقدة أولًا
    * اضبط ملف .gitignore لحماية الملفات الحساسة
  </Tab>

  <Tab title="Skip Permission Mode">
    يتجاوز Skip Permission Mode جميع مطالبات الإذن، مما يسمح باستقلالية كاملة. &#x2A;*استخدمه فقط في بيئات معزولة وقابلة للاستهلاك.**

    **جميع العمليات تلقائية:**

    * عمليات الملفات
    * تنفيذ الأوامر
    * تثبيت الحزم
    * العمليات على مستوى النظام

    <Warning>
      يزيل هذا النمط جميع حواجز الأمان. استخدمه فقط في بيئات معزولة تمامًا وقابلة للاستهلاك حيث لا تترتب على الأخطاء أي عواقب. لا تستخدمه أبدًا في الإنتاج أو في أي قاعدة كود تهمك.
    </Warning>

    #### متى تستخدمه [#متى-تستخدمه-2]

    | استخدم Skip Permission في                        | لا تستخدمه أبدًا في           |
    | ------------------------------------------------ | ----------------------------- |
    | خطوط أنابيب CI/CD تلقائية في حاويات معزولة       | بيئات الإنتاج                 |
    | حاويات تطوير قابلة للاستهلاك (تُحذف بعد التجربة) | بيئات تطوير تحتوي على كود مهم |
    | بيئات صندوق رملي (sandbox) بلا اتصال بالإنتاج    | أي قاعدة كود تهمك             |
    | سير عمل نصي حيث تُبطل الموافقة البشرية الغرض منه | مستودعات مشتركة               |
    |                                                  | بيئات تحتوي على بيانات حساسة  |

    #### التفعيل [#التفعيل-2]

    <Steps>
      <Step title="افتح قائمة الأذونات">
        حدد زر "Switch Permission"
      </Step>

      <Step title="حدد Skip Permission Mode">
        اختر "Skip Permission Mode" من القائمة المنسدلة
      </Step>

      <Step title="تحقق من التفعيل">
        يعرض الزر "Skip" للتأكيد على أن النمط مفعّل
      </Step>
    </Steps>

    **فحص أمان قبل التفعيل:**

    * هل هذه حاوية أو جهاز افتراضي قابل للاستهلاك؟
    * هل يمكن حذف هذه البيئة دون عواقب؟
    * هل يوجد هنا أي كود إنتاج أو كود مهم؟

    إذا كانت الإجابة "لا" على السؤالين الأولين، أو "نعم" على السؤال الثالث، فلا تفعّل هذا النمط.

    #### تحذيرات الأمان [#تحذيرات-الأمان]

    **تُزال جميع حواجز الأمان:**

    * تُنفَّذ الأوامر فورًا بأذونات النظام
    * يمكن تعديل الملفات أو حذفها دون تحذير
    * تمضي عمليات قاعدة البيانات وعمليات Git (بما في ذلك الدفع القسري force push) دون موافقة
    * قد يُثبِّت حزمًا ضارة أو يعرّض بيانات الاعتماد

    **آمن فقط عندما:**

    * تكون البيئة قابلة للاستهلاك بالكامل
    * لا يوجد كود أو بيانات مهمة
    * لا يوجد اتصال بأنظمة الإنتاج
    * تتقبل أن أي شيء قد يُدمَّر
  </Tab>
</Tabs>

***

## Plan Mode [#plan-mode]

Plan Mode هو نمط تفاعل للقراءة فقط، يقوم فيه Verdent بتحليل الكود وإنشاء خطط مفصّلة وطرح أسئلة توضيحية، لكنه لا يمكنه تعديل الملفات أو تنفيذ الأوامر حتى توافق عليه.

#### كيف يعمل [#كيف-يعمل]

1. **التحليل** - يقرأ الملفات تلقائيًا
2. **التخطيط** - يُنشئ خطة منظّمة مع قائمة مهام
3. **التوضيح** - يطرح أسئلة لإزالة الغموض
4. **الموافقة** - تراجع الخطة وتقرر المضي قدمًا
5. **التنفيذ** - يبدّل إلى نمط الإذن الخاص بك للتنفيذ

تعرض الخطة الملفات المزمع تعديلها وخطوات التنفيذ والتبعيات واستراتيجية التحقق.

#### متى تستخدمه [#متى-تستخدمه-3]

* تغييرات معقدة عبر ملفات متعددة (فهم النطاق قبل الالتزام)
* قواعد كود غير مألوفة (استكشاف آمن دون خطر)
* قرارات معمارية (مراجعة الأسلوب قبل التنفيذ)
* تجنّب إرهاق القبول اليدوي (مراجعة واحدة بدل 50 مطالبة فردية)
* تغييرات إنتاج عالية الحساسية (رؤية كاملة قبل التنفيذ)

#### التفعيل [#التفعيل-3]

<Steps>
  <Step title="افتح قائمة الأنماط">
    حدد زر "Switch Mode" في مربع الإدخال
  </Step>

  <Step title="حدد Plan Mode">
    اختر "Plan Mode" من القائمة المنسدلة
  </Step>

  <Step title="تحقق من التفعيل">
    يتغيّر مؤشر النمط إلى "Plan" للتأكيد على أن النمط مفعّل
  </Step>
</Steps>

عند التفعيل، يحلّل Verdent الكود ويُنشئ خططًا لكنه لا يعدّل الملفات أو ينفّذ الأوامر حتى توافق عليها. بعد الموافقة، يبدّل إلى نمط الإذن الافتراضي الخاص بك (Manual Accept أو Auto-Run).

#### اعتبارات الأمان [#اعتبارات-الأمان-2]

**المزايا:**

* خطر تنفيذ صفري أثناء التخطيط
* رؤية كاملة قبل الالتزام
* توضيح تفاعلي يزيل الغموض
* آمن لتحليل الإنتاج

**القيود:**

* الموافقة لا تضمن الصحة (قد تحتوي الخطط على أخطاء منطقية)
* أمان التنفيذ يعتمد على نمط الإذن المختار بعد الموافقة
* جودة الخطة تعتمد على وضوح الـ prompt

**أفضل الممارسات:**

* راجع الخطط للتحقق من أخطاء منطقية أو سوء فهم
* اطرح أسئلة متابعة إذا كان هناك غموض
* نقّح الـ prompts قبل الموافقة على التنفيذ
* ضع في الحسبان نمط الإذن الذي سينفّذ (Manual Accept للمراقبة، Auto-Run للسرعة)

***

## Think Hard Mode [#think-hard-mode]

يخصّص Think Hard Mode أقصى الموارد الحاسوبية لمهام الاستدلال المعقدة. يستكشف النموذج مناهج متعددة ويقدّم حلولًا أكثر شمولًا.

**الخصائص:**

* وقت استدلال ممتد
* تحليل أعمق لمناهج حل متعددة
* تعامل أفضل مع المنطق المعقد وحالات الحدّ والقرارات المعمارية
* تكلفة أرصدة أعلى لكل طلب

#### متى تستخدمه [#متى-تستخدمه-4]

| استخدم Think Hard Mode في               | لا تستخدمه في                   |
| --------------------------------------- | ------------------------------- |
| قرارات معمارية معقدة ذات مقايضات متعددة | مهام بسيطة ومباشرة              |
| تصحيح أخطاء معقّد بأسباب محتملة متعددة  | طلبات حساسة للوقت               |
| تصميم خوارزميات يتطلب تحليل التحسين     | ميزانية أرصدة محدودة            |
| منطق أعمال حرج تكون فيه الدقة أساسية    | عندما يكون النمط القياسي كافيًا |
| تحسين أداء اختناقات معقدة               |                                 |

#### التفعيل [#التفعيل-4]

<Tabs>
  <Tab title="زر Think Hard">
    استخدم زر واجهة المستخدم للتفعيل لكل طلب على حدة:

    <Steps>
      <Step title="فعّل Think Hard">
        حدد زر/مفتاح "Think Hard" في مربع الإدخال
      </Step>

      <Step title="أرسل طلبك">
        اكتب طلبك وأرسله
      </Step>

      <Step title="طلب واحد فقط">
        ينطبق فقط على ذلك الطلب المحدد - وليس دائمًا
      </Step>
    </Steps>

    يعمل مع جميع مزوّدي الذكاء الاصطناعي. غير دائم - يجب تفعيله في كل مرة للطلبات التي تتطلب استدلالًا عميقًا.
  </Tab>

  <Tab title="اللغة الطبيعية (Claude)">
    ضمّن كلمات مفتاحية للاستدلال في prompt الخاص بك:

    ```
    Think: Design the optimal database schema for this multi-tenant SaaS application
    ```

    أو للحصول على أقصى استدلال:

    ```
    Ultrathink: Analyze the trade-offs between different authentication approaches
    ```

    <Note>
      "Think" و"ultrathink" هما إمكانيتان خاصتان بنموذج Claude. تُفعّل هاتان الكلمتان المفتاحيتان استدلالًا أعمق في نماذج Claude (Sonnet، Opus) ولكنها قد لا تعمل مع مزوّدي ذكاء اصطناعي آخرين (GPT-5، MiniMax).
    </Note>

    التفعيل يكون لكل طلب على حدة فقط - وليس دائمًا كما في Manual Accept أو Auto-Run.
  </Tab>
</Tabs>

***

## مقارنة الأنماط [#مقارنة-الأنماط]

| النمط               | التحكم         | السرعة   | الأفضل لـ                                             | تجنّبه عند                                  |
| ------------------- | -------------- | -------- | ----------------------------------------------------- | ------------------------------------------- |
| **Manual Accept**   | أقصى           | الأبطأ   | التعلّم، الكود غير المألوف، التغييرات الحرجة          | المشاريع الموثوقة، التكرار السريع           |
| **Auto-Run**        | متوسط          | سريع     | قواعد الكود الموثوقة، النمذجة، العمل عبر ملفات متعددة | الكود غير المألوف، عدم وجود تحكم بالإصدارات |
| **Skip Permission** | معدوم          | الأسرع   | CI/CD، الحاويات القابلة للاستهلاك، البيئات المعزولة   | الإنتاج، الكود المهم                        |
| **Plan Mode**       | المراجعة أولًا | لا ينطبق | التغييرات المعقدة، القرارات المعمارية                 | المهام البسيطة                              |
| **Think Hard**      | لكل طلب        | أبطأ     | الاستدلال المعقد، الخوارزميات، المنطق الحرج           | المهام البسيطة، الحساسة للوقت               |

### متى تستخدم كل نمط [#متى-تستخدم-كل-نمط]

| السيناريو                      | Manual Accept | Auto-Run | Skip Permission | Plan Mode |
| ------------------------------ | :-----------: | :------: | :-------------: | :-------: |
| تعلّم Verdent                  |       ✓       |          |                 |           |
| قاعدة كود غير مألوفة           |       ✓       |          |                 |     ✓     |
| قاعدة كود موثوقة مع Git        |               |     ✓    |                 |           |
| كود حرج/إنتاج                  |       ✓       |          |                 |     ✓     |
| النمذجة السريعة                |               |     ✓    |                 |           |
| إعادة الهيكلة عبر ملفات متعددة |               |     ✓    |                 |           |
| تخطيط معماري معقد              |               |          |                 |     ✓     |
| خطوط أنابيب CI/CD (معزولة)     |               |          |        ✓        |           |
| حاويات قابلة للاستهلاك         |               |          |        ✓        |           |
| متطلبات الامتثال               |       ✓       |          |                 |           |

***

## أفضل ممارسات الأمان [#أفضل-ممارسات-الأمان]

<Accordion title="تسلسل الأمان (من الأكثر أمانًا إلى الأقل أمانًا)">
  فهم تسلسل الأمان لكل نمط يساعدك على الاختيار المناسب لمستويات الخطر المختلفة.

  1. **Plan Mode** - للقراءة فقط حتى الموافقة. خطر تنفيذ صفري أثناء التخطيط.
  2. **Manual Accept Mode** - تحكم على مستوى كل عملية مع موافقة عند أول استخدام لكل نوع أداة.
  3. **Auto-Run Mode** - استقلالية للملفات مع موافقة للأوامر. يلزم وجود شبكة أمان من Git.
  4. **Skip Permission Mode** - استقلالية كاملة. للبيئات المعزولة فقط.

  اختر نمطك بحسب مستوى الخطر: يستخدم الكود الحرج الأنماط الأكثر أمانًا (Plan، Manual Accept)، ويستخدم الكود الموثوق أنماطًا أسرع (Auto-Run)، وتستخدم البيئات القابلة للاستهلاك النمط الأسرع (Skip Permission).
</Accordion>

<Accordion title="ممارسات عامة">
  ممارسات أساسية تنطبق بصرف النظر عن نمط التنفيذ الذي تستخدمه.

  **لجميع الأنماط:**

  1. **استخدم نظام التحكم بالإصدارات** - هيّئ Git قبل استخدام الأنماط المتحررة، ثبّت التغييرات بشكل متكرر، راجع الاختلافات قبل التثبيت
  2. **اكتب prompts واضحة** - كن محددًا بشأن النطاق، حدّد حدود الملفات بوضوح، استخدم إشارات @-mentions للسياق
  3. **راجع قبل التثبيت** - تحقق من لوحة Source Control بعد انتهاء العمليات، راجع جميع الاختلافات بعناية، اختبر التغييرات
  4. **ابدأ جلسات جديدة** - أزل السياق بين المهام الكبرى، أعِد ضبط موافقات الأدوات للعمل الحساس، تجنّب تلوّث السياق
  5. **طابق النمط مع الخطر** - الكود الحرج ← Manual Accept أو Plan Mode، الكود الموثوق ← Auto-Run، التجارب ← Auto-Run مع Git، القابل للاستهلاك ← Skip Permission فقط

  **تذكيرات أمنية:**

  * لا تثبّت أبدًا الملفات الحساسة (.env، بيانات الاعتماد)
  * اضبط .gitignore قبل استخدام Auto-Run
  * راجع أذونات الأوامر بعناية
  * استخدم Plan Mode للتغييرات التي تؤثر على الأمان
  * تعيد الجلسات الجديدة ضبط موافقات الأدوات في Manual Accept
</Accordion>

<Accordion title="Progressive Permission Model">
  فهم كيفية عمل نظام أذونات Verdent يساعدك على استخدامه بفعالية.

  **كيف يعمل:**

  1. **أول استخدام** - يطلب النظام إذنًا عند أول استخدام لكل نوع أداة (تحرير الملفات، تنفيذ الأوامر، استخدام الأدوات)
  2. **الاستخدامات اللاحقة** - بعد الموافقة الأولى، يمضي ذلك النوع من الأداة دون مطالبات لبقية الجلسة
  3. **جلسة جديدة** - يعيد بدء جلسة جديدة ضبط جميع الموافقات، مما يتيح لك بداية نظيفة

  **المبدأ الأساسي:** يوازن هذا النموذج بين الأمان والإنتاجية. تراجع وتوافق على أنواع الأدوات مرة واحدة، ثم تعمل بكفاءة ضمن سياق تلك الموافقة. للعمل الحساس، ابدأ جلسة جديدة لإعادة ضبط الموافقات.

  **لإعادة ضبط الموافقات:** ابدأ جلسة جديدة
</Accordion>

***

## انظر أيضًا [#انظر-أيضًا]

<CardGroup cols="2">
  <Card title="إدارة الموارد" href="/docs/verdent-for-vscode/resource-management/monitoring" icon="chart-line">
    مراقبة استخدام الرموز والأرصدة والأداء
  </Card>

  <Card title="أفضل الممارسات: السياق" href="/docs/verdent-for-vscode/best-practices/context" icon="layer-group">
    إدارة نوافذ السياق عبر الأنماط
  </Card>
</CardGroup>
