CommunityPesquisa e Análise de Dadosgithub.com

enestanerr/prove

Audite um documento reivindicação por reivindicação: recalcula cada número, interpreta gráficos comparando com o texto e verifica se as fontes citadas existem. Use quando o usuário pedir para auditar, verificar, checar fatos ou fazer uma verificação de sanidade de um relatório, PDF, apresentação, planilha ou rascunho; perguntar se os números fecham; ou estiver prestes a enviar um documento que contenha figuras, gráficos ou citações. Os vereditos são calculados por um script incluso, não pelo modelo.

O que é prove?

O skill **Prove** permite auditar documentos reivindicação por reivindicação, recalculando cada número, interpretando gráficos em relação ao texto e verificando a existência de fontes citadas. É útil quando um usuário precisa verificar a precisão de relatórios financeiros, PDFs, apresentações, planilhas ou rascunhos antes de enviá-los. O skill depende de um script externo (`provecheck`) para emitir vereditos, garantindo que o modelo não emita julgamentos próprios. Ele suporta a ingestão de documentos, extração de números e geração de relatórios em HTML, Markdown e formato de cartão, fornecendo uma auditoria estruturada e confiável. As instruções detalhadas no `SKILL.md` orientam o agente a seguir regras rigorosas para evitar erros de julgamento e garantir a precisão das verificações.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/enestanerr/Prove/tree/HEAD/plugin/skills/prove

Installed? Explore more Pesquisa e Análise de Dados skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que prove faz?

Você lê o documento e propõe verificações. provecheck decide cada veredito.

PROVE abaixo significa python3 ${CLAUDE_SKILL_DIR}/scripts/provecheck.pyz. Se ${CLAUDE_SKILL_DIR} não foi substituído por um caminho onde você leu isto, é a pasta que contém este SKILL.md.

  • Se python3 estiver faltando ou falhar (no Windows muitas vezes é apenas um atalho da Loja), execute o mesmo comando com python, e se esse também falhar, com py -3. Não procure por um interpretador na máquina.
  • Escreva o caminho completo em cada comando: não o armazene em uma variável de shell. Execute um comando PROVE por chamada. Coloque o caminho entre aspas se ele contiver espaços.
  • Abra os arquivos reference/ com sua ferramenta de leitura de arquivos e escreva claims.json com sua ferramenta de escrita de arquivos, não com cat ou um heredoc do shell.

Regras que você não deve quebrar

  1. Nunca declare um veredito que provecheck não imprimiu. Nunca altere um. Não considere uma reivindicação como errada, certa, boa ou suspeita com base no seu próprio julgamento.
  2. Copie os números exatamente como impressos, com a frase ou linha de tabela em que se encontram. Não corrija, arredonde, reformate ou converta.
  3. Um número é arredondado a menos que você possa nomear por que ele é exato: count, ledger, defined ou cell.
  4. Se você não puder dizer como um número deve ser calculado, não invente uma derivação. Deixe-o sem uma reivindicação.
  5. Cada número no documento termina em numbers ou em skipped com um motivo. Execute a etapa de cobertura e volte para qualquer coisa perdida.
  6. Não corrija o documento, e não edite verdicts.json ou os relatórios.

Etapas

Trabalhe em uma pasta chamada prove-work/ no diretório atual. DOC é o arquivo do usuário.

  1. Ingestão. PROVE ingest DOC -o prove-work/doc.json --render-pages prove-work/pages Se disser que o suporte a PDF está faltando, tente pip install pymupdf uma vez. Se isso não for possível, leia o arquivo com suas próprias ferramentas, pule --doc na etapa 4 e diga ao usuário que os números não puderam ser fundamentados, então nada pode ser relatado como contradito.
  2. Escaneamento. PROVE scan prove-work/doc.json lista cada token numérico com sua página. Esta é sua lista de verificação para a regra 5. PROVE text prove-work/doc.json imprime o texto de cada página: copie suas citações dele.
  3. Leia e escreva prove-work/claims.json. Primeiro leia reference/claims-schema.md na pasta deste skill: ele define cada campo. Depois leia o documento em si (e as imagens da página para um PDF) e registre:
    • Números derivados: totais, diferenças, participações, taxas de crescimento, médias, CAGR, classificações. Quando as partes são impressas, calcule uma participação a partir da soma das partes, não de um total impresso que está sendo verificado.
    • Referências cruzadas: a mesma quantidade impressa em dois lugares (eq).
    • Gráficos: apenas depois de ler reference/charts.md. Leia cada marca duas vezes, a segunda vez a partir de um recorte 2× feito com PROVE crop. Dê um intervalo honesto, não um ponto.
    • Fontes: DOIs, IDs arXiv, URLs e qualquer citação direta com sua fonte.
    • Todo o resto numérico vai em skipped com um motivo (ano, número de página, …). Os números de página e citações devem corresponder ao que PROVE text imprimiu, não à sua memória.
  4. Verificação. PROVE check prove-work/claims.json --doc prove-work/doc.json Ele imprime os vereditos e escreve prove-work/verdicts.json. Se relatar erros de esquema, not-grounded, parse-mismatch, unit-mismatch, scale-mismatch ou números perdidos, a causa geralmente está no seu arquivo de reivindicações: corrija o arquivo e execute novamente. Nunca corrija alterando o que o documento diz. Pare quando o que resta for verdadeiro para o documento.
  5. Fontes. PROVE sources prove-work/claims.json se o arquivo listar alguma. Sem acesso à rede adicione --offline e diga ao usuário que as fontes não foram verificadas.
  6. Relatório. PROVE report prove-work/verdicts.json --html --md --card Código de saída 1 aqui significa que pelo menos uma reivindicação está contradita. É uma descoberta, não uma falha.
  7. Diga ao usuário, nesta ordem:
    • quantas reivindicações foram contraditas, depois cada uma em uma frase com o cálculo, copiado do que provecheck imprimiu;
    • as reivindicações suspeitas, cada uma com seu intervalo possível;
    • a linha de cobertura, e quantos números foram perdidos, se houver;
    • o que não foi verificado e por que (reivindicações não verificadas, fontes quando offline, gráficos que não puderam ser lidos);
    • o caminho de prove-work/prove-report.html.

O que dizer sobre cada veredito

  • contradito: "Isso não pode estar certo sob nenhum arredondamento." Mostre os números.
  • suspeito: "Isso só funciona se as entradas estiverem no limite de seu arredondamento." Mostre o intervalo.
  • não verificado: "Não verificado", com o motivo. Nunca apresente como um problema com o documento.
  • verificado: mencione a contagem; liste-os apenas se perguntado.

Vereditos de gráficos dependem da sua leitura da imagem, e o relatório os marca como read. Diga isso, e mantenha-os separados dos calculados em seu resumo.

Um relatório limpo significa que as reivindicações verificadas passaram. Diga quantas foram verificadas.

Mais detalhes, carregados quando necessário

  • reference/claims-schema.md — o arquivo de reivindicações, campo por campo, com a lista de relações e o que cada motivo unverified significa. Leia antes da etapa 3.
  • reference/charts.md — como ler um gráfico para o Prove. Leia antes de qualquer reivindicação de gráfico.
  • reference/examples.md — dois exemplos completos trabalhados.

Habilidades Relacionadas