5 שלב 2 — Skill-Building

Agent Teams — צוותי סוכנים ומערכות מרובות סוכנים

איך לקחת את הסוכנים הבודדים שבניתם ולהרכיב מהם צוותים שעובדים יחד: Lead + Teammates pattern, חלוקת משימות, Competing Hypotheses Debugging, תיאום חוצה-שכבות, וניהול שגיאות בצוות. אחרי הפרק הזה, תדעו מתי צוות סוכנים עדיף על סוכן יחיד — ואיך לתכנן, להפעיל, ולנהל אותו.

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

בפרק 4 בניתם סוכנים בודדים ב-TypeScript — API endpoints שמקבלים HTTP requests ומחזירים תשובות חכמות, webhook processors שמגיבים לאירועים, ו-streaming services שמציגים תשובות בזמן אמת. כל אחד מהסוכנים האלה פועל לבד. עכשיו אנחנו לוקחים את הסוכנים הבודדים האלה ומרכיבים מהם צוותים שמשתפים פעולה — Lead שמנהל ומסנתז, Teammates שעובדים במקביל על תת-משימות, ותוצאה אחת קוהרנטית שמשלבת כמה נקודות מבט. בפרק 6 נעבור מצוותים (עבודה מקבילית) לצינורות עבודה (Production Pipelines) — שרשראות עיבוד סדרתיות שכל שלב מזין את הבא, עם error handling, checkpointing, ו-monitoring מובנים.

מילון מונחים — מושגים חדשים בפרק
מונח (English) תרגום הסבר
Agent Teams צוותי סוכנים פיצ'ר ניסיוני (research preview) ב-Claude Code שמאפשר לכמה מופעי Claude לעבוד כצוות עם תקשורת ישירה ביניהם — בניגוד ל-subagents שמדווחים רק ל-parent
Lead Agent סוכן מוביל הסוכן המרכזי בצוות שאיתו אתם מדברים. מקבל את המשימה הגדולה, מפרק אותה, מחלק ל-Teammates, ומסנתז את התוצאות חזרה לתשובה אחת
Teammate חבר צוות סוכן שעובד על תת-משימה ספציפית בתוך הצוות. פועל בחלון הקשר (context window) נפרד משלו עם גישה מלאה ל-tools ול-filesystem
Competing Hypotheses השערות מתחרות שיטת דיבוג שבה כמה סוכנים חוקרים את אותו באג מזוויות שונות במקביל — Frontend, Backend, Database — ומי שמוצא את הבעיה ראשון "מנצח"
Cross-Layer Coordination תיאום חוצה-שכבות שימוש בצוות כדי לעבוד בו-זמנית על כמה שכבות של אפליקציה: Frontend, Backend, Database, Infrastructure — במקום לטפל בהן סדרתית
Task Decomposition פירוק משימות התהליך שבו ה-Lead (או אתם) מפרק משימה גדולה לתת-משימות עצמאיות שניתנות לעבודה במקביל בלי תלויות
Synthesis סינתזה / מיזוג השלב האחרון שבו ה-Lead לוקח את התוצאות מכל ה-Teammates ומרכיב תשובה אחת קוהרנטית — לא רק הצמדה, אלא מיזוג חכם
Manifest (team-plan.md) מנשר / תוכנית צוות מסמך שה-Lead יוצר ומתעד מי עושה מה, באילו קבצים כל Teammate עובד, ומה הפלט הצפוי — מונע קונפליקטים ומגדיר גבולות
Flat Team צוות שטוח מבנה צוות שבו כל ה-Teammates הם peers (שווי מעמד) וה-Lead רק מתאם ומסנתז — מתאים למחקר וסקירות מקביליות
Adversarial Team צוות יריבותי מבנה צוות שבו Teammate אחד מיישם ואחר מבקר ומנסה "לשבור" — כמו code review מובנה בתוך תהליך העבודה
Coordination Overhead תקורת תיאום העלות הנוספת בזמן, טוקנים, ומורכבות שנובעת מתקשורת בין סוכנים — גדלה באופן לא-ליניארי עם כל Teammate נוסף
מתחיל 15 דקות מושג חינם

מסוכן בודד לצוות סוכנים

עד עכשיו כל מה שעשינו בקורס הזה היה עם סוכן בודד. בפרק 1 הרצנו Claude Code ב-headless mode — סוכן אחד שמבצע משימה אחת ומחזיר תוצאה. בפרק 2 שלחנו אותו לעבוד ב-GitHub Actions — עדיין סוכן אחד, רק באוטומציה. בפרקים 3 ו-4 בנינו סוכנים מתוכנתים עם ה-SDK ב-Python וב-TypeScript — כל סוכן לבד בעולם שלו, מטפל במשימה ממוקדת.

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

תחשבו על סטארטאפ ישראלי שצריך להוסיף תמיכה באמצעי תשלום חדש — למשל Apple Pay. צריך לשנות את ה-Frontend (כפתור תשלום חדש, טופס, validation), את ה-Backend (endpoint חדש, business logic, אינטגרציה עם Apple), את ה-Database (מיגרציה, סכמה חדשה, שדות נוספים), ואת ה-Infrastructure (environment variables, secrets, deployment config). סוכן בודד יכול לעשות את כל זה — אבל סדרתית. קודם ה-Frontend, אחר כך ה-Backend, אחר כך ה-Database, אחר כך ה-Infrastructure. זה לוקח שעה-שעתיים כשסוכן אחד עושה הכל ברצף. מה אם ארבעה סוכנים יעבדו על ארבע השכבות במקביל?

Agent Teams (צוותי סוכנים) — זה הפיצ'ר הניסיוני (research preview) של Claude Code שבדיוק מאפשר את זה. כמה מופעי Claude עובדים כצוות: אחד מוביל (Lead), האחרים עובדים במקביל (Teammates), וה-Lead מסנתז הכל לתשובה אחת קוהרנטית. זה לא רק "הרצת כמה סוכנים ברקע" — זה מערכת מתואמת שבה הסוכנים יכולים לדבר ביניהם.

מצב נוכחי של Agent Teams (מרץ 2026)

סטטוס: Research Preview — מושבת כברירת מחדל, דורש הפעלה מפורשת עם environment variable. הפעלה: export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 (אפשר גם דרך settings.json: {"env": {"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"}}). הפיצ'ר הושק בפברואר 2026 (יחד עם מודל Opus 4.6) ומאז מתפתח באופן פעיל — דורש Claude Code v2.1.32 ומעלה. ה-API עלול להשתנות בין גרסאות, אבל הדפוסים והעקרונות כבר יציבים — ושווים ללמוד גם אם הממשק ישתנה. Agent Teams רשום ב-changelog כתכונה נתמכת, ו-Anthropic ממשיכים לשפר אותו.

ההבדל הקריטי מ-Subagents שלמדנו בפרקים קודמים: ב-Subagents, כל child agent מדווח רק ל-parent שלו — הוא לא יכול לדבר עם children אחרים. זו תקשורת חד-כיוונית: Parent שולח משימה, Child מחזיר תוצאה, Parent ממשיך. ב-Agent Teams, ה-Teammates יכולים לתקשר ישירות ביניהם, לשתף ממצאים, ולתאם עבודה בצורה עצמאית. זה ההבדל בין מנהל שמאציל לעובדים (subagents) לבין חדר פיתוח שבו מפתחים משתפים פעולה (teams).

בואו נראה את שלוש הגישות שלמדנו בקורס — בטבלה אחת:

גישה אנלוגיה תקשורת מתי להשתמש איפה למדנו
Subagents מנהל שמאציל משימות לעובדים חד-כיוונית: Parent → Child → Parent משימות ממוקדות שלא דורשות תיאום בין ה-children פרקים 3-4
Agent Teams חדר פיתוח עם מפתחים שמדברים ביניהם רב-כיוונית: Lead ↔ Teammates ↔ Teammates משימות מורכבות שדורשות תיאום וסינתזה פרק 5 (כאן!)
Pipelines פס ייצור — תחנה אחרי תחנה סדרתית: Stage A → Stage B → Stage C תהליכים שבהם כל שלב תלוי בקודם פרק 6
מסגרת החלטה: Subagents מול Teams מול Pipeline
אם... אז השתמשו ב... הסיבה
המשימות עצמאיות לחלוטין ולא צריכות תיאום ביניהן Subagents פחות תקורת תיאום, פשוט יותר לנהל, זול יותר
ה-Teammates צריכים לשתף ממצאים ולבנות על עבודת אחרים Agent Teams תקשורת ישירה בין Teammates חוסכת מעבר דרך ה-Parent
צריכים סינתזה חכמה של כמה נקודות מבט לתוצאה אחת Agent Teams ה-Lead מסנתז ולא רק מצרף — התוצאה קוהרנטית יותר
יש משימה פשוטה שצריכה חיזוק של סוכן נוסף אחד Subagent יחיד אל תבנו צוות למשימה שסוכן אחד מסיים ב-5 דקות
כל שלב תלוי בתוצאה של הקודם — A צריך לסיים לפני B Pipeline (פרק 6) צוות לא מתאים — צריך עיבוד סדרתי עם checkpoints
✍ עשו עכשיו 2 דקות

הפעילו Agent Teams בטרמינל שלכם. הריצו: export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1. כדי לוודא שנקלט, הריצו echo $CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS — צריך לראות 1. אם אתם רוצים שזה יישאר בין sessions, הוסיפו את השורה ל-~/.bashrc או ~/.zshrc שלכם. לחלופין, הוסיפו ל-~/.claude/settings.json: {"env": {"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"}} — זה אלגנטי יותר ועובד בכל הטרמינלים.

✍ עשו עכשיו 3 דקות

חשבו על הפרויקט הנוכחי שלכם. רשמו על דף: (1) האם יש בו לפחות 2 שכבות (Frontend + Backend? Backend + DB?)? (2) מהי משימה שעשיתם לאחרונה שדרשה לגעת בכמה קבצים? (3) האם הייתם יכולים לפצל את המשימה הזו ל-2-3 חלקים עצמאיים? רשמו — נשתמש בזה בהמשך.

בינוני 20 דקות מושג חינם

הדפוס Lead + Teammates

הארכיטקטורה של Agent Teams מבוססת על דפוס פשוט וחזק: Lead + Teammates. ה-Lead הוא הסוכן שאתם מדברים איתו — זה אותו Claude Code שפתחתם בטרמינל. הוא מקבל את המשימה הגדולה מכם, מפרק אותה לתת-משימות, ומחלק אותן ל-Teammates. כל Teammate עובד בצורה עצמאית בחלון הקשר שלו (context window נפרד), עם גישה מלאה ל-tools — קריאת קבצים, כתיבה, הרצת פקודות, ואפילו חיפוש באינטרנט. כשכולם מסיימים, ה-Teammates מדווחים ל-Lead, וה-Lead מסנתז את הכל לתשובה אחת שחוזרת אליכם.

זרימת התקשורת נראית כך:

אתםLeadTeammates (עובדים במקביל)Lead (סינתזה)אתם

בואו נראה איך זה עובד בפועל עם דוגמה קונקרטית. נניח שאתם אומרים ל-Claude Code (עם Teams מופעל): "תעשה ריפקטורינג למערכת ה-authentication שלנו." ה-Lead לא נכנס מיד לקוד — הוא מפרק את המשימה:

שלושת ה-Teammates מתחילים לעבוד במקביל. Teammate 1 סורק קבצים עם Grep ו-Read, Teammate 2 חוקר עם WebSearch, Teammate 3 מתחיל לתכנן ארכיטקטורה על בסיס מה שכבר יודע. כשהדוחות של 1 ו-2 מוכנים (בתור קבצים על ה-filesystem), Teammate 3 יכול לקרוא אותם ולשלב ממצאים.

כשכולם מסיימים, ה-Lead מקבל שלושה דיווחים ומסנתז: "על בסיס הסקירה של Teammate 1 שמצא שהטוקנים לא מסתובבים וה-password hashing משתמש ב-MD5, המחקר של Teammate 2 שממליץ על JWT rotation עם refresh tokens וpasskeys כ-MFA, ותכנון הארכיטקטורה של Teammate 3 — הנה תוכנית מיגרציה בת 4 שלבים."

הנקודה החשובה: ה-Lead יכול גם להקצות מחדש משימות. אם Teammate 2 מדווח שלא מצא מידע מספיק על passkeys, ה-Lead יכול לשלוח אותו לכיוון אחר ("תתמקד רק ב-JWT ו-OAuth"), או להעביר את המשימה ל-Teammate אחר. זו לא מערכת "fire and forget" — ה-Lead מנהל באופן אקטיבי.

מה הופך Lead טוב ל-Lead טוב? ה-Lead האפקטיבי ביותר הוא זה שמקבל הנחיות ברורות ממכם. ככל שתתנו לו prompt מפורט יותר — עם חלוקת תפקידים, קבצים, ופורמט פלט — הוא יחלק טוב יותר. אל תסמכו על ה-Lead "למצוא" את החלוקה הנכונה לבד.

גודל צוות — פחות זה יותר

שמרו על צוותים קטנים: 2-4 Teammates. למה? כי תקורת התיאום (coordination overhead) גדלה באופן לא-ליניארי עם כל Teammate נוסף. צוות של 2 — שני חוקרים, או מיישם מול מבקר. צוות של 3 — שלוש זוויות מקביליות, sweet spot לרוב המשימות. צוות של 4 — מקסימום מעשי. צוות של 5+? נדיר מאוד שמוצדק — כל Teammate נוסף צורך context, טוקנים, ותקורת תיאום, בעוד שהתשואה השולית יורדת. אם צריכים 5+, שקלו לפצל ל-2 צוותים או להשתמש ב-/batch (שמריץ עד 30 workers).

טעות נפוצה: לתת ל-Lead לבד להחליט על החלוקה

מפתחים רבים מבקשים "תפתור את הבעיה" ומקווים שה-Lead יחלק נכון. הבעיה: ה-Lead לא מכיר את הפרויקט שלכם כמוכם. הוא לא יודע ש-src/auth/ מחזיק 90% מהלוגיקה, או שהמיגרציות שבורות כבר חודש. מה לעשות במקום: תנו ל-Lead את החלוקה שלכם ב-prompt. במקום "תעשה ריפקטורינג" — כתבו "תעשה ריפקטורינג. Teammate 1 יסקור את src/auth/, Teammate 2 יחקור JWT best practices, Teammate 3 יתכנן מיגרציה." ככל שה-prompt מפורט יותר, התוצאה טובה יותר — וגם ה-Lead יחלק עבודה בצורה חכמה יותר.

✍ עשו עכשיו 3 דקות

קחו את המשימה שרשמתם קודם ופרקו אותה ל-prompt מובנה: (1) תיאור המשימה הגדולה, (2) 2-3 Teammates עם תפקיד ברור לכל אחד, (3) אילו קבצים כל Teammate רשאי לגעת, (4) מה ה-Lead צריך לסנתז בסוף. שמרו את ה-prompt — נשתמש בו בתרגיל.

בינוני 20 דקות אסטרטגיה חינם

חלוקת משימות ותיאום

הנקודה הקריטית בעבודה עם צוותי סוכנים היא חלוקת המשימות (Task Decomposition). חלוקה טובה = צוות יעיל שמסיים מהר ונותן תוצאה איכותית. חלוקה גרועה = בלגן, קונפליקטים, תוצאות שסותרות, ובזבוז טוקנים. הכלל הבסיסי: כל Teammate צריך תת-משימה עצמאית, מוגדרת היטב, עם קלט ופלט ברורים.

גבולות ברורים הם הכל. אם Teammate A צריך את הפלט של Teammate B כדי להתחיל — זה לא צוות, זה Pipeline (פרק 6). צוות עובד כשהמשימות מקביליות באמת. דוגמה טובה: שלושה Teammates שכל אחד סוקר חלק אחר של הקוד. דוגמה גרועה: Teammate 1 בונה API, Teammate 2 מחכה ל-API של Teammate 1 כדי לבנות Frontend שמתחבר אליו.

שיתוף נתונים בין Teammates — היתרון וגם הסיכון

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

הפתרון: דפוס ה-Manifest. ה-Lead (או אתם, ב-prompt) יוצר קובץ team-plan.md שמתעד בבירור: מי עושה מה, באילו קבצים כל Teammate עובד, ומה הפלט הצפוי. ה-Teammates קוראים את ה-manifest ויודעים לא לגעת בקבצים של אחרים. זה כמו גבולות גזרה בצבא — כל יחידה יודעת בדיוק איפה שלה ואיפה של אחרים.

דוגמה מייצגת: team-plan.md של צוות ריפקטורינג
# Team Plan: Authentication Refactoring
# Created by Lead on 2026-03-24

## Objective
Refactor the authentication system to use JWT rotation
and add passkey support.

## Lead Role
- Synthesize all findings into migration plan
- Resolve conflicts between teammate recommendations
- Final output: migration-plan.md

## Teammate 1: Code Reviewer
- Focus: Review current auth implementation
- Files (READ ONLY): src/auth/**, src/middleware/auth.ts
- Output: code-review-report.md
- DO NOT edit any source files

## Teammate 2: Research
- No file editing -- web search only
- Research: JWT rotation, OAuth 2.1, passkeys
- Output: best-practices-report.md

## Teammate 3: Architecture
- Files (WRITE): docs/architecture/**
- Output: new-architecture.md
- Reference reports from Teammates 1 and 2

## Conflict Prevention
- Only Teammate 3 writes to docs/
- Teammates 1 and 2 write ONLY to project root
- No teammate edits src/ files in this phase

שימו לב לסעיף Conflict Prevention ב-manifest. זה הסעיף הכי חשוב. בלעדיו, ב-50% מהמקרים (הערכה מניסיון) יהיה קונפליקט כלשהו — Teammate שעורך קובץ שלא שלו, או שניים שכותבים לאותו מיקום.

תקשורת מעבר ל-filesystem

מעבר לקבצים, ה-Teammates יכולים גם לתקשר ישירות דרך מנגנון ה-Teams. זה אומר ש-Teammate 3 (הארכיטקט) יכול לשאול את Teammate 1 (ה-Code Reviewer) שאלה ספציפית: "מצאת תלויות במודול X?" בלי לעבור דרך ה-Lead. זה היתרון המרכזי על Subagents — ב-subagents, כל תקשורת חייבת לעבור דרך ה-parent.

מסגרת החלטה: צ'קליסט פירוק משימות — 4 שאלות לפני הפעלת צוות

לפני שמפעילים צוות, עברו על 4 השאלות האלה. אם אחת מהתשובות "לא" — צוות כנראה לא מתאים:

# שאלה אם כן אם לא
1 האם אפשר לפצל את המשימה ל-2+ חלקים? ✔ המשיכו לשאלה 2 ✘ השתמשו בסוכן יחיד
2 האם התת-משימות עצמאיות (לא תלויות אחת בשנייה)? ✔ צוות מתאים — המשיכו ✘ שקלו Pipeline (פרק 6)
3 לכל תת-משימה יש קלט/פלט ברור? ✔ הגדירו ב-manifest ✘ חדדו את החלוקה לפני שמתחילים
4 האם אפשר למזג את התוצאות בסוף? ✔ הפעילו צוות! ✘ שקלו עיבוד סדרתי
טעות נפוצה: לשכוח למנוע קונפליקטים בקבצים

בלי manifest ברור, שני Teammates עלולים לערוך את אותו קובץ. התוצאה: הסוכן השני ידרוס את השינויים של הראשון — בלי שום אזהרה, בלי merge conflict, בלי דיווח שגיאה. פשוט — השינויים הראשונים נעלמים. מה לעשות במקום: תמיד הקצו ל-Teammates תיקיות או קבצים נפרדים. אם חייבים לערוך את אותו קובץ, הפכו את זה ל-Pipeline: Teammate 1 עורך, ואחרי שסיים Teammate 2 סוקר. אף פעם שניים על אותו קובץ במקביל.

✍ עשו עכשיו 4 דקות

קחו את המשימה מקודם ועברו עליה דרך צ'קליסט פירוק המשימות (4 השאלות). רשמו: ☐ ניתנת לפיצול? ☐ התת-משימות עצמאיות? ☐ קלט/פלט ברור? ☐ מיזוג אפשרי? אם אחת התשובות "לא" — שנו את החלוקה עד שכל 4 יהיו "כן."

🛠 תרגיל 1: תכנון צוות סוכנים והרצת ניסיון 25 דקות

מה תבנו: מסמך team-plan.md מלא לצוות של 3 Teammates, עם הרצת ניסיון ב-Claude Code.

  1. בחרו משימה מהפרויקט שלכם שמצדיקה 3 Teammates. דוגמאות: סקירת אבטחה + ביצועים + נגישות, הוספת פיצ'ר חוצה-שכבות, ניתוח קוד ממספר זוויות.
  2. כתבו team-plan.md עם הסעיפים הבאים:
    • Objective — מה המשימה הגדולה
    • Lead Role — מה ה-Lead מסנתז
    • לכל Teammate: שם תפקיד, תחום אחריות, קבצים מותרים (read/write), פורמט פלט
    • Conflict Prevention — מי כותב לאן
  3. הגדירו success criteria: איך תדעו שהצוות הצליח? מה צריכה להיות התוצאה הסופית?
  4. ודאו שהגדרתם CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
  5. פתחו Claude Code והריצו prompt שכולל את תוכן ה-team-plan. לדוגמה: "אנחנו צוות. הנה התוכנית: [הדביקו את תוכן ה-plan]. בבקשה התחל לחלק משימות ל-Teammates ולעבוד."
  6. צפו בתהליך ותעדו: איך ה-Lead חילק? ה-Teammates עבדו במקביל? כמה זמן לקח? התוצאה שימושית?

פלט צפוי: קובץ team-plan.md + מסמך קצר עם תיעוד התוצאות (מה ה-Lead סינתז, כמה זמן לקח, איכות 1-5, מה הייתם משנים).

מתקדם 25 דקות תרגול בתשלום

Competing Hypotheses Debugging

זה ה-use case הרוצח של Agent Teams — ולטעמי, הסיבה הכי משכנעת להשתמש בצוותים. כשיש לכם באג ואתם לא יודעים איפה לחפש, רוב המפתחים מתחילים לחקור סדרתית: קודם בודקים ב-Frontend, לא מוצאים כלום, עוברים ל-Backend, בודקים 20 דקות, לא מוצאים, עוברים ל-Database — ואז מגלים שהבעיה הייתה ב-caching layer. שעה אחת, שליש ממנה בזבוז מוחלט.

Competing Hypotheses (השערות מתחרות) הופך את הגישה הזו על הפנים. במקום לחקור סדרתית, שלושה Teammates חוקרים את אותו באג מזוויות שונות במקביל:

שלושתם חוקרים בו-זמנית. כל אחד סורק קבצים, מריץ grep, בודק logs, מזהה דפוסים חשודים. Teammate 2 מוצא שה-API מחזיר נתונים מ-cache ישן כי ה-cache invalidation שבור. Teammates 1 ו-3 לא מצאו בעיות משמעותיות בתחומים שלהם. ה-Lead מסנתז: "Teammate 2 מצא שה-API מחזיר נתונים מ-Redis cache שלא עודכן אחרי write. Teammates 1 ו-3 לא מצאו בעיות. הבאג ב-caching layer — ספציפית ב-cache invalidation logic."

הזמנים: במקום שעה של חקירה סדרתית, מצאנו את הבעיה ב-20 דקות. העלות: בערך פי 3 מחקירה בודדת — שלושה Teammates = שלוש ריצות מקביליות. אבל פי 3 ב-$1-2 זה $3-6, ופי שליש בזמן זה 40 דקות חסכון. בישראל, שעת מפתח עולה 150-300 ש"ח — אז 40 דקות שנחסכו שוות 100-200 ש"ח. ה-ROI ברור.

חישוב ROI — Competing Hypotheses Debugging

עלות טוקנים: ~$3-6 לריצת צוות של 3 Teammates (הערכה לפי שימוש ממוצע). זמן חקירה סדרתית ממוצע: ~60 דקות. זמן חקירה מקבילית: ~20 דקות. חיסכון: 40 דקות לכל session דיבוג. שווי שעת מפתח בישראל: 150-300 ש"ח (הערכת שוק). ROI פוטנציאלי: חיסכון של ~100-200 ש"ח לכל דיבוג session שמצליח, מול עלות של ~12-25 ש"ח בטוקנים. זה לא עובד בכל מקרה — אבל כשהבאג "מסתתר" ולא ברור איפה הוא, השיטה משתלמת.

מתי Competing Hypotheses עובד הכי טוב — ומתי לא

השיטה עובדת כמו חוקרים שבודקים תיאוריות שונות במקביל — מי שמוצא את התשובה ראשון "מנצח." הכי אפקטיבי כשלא יודעים איפה הבאג: בעיות שמתבטאות בשכבה אחת אבל נגרמות בשכבה אחרת (למשל, Frontend מציג שגיאה אבל הבעיה ב-Backend). לא מתאים כשכבר יודעים: אם כבר יש לכם חשד חזק ("זה בטוח ב-CSS" או "זו בעיית migration"), לא צריך צוות — תפנו סוכן יחיד ישירות לנקודה ותחסכו 2/3 מהעלות.

✍ עשו עכשיו 4 דקות

חשבו על באג שנתקעתם עליו לאחרונה (או באג שאתם מכירים מהעבודה). רשמו 3 השערות שונות (Hypotheses) לגבי מקור הבעיה — בשכבות שונות. לכל השערה, רשמו: (1) איזה קבצים/תיקיות לבדוק, (2) מה לחפש ספציפית, (3) מה יהווה "הוכחה" ש"זו הבעיה." אלה ה-3 Teammates של צוות הדיבוג שלכם.

הפורמט המומלץ ל-Competing Hypotheses prompt

כדי לקבל את התוצאות הטובות ביותר, תנו ל-Claude Code prompt מובנה שמגדיר בבירור את ההשערות. ככל שה-prompt ספציפי יותר — הממצאים טובים יותר:

דוגמה מייצגת: prompt לדיבוג Competing Hypotheses
I have a bug: users report that their profile changes
don't persist after refresh. This started 3 days ago
after a deploy.

Investigate using 3 competing hypotheses in parallel:

Hypothesis A (Frontend):
The form might not be sending the data correctly.
- Check: src/components/ProfileForm.tsx
- Check: src/hooks/useProfileUpdate.ts
- Look for: missing await, incorrect API URL,
  state not updating after submit, form not
  reading input values correctly

Hypothesis B (Backend):
The API might receive data but not save it properly.
- Check: src/api/routes/profile.ts
- Check: src/api/middleware/validation.ts
- Look for: missing fields in validation schema,
  errors silently caught and swallowed,
  wrong table/collection name

Hypothesis C (Database/Cache):
The save might work but reads return stale data.
- Check: src/db/queries/profile.ts
- Check: src/cache/redis-client.ts
- Look for: cache invalidation not happening on write,
  read replica lag, stale TTL settings,
  wrong cache key pattern

For each hypothesis, report:
1. Did you investigate thoroughly? (yes/no)
2. Did you find an issue? (yes/no + description)
3. What evidence supports your finding?
4. Confidence level (low/medium/high)
5. Suggested fix if applicable

שימו לב לפורמט: כל Hypothesis כולל קבצים ספציפיים, מה לחפש, ופורמט דיווח אחיד. זה מקל על ה-Lead לסנתז — כשכל Teammate מדווח באותו פורמט, ההשוואה פשוטה.

טעות נפוצה: לחקור בעיות פשוטות עם צוות שלם

אם הבאג הוא "הכפתור לא עובד" ואתם כבר יודעים שזה כנראה ב-Frontend — אל תבנו צוות של 3. תשלחו סוכן יחיד ל-Frontend. צוותים מתאימים לבעיות שבהן לא ידוע איפה הבעיה. בעיות שאתם כבר יודעים לאתר — סוכן יחיד מספיק ועולה שליש. הכלל: אם יש לכם חשד חזק (מעל 70%) באיזה שכבה הבעיה — סוכן יחיד. אם אתם "בחושך" — צוות.

✍ עשו עכשיו 2 דקות

לכל אחת מ-3 ההשערות שרשמתם, הוסיפו: "מה ה-evidence שיאשר את ההשערה?" — למשל: "אם Hypothesis A נכונה, אמצא שה-form handler לא שולח את ה-request בכלל (אין network call ב-DevTools)." זה עוזר ל-Teammates להיות ממוקדים.

🛠 תרגיל 2: Competing Hypotheses בפרויקט אמיתי 30 דקות

מה תבנו: ריצת דיבוג מקבילית על באג אמיתי (או מדומה) בפרויקט שלכם, עם תיעוד מלא של התהליך.

  1. בחרו באג — אמיתי עדיף. אבל אם אין אחד כרגע, צרו אחד בכוונה: למשל, שנו שם של field ב-Database schema (או ב-API response) בלי לעדכן את ה-Frontend שקורא אותו. זה מדמה באג אמיתי שקשה לאתר.
  2. כתבו 3 השערות — כל אחת בשכבה אחרת. כל השערה = Teammate אחד. השתמשו בפורמט שראינו למעלה.
  3. כתבו prompt מובנה עם: תיאור הבאג, 3 השערות, קבצים לבדוק בכל אחת, פורמט דיווח.
  4. הריצו ב-Claude Code עם Agent Teams מופעל. צפו בתהליך — שימו לב איך ה-Lead מחלק ואיך ה-Teammates עובדים.
  5. תעדו את התוצאות: איזו השערה נמצאה נכונה? כמה זמן לקח? מה העלות בטוקנים (בדקו ב-statusline)?
  6. השוו: אם הייתם מחפשים סדרתית, כמה זמן הייתם מבזבזים? רשמו את ההשוואה.

פלט צפוי: דו"ח דיבוג קצר (1-2 עמודים) — 3 השערות, מה נמצא, ניתוח הזמן והעלות, ותובנות לשימוש עתידי.

מתקדם 20 דקות תרגול בתשלום

תיאום חוצה-שכבות

אפליקציות מודרניות מורכבות מכמה שכבות (layers): Frontend (UI), Backend (API, logic), Database (data), ו-Infrastructure (config, deployment). כשצריך להוסיף פיצ'ר חדש שחוצה כמה שכבות — למשל, אמצעי תשלום חדש, שדה פרופיל חדש, או סוג משתמש חדש — צריך לגעת בכל אחת מהן. עם סוכן בודד, העבודה סדרתית ומתישה. עם צוות, כל שכבה מטופלת במקביל.

הנה דוגמה קונקרטית בהקשר ישראלי. סטארטאפ ב-fintech שמוסיף תמיכה ב-Apple Pay:

Teammate שכבה מה עושה קבצים / תיקיות
Frontend Dev UI מוסיף Apple Pay button, טופס, validation, error states, loading spinner src/components/Payment/**
Backend Dev API מוסיף POST /api/payment/apple-pay endpoint, business logic, Apple Pay SDK integration src/api/routes/payment/**
Data Engineer Data יוצר migration חדשה, מעדכן schema — טבלת transactions עם payment_method column src/db/migrations/**
DevOps Config מוסיף Apple Pay merchant ID ל-env vars, מעדכן secrets, deployment config, health checks infra/**, .env.example, docker-compose.yml

התפקיד הקריטי של ה-Lead: לוודא עקביות בין השכבות. ה-Frontend Teammate בונה UI שמצפה ל-endpoint POST /api/payment/apple-pay עם body בפורמט מסוים. ה-Backend Teammate בונה POST /api/payments/apple — URL אחר! בלי ה-Lead שמוודא שה-API contracts תואמים — כל Teammate יבנה את שלו ובסוף שום דבר לא יתחבר.

דפוס "Contract Document" — חובה בצוותים חוצי-שכבות

לפני שמפעילים צוות חוצה-שכבות, צרו מסמך חוזה (contract document) שמגדיר את ה-API — routes, HTTP methods, request/response formats, שמות שדות, error codes. כל ה-Teammates מקבלים את המסמך הזה כנקודת ייחוס. זה מבטיח שהפלטים שלהם תואמים. דוגמה קצרה:

# API Contract: Apple Pay
POST /api/payment/apple-pay
Request: { token: string, amount: number, currency: "ILS" }
Response 200: { transactionId: string, status: "success" }
Response 400: { error: string, code: string }
DB Column: transactions.payment_method = "apple_pay"

כל ה-Teammates מתייחסים למסמך הזה. ה-Frontend יודע איזה endpoint לפנות, ה-Backend יודע מה לקבל ולהחזיר, ה-DB יודע איזה ערך לשמור.

היתרון בזמן: שינוי חוצה-שכבות עם סוכן בודד לוקח בממוצע פי 3-4 יותר זמן מצוות. הסיבה: הסוכן צריך להחליף הקשר (context switch) בין שכבות — לקרוא קוד Frontend, לזכור את ה-schema, לעבור ל-Backend, לחזור ל-Frontend כדי לוודא עקביות. צוות עובד במקביל — 4 שכבות בזמן של שכבה אחת, פלוס תקורת תיאום של ה-Lead.

✍ עשו עכשיו 3 דקות

תסתכלו על מבנה הפרויקט שלכם (ls ברמת root) ותזהו את השכבות: האם יש תיקיית Frontend (src/components, client, app)? Backend (src/api, server, routes)? Database (db, migrations, models)? Infrastructure (infra, docker, .github)? רשמו לכל שכבה את התיקיות הרלוונטיות — זה ה-basis לצוות חוצה-שכבות שלכם.

בינוני 15 דקות אסטרטגיה חינם

מתי צוותים מנצחים סוכן יחיד

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

5 מצבים שבהם צוותים מנצחים

1. משימות מחקר נרחבות. כמה Teammates מחפשים במקורות שונים בו-זמנית. Teammate 1 סורק את ה-docs הרשמיים, Teammate 2 חופש ב-codebase הפנימי, Teammate 3 בודק GitHub issues ו-Stack Overflow. ה-Lead מסנתז ממצאים מכל המקורות לתשובה אחת מקיפה. סוכן יחיד היה מחפש מקור אחרי מקור — הצוות מחפש בכולם במקביל.

2. סקירות קוד מקיפות (Code Review). צריכים לסקור PR גדול? Teammate 1 בודק אבטחה (vulnerabilities, injection, auth), Teammate 2 בודק ביצועים (N+1 queries, memory, re-renders), Teammate 3 בודק נגישות (ARIA labels, keyboard navigation, contrast). כל אחד מומחה בתחום שלו. יחד — סקירה מקיפה שמכסה 3 ממדים, לא רק אחד.

3. Competing Hypotheses Debugging (ראינו בסעיף 5.4). כשלא יודעים איפה הבאג ויש 3 כיוונים אפשריים — שלושה חוקרים במקביל מוצאים מהר יותר מחוקר אחד שבודק אחד-אחד.

4. שינויים חוצי-שכבות (ראינו בסעיף 5.5). Frontend + Backend + Database + Infrastructure בו-זמנית, עם contract document ו-Lead שמוודא עקביות.

5. יצירת תוכן מורכב. Teammate 1 חוקר מקורות, Teammate 2 כותב טיוטה על בסיס research ראשוני, Teammate 3 עורך ומשפר — שלבים חופפים שלא חייבים להיות סדרתיים לחלוטין. ה-Lead מרכיב את הגרסה הסופית.

4 מצבים שבהם צוותים לא עוזרים (ועלולים להזיק)

1. משימות עם תלויות סדרתיות. אם שלב B תלוי בפלט של שלב A — צריך Pipeline (פרק 6), לא Team. Team מניח שכולם יכולים לעבוד במקביל. אם יש תלות — צוות לא רק שלא עוזר, אלא מבזבז טוקנים על Teammates שמחכים.

2. משימות קטנות ופשוטות. אם סוכן יחיד מסיים ב-5 דקות — תקורת הצוות (כתיבת manifest, הגדרת roles, תיאום, סינתזה) גדולה מהתועלת. הכלל: אם המשימה לוקחת פחות מ-15 דקות לסוכן יחיד — אל תשתמשו בצוות.

3. חשיבה עמוקה על נושא אחד. עיצוב ארכיטקטורה, כתיבת אלגוריתם מורכב, קבלת החלטה אסטרטגית — אלה משימות שדורשות "Single-threaded deep reasoning." סוכן אחד עם Opus ו-effort גבוה עדיף על שלושה Teammates עם Sonnet. לפצל חשיבה עמוקה ל-3 חלקים רק מדלל את העומק.

4. תקציב מוגבל. צוות של 3 Teammates עולה לפחות פי 3 מסוכן יחיד (ולפעמים פי 4-5 עם תקורת תיאום). אם אתם מוגבלים בטוקנים או בתקציב חודשי, סוכן יחיד עם prompt מדויק יותר אפקטיבי מצוות שחורג מהתקציב.

מסגרת החלטה: מטריצת Team Decision
סוג משימה תועלת מצוות המלצה הסבר
תת-משימות עצמאיות במקביל 🟢 גבוהה Team מקבילות אמיתית = חיסכון זמן ליניארי
תלויות סדרתיות 🔴 נמוכה Pipeline Teammates שמחכים = בזבוז טוקנים
חשיבה עמוקה על נושא אחד 🔴 נמוכה סוכן יחיד + Opus פיצול מדלל עומק — Opus בודד עדיף
Competing Hypotheses 🟢 גבוהה מאוד Team 3 חוקרים במקביל מוצאים ב-1/3 זמן
שינוי חוצה-שכבות 🟢 גבוהה Team כל שכבה = Teammate עם contract
משימה קטנה (פחות מ-15 דקות) 🟠 שלילית סוכן יחיד תקורת צוות > התועלת
✍ עשו עכשיו 3 דקות

חשבו על 3 משימות שעשיתם בחודש האחרון (או שאתם מתכננים לעשות). לכל אחת, סווגו: Team / Pipeline / סוכן יחיד. רשמו למה. זו המטריצה האישית שלכם — שמרו אותה ותעדכנו אחרי שתצברו ניסיון.

✍ עשו עכשיו 2 דקות

בדקו את עלויות השימוש שלכם: כנסו ל-/config ב-Claude Code ובדקו שה-cost display מופעל. הריצו משימה קצרה (שאלה פשוטה) ורשמו את העלות שמוצגת ב-statusline. תכפילו ב-3 — זו העלות המינימלית המשוערת של אותה משימה כצוות של 3.

בינוני 25 דקות אסטרטגיה חינם

עיצוב מבני צוות אפקטיביים

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

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

מבנה 1: Flat Team (צוות שטוח)

מה זה: כל ה-Teammates הם peers (שווי מעמד) — אין היררכיה ביניהם. ה-Lead רק מתאם את החלוקה ומסנתז את התוצאות, הוא לא "מנהל." מתי: משימות מחקר, סקירה, review, ו-Competing Hypotheses — כל מקום שבו כל Teammate בודק זווית שונה של אותה בעיה בלי תלות באחרים. דוגמה: סקירת קוד מקיפה — security reviewer, performance reviewer, accessibility reviewer — כולם peers, ה-Lead מרכיב את הממצאים. עלות: נמוכה-בינונית — אין תקשורת בין Teammates, רק דיווח ל-Lead.

מבנה 2: Specialist Team (צוות מומחים)

מה זה: כל Teammate הוא מומחה בתחום ספציפי — Frontend Expert, Backend Expert, Database Expert, DevOps Expert. מתי: שינויים חוצי-שכבות שדורשים מומחיות שונה בכל שכבה — כל Teammate "מדבר את השפה" של השכבה שלו ויודע את ה-patterns שלה. דוגמה: הוספת פיצ'ר שחוצה Frontend + Backend + DB — כל Teammate עובד בשכבה שלו, ה-Lead מוודא עקביות דרך contract document. עלות: בינונית — יש צורך ב-contract document ובתיאום מה-Lead.

מבנה 3: Adversarial Team (צוות יריבותי)

מה זה: Teammate אחד מיישם ואחר מבקר ומנסה "לשבור". כמו code review מובנה בתוך הצוות. מתי: משימות שבהן איכות קריטית — קוד אבטחה, לוגיקה פיננסית (חישוב מע"מ, עמלות, המרת מטבע), ממשקי API ציבוריים, הרשאות ו-access control. דוגמה: Teammate 1 כותב middleware להרשאות, Teammate 2 מקבל את הקוד ומנסה למצוא דרכים לעקוף את ההרשאות, ה-Lead מוודא שכל הפידבק טופל. עלות: בינונית-גבוהה — Teammate 2 חלקית תלוי ב-Teammate 1 (צריך לחכות לגרסה ראשונה).

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

מבנה 4: Hierarchical Team (צוות היררכי)

מה זה: ה-Lead מאציל ל-sub-leads שכל אחד מנהל Teammates משלו. שכבה נוספת של ניהול. מתי: משימות ענקיות בלבד — למשל, ריפקטורינג של מערכת שלמה עם 10+ מודולים. אזהרה: השתמשו בזה בזהירות רבה מאוד. העלות גבוהה (כל sub-lead = context window נוסף = טוקנים נוספים), התיאום מורכב, והתוצאות לא תמיד מצדיקות את ההשקעה. ברוב המקרים, צוות שטוח או מומחים עדיף. אם המשימה באמת ענקית — שקלו /batch שמריץ עד 30 workers ב-worktrees נפרדים.

מבנה גודל מומלץ מתאים ל... עלות יחסית תלות בין Teammates
Flat 2-4 מחקר, סקירה, Competing Hypotheses נמוכה-בינונית אפסית
Specialist 3-4 שינויים חוצי-שכבות בינונית נמוכה (דרך contract)
Adversarial 2 קוד קריטי, אבטחה, פיננסי בינונית-גבוהה חלקית (builder → critic)
Hierarchical 5+ (נדיר) משימות ענקיות בלבד גבוהה מאוד מורכבת

הקצאת מודלים — ניצול חכם של תקציב

לא כל ה-Teammates צריכים את אותו מודל. זה כמו בצוות פיתוח אמיתי — הארכיטקט הבכיר צריך להיות חזק (Opus), אבל ה-QA שבודק test coverage יכול להיות junior (Sonnet). ה-Lead ו-Teammates קריטיים (אבטחה, סינתזה, ארכיטקטורה) — Opus 4.6. Teammates שעושים עבודה מובנית ושגרתית (סריקה, בדיקות, שאילתות פשוטות) — Sonnet 4.6 מספיק. זה יכול לחסוך 40-60% מעלות הצוות בלי ירידה משמעותית באיכות.

דוגמה מייצגת: הקצאת מודלים לצוות CI/CD Review
תפקיד מודל סיבה עלות משוערת
Lead Synthesizer Opus 4.6 סינתזה דורשת הבנה עמוקה של כל הדוחות — שווה את ההשקעה ~$1.50-2.00
Security Reviewer Opus 4.6 אבטחה קריטית — vulnerability detection דורש מודל חזק ~$1.50-2.00
Performance Reviewer Sonnet 4.6 סריקת bottlenecks מובנית — patterns ידועים, Sonnet מספיק ~$0.30-0.50
Coverage Reviewer Sonnet 4.6 בדיקת test coverage — מובנית ופשוטה יחסית ~$0.30-0.50
סה"כ משוער לכל PR ~$3.60-5.00
טעות נפוצה: להשתמש ב-Opus לכל ה-Teammates "ליתר ביטחון"

Opus עולה פי 5-10 מ-Sonnet לכל request. אם כל 4 ה-Teammates רצים על Opus, הצוות עולה 4x-Opus — יכול להגיע ל-$12-20 לריצה אחת. אם 2 מתוכם רצים על Sonnet, העלות יורדת ל-~$5-8. הכלל: Opus ל-Lead ולמשימות שדורשות שיפוט (אבטחה, ארכיטקטורה, סינתזה), Sonnet לכל השאר (סריקה, בדיקות, formatting). ברוב המקרים לא תרגישו הבדל באיכות של ה-Sonnet Teammates — כי המשימות שלהם מובנות מספיק.

✍ עשו עכשיו 4 דקות

בחרו את המשימה שלכם (מתרגיל 1 או חדשה) ותחליטו 3 דברים: (1) איזה מבנה צוות מתאים — Flat / Specialist / Adversarial? (2) כמה Teammates צריך? (3) אילו מודלים לכל Teammate — Opus או Sonnet? רשמו את ההחלטות — זה חלק מהפורטפוליו שלכם.

🛠 תרגיל 3: בניית פורטפוליו מבני צוות 30 דקות

מה תבנו: פורטפוליו של 3 מבני צוות שונים, עם תיעוד מלא ותוצאות ניסיון.

  1. צוות Flat: הגדירו צוות של 3 Teammates peers למשימת מחקר או סקירת קוד. כתבו manifest, הריצו ב-Claude Code, ותעדו: זמן, עלות, איכות תוצאה (1-5).
  2. צוות Specialist: הגדירו צוות של 2-4 Teammates מומחים לשינוי חוצה-שכבות. כתבו contract document, הריצו, ותעדו.
  3. צוות Adversarial: הגדירו צוות של 2 — Builder ו-Critic — למשימה קריטית (validation logic, auth middleware, חישוב עמלות). הריצו ותעדו.
  4. לכל צוות, תעדו:
    • מבנה ותפקידים
    • מודלים שהוקצו
    • ה-prompt שנתתם
    • זמן ריצה ועלות בטוקנים
    • איכות התוצאה (1-5, עם נימוק)
    • מה הייתם משנים בפעם הבאה
  5. כתבו מסמך השוואה: איזה מבנה עבד הכי טוב ולמה? מה הפתיע אתכם?

פלט צפוי: מסמך team-portfolio.md עם 3 מבני צוות מתועדים, תוצאות מפורטות, טבלת השוואה, ותובנות.

מתקדם 15 דקות מושג חינם

טיפול בשגיאות וריקברי בצוות

מה קורה כש-Teammate נכשל? בניגוד לסוכן יחיד שפשוט מחזיר שגיאה ואתם צריכים לנסות שוב — בצוות יש אפשרויות ריקברי (recovery) יותר מתוחכמות. ה-Lead מקבל דיווח כישלון ויכול להקצות מחדש, לעקוף, או לעבוד עם תוצאות חלקיות. בואו נעבור על התרחישים.

תרחיש 1: Teammate יחיד נכשל

ה-Lead מקבל: "Teammate 2 failed — API rate limit error." מה האופציות? (א) הקצאה מחדש: ה-Lead מעביר את המשימה ל-Teammate אחר שעדיין לא עמוס. (ב) עקיפה: ה-Lead ממשיך בלי Teammate 2 ומסנתז מ-Teammates 1 ו-3 בלבד — עם הערה שהסקירה חלקית. (ג) ניסיון נוסף: ה-Lead מחכה רגע ושולח את Teammate 2 לנסות שוב.

תרחיש 2: הצלחה חלקית — 2 מתוך 3

זה התרחיש הנפוץ ביותר. 2 מתוך 3 Teammates הצליחו. ה-Lead לא חייב להפיל הכל — הוא יכול לסנתז תוצאה שימושית ממה שיש. למשל: Security Reviewer הצליח, Performance Reviewer הצליח, Coverage Reviewer נפל. ה-Lead יגיד: "הנה סקירת אבטחה וביצועים מלאה. סקירת coverage לא הושלמה — מומלץ להריץ ידנית עם jest --coverage." תוצאה חלקית שימושית עדיפה על כישלון מוחלט.

תרחיש 3: Teammate תקוע — עובד יותר מדי זמן

Teammate עובד כבר 10 דקות על משימה שצריכה לקחת 3. הוא "תקוע" — אולי נכנס ללולאה, אולי קורא קבצים אינסופיים. ה-Lead יכול לסיים אותו (terminate) ולדווח על תוצאות חלקיות. הגדרת timeout לכל Teammate מונעת סיטואציות שבהן צוות שלם — ואתם — מחכים ל-Teammate אחד איטי.

דפוס Fallback to Sequential — ה-Plan B שלכם

אם Teams לא יציב (זכרו — עדיין research preview), תמיד צריך להיות נתיב גיבוי: הריצו את אותן משימות סדרתית עם סוכן יחיד. יותר איטי, אבל אמין ב-100%. הכלל: אף פעם אל תשלחו צוות לעבודה קריטית בלי שיש לכם Plan B. מה ה-Plan B? סדרת prompts לסוכן יחיד שעושות את אותן 3 משימות אחת-אחת. זה לוקח 3x זמן, אבל עובד תמיד.

בקרת עלויות בצוותים — הגדירו תקרה

הגדירו תקרת תקציב (budget ceiling) לכל ריצת צוות. אם העלות הכוללת חורגת מהסף — ה-Lead מפסיק ומדווח תוצאות חלקיות. בלי תקרה, צוות של 4 Teammates שכל אחד "חוקר" בלי סוף (קורא קבצים, מריץ חיפושים, מנתח) יכול לעלות $50+ בלי תוצאה שימושית. תקרה סבירה לרוב המשימות: $10-15 לכל ריצת צוות. אם צריך יותר — בדקו שהמשימה באמת מצדיקה.

✍ עשו עכשיו 3 דקות

לצוות שתכננתם בתרגיל 1, הוסיפו 3 שורות ל-team-plan.md: (1) Failure policy: מה קורה אם Teammate נכשל? (עקיפה / הקצאה מחדש / ניסיון נוסף). (2) Timeout: כמה זמן לתת לכל Teammate לפני שמפסיקים? (3) Budget ceiling: כמה $ מקסימום לכל הצוות?

טעות נפוצה: לא להגדיר fallback plan מראש

מפתחים בונים צוות, מפעילים אותו, הצוות נתקע או נכשל — ואז מתחילים לחשוב מה לעשות. זה בזבוז זמן. מה לעשות במקום: לכל צוות, הגדירו מראש: (1) מה ה-Plan B אם Teams לא עובד? (2) איזה חלק מהתוצאה אפשר להשתמש בו גם אם רק 2/3 הצליחו? (3) מתי מפסיקים ועוברים ל-Plan B? כמו גנרטור חירום בבניין — מקווים שלא צריך, אבל חייב שיהיה.

מתקדם 20 דקות כלי בתשלום

צוותי סוכנים ב-CI/CD

אחד היישומים המעשיים ביותר של Agent Teams הוא סקירת PR אוטומטית מקיפה. בפרק 2 למדנו איך Claude Code עובד ב-GitHub Actions כ-reviewer יחיד — תופס באגים, מציע שיפורים, מפרגן על קוד טוב. עכשיו אנחנו מדברים על צוות reviewers — כל אחד מתמחה בתחום אחר, וביחד הם נותנים סקירה שאף reviewer יחיד לא יכול לתת.

הרעיון פשוט: כש-PR נפתח, ה-CI pipeline מפעיל צוות של 3 reviewers + Lead synthesizer:

ה-Lead Synthesizer (Opus) לוקח את שלושת הדוחות ומרכיב תגובת PR אחת קוהרנטית. לא 3 תגובות נפרדות שמבלבלות את המפתח — תגובה אחת מסודרת עם sections: "Security Findings," "Performance Findings," "Coverage Gaps." המפתח מקבל review מקיף ומאורגן.

יישום עם Agent SDK — מהפרקים הקודמים

ב-CI pipeline, אתם משתמשים ב-Agent SDK (Python מפרק 3 או TypeScript מפרק 4) כדי לתזמר את הצוות פרוגרמטית. זה לא שימוש אינטראקטיבי ב-Claude Code — זה קוד אוטומציה שמפעיל סוכנים, מקבל תוצאות, ומפרסם תגובה.

דוגמה מייצגת: CI Review Team — מבנה קונספטואלי
# Conceptual pipeline structure (Python pseudocode)
# Based on patterns from Chapter 3 (Agent SDK Python)

import asyncio
from agent_sdk import Agent

async def review_pr(pr_diff: str, file_list: list[str]):

    # Stage 1: Run 3 specialized reviewers in parallel
    security = Agent(
        model="opus-4.6",
        instructions="You are a security reviewer. Focus ONLY on vulnerabilities.",
        tools=["Read", "Grep"]
    )
    performance = Agent(
        model="sonnet-4.6",
        instructions="You are a performance reviewer. Focus ONLY on bottlenecks.",
        tools=["Read", "Grep"]
    )
    coverage = Agent(
        model="sonnet-4.6",
        instructions="You are a coverage reviewer. Identify missing tests.",
        tools=["Read", "Grep", "Bash"]
    )

    # Run all 3 in parallel
    results = await asyncio.gather(
        security.run(f"Review this PR for security issues:\n{pr_diff}"),
        performance.run(f"Review this PR for performance issues:\n{pr_diff}"),
        coverage.run(f"Review this PR for test coverage gaps:\n{pr_diff}"),
    )

    # Stage 2: Lead synthesizes into one coherent review
    lead = Agent(model="opus-4.6", instructions="Synthesize reviews.")
    final = await lead.run(f"""
        Combine these 3 reviews into ONE cohesive PR comment:
        ## Security: {results[0].text}
        ## Performance: {results[1].text}
        ## Coverage: {results[2].text}
        Format: markdown with severity labels (Critical/Warning/Info).
    """)

    # Stage 3: Post to GitHub
    github.post_pr_comment(pr_number, final.text)

שימו לב: הקוד משתמש ב-asyncio.gather כדי להריץ את 3 ה-reviewers במקביל — בדיוק כמו שלמדנו בפרק 3. כל reviewer הוא Agent נפרד עם מודל ו-instructions ספציפיים. ה-Lead Synthesizer מקבל את 3 הדוחות ומרכיב תגובה אחת.

הטרייד-אוף: 3x-4x מעלות review יחיד, אבל תופס סוגי בעיות שסוכן יחיד מפספס. review יחיד בדרך כלל מתמקד בנושא אחד (או סוקר ברמת שטח). צוות של 3 מומחים מכסה 3 ממדים לעומק. בפרויקט עם 10+ מפתחים שמוציאים PRs יומי — ההשקעה מצדיקה את עצמה. בפרויקט יחיד עם PR בשבוע — כנראה שלא.

חישוב עלות CI Review Team (הערכות מבוססות שימוש)

Review יחיד (סוכן בודד): ~$0.50-1.00 לכל PR. צוות של 3 + Lead: ~$3-5 לכל PR. פרויקט עם 20 PRs בשבוע: ~$60-100/שבוע לצוות מול ~$10-20 ל-review יחיד. ההפרש: ~$50-80/שבוע (~200-300 ש"ח). שאלת ה-ROI: האם הבאגים שנתפסים שווים את זה? אם באג אבטחה אחד בחודש נמנע (שעלול לעלות אלפי ש"ח בנזק) — ההשקעה מוצדקת. אם הפרויקט low-risk — כנראה שלא.

✍ עשו עכשיו 3 דקות

כנסו ל-GitHub (או GitLab/Bitbucket) של הפרויקט שלכם ומצאו PR אחד שמורג'ג לאחרונה. חשבו: אם 3 reviewers היו בודקים אותו (אבטחה, ביצועים, כיסוי) — מה היו מוצאים שה-review הנוכחי פספס? רשמו לפחות פריט אחד שכנראה לא נבדק.

בינוני 10 דקות מושג חינם

העתיד של מערכות מרובות סוכנים

Agent Teams נכון להיום (מרץ 2026) הוא research preview — פיצ'ר ניסיוני שמושבת כברירת מחדל. Anthropic עובדים עליו באופן פעיל, ויש כמה כיוונים מרתקים בהתפתחות.

לאן זה הולך — 3 כיוונים

צוותים פרסיסטנטיים (Persistent Teams): היום כל ריצת צוות מתחילה מאפס — ה-Teammates לא "זוכרים" מה היה בפעם הקודמת. בעתיד, צוותים ישמרו ידע בין sessions. ה-Security Reviewer "יזכור" מה הוא מצא בסקירה הקודמת ויתמקד בקוד חדש. זה ידרוש מנגנון persistent memory מובנה — משהו שמזכיר את Auto-Memory שיש כבר ב-Claude Code, אבל ברמת צוות.

צוותים חוצי-repos (Cross-Repository Teams): היום הצוות עובד על repository אחד. בעתיד, Teammate 1 יעבוד ב-frontend repo, Teammate 2 ב-backend repo, ו-Teammate 3 ב-infrastructure repo — כולם מתואמים. זה רלוונטי לארגונים עם monorepo, ועוד יותר לארגונים עם microservices.

צוותים עם בני אדם (Human-in-the-Loop Teams): החזון הגדול — "צוות הנדסת AI" שבו המוביל הוא אדם (ארכיטקט, tech lead), וה-Teammates הם סוכני AI שמיישמים, בודקים, סוקרים, ופורסים. האדם מגדיר כיוון ומקבל החלטות אסטרטגיות, ה-AI מבצע את העבודה הטקטית. זה כבר קורה חלקית עם Remote Control (שלמדנו שהושק בפברואר 2026) — אדם שמנהל session מהטלפון בזמן שסוכנים עובדים.

מגבלות של היום — מה צריך להשתפר

מהשטח: Anthropic בנו קומפיילר C עם 16 סוכנים

Anthropic עצמם השתמשו ב-Agent Teams כדי לבנות קומפיילר C מבוסס Rust שמסוגל לקמפל את ליבת Linux — פרויקט של כ-100,000 שורות קוד. הם הריצו 16 סוכנים במקביל לאורך כמעט 2,000 sessions של Claude Code. זה מראה את הפוטנציאל האמיתי של הטכנולוגיה — גם אם עדיין ב-research preview, צוותים גדולים של סוכנים כבר מסוגלים לבצע משימות הנדסיות ברמה גבוהה מאוד. המסקנה: הדפוסים שלמדנו פה (Lead + Teammates, manifest, חלוקת אחריות) הם בדיוק מה ש-Anthropic עצמם משתמשים בהם — רק בסקייל אחר.

מה אפשר לעשות כבר עכשיו

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

✍ עשו עכשיו 3 דקות

כתבו "רשימת משאלות" קצרה: 3 דברים שהייתם רוצים שצוותי סוכנים יוכלו לעשות עבורכם — דברים שהיום לוקחים לכם הרבה זמן או שאתם לא עושים כי אין bandwidth. שמרו את הרשימה. כשהפיצ'ר יתפתח ויתייצב, בדקו אם המשאלות הפכו למציאות.

🛠 תרגיל 4: תכנון CI/CD Review Team מלא 25 דקות

מה תבנו: תבנית מלאה ל-CI/CD Review Team — מוכנה ליישום כשתרצו לשלב בפרויקט.

  1. בחרו פרויקט (שלכם או open source) שיש בו PRs.
  2. הגדירו 3 reviewer roles: לכל reviewer — מה בודק, באילו קבצים מתמקד, עם איזה מודל (Opus/Sonnet), מה ה-output format (findings list עם severity: Critical/Warning/Info).
  3. כתבו prompt template לכל reviewer: מה הוא מקבל כ-input (PR diff, changed files list, repo context), ומה הוא מחזיר.
  4. כתבו prompt template ל-Lead Synthesizer: איך הוא ממזג 3 דוחות לתגובה אחת מסודרת. כללו: format, severity ordering, actionability.
  5. חשבו ROI: כמה PRs בשבוע? עלות $ לכל PR? עלות חודשית? כמה באגים בחודש צוות כזה עשוי לתפוס? כמה עולה באג שלא נתפס (שעות מפתח, downtime)?

פלט צפוי: מסמך ci-review-team-template.md עם roles, prompt templates, model assignments, ו-ROI calculation.

שגרת עבודה — צוותי סוכנים

בנוסף לשגרה מפרקים 3 ו-4 (ניהול סוכנים בודדים, SDK maintenance, חשבונות API):

תדירות משימה פירוט
יומי שאלת Team vs Solo לפני כל משימה מורכבת, 10 שניות: "האם זה צריך צוות?" — רוב הפעמים לא, אבל כשכן — זה חוסך שעות
יומי Review team outputs אם הרצתם צוות — קראו את הסינתזה של ה-Lead בקריאות ביקורתית. אל תסמכו עיוורון — בדקו שהממצאים הגיוניים
שבועי בדיקת עלויות צוותים ב-/config בדקו כמה עלו ריצות הצוות השבוע. חשבו: ה-ROI חיובי? הצוותים חסכו זמן שמצדיק את העלות?
שבועי עדכון team templates שפרו את ה-manifests וה-prompts שלכם על סמך תוצאות — מה עבד? מה לא? אילו Teammates היו מיותרים?
שבועי ניסוי מבנה או prompt חדש נסו מבנה צוות שלא ניסיתם (Adversarial? Specialist?) או prompt מתוקן — על משימה לא-קריטית
חודשי סקירת פורטפוליו צוותים סקרו את כל מבני הצוות שניסיתם: מה הכי אפקטיבי לתחום שלכם? מה לזנוח? מה לשפר?
חודשי בדיקת Agent Teams updates בדקו changelog של Claude Code — האם Agent Teams קיבל שיפורים? עבר מ-research preview ל-stable? אם כן — הזמן להרחיב שימוש
חודשי חישוב ROI מצטבר סכמו: כמה שעות חסכתם עם צוותים? כמה עלו הטוקנים? האם שווה להמשיך? האם צריך לשנות מודלים?
🔥 אם אתם עושים רק דבר אחד מהפרק הזה

הפעילו Agent Teams (export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1) ונסו Competing Hypotheses Debugging על באג אמיתי בפרויקט שלכם. כתבו prompt מובנה עם 3 השערות — Frontend, Backend, Database (או 3 כיוונים שמתאימים לפרויקט שלכם) — והריצו. גם אם זו פעם ראשונה, גם אם התוצאה לא מושלמת — תגלו תוך 20 דקות אם הדפוס הזה עובד עבורכם. את כל שאר הדפוסים (Flat, Specialist, Adversarial, CI/CD) תוכלו ללמוד אחרי שהתנסיתם עם האחד הכי חזק. וגם אם Agent Teams לא עבד מושלם — הפירוק ל-3 השערות שווה בפני עצמו, כי תוכלו להריץ אותן סדרתית עם סוכן יחיד.

✅ בדוק את עצמך — 5 שאלות

ענו על לפחות 4 מתוך 5 כדי לעבור:

  1. מה ההבדל המרכזי בין Subagents ל-Agent Teams מבחינת תקשורת, ולמה זה משפיע על הבחירה ביניהם?
    (רמז: כיוון תקשורת — חד-כיוונית מול רב-כיוונית, עצמאות Teammates, יכולת לבנות על עבודת אחרים)
  2. למה שיטת Competing Hypotheses Debugging יעילה יותר מחקירה סדרתית, ומתי דווקא לא כדאי להשתמש בה?
    (רמז: 3 כיוונים במקביל = 1/3 זמן, עלות x3, אבל אם כבר יודעים איפה הבעיה — בזבוז)
  3. מה התפקיד של manifest (team-plan.md) בצוות, ומה קורה כשמדלגים עליו?
    (רמז: חלוקת קבצים, מניעת דריסות, ה-Teammates לא יודעים מי עושה מה, פלטים שסותרים)
  4. איך הקצאת מודלים חכמה (Opus/Sonnet) משפיעה על עלות ואיכות, ומה הכלל לגבי ה-Lead?
    (רמז: Lead = Opus תמיד, משימות שגרתיות = Sonnet, חיסכון 40-60%, משימות אבטחה = לא מתפשרים)
  5. למה צוות של 5+ Teammates נדיר שמוצדק, ומה האלטרנטיבות למשימות ענקיות?
    (רמז: coordination overhead גדל לא-ליניארית, diminishing returns, /batch עם 30 workers, פיצול ל-sub-tasks)
סיכום הפרק

בפרק הזה עברנו מסוכנים בודדים לצוותים שמשתפים פעולה, ובדרך גילינו שזו לא רק שאלה של "כמה סוכנים" — זו צורת חשיבה חדשה על פתרון בעיות. במקום לשאול "איך הסוכן יפתור את זה?", שואלים "איך אפרק את זה לחלקים שכמה סוכנים יפתרו במקביל?" הדפוס החזק ביותר שראינו הוא Competing Hypotheses Debugging — שלושה חוקרים במקביל שמוצאים את הבאג ב-20 דקות במקום שעה. התבנית שחשוב לזכור: Lead מתאם ומסנתז, Teammates עובדים בחלונות הקשר נפרדים, manifest מגדיר גבולות ומונע קונפליקטים, ותמיד יש Plan B. בפרק הבא נעבור לProduction Pipelines — שרשראות עיבוד סדרתיות שבהן כל שלב מזין את הבא. אם Teams עוסק בעבודה מקבילית, Pipelines עוסק בעבודה סדרתית — עם error handling, checkpointing, ו-monitoring שהופכים אוטומציה ל-production-grade.

☑ צ'קליסט השלמת הפרק