אוטומציית דפדפן
Triggerfish מספק שליטה עמוקה בדפדפן באמצעות מופע Chromium מנוהל ייעודי המשתמש ב-CDP (Chrome DevTools Protocol). הסוכן יכול לנווט ברשת, לתקשר עם דפים, למלא טפסים, לצלם צילומי מסך ולאוטמט זרימות עבודה ברשת -- הכל תחת אכיפת מדיניות.
ארכיטקטורה
אוטומציית הדפדפן בנויה על puppeteer-core, מתחברת למופע Chromium מנוהל דרך CDP. כל פעולת דפדפן עוברת דרך שכבת המדיניות לפני שמגיעה לדפדפן.
Triggerfish מזהה אוטומטית דפדפנים מבוססי Chromium כולל Google Chrome, Chromium ו-Brave. הזיהוי מכסה נתיבי התקנה סטנדרטיים ב-Linux, macOS, Windows וסביבות Flatpak.
הכלי browser_navigate דורש כתובות URL עם http:// או https://.
סכמות פנימיות של הדפדפן (כמו chrome://, brave://, about:) אינן נתמכות ויחזירו שגיאה עם הנחיה להשתמש בכתובת URL רגילה. :::
פרופיל הדפדפן מבודד לכל סוכן. מופע ה-Chromium המנוהל אינו חולק עוגיות, סשנים או אחסון מקומי עם הדפדפן האישי שלכם. מילוי אוטומטי של אישורים מושבת כברירת מחדל.
פעולות זמינות
| פעולה | תיאור | דוגמת שימוש |
|---|---|---|
navigate | ניווט לכתובת URL (כפוף למדיניות דומיין) | פתיחת דף רשת למחקר |
snapshot | צילום מסך של דף | תיעוד מצב ממשק, חילוץ מידע חזותי |
click | לחיצה על אלמנט בדף | שליחת טופס, הפעלת כפתור |
type | הקלדת טקסט בשדה קלט | מילוי תיבת חיפוש, השלמת טופס |
select | בחירת אפשרות מתפריט נפתח | בחירה מתפריט |
upload | העלאת קובץ לטופס | צירוף מסמך |
evaluate | הרצת JavaScript בהקשר הדף (בארגז חול) | חילוץ נתונים, מניפולציית DOM |
wait | המתנה לאלמנט או תנאי | הבטחה שדף נטען לפני אינטראקציה |
אכיפת מדיניות דומיין
כל כתובת URL שהסוכן מנווט אליה נבדקת מול רשימת היתר ורשימת חסימה של דומיינים לפני שהדפדפן פועל.
תצורה
yaml
browser:
domain_policy:
allow:
- "*.example.com"
- "github.com"
- "docs.google.com"
- "*.notion.so"
deny:
- "*.malware-site.com"
classification:
"*.internal.company.com": INTERNAL
"github.com": INTERNAL
"*.google.com": INTERNALכיצד מדיניות דומיין עובדת
- הסוכן קורא ל-
browser.navigate("https://github.com/org/repo") - וו
PRE_TOOL_CALLמופעל עם ה-URL כהקשר - מנוע המדיניות בודק את הדומיין מול רשימות ההיתר/החסימה
- אם נחסם או אינו ברשימת ההיתר, הניווט נחסם
- אם מותר, סיווג הדומיין מאותר
- זיהום הסשן עולה להתאים לסיווג הדומיין
- הניווט ממשיך
אבטחה אם דומיין אינו ברשימת ההיתר, הניווט נחסם כברירת
מחדל. ה-LLM אינו יכול לדרוס מדיניות דומיין. זה מונע מהסוכן לבקר באתרים שרירותיים שעלולים לחשוף נתונים רגישים או להפעיל פעולות לא רצויות. :::
צילומי מסך וסיווג
צילומי מסך שנלכדים דרך browser.snapshot יורשים את רמת הזיהום הנוכחית של הסשן. אם הסשן מזוהם ב-CONFIDENTIAL, כל צילומי המסך מאותו סשן מסווגים כ-CONFIDENTIAL.
זה חשוב למדיניות פלט. צילום מסך מסווג ב-CONFIDENTIAL אינו יכול להישלח לערוץ PUBLIC. וו PRE_OUTPUT אוכף זאת בגבול.
תוכן מגורד ושושלת
כאשר הסוכן מחלץ תוכן מדף אינטרנט (דרך evaluate, קריאת טקסט, או ניתוח אלמנטים), הנתונים המחולצים:
- מסווגים בהתבסס על רמת הסיווג שהוקצתה לדומיין
- יוצרים רשומת שושלת העוקבת אחר כתובת URL המקור, זמן החילוץ והסיווג
- תורמים לזיהום הסשן (הזיהום עולה להתאים לסיווג התוכן)
מעקב שושלת זה מבטיח שתמיד תוכלו לעקוב אחר מקור הנתונים, גם אם הם גורדו מדף אינטרנט לפני שבועות.
בקרות אבטחה
בידוד דפדפן לכל סוכן
כל סוכן מקבל פרופיל דפדפן משלו. משמעות הדבר:
- ללא עוגיות משותפות בין סוכנים
- ללא אחסון מקומי או אחסון סשן משותף
- ללא גישה לעוגיות או סשנים של דפדפן המארח
- מילוי אוטומטי של אישורים מושבת כברירת מחדל
- הרחבות דפדפן אינן נטענות
שילוב ווי מדיניות
כל פעולות הדפדפן עוברות דרך ווי המדיניות הסטנדרטיים:
| וו | מתי מופעל | מה בודק |
|---|---|---|
PRE_TOOL_CALL | לפני כל פעולת דפדפן | רשימת היתר דומיינים, מדיניות URL, הרשאות פעולה |
POST_TOOL_RESPONSE | לאחר שהדפדפן מחזיר נתונים | סיווג תגובה, עדכון זיהום סשן, יצירת שושלת |
PRE_OUTPUT | כאשר תוכן דפדפן יוצא מהמערכת | בדיקת סיווג מול יעד |
מגבלות משאבים
- timeout ניווט מונע מהדפדפן לתקוע ללא הגבלה
- מגבלות גודל טעינת דף מונעות צריכת זיכרון מוגזמת
- מגבלות לשוניות מקבילות נאכפות לכל סוכן
בקרות ארגוניות
לפריסות ארגוניות יש בקרות אוטומציית דפדפן נוספות:
| בקרה | תיאור |
|---|---|
| סיווג ברמת דומיין | דומיינים של אינטראנט מסווגים אוטומטית כ-INTERNAL |
| רשימת דומיינים חסומים | רשימה מנוהלת על ידי מנהל של דומיינים אסורים |
| מדיניות שמירת צילומי מסך | כמה זמן נשמרים צילומי מסך שנלכדו |
| תיעוד ביקורת סשן דפדפן | תיעוד מלא של כל פעולות הדפדפן לתאימות |
| השבתת אוטומציית דפדפן | מנהל יכול להשבית את כלי הדפדפן לחלוטין לסוכנים או תפקידים ספציפיים |
דוגמה: זרימת עבודה למחקר רשת
זרימת עבודה טיפוסית של סוכן המשתמש באוטומציית דפדפן:
1. משתמש: "חקור תמחור מתחרים ב-example-competitor.com"
2. סוכן: browser.navigate("https://example-competitor.com/pricing")
-> PRE_TOOL_CALL: דומיין "example-competitor.com" נבדק מול רשימת ההיתר
-> מותר, מסווג כ-PUBLIC
-> הניווט ממשיך
3. סוכן: browser.snapshot()
-> צילום מסך נלכד, מסווג ברמת זיהום הסשן (PUBLIC)
4. סוכן: browser.evaluate("document.querySelector('.pricing-table').innerText")
-> טקסט חולץ, מסווג כ-PUBLIC
-> רשומת שושלת נוצרה: source=example-competitor.com/pricing
5. סוכן: מסכם מידע תמחור ומחזיר למשתמש
-> PRE_OUTPUT: נתוני PUBLIC לערוץ משתמש -- מותרכל שלב מתועד, מסווג וניתן לביקורת.
