Crea una politica personalizzata
- Dashboard
- CLI
- Vai a Admin → policy editor, seleziona New policy e descrivi l’errore che desideri prevenire.
- Aggiungi il codice sorgente della politica, quindi testa i corrispondenze previste e i non-corrispondenze sicuri nell’editor. Risolvi ogni errore di convalida.
- Salva la bozza e seleziona Publish version per creare una versione immutabile.
-
Vai a Admin → enforcement, distribuisci la versione a una macchina di test in modalità observe e verifica le sue decisioni sotto Observe → policy prima di applicarla.

Inizia con una regola ristretta
Questa politica blocca i comandi Kubernetes distruttivi solo quando il comando ha come bersaglio la produzione. Tutto ciò che è al di fuori di quel preciso modello di errore restituisceallow().
allow() non appena la regola non si applica.
Scegli una decisione
Scrivi il motivo per l’agente che deve recuperare. Spiega cosa è stato rilevato e cosa dovrebbe fare invece.
Oggetto politica
Filtra gli strumenti all’interno di
fn. match.toolNames non fa parte del tipo personalizzato di politica pubblica.
Contesto della politica
Ogni politica riceve unPolicyContext.
Tratta ogni valore opzionale come genuinamente opzionale. Le versioni dell’agente e i tipi di evento non forniscono tutti gli stessi campi.
Input degli strumenti comuni
Failproof AI normalizza gli strumenti comuni su tutti gli harness supportati in modo che una politica possa solitamente usare una forma di input.
Usa coercizione difensiva perché i valori di input dello strumento sono tipizzati come
unknown:
Scegli l’evento
La disponibilità dell’evento e il comportamento di blocco dipendono dall’harness dell’agente. Vedi Agent harnesses prima di basarsi su un evento in una flotta mista.
Tutti i nomi degli eventi della politica
Tutti i nomi degli eventi della politica
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 e Setup.Crea modelli di politiche comuni
Blocca le scritture in percorsi protetti
Fornisci indicazioni non vincolanti
Limita il completamento della sessione
Carica file di politica
File di convenzione
I file di convenzione vengono caricati automaticamente:- Vengono caricate sia le directory delle politiche del progetto che quelle dell’utente.
- I file vengono caricati alfabeticamente all’interno di ogni directory.
- Un file deve terminare con
policies.js,policies.mjsopolicies.ts. - Sono supportate più chiamate
customPolicies.add()in un file. - Sono supportati i relativi import da moduli locali.
- Le politiche del progetto possono essere commitmate in modo che le stesse regole seguano il repository.
File espliciti
Usa percorsi espliciti quando la convalida o la configurazione dovrebbe denominare direttamente il file di ingresso:Valida e testa
La convalida esegue il modulo attraverso il loader di produzione e conferma che registra almeno una politica.- Un’azione che deve corrispondere e produrre il motivo della politica previsto.
- Un’azione vicina ma sicura che deve restituire
allow(). - Campi dello strumento mancanti o malformati.
- Sintassi alternativa di comandi, percorsi, virgolette, maiuscole/minuscole e spazi bianchi.
- Una dipendenza di subprocess o rete non disponibile.
Comportamento a runtime
- Le politiche integrate vengono valutate prima delle politiche personalizzate.
- Il primo
denyinterrompe l’ulteriore valutazione della politica. - Più risultati
instructpossono essere combinati quando nessuna politica nega l’evento. - Una funzione di politica ha una scadenza di esecuzione di 10 secondi.
- Un’eccezione lanciata o un timeout viene registrato e trattato come
allow(). - Un file di convenzione che non riesce a caricarsi viene saltato; altri file personalizzati e le politiche integrate continuano.
- Il caricamento del modulo di primo livello ha anche una scadenza di 10 secondi.
- La modalità observe del cloud esegue la politica ma registra una decisione non consentire senza applicarla.
fn, cattura i guasti di dipendenza e scegli deliberatamente se quel guasto dovrebbe consentire o negare l’operazione.
Esportazioni API
TypeScript esporta
PolicyContext, PolicyResult, CustomHook, PolicyDecision e PolicyFunction.
Distribuisci politiche personalizzate
Pubblica una versione, distribuiscila in modalità observe, verifica le decisioni e passa all’enforcement.

