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

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

  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 שניות.
  • מצב תצפית ענן מריץ את המדיניות אך רושם החלטה שאינה ללא כפיית הביצוע.
שמור מודולי מדיניות דטרמיניסטי ומהיר. הימנע מקריאות רשת ברמה עליונה או הפעלה של שרת. עבודה קשורה בתוך fn, תופסת כשלים בתלות, ובחר בכוונה הייתה כשל זה צריך לאפשר או לשלול את הפעולה.

ייצוא API

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

פרוס מדיניות מותאמת

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