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

תיעוד 67

יצירת תוסף של Claude Code

בנו את תוסף Claude Code הראשון שלכם מתיקייה ריקה, בדקו אותו בלי marketplace, והמירו הגדרת .claude/ קיימת.

תוסף הוא תיקייה של skills, agents, hooks ושרתי MCP, ובנוסף קובץ plugin.json, שנקרא המניפסט, שנותן שם לתוסף. Claude Code טוען את התיקייה כיחידה אחת, כך שאפשר לשתף אותה עם חברי צוות, להתקין אותה בכמה פרויקטים, או לפרסם אותה ב-marketplace.

הדף הזה מיועד לאנשים שכותבים תוספים משלהם.

הערה

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

התחילו מהסעיף שמתאים למה שכבר יש לכם:

#החלטה מתי להשתמש בתוסף

skills, agents, hooks ושרתי MCP עובדים גם בנפרד בפרויקט או בתיקיית הבית. השאירו את ההגדרה הנפרדת הזו כל עוד היא משרתת פרויקט אחד או רק אתכם. צרו תוסף כשרוצים לשתף את ההגדרה עם חברי צוות, להתקין אותה בכמה פרויקטים, או לפרסם מהדורות עם גרסאות.

כשמעבירים skills, agents, hooks והגדרת MCP נפרדים לתוך תוסף, המיקום והשמות שלהם משתנים:

  • לאן הקבצים עוברים: תחת התיקייה של התוסף עצמו, שנקראת שורש התוסף, בתור skills/, agents/, hooks/hooks.json ו-.mcp.json.
  • איך קוראים להם: ל-skills ול-agents של תוסף מתווסף שם התוסף כקידומת, למשל /my-plugin:hello, כך ששני תוספים יכולים כל אחד לספק skill בשם hello בלי התנגשות.

כדי להעביר הגדרה קיימת לתוך תוסף, ראו המרת הגדרת .claude/ קיימת.

#יצירת התוסף הראשון

במדריך הזה יוצרים תוסף שהרכיב היחיד שלו הוא skill אחד, ברכה, ומריצים אותו עם --plugin-dir, שטוען תוסף לסשן אחד בלי להתקין אותו. תוסף יכול להכיל כל שילוב של רכיבים, כמו skills, agents, hooks ושרתי MCP, ואף אחד מהם אינו חובה. skill אחד הוא הדוגמה הקטנה ביותר שמראה את המבנה.

צריך ש-Claude Code יהיה מותקן ושאתם מחוברים.

פתחו מסוף בתיקייה שבה רוצים לשמור את התוסף, למשל ~/projects, והריצו ממנה את הפקודות בשלבים האלה. אפשר לשמור תוסף בכל מקום, כי מעבירים את הנתיב שלו ל-Claude Code כשמתחילים סשן.

1. יצירת תיקיית התוסף

צרו את תיקיית התוסף, עם תיקיית .claude-plugin/ בתוכה כדי להחזיק את המניפסט:

mkdir -p my-first-plugin/.claude-plugin

2. כתיבת המניפסט

המניפסט הוא קובץ JSON בשם plugin.json שאומר ל-Claude Code את שם התוסף ומתאר אותו. שמרו את זה בתור my-first-plugin/.claude-plugin/plugin.json:

{
  "name": "my-first-plugin",
  "description": "A greeting plugin to learn the basics",
  "version": "1.0.0",
  "author": {
    "name": "Your Name"
  }
}

ארבעת השדות עושים את זה:

  • name: חובה. הוא מזהה את התוסף והופך לקידומת של כל skill וכל agent שהתוסף מספק. אל תכניסו בו רווחים.
  • description: הטקסט שמשתמשים רואים עבור התוסף ב-/plugin.
  • version: אופציונלי. קביעת הערך משאירה את המשתמשים על הגרסה הזו עד שמשנים אותה. שחרור גרסה חדשה מסביר מתי לקבוע אותו ומתי להשמיט אותו.
  • author: למי לייחס קרדיט. name חובה בתוכו. email ו-url אופציונליים.

כל שדה אחר נמצא בהפניה למניפסט.

רק plugin.json נכנס לתוך .claude-plugin/. ה-skill שמוסיפים בשלב הבא נמצא ישירות תחת my-first-plugin/, ליד התיקייה הזו.

3. הוספת skill

הרכיב האחד של התוסף הזה הוא skill. כל skill הוא תיקייה תחת skills/ שמכילה קובץ SKILL.md. צרו את תיקיית ה-skill:

mkdir -p my-first-plugin/skills/hello

אחר כך צרו את my-first-plugin/skills/hello/SKILL.md עם התוכן הזה:

---
name: hello
description: Greet the user with a friendly message
disable-model-invocation: true
---

Greet the user warmly and ask how you can help them today.

השורה disable-model-invocation: true אומרת ש-Claude לא מריץ את ה-skill בעצמו. הסירו את השורה הזו מ-skill שרוצים ש-Claude יריץ בעצמו. הפקודה של ה-skill משלבת את שם התוסף ואת שם ה-skill, ולכן מריצים את זה בתור /my-first-plugin:hello. לשאר שדות ה-frontmatter, ראו את הפניה ל-frontmatter של skill.

4. אימות התוסף

בדקו את המניפסט ואת ה-frontmatter של ה-skill לפני שמריצים משהו:

claude plugin validate ./my-first-plugin

הפקודה מדפיסה את נתיב המניפסט שבדקה ואת ✔ Validation passed. אם היא מדפיסה במקום זאת ✘ Validation failed, כל שורה מעל שורת התוצאה הזו מציינת את השדה שצריך לתקן. חפשו כל הודעה תחת claude plugin validate מדווח על שגיאות.

5. הרצת Claude Code עם התוסף

התחילו סשן עם התוסף טעון:

claude --plugin-dir ./my-first-plugin

אחרי ש-Claude Code עולה, הריצו את ה-skill:

/my-first-plugin:hello

Claude עונה בברכה.

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

כדי ש-Claude יבנה שלד ויבדוק יחד אתכם תוסף גדול יותר, התקינו את תוסף plugin-dev של Anthropic מ-marketplace בשם claude-plugins-official, שמוסיף skills ו-agents לכתיבת רכיבים כמו skills, hooks ושרתי MCP ולאימות התוסף המוגמר. אחרי שהוא מותקן, הריצו את /plugin-dev:create-plugin ואחריו תיאור של התוסף שרוצים, ו-Claude מוביל אתכם דרך העיצוב, היצירה והאימות שלו.

#שיתוף התוסף

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

  • שליחה ישירה לכמה אנשים: תנו להם את תיקיית התוסף או קובץ .zip שלה, ואין צורך לפרסם כלום. ראו שיתוף תוסף בלי marketplace.
  • רישום שלו ב-marketplace שלכם: חברי הצוות מוסיפים את ה-marketplace שלכם פעם אחת ומתקינים את התוסף לפי שם, והם מקבלים את העדכונים שלכם. ראו פרסום דרך marketplace משלכם.
  • הגשה לספרייה של Anthropic: אחרי שהוא עובר ביקורת, אנשים יכולים להוסיף אותו ב-claude.ai וב-Cowork, והוא מגיע ל-Claude Code דרך החשבון שלהם. ראו הגשה לספרייה של Anthropic.

#מבנה התוסף

כל סוג של רכיב, כמו skills, agents, hooks ושרתי MCP, נכנס לתיקייה קבועה תחת שורש התוסף, שהיא התיקייה שמעבירים ל---plugin-dir. הוסיפו רק את התיקיות שבהן אתם משתמשים. כדי לעבור בלחיצות על תיקיית תוסף מלאה ולקרוא מה כל קובץ עושה, פתחו את סייר התוספים.

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

מיקוםתוכן
.claude-plugin/plugin.jsonהמניפסט. כשטוענים תוסף עם --plugin-dir ואין לו מניפסט, Claude Code נותן לתוסף את שם התיקייה שלו
skills/תיקיית <name>/SKILL.md אחת לכל skill
commands/קבצי Markdown שטוחים, הצורה הישנה של skills. השתמשו ב-skills/ לתוספים חדשים
agents/קובץ Markdown אחד לכל subagent
hooks/hooks.jsonהגדרת hooks: מפתח "hooks" ברמה העליונה, שהערך שלו באותה צורה כמו hooks בקובץ הגדרות
.mcp.jsonהגדרות של שרתי MCP

אזהרה

רק plugin.json נכנס לתוך .claude-plugin/. רכיבים שנשמרים שם לא נטענים.

שורש התוסף הוא התיקייה של התוסף עצמו, לא ~/.claude/ עצמו. קובץ .mcp.json שנשמר ב-~/.claude/.mcp.json לא נטען.

#פיתוח בלי marketplace

אין צורך ב-marketplace כדי להריץ תוסף שאתם כותבים. טענו אותו ישירות מהדיסק או מכתובת URL:

  • --plugin-dir: טוען תיקייה או ארכיון .zip לסשן אחד.
  • --plugin-url: מביא ארכיון .zip מכתובת URL לסשן אחד.
  • claude plugin init: יוצר שלד לתוסף תחת ~/.claude/skills/ שנטען בכל הסשנים.

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

#טעינת תוסף לסשן אחד

אפשר לטעון תוסף לסשן יחיד בשלוש דרכים: מתיקייה או מארכיון .zip בדיסק עם --plugin-dir, מכתובת URL עם --plugin-url, או ממשתנה סביבה כשאי אפשר להוסיף דגל. כל תוסף נטען רק לאותו סשן, ושום דבר לא נכתב עבורו להגדרות שלכם. כשעורכים את קובצי התוסף במהלך הסשן, הריצו את /reload-plugins כדי לטעון את השינויים.

#טעינת תוסף מתיקייה או מקובץ .zip

כשמתחילים את claude מהמעטפת, העבירו את --plugin-dir עם תיקיית השורש של התוסף או עם ארכיון .zip שלו. חזרו על הדגל כדי לטעון כמה תוספים:

claude --plugin-dir ./my-first-plugin --plugin-dir ./other-plugin.zip

#טעינת תיקייה של תוספים

כדי לטעון כמה תוספים ממקום אחד, העבירו תיקייה שמחזיקה אותם, למשל --plugin-dir ./plugins. טעינת תיקייה של תוספים דורשת Claude Code בגרסה v2.1.265 או חדשה יותר.

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

אפשר גם להעביר תיקייה ששומרת .claude-plugin/marketplace.json ליד תיקיות התוספים שלה. כל עוד תיקיית .claude-plugin/ הזו לא מחזיקה plugin.json, תיקיות התוספים עדיין נטענות. שום דבר לא מותקן או מופעל מקובץ ה-marketplace, כי Claude Code לא קורא אותו. טעינת תוספים מתיקייה כזו דורשת Claude Code בגרסה v2.1.281 או חדשה יותר.

בסשן אינטראקטיבי אפשר גם להוסיף ולהסיר תוספים בתיקייה אחרי ההפעלה:

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

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

#טעינת תוסף מכתובת URL

כשמתחילים את claude מהמעטפת, העבירו את --plugin-url עם הכתובת של ארכיון .zip, למשל תוצר בנייה שה-CI שלכם מפרסם:

claude --plugin-url https://example.com/my-first-plugin.zip

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

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

אם Claude Code לא מצליח להביא את הארכיון, או שהארכיון לא תקין, הוא מתחיל בלי התוסף ורושם שגיאת טעינת תוסף שאפשר לעיין בה בלשונית Errors של מנהל /plugin.

#טעינת תוספים ממשתנה סביבה

כדי לטעון תוספים בסשן שבו אי אפשר להוסיף את הדגל --plugin-dir, רשמו את הנתיבים המוחלטים שלהם במשתנה הסביבה CLAUDE_CODE_PLUGIN_DIRS. Claude Code טוען כל נתיב כמו שהוא טוען נתיב של --plugin-dir. התוספים האלה נטענים בנוסף לכל תוסף שמעבירים עם --plugin-dir. הגדרות פרויקט והגדרות מקומיות לא יכולות לקבוע את המשתנה הזה. CLAUDE_CODE_PLUGIN_DIRS דורש Claude Code בגרסה v2.1.280 או חדשה יותר.

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

#טעינת תוסף בכל סשן

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

#יצירת שלד לתוסף עם claude plugin init

claude plugin init כותב תוסף התחלתי תחת ~/.claude/skills/. צרו שלד מהמעטפת:

claude plugin init my-tool

הפקודה יוצרת את ~/.claude/skills/my-tool/ עם .claude-plugin/plugin.json ועם SKILL.md בשורש. היא מדפיסה ✔ Created plugin "my-tool" at ~/.claude/skills/my-tool ואחר כך It will auto-load next session as my-tool@skills-dir. Run /reload-plugins to load it now.

העבירו את --with skills כדי ש-claude plugin init ייצור עבורכם שלד ל-skill תחת skills/. שאר ערכי --with נמצאים בהפניה לפקודות תוסף.

#מתן שם ל-skills של התוסף

ה-skill בשורש, ב-~/.claude/skills/my-tool/SKILL.md, הוא גם skill אישי, ולכן מפעילים אותו בתור /my-tool, ולא בתור /my-tool:my-tool. skills שמוסיפים תחת skills/ בתוך התוסף מקבלים את קידומת שם התוסף, למשל /my-tool:example.

#הפסקת טעינת התוסף

כדי להפסיק לטעון תוסף שנוצר לו שלד, מחקו את התיקייה שלו, או הריצו במעטפת את claude plugin disable my-tool@skills-dir עם השם my-tool@skills-dir ש-claude plugin init הדפיס. במזהה my-tool@skills-dir, skills-dir עומד במקום שבו היה מופיע שם marketplace, כי התוסף נטען מתיקיית ה-skills שלכם, במקום מ-marketplace.

#שיתוף התוסף דרך מאגר

claude plugin init כותב את התוסף לתיקיית ה-skills האישית שלכם ב-~/.claude/skills/, שכל הפרויקטים שלכם במחשב הזה חולקים. כדי שתוסף ייטען עבור כולם במאגר אחד, צרו בעצמכם את אותו מבנה ב-<project>/.claude/skills/<name>/, כולל .claude-plugin/plugin.json שלו. ראו תוספים שמשותפים דרך מאגר לתנאים שבהם Claude Code טוען אותו.

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

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

  1. במעטפת, הריצו claude plugin validate <path>. הפקודה בודקת את המניפסט ואת ה-frontmatter של כל קובץ skill, agent ופקודה, ויוצאת עם 0 כשמופיע Validation passed. הוסיפו --strict כדי להיכשל גם באזהרות. קודי היציאה והטיפול בתיקיות נמצאים בהפניה לפקודות התוסף.
  2. בסשן הפעיל, הריצו /reload-plugins כדי להחיל עריכות שעשיתם בדיסק. הפקודה מדפיסה שורת Reloaded: אחת עם ספירות. אחר כך אשרו ש-skill נטען על ידי הקלדת הפקודה /plugin-name:skill שלו, או על ידי מציאת התוסף בלשונית Installed של /plugin.
  3. באותו סשן, הריצו /plugin. הלשונית Installed מפרטת את התוסף שלכם, ובפרטי התוסף, את הרכיבים ש-Claude Code מצא. הלשונית Errors מפרטת מה נכשל בטעינה ולמה, למשל נתיב במניפסט שלא קיים.
  4. חזרו למעטפת והריצו claude plugin list. הפקודה מדפיסה תוספים של הסשן בלבד ותוספים מתיקיית skills, כל סוג במקטע משלו, עם Status: ✔ loaded או עם שגיאת הטעינה. כדי לכלול את התוסף שאתם מפתחים, העבירו --plugin-dir עם הנתיב שלו לפני plugin list.
  5. אם התוסף נמצא בתיקיית skills ו-claude plugin list לא מדפיס אותו, בלי שגיאה שם או ב-/plugin, ראו תוספי תיקיית skills שנחסמו על ידי הגדרות מנוהלות.

כדי לבדוק שרת MCP, הריצו /mcp בסשן כדי לראות את מצב השרת. כשהשרת תקין, /mcp מציג אותו כמחובר. אם הוא לא תקין, ראו שרתי MCP שלא מופעלים.

כדי לבדוק hook, הפעילו את האירוע שהוא תואם. לדוגמה, בקשו מ-Claude לערוך קובץ כדי להפעיל hook מסוג PostToolUse. אחר כך קראו את יומן הדיבוג, שמראה אילו hooks תאמו, את קודי היציאה שלהם ואת הפלט שלהם.

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

#נתיב של רכיב לא נמצא

הלשונית Errors של /plugin מציגה <component> path not found: <path>, לדוגמה commands path not found. נתיב רכיב במניפסט, כגון commands, skills, agents או hooks, לא מצביע על דבר. תקנו את הנתיב או צרו את התיקייה, ואז הריצו /reload-plugins בסשן. ראו commands path not found.

#--plugin-dir בשורש marketplace לא טוען את התוספים תחת plugins/

--plugin-dir מקבל את תיקיית השורש של התוסף, זו שמכילה את .claude-plugin/plugin.json ואת תיקיות הרכיבים כגון skills/. אם מצביעים אותו על שורש marketplace במקום זאת, Claude Code לא קורא את marketplace.json, ולכן תוסף תחת plugins/ לא נטען, ואין שגיאה. הצביעו את הדגל על תיקייה של תוסף אחד, או הוסיפו את ה-marketplace. ראו רשומת פתרון הבעיות.

#התוסף נטען אבל ה-skills שלו חסרים

תיקיית skills/ נמצאת בתוך .claude-plugin/, או שרשומת skills במניפסט מצביעה על קובץ. העבירו את skills/ לשורש התוסף, הצביעו כל רשומת skills על תיקייה שמכילה SKILL.md, והריצו /reload-plugins בסשן. ראו התוסף נטען אבל ה-skills שלו חסרים.

#תיבת הדו-שיח של userConfig אף פעם לא מופיעה

תיבת הדו-שיח של אפשרויות userConfig של התוסף היא חלק מההתקנה דרך /plugin בסשן. טעינה עם --plugin-dir לא מציגה אותה, וגם claude plugin install במעטפת לא מציג אותה. כשהתוסף טעון, הריצו /plugin configure <plugin-name> בסשן כדי לפתוח אותה. ראו תיבת הדו-שיח של userConfig אף פעם לא מופיעה.

#בדקו שהתוסף משנה את ההתנהגות של Claude

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

#המרה של הגדרת .claude/ קיימת

אם כבר יש לכם skills, agents או hooks תחת תיקיית .claude/ של פרויקט, אפשר להעביר אותם לתוסף בלי לכתוב אותם מחדש.

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

1. צרו את מבנה התוסף

צרו את תיקיית התוסף ואת התיקייה .claude-plugin/ שלה לצד .claude/. אפשר להעביר את התוסף לכל מקום אחר כך.

mkdir -p my-plugin/.claude-plugin

צרו את my-plugin/.claude-plugin/plugin.json:

{
  "name": "my-plugin",
  "description": "Migrated from standalone configuration",
  "version": "1.0.0"
}

2. העתיקו את הקבצים הקיימים

העתיקו כל תיקיית תצורה שיש לכם לשורש התוסף, ודלגו על הפקודה של כל תיקייה שאין לכם.

cp -r .claude/commands my-plugin/
cp -r .claude/agents my-plugin/
cp -r .claude/skills my-plugin/

הריצו ls -a my-plugin כדי לאשר שכל תיקייה שהעתקתם מופיעה ליד .claude-plugin.

3. העבירו את ה-hooks

אם יש לכם hooks ב-.claude/settings.json או ב-.claude/settings.local.json, צרו תיקיית hooks:

mkdir -p my-plugin/hooks

צרו את my-plugin/hooks/hooks.json והעתיקו לתוכו את אובייקט hooks מקובץ ההגדרות. הפורמט זהה.

הדוגמה הזו מראה את הצורה עם hook אחד שמריץ linter על כל קובץ ש-Claude כותב או עורך. החליפו את הדוגמה באובייקט hooks שלכם.

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [{ "type": "command", "command": "jq -r '.tool_input.file_path' | xargs npm run lint:fix" }]
      }
    ]
  }
}

4. בדקו את התוסף שהומר

טענו את התוסף לסשן:

claude --plugin-dir ./my-plugin

בדקו כל רכיב תחת השם החדש שלו:

  • Skills: הריצו /my-plugin:deploy עבור skill שהיה /deploy.
  • Subagents: בקשו מ-Claude להשתמש ב-agent my-plugin:reviewer עבור agent שהיה reviewer.
  • Hooks: הפעילו את האירוע שכל hook תואם לו.

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

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

  • Skills ו-agents: שתי הקבוצות לא מתנגשות, כי ל-skills ול-agents של התוסף יש את הקידומת my-plugin:. גם /deploy וגם /my-plugin:deploy עובדים, ו-Claude רואה את reviewer ואת my-plugin:reviewer כשני subagents.
  • Hooks: ל-hooks אין קידומת, ולכן hook שנמצא גם בקובץ ההגדרות וגם ב-hooks/hooks.json רץ פעמיים בכל פעם שהאירוע שלו מופעל.

אחרי שאישרתם שהתוסף עובד, מחקו את המקוריים מ-.claude/ והסירו את אובייקט hooks מקובץ ההגדרות.

#הצעדים הבאים