Claude Code فيه مجموعة ميزات متقدمة المستخدمين المحترفين بيحتاجوها في الشغل المعقّد أو اللي فيه مخاطرة. وضع التخطيط، التفكير الموسّع، الوضع التلقائي، الـ sandboxing، والتشغيل البرمجي — كل واحد من دول بيغيّر طريقة شغل Claude بشكل جوهري. الموديول ده بيشرح كل واحد بالتفصيل.
وضع التخطيط والتفكير الموسّع
وضع التخطيط بيفصل التفكير عن التنفيذ. لما تفعّله، Claude بيعمل بحث في الكود الأول ويعمل خطة تنفيذ مفصّلة. أنت بتراجع الخطة وممكن تعدّل عليها، وبعدين Claude ينفّذها. ده بيمنع المشكلة الشائعة إن Claude يبدأ يكتب كود قبل ما يفهم المشكلة كويس.
فعّله بأمر /plan <description>، أو flag الـ --permission-mode plan في الـ CLI، أو Shift+Tab عشان تتنقل بين الأوضاع. استخدم Ctrl+G عشان تفتح الخطة الحالية في الـ editor الخارجي بتاعك وتعدّل عليها بالتفصيل قبل ما توافق. الـ alias opusplan بيوجّه التخطيط لـ Opus والتنفيذ لـ Sonnet:
claude --model opusplan "redesign the database schema for multi-tenancy"
التفكير الموسّع بيدي Claude وقت أكتر يفكّر قبل ما يرد. فعّله وقفّله بـ Option+T (على macOS) أو Alt+T. أمر /effort بيحدد عمق التفكير: low، medium، high، xhigh، أو max (للجلسة الحالية بس). ضبطه للجلسة كلها بـ export CLAUDE_CODE_EFFORT_LEVEL=high. لو عايز أعلى مستوى تفكير، اكتب كلمة “ultrathink” في الـ prompt — دي بتفعّل وضع التفكير العميق بغض النظر عن إعداد الـ effort الحالي. كلمة ultracode بتفعّل dynamic workflow run — الكلمة دي اتسمّت من workflow لـ ultracode في v2.1.160. كلمة workflow نفسها ما بقتش بتفعّل run، لكن لو طلبت workflow بصياغتك الطبيعية، Claude لسه يقدر ينفّذه. Dynamic workflows بتتفعّل بـ /effort ultracode.
متغير MAX_THINKING_TOKENS=0 بايقّف التفكير على Opus 4.6 و Sonnet 4.6 بس. على Opus 4.7 والأحدث، الـ adaptive reasoning دايمًا شغّال ومتغير MAX_THINKING_TOKENS مش بيأثر.
تخيّل إنك بتاخد قرار معماري كبير — الجمع بين وضع التخطيط ومستوى effort عالي بيديك أحسن نتيجة:
claude --permission-mode plan --effort high --model opusplan "migrate from REST to GraphQL"
Ultraplan: التخطيط في الـ Cloud
Ultraplan بيوسّع وضع التخطيط عن طريق إنه يبعت الخطة لجلسة Claude Code على الويب. Claude بيعمل draft للخطة في الـ cloud وأنت الـ terminal بتاعك فاضي. بعدين تفتحها في المتصفح وتعلّق على أجزاء معينة، تطلب تعديلات، وتختار فين تنفّذها.
تلات طرق تشغّلها: أمر /ultraplan <prompt>، أو اكتب كلمة “ultraplan” في أي prompt عادي، أو اختار “Refine with Ultraplan on the web” من حوار خطة محلية خلصت.
بعد ما تشغّلها، بيظهر مؤشر حالة عند الـ prompt: ◇ ultraplan وهو بيحضّر، ◇ ultraplan needs your input لما Claude عنده أسئلة، و◆ ultraplan ready لما الخطة جاهزة. افتح لينك الجلسة على claude.ai عشان تراجع — تقدر تعلّق inline على أقسام معينة وتطلب تعديلات قبل ما توافق.
لما توافق، عندك مسارين:
- نفّذ على الويب — Claude بينفّذ الخطة في الـ cloud، وأنت تراجع الـ diff وتفتح PR من المتصفح
- ارجع للـ terminal — الخطة بتترحّل للـ CLI بتاعك عشان تنفّذها محلي
/ultraplan migrate the auth service from sessions to JWTs
Ultraplan محتاج اشتراك claude.ai و GitHub repository متوصّل. مش متاح على Bedrock أو Vertex AI أو Foundry.
الوضع التلقائي والتحكم في الصلاحيات
الوضع التلقائي (Auto Mode) هو وضع صلاحيات تجريبي بيستخدم classifier أمان في الخلفية عشان يقرر إذا كانت الأدوات آمنة تشتغل من غير ما يسألك. مصمّم للشغل اللي محتاج autonomy أعلى مع الحفاظ على حواجز الأمان.
بتستخدمه زي أي وضع صلاحيات تاني: اختار auto في إعدادات الصلاحيات أو اتنقل ليه بـ Shift+Tab. المؤسسات تقدر تضبط إيه اللي Auto Mode بيعتبره بنية تحتية موثوقة من خلال block الـ autoMode في الإعدادات.
Auto Mode بشكل افتراضي بيكون حذر مع الحاجات اللي شكلها exfiltration بيانات، تنفيذ shell خطر، أو تغييرات تأثر على الـ production. لما الـ permission check يعلق، الـ spinner بيتحول للأحمر — ده بيخلّي واضح إن فيه check في_progress مش أداة شغّالة. لو فريقك عنده repos موثوقة، domains داخلية، أو خدمات معينة عايز Auto Mode يتعامل معاها عادي، عرّفها في autoMode.environment.
لما تخصّص autoMode.allow أو autoMode.soft_deny أو autoMode.hard_deny أو autoMode.environment، ضيف التوكن الخاص "$defaults" عشان تحافظ على القواعد المدمجة وتضيف قواعدك جنبها. من غير "$defaults"، المصفوفة بتاعتك بتحل محل الافتراضيات بالكامل.
جوه الـ classifier، الأولوية بتشتغل في أربع طبقات: قواعد hard_deny بتمنع بشكل غير مشروط (نية المستخدم واستثناءات allow مش بتطبّق). قواعد soft_deny بتمنع بعد كده، بس نية المستخدم واستثناءات allow ممكن تتخطاها. قواعد allow بعد كده بتتخطى قواعد soft_deny المطابقة. نية المستخدم الصريحة بتتخطى الـ soft blocks المتبقية — طلب “force-push this branch” بيتخطى الـ soft block، بس طلب عام زي “clean up the repo” لأ.
استخدم claude auto-mode defaults عشان تطبع القواعد المدمجة، وclaude auto-mode config عشان تشوف الـ config المدمج الفعلي، وclaude auto-mode critique لتعليقات AI على قواعدك المخصصة:
{
"autoMode": {
"allow": ["$defaults", "Deploying to staging is allowed"],
"soft_deny": ["$defaults", "Never run migrations outside the migrations CLI"],
"hard_deny": ["$defaults", "Never send repo contents to third-party APIs"],
"environment": ["$defaults", "Internal API: api.corp.example.com"]
}
}
أوضاع الصلاحيات بتتراوح من الأقل للأكتر حرية. default بيقرأ بحرية بس بيسألك قبل أي action تاني. acceptEdits بيوافق تلقائيًا على تعديلات الملفات في الجلسة، ما عدا الكتابة في المجلدات المحمية. plan بيدخل وضع التخطيط الأول. auto بيستخدم الـ classifier. dontAsk بيشغّل بس الأدوات المعتمدة مسبقًا. bypassPermissions بيوافق على كل حاجة من غير ما يسألك — بما فيها الكتابة في المجلدات المحمية (.git، .claude، .vscode، .idea، .husky) ابتداءً من v2.1.126. استخدم --dangerously-skip-permissions كـ CLI flag للسلوك نفسه. الـ hooks اللي بتشتغل في السياقات دي تاخد مستوى الجهد الحالي من متغير البيئة $CLAUDE_EFFORT.
ابدأ الجلسة في أي وضع بـ flag الـ --permission-mode <mode>. الـ flag بيقبل default وacceptEdits وplan وauto وdontAsk وbypassPermissions، وبيتقدّم على defaultMode اللي في إعداداتك للجلسة دي تحديدًا — يعني تقدر تثبّت وضع أكتر صرامة لـ automation معينة من غير ما تعدّل ملف الإعدادات. نفس الـ flag بيشتغل مع -p للتشغيل غير التفاعلي، وdontAsk بيتفعّل بس عن طريق الـ flag ده (مش موجود في دورة Shift+Tab):
claude --permission-mode plan "draft the migration"
claude -p "audit dependencies" --permission-mode dontAsk
اضبط افتراضي في الإعدادات عشان أغلب الجلسات تبدأ في الوضع اللي عايزه من غير ما تمرّر الـ flag:
{
"permissions": {
"defaultMode": "acceptEdits"
}
}
عشان تخصّص Auto Mode لبيئتك:
{
"autoMode": {
"environment": [
"Source control: github.example.com/acme-corp and all repos under it",
"Trusted internal domains: *.corp.example.com, api.internal.example.com"
]
}
}
على Anthropic API، Auto Mode متاح بشكل افتراضي طول ما حسابك مستوفي متطلبات الموديل وموافقة المسؤول. على Amazon Bedrock و Google Cloud Vertex AI و Microsoft Foundry (v2.1.158+)، بيكون مقفول لحد ما تضبط CLAUDE_CODE_ENABLE_AUTO_MODE=1 في الـ env block، وبس Opus 4.7 و Opus 4.8 مدعومين على المنصات دي. الموديلات الأقدم — Sonnet 4.5 و Opus 4.5 و Haiku و Claude 3 — مبتاخدش Auto Mode على أي provider. المسؤولين يقدروا يقفلوا الوضع نهائيًا بـ permissions.disableAutoMode: "disable" في الـ managed settings، وده بيتغلب على متغير التفعيل.
التشغيل البرمجي والـ Sandboxing
لما تشغّل Claude برمجيًا بـ claude -p "your prompt" ده بيشغّله بدون تفاعل. الـ output بيروح لـ stdout، وده بيخلّيه قابل للتركيب مع pipelines الـ shell وأنظمة الأتمتة. ادمجه مع --output-format json عشان output منظّم. استخدم --permission-mode bypassPermissions للتشغيل الآلي الكامل في CI/CD:
# Automated code review in CI
git diff HEAD~1 | claude -p "review these changes for security issues" \
--output-format json \
--permission-mode bypassPermissions
# Generate docs for changed files
claude -p "generate JSDoc for all functions in $CHANGED_FILE" \
--print --no-session-persistence
الـ sandboxing بيوفّر عزل على مستوى نظام التشغيل لصلاحيات الملفات والشبكة. فعّله بأمر /sandbox خلال الجلسة. في وضع الـ sandbox، Claude بيقدر يوصل بس للمسارات وقواعد الشبكة اللي أنت حددتها. ده مفيد جدًا لما تشغّل Claude على كود مش موثوق أو في بيئات محتاج فيها حدود صارمة.
ضبط عزل الشبكة بدقة من خلال sandbox.network.allowedDomains وsandbox.network.deniedDomains في ملف settings.json. الأول بيسمح بالـ domains للترافيك الخارج، والتاني بيحظر domains معينة حتى لو wildcard أوسع في allowedDomains كان هيسمح بيها — deniedDomains دايمًا ليه الأولوية. الاتنين بيدعموا wildcards زي *.example.com:
{
"sandbox": {
"enabled": true,
"network": {
"allowedDomains": ["github.com", "*.npmjs.org"],
"deniedDomains": ["uploads.github.com"]
}
}
}
في الإعدادات المُدارة، قائمة deniedDomains بتتدمج من كل مصادر الإعدادات (managed و user و project و local) بغض النظر عن allowManagedDomainsOnly. الـ flag ده بيقيّد بس أنهي scopes allowedDomains بتتقرأ منها — قواعد الحظر من أي scope دايمًا بتتطبّق، فمفيش سياسة مؤسسية تقدر تسقط block اتحط على مستوى user بالصدفة.
على Linux و WSL، استخدم sandbox.bwrapPath وsandbox.socatPath عشان تحدد مسارات مخصصة لملفات bubblewrap و socat:
{
"sandbox": {
"bwrapPath": "/usr/local/bin/bwrap",
"socatPath": "/usr/bin/socat"
}
}
للمؤسسات، الإعدادات المُدارة (managed settings) بتتحكم في إعدادات المستخدمين من خلال أدوات إدارة النظام: plist على macOS، الـ Registry على Windows، ملفات config مُدارة، ودروب إنز managed-settings.d/ بتتدمج أبجديًا. ده منفصل عن ملفات الذاكرة المُدارة زي ملف CLAUDE.md على مستوى المؤسسة.
# Test headless with sandboxing
claude -p "analyze the security of this codebase" \
--sandbox \
--permission-mode plan \
--output-format json
أداة Advisor (تجريبية)
أداة Advisor هي ميزة تجريبية بتعتمد على نظام dual-model، بتخلي model منفّذ أسرع وأقل تكلفة (زي Sonnet) يستشير model مستشار أذكى (زي Opus) أثناء الشغل للحصول على توجيهات استراتيجية. المستشار بيقرأ المحادثة كاملة وبيطلع خطة أو تصحيح مسار، وبعدين المنفّذ بيكمّل الشغل. النمط ده مناسب لشغل الـ agents الطويل اللي أغلب الخطوات فيه ميكانيكية بس مهم يكون في خطة ممتازة.
فعّلها بأمر /advisor. لما تكون مفعّلة، الجلسات بتعرض label “experimental” وإشعار بدء. الـ model المنفّذ بيتحدد كـ model الجلسة الرئيسي، والـ model المستشار بيتحدد من خلال dialog الـ /advisor. أداة Advisor بتتفعّل عن طريق متغير البيئة CLAUDE_CODE_ENABLE_EXPERIMENTAL_ADVISOR_TOOL.
Glob وGrep الأصلية على macOS/Linux
على الـ native macOS وLinux builds، أدوات Glob وGrep بتتعوّض بـ binaries مدمجة bfs وugrep متاحة من خلال أداة Bash. النتيجة: بحث أسرع في الملفات من غير round-trip لأداة منفصلة — Claude بيستخدم أمر Bash واحد بدل ما يستدعي أداة مخصصة، وده بيقلل الـ latency على الـ codebases الكبيرة.
Windows والـ npm-installed builds مش متأثرين وبيستمروا في استخدام أدوات Glob وGrep الأصلية. متغيرات البيئة CLAUDE_CODE_GLOB_HIDDEN وCLAUDE_CODE_GLOB_NO_IGNORE وCLAUDE_CODE_GLOB_TIMEOUT_SECONDS لسه بتنطبق على الأدوات الأصلية حيث ما تكون مستخدمة.
تنظيف الجلسات بـ cleanupPeriodDays
إعداد cleanupPeriodDays في settings.json بيتحكم في مدة الاحتفاظ ببيانات الجلسة قبل الحذف التلقائي عند بدء التشغيل. الافتراضي 30 يوم والحد الأدنى 1 — تعيينه لـ 0 بيترفض بخطأ validation. عملية التنظيف بتشمل الجلسات، orphaned subagent worktrees، background tasks (~/.claude/tasks/)، shell snapshots (~/.claude/shell-snapshots/)، وbackups الملفات (~/.claude/backups/):
{
"cleanupPeriodDays": 14
}
عشان تمنع كتابة الـ transcripts خالص في الوضع غير التفاعلي، استخدم --no-session-persistence.
مسح بيانات المشروع (Project Purge)
لما cleanupPeriodDays مش كفاية وعايز تمسح كل بيانات Claude Code لمشروع معين فورًا، استخدم claude project purge. الأمر ده بيمسح الـ transcripts، قوائم المهام، سجلات التشخيص، تاريخ تعديلات الملفات، تاريخ الـ prompts، وسجل المشروع نفسه:
# معاينة اللي هيتمسح من غير ما تمسح فعلًا
claude project purge --dry-run
# مسح بيانات المشروع الحالي
claude project purge
# تخطي سؤال التأكيد
claude project purge --yes
# اختيار تفاعلي للعناصر اللي عايز تمسحها
claude project purge --interactive
# مسح بيانات كل المشاريع مرة واحدة
claude project purge --all
الـ flags تقدر تجمعهم مع بعض: claude project purge --all --dry-run بيعرض إيه اللي هيتمسح لو عملت مسح كامل. الاختصارات -y و-i شغّالة كمان.
Environment Variables للتشخيص والمنصات
في شوية environment variables بتفتح surfaces مش متاحة لسه كأوامر أو settings.
OTEL_LOG_RAW_API_BODIES=1 بيخلي Claude يبعت الـ API request و response bodies الكاملة كـ OpenTelemetry log events — فعّله لما تكون بتتحرى ليه request فشل أو إيه اللي Claude بعته للـ model بالظبط. خلي بالك بعد كده لأن bodies الـ request ممكن يكون فيها secrets.
OTEL_RESOURCE_ATTRIBUTES بيضيف أزواج key=value مخصصة مفصولة بفاصلة (من غير مسافات، أي حرف خاص لازم يتعمله percent-encode) وClaude Code بيلصقها كـ labels على كل metric datapoint وevent، فوق ما بيبعتها في الـ OTLP resource block. استخدمه عشان تقسم الـ metrics حسب الفريق أو القسم أو cost center في الـ backend بتاعك — department=engineering,team.id=platform,cost_center=eng-123. المفاتيح المخصصة عمرها ما تستبدل الـ attributes المدمجة زي user.id أو session.id. لو عايز تخلي الـ attributes في الـ resource block بس وتمنعها من كل datapoint label (cardinality أقل وتكلفة تخزين أقل)، اضبط OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES=false.
CLAUDE_CODE_USE_POWERSHELL_TOOL=1 بيفعّل PowerShell tool على Linux و macOS (محتاج pwsh في الـ PATH). على Windows الأداة بتتطرح بشكل تدريجي؛ حط القيمة 0 عشان توقفها صراحة. على Windows مع تفعيل PowerShell tool، الـ PowerShell بيصبح الـ shell الأساسي بدل Bash.
DISABLE_UPDATES=1 بيمنع كل مسارات التحديث، بما فيها claude update اليدوي. ده أشد من DISABLE_AUTOUPDATER (اللي بيمنع التحديثات التلقائية بس) ومخصص للـ enterprise deployments المقفولة اللي الإصدار المثبّت ما لازمش يتغير.
CLAUDE_CODE_HIDE_CWD=1 بيخفي مسار الـ working directory من شعار البداية. مفيد لتسجيلات الشاشة أو العروض التقديمية اللي ما تحبش تكشف فيها معلومات المسار.
CLAUDE_CODE_NATIVE_CURSOR=1 بيخلّي Claude Code يعرض مؤشر الـ terminal الأصلي عند خانة الإدخال بدل البلوك المرسوم. المؤشر الأصلي بيحترم إعدادات الـ terminal بتاعت الـ blink والشكل والـ focus — مفيد لو الـ terminal بتاعك متظبط على شكل مؤشر معيّن أو محتاج accessibility.
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE تم إزالته في v2.1.160 ودلوقتي عبارة عن no-op.
CLAUDE_CODE_RESUME_PROMPT بيستبدل رسالة الاستكمال اللي Claude بيحقنها لما تستأنف جلسة وقفت في نص الـ turn. الافتراضي هو Continue from where you left off.. سكربتات الإطلاق للوكلاء طويلة المدى ممكن تستخدم ده عشان تحط رسالة بداية أكثر توجيهًا؛ والقيمة الفاضية بترجّع الافتراضي.
CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1 بيوجّه استبيان جودة الجلسة (“How is Claude doing?”) لـ OpenTelemetry collector بتاعك لما يكون الـ traffic غير الأساسي المتجه لـ Anthropic مقفول. تقييمات الاستبيان بتتبعت بس كـ OTEL events للـ collector اللي ضابطه — مفيش بيانات استبيان بتتبعت لـ Anthropic. بيشتغل لما CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC أو DISABLE_TELEMETRY أو DO_NOT_TRACK يكونوا متفعلين، ومش بيأثر في غير كده. CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY وسياسة المنظمة لـ product feedback لسه ليهم الأسبقية.
ANTHROPIC_WORKSPACE_ID هو الـ workspace ID اللي بيستخدمه workload identity federation. اضبطه لما قاعدة الفيدريشن بتاعتك متاحة لأكتر من workspace عشان تبادل التوكن يعرف يستهدف أنهي workspace — من غيره، القاعدة العامة مفيش طريقة تختار بيها workspace وعملية التبادل بتفشل. سيبه فاضي لما قاعدة الفيدريشن متاحة لـ workspace واحد بس.
# سجّل OTEL telemetry كاملة وأنت بتعيد إنتاج API bug
OTEL_LOG_RAW_API_BODIES=1 claude --print 'reproduce the failure'
# قسّم metrics حسب الفريق وcost center في OTEL backend بتاعك
OTEL_RESOURCE_ATTRIBUTES="department=engineering,team.id=platform,cost_center=eng-123" \
claude
# فعّل PowerShell tool على macOS أو Linux
CLAUDE_CODE_USE_POWERSHELL_TOOL=1 claude
# امنع كل التحديثات على جهاز مقفول
DISABLE_UPDATES=1 claude
# اخفِ الـ working directory في شعار البداية
CLAUDE_CODE_HIDE_CWD=1 claude
# استخدم مؤشر الـ terminal الأصلي عند خانة الإدخال
CLAUDE_CODE_NATIVE_CURSOR=1 claude
# غيّر رسالة الاستكمال لسكربت إطلاق وكيل
CLAUDE_CODE_RESUME_PROMPT="Resume the migration and stop after the next test run." \
claude --resume
# وجّه استبيان جودة الجلسة لـ OTEL collector بتاعك
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 \
CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1 claude
# Workload identity federation مع قاعدة فيها أكتر من workspace
ANTHROPIC_WORKSPACE_ID=ws_01abcd... claude
Claude Code على الويب ونقل الجلسات
Claude Code على الويب بيشغّل المهام على بنية تحتية سحابية مُدارة من Anthropic على claude.ai/code. الجلسات بتفضل شغّالة حتى لو قفلت المتصفح، وتقدر تتابعها من تطبيق Claude للموبايل.
شغّل جلسة سحابية من الـ terminal بـ claude --remote "your task". Claude بيعمل clone للريبو من GitHub (ادفع الـ commits المحلية الأول)، ينفّذ الـ prompt لوحده، ويقدر يفتح PRs لما يخلّص. استخدم عدة --remote عشان تشغّل مهام بالتوازي.
أمر /teleport (اختصار /tp) بيجيب جلسة سحابية للـ terminal المحلي — بيجيب الـ branch، يحمّل كل تاريخ المحادثة، ويخلّيك تكمّل محلي. في الاتجاه العكسي: --remote بيبعت الشغل للـ cloud. مع بعض بيعملوا loop سلس بين التنفيذ المحلي والسحابي.
أمر /autofix-pr بيعمل جلسة سحابية بتراقب الـ PR بتاعك. لما CI يفشل أو reviewers يعلّقوا، Claude بيحقق ويدفع fix. حدد النطاق بـ prompt: /autofix-pr only fix lint and type errors. محتاج Claude GitHub App متثبّت على الريبو.
# خطط محلي، نفّذ في الـ cloud
claude --permission-mode plan
# ... خلّص الخطة، commit، push ...
claude --remote "Execute the migration plan in docs/migration-plan.md"
# ارجع بالجلسة السحابية لما تخلص
/teleport
الجلسات السحابية بتيجي بـ runtimes جاهزة (Node.js, Python, Go, Rust, Java, Ruby, Docker, PostgreSQL)، حتى 16 GB RAM، ومستويات network access قابلة للتعديل. إعدادات الريبو (CLAUDE.md، settings، MCP servers، skills) بتتنقل تلقائي. إعدادات المستخدم (~/.claude/) مبتتنقلش — حط إعدادات المشروع في الريبو.
تخصيص رابط الـ PR
إعداد prUrlTemplate في settings.json بيوجّه شارة الـ PR في الـ footer لرابط code-review مخصص بدل رابط GitHub الافتراضي. ده مفيد للفرق اللي بتستخدم GitLab أو Bitbucket أو أداة مراجعة داخلية:
{
"prUrlTemplate": "https://gitlab.example.com/org/repo/-/merge_requests/{{pr_number}}"
}
إعدادات الـ Worktree
الـ Git worktrees بتخلّيك تعمل checkout لـ branches كتير في نفس الوقت من غير ما تعمل stash أو branch. claude --worktree <name> بيعمل worktree جديد مرتبط بـ <name>/. إعداد worktree.baseRef (جديد في v2.1.133) بيتحكم في مين اللي هي branched من عنده. حط baseRef لـ head (الـ local HEAD، الافتراضي) أو fresh (origin/<default> — branched من الـ default remote ref):
{
"worktree": {
"baseRef": "head"
}
}
حط head عشان تحافظ على commits lokal اللي لسه ما اتpushتش في worktrees جديدة. ده بيأثر على --worktree وEnterWorktree وagent-isolation worktrees.
استخدام الكمبيوتر (Computer Use) — معاينة بحثية
استخدام الكمبيوتر بيخلّي Claude يفتح تطبيقات ويتحكم في شاشتك ويتفاعل مع واجهات المستخدم على macOS — يبني تطبيق Swift ويشغّله ويضغط على كل زر ويعمل screenshot للنتيجة، كل ده في نفس المحادثة. بيعالج المهام اللي محتاجة GUI: التحقق من بناء تطبيقات macOS الأصلية، اختبار UI شامل من غير test harness، تصحيح مشاكل layout المرئية، والتحكم في أدوات GUI-only زي تطبيقات التصميم أو iOS Simulator.
Claude بيجرب أدوات أدق الأول: MCP servers أو Bash أو تكامل Chrome. استخدام الكمبيوتر هو الخيار الاحتياطي للحاجات اللي مفيش أداة تانية تقدر توصلها — التطبيقات الأصلية والمحاكيات والأدوات اللي مفيهاش API.
فعّله بتشغيل /mcp في جلسة، ودوّر على server الـ computer-use، واختار Enable. الإعداد بيتحفظ لكل مشروع. أول مرة تستخدمه، macOS هيطلب صلاحيات Accessibility وScreen Recording. لما Claude عايز يتحكم في تطبيق معين في جلسة، هيظهر prompt عشان توافق — الموافقات بتفضل للجلسة الحالية بس. التطبيقات اللي ليها وصول واسع (terminals وFinder وSystem Settings) بتعرض تحذيرات إضافية.
وأنت Claude شغّال، باقي التطبيقات بتتخفى عشان يتفاعل بس مع التطبيقات المعتمدة. نافذة الـ terminal بتفضل ظاهرة ومستبعدة من الـ screenshots. اضغط Esc في أي مكان أو Ctrl+C عشان توقف فورًا. جلسة واحدة بس تقدر تتحكم في الجهاز في نفس الوقت.
استخدام الكمبيوتر محتاج اشتراك Pro أو Max، macOS، Claude Code v2.1.85+، وجلسة تفاعلية (مش متاح مع -p). مش متاح على Team أو Enterprise أو Bedrock أو Vertex AI أو Foundry.
ميزات متقدمة إضافية
أدوات Claude Code المتقدمة أكتر من كده. المهام في الخلفية بتخلّي الشغل الطويل يكمّل وأنت بتكمّل محادثتك. المهام المجدولة بتدعم /loop للفحوصات المتكررة داخل الجلسة و/schedule للمهام المجدولة في الـ cloud. أدوات الجلسة زي /resume و/rename و/teleport بتسهّل التنقل بين الـ CLI المحلي، المتصفح، والـ desktop app.
كمان فيه ميزات منصة للاستخدام اليومي: الإملاء الصوتي بـ /voice، تكامل Chrome بـ --chrome، التحكم عن بعد بـ /remote-control، دروس /powerup التفاعلية لاكتشاف الميزات، قوائم المهام، وسير عمل git worktree بـ claude --worktree. كل دول بيشتركوا في نفس نظام الصلاحيات، فالاستخدام المتقدم في الغالب هو إنك تدمج الوضع المناسب مع السطح المناسب.