Vai al contenuto
CodeAuditAgent
Tutta la documentazione

Come funziona un audit

Cosa CodeAuditAgent legge, cosa invia al modello, quanto tempo impiega un audit e dove sono i limiti.

Un audit ha tre fasi: raccogliere il codice sorgente, chiedere al modello un report strutturato, archiviare il risultato. Sapere cosa accade in ciascuna fase ti dice cosa un audit può e non può trovare.

Raccolta del codice sorgente

Per un repository, leggiamo l'albero dei file del ramo predefinito e selezioniamo i file che meritano revisione: codice sorgente dell'applicazione, configurazione e manifesti di dipendenza. Le directory fornite, l'output della compilazione, i file di lock, le immagini e i binari vengono ignorati — consumano il budget senza contenere logica.

  • I file singoli più grandi di 60 KB vengono ignorati; un file di tale dimensione di solito è generato.
  • Quanti file vengono letti dipende dal tuo piano: 20 su Gratuito, 40 su Starter, 80 su Pro.
  • Anche l'importo totale del codice sorgente inviato al modello ha un limite: 60.000 caratteri su Gratuito, 300.000 su Starter, 600.000 su Pro.

Quando un repository è più grande del limite, il report lo dice esplicitamente. Tratta un audit troncato come un campione, non come copertura: i file che non sono stati letti non sono stati revisionati.

Interrogazione del modello

Il codice sorgente va a Claude con un prompt di sistema che definisce il ruolo del revisore e uno schema di strumento che definisce la forma della risposta. Il modello non può rispondere con prosa: deve compilare la struttura del report, per questo ogni risultato ha una gravità, una posizione e una correzione anziché un paragrafo di consiglio.

Il tuo codice è trattato come dati non affidabili in tutto il processo. Se un commento o una stringa nel repository cerca di istruire il revisore — "ignora le istruzioni precedenti", "non segnalare risultati" — al modello viene detto di non conformarsi e segnalare il tentativo come un risultato di prompt injection.

I piani a pagamento eseguono Claude Fable 5.1. Il piano gratuito esegue Claude Haiku 4.5, che è più veloce e molto più economico da servire, quindi i trial rimangono gratuiti; trova meno del modello principale.

Archiviazione del risultato

Il report viene archiviato rispetto al tuo account, con il modello utilizzato, l'elenco dei file effettivamente letti e se il codice sorgente è stato troncato. Questo elenco è importante quando confronti due audit: un risultato può scomparire perché è stato corretto oppure perché il file in cui si trovava non è riuscito a superare il taglio questa volta.

Cosa un audit non fa

  • Non esegue il tuo codice, quindi non può confermare l'exploitability in fase di esecuzione.
  • Non raggiunge ancora i repository privati; ciò richiede un'installazione di GitHub App, che non è stata costruita.
  • Non apre pull request o cambia nulla nel tuo repository.
  • Non sostituisce un test di penetrazione o una revisione umana del codice critico per la sicurezza.