إعدادات التطوير: تهيئة "بيئة العمل" لـ Claude لتسير بسلاسة
📚 دليل السلسلة: الدرس السابق 45 Agent SDK علمك كيفية استخلاص قدرات Claude Code وتضمينها داخل أكوادك البرمجية الخاصة. هذا الدرس يعود بنا إلى الطرفية التي تكتب فيها الأوامر يومياً — أين يعمل Claude، وما الملفات التي يستطيع لمسها، وهل يمر عبر وكيل اتصال، وكيف يبدو مظهره، وأي نموذج يستخدم، حان الوقت لتهيئة هذه الجوانب الخمسة لـ "بيئة العمل" لتناسب متطلباتك الخاصة. وسنفصل في هذا الدرس أشهر إعدادات التطوير.
نبدأ أولاً باستعراض سيناريو قد يواجهه الكثير من المطورين.
يعمل الكثير من المستخدمين مع Claude Code لعدة أشهر بالاعتماد على "الإعدادات الافتراضية ودون تعديل". لتفاجأ يوماً باستلام مستودع برمجي خاص بأحد الزبائن، وتبدأ الشكوك في ذهنك — فهذا الكود غير مألوف، وماذا لو احتوى على تعليمات خبيثة تجعل Claude يشغل أوامر ضارة على جهاز Mac الخاص بك والذي تستخدمه يومياً، ويحتوي على مفاتيح SSH وشهادات npm وملفات العمل الحساسة. ما هي "الإجراءات الوقائية" الشائعة في هذه الحالة؟ تحديق عينيك في كل أمر يكتبه، وإبقاء يدك على زر Ctrl+C مستعدة للضغط. لتقضي يوماً متعباً في المراقبة دون إنجاز يذكر.
في الواقع، توفر الوثائق الرسمية حلاً بسيطاً ومباشراً لهذه المشكلة — وهو تشغيل Claude داخل بيئة معزولة (sandbox)، سواء كانت حاوية (container) أو بيئة افتراضية أو نظاماً مستقلاً، ليعمل بداخلها دون أي خطر على جهازك الأساسي. وتلك المراقبة البشرية المرهقة كانت بسبب تخطي قراءة وثائق التهيئة.
لقد سردنا هذا المثال لنتفادى الوقوع في نفس الخطأ. فإعدادات التطوير قد تبدو مخفية ولا نلتفت إليها كثيراً، ولكنها كفيلة بحماية جهازك وتوفير أموالك وتسهيل استخدامك في اللحظات الحاسمة. وسنوضح اليوم خمسة جوانب هامة: وظيفة كل منها، متى تحتاجها، وكيفية تهيئتها.
بعد قراءة هذا الدرس، ستحصل على:
- ملخص في جملة واحدة لكل جانب من جوانب التطوير الخمسة (البيئة المعزولة، devcontainer، الشبكة، الطرفية، النموذج) لتحديد متى تحتاج لتعديلها
- كيفية تفعيل البيئة المعزولة (sandbox) باستخدام أمر
/sandboxالبسيط، لتقليل رسائل الأذونات مع الحفاظ على عزل العمليات - ما هو devcontainer وعلاقته بالبيئة المعزولة ولماذا يحتاجه فريق العمل
- كيفية ربط وتوصيل Claude Code عند العمل خلف وكيل اتصال (proxy) أو جدار حماية للشركات
- أهم ثلاثة إعدادات للطرفية يجدر تعديلها (زر السطر الجديد، التنبيهات، المظهر)، وكيفية اختيار النموذج وضبط استهلاك الرصيد المالي
- تطبيق عملي مع خطوات تشغيل ونتائج متوقعة: تفعيل البيئة المعزولة وتثبيت النموذج وتأكيد عملها بنفسك
01 البنية الأساسية: خمسة جوانب تشكل "بيئة عمل" Claude
قبل البدء بالتهيئة، دعنا نوزع الإعدادات في أذهاننا. فـ "إعدادات التطوير" ليست مفاتيح عشوائية متفرقة، بل هي خمسة جوانب تشكل بيئة العمل التي ينشط فيها Claude.
تشبيه: إعداد وتجهيز مكتب لعاملك الجديد. عندما يأتي العامل (Claude) للبدء في مشروعك، يجب عليك تجهيز مكتبه المناسب: في أي غرفة يعمل (على جهازك الحقيقي أم داخل مكتب معزول مستقل)، وأين تطل نوافذ هذه الغرفة (ما هي الشبكات والمواقع التي يستطيع الوصول إليها)، وهل الكرسي والإضاءة مريحة للعمل (أزرار الطرفية، التنبيهات، والألوان)، وهل العامل المعين خبير أم متدرب (النموذج المستخدم). وبترتيب هذه الجوانب، يعمل بسلاسة دون التسبب في مشاكل. وهذا هو إعداد بيئة العمل.
وفي Claude Code، تتوزع هذه الجوانب كالتالي:
- العزل (أين يعمل) — البيئة المعزولة (sandbox) أو devcontainer، لتحديد ما يستطيع Claude لمسه على جهازك الفعلي عند تشغيل الأوامر.
- الشبكة (أين تطل النوافذ) — تهيئة وكيل الاتصال (proxy) وشهادات الأمان، لضمان اتصاله من خلف جدار حماية الشركة.
- الطرفية (هل المكتب مريح) — زر السطر الجديد، التنبيهات، الألوان، ووضع Vim، لتسهيل التفاعل والكتابة.
- النموذج (من يعمل) — استخدام Opus أو Sonnet أو Haiku، لتحديد مستوى الذكاء والسرعة والتكلفة المالية.
قارن بين الجوانب في جدول واحد لتتضح الصورة:
| جانب التهيئة | المشكلة التي يحلها | متى تحتاج للتعديل؟ |
|---|---|---|
| البيئة المعزولة (sandbox) | تقليل تنبيهات الأذونات مع الحفاظ على عزل العمليات | عند الضجر من كثرة رسائل الموافقة، أو التعامل مع كود غير موثوق |
| devcontainer | توحيد بيئة العمل المعزولة للفريق بأكمله | للتعاون بين أعضاء الفريق، أو تشغيل مهام دون مراقبة، أو توحيد البيئة للمطورين الجدد |
| تهيئة الشبكة | الاتصال من خلف وكيل اتصال أو جدار حماية للشركة | عند فشل الاتصال بـ api.anthropic.com أو فرض الشركة فحص TLS |
| تهيئة الطرفية | تسهيل الكتابة والتفاعل وتناسق الألوان | عند فشل النزول لسطر جديد بـ Shift+Enter أو الرغبة في تنبيه صوتي عند انتهاء المهام |
| تهيئة النموذج | اختيار النموذج المناسب بحسب التكلفة والذكاء | عند سرعة نفاد الرصيد المالي، أو تخصيص نماذج معينة لمهام محددة |
لن تحتاج لحفظ هذا الجدول، ولكن يجب أن تملك الوعي لتحديد فئة المشكلة التي تواجهها — ففشل الاتصال يعالج في الشبكة ولا علاقة له بالبيئة المعزولة، والضجر من رسائل الأذونات يعالج في البيئة المعزولة ولا علاقة له بالنموذج. وبفصل المشكلات، يسهل عليك اختيار الحل الصحيح.
ونوضح معلومة هامة: أن البيئة المعزولة، والشبكة، والنموذج هي الجوانب الثلاثة الأكثر استخداماً وتعديلاً؛ بينما يخص devcontainer مشاريع الفرق الكبيرة، وتخص تهيئة الطرفية تفضيلاتك الشخصية. فابدأ بتركيز جهدك على فهم البيئة المعزولة والشبكة والنموذج أولاً.
💡 خلاصة القول في جملة واحدة: تدير إعدادات التطوير خمسة جوانب لـ "بيئة العمل" لـ Claude — مكان العمل (البيئة المعزولة / devcontainer)، ونوافذ الاتصال (الشبكة)، وراحة التفاعل (الطرفية)، ومهارة العامل (النموذج)؛ وحدد فئة المشكلة لتصل للمفتاح الصحيح مباشرة.
02 البيئة المعزولة (sandbox): تقليل رسائل الأذونات مع بقاء العزل أمنياً
نبدأ بالجانب العملي والأكثر إهمالاً — أداة تشغيل Bash المعزولة (sandboxed Bash tool). وهي ميزة مدمجة داخل Claude Code، وتفعيلها يتطلب تشغيل أمر بسيط واحد.
حل مشكلة التعارض بين السلاسة والأمان
خلال استخدامك للأداة، واجهت بالتأكيد هذا التعارض: رغبتك في عمل Claude بسلاسة وسرعة، مع تخوفك من تشغيله لأوامر ضارة. فخيارات الأذونات البرمجية (التي شرحناها في الدرس 20) تتوزع بين طرفين — إما مطالبة موافقتك لكل أمر (وهو أمر مزعج وممل)، أو الموافقة التلقائية على كل شيء (وهو خطر أمني). وجاءت البيئة المعزولة لتقدم الحل الأوسط.
تشبيه: اختبار قيادة السيارة داخل حلبة مغلقة. لن تقود سيارة اختبارية جديدة في الطرقات العامة المكتظة بالمارة — فحدوث حادث قد يضر الآخرين ويضرك. ولكن قيادتها داخل حلبة مغلقة ومحاطة بجدران يمنع خروجها تماماً، لتقود بالسرعة التي تريدها دون خوف ودون الحاجة لإبقاء يدك على الفرامل طوال الوقت. وتعتبر البيئة المعزولة بمثابة هذه الحلبة المغلقة لـ Claude — حيث تضع حدوداً صارمة على مستوى نظام التشغيل لكل أمر Bash يتم تشغيله: مثل تحديد الملفات التي يستطيع تعديلها، والشبكات التي يتصل بها. ليعمل Claude بحرية داخل هذه الحدود دون إزعاجك؛ ولا يتوقف لمطالبة إذنك إلا عند محاولة تجاوز الحدود (مثل الاتصال بشبكة جديدة).
وتوضح الوثائق الرسمية هذا المفهوم بدقة:
تتيح بيئة Bash المعزولة لـ Claude تشغيل معظم أوامر shell دون الحاجة للتوقف لطلب الأذونات. وبدلاً من الموافقة على كل أمر يدوياً، تحدد أنت الملفات والشبكات المسموح له بلمسها، ويقوم نظام التشغيل بفرض هذه الحدود على أوامر Bash والعمليات الفرعية الناتجة عنها.
وانتبه لـ "يقوم نظام التشغيل بفرض الحدود" — فهذا ليس وعداً شفهياً من Claude بالالتزام بالحدود، بل جدار تقني صارم يفرضه نظام التشغيل لمنعه من تجاوزها. وهو يختلف تماماً عن كتابة "الرجاء عدم لمس الملفات" في ملف CLAUDE.md: فالأول جدار صلب، والآخر مجرد طلب شفهي.
كيفية التفعيل: عبر أمر /sandbox البسيط
تأتي البيئة المعزولة مدمجة في Claude Code، وتعمل على أنظمة macOS و Linux و WSL2، ولا تدعم نظام Windows الأصلي مباشرة (لمستخدمي Windows يمكن تشغيلها داخل بيئة WSL2). وتفعيلها يتطلب كتابة أمر واحد في المحادثة:
/sandboxسيفتح هذا الأمر لوحة تحكم تحتوي على ثلاثة تبويبات أساسية:
- Mode (وضع التشغيل): الاختيار بين "الموافقة التلقائية" (Auto-allow) أو "الأذونات المعتادة". والموافقة التلقائية تعني تشغيل أوامر Bash المعزولة مباشرة دون إزعاجك بالتنبيهات (وهي الميزة الأهم للبيئة المعزولة)؛ بينما تعني الأذونات المعتادة مطالبة موافقتك بالرغم من عزل العمليات.
- Overrides: تحديد إمكانية تشغيل الأوامر التي تفشل داخل البيئة المعزولة خارجها (وهو ما يديره إعداد
allowUnsandboxedCommands). - Config: استعراض الحدود الفعالة للبيئة المعزولة حالياً.
وتختلف متطلبات الأنظمة كالتالي:
- نظام macOS: لا يتطلب تثبيت أدوات إضافية. حيث تعتمد البيئة المعزولة على نظام Seatbelt المدمج في نظام التشغيل وتعمل مباشرة.
- أنظمة Linux / WSL2: تتطلب تثبيت حزمتين —
bubblewrap(لإدارة عزل الملفات) وsocat(لإدارة نقل الشبكة). وإذا لم تتوفر، فستعرض لوحة/sandboxتبويباً باسم Dependencies لتنبيهك بالملفات الناقصة، فقم بتثبيتها (في أنظمة Ubuntu / Debian عبر الأمرsudo apt-get install bubblewrap socat)، ثم أعد تشغيل Claude Code للتفعيل.
وتكون الحدود الافتراضية صارمة ومحافظة — حيث يقتصر التعديل والكتابة على مجلد المشروع الحالي فقط، ويتوقف Claude لطلب موافقتك عند محاولة الاتصال بنطاق شبكي جديد لأول مرة. وتكتب الإعدادات التي تختارها في لوحة التحكم في ملف .claude/settings.local.json للمشروع (لتخص هذا المشروع وحده ولا ترفع لـ git). وإذا أردت تفعيل البيئة المعزولة افتراضياً في كل مشاريعك، فقم بضبط القيمة sandbox.enabled لتكون true في ملف المستخدم الرئيسي ~/.claude/settings.json (وقد شرحنا طبقات ملف settings.json في الدرس 31).
وننبه لفخ يسهل الوقوع فيه هنا: إذا فشل تشغيل البيئة المعزولة بسبب نقص الملفات أو عدم دعم النظام، فسيقوم Claude Code افتراضياً بعرض تنبيه تحذيري والاستمرار في تشغيل الأوامر دون عزل، لتفادي إيقاف عملك. ويعني هذا — أنك قد تظن أنك تعمل داخل بيئة معزولة بينما أنت تعمل بشكل مباشر ودون حماية. ولذلك تأكد من سلامة العزل باتباع خطوات التحقق في القسم 07. وإذا كنت تريد إيقاف التشغيل تماماً عند تعذر العزل كضمانة أمنية صارمة، فقم بضبط قيمة sandbox.failIfUnavailable لتكون true.
قيد أساسي: تعزل البيئة المعزولة أوامر Bash فقط
نضع خطاً تحت هذا القيد لتوخي الحذر. حيث ينصب عزل هذه البيئة المدمجة على أوامر Bash فقط. وتظل العمليات والوظائف المدمجة الأخرى لـ Claude — مثل قراءة وتعديل الملفات (أدوات Read / Edit)، وجلب الصفحات (WebFetch)، ومحركات MCP والخطافات (Hooks) — تعمل بشكل مباشر على جهازك الفعلي ولا تخضع لعزل هذه البيئة.
وتوضح الوثائق الرسمية ذلك صراحة:
تظل أدوات الملفات المدمجة، وخوادم MCP، والخطافات (hooks) تعمل بشكل مباشر على جهازك الفعلي.
ولذلك تناسب "البيئة المعزولة المدمجة" سيناريو "العمل اليومي على جهازي الشخصي مع الرغبة في تقليل رسائل الأذونات". وإذا كنت تريد عزل عمليات Claude Code بالكامل (بما فيها أدوات الملفات و MCP والخطافات)، فيجب عليك التوجه لاستخدام الحاويات (containers) الموضحة في القسم التالي، أو استخدام بيئة sandbox runtime السحابية التي توفرها المنصة كنسخة تجريبية — لعزل العمليات بالكامل. وبشكل عام، تفي البيئة المعزولة المدمجة بالغرض اليومي، وتنتقل للحاويات عند التعامل مع أكواد غير موثوقة تماماً.
💡 خلاصة القول في جملة واحدة: تنشئ البيئة المعزولة عبر أمر
/sandboxحلبة مغلقة لكل أمر Bash يتم تشغيله — يفرز نظام التشغيل الحدود والملفات المسموح بها، ليعمل Claude بحرية دون إزعاجك بالتنبيهات؛ ولكن تذكر أنها تعزل أوامر Bash فقط وتظل أدوات الملفات و MCP والخطافات تعمل على جهازك الفعلي.
03 devcontainer: بيئة عمل موحدة ومعزولة للفريق بأكمله
تعمل البيئة المعزولة المشروحة في القسم السابق على عزل العمليات محلياً على جهازك. أما devcontainer (حاوية التطوير) فهي حل أكثر شمولاً وتكاملاً — حيث تنقل بيئة تشغيل Claude بالكامل داخل "غرفة مغلقة مستقلة".
حل مشكلات "تباعد البيئات" و "التشغيل دون مراقبة"
يبرز خيار devcontainer لحل مشكلتين أساسيتين:
الأولى، تباعد البيئات البرمجية بين أعضاء الفريق. فاستخدامك للإصدار Node 18 واستخدام زميلك للإصدار Node 20 يسبب تباين نتائج المخرجات البرمجية لـ Claude بين الجهازين وحدوث خلافات. الثانية، رغبتك في ترك Claude يعمل دون مراقبة بشرية — لتذهب لتناول الغداء وتتركه ينجز مهمة طويلة. وترك الأكواد تعمل على جهازك الفعلي دون مراقبة يحمل مخاطر أمنية.
تشبيه: حجز غرفة دراسة مستقلة ومجهزة في المكتبة. بدلاً من الجلوس في الصالة العامة المفتوحة (جهازك الفعلي) وتناثر أوراقك الخاصة أمام الغرباء وخوفك من مغادرة مكانك ولو للحظات. تحجز غرفة مستقلة مغلقة — تحتوي على أجهزة قياسية مجهزة من المكتبة (متطابقة للجميع)، وبمجرد إغلاق الباب ينفصل عملك بالكامل عن الخارج؛ ولا تأخذ أشيائك الحساسة لداخلها. ويعتبر devcontainer بمثابة هذه الغرفة المستقلة: بيئة معزولة ومتطابقة للفريق بأكمله، يعمل Claude بداخلها ويشغل الأوامر دون إمكانية للوصول لشهاداتك أو ملفاتك الخاصة على جهازك الفعلي.
وتعرفه الوثائق الرسمية:
تمكنك حاويات التطوير (dev containers) من توحيد وعزل بيئة العمل البرمجية لتعمل بنفس المعايير لدى كل مهندسي الفريق. وعند تثبيت Claude Code داخل هذه الحاوية، تعمل الأوامر بداخلها ولا تلمس جهازك الفعلي، وتظهر تعديلات الملفات التي يجريها في مستودعك المحلي فوراً.
وتبرز الميزة الرائعة هنا: أن تشغيل الأوامر يتم داخل الحاوية المعزولة، وتظهر التعديلات مباشرة في مستودعك المحلي الفعلي. لتجمع بين الأمان التام وسهولة التلقي.
كيفية التفعيل: إضافة ميزة وإعادة بناء الحاوية
يتطلب استخدام devcontainer تثبيت Docker، واستخدام محرر أكواد يدعم معايير Dev Containers (مثل VS Code، أو Codespaces، أو JetBrains، أو Cursor؛ ولا تدعمها المحررات البسيطة مثل Vim). ولتثبيت Claude Code داخل الحاوية، أضف السطور التالية لملف .devcontainer/devcontainer.json لمشروعك:
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {}
}
}ويعتبر حقل features هو الميزة الرسمية لـ Claude Code Dev Container Feature، ويتولى تثبيت الأداة داخل الحاوية. ويمكنك استبدال حقل image بصورة المشروع الخاصة بك. وبعد الحفظ، افتح لوحة أوامر محرر الأكواد عبر Cmd+Shift+P (أو Ctrl+Shift+P في Windows / Linux) وشغّل أمر Dev Containers: Rebuild Container لإعادة البناء، ثم افتح الطرفية داخل الحاوية واكتب claude لتسجيل الدخول.
وننبه لفخ شائع جداً للمبتدئين أشارت إليه الوثائق الرسمية: يتم مسح مجلد المستخدم للحاوية افتراضياً عند إعادة البناء، مما يطالبك بتسجيل الدخول لـ Claude في كل مرة تعيد فيها البناء. ولتثبيت جلسة الدخول، يجب عليك ربط مجلد الإعدادات
~/.claudeبـ named volume (مجلد تخزين ثابت لا يتأثر بإعادة البناء). وتعتبر هذه من الممارسات المتقدمة، ويكفي التعرف عليها في البداية والرجوع لوثائق devcontainer الرسمية لتهيئة ربط المجلدات لاحقاً.
وتذكر التحذير الأمني الصارم الوارد باللون الأحمر في الوثائق:
استخدم حاويات التطوير فقط عند العمل مع مستودعات برمجية موثوقة، وتابع عمليات وتعديلات Claude. وتجنب ربط أو مشاركة شهادات ومفاتيح جهازك الفعلي (مثل مفاتيح
~/.sshأو ملفات الشهادات السحابية) مع الحاوية المعزولة.
بمعنى آخر: توفر الحاوية عازلاً أمنياً، ولكنها ليست درعاً مطلقاً. وخصوصاً عند تفعيل وضع "الموافقة التلقائية" وتخطي التنبيهات، فقد تقوم الأكواد الضارة بتخريب الملفات المتاحة داخل الحاوية نفسها. فتجنب ربط مفاتيح SSH لجهازك الفعلي بها — واستخدم مفاتيح قصيرة الأجل ومحدودة الصلاحيات للمستودع البرمجي.
المقارنة بين devcontainer والبيئة المعزولة
كلاهما يعبر عن "العزل"، ولكنهما يختلفان في النطاق والوسائل. وسأعرض في الجدول التالي مقارنة بين البيئة المعزولة المدمجة و devcontainer وخيارات العزل الأخرى الموضحة في الوثائق لتسهيل الاختيار:
| أسلوب العزل | ما الذي يتم عزله بالتحديد؟ | هل يتطلب Docker؟ | الأنسب لـ |
|---|---|---|---|
البيئة المعزولة المدمجة (/sandbox) | أوامر Bash المباشرة فقط | لا | العمل اليومي الشخصي مع تقليل رسائل الأذونات |
| devcontainer | بيئة التطوير بالكامل | نعم | توحيد بيئة عمل الفريق، والتشغيل دون مراقبة |
| حاويات مخصصة / أنظمة افتراضية | بيئة العمل أو نظام التشغيل بالكامل | نعم للحاوية، لا للنظام الافتراضي | تشغيل أكواد غير موثوقة تماماً وتتطلب عزل نواة النظام |
| Claude Code on the web (الدرس 11) | نظام تشغيل متكامل تدار خوادمه بالكامل من المنصة | لا | تجنب تهيئة بيئة تشغيل محلية، والعمل دون بيئة عمل سابقة |
ويمكن ترتيب خيارات العزل بحسب "صرامة وقوة العزل" في هذا المخطط الذهني لتسهيل الاختيار — حيث تتزايد قوة العزل وصعوبة التهيئة بالانتقال لليمين، لتختار الخيار المناسب بحسب درجة ثقتك بالأكواد:

يوضح هذا المخطط مستويات الأمان الخمسة: تبدأ من اليسار بـ "دون عزل لتشغيل الأوامر على جهازك الفعلي مباشرة"، وتتزايد قوة العزل مع كل خطوة لليمين — بدءاً من عزل أوامر Bash بالبيئة المعزولة المدمجة، ثم نقل بيئة التطوير للـ devcontainer، ثم العزل بنظام افتراضي كامل، وتصل للأقصى مع خوادم المنصة المدارة بالكامل في السحاب. وكلما قل وثوقك بالأكواد، توجه لليمين في المخطط.
ونلخص قواعد الاختيار الرسمية في ثلاثة نقاط:
- العمل الشخصي مع الرغبة في تقليل الرسائل ← البيئة المعزولة المدمجة، وتفعل بأمر
/sandboxالمباشر. - العمل المشترك للفريق والتأكد من توافق البيئات ← devcontainer، وتكتب تهيئته في ملف المستودع البرمجي للجميع.
- الأكواد غير الموثوقة تماماً ونخشى سرقة البيانات ← أنظمة افتراضية أو نسخة الويب المدارة لضمان العزل التام لنواة النظام.
وفي التطبيق العملي: اعتمد على البيئة المعزولة المدمجة لمشاريعك الشخصية؛ وعند التعامل مع مستودعات برمجية غير مألوفة، استخدم devcontainer أو وجه العمل لنسخة الويب السحابية Claude Code on the web — لتتجنب القلق والجلوس للمراقبة البشرية المرهقة المذكورة في البداية.
💡 خلاصة القول في جملة واحدة: يوفر devcontainer "غرفة عمل مستقلة ومتطابقة للفريق بأكمله" — حيث تعمل الأوامر داخل الحاوية المعزولة (دون إمكانية للوصول لشهادات جهازك الفعلي) وتظهر التعديلات في مستودعك المحلي مباشرة، ويتم تفعيله عبر ملف
.devcontainer/devcontainer.json؛ ويختلف عن البيئة المدمجة في كون نطاق العزل يشمل بيئة التطوير بالكامل وليس أوامر Bash فقط.
04 تهيئة الشبكة: الاتصال من خلف وكيل اتصال أو جدار حماية للشركة
يخص هذا القسم فئتين من المطورين: من يعملون داخل شبكات الشركات المعتمدة على وكلاء اتصال (proxy)، و من يواجهون عوائق في الاتصال المباشر بخدمات Anthropic. ويمكن لمن يملك اتصالاً طبيعياً قراءة السطور سريعاً للتجاوز.
حل مشكلات انقطاع الاتصال
لكي ينجز Claude Code مهامه، يجب أن يتصل بخوادم Anthropic (أو عناوين النماذج الخارجية التي حددتها). ولكن شبكات الشركات تضع بوابات رقابة متعددة: توجيه كل الاتصالات الخارجية ليمر عبر وكيل اتصال محدد، فرض فحص شهادات الأمان (TLS inspection) بالاعتماد على شهادات داخلية خاصة، أو قصر الاتصال على قائمة عناوين محددة (white-list). وعدم تهيئة أي من هذه الجوانب يسبب فشل اتصال Claude Code عند تسجيل الدخول أو إرسال الطلبات.
تشبيه: الدخول لمبنى إداري يخضع لرقابة أمنية صارمة. عندما تريد (Claude Code) إجراء اتصال هاتفي خارجي، يجب تمرير المكالمة عبر عامل الهاتف (الوكيل proxy) أولاً، ولا يمكنك الاتصال المباشر؛ ويخضع كل صندوق صادر أو وارد لفحص محتوياته للتأكد من سلامته (فحص TLS)، ويجب ختم الصندوق بالختم المعتمد (الشهادة الداخلية الخاصة) ليسمح بمروره. وتتولى تهيئة الشبكة إخبار Claude Code برقم عامل الهاتف وصيغة الختم المعتمد.
ونشير لمعلومة رسمية هامة: يمكن تهيئة كل هذه الجوانب بالاعتماد على المتغيرات البيئية أو كتابتها داخل ملف settings.json. وتسهيلاً للشرح، سنعتمد على كتابة المتغيرات البيئية في الأمثلة التالية.
وكيل الاتصال (proxy): ثلاثة متغيرات قياسية
يتعرف Claude Code على المتغيرات البيئية القياسية لوكلاء الاتصال، ويكفي كتابتها في الطرفية لتفعيلها:
# وكيل اتصال HTTPS (الخيار الموصى به)
export HTTPS_PROXY=https://proxy.example.com:8080
# وكيل اتصال HTTP (عند تعذر استخدام HTTPS)
export HTTP_PROXY=http://proxy.example.com:8080
# العناوين التي يتم الاتصال بها مباشرة دون وكيل
export NO_PROXY="localhost,127.0.0.1,.internal.company.com"وننبه لفخين هنا: أولاً، لا يدعم Claude Code وكلاء اتصال SOCKS، بل يدعم HTTP و HTTPS فقط، وإذا كانت شبكتك توفر SOCKS فقط فيجب تحويلها لبوابة متوافقة أولاً. ثانياً، إذا كان وكيل الاتصال يتطلب اسم مستخدم ورقم سري، فاكتبها داخل الرابط بالشكل التالي (http://user:pass@proxy...)، وتجنب كتابة البيانات الحساسة صراحة في السيناريوهات البرمجية المشتركة واستعن بالمتغيرات الآمنة.
الشهادات الخاصة: توجيه الكود لملف CA الخاص بشركتك
عند استخدام الشركات لفحص اتصالات TLS (مثل خدمات Zscaler أو CrowdStrike وغيرها)، يعتمد Claude Code افتراضياً على الثقة المزدوجة — حيث يثق في قائمة CA المدمجة لـ Mozilla وقائمة الشهادات المعتمدة لنظام التشغيل الخاص بجهازك. وطالما كانت شهادة الشركة مثبتة في قائمة نظام تشغيلك الفعلي، فلن تحتاج لتهيئة إضافية عادة. وإذا واجهت مشكلة أمنية، فقم بتوجيه الكود لمسار ملف الشهادة الخاصة بشركتك يدوياً:
export NODE_EXTRA_CA_CERTS=/path/to/your-company-ca.pemعناوين جدار الحماية المسموح بها: العناوين التي يجب السماح باتصالها
إذا كنت تدير جدار الحماية للشركة، أو تريد تقديم طلب لقسم تقنية المعلومات للسماح بالاتصال، فهذه هي العناوين الأساسية التي يحتاجها Claude Code للاتصال (عند الاتصال المباشر بخدمات Anthropic):
| العنوان (Domain) | وظيفة الاتصال |
|---|---|
api.anthropic.com | إرسال طلبات النماذج لـ Claude (العنوان الأهم) |
claude.ai | مصادقة وتسجيل الدخول لحسابات claude.ai |
platform.claude.com | مصادقة حسابات منصة Anthropic |
downloads.claude.ai | تحميل وتحديث المكونات الإضافية وتنزيل التحديثات التلقائية |
storage.googleapis.com | تنزيل ملفات التحديثات التلقائية للإصدارات القديمة (قبل v2.1.116) |
bridge.claudeusercontent.com | اتصال WebSocket المخصص لإضافة متصفح Chrome |
raw.githubusercontent.com | جلب تفاصيل تحديثات /release-notes وإحصائيات متجر المكونات |
تنبيه هام: إذا واجهت عوائق في الاتصال المباشر بالعناوين السابقة، فقد تحتاج لاستخدام شبكة تدعم الوصول للمواقع المحجوبة (VPN)، أو توجيه الاتصال لعناوين بوابات الاتصال والنماذج الخارجية المشروحة في الدرسين 04 و 05. وبموجب ذلك، تتوجه تهيئة وكيل الاتصال proxy للإشارة لعنوان البوابة الوسيطة الخاصة بك. وإذا كنت تستخدم خدمات سحابية مثل Amazon Bedrock أو Google Vertex AI، فستمر طلبات النماذج عبر عناوين هذه الخدمات السحابية الخاصة ولن تحتاج للسماح بعناوين Anthropic المذكورة أعلاه.
وفي بيئات العمل التي تستخدم Zscaler، يواجه المطورون تعطل عملية الدخول في اليوم الأول ويقضون وقتاً طويلاً في البحث عن أسباب تتعلق بالحساب. لتُحل المشكلة بمجرد قيام قسم IT بتثبيت شهادة الشركة المعتمدة في قائمة نظام التشغيل، ودون الحاجة لتهيئة أي متغير بيئي، وبمجرد إعادة تشغيل الطرفية يعمل الاتصال مباشرة — فلذلك عند مواجهة أخطاء شهادات TLS، تأكد أولاً من تثبيت شهادة الشركة في قائمة نظام تشغيل جهازك الفعلي، فغالباً ما يكون هذا هو السبب.
💡 خلاصة القول في جملة واحدة: عند العمل خلف وكيل اتصال أو جدار حماية للشركة، استخدم
HTTPS_PROXYلتحديد عنوان الوكيل (ولا يدعم وكلاء SOCKS)، واستخدمNODE_EXTRA_CA_CERTSللإشارة للشهادات الخاصة (بالرغم من أن تثبيت الشهادة في نظام التشغيل يغنيك عن كتابة المتغير عادة)، واطلب السماح بعناوين الاتصال الأساسية مثلapi.anthropic.com؛ وتوجه للحلول البديلة والوكلاء عند تعذر الاتصال المباشر.
05 تهيئة الطرفية: زر السطر الجديد، التنبيهات، والألوان — ثلاثة إعدادات عملية
تعتبر تهيئة الطرفية من الأمور التفضيلية التي تهدف لتسهيل التفاعل البشري اليومي وإزالة المعوقات البسيطة. ويعمل Claude Code في أي طرفية دون تعديل، وسنستعرض في هذا القسم حلولاً لأشهر ثلاثة معوقات قد تواجهك أثناء الكتابة والتفاعل.
أولاً: ضغط زر Shift+Enter يرسل الطلب بدلاً من النزول لسطر جديد
هذا أول عائق يواجهه المطور في اليوم الأول. فعند الرغبة في كتابة نص طويل على عدة أسطر، تضغط على Shift+Enter لتفاجأ بإرسال الرسالة مباشرة للنموذج بدلاً من النزول لسطر جديد.
احفظ هذا المهرب البديل دائماً: في أي طرفية، يتيح لك ضغط Ctrl+J النزول لسطر جديد، أو كتابة العلامة المائلة \ متبوعة بالضغط على Enter، كلا الخيارين يعملان في كل البيئات دون حاجة لتهيئة إضافية.
أما لتفعيل نزول السطر بـ Shift+Enter مباشرة، فيعتمد ذلك على نوعية الطرفية المستخدمة:
| نوع الطرفية | دعم نزول السطر بـ Shift+Enter |
|---|---|
| iTerm2, Ghostty, Kitty, Apple Terminal, Windows Terminal, WezTerm, Warp | مدعوم تلقائياً ودون حاجة لتهيئة إضافية |
| VS Code, Cursor, Devin Desktop, Alacritty, Zed | يتطلب تشغيل أمر تهيئة /terminal-setup لمرة واحدة |
| gnome-terminal, بيئات JetBrains IDE (مثل PyCharm وغيرها) | غير مدعوم تقنياً؛ واستخدم البدائل Ctrl+J أو \ متبوعة بـ Enter |
وللفئة الثانية (مثل محررات VS Code و Cursor)، اكتب هذا الأمر في المحادثة لمرة واحدة:
/terminal-setupسيقوم هذا الأمر بكتابة إعدادات مفتاح Shift+Enter داخل ملف تهيئة الطرفية للمحرر دون المساس بالروابط الأخرى، ويتطلب تفعيله إعادة تشغيل محرر الأكواد بعد الانتهاء. ويجب تشغيل هذا الأمر في طرفية النظام الأساسية مباشرة، وتجنب تشغيله داخل بيئات tmux أو screen لتفادي أخطاء التهيئة.
ثانياً: انتهاء المهام الطويلة دون علمك لغياب التنبيهات
عند تكليفه بمهمة طويلة، قد تنتقل لتصفح نوافذ أخرى وتنسى التحقق، لتكتمل المهمة أو يتوقف Claude بانتظار موافقتك على الأذونات دون علمك، مما يضيع الوقت. والحل هو ضبط تنبيه صوتي أو إشعار على سطح المكتب عند انتهاء المهام.
افتراضياً، لا تدعم إرسال إشعارات سطح المكتب إلا طرفيات Ghostty و Kitty و iTerm2. ولتفعيل التنبيهات في الطرفيات الأخرى، افتح ملف إعدادات المستخدم ~/.claude/settings.json واضبط قيمة preferredNotifChannel لتكون "terminal_bell" لإصدار رنين صوتي عند الانتهاء:
{
"preferredNotifChannel": "terminal_bell"
}وبعد تهيئة هذا الخيار في طرفية iTerm2، يمكنك تركه يعمل على مهمة بناء طويلة والذهاب لإعداد كوب من القهوة، لتستمع للرنين الصوتي وتعود لمتابعة العمل، وهو ما يرفع الكفاءة كثيراً مقارنة بالوقوف والانتظار خشية تفويت رسالة الأذونات. وإذا كنت تريد تنبيهات مخصصة (مثل تشغيل ملف صوتي مخصص)، فيمكنك تهيئتها بالاعتماد على الخطافات (hooks) المشروحة في الدرس 33.
ثالثاً: عدم تناسق ألوان واجهة Claude مع ألوان طرفيتك
يمكنك ضبط وتناسق ألوان واجهة Claude Code مع ألوان وثيم الطرفية التي تفضلها. اكتب في المحادثة:
/themeواختر وضع "التلقائي" (Auto)، لتقوم الواجهة بتتبع مظهر نظام التشغيل وتغيير الألوان تلقائياً (تتحول للمظهر الداكن مع تحول النظام للمظهر الداكن). وتذكر: أن Claude Code ينسق ألوان واجهته التفاعلية الخاصة فقط، ولا يستطيع تعديل ألوان ثيم الطرفية نفسها، والتي تضبطها من إعدادات برنامج الطرفية نفسه. ويوفر النظام خيارات لتخصيص الألوان البرمجية بالتفصيل، ولكن اختيار الوضع التلقائي كافٍ في البداية.
ونشير إلى أن بعض اختصارات لوحة المفاتيح المبتدئة بـ Option+ في نظام macOS (مثل الاختصار Option+P لتبديل النموذج) قد لا تعمل افتراضياً، وتُحل المشكلة بتهيئة مفتاح Option ليعمل كمفتاح Meta في إعدادات الطرفية (في iTerm2 اذهب لـ "Settings → Profiles → Keys" واضبط خياري Left/Right Option ليعملا كـ "Esc+"). وقد فصلنا ذلك في الدرس 35. ولمحبي محررات Vim: يمكنك تبديل وضع المحرر ليعمل بأسلوب Vim في لوحة /config لتسهيل التنقل والتعديل.
💡 خلاصة القول في جملة واحدة: تعالج تهيئة الطرفية عوائق الاستخدام البسيطة — شغّل
/terminal-setupلحل عائق السطر الجديد (والبديل هوCtrl+J)، واضبطpreferredNotifChannelللقيمة"terminal_bell"لتفعيل التنبيه الصوتي، واستخدم/themeلتناسق الألوان تلقائياً؛ لتسهيل تفاعلك وكتابتك اليومية.
06 تهيئة النموذج: اختيار النموذج بحسب التكلفة والذكاء
الجانب الأخير، تهيئة النموذج — ويرتبط هذا الجانب مباشرة بـ "التكلفة المالية ومستوى ذكاء الاستنتاج". لقد شرحنا تهيئة النماذج والرسوم المالية في الدرسين 04 و 06، وسنركز في هذا القسم على "كيفية اختيار النموذج المناسب لكل مهمة، وكيفية التبديل، وضبط التكاليف".
حل مشكلة الهدر المالي
يوفر Claude Code عدة نماذج للاستخدام، وتختلف مستويات الذكاء والتكلفة المالية بينها. ولا يعتبر النموذج الافتراضي المختار هو الأوفر دائماً لمهمتك — فاستخدام النموذج الأقوى والأغلى لتعديل خطأ إملائي بسيط هو هدر مالي واضح.
تشبيه: إدارة طباخي المطعم بحسب الوجبات. فالطباخ الرئيسي الخبير (Opus) يملك المهارة الأعلى والأجر الأغلى، وتسند إليه الوجبات والوصفات الخاصة؛ وتكفي مهارة الطباخ المعتاد (Sonnet) لتحضير الوجبات اليومية المعتادة، ويعتمد المطعم عليه بشكل أساسي؛ ويستطيع المتدرب المساعد (Haiku) غسل الخضار وتجهيز المكونات بسرعة وتكلفة بسيطة. ولن يكلف مدير المطعم الطباخ الرئيسي بغسل الخضار — فتقسيم المهام بحسب الصعوبة يوفر التكاليف المالية. ويجعلك إعداد النموذج بمثابة مدير هذا المطعم.
وتوفر المنصة أسماء مستعارة (aliases) للنماذج لتغنيك عن حفظ أرقام الإصدارات الطويلة، وأشهرها:
| الاسم المستعار | النموذج الفعلي | طبيعة المهام والوجبات المناسبة |
|---|---|---|
opus | النموذج الأقوى Opus | عمليات الاستنتاج الصعبة وتصميم الهياكل البرمجية المعقدة |
sonnet | النموذج الأحدث Sonnet | المهام البرمجية والتطوير اليومي، وهو البطل الأساسي لمعظم الأعمال |
haiku | النموذج الأسرع والأوفر Haiku | المهام البسيطة، والعمليات التي تتطلب سرعة فائقة |
opusplan | الدمج بين Opus و Sonnet | يستخدم Opus للتفكير ووضع خطة العمل (Plan Mode)، ويتحول تلقائياً لـ Sonnet عند كتابة الكود لتوفير التكاليف |
default | النموذج الافتراضي لحسابك | إلغاء التخصيص والعودة للنموذج الافتراضي المعتمد |
ويبرز خيار opusplan كأفضل إعداد للموازنة بين الذكاء والتكلفة: حيث يستعين بقدرات Opus العالية لوضع خطة برمجية ذكية (Plan Mode)، وبمجرد موافقتك على الخطة والبدء في الكتابة، يتحول تلقائياً لنموذج Sonnet لكتابة الأكواد وتوفير المال. فيدفع تكلفة Opus للمنطق الصعب، وتكلفة Sonnet للكتابة التكرارية. وننصح بالاعتماد على opusplan للمهام وإعادة الهيكلة متوسطة الصعوبة، ليجمع بين الذكاء والوفر.
وتتميز الأسماء المستعارة بميزة إضافية: وهي الإشارة دائماً لأحدث نسخة ترشحها المنصة للنموذج. وبموجب ذلك، فإن كتابتك للاسم opus تنقلك تلقائياً للإصدار الأحدث لـ Opus فور إطلاقه دون حاجة لتعديل كود التهيئة. وإذا كان فريقك يطالب بثبات وتطابق النتائج بدقة (reproducibility)، فتجنب الأسماء المستعارة واكتب اسم الإصدار الكامل للنموذج (مثل claude-opus-4-8).
كيفية التبديل: أربعة طرق بحسب ترتيب الأولويات
توفر المنصة أربعة طرق لتبديل وتحديد النموذج المستخدم، وتترتب من المؤقت للحالة الدائمة:
# 1. التبديل الفوري المؤقت داخل المحادثة (الأولوية القصوى)
/model sonnet
# 2. التحديد عند بدء التشغيل (يخص جلسة التشغيل الحالية فقط)
claude --model opus
# 3. المتغير البيئي (يخص جلسة الطرفية الحالية)
export ANTHROPIC_MODEL=sonnet// 4. حقل model في ملف settings.json (الخيار الافتراضي الدائم)
{
"model": "opusplan"
}احفظ هذه القاعدة العملية: للتغيير المؤقت السريع استخدم أمر /model في المحادثة، ولتثبيت خيار افتراضي دائم للمشروع أو المستخدم فاكتبه في حقل model بملف settings.json (في المجلد المناسب بحسب الدرس 31). وتذكر أن إعدادات المشروع وإعدادات المنظمة تملك أولويات أعلى وتتفوق على تفضيلاتك الشخصية — فإذا لاحظت تشغيل نموذج مختلف بالرغم من ضبطك للنموذج الشخصي، فغالباً ما يكون السبب هو وجود حقل model في ملف إعدادات جذر المشروع يفرضه على الجميع.
التحكم في "عمق تفكير" النموذج نفسه
بعد اختيار النموذج، تتوفر طبقة تحكم إضافية تسمى مستوى الجهد المبذول في التفكير (effort level) — وتحدد مدى عمق تفكير النموذج واستنتاجه للمسائل. فنموذج Opus نفسه يمكنك مطالبته بـ "إعطاء إجابة سريعة مبسطة" أو مطالبته بـ "التفكير والتحليل العميق"، ويختلف حجم استهلاك التوكنز والوقت بحسب الاختيار.
تشبيه: الطباخ الرئيسي نفسه، يطبخ وجبة سريعة مبسطة مقابل تحضير وصفة معقدة تتطلب وقتاً طويلاً. فالمهارة واحدة، ويختلف الوقت والجهد والتركيز المبذول بحسب طبيعة الطبق — فالأطباق البسيطة تحضر سريعاً، والوجبات الخاصة تطهى بهدوء. ويحدد مستوى الجهد هذا درجة تركيز النموذج، وتوفر الوثائق خمسة مستويات: low للوفر والسرعة، و medium للموازنة البسيطة، و high (وهو الخيار الافتراضي لـ Opus 4.8/4.6 و Sonnet 4.6) للموازنة بين التكلفة والعمق، و xhigh للتفكير الأكثر عمقاً (وهو الافتراضي لـ Opus 4.7)، و max للتفكير الأعمق والأقصى دون النظر للتكلفة.
أشهر طريقتين للاستخدام العملي:
- مطالبته بالتفكير العميق لمرة واحدة: اكتب كلمة المفتاح
ultrathinkفي أي مكان داخل توجيهك، ليقوم النموذج بالتفكير بعمق في هذه الجولة البرمجية تحديداً دون تغيير إعدادات المحادثة العامة. وانتبه لكون كلمةultrathinkهي الكلمة الوحيدة التي يفهمها النظام لتفعيل هذا التفكير، وكلمات مثل "فكر جيداً" أو "تأكد من الحل" لا تفعل الميزة تقنياً. - تثبيت مستوى الجهد: استخدم أمر
/effortفي المحادثة لتحريك مؤشر الاختيار، أو اكتب مستوى الجهد في حقلeffortLevelبملفsettings.json.
نصيحة عملية: اترك مستوى الجهد على الخيار الافتراضي لعملك المعتاد، واكتب كلمة ultrathink في التوجيه عند مواجهة "أخطاء منطقية معقدة وتتطلب تتبعاً طويلاً"، ليقوم بتوفير جهد تفكير أعمق لهذه الجولة ويوفر عليك تكرار الأسئلة ومحاولات التصحيح اليدوية اللاحقة.
نصيحة لتوفير التكاليف: تحديد النماذج المتاحة للفريق
إذا كنت تدير فريقاً من المطورين، يمكنك استخدام حقل availableModels لحظر وقصر اختيار النماذج المتاحة لأعضاء الفريق — كأن تقصر الاختيار على Sonnet و Haiku وتمنع الانتقال لـ Opus لتفادي ارتفاع الفاتورة المالية:
{
"availableModels": ["sonnet", "haiku"]
}وبموجب هذا الحظر، لن يتمكن أعضاء الفريق من الانتقال لنموذج خارج القائمة سواء عبر أمر /model أو معامل التشغيل أو المتغيرات البيئية. وهذا الخيار مفيد جداً لإدارة وضبط ميزانية المشروع. ففي المشاريع ذات الميزانيات المحدودة، يضمن قصر الاختيار على Sonnet وحذف Opus من قائمة الاختيارات خفض استهلاك التوكنز والرسوم المالية بشكل ملحوظ، ويمكن لمدير النظام إضافة opus للقائمة مؤقتاً عند مواجهة مهام صعبة تتطلب استخدامه.
💡 خلاصة القول في جملة واحدة: تهيئتك للنماذج تجعلك بمثابة "مدير المطعم" — تستعين بـ
opusللمهام الصعبة، وبـsonnetللعمل اليومي المعتاد، وبـhaikuللمهام البسيطة، وتستخدمopusplanللموازنة بين الذكاء والوفر المالي؛ والتبديل المؤقت يتم عبر/modelوالدائم عبر ملفsettings.json؛ ويمكنك تحديد النماذج المتاحة للفريق عبر حقلavailableModelsلضبط التكاليف؛ وتتحكم في عمق التفكير عبر كلمةultrathinkأو أمر/effort.
07 العمل: تفعيل البيئة المعزولة وتثبيت النموذج وتأكيد عملها بنفسك
الكلام بدون تطبيق لا يكفي. سنقوم الآن بتطبيق عملي لتجربة وتفعيل البيئة المعزولة والنموذج والتحقق من عملهما. وتعمل الخطوات على أنظمة macOS و Linux و WSL2 (لمستخدمي Windows يرجى تشغيلها داخل WSL2)؛ بالاعتماد على خطوات مصغرة لا تتطلب تهيئة بيئة سابقة معقدة.
الخطوة الأولى: تفعيل البيئة المعزولة (تكتب داخل محادثة claude)
/sandboxالمتوقع: تفتح لوحة التحكم الخاصة بالبيئة المعزولة. اذهب لتبويب Mode واختر وضع "الموافقة التلقائية" (Auto-allow). رؤية لوحة التحكم يعني جاهزية ودعم البيئة المعزولة على نظامك. وإذا عرض لوحة Dependencies تنبهك بملفات ناقصة (شائع في أنظمة Linux / WSL2)، فقم بتثبيتها (sudo apt-get install bubblewrap socat)، ثم أعد تشغيل Claude Code مجدداً.
الخطوة الثانية: مطالبته بتشغيل أمر للتحقق من العزل
اكتب هذا التوجيه البسيط في المحادثة (وهو توجيه يقتصر على كتابة ملف في المجلد الحالي):
在当前目录建一个 sandbox-test.txt 文件,里面写一行 hello sandboxالمتوقع: يتم تشغيل الأمر داخل البيئة المعزولة، ودون ظهور أي تنبيه أو طلب لموافقة الأذونات (لأنك اخترت الموافقة التلقائية، والتعديل يقتصر على مجلد المشروع وهو ما تسمح به البيئة المعزولة افتراضياً). وينشأ ملف sandbox-test.txt في مجلدك. إنشاء الملف دون طلب موافقة يثبت صحة ونجاح عمل البيئة المعزولة وتلقائيتها. (ويمكنك مطالبته بحذف ملف الاختبار بعد الانتهاء).
الخطوة الثالثة: مراجعة النموذج المستخدم حالياً
/statusالمتوقع: تظهر لوحة معلومات /status موضحاً بها تفاصيل الحساب و النموذج المستخدم حالياً. احفظ اسم النموذج المكتوب (مثل Sonnet أو Opus) لمقارنته في الخطوة التالية.
الخطوة الرابعة: التبديل المؤقت للنموذج والتحقق
/model haikuالمتوقع: يظهر تنبيه يؤكد التبديل لنموذج Haiku. اكتب /status مجدداً، لتجد حقل النموذج قد تغير وأصبح Haiku. ورؤية تغير اسم النموذج بين المرتين يثبت صحة ونجاح التبديل المؤقت عبر أمر /model. ويمكنك كتابة /model sonnet أو /model default للعودة للنموذج المعتاد بعد التجربة.
الخطوة الخامسة: تثبيت النموذج الافتراضي في ملف الإعدادات (اختيارية)
إذا كنت تريد تحديد نموذج افتراضي ثابت للمشروع لاحقاً، أضف السطر التالي لملف إعدادات المشروع .claude/settings.json:
{
"model": "sonnet"
}المتوقع: عند تشغيل claude لاحقاً داخل هذا المشروع، تظهر لوحة /status معتمدة على نموذج Sonnet افتراضياً (إلا إذا قمت بتبديله مؤقتاً عبر أمر /model أثناء المحادثة).
بتشغيل هذه الخطوات الخمس، تكون قد مررت بمسار التطوير البرمجي "تفعيل العزل ← التحقق من العزل ← مراجعة النموذج ← تبديل النموذج ← تثبيت الخيار الافتراضي" بنفسك. وتتبع نفس هذا المسار لتهيئة وتعديل أي خيار تطويري لاحقاً: تعدل الإعداد ← تشغل المهمة ← وتستعين بأوامر مثل /status لتأكيد التأثير الفعلي للتعديل.
💡 خلاصة القول في جملة واحدة: تجربة خطوات التهيئة الأساسية بنفسك — تفعيل العزل عبر
/sandbox(لتشغيل الأوامر دون إزعاج التنبيهات)، وتبديل النموذج عبر/modelوالتأكد من تغيره عبر أمر/status— يثبت فهمك العملي لطريقة التهيئة ويضمن سلامتها، وتجنب الاعتماد على التخمين.
08 خلاصة
قمنا في هذا الدرس بتهيئة "بيئة العمل" لـ Claude ليعمل بالصلاحيات والأمان والشبكة والنموذج الذي يناسب متطلباتك وسير عملك التطويري اليومي.
ونلخص النقاط الأساسية الخمسة التي شرحناها في الدرس:
| الجانب التطويري | كيفية التهيئة والعمل | النقاط الرئيسية |
|---|---|---|
| البيئة المعزولة | عبر أمر /sandbox وتفعيل الموافقة التلقائية | تعزل أوامر Bash فقط؛ وتظل أدوات الملفات و MCP والخطافات تعمل محلياً |
| devcontainer | كتابة التهيئة في ملف .devcontainer/devcontainer.json | تتطلب Docker؛ وتعمل الأوامر داخل الحاوية وتنعكس التعديلات في مستودعك المحلي |
| الشبكة | تهيئة HTTPS_PROXY و NODE_EXTRA_CA_CERTS | لا يدعم وكلاء SOCKS؛ وتتطلب العوائق استخدام وكيل اتصال أو VPN |
| الطرفية | أوامر /terminal-setup و /theme وإعدادات التنبيهات | البديل البديل لنزول السطر الجديد هو اختصار Ctrl+J |
| النموذج | التبديل الفوري بـ /model والثبات بملف settings.json | يوفر opusplan الموازنة بين الذكاء والوفر المالي؛ واستعن بـ availableModels لضبط التكاليف |
يجب أن تكون قادراً الآن على: إدراك وظيفة البيئة المعزولة المدمجة وتفعيلها لتخطي رسائل الأذونات الروتينية، ومعرفة دور devcontainer في توحيد بيئة عمل الفريق، وتهيئة المتغيرات البيئية لربط وتوصيل Claude Code من خلف وكلاء اتصال شبكات الشركات وتخطي أخطاء الشهادات الخاصة، وتعديل أزرار الطرفية وثيم الألوان وتفعيل التنبيهات الصوتية، واختيار النموذج وضبط التكاليف المالية وتحديد النماذج المتاحة للفريق والتحكم في عمق تفكير النموذج. وبتعديل وتهيئة هذه الجوانب الخمسة لبيئة العمل، تضمن سلامة جهازك الشخصي وسلاسة التفاعل ووفر التكاليف المالية.
وبالرجوع لسيناريو المراقبة البشرية المرهقة المذكور في البداية — فبتفعيل البيئة المعزولة المدمجة أو نقل العمل لنسخة الويب السحابية المعزولة تماماً، كنت ستوفر على نفسك عناء القلق والجلوس طوال اليوم ويدك على زر Ctrl+C. وتكمن قيمة إعدادات التطوير في هذا الأمان والراحة وتوفير وقتك وجهدك.
الدرس القادم 47 "Voice وضع التحدث الصوتي" (ميزة تجريبية، قد تتغير لاحقاً) — قمنا في هذا الدرس بتهيئة وتسهيل التفاعل المكتوب والطرفي؛ الدرس القادم يأخذنا لأسلوب تفاعل جديد كلياً: وهو التحدث الشفهي بالصوت. تخيل أنك منشغل بكتابة الأكواد بكلتا يديك على لوحة المفاتيح، وتستطيع مطالبة Claude شفهياً بصوتك "أعد هيكلة هذه الدالة البرمجية"، لتنجز المهمة دون الحاجة لترك عجلة الكتابة وتوفير الوقت. وتعتبر ميزة التحدث الصوتي من الإضافات الحديثة والواعدة، وسنستعرض في الدرس القادم ما تستطيع القيام به حالياً وكيفية تشغيلها.