מתנה מהרילס · יום 15

הסקיל שהופך כל שיחה לזיכרון

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

קובץ ZIP. בלי הרשמה, בלי להשאיר פרטים. ההתקנה היא העברת תיקייה אחת, ושתי דקות.

כמו שהם, על אחריות המשתמש

רוצה שהזיכרון הזה יכיר גם את העסק עצמו? ככה זה נראה בליווי

עובד בקלוד קוד מרקדאון רגיל אובסידיאן אופציונלי
למה בסוף ולא בהתחלה

מה הולך לפח כשהשיחה נדחסת

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

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

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

אין לי סבלנות לזכור לעשות את זה בכל שיחה

איך זה עובד

מה קורה מהרגע שאמרתם תקצור

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

  1. קודם כל סורק משימות כל מה שעלה בשיחה ומשתמע ממנו עבודה: בקשה שנדחתה ל-אחר כך, הערה בסוגריים, כזה שאמרתם עליו בזמן הפנוי. הם נכתבים לקובץ המשימות של הפרויקט. זה ראשון כי זה מה שבאמת מרגיזים כשמפספסים.
  2. מחליט מה בכלל שווה לשמור לולאות של תיקון באגים לא נכנסות. אישורים לא נכנסים. עובדות שכבר כתובות בקבצים של הפרויקט לא נכנסות. אם שלושה משפטים מכסים את השיחה, נכתב רק תיעוד הסשן וזה הכל.
  3. מפריד החלטה מהסיבה שלה החלטה בלי הסיבה היא עובדה, ועובדות כבר יושבות בקבצים. הסיבה היא כל השווי: היא מה שמונע את אותו דיון בעוד שבועיים. ולכן גם מה שנפסל נכתב, כי זה בדיוק מה שתוצע לכם שוב.
  4. שומר את התיקונים כחוקים כל פעם שתיקנתם משהו, התיקון נכתב כשורה אחת: מה קרה ומה הכלל מעכשיו. תיקון שנאמר פעמיים ולא נכתב הוא לא מצב רוח, הוא חוק שאף אחד לא רשם.
  5. שומר גם את איך שאתם מדברים ביטויים שאתם מנסחים בצורה מסוימת, מה מתקבל ומה נפסל. זה מה שגורם לשיחה הבאה להישמע כמוכם ולא כמו מודל. גם הפסילות נשמרות: משפט שנזרק מלמד יותר ממשפט שעבר.
  6. מכניס כלים חדשים למפה אם בנינו באותה שיחה סקיל, סקריפט או הוק, הוא מקבל שורה במפת הכלים: מה הוא עושה ומתי לשלוף אותו. כלי שאף אחד לא זוכר שקיים נבנה מחדש מאפס בעוד חודשיים, וזה אותה עבודה פעמיים.
  7. מתארך כל שורה התאריך הוא הדבר הראשון בכל שורה. בלעדיו, בעוד חצי שנה אין דרך להבין איזו משתי שורות סותרות היא הנכונה. ומה שנכתב לא נדרס: כשמשהו מתהפך, נכתבת שורה חדשה שאומרת מה היא מחליפה.

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

מה נשאר אחרי

תיקייה אחת, תשעה מקומות

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

התיקייה knowledge/, בתוך הפרויקט שאתם עובדים בו אצלכם במחשב, ולא אצלי
TODO.md
כל משימה שעלתה, גם כזאת שנאמרה בדרך אגב. בשורש הפרויקט, שם שמחפשים משימות
decisions.md
מה הוחלט, למה, ומה נפסל בדרך
lessons.md
תיקון שתיקנתם, והכלל שנולד ממנו
how-to.md
הדרך שבאמת עובדת בכלי מסוים: הפקודה, הדגל, ומה לא עובד
insights.md
תובנה שנכונה גם מחוץ לפרויקט הזה
voice.md
איך אתם מדברים: ביטויים, מה מתקבל, מה נפסל
ideas.md
מה שעלה ולא נבנה, מסומן כעלה ולא כהוסכם
skills-map.md
שורה על כל סקיל, סקריפט או הוק שנבנו, ומתי לשלוף אותו
sessions/
מה קרה בשיחה, קובץ אחד לשיחה. זה מה שמסביר למה השאר אומרים מה שהם אומרים

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

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

שתי דרכים להריץ

הידני הוא האמיתי. ההוק הוא רשת ביטחון.

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

  • ידני אתם אומרים, והוא קוצר

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

    זאת הגרסה שמבינה מה היא קוראת, כי היא קוראת מתוך השיחה עצמה. זה הקציר שבאמת עושה את העבודה.

  • הוק רץ לבד, ומציל את החומר

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

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

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

לפני שמתחילים

מה זה דורש, בכנות

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

עוד אין לכם Claude? אפשר להירשם דרך הקישור שלי.

להרשמה ל-Claude

קישור אפיליאציה.

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

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

  1. מעבירים את הסקיל ומבקשים ממנו לקצור

    מחלצים את ה-ZIP ומעבירים את תיקיית הסקיל, session-harvest, אל ~/.claude/skills/, או אל .claude/skills/ בתוך פרויקט אחד. אחר כך, בסוף שיחה, אומרים: תקצור את השיחה הזאת.

    Terminal
    unzip session-harvest.zip
    mkdir -p ~/.claude/skills
    mv session-harvest ~/.claude/skills/

    בפעם הראשונה בפרויקט הוא יפתח את תיקיית knowledge/ ויגיד לכם מה הוא כותב לתוכה. מאשרים.

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

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

    תתקין את הוק הקציר מתיקיית הסקיל: תעתיק את session-harvest/hook/harvest_snapshot.py לתיקיית ההוקים שלי (~/.claude/hooks), ותוסיף את ההגדרה מ-hook/settings-snippet.json לקובץ ההגדרות (~/.claude/settings.json). אל תמחק הגדרות קיימות, רק תוסיף. בסוף תוסיף את השורה knowledge/_snapshots/ לקובץ ה-.gitignore של הפרויקט.
    הבקשה להדבקה

    לבדוק שזה עובד: בשיחה שכבר רצה קצת כותבים /compact, ואחר כך מבקשים לראות מה יש בתיקייה knowledge/_snapshots/. אמור להיות שם קובץ אחד עם התאריך והשעה בשם.

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

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

שאלות

שאלות שחוזרות על עצמן

מה זה compact ולמה זה חשוב?

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

אפשר להריץ את זה בלי אובסידיאן?

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

ההוק מריץ את הסקיל אוטומטית?

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

זה בטוח? מה נשמר ואיפה?

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

צריך לשלם על משהו?

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

עובד גם בווינדוס?

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

כמה זה מאריך את סוף השיחה?

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

השאלה שלי לא מופיעה כאן

ומה הלאה

הסקיל הזה זוכר את השיחות. בליווי המערכת מכירה את העסק.

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

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

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

חמישה מפגשים לייב, על העבודה האמיתית שלך.