Source: https://github.com/aipoch/medical-research-skills
Paper Screening (Full Text + PubMed)
This skill screens a medical paper to determine if it should be included in a meta-analysis based on PICO criteria. It can optionally fetch metadata (Title/Abstract) from PubMed if a PMID is provided.
When to Use
- Use this skill when you need screen full-text papers against inclusion/exclusion criteria, with optional pubmed metadata check using pmid. use when the user needs to evaluate a paper for a meta-analysis in a reproducible workflow.
- Use this skill when a data analytics task needs a packaged method instead of ad-hoc freeform output.
- Use this skill when the user expects a concrete deliverable, validation step, or file-based result.
- Use this skill when
scripts/extract_pdf.py is the most direct path to complete the request.
- Use this skill when you need the
meta-screening-fulltext package behavior rather than a generic answer.
Key Features
- Scope-focused workflow aligned to: Screen full-text papers against inclusion/exclusion criteria, with optional PubMed metadata check using PMID. Use when the user needs to evaluate a paper for a meta-analysis.
- Packaged executable path(s):
scripts/extract_pdf.py.
- Reference material available in
references/ for task-specific guidance.
- Structured execution path designed to keep outputs consistent and reviewable.
Dependencies
Python: 3.10+. Repository baseline for current packaged skills.
Third-party packages: not explicitly version-pinned in this skill package. Add pinned versions if this skill needs stricter environment control.
Example Usage
cd "20260316/scientific-skills/Data Analytics/meta-screening-fulltext"
python -m py_compile scripts/extract_pdf.py
python scripts/extract_pdf.py --help
Example run plan:
- Confirm the user input, output path, and any required config values.
- Edit the in-file
CONFIG block or documented parameters if the script uses fixed settings.
- Run
python scripts/extract_pdf.py with the validated inputs.
- Review the generated output and return the final artifact with any assumptions called out.
Implementation Details
See ## Workflow above for related details.
- Execution model: validate the request, choose the packaged workflow, and produce a bounded deliverable.
- Input controls: confirm the source files, scope limits, output format, and acceptance criteria before running any script.
- Primary implementation surface:
scripts/extract_pdf.py.
- Reference guidance:
references/ contains supporting rules, prompts, or checklists.
- Parameters to clarify first: input path, output path, scope filters, thresholds, and any domain-specific constraints.
- Output discipline: keep results reproducible, identify assumptions explicitly, and avoid undocumented side effects.
Workflow
Analyze Inputs:
input_paper: Full text of the paper.
inclu_exclu_criterion: Inclusion/Exclusion criteria.
input_pmid (Optional): PMID of the paper.
Check PubMed (Optional):
- If
input_pmid is provided, run scripts/query_pubmed.py to fetch Title and Abstract.
- Command:
python scripts/query_pubmed.py "<input_pmid>"
Screen Paper:
- Scenario A: PubMed Hit: If the script returns metadata, compare the criteria against this data (Title + Abstract).
- Scenario B: No PubMed Data: Compare the criteria against
input_paper (full text).
- Use the appropriate prompt from
references/screening_prompts.md.
Format Output:
- Ensure the output is a JSON object with
Result ("Include" or "Exclude") and Reason.
- If "Exclude", the reason must be one of the standard exclusion categories (Wrong population, etc.).
Quality Rules
- Evidence-Based: Decisions must be based strictly on the provided text or retrieved metadata.
- Structured Output: Final output must always be parseable JSON.
- Exclusion Reasons: Must use standard terminology: "Wrong population", "Wrong intervention", "Wrong comparator", "Wrong outcomes", "Wrong study design".
Helper Scripts
PDF Text Extraction
When the user provides a PDF file path, use extract_pdf.py to extract the text content before assessment:
Error Handling
- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
- If execution fails, report the failure point, summarize what can still be completed safely, and provide a manual fallback.
- Do not fabricate files, citations, data, search results, or execution outcomes.
Input Validation
This skill accepts requests that match the documented purpose of meta-screening-fulltext and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
meta-screening-fulltext only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
1---2name: meta-screening-fulltext3description: Screen full-text papers against inclusion/exclusion criteria, with optional PubMed metadata check using PMID. Use when the user needs to evaluate a paper for a meta-analysis.4license: MIT5---6> **Source**: [https://github.com/aipoch/medical-research-skills](https://github.com/aipoch/medical-research-skills)
7
8# Paper Screening (Full Text + PubMed)
9
10This skill screens a medical paper to determine if it should be included in a meta-analysis based on PICO criteria. It can optionally fetch metadata (Title/Abstract) from PubMed if a PMID is provided.
11
12## When to Use
13
14- Use this skill when you need screen full-text papers against inclusion/exclusion criteria, with optional pubmed metadata check using pmid. use when the user needs to evaluate a paper for a meta-analysis in a reproducible workflow.
15- Use this skill when a data analytics task needs a packaged method instead of ad-hoc freeform output.
16- Use this skill when the user expects a concrete deliverable, validation step, or file-based result.
17- Use this skill when `scripts/extract_pdf.py` is the most direct path to complete the request.
18- Use this skill when you need the `meta-screening-fulltext` package behavior rather than a generic answer.
19
20## Key Features
21
22- Scope-focused workflow aligned to: Screen full-text papers against inclusion/exclusion criteria, with optional PubMed metadata check using PMID. Use when the user needs to evaluate a paper for a meta-analysis.
23- Packaged executable path(s): `scripts/extract_pdf.py`.
24- Reference material available in `references/` for task-specific guidance.
25- Structured execution path designed to keep outputs consistent and reviewable.
26
27## Dependencies
28
29- `Python`: `3.10+`. Repository baseline for current packaged skills.
30- `Third-party packages`: `not explicitly version-pinned in this skill package`. Add pinned versions if this skill needs stricter environment control.
31
32## Example Usage
33
34```bash
35cd "20260316/scientific-skills/Data Analytics/meta-screening-fulltext"
36python -m py_compile scripts/extract_pdf.py
37python scripts/extract_pdf.py --help
38```
39
40Example run plan:
411. Confirm the user input, output path, and any required config values.
422. Edit the in-file `CONFIG` block or documented parameters if the script uses fixed settings.
433. Run `python scripts/extract_pdf.py` with the validated inputs.
444. Review the generated output and return the final artifact with any assumptions called out.
45
46## Implementation Details
47
48See `## Workflow` above for related details.
49
50- Execution model: validate the request, choose the packaged workflow, and produce a bounded deliverable.
51- Input controls: confirm the source files, scope limits, output format, and acceptance criteria before running any script.
52- Primary implementation surface: `scripts/extract_pdf.py`.
53- Reference guidance: `references/` contains supporting rules, prompts, or checklists.
54- Parameters to clarify first: input path, output path, scope filters, thresholds, and any domain-specific constraints.
55- Output discipline: keep results reproducible, identify assumptions explicitly, and avoid undocumented side effects.
56
57## Workflow
58
591. **Analyze Inputs**:
60 * `input_paper`: Full text of the paper.
61 * `inclu_exclu_criterion`: Inclusion/Exclusion criteria.
62 * `input_pmid` (Optional): PMID of the paper.
63
642. **Check PubMed (Optional)**:
65 * If `input_pmid` is provided, run `scripts/query_pubmed.py` to fetch Title and Abstract.
66 * Command: `python scripts/query_pubmed.py "<input_pmid>"`
67
683. **Screen Paper**:
69 * **Scenario A: PubMed Hit**: If the script returns metadata, compare the criteria against this data (Title + Abstract).
70 * **Scenario B: No PubMed Data**: Compare the criteria against `input_paper` (full text).
71 * Use the appropriate prompt from `references/screening_prompts.md`.
72
734. **Format Output**:
74 * Ensure the output is a JSON object with `Result` ("Include" or "Exclude") and `Reason`.
75 * If "Exclude", the reason must be one of the standard exclusion categories (Wrong population, etc.).
76
77## Quality Rules
78
79* **Evidence-Based**: Decisions must be based strictly on the provided text or retrieved metadata.
80* **Structured Output**: Final output must always be parseable JSON.
81* **Exclusion Reasons**: Must use standard terminology: "Wrong population", "Wrong intervention", "Wrong comparator", "Wrong outcomes", "Wrong study design".
82
83## Helper Scripts
84
85### PDF Text Extraction
86
87When the user provides a PDF file path, use `extract_pdf.py` to extract the text content before assessment:
88
89## Error Handling
90
91- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
92- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
93- If execution fails, report the failure point, summarize what can still be completed safely, and provide a manual fallback.
94- Do not fabricate files, citations, data, search results, or execution outcomes.
95
96## Input Validation
97
98This skill accepts requests that match the documented purpose of `meta-screening-fulltext` and include enough context to complete the workflow safely.
99
100Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
101
102> `meta-screening-fulltext` only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.