skills/research/deep-research/systematic-review-guide/SKILL.md
Systematic review methodology with PRISMA and evidence synthesis
npx skillsauth add wentorai/research-plugins systematic-review-guideInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Conduct rigorous systematic reviews and meta-analyses following PRISMA 2020 guidelines, from protocol registration through evidence synthesis and reporting.
A systematic review is a structured, transparent, and reproducible method for identifying, evaluating, and synthesizing all relevant research on a specific question. Unlike narrative reviews, systematic reviews:
Use a structured framework to formulate your question:
| Framework | Components | Best For | |-----------|-----------|----------| | PICO | Population, Intervention, Comparator, Outcome | Clinical/intervention studies | | PCC | Population, Concept, Context | Scoping reviews | | SPIDER | Sample, Phenomenon of Interest, Design, Evaluation, Research type | Qualitative/mixed methods | | PEO | Population, Exposure, Outcome | Observational studies |
Example (PICO):
Register your protocol before conducting the search to reduce publication bias and selective reporting:
Protocol should include:
Recommended minimum databases (health sciences):
1. PubMed / MEDLINE
2. Embase
3. Cochrane Central Register of Controlled Trials (CENTRAL)
4. At least one subject-specific database
Recommended minimum databases (social sciences):
1. Web of Science
2. Scopus
3. PsycINFO or ERIC (field-specific)
4. ProQuest Dissertations (for grey literature)
Additional sources:
- Reference lists of included studies (backward citation chaining)
- Forward citation searches
- Grey literature: conference proceedings, theses, reports
- Trial registries: ClinicalTrials.gov, WHO ICTRP
- Preprint servers: medRxiv, SSRN
Document each search with: database name, date, exact search string, and number of results.
Two-stage screening, each conducted by at least two independent reviewers:
Stage 1: Title and Abstract Screening
- Apply inclusion/exclusion criteria based on title + abstract only
- Resolve disagreements by discussion or third reviewer
- Calculate inter-rater reliability (Cohen's kappa >= 0.60)
Stage 2: Full-Text Screening
- Retrieve full texts of all studies passing Stage 1
- Apply full eligibility criteria
- Document reasons for exclusion at this stage
- Calculate inter-rater reliability
Screening tools: Covidence (covidence.org), Rayyan (rayyan.ai), ASReview (AI-assisted)
Create a standardized data extraction form:
| Field | Description |
|-------|-------------|
| Study ID | First author + year |
| Country | Where study was conducted |
| Study design | RCT, cohort, cross-sectional, etc. |
| Sample size | N in each group |
| Population | Demographics, inclusion criteria used |
| Intervention | Description, duration, intensity |
| Comparator | Description of control condition |
| Outcomes | Primary and secondary, measurement tools |
| Results | Effect sizes, confidence intervals, p-values |
| Funding | Source of funding |
| Conflicts of interest | Declared COIs |
Pilot the extraction form on 3-5 studies, then extract independently by two reviewers.
Select the appropriate tool based on study design:
| Study Design | Tool | Developer | |-------------|------|-----------| | Randomized trials | RoB 2 | Cochrane | | Non-randomized interventions | ROBINS-I | Cochrane | | Observational (cohort, case-control) | Newcastle-Ottawa Scale (NOS) | Wells et al. | | Cross-sectional | JBI Critical Appraisal Checklist | Joanna Briggs Institute | | Qualitative studies | CASP Qualitative Checklist | CASP | | Diagnostic accuracy | QUADAS-2 | Whiting et al. |
When meta-analysis is not appropriate (due to heterogeneity in study designs, populations, or outcomes):
When studies are sufficiently similar to pool quantitatively:
# Meta-analysis using Python (PythonMeta or custom)
# Example: Random-effects meta-analysis of standardized mean differences
import numpy as np
from scipy.stats import norm
def random_effects_meta(effects, variances):
"""DerSimonian-Laird random effects meta-analysis."""
weights_fe = 1 / np.array(variances)
theta_fe = np.sum(weights_fe * effects) / np.sum(weights_fe)
# Estimate tau-squared (between-study variance)
Q = np.sum(weights_fe * (effects - theta_fe)**2)
df = len(effects) - 1
C = np.sum(weights_fe) - np.sum(weights_fe**2) / np.sum(weights_fe)
tau2 = max(0, (Q - df) / C)
# Random effects weights
weights_re = 1 / (np.array(variances) + tau2)
theta_re = np.sum(weights_re * effects) / np.sum(weights_re)
se_re = np.sqrt(1 / np.sum(weights_re))
ci_lower = theta_re - 1.96 * se_re
ci_upper = theta_re + 1.96 * se_re
# Heterogeneity statistics
I2 = max(0, (Q - df) / Q * 100) if Q > 0 else 0
return {
"pooled_effect": theta_re,
"ci_lower": ci_lower,
"ci_upper": ci_upper,
"tau2": tau2,
"I2": I2,
"Q": Q,
"p_heterogeneity": 1 - chi2.cdf(Q, df)
}
# Meta-analysis in R using metafor
library(metafor)
# Random-effects model (REML estimator)
res <- rma(yi = effect_sizes, vi = variances, method = "REML", data = dat)
summary(res)
# Forest plot
forest(res, slab = dat$study_label, header = TRUE)
# Funnel plot (publication bias assessment)
funnel(res)
# Egger's test for funnel plot asymmetry
regtest(res)
The PRISMA 2020 flow diagram documents the study selection process:
Records identified from databases (n = X)
Records identified from other sources (n = X)
|
Records after duplicates removed (n = X)
|
Records screened (title/abstract) (n = X)
-> Records excluded (n = X)
|
Reports sought for retrieval (n = X)
-> Reports not retrieved (n = X)
|
Reports assessed for eligibility (n = X)
-> Reports excluded with reasons (n = X)
- Reason 1 (n = X)
- Reason 2 (n = X)
- Reason 3 (n = X)
|
Studies included in review (n = X)
Studies included in meta-analysis (n = X)
| Pitfall | Solution | |---------|----------| | Incomplete search | Search at least 3 databases + grey literature | | Single reviewer screening | Always use 2 independent reviewers | | No protocol registration | Register on PROSPERO or OSF before searching | | Ignoring heterogeneity | Report I-squared, conduct subgroup analyses | | Publication bias unaddressed | Use funnel plots, Egger's test, trim-and-fill | | Selective outcome reporting | Extract all pre-specified outcomes from protocol |
tools
10 document processing skills. Trigger: extracting text from PDFs, parsing references, document Q&A. Design: parsing pipelines (GROBID, marker) and structured extraction tools.
documentation
Guide to tldraw for infinite canvas whiteboarding and diagram creation
testing
Create graphical abstracts, schematic diagrams, and scientific illustrations
documentation
Create UML diagrams and architecture visualizations with PlantUML