- שליטה ב-
/doctor— הרצת בדיקת בריאות מלאה של Claude Code בפקודה אחת - שליטה ב-
/debug— ניתוח לוגים כשClaude מתנהג באופן בלתי צפוי - יכולת לזהות ולפתור גלישת הקשר (Context Overflow) לפני שהיא גורמת לבעיות
- פתרון מהיר של בעיות הרשאות — Sandbox, מערכת הפעלה, ורשת
- שליטה בעלויות — זיהוי גורמי עלות ומניעת קפיצות בלתי צפויות
- שימוש ב-Checkpoints ו-
/rewindלחזרה לכל נקודה — מכונת זמן מלאה - Framework מובנה לפתרון בעיות — "מפל ה-Troubleshooting" שפותר 95% מהמקרים
- רשימת הרגלי מניעה שמונעים את רוב הבעיות מלכתחילה
- תוכלו לאבחן בעיה ב-Claude Code תוך דקה אחת באמצעות "מפל ה-Troubleshooting" השיטתי
- תוכלו להבחין בין בעיית מערכת (גרסה, חיבור) לבעיית סשן (הקשר, הרשאות) ולבחור את הכלי הנכון
- תוכלו לנהל את חלון ההקשר באופן פרואקטיבי — לזהות גלישה ולמנוע אותה לפני שהיא מתרחשת
- תוכלו להשתמש ב-Checkpoints ו-
/rewindכדי לנסות כל דבר בביטחון — בלי פחד מטעויות - תוכלו ליישם שגרת תחזוקה יומית שמונעת 90% מהבעיות מלכתחילה
- פרקים קודמים: פרקים 1-10 (במיוחד פרק 3 — CLAUDE.md, פרק 7 — ניהול עלויות והקשר, פרק 8 — VS Code)
- כלים נדרשים: Claude Code מותקן (גרסה 2.1.x), טרמינל פעיל, פרויקט עם קבצים לתרגול
- זמן משוער: 55-70 דקות (כולל תרגילים מעשיים)
בפרק 10 בנית ספריית Prompts אישית — אוסף של תבניות וקולקציות מוכנות לשימוש. בפרק הזה אנחנו עוברים מ"לבנות" ל"לתחזק" — לומדים איך לאבחן בעיות, לפתור אותן מהר, ולהימנע מהן בעתיד. זהו הפרק שיחסוך לכם הכי הרבה זמן לאורך כל העבודה עם Claude Code. בפרק 12 נדבר על אבטחה ופרטיות — נלמד איך לוודא שהעבודה שלכם בטוחה ושנתונים רגישים מוגנים.
לפני שנצלול לפרטים — הנה האמת על Troubleshooting: רוב הבעיות ב-Claude Code נובעות מחמש סיבות בלבד. גלישת הקשר, בעיות הרשאות, גרסה לא מעודכנת, הגדרות שגויות, או פרומפט לא מספיק ספציפי. אם תבינו את חמשת התחומים האלה — תפתרו 95% מהבעיות בדקות, לא בשעות.
הפרק הזה בנוי כמדריך הישרדות: כל סעיף פותח עם "מה הסימפטומים", ממשיך עם "למה זה קורה", ונגמר עם "מה עושים — עכשיו". שמרו את הפרק הזה בסימניות — תחזרו אליו.
פקודת /doctor — הבדיקה הראשונה שלך
כל רופא מתחיל עם בדיקה כללית לפני שהוא מחפש את הבעיה הספציפית. /doctor הוא בדיוק זה — בדיקת בריאות מקיפה של Claude Code שבודקת את כל המערכת בפקודה אחת. זה הדבר הראשון שתעשו כשמשהו מרגיש לא נכון.
חשבו על /doctor כמו לוח מחוונים במכונית — הוא סורק את כל המערכות ומדליק נורה אדומה אם משהו לא תקין. ההבדל: /doctor לא רק מזהה את הבעיה, הוא גם אומר לכם מה הפתרון.
מה /doctor בודק?
כשאתם מריצים /doctor, הפקודה עוברת על רשימה מסודרת של בדיקות. הנה כל אחת מהן:
| בדיקה | מה היא בודקת | בעיות שהיא תופסת |
|---|---|---|
| Node.js Version | שגרסת Node.js היא 18 ומעלה | גרסה ישנה שגורמת לקריסות או חוסר תאימות |
| Claude Code Version | שאתם בגרסה העדכנית | גרסה ישנה שחסרות בה תכונות או תיקוני באגים |
| API Connectivity | חיבור ל-API של Anthropic | בעיות רשת, Firewall, או VPN שחוסמים גישה |
| Authentication | אימות — מפתח API או OAuth | מפתח לא תקף, פג תוקף, או חסר לגמרי |
| Settings File Syntax | שקובץ ההגדרות (settings.json) תקין | שגיאות JSON, פסיק חסר, סוגריים לא סגורים |
| CLAUDE.md Loading | שקבצי CLAUDE.md נטענים נכון | קובץ שלא נמצא, בעיות הרשאות, תחביר שגוי |
| Plugin Status | שכל הפלאגינים מותקנים ופעילים | פלאגין שנכשל בטעינה או שחסר תלות |
אם /doctor מזהה בעיה, הוא לא רק מדווח עליה — הוא בדרך כלל גם מציע את הפתרון. לדוגמה: אם Node.js בגרסה 16, הוא יגיד "Node.js version 16.x is below the required 18+. Run: nvm install 18." — פתרון copy-paste. אם הכול בסדר, תראו "Clean bill of health" — הכול עובד כמו שצריך.
זה מה ש-/doctor בודק בפקודה אחת: Node.js, גרסה, API, אימות, הגדרות, CLAUDE.md, ופלאגינים. שבע בדיקות × דקה אחת = שעה חסכתם.
מתי להריץ /doctor?
יש ארבעה רגעים שבהם /doctor הוא הדבר הראשון שצריך לעשות:
- כשמשהו מרגיש "שבור": Claude Code לא מגיב כצפוי, פקודות נכשלות, או שהתנהגות השתנתה
- אחרי עדכון: בכל פעם שמעדכנים את Claude Code — הריצו
/doctorמיד אחרי - אחרי שינוי הגדרות: ערכתם settings.json או CLAUDE.md? ודאו שלא שברתם משהו
- פעם בשבוע כבדיקת שגרה: גם כשהכול עובד — בדיקה שבועית תופסת בעיות לפני שהן מפריעות
פתחו Claude Code והריצו /doctor. גם אם הכול עובד — זה חשוב כדי לראות איך נראית תוצאה נקייה. שימו לב: מה הגרסה שלכם? האם CLAUDE.md נטען? האם יש פלאגינים פעילים? שמרו בראש איך נראית התוצאה הנורמלית — ככה תזהו מיד כשמשהו שבור.
הריצו /doctor אחרי כל עדכון של Claude Code. עדכונים לפעמים משנים קונפיגורציה, ובדיקה מהירה אחרי עדכון חוסכת שעות של ניפוי באגים אחר כך. הפכו את זה להרגל: Update → /doctor → עבודה.
מיכל, מפתחת Backend, שמה לב שClaude Code לא טוען את הוראות הפרויקט מ-CLAUDE.md. היא ניסתה למחוק ולשחזר את הקובץ, שינתה הגדרות, ואפילו התקינה מחדש. אחרי שעה של ניסויים, מישהו בצוות הציע "/doctor". התוצאה: "CLAUDE.md has a UTF-8 BOM marker. Remove the BOM and reload." — היה תו נסתר בתחילת הקובץ. שלוש שניות של תיקון, אחרי שעה של תסכול. אם הייתה מתחילה עם /doctor — הייתה חוסכת את השעה הזו.
פקודת /debug — כשClaude מתנהג מוזר
/doctor בודק שהמערכת עובדת. /debug בודק מה קרה כשמשהו השתבש. חשבו על ההבדל ככה: /doctor הוא הבדיקה השנתית אצל הרופא, ו-/debug הוא הצילום אחרי שנפלתם. /doctor אומר "המערכת תקינה", ו-/debug אומר "הנה מה שקרה ברגע שמשהו השתבש".
מתי להשתמש ב-/debug?
השתמשו ב-/debug כשClaude:
- נתן תשובה שגויה: תוצאה שלא מתאימה למה שביקשתם — הוא שינה את הקובץ הלא נכון, או עשה את ההפך ממה שרציתם
- כלי נכשל בשקט: Claude אמר "שיניתי את הקובץ", אבל כשבדקתם — שום דבר לא השתנה. הכלי נכשל בלי הודעת שגיאה ברורה
- התנהגות השתנתה אחרי עדכון: משהו שעבד עד אתמול פתאום לא עובד. אולי עדכון שינה את ההתנהגות
- פלאגינים לא נטענים: Skills או MCP Servers שהיו עובדים פתאום לא מגיבים
- תוצאות לא עקביות: אותו Prompt נותן תוצאות שונות בפעמים שונות — בפעם אחת עובד, בפעם הבאה לא
מה /debug עושה מאחורי הקלעים?
/debug הוא בעצם Skill מובנה (Built-in Skill) — לא סתם פקודה, אלא Agent קטן שיודע לקרוא ולנתח לוגים. הלוגים האלה נמצאים בתיקייה ~/.claude/logs/ ומתעדים כל פעולה שClaude Code עשה: אילו כלים נקראו, באיזה סדר, אילו פרמטרים הועברו, אילו שגיאות חזרו, ומה הייתה ההחלטה בכל שלב. (הכלי /debug נמצא ב-Category של Bundled Skills לצד /simplify, /batch, /review ועוד — כלים מובנים שזמינים בכל סשן.)
כשאתם מריצים /debug, Claude:
- קורא את הלוגים האחרונים — מתמקד בפעולות האחרונות של הסשן
- מזהה חריגות — שגיאות, כלים שנכשלו, או התנהגות לא צפויה
- מסביר בשפה פשוטה — לא מציג לכם לוגים גולמיים, אלא מסביר מה קרה ולמה
- מציע פתרונות — מה לעשות כדי לתקן את הבעיה הספציפית
אתם מבקשים מClaude לשנות קובץ, הוא אומר "שיניתי את הקובץ", אבל כשאתם בודקים — שום דבר לא השתנה. מה עושים?
# מריצים /debug
> /debug
# Claude מנתח את הלוגים ומגלה:
"Edit tool was called on utils.py but old_string was not found in the file.
The file was likely modified between the Read and Edit calls.
Solution: Ask Claude to re-read the file and try again."
עכשיו אתם יודעים בדיוק מה קרה: Claude קרא את הקובץ, מישהו (או תהליך אחר) שינה אותו בינתיים, וכש-Claude ניסה לערוך — הטקסט שהוא חיפש כבר לא היה שם. הEdit נכשל בלי הודעה ברורה.
פלאגין MCP שהיה עובד פתאום לא מגיב:
> /debug
# Claude מנתח ומגלה:
"MCP server 'github-tools' failed to start. Error: Connection refused on port 3100.
The MCP server process is not running.
Solution: Restart the MCP server, or check if another process is using port 3100."
הפתרון ברור: השרת של ה-MCP לא רץ. צריך להפעיל אותו מחדש.
קריאה ישירה של הלוגים
אם אתם רוצים לקרוא את הלוגים ישירות (במקום דרך /debug), הם נמצאים ב-~/.claude/logs/. כל סשן יוצר קובץ לוג נפרד. הקבצים בפורמט טקסט פשוט ומכילים את כל הפעולות של הסשן.
# צפייה בלוג האחרון
! ls -la ~/.claude/logs/ | tail -5
# קריאת השורות האחרונות
! tail -50 ~/.claude/logs/[latest-log-file]
ברוב המקרים, /debug יעשה עבודה טובה יותר מקריאה ידנית — כי הוא מפרש את הלוגים ולא רק מציג אותם. אבל לפעמים, כשאתם חוקרים באג מורכב, קריאה ישירה נותנת תמונה מלאה יותר.
גם אם אין לכם בעיה כרגע, הריצו /debug באמצע סשן עבודה. קראו את הפלט — הכירו איך הלוגים נראים כשהכול עובד. ככה תבינו מיד כשמשהו חריג מופיע. שאלו את עצמכם: מה הכלים שClaude השתמש בהם? האם הייתה שגיאה שלא שמתם לב אליה?
אל תתבלבלו בין השניים. /doctor בודק את המערכת — "האם Claude Code מותקן נכון, מחובר, ומוגדר?" /debug בודק את הסשן — "מה קרה כשביקשתי מClaude לעשות X?" אם המכונית לא מתניעה — /doctor. אם המכונית נוסעת אבל פונה שמאלה כשביקשתם ימינה — /debug.
גלישת הקשר — Context Overflow
זו אולי הבעיה הנפוצה ביותר שמשתמשי Claude Code חווים — וגם הכי מבלבלת, כי היא נראית כמו "Claude הפך לטיפש". Claude לא הפך לטיפש. הוא פשוט שכח. בואו נבין למה זה קורה, איך מזהים את זה, ואיך לפתור.
הסימפטומים — איך מזהים גלישת הקשר?
שימו לב לסימנים האלה — הם רמזים ברורים שחלון ההקשר מתמלא:
- סתירות: Claude אומר דבר אחד ואחר כך ההפך — "הקובץ נמצא ב-src/" ואז "הקובץ נמצא ב-lib/" — כי הוא שכח מה קרא
- שכחה: Claude שוכח תוכן קבצים שקרא לפני כמה turns — "איזה קובץ?" כשלפני 5 דקות הוא קרא את הקובץ בעצמו
- אובדן מיקוד: Claude מפסיק לעקוב אחרי המשימה ומתחיל לדבר על משהו אחר, או "ממציא" פתרונות שלא קשורים לבעיה
- תגובות לא קוהרנטיות: תשובות שלא מתחברות למה שנאמר קודם, כאילו Claude נכנס באמצע שיחה שלא שמע
- חזרות: Claude חוזר על אותו דבר שוב ושוב כאילו לא שמע את המשוב שלכם — כי באמת לא "שמע" (הוא שכח)
- פישוט יתר: Claude פתאום נותן תשובות שטחיות ופשטניות, בניגוד לעומק שנתן קודם
הסיבה — למה זה קורה?
Claude Code עובד בתוך חלון הקשר (Context Window) — מרחב מוגבל שמכיל את כל השיחה, כל הקבצים שנקראו, כל ההוראות מ-CLAUDE.md, וכל מה שקרה מתחילת הסשן. חשבו על זה כמו שולחן עבודה פיזי: אם ממלאים אותו בניירות, בשלב מסוים ניירות מתחילים ליפול לרצפה.
ברירת המחדל היא 200K טוקנים. Opus 4.6 עם Max/Team/Enterprise מגיע עד 1M טוקנים — חמש פעמים יותר מקום. אבל גם מיליון טוקנים נגמרים כשקוראים הרבה קבצים גדולים.
חלון ההקשר — 200K טוקנים בברירת מחדל, עד 1M טוקנים עם Opus 4.6 ב-Max/Team/Enterprise. פי 5 יותר מקום = הרבה פחות גלישות.
כשחלון ההקשר מתמלא, Claude Code מפעיל Auto-Compaction (דחיסה אוטומטית) — מנגנון שמתעורר בסביבות 80-85% תפוסה (תלוי בגודל חלון ההקשר ובגרסה) ומנסה לדחוס את השיחה תוך שמירה על עובדות מפתח. בפועל, המערכת שומרת באפר (buffer) של כ-33K טוקנים כדי להבטיח מקום לתשובה הבאה. הבעיה? הדחיסה האוטומטית לא תמיד יודעת מה חשוב לכם. היא עלולה לדחוס פרט קריטי שאתם צריכים — למשל, שם משתנה ספציפי, או מספר שורה שצריך לתקן.
הפתרונות — מהמהיר ביותר לעמוק ביותר
| פתרון | מתי להשתמש | איך | יעילות |
|---|---|---|---|
| /compact עם הנחיות | הקשר מתחיל להתמלא אבל אתם באמצע עבודה | /compact "preserve: the current task is X, file Y has function Z" |
גבוהה מאוד — אתם שולטים במה נשמר |
| הצהרה מחדש | אחרי compaction — Claude שכח פרטים | כתבו את המצב הנוכחי: "אנחנו עובדים על X, שינינו Y, הבעיה הנוכחית היא Z" | טובה — משחזרת הקשר שאבד |
| סשן חדש | הכול מבולגן, כדאי להתחיל מחדש | צאו וחזרו עם claude --resume אם צריכים גישה להיסטוריה |
מצוינת — הקשר נקי לגמרי |
| שדרוג ל-1M Context | אתם עובדים על פרויקטים גדולים באופן קבוע | Opus 4.6 עם Max/Team/Enterprise — חלון הקשר גדל פי 5 | מצוינת — מונעת את הבעיה מלכתחילה |
אריאל עובד על מיגרציה של בסיס נתונים. אחרי שעתיים של עבודה, Claude פתאום "שוכח" את מבנה הטבלאות שקרא קודם. אריאל בודק /context ורואה: 78% תפוס. הוא מריץ:
/compact "preserve: migrating from PostgreSQL to MySQL, tables: users (id, name, email), orders (id, user_id, total), products (id, name, price). Current task: writing the orders migration script. Already completed: users table migration."
אחרי ה-Compact, הקשר ירד ל-25%. Claude "זוכר" את כל מה שאריאל ביקש לשמור, ויכול להמשיך לעבוד על מיגרציית הטבלה הבאה.
מה הטעות: לסמוך על הדחיסה האוטומטית ב-80% במקום לעשות /compact ידני ב-50-60%. למה זה מפתה: כי Auto-Compaction עובדת "לבד" — נראה שאין צורך להתערב. מה לעשות במקום: עשו /compact ידני עם הוראות מפורשות מה לשמור כשמגיעים ל-50-60%. הדחיסה האוטומטית לא יודעת מה חשוב לכם — היא עלולה למחוק פרט קריטי שאתם צריכים.
כשClaude "שוכח" — זה לא באג ולא תקלה. זו גלישת הקשר, והיא חלק טבעי מאיך שמודלים של שפה עובדים. תמיד ציינו בפירוש את המידע הקריטי שחשוב לכם.
מניעה — איך להימנע מגלישת הקשר
הטיפים האלה יאריכו את חיי הסשנים שלכם משמעותית:
- עקבו אחרי
/contextבאופן קבוע — בדקו את אחוז התפוסה כל 10-15 turns. הפקודה מראה כמה טוקנים בשימוש, כמה אחוז מההקשר תפוס, ומה הגודל המקסימלי שלכם (200K או 1M). הפכו את זה להרגל - עשו Compact פרואקטיבי ב-50-60% — אל תחכו שהמערכת תדחוס אוטומטית ב-80%. Compact מוקדם = שליטה טובה יותר
- קראו חלקי קבצים, לא קבצים שלמים — "קרא שורות 1-50 מ-app.py" במקום "קרא את app.py". קובץ של 500 שורות = ~5K טוקנים מיותרים אם צריכים רק פונקציה אחת
- שמרו CLAUDE.md קצר וממוקד — CLAUDE.md נטען בכל turn, אז כל מילה מיותרת שם עולה בטוקנים. 50 שורות של CLAUDE.md מיותר = אלפי טוקנים מבוזבזים על פני סשן שלם
- פצלו משימות ארוכות — במקום "בנה את כל האפליקציה" ← "בנה את ה-API" ← "בנה את ה-UI" ← "חבר ביניהם"
הריצו /context בסשן פעיל. רשמו: כמה אחוז תפוס? כמה טוקנים? עכשיו אתם יודעים מאיפה אתם מתחילים. אם אתם מעל 50% — עשו /compact עכשיו עם הוראות ספציפיות מה לשמור.
בעיות הרשאות — Permission Denied
"Permission Denied" — שתי מילים שמסוגלות לגרום לתסכול אדיר. "למה Claude לא יכול לקרוא את הקובץ הזה? הוא קרא אותו אתמול!" אבל ברגע שמבינים שיש רק שלוש סיבות אפשריות, הפתרון הופך לפשוט. תמיד אחת משלוש.
סיבה 1: Sandbox חוסם — הסיבה הנפוצה ביותר
מערכת ה-Sandbox (ארגז חול) של Claude Code מגבילה גישה לקבצים ולרשת כברירת מחדל. זה טוב לאבטחה — מונע מ-Claude Code לגשת לקבצים רגישים או לשלוח נתונים לשרתים לא מורשים. אבל לפעמים זה חוסם משהו שאתם לגיטימית צריכים.
מערכת ה-Sandbox ב-Claude Code משתמשת ב-Seatbelt (ב-macOS) או ב-bubblewrap (ב-Linux) ברמת מערכת ההפעלה. זה אומר שהבידוד אמיתי — לא רק בדיקת הגדרות, אלא מניעה אמיתית ברמת ה-OS.
הפחתה בבקשות הרשאה ידניות בזכות ה-Sandbox. לפי נתוני Anthropic, מנגנון ה-Sandbox מפחית ב-84% את הצורך באישור ידני של פעולות — כי הוא כבר מגביל את Claude Code למרחב בטוח ברמת מערכת ההפעלה. פחות popup-ים = זרימת עבודה חלקה יותר.
הפתרון: בדקו את .claude/settings.json — במיוחד את permissions.allow ו-permissions.deny:
// .claude/settings.json
{
"permissions": {
"allow": [
"Read(*)",
"Edit(*)",
"Bash(npm *)",
"Bash(git *)",
"Bash(python3 *)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(sudo *)"
]
}
}
הוסיפו את הכלי או הנתיב הספציפי שאתם צריכים ל-allow. חשוב: אל תפתחו הכול — היו ספציפיים. "Bash(*)" זה יותר מדי. "Bash(npm test)" זה בדיוק מספיק.
שימו לב ש-Wildcards עובדים כאן: Bash(npm *) מאפשר כל פקודת npm, mcp__github__* מאפשר כל פעולה של MCP GitHub. וכשיש קונפליקט בין allow ל-deny, deny תמיד מנצח.
סיבה 2: הרשאות מערכת הפעלה
לפעמים הבעיה היא לא ב-Sandbox אלא ברמת מערכת ההפעלה — הקובץ שייך ל-root או למשתמש אחר, או שאין לכם הרשאת כתיבה על הקובץ.
# בדקו הרשאות — מי הבעלים ומה ההרשאות?
! ls -la path/to/file
# תוצאה אפשרית:
# -rw-r--r-- 1 root root 1234 Mar 23 10:00 config.json
# ↑ הקובץ שייך ל-root — אתם לא יכולים לערוך אותו
# פתרון — שנו בעלות:
! chown $USER path/to/file
# או שנו הרשאות:
! chmod 644 path/to/file # קריאה+כתיבה לבעלים, קריאה לכולם
! chmod 755 path/to/directory # קריאה+כתיבה+ריצה לבעלים
סיבה 3: בידוד רשת
Claude Code מגביל גישת רשת לדומיינים מורשים בלבד דרך שרת Proxy פנימי. אם אתם צריכים גישה ל-API חיצוני, לשרת מקומי, או לדומיין ספציפי — ייתכן שתצטרכו להוסיף אותו ל-allowlist בהגדרות ה-Sandbox.
אם אתם על macOS ומשתמשים בכלי CLI שכתובים ב-Go (כמו terraform או kubectl), ייתכן שתצטרכו להפעיל sandbox.enableWeakerNetworkIsolation בהגדרות — כי Seatbelt לא תמיד עובד נכון עם binaries של Go.
כשClaude אומר "אני לא יכול לגשת לזה" — תמיד שאלו: "מה השגיאה המדויקת שאתה מקבל?" ההודעה המדויקת תגיד לכם איזה סוג של Permission Denied זה. "EPERM" = OS, "sandbox violation" = Sandbox, "ECONNREFUSED" = Network. ברגע שיודעים את הסוג — הפתרון ברור.
פתחו את .claude/settings.json בפרויקט הנוכחי שלכם (אם קיים). קראו את רשימת ה-allow וה-deny. שאלו את עצמכם: האם יש כאן משהו שחוסם אותי? האם יש הרשאות שאני צריך להוסיף? אם אין עדיין settings.json — זה בסדר, תדעו ליצור אחד כשתצטרכו.
קפיצות עלות — Cost Spikes
רגע, איך הסשן הזה עלה 8 דולר?! קפיצות עלות בלתי צפויות הן בעיה נפוצה, במיוחד למשתמשים חדשים שלא מודעים לגורמים שמייקרים את השימוש. החדשות הטובות: ברגע שמבינים את חמשת הגורמים, קל מאוד לשלוט.
חמשת גורמי העלות העיקריים
| # | גורם | למה זה יקר | כמה זה עולה (בערך) |
|---|---|---|---|
| 1 | Opus + High Effort | Thinking Tokens — Claude חושב עמוק ומייצר עשרות אלפי טוקנים של חשיבה פנימית. טוקנים של חשיבה מתומחרים כ-Output Tokens, שהם יקרים פי 5 מ-Input Tokens | $5-10 לשאלה מורכבת אחת |
| 2 | קריאת קבצים גדולים | קובץ של 10,000 שורות = ~15K Input Tokens בכל קריאה. אם Claude קורא את הקובץ 3 פעמים = 45K tokens | $0.20-0.50 לקריאה בודדת |
| 3 | קריאות חוזרות | Claude קורא את אותו קובץ 5-6 פעמים בסשן אחד כי הוא "שוכח" את התוכן אחרי Compaction | $1-3 מצטבר על סשן שלם |
| 4 | Agent Tool (Sub-Agents) | Sub-Agents שכל אחד צורך את הטוקנים שלו בנפרד — כל Agent פותח חלון הקשר משלו | $2-5 לכל Sub-Agent |
| 5 | סשנים ארוכים בלי Compaction | חלון ההקשר מתמלא — כל turn מעבד מחדש את כל ההקשר. ככל שההקשר מלא יותר, כך כל turn יקר יותר | עלות מצטברת שגדלה אקספוננציאלית |
חמשת הפתרונות — שליטה מעשית בעלויות
- עקבו אחרי עלות עם
/costו-Statusline: הסתכלו על ה-Statusline בתחתית המסך — הוא מראה את עלות הסשן בזמן אמת. הריצו/costאחרי כל turn מורכב - הורידו Effort למשימות שגרתיות:
/effort lowלדברים פשוטים (שאלות, חיפושים),/effort mediumלרוב העבודה,/effort highרק לבעיות מורכבות שבאמת דורשות חשיבה עמוקה - השתמשו ב-Sonnet או Haiku לפעולות פשוטות:
/modelוהחליפו למודל זול יותר. לא צריך Opus כדי לענות על "מה שם הקובץ הזה?" — Sonnet מספיק ועולה פי 10 פחות - עשו Compact באופן קבוע: פחות הקשר = פחות טוקנים לעיבוד מחדש בכל turn. Compact ב-50% במקום 80% חוסך טוקנים על כל turn שאחריו
- קראו חלקי קבצים: "קרא שורות 100-150 מ-app.py" במקום "קרא את app.py". אם צריכים רק פונקציה אחת — אל תטענו את כל הקובץ
דני, מפתח Full Stack בסטארטאפ ישראלי, שם לב שהסשנים שלו עולים 15-20 דולר ביום (~55-75 ש"ח). הוא בדק עם /cost ומצא: הוא עובד עם Opus על /effort high כל הזמן, קורא קבצים שלמים (כולל קובץ CSS של 3,000 שורות שוב ושוב), ולא עושה Compact לאורך כל היום.
מה הוא שינה:
- Effort ברירת מחדל:
/effort medium(high רק ל-debug מורכב) - קריאת קבצים: "קרא שורות 1-50" במקום לקרוא הכול
- Compact כל שעה (או ב-50% תפוסה)
- מעבר ל-Sonnet לשאלות פשוטות ולחיפושים
תוצאה: העלות ירדה ל-5-7 דולר ביום (~18-26 ש"ח). חיסכון של 60% — בלי לוותר על אף תכונה.
הריצו /cost בסשן הנוכחי שלכם. שאלו את עצמכם: האם זה מה שציפיתי? בדקו גם את ה-Effort Level הנוכחי ואת המודל. אם Effort על high ואתם לא צריכים חשיבה עמוקה — הורידו ל-medium עכשיו. אם אתם על Opus ועושים משהו פשוט — שקלו /model ל-Sonnet.
מה הטעות: לעבוד עם Opus ו-/effort high גם על משימות פשוטות כמו חיפוש קבצים, שאלות קצרות, או שינויי טקסט. למה זה מפתה: כי "Opus הוא הכי טוב" — אז למה לא להשתמש בו תמיד? מה לעשות במקום: השתמשו ב-/effort medium לרוב העבודה, ו-Sonnet (/model) לשאלות פשוטות. High Effort רק לבעיות מורכבות שדורשות חשיבה עמוקה. ההבדל: 5-7 דולר ביום במקום 15-20 דולר (~60% חיסכון).
80% מהעלות שלכם מגיעה מ-20% מהפעולות. בדרך כלל, שלוש פעולות יקרות מסבירות את רוב החשבון: שאלה אחת ב-high effort, קריאת קובץ גדול שוב ושוב, או סשן ארוך בלי Compact. זהו את שלושת ה"צרכנים" הגדולים שלכם ותפתרו את רוב הבעיה.
תגובות איטיות — Slow Responses
Claude מסתובב כבר דקה וחצי ולא עונה. מה קורה שם? למה לפעמים התגובה מגיעה תוך 3 שניות ולפעמים תוך דקה? בואו נבין את חמש הסיבות הנפוצות ואת הפתרונות.
הסיבות והפתרונות — טבלת ההתמצאות
| סיבה | איך מזהים | פתרון |
|---|---|---|
| 1. Opus + High Effort | Statusline מראה Opus ו-Effort גבוה (עיגול מלא) | הורידו ל-/effort medium או החליפו ל-Sonnet עם /model |
| 2. חלון הקשר מלא | /context מראה 70%+ תפוסה |
/compact — דחיסה מפחיתה עומס ומאיצה עיבוד של כל turn |
| 3. בעיות רשת | חיבור אינטרנט איטי או לא יציב | בדקו עם ! ping api.anthropic.com — אם latency גבוה או יש packet loss, זו בעיית רשת |
| 4. Rate Limiting | Claude מחזיר שגיאת rate limit, או Statusline מראה מגבלה | חכו כמה דקות — מנויים יש להם מגבלות per-minute. Statusline (מגרסה 2.1.80) מראה חלון 5-שעות ו-7-ימים |
| 5. שרשרת כלים ארוכה | Claude קורא 10+ קבצים לפני שעונה — רואים את זה ב-Statusline | היו ספציפיים יותר: "קרא את פונקציית X בקובץ Y, שורות 50-80" במקום "הבן את הפרויקט" |
הקומבינציה האיטית ביותר והמהירה ביותר
הקומבינציה הכי איטית: Opus + High Effort + חלון הקשר מלא (80%+). זה עולה הרבה וגם לוקח הרבה זמן. כל turn עם הקומבינציה הזו יכול לקחת 30-90 שניות.
הקומבינציה הכי מהירה: Sonnet + Low Effort + חלון הקשר ריק. תגובה ב-2-5 שניות.
למשימה ממוצעת, הקומבינציה הטובה ביותר: Opus/Sonnet + Medium Effort + חלון הקשר מתחת ל-50%. תגובה ב-5-20 שניות, איכות מצוינת.
אם Claude תקוע (מסתובב יותר מ-60 שניות בלי פלט), לחצו Ctrl+C לביטול ונסו Prompt פשוט יותר. זה לא שובר כלום — זה פשוט עוצר את הבקשה הנוכחית. לפעמים Prompt פשוט וספציפי יותר מהיר בסדרי גודל מ-Prompt מעורפל וכללי.
הסתכלו על ה-Statusline שלכם עכשיו. מה המודל? מה ה-Effort Level (עיגול ריק, חצי, מלא)? הריצו /context — כמה אחוז תפוס? עכשיו חישבו: האם הקומבינציה שלכם סבירה למשימה הנוכחית, או שאתם "נוסעים בגיר 1 על כביש מהיר"?
בעיות התקנה ועדכונים
בעיות התקנה הן מתסכלות כי הן מונעות מכם אפילו להתחיל לעבוד. הנה הבעיות הנפוצות ביותר עם פתרונות copy-paste — שמרו את הסעיף הזה, תצטרכו אותו.
בעיה 1: גרסת Node.js ישנה מדי
אם התקנתם Claude Code דרך npm, הוא דורש Node.js 18 ומעלה. אם יש לכם גרסה ישנה יותר, תקבלו שגיאה כבר בהפעלה. שימו לב: מאמצע 2025 קיים גם Native Installer (מתקין מקורי) שלא דורש Node.js כלל — זו הדרך המומלצת כיום להתקנה ב-macOS, Windows ו-Linux. אבל אם אתם על npm — הנה איך לבדוק ולתקן:
# בדקו את הגרסה
node --version
# אם מתחת ל-18 — עדכנו:
# עם nvm (מומלץ — כי מאפשר לנהל כמה גרסאות):
nvm install 18
nvm use 18
# או עם package manager (Ubuntu/Debian):
sudo apt update && sudo apt install nodejs
# או עם Homebrew (macOS):
brew install node
טיפ: אם אתם עובדים על כמה פרויקטים, nvm הוא הכלי הנכון. הוא מאפשר לכם להחזיק כמה גרסאות Node בו-זמנית ולעבור ביניהן בפקודה אחת. ביצועים: Node.js 22 LTS (היציב האחרון) מציע שיפורי ביצועים ותאימות מלאה עם Claude Code — שווה לשדרג אם אתם עדיין על 18.
בעיה 2: שגיאות npm Permission (Linux/macOS)
בעיה קלאסית ב-Linux — npm מנסה לכתוב לתיקייה גלובלית שצריך root בשבילה, ומקבלים EACCES error:
# פתרון 1: sudo (מהיר אבל פחות נקי)
sudo npm install -g @anthropic-ai/claude-code
# פתרון 2: שינוי prefix (נקי יותר, מומלץ לטווח ארוך)
mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
# הוסיפו ל-PATH ב-.bashrc או .zshrc:
export PATH=~/.npm-global/bin:$PATH
# טענו מחדש:
source ~/.bashrc # או source ~/.zshrc
# ואז התקינו:
npm install -g @anthropic-ai/claude-code
פתרון 2 נקי יותר כי הוא לא דורש sudo — כל ההתקנות הגלובליות יישבו בתיקייה הביתית שלכם.
בעיה 3: PATH לא מוגדר (Windows)
אחרי התקנה ב-Windows, לפעמים הטרמינל לא מוצא את claude. הפתרון הפשוט ביותר: סגרו את הטרמינל ופתחו מחדש. Windows צריך לטעון מחדש את ה-PATH אחרי התקנה גלובלית.
אם זה עדיין לא עוזר — הוסיפו את תיקיית npm הגלובלית ל-PATH ידנית. בדרך כלל היא נמצאת ב-%APPDATA%\npm.
בעיה 4: עדכון נכשל
# נסו עדכון רגיל קודם:
npm update -g @anthropic-ai/claude-code
# אם נכשל — הסירו והתקינו מחדש:
npm uninstall -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
# ודאו שהעדכון הצליח:
claude --version
# ואז בדקו שהכול תקין:
# (בתוך Claude Code)
/doctor
בעיה 5: Version Mismatch — גרסה לא מסתנכרנת
לפעמים claude --version מראה גרסה ישנה גם אחרי עדכון. הסיבה הנפוצה: יש שתי התקנות של Claude Code — אחת גלובלית ואחת מקומית, והמקומית עוקפת את הגלובלית.
# מצאו איפה Claude Code מותקן:
which claude
# או ב-Windows:
where claude
# אם יש שתי תוצאות — הסירו את המיותרת
בעיה 6: Firewall ארגוני
ארגונים רבים חוסמים גישה לאתרים חיצוניים. Claude Code צריך גישה לשני דומיינים:
registry.npmjs.org— להתקנה ועדכוניםapi.anthropic.com— לתקשורת עם ה-API של Claude
בקשו מצוות ה-IT לפתוח את שני הדומיינים האלה. אם אי אפשר — שאלו על Proxy פנימי שדרכו אפשר לגשת. אם גם זה לא אפשרי — Claude Code דרך Bedrock (AWS) או Vertex (Google Cloud) עוקפים את הצורך ב-api.anthropic.com.
הריצו claude --version עכשיו. הגרסה העדכנית ביותר (מרץ 2026) היא 2.1.81. אם אתם בגרסה ישנה יותר — עדכנו: npm update -g @anthropic-ai/claude-code. ואז /doctor כדי לוודא שהכול עובד.
הרגל שחוסך כאב ראש: אחרי כל עדכון של Claude Code, הריצו /doctor. עדכונים לפעמים משנים קונפיגורציה, ו-/doctor יתפוס את זה מיד. עדיף לגלות בעיה ב-2 שניות של /doctor מאשר אחרי 30 דקות של "למה זה לא עובד?"
כשClaude נתקע — אסטרטגיות Reset
כולנו מגיעים לרגע הזה: Claude חוזר על אותה טעות, הולך בכיוון לא נכון, או פשוט נראה "מבולבל". הרגע הזה מתסכל, אבל יש לו פתרון שיטתי. הנה מדרגות ה-Reset — שש רמות, מהקלה ביותר לדרסטית ביותר. התחילו תמיד מלמעלה ורדו רק אם צריך.
שש מדרגות ה-Reset — The Reset Ladder
ניסוח מחדש — Rephrase (הכי קל, 10 שניות)
הפתרון הפשוט ביותר שפותר 40% מהבעיות. נסחו את הבקשה מחדש, יותר ספציפית ועם יותר הקשר.
במקום: "תתקן את זה"
נסו: "הפונקציה calculate_total בשורה 45 של utils.py מחזירה 0 במקום סכום. תתקן את החישוב בשורה 48 כדי שייקח בחשבון את המע"מ — price * quantity * 1.17"
Ctrl+C ונסיון חוזר (15 שניות)
עצרו את Claude באמצע עם Ctrl+C ותנו לו פרומפט חדש. לפעמים Claude "נכנס לכיוון" ופשוט ללחוץ Reset מספיק כדי שינסה מחדש עם גישה שונה. Ctrl+C לא שובר שום דבר — הוא פשוט עוצר את הבקשה הנוכחית.
/rewind — חזרה ל-Checkpoint (30 שניות)
הקישו Escape פעמיים (או הריצו /rewind) כדי לחזור לנקודת Checkpoint קודמת — כולל שינויים בקבצים. מכונת זמן מלאה. השתמשו בזה כשClaude כבר עשה שינויים שאתם רוצים לבטל.
/compact עם הקשר מפורש (1 דקה)
הריצו /compact "preserve: we're working on X, the current state is Y, the goal is Z". זה מנקה את ההקשר אבל שומר את מה שחשוב. טוב כשהבעיה היא "Claude מבולבל מיותר מדי מידע" ולא "Claude עשה שינוי לא נכון".
סשן חדש (1-2 דקות)
צאו מClaude Code והפעילו סשן חדש. התחלה נקייה עם הקשר ריק. אם צריכים גישה לעבודה הקודמת: claude --resume כדי לחזור לסשן הקודם. זה מנקה את כל "הרעש" שהצטבר.
--bare — מצב חשוף (הכי דרסטי, 2 דקות)
הפעילו Claude Code עם claude --bare — מדלג על Hooks, פלאגינים, Skills, סנכרון LSP, וסריקת תיקיות. זה מבודד את הבעיה: אם הכול עובד ב-bare — הבעיה בפלאגין, ב-Hook, או בהגדרה, לא ב-Claude עצמו. אם גם ב-bare לא עובד — הבעיה בסיסית יותר (רשת, אימות, גרסה).
בעיות ספציפיות ופתרונות
| בעיה | סימפטום | מדרגה מומלצת | פתרון ספציפי |
|---|---|---|---|
| לולאה אינסופית | Claude חוזר על אותה פעולה או שגיאה 3+ פעמים | מדרגה 2 | Ctrl+C ← ניסוח מחדש עם יותר הקשר ופחות עמימות |
| כיוון שגוי | Claude הלך בדרך לא נכונה, עשה שינויים לא רצויים בקבצים | מדרגה 3 | Escape x2 (/rewind) ← חזרה לנקודה לפני השינויים הלא רצויים |
| בלבול הקשרים | Claude מערבב בין קבצים, פרויקטים, או משימות | מדרגה 4 | /compact עם הצהרה מפורשת של המצב הנוכחי |
| הפרעת פלאגין | התנהגות מוזרה שלא הייתה קודם, במיוחד אחרי התקנת פלאגין | מדרגה 6 | בדיקה עם claude --bare — אם עובד ב-bare, הבעיה בפלאגין |
| השחתת הגדרות | התנהגות מוזרה אחרי עריכת settings.json או CLAUDE.md | מדרגה 1-6 | בדקו תחביר: ! python3 -c "import json; json.load(open('.claude/settings.json'))" |
מה הטעות: כשClaude עושה שינוי לא רצוי בקובץ, לסגור את הסשן ולפתוח חדש. למה זה מפתה: כי "התחלה נקייה" מרגישה כמו הפתרון. מה לעשות במקום: Escape x2 (שנייה אחת) או /rewind (10 שניות). הם מחזירים גם את השיחה וגם את הקבצים. סשן חדש מחזיר רק את השיחה — הקבצים נשארים שבורים. תמיד התחילו ממדרגה 1 (ניסוח מחדש) ועלו בהדרגה.
בסשן עבודה פעיל, נסו את הדברים האלה ברצף: (1) הריצו /context כדי לראות את מצב ההקשר. (2) הריצו /compact "test compaction" וראו כמה מקום השתחרר. (3) הקישו Escape פעמיים ובחרו Checkpoint — ראו שהכול חזר. ברגע שעשיתם את זה פעם אחת בסביבה רגועה, תדעו לעשות את זה באמצע לחץ.
Checkpoints ו-/rewind — מכונת הזמן שלכם
אם יש תכונה אחת ב-Claude Code שצריך להכיר לפני שמתחילים לעבוד — זו מערכת ה-Checkpoints. חשבו עליה כמו Save Points במשחק מחשב. כל פעם שאתם שולחים Prompt, Claude Code שומר תצלום מלא של המצב — גם השיחה וגם הקבצים. אתם לא צריכים לעשות כלום — זה קורה אוטומטית.
איך Checkpoints עובדים?
- אוטומטי לגמרי: Checkpoint נוצר בכל פרומפט שאתם שולחים — בלי שום פעולה מצדכם, בלי הגדרות, בלי כלום. פשוט עובד
- כולל קבצים: לא רק השיחה נשמרת — גם מצב הקבצים. אם Claude שינה קובץ ואתם עושים rewind, הקובץ חוזר למצב שלו לפני השינוי
- נשמר 30 יום: יש לכם חודש שלם כדי לחזור לכל נקודה. זה לא נמחק בסוף הסשן
- מבוסס Git: Checkpoints משתמשים ב-git מאחורי הקלעים, אז הם יעילים מבחינת מקום אחסון — רק ההבדלים (diffs) נשמרים
- לא מפריע: יצירת Checkpoint לוקחת מילישניות ולא מאטה את העבודה
- מגבלה חשובה — Bash: Checkpoints עוקבים אחרי שינויים שנעשו דרך כלי Edit ו-Write בלבד. קבצים שנוצרו או שונו דרך פקודות Bash (למשל
! echo "x" > file.txtאו! sed -i ...) לא נכללים ב-Checkpoint — ולא ניתן לשחזר אותם עם /rewind. זו סיבה נוספת לעשות git commit לפני ניסויים
שלוש דרכים לחזור אחורה
| דרך | איך | מתי | מהירות |
|---|---|---|---|
| Escape x2 | הקישו Escape פעמיים ברצף מהיר | חזרה ל-Checkpoint האחרון — "Undo" מיידי | שנייה אחת |
| /rewind | הקלידו /rewind ובחרו מרשימה |
כשאתם רוצים לבחור לאיזה Checkpoint בדיוק לחזור — לא בהכרח האחרון | 10-30 שניות |
| --resume | הפעילו claude --resume |
אחרי שסגרתם את הטרמינל ורוצים לחזור לסשן קודם | כמה שניות |
ביקשתם מClaude לעשות Refactor לקובץ, והוא מחק פונקציה שלא היה צריך. מה עושים?
# הדרך המהירה — שנייה אחת:
# לחצו Escape פעמיים
# ← הכול חוזר — השיחה *וגם* הקובץ!
# או, אם רוצים לחזור יותר אחורה:
> /rewind
# ← מופיעה רשימה של Checkpoints עם תיאור
# ← בחרו את הנקודה שלפני ה-Refactor
# ← הכול חוזר לאותו מצב בדיוק
חשוב: /rewind מחזיר גם את השיחה וגם את הקבצים. זה לא רק "Undo" של טקסט — זו מכונת זמן מלאה. ויש לכם שליטה: כשאתם בוחרים Checkpoint, אפשר לבחור בין שלוש אפשרויות: (1) שחזור קוד ושיחה — חזרה מלאה, (2) שחזור שיחה בלבד — מחזיר את השיחה אבל שומר את הקבצים כמו שהם, (3) שחזור קוד בלבד — מחזיר את הקבצים אבל שומר את ההיסטוריה של השיחה. שלושה מצבים, גמישות מלאה.
אתם רוצים לנסות שתי גישות שונות ל-Refactor ולבחור את הטובה:
# נקודת ההתחלה — הכול שמור אוטומטית כ-Checkpoint
# גישה A:
> "עשה refactor לפונקציה עם Strategy Pattern"
# ← Claude מבצע שינויים
# ← בדקו את התוצאה... לא מושלם
# חזרה להתחלה:
> /rewind
# ← בחרו את ה-Checkpoint שלפני הRefactor
# גישה B:
> "עשה refactor לפונקציה עם Factory Pattern"
# ← Claude מבצע שינויים אחרים
# ← זה יותר טוב! נשאיר.
בלי Checkpoints, הייתם צריכים לעשות git stash, branch, ועוד ועוד. עם Checkpoints — שתי הקשות ואתם חזרה.
Checkpoints עוקבים אחרי שינויים שנעשו דרך כלי Edit ו-Write בלבד. אם Claude ביצע שינוי דרך פקודת Bash — למשל ! sed -i 's/old/new/g' file.py או ! mv oldname.txt newname.txt — השינוי לא ייכלל ב-Checkpoint, ו-/rewind לא ישחזר אותו. לכן: אם אתם מבצעים שינויים משמעותיים דרך Bash, עשו git commit לפני — זו רשת הביטחון היחידה שלכם במקרה הזה.
מתי להשתמש ב-Checkpoints?
- Claude עשה שינוי לא רצוי: Escape x2 — חזרה מיידית, כאילו שום דבר לא קרה
- רוצים לנסות גישה אחרת: /rewind לנקודת ההתחלה ← נסו גישה חדשה
- השיחה הלכה לכיוון לא טוב: /rewind לנקודה שבה הכול היה בסדר
- ניסוי: עשו את הניסוי, ואם לא עבד — /rewind כאילו שום דבר לא קרה. אפס סיכון
- לפני שינוי מסוכן: אתם יודעים שClaude הולך לעשות משהו גדול? ה-Checkpoint כבר נשמר. נסו בראש שקט
בסשן פעיל, בקשו מClaude שינוי קטן (למשל: "הוסף הערה בראש הקובץ"). אחרי שClaude עושה את השינוי, לחצו Escape פעמיים. ראו שהשינוי נעלם והקובץ חזר למצב הקודם. עכשיו אתם יודעים שאתם יכולים לנסות כל דבר בביטחון.
Checkpoints משנים את הגישה שלכם לעבודה באופן מהותי. בלעדיהם — אתם פוחדים לנסות, חושבים פעמיים לפני כל שינוי, מהססים. איתם — אתם חופשיים לנסות כל דבר, כי תמיד אפשר לחזור. זה כמו "Save Game" לפני הבוס — שמרתם? אפשר לנסות. לא עבד? טוענים מחדש. אל תפחדו לנסות. הרשת ביטחון תמיד שם.
לקבל עזרה — כשבאמת נתקעים
ניסיתם /doctor, ניסיתם /debug, ניסיתם את כל מדרגות ה-Reset — ועדיין תקועים. מה עכשיו? לא להילחץ. יש מספר ערוצים שיכולים לעזור, מהמהיר ביותר ועד העמוק ביותר.
ערוצי עזרה — מהמהיר לעמוק
| ערוץ | מה תמצאו שם | זמן תגובה |
|---|---|---|
| /bug | דיווח באג ישירות ל-Anthropic מתוך Claude Code — כולל לוגים אוטומטית | דיווח מיידי, תגובה תוך ימים |
| Documentation | code.claude.com/docs — תיעוד רשמי מקיף עם חיפוש |
מיידי — חפשו את הנושא |
| GitHub Issues | github.com/anthropics/claude-code/issues — חפשו בעיות דומות לשלכם |
חיפוש מיידי, דיווח חדש — ימים עד שבועות |
| Anthropic Discord | קהילה פעילה עם ערוצי עזרה ייעודיים לClaude Code | דקות עד שעות |
| Reddit r/ClaudeAI | קהילה גדולה של משתמשים — דיונים, טיפים, ופתרונות | שעות |
| Twitter/X #ClaudeCode | טיפים, עדכונים, ושיתוף פתרונות מהקהילה | משתנה |
איך לדווח באג טוב עם /bug
דיווח באג טוב חוסך זמן — גם לכם וגם לצוות של Anthropic. ככל שהדיווח מפורט יותר, כך הפתרון מגיע מהר יותר. הנה המבנה:
- מה עשיתם: "ביקשתי מ-Claude לערוך את הקובץ utils.py, שורה 45"
- מה ציפיתם שיקרה: "שהפונקציה calculate_total תשתנה לכלול מע"מ"
- מה באמת קרה: "Claude מחק את כל הקובץ" / "שגיאה: [הודעת שגיאה מלאה]"
- מה ניסיתם: "ניסיתי /debug — הציג X. ניסיתי /doctor — הכול נקי. ניסיתי Ctrl+C ופרומפט חדש — אותה בעיה"
- סביבה: "Claude Code v2.1.81, Node 20, macOS 14.3, Opus 4.6"
ככל שתהיו יותר ספציפיים, כך הפתרון יגיע מהר יותר. "זה לא עובד" הוא דיווח גרוע. "Edit tool silently fails on files larger than 5000 lines when old_string contains Hebrew characters" הוא דיווח מצוין.
שמרו Bookmark לשני הלינקים האלה — תצטרכו אותם מתישהו:
תיעוד: code.claude.com/docs
GitHub Issues: github.com/anthropics/claude-code/issues
אפשר גם להוסיף אותם ל-CLAUDE.md שלכם כדי שClaude עצמו ידע לכוון אתכם לשם.
מניעה — הרגלים שמונעים בעיות
הפרק הזה עד כה עסק ב"כבאות" — איך לכבות שריפות. הסעיף הזה עוסק במניעת שריפות. שבע הרגלים פשוטים שמונעים 90% מהבעיות. כל הרגל לוקח שניות — ביחד הם חוסכים שעות.
מהבעיות ב-Claude Code ניתנות למניעה עם הרגלים פשוטים. שבעה הרגלים של 5-30 שניות כל אחד — וזו ההשקעה הכי משתלמת שתעשו.
הרגל 1: התחילו בתיקייה הנכונה — תמיד
בעיה קלאסית שמתסכלת: Claude Code מחפש קבצים ולא מוצא, מנסה להריץ פקודות שנכשלות, או יוצר קבצים במקום הלא נכון — כי הפעלתם אותו מהתיקייה הלא נכונה. תמיד ודאו:
# בתחילת כל סשן — פעולה ראשונה:
! pwd
# ← ודאו שאתם בתיקיית הפרויקט, לא ב-Home או במקום אחר
אם אתם עובדים על כמה פרויקטים, הפעילו Claude Code מתוך תיקיית הפרויקט: cd ~/projects/my-app && claude.
הרגל 2: Git לפני ניסויים — רשת ביטחון כפולה
Checkpoints הם רשת ביטחון מצוינת, אבל git נותן רשת ביטחון נוספת שעובדת גם מחוץ לClaude Code. לפני שאתם מבקשים מClaude שינוי ניסיוני:
! git add .
! git commit -m "save point before experiment"
# עכשיו אפשר לנסות כל דבר בביטחון
# אם צריך לחזור: git checkout -- .
הרגל פשוט: Commit → Experiment → Review → Commit/Revert. ארבעה שלבים שמונעים אובדן עבודה.
הרגל 3: עקבו אחרי עלות והקשר — כל 10-15 turns
הגדירו לעצמכם תזכורת מנטלית: כל 10-15 turns, בדקו שני דברים:
/cost— כמה עולה הסשן? האם זה בטווח הסביר?/context— כמה הקשר תפוס? אם מעל 50% — Compact!
זה לוקח 5 שניות וחוסך הפתעות בסוף היום.
הרגל 4: Compact פרואקטיבי — ב-50%, לא ב-80%
אל תחכו לדחיסה האוטומטית ב-80%. עשו Compact ב-50-60% עם הוראות ספציפיות שמגידות לClaude מה לשמור:
/compact "preserve: working on feature X in file Y, bug is in function Z, next step is testing"
למה 50% ולא 80%? כי ב-50% אתם שולטים. ב-80% המערכת שולטת — וייתכן שהיא תדחוס מידע שאתם צריכים.
הרגל 5: CLAUDE.md מעודכן ורזה
CLAUDE.md שלא מעודכן הוא גרוע יותר מ-CLAUDE.md שלא קיים — כי הוא מטעה את Claude עם מידע ישן. ו-CLAUDE.md ארוך מדי הוא בזבוז טוקנים, כי הוא נטען בכל turn. בדקו אותו אחת לשבוע:
- האם כל ההוראות עדיין רלוונטיות?
- האם יש מידע שהתיישן?
- האם אפשר לקצר — לשמור רק את מה שבאמת משפיע?
הרגל 6: עדכנו Claude Code באופן קבוע
פעם בשבוע, הריצו את השלישייה:
# 1. עדכון
npm update -g @anthropic-ai/claude-code
# 2. בדיקת גרסה
claude --version
# 3. בדיקת בריאות (בתוך Claude Code)
/doctor
עדכונים מביאים תיקוני באגים, שיפורי ביצועים, ותכונות חדשות. Claude Code מוציא עדכונים תכופים — ב-2026 לבד יצאו עשרות עדכונים.
הרגל 7: סקרו הרשאות חודשית
אחת לחודש, פתחו את .claude/settings.json ושאלו:
- האם יש כאן הרשאות שכבר לא צריך? (הסירו אותן — פחות הרשאות = יותר אבטחה)
- האם יש הרשאות שחסרות ומאטות אותי? (הוסיפו אותן)
- האם ה-deny list מעודכנת? (ודאו שפקודות מסוכנות עדיין חסומות)
בפעם הבאה שאתם פותחים Claude Code, עשו את הצ'קליסט הזה לפני שמתחילים לעבוד:
- תיקייה נכונה? (
! pwd) - Git נקי? (
! git status) - CLAUDE.md מעודכן?
- גרסה עדכנית? (
claude --version) - מודל מתאים למשימה? (
/model) - Effort Level מתאים? (
/effort)
זה לוקח 30 שניות וחוסך שעות.
בסוף יום עבודה, לפני שסוגרים את הסשן, עשו Commit של כל השינויים ובקשו מClaude: "סכם מה עשינו היום ומה הצעד הבא." שמרו את הסיכום. בפעם הבאה שתפתחו סשן — תדביקו את הסיכום ותהיו מיד בהקשר.
מילון מונחים — Troubleshooting
הנה המונחים החשובים שהכרנו בפרק הזה:
| מונח | הסבר |
|---|---|
| /doctor | פקודת בדיקת בריאות מובנית — בודקת Node.js, גרסה, API, הגדרות, CLAUDE.md, ופלאגינים. מציעה פתרונות לבעיות שמצאה |
| /debug | Skill מובנה (Built-in Skill) שקורא את לוגים הדיבאג של הסשן ומנתח מה השתבש — אילו כלים נקראו, אילו שגיאות קרו, ומה הפתרון |
| Context Window | חלון ההקשר — המרחב שמכיל את כל השיחה, הקבצים שנקראו, וההוראות. מוגבל בגודל: 200K טוקנים כברירת מחדל, עד 1M עם Opus 4.6 ב-Max |
| Context Overflow | גלישת הקשר — כשחלון ההקשר מתמלא ומנגנון הדחיסה האוטומטי (Auto-Compaction) מוחק מידע שאתם צריכים. התוצאה: Claude "שוכח" דברים |
| Auto-Compaction | דחיסה אוטומטית — מנגנון שמתעורר ב-80% תפוסת ההקשר ודוחס את השיחה. לא תמיד יודע מה חשוב לכם |
| /compact | דחיסה ידנית — אתם מחליטים מתי לדחוס ומה לשמור. מקבלת הוראות בטקסט חופשי |
| Checkpoint | נקודת שחזור אוטומטית — תצלום מלא של מצב השיחה + הקבצים, נוצר בכל Prompt שאתם שולחים, נשמר 30 יום |
| /rewind | חזרה ל-Checkpoint קודם — מחזיר את השיחה וגם את הקבצים למצב שהיה בנקודת ה-Checkpoint |
| Escape x2 | לחיצה כפולה על Escape — קיצור דרך ל-/rewind שמחזיר ל-Checkpoint האחרון. הדרך המהירה ביותר לבטל שינוי |
| Sandbox | ארגז חול — מנגנון אבטחה ברמת מערכת ההפעלה (Seatbelt ב-macOS, bubblewrap ב-Linux) שמגביל גישה לקבצים ולרשת |
| Rate Limiting | הגבלת קצב — מגבלת השימוש לפי דקה/שעה/יום לפי סוג המנוי. Statusline מראה את חלונות 5-שעות ו-7-ימים |
| Thinking Tokens | טוקנים של חשיבה פנימית — מיוצרים כש-Effort Level גבוה. מתומחרים כ-Output Tokens (יקרים פי 5 מ-Input) |
| --bare | מצב "חשוף" — מפעיל Claude Code בלי Hooks, פלאגינים, Skills, ו-LSP. משמש לבידוד בעיות ול-CI/CD |
| /bug | פקודה לדיווח באג ישירות ל-Anthropic מתוך Claude Code — שולחת לוגים ופרטי סביבה אוטומטית |
| Effort Level | רמת מאמץ — low (עיגול ריק), medium (חצי עיגול), high (עיגול מלא). שולטת בכמה Claude חושב — וכמה זה עולה ולוקח זמן |
| --resume | דגל שמפעיל Claude Code וחוזר לסשן הקודם — מאפשר להמשיך עבודה אחרי שסגרתם את הטרמינל |
Frameworks להחלטות
כשמשהו לא עובד, עברו על השלבים האלה בסדר. עצרו ברגע שפתרתם. אין צורך לעבור על הכול — רק על מה שצריך.
נסו שוב עם Prompt ברור יותר
אם עובד: הבעיה הייתה ניסוח לא מספיק ספציפי. אם לא: המשיכו לשלב 2.
/debug — נתחו מה קרה בפועל
אם מזהה בעיה ומציע פתרון: תקנו לפי ההמלצה. אם לא ברור: המשיכו לשלב 3.
/doctor — בדקו את המערכת כולה
אם מוצא בעיה מערכתית: תקנו (גרסה, חיבור, הגדרות). אם הכול נקי: המשיכו לשלב 4.
/bug — דווחו ל-Anthropic
אם שלושת השלבים הקודמים לא פתרו — זה כנראה באג אמיתי. דווחו עם כל הפרטים: מה עשיתם, מה ציפיתם, מה קרה, ומה ניסיתם.
סיווג מהיר שעוזר לכוון ישירות לפתרון הנכון:
| סימפטום | סוג הבעיה | פתרון ראשון |
|---|---|---|
| Claude "שוכח" דברים, סותר את עצמו | Context Overflow | /context ← /compact עם הנחיות |
| "Permission Denied" או "Can't access" | הרשאות | בדקו Sandbox ← OS ← רשת (בסדר הזה) |
| עלות גבוהה מהצפוי | עלויות | /cost ← /effort ← /model |
| תגובות איטיות, Claude "נתקע" | מהירות | הורידו Effort, Compact, בדקו רשת |
| "Command not found" או קריסה בהפעלה | התקנה | בדקו Node version, npm PATH, /doctor |
| Claude חוזר על אותה טעות | נתקע | מדרגות ה-Reset (מהקל לדרסטי) |
| פלאגין/Skill לא עובד | תצורה | /debug ← claude --bare לבידוד |
חשבון גבוה מהצפוי? עברו על הרשימה הזו בסדר. בדרך כלל אחד משלושת הראשונים הוא הגורם:
- מודל? — האם אתם על Opus? אולי Sonnet מספיק למשימה הזו (ועולה פי 10 פחות)
- Effort? — האם Effort על high? הורידו ל-medium לרוב העבודה (high רק לבעיות באמת מורכבות)
- הקשר? — האם
/contextמראה 70%+? הקשר מלא = כל turn יקר. Compact! - כלים? — האם Agent Tool / Sub-Agents פעילים? כל Sub-Agent = חלון הקשר נפרד = עלות נפרדת
- קריאות? — האם Claude קורא קבצים גדולים שוב ושוב? קראו חלקים ספציפיים (:שורות X-Y)
שגרת עבודה — תחזוקה ומניעה
בנוסף לשגרות מפרקים קודמים (עדכון CLAUDE.md, גיבוי Git, ניהול עלויות) — הנה שגרת תחזוקה מומלצת שמשלבת את כלי ה-Troubleshooting:
| תדירות | מה לעשות | זמן משוער | כלים |
|---|---|---|---|
| בתחילת כל סשן | ודאו: תיקייה נכונה, git status נקי, מודל ו-Effort מתאימים | 30 שניות | ! pwd, ! git status, /effort, /model |
| כל 10-15 turns | בדקו הקשר ועלות. Compact אם מעל 50% | 30 שניות | /context, /cost, /compact |
| כשמשהו לא עובד | עברו על מפל ה-Troubleshooting: Prompt → /debug → /doctor → /bug | 2-5 דקות | /debug, /doctor, /bug |
| לפני ניסויים | Git commit — יצירת נקודת ביטחון מעבר ל-Checkpoints | 15 שניות | ! git add . && git commit |
| בסוף יום עבודה | Commit הכול, בקשו סיכום מClaude, שמרו את הסיכום לסשן הבא | 2 דקות | git commit, שיחה |
| כל שבוע | עדכנו Claude Code, הריצו /doctor, בדקו CLAUDE.md | 5 דקות | npm update, /doctor |
| כל חודש | סקרו הרשאות ב-settings.json. נקו הרשאות מיותרות. בדקו פלאגינים | 10 דקות | settings.json, פלאגינים |
הרגלי תחזוקה הם כמו ביטוח — נראים מיותרים כשהכול עובד, ונזכרים בהם כשכבר מאוחר. 30 שניות של צ'קליסט בתחילת סשן חוסכות שעות של Troubleshooting מאוחר יותר. הפכו את זה לאוטומטי — ברגע שזה הרגל, זה לא לוקח זמן מודע.
תרחיש יומיומי — כל השגרה בפעולה
בוקר — התחלת עבודה
cd ~/project && claude ← פתיחת Claude Code בתיקייה הנכונה. ! git status ← ודאו שהכול נקי. הדביקו סיכום יום אתמול.
אמצע יום — עבודה שוטפת
כל 10-15 turns: /context, /cost. מעל 50%? /compact. לפני ניסוי? ! git commit -m "save point".
בעיה — Troubleshooting
Prompt טוב יותר ← /debug ← /doctor ← /bug. רוב הבעיות נפתרות בשלב 1 או 2.
ערב — סגירת יום
! git add . && git commit -m "end of day". "סכם מה עשינו היום ומה הצעד הבא". שמרו סיכום.
תרגילים מעשיים
הריצו סדרת אבחון מלאה והכירו את הפלט של כל כלי:
- הריצו
/doctor— קראו כל שורה. מה נבדק? מה המצב? האם יש אזהרות? - הריצו
/context— כמה אחוז תפוס? כמה טוקנים בשימוש? - הריצו
/cost— כמה עלה הסשן הנוכחי? - הריצו
claude --version(בטרמינל נפרד) — מה הגרסה? - בדקו
! node --version— האם מעל 18? - הריצו
/debug— מה הלוגים מראים? האם יש משהו חריג? - כתבו סיכום של שורה אחת: "המערכת שלי: Claude Code vX, Node Y, הקשר Z%, עלות $W"
זמן משוער: 5-10 דקות. תוצאה: ידע מלא של מצב המערכת שלכם ושל כל כלי אבחון.
תרגלו מכונת הזמן עם שינויים אמיתיים בקבצים:
- צרו קובץ בדיקה:
! echo "Version 1 - Hello World" > test-rewind.txt - בקשו מClaude: "שנה את הטקסט ב-test-rewind.txt ל-'Version 2 - Updated'"
- ודאו שהשינוי נעשה:
! cat test-rewind.txt - לחצו Escape פעמיים — Checkpoint /rewind מהיר
- בדקו שהקובץ חזר:
! cat test-rewind.txt— צריך להראות "Version 1" - בקשו שינוי נוסף: "שנה ל-'Version 3 - Final'"
- הריצו
/rewindובחרו Checkpoint ספציפי מהרשימה - ודאו שחזרתם —
! cat test-rewind.txt - נקו:
! rm test-rewind.txt
זמן משוער: 10 דקות. תוצאה: ביטחון מלא ב-Checkpoints — Escape x2 ו-/rewind.
הבינו איך גלישת הקשר מרגישה ואיך לפתור אותה:
- בסשן פעיל, בדקו
/context— שמרו את האחוז ההתחלתי - בקשו מClaude לקרוא 3-4 קבצים גדולים ברצף (קבצי קוד, README, הגדרות)
- אחרי כל קריאה, בדקו
/context— צפו באחוז עולה - כשתגיעו ל-40-50%, הריצו:
/compact "preserve: this is a compaction test. Remember: file1 contains X, file2 contains Y" - בדקו
/contextשוב — כמה מקום השתחרר? - שאלו את Claude על אחד הקבצים שקרא — האם הוא זוכר את מה שביקשתם לשמור?
- שאלו על קובץ שלא ביקשתם לשמור — האם הוא זוכר?
זמן משוער: 10-15 דקות. תוצאה: הבנה חווייתית של Context Overflow, Compaction, וההבדל בין compact מכוון לאוטומטי.
תרגלו את כל שש מדרגות ה-Reset בזו אחר זו:
- ניסוח מחדש: שאלו שאלה מעורפלת ("תתקן את הקוד"), ואז נסחו אותה מחדש ספציפית ("תתקן את שורה 45 ב-utils.py — חישוב המע"מ") — ראו את ההבדל בתגובה
- Ctrl+C: בקשו מClaude משימה מורכבת, לחצו Ctrl+C באמצע, ונסו שוב עם ניסוח שונה
- /rewind: לחצו Escape x2 — חזרו ל-Checkpoint. ודאו שהכול חזר
- /compact: הריצו
/compact "preserve: testing reset ladder, step 4"— בדקו כמה מקום השתחרר - סשן חדש: צאו מClaude Code, חזרו עם
claude --resume— ודאו שהסשן חזר - --bare: (בטרמינל נפרד) הפעילו
claude --bareוראו את ההבדל — אין פלאגינים, אין Skills, אין Hooks
זמן משוער: 15 דקות. תוצאה: שליטה מלאה בכל כלי ה-Reset. מוכנים לכל מצב.
שננו את מפל ה-Troubleshooting: (1) Prompt ברור יותר ← (2) /debug ← (3) /doctor ← (4) /bug. ארבעה שלבים שפותרים 95% מהבעיות. בפעם הבאה שמשהו לא עובד — לא צריך לנחש, לא צריך להיכנס ללחץ. פשוט תעברו על הרשימה בסדר. שלב אחרי שלב. רוב הפעמים, שלב 1 או 2 פותר.
בדוק את עצמך — האם עברת את פרק 11?
ענו על 5 השאלות האלה. אם אתם יכולים לענות על 4 מתוך 5 — אתם מוכנים לפרק הבא.
- מה ההבדל בין /doctor ל-/debug — ומתי משתמשים בכל אחד? (רמז: /doctor בודק את המערכת — התקנה, חיבור, הגדרות, גרסאות. /debug מנתח את הסשן — מה קרה, אילו כלים נכשלו, מה השתבש)
- מה שלושת הסוגים של "Permission Denied" ב-Claude Code, ומה הפתרון לכל אחד? (רמז: Sandbox — settings.json allow/deny, מערכת הפעלה — chmod/chown, רשת — allowlist דומיינים)
- איך מזהים גלישת הקשר ומה עושים? (רמז: סימפטומים — שכחה, סתירות, אובדן מיקוד. אבחון: /context. פתרון: /compact עם הנחיות ספציפיות)
- נסח שלוש דרכים לחזור אחורה עם מערכת ה-Checkpoints (רמז: Escape x2 = חזרה מהירה ל-Checkpoint האחרון, /rewind = בחירה מרשימה, --resume = חזרה לסשן שנסגר)
- מהם ארבעת שלבי מפל ה-Troubleshooting, ובאיזה סדר? (רמז: 1. Prompt טוב יותר ← 2. /debug ← 3. /doctor ← 4. /bug)
אם נתקעתם — גללו חזרה לסעיף הרלוונטי. אין בושה בלקרוא שוב. הנקודה היא להבין, לא לזכור.
צ'קליסט — סיכום פרק 11
- אני יודע להריץ
/doctorלבדיקת בריאות מלאה של המערכת - אני יודע להריץ
/debugכשClaude מתנהג באופן בלתי צפוי - אני מבין את ההבדל בין /doctor (בדיקת מערכת) ל-/debug (ניתוח סשן)
- אני מזהה סימפטומים של גלישת הקשר (Context Overflow)
- אני יודע לעשות
/compactידני עם הוראות ספציפיות - אני עוקב אחרי
/contextועושה Compact ב-50-60% - אני מזהה את שלושת סוגי ה-Permission Denied ויודע לפתור כל אחד
- אני עוקב אחרי עלויות עם
/costויודע לשלוט ב-Effort ו-Model - אני יודע להשתמש ב-Checkpoints — Escape x2 ו-
/rewind - אני מכיר את שש מדרגות ה-Reset — מניסוח מחדש ועד
--bare - אני יודע לדווח באג עם
/bugולחפש עזרה בערוצים הנכונים - אני עושה git commit לפני ניסויים
- אני מעדכן Claude Code כל שבוע ומריץ
/doctorאחרי עדכון - אני סוקר הרשאות ב-settings.json אחת לחודש
- אני זוכר את מפל ה-Troubleshooting: Prompt ← /debug ← /doctor ← /bug
סיכום הפרק
פתרון בעיות ב-Claude Code הוא לא אמנות — הוא מדע. התובנה המרכזית של הפרק הזה: 95% מהבעיות נובעות מ-5 סיבות בלבד, וכל אחת מהן ניתנת לאבחון שיטתי עם הכלים הנכונים. "מפל ה-Troubleshooting" (Prompt טוב יותר ← /debug ← /doctor ← /bug) הוא המפתח — ארבעה שלבים פשוטים שהופכים את הכאוס לסדר. בשילוב עם מערכת ה-Checkpoints שנותנת חופש מלא לנסות (ולחזור), ושגרת מניעה של 30 שניות ליום — אתם עוברים מ"למה זה לא עובד?!" ל"אני יודע בדיוק מה לעשות".
בפרק הבא נעבור לאבטחה ופרטיות — נלמד איך לוודא שהעבודה עם Claude Code בטוחה, שנתונים רגישים מוגנים, ושאתם מוכנים לעבודה מקצועית על פרויקטים אמיתיים.