تجاوز إلى المحتوى
العربية
المستوى 9: اجعل Claude خاصًّا بك
الدرس 7 · +10 XP

أوقف Claude عن السؤال

في المستوى السادس تعلّمت لماذا تضيف الأوامر المملّة إلى الـ allowlist: حين يتوقّف Claude عن السؤال عن git status للمرة الأربعين، تصبح الطلبات التي تراها فعلًا مستحيلة التجاهل. وعدناك بأنك سترى أين تعيش تلك القائمة حقًّا. هنا المكان.

الـ allowlist يعيش في ملف اسمه settings.json، وفي كل مرة تنقر فيها «always allow» على طلب، فأنت تكتب بهدوء سطرًا فيه.

كنت تكتبه بالفعل

إليك ما لا يدركه معظم الناس: حين يظهر permission prompt وتختار «always allow»، يكتب Claude تلك القاعدة في settings.json نيابة عنك. لعلّك كنت تبني allowlist منذ مدة دون أن تفتح ملفًّا واحدًا.

إذًا settings.json ليس ملف config مخيفًا عليك تأليفه من الصفر. إنه سجلّ لقرارات اتّخذتها بالفعل — والآن يمكنك قراءته وتعديله مباشرة.

كيف يبدو

افتحه فيقرأ قسم الـ permissions كأنه لغة طبيعية تقريبًا:

{
  "permissions": {
    "allow": [
      "Bash(git status:*)",
      "Bash(git diff:*)",
      "Bash(ls:*)",
      "Bash(npm test:*)"
    ],
    "deny": [
      "Bash(git push:*)"
    ]
  }
}

allow هي القائمة الخضراء — شغّل هذه دون سؤال. وdeny هي القائمة الحمراء — لا تشغّل هذه أبدًا، ولا تسأل حتى. أيّ شيء ليس في أيّ من القائمتين يمرّ بحلقة «اسألني أولًا» المعتادة. يمكنك تعديل هذه يدويًّا: أضف سطرًا إلى allow فيتوقّف الطلب لذلك الأمر؛ أضف واحدًا إلى deny فلن يلمسه Claude.

(لا تقلق بشأن إتقان صيغة Bash(...) من الذاكرة — فالنقر على «always allow» يكتبها لك بشكل صحيح، ويمكنك نسخ النمط.)

ثلاثة ملفات، الفكرة نفسها التي رأيتها طوال المستوى

settings.json يتبع التقسيم نفسه بين المشروع والشخصي كما في CLAUDE.md والـ commands:

  • .claude/settings.json — في الـ repo، مشترك مع الفريق. قواعد ينبغي أن تكون لدى الجميع.
  • ~/.claude/settings.json — الـ home folder لديك، ينطبق على كل مشروع، لك وحدك.
  • .claude/settings.local.json — في المشروع لكنه خاصّ بك (يتجاهله git). تعديلاتك الشخصية لـ repo واحد.

افتراضيًّا، يكتب «always allow» في ملفّك المحلّي — فلا يُفرَض allowlist الشخصي على زملائك. إن أردت مشاركة قاعدة، فانقل ذلك السطر عن قصد إلى .claude/settings.json المُودَع.

الافتراض الآمن: دع «always allow» يبني قائمتك المحلّية الخاصة. ولا ترقِّ قاعدة إلى الملف المشترك إلا حين تقرّر أن الفريق كلّه ينبغي أن يحصل عليها.

الانضباط ما زال ساريًا

تعديل الملف يدويًّا أسرع من النقر، مما يسهّل التهوّر. قاعدة المستوى السادس لم تتغيّر: لا تضف أمرًا إلى الـ allowlist إلا إذا كنت ستشغّله بنفسك دون تردّد، ونمِّ القائمة ببطء. الملف فقط يجعل القائمة مرئية — لا يغيّر ما يستحقّ أن يكون فيها.

ما التالي

التقيت الآن كل مفتاح ضبط: CLAUDE.md، والـ memory، والـ slash commands، والـ settings. الدرس الأخير يجمعها كلّها في إعداد واحد مدّته عشرون دقيقة — Claude الشخصي الخاص بك، مُهيَّأً على الطريقة التي تعمل أنت بها.