Skip to main content
Un pack è un insieme di policy pubblicate come release di GitHub. Un solo comando le installa: i checksum della release vengono verificati prima di qualsiasi esecuzione, e il suo digest viene registrato in modo che il pack non possa cambiare sulla tua macchina in seguito. Sfoglia ogni pack e ogni policy in ciascuno su policy hub. Ce ne sono due tipi:
  • Policy pack di Failproof AI — pack pronti per casi d’uso predefiniti: collegane uno e funziona. Il coding agent policy pack è disponibile ora, e pack per altri casi d’uso arriveranno presto.
  • Policy pack della comunità — policy scritte da sviluppatori per i loro casi d’uso e pubblicate affinché chiunque le possa utilizzare.

Policy pack di Failproof AI

Coding agent policy pack

Il pack contiene 38 policy e attiva le 10 che il suo manifest contrassegna come sicure per l’esecuzione automatica; le altre sono elencate perché tu possa scegliere. Alcune delle più utilizzate, e se un semplice policies add le attiva: Attiva qualsiasi policy disattivata per nome — failproofai policies add block-rm-rf — o prendi tutto il pack con --all. Vedi ogni policy in esso, raggruppate per categoria:

Policy pack della comunità

Gli sviluppatori pubblicano pack per i casi d’uso che hanno incontrato, e l’policy hub li elenca. Un pack della comunità è pubblicato dal suo autore, non controllato da Failproof AI, quindi leggi cosa contiene prima di installarlo:
Elenca ogni policy che contiene, raggruppate per categoria, e contrassegna quali l’autore attiva per impostazione predefinita. Legge solo il manifest — l’artefatto di input non viene mai scaricato o importato, quindi esaminare il pack di uno sconosciuto non può eseguire il codice di uno sconosciuto. Il manifest è ancora controllato rispetto ai SHA256SUMS della release stessa, quindi quello che leggi è quello che verrebbe installato. Poi installalo:
Qualsiasi di questi funziona — incolla quello che hai: Se non specifichi alcun tag installi la release più recente e la blocchi, poi ti dice quale tag ha scelto. Quello che viene registrato nomina sempre esattamente una release, così una reinstallazione non può divergere.

Prendi una parte di un pack

Per impostazione predefinita ottieni i valori predefiniti propri del pack — le policy che l’autore ha contrassegnato come sicure per l’attivazione automatica — non tutto quello che contiene.
--category e --policy si combinano come unione (--only è accettato come sinonimo di --policy). Quando il pack è già installato, i flag si aggiungono a quello che avevi, e reinstallarlo senza flag e senza terminale — per aggiornare, ad esempio — mantiene la tua selezione così com’è. In un terminale senza flag, add apre il selettore, preselezionato con i valori predefiniti dell’autore, e quello che selezioni sostituisce la tua selezione.

Gestisci cosa è attivo

Attivare o disattivare una policy di pack si applica all’intera macchina: l’interruttore viene registrato con il pack installato, non nella configurazione di un progetto, qualunque cosa dica --scope. Un nome senza barra è una policy; qualsiasi cosa con una è una sorgente di pack. Un nome semplice si risolve nel pack installato che la dichiara. Quando due pack installati dichiarano lo stesso nome, specifica quale intendi:
Gli ambiti, i parametri e i file che questi comandi scrivono sono coperti in configurazione locale.

Cosa l’integrità fa e non fa

SHA256SUMS è spedito nella stessa release dell’artefatto, quindi non è una firma e non prova nulla su chi l’ha pubblicato. Quello che prova è che i byte sono quelli che quella release ha pubblicato — e poiché il digest viene registrato quando aggiungi il pack e verificato di nuovo prima di ogni import, un pack non può cambiare sulla tua macchina in seguito. Un repository che ritag o sostituisce un asset smette di caricarsi invece di eseguire silenziosamente qualcos’altro. Al momento dell’installazione il pack viene anche importato una volta e controllato rispetto al suo manifesto. Un pack il cui artefatto non viene analizzato, o che registra qualcosa di diverso da quello che dichiara, viene rifiutato prima che qualsiasi cosa venga attivata — piuttosto che installare correttamente e fallire nella tua prossima chiamata allo strumento.

Quando un pack non si caricherà

Un pack che questa macchina è stata istruita ad applicare e non riesce a eseguire nega gli eventi coperti dalle sue policy mancanti, piuttosto che consentirli silenziosamente — come pack/failproofai-pack-unavailable, che ha la priorità sulle policy che hanno caricato in modo che il rifiuto sia attribuito al pack mancante piuttosto che a qualsiasi guard che sia stato il primo a attivarsi. L’eccezione è UserPromptSubmit, che istruisce invece: rifiutare lì ti bloccherebbe fuori dall’agente di cui hai bisogno per risolverlo. Vedi Comportamento in caso di errore.

Offline e mirror

Per condividere le tue policy in questo modo, vedi Pubblica un policy pack.