Skip to main content
Recurso em beta. O audit é disponibilizado em beta enquanto coletamos feedback inicial. O catálogo de detectores e o formato do relatório podem mudar antes do próximo corte estável. Abra uma issue se algo parecer errado.
O audit agora está disponível como a página /audit do dashboard, não como um subcomando de CLI. Acesse pelo navbar do dashboard (entre Políticas e Projetos) ou visite http://localhost:8020/audit diretamente ao rodar failproofai localmente.
failproofai          # open the dashboard, then click "Audit"
O dashboard escaneia transcrições anteriores da CLI do agente nesta máquina (Claude Code, Codex, Copilot, Cursor, OpenCode, Pi, Gemini) e reporta com que frequência o agente fez coisas que o failproofai foi criado para evitar — verificações de variáveis de ambiente, force pushes, prefixos redundantes cd <cwd>, loops de polling com sleep, releituras de arquivos recém-editados, e muito mais. Para cada transcrição, cada evento de uso de ferramenta é reproduzido pelas 39 políticas nativas e por 8 detectores exclusivos de audit que identificam padrões ainda não cobertos pelas políticas em tempo de execução. As contagens são agregadas por política / detector em todas as sessões.

O que você obtém

A página /audit é composta por seis seções:
  1. Identidade — seu agente classificado em um dos 8 arquétipos (optimist, cowboy, explorer, goldfish, paranoid architect, precision builder, hammer, ghost) com base no sinal ponderado em todas as transcrições auditadas.
  2. Pontos fortes — números reais derivados do escaneamento (% de chamadas limpas, “0 vazamentos de credenciais”, etc.) condicionados ao acionamento efetivo das políticas de sanitização relevantes.
  3. Pontuação — de 0 a 100 com faixas S/A/B/C/D/F e uma projeção de melhoria caso todas as políticas recomendadas fossem habilitadas.
  4. Achados — cards por política com o que aconteceu, custo, evidências capturadas e o comando exato failproofai policy add <slug> para habilitar a política nativa em tempo real que teria interceptado o comportamento.
  5. Políticas prescritas — lista de instalação consolidada com um comando único failproofai policies --install.
  6. Lembrete de re-auditoria — “volte melhor.” Configure um lembrete por e-mail de 7 dias via api-server (requer login; veja failproofai auth).

Detectores exclusivos de audit

Estes detectam padrões de “comportamento ineficiente” que ainda não são aplicados em tempo real. Eles rodam apenas durante o audit e nunca bloqueiam uma chamada de ferramenta ao vivo.
DetectorO que conta
redundant-cd-cwdComandos Bash que começam com cd <cwd> && … mesmo que os comandos já rodem em cwd.
prefer-edit-over-read-catcat/head/tail/less/more em um único arquivo-fonte — use a ferramenta Read.
prefer-edit-over-sed-awkEdições in-place com sed -i / awk … > file — use a ferramenta Edit.
prefer-write-over-heredocEscrita de arquivos com heredoc / echo > file multilinha — use a ferramenta Write.
sleep-polling-loopsleep N longo (≥ 30s) ou loops de polling while …; sleep …; done.
find-from-rootfind /, find /home, find /usr, etc. — limite ao escopo de cwd.
git-commit-no-verifygit commit … --no-verify / -n, ignorando hooks.
reread-after-editRead de um arquivo que acabou de ser modificado por Edit/Write na mesma sessão.

Caches

  • Cache por transcrição em ~/.failproofai/cache/audit/<sha1>.json com chave baseada em (mtime, size, engineVersion, detectorVersion). Invalidado automaticamente quando o código de políticas ou detectores muda.
  • Cache do resultado completo em ~/.failproofai/audit-dashboard.json (modo 0600). Permite que o dashboard renderize instantaneamente na navegação sem precisar re-executar. Clique em [ re-audit now ] no dashboard para atualizar.

Observações

  • Sem mutações. O audit é reproduzido em modo somente leitura. warn-repeated-tool-calls é ignorado porque seu sidecar por sessão seria modificado do contrário.
  • Políticas de fluxo de trabalho ignoradas. As políticas require-*-before-stop disparam apenas em eventos Stop e executam execSync contra o estado git ao vivo — elas não têm uma interpretação significativa do tipo “o que teria acontecido em 2025”, então não aparecem nas contagens do audit.
  • Políticas customizadas ignoradas. Hooks customizados fornecidos pelo usuário não são reproduzidos (podem ter mudado desde a sessão original).