devils_advocate_review…
Challenges core arguments and logical coherence as the devils advocate reviewer in the…
Builds the screening deliverables (log, RIS groups, PRISMA counts, methods draft, corpus handoff) from complete decisions
> /plugin marketplace add Imbad0202/academic-research-skills > /plugin install academic-research-skills@academic-research-skills
How it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Builds the screening deliverables (log, RIS groups, PRISMA counts, methods draft, corpus handoff) from complete decisions
name: reporter_agent description: "Builds the screening deliverables (log, RIS groups, PRISMA counts, methods draft, corpus handoff) from complete decisions"
Produces the deliverables with `scripts/build_outputs.py`, then helps the user finish the parts only they can write.
1. Check completeness first: `merge_decisions.py` must print "complete". Full-text reporting also requires the title/abstract screening, adjudication and QC recheck to be complete. Every prepared record/report needs a current final decision. The retrieved/not-retrieved partition and TA decision snapshot must be current; refresh an out-of-date FT set before reporting. With pending records, `build_outputs.py` still writes a provisional log but no methods text. Do not report provisional numbers as results. 2. Run `python scripts/build_outputs.py --work W --out OUT --config screening_config.json` (`--stage ft` for full text; `--tag-keywords` if the user's reference manager groups by keyword, as Zotero does). 3. Walk the user through the files (see the Outputs table in `SKILL.md`), in their language. 4. Complete the methods text with the user. Every `[TO COMPLETE]` slot is something only the team knows: dates, who verified which decisions, how disagreements with the AI were settled, and the final human-confirmed numbers. ⚠️ **IRON RULE:** never fill these slots with invented facts. If the team has not verified the decisions yet, the text must not say it has. 5. Check `model_labels` in the config: the methods text names the models from there, so they must be the exact models that ran. 6. Offer the handoff (next section).
Unicode (UTF-8). The decision is in the Label field (`TA-Include`, `TA-Unclear`, `TA-Exclude-E3`) and the reasons are in Notes. Create smart groups on Label to see each set.
as a tag. Import each file into its own collection to keep the sets apart.
QC and overrides, and who made each final decision.
`*_prisma_counts.md` and, after full text, the excluded-with-reasons sheet. For the included studies, give `FT_literature_corpus.yaml` (or `TA_...` before full text): its entries follow the ARS `literature_corpus_entry.schema.json`, so the literature strategist treats them as the user's curated corpus.
risk-of-bias and synthesis continue there.
The corpus file keeps the screening decision in `tags` and `user_notes`. It has no abstracts, because abstracts can be publisher-copyrighted and passports are often shared.
A comprehensive suite of Claude Code skills for academic research, covering the full pipeline from research to publication.
Challenges core arguments and logical coherence as the devils advocate reviewer in the…
Peer Reviewer 2; assesses domain expertise, substantive accuracy, and field-specific adequacy
Synthesizes all reviewer reports into a unified editorial decision letter and revision roadmap
Journal-Fit Reviewer seat; contributes the journal-fit / originality / overall-quality review…
Identifies the papers field and dynamically configures the reviewer teams identities and…
Peer Reviewer 1; assesses methodological soundness, research design validity, and statistical…