הבעיה עם מפתח AI בשכירות
כלי קוד AI אוטונומיים הם כבר מציאות — אבל התמחור בנוי על ההנחה שתשכרו אותם לנצח. סוכן ענן בודד עולה בערך 500$ לחודש, הקוד שלכם חי בענן של מישהו אחר, וברגע שמפסיקים לשלם — היכולת מתאדה. לעסק קטן שרוצה AI שכותב קוד מסביב לשעון, המתמטיקה הזאת פשוט לא נסגרת.
נקודת המפנה: הדאטה־סנטר כבר עמד על המדף
לרוב החברות יש מדף של חומרה שעדיין נדלקת — לפטופים בני שלושה דורות, מחשב שולחני שירד מהשירות, המכונה שמישהו שדרג ממנה הלאה. כל אחת לבד חלשה מדי. ביחד — דאטה־סנטר ששולם עליו מזמן. השאלה הפסיקה להיות "איך מממנים עשרה סוכנים" והפכה ל"מה יתאם עשר מכונות שכבר יש לנו?"
מה בנינו במקום
Ralph Loops הוא מנוע תיאום שהופך את המדף הזה לחוות קוד. עשר מכונות ממוחזרות, כל אחת מריצה את סוכן שורת־הפקודה של Claude, מחוברות לרשת פרטית אחת. זורקים קובץ משימה לתיקייה; בלילה סוכן מרים אותו, עושה את העבודה, ודוחף branch שמחכה לסקירה שלכם בבוקר.
- Git הוא שכבת התיאום. כל סוכן עובד על branch משלו ודוחף באופן עצמאי — התיאום כולו חי בתוך Git עצמו: אפס בסיסי נתונים משותפים, אפס שרתי נעילה, אפס תורים מרכזיים שיכולים ליפול. המיזוג הוא שלב סקירה בשליטת אדם.
- רשת פרטית, סגורה ומוצפנת. המכונות מוצאות זו את זו על גבי רשת mesh מוצפנת (Tailscale), כך שחווה יכולה להשתרע על בית, משרד ומחשב פנוי של קולגה — כאילו כולם באותו ראק.
- תפקידים שומרים על משימות עצמאיות. כל סוכן מקבל נתיב משלו — backend, frontend, טסטים וכן הלאה — כך שעבודת לילה מתמקבלת נקי, וכל סוכן נשאר בנתיב שלו במקום עשרה סוכנים על אותו קובץ.
- בנוי לשרוד את עצמו. דחיפות עם ניסיונות חוזרים והמתנה גוברת, בדיקות מקדימות שמוודאות שכל מכונה מכוונת לריפוזיטורי הנכון לפני שהיא נוגעת במשהו, וכלל ברזל שהמנוע, הדשבורד והמוצר שנבנה שומרים כל אחד על קוד נפרד לגמרי.
- אתם סוקרים, הכול שלכם. התוצר הוא branches ו־commits רגילים בריפוזיטורי שלכם — פורמט סטנדרטי ופתוח, שנשאר אצלכם מהרגע הראשון.
התוצאות: החלק שנשמע בלתי אפשרי הוא החשבון
| סעיף | עלות |
|---|---|
| חומרה | 0 — מכונות משרדיות ממוחזרות |
| שרתים בענן | 0 — פשוט אין |
| עלות שוטפת למכונה | ~15$ לחודש (חשמל + החלק היחסי של המנוי) |
| סוכן הענן שהחלפנו | ~500$ לחודש, סוכן אחד |
כל החווה רצה בערך במחיר של סוכן ענן בודד — רק שמדובר בעשרה עובדים במקום אחד, והחומרה כבר שולמה מזמן. כשהעבודה נגמרת, מכבים את המכונות; המונה נעצר יחד איתן.
מה למדנו בדרך הקשה
מאחורי הצנרת המלוטשת שלמעלה מסתתרים הכישלונות שלימדו אותנו איך לבנות אותה:
- שלוש הקפסולות נשארות נפרדות. המנוע שמתאם, הדשבורד שמשגיח והמוצר שנבנה חייבים לחיות בקוד נפרד. גרסאות מוקדמות ערבבו ביניהם — וכל שינוי סיכן שבירה של שתי מערכות בבת אחת. ההפרדה היא היום כלל ברזל.
- סדר פריסה הוא מחלקת באגים אמיתית. ריצה מוקדמת העתיקה סקריפטים טריים לפני סנכרון הריפוזיטורי — ו־checkout ישן דרס בשקט את המנוע החדש. קודם מסנכרנים, אחר כך פורסים — ברור בדיעבד, בלתי נראה עד שזה נושך.
- מאמתים לפני שסומכים. סוכן שמכוון ל־remote שגוי ידחוף בשמחה למקום השגוי. בדיקה מקדימה שכל מכונה מכוונת נכון הפכה קטגוריה שלמה של אסונות שקטים לכישלון מוקדם ורועש.
- אוטונומיה צריכה שער אנושי, לא בייביסיטר אנושי. הניצחון הוא שאדם משקיע עשר דקות סקירה בבוקר במקום שמונה שעות כתיבה בלילה.
למי זה מתאים
אם אתם משלמים פר־משתמש, פר־חודש על כלי פיתוח AI — או שסימנתם אוטומציה כיקרה מדי לבעלות — הארכיטקטורה הזו נבנית מחדש בדיוק בשבילכם:
- צוותי תוכנה שרוצים התקדמות אוטונומית על צבר המשימות — בין לילה
- סוכנויות שמריצות הרבה פרויקטים קטנים במקביל
- חברות עם חומרה פנויה שמעדיפות אותה על עוד ענן בשכירות
- כל מי שרוצה תשתית AI בבעלות ובשליטה מלאה שלו, במקום עוד מנוי
הקוד נשאר בריפוזיטורים שלכם, על מכונות שבבעלותכם. העבודה הכבדה קורית על חומרה שממילא כבר עמדה שם.