Skip to main content
מדיניות מותאמת הופכת דפוס כשל מעקיפות או ביקורות שלך להחלטה המופעלת בזמן שהסוכן עובד. מדיניות יכולה לאפשר פעולה, לתת הדרכה לסוכן, או לשלול את הפעולה לפני שהיא גורמת לתקרית נוספת. השתמש במדיניות מותאמת כאשר ההתנהגות תלויה בכלים שלך, בנתיבים, בפקודות, בסביבות או בכללי הפעולה שלך. בדוק קודם את חבילת המדיניות של Failproof AI כדי שלא תיצור בחזרה בקרה קיימת.

כתוב מדיניות מותאמת

  1. עבור אל Admin → policy editor, בחר New policy, ותאר את הכשל שאתה רוצה למנוע.
  2. הוסף את מקור המדיניות, ואז בדוק התאמות צפויות ואי-התאמות בטוחות בעורך. פתור כל שגיאת אימות.
  3. שמור את הטיוטה ובחר Publish version כדי ליצור גרסה בלתי משתנה.
  4. עבור אל Admin → enforcement, הפץ את הגרסה למכונת בדיקה במצב observe, וודא את ההחלטות שלה תחת Observe → policy לפני שאתה אוכף אותה. עורך המדיניות המשמש לכתיבה ופרסום מדיניות מותאמת.

התחל עם כלל צר

מדיניות זו חוסמת פקודות Kubernetes הרסניות רק כאשר הפקודה מכוונת לייצור. הכל מחוץ לדפוס כשל זה בדיוק מחזיר allow().
מדיניות טובה היא צרה מספיק כדי להסביר במשפט אחד. התאם את הפעולה הנצפית — לא הכוונה שאתה מקווה שהסוכן היה לה — וחזור allow() ברגע שהכלל לא חל.

בחר החלטה

כתוב את הסיבה לסוכן שחייב להחזיר. הסבר מה התגלה וקולט הוא צריך לעשות במקום זאת.
אל תשתמש ב-instruct() לגבול בטיחות. מסירת הדרכה משתנה לפי קערת הסוכן. השתמש ב-deny() כאשר יש לחסום את הפעולה.

אובייקט מדיניות

סנן כלים בתוך fn. match.toolNames אינו חלק מסוג המדיניות המותאם הציבורי.

הקשר המדיניות

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

קלטי כלים נפוצים

Failproof AI מנורמל כלים נפוצים בין קערות תומכות כך שמדיניות יכולה בדרך כלל להשתמש בצורת קלט אחת. השתמש בכפיית הגנה כי ערכי קלט של כלים מוקלדים כ-unknown:

בחר את האירוע

זמינות אירוע וחסימת התנהגות תלויים בקערת הסוכן. ראה קערות סוכן לפני שתסמך על אירוע בצי מעורב.
SessionStart, SessionEnd, UserPromptSubmit, PreToolUse, PermissionRequest, PermissionDenied, PostToolUse, PostToolUseFailure, Notification, SubagentStart, SubagentStop, TaskCreated, TaskCompleted, Stop, StopFailure, TeammateIdle, InstructionsLoaded, ConfigChange, CwdChanged, FileChanged, WorktreeCreate, WorktreeRemove, PreCompact, PostCompact, Elicitation, ElicitationResult, UserPromptExpansion, PostToolBatch, ו-Setup.

כתוב דפוסי מדיניות נפוצים

חסום כתיבה לנתיבים מוגנים

תן הדרכה לא חוסמת

שער השלמת הפעלה

אירוע Stop שלול יכול להפוך את הסוכן לנסיון חוזר. שער רק בתנאי שהסוכן יכול להסתפק בסביבה הנוכחית, וכמוס כל קריאת תהליך משנה או רשת.

טען קבצי מדיניות

קבצי קונבנציה

קבצי קונבנציה טוענים באופן אוטומטי:
  • ספריות מדיניות פרויקט וגם משתמש טוענות.
  • קבצים טוענים בתרתיב אלפביתי בתוך כל ספרייה.
  • קובץ חייב להסתיים ב-policies.js, policies.mjs, או policies.ts.
  • מספר קריאות customPolicies.add() בקובץ אחד נתמכות.
  • יבוא יחסי מודולים מקומיים נתמכים.
  • מדיניות פרויקט יכולה להיות מחויבת כך שאותם כללים עוקבים את המאגר.

קבצים ברורים

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

אימות ובדיקה

אימות מבצע את המודול דרך מטעין הייצור ומאשר שהוא רושם לפחות מדיניות אחת.
אימות תופס קבצים חסרים, שגיאות תחביר, ייבוא לא פתור, חריגים ברמה עליונה, וזמנים פגועים בטעינת מודול. זה לא מוכיח שהמנטק התאמה שלך נכון. בדוק לפחות במקרים אלה:
  • פעולה אחת שחייבת להתאים ולהפיק את סיבת המדיניות המיועדת.
  • פעולה קרובה אך בטוחה אחת שחייבת להחזיר allow().
  • שדות כלים חסרים או שגויים.
  • תחביר פקודה חלופי, נתיבים, ציטוט, רישור, ורווח.
  • תת-תהליך או תלות רשת לא זמינים.
שייך את התוצאה למדיניות המותאמת שלך תחת Observe → policy. בדיקה חסומה אינה מספיקה אם מדיניות מובנית שונה ייצרה את ההחלטה.

התנהגות זמן ריצה

  • מדיניות מובנית מעריכה לפני מדיניות מותאמת.
  • ה-deny הראשון עוצר את המשך הערכת המדיניות.
  • תוצאות instruct מרובות יכולות להיות משולבות כאשר אין מדיניות שלוללת את האירוע.
  • לפונקציית מדיניות יש קו זמן ביצוע של 10 שניות.
  • חריג שהוטל או זמן עבירה מתועדים ומטופלים כ-allow().
  • קובץ קונבנציה שלא בטעינה דלג; קבצים מותאמים וגם מדיניות מובנית אחרים ממשיכים.
  • טעינת מודול ברמה עליונה כללה קו זמן של 10 שניות.
  • מצב observe בענן מפעיל את המדיניות אך רושם החלטה שלא מאפשרת מבלי אכוף אותה.
שמור על מודולי מדיניות דטרמיניסטיים ומהירים. הימנע מקריאות רשת ברמה עליונה או הפעלת שרת. עבודה גבולה בתוך fn, תפס כשלי תלות, ובחר בכוונה אם כשל זה צריך לאפשר או לשלול את הפעולה.

ייצאות API

TypeScript ייצא PolicyContext, PolicyResult, CustomHook, PolicyDecision, ו-PolicyFunction.

הפץ מדיניות מותאמות

פרסם גרסה, הפץ אותה במצב observe, ודא החלטות, והעבר לאכיפה.