‫Managed Agents API בסביבת ארגז החול של Agent Platform

‫Managed Agents API ב-Agent Platform פועל עם ארגזי חול מבודדים רגילים של Linux. בקונטיינר ההרצה המאובטח והמנוהל הזה, סוכנים בהתאמה אישית יכולים להסיק מסקנות, לתכנן תהליכי עבודה, להריץ פקודות bash ולקרוא או לכתוב קבצים באופן מיידי.

כל סביבת ארגז חול מספקת את מערכות הליבה ואמצעי הבקרה הבאים:

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

  • מסוף Bash: מספק סביבה מאובטחת להרצת פקודות מסוף, להרצת סקריפטים בהתאמה אישית ולעיבוד קבצים מקומיים.

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

  • שילובים ניתנים להרחבה: תמיכה בייבוא דינמי של יכולות מותאמות אישית, כולל ממשקי API סטנדרטיים לאינטרנט, שרתי Model Context Protocol‏ (MCP) או מיומנויות מ-Skill Registry.

הרשאות וארגז חול של אבטחה

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

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

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

  • הגדרת היקף הנתונים לחיבורים של Cloud Storage ו-Skill Registry: כשמצרפים מקורות נתונים חיצוניים מ-Google Cloud Storage או מ-Skill Registry, הסביבה מקבלת אסימוני הרשאה עם היקף מצומצם שנועדו לגשת רק לספריות או למיומנויות הספציפיות שצוינו בהגדרות הסוכן. ארגז החול לא מכיל פרטי כניסה סביבתיים ולא יכול לגשת למאגרים או לקבצים אחרים בפרויקט.

  • הגדרת היקף ההרשאות של פרטי הכניסה ל-MCP: הגדרות של כותרות לשרתי Model Context Protocol‏ (MCP), שמכילות אסימוני אימות של קצה העורפי, מועברות רק כשניגשים לנקודות הקצה הספציפיות של ה-MCP שמוגדרות בהגדרה.

ביצוע וניהול מחזור החיים

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

  • סביבת ארגז חול: הסוכנים פועלים בסביבת ארגז חול מנוהלת לחלוטין, באמצעות רתמת Antigravity לתיאום.

  • אורך החיים (TTL) של ארגז החול: לסביבת ארגז החול יש אורך חיים (TTL) סטנדרטי של 7 ימים. כל אינטראקציה חדשה מאפסת אוטומטית את הטיימר הזה כדי להבטיח שהסוכנים הפעילים יישארו זמינים.

  • שמירת הגדרות הסוכן: הגדרות הסוכן נשמרות באופן קבוע בשרת העורפי, והן נשארות שם עד ששולחים בקשת DELETE מפורשת ל-Agents API.

  • שיתוף פעולה בין סוכנים: כמה סוכנים חולקים את אותה סביבה כשמספקים את אותו env_id במהלך האינטראקציה.

תוכנה שהותקנה מראש

ארגז החול מכיל קבוצה של כלי עזר סטנדרטיים של Linux:

קטגוריה חבילות/כלים
UNIX Tools
  • bc
  • curl
  • fd-find
  • gawk
  • gcloud CLI
  • git
  • htop
  • iproute2
  • jq
  • lsof
  • procps
  • ripgrep
  • rsync
  • tree
  • unzip
  • wget
  • which
Python 3.11 Packages
  • ast-grep-cli
  • beautifulsoup4
  • google-genai
  • numpy
  • pandas
  • pyyaml
  • requests
Node.js 20 Global Packages
  • create-next-app
  • create-vite
  • typescript

הסוכן יכול להתקין חבילות נוספות בזמן הריצה באמצעות pip install או npm install כשהגישה לרשת מופעלת. החבילות האלה נשמרות בתמונת המצב של הסביבה ונשארות זמינות לאינטראקציות באמצעות אותו env_id.

ארכיטקטורה של הרכבת מיומנויות

כשמגדירים מיומנויות חיצוניות ממקורות כמו Skill Registry (מאגר מיומנויות) בתוך base_environment.sources של סוכן, המשאבים האלה מצורפים ישירות למערכת הקבצים של ארגז החול. המערכת ממקמת כל מיומנות בספריות היעד שצוינו, תוך שמירה על מבנה הספרייה המקורי של חבילת המיומנות. הארגון הזה עוזר לוודא שקבצי מיומנויות בודדים יישארו זמינים לסוכן.

הגדרה לדוגמה של מקורות

בדוגמה הבאה מצורפות שלוש מיומנויות ממאגר המיומנויות:

"sources": [
  {
    "type": "skill_registry",
    "source": "projects/{projectID}/locations/{location}/skills/pdf-skill",
    "target": "/.agent/skills/"
  },
  {
    "type": "skill_registry",
    "source": "projects/{projectID}/locations/{location}/skills/finance-skill",
    "target": "/.agent/skills/"
  },
  {
    "type": "skill_registry",
    "source": "projects/{projectID}/locations/{location}/skills/git-skill",
    "target": "/.agent/other-skills/"
  }
]

מבנה מערכת הקבצים של Sandbox אחרי ההרכבה

אחרי הקצאת סביבת הארגז, הקבצים נטענים ומסודרים בתוך הקונטיינר באופן הבא:

/ (root)
└── .agent/
    ├── skills/                    <-- Mount Target for pdf-skill & finance-skill
    │   ├── pdf-skill/             <-- Preserved skill directory
    │   │   ├── SKILL.md
    │   │   └── scripts/
    │   └── finance-skill/         <-- Preserved skill directory
    │       ├── SKILL.md
    │       └── scripts/
    └── other-skills/              <-- Mount Target for git-skill
        └── git-skill/             <-- Preserved skill directory
            ├── SKILL.md
            └── scripts/

כלים מובנים בארגז החול

כשמפעילים את Agent Mode בסביבה מנוהלת, יש לסוכן גישה לכמה כלים שמוגדרים כברירת מחדל:

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

המאמרים הבאים

סקירה כללית

ב-Agent Platform אפשר לקרוא על Managed Agents API (ממשק API של סוכנים מנוהלים), סביבה מבוססת-תצורה ובעדיפות ל-REST לבניית סוכנים אוטונומיים.

מדריך

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

מדריך

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