למה "על הדרך נשדרג OpenClaw" יכול להפוך לשעה ו־22 דקות

בהתחלה הייתי בטוח שזה עוד עבודה קלאסית של חמש דקות:

“פשוט לשנות את מודל ברירת המחדל.”
“להוריד את ה־contextTokens = 200000 המוזר.”
“ועל הדרך לשדרג את OpenClaw לגרסה הכי חדשה.”

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

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

כל “על הדרך תשנה רגע” עלול להיות משפט הפתיחה של תאונה.

איך זה הלך ותפח

בהתחלה מודל המשימה בראש שלי היה ממש פשוט:

  1. לבדוק בריפו הרשמי ולאשר מה הגרסה הכי חדשה של OpenClaw.
  2. לשנות את מודל ברירת המחדל מ־gpt-5.4-xhigh-fast-jailbreak ל־gpt-5.4-xhigh-fast.
  3. להוריד את agents.defaults.contextTokens = 200000 שהוא לא ערך ברירת מחדל.
  4. ועל הדרך לשדרג את ה־gateway.

זה נשמע לגמרי כמו “יישור קונפיגורציה + שדרוג רכיב”.

ואז המציאות מהר מאוד נתנה סטירה: זה ממש לא רק ה־gateway.

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

  • בצד ה־Mac צריך ליישר gateway / core / node מול הגרסאות האחרונות.
  • גם את שם המודל jailbreak שכבר השתמשו בו בסשנים קיימים צריך להחליף.
  • גם ה־OpenClaw node המקומי ב־Windows צריך שדרוג וצריך שהוא יצליח להתחבר מחדש.
  • וגם אי אפשר רק לבדוק “האם מספר הגרסה עלה”, צריך לבדוק “האם הנוד באמת עולה והאם התוספים באמת נטענים”.

וככה המשימה התרחבה מ"לשנות קונפיג" ל"איתור תקלות מקצה לקצה + שדרוג".

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

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

ברמת הסימפטומים על פני השטח:

  • נראה כאילו שודרג.
  • נראה שגם ל־gateway אין בעיה גדולה.
  • אבל ה־node לא מתחבר, או שהוא עולה לא יציב.

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

רק אחרי שפירקתי שכבות הבנתי מה קורה:

הבור הראשון: רישום התוספים הוא stale

זה גורם לכך שבזמן העלייה ה־node מנסה לטעון ערימה של דברים שבכלל לא אמור לעניין אותו, ואפילו amazon-bedrock, alibaba ודומיהם פתאום צצים.

זה השלב הכי מסוכן, כי זה נראה בול כמו “השדרוג של OpenClaw שבר הכול”.

אבל זה לא.

זה פשוט מכניס אותך קודם לעלילה הלא נכונה.

הבור השני: הבעיה האמיתית היא שתלויות הריצה לא שלמות

אחרי רענון הרישום, השגיאות פתאום נהיו כנות:

  • לתוסף browser חסרות תלויות
  • לתוסף memory-core חסרות תלויות

בהתחלה מה שחסר היה json5.

אחרי שמוסיפים אותו זה ממשיך לחשוף:

  • playwright-core
  • chalk
  • jiti
  • dotenv
  • jszip
  • ועוד רצף של חבילות runtime נוספות

בשלב הזה מהות הבעיה כבר הייתה ברורה:

זה לא “OpenClaw הוגדר לא נכון”, אלא “ל־runtime של תוספי הנוד הזה לא השלימו את כל מה שצריך”.

הבור השלישי: גם שרשרת ההתקנה האוטומטית לא אמינה

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

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

וככה זה הפך ל:

  • אי אפשר פשוט לחכות שההתקנה “תסתדר מעצמה”
  • וגם אי אפשר להמשיך לשרוף זמן על “עוד ניסיון אולי יעבוד”
  • חייבים להחליף גישה, ולהשתמש ישירות בתלויות שכבר קיימות במחשב מתוך ה־Node / OpenClaw / Codex runtime המקומיים כדי להשלים את מה שחסר

בשפה פשוטה:

השאלה התחלפה מ"שדרוג" ל"הרכבה".

על מה בדיוק נשרפו 1 שעה ו־22 דקות

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

1. להתייחס ל"בעיית שדרוג" כברירת מחדל כאל “בעיית גרסה”

זה המעקף הראשון.

בפועל הבאג הכי יקר כאן כמעט לא קשור לגרסה עצמה, אלא ל:

  • ה־node המקומי לא עולה
  • מצב רישום התוספים לא תקין
  • תלויות runtime לא הושלמו

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

2. לא לוודא מספיק מוקדם האם במחשב המקומי בכלל יש שכבת gateway

זו גם אינרציה מחשבתית מאוד טיפוסית.

כשמישהו אומר בעל פה “צריך לשדרג gateway, נודים וכו’”, קל לזרום עם המשפט ולדמיין שלכל מכונה יש אותו מבנה.

אבל בצד ה־Windows המקומי כאן, הראיות היו מאוד ברורות בהמשך: בפועל יש רק את ציר ה־node, בלי סקריפט/שירות gateway מקומי נפרד.

לקח: לא להעתיק אוטומטית ארכיטקטורה ממקום אחר למכונה שמול העיניים.

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

זה הדבר שהכי כדאי לזכור בעיניי.

בחצי הראשון הקצב היה בערך כזה:

  • זורק json5, מוסיפים json5
  • זורק chalk, מוסיפים chalk
  • זורק jiti, מוסיפים jiti
  • זורק dotenv, מוסיפים dotenv
  • זורק jszip, מוסיפים jszip

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

מה שבאמת האיץ אחר כך הוא פשוט למנות את כל התלויות החיצוניות מתוך ה־dist, ואז להשלים במכה אחת את רוב מה שחסר מתוך runtime קיים במחשב.

לקח:

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

4. להחזיק תקווה מיותרת ש"ההתקנה האוטומטית תסתדר"

ברגע שרשת, TLS, פרוקסי או קאש לא יציבים — npm install בקלות יכול לאכול זמן בלי לתת כשל חד וברור.

המסלול שבאמת עבד בסוף לא היה להמשיך לחכות, אלא:

  • לעצור תהליכי התקנה שנתקעו
  • לשחרר נעילות ישנות
  • לחבר ישירות מודולים קיימים מהמחשב אל תיקיית תלויות ה־runtime של OpenClaw
  • לבצע בדיקת self-check בפרונט, ואז להעלות רשמית בדרך של OpenClaw עצמו

לקח: כשאוטומציה מתחילה לבזבז לך שוב ושוב מעל עשר דקות, היא כבר לא קיצור דרך.

מה שבאמת עזר בסוף לא היה להיות יותר “מתאמץ”, אלא לפרק לשכבות מוקדם יותר

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

  1. קודם לוודא האם זה בכלל “הגרסה לא עלתה”.
  2. ואז לוודא האם זה “הבנה שגויה של ארכיטקטורת השירות”.
  3. ואז לוודא האם “רישום התוספים שגוי”.
  4. ואז לוודא האם “תלויות ה־runtime חסרות”.
  5. ורק בסוף לגעת בשרשרת ההתקנה ובאופן ההפעלה.

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

המשפט שסיפר בדיחה, אבל בעצם הכי שימושי

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

“זה פשוט, רק לשדרג על הדרך וזהו.”

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

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

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

והעולם האמיתי אוהב יותר את הסגנון הזה:

  • מבחוץ זו בעיית קונפיגורציה
  • באמצע זו בעיית שירות
  • בפנים זו בעיית תלויות
  • הכי עמוק זה שאתה בכלל שאלת את השאלה הלא נכונה מההתחלה

בסוף הלקח גם לא יצא יקר מדי:

השדרוג לקח 1 שעה ו־22 דקות, אבל על הדרך גם השלמתי קורס קצר ב"איך לזהות תקלת runtime שמתחפשת לשדרוג".

לייק 1

הגרסה האחרונה של claw כל כך דפוקה? :joy::joy:

כן, לאחרונה אני מתעסק עם ננוקלו (nanoclaw)