Guia de uso ThesisAgents
Assistente de busca de artigos guiado por palavras-chave. Recupera resultados de arXiv, Semantic Scholar, OpenAlex, PubMed, ACM, IEEE Xplore, DBLP, Crossref, OpenAIRE, Springer Nature, Europe PMC, DOAJ, HAL, CORE e Google Scholar; e exporta como apresentação PowerPoint estilo tese, planilha Excel e arquivo BibTeX. Tudo a partir de uma chamada CLI ou uma chamada de ferramenta MCP.
Para agentes de IA que dirigem este projeto
Se você é um LLM (Claude Code, Cursor, Aider, Codex CLI, …) lendo
isto para entender o que fazer — comece aqui. As mesmas regras estão
fixadas em AGENTS.md (espelho entre agentes) e CLAUDE.md
(referência canônica) na raiz do repo; leia-os antes de mudanças não
triviais.
A entrega padrão é um ``.pptx`` enriquecido estilo tese por artigo, não o deck leve só-resumo que a CLI gera por padrão. Leve é artefato intermediário — sua tarefa é elevá-lo.
Árvore de decisão
ANTHROPIC_API_KEYconfigurada? → execute a CLI; auto-enriquece via API Anthropic.Sem chave, LLM dirige → escreva o resumo enriquecido você mesmo. Leia cada PDF, escreva à mão
PaperSummarycom campos rich-tier, salvescripts/regen_<query>.py, execute. Não diga ao usuário para configurar a chave API — você é o LLM.Sem LLM (CI / cron) → leve aceitável.
Fluxo MCP de 6 passos
1. (opcional) list_sources()
2. search(keywords, sources, top_tier_only=true, ...)
3. (opcional) download_pdfs(papers, out_dir="./exports/...")
4. fetch_pdf_text(pdf_url=paper.pdf_url) # por artigo
5. (você lê cada PDF e produz dict summary estruturado)
6. export(papers=[{...paper, "summary": {...}}], language="pt", ...)
As 11 ferramentas MCP completas: MCP server.
Obrigatório: verificação URL / DOI antes da entrega
Caminhos de URL das editoras não podem ser adivinhados — AAAI usa
IDs numéricos (v40i5.37389), IEEE usa arnumber opaco, ACM usa
DOIs opacos. Ao escrever um Paper à mão, copie ``url`` /
``doi`` / ``arxiv_id`` literalmente do xlsx que esta busca produziu
— nunca de memória, nunca construído a partir do título.
O xlsx é gravado em exports/<run>/<slug>-<timestamp>.xlsx com
coluna 7 = DOI, coluna 8 = URL. Audite seu script regen ao terminar:
from openpyxl import load_workbook
from scripts.regen_<run> import ALL_PAPERS
real = {sh.cell(row=r, column=2).value: sh.cell(row=r, column=8).value
for sh in [load_workbook("exports/<run>/<slug>-<ts>.xlsx")["Papers"]]
for r in range(2, sh.max_row + 1)}
for p in ALL_PAPERS:
actual = next((u for t, u in real.items() if p.title[:30] in (t or "")), None)
if actual and not (p.url == actual
or p.url.split("v")[0] == actual.split("v")[0]):
print(f"! {p.bibtex_key()} authored {p.url} vs real {actual}")
Proibições
Não diga ao usuário “configure
ANTHROPIC_API_KEY” — você é o LLM.Não trate
.pptxleve como entrega.Não pare quando
download_pdfsterminar.Não invente números, RQs, contribuições, limitações.
Não fabrique URLs / DOIs / IDs arXiv.
Não deixe downloads irrelevantes no diretório de execução. A busca por palavras-chave pode trazer artigos fora do tema (uma consulta “Claude code” trouxe um artigo sobre decodificador Viterbi). Apague
pdfs/<key>.pdfe<key>.pptxleves fora de tema; mantenha o xlsx / bib agregado como registro honesto. Procedimento completo emCLAUDE.md“Pruning irrelevant downloads”.Não mencione “Claude”, “Claude Code”, “AI-generated”, “GPT”, “Copilot” nem qualquer nome de ferramenta/modelo IA em commits, PRs, código ou docs.
Exemplos: scripts/regen_llm_security_batch.py (en, 8 artigos) e
scripts/regen_llm_security_batch_zh_tw.py (zh-tw).
Instalação
Requer Python 3.12+.
git clone <repo-url>
cd ThesisAgents
python -m venv .venv
.venv\Scripts\Activate.ps1 # Windows PowerShell
# source .venv/bin/activate # Linux / macOS
pip install -e .[dev]
Extras opcionais: [mcp], [intelligence], [web], [dev].
Início rápido
# Buscar arXiv → deck + workbook + BibTeX
thesisagents --query "diffusion models" --source arxiv --max 10 \
--out ./exports/
# Um artigo por URL → deck + BibTeX
thesisagents --paper "https://arxiv.org/abs/1706.03762" \
--filename-stem attention --out ./exports/
# Renderizar deck em português
thesisagents --paper 1706.03762 --lang pt --out ./exports/
# Enriquecimento Python pipeline (exige chave Anthropic)
export ANTHROPIC_API_KEY=sk-ant-...
thesisagents --paper "https://arxiv.org/abs/1706.03762" \
--enrich --lang pt --out ./exports/
Tabela completa de flags CLI: CLI reference.
Onde procurar mais
Flags CLI e variáveis de ambiente: CLI reference
11 ferramentas do servidor MCP: MCP server
Toolkit de edição PPTX: PPTX editing & layout
O arquivo
readmes/README.pt.mdna raiz do repo tem a lista completa de funcionalidades.A referência técnica profunda (arquitetura de plugins, políticas de segurança, Definition of Done, regras SonarQube, …) está consolidada no guia inglês: ThesisAgents User Guide.