Claude Code — شيت شيت 📋

"الورقة اللي تطبعها وتعلقها جنب الشاشة"

Claude Code architecture

Sectionالتنصيب والإعداد

Claude Code هو أداة Anthropic الرسمية للـcoding من جوه الترمنال — بتقرا وتعدل ملفات، بتشغل أوامر shell، بتستخدم MCP servers، وبتفوّض لـsubagents، وتقدر تشتغل headless.

bash
# macOS / Linux / WSL — التنصيب الأصلي (المفضّل)
curl-fsSLhttps://claude.ai/install.sh|bash

# Windows PowerShell
irmhttps://claude.ai/install.ps1|iex

# Windows CMD
curl-fsSLhttps://claude.ai/install.cmd-oinstall.cmd&&install.cmd&&delinstall.cmd

# القناة المستقرة (stable) بدل أحدث إصدار
curl-fsSLhttps://claude.ai/install.sh|bash-sstable

# نسخة معيّنة بالظبط
curl-fsSLhttps://claude.ai/install.sh|bash-s2.1.89

# Homebrew (من غير auto-update)
brewinstall--caskclaude-code

# WinGet
wingetinstallAnthropic.ClaudeCode

# npm (محتاج Node.js 22+ — بيثبّت نفس الـbinary الأصلي، مش بيستخدم الـNode وقت التشغيل)
npminstall-g@anthropic-ai/claude-code
# ⚠️ متعملش أبداً: sudo npm install -g
تثبيت والتأكد من إصدار Claude Code
➜ ~ curl -fsSL https://claude.ai/install.sh | bash
التنصيب بياخد ثواني معدودة...
➜ ~ claude --version
2.1.211 (Claude Code)
➜ ~⏎ نفّذ · ⌫ امسح
الأمربيعمل إيه بالظبطإمتى تستخدمهليه مهم
claude --versionيطبع رقم الإصدارتتأكد من النسخةيأكد إن التنصيب تمام
claude doctorفحص read-only للتنصيب والإعدادات (من غير session)لما حاجة مش شغالةبيكتشف المشاكل من غير ما يعدّل حاجة
claude updateيحدّث لأحدث إصدارتحديث يدويHomebrew والـpkg managers مش بتعمل auto-update
claude (أول مرة)يفتح session ويطلب login في المتصفحأول تشغيللازم حساب Pro / Max / Team / Enterprise / Console
claude setup-tokenيولّد OAuth token طويل العمرللـCI والـscriptsتوثيق من غير متصفح

التوثيق: لو الـenv var ANTHROPIC_API_KEY متظبّط، Claude بيطلب موافقة على المفتاح مرة واحدة بدل ما يفتح المتصفح. مزودو المؤسسات: Amazon Bedrock, Google Cloud Vertex AI, Microsoft Foundry.

متطلبات النظام: macOS 13+ / Windows 10 1809+ / Ubuntu 20.04+ / Debian 10+ / Alpine 3.19+، 4GB+ RAM، x64/ARM64، وripgrep مدمج. على Windows الأصلي، Git for Windows اختياري (بيفعّل الـBash tool عبر Git Bash، وإلا بيستخدم الـPowerShell tool).

Sectionأوامر الـCLI الأساسية

الأمربيعمل إيه بالظبطإمتى تستخدمهليه مهم
claudeيبدأ session تفاعليالاستخدام اليومينقطة الدخول الأساسية
claude "query"يبدأ بـprompt أوليتدخل بسؤال جاهزيوفّر خطوة
claude -p "query"Print mode: يشغّل عبر الـSDK، يطبع، يخرجheadless / scriptsمفتاح الأتمتة
cat file | claude -p "query"يعالج محتوى مُمرَّر (piped)تحليل log أو ملفتدمجه مع أدوات الترمنال
claude -cيكمل آخر محادثة في نفس الـdirترجع لشغلكمش محتاج تفتكر الـID
claude -c -p "query"يكمل آخر محادثة عبر الـSDK (headless)أتمتة متتابعةيحافظ على الـcontext
claude -r "<session>" "query"يكمل session بالـID أو الاسم (أو picker)ترجع لمحادثة معيّنةتحكّم دقيق في الجلسات
claude updateيحدّث لأحدث إصدارتحديث يدويللـHomebrew والـpkg managers
claude install [version]يثبّت / يعيد تثبيت الـbinary الأصليتصليح تنصيبيحط نسخة محددة
claude doctorفحص تنصيب وإعدادات read-onlyتشخيصبدون session
claude mcpيظبط MCP servers (subcommands تحت)تضيف أدوات خارجيةربط بيانات/أدوات
claude agentsيفتح agent view: يراقب/يطلق sessions متوازية في الخلفيةشغل متعدد بالتوازيmonitoring للـbackground agents
claude auth login / logout / statusتسجيل دخول / خروج / عرض الحالةإدارة الحسابتبديل الحسابات
claude setup-tokenOAuth token طويل العمر لـCIالتوثيق في الـpipelinesتوثيق آلي
claude pluginيدير الـpluginsتضيف/تشيل pluginsتوسّع الأداة
claude project purge [path]يحذف حالة Claude المحلية لمشروعتنظيفيبدأ نضيف

SectionالـFlags المهمة

الـFlagبيعمل إيه بالظبطإمتى تستخدمه
-p, --printيطبع الرد بدون REPL (headless/SDK)الأتمتة والـscripts
-c, --continueيحمّل آخر محادثة في الـcwdتكمل شغلك
-r, --resumeيكمل session معيّنة بالـID/الاسم (أو picker)ترجع لمحادثة
--fork-sessionعند الـresume، يعمل session id جديدة بدل ما يعيد استخدام القديمةتفرّع آمن
--modelيحدد الـmodel بالـalias أو الاسم الكاملتختار Opus/Sonnet/Haiku
--fallback-modelmodel بديل تلقائي لما الأساسي يبقى overloadedاستقرار
--permission-modeيبدأ في وضع أذونات (default/acceptEdits/plan/bypassPermissions)تحكّم في الأمان
--dangerously-skip-permissionsيتخطى كل prompts الأذونات (== bypassPermissions)بيئات معزولة فقط ⚠️
--allowedTools / --allowed-toolsأدوات تشتغل من غير سؤالأتمتة موثوقة
--disallowedTools / --disallowed-toolsقواعد رفض للأدواتتمنع أدوات معيّنة
--toolsيقيّد الأدوات المدمجة اللي Claude يقدر يستخدمهاتضييق الصلاحيات
--add-dirيضيف working directories زيادة للقراءة/التعديلشغل متعدد المجلدات
--output-formatصيغة الخرج في print mode: text | json | stream-jsonparsing برمجي
--input-formatصيغة الدخل في print mode: text | stream-jsonstreaming input
--json-schemaيفرض JSON مُتحقَّق منه مطابق لـschemaخرج مضمون الشكل
--mcp-configيحمّل MCP servers من ملف/نص JSONإعداد MCP مؤقت
--strict-mcp-configيستخدم بس الـservers من --mcp-configعزل الـMCP
--append-system-promptيضيف نص على الـsystem prompt الافتراضيتعليمات إضافية
--system-promptيستبدل الـsystem prompt كلهتحكّم كامل
--agentsيعرّف subagents inline عبر JSONagents مؤقتة
--agentيستخدم agent معيّن للـsessionتخصيص السلوك
--max-turnsيحدد أقصى عدد للـagentic turnsحاجز أتمتة
--max-budget-usdيوقف بعد صرف كذا دولار على الـAPIتحكّم في التكلفة
--session-idيستخدم UUID معيّن للـsessionربط برمجي
--settingsمسار ملف settings JSON أو JSON inlineإعداد مخصص
--setting-sourcesأي مصادر تتحمّل: user,project,localتحكّم في الإعداد
--verboseخرج كامل turn-by-turndebugging
--worktree, -wيبدأ في git worktree معزولشغل على feature منفصل
--permission-prompt-toolMCP tool يتولى prompts الأذونات في وضع non-interactiveأتمتة كاملة
--version, -vيطبع الإصدارالتأكد من النسخة

Sectionالوضع البرمجي — Headless & Programmatic

bash
# سؤال واحد: يطبع ويخرج
claude-p"explain the root cause"

# خرج JSON منظم (result, cost, session_id...)
claude-p"summarize this diff"--output-formatjson

# streaming NDJSON events — مع input streaming
claude-p"refactor auth"--output-formatstream-json--input-formatstream-json

# pipe لمحتوى من أداة تانية
caterror.log|claude-p"explain the root cause"

# حواجز الأتمتة (guardrails)
claude-p"fix failing tests"\
--max-turns8\
--max-budget-usd2.00\
--allowedTools"Read,Edit,Bash(npm test:*)"\
--permission-modeacceptEdits\
--session-id123e4567-e89b-12d3-a456-426614174000

# توثيق طويل العمر للـCI
claudesetup-token

الـClaude Agent SDK (TypeScript / Python) بيغلّف كل ده عشان تبني agents مخصصة.

Sectionأوضاع الأذونات — Permission Modes

Permission modes

الوضعبيعمل إيهإمتى تستخدمه
defaultيسأل أول مرة يستخدم كل نوع أداةالاستخدام العادي — أأمن
acceptEditsيقبل تعديلات الملفات تلقائياً (لسه بيسأل على الـbash الخطير)تعديلات كتير موثوقة
planread-only: يخطط ويقترح، مش بيعدّل لحد ما توافقمهمة كبيرة محتاجة تفكير
bypassPermissionsمفيش prompts خالص (خطر — --dangerously-skip-permissions)بيئات معزولة فقط ⚠️

التبديل: Shift+Tab بيدوّر بين الأوضاع (default → acceptEdits → plan → …). أو ابدأ في وضع مباشرة بـ--permission-mode.

Sectionإدارة الجلسة والمحادثة

الأمربيعمل إيه بالظبطإمتى تستخدمهليه مهم
/clear (aliases: /reset, /new)يبدأ محادثة جديدة، context فاضي (بيحتفظ بذاكرة المشروع)تبدأ موضوع جديدcontext نضيف = نتائج أحسن
/resumeيرجع لمحادثة أقدمترجع لشغل قديميوفّر الوقت
/rewindيرجّع الكود و المحادثة لـcheckpointالـagent عمل حاجة غلطيلغي التعديلات والسياق مع بعض
/compact [instructions]يلخّص المحادثة عشان يفضّي contextقربت تمتلي الـcontextيمسك المهم ويوفّر tokens
/branch [name]يفرّع المحادثة عند النقطة ديتجرّب مسار تانيتجريب من غير ما تفقد الأصل
/background [prompt] (alias /bg)يفصل الـsession ويشغّلها كـbackground agentشغل في الخلفيةيسيبك تكمّل
/fork <directive>يطلق forked subagent يرث المحادثةفرع شغل مستقليورّث الـcontext
/export [filename]يصدّر المحادثة كـplain textتشارك أو تحفظأرشفة
/context [all]يعرض استهلاك الـcontext كـgrid ملوّنتفهم الـcontextتعرف إمتى تعمل compact
/statusحالة الـsession الحاليةنظرة سريعةتشخيص
/cost (= /usage)استهلاك الـtokens والتكاليفتراقب المصاريفتحكّم في التكلفة
/copy [N]ينسخ آخر (أو رقم N) رد للـclipboardتاخد رد بسرعةلصق في مكان تاني
/btw <question>سؤال جانبي سريع مش بيتضاف للمحادثةسؤال بسيطمش بيلوّث الـcontext

Sectionكل الـSlash Commands

الأوامر المدمجة (Built-in)

الأمربيعمل إيهإمتى تستخدمه
/add-dir <path>يضيف working dir للـsession ديشغل في مجلد تاني
/agentsيدير إعدادات الـsubagentsتعمل/تعدّل agents
/cd <path>ينقل الـsession لـworking dir جديدتغيّر مكان الشغل
/chromeيظبط Claude in Chromeتكامل المتصفح
/color [color|default]يظبط لون شريط الـpromptتخصيص المظهر
/config [key=value] (alias /settings)يفتح Settings أو يظبط إعداد مباشرةتغيّر configuration
/desktop (alias /app)يكمّل الـsession في تطبيق الـDesktopتنقل للـGUI
/diffعارض diff تفاعلي للتغييرات غير المحفوظةتشوف إيه اتغيّر
/exit (alias /quit)يخرج من الـCLIتقفل
/fast [on|off]يبدّل fast modeردود أسرع
/focusيبدّل focus viewتركيز العرض
/helpيعرض المساعدة والأوامر المتاحةتعرف الأوامر
/hooksيعرض إعدادات الـhooks لأحداث الأدواتتراجع الـhooks
/ideيدير تكامل الـIDE ويعرض الحالةربط بالـeditor
/initيهيّئ المشروع بملف CLAUDE.mdمشروع جديد
/keybindingsيفتح ملف اختصارات الكيبوردتخصيص المفاتيح
/login / /logoutتسجيل دخول / خروجإدارة الحساب
/mcp [reconnect|enable|disable]يدير اتصالات MCP والـOAuthإدارة MCP
/memoryيعدّل ملفات ذاكرة CLAUDE.md ويدير الـauto-memoryتحديث الذاكرة
/mobile (aliases /ios, /android)QR لتحميل تطبيق الموبايلتنقل للموبايل
/model [model]يبدّل الـmodel ويحفظه كـdefaultتغيير النموذج
/permissions (alias /allowed-tools)يدير قواعد allow/ask/denyتحكّم في الأذونات
/rewindيرجّع الكود والمحادثة لـcheckpointتراجع
/statusحالة الـsession الحاليةنظرة سريعة
/tasksيعرض شغل الخلفية للـsession ديتراقب الـbackground
/teleportيسحب web session للترمنالتنقل من الويب
/remote-controlيكمّل session محلية من جهاز تانيتحكّم عن بُعد
/usage (alias /cost)استهلاك الـtokens والتكاليفتراقب المصاريف

الـSkills المدمجة (بتيجي مع Claude Code)

الأمربيعمل إيهإمتى تستخدمه
/code-review [level] [--fix] [--comment] [target]يراجع الـdiff للـbugs والتنظيف — ultra = مراجعة سحابية متعددة الـagentsقبل الـmerge
/security-reviewيفحص الـdiff للثغرات الأمنيةتتأكد مفيش vulnerabilities
/simplifyمراجعة تنظيف بس بتطبّق الإصلاحات (مفيش bug hunting)تبسيط الكود
/planيدخل plan mode قبل تغيير كبيرتخطيط أول
/debug [description]يفعّل debug logging ويشخّصتصليح مشاكل
/deep-research <question>يفتح web searches ويجمّع تقرير موثّقبحث معمّق
/fork <directive>يطلق forked subagent يرث المحادثةفرع شغل
/goal [condition|clear]يفضل شغال لحد ما شرط يتحققمهمة بهدف واضح
/loop [interval] [prompt] (alias /proactive)يكرر prompt طول ما الـsession مفتوحةmonitoring
/batch <instruction>يدير تغييرات كبيرة متوازية عبر الـcodebaseتعديلات جماعية
/dataviz [request]إرشادات تصميم للـcharts/dashboardsتصميم بيانات
/claude-apiيحمّل مرجع Claude APIشغل على الـAPI
/fewer-permission-promptsيفحص الـtranscripts ويضيف allowlistتقليل الأسئلة
/install-github-appيثبّت Claude GitHub App لريبوتكامل GitHub
/doctor (alias /checkup)فحص إعداد بيشخّص/يصلّح المشاكلتشخيص

الـAliases: /settings=/config · /reset,/new=/clear · /cost=/usage · /bug,/share=/feedback · /quit=/exit · /checkup=/doctor · /allowed-tools=/permissions · /bg=/background · /app=/desktop · /proactive=/loop.

SectionالـDelegation والـSubagents

الـsubagents = مساعدين AI متخصصين بيتعاملوا مع نوع مهمة معيّن في context window خاص بيهم، بـsystem prompt وأدوات وأذونات خاصة — وبيرجّعوا ملخّص بس للمحادثة الرئيسية.

ليه مهمين: (1) يحافظوا على الـcontext الرئيسي، (2) يفرضوا قيود على الأدوات، (3) تعيد استخدام الإعداد عبر المشاريع، (4) تخصيص السلوك، (5) تحكّم في التكلفة بتوجيه المهام لـmodels رخيصة/سريعة زي Haiku.

إزاي بيتم التفويض: Claude بيقرا الـdescription بتاع كل subagent ويفوّض تلقائياً لما المهمة تطابق. تقدر تجبره كمان:

bash
>Usethecode-reviewersubagenttocheckmychanges

الإدارة والملفات:

المكانالغرض
/agentsإنشاء/تعديل/عرض، وضبط الأدوات والـmodel
.claude/agents/<name>.mdagent على مستوى المشروع (مشترك via git)
~/.claude/agents/<name>.mdagent شخصي (كل مشاريعك)
claude agents / --bgتشغيل sessions مستقلة كتير بالتوازي ومراقبتها
--agents (flag)تعريف subagents inline عبر JSON

حقول الـFrontmatter: name · description (إمتى تستخدمه — اكتبها كويس!) · tools (اختياري؛ لو مكتوبتهاش = يرث الكل) · model (اختياري: sonnet/opus/haiku أو 'inherit').

yaml
---
name: code-reviewer
description: Expert code review specialist. Use PROACTIVELY after writing or changing code.
tools: Read, Grep, Glob, Bash
model: sonnet
---
You are a senior code reviewer. When invoked: run git diff, focus on changed files, review for
readability, bugs, security. Give feedback grouped by priority.

النموذج الذهني: الـagent الرئيسي = orchestrator؛ الـsubagents = عمال مركّزين بـcontext نضيف؛ الملخّص بس هو اللي بيرجع.

Sectionأوامر مخصصة (Skills) — Custom Commands

الأوامر المخصصة اتدمجت مع الـskills. .claude/commands/deploy.md و.claude/skills/deploy/SKILL.md الاتنين بيعملوا /deploy.

المكانالنطاق
.claude/commands/ أو .claude/skills/مشروع (مشترك via git)
~/.claude/commands/ أو ~/.claude/skills/شخصي

حقول الـFrontmatter: description · argument-hint · allowed-tools · model · (الـskills بتضيف) تحكّم الاستدعاء + run-in: subagent.

عناصر خاصة في الـbody:

  • $ARGUMENTS = كل اللي اتكتب بعد الأمر · $1, $2, … = arguments بالترتيب.
  • ! في أول السطر = يشغّل bash ويدمج الخرج (محتاج allowed-tools Bash).
  • @path/to/file = يدمج محتوى ملف.

Namespacing: subdirectories → /frontend:lint, /backend:deploy. الـskills بتحمّل الـbody بتاعها بس لما تتستخدم (رخيصة لحد ما تحتاجها). Claude يقدر يستدعي skill تلقائياً لما تكون relevant، أو تستدعيها بـ/name.

markdown
---
description: Create a git commit
argument-hint: [message]
allowed-tools: Bash(git add:*), Bash(git commit:*)
model: claude-haiku-4-5
---
## Context
- Current status: !`git status`
- Current diff: !`git diff HEAD`
## Task
Create a single commit with message: $ARGUMENTS

Sectionالذاكرة والإعداد — Memory & Config

CLAUDE.md = تعليمات مستمرة بتتحمّل تلقائياً. الهرمية (كلها بتتجمّع concatenate، المتأخر بيضيف على المتقدّم):

الأولويةالملفالنطاق
1Enterprise/managed policy (system dir)سياسة المؤسسة
2~/.claude/CLAUDE.mdكل مشاريعك
3./CLAUDE.mdالمشروع (مشترك via git)
4./CLAUDE.local.mdشخصي (gitignored) — بيتم إهماله لصالح الـimports
  • الـnested CLAUDE.md في الـsubdirs بتتحمّل عند الحاجة لما Claude يلمس ملفات هناك.
  • /init = يعمل scaffold لـCLAUDE.md للمشروع.
  • /memory = يفتح ويعدّل ملفات الذاكرة.
  • # في أول الإدخال = "افتكر ده" → بيضيف سطر لملف ذاكرة.
  • @path/import.md جوه CLAUDE.md = يستورد ملف تاني (بحد أقصى 5 hops).
  • Auto-memory: Claude بيكتب ملاحظات في ~/.claude/projects/<project>/memory/ (فهرس MEMORY.md). بيعيش بعد /compact. gitignored.
  • Path-scoped rules: .claude/rules/*.md بـpaths: frontmatter globs، بتتحمّل بس لما Claude يقرا ملفات مطابقة.

هرمية settings.json (الأولوية من الأعلى للأدنى)

text
Managed(org)command-lineflags.claude/settings.local.json(شخصي،gitignored)
  → .claude/settings.json (مشروع، مشترك) → ~/.claude/settings.json (مستخدم)

الحقول الأساسية: model · permissions {allow, ask, deny, defaultMode} · env · hooks · autoUpdatesChannel · minimumVersion · editorMode ("vim"/"normal") · autoMemoryEnabled · outputStyle.

SectionالـHooks

handlers حتمية (shell/HTTP/…) بتشتغل عند أحداث دورة الحياة (settings.json → hooks).

الحدثإمتى بيشتغل
SessionStartالـsession تبدأ/تستأنف (matchers: startup, resume, clear, compact)
UserPromptSubmitتبعت prompt، قبل ما Claude يشوفه
PreToolUseقبل استدعاء أداة (يقدر يسمح/يرفض/يسأل)
PostToolUseبعد ما استدعاء أداة ينجح
PostToolUseFailureبعد ما استدعاء أداة يفشل
NotificationClaude يبعت إشعار (مثلاً محتاج إدخال)
StopClaude يخلّص رده
SubagentStart / SubagentStopsubagent يبدأ / يخلّص
PreCompact / PostCompactحوالين ضغط الـcontext
SessionEndالـsession تنتهي

وفيه كمان: PermissionRequest, PermissionDenied, TaskCreated/Completed, FileChanged, WorktreeCreate/Remove، وغيرها.

json
{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "if": "Bash(rm *)",
            "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh",
            "args": []
          }
        ]
      }
    ]
  }
}
  • Matcher: ""/"*"/محذوف = الكل · نص عادي = مطابقة (مثلاً "Edit|Write") · أي رموز تانية = regex.
  • أنواع الـHook: command, http, mcp_tool, prompt, agent. حقول شائعة: if, timeout (افتراضي 600s), statusMessage.
  • Exit codes: 0 = تمام (الـstdout ممكن يحمل JSON) · 2 = BLOCK (الـstderr → Claude) · غير كده = خطأ غير حاجب.
  • تحكّم JSON (PreToolUse): {"hookSpecificOutput":{"hookEventName":"PreToolUse","permissionDecision":"deny","permissionDecisionReason":"..."}} — القيم allow/deny/ask/defer.
  • JSON عام: continue (false يوقف Claude) · stopReason · suppressOutput · systemMessage · additionalContext.
  • متغيرات المسار: ${CLAUDE_PROJECT_DIR} · ${CLAUDE_PLUGIN_ROOT}.

SectionالـMCP

ربط أدوات/بيانات خارجية.

bash
# stdio
claudemcpadd<name>--<command>[args]

# SSE / HTTP
claudemcpadd--transportsse<name><url>
claudemcpadd--transporthttp<name><url>

# من JSON
claudemcpadd-json<name>'<json>'

# استيراد من Claude Desktop
claudemcpadd-from-claude-desktop

# عرض / تفاصيل / حذف
claudemcplist
claudemcpget<name>
claudemcpremove<name>
النطاق (Scope)معناه
local (افتراضي)المشروع ده بس
projectمشترك via .mcp.json في الريبو
userكل مشاريعك
  • في الـREPL: /mcp يعرض الـservers وحالتها، يعمل OAuth login (/mcp → authenticate)، reconnect/enable/disable.
  • استخدام الـresources في الـprompt: @server:protocol://resource.
  • الـMCP servers ممكن تعرض prompts كـslash commands: /mcp__server__promptname.
json
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "..." }
    }
  }
}

Sectionقواعد الأذونات — Permission Rules

قواعد allow/ask/deny في settings.json (permissions.allow/ask/deny):

القاعدةمعناها
Read, Edit, Write, Bash, WebFetch, WebSearch, Grepأداة كاملة
Bash(npm run test:*)مطابقة prefix
Bash(git *)كل أوامر git
Bash(git status)أمر بالظبط
Read(./src/**)قراءة مسار معيّن
Read(//etc/**)مسار مطلق
deny Read(./.env)يمنع قراءة ملف حسّاس
deny Read(./secrets/**)يمنع مجلد كامل
mcp__server__toolأداة MCP معيّنة

/permissions يفتح واجهة القواعد. defaultMode في الـsettings بيحدد وضع البداية.

Sectionاختصارات الكيبورد والإدخال

Prefixes في أول السطر:

الرمزبيعمل إيه
/slash command / skill
!bash mode (يشغّل shell مباشرة)
@إشارة/إكمال مسار ملف
#يضيف للذاكرة
الاختصارالوظيفة
Shift+Tabيدوّر بين أوضاع الأذونات (default → acceptEdits → plan → …)
Escيقاطع Claude / يقفل dialog
Esc Esc (مرتين، إدخال فاضي)يفتح قائمة الـrewind/checkpoint
Ctrl+Cيلغي الإدخال/العملية الحالية
Ctrl+Dيخرج
Ctrl+Lيمسح الشاشة (بيحتفظ بالـsession)
Ctrl+Rreverse-search في الـhistory / يبدّل verbose
Ctrl+Oيبدّل الـtranscript / يوسّع
Ctrl+V (Cmd+V في بعض الترمنالات)يلصق صورة
Up/Downتاريخ الأوامر
Multiline\ + Enter، أو Option/Alt+Enter، أو Ctrl+J
Vim modeفعّله من /config (editorMode: vim): Esc→NORMAL، i/a→INSERT، hjkl، dd، yy، p، u، .

إدخال الصور: اسحب/الصق screenshots عشان Claude يحللها.

Sectionمتغيرات البيئة وملفات الإعداد

الـEnv varبيعمل إيه
ANTHROPIC_API_KEYمفتاح الـAPI؛ Claude بيطلب موافقة مرة واحدة بدل المتصفح
DISABLE_AUTOUPDATER=1يوقف فحص التحديث في الخلفية
DISABLE_UPDATES=1يمنع كل التحديثات
CLAUDE_CODE_GIT_BASH_PATHمسار Git Bash على Windows (يفعّل الـBash tool)
USE_BUILTIN_RIPGREPيتحكّم في استخدام الـripgrep المدمج
المسارالغرض
~/.claude/settings.jsonإعدادات المستخدم
.claude/settings.jsonإعدادات المشروع (مشترك)
.claude/settings.local.jsonإعدادات شخصية (gitignored)
~/.claude/CLAUDE.mdذاكرة المستخدم
./CLAUDE.mdذاكرة المشروع
.mcp.jsonMCP على مستوى المشروع
.claude/agents/تعريفات الـsubagents
.claude/commands/الأوامر المخصصة

Sectionمقارنة سريعة

البُعدClaude CodeGitHub Copilot CLIOpenCode
الصانعAnthropicGitHubمجتمعي (مفتوح المصدر)
الـmodel الافتراضيClaude (Opus/Sonnet/Haiku)Claude Sonnet 4.5قابل للضبط
اختيار الـmodelعائلة Claude (+ Bedrock/Vertex/Foundry)متعدد (Claude، GPT-5)أي مزوّد (Ollama, OpenAI, Anthropic…)
Subagents/Delegation.claude/agents/, /agents✅ subagents + rubber-duck✅ primary + sub
أوامر مخصصة✅ skills / .claude/commands/✅ skills
Hooks✅ دورة حياة غنية✅ 9 أنواع
MCP✅ stdio/SSE/HTTP + scopes✅ (+ GitHub MCP مدمج)
أوضاع الأذونات✅ default/acceptEdits/plan/bypass✅ Allow/Ask/Deny
Plan mode
Checkpoints/rewind/rewind, Esc Esc/rewindجزئي
Headless / SDK-p, Agent SDK-p
Background agentsclaude agents, --bg/delegate سحابي
IDE ext✅ VS Code + JetBrains
التكلفةPro $20 / Max / API / Consoleاشتراك Copilot $10–39/شهرمجاني + مفاتيحك
المصدرbinary مملوكمملوك (CLI برخصة MIT)مفتوح المصدر