ثبّتّ Claude Code، لكن عند كتابة claude في الطرفية تظهر لك هذه الرسالة — هل يبدو الأمر مألوفًا؟

zsh: command not found: claude
bash: claude: command not found
'claude' is not recognized as an internal or external command   # Windows

يعني هذا الخطأ «تعذّر العثور على الملف التنفيذي claude»، والسبب في الغالب هو «أن مجلد التثبيت غير مُدرَج في PATH». غالبًا ما يكون التثبيت نفسه قد نجح — الطرفية فقط لا تعرف أين تبحث. يغطي هذا المقال طرق التثبيت ومواقعه، وكيفية إصلاح PATH، والتعارض بين عمليات تثبيت متعددة، والمزالق الخاصة بنظام Windows، والتحديث — استنادًا إلى المعلومات الرسمية.

النقاط الأساسية أولًا. (1) command not found يكون في الغالب مجرد «أن ~/.local/bin (مجلد التثبيت) غير مُدرَج في PATH» — أضِفه وأعد تشغيل الطرفية فيعمل. (2) خطأ صلاحيات npm (EACCES) يجب ألا يُصلَّح باستخدام sudo — بل انتقل إلى المثبّت الأصلي بدلًا من ذلك. (3) عند التعثّر، شغّل claude doctor — فهو يفحص سلامة التثبيت والإعدادات ونتيجة التحديث معًا. تتغير الأوامر الدقيقة والقيم الافتراضية بحسب الإصدار، لذا تأكّد من الأحدث في الوثائق الرسمية.

CLAUDE CODE · PATH

مثبَّت، ومع ذلك لا يُعثَر عليه

— مجلد التثبيت فقط ليس في PATH

$ claude
zsh: command not found: claude
$ echo $PATH يُظهِر…
/usr/local/bin : /usr/bin : /bin ← لا يوجد ~/.local/bin
$ ls ~/.local/bin/claude
~/.local/bin/claude ← الملف الثنائي موجود هنا تمامًا!
→ أضِف ~/.local/bin إلى PATH وأعد تشغيل الطرفية

الملف الثنائي موجود فعلًا. إنما PATH الخاص بالطرفية لا يُدرِج موقعه فحسب.
لذا فالحل هو «إضافة سطر واحد إلى PATH» — عادةً في أقل من دقيقة.

1. ماذا يخبرك هذا الخطأ فعليًا

عند كتابة أمر ما، تقوم الطرفية (zsh / bash / PowerShell) بالبحث في المجلدات المدرَجة في متغيّر البيئة PATH بالترتيب وتشغّل أول ملف تنفيذي مطابق. تعني command not found: claude أن أيًّا من تلك المجلدات لم يحتوِ على claude.

الأمر المهم: هذا لا يعني بالضرورة أن التثبيت قد فشل. يضع المثبّت الأصلي claude في ~/.local/bin (في Windows: %USERPROFILE%\.local\bin)، لكن إذا كان ذلك المجلد غير مُدرَج في PATH، فالملف الثنائي موجود ومع ذلك تعجز الطرفية عن العثور عليه. لذا تُحَلّ معظم الحالات عبر «إضافة سطر واحد إلى PATH وإعادة تشغيل الطرفية». قبل الاشتباه في فشل التثبيت، شغّل ls ~/.local/bin/claude للتحقق من وجود الملف الثنائي.

في Windows، يؤدي «اختيار الطرفية الخاطئة» لأمر التثبيت (مثل تشغيل أمر PowerShell في CMD) إلى أخطاء مختلفة — يُغطّى ذلك في §4. أولًا، لنحدّد طرق التثبيت ومواقعه الصحيحة.

2. طرق التثبيت ومكان وجود الملف الثنائي

إليك طرق التثبيت الرئيسية اعتبارًا من 2026 ومكان استقرار الملف الثنائي (المثبّت الأصلي هو المُوصى به).

الطريقةالأمر (الصيغة)الموقع / ملاحظة
الأصلي (موصى به) mac/Linuxcurl -fsSL https://claude.ai/install.sh | bash~/.local/bin/claude. تحديث تلقائي
الأصلي (موصى به) Windowsفي PowerShell: irm https://claude.ai/install.ps1 | iex%USERPROFILE%\.local\bin\claude.exe
npmnpm install -g @anthropic-ai/claude-codeيتطلب Node 18+. يُثبّت الملف الثنائي الأصلي نفسه
Homebrew (mac)brew install --cask claude-codeلا تحديث تلقائي → brew upgrade
WinGet (Windows)winget install Anthropic.ClaudeCodeلا تحديث تلقائي → winget upgrade

الخلاصة: المثبّت الأصلي مُوصى به رسميًا. تُثبّت نسخة npm الملف الثنائي الأصلي نفسه (يُحتاج إلى Node 18+ وقت التثبيت فقط؛ ولا يحتاج الملف الثنائي إلى Node للتشغيل)، لكنها أكثر عرضةً لمشاكل الصلاحيات وPATH. إن كنت تثبّت من جديد، فالأصلي هو الخيار الآمن. لاحِظ أن تثبيت امتداد VS Code فقط يُضمّن واجهة سطر أوامر خاصة داخل الامتداد، ولا يُضيف claude إلى PATH — إن أردت claude في الطرفية، فثبّته على حدة.

3. الأسباب الرئيسية وحلولها

إليك الأسباب الشائعة حول command not found، مقرونةً بحلولها.

ROOT CAUSES

المحرّكات الرئيسية للتثبيت / PATH

1) غير موجود في PATH (الأكثر شيوعًا)
~/.local/bin خارج PATH. أضِف export PATH="$HOME/.local/bin:$PATH" إلى ~/.zshrc/~/.bashrc وأعد تشغيل الطرفية.
2) خطأ صلاحيات npm (EACCES)
لا تستخدم sudo npm (غير موصى به رسميًا). الانتقال إلى المثبّت الأصلي هو الحل الأسرع والأكثر أمانًا.
3) إصدار Node قديم جدًا (طريقة npm)
تتطلب طريقة npm Node 18+. حدّث Node، أو استخدم التثبيت الأصلي الخالي من Node.
4) تعارض عمليات تثبيت متعددة
خليط من npm + الأصلي + Homebrew. تحقّق عبر which -a claude (في Win: where.exe claude) وأبقِ على النسخة الأصلية فقط.
5) لم يُعثَر على الملف الثنائي الأصلي (npm)
تظهر Could not find native binary package ... عند التثبيت مع تخطّي التبعيات الاختيارية. أعد التثبيت دون --omit=optional ونحوه.

عند الشك، فإن «إعادة التثبيت عبر المثبّت الأصلي» تحلّ معظم هذه المشكلات —
إذ تتجاوز مشاكل الصلاحيات وNode والتعارض دفعةً واحدة.

إصلاح ملموس لـ PATH (في macOS zsh): echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc ثم source ~/.zshrc. في Linux bash، افعل الشيء نفسه في ~/.bashrc. بعد التغيير، افتح طرفية جديدة.

4. مزالق خاصة بنظام Windows

في Windows، يكون الفشل الكلاسيكي هو تشغيل أمر التثبيت في «الطرفية الخاطئة». ويخبرك الخطأ بنوع الخلط الذي حدث.

كيف تكتشف الخلط بين الطرفيات

الخطأالمعنى والحل
'irm' is not recognized ...شغّلت أمر PowerShell في CMD → استخدم PowerShell: irm ... | iex
The token '&&' is not validشغّلت أمر CMD في PowerShell → استخدم أمر CMD
'bash' is not recognized ...شغّلت مثبّت Linux على Windows → استخدم مثبّت PowerShell

ملاحظات أخرى خاصة بـ Windows: (1) أعد تشغيل الطرفية بعد التثبيت (يسري تغيير PATH في طرفية جديدة). (2) قد يجعل تطبيق Claude Desktop قديم سجّل WindowsApps\Claude.exe الأمرَ claude يُشغّل تطبيق سطح المكتب بدلًا من واجهة سطر الأوامر — حدّث Claude Desktop. (3) إن لم يُعثَر على Git Bash، فوجّه CLAUDE_CODE_GIT_BASH_PATH في الإعدادات إلى bash.exe لديك. كما أن التشغيل عبر WSL خيار وارد.

5. التحديث التلقائي والتحديث اليدوي

تُحدَّث عمليات التثبيت الأصلية تلقائيًا في الخلفية ويسري ذلك عند التشغيل التالي. للتحديث يدويًا استخدم claude update؛ ولإعادة التثبيت/تثبيت إصدار معيّن استخدم claude install <version> (يقبل أيضًا stable / latest). تحقّق من نتيجة التحديث عبر claude doctor.

عندما يفشل التحديث التلقائي في تثبيت npm

إذا كان مجلد npm العام غير قابل للكتابة، يفشل التحديث التلقائي. يسرد claude doctor الحلول، والحل الجذري هو الانتقال إلى تثبيت أصلي. ولمجرّد إيقاف التحديث التلقائي، اضبط DISABLE_AUTOUPDATER في env ضمن الإعدادات (تبقى التحديثات اليدوية تعمل)؛ ولحظر جميع التحديثات، اضبط DISABLE_UPDATES.

6. سير عمل التشخيص

عندما يكون السبب غير واضح، تقدّم من الأعلى إلى الأسفل. تُحلّ معظم الحالات بحلول الخطوة 3.

DIAGNOSE

اعزل المشكلة من الأعلى إلى الأسفل

1
claude doctor (من الطرفية إن لم يبدأ التشغيل) لفحص سلامة التثبيت.
2
which -a claude / where.exe claude لمعرفة أين وكم نسخة مثبّتة (هل هناك تعارض؟).
3
إن وُجِد الملف الثنائي لكن لم يُعثَر عليه، أضِف ~/.local/bin إلى PATH وأعد تشغيل الطرفية.
4
إن تعارضت النسخ، احذف النسخ الزائدة (npm/Homebrew/WinGet) وأبقِ على نسخة أصلية واحدة.
5
ما زال يفشل؟ أعد التثبيت عبر المثبّت الأصلي (يتجاوز الصلاحيات/Node/التعارض).

القاعدة: «هل الملف الثنائي موجود → هل هو في PATH → هل هناك تعارض؟» بهذا الترتيب.
عند التعثّر، تكون إعادة التثبيت الأصلي هي الملاذ الأخير الموثوق.

الخلاصة

إن الخطأ «command not found: claude» في Claude Code يكون في معظم الحالات مجرّد «أن مجلد التثبيت (~/.local/bin) غير مُدرَج في PATH». الملف الثنائي موجود، لذا أضِف سطرًا واحدًا إلى PATH وأعد تشغيل الطرفية فيعمل. للتثبيت، المثبّت الأصلي هو المُوصى به (تتطلب نسخة npm وجود Node 18+ ولها مزالق أكثر في الصلاحيات/PATH). أما خطأ EACCES في npm فينبغي إصلاحه بالانتقال إلى الأصلي، لا باستخدام sudo.

شخّص عبر (1) claude doctor -> (2) which -a claude / where.exe claude للتحقق من التعارض -> (3) إضافة ~/.local/bin إلى PATH -> (4) حذف النسخ الزائدة -> (5) إعادة التثبيت الأصلي. في Windows، انتبه إلى الخلط بين الطرفيات (مثل irm في CMD)، وضرورة إعادة تشغيل الطرفية، وتعارض Claude Desktop القديم مع Claude.exe. حدّث عبر claude update / claude install، وأوقِف التحديث التلقائي بـ DISABLE_AUTOUPDATER. عند التعثّر، تكون إعادة التثبيت الأصلي هي الحل الموثوق. ذو صلة: مجموعة أخطاء Claude Code، أخطاء المصادقة / تسجيل الدخول.

الأسئلة الشائعة

Q. ثبّتُّه، لكن تظهر لي command not found: claude.
A. على الأرجح أن مجلد التثبيت غير مُدرَج في PATH لديك. تحقّق أولًا من وجود الملف الثنائي عبر ls ~/.local/bin/claude (في Windows: %USERPROFILE%\.local\bin)؛ فإن كان موجودًا، أضِف export PATH="$HOME/.local/bin:$PATH" إلى ~/.zshrc/~/.bashrc ثم افتح طرفية جديدة. غالبًا ما يكون التثبيت نفسه قد نجح.

Q. npm install -g يفشل بخطأ صلاحيات (EACCES).
A. لا تستخدم sudo npm (غير موصى به رسميًا؛ فهو يستجلب مشاكل الصلاحيات والأمان). أسرع مسار وأكثره أمانًا هو الانتقال إلى المثبّت الأصلي (في mac/Linux: curl -fsSL https://claude.ai/install.sh | bash). النسخة الأصلية خالية من مزالق الصلاحيات ولا تحتاج إلى Node. يمكنك أيضًا نقل البادئة العامة لـ npm إلى مجلد قابل للكتابة من المستخدم، لكن التوصية الرسمية هي الأصلي.

Q. لديّ عمليات تثبيت متعددة لـ claude وتعمل نسخة قديمة.
A. شغّل which -a claude (في Windows: where.exe claude) لرؤية كل نسخ claude على PATH. قد يكون لديك خليط من npm-global وHomebrew وWinGet والأصلي. أبقِ على النسخة الأصلية (~/.local/bin) واحذف البقية (مثل npm uninstall -g @anthropic-ai/claude-code) للوصول إلى نسخة تثبيت واحدة.

Q. في Windows، كتابة claude تفتح تطبيق سطح المكتب.
A. سجّل Claude Desktop قديم المسارَ WindowsApps\Claude.exe، وهو يأخذ أولوية في PATH على واجهة سطر الأوامر. حدّث Claude Desktop لحلّ المشكلة. كذلك، إن لم يُعثَر عليه أو ظهر إصدار قديم بعد تشغيل مثبّت PowerShell، أعد تشغيل الطرفية ليسري تغيير PATH.

Q. التحديثات لا تعمل / أريد إيقافها.
A. تُحدَّث عمليات التثبيت الأصلية تلقائيًا في الخلفية ويسري ذلك عند التشغيل التالي. يدويًا، استخدم claude update؛ ولإعادة التثبيت/التثبيت على إصدار، claude install <version>. إن فشل التحديث التلقائي في تثبيت npm عام، فهي مشكلة صلاحيات كتابة — اتّبع claude doctor وانتقل إلى الأصلي. لإيقاف التحديث التلقائي، اضبط DISABLE_AUTOUPDATER في env ضمن الإعدادات؛ ولحظر جميع التحديثات، اضبط DISABLE_UPDATES.