شفت الـ slash commands الأساسية. الموديول ده بيغطي الأوامر اللي المستخدمين المتمرسين بيعتمدوا عليها بعد ما يكون الـ workflow الأولي شغّال — إدارة الـ context، أدوات الجلسات، الـ skills المدمجة، واختصارات الكيبورد اللي بتسرّع كل حاجة.
إدارة الـ Context والجلسات
كل جلسة Claude Code عندها context window. أمر /context بيعرضه كـ grid ملوّن — أخضر لما فيه مساحة، أصفر لما قرّب يتملي، أحمر لما كاد ينتهي. لما الـ context يطول، /compact بيضغط المحادثة. مرّر تعليمات تركيز عشان تحافظ على اللي يهمّك: /compact focus on the database migration plan.
الـ auto-compaction بيشتغل تلقائيًا لما الـ context window يقرّب يتملي. عشان تتحكم في إمتى بيتفعّل، اضبط الـ auto-compact window: /autocompact 500k بيحدّد window بـ 500K توكن وبيحفظها في إعدادات الـ user بتاعتك (autoCompactWindow)، و/autocompact auto بيرجّعك للـ window المضبوطة لموديلك. مرّر --autocompact عند التشغيل عشان تتخطّى القيمة المحفوظة لجلسة واحدة من غير ما تغيّرها، أو اعمل set للـ env var CLAUDE_CODE_AUTO_COMPACT_WINDOW في السكربتات وبيئات الـ cloud، وهناك بتاخد أولوية على الأمر والـ flag والإعداد. الـ window بتقبل من 100K لـ 1M توكن — رقم صريح (200000)، أو لاحقة k/M (500k، 1M)، أو رقم مجرّد من 100 لـ 1000 بمعنى الآلاف (200 = 200,000)؛ والـ env var بتقبل الرقم الصريح بس. بيتطلّب Claude Code v2.1.221 أو أحدث.
أمر /branch بيعمل محادثة موازية من النقطة الحالية، يعني تقدر تستكشف طريقتين جنب بعض. /rewind بيرجعك لنقطة أبكر — مفيد لما Claude مشي في اتجاه غلط. كمان ممكن يرجع التغييرات في الملفات، يعني بيشتغل كـ undo للمحادثة والكود مع بعض.
استئناف الجلسات بيخلّي الشغل الطويل ممكن. /rename my-feature بيحفظ الجلسة الحالية باسم واضح. /resume my-feature بيرجعك ليها بعدين بالـ context كامل. اعمل export للجلسة في ملف أو الـ clipboard بـ /export للمشاركة أو الأرشفة.
/context
/compact focus on the auth refactor
/autocompact 500k
/branch
/rename auth-refactor-v2
/export auth-refactor-v2.md
الـ Skills المدمجة
Claude Code بييجي معاه skills مدمجة بتشتغل زي الأوامر. دي متاحة دايمًا من غير ما تحتاج تعمل install لأي حاجة.
أمر /code-review (اتغيّر اسمه من /simplify في v2.1.147) بيراجع الـ diff الحالي عشان يلاقي bugs في الصحة (correctness bugs) ويعرض النتايج من غير ما يعدّل ملفات. من v2.1.218، /code-review بشتغل كـ background subagent عشان شغل المراجعة ميبقاش بيملي المحادثة. الـ effort levels الأقل (/code-review low) بترجّع نتايج أقل بثقة أعلى؛ ومن high لـ max بتدّي تغطية أوسع، و/code-review ultra بيشغّل مراجعة أعمق متعددة الـ agents في الـ cloud. من v2.1.154، /simplify بشتغل كمراجعة منفصلة للـ cleanup بس اللي بتطبّق إصلاحات من غير ما يبحث عن bugs — مش alias بسيط لـ /code-review. مرّر --comment عشان يعلّق النتايج كـ inline comments على الـ GitHub PR الحالي، أو مرّر path أو PR reference عشان تستهدف تغيير معيّن. /batch <instruction> مخصص للتغييرات الكبيرة على ملفات كتير — بيخطّط الشغل، بيستخدم git worktrees معزولة، ويقدر ينسّق التحقق والمتابعة على مستوى الـ PR. /loop 5m check deploy status بيشغّل prompt بشكل متكرر على فترات، مفيد لمتابعة العمليات الطويلة. /proactive هو alias لـ /loop — نفس السلوك بالظبط، بس الاسم بيقرأ أحسن لما الفكرة هي “فضل راقب وتصرّف على اللي بتشوفه” بدل “شغّل ده على timer”. كلمة ultracode بتفعّل dynamic workflow run — الكلمة اللي بتفعّله اتسمّت من workflow لـ ultracode في v2.1.160.
أمر /debug بيفعّل الـ verbose logging عشان يساعدك تشخّص مشاكل في سلوك Claude أو استخدام الأدوات. /claude-api بيحمّل مرجع الـ Anthropic SDK للغة المشروع — بيتفعّل تلقائيًا لما يكتشف imports من @anthropic-ai/sdk أو package الـ anthropic في Python.
/code-review
/code-review high --comment
/batch add JSDoc comments to all public functions in src/
/loop 2m check if the build finished
/debug
الوضع السريع (Fast Mode)
الوضع السريع هو configuration عالي السرعة لـ Opus بيدّيك نفس جودة الموديل بسرعة أعلى تصل لـ 2.5x، مقابل تكلفة tokens أعلى. وهو متاح على Opus 5 (الموديل الافتراضي لـ Opus من v2.1.219) و Opus 4.8 — الموديلات الأقدم زي Opus 4.7 و Opus 4.6 مبقتش مدعومة. Opus 4.7 اتشال من fast mode في v2.1.219؛ طلباته دلوقتي بترجع error بدل ما ترجع لسرعة Opus 4.7 العادية، فاتحوّل لـ Opus 4.8 أو Opus 5 عشان تحافظ على السرعة. متاح عن طريق /fast أو عن طريق ضبط fastMode: true في إعدادات المستخدم. لما يتفعّل، أيقونة ↯ بتظهر جنب الـ prompt.
/fast # فعّل/اقفل
/fast on # فعّل صراحة
/fast off # اقفل صراحة
الوضع السريع بيحوّلك لـ Opus تلقائي لو على model تاني — Opus 5 بشكل افتراضي. لما تقفل الوضع السريع، بتفضل على Opus — استخدم /model عشان تغيّر.
الوضع السريع ومستوى الـ effort حاجتين منفصلتين. /fast بيقلل الـ latency من غير ما يأثر على الجودة. /effort low بيقلل وقت التفكير واللي ممكن يقلل الجودة في المهام المعقدة. ادمجهم مع بعض لأقصى سرعة في الشغل البسيط:
/fast
/effort low
لما rate limit الوضع السريع يخلص، بيرجع تلقائي لسرعة Opus العادية (أيقونة ↯ بتبقى رمادية) وبيرجع يتفعّل لما الـ cooldown يخلص. الـ rate-limit pool بتاع الوضع السريع مشترك بين Opus 5 و Opus 4.8. الوضع السريع محتاج usage credits يكون متفعّل على حسابك — أدِرهم بـ /usage-credits (الاسم الجديد من v2.1.144، اتغيّر من /extra-usage، والاسم القديم لسه شغّال) — ومش متاح على Bedrock أو Vertex AI أو Foundry أو Claude Platform on AWS، ولا على إضافة الـ VS Code. مسؤولي المؤسسات يقدروا يتحكموا في إتاحته من خلال الإعدادات المُدارة.
اضبط الموديل اللي الجلسات الجديدة تبدأ عليه افتراضيًا عن طريق ANTHROPIC_DEFAULT_MODEL (أُضيف في v2.1.236). الاتنين ANTHROPIC_MODEL و ANTHROPIC_DEFAULT_MODEL متغيرات بيئة مستمرّة بتأثر على كل عملية Claude بتتشغّل بيهم، فتصدير أي واحد فيهم في الـ shell أو ضبطه في بيئة المستخدم بيطبَّق عبر الـ restarts. الفرق بينهم في أولوية اختيار الموديل وفي الـ default semantics، مش في فترة الحياة: ANTHROPIC_MODEL هو الـ model override الصريح وبيتفوّق على إعداد model العادي في الـ user أو project، بينما ANTHROPIC_DEFAULT_MODEL هو الـ default الأقل أولوية واللي إعداد model العادي يقدر يعمله override. اختيار /model لسه بيكسب على أي واحد فيهم، والإعدادات المُدارة المفروضة بتـ override على الاتنين:
export ANTHROPIC_DEFAULT_MODEL=sonnet
المتغير بيتم تجاهله لما قيمته تكون واحدة من الـ special tokens اللي Claude Code بيعاملها كـ “استخدم الـ default العادي” — default وinherit وopusplan وhaiku. اختار alias واضح أو model ID، وراجع مرجع إعدادات الموديل الرسمي عشان تشوف ترتيب الأولوية بين ANTHROPIC_DEFAULT_MODEL وANTHROPIC_MODEL والـ --model flag وإعداد model.
الـ alias المسمّى fable بقى بيشاور على Fable 5.1 من v2.1.255 — قبل كده كان بيشاور على Fable 5. اضبط ANTHROPIC_DEFAULT_FABLE_MODEL=claude-fable-5 لو عايز الـ alias المسمّى fable يفضل مشاور على Fable 5 — لازم المتغيّر يشيل الـ model ID بتاع Fable 5، مش بس يكون موجود. على Anthropic API، لو عندك قيمة claude-fable-5 أو claude-fable-5[1m] محفوظة في إعدادات المستخدم بتاعتك — مثلًا من اختيارك Fable في مُنتقي /model قبل v2.1.255 — بيتعملها auto-update للـ alias fable أو fable[1m] أول مرة تشغّل فيها v2.1.255 أو أحدث، وسطر الموديل عند البدء بيوضّح (auto-updated) مرة واحدة. نفس القيمة في إعدادات الـ project أو local أو managed بتتساب زي ما هي.
اختصارات الكيبورد والـ Power Features
Shift+Tab بيتنقل default → acceptEdits → plan. باقي الأوضاع مش في الدورة الافتراضية دي: auto بيظهر لما حسابك يستوفي متطلبات auto mode؛ وbypassPermissions بيظهر بعد ما تبدأ بـ --permission-mode bypassPermissions أو --dangerously-skip-permissions أو --allow-dangerously-skip-permissions (نسخة --allow- بتضيفه للدورة من غير ما تفعّله)؛ وdontAsk مش بيظهر خالص — تضبطه بـ --permission-mode dontAsk. الأوضاع الاختيارية المفعّلة بتيجي بعد plan، بترتيب bypassPermissions الأول وauto آخر واحد. Shift+Tab هو أسرع طريقة تتحوّل لوضع plan لمهمة معقدة وترجع بعدها.
Option+T (macOS) أو Alt+T بيفعّل الـ extended thinking — Claude بياخد وقت أطول في التفكير قبل ما يرد. استخدم /effort عشان تحدد عمق التفكير: auto، low، medium، high، xhigh، أو max لما يكون متاح. max بيتطبّق على الجلسة الحالية بس ومش بيتحفظ بين الجلسات. Ctrl+O بيفتح ويقفل عارض الـ transcript، اللي بيعرض تفاصيل استخدام وتنفيذ الأدوات — وقت كل رسالة والموديل المستخدم فيها — وبيفكّ الـ MCP calls اللي بتتطوي لسطر واحد.
/btw your question بيسأل سؤال جانبي من غير ما يتضاف لتاريخ المحادثة — مفيد عشان تتأكد من حاجة أو تسأل عن syntax من غير ما تزحّم الـ context. Ctrl+B بيحط bash commands و agents شغّالة في الخلفية عشان تقدر تدي Claude تعليمات تانية وهي لسه شغّالة. لو عايز توقف كل الـ background agents، الاختصار الرسمي هو Ctrl+X Ctrl+K.
Ctrl+U بيمسح الـ input buffer كله، وCtrl+Y بيرجّع اللي لسه مسحته — مفيد لما تكون كتبت prompt طويل وعايز تبدأ من جديد من غير ما تفقده. Ctrl+L بيعمل full screen redraw بالإضافة لمسح الـ prompt input، مفيد لما الـ terminal يعمل drift أو tearing. في footer عارض الـ transcript، [ بيصدّر الـ transcript لـ scrollback وv بيفتحه في الـ $EDITOR بتاعك.
أمر /diff بيفتح عارض diff تفاعلي للتغييرات اللي لسه ما اتعملش لها commit — أحسن من قراءة output الـ git الخام لما تحب تراجع اللي Claude عمله قبل ما تعمل commit. /insights بيولّد تقرير تحليل الجلسة بإحصائيات عن اللي اتحقق.
# Toggle to plan mode, then back
Shift+Tab
Shift+Tab
/effort high
/btw what's the difference between async and defer on script tags?
وضع Vim المرئي (Visual Mode)
مستخدمي Vim بيحصلوا على visual selection في محرر الإدخال. اضغط v للتحديد بالحروف وV للتحديد بالأسطر. بمجرد ما تكون في الـ visual mode، مفاتيح التنقل (h، j، k، l، w، e، b، f، F، t، T) بتمدد التحديد. بعدين طبّق operator:
d/x بيحذف، y بينسخ، c/s بيغيّر، p بيستبدل بمحتويات الـ register، r{char} بيستبدل كل حرف محدد، ~/u/U بيبدّل أو يفرض حالة الأحرف، >/< بيعمل indent أو dedent، J بيدمج الأسطر، وo بيبدّل بين الـ cursor والـ anchor. الـ text objects زي iw، aw، i"، a"، i(، a( بتشتغل للتحديد الدقيق. الـ block-wise visual mode (Ctrl+V) مش مدعوم.
قراءة ملفات ضخمة — الـ Partial View
أداة Read بقت بترجّع صفحة أولى مقتطعة مع إشعار PARTIAL view بدل ما ترمي خطأ مانع لما قراءة الملف كامل تتجاوز حد الـ tokens. قبل كده، طلب من Claude يقرأ JSON dump حجمه 500 كيلوبايت أو bundle متولّد كان بيفشل تمامًا؛ دلوقتي بيرجّع الصفحة الأولى مع علامة واضحة بتقوله جاب قد إيه وإزاي يقرا الباقي بـ offset/limit. ولو حددت limit صريح أكبر من اللي القراءة الواحدة تقدر تستوعبه، Read بيرجّع خطأ بيطلب limit أصغر (أو grep للمحتوى المطلوب) بدل ما يحمّل الباقي. مفيش environment variable ولا إعداد لرفع ميزانية الـ tokens للقراءة الواحدة — التقسيم بـ pagination هو الطريقة المدعومة للملفات الكبيرة.
عمليًا مش محتاج تعمل أي حاجة عشان تفعّلها — لما Claude يشوف إشعار الـ partial view، بيعرف إنه إما يضيّق بـ grep الأول أو يقسّم القراءة بـ offset لحد ما يجمع اللي محتاجه. السلوك ده مهم بالذات في الـ migrations، logs الكبيرة، وأدوات زي /init اللي بتمسح ملفات كتير.
/usage — إحصائيات الجلسة الموحّدة
أمر /usage بيعرض لوحة موحّدة بتحلّ محلّ اللي كان /cost و/stats بيعرضوه كل واحد لوحده — تقدير التكلفة الإجمالية، ومدة الـ API والـ wall-clock، والأسطر اللي اتضافت أو اتشالت. من v2.1.149، كمان بيعرض breakdown حسب الفئة بيوضّح اللي بيستهلك من حدودك: الـ skills والـ subagents والـ plugins وتكلفة كل MCP server على حدة. لمستخدمي الـ API بيعرض إحصائيات tokens مفصّلة؛ للمشتركين بيعرض شريط استخدام الخطة والنشاط. /cost و/stats لسه شغّالين كاختصارات بتفتح التاب المناسب. الأرقام بالدولار تقديرات محسوبة محليًا — راجع الـ Claude Console للفوترة الرسمية.
بعد أول استجابة API للمحادثة، /usage بيضيف سطر Prompt cache (main) لبلوك الجلسة بيلخّص استخدامك لـ الـ prompt cache: عدد الـ requests، ونسبة الـ input tokens اللي اتخدمت من الكاش، والـ cache misses (مع وقت آخر miss وكام token اتعمله re-cache)، وأي expected rebuilds من الـ compaction أو مسح نتايج الأدوات، وهل الكاش دافي (warm) دلوقتي مع الـ TTL المُفعّل. السطر ده بيغطّي المحادثة الرئيسية بس — مش الـ subagents — و scripts الـ status line تقدر تقرا نفس الأرقام من object الـ prompt_cache. بيحتاج Claude Code v2.1.251 أو أحدث.
/goal — الجلسات الموجّهة بهدف
أمر /goal بيحدد شرط إتمام Claude بيشتغل عليه عبر عدة أدوار. لما الهدف يبقى نشط، Claude بيفضل يشتغل بشكل مستقل لحد ما الشرط يتحقق. overlay حية بتعرض الوقت المنقضي وعدد الأدوار واستهلاك الـ tokens عشان تتابع التقدم من غير ما تقاطعه.
/goal migrate all API endpoints from REST to GraphQL
/goal all tests pass and coverage is above 80%
الأهداف بتتماشي كويس مع /effort high للمهام المعقدة متعددة الخطوات. عشان تحدد عدد الأدوار اللي Claude ياخدها، اضبط CLAUDE_CODE_MAX_TURNS كمتغير بيئة:
export CLAUDE_CODE_MAX_TURNS=50
ملخص الجلسة (Session Recap)
لما ترجع للتيرمنال بعد ما تبعد شوية، Claude Code بيعرض ملخص من سطر واحد عن اللي حصل وأنت مش موجود. الملخص بيتولّد في الخلفية بعد ما يمر على الأقل تلات دقايق من آخر دور مكتمل والتيرمنال مش متركّز عليه، يعني بيكون جاهز لما ترجع. الملخصات بتظهر بس لما الجلسة فيها على الأقل تلات أدوار، ومش بتتكرر مرتين ورا بعض.
شغّل /recap عشان تولّد ملخص في أي وقت. عشان تقفل الملخصات التلقائية، افتح /config واقفل Session recap. الملخص التلقائي مفعّل بشكل افتراضي على كل الخطط والـ providers. بيتم تخطيه دايمًا في الوضع غير التفاعلي.
تاريخ الأوامر والبحث العكسي
Claude Code بيحفظ تاريخ الإدخال حسب مجلد العمل. إرسال نفس الـ prompt مرتين ورا بعض بيسجّل إدخال واحد بس، يعني الضغط على Up بيروح للـ prompt المختلف السابق. التاريخ بيتنضّف لما تشغّل /clear، بس محادثة الجلسة السابقة محفوظة لـ /resume.
اضغط Ctrl+R عشان تبحث تفاعليًا في تاريخ الأوامر. اكتب نص البحث واضغط Ctrl+R تاني عشان تتنقل في النتايج الأقدم. البحث بيبدأ بشكل افتراضي في prompts من كل المشاريع — اضغط Ctrl+S عشان تتنقل بين نطاق الجلسة الحالية، المشروع الحالي، وكل المشاريع. اضغط Tab أو Esc عشان تقبل النتيجة وتكمل تعديل، Enter عشان تقبل وتنفّذ فورًا، أو Ctrl+C عشان تلغي.
Ctrl+R → اكتب "migration" → Ctrl+R (نتايج أقدم) → Tab (قبول)
الـ Themes المخصصة
أمر /theme بيخلّيك تنشئ وتتنقل بين themes ألوان مسمّاة. الـ themes بتتخزن كملفات JSON في ~/.claude/themes/ وممكن تعدّلها يدويًا. الـ plugins كمان ممكن توفّر themes عن طريق مجلد themes/ في حزمة الـ plugin.
أنماط الـ Output
أنماط الـ Output بتغيّر طريقة رد Claude من غير ما تغيّر اللي يعرفه. بتعدّل الـ system prompt عشان تحدد الدور والنبرة والصيغة. خمس أنماط مدمجة متاحة: Default (مساعد هندسة برمجيات عادي)، Proactive (بينفّذ فورًا وبياخد قرارات معقولة بدل ما يوقف — توجيه أقوى من auto mode، بيشتغل مستقل عن وضع الصلاحيات)، Concise (بيبدأ بالنتيجة على طول، بيتخطى المقدمات والسرد، وبيخلي الردود قصيرة افتراضيًا مع إنه بيعمل شغل الهندسة بنفس دقة نمط Default — لسه بيرد بالتفصيل لما تطلب، ودايمًا بيحتفظ بالنص الكامل لتقارير الأخطاء وتحذيرات الأمان وتأكيدات الإجراءات المدمّرة؛ محتاج Claude Code v2.1.237 أو أحدث)، Explanatory (بيضيف “Insights” تعليمية بين خطوات الكود)، وLearning (وضع تعاوني Claude بيحط علامات TODO(human) على أجزاء استراتيجية عشان أنت تنفّذها).
غيّر الأنماط من /config → Output style. الاختيار بيتحفظ في .claude/settings.local.json. التغييرات بتتطبق بعد /clear أو جلسة جديدة لأن نمط الـ output جزء من الـ system prompt.
أنماط الـ output المخصصة هي ملفات Markdown بـ frontmatter. احفظها في ~/.claude/output-styles/ (user)، أو .claude/output-styles/ (project)، أو مجلد الإعدادات المُدارة (policy). اسم الملف بيبقى اسم النمط إلا لو حددت name: في الـ frontmatter. اضبط keep-coding-instructions: true عشان تحافظ على تعليمات هندسة البرمجيات المدمجة جنب تعليماتك — سيبها من غير ما تحطها لما Claude مش بيعمل هندسة برمجيات خالص، زي مساعد كتابة أو محلل بيانات:
---
name: Diagrams first
description: Lead every explanation with a diagram
keep-coding-instructions: true
---
When explaining code, architecture, or data flow, start with a Mermaid diagram showing the structure, then explain in prose.
الـ plugins ممكن توفّر output styles في مجلد output-styles/، وأنماط الـ plugin ممكن تضبط force-for-plugin: true عشان تتطبق تلقائيًا لما الـ plugin يتفعّل.
أعلام الـ CLI للأوامر
Claude Code في v2.1.235 ضافت flag جديد على مستوى الـ CLI اسمه --eval-dir <dir>، بياخد مسار مجلد. استخدمه جنب أي argument تاني:
claude --eval-dir <dir> [prompt]
للـ runs اللي مفيش حد يقدر يرد على prompts الصلاحيات — scheduled jobs أو agent hosts من غير canUseTool callback — استخدم --permission-prompts none (Claude Code v2.1.259 أو أحدث). أي حاجة كانت هتعمل prompt بتتـ deny تلقائيًا، بينما وضع الصلاحيات الفعّال (بما في ذلك auto mode) بيستمر يقرر كل call. مع --output-format stream-json، الـ prompts المرفوضة بتيجي كرسائل permission_denied والرسالة النهائية بتجمعها تحت permission_denials:
claude -p "Update the dependency pins and run the tests" --permission-mode auto --permission-prompts none