מדריך קלוד קוד בעברית

תיעוד 58

פתרון בעיות התקנה והתחברות

תקן שגיאות command not found, PATH, הרשאות, רשת ואימות כשמתקינים או מתחברים ל-Claude Code.

אם ההתקנה נכשלת או שאי אפשר להתחבר, מצא את השגיאה שלך למטה. לבעיות בזמן ריצה אחרי ש-Claude Code עובד, ראה פתרון בעיות. לבעיות הגדרה כמו הגדרות שלא חלות או hooks שלא מופעלים, ראה ניפוי באגים בהגדרות.

#מצא את השגיאה שלך

התאם את הודעת השגיאה או התסמין שאתה רואה לתיקון:

מה אתה רואהפתרון
command not found: claude או 'claude' is not recognizedתקן את ה-PATH
Native installation exists but ... is not in your PATHהוסף את תיקיית ההתקנה ל-PATH
INFO: Could not find files for the given pattern(s). מ-where.exe claudeבדוק אם Claude Code מותקן
zsh: permission denied: /Users/you/.zshrc או bash: /home/you/.bashrc: Permission deniedהפוך את קובץ הגדרות המעטפת לניתן לכתיבה
syntax error near unexpected token '<'סקריפט ההתקנה מחזיר HTML
< was unexpected at this time ב-CMDסקריפט ההתקנה מחזיר HTML
The term 'System.Xml.XmlDocument' is not recognizedסקריפט ההתקנה מחזיר HTML
curl: (22) The requested URL returned error: 403סקריפט ההתקנה החזיר 403
curl: (23) או curl: (56) Failure writing output to destinationבדוק קישוריות או השתמש במתקין חלופי
Killed במהלך התקנה ב-Linuxפנה זיכרון או הוסף שטח swap
Installation was killed before it could finishפנה זיכרון, ואז הרץ שוב את המתקין
Raw mode is not supported במהלך התקנההרץ שוב את המתקין
EACCES: permission denied במהלך התקנהתקן את הרשאות תיקיית ההתקנה
TLS connect error או SSL/TLS secure channelעדכן תעודות CA
CRYPT_E_NO_REVOCATION_CHECK או CRYPT_E_REVOCATION_OFFLINEעקוף בדיקות revocation שנחסמו
Failed to fetch version או שאי אפשר להגיע לשרת ההורדהבדוק הגדרות רשת ו-proxy
The connection dropped while downloading the update או Download timed out: exceeded the total deadlineהרץ את העדכון שוב או הגדר את ה-proxy
Release verification failed for Claude Codeהרץ שוב את claude update או claude install
Auto-update failed · Run claude doctor באדום בתחתית הסשןהרץ claude update מהמעטפת שלך
irm is not recognized או The token '&&' is not a valid statement separatorהשתמש בפקודה הנכונה למעטפת שלך
Cask 'claude-code' is unavailable: No Cask with this name existsעדכן את Homebrew
Cask 'claude-code@latest' is not installedשדרג את ה-cask שהתקנת
'bash' is not recognized as the name of a cmdletהשתמש בפקודת המתקין של Windows
A parameter cannot be found that matches parameter name 'fsSL'השתמש בפקודת המתקין של Windows
Claude Code on Windows requires either Git for Windows (for bash) or PowerShellהתקן מעטפת
Claude Code does not support 32-bit Windowsפתח את Windows PowerShell, לא את פריט ה-x86
The process cannot access the file ... because it is being used by another processנקה את תיקיית ההורדות ונסה שוב
Error loading shared libraryגרסת בינארי שגויה למערכת שלך
Illegal instructionאי התאמה של ארכיטקטורה או של סט הוראות המעבד
cannot execute binary file: Exec format error ב-WSLרגרסיה של בינארי נייטיב ב-WSL1
Bus error או oh no: Bun has crashed בזמן שסשן רץהשאר את קובץ ההרצה קריא
מתקין PowerShell מסתיים אבל claude לא נמצא או מציג גרסה ישנההוסף את תיקיית ההתקנה ל-PATH, ואז פתח מסוף חדש
dyld: Symbol not found, dyld: cannot load, או Abort trap ב-macOSאי תאימות בינארית
claude update נתקע אחרי Checking for updates, או claude doctor נתקע בלי פלטהעבר את התיקייה שנמצאת בנתיב הגדרות המעטפת
שגיאות ניתוח של Invoke-Expression או iex שמצטטות תגי HTML או CSS, או ParserError עם ParseExceptionסקריפט ההתקנה מחזיר HTML
running scripts is disabled on this system או PSSecurityExceptionאפשר ל-shims של npm לרוץ
Error: claude native binary not installedהשלם את התקנת npm
npm error code ENOTEMPTY במהלך עדכון או התקנה מחדשהסר את תיקיית החבילה שנותרה
'claude' is not recognized מיד אחרי עדכון ב-Windowsשחזר את claude.exe מהגיבוי שלו
ב-Windows, פקודת ההתקנה מדפיסה טקסט של סקריפט ושום דבר לא מותקןהרץ את פקודת ההתקנה המלאה
App unavailable in regionClaude Code לא זמין במדינה שלך. ראה מדינות נתמכות.
unable to get local issuer certificateהגדר תעודות CA ארגוניות
OAuth error או 403 Forbiddenתקן אימות
Claude Code access has not been granted for this accountקבל תפקיד שכולל את Claude Code
Unable to connect to Anthropic services במהלך ההגדרהראה Unable to connect to Anthropic services ב-Error reference
Could not load the default credentials או Could not load credentials from any providersאישורים של Amazon Bedrock, Google Cloud's Agent Platform, או Microsoft Foundry
ChainedTokenCredential authentication failed או CredentialUnavailableErrorאישורים של Amazon Bedrock, Google Cloud's Agent Platform, או Microsoft Foundry
API Error: 500, 529 Overloaded, 429, או שגיאות 4xx ו-5xx אחרות שלא מופיעות למעלהראה את Error reference

אם הבעיה שלך לא ברשימה, עבור על בדיקות האבחון למטה כדי לצמצם את הסיבה.

[!TIP]

אם אתה מעדיף לדלג לגמרי על הטרמינל, אפליקציית שולחן העבודה של Claude Code מאפשרת להתקין ולהשתמש ב-Claude Code דרך ממשק גרפי. הורד אותה ל-macOS או ל-Windows והתחל לכתוב קוד בלי שום הגדרה של שורת פקודה. ב-Linux, התקן את האפליקציה עם apt לפי הוראות ההתקנה ל-Linux.

#הרצת בדיקות אבחון

#בדיקת קישוריות הרשת

המתקין מוריד מ-downloads.claude.ai. ודאו שאפשר להגיע אליו:

macOS/Linux

curl -sI https://downloads.claude.ai/claude-code-releases/latest

Windows PowerShell

curl.exe -sI https://downloads.claude.ai/claude-code-releases/latest

PowerShell ממפה את curl ל-Invoke-WebRequest, שדוחה את הדגלים -sI, לכן קראו במפורש ל-curl.exe.

הגעתם לשרת אם השורה הראשונה מציגה סטטוס 200. ב-macOS וב-Linux רואים HTTP/2 200, ומ-curl.exe שכלול ב-Windows רואים HTTP/1.1 200 OK. תוצאות אחרות מצביעות על הסיבה:

  • 403: בדרך כלל פרוקסי או מסנן רשת שחוסם את המארח, או ש-Claude Code לא זמין באזור שלכם
  • 5xx: בדרך כלל תקלה זמנית בשירות. המתינו כמה דקות ונסו שוב

אם אין פלט, מופיע Could not resolve host, או שיש timeout של החיבור, הרשת שלכם חוסמת את החיבור. סיבות נפוצות:

  • חומות אש או פרוקסי ארגוניים שחוסמים את downloads.claude.ai
  • הגבלות רשת אזוריות: נסו VPN או רשת חלופית
  • בעיות TLS/SSL: עדכנו את אישורי ה-CA של המערכת, או בדקו אם HTTPS_PROXY מוגדר

אם אתם מאחורי פרוקסי ארגוני, הגדירו את HTTPS_PROXY ואת HTTP_PROXY לכתובת הפרוקסי לפני ההתקנה. בקשו מצוות ה-IT את כתובת ה-URL של הפרוקסי אם אינכם יודעים אותה, או בדקו את הגדרות הפרוקסי בדפדפן.

הדוגמה הזו מגדירה את שני משתני הפרוקסי, ואז מריצה את המתקין דרך הפרוקסי:

macOS/Linux

export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=http://proxy.example.com:8080
curl -fsSL https://claude.ai/install.sh | bash

Windows PowerShell

$env:HTTP_PROXY = 'http://proxy.example.com:8080'
$env:HTTPS_PROXY = 'http://proxy.example.com:8080'
irm https://claude.ai/install.ps1 | iex

#אימות ה-PATH

אם ההתקנה הצליחה אבל מתקבלת שגיאת command not found או not recognized בהרצת claude, תיקיית ההתקנה לא נמצאת ב-PATH. המעטפת מחפשת תוכניות בתיקיות שרשומות ב-PATH, והמתקין ממקם את claude ב-~/.local/bin/claude ב-macOS/Linux או ב-%USERPROFILE%\.local\bin\claude.exe ב-Windows.

המתקין מזהה את המקרה הזה ומדווח עליו תחת Setup notes: בפלט שלו: Native installation exists but ~/.local/bin is not in your PATH. ב-macOS וב-Linux, או Native installation exists but C:\Users\you\.local\bin is not in your PATH. ב-Windows. הוא מדפיס את התיקון יחד עם ההערה הזו אבל לא משנה את PATH בעצמו.

[!NOTE]

תוסף VS Code לא ממקם את claude במיקום הזה. הוא כולל עותק פרטי של ה-CLI בתוך תיקיית התוסף עבור חלונית הצ'אט שלו, ולא מוסיף אותו ל-PATH. אם התקנתם רק את התוסף, ~/.local/bin/claude לא יהיה קיים. הריצו את ההתקנה העצמאית כדי להשתמש ב-claude מטרמינל, ואז המשיכו למטה.

קודם בדקו שהתוכנית נמצאת בכלל, ואז בדקו אם התיקייה שלה נמצאת ב-PATH. תיקון ה-PATH הוא קבוע, ולכן מיישמים אותו פעם אחת. בחרו את הלשונית של הפלטפורמה שלכם והריצו שם את הפקודות: בטרמינל ב-macOS וב-Linux, או ב-PowerShell או ב-Command Prompt ב-Windows.

macOS/Linux

בדקו שהמתקין מיקם את התוכנית במקום:

ls -la ~/.local/bin/claude
  • No such file or directory: אין התקנה מקורית. אם לא התקנתם את Claude Code בדרך אחרת, כגון npm, Homebrew או מנהל חבילות של Linux, התקינו את Claude Code. אם התקנתם בדרך אחרת, ראו בדיקה של התקנות מתנגשות.
  • רישום של הקובץ: התוכנית נמצאת. בדקו את ה-PATH בהמשך.

הציגו את רשומות ה-PATH וסננו לפי תיקיית ההתקנה:

echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin"

אם זה מדפיס /Users/you/.local/bin או /home/you/.local/bin, התיקייה נמצאת ב-PATH ואפשר לדלג אל בדיקה של התקנות מתנגשות. אם אין פלט, הוסיפו אותה להגדרות המעטפת בשתי הפקודות של המעטפת שלכם. הפקודה echo שומרת את ההגדרה לכל טרמינל חדש, ו-source מחיל אותה על החלון שבו אתם נמצאים. הפקודה echo לא מדפיסה כלום כשהיא מצליחה.

עבור Zsh, ברירת המחדל ב-macOS:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

עבור Bash ב-Linux, שם זו ברירת המחדל ברוב ההפצות:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

עבור Bash ב-macOS, הוסיפו את השורה ל-~/.bash_profile במקום זאת. הטרמינל ב-macOS מפעיל את Bash כמעטפת login, שמתעלמת מ-~/.bashrc וקוראת רק את הראשון מבין ~/.bash_profile, ~/.bash_login או ~/.profile שקיים. אם כבר יש לכם ~/.bash_login או ~/.profile ואין ~/.bash_profile, שימו את השורה בקובץ הזה במקום ליצור ~/.bash_profile:

echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile

לחלופין, סגרו ופתחו מחדש את הטרמינל.

אם הפקודה echo מדפיסה permission denied, ראו permission denied בהוספה ל-PATH.

עבור מעטפות אחרות כגון fish או Nushell, הוסיפו את ~/.local/bin ל-PATH בתחביר ההגדרות של המעטפת עצמה, ואז הפעילו מחדש את הטרמינל.

ודאו שהתיקון עבד:

claude --version

אם claude עדיין לא נמצא, בדקו את הסיבות האלה:

  • הטרמינל קודם לשינוי: חלון שכבר היה פתוח שומר את ה-PATH הישן שלו, וטרמינל בתוך עורך לוקח את ה-PATH מהעורך. פתחו חלון חדש, או צאו מהעורך ופתחו אותו מחדש.
  • השורה לא נשמרה: הריצו grep -n '.local/bin' ~/.zshrc, עם שם הקובץ של המעטפת שלכם. זה מדפיס את השורה עם מספר השורה שלה כשהשורה נמצאת. אם זה לא מדפיס כלום, הריצו שוב את שתי פקודות ה-PATH.
  • השורה הגיעה לקובץ של מעטפת אחרת: הריצו echo $0 כדי לראות את המעטפת, ואז הריצו את שתי פקודות ה-PATH של המעטפת הזו.

Windows PowerShell

בדקו שהמתקין מיקם את התוכנית במקום:

Test-Path "$env:USERPROFILE\.local\bin\claude.exe"

הציגו את רשומות ה-PATH וסננו לפי תיקיית ההתקנה:

$env:PATH -split ';' | Select-String '\.local\\bin'

אם זה מדפיס C:\Users\you\.local\bin, התיקייה נמצאת ב-PATH ואפשר לדלג אל בדיקה של התקנות מתנגשות. אם אין פלט, הוסיפו את תיקיית ההתקנה ל-User PATH:

$currentPath = [Environment]::GetEnvironmentVariable('PATH', 'User')
[Environment]::SetEnvironmentVariable('PATH', "$currentPath;$env:USERPROFILE\.local\bin", 'User')

הפעילו מחדש את הטרמינל כדי שהשינוי ייכנס לתוקף.

ודאו שהתיקון עבד:

claude --version

אם claude עדיין לא נמצא בטרמינל חדש, בדקו את הסיבות האלה:

  • הטרמינל רץ בתוך עורך: הוא לוקח את ה-PATH מהעורך, לכן צאו מהעורך ופתחו אותו מחדש.
  • השינוי לא נשמר: הריצו [Environment]::GetEnvironmentVariable('PATH', 'User') וחפשו .local\bin ב-PATH שהוא מדפיס. אם הוא חסר, הריצו שוב את שתי הפקודות.

Windows CMD

בדקו שהמתקין מיקם את התוכנית במקום:

dir "%USERPROFILE%\.local\bin\claude.exe"
  • File Not Found או The system cannot find the path specified.: אין התקנה מקורית. אם לא התקנתם את Claude Code בדרך אחרת, כגון npm או WinGet, התקינו את Claude Code. אם התקנתם בדרך אחרת, ראו בדיקה של התקנות מתנגשות.
  • רישום של claude.exe: התוכנית נמצאת. בדקו את ה-PATH בהמשך.

הציגו את רשומות ה-PATH וסננו לפי תיקיית ההתקנה:

echo %PATH% | findstr /i "local\bin"

אם אין פלט, פתחו את System Settings, עברו אל Environment Variables, והוסיפו את %USERPROFILE%\.local\bin למשתנה User PATH. הפעילו מחדש את הטרמינל.

ודאו שהתיקון עבד:

claude --version

אם claude עדיין לא נמצא בטרמינל חדש, טרמינל בתוך עורך לוקח את ה-PATH מהעורך, לכן צאו מהעורך ופתחו אותו מחדש גם כן.

#בדיקה של התקנות מתנגשות

כמה התקנות של Claude Code יכולות לגרום לאי התאמה בין גרסאות או להתנהגות לא צפויה. בדקו מה מותקן:

macOS/Linux

הציגו את כל קובצי ההרצה claude שנמצאו ב-PATH:

which -a claude

אם זה מדפיס claude not found, שורה no claude in, או כלום, אין claude ב-PATH. הבדיקות הבאות מראות אם בכלל מותקן אחד.

בדקו את שלושת המיקומים שמהם יכול להגיע קובץ הרצה claude. ~/.local/bin/claude הוא המתקין המקורי, ~/.claude/local/ הוא התקנת npm מקומית ישנה שנוצרה על ידי גרסאות ישנות יותר של Claude Code, ורשימת npm הגלובלית מציגה התקנת -g:

ls -la ~/.local/bin/claude

התקנה מקורית מציגה symlink אל תוך ~/.local/share/claude/versions/. סקריפט או symlink שיצרתם בעצמכם בנתיב הזה הוא משגר מותאם אישית, שהעדכון האוטומטי משאיר במקום.

אם אחת מפקודות ls מדפיסה No such file or directory, זו לא שגיאה. זה אומר ששום דבר לא מותקן במיקום הזה, לכן עברו לבדיקה הבאה.

ls -la ~/.claude/local/
npm -g ls @anthropic-ai/claude-code 2>/dev/null

אם ls -la ~/.local/bin/claude הדפיס No such file or directory, אין התקנה מקורית. אם לא התקנתם את Claude Code בדרך אחרת, כגון npm, Homebrew או מנהל חבילות של Linux, התקינו את Claude Code. אם ~/.local/bin/claude קיים אבל which -a claude לא רשם אותו, התיקייה לא נמצאת ב-PATH: ראו אימות ה-PATH.

Windows PowerShell

הציגו את כל קובצי ההרצה claude שנמצאו ב-PATH:

where.exe claude

אם זה מדפיס INFO: Could not find files for the given pattern(s)., אין claude ב-PATH.

בדקו אם המתקין המקורי מיקם קובץ הרצה:

Test-Path "$env:USERPROFILE\.local\bin\claude.exe"
  • True: ההתקנה המקורית נמצאת. אם where.exe לא מצא כלום, התיקייה שלו לא נמצאת ב-PATH: ראו אימות ה-PATH.
  • False: אין התקנה מקורית. אם לא התקנתם את Claude Code בדרך אחרת, כגון npm או WinGet, התקינו את Claude Code.

אם מצאתם כמה התקנות, השאירו רק אחת. מומלצת ההתקנה המקורית ב-~/.local/bin/claude ב-macOS/Linux או ב-%USERPROFILE%\.local\bin\claude.exe ב-Windows. הסירו את הנוספות:

הסרת התקנת npm גלובלית:

npm uninstall -g @anthropic-ai/claude-code

הסרת התקנת npm מקומית ישנה:

macOS/Linux

rm -rf ~/.claude/local

Windows PowerShell

Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\local"

הסרת התקנת Homebrew ב-macOS. אם התקנתם את ה-cask claude-code@latest, החליפו בשם הזה:

brew uninstall --cask claude-code

הסרת התקנת WinGet ב-Windows:

winget uninstall Anthropic.ClaudeCode

#בדיקת הרשאות תיקייה

התקנה שנכשלת בגלל הרשאות מציינת את הנתיב שלא הצליחה ליצור או לכתוב אליו. ב-Windows ההתקנה כותבת תחת %USERPROFILE%, שניתן לכתיבה על ידי המשתמש שלכם כברירת מחדל, ולכן הסעיף הזה חל שם לעיתים רחוקות.

ב-macOS וב-Linux ההתקנה כותבת למיקומים האלה:

  • ~/.claude/downloads/: המקום שבו פקודת ההתקנה שמה את הקובץ הבינארי שהורד
  • ~/.local/bin/: משגר claude
  • ~/.local/share/claude/: כל גרסה שהיא מורידה
  • ~/.local/state/claude/: קובצי הנעילה שלה
  • ~/.cache/claude/: הורדות בשלבי הכנה
  • ~/.claude.json: קובץ ההגדרות הגלובלי, שבו המתקין רושם את שיטת ההתקנה

אם הגדרתם XDG_DATA_HOME, XDG_STATE_HOME או XDG_CACHE_HOME, ההתקנה משתמשת בהם במקום ~/.local/share, ~/.local/state ו-~/.cache. אם הגדרתם CLAUDE_CONFIG_DIR, קובץ ההגדרות הגלובלי נמצא תחת התיקייה הזו במקום בתיקיית הבית.

בדקו אם התיקיות ניתנות לכתיבה:

test -w ~/.local/bin && echo "writable" || echo "not writable"
test -w ~/.claude && echo "writable" || echo "not writable"

אם אחת מהתיקיות לא ניתנת לכתיבה, צרו את תיקיית ההתקנה והגדירו את המשתמש שלכם כבעלים:

sudo mkdir -p ~/.local/bin
sudo chown -R $(whoami) ~/.local

#אימות שהקובץ הבינארי עובד

אם claude --version מדפיס גרסה אבל claude קורס או נתקע בהפעלה, הריצו את הבדיקות האלה כדי לצמצם את הסיבה. אם claude --version אומר command not found, עברו קודם אל אימות ה-PATH. הפקודות למטה מניחות ש-claude נמצא ב-PATH.

אשרו שהקובץ הבינארי קיים וניתן להרצה:

macOS/Linux

ls -la "$(command -v claude)"

Windows PowerShell

Get-Command claude | Select-Object Source

ב-Linux, בדקו ספריות משותפות חסרות. אם ldd מציג ספריות חסרות, ייתכן שתצטרכו להתקין חבילות מערכת. ב-Alpine Linux ובהפצות אחרות מבוססות musl, ראו הגדרת Alpine Linux.

ldd "$(command -v claude)" | grep "not found"

אשרו שהקובץ הבינארי יכול לרוץ:

claude --version

#בעיות התקנה נפוצות

אלה בעיות ההתקנה שנתקלים בהן בתדירות הגבוהה ביותר והפתרונות שלהן.

#סקריפט ההתקנה מחזיר HTML במקום סקריפט מעטפת

פקודת ההתקנה נכשלת עם אחת מהשגיאות האלה כשהקובץ שהורד אינו סקריפט ההתקנה.

Bash או Zsh: השגיאה מצטטת את השורה הראשונה של הדף שהוחזר.

bash: line 1: syntax error near unexpected token `<'
bash: line 1: `<!DOCTYPE html>'

PowerShell, שגיאות פענוח: השגיאות מצביעות לתוך הדף שהוחזר, כש-iex מנסה להריץ HTML ו-CSS כ-PowerShell.

iex : At line:1 char:2310
+ ... igin="anonymous"/><script type="text/javascript">!function(o,c){var n ...
Missing argument in parameter list.
...

הניסוח משתנה לפי גרסת PowerShell ושפת המערכת: ייתכן שתראו Missing expression after unary operator '--' או ParserError עם ParseException במקום זאת. תגי HTML או CSS בטקסט המצוטט מזהים את הכשל הזה. אם מורידים עם -OutFile install.ps1 במקום זאת, הקובץ שנשמר הוא אותו דף אינטרנט, ולכן גם זה לא עוזר.

PowerShell, System.Xml.XmlDocument: השגיאה מציינת את הטיפוס הזה במקום לצטט את הדף.

System.Xml.XmlDocument : The term 'System.Xml.XmlDocument' is not recognized as the name of a cmdlet, function, script
file, or operable program.

כש-irm יכול לפרש את התגובה כ-XML, הוא מחזיר אובייקט XML במקום טקסט, ואז iex מנסה להריץ את שם הטיפוס של האובייקט הזה כפקודה. סקריפט ההתקנה הוא קוד PowerShell ואינו מפורש כ-XML, ולכן גם השגיאה הזו אומרת שהתגובה הייתה משהו שאינו הסקריפט. הניסוח סביב שם הטיפוס משתנה לפי גרסת PowerShell ושפת המערכת, אבל System.Xml.XmlDocument עצמו נשאר זהה, ולכן התאימו לפי שם הטיפוס.

CMD: רואים את השגיאה הזו, ואחריה את ה-HTML של הדף שהוחזר.

< was unexpected at this time.

C:\Users\you><!DOCTYPE html>...

השורה הראשונה מופיעה בשפת המערכת, ולכן חפשו את ה-HTML שאחריה.

403 בלי דף: לפי אופן ניתוב הבקשה, curl מדווח על סטטוס 403 בלי גוף HTML.

curl: (22) The requested URL returned error: 403

כל אלה אומרים שכתובת ההתקנה החזירה דף אינטרנט, מסמך XML או סטטוס שגיאה במקום סקריפט ההתקנה. אם פלט השגיאה מצטט "App unavailable in region", Claude Code אינו זמין במדינה שלכם. ראו מדינות נתמכות.

403 בלי גוף נובע לעתים קרובות מאותה סיבה, אבל הוא יכול להגיע גם מפרוקסי ארגוני או מחומת אש שחוסמים את ההורדה. אם אתם במדינה נתמכת ועדיין רואים את ה-403, עברו על בדיקת קישוריות רשת לפני שמנסים את המתקינים החלופיים למטה, כי הם מגיעים לאותם מארחים.

אחרת, זה יכול לקרות בגלל בעיות רשת, ניתוב אזורי או שיבוש זמני בשירות.

פתרונות:

  1. נסו שוב אחרי כמה דקות: הבעיה לעתים קרובות זמנית. המתינו ונסו שוב את הפקודה המקורית.

  2. השתמשו בשיטת התקנה חלופית: בניגוד להתקנה מובנית, התקנת Homebrew או WinGet אינה מתעדכנת מעצמה כברירת מחדל.

    ב-macOS, התקינו דרך Homebrew:

    brew install --cask claude-code

    ב-Windows, התקינו דרך WinGet:

    winget install Anthropic.ClaudeCode

    אחר כך הריצו claude --version כדי לאשר: הפקודה מדפיסה מספר גרסה כמו 2.1.211 (Claude Code). אם המעטפת מדווחת ש-claude לא נמצא, פתחו חלון טרמינל חדש ונסו שוב: ההפעלה שממנה התקנתם שומרת את ה-PATH הישן שלה.

#command not found: claude אחרי ההתקנה

ההתקנה הסתיימה אבל claude לא עובד. השגיאה המדויקת משתנה לפי הפלטפורמה:

פלטפורמההודעת שגיאה
macOSzsh: command not found: claude
Linuxbash: claude: command not found
Windows CMD'claude' is not recognized as an internal or external command
PowerShellclaude : The term 'claude' is not recognized as the name of a cmdlet

ב-Windows, אם השגיאה התחילה מיד אחרי ש-Claude Code התעדכן, ראו שחזור claude.exe מהגיבוי שלו.

אחרת, ראו אימות ה-PATH לתיקון בכל פלטפורמה.

#permission denied כשמוסיפים ל-PATH

אם פקודת echo שמוסיפה את ~/.local/bin ל-PATH מדפיסה zsh: permission denied: /Users/you/.zshrc או bash: /home/you/.bashrc: Permission denied, המשתמש שלכם לא יכול לכתוב לקובץ הזה ושום דבר לא נשמר. בטרמינל, בדקו מי הבעלים של הקובץ, והשתמשו בשם הקובץ של המעטפת שלכם במקום ~/.zshrc:

ls -l ~/.zshrc

השדה השלישי בפלט הוא הבעלים.

  • הבעלים הוא משתמש אחר, כמו root: קחו בעלות עם sudo chown $(whoami) ~/.zshrc, וזה דורש הרשאות מנהל.
  • הבעלים הוא אתם: הקובץ לקריאה בלבד. הפכו אותו לניתן לכתיבה עם chmod u+w ~/.zshrc.

אחר כך הריצו שוב את שתי פקודות ה-PATH של המעטפת שלכם ב-אימות ה-PATH.

#curl: (56) Failure writing output to destination

הפקודה curl ... | bash מורידה את הסקריפט ומזרימה אותו ל-Bash להרצה. השגיאה הזו, וגם curl: (23) Failure writing output to destination הקשורה אליה, אומרות ש-Bash לא קיבל את הסקריפט המלא. קוד יציאה 56 מציין שההורדה עצמה נקטעה, וקוד יציאה 23 מציין ש-curl לא הצליח לכתוב את מה שקיבל אל הצינור, בדרך כלל כי Bash יצא מוקדם.

בדקו שאפשר להגיע אל downloads.claude.ai עם הבדיקה ב-בדיקת קישוריות רשת. אם הגעתם לשרת, הכשל המקורי כנראה היה לסירוגין. נסו שוב את פקודת ההתקנה. אפשר גם לנסות שיטת התקנה חלופית.

#cask של Homebrew לא זמין או מיושן

Homebrew מדווח Error: Cask 'claude-code' is unavailable: No Cask with this name exists כשהעותק המקומי של אינדקס ה-cask של Homebrew קודם לפרסום ה-cask. רעננו את האינדקס ונסו שוב:

brew update
brew install --cask claude-code

אם Homebrew מתקין גרסת Claude Code ישנה יותר ממה שציפיתם, בדרך כלל אותו אינדקס מיושן הוא הסיבה. ה-cask claude-code עוקב אחרי ערוץ היציב ובדרך כלל בערך שבוע מאחורי המהדורה האחרונה. לגרסה החדשה ביותר הריצו במקום זאת brew install --cask claude-code@latest. ראו הגדרת ערוץ מהדורה להבדל בין שני ה-cask.

#Cask 'claude-code@latest' is not installed

Homebrew מציע שני cask: claude-code ו-claude-code@latest. הרצת brew upgrade --cask claude-code@latest כשה-cask הזה אינו זה שמותקן מדפיסה Error: Cask 'claude-code@latest' is not installed. כדי לראות איזה cask יש לכם, הריצו זאת בטרמינל:

brew list --cask | grep claude-code

שדרגו את ה-cask שהוא מדפיס. אם הוא לא מדפיס כלום, אף cask לא מותקן.

#שגיאות חיבור TLS או SSL

שגיאות כמו אלה אומרות שלחיצת היד של TLS נכשלה:

  • curl: (35) TLS connect error
  • schannel: next InitializeSecurityContext failed
  • Could not create SSL/TLS secure channel של PowerShell
  • Could not establish trust relationship for the SSL/TLS secure channel של PowerShell

עבור CRYPT_E_NO_REVOCATION_CHECK או CRYPT_E_REVOCATION_OFFLINE, עברו לשלב 4.

פתרונות:

  1. עדכנו את אישורי ה-CA של המערכת:

    ב-Ubuntu/Debian:

    sudo apt-get update && sudo apt-get install ca-certificates

    ב-macOS, ה-curl של המערכת משתמש במאגר האמון של Keychain. עדכון macOS עצמו מעדכן את אישורי השורש.

  2. ב-Windows PowerShell 5.1, הפעילו TLS 1.2:

    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

    אחר כך הריצו את המתקין באותו חלון:

    irm https://claude.ai/install.ps1 | iex
  3. בדקו הפרעה של פרוקסי או חומת אש: פרוקסי ארגוניים שמבצעים בדיקת TLS יכולים לגרום לשגיאות האלה, כולל unable to get local issuer certificate ו-SELF_SIGNED_CERT_IN_CHAIN. בשלב ההתקנה, גרמו להורדת ההתקנה לבטוח ב-CA של הפרוקסי הארגוני:

    macOS/Linux

    curl --cacert /path/to/corporate-ca.pem -fsSL https://claude.ai/install.sh | bash

    Windows PowerShell

    מתקין PowerShell מוריד דרך .NET, שמאמת TLS מול מאגר האישורים של Windows. בקשו מצוות ה-IT להוסיף את אישור ה-CA של הפרוקסי למאגר של Windows אם הוא עדיין לא שם, ואז הריצו את המתקין:

    irm https://claude.ai/install.ps1 | iex

    עבור Claude Code עצמו אחרי ההתקנה, הגדירו NODE_EXTRA_CA_CERTS כדי שבקשות API יבטחו באותה חבילה:

    macOS/Linux

    export NODE_EXTRA_CA_CERTS=/path/to/corporate-ca.pem

    Windows PowerShell

    $env:NODE_EXTRA_CA_CERTS = 'C:\path\to\corporate-ca.pem'

    בקשו מצוות ה-IT את קובץ האישור אם אין לכם אותו. אפשר גם לנסות בחיבור ישיר כדי לאשר שהפרוקסי הוא הסיבה.

  4. ב-Windows, עקפו בדיקות ביטול חסומות. השגיאות CRYPT_E_NO_REVOCATION_CHECK (0x80092012) ו-CRYPT_E_REVOCATION_OFFLINE (0x80092013) אומרות ש-curl הגיע לשרת אבל הרשת שלכם חוסמת את בדיקת ביטול האישור, דבר נפוץ מאחורי חומות אש ארגוניות. אם הפקודה שנכשלת היא ה-curl שמוריד את install.cmd, הריצו אותה שוב מ-Command Prompt עם --ssl-revoke-best-effort:

    curl --ssl-revoke-best-effort -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

    כשההורדות של הסקריפט עצמו נתקלות באותן שגיאות, הוא מנסה אותן שוב אוטומטית עם בדיקת ביטול במאמץ מיטבי, ולכן הדגל נדרש רק בפקודה שאתם מריצים בעצמכם. בדיקה במאמץ מיטבי סובלת שרת ביטול שאינו ניתן להשגה, אבל עדיין דוחה אישור שידוע כמבוטל, בהתאם לאופן שבו דפדפנים מטפלים בביטול. אפשר גם להימנע לגמרי מבדיקת הביטול של curl על ידי הרצת מתקין PowerShell מ-PowerShell, שמוריד דרך .NET ואינו נכשל כששרת הביטול אינו ניתן להשגה:

    irm https://claude.ai/install.ps1 | iex

    אפשר גם להתקין עם winget install Anthropic.ClaudeCode, שעוקף את curl לגמרי.

#Failed to fetch version from downloads.claude.ai

המתקין לא הצליח להגיע לשרת ההורדה. בדרך כלל זה אומר ש-downloads.claude.ai חסום ברשת שלכם. ראו בדיקת קישוריות רשת.

#החיבור נותק בזמן הורדת העדכון

החיבור לשרת ההורדה נסגר בזמן ש-claude install או claude update הביאו את הבינארי של Claude Code, והניסיונות החוזרים לא התאוששו. Claude Code מנסה שוב את ההורדה כשהחיבור נופל, כשההעברה נתקעת, או כשהקובץ שהורד נכשל בבדיקת ה-checksum שלו, עד שלושה ניסיונות בסך הכל. שגיאת HTTP שהושלמה, כמו 404, אינה מנוסה שוב כי השרת כבר ענה. לפני v2.1.202, חיבור בודד שנפל הכשיל את ההורדה מיד עם השגיאה החשופה aborted במקום לנסות שוב.

The connection dropped while downloading the update (attempt 3/3: aborted). Check your network , proxies sometimes cut off large downloads.

הטקסט בסוגריים מציין איזה ניסיון נכשל ומה שגיאת הרשת הבסיסית. claude update מקדים את ההודעה ב-Error: Failed to install native update ב-stderr.

הורדה שנשארת מחוברת אבל לא מסתיימת תוך 10 דקות נכשלת עם Download timed out: exceeded the total deadline במקום זאת. Claude Code לא מנסה שוב הורדה שפג הזמן שלה, כי חיבור איטי מדי לסיום בתוך המועד לא יסתיים גם בניסיון מיידי חוזר. השלבים למטה חלים על שתי ההודעות.

פרוקסי או שער יכולים לסגור העברה ארוכה לפני שהיא מסתיימת, והבינארי של Claude Code הוא הורדה גדולה.

מה לעשות:

  • הריצו שוב את claude update. ברשת תקינה אחרת, ההורדה בדרך כלל מצליחה בהרצה הבאה. עבור הודעת פקיעת הזמן, הריצו שוב מרשת מהירה יותר או פחות מוגבלת.
  • אם הרשת דורשת פרוקסי, הגדירו HTTPS_PROXY לפני הרצת המתקין או claude update. ראו בדיקת קישוריות רשת.
  • אם פרוקסי ארגוני ממשיך לסגור את ההעברה, בקשו מצוות הרשת לאפשר את ההורדה המלאה מ-downloads.claude.ai. ראו דרישות גישה לרשת.
  • הריצו claude doctor מהמעטפת לאבחון התקנה

#אימות המהדורה נכשל עבור Claude Code

ההודעה הזו מ-claude update או claude install אומרת ש-Claude Code לא הצליח לאשר שהמהדורה שעמד להתקין אמיתית, ולכן לא התקין דבר. כל גרסה שכבר יש לכם ממשיכה לעבוד.

Release verification failed for Claude Code <version> (<reason>). The update was not installed.

בצעו את השלב שמתאים לערך בסוגריים בהודעה שלכם:

  • ערך שמתחיל ב-sidecar_fetch_: הריצו שוב את אותה פקודה מהמעטפת. claude update הצליח אם הוא מדפיס שורה שמתחילה ב-Successfully updated from, ו-claude install הצליח אם הוא מדפיס Claude Code successfully installed!.
  • כל ערך אחר: נסו שוב את אותה פקודה מאוחר יותר

עם כל ערך, אם ההודעה חוזרת, דווחו על הבעיה וכללו את ההודעה המלאה.

#Auto-update failed · Run claude doctor בכותרת התחתונה של ההפעלה

השורה האדומה הזו אומרת ש-Claude Code ניסה לעדכן את עצמו ברקע והעדכון לא הותקן. אפשר להמשיך לעבוד בלי לעשות דבר.

השורה מפנה אתכם אל claude doctor, ששורת Last update attempt: failed (install_failed) שלו נותנת תאריך אבל לא סיבה. כדי לסיים את העדכון או לראות למה הוא נכשל, הריצו claude update במעטפת במקום זאת. אם גם ההתקנה הזו נכשלת, חפשו את השגיאה ש-claude update מדפיס תחת מצאו את השגיאה שלכם.

#פקודת התקנה שגויה ב-Windows

אם אתם רואים 'irm' is not recognized, The token '&&' is not a valid statement separator, A parameter cannot be found that matches parameter name 'fsSL', או 'bash' is not recognized as the name of a cmdlet, העתקתם את פקודת ההתקנה של מעטפת או מערכת הפעלה אחרת. אם הפקודה מדפיסה את טקסט הסקריפט במקום להתקין משהו, הרצתם רק חלק ממנה.

  • irm לא מזוהה: אתם ב-CMD, לא ב-PowerShell. יש שתי אפשרויות:

    פתחו PowerShell על ידי חיפוש "PowerShell" בתפריט Start, ואז הריצו את פקודת ההתקנה המקורית:

    irm https://claude.ai/install.ps1 | iex

    או הישארו ב-CMD והשתמשו במתקין CMD במקום זאת:

    curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
  • && אינו מפריד משפטים תקין: אתם ב-PowerShell אבל הרצתם את פקודת מתקין CMD. השתמשו במתקין PowerShell:

    irm https://claude.ai/install.ps1 | iex
  • A parameter cannot be found that matches parameter name 'fsSL': הרצתם את מתקין curl -fsSL ... | bash של macOS/Linux ב-Windows PowerShell, שם curl הוא כינוי ל-Invoke-WebRequest ודוחה את דגלי -fsSL. השתמשו במתקין PowerShell במקום זאת:

    irm https://claude.ai/install.ps1 | iex
  • bash לא מזוהה: הרצתם את מתקין macOS/Linux ב-Windows. השתמשו במתקין PowerShell במקום זאת:

    irm https://claude.ai/install.ps1 | iex
  • הפקודה מדפיסה טקסט סקריפט במקום להתקין: הרצתם את חצי ההורדה של הפקודה בלי החלק שמריץ אותה. irm https://claude.ai/install.ps1 לבדו מדפיס את הסקריפט שהורד לטרמינל. הזרימו אותו אל iex כדי להריץ אותו:

    irm https://claude.ai/install.ps1 | iex

    ב-CMD, curl -fsSL https://claude.ai/install.cmd בלי -o מדפיס את סקריפט ה-batch במקום לשמור אותו. הריצו את הפקודה המלאה:

    curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

בכל מתקין שתשתמשו בו, אשרו שהוא עבד: פתחו טרמינל חדש והריצו claude --version, שמדפיס מספר גרסה כמו 2.1.211 (Claude Code).

#running scripts is disabled on this system

התקנה או הרצה של Claude Code דרך npm ב-Windows עלולה להיכשל עם SecurityError:

npm : File C:\Program Files\nodejs\npm.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
...
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException

אותה שגיאה מציינת את claude.ps1 כשמריצים claude אחרי התקנת npm. מדיניות ההרצה של PowerShell חוסמת את סקריפטי ההפעלה .ps1 ש-npm יוצר לפקודות שלו. המדיניות חלה על קבצי סקריפט, ולכן היא לא משפיעה על מתקין PowerShell irm https://claude.ai/install.ps1 | iex, שמריץ את הטקסט שהורד ישירות.

פתרונות:

  1. אפשרו סקריפטים שנוצרו מקומית עבור המשתמש שלכם, ואז נסו שוב:
    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  2. קראו למשגר .cmd במקום זאת: npm.cmd ו-claude.cmd עושים את אותה עבודה, והמדיניות לא מכסה אותם.
  3. השתמשו במתקין PowerShell במקום npm. הוא מתקין קובץ בינארי ולא סקריפט .ps1.

#The process cannot access the file במהלך התקנה ב-Windows

אם מתקין PowerShell נכשל עם Failed to download binary: The process cannot access the file ... because it is being used by another process, המתקין לא הצליח לכתוב אל %USERPROFILE%\.claude\downloads. בדרך כלל זה אומר שניסיון התקנה קודם עדיין רץ, או שתוכנת אנטי-וירוס סורקת קובץ בינארי שהורד חלקית בתיקייה הזו.

סגרו חלונות PowerShell אחרים שמריצים את המתקין והמתינו שסריקות האנטי-וירוס ישחררו את הקובץ. אחר כך מחקו את תיקיית ההורדות והריצו את המתקין שוב:

Remove-Item -Recurse -Force "$env:USERPROFILE\.claude\downloads"
irm https://claude.ai/install.ps1 | iex

#claude.exe חסר אחרי עדכון ב-Windows

אם הטרמינל מדווח 'claude' is not recognized מיד אחרי ש-Claude Code התעדכן ב-Windows, בדקו אם %USERPROFILE%\.local\bin עדיין מכיל את claude.exe. אם התיקייה הזו לא נמצאת ב-PATH בכלל, ראו אימות ה-PATH במקום זאת. כדי לעדכן ב-Windows, Claude Code משנה את השם של claude.exe הקיים ומזיז אותו הצידה כגיבוי, ומעביר את הגרסה החדשה למקומו. אם העברת הגרסה החדשה למקום נכשלת וגם Claude Code לא מצליח לשנות את שם הגיבוי בחזרה, התיקייה שומרת את הגיבוי אבל אין בה claude.exe.

הגיבוי הוא קובץ באותה תיקייה ששמו מתחיל ב-claude.exe.old. ואחריו חותמת זמן מספרית. הריצו את הפקודה הבאה ב-PowerShell כדי לשנות את שם הגיבוי החדש ביותר בחזרה ל-claude.exe:

Get-ChildItem "$env:USERPROFILE\.local\bin\claude.exe.old.*" | Sort-Object Name | Select-Object -Last 1 | Rename-Item -NewName claude.exe

אחר כך הריצו claude --version כדי לאשר את התיקון. claude.exe ששוחזר מדפיס מספר גרסה.

אם אין קובץ claude.exe.old.*, או ש-claude עדיין נכשל אחרי שינוי השם, התקינו מחדש במקום זאת:

irm https://claude.ai/install.ps1 | iex

לפני v2.1.281, Claude Code היה יכול למחוק את הגיבוי בזמן ש-claude.exe עדיין חסר.

#ההתקנה נהרגה בשרתי Linux עם מעט זיכרון

הודעת Killed במהלך ההתקנה בדרך כלל אומרת שה-out-of-memory (OOM) killer של Linux סיים את שלב claude install כי למערכת נגמר הזיכרון הפנוי. זה נפוץ ב-VPS קטנים ובמופעי ענן. סקריפט ההתקנה מדווח על הסיבה ויוצא עם קוד 137. בדוגמה הזו, מספר השורה ומזהה התהליך משתנים לפי גרסה והרצה:

Setting up Claude Code...
bash: line 183: 34803 Killed    "$binary_path" install ${TARGET:+"$TARGET"}
Installation was killed before it could finish (exit code 137). This usually means the system ran out of memory.
Claude Code needs roughly 512MB of free memory to install. Free up memory, then run this script again.

ההתקנה צריכה בערך 512 MB של זיכרון פנוי, והרצת Claude Code צריכה יותר. ראו את דרישות המערכת.

פתרונות:

  1. הוסיפו שטח swap אם לשרת יש RAM מוגבל. Swap משתמש בשטח דיסק כזיכרון עודף, ומאפשר להשלים את ההתקנה גם עם RAM פיזי נמוך.

    צרו קובץ swap של 2 GB והפעילו אותו:

    sudo fallocate -l 2G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile

    אחר כך נסו את ההתקנה שוב:

    curl -fsSL https://claude.ai/install.sh | bash
  2. סגרו תהליכים אחרים כדי לפנות זיכרון לפני ההתקנה.

  3. השתמשו במופע גדול יותר אם אפשר. Claude Code דורש לפחות 4 GB של RAM.

#ההתקנה נהרגה לפני שהספיקה להסתיים

סקריפט ההתקנה מדווח כששלב claude install מסתיים על ידי אות. ב-Linux, קוד יציאה 137 אומר שהתהליך קיבל SIGKILL, ובמארח עם מעט זיכרון זה בדרך כלל ה-out-of-memory (OOM) killer של הליבה. הסקריפט מדפיס את ההסבר הזה ויוצא עם קוד 137:

Installation was killed before it could finish (exit code 137). This usually means the system ran out of memory.
Claude Code needs roughly 512MB of free memory to install. Free up memory, then run this script again.

לכל אות קטלני אחר, ולקוד יציאה 137 ב-macOS, הסקריפט מדפיס Installation was killed before it could finish (exit code <N>) עם קוד היציאה בפועל ומשמיט את ההסבר על חוסר הזיכרון. ההודעה מגיעה מסקריפט ההתקנה שבו משתמשים macOS ו-Linux, והוא מכסה גם התקנות בתוך WSL. סקריפטי ההתקנה המקוריים של Windows אף פעם לא מדפיסים אותה. לפני v2.1.200, הסקריפט יצא רק עם שורת Killed החשופה של המעטפת.

מה לעשות:

#ההתקנה נתקעת ב-Docker

כשמתקינים את Claude Code בקונטיינר Docker, התקנה כ-root אל / עלולה לגרום לתקיעות.

פתרונות:

  1. הגדירו תיקיית עבודה לפני הרצת המתקין. כשמריצים מ-/, המתקין סורק את כל מערכת הקבצים, וזה גורם לשימוש מופרז בזיכרון. הגדרת WORKDIR מגבילה את הסריקה לתיקייה קטנה:

    WORKDIR /tmp
    RUN curl -fsSL https://claude.ai/install.sh | bash
  2. תנו ל-Docker יותר זיכרון אם משתמשים ב-Docker Desktop. קונטיינרי בנייה חולקים את הזיכרון שהוקצה למכונה הווירטואלית של Docker Desktop, אז פתחו Settings > Resources ב-Docker Desktop, העלו את מגבלת הזיכרון, והריצו שוב את הבנייה.

#Raw mode is not supported במהלך ההתקנה

כשהגדרות שמנוהלות בשרת של הארגון כוללות שינויים שדורשים אישור אבטחה, גרסאות Claude Code שלפני 2.1.246 מנסות להציג את תיבת האישור במהלך claude install. התיבה צריכה טרמינל ב-stdin. כשהמתקין מריץ claude install מצינור, כמו ש-curl -fsSL https://claude.ai/install.sh | bash עושה, stdin הוא הצינור ולא טרמינל, ולכן ההתקנה נכשלת עם שגיאה שמכילה Raw mode is not supported.

Claude Code בגרסה v2.1.246 ואילך לא מציג את התיבה במהלך claude install או claude update. הפקודה רצה עם ההגדרות שאישרתם לאחרונה, ו-Claude Code מציג את התיבה בסשן האינטראקטיבי הבא שלכם. אם הגדרת ההפעלה של הארגון ממתינה לשליפת ההגדרות, למשל כשהיא מגדירה forceRemoteSettingsRefresh, התיבה עדיין מופיעה במהלך הפקודות האלה, והתקנה שרצה מצינור עדיין נכשלת.

בכל הגדרה אחרת, הרצה חוזרת של המתקין עוברת את השגיאה הזו, כי הסקריפט מריץ את פקודת install של המהדורה האחרונה גם כשמבקשים ממנו להתקין גרסה ישנה יותר. הריצו שוב את הפקודה לפלטפורמה שלכם:

macOS/Linux

curl -fsSL https://claude.ai/install.sh | bash

Windows PowerShell

irm https://claude.ai/install.ps1 | iex

claude --version מדפיס את הגרסה שההרצה החוזרת התקינה.

#claude update או claude doctor נתקעים

claude update ו-claude doctor סורקים את קבצי ההגדרה של המעטפת שלכם לאיתור כינוי claude לא מעודכן: ~/.zshrc, ~/.bashrc ו-~/.config/fish/config.fish, וב-macOS גם את הראשון מבין ~/.bash_profile, ~/.bash_login או ~/.profile שקיים. אם הגדרתם ZDOTDIR, קובץ Zsh הוא $ZDOTDIR/.zshrc במקום זאת. כשאחד מהנתיבים האלה הוא תיקייה, Claude Code מדלג עליו ושתי הפקודות מסתיימות כרגיל. לפני v2.1.214, תיקייה באחד מהנתיבים האלה גרמה לשתי הפקודות להיתקע והשאירה את מקטע System diagnostics של /status ריק. claude doctor נתקע בלי פלט. claude update נתקע מיד אחרי שהדפיס Checking for updates.

אם נתקעתם בגרסה מוקדמת יותר, מצאו את התיקייה. בפלט של הפקודה הזו, שורה שמתחילה ב-d מסמנת שהנתיב הזה הוא תיקייה. שורה No such file or directory אומרת שאין כלום בנתיב הזה ושהוא לא הגורם:

ls -ld ~/.zshrc ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile ~/.config/fish/config.fish

הזיזו את התיקייה הצידה, או עדכנו ל-v2.1.214 או חדש יותר. מאחר ש-claude update נתקע בגרסאות המושפעות, עדכנו על ידי הרצה חוזרת של סקריפט ההתקנה במקום זאת.

#Claude Desktop דורס את הפקודה claude ב-Windows

אם התקנתם גרסה ישנה יותר של Claude Desktop, היא עלולה לרשום Claude.exe בתיקיית WindowsApps שמקבל עדיפות ב-PATH על פני ה-CLI של Claude Code. הרצת claude פותחת את אפליקציית Desktop במקום את ה-CLI.

עדכנו את Claude Desktop לגרסה האחרונה כדי לתקן את הבעיה הזו.

#Claude Code ב-Windows דורש את Git for Windows (עבור bash) או את PowerShell

Git for Windows הוא אופציונלי. Claude Code משתמש בכלי PowerShell כש-Git Bash חסר, ולכן השגיאה הזו אומרת שאף מעטפת לא נמצאה.

אם PowerShell חסר מה-PATH שלכם, מיקומו ברירת המחדל הוא C:\Windows\System32\WindowsPowerShell\v1.0\. הוסיפו את התיקייה הזו ל-PATH שלכם, או התקינו את PowerShell 7, שמספק את pwsh.

כדי להתקין את Git for Windows במקום זאת, הורידו אותו מ-git-scm.com/downloads/win. במהלך ההתקנה, בחרו "Add to PATH." הפעילו מחדש את הטרמינל אחרי ההתקנה. ההתקנה מפעילה את כלי Bash, וזה שימושי בעבודה עם סקריפטים וכלי עבודה מבוססי Bash.

אם Git כבר מותקן אבל Claude Code לא מוצא אותו, השוו את המיקום שלו למקומות ש-Claude Code בודק. כש-CLAUDE_CODE_GIT_BASH_PATH לא מוגדר, Claude Code מחפש את bash.exe בסדר הזה:

  1. מיקומי ההתקנה ברירת המחדל C:\Program Files\Git ו-C:\Program Files (x86)\Git.
  2. ה-git שנמצא ב-PATH שלכם, באמצעות bin\bash.exe מאותה התקנת Git.

בשלב 2, Claude Code מדלג על git שנמצא בתיקייה שממנה הפעלתם את Claude Code, או מתחתיה בנתיב שמכיל node_modules או תיקיית סביבה וירטואלית כמו .venv או env, לדוגמה C:\dev\env\myproject\Git כשההפעלה הייתה מ-C:\dev\env\myproject. זה מונע מ-Claude Code להריץ קובץ הרצה שפרויקט מיקם שם. אם ה-Git שלכם נמצא במיקום כזה, כוונו את CLAUDE_CODE_GIT_BASH_PATH אליו.

כדי לכוון את Claude Code להתקנת Git מסוימת, מצאו אותה בהרצת where.exe git ב-PowerShell, ואז הגדירו את נתיב bin\bash.exe מאותה התקנה כ-CLAUDE_CODE_GIT_BASH_PATH בקובץ settings.json שלכם:

{
  "env": {
    "CLAUDE_CODE_GIT_BASH_PATH": "C:\\Program Files\\Git\\bin\\bash.exe"
  }
}

אם CLAUDE_CODE_GIT_BASH_PATH מוגדר לנתיב הנכון והקובץ קיים אבל Claude Code עדיין לא משתמש בו, בדקו קודם את שם הקובץ. Claude Code מקבל רק קובץ בשם bash.exe, sh.exe, bash או sh. עם כל שם אחר, כמו משגר git-bash.exe של Git for Windows, הוא מתעלם מהמשתנה ומזהה את Git Bash אוטומטית כאילו המשתנה לא הוגדר, ורושם אזהרה שאפשר לראות עם --debug. נתיב שלא קיים מקבל את אותו מנגנון חלופי ואת אותה אזהרה. לפני v2.1.219, Claude Code השתמש בכל קובץ קיים כמעטפת בלי לבדוק את שמו, ויצא בהפעלה עם Claude Code was unable to find CLAUDE_CODE_GIT_BASH_PATH path כשהנתיב לא היה קיים.

אם שם הקובץ נכון, תוכנת אבטחת נקודת קצה כמו AppLocker, מדיניות הגבלת תוכנה של Group Policy, או סוכני EDR עלולה להפריע. בקשו מצוות ה-IT שלכם להוסיף לרשימת ההיתרים את claude.exe ואת התהליכים שהוא מפעיל, כולל cmd.exe ו-bash.exe, במדיניות ההגנה על נקודות הקצה שלכם.

#Claude Code לא תומך ב-Windows של 32 סיביות

Windows כולל שני ערכי PowerShell בתפריט Start: Windows PowerShell ו-Windows PowerShell (x86). הערך x86 רץ כתהליך של 32 סיביות ומפעיל את השגיאה הזו גם במכונה של 64 סיביות. כדי לבדוק באיזה מצב אתם, הריצו את זה באותו חלון שיצר את השגיאה:

[Environment]::Is64BitOperatingSystem

אם זה מדפיס True, מערכת ההפעלה שלכם תקינה. סגרו את החלון, פתחו Windows PowerShell בלי הסיומת x86, והריצו שוב את פקודת ההתקנה.

אם זה מדפיס False, אתם במהדורת Windows של 32 סיביות. Claude Code דורש מערכת הפעלה של 64 סיביות. ראו את דרישות המערכת.

#אי התאמה בין בינארי musl ל-glibc ב-Linux

אם אתם רואים שגיאות על ספריות משותפות חסרות כמו libstdc++.so.6 או libgcc_s.so.1 אחרי ההתקנה, ייתכן שהמתקין הוריד את גרסת הקובץ הבינארי הלא נכונה למערכת שלכם.

Error loading shared library libstdc++.so.6: No such file or directory

זה יכול לקרות במערכות מבוססות glibc שמותקנות בהן חבילות הידור צולב של musl, וזה גורם למתקין לזהות בטעות את המערכת כ-musl.

פתרונות:

  1. בדקו באיזה libc המערכת שלכם משתמשת:

    ldd --version 2>&1 | head -1

    פלט שמזכיר GNU libc או GLIBC אומר glibc. פלט שמזכיר musl אומר musl.

  2. אם אתם על glibc אבל קיבלתם את הקובץ הבינארי של musl, הסירו את ההתקנה והתקינו מחדש. אפשר גם להוריד ידנית את הקובץ הבינארי הנכון באמצעות ה-manifest בכתובת https://downloads.claude.ai/claude-code-releases/{VERSION}/manifest.json. פתחו issue ב-GitHub עם הפלט של ldd --version ושל ls /lib/libc.musl*.

  3. אם אתם באמת על musl, כמו Alpine Linux, התקינו את החבילות הנדרשות:

    apk add libgcc libstdc++ ripgrep

    ב-Alpine, ripgrep נמצא במאגר community. אם apk מדווח שהחבילה חסרה, ראו הגדרת Alpine Linux.

#Illegal instruction

אם הרצת claude או המתקין מדפיסה Illegal instruction, הקובץ הבינארי המקומי משתמש בהוראות מעבד שהמעבד שלכם לא תומך בהן. יש שני גורמים נפרדים.

אי התאמת ארכיטקטורה. המתקין הוריד את הקובץ הבינארי הלא נכון, לדוגמה x86 בשרת ARM. בדקו עם uname -m ב-macOS או ב-Linux, או עם $env:PROCESSOR_ARCHITECTURE ב-PowerShell. אם התוצאה לא תואמת לקובץ הבינארי שקיבלתם, פתחו issue ב-GitHub עם הפלט.

ערכת הוראות AVX חסרה. אם הארכיטקטורה נכונה אבל אתם עדיין רואים Illegal instruction, סביר שה-CPU שלכם חסר AVX או הוראה אחרת שהקובץ הבינארי דורש. זה משפיע בערך על מעבדי Intel ו-AMD שלפני 2013, ועל מכונות וירטואליות שבהן ה-hypervisor לא מעביר AVX לאורח.

ב-VPS או ב-VM, הריצו grep -m1 -ow avx /proc/cpuinfo. תוצאה ריקה אומרת ש-AVX לא זמין לאורח.

אין פתרון עוקף לקובץ הבינארי המקומי. עקבו אחרי issue #50384 לסטטוס, וכללו את דגם ה-CPU שלכם מ-grep -m1 "model name" /proc/cpuinfo ב-Linux או מ-sysctl -n machdep.cpu.brand_string ב-macOS כשאתם מדווחים.

שיטות התקנה חלופיות מורידות את אותו קובץ בינארי מקומי ולא יפתרו אף אחד משני הגורמים.

#dyld: cannot load ב-macOS

אם אתם רואים dyld: Symbol not found, dyld: cannot load או Abort trap: 6 במהלך ההתקנה, הקובץ הבינארי לא תואם לגרסת macOS או לחומרה שלכם.

שגיאת Symbol not found שמפנה ל-libicucore אומרת שגרסת macOS שלכם ישנה יותר ממה שהקובץ הבינארי תומך בה:

dyld: Symbol not found: _ubrk_clone
  Referenced from: claude-darwin-x64 (which was built for Mac OS X 13.0)
  Expected in: /usr/lib/libicucore.A.dylib

הטוען יכול לדחות את פקודות הטעינה של הקובץ הבינארי, וגם זה אומר שגרסת macOS שלכם ישנה מדי:

dyld: cannot load 'claude-2.1.42-darwin-x64' (load command 0x80000034 is unknown)
Abort trap: 6

פתרונות:

  1. בדקו את גרסת macOS שלכם: Claude Code דורש macOS 13.0 או חדש יותר. פתחו את תפריט Apple ובחרו About This Mac כדי לבדוק את הגרסה.

  2. עדכנו את macOS אם אתם בגרסה ישנה יותר. הקובץ הבינארי משתמש בפקודות טעינה ובספריות מערכת שגרסאות macOS ישנות יותר לא תומכות בהן. שיטות התקנה חלופיות כמו Homebrew מורידות את אותו קובץ בינארי ולא יפתרו את השגיאה הזו.

#Bus error בזמן שסשן רץ

אם סשן שרץ יוצא והמעטפת מדפיסה Bus error, סיבה אחת היא ש-Claude Code כבר לא יכול לקרוא את קובץ ההרצה שלו מהדיסק. לדוגמה, הקובץ קוצר, או נמחק באחסון רשת, בזמן שהסשן רץ.

לפני ההודעה של המעטפת, סביבת הריצה של Claude Code יכולה להדפיס דוח קריסה שכולל את panic(main thread): Bus error at address ואת oh no: Bun has crashed. This indicates a bug in Bun, not your code. כשקובץ ההרצה הפך לבלתי קריא, הקריסה מגיעה מהקובץ הבלתי קריא, לא מבאג ב-Bun. הדוח יכול גם להיעדר, אם סביבת הריצה לא יכלה לקרוא גם את הקוד שמדפיס אותו.

התחל סשן חדש כדי להמשיך. אם Claude Code מותקן על אחסון רשת, עקוב אחרי התקנה על אחסון רשת כדי ששדרוגים לא יסירו בינארי שסשנים רצים עדיין צריכים.

#Exec format error ב-WSL1

אם הרצת claude ב-WSL מדפיסה cannot execute binary file: Exec format error, אתה על WSL1 ונתקל ברגרסיה ידועה של בינארי נייטיב שעוקבים אחריה ב-issue #38788. כותרות התוכנית של הבינארי השתנו באופן שמטעין של WSL1 לא יכול לטפל בו.

התיקון הנקי ביותר הוא להמיר את ההפצה שלך ל-WSL2 מ-PowerShell:

wsl --set-version <DistroName> 2

אם אתה צריך להישאר על WSL1, הפעל את הבינארי דרך המקשר הדינמי. הוסף את הפונקציה הזו ל-~/.bashrc בתוך WSL, והחלף את הנתיב אם ספריית הבית שלך שונה:

claude() {
  /lib64/ld-linux-x86-64.so.2 "$(readlink -f "$HOME/.local/bin/claude")" "$@"
}

אחר כך הרץ source ~/.bashrc ונסה שוב את claude.

#שגיאות התקנת npm ב-WSL

הבעיות האלה חלות אם התקנת את Claude Code עם npm install -g בתוך WSL. אם השתמשת ב-מתקין הנייטיב, דלג על הסעיף הזה. ב-npm 12, התקן כמו שמתואר ב-תיקון התקנת npm 12.

בעיות זיהוי מערכת הפעלה או פלטפורמה. אם npm מדווח על אי התאמת פלטפורמה במהלך ההתקנה, סביר ש-WSL קולט את ה-npm של Windows. הרץ קודם npm config set os linux, ואז התקן עם npm install -g @anthropic-ai/claude-code --force. אל תשתמש ב-sudo.

exec: node: not found בהרצת claude. סביבת WSL שלך כנראה משתמשת בהתקנת Node.js של Windows. אשר עם which npm ו-which node: נתיבים שמתחילים ב-/mnt/c/ הם בינאריים של Windows, ונתיבי Linux מתחילים ב-/usr/. כדי לתקן את זה, התקן את Node דרך מנהל החבילות של הפצת Linux שלך או דרך nvm.

התנגשויות גרסאות nvm. אם nvm מותקן גם ב-WSL וגם ב-Windows, החלפת גרסאות Node ב-WSL עלולה להישבר כי WSL מייבא את ה-PATH של Windows כברירת מחדל וה-nvm של Windows מקבל עדיפות. הסיבה הנפוצה ביותר היא ש-nvm לא נטען במעטפת שלך. הוסף את טוען nvm ל-~/.bashrc או ל-~/.zshrc:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

או טען אותו בסשן הנוכחי:

source ~/.nvm/nvm.sh

אם nvm נטען אבל נתיבי Windows עדיין מקבלים עדיפות, הוסף בהתחלה את נתיב Node של Linux במפורש:

export PATH="$HOME/.nvm/versions/node/$(node -v)/bin:$PATH"

[!WARNING]

הימנע מביטול ייבוא PATH של Windows דרך appendWindowsPath = false כי זה שובר את היכולת לקרוא לקבצי הרצה של Windows מתוך WSL. באופן דומה, הימנע מהסרת Node.js מ-Windows אם אתה משתמש בו לפיתוח Windows.

#שגיאות הרשאה במהלך ההתקנה

אם מתקין הנייטיב נכשל עם שגיאות הרשאה, ייתכן שספריית היעד לא ניתנת לכתיבה. ראה בדיקת הרשאות ספרייה.

אם התקנת קודם עם npm ואתה נתקל בשגיאות הרשאה ייחודיות ל-npm, עבור למתקין הנייטיב:

curl -fsSL https://claude.ai/install.sh | bash

#בינארי נייטיב לא נמצא אחרי התקנת npm

חבילת ה-npm @anthropic-ai/claude-code מורידה את הבינארי הנייטיב כתלות אופציונלית לפי פלטפורמה, למשל @anthropic-ai/claude-code-darwin-arm64. claude הוא סקריפט מציין מקום עד ששלב ה-postinstall של חבילת @anthropic-ai/claude-code רץ ומחליף את מציין המקום בבינארי הזה. אם ההורדה או שלב ה-postinstall מדולגים, מציין המקום נשאר במקומו, והרצת claude ב-macOS וב-Linux מדפיסה:

Error: claude native binary not installed.

Either postinstall did not run (--ignore-scripts, some pnpm configs)
or the platform-native optional dependency was not downloaded
(--omit=optional).

Run the postinstall manually (adjust path for local vs global install):
  node node_modules/@anthropic-ai/claude-code/install.cjs

Or reinstall without --ignore-scripts / --omit=optional.

ב-Windows, bin/claude.exe הוא אותו מציין מקום של סקריפט מעטפת ולא קובץ הרצה אמיתי, ולכן PowerShell ו-CMD מדווחים שהם לא יכולים להריץ את הקובץ במקום להדפיס את ההודעה הזו.

בדוק את הסיבות הבאות:

  • npm 12 מדלג על שלב ה-postinstall כברירת מחדל. כשאתה מתקין או מעדכן את Claude Code עם npm 12, npm עדיין מסיים את ההתקנה בלי להריץ את השלב. ראה תיקון התקנת npm 12.
  • תלויות אופציונליות מושבתות. הסר את --omit=optional מפקודת ההתקנה של npm, את --no-optional מ-pnpm, או את --ignore-optional מ-yarn, ובדוק ש-.npmrc לא מגדיר optional=false. אחר כך התקן מחדש. הבינארי הנייטיב מסופק רק כתלות אופציונלית, ולכן אין חלופת JavaScript אם הוא מדולג, והרצה חוזרת של install.cjs לא יכולה למקם בינארי שמעולם לא הורד.
  • סקריפטי התקנה מושבתים. --ignore-scripts וחלק מהגדרות pnpm מדלגים על שלב ה-postinstall אבל עדיין מורידים את חבילת הפלטפורמה. הרץ node node_modules/@anthropic-ai/claude-code/install.cjs כמו שההודעה מציעה, או התקן מחדש בלי הדגל. אם postinstall לא יכול לרוץ בסביבה שלך בכלל, node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjs מוצא את החבילה שהורדה ומפעיל אותה, במחיר של תהליך Node נוסף בכל הפעלה. אם העטיפה מדפיסה Could not find native binary package במקום זאת, חבילת הפלטפורמה מעולם לא הורדה, ולכן תקן קודם את סיבת התלויות האופציונליות למעלה.
  • פלטפורמה לא נתמכת. בינאריים מוכנים מראש מתפרסמים עבור darwin-arm64, darwin-x64, linux-x64, linux-arm64, linux-x64-musl, linux-arm64-musl, win32-x64 ו-win32-arm64. Claude Code לא מספק בינארי לפלטפורמות אחרות. ראה את דרישות המערכת. ב-FreeBSD, המתקין מדווח שהפלטפורמה לא נתמכת. לפני v2.1.205, הוא התייחס ל-FreeBSD כאל Linux והוריד בינארי שלא יכול לרוץ.
  • מראת npm ארגונית חסרה את חבילות הפלטפורמה. ודא שה-registry שלך משקף את כל שמונה חבילות הפלטפורמה @anthropic-ai/claude-code-* בנוסף לחבילת המטא.

#תיקון התקנת npm 12

אם claude מדפיס Error: claude native binary not installed. אחרי התקנה או עדכון של npm, או שב-Windows המעטפת לא יכולה להריץ אותו, הרץ npm --version. גרסה שמתחילה ב-12 אומרת, אלא אם הגדרת ה-npm שלך מתירה זאת, ש-npm דילג על שלב ה-postinstall של Claude Code, שמציב את הבינארי במקום. לכל גרסה אחרת, בדוק את הסיבות האחרות.

כדי לתקן התקנת npm 12, עבור למתקין הנייטיב או התר את השלב:

  • מעבר למתקין הנייטיב: התקן עם מתקין הנייטיב, ואז הסר את חבילת ה-npm. העדכונים אז לא משתמשים ב-npm, ולכן השגיאה לא חוזרת.

  • הישארות ב-npm: להתקנת npm גלובלית, הוסף את Claude Code ל-allow-scripts בהגדרת npm של המשתמש. npm אז מריץ את סקריפטי ההתקנה של Claude Code בכל התקנה ועדכון מאוחרים יותר, ובהתקנות פרויקט ש-package.json שלהן לא מגדיר allowScripts.

    השתמש במתקין הנייטיב להתקנה מקומית ב-~/.claude/local. השתמש בו גם אם סקריפטים ב-package.json שלך קוראים ל-npm install ואתה מריץ אותם עם pnpm 9, pnpm 10, Yarn 1 או כלי אחר שמעביר להם את ההגדרה הזו. ב-npm 12.1 ומעלה, ההתקנות האלה יכולות להיכשל עם EALLOWSCRIPTS אחרי שההגדרה נשמרת.

    1. אם npm --version הדפיס 12.0.x, עדכן את npm ל-12.1 או מאוחר יותר, למשל עם npm install -g npm@latest. ב-12.0.x, התקנות פרויקט שכלי npx או סקריפט npm run מתחיל יכולות להיכשל עם EALLOWSCRIPTS אחרי שההגדרה נשמרת.

    2. הרץ npm config get allow-scripts ורשום כל חבילה שהוא מציג, כי הפקודה הבאה מחליפה את כל הערך. שמור את ההגדרה עם החבילות האלה בתוך המרכאות, כמו ב-"allow-scripts=@anthropic-ai/claude-code,<package>":

      npm config set "allow-scripts=@anthropic-ai/claude-code" --location=user
    3. התקן מחדש:

      npm install -g @anthropic-ai/claude-code

      אם זה או שלב 1 נכשלים עם EACCES, עבור למתקין הנייטיב במקום להריץ שוב עם sudo. Claude Code מריץ npm בלי sudo כשהוא מעדכן את עצמו, ולכן עדכונים אוטומטיים ייכשלו באותו אופן.

    4. אם claude --version לא מדפיס מספר גרסה, בדוק את הסיבות האחרות.

    כדי לבטל, הגדר את הרשימה שוב בלי @anthropic-ai/claude-code, או הסר את כל הרשימה עם npm config delete allow-scripts --location=user. ב-npm 12, השגיאה אז חוזרת אחרי העדכון הבא שלך.

#שגיאת npm ENOTEMPTY במהלך עדכון או התקנה מחדש

כשאתה מריץ npm install -g @anthropic-ai/claude-code מעל התקנה קיימת, npm יכול להיכשל בזמן שהוא מזיז הצידה את ספריית החבילה הישנה:

npm error code ENOTEMPTY
npm error syscall rename
npm error path /home/you/.nvm/versions/node/v22.13.1/lib/node_modules/@anthropic-ai/claude-code
npm error dest /home/you/.nvm/versions/node/v22.13.1/lib/node_modules/@anthropic-ai/.claude-code-tVWAnUUt
npm error errno -39
npm error ENOTEMPTY: directory not empty, rename '...'

שורת npm error path מציינת את הספרייה ש-npm לא יכול היה להזיז. מחק את הספרייה הזו וכל ספריות .claude-code-* שנשארו לידה, שהרצות שהופסקו קודם יכולות להשאיר מאחור. הפקודות למטה מוצאות את ספריית החבילות הגלובלית שלך עם npm root -g. אם הספרייה ששורת npm error path מציינת לא נמצאת מתחת לספרייה ש-npm root -g מדפיס, למשל כי החלפת גרסאות Node עם nvm, מחק במקום זאת את הספריות שהשגיאה מציינת:

macOS/Linux

rm -rf "$(npm root -g)/@anthropic-ai/claude-code"

אחר כך הסר ספריות זמניות שנשארו. אם Zsh מדפיס no matches found, לא היו כאלה להסרה:

rm -rf "$(npm root -g)/@anthropic-ai/.claude-code-"*

Windows PowerShell

Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"

אחר כך התקן מחדש. ב-npm 12, עקוב אחרי תיקון התקנת npm 12. אחרת, הרץ:

npm install -g @anthropic-ai/claude-code

אשר עם claude --version, שמדפיס מספר גרסה כמו 2.1.211 (Claude Code).

#התחברות ואימות

הסעיפים האלה מטפלים בכשלי התחברות, בשגיאות OAuth ובבעיות אסימונים.

#איפוס ההתחברות

כשההתחברות נכשלת והסיבה לא ברורה, אימות מחדש נקי פותר את רוב המקרים:

  1. הריצו /logout כדי להתנתק לגמרי
  2. סגרו את Claude Code
  3. הפעילו מחדש עם claude והשלימו שוב את תהליך האימות

אם הדפדפן לא נפתח אוטומטית בזמן ההתחברות, לחצו על c כדי להעתיק את כתובת ה-OAuth ללוח, ואז הדביקו אותה בדפדפן ידנית. זה עובד גם כשהכתובת נשברת על פני כמה שורות במסוף צר או ב-SSH ואי אפשר ללחוץ עליה ישירות.

#שגיאת OAuth: Invalid code

אם מופיעה OAuth error: Invalid code. Please make sure the full code was copied, קוד ההתחברות פג או נחתך בזמן העתקה והדבקה.

פתרונות:

  • לחצו Enter כדי לנסות שוב, והשלימו את ההתחברות במהירות אחרי שהדפדפן נפתח
  • הקלידו c כדי להעתיק את הכתובת המלאה אם הדפדפן לא נפתח אוטומטית
  • אם משתמשים בהפעלה מרוחקת או ב-SSH, הדפדפן עלול להיפתח במכונה הלא נכונה. העתיקו את הכתובת שמוצגת במסוף ופתחו אותה בדפדפן המקומי שלכם.

#403 Forbidden אחרי התחברות

אם מופיעה API Error: 403 Request not allowed אחרי ההתחברות:

  • משתמשי Claude Pro/Max/Ultra: ודאו שהמנוי פעיל ב-claude.ai/settings
  • משתמשי Anthropic Console: אשרו שלחשבון יש תפקיד "Claude Code" או "Developer". מנהלים מקצים את זה בדף Members של ה-Console ב-platform.claude.com/settings/members.
  • מאחורי פרוקסי: פרוקסי ארגוני יכול להפריע לבקשות API. ראו הגדרת רשת להגדרת פרוקסי.

#לא הוענקה גישת Claude Code לחשבון הזה

אם דף ההתחברות מציג Authorization failed עם ההודעה Claude Code access has not been granted for this account. Contact your administrator. אחרי שהתחברתם מתוך Claude Code, ארגון Claude Enterprise שלכם הגדיר את התפקיד שלכם כ-Custom, ואף אחד מהתפקידים המותאמים שהוקצו לקבוצות שלכם לא מעניק Claude Code. בתפקיד Custom מקבלים גישה רק מהתפקידים המותאמים האלה, ולכן שום שינוי ב-Claude Code לא פותר את השגיאה הזו.

כדי לקבל גישה:

  1. בקשו מ-Owner של ארגון Claude שלכם להקצות תפקיד מותאם שמעניק גישת Claude Code לאחת מהקבוצות שלכם, או לשנות את התפקיד שלכם מ-Custom לתפקיד רגיל כמו User. בעלי Owner מנהלים תפקידים בהגדרות התפקידים של הארגון.
  2. אחרי שה-Owner מבצע את השינוי, הריצו claude והתחברו שוב.

#הארגון הזה הושבת למרות מנוי פעיל

אם מופיעה API Error: 400 ... "This organization has been disabled" למרות שיש לכם מנוי Claude פעיל, משתנה הסביבה ANTHROPIC_API_KEY דורס את המנוי. זה קורה לעיתים קרובות כשמפתח API ישן ממעסיק או מפרויקט קודם עדיין מוגדר בפרופיל המעטפת.

כש-ANTHROPIC_API_KEY קיים ואישרתם אותו, Claude Code משתמש במפתח הזה במקום בפרטי ה-OAuth של המנוי. במצב לא אינטראקטיבי עם הדגל -p, המפתח תמיד בשימוש כשהוא קיים. ראו סדר עדיפות באימות לסדר הפתרון המלא.

כדי להשתמש במנוי, בטלו את משתנה הסביבה והסירו אותו מפרופיל המעטפת:

macOS/Linux

unset ANTHROPIC_API_KEY
claude

Windows PowerShell

Remove-Item Env:ANTHROPIC_API_KEY
claude

בדקו ב-~/.zshrc, ב-~/.bashrc או ב-~/.profile שורות export ANTHROPIC_API_KEY=... והסירו אותן כדי שהשינוי יישאר. ב-Windows, בדקו את פרופיל PowerShell ב-$PROFILE ואת משתני הסביבה של המשתמש עבור ANTHROPIC_API_KEY. הריצו /status בתוך Claude Code כדי לאשר איזו שיטת אימות פעילה.

#התחברות OAuth נכשלת ב-WSL2, ב-SSH או במכולות

אם אף דפדפן לא נפתח, או שהדפדפן מחבר אתכם ואז מציג שגיאת חיבור לכתובת localhost, אפשר לסיים את ההתחברות בלי לתקן אף אחת מהבעיות. התחברו דרך כתובת ההתחברות הנפרדת שהמסוף מציג מעל בקשת ההדבקה:

1. העתיקו את כתובת ההתחברות

בבקשת ההתחברות האינטראקטיבית, לחצו c כדי להעתיק את הכתובת, או סמנו אותה במסוף. עם claude auth login, העתיקו את הכתובת שהוא מדפיס.

2. התחברו דרך הכתובת הזו

פתחו את הכתובת בדפדפן במכונה המקומית והתחברו. הדפדפן מציג אז קוד במקום לחזור אל localhost.

3. הדביקו את הקוד

הדביקו את הקוד במסוף בבקשה שמתחילה ב-Paste code here.

אם הדבקת הקוד בבקשה האינטראקטיבית לא עושה כלום, קישור ההדבקה של המסוף כנראה לא מגיע לשדה הקלט. נסו את קיצור ההדבקה החלופי של המסוף, לעיתים קרובות לחיצה ימנית או Shift+Insert ב-Windows Terminal, או השתמשו ב-claude auth login, שקורא את הקוד המודבק מקלט סטנדרטי:

claude auth login

הגיבוי הזה חל גם על Windows מקורי או על כל מסוף שבו ההדבקה בבקשה האינטראקטיבית נכשלת.

ב-WSL2, אם אף דפדפן לא נפתח, אפשר גם לאפשר ל-Claude Code לפתוח את דפדפן Windows בפעם הבאה על ידי הגדרת משתנה הסביבה BROWSER לנתיב של הדפדפן:

export BROWSER="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"
claude

#לא מחוברים או שהאסימון פג

אם Claude Code מבקש להתחבר שוב אחרי הפעלה, ייתכן שאסימון ה-OAuth פג.

הריצו /login כדי לאמת מחדש. אם זה קורה לעיתים קרובות, בדקו ששעון המערכת מדויק, כי אימות האסימון תלוי בחותמות זמן נכונות.

הפעלות מקבילות במכונה אחת חולקות התחברות שמורה ומתאמות את החידוש שלה כך שרק תהליך אחד מרענן את האסימון בכל פעם. למה שההפעלות האחרות עושות אחרי שמתחברים שוב באחת מהן, ראו לא מחוברים.

לפני v2.1.211, יציאה משינה של המכונה יכלה לגרום לשתי הפעלות לחדש עם אותו אסימון, מה שביטל את ההתחברות השמורה וגרם לכל הפעלה פתוחה לבקש התחברות מחדש בבת אחת.

ב-macOS, Claude Code שומר פרטי גישה ב-Keychain של login. כשה-Keychain דוחה את הכתיבה, למשל כשהוא נעול בהפעלת SSH או שהסיסמה שלו לא מסונכרנת עם סיסמת החשבון, Claude Code שומר את ההתחברות בקובץ הטקסט הגלוי ~/.claude/.credentials.json. התחברות Console שיוצרת מפתח API נכשלת עד שה-Keychain ניתן שוב לכתיבה.

כדי להפוך את ה-Keychain לניתן לכתיבה שוב ולהעביר את ההתחברות בחזרה ל-Keychain המוצפן:

1. בדיקת גישה ל-Keychain

הריצו claude doctor כדי לבדוק גישה ל-Keychain. כשה-Keychain דוחה כתיבה, הדוח מציג אזהרה שמתחילה ב-macOS Keychain is not writable, ואחריה תיקון מוצע. כשהדוח לא מציג אזהרת Keychain, ה-Keychain ניתן לכתיבה ואפשר לדלג לשלב האחרון.

2. פתיחת נעילת ה-Keychain

security unlock-keychain ~/Library/Keychains/login.keychain-db

הזינו את סיסמת ה-Keychain כשהפקודה מבקשת אותה, ואז הריצו שוב claude doctor. כשפתיחת הנעילה הצליחה, הדוח כבר לא מציג את אזהרת ה-Keychain.

3. סנכרון מחדש של סיסמת ה-Keychain אם פתיחת הנעילה לא עוזרת

פתחו את Keychain Access, בחרו את ה-keychain בשם login, ובחרו Edit > Change Password for Keychain "login" כדי לסנכרן אותו עם סיסמת החשבון. אחר כך הריצו שוב claude doctor. המשיכו לשלב הבא ברגע שהדוח כבר לא מציג את אזהרת ה-Keychain.

4. התנתקות והתחברות מחדש

ברגע שה-Keychain ניתן שוב לכתיבה, Claude Code מעביר את פרטי הגישה בחזרה בפעם הבאה שהוא כותב פרט גישה. כדי לכפות את זה עכשיו, הריצו /logout ואז /login. ההתנתקות מסירה את כל פרטי הגישה השמורים, כולל תוכן קובץ הטקסט הגלוי, התחברויות שמורות לשרתי MCP, וערכים רגישים של תוספים, ולכן צפו לאשר מחדש שרתי MCP ולהזין מחדש סודות של תוספים אחר כך. התחברות מחדש שומרת את ההתחברות ב-Keychain.

#ההתחברות נכשלת בספריית בית ברשת

כשבקשה נכשלת עם API Error: 401 וספריית ההגדרות נמצאת על מערכת קבצים ברשת, בדקו אם מערכת הקבצים הזו או המכסה שלכם עליה מלאות. כשאין מקום פנוי, Claude Code לא יכול לשמור התחברות חדשה או מחודשת בקובץ הטקסט הגלוי .credentials.json, ו-claude auth login עדיין יכול להדפיס Login successful.

1. פנו מקום במערכת הקבצים

מחקו קבצים שכבר לא נחוצים במערכת הקבצים שמחזיקה את ~/.claude, או בספרייה שהגדרתם ב-CLAUDE_CONFIG_DIR.

2. התחברו שוב

הריצו /login בבקשה של Claude Code או claude auth login במעטפת.

לפני v2.1.318, כש-Claude Code שמר את קובץ ההתחברות על מערכת קבצים ברשת שהייתה מלאה, הוא יכול היה להחליף התחברות שמורה שעדיין תקפה בקובץ ריק. פקודות מאוחרות יותר דיווחו אז Not logged in.

#פרטי גישה של Bedrock, Agent Platform או Foundry לא נטענים

אם הגדרתם את Claude Code להשתמש בספק ענן ומופיעה Could not load credentials from any providers ב-Amazon Bedrock, Could not load the default credentials ב-Agent Platform של Google Cloud, או ChainedTokenCredential authentication failed ב-Microsoft Foundry, סביר ש-CLI של ספק הענן לא מאומת במעטפת הנוכחית.

עבור Amazon Bedrock, אשרו שפרטי הגישה של AWS תקינים:

aws sts get-caller-identity

עבור Agent Platform של Google Cloud, אשרו ש-ANTHROPIC_VERTEX_PROJECT_ID ו-CLOUD_ML_REGION מוגדרים במעטפת, ואז הגדירו application default credentials:

gcloud auth application-default login

עבור Microsoft Foundry, אשרו ש-ANTHROPIC_FOUNDRY_API_KEY מוגדר, או התחברו עם Azure CLI כדי ששרשרת פרטי הגישה ברירת המחדל תוכל למצוא את החשבון:

az login

אם פרטי הגישה עובדים במסוף אבל לא בתוסף של VS Code או JetBrains, תהליך ה-IDE כנראה לא ירש את סביבת המעטפת. הגדירו את משתני הסביבה של הספק בהגדרות של ה-IDE עצמו, או הפעילו את ה-IDE ממסוף שבו הם כבר מיוצאים.

ראו Amazon Bedrock, Agent Platform של Google Cloud, או Microsoft Foundry להגדרה מלאה של הספק.

#עדיין תקועים

אם אף אחד מהסעיפים למעלה לא פותר את הבעיה:

  1. בדקו את מאגר GitHub לבעיות ידועות, או פתחו בעיה חדשה עם מערכת ההפעלה, פקודת ההתקנה שהרצתם, ופלט השגיאה המלא
  2. אם claude --version עובד אבל משהו אחר לא תקין, הריצו claude doctor לדוח אבחון אוטומטי
  3. אם אפשר להתחיל הפעלה, השתמשו ב-/feedback בתוך Claude Code כדי לדווח על הבעיה
  4. אם הבעיה בחשבון ולא בהתקנה, למשל לולאת התחברות, מנוי שלא מזוהה, או ארגון מושבת, פנו לתמיכה של Anthropic: התחברו ב-claude.ai (משתמשי Console: platform.claude.com), לחצו על ראשי התיבות בפינה השמאלית התחתונה, ובחרו Get help. ראו איך מקבלים תמיכה לתהליך המלא.