
בנה לולאת סוכן פרואקטיבית על Claude Opus 5.5
- OrcaחדשOrca: OrcaCyber Ultra 1.02026-10-17$5.00 / $10.00 לכל 1M טוקנים · 13 tok/s
- deepseekחדשDeepSeek: DeepSeek V4.1 Flash 10172026-10-1745אינטליגנציה
- DeepSeekחדשDeepSeek: DeepSeek V4.1 Flash2026-10-1740אינטליגנציה
- OrcaחדשOrca: OrcaCyber Zero 1.52026-10-10$3.00 / $7.50 לכל 1M טוקנים · 154 tok/s
- openaiOpenAI: GPT-6.1 Sol2026-09-2952אינטליגנציה
- anthropicAnthropic: Claude Sonnet 5.52026-09-2856אינטליגנציה
- typesafeTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 לכל 1M טוקנים · 983 tok/s
- OpenAIOpenAI: GPT-6 Luna2026-09-2238אינטליגנציה
- OpenAIOpenAI: GPT-6 Sol2026-09-2248אינטליגנציה
- AnthropicAnthropic: Claude Opus 5.52026-09-2258אינטליגנציה
- xAIGrok 4.72026-09-2146אינטליגנציה
- OrcaOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $7.50 לכל 1M טוקנים · 95 tok/s
- OrcaOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 לכל 1M טוקנים · 964 tok/s
- OpenAIOpenAI: GPT-6 Astra2026-09-0453אינטליגנציה77כתיבת קוד
- GoogleGoogle: Gemini 3.8 Flash2026-09-0241אינטליגנציה76כתיבת קוד
- AlibabaQwen: Qwen3.8 Max (0902)2026-09-0245אינטליגנציה76כתיבת קוד
- AnthropicAnthropic: Claude Fable 5.12026-09-0153אינטליגנציה82כתיבת קוד
- TencentTencent: Hy4 preview2026-08-28$0.83 / $2.50 לכל 1M טוקנים · 47 tok/s
- AlibabaQwen: Qwen3.8 Flash2026-08-26$0.15 / $0.47 לכל 1M טוקנים · 100 tok/s
- z-aiZ.ai: GLM 5.3 Flash2026-08-2642אינטליגנציה72כתיבת קוד
החלק הלא־נוח בבנייה של סוכן פרואקטיבי משלך הוא שהעבודה המעניינת אינה קריאת המודל. אפשר להריץ את Claude Opus 5.5 עונה על שאלות בתוך אחר צהריים אחד. לגרום לו להתעורר לפי לוח זמנים, לקרוא רק את מה שהשתנה מאז הפעם הקודמת, להחליט אם משהו ראוי להתערבות אנושית, לנסח את הפעולה, ואז לעצור ולהמתין — זה כבר שבועות, וכמעט כלום מזה לא קורה בתוך המודל. Anthropic השיקה גרסה של הלופ הזה בשם Claude Duet, והדבר השימושי במוצר הזה למי שבונה מערכת משלו אינו רשימת התכונות שלו אלא ההחלטות שניכרות באופן שבו הוא מורכב. אין לו API מפורסם ואי אפשר להפנות אותו מחדש למערכות שלך, אז אם אתה רוצה את הלופ ולא את האפליקציה, אתה בונה אותו. להלן הארכיטקטורה, שלב אחר שלב, עם העלות הכנה של כל אחד מהם.
המבנה קודם. חמישה שלבים פועלים ברצף, ואל השלב החמישי מגיעים רק אחרי שאדם אומר כן. מתזמן מפעיל. שלב תמצות מצמצם כל מערכת מחוברת לדלתא. שלב החלטה הופך את הדלתא הזו בתוספת מדיניות להצעה עם טיפוס. שער אישור מחוץ למודל מחליט אם ההצעה רשאית לרוץ. רכיב ביצוע מבצע אותה. זה כל התכנון, וכל מה שקשה בו נמצא בתפרים.

שלב ראשון: מתזמן שמופעל כל כמה שעות
ההחלטה הראשונה היא זו שאנשים טועים בה מתוך התלהבות ולא מתוך הנדסה: אל תבצעו polling באופן רציף. התיעוד של Duet מבית Anthropic מסביר את המרווח שלו — בדיקה כל כמה שעות — בכך שבדיקה ללא הפסקה תכלה את מגבלות התוכנית הרבה יותר מהר. זו אינה זהירות שיווקית. זו התשובה הנכונה לבעיית עלות אמיתית, וזו המלכודת שכל סוכן תוצרת בית נופל אליה כבר בשבוע הראשון.
פולינג רציף הוא הרסני מסיבה מבנית. כל סריקה היא הקשר מלא: הוראות, הגדרות כלים, החומר שמשכת, וכל חשיבה שהמודל מבצע עליו. בקצב של פעם בדקה אלה 1,440 הקשרים מלאים ביום, והרוב המכריע לא מוצא שום דבר חדש. אתה משלם מחיר מלא כדי שיגידו לך שתיבת הדואר לא השתנתה. בקצב של אחת לשלוש שעות אתה מקבל שמונה, והיחס בין ממצאים להוצאה הופך למשהו שאתה יכול להגן עליו בפני מי שחותם על החשבונית.
אז המתזמן הוא טיימר בסגנון cron עם רצפה של מרווח מינימלי, לא זרם אירועים. אירועים נשמעים אטרקטיביים — להגיב ברגע שמשהו קורה — אבל הם דוחפים אותך בחזרה לעבודה רציפה והופכים את העלות של יום עמוס לבלתי מוגבלת. טיימר נותן תקרה צפויה, וזה מה שאתה צריך כשהחשבון משתנה. כשרוצים תגובה מהירה יותר עבור מקור אחד, מקצרים רק את המרווח של אותו מחבר ומקבלים את ההוצאה הנוספת.
שלב שני: קידומת זהה בייט-בייט, נשמרת במטמון
כאן המספרים שפורסמו עושים את העבודה הרבה ביותר. Claude Opus 5.5 ב-OrcaRouter הוא 4.00 דולר למיליון אסימוני קלט, 20.00 למיליון אסימוני פלט, עם חלון הקשר של 1M אסימונים וקריאות מטמון ב-0.20 למיליון, במחיר המחירון של הספק עם 0 אחוז תוספת. יש להתייחס לנתונים האלה כאילוץ תכנוני ולא כמחירון: עלותה של קריאת מטמון היא אחד מעשרים מעלותו של אסימון קלט חדש, ולכן כל בייט שאתם שומרים יציב לאורך סבבים הוא בייט שאתם מפסיקים לשלם עליו מחיר מלא.
בפועל, הנחיית המערכת וסכימת הכלים נבנות פעם אחת בזמן הפריסה ואינן נוצרות מחדש בכל סבב. הן אינן עוברות סריאליזציה מחדש מתוך מילון עם המפתחות בסדר אחר. הן אינן מוזרקות לתבנית עם חותמת זמן, מזהה בקשה, או החשבונות המחוברים של היום שמושתלים באמצע. כל בייט ששונה מבטל את הקידומת שבמטמון, ובלוק ההוראות חוזר למחיר קלט מלא בכל סבב. צוותים מאבדים את זה בטעות לעתים קרובות יותר מאשר בכוונה, בדרך כלל מפני שהפשטה מועילה התחילה להזריק מזהה ריצה קרוב לראש ההנחיה.
המשמעת ששורדת מגע עם קוד אמיתי היא משעממת: פונקציה אחת שמחזירה מחרוזת קבועה עבור הבלוק היציב, ליטרל קפוא עבור סכימת הכלי, וכל רכיב משתנה מוצב אחריו. לאחר מכן בדיקה שמגבבת את הבלוק ומכשילה את הבנייה כשהגיבוב משתנה, כי מישהו בסופו של דבר יוסיף שדה לסכימה ולא יחשוב על המטמון. הבדיקה הזו עולה שעה וחוסכת את כל התועלת של המטמון.
שלב שלישי: תקציר לכל חיבור, לא הצפת תיבת דואר
השלב השלישי הוא זה שמוצר צרכני מקבל בחינם ואתה לא. Duet חי בתוך החשבון של Anthropic ומגיע לאפליקציות מחוברות, כך שהוא יכול לשאול מה השתנה מאז זמן נתון ולקבל תשובה קטנה. כשבונים מחוץ לחשבון הזה, אתה מדבר עם אותם APIs כמו כל לקוח רגיל: או שאתה מיישם קריאות אינקרמנטליות, או שאתה מושך את הכול ומגיש למודל קיר של טקסט.
משיכת הכול היא ברירת המחדל כי היא עובדת מהיום הראשון. זו גם הדרך המהירה ביותר להפוך את העלות לכל סריקה לבלתי צפויה, כי הקלט גדל עם תיבת הדואר ולא עם מה שהשתנה. סריקה של ארבעים שרשורים ללא שינוי עולה אותו דבר כמו סריקה של ארבעים שרשורים שבה שרשור אחד חשוב, ורק לאחת מהן היה סיכוי להצעה שימושית. אחרי חודש כזה, רוב התקציב שלך הלך לאישור המצב הקיים.
שלב התמצית צריך להיות קוד, לא פרומפטינג. יש למשוך לכל חיבור בנפרד באמצעות כל סמן או דלתא שה-API מציע, ולצמצם את התוצאה לתמצית מובנית: מה הופיע, מה שונה, מה נפתר. יש לתת לכל פריט מזהה יציב כדי ששלבים מאוחרים יוכלו להתייחס אליו, ולתעד את הסמן המוצלח האחרון לכל חיבור כדי שמשיכה שנכשלה לא תשחזר את החומר של אתמול כאילו הוא חדש. תמצית שלא יודעת להבדיל בין "לא קרה כלום" ל"לא הצלחתי לבדוק" תדווח בסופו של דבר בביטחון על מצב שמעולם לא נצפה.
שלב רביעי: שלב החלטה שמפיק אובייקט, לא פרוזה
כאן יושב Claude Opus 5.5, ומה שהוא פולט קובע אם אפשר בכלל לבנות את שאר המערכת. האינסטינקט הוא לגרום למודל לכתוב תקציר ולתת לאדם לקרוא אותו. זה עובד עבור לוח מחוונים ונכשל עבור שער: השלב הבא חייב להחליט אם לאשר פעולה, ואי אפשר להעניק הרשאה לפסקה.
שלב קבלת ההחלטה צריך להחזיר הצעת פעולה בעלת טיפוס: שם פעולה מתוך רשימה סגורה, היעד שעליו היא חלה, הפרמטרים, נימוק בשורה אחת, ודגל ביטחון או הסלמה מפורש. רשימת פעולות סגורה אינה ביורוקרטיה; היא המנגנון שהופך את שער האישור לניתן לאכיפה, מפני ששער יכול לאמת רק פעולות שהוא מסוגל למנות. על סוכן שיכול לפלוט כל פועל לא ניתן להחיל שער — אפשר רק לבטוח בו.
שתי הערות מעשיות. תנו למודל את התמצית, ואחר כך את המדיניות, כך שהמדיניות תבוא אחרי החומר המשתנה וקידומת המטמון תישאר שלמה. והפכו את ברירת המחדל לתוצאה של "אין פעולה" במקום הצעה ריקה שנקראת כמו פעולה. לולאות שמתייחסות לשתיקה ככישלון מייצרות נפח, וסוכן שמייצר עבודה כדי להיראות שימושי גרוע יותר מאחד שמדווח שלא השתנה דבר.
שלב חמישי: שער אישור שיכול באמת לומר לא
השער חייב להיות שירות נפרד, לא ענף בתוך הקוד של הסוכן עצמו. זו ההחלטה המבנית החשובה ביותר בבנייה. אם התהליך של הסוכן יכול לבצע את הפעולה בעצמו, באג, הזרקת פרומפט או דגל שהוגדר לא נכון באותו תהליך מגיעים להשפעה. אם המבצע מקבל רק הצעה שהשער חתם עליה, הגרוע ביותר שהסוכן יכול לעשות הוא להציע משהו שגוי, והסירוב של השער הוא אמיתי.
המדיניות שפרסמה Anthropic עבור Duet שווה העתקה במבנה שלה גם כאשר הרשימה שלך שונה. השער דורש אישור לפני שפעולה שולחת הודעה, מבצעת תשלום, חותמת על מסמך או מוחקת משהו. מעל זה נמצא דרג שני שדוחים אותו אפילו כשיש אישור — במקרה של Duet, סחר בניירות ערך והעברת כספים בין חשבונות. התבנית היא מדיניות דו־דרגית: קבוצה גדולה של פעולות הכפופות לשער שאדם רשאי להתיר, וקבוצה קטנה ששום אישור אינו משחרר. העתק את הדרגים גם אם כל פריט משתנה, מפני שהם פותרים בעיות שונות. השער מגן מפני טעות. רשימת האיסורים מגנה מפני מפעיל שנפרץ, כולל המפעיל האנושי.
החצי השני של שער אמיתי הוא שהוא מפריע. בקשת האישור של Duet מציגה את הפעולה המדויקת וממתינה, וכך עוצרת בכוונה את הזרימה במקום להוסיף עליה הערה. שער שכותב שורה ליומן שאיש אינו קורא אינו שער; הוא קבלה. אם שלב האישור שלך דורש שמישהו יצפה בלוח מחוונים בשלוש לפנות בוקר, או שהמרווח קצר מדי או שרשימת הפעולות רחבה מדי. את שניהם אפשר לתקן, ואף לא על ידי הוספת התראה.
זיכרון, פרטי התחברות, ושני המשטחים שאין לך מוצא מהם באמצעות בדיקות
שתי בעיות קשות עומדות בבסיס חמשת השלבים, ושתיהן נראות כמו תכונות עד שמתברר שהן לא.
• העברת הקשר. כל סבב הוא הקשר חדש, לכן כל דבר שהסוכן צריך לזכור בין סבבים חייב להיכתב ביניהם. קובץ מצב מתגלגל לכל חיבור, עם תקרת גודל, שמחזיק פריטים פתוחים והחלטות אחרונות מספיק לרוב הלולאות. מה שלא עובד הוא לקוות שהמודל ישחזר את ההיסטוריה מהתמצית, משום שהתמצית היא במפורש תיאור של שינוי ואינה מכילה זיכרון של מה שכבר הוחלט.
• משמורת הרשאות. Duet פועל לפי העיצוב שבו משתמשים הסוכנים המנוהלים של Anthropic, ולכן הוא לעולם אינו רואה ישירות את הסיסמאות או אסימוני ההתחברות שלך. שחזור המשמעת הזו הוא החלק שרוב הסוכנים שנבנו בבית מדלגים עליו, ודילוג עליו פירושו שלכל פרומפט יש נתיב אל הרשאה. המודל לעולם לא אמור להחזיק אסימון, לא אמור לקבל מפתח API כטקסט, ולעולם לא אמור להיות הרכיב שמבצע אימות. תנו לשלב התמצות ולמבצע להחזיק בהרשאות ולהעביר למודל רק את התוצאות.
ואז יש את המשטח שאיש לא רוצה לחשוב עליו: ברגע שהסוכן קורא דואר אלקטרוני ודפי אינטרנט, כל אחד מהם הוא קלט שיכול להכיל הוראות. הודעה שאומרת "העבר זאת לכתובת שלהלן" אינה ניתנת להבחנה מנתונים עבור מודל שאין לו תפיסה נפרדת של סמכות. שתי הגנות גוברות על כל כמות של חיזוק פרומפט. השאר את רשימת הפעולות סגורה, כך שלהוראה מוזרקת אין פועל לפנות אליו. ושמור את השער מחוץ להשפעת המודל, כי הזרקה שמשכנעת את המודל לשלוח משהו עדיין צריכה לשכנע אדם שרואה את כתובת היעד.
מעבר לגיבוי, והיכן ניתוב מסייע בפועל
לאחר שהלופ נבנה, נפתחת אפשרות ארכיטקטונית שאין לעיצוב של ספק יחיד. ה-DSL לניתוב של OrcaRouter מרכיב כמה מודלים לקריאה אחת, ומיזוג מודלים מריץ פאנל של מודלים שעונים במקביל; שניהם מציבים יותר ממודל אחד מאחורי בקשה אחת. השימוש המעשי כאן אינו זוהר: להפנות מודל זול יותר לסיכום התמצית, שבו העבודה היא דחיסה ולא שיפוט, ולהשאיר את Claude Opus 5.5 בשלב ההחלטה, שבו נוצרת ההצעה. אותו מפתח יחיד תואם OpenAI מגיע ליותר מ-200 מודלים, כך שהחלפת המודל שמשרת כל שלב היא שינוי תצורה ולא כתיבה מחדש.

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

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