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