CommunityPesquisa e Análise de Dadosgithub.com

0x6869726f6b69/claude-skills

Revisão de PDF de artigo acadêmico como um revisor rigoroso e construtivo, seguido de ciclo de revisão → correção → regeneração do PDF → reavaliação, repetido o máximo possível dentro de um limite de tempo definido pelo usuário.

O que é claude-skills?

Esta skill implementa um loop automatizado de revisão por pares para artigos acadêmicos em PDF, onde o agente atua como um revisor especializado, fornecendo sumário, pontos fortes, pontos fracos, justificativa, perguntas para rebuttal, nota e confiança. Após a revisão, o agente revisa o manuscrito com base nas críticas, regenera o PDF e realiza uma nova revisão, repetindo o processo até o tempo limite definido pelo usuário. O usuário é questionado sobre a duração assim que a skill é ativada. A skill é acionada automaticamente para solicitações como "review", "improve for acceptance", "prepare for rebuttal" ou "self-review", mesmo sem o nome explícito da skill. Ela possui checklists detalhados para áreas como Aprendizado Federado (non-IID, participação parcial, privacidade), teoria de aprendizado de máquina e experimentos em larga escala. Os resultados finais incluem o PDF revisado final, relatórios de cada rodada, um rastreador de problemas e uma lista de tarefas que só o autor pode realizar, garantindo que o loop seja concluído dentro do prazo sem intervenção desnecessária do usuário.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/0x6869726f6b69/claude-skills/tree/HEAD/skills/paper-review-loop

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

Paper Review Loop: Revisão → Correção → Re-Revisão

Revise um PDF de artigo como especialista, revise o manuscrito com base nos apontamentos, recrie o PDF e revise novamente. Repita o máximo de vezes possível dentro do tempo limite definido pelo usuário. Ao final, entregue os três itens abaixo:

  • PDF revisado (versão final) e PDFs de cada rodada
  • Relatórios de revisão de cada rodada (7 itens) e a evolução das avaliações e apontamentos
  • Lista de tarefas que só o autor pode realizar (experimentos adicionais, etc. — transferidos para cá em vez do texto, para evitar falsificação)

Abaixo, <skill_dir> é o diretório onde este SKILL.md está localizado, e <ws> é a pasta de trabalho. Nomes de scripts como loop_state.py são abreviações de python <skill_dir>/scripts/loop_state.py. Em ambientes sem python, use python3.

0. Primeiro: Perguntar o Limite de Tempo

  1. Identifique o PDF alvo. Se não estiver na mensagem, pergunte. Verifique se há código-fonte LaTeX (pasta, .zip, .tar.gz do arXiv, .tex) no mesmo local ou anexado. A presença do fonte melhora muito a qualidade e a velocidade da revisão.
  2. Pergunte o limite de tempo. Use ferramentas de pergunta como AskUserQuestion, se disponíveis; caso contrário, pergunte no chat e aguarde a resposta. Se o tempo já estiver explícito na mensagem de ativação, use-o sem perguntar novamente.
    • Pergunta 1 "Limite de tempo": Apenas revisão (sem loop de correção) / 1 hora / 2 horas / 3 horas (outros como "30 minutos", "5 horas" também são aceitos)
    • Pergunta 2 "Local de submissão / Critério de avaliação" (agrupar na mesma caixa de diálogo; omitir se já conhecido): Não especificado (padrão de conferência internacional de alto nível) / NeurIPS·ICML·ICLR / Periódico (Accept / Minor / Major / Reject)
  3. Assim que receber a resposta, inicie o cronômetro. O tempo de configuração está incluído no orçamento.
    python <skill_dir>/scripts/loop_state.py init <ws> --hours 2 --paper <pdf> --venue "<local>"
    
    (Também aceita --minutes 90 ou --review-only)
  4. Se houver ferramentas anti-sono (como keep-awake no Claude Desktop), ative-as pela duração do orçamento. Se o PC dormir, loops longos podem parar.
  5. Informe o usuário em 2-3 linhas: horário limite, pasta de trabalho, que o loop prosseguirá autonomamente sem confirmações, e que pode ser interrompido a qualquer momento.

1. Configuração

A pasta de trabalho será <pasta_do_PDF>/<nome_do_PDF>_review_loop/ (se não for gravável, use o diretório de trabalho).

<ws>/
├── state.json          Registro do timer e de cada fase (gerenciado por loop_state.py)
├── original/           PDF e fontes recebidos. Não alterar.
├── src/                Fonte editável (main.tex, figures/, *.bib)
├── work/               Arquivos temporários, como imagens de página
├── rounds/
│   ├── r01/            paper.pdf(=PDF original) paper.txt review.md issues.json response.md src/
│   ├── r02/            paper.pdf(1ª correção) paper.txt review.md issues.json response.md src/ changes.diff
│   └── ...
├── issue_tracker.md    Evolução das avaliações e apontamentos (gerado por loop_state.py summary)
├── author_todo.md      Tarefas que só o autor pode resolver (experimentos adicionais, etc.)
└── final_report.md
  1. Execute loop_state.py start <ws> --round 0 --phase setup
  2. Copie o PDF para original/ e rounds/r01/paper.pdf, e extraia o texto: python <skill_dir>/scripts/pdf_tools.py text <ws>/rounds/r01/paper.pdf -o <ws>/rounds/r01/paper.txt
  3. Prepare o código-fonte editável em src/ (pule no modo apenas revisão).
    • Se houver fonte LaTeX: Copie/descompacte para src/ (o arquivo contendo \documentclass e \begin{document} é o principal). Execute build_pdf.py uma vez para verificar se compila.
    • Se houver apenas PDF: Reconstrua o fonte LaTeX seguindo o procedimento em references/pdf_to_latex.md. É a etapa mais pesada (20-40 min para 10 páginas); avise o usuário que consumirá orçamento.
  4. Execute python <skill_dir>/scripts/snapshot.py <ws>/src <ws>/rounds/r01
  5. Execute loop_state.py end <ws> --round 0 --phase setup

A revisão da rodada 1 (PDF original) pode ser executada em paralelo com a reconstrução do fonte. Se subagentes estiverem disponíveis, inicie o revisor e o responsável pela reconstrução simultaneamente.

2. Loop

Divisão de Papéis e Justificativa

  • A revisão deve ser feita por um novo subagente (ferramenta Agent) a cada rodada. Um revisor sem o contexto de quem fez as correções julga apenas o que está realmente escrito no PDF, não o que o autor pretendia corrigir. Com o mesmo contexto, a autoavaliação tende a ser mais branda.
  • As correções também devem ser delegadas a um subagente, enquanto o agente principal atua como orquestrador (cronômetro, inicialização, verificação, sumarização). Assim, mesmo em loops de várias horas, o contexto do principal não incha; todo o estado fica salvo em arquivos.
  • Se subagentes não estiverem disponíveis, execute tudo sequencialmente. Nesse caso, antes da revisão, reextraia o texto do novo PDF e avalie com base no papel, não na memória.

Rodada r (r = 1, 2, …)

(a) Revisão

  1. Execute loop_state.py start <ws> --round r --phase review
  2. Inicie o subagente com a "Mensagem de instrução para o revisor" abaixo e aguarde a conclusão.
  3. Valide a saída: review.md deve conter as seções necessárias (a partir de r≥2, incluir a seção 0); issues.json deve ser JSON válido. Caso falte, peça ao mesmo revisor para corrigir.
  4. Execute loop_state.py end <ws> --round r --phase review, em seguida loop_state.py summary <ws> (atualiza issue_tracker.md).
  5. Envie ao usuário apenas uma linha de progresso. Exemplo: r02 Revisão concluída: Geral 3→4, Major não resolvidos 5→2, restam 1h12min

(b) Decidir se continua

  1. Execute loop_state.py status <ws>. Como o Claude não percebe o tempo decorrido, use sempre esta saída para decisões temporais.
  2. Se NEXT: STOP, vá para §3. A decisão é tomada imediatamente após a revisão, portanto o PDF final estará sempre revisado.
  3. Se CONTINUE, mas o issues.json mais recente não tiver nenhum apontamento com status open ou partially_resolved (todos resolved ou needs_author retidos como [AUTHOR TODO]), pode encerrar. Se não houver mais nada para corrigir no texto, rodadas adicionais apenas poliriam a redação. Explique o motivo no final_report.

(c) Correção (com base na revisão da rodada r, gerar PDF da rodada r+1)

  1. Execute loop_state.py start <ws> --round r --phase revise. Anote o horário revise by exibido no status.
  2. Inicie o subagente com a "Mensagem de instrução para o revisor" abaixo e aguarde a conclusão.
  3. Valide: verifique se rounds/r{r+1}/paper.pdf e paper.txt existem, a compilação foi bem-sucedida e não há referências indefinidas, e se rounds/r{r}/response.md existe. Se a compilação falhar, reverta os arquivos quebrados de rounds/r{r}/src/ e refaça as alterações. Nunca envie um PDF antigo como versão revisada.
  4. Execute loop_state.py end <ws> --round r --phase revise → vá para (a) como r+1.

O responsável pela correção não deve iniciar novas correções após o horário revise by; deve apenas finalizar a compilação. Isso garante tempo para a próxima revisão.

Mensagem de Instrução para o Revisor

Você é o revisor deste artigo. Primeiro, leia <skill_dir>/references/reviewer_guide.md e
<skill_dir>/references/review_template.md até o final e siga o perfil do revisor, os critérios e o formato de saída.

- Objeto da revisão: <ws>/rounds/rNN/paper.pdf (texto extraído: <ws>/rounds/rNN/paper.txt)
- Rodada: NN
- Apontamentos da rodada anterior: <ws>/rounds/r(NN-1)/issues.json   ← Apenas para rodada 2 em diante
- Local de submissão / Escala: <venue ou "Não especificado">
- Idioma do relatório: Português
- Saída: <ws>/rounds/rNN/review.md e <ws>/rounds/rNN/issues.json
- Apoio: python <skill_dir>/scripts/pdf_tools.py (use `render` para visualizar páginas com figuras como imagem)

A base da avaliação é apenas o que está escrito neste PDF. A intenção do autor ou a carta-resposta não foram fornecidas.
Trechos marcados com [AUTHOR TODO] são meras promessas; trate-os como não resolvidos.
Ao final, retorne uma linha com "Avaliação geral / Confiança / Número de Major não resolvidos / Número de novos apontamentos".

Mensagem de Instrução para o Responsável pela Correção

Você é o autor deste artigo e deve revisar o manuscrito com base na revisão. Primeiro, leia
<skill_dir>/references/revision_guide.md até o final e siga especialmente a regra "não falsificar".

- Fonte a editar: <ws>/src/ (principal: <main>.tex)
- Revisão atual: <ws>/rounds/rNN/review.md, <ws>/rounds/rNN/issues.json
- Evolução: <ws>/issue_tracker.md (gerado automaticamente; apenas leia, não edite)
- TODO do autor: <ws>/author_todo.md (crie se não existir; adicione e atualize)
- Tempo: termine a compilação até <revise_by>. O tempo restante pode ser verificado com
  python <skill_dir>/scripts/loop_state.py status <ws>
- Ao terminar:
  1. python <skill_dir>/scripts/build_pdf.py <ws>/src/<main>.tex --out <ws>/rounds/r(NN+1)/paper.pdf
     (corrija até que erros e referências indefinidas sejam zero)
  2. python <skill_dir>/scripts/pdf_tools.py text <ws>/rounds/r(NN+1)/paper.pdf -o <ws>/rounds/r(NN+1)/paper.txt
  3. python <skill_dir>/scripts/snapshot.py <ws>/src <ws>/rounds/r(NN+1) --prev <ws>/rounds/rNN
  4. Escreva <ws>/rounds/rNN/response.md (formato em revision_guide.md)
Ao final, retorne uma linha com "IDs dos apontamentos atendidos / IDs transferidos para author_todo / Resultado da compilação (páginas, referências indefinidas, número de AUTHOR TODO)".

Se a reconstrução a partir do PDF for necessária, instrua: "Leia <skill_dir>/references/pdf_to_latex.md, reconstrua <ws>/original/<nome>.pdf em <ws>/src/, salve o PDF compilado em <ws>/rounds/r01/reconstructed.pdf e escreva as diferenças em <ws>/src/RECONSTRUCTION_NOTES.md".

3. Finalização

  1. Execute loop_state.py finish <ws> --reason "<Prazo / Apontamentos corrigíveis no texto esgotados / Apenas revisão>" → em seguida loop_state.py summary <ws>
  2. Se houve pelo menos uma correção, copie o PDF mais recente como <ws>/<nome_do_PDF>_revised.pdf.
  3. Escreva <ws>/final_report.md:
# Relatório de Revisão e Correção: <Título do Artigo>
- Limite de tempo / Tempo utilizado / Número de rodadas / Motivo do término
## Evolução das Avaliações            (tabela do issue_tracker.md)
## Pontos Principais da Revisão do Original (r01)   (Resumo da Justificativa e principais Fraquezas)
## Principais Apontamentos Resolvidos nas Correções
## Problemas Restantes
### Que poderiam ser corrigidos no texto mas não foram por falta de tempo
### Que exigem trabalho do autor (prioridades do author_todo.md)
## Avaliação da Rodada Final e Condições para Mudar para Aceitação
## Lista de Arquivos
  1. Responda ao usuário de forma concisa: número de rodadas, evolução das avaliações, principais apontamentos resolvidos, problemas importantes restantes e top 3 do author_todo, e localização dos arquivos. Não cole a revisão completa; aponte os arquivos. No modo apenas revisão, inclua na resposta os pontos principais do review.md da r01 (Justificativa, Nota, Principais Fraquezas, Perguntas para Rebuttal).

Retomada após Interrupção

Se <ws>/state.json existir e o status for running, execute loop_state.py status <ws> e examine o conteúdo de rounds/ para retomar a partir da fase seguinte à última concluída. Repetir init reinicia o cronômetro; use --force apenas se o usuário desejar um novo orçamento.

Princípios e Justificativas

  • Não falsificar: Não crie resultados experimentais, números, dados, citações ou provas. Este é um manuscrito de pesquisa real; qualquer número inventado constitui má conduta científica e causa sérios danos ao usuário. Para apontamentos que exigem novos resultados, ajuste as alegações ao que as evidências suportam e transfira os experimentos necessários para [AUTHOR TODO] e author_todo.md.
  • Não aliviar os critérios de revisão: Avalie com os mesmos critérios em todas as rodadas. [AUTHOR TODO] é não resolvido; reformular não substitui novas evidências. A nota só sobe quando o problema é resolvido no papel. Caso contrário, o loop apenas infla artificialmente a pontuação.
  • Delegar decisões temporais ao script: Não estime o tempo decorrido. Consulte status a cada rodada.
  • Não consultar o usuário entre rodadas: Ao receber o limite de tempo, a execução de todo o loop está aprovada. Envie apenas uma linha de progresso; pare para consultar apenas em caso de bloqueio (falha de compilação impossível de corrigir, PDF ilegível, etc.).
  • Não alterar os arquivos originais: Trate original/ como somente leitura; todas as edições devem ser feitas nas cópias em src/.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

0x6869726f6b69/claude-skills

英語で書かれた学術論文・原稿のPDFを、プロの英文校正者として校正するスキル。学術出版ガイド(Olson, Guide to Academic and Scientific Publication)に基づくチェックリストで、英文法・語法、US/UK綴り、略語、句読点、時制、代名詞、用語の一貫性、図表、引用と文献リスト、タイトル・要旨・キーワード、投稿規定への適合を確認し、修正案つきのレポートと赤入れ(注釈付き)PDFを作る。モードは2つ:「1回校正」(指定したPDFを1回校正)と「loop」(校正→原稿に反映してPDFを再生成→再校正を、指摘が無くなるまで繰り返す)。使い方は `/academic-writing-loop 1回校正 paper.pdf` または `/academic-writing-loop loop paper.pdf`。英語論文のPDFについて「英文校正して」「英語をチェック/添削して」「ネイティブチェック」「文法を直して」「proofreadして」「投稿前に英語を磨きたい」などと頼まれたら、スキル名が出ていなくても使うこと(内容の査読は paper-review-loop、技術的な誤りの検証は deep-review-modoki の担当)。Use for English proofreading/copyediting of academic paper PDFs, single pass or iterative proofread→revise→re-proofread loops.

0x6869726f6b69/claude-skills

Google の Deep Review(旧 Paper Assistant Tool, PAT)を模した、論文・技術文書の深い検証レビュー。文書を論理セグメントに分け、情報密度に応じて検証の深さ(Light/Medium/High)を配分し、セグメントごとに観点の異なる検証サブエージェントを並列に走らせる(証明の逐行検証・反例探索・数値の再計算・実験設計・主張と証拠の対応・新規性の文献確認)。候補は逐語引用で照合・重複排除し、反証検証で誤検出を落としたうえで、Overall Feedback と Detailed Feedback(Major concerns / Minor corrections / Suggestions)の Markdown・HTML レポートにまとめる。スコアは付けない。「Deep Reviewして」「ディープレビュー」「PATみたいに」「論文の誤りや証明の穴を徹底的に探して」「投稿前に技術的なミスを洗い出して」「数式・証明・実験を検証して」などと頼まれたら、スキル名が出ていなくても使うこと。設計書・技術報告など論文以外の技術文書にも使える。採点つきの会議形式の査読や、査読→改訂のループは paper-review-loop を使う。Use for deep, agentic error-finding review of a paper or technical document in the style of Google's Deep Review / PAT.

0x6869726f6b69/claude-skills

分析結果(グラフ画像・CSV/NPZ等のデータ・解析スクリプト・ノートブック)を、Nature系ジャーナルに採択されるレベルの多パネルFigure・Table・Captionにまとめるスキル。起動後に「どの結果を1枚のFigureにまとめるか」をユーザーに確認し、指示がなければ科学的ストーリー(What→How→Why→Performance→Impact)に沿って結果の取捨選択・パネル配置・配色まで自分で設計し、Arial 5–7 pt・89/183 mm幅・統一配色のベクターPDF/SVGを作ってQAまで行う。「結果を図にまとめて」「論文用のFigureを作って」「複数のグラフを1枚に」「Figure 1の概要図」「図を綺麗に/投稿用に整えて」「配色やフォントを統一」「Figure captionを書いて」「結果の表を作って」など、研究・分析結果を論文・投稿・発表用の図表に仕上げる依頼では、Natureと明示されていなくても必ずこのスキルを使うこと。Also use for any request in English for publication-quality, multi-panel or journal-ready figures from analysis results.

Habilidades Relacionadas