Skip to content

ניתוב רב-סוכני

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

למה סוכנים מרובים?

סוכן יחיד עם אישיות יחידה לא תמיד מספיק. ייתכן שתרצו:

  • עוזר אישי ב-WhatsApp שמטפל בלוח שנה, תזכורות והודעות משפחתיות.
  • עוזר עבודה ב-Slack שמנהל כרטיסי Jira, PRs ב-GitHub וסקירות קוד.
  • סוכן תמיכה ב-Discord שעונה על שאלות קהילה בטון שונה ועם גישה מוגבלת.

ניתוב רב-סוכני מאפשר לכם להריץ את כל אלה בו-זמנית מהתקנת Triggerfish אחת.

כיצד זה עובד

ניתוב רב-סוכני: ערוצים נכנסים מנותבים דרך AgentRouter למרחבי עבודה מבודדים של סוכנים

ה-AgentRouter בוחן כל הודעה נכנסת וממפה אותה לסוכן בהתבסס על כללי ניתוב ניתנים להגדרה. אם אין כלל תואם, ההודעות הולכות לסוכן ברירת מחדל.

כללי ניתוב

ניתן לנתב הודעות לפי:

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

תצורה

הגדירו סוכנים וניתוב ב-triggerfish.yaml:

yaml
agents:
  list:
    - id: personal
      name: "Personal Assistant"
      channels: [whatsapp-personal, telegram-dm]
      tools:
        profile: "full"
      model: claude-opus-4-5
      classification_ceiling: PERSONAL

    - id: work
      name: "Work Assistant"
      channels: [slack-work, email-work]
      tools:
        profile: "coding"
        allow: [browser, github]
      model: claude-sonnet-4-5
      classification_ceiling: CONFIDENTIAL

    - id: support
      name: "Customer Support"
      channels: [discord-server]
      tools:
        profile: "messaging"
      model: claude-haiku-4-5
      classification_ceiling: PUBLIC

כל סוכן מציין:

  • id -- מזהה ייחודי לניתוב.
  • name -- שם קריא לאדם.
  • channels -- אילו מופעי ערוצים סוכן זה מטפל בהם.
  • tools -- פרופיל כלים ורשימות היתר/חסימה מפורשות.
  • model -- באיזה מודל LLM להשתמש (יכול להיות שונה לכל סוכן).
  • classification_ceiling -- רמת סיווג מקסימלית שסוכן זה יכול להגיע אליה.

זהות סוכן

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

~/.triggerfish/
  workspace/
    personal/
      SPINE.md          # אישיות עוזר אישי
    work/
      SPINE.md          # אישיות עוזר עבודה
    support/
      SPINE.md          # אישיות בוט תמיכה

בידוד

ניתוב רב-סוכני אוכף בידוד מחמיר בין סוכנים:

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

תקשורת בין סוכנים אפשרית דרך sessions_send אך נשלטת על ידי

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

ניתוב רב-סוכני מיועד להפרדת אחריויות בין ערוצים ופרסונות. לסוכנים

שצריכים לשתף פעולה במשימה משותפת, ראו צוותי סוכנים. :::

סוכן ברירת מחדל

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

yaml
agents:
  default: personal

אם לא הוגדר ברירת מחדל, הסוכן הראשון ברשימה משמש כברירת מחדל.