3 Skill-Building · פרק 3 מתוך 8

SOPs לסוכנים: לכתוב את ספר ההפעלה של החברה

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

🧵 חוט הפרויקט — איפה אנחנו במפה

פרק קודם (2): "תנו לסוכנים תפקיד, לא הוראה". הגדרת org chart — לכל סוכן role, goal, backstory, scope of authority, tools ו-escalation path. יש לך לפחות role spec אחד מפורט לעסק שלך.

הפרק הזה (3): כתיבת ספר ההפעלה. תפקיד בלי נוהל מפורט הוא כותרת ריקה. כאן אתה ממיר את ה-role spec ל-SOP אגנטי — נוהל בשפה טבעית, ב-Markdown, עם תקן RFC 2119 (תקן IETF שמגדיר מילות-חובה: MUST = חובה מוחלטת, SHOULD = מומלץ, MAY = רשות), מאוחסן ב-git, והופך ל-Claude Code Skill (קובץ-תהליך ש-Claude Code מזהה וטוען אוטומטית כשהמשימה רלוונטית, בלי שתדביק אותו ידנית).

פרק הבא (4): "ה-Loop שעובד בזמן שאתה ישן". ה-SOP שתכתוב כאן, וה-dry-run שתריץ עליו, הם הזרע ל-golden dataset של פרק 4 — שם הסוכן ירוץ בתזמון אוטומטי, יקבל ציון מול הדוגמאות האלה, ויכתוב לעצמו לקח כדי להשתפר.

מה תדע לעשות בסוף הפרק

מה צריך לפני שמתחילים

למה SOPs אנושיים נכשלים לסוכנים

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

זה ההבדל היחיד שחשוב להבין כאן: בני אדם קוראים בין השורות; סוכנים לא. כש"תענה לו בנחת" מגיע לעובד אנושי, הוא יודע אוטומטית מה זה אומר בעסק שלך — איזה טון, איזה פתיח, מתי לא לענות בכלל ולחכות לך. הסוכן לא יודע כלום מזה. הוא ינחש. ולפעמים הוא ינחש בביטחון מלא, בכיוון הלא נכון לגמרי. דוגמה מספרית: בעסק עם 200 פניות חודש, "משהו מסובך או כספי" = כ-30 פניות. בלי כלל ברור, הסוכן יטפל בעצמו בכולן, והתוצאה: 30 החלטות לא-מבוקרות בחודש, שאחת מהן מספיקה כדי להרוס לקוח או לבצע החזר שגוי. זה בדיוק מה שחברות כמו Nestr ומקורות 2026 מכנים "human SOPs don't transfer to agents unchanged" — נהלים אנושיים לא עוברים לסוכן כמו שהם, הם דורשים תרגום לשפה אגנטית.

המקור הזה (research של הקורס) מנסח את זה חד: נהלים אנושיים מניחים קריאה-בין-השורות; נהלים לסוכנים צריכים דיוק מפורש וחד-משמעי — אחרת הסוכן מאלתר בכיוון הלא נכון. וזה מוביל אותנו למונח החדש של 2026.

📖 מילון מונחים — בסיס תפעולי

Agent SOP / AOP (Agentic Operating Procedure)
נוהל הפעלה תקני שנכתב מחדש עבור סוכן — workflow בשפה טבעית, מדויק מספיק לעקביות אבל גמיש מספיק כדי לשמר את שיקול הדעת (reasoning) של המודל. חברות כמו Decagon ו-Skan קוראות לזה "Agent/Agentic Operating Procedures (AOPs)".
RFC 2119
תקן ותיק מעולם התקנים הטכניים (IETF) שמגדיר מילות-חובה: MUST (חובה מוחלטת), SHOULD (מומלץ — סטה רק עם סיבה טובה), MAY (רשות — שיקול דעת מלא). בעברית נשתמש ב-חובה / מומלץ / רשות ונשמור על התגית האנגלית כדי שהסוכן יזהה אותה חד-משמעית.
determin-ish-tic
מילה מומצאת (deterministic + ish) שמתארת את האיזון העדין: מבנה מספיק לעקביות, גמישות מספיק לשמר reasoning. לא סקריפט קשיח (אז זה רובוט מטומטם), ולא הנחיה פתוחה (אז זה מאלתר). בדיוק באמצע.
Strands Agent SOPs
פורמט OSS חינמי (פתוח, מ-AWS Open Source) שמתקנן SOPs לסוכנים כ-natural-language Markdown workflows עם RFC 2119. הריפו: strands-agents/agent-sop. מוטיבציה: לאמץ במקום להמציא מאפס.
Claude Code Skill
קובץ-תהליך לשימוש חוזר ש-Claude Code טוען לבד כשהוא מזהה שהוא רלוונטי למשימה. כמו שמקור הקורס מנסח: "מסמך תהליך לשימוש חוזר — בעצם SOP לסוכן שלך". כותבים פעם אחת, והסוכן מרים אותו בעצמו בעת הצורך.
תבנית .context/
הרגל תכנותי מהריפו gru-ai (MIT): כל ה-SOPs, ה-roles וה-lessons נשמרים כ-Markdown + JSON בתיקייה .context/ בתוך git repo. התוצאה היא "מוח חברה" forkable, diff-able ו-recoverable — אפשר לשכפל אותו לפרויקט אחר, לראות מה השתנה לאורך זמן, ולשחזר אחורה במידת הצורך.

שים לב למתח שמלווה את כל הפרק הזה: אנחנו רוצים הרבה דיוק (כדי שהסוכן לא ינחש וימציא), אבל לא נוקשות (כדי שלא נחזיר אותו להיות סקריפט מכאני). ה-SOP האגנטי הוא בדיוק הליכה על הקו הזה. RFC 2119 הוא הכלי שמאפשר לנו ללכת עליו: אנחנו אומרים MUST איפה שאסור לסטות בשום תנאי, SHOULD איפה שיש דרך נכונה אבל שיקול דעת מותר, ו-MAY איפה שאנחנו נותנים למודל לחשוב בעצמו.

כדאי לעצור רגע על מילה אחת מהמילון שלנו: determin-ish-tic. היא נשמעת כמו בדיחה או שגיאת כתיב, אבל היא מתארת את ההחלטה החשובה ביותר בכתיבת SOP. דמיין שני קצוות קיצוניים. בקצה אחד יש סקריפט קשיח ודטרמיניסטי: "אם המייל מכיל את המילה 'החזר' — שלח את תבנית מספר 3". זה צפוי לחלוטין, אבל גם טיפש לחלוטין — לקוח שכתב "אני מבקש שתחזירו לי את הכסף" בלי המילה "החזר" יפול בין הכיסאות, ולקוח שכתב "אני לא רוצה החזר, רק שאלה" יקבל בטעות את תבנית ההחזרים. בקצה השני יש הנחיה פתוחה לחלוטין: "טפל בלקוח כמיטב הבנתך". זה גמיש, אבל בלתי-צפוי — בכל ריצה תקבל התנהגות אחרת, ולא תוכל לסמוך על התהליך או לשפר אותו. שני הקצוות האלה חסרי-תועלת ל-operator שרוצה לייצר עקביות עסקית.

🧩 Framework — ספקטרום הדטרמיניזם (If X, use Y)

איך בוחרים את רמת הגמישות ב-SOP? התשובה תלויה בעלות הטעות וביכולת השחזור של הפעולה:

ה-SOP האגנטי יושב באמצע בכוונה תחילה. הוא מבני מספיק כדי שהסוכן יעשה את אותו תהליך בכל פעם (תמיד מסווג קודם, תמיד בודק היסטוריה, תמיד מסלים פעולות כסף), אבל פתוח מספיק כדי שהסוכן יפעיל שיקול דעת בתוך כל צעד (לנסח תשובה מתאימה ללקוח הספציפי הזה, לזהות שהלקוח עצבני, להבין שהשאלה היא בעצם על נושא אחר). הסטרוקטורה היא על התהליך; הגמישות היא על התוכן. זה בדיוק מה ש-RFC 2119 קונה לך: MUST נועל את התהליך, MAY משחרר את התוכן.

⚡ עשה עכשיו (60 שניות)

פתח את ה-role spec שכתבת בפרק 2. קרא רק את שורת ה-goal. עכשיו שאל את עצמך: אם הייתי מוסר את המשפט הזה לעובד חדש ביום הראשון שלו, על כמה דברים הוא היה צריך לשאול אותי "מה זה אומר בדיוק בעסק הזה"? כתוב את המספר בצד. כל אחד מהם הוא נקודה של "קריאה בין השורות" שהסוכן לא יעשה — והם בדיוק מה שאנחנו הולכים ליישר בפרק הזה.

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

אנטומיה של צעד ב-SOP אגנטי

SOP אנושי הוא בדרך כלל רשימת bullet-ים מהירה: "1. בדוק. 2. ענה. 3. הסלם." זה לא מספיק לסוכן AI, כי כל bullet מסתיר בתוכו שלוש שאלות שהבן אדם עונה עליהן לבד מאליהן: מתי הצעד הזה בכלל רץ, מה בדיוק צריך לעשות בו, ואיך בדיוק יודעים שהוא הסתיים. ה-SOP האגנטי מנסח את כל השלוש במפורש. צעד תקין מורכב מארבעה רכיבים הכרחיים:

🧩 Framework — ארבעת רכיבי הצעד (The 4-Box Step Rule)

  1. Precondition (תנאי כניסה) — מתי הצעד רץ. "אם הפנייה מסווגת כ'טכנית' וגם הלקוח קיים במערכת → רוץ צעד זה." בלי זה הסוכן לא יודע אם הצעד בכלל רלוונטי למקרה הנוכחי ויריץ הכל על הכל.
  2. Action (פעולה) — מה לעשות, מנוסח ב-RFC 2119. כאן נכנסות מילות החובה: "MUST (חובה) לבדוק את היסטוריית הפניות לפני מענה. SHOULD (מומלץ) לפתוח בשם הלקוח. MAY (רשות) לצרף קישור למאמר עזרה רלוונטי."
  3. Exit criteria (תנאי יציאה) — איך יודעים שהצעד הסתיים. "הצעד הושלם כאשר נשלחה תשובה ללקוח או כאשר הפנייה סומנה במערכת להסלמה." בלי קריטריון יציאה ברור הסוכן עלול להיתקע בלולאה אינסופית או לקפוץ לצעד הבא מוקדם מדי.
  4. Escalation (כשל) — מה לעשות כשהצעד נכשל או חורג. "אם לא נמצאה היסטוריה וגם הפנייה כוללת בקשת החזר כספי → MUST להסלים ל-operator (אדם) ולא לענות עצמאית." זה הקו שמחבר את ה-SOP ל-scope of authority מפרק 2 ולמודל ה-approval gates של פרק 5.

הכלל: אם X (precondition) אז בצע Y (action, RFC 2119) עד שמתקיים Z (exit), ואם נכשל → בצע W (escalation). כל צעד ב-SOP שלך חייב לענות על כל הארבעה באופן חד-משמעי.

למה זה כל-כך חשוב? כי הצעד הראשון שמרומז הוא הצעד שבו הסוכן סוטה מהתוכנית. אם השארת "ענה יפה" בלי action מפורש, הסוכן ימציא טון לבד. אם השארת צעד בלי exit criteria, הוא ימשיך לדבר ולייצר תוכן עד שיפלוט גרוטסקה. אם השארת אותו בלי נתיב escalation, הוא ינסה לפתור לבד מקרה רגיש שהיה צריך להגיע אליך ישירות. ארבעת הרכיבים סוגרים את ארבעת החורים הקלאסיים האלה.

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

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

⚡ עשה עכשיו (90 שניות)

בחר צעד אחד מהנוהל הקיים שלך — את הפשוט ביותר, זה שנראה לך "אין מה לכתוב עליו, זה טריוויאלי". כתוב לו את ארבעת הרכיבים (Precondition, Action, Exit, On failure). שים לב כמה ידע נסתר היה בו. כמעט תמיד הצעד ה"פשוט ביותר" הוא זה שמסתיר הכי הרבה הנחות — כי דווקא עליו לא טרחת לחשוב ולפרט בעבר.

⚠️ טעות נפוצה: היעדר תגי העדפה

לכתוב SOP בלי RFC 2119 — הכל "תעשה" באותו משקל. כשכל צעד מנוסח באותה רמה ("בדוק, ענה, צרף, סכם"), הסוכן לא יודע מה קריטי לעסק ומה נחמד-שיהיה. בעומס או באי-ודאות הוא יתעדף לא נכון — אולי ידלג על בדיקת היסטוריית הלקוח (שהייתה חובה) כדי להספיק לצרף קישור למאמר (שהיה רשות). RFC 2119 הוא לא קישוט תחבירי; הוא מערכת התעדוף של הסוכן. בלעדיו אין היררכיה, ובלי היררכיה הוא חורג מ-scope.

הפורמט של 2026: Markdown + RFC 2119

החדשות הטובות: אתה לא צריך להמציא את הפורמט או לתכנת אותו מאפס. ב-2026 נוצר תקן דה-פקטו, ו-AWS Open Source פרסמו אותו כ-Strands Agent SOPs (הריפו הציבורי strands-agents/agent-sop): natural-language Markdown workflows שמשתמשים ב-RFC 2119. למה דווקא Markdown? כי הוא קריא היטב לאדם וגם למודל, נשמר נקי ב-git (אפשר לעשות עליו diff קלאסי), ולא דורש שום כלי תכנות מיוחד. למה דווקא RFC 2119? כי המילים MUST/SHOULD/MAY מוכרות למודלים מאלפי מסמכים טכניים שהם נחשפו אליהם באימון — הן אות חד-משמעי ובינלאומי של רמת-חובה.

הנה השלד של SOP אגנטי בפורמט הזה. שמור אותו כתבנית מאסטר — כל סוכן בצי שלך ייכתב לפיה:

## SOP: <שם התפקיד>
**Role:** <מי הסוכן, הועתק מ-role spec בפרק 2>
**Goal:** <מה הוא מנסה למקסם>
**Scope of authority:** <מה מותר לו לבד / מה דורש אישור>
**Tools:** <במה הוא נוגע - מערכות, תוכנות>
**Escalation:** <למי ובאיזה תנאי הוא פונה>

### Step 1 — <שם הצעד>
- **Precondition:** <מתי הצעד רץ>
- **Action:**
  - MUST <פעולת חובה שאסור לסטות ממנה>
  - SHOULD <פעולה מומלצת>
  - MAY <פעולת רשות>
- **Exit criteria:** <איך יודעים שהסתיים בהצלחה>
- **On failure:** <MUST escalate to ... / fallback / human approval>

### Step 2 — ...

דוגמה מייצגת — מבנה זה הוא עיבוד של פורמט Strands Agent SOPs לעברית; הוא לא ציטוט מילולי מהריפו אלא יישום פרקטי של אותו עיקרון (Markdown + RFC 2119 + צעדים עם preconditions/exit).

🔧 שגרת עבודה — כללי כתיבה ל-Markdown אגנטי

  1. שמור על מילות RFC 2119 באנגלית בלבד (MUST/SHOULD/MAY וגם MUST NOT) גם בתוך טקסט עברי — המודל מזהה אותן כך מדויק יותר מאשר "חובה/מומלץ".
  2. צעד אחד = רעיון אחד. אם צעד עושה שני דברים שונים, פצל אותו לשניים. אחרת ה-exit criteria מתערבב והסוכן לא יידע מתי סיים.
  3. נסח בקצרה ובפקודה ישירה. השתמש ב-Imperative ("בדוק", "סווג", "שלח") ולא בלשון פסיבית מסורבלת ("יש לבצע בדיקה"). פקודה ישירה מפחיתה אי-ודאות תחבירית וחוסכת טוקנים.
  4. הפרד בין התהליך לנתונים. אל תכתוב את המדיניות בתוך השלבים. הפנה לקובץ חיצוני (כמו refund-policy.md).

⚡ עשה עכשיו (3 דקות)

העתק את שלד התבנית למעלה לקובץ חדש בשם sop-template.md. מלא רק את הכותרת שלו (Role / Goal / Scope / Tools / Escalation) מתוך ה-role spec של פרק 2 — עדיין אל תכתוב את הצעדים עצמם. זהו הקליק הראשון שלך לתוך "מוח החברה" שלך. את הצעדים נכתוב בתרגיל המרכזי בהמשך הפרק.

שלושת כשלי ה-"SOP אנושי" — וכיצד לתקן

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

כשל 1 — קריאה בין השורות (Implicit Context)

הנוהל האנושי מניח ידע עסקי שלא נכתב. "החזר לפי המדיניות שלנו" — איזו מדיניות בדיוק? היכן היא מתועדת? הבן אדם יודע או יודע לשאול; הסוכן צריך שתצמיד לו את המידע פיזית. תיקון: כל פנייה ל"מדיניות / טון / ICP / כללי הבית" חייבת להיות מקושרת או מוצמדת כטקסט מלא בתוך ה-SOP עצמו (או בקובץ נפרד ב-.context/ שה-SOP מפנה אליו במפורש בשמו).

כשל 2 — צעדים מרומזים (Skipped Steps)

הבן אדם מדלג על צעד "מובן מאליו" שבשבילו שקוף. "ענה ללקוח" — אבל לפני שעונים, בן אדם תמיד בודק קודם את חלון התפעול, וודא שלא ענו לפנייה הזו במייל אחר, ובודק אם הלקוח עצבני. הצעדים האלה לא נכתבו כי הם "ברורים מאליהם". לסוכן הם לא ברורים, והוא ייתן תשובה כפולה או יתעלם מטון הלקוח. תיקון: כתוב את הצעד ה"מובן מאליו" במפורש כ-Step נפרד לחלוטין עם precondition משלו. אם בודקים היסטוריה — זה Step 0.

כשל 3 — החלטות שלא נוסחו (Un-stated Decision Rules)

הנוהל אומר "ענה אם זה פשוט, הסלם אליי אם זה מסובך" — בלי להגדיר בכלל מה פשוט ומה מסובך. הבן אדם מרגיש את הגבול בבטן; הסוכן צריך כלל ברור ובדיד. תיקון: הפוך כל "אם זה X" לכלל ניתן-לבדיקה (testable condition): "מסובך = הפנייה כוללת בקשת החזר כספי מעל 100 ש"ח, או אזכור עורך-דין, או שלוש הודעות ויותר בלי פתרון."

🧩 Framework — מבחן שלושת ה-W לכל שורה ב-SOP

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

אם X אז Y: אם שורה ב-SOP שלך נכשלת באחד משלושת ה-W → היא לא מוכנה ל-live; שכתב אותה לפני שתמשיך לשלב הבא.

תרגיל 1 — אבחן את הנוהל הקיים שלך

תוצר נראה לעין: טבלת אבחון בת 5–8 שורות שממפה בדיוק היכן הנוהל האנושי הנוכחי שלך ייכשל לסוכן AI.

צעדים מפורטים:

  1. קח את הנוהל הקיים שלך לתפקיד אחד (גם אם הוא רק בראש — כתוב אותו כעת כפי שהיית מסביר לעובד אנושי, 5–8 שורות פשוטות).
  2. צור טבלה עם העמודות: שורה מקורית | What assumed? | What skipped? | What undefined? | תיקון אגנטי.
  3. העבר כל שורה דרך מבחן שלושת ה-W. סמן ✔ בכל עמודה שבה התשובה היא "מובן מאליו / תלוי בשיקול דעת".
  4. בעמודת "תיקון אגנטי" כתוב את הניסוח המפורש והבדיד שיתקן את הכשל (למשל: הפניה לקובץ מדיניות, הוספת שלב 0, או כלל מספרי).

פלט צפוי (דוגמה לשורה מלאה בטבלה):

שורה מקוריתassumedskippedundefinedתיקון אגנטי
"ענה ללקוח יפה"✔ הטון שלנו לא כתוב✔ בדיקת היסטוריה✔ מה זה "יפה"Step 0: MUST לבדוק היסטוריה; SHOULD לפתוח בשם; הטון מוגדר בקובץ brand-voice.md

תבנית ריקה להעתקה ולמילוי (4 שורות נוספות, 5–8 בסך הכל):

שורה מקוריתassumedskippedundefinedתיקון אגנטי
2. _________________________________________________________________________________________________________
3. _________________________________________________________________________________________________________
4. _________________________________________________________________________________________________________
5. _________________________________________________________________________________________________________

הגדרת "סיימתי": לכל שורה במקור יש אבחון מלא, ולכל שורה עם ✔ יש תיקון אגנטי כתוב. טבלה זו היא רשימת הדרישות לכתיבת ה-SOP בתרגיל 2. ללא טבלה זו, אתה כותב SOP "עיוור".

דוגמה מודרכת #1: SOP לסוכן תמיכה

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

## SOP: Support Agent (תמיכה)
**Role:** נציג/ת תמיכה ראשונה לפניות לקוחות בערוצי המייל וה-WhatsApp.
**Goal:** לפתור עצמאית פניות פשוטות במהירות ובטון המותג, ולהסלים נכון את המסוכנות.
**Scope of authority:** MAY לענות עצמאית על פניות מידע/שימוש.
  MUST לקבל אישור operator לכל פעולה שנוגעת בכסף (החזר, זיכוי, ביטול חיוב).
**Tools:** מערכת הטיקטים (קריאה/כתיבה), בסיס הידע (קריאה בלבד).
**Escalation:** operator (אתה), לפי הכללים למטה.
**Context files:** brand-voice.md, refund-policy.md, icp.md  ב-.context/

### Step 1 — Classify & Check (סיווג ובדיקה)
- Precondition: התקבלה פנייה חדשה שטרם טופלה.
- Action:
  - MUST לסווג את הפנייה לאחת מ: [מידע, שימוש, תקלה, כסף, אחר].
  - MUST לבדוק אם קיימת היסטוריה לאותו לקוח/פנייה לפני כל מענה.
  - SHOULD לזהות את שפת הפנייה ולענות באותה שפה.
- Exit criteria: לפנייה הוצמד תג-סיווג חד-משמעי ונבדקה היסטוריה.
- On failure: אם הסיווג לא חד-משמעי → MUST לתייג "אחר" ולהסלים.

### Step 2 — Resolve or Escalate (פתור או הסלם)
- Precondition: הפנייה סווגה ב-Step 1.
- Action:
  - אם הסיווג ב-[מידע, שימוש] ויש כיסוי בבסיס הידע → MAY לענות עצמאית.
  - אם הסיווג = כסף → MUST להסלים ל-operator; MUST NOT לבצע החזר/זיכוי לבד.
  - אם זוהה אות-סיכון (אזכור עו"ד / איום בביקורת ציבורית / 3+ הודעות בלי פתרון) → MUST להסלים.
  - SHOULD לפתוח את התשובה בשם הלקוח; הטון מוגדר ב-brand-voice.md.
- Exit criteria: נשלחה תשובה ללקוח, או הפנייה סומנה "מוסלם ל-operator".
- On failure: אם בסיס הידע לא מכסה את השאלה → MUST להסלים, MUST NOT לנחש תשובה.

### Step 3 — Log a lesson (תיעוד לקח)
- Precondition: הפנייה נסגרה או הוסלמה (סיום 2).
- Action:
  - MUST לכתוב שורת-לקח קצרה לקובץ .context/lessons/support.md.
  - פורמט: תאריך | סיווג | מה הלקוח ביקש | מה עשינו | מה כדאי לעשות בפעם הבאה.
- Exit criteria: נוספה שורת-לקח אחת לפחות.
- On failure: ללא — צעד זה תמיד רץ ולא נכשל.

שים לב לשלושה דברים קריטיים שעשינו כאן. ראשית, Step 1 הוא הצעד ה"מובן מאליו" (סיווג + בדיקת היסטוריה) שכתבנו במפורש ולא הנחנו שיקרה — כשל 2 נסגר. שנית, כל החלטת "פשוט/מסוכן/מסובך" הומרה לכלל בדיד ומתמטי ("אות-סיכון = אזכור עו"ד או 3+ הודעות") — כשל 3 נסגר. שלישית, Step 3 הוא זרע ה-reflexion של פרק 4: כל פנייה כותבת שורת-לקח ל-.context/lessons/, ושם נבנה בפרק הבא ה-loop שמשפר את הסוכן אוטומטית בלילה לפי הלקחים שהוא עצמו אסף.

⚠️ טעות נפוצה: ביצוע פעולות כספיות ללא Approval

להעתיק SOP אנושי כלשונו ולצפות שהסוכן יקרא בין השורות. אילו השארנו את Step 2 כ-"ענה אם פשוט, הסלם אם מסובך", הסוכן היה עשוי לבצע החזר כספי בעצמו בפנייה הראשונה שנראתה לו "פשוטה לביצוע" — בלי אישור ובלי תיעוד, וזו תקלה שעולה הרבה יותר מכל מה שהסוכן הזה יחסוך לך אי פעם. ה-MUST NOT על פעולות כסף הוא לא בירוקרטיה; הוא הקו שמחבר את ה-SOP ל-scope of authority של פרק 2 ול-approval gates של פרק 5. סוכן בלתי-הפיך הוא סוכן מסוכן.

דוגמה מודרכת #2: SOP לסוכן SDR (מכירות נכנסות)

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

📖 מילון מונחים — SDR ו-ICP

SDR (Sales Development Representative)
תפקיד מכירות שעוסק באיתור, סינון והכשרת לידים לקראת פנייה — לא בסגירת העסקה עצמה. בצי שלך זהו הסוכן ששומר על ה-inbox או טופסת האתר, מסנן מי רלוונטי, ומכין טיוטת פנייה מדויקת לבעל העסק.
ICP (Ideal Customer Profile)
פרופיל הלקוח האידיאלי — ההגדרה הכתובה והקפדנית של מי הלקוח הנכון לעסק שלך (גודל חברה, תחום, תקציב, מיקום, כאב ספציפי). סוכן ה-SDR מסנן כל ליד נכנס מול קובץ ה-ICP. הוא חייב להישמר כקובץ icp.md ב-.context/ כדי שגם הסוכן וגם אתה עובדים מאותה הגדרת מטרה מדויקת.
## SOP: SDR Agent (מכירות נכנסות)
**Role:** סוכן שמטפל בלידים נכנסים מטופס האתר ומה-inbox המשותף.
**Goal:** לסנן לידים מול ICP, להעשיר, ולהכין טיוטת פנייה מותאמת — בלי לשלוח לבד.
**Scope of authority:** MAY לסווג ולהעשיר לידים עצמאית.
  MUST NOT לשלוח הודעת outreach ללא אישור operator.
**Tools:** טופס/inbox (קריאה), CRM (כתיבה), כלי העשרה חיצוניים (קריאה).
**Escalation / approval:** כל outreach יוצא → תור אישור של operator (אתה).
**Context files:** icp.md, outreach-templates.md  ב-.context/

### Step 1 — Watch & Capture (איסוף)
- Precondition: התקבל ליד חדש בטופס או ב-inbox.
- Action:
  - MUST לחלץ: שם מלא, חברה, ערוץ תקשורת, וטקסט הפנייה המקורי.
  - MUST לכתוב את הליד ל-CRM עם תגית "new".
- Exit criteria: הליד קיים ב-CRM עם השדות המינימליים האלו.
- On failure: אם חסר שדה חובה (כמו שם/חברה) → MAY לסמן "incomplete" ולהמשיך.

### Step 2 — Qualify vs ICP (סינון)
- Precondition: הליד נקלט ב-Step 1.
- Action:
  - MUST להשוות את הליד מול קובץ icp.md.
  - MUST לתת ציון fit בינארי או מספרי: [strong / weak / out].
  - אם out → MUST לסמן ב-CRM "disqualified" ולעצור את התהליך.
- Exit criteria: לליד הוצמד ציון fit מנומק.
- On failure: אם המידע חלקי ולא ניתן להכריע → MUST לתת "weak" (לא "strong") ולהמשיך.

### Step 3 — Enrich (העשרה)
- Precondition: ציון fit הוא [strong, weak].
- Action:
  - SHOULD להוסיף הקשר עסקי ציבורי (אתר חברה, תחום עיסוק).
  - MUST NOT להמציא נתונים שלא נמצאו בפועל — MAY לסמן "unverified".
- Exit criteria: לליד יש לפחות שדה הקשר אחד או סימון "no-enrichment".

### Step 4 — Draft outreach → Approval gate
- Precondition: fit = strong בלבד.
- Action:
  - MUST לנסח טיוטת פנייה מתוך outreach-templates.md, מותאמת אישית לליד.
  - MUST להגיש את הטיוטה לתור-אישור של operator במערכת.
  - MUST NOT לשלוח או לפרסם לפני אישור מפורש מה-operator.
- Exit criteria: הטיוטה נמצאת בסטטוס "ממתינה לאישור".
- On failure: אם אין תבנית מתאימה בקובץ → MUST להסלים ל-operator.

שתי נקודות עיצוב חשובות מאוד כאן. ראשית, ה-approval gate הוא צעד מפורש ופעיל ב-SOP, הוא לא הערה בצד. Step 4 מסתיים ב"ממתין לאישור" — זהו סטטוס, לא פעולת סיום. שנית, שים לב ל-MUST NOT החוזרים: "אל תשלח לבד", "אל תמציא נתונים". איסורים מפורשים חשובים בדיוק כמו פקודות חיוביות — הם מגדירים את גבול ה-scope מבפנים ומונעים מהסוכן "להתלהב" ולשלוח מייל גרוע בשמך. בפרק 5 נראה איך ה-gate הזה הופך לפעולה אמיתית בתור-אישור עם named approver וסף סיכון.

⚡ עשה עכשיו (2 דקות)

סרוק את שני ה-SOPs למעלה וספור את מספר ה-MUST NOT בכל אחד מהם. אלו הגבולות שמונעים מהסוכן לפגוע בעסק שלך. עכשיו חזור ל-role spec שכתבת בפרק 2 ושאל: כמה איסורים מפורשים יש בו? אם התשובה היא אפס או אחד — זה דגל אדום. כל תפקיד אגנטי צריך לפחות שני MUST NOT שמגדירים מה הוא לעולם לא עושה לבד.

אחסון כ-Version Control: תבנית ה-.context/

SOP שיושב ב-Google Docs, ב-Notion או בצ'אט הוא לא "מוח חברה" — הוא פתק דביק. ההרגל שמבדיל operator חובבן מ-operator שמנהל צי אמיתי הוא לשמור את כל הנהלים, התפקידים וההגדרות כ-Markdown ב-git, לפי תבנית .context/ שהריפו gru-ai (MIT) הפך לסטנדרט מוביל. למה המעבר הזה קריטי לעסק שלך:

מבנה תיקיות מומלץ לעסק שלך (דוגמה מייצגת, בהשראת תבנית gru-ai שמאפשרת ניהול סטנדרטי):

.context/
├── org-chart.md          # מפרק 2: כל התפקידים והקשרים ביניהם
├── roles/
│   ├── support.md        # role spec מלא לתמיכה
│   └── sdr.md            # role spec מלא ל-SDR
├── sops/
│   ├── support.sop.md    # ה-SOP מהפרק הזה
│   └── sdr.sop.md
├── policies/
│   ├── brand-voice.md    # ההקשר שהצמדנו (תיקון לכשל 1)
│   ├── refund-policy.md  # מדיניות החזרים כספיים
│   └── icp.md            # פרופיל לקוח אידיאלי
└── lessons/
    └── support.md        # שורות-לקח (זרע ל-reflexion אוטומטי, פרק 4)

🔧 שגרת עבודה — הקמת מוח החברה ב-git (פעם אחת, ~10 דקות)

  1. צור תיקייה ראשית לעסק שלך במחשב והרץ בה git init.
  2. צור את עץ התיקיות של .context/ בדיוק לפי המבנה המוצג למעלה (אפשר להשאיר תיקיות ריקות בשלב זה).
  3. העתק לתוכו את ה-org chart ואת ה-role specs שכתבת בפרק 2 לתיקיות המתאימות.
  4. הצמד לתיקיית policies/ את קבצי המדיניות שלך (brand-voice, refund, icp). זהו התיקון הקבוע לכשל 1.
  5. הקלד git add . && git commit -m "Initial commit: Company brain v1".
  6. הרגל אופרטיבי מעכשיו: כל שינוי ב-SOP, ולו הקטן ביותר, מתבצע ב-commit נפרד עם הסבר ברור. לפני עריכה מסוכנת של נוהל — ודא שיש לך commit נקי לחזור אליו במקרה הצורך.

תרגיל 2 — כתוב את ה-SOP המלא ושמור ב-git

תוצר נראה לעין: קובץ .context/sops/<תפקיד>.sop.md מלא, עם commit ברור בהיסטוריית ה-git — ה-SOP האמיתי והראשון של החברה שלך שנמצא ב שליטה.

צעדים מפורטים:

  1. פתח את טבלת האבחון מתרגיל 1 ואת תבנית sop-template.md זה לצד זה.
  2. בנה את ה-SOP צעד-אחר-צעד. כתוב כל צעד עם ארבעת הרכיבים במלואם: precondition, action (מנוסח ב-RFC 2119), exit criteria, on failure.
  3. עבור על עמודת "תיקון אגנטי" בטבלה של תרגיל 1, וודא שכל אחד מהתיקונים קיבל ביטוי מפורש בתוך הצעדים של ה-SOP החדש. שום דבר לא נופל בין הכיסאות.
  4. הוסף לפחות שני כללי MUST NOT ברורים (מה הסוכן הזה לעולם לא עושה לבד, כמו ביצוע פעולה כספית או שליחת מייל).
  5. ודא שהקבצים החיצוניים שאתה מציין ב-SOP (כמו refund-policy.md) אכן קיימים בתיקיית .context/policies/.
  6. שמור את הקובץ ובצע git add . && git commit -m "Add full SOP for [role]".

פלט צפוי: קובץ Markdown תקני, עם היררכיה נכונה של כותרות (## ו-###), 3 עד 5 צעדים מלאים, שימוש עקבי במילים MUST/SHOULD/MAY, ותיעוד הפעולה בלוג ה-git.

הגדרת "סיימתי": לכל צעד בקובץ יש ארבעה רכיבים, יש בו לפחות 2 ציוני MUST NOT, והקובץ מופיע ב-git log כ-commit מסודר. זהו נכס הבסיס של העסק.

מ-SOP ל-Claude Code Skill: הסוכן טוען לבד

עד כאן יש לך נוהל מצוין ומדויק שמור ב-git. אבל מי קורא אותו בזמן אמת? אם אתה צריך להדביק את ה-SOP לתוך הצ'אט מחדש בכל פעם שיש פנייה — חזרת להיות צוואר הבקבוק של העסק. הצעד הבא במודל האופרטיבי הוא להפוך את ה-SOP ל-Claude Code Skill: קובץ-תהליך ש-Claude Code מזהה לבד ומרים בעת הצורך, בלי שתצטרך לבקש זאת ממנו אי פעם. דוגמה קונקרטית: אתה כותב לסוכן "התקבלה פנייה חדשה: לקוח מבקש החזר על חיוב חודשי של 240 ש"ח" — המערכת מזהה התאמה סמנטית ל-description של support-agent-sop, טוענת את ה-SOP לבד, מריצה Step 1 (Classify), רואה אות-סיכון כספי, ועוצרת לקרוא לך במקום לבצע החזר בעצמה.

כפי שמקור הקורס מנסח זאת: Skill הוא בדיוק "מסמך תהליך לשימוש חוזר — בעצם SOP לסוכן שלך". כותבים את התהליך פעם אחת כקובץ עם תגית מתאימה, והסוכן טוען אותו אוטומטית להקשר שלו כשהמשימה רלוונטית. ההמרה של ה-SOP שלך ל-Skill היא פשוטה להפליא: ה-SOP הוא כמעט ה-Skill; כל מה שצריך לעשות הוא להוסיף לו כותרת-מטא (front-matter) קצרה שמסבירה מתי להפעיל אותו, כדי שהמודל יידע לזהות שהקובץ הזה רלוונטי למשימה שהגיעה.

🧩 Framework — הגיון ה-Skill Loading (אם X אז Y)

כיצד המערכת "מבינה" מתי להעלות את ה-SOP?

ה-Description היא לכן המפתח לטעינה חכמה ולא ידנית.

---
name: support-agent-sop
description: |
  טען את הקובץ הזה כשמגיעה פנייה חדשה מלקוח (מייל/WhatsApp) 
  שדורשת סיווג, מענה ראשון, או החלטת הסלמה. 
  זהו נוהל התמיכה המלא והרשמי של החברה.
---

# <כאן בא בדיוק תוכן ה-SOP מ-support.sop.md שכתבת בתרגיל 2>
## Step 1 — Classify ...
## Step 2 — Resolve or Escalate ...
## Step 3 — Log a lesson ...

דוגמה מייצגת — מבנה ה-front-matter (name + description) הוא הדפוס הכללי של Claude Code Skills; ודא מול התיעוד העדכני של Claude Code את המיקום המדויק (הנתיב במערכת הקבצים) שבו skills נטענים, כי זה freshness-sensitive ועשוי להשתנות בגרסאות עתידיות.

ה-description היא לב המערכת האוטומטית שלך. היא לא תיעוד בשבילך (בשבילך יש את ה-git log) — היא הטריגר. ככל שהיא מנוסחת מדויק יותר ("טען כשמגיעה פנייה שצריכה סיווג או הסלמה"), כך הסוכן מרים את ה-Skill הנכון בזמן הנכון, בלי שתתערב. description עמומה או קצרה מדי = הסוכן לא יודע מתי זה רלוונטי = חזרת להדביק ידנית טקסטים ולבזבז זמן.

⚠️ טעות נפוצה: תיאור (Description) חלש

לכתוב description עמומה כמו "נוהל תמיכה כללי" ולתהות למה הסוכן לא טוען את ה-Skill. הסוכן בוחר skills לפי התאמת ה-description למשימה הנוכחית. אם היא לא מתארת במפורש מתי להפעיל — הסוכן לא יקשר בין המשימה לקובץ. כתוב את ה-description כמו טריגר אירועים ("טען כש... מגיע / נשלח / מתקבל..."), לא כמו כותרת של תיקייה.

תרגיל 3 — הפוך את ה-SOP ל-Skill ובדוק שהוא נטען אוטומטית

תוצר נראה לעין: Claude Code Skill שנטען אוטומטית כשאתה מתאר משימה רלוונטית בפני הסוכן — בלי שהדבקת את ה-SOP ידנית לפרומפט.

צעדים מפורטים:

  1. צור עותק חדש של ה-SOP שכתבת בתרגיל 2, והוסף לראשו את גוש ה-front-matter (המטא-דאטה עם name ו-description בסגנון טריגר "טען כש...").
  2. שמור אותו במיקום המדויק שבו Claude Code (או ה-runtime שלך) טוען קבצי skills (בדוק בתיעוד העדכני של המערכת — freshness-sensitive).
  3. פתח שיחה חדשה לגמרי עם הסוכן (חשוב: context נקי לחלוטין). תאר משימה שתואמת את ה-description (למשל: "הגיעה פנייה חדשה: לקוח מבקש החזר כספי על חיוב חודשי").
  4. התבונן ביומן הפעולות של הסוכן. ודא שהוא הודיע שהוא הרים את ה-Skill לבד מהתיקייה ופעל לפי הצעדים המדויקים — כולל ה-MUST NOT על פעולות כספיות (כלומר: הוא הסלים, ולא ביצע החזר בעצמו).

פלט צפוי: לוג פעולה של הסוכן שמראה בבירור: "Loading Skill: support-agent-sop", ואז ביצוע Step 1 (סיווג), ואז Step 2 (הסלמה בשל אות-סיכון). הסוכן עוצר וקורא לך לפעולה במקום לנסות לפתור לבד.

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

Dry-run לפני Live: בדוק את ה-SOP על מקרים אמיתיים

זו הנקודה שמפרידה בין operator זהיר ל-operator שלומד את החורים במערכת שלו מלקוחות זועמים באמצע הלילה. לעולם ובשום תנאי אל תשגר SOP ל-live (פרודקשן) בלי dry-run. dry-run פירושו הלכה למעשה: לקחת 3–5 מקרים אמיתיים מהחודש שעבר (פניות תמיכה שכבר טיפלת בהן בעצמך, לידים שכבר קיבלת ודחית או אישרת — מקרים שאתה כבר יודע בוודאות מה הייתה התשובה הנכונה), ולהריץ עליהם את ה-SOP בלי לבצע שום פעולה אמיתית כלפי חוץ. הסוכן פשוט מתאר מה הוא היה עושה צעד אחרי צעד. אתה משווה: מה הסוכן עשה מול מה שהיה צריך לקרות במציאות.

למה דווקא מקרים אמיתיים מהעבר? כי הם קרקע אמת חינמית ומושלמת — אתה כבר יודע את התשובה הנכונה, אז כל פער בין מה שהסוכן עשה לבין מה שקרה באמת הוא חור שנתגלה לפני שלקוח חי נופל בו. ובונוס ענק ומרכזי לקורס שלנו: 3–5 המקרים האלה, עם התשובות הנכונות שלהם, הם בדיוק הזרע ל-golden dataset של פרק 4. אתה לא בונה חומרי בדיקה פעמיים — מה שאתה אוסף כאן ל-dry-run הופך לסט-הזהב שה-eval gate ינקד מולו בעתיד.

🧩 Framework — לולאת ה-Dry-Run (אם X אז Y)

  1. בחר 3–5 מקרים אמיתיים מהחודש שעבר שאתה יודע עליהם בוודאות את התשובה הנכונה וההיסטוריה מאחוריהם.
  2. הרץ את ה-SOP (דרך ה-Skill) על כל מקרה במצב יבש (תן לסוכן לטעון את ה-SOP, אבל בלי גישה לבצע שליחה אמיתית של מייל או הזנה ל-CRM. הסוכן רק יורק למסך את תוכנית הפעולה שלו).
  3. אם X (הסוכן ביצע בדיוק את מה שהיה נכון לעשות במציאות) אז Y (המקרה הזה עבר בהצלחה — עבור הלאה).
  4. אם X (הסוכן סטה מההחלטה הנכונה או עמד לבצע פעולה אסורה) אז Y (זיהית חור קריטי ב-SOP).
  5. תקן את ה-SOP בנקודה שבה נכשל (הוסף Precondition, חדד מילה, הוסף MUST NOT) וצור commit חדש ב-git לתיקון.
  6. חזור על הלולאה עד שכל 5 המקרים עוברים בהצלחה מלאה. רק אז, ולא רגע לפני → שחרור ל-live.

הכלל הקפדני: אם אפילו מקרה אחד מתוך החמישה נכשל ולא תוקן במלואו → ה-SOP לא מוכן ל-live. יש בו עדיין הנחות סמויות.

⚡ עשה עכשיו (5 דקות)

פתח את תיבת הדואר / מערכת ה-CRM שלך ובחר מקרה אמיתי אחד מהחודש שעבר שאתה זוכר היטב. כתוב בשתי שורות בלבד: (א) מה הייתה הפנייה/הבקשה, (ב) מה אתה עשית בפועל כדי לפתור אותה. זהו המקרה הראשון בסט ה-dry-run שלך. אם תאסוף עוד ארבעה כאלה באותו סגנון — יש לך גם סט-זהב מוכן לאימון מערכת ה-eval בפרק 4.

תרגיל 4 — Dry-run על 3–5 מקרים אמיתיים

תוצר נראה לעין: דוח dry-run מסודר (.context/lessons/dry-run-<תפקיד>.md) שמראה בצורה טבלאית לכל מקרה: מה ציפית, מה הסוכן עשה בפועל, ואיזה תיקון בוצע ב-SOP — בתוספת סט-זהב של 3–5 מקרים מוכן לפרק הבא.

צעדים מפורטים:

  1. אסוף 3–5 מקרים אמיתיים מהחודש שעבר (השתמש במקרה מה-"עשה עכשיו" + עוד 4) שאתה יודע עליהם את התשובה הנכונה לפרטיה.
  2. הרץ את ה-Skill מתרגיל 3 על כל מקרה במצב יבש — הסוכן מקבל רק את הקלט ומתאר צעד-אחר-צעד מה הוא עושה, אך לא מבצע שליחה.
  3. תעד בקובץ שורה עבור כל מקרה: מקרה אמיתי | מה הסוכן החליט | מה היה נכון באמת | איזה פער זוהה | איזה תיקון בוצע ב-SOP.
  4. בכל נקודה שבה נמצא פער (הסוכן טעה), ערוך את קובץ ה-SOP בהתאם (מחדד מילה, מוסיף תנאי). בצע git commit -m "Fix SOP gap in step X based on dry-run case Y".
  5. לאחר שהכל תקין ועובר, שמור את המקרים עצמם בתיקייה חדשה: .context/golden/<תפקיד>.md. זהו סט-הזהב שלך, הקלט הישיר ל-loop של פרק 4.

פלט צפוי: טבלת markdown מלאה. לדוגמה: "מקרה 2: לקוח ביקש החזר. הסוכן החליט לבצע החזר חלקי. נכון באמת: להסלים. פער: הסוכן לא זיהה שמדובר במוצר במבצע שלא ניתן להחזרה. תיקון: הוספת MUST לבדוק תיוג 'מבצע' ב-CRM לפני החלטה." הקובץ מסתיים כשאין פערים פתוחים.

הגדרת "סיימתי": קיים דוח dry-run עם 3–5 מקרים, כל פער שנמצא תוקן ב-SOP (ויש לו commit נפרד ב-git), וקיים קובץ golden שמכיל את המקרים והתשובות הנכונות. אתה מוכן לעבור לפרק 4 ולהפעיל את ה-eval gate.

ההקשר הישראלי: SOP שעובד בעברית

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

💡 הערת גבולות עסקיים ומשפטיים

הצד המשפטי/מיסויי של עבודה כעצמאי בישראל (עוסק פטור/מורשה, הנפקת חשבונית מס, חוק הגנת הצרכן הישראלי) לא נכנס ל-SOP של הסוכן ולא לקורס הזה — הוא מטופל בקורסי freelancer/creator-economy. כאן אנחנו על שכבת ה-org design וה-SOPs בלבד.
אם ה-SOP שלך מתחיל לגעת בהנפקת חשבוניות או בהתחייבויות מול רגולציה — זו כבר פעולה שנוגעת בכסף ובחוק, ולכן MUST תחת approval gate ממילא, ומחייבת ייעוץ מקצועי החורג מתכנון תהליכי AI.

בדוק את עצמך

✅ חמש שאלות לפני שממשיכים הלאה

  1. למה SOP אנושי נכשל כשמוסרים אותו לסוכן כלשונו? נסח את עיקרון "הקריאה בין השורות" ותן דוגמה קונקרטית משלך לאן הסוכן היה סוטה בלי נוהל אגנטי.
  2. מהם ארבעת הרכיבים של צעד ב-SOP אגנטי (ה-4-Box Step Rule), ומה קורה אם משמיטים מהם את ה-exit criteria או את ה-escalation?
  3. מתי תשתמש ב-MUST, מתי ב-SHOULD ומתי ב-MAY? תן צעד אחד מה-SOP שלך עם שלושתן יחד, והסבר את ההיגיון העסקי בכל בחירה שעשית.
  4. מהם שלושת כשלי ה-"SOP אנושי" (assumed / skipped / undefined) שלמדנו, וכיצד בדיוק מבחן שלושת ה-W חושף ומתקן כל אחד מהם?
  5. למה dry-run על מקרים אמיתיים מהעבר חוסך לך את העבודה פעמיים — גם כבדיקת איכות לפני שחרור ל-air וגם כתשתית הפקה ל-golden set בפרק הבא?

אם נתקעת על אחת מהן או לא מצליח לענות בבירור — חזור לסעיף הרלוונטי בפרק לפני שתמשיך לפרק 4. ה-SOP וה-golden set הם הקלט הישיר וההכרחי למנוע האוטומטי שאנחנו בונים עכשיו.

🎯 Just One Thing

אם תיקח רק דבר אחד לליבה מהפרק הזה: "מובן מאליו" הוא תמיד החור שדרכו נופלים. כל מקום שבו אתה, בתור בן אדם מנוסה, "פשוט יודע מה לעשות" — הוא בדיוק המקום שבו הסוכן ינחש, ולרוב ינחש בביטחון מופלג בכיוון הלא נכון לחלוטין. כתיבת SOP אגנטי אפקטיבית היא בעיקרה ציד שיטתי ואגרסיבי של כל ה"מובן מאליו" בראש שלך, והמרתו לכלל מפורש וברור: precondition, MUST/SHOULD/MAY, exit, escalation. תעשה את הציד הזה נכון, ו"גייסת" סוכן שעובד לפי נוהל עסקי מסודר — לא לפי אילתור יצרתי מסוכן.

סיכום הפרק וגשר קדימה

מה למדנו בפרק 3

  1. SOPs אנושיים נכשלים לסוכנים כי בני אדם קוראים בין השורות וסוכנים לא — מכאן הצורך ב-SOP אגנטי (AOP): מדויק מספיק לעקביות אבל גמיש מספיק לשמר reasoning ("determin-ish-tic").
  2. צעד תקין מורכב מארבעה רכיבים: precondition (מתי), action ב-RFC 2119 (מה — MUST/SHOULD/MAY), exit criteria (איך יודעים שהסתיים), escalation (מה עושים בכשל).
  3. הפורמט הנפוץ של 2026 הוא natural-language Markdown עם תקן RFC 2119 (Strands Agent SOPs, AWS Open Source) — אימצנו אותו במקום להמציא מערכת משלנו.
  4. שלושת כשלי ה-SOP האנושי (assumed / skipped / undefined) נחשפים במבחן שלושת ה-W, וכל אחד מהם מייצג "מובן מאליו" שצריך להמיר לכלל מפורש וברור.
  5. שתי דוגמאות מודרכות ומלאות: סוכן תמיכה (סיווג → פתור/הסלם → תיעוד לקח) וסוכן SDR (איסוף → סינון ICP → העשרה → שער אישור) — שניהם משופעים ב-MUST NOT המגדירים גבולות ברורים.
  6. אחסון ב-git בתבנית .context/ (בהשראת gru-ai) הופך את הנהלים ל"מוח חברה" forkable, diff-able ו-recoverable — מערכת הפעלה אמיתית.
  7. Claude Code Skills הופכים את ה-SOP לקובץ חכם שהסוכן טוען לבד לפי תיאור ה-description. הסוכן כבר לא תלוי בהדבקה ידנית שלך.
  8. Dry-run על מקרים אמיתיים הוא רשת הביטחון שחושפת חורים לפני שלקוח נופל בהם — והמקרים האלה עצמם הם הזרע ל-golden dataset שאנחנו בונים בפרק 4.

🌉 גשר לפרק 4 — "ה-Loop שעובד בזמן שאתה ישן". עכשיו יש לך מוח מודל (תפקיד מפרק 2), והליך הפעלה מדויק שמאוחסן ב-git וטעון אוטומטית כ-Skill (פרק 3). מה שחסר כדי שזה "יעבוד בזמן שאתה ישן" הוא מנוע רציף: לתזמן את הסוכן לרוץ לבד (cron / heartbeat), לנקד אוטומטית את פלט הפעולה שלו מול סט-הזהב שאספת כאן ב-dry-run (eval gate), ולתת לו לכתוב לעצמו לקח מהכישלונות (reflexion) כך שהריצה ה-10 תהיה טובה משמעותית מהראשונה. ה-SOP וה-golden set שיצרת בפרק הזה הם בדיוק הקלט למנוע הזה. בוא נמשיך לבנות אותו.

🎯 הצעד הראשון שלך ל-24 השעות הבאות: בחר role spec אחד מפרק 2, פתח .context/sops/<role>.sop.md, וכתוב בו 3 צעדים מינימום (precondition / action ב-RFC 2119 / exit) + 2 MUST NOT ברורים + commit יחיד ב-git עם הודעה ברורה. לא יותר מזה להיום — דיוק על פני כמות. הצלחת על תפקיד אחד → הצי שלך מתחיל לעבוד בפועל.

⚠️ שלוש הטעויות שחוזרות אצל כולם (אל תחזור עליהן!)

מה אתה אמור להחזיק ביד בסוף הפרק הזה

  1. SOP אגנטי מלא לתפקיד אחד (Support או SDR) בפורמט Markdown עם RFC 2119 — צעד-אחר-צעד עם preconditions, exit criteria, ו-2+ MUST NOT (תרגיל 1 ו-2).
  2. תיקיית .context/ ב-git repo עם org chart + role specs + SOPs + policies — "מוח החברה" הראשון והמקובע שלך, forkable ו-diff-able לחלוטין (תרגיל 2).
  3. Claude Code Skill אחד שנבנה מה-SOP ונטען אוטומטית לפי מתי צריך, בתוספת דוח dry-run על 3–5 מקרים אמיתיים וקובץ golden מוכן לפרק 4 (תרגיל 3 ו-4).

צ'קליסט סיום פרק