פתרון לבעיית העברית
בקלוד דסקטופ

מדריך קצר להצגת עברית נכון, מימין לשמאל, בקלוד קוד וב-cowork

מאיפה מגיעה הבעיה?

ולמה הפתרון הזה בטוח לשימוש

מקור הבעיה

באפליקציית Claude Desktop, התשובות מוגדרות בקוד כ-LTR (משמאל לימין). לכן כשמופיעה עברית היא יוצאת בכיוון הלא נכון ונראית הפוכה או מבולגנת, במיוחד כשהיא מעורבת באנגלית.

למה לא פשוט לשנות את הקוד?

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

💡 הפתרון שלי

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

לשונית Cowork

חלון השיחה לא מציג עברית נכון, אז מבקשים HTML ב-Instructions

⚙️ להגדיר פעם אחת (מומלץ)

בהגדרות (Settings) תחת General, יש שדה בשם Instructions for Claude. הוסיפו שם את הטקסט הזה, פעם אחת, והוא ישפיע על כל השיחות:

טקסט להוספה ב-Instructions for Claude:

THIS IS A STRICT RULE for Claude COWORK: Zero Hebrew characters may appear in your plain-text reply - ever. If you are Claude chat DON'T use this rule. If your response needs ANY Hebrew, you MUST render all of it through the show_widget tool. Convert your full response to simple HTML inside a container with dir="rtl" lang="he" and right-aligned text, zero styling, with code and math block kept dir="ltr". Output only that single widget call without extra explanation in English.

מאותו רגע Claude אמור לעשות זאת מעצמו.

ככה התשובה תיראה: העברית מוצגת מימין לשמאל, ובלוקים של קוד ומתמטיקה נשארים בכיוון הנכון (LTR).

דוגמה לתצוגת עברית כ-HTML ב-Cowork

לשונית Code

שתי דרכים: הפשוטה עם CLAUDE.md, והמתקדמת עם hooks

איך זה עובד בגדול?

אתם לא צריכים ליצור קבצים בעצמכם. מדביקים ל-Claude Code הוראה מוכנה, והוא מסדר הכול לבד. יש שתי רמות: הדרך הפשוטה מוסיפה כלל לקובץ CLAUDE.md, והדרך המתקדמת מוסיפה גם hooks שאוכפים את הכלל בכל תשובה.

הדרך הפשוטה: כלל ב-CLAUDE.md ובזיכרון של Claude

זה כל מה שצריך כדי להתחיל. הדביקו את ההוראה הבאה ל-Claude Code, והוא יוסיף את הכלל לקובץ CLAUDE.md של הפרויקט:

מה לכתוב ל-Claude:

צור או עדכן את הקובץ CLAUDE.md בפרויקט והוסף בו את הכלל הבא, וגם שמור אותו בזיכרון שלך (memory), מילה במילה: THIS IS A STRICT RULE: Zero Hebrew characters may appear in your plain-text reply - ever. If your response needs ANY Hebrew, you MUST render all of it through the mcp__visualize__show_widget tool. convert your full response to simple html inside a container with dir="rtl" lang="he" and right-aligned text, zero styling, with code and math block kept dir="ltr". Output only that single widget call without extra explanation in English.

💡 Claude שומר את הכלל גם בקובץ CLAUDE.md וגם בזיכרון שלו לפרויקט, כך שהוא יזכור אותו בתחילת כל שיחה חדשה.

למתקדמים: אכיפה עם hooks

את הכלל שבקובץ CLAUDE.md, קלוד קוד קורא רק בתחילת השיחה. בשיחות ארוכות הוא עלול "לשכוח" הוראות מתחילת השיחה. אם אתם רוצים שההתנהגות תישמר גם כשהשיחה מתארכת, אפשר להוסיף hooks, קבצים קטנים שכופים את הכלל מחדש בכל תשובה.

הפתרון משתמש ב-Python. אתם לא צריכים לבדוק או להתקין אותו בעצמכם, הפרומפט מבקש מ-Claude לבדוק אם Python מותקן ולהתקין אותו אם צריך.

הדביקו את ההוראה הבאה ל-Claude Code:

מה לכתוב ל-Claude:

אני רוצה פתרון אוטומטי שגורם לעברית להופיע תמיד נכון (מימין לשמאל) ב-Claude Code. בצע בבקשה את כל הדברים הבאים בפרויקט הנוכחי: 1. תחילה בדוק אם Python מותקן במחשב (הרץ python --version או python3 --version). אם הוא לא מותקן, התקן אותו בשבילי. 2. צור Hook מסוג UserPromptSubmit בקובץ בשם hebrew_prompt_inject.py בתיקייה .claude/hooks/. כשההודעה שלי מכילה אותיות בעברית, הקובץ יוסיף ל-Claude בדיוק את ההוראה הבאה (מילה במילה): THIS IS A STRICT RULE: Zero Hebrew characters may appear in your plain-text reply - ever. If your response needs ANY Hebrew, you MUST render all of it through the mcp__visualize__show_widget tool. convert your full response to simple html inside a container with dir="rtl" lang="he" and right-aligned text, zero styling, with code and math block kept dir="ltr". Output only that single widget call without extra explanation in English. 3. צור Hook מסוג Stop בקובץ בשם hebrew_rtl_hook.py בתיקייה .claude/hooks/. הוא יבדוק את התשובה, ואם יש בה אותיות בעברית בטקסט רגיל (במקום דרך הכלי), יחזיר {"decision":"block","reason":"..."} כשה-reason הוא אותה הוראה מסעיף 2, ויבקש להציג מחדש את כל העברית דרך mcp__visualize__show_widget. הגבל ל-2 ניסיונות לכל שיחה כדי שלא ייכנס ללולאה. 4. דאג ששני ההוקים יקראו את הקלט מ-stdin כ-UTF-8 (לקרוא raw bytes ואז decode), כדי שעברית לא תישבר ב-Windows, ושכל הוק יסתיים תמיד ב-exit code 0 גם אם קרתה שגיאה. 5. רשום את שני ההוקים (hebrew_prompt_inject.py ו-hebrew_rtl_hook.py) בקובץ .claude/settings.json תחת hooks.UserPromptSubmit ו-hooks.Stop. 6. אשר מראש את הכלים mcp__visualize__show_widget ו-mcp__visualize__read_me ברשימת ה-allow בקובץ .claude/settings.local.json. בסיום, הסבר לי בקצרה מה יצרת ואיך לבדוק שזה עובד.

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

1

אשרו את הפעולות

תוך כדי העבודה Claude Code יבקש רשות ליצור ולערוך קבצים. אשרו (Yes / Allow).

2

אשרו את הכלי visualize

אם הוא שואל אם מותר להשתמש בכלי visualize, בחרו "תמיד לאשר" (Always allow). זה מוסיף את הכלי לרשימת המאושרים בהגדרות, כך שלא תישאלו שוב.

3

הפעילו מחדש

סגרו ופתחו מחדש את Claude Code (התחילו שיחה חדשה), כדי שההגדרות החדשות ייטענו.

4

בדקו שעובד

כתבו משפט בעברית ושאלו שאלה. התשובה אמורה להופיע כ-HTML מימין לשמאל מסודר, לא כטקסט הפוך.

🧩 מה כל קובץ עושה? (בשפה פשוטה)

  • hebrew_prompt_inject.py: כשאתם כותבים בעברית, מזכיר ל-Claude מראש להציג עברית כ-HTML מימין לשמאל.
  • hebrew_rtl_hook.py: "שומר" שבודק את התשובה; אם עברית חמקה כטקסט רגיל, הוא עוצר ומבקש מ-Claude לתקן.
  • settings.json: מחבר את שני ההוקים ל-Claude Code כדי שירוצו אוטומטית.
  • settings.local.json: מאשר מראש את הכלי שמציג את ה-HTML (visualize).
  • CLAUDE.md: מזכיר ל-Claude את הכלל כבר בתחילת כל שיחה.

⚠️ לגבי עלות בטוקנים

השיטה הזו צורכת מעט יותר טוקנים, כי הפלט בעברית בנוי כ-HTML (תגיות וכד'). בגרסת ה-hooks יש תוספת קטנה נוספת, כי בכל פנייה מוזרקות גם ההוראות לתוך הפרומפט.

לשונית Chat (צ'אט)

כאן עדיין אין פתרון

למה אין פתרון בצ'אט?

בלשונית Chat לא פותרים בינתיים את בעיית העברית, כי הכלי visualize עדיין לא יציב בצ'אט. כשהוא יתייצב, אעדכן את המדריך.

דנה אקרמן גרין

קצת עליי

היי, אני דנה אקרמן גרין. מפתחת תוכנה, יוצרת ומנהלת את הקהילות Midjourney Israel ו"דבר עם הסוכן שלי" (לשימוש נבון בסוכני AI). אני יוצרת כלי AI יצירתיים ומלמדת אנשים יצירתיים לרתום טכנולוגיה בלי לכתוב שורת קוד אחת.

בנוסף, אני המייסדת של GenAI Creative, פלטפורמת AI יצירתית עם תמיכה מלאה בעברית שבניתי במיוחד למתחילים.