From scimesh
Use when appraising included papers with deep critical analysis. Dispatches 6 analysis agents in parallel, fact-checks, and synthesizes into analysis.md. TRIGGERS: appraise, appraising, critical appraisal, avaliar paper, analise critica, deep analysis
How this skill is triggered — by the user, by Claude, or both
Slash command
/scimesh:appraisingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Critical appraisal of included papers using 8 specialized agents.
Critical appraisal of included papers using 8 specialized agents.
After extraction (condense + tag), appraise papers with deep critical analysis. Each paper gets 6 parallel analysis agents, a fact-checker, and a synthesizer.
Core principle: 6 agents in parallel -> fact-checker -> paper-appraiser.
Prerequisite: Papers must have fulltext.pdf. Works best after extraction (scimesh:extracting).
Output: {paper_path}/analysis/ directory with 7 markdown files + analysis.md synthesis.
{review_path}/
└── papers/
└── {year}/
└── {paper-slug}/
├── index.yaml
├── fulltext.pdf
├── condensed.md # From extracting
└── analysis/ # From appraising
├── scope-extractor.md
├── methodology-extractor.md
├── results-extractor.md
├── reproducibility-extractor.md
├── contribution-extractor.md
├── critical-reader.md
└── analysis.md # Final synthesis
| Agent | Model | Responsibility | Input | Output |
|---|---|---|---|---|
scope-extractor | opus | Hypothesis, RQs, scope, biases | analysis/scope-extractor.md | |
methodology-extractor | opus | Study design, datasets, baselines, method | analysis/methodology-extractor.md | |
results-extractor | opus | Quantitative results, ablations, significance | analysis/results-extractor.md | |
reproducibility-extractor | opus | Code, data, weights, hyperparams, compute | analysis/reproducibility-extractor.md | |
contribution-extractor | opus | Contributions, novelty, citation context | analysis/contribution-extractor.md | |
critical-reader | opus | Claims vs evidence, assumptions, generalizability | analysis/critical-reader.md | |
fact-checker | opus | Verify all 6 outputs against paper | PDF + 6 outputs | Annotates 6 files inline |
paper-appraiser | opus | Synthesize all into final appraisal | 6 annotated outputs | analysis/analysis.md |
digraph appraising {
rankdir=TB;
node [shape=box];
input [label="Paper with fulltext.pdf"];
mkdir [label="Create analysis/ dir"];
scope [label="scope-extractor"];
method [label="methodology-extractor"];
results [label="results-extractor"];
repro [label="reproducibility-extractor"];
contrib [label="contribution-extractor"];
critical [label="critical-reader"];
checker [label="fact-checker" shape=hexagon];
synth [label="paper-appraiser" shape=doubleoctagon];
output [label="analysis/analysis.md" shape=note];
input -> mkdir;
mkdir -> {scope method results repro contrib critical};
{scope method results repro contrib critical} -> checker;
input -> checker;
checker -> synth;
synth -> output;
}
mkdir -p {paper_path}/analysis
# ALL 6 in a single message for maximum parallelism
Agent(
subagent_type="scimesh:scope-extractor",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Scope: {paper_slug}"
)
Agent(
subagent_type="scimesh:methodology-extractor",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Method: {paper_slug}"
)
Agent(
subagent_type="scimesh:results-extractor",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Results: {paper_slug}"
)
Agent(
subagent_type="scimesh:reproducibility-extractor",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Repro: {paper_slug}"
)
Agent(
subagent_type="scimesh:contribution-extractor",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Contrib: {paper_slug}"
)
Agent(
subagent_type="scimesh:critical-reader",
prompt=f"Analyze the paper at: {paper_path}/fulltext.pdf\nSave output to: {paper_path}/analysis/",
description=f"Critical: {paper_slug}"
)
Agent(
subagent_type="scimesh:fact-checker",
prompt=f"""Fact-check the 6 agent outputs against the paper.
Paper path: {paper_path}/fulltext.pdf
Agent outputs directory: {paper_path}/analysis/""",
description=f"Fact-check: {paper_slug}"
)
Agent(
subagent_type="scimesh:paper-appraiser",
prompt=f"""Read all markdown files from: {paper_path}/analysis/
Write the final synthesis to: {paper_path}/analysis/analysis.md""",
description=f"Appraise: {paper_slug}"
)
Process multiple papers -- but each paper's pipeline is sequential (6 parallel -> checker -> appraiser). Multiple papers can run their pipelines concurrently:
Paper A: [6 agents] -> [fact-checker] -> [appraiser]
Paper B: [6 agents] -> [fact-checker] -> [appraiser]
Paper C: [6 agents] -> [fact-checker] -> [appraiser]
Recommended batch size: 2-3 papers at a time (each paper dispatches 6 opus agents).
Ask user before starting:
{
"question": f"Found {with_pdf_count} included papers with PDFs. Appraise {with_pdf_count} papers with deep critical analysis? (8 opus agents per paper)",
"header": "Appraise?",
"options": [
{"label": f"Yes, appraise all {with_pdf_count} (Rec)", "description": "Deep analysis of all included papers"},
{"label": "Select specific papers", "description": "Choose which papers to appraise"},
{"label": "Skip", "description": "Continue without appraisal"}
],
"multiSelect": False
}
Create Tasks for appraisal visibility:
for paper in papers_to_appraise:
TaskCreate(
subject=f"Appraise: {paper_title[:40]}...",
description=f"6 extractors -> fact-checker -> appraiser for {paper_slug}",
activeForm=f"Appraising {paper_slug}..."
)
Check for existing analysis/analysis.md before dispatching:
Glob(pattern="{review_path}/papers/**/analysis/analysis.md")
Skip papers that already have analysis.md unless user explicitly requests re-appraisal.
| Mistake | Fix |
|---|---|
| Running 6 agents sequentially | ALL 6 must be in a single parallel dispatch |
| Passing content in prompt to appraiser | Agents save to files -- appraiser reads from analysis/ |
Forgetting to create analysis/ dir | mkdir -p before dispatching agents |
| Reading the paper yourself | The agents read it -- you just orchestrate |
| Dispatching too many papers at once | 2-3 papers max (each = 6 opus agents) |
| Skipping fact-checker | NEVER skip -- it catches hallucinated numbers and cross-agent inconsistencies |
After appraisal, the analysis.md files enrich scimesh:synthesizing -- the narrative synthesis can reference epistemic honesty scores, fragility verdicts, and critical analysis from appraisals.
npx claudepluginhub gabfssilva/scimesh --plugin scimeshProvides specialized research analysis agents for critical thinking, evidence verification, synthesis, and parallel paper analysis with fan-out/fan-in execution.
Critically evaluates research papers on methodology, claims-evidence alignment, and significance. Activates when asked to critique, review, or analyze a study.
Generates structured peer review reports for academic manuscripts, evaluating novelty, methodological rigor, clarity, impact, and ethics. Use when critiquing papers or providing reviewer feedback.