חזרה
    מדריכים מעשיים
    Claude Code

    Claude Code Mods: המדריך לבניית מודים בלי לכתוב קוד

    רועי טל
    פורסם: 13.10.2026
    12 דקות קריאה
    האזינו לפוסטקריינות AI · 17 דק'
    0:00 / 16:37
    Claude Code Mods: המדריך לבניית מודים בלי לכתוב קוד

    מודים (Mods) הם הדרך לשנות את Claude Code עצמו. מוד יכול להוסיף לו חלונית בצד השיחה, פס מידע מעל שורת ההקלדה או פקודה חדשה. הוא יכול גם לעצור או לשנות פעולה רגע לפני ש-Claude מבצע אותה. לא צריך לכתוב קוד: מתארים ל-Claude מה רוצים והוא בונה את המוד, בודק אותו ומפעיל אותו באותה שיחה.

    בניתי ככה שלושה מודים, בטרמינל ובאפליקציה של Claude: פס שמראה כמה ניצלתי מהמכסה של המנוי, מוד שמסתיר מפתחות API לפני ש-Claude רואה אותם ופקודה שפותחת סיכום של הסשן בחלונית צד.

    מה זה מוד ב-Claude Code? מוד הוא תוסף (Plugin) של Claude Code שיש בו קובץ קוד קטן. הקוד רץ בתוך Claude Code ומגיב לדברים שקורים בו: Claude עומד להשתמש בכלי, נשלחת בקשה, חלק מהמסך מצויר. כך המוד יכול לצייר ממשק משלו, לשנות פעולה או לעצור אותה. Anthropic השיקה את המודים ב-1 באוקטובר 2026. הם עובדים ב-Claude Code בטרמינל ובלשונית Code של אפליקציית Claude.

    איך מוד עובד?

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

    המחשהשלושה מודים שמחוברים לאותו אירוע, קריאה של Claude לכלי. היומן והשומר הם דוגמאות. hide-keys הוא המוד שבניתי בהמשך המדריך.

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

    ל-Claude Code כבר היו Hooks, פקודות או סקריפטים שרצים כשאירוע קורה. Hook יכול לעצור קריאה לכלי או לשנות את הקלט והפלט שלה, אבל הוא רץ מחוץ ל-Claude Code. מוד רץ בתוכו. לכן הוא יכול גם לצייר ממשק, להריץ קוד משלו כשמקלידים פקודה ולהחליף חלקים ש-Claude Code מצייר בעצמו. גם חלק מהדברים ש-Claude Code עושה בעצמו בנויים היום כמודים, למשל הפקודה /diff.

    איפה מודים עובדים?

    איפה עובדיםהקוד של המוד רץמה שהמוד מצייר מופיע
    Claude Code בטרמינל, גם בטרמינל שבתוך עורך קודכןכן
    לשונית Code באפליקציית Claude, חוץ מסשן WSLכןכן
    חלונית הצ'אט של התוסף ל-VS Codeכןלא
    claude -p ו-Agent SDKכןלא
    סשנים בענןחלקיתלא

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

    איך בונים מוד בלי לכתוב קוד?

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

    מתארים את המוד במילים שלכם

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

    הבקשה שכתבתי

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

    לשונית Code באפליקציית Claude: הבקשה לבנות מוד שמוסיף פקודה /summary ומתחתיה Claude טוען את הסקיל plugin-authoring וקורא את הגדרות הממשק.
    צילום מסךהבקשה בלשונית Code ומה Claude עשה מיד אחריה.
    1. הבקשה, בעברית רגילה.
    2. Claude טוען לבד את הסקיל לבניית מודים.
    3. הוא קורא את הגדרות הממשק של הגרסה שמותקנת אצלכם, כך שהוא בונה לפיהן ולא לפי מה שהוא זוכר.

    מאשרים את הקבצים ואת הטעינה

    Claude כותב את המוד לתיקייה של השיחה, בתוך ~/.claude/dev-mods. במצב Manual מאשרים כל קובץ. כשהקובץ הראשון נשמר, Claude Code שואל אם להפעיל hot reloading לשיחה הזו. בוחרים Enable for this session (1). מעכשיו המוד נטען בסוף התור. כל שינוי בו נטען מחדש בסוף התור שבו נעשה.

    השאלה Enable hot reloading for this session עם ארבע אפשרויות ומתחתיה פס מכסה ירוק של מוד אחר שכבר פעיל.
    צילום מסךהשאלה מופיעה מעל שורת ההקלדה בזמן ש-Claude עוד כותב את הקבצים.
    1. Enable for this session מפעיל את המוד בסוף התור. Not now משאיר את הקבצים במקום. המוד ייטען רק בפעם הבאה שהשיחה תיפתח.
    2. פס המכסה של usage-band, מוד שכבר מותקן בפרויקט.

    בודקים ומבקשים תיקונים

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

    מה עושים כשמוד לא נטען

    Claude Code כותב בשיחה שורה עמומה עם שם המוד והסיבה (1). מעתיקים אותה ל-Claude ומבקשים תיקון. זה קורה בעיקר בשיחה שבה Claude לא יכול להריץ פקודות, כי אז הוא לא בודק את המוד לפני שהוא מסיים.

    שורה עמומה בטרמינל: usage-band: hooks module did not load, עם מספר השורה והסיבה.
    צילום מסךהשורה שמסבירה למה המוד לא נטען. מתחתיה רואים שהמוד נטען בלי הקוד שלו.
    הבקשה ששלחתי

    המוד לא נטען, זו השורה שהופיעה: $ is passed to "refresh", which is not a function declared at the top of this file. תתקן.

    אם המוד נטען ועדיין לא מצייר כלום, הסיבה מופיעה ביומן של claude --debug. זכרו גם שבחלונית הצ'אט של התוסף ל-VS Code מודים לא מציירים בכלל.

    שלושה מודים שבניתי

    פס מכסה מעל שורת ההקלדה

    usage-bandמחובר ל: תחילת הסשן, סוף כל תור וציור הפס

    כמה ניצלתי מחלון 5 השעות ומהמכסה השבועית, בלי להקליד /usage. הפס מתעדכן אחרי כל תשובה ומראה מתי כל מכסה מתאפסת. הוא ירוק עד 50%, צהוב עד 80% ואדום מעל זה. באפליקציה הוא נראה כמו בצילום הקודם. בטרמינל, כך:

    הבקשה שכתבתי

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

    פס מעל שורת ההקלדה בטרמינל: 5h 5% עם שעת איפוס, Week 12% עם יום ושעת איפוס.
    צילום מסךהפס בטרמינל, מתחת לשורה שמאשרת שהמוד נטען.

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

    הסתרת מפתחות API מפלט של כלים

    hide-keysמחובר ל: כל קריאה לכלי

    בתיקייה של הפרויקט יש קובץ .env עם מפתח לשירות המיילים. המוד בודק כל פלט שחוזר מכלי. אם יש בו מפתח, טוקן או ערך מקובץ env, הוא מחליף אותו ב-[hidden] לפני ש-Claude רואה את הפלט.

    הבקשה שכתבתי

    עכשיו מוד נוסף בשם hide-keys: כשכלי מחזיר פלט, למשל קריאת קובץ או חיפוש בקבצים וכתוב בו מפתח API, טוקן או ערך סודי מקובץ env, המוד מחליף אותו ב-[hidden] לפני שהפלט מגיע אליך. ככה המפתחות שלי לא נכנסים לשיחה. בכל פעם שהוא מסתיר משהו תקפיץ לי הודעה קצרה באנגלית עם מספר הפריטים שהוסתרו.

    Claude עונה שהקובץ מכיל שלושה משתנים אבל הערכים מוצגים לו כ-hidden. בפינה הודעה של hide-keys: Hid 3 secrets from Read output.
    צילום מסךלמעלה התשובה של Claude אחרי שביקשתי לקרוא את הקובץ, למטה ההודעה שקפצה בפינת האפליקציה כשהקובץ נקרא.
    1. Claude רואה את שמות המשתנים, אבל במקום הערכים מגיע אליו [hidden].
    2. ההודעה שהמוד מקפיץ בכל הסתרה.

    המוד הוא רשת ביטחון. הוא מזהה מפתחות לפי הצורה והשם שלהם. ערך סודי בשם תמים יכול לעבור, למשל כשהקובץ נקרא בפקודת מסוף ולא בכלי הקריאה. כלל deny בהגדרות, כמו Read(./.env), חוסם את כלי הקריאה של Claude ופקודות כמו cat. חסימה מלאה, גם מסקריפטים, דורשת את ה-sandbox של Claude Code.

    סיכום הסשן בחלונית צד

    recapמחובר ל: הפקודה /summary, תחילת הסשן וציור החלונית

    מקלידים /summary ונפתחת חלונית עם מה שנעשה בשיחה, אילו קבצים שונו ונקראו, מה הוחלט ומה עוד פתוח. הסיכום לא נכנס לשיחה: המוד שואל את המודל שאלת צד על התמליל ומציג את התשובה בחלונית. הכפתור רענון (1) מכין סיכום חדש. כל רענון הוא קריאה למודל. לכן הוא נספר במכסה.

    החלק "מה עוד פתוח" (2) שימושי במיוחד. הוא אוסף הערות ש-Claude כתב באמצע העבודה ושקל לפספס בגלילה.

    הבקשה למוד הזה היא הדוגמה משלב 1.

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

    איך שומרים מוד לשיחות הבאות?

    מוד ש-Claude בנה נטען רק בשיחה שבה נבנה. אחרי תקופה Claude Code גם מוחק את התיקייה שלו (לפי ההגדרה cleanupPeriodDays). כדי לשמור אותו, מעתיקים את תיקיית המוד מ-~/.claude/dev-mods/<מזהה השיחה>/ לתיקייה קבועה. אני העתקתי את שלושת המודים ל-C:\work\mods, הוספתי לידם קובץ .claude-plugin/marketplace.json קצר שמפרט אותם והתקנתי אותם לפרויקט:

    Terminal
    claude plugin marketplace add C:\work\mods --scope project
    claude plugin install usage-band@my-mods --scope project
    claude plugin install hide-keys@my-mods --scope project
    claude plugin install recap@my-mods --scope project

    ההתקנה עם --scope project רושמת את המודים בהגדרות של הפרויקט. לכן הם נטענים בכל שיחה בתיקייה הזו (בטרמינל ובאפליקציה) ולא בפרויקטים אחרים. כדי שייטענו בכל מקום משתמשים ב---scope user. אם הפרויקט משותף ב-git והמודים בתיקייה מקומית, --scope local רושם אותם רק אצלכם. לניסיון חד-פעמי מספיק claude --plugin-dir ואחריו הנתיב לתיקיית המוד. כשמתקינים בטרמינל בזמן ששיחה פתוחה, מקלידים בה /reload-plugins כדי שהמוד ייטען. באפליקציה הפקודה /plugin install לא זמינה. שם מתקינים מהכפתור + שליד שורת ההקלדה, דרך Plugins ואז Add plugin.

    המסך /plugin בטרמינל, בלשונית Installed: השורה 3 mods active עם שמות המודים ומתחתיה קבוצת Project עם שלושת המודים מ-my-mods.
    צילום מסךבלשונית Installed של /plugin רואים מה פעיל ומאיפה הותקן.
    1. השורה שמונה את המודים שפעילים בשיחה.
    2. ההיקף שבו הם הותקנו, כאן הפרויקט.

    כדי לשתף מוד, מעלים את התיקייה למאגר ב-GitHub עם קובץ ה-marketplace. מי שרוצה להשתמש בו מוסיף את המאגר עם /plugin marketplace add ומתקין עם /plugin install. אפשר גם להגיש אותו לספריית התוספים של Claude.

    איך מכבים מוד?

    • מוד אחד: ב-/plugin, בלשונית Installed, מכבים אותו או מסירים. באפליקציה עושים את זה מהכפתור + שליד שורת ההקלדה, דרך Plugins ואז Manage plugins.
    • כל המודים שהתקנתם, לשיחה אחת: מפעילים את Claude Code עם claude --safe-mode. זה מכבה גם התאמות אישיות אחרות.
    • כל המודים שהתקנתם, בכל השיחות: מוסיפים "disableAllHooks": true לקובץ ~/.claude/settings.json. זה עוצר גם Hooks רגילים ושורת סטטוס מותאמת.

    --safe-mode ו-disableAllHooks לא עוצרים את המודים המובנים של Claude Code. אותם מכבים אחד אחד ב-/plugin, חוץ מ-sec-default שאי אפשר לכבות.

    מה בודקים לפני שמתקינים מוד של מישהו אחר?

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

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

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

    רואים מה מוד עושה בלי להריץ אותו

    הפקודה claude plugin validate קוראת את הקוד של מוד בלי להריץ אותו. היא מפרטת לאילו אירועים הוא מחובר ומה הוא מבקש מ-Claude Code לעשות. מורידים את התיקייה של המוד (למשל עם git clone) ומריצים עליה:

    Terminal
    claude plugin validate ./hide-keys
    פלט של claude plugin validate על hide-keys: שורת hooks עם tool.call, שורת gating hook without .catch ושורת calls עם $.ui.toast.
    צילום מסךהבדיקה על hide-keys, המוד שמסתיר מפתחות.

    בשורה hooks רואים שהמוד מחובר רק לקריאות לכלים. השורה calls מראה שכל מה שהוא מבקש מ-Claude Code הוא להקפיץ הודעה, בלי גישה לקבצים, לרשת או לתהליכים. מוד שמבקש יותר יפרט את זה כאן. השורה האמצעית מסמנת hook שיכול לעצור או לשנות פעולה ואין לו .catch. לפי התיעוד, אם hook כזה נופל אחרי שהכלי רץ, התוצאה המקורית ממשיכה הלאה. אצל hide-keys זה אומר שהמפתח יגיע ל-Claude. לכן כדאי לבקש מ-Claude להוסיף .catch שעונה במקום ה-hook כשהוא נופל.

    בתוכניות Team ו-Enterprise ובכל מחשב עם הגדרות מנוהלות, Claude Code טוען מוד מובנה בשם sec-default לפני כל מוד שהמשתמש התקין. הוא לא נותן למוד לאשר פעולה שכלל deny דוחה ולא לשנות את מה שהארגון מנהל. מנהלים יכולים לטעון לפניו מודים משלהם ולקבוע מאילו מאגרים מותר להתקין תוספים.

    מודים מוכנים להתחלה

    Anthropic מפרסמת שלושה מודים לדוגמה במאגר claude-code-playground, כל אחד עם הסבר איך נבנה. הם משותפים כמו שהם, בלי תמיכה:

    • token-weatherתחזית מזג אוויר לחלון ההקשר מעל שורת ההקלדה, עם גרף קטן של התורים האחרונים.
    • blast-radiusעוצר פקודה מסוכנת כמו rm -rf או force push, מראה מה היא תשנה ומחכה ל-Proceed או ל-Cancel.
    • replay-theaterפקודה /replay שעוברת על העריכות שנעשו בתור האחרון, אחת אחת.
    Terminal
    git clone https://github.com/anthropics/claude-code-playground.git
    cd claude-code-playground/claude-code/mods
    claude --plugin-dir ./token-weather

    גם בתוך Claude Code יש מודים מובנים. הם רשומים ב-/plugin תחת Built-in. בין השאר: הפקודה /diff, הטעינה של קובצי AGENTS.md והסקיל לבניית מודים. אחד מהם כבוי כברירת מחדל ושווה להכיר: cc-plugin-you-should-know, סוכן צד שעוקב אחרי משימות ארוכות ומציג מעל שורת ההקלדה הערה כשיש משהו שכדאי לדעת. אם הוא זמין בחשבון שלכם, מפעילים אותו עם /plugin enable cc-plugin-you-should-know@builtin.

    מוד, Hook, סקיל או MCP: מה מתאים לכם?

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

    מה זהמצייר בממשקמתי בוחרים בו
    מודקוד שרץ בתוך Claude Code ומגיב לאירועיםכןכשרוצים חלונית, פס, פקודה משלכם או לשנות פעולה בדרך
    Hook בהגדרותפקודה, בקשת HTTP או פרומפט שרצים כשאירוע קורהלאכשרוצים לחסום, לאשר או לרשום פעולה עם סקריפט שכבר יש לכם
    סקילקובץ הוראות ש-Claude קוראלאכשמדביקים שוב ושוב את אותן הוראות
    שרת MCPשירות חיצוני שנותן ל-Claude כליםלאכש-Claude צריך גישה למערכת אחרת (המדריך לחיבור)

    שאלות נפוצות

    מה ההבדל בין מוד ל-Hook?

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

    צריך לדעת לתכנת כדי לבנות מוד?

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

    מודים עובדים באפליקציה של Claude?

    כן, בלשונית Code, מגרסה 2.1.286 של Claude Code שבתוך האפליקציה. אפשר לבקש שם מוד באותה דרך. מוד שהותקן לפרויקט או למשתמש נטען גם בשיחות של האפליקציה. באפליקציה מתקינים תוספים מהכפתור + שליד שורת ההקלדה, דרך Plugins ואז Add plugin. בסשן WSL מודים לא רצים.

    מוד יכול להזיק למחשב?

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

    איך מכבים מוד?

    מוד אחד מכבים ב-/plugin, בלשונית Installed. באפליקציה: הכפתור +, Plugins ואז Manage plugins. לשיחה אחת בלי המודים שהתקנתם מפעילים claude --safe-mode. כדי לכבות אותם בכל השיחות מוסיפים "disableAllHooks": true לקובץ ההגדרות.

    למה המוד שלי לא מופיע?

    בודקים קודם את הגרסה (2.1.287 בטרמינל), שהתיקייה מסומנת כתיקייה שסומכים עליה ושבחרתם Enable for this session. אם מוד שבניתם בשיחה לא נטען, Claude Code כותב בה שורה עמומה עם הסיבה. מוד שהותקן מ-marketplace מדווח על כשל רק ביומן של claude --debug. בחלונית הצ'אט של התוסף ל-VS Code מודים לא מציירים בכלל.

    המקורות הרשמיים

    הירשמו לעדכונים במייל

    רוצים להישאר צעד אחד קדימה?

    עדכונים על כלי AI, מדריכים וטיפים - ישר למייל. בלי ספאם.

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