Systematic Review Screener
Automated abstract screening tool for systematic literature reviews with PRISMA workflow support.
When to Use
- - Use this skill when the task needs Automated abstract screening tool for systematic literature reviews with PRISMA workflow support.
- Use this skill for evidence insight tasks that require explicit assumptions, bounded scope, and a reproducible output format.
- Use this skill when you need a documented fallback path for missing inputs, execution errors, or partial evidence.
Key Features
See ## Features above for related details.
- - Scope-focused workflow aligned to: Automated abstract screening tool for systematic literature reviews with PRISMA workflow support.
- Packaged executable path(s):
scripts/main.py. - Reference material available in
references/ for task-specific guidance. - Structured execution path designed to keep outputs consistent and reviewable.
Dependencies
See ## Prerequisites above for related details.
- -
Python: 3.10+. Repository baseline for current packaged skills. - INLINECODE6 :
unspecified. Declared in requirements.txt. - INLINECODE9 :
unspecified. Declared in requirements.txt.
Example Usage
See ## Usage above for related details.
CODEBLOCK0
Example run plan:
- 1. 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/main.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/main.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.
Quick Check
Use this command to verify that the packaged script entry point can be parsed before deeper execution.
CODEBLOCK1
Audit-Ready Commands
Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
CODEBLOCK2
Workflow
- 1. Confirm the user objective, required inputs, and non-negotiable constraints before doing detailed work.
- Validate that the request matches the documented scope and stop early if the task would require unsupported assumptions.
- Use the packaged script path or the documented reasoning path with only the inputs that are actually available.
- Return a structured result that separates assumptions, deliverables, risks, and unresolved items.
- If execution fails or inputs are incomplete, switch to the fallback path and state exactly what blocked full completion.
Overview
This skill screens academic abstracts against predefined inclusion/exclusion criteria, generating PRISMA-compliant outputs with decision rationale and confidence scores.
Technical Difficulty: High ⚠️ Manual verification recommended for final inclusion decisions.
Features
- - Multi-format Input: PubMed MEDLINE, EndNote XML, CSV/TSV
- Criteria Matching: Configurable inclusion/exclusion rules
- Confidence Scoring: 0-100% confidence for each decision
- Conflict Detection: Flags abstracts requiring human review
- PRISMA Export: Flow diagram data and screening log
- Batch Processing: Handles large reference sets efficiently
Usage
Basic Screening
CODEBLOCK3
With PRISMA Export
CODEBLOCK4
Confidence Threshold
CODEBLOCK5
Input Formats
1. CSV/TSV
Required columns:
title,
abstract (optional:
authors,
year,
doi,
pmid)
CODEBLOCK6
2. PubMed MEDLINE
Standard .txt export from PubMed search.
3. EndNote XML
Export from EndNote with abstracts included.
Criteria File (YAML)
See references/criteria_template.yaml for complete example:
CODEBLOCK7
Output Files
| File | Description |
|---|
| INLINECODE25 | Records passing all criteria |
| INLINECODE26 |
Records failing one or more criteria |
|
conflicts.csv | Low-confidence decisions requiring review |
|
prisma_data.json | PRISMA flow diagram counts |
|
screening_log.json | Full decision trail with rationale |
PRISMA Workflow Support
Generates structured data for PRISMA 2020 flow diagram:
CODEBLOCK8
Configuration
Environment Variables
CODEBLOCK9
Command Line Options
| Option | Description | Default |
|---|
| INLINECODE30 | Input file path | Required |
| INLINECODE31 |
Criteria YAML path | Required |
|
--output | Output directory |
./output |
|
--format | Output format: csv/excel/json | csv |
|
--threshold | Confidence threshold | 0.75 |
|
--prisma | Generate PRISMA data | False |
|
--conflict-only | Export only conflicts | False |
|
--batch-size | Processing batch size | 100 |
Decision Algorithm
- 1. Keyword Matching: Exact and fuzzy keyword matching against title/abstract
- Inclusion Scoring: Points for each inclusion criterion matched
- Exclusion Check: Immediate exclusion if exclusion criterion detected
- Confidence Calculation: Weighted score based on keyword presence and clarity
- Conflict Flagging: Records with confidence < threshold flagged for manual review
Limitations
- - Not for Final Decisions: Tool provides recommendations; human review required for inclusion
- Language Dependent: Optimized for English abstracts
- Structured Abstracts: Performs better on structured abstracts (Background/Methods/Results/Conclusion)
- Domain Specific: Criteria must be tailored to research question
References
- -
references/criteria_template.yaml - Complete criteria configuration example - INLINECODE40 - PRISMA 2020 reporting guidelines
- INLINECODE41 - Example input format
Version
Version: 1.0.0
Last Updated: 2026-02-05
Classification: Research Tool - Requires Human Verification
Risk Assessment
| Risk Indicator | Assessment | Level |
|---|
| Code Execution | Python/R scripts executed locally | Medium |
| Network Access |
No external API calls | Low |
| File System Access | Read input files, write output files | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Output files saved to workspace | Low |
Security Checklist
- - [ ] No hardcoded credentials or API keys
- [ ] No unauthorized file system access (../)
- [ ] Output does not expose sensitive information
- [ ] Prompt injection protections in place
- [ ] Input file paths validated (no ../ traversal)
- [ ] Output directory restricted to workspace
- [ ] Script execution in sandboxed environment
- [ ] Error messages sanitized (no stack traces exposed)
- [ ] Dependencies audited
Prerequisites
CODEBLOCK10
Evaluation Criteria
Success Metrics
- - [ ] Successfully executes main functionality
- [ ] Output meets quality standards
- [ ] Handles edge cases gracefully
- [ ] Performance is acceptable
Test Cases
- 1. Basic Functionality: Standard input → Expected output
- Edge Case: Invalid input → Graceful error handling
- Performance: Large dataset → Acceptable processing time
Lifecycle Status
- - Current Stage: Draft
- Next Review Date: 2026-03-06
- Known Issues: None
- Planned Improvements:
- Performance optimization
- Additional feature support
Output Requirements
Every final response should make these items explicit when they are relevant:
- - Objective or requested deliverable
- Inputs used and assumptions introduced
- Workflow or decision path
- Core result, recommendation, or artifact
- Constraints, risks, caveats, or validation needs
- Unresolved items and next-step checks
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
scripts/main.py fails, report the failure point, summarize what still can 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 systematic-review-screener 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:
INLINECODE44 only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Response Template
Use the following fixed structure for non-trivial requests:
- 1. Objective
- Inputs Received
- Assumptions
- Workflow
- Deliverable
- Risks and Limits
- Next Checks
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.
系统综述筛选工具
支持PRISMA工作流程的系统文献综述自动摘要筛选工具。
适用场景
- - 当任务需要支持PRISMA工作流程的系统文献综述自动摘要筛选工具时使用本技能。
- 用于需要明确假设、限定范围及可重复输出格式的证据洞察任务。
- 当需要针对缺失输入、执行错误或部分证据提供文档化的回退路径时使用本技能。
核心特性
详见上方## 功能特性部分。
- - 聚焦范围的工作流程,与以下内容对齐:支持PRISMA工作流程的系统文献综述自动摘要筛选工具。
- 打包的可执行路径:scripts/main.py。
- 参考资料位于references/目录,提供任务特定指导。
- 结构化执行路径,确保输出一致且可审查。
依赖项
详见上方## 前提条件部分。
- - Python:3.10+。当前打包技能的仓库基线版本。
- dataclasses:未指定版本。在requirements.txt中声明。
- yaml:未指定版本。在requirements.txt中声明。
使用示例
详见上方## 使用方法部分。
bash
cd 20260318/scientific-skills/Evidence Insight/systematic-review-screener
python -m py_compile scripts/main.py
python scripts/main.py --help
示例运行计划:
- 1. 确认用户输入、输出路径及任何必需的配置值。
- 如果脚本使用固定设置,编辑文件内的CONFIG块或文档化参数。
- 使用验证后的输入运行python scripts/main.py。
- 审查生成的输出,并返回最终产物,同时注明所有假设。
实现细节
详见上方## 工作流程部分。
- - 执行模型:验证请求,选择打包的工作流程,生成限定范围的可交付成果。
- 输入控制:在运行任何脚本前,确认源文件、范围限制、输出格式及验收标准。
- 主要实现界面:scripts/main.py。
- 参考指南:references/目录包含支持规则、提示或检查清单。
- 需优先明确的参数:输入路径、输出路径、范围过滤器、阈值及任何领域特定约束。
- 输出规范:保持结果可重复,明确标识假设,避免未文档化的副作用。
快速检查
在深入执行前,使用此命令验证打包脚本入口点可被解析。
bash
python -m py_compile scripts/main.py
审计就绪命令
使用这些具体命令进行验证。它们特意设计为自包含,避免使用占位符路径。
bash
python -m py_compile scripts/main.py
python scripts/main.py --help
python scripts/main.py -h
python scripts/main.py --help
工作流程
- 1. 在进行详细工作前,确认用户目标、必需输入及不可协商的约束条件。
- 验证请求是否与文档化范围匹配,如果任务需要不支持的假设则尽早停止。
- 仅使用实际可用的输入,使用打包脚本路径或文档化的推理路径。
- 返回结构化结果,区分假设、可交付成果、风险及未解决项。
- 如果执行失败或输入不完整,切换到回退路径,并准确说明阻止完整完成的原因。
概述
本技能根据预定义的纳入/排除标准筛选学术摘要,生成符合PRISMA标准的输出,包含决策理由和置信度评分。
技术难度:高 ⚠️ 最终纳入决策建议人工验证。
功能特性
- - 多格式输入:PubMed MEDLINE、EndNote XML、CSV/TSV
- 标准匹配:可配置的纳入/排除规则
- 置信度评分:每个决策0-100%置信度
- 冲突检测:标记需要人工审查的摘要
- PRISMA导出:流程图数据和筛选日志
- 批量处理:高效处理大型参考文献集
使用方法
基础筛选
python
使用默认设置运行
python scripts/main.py --input references.csv --criteria criteria.yaml
带PRISMA导出
python
python scripts/main.py --input references.xml --criteria criteria.yaml \
--output results/ --prisma --format excel
置信度阈值
python
python scripts/main.py --input refs.txt --criteria criteria.yaml \
--threshold 0.8 --conflict-only
输入格式
1. CSV/TSV
必需列:title,abstract(可选:authors,year,doi,pmid)
csv
title,abstract,authors,year
标题,摘要,作者,年份
2. PubMed MEDLINE
来自PubMed搜索的标准.txt导出文件。
3. EndNote XML
从EndNote导出,包含摘要。
标准文件(YAML)
完整示例见references/criteria_template.yaml:
yaml
study_type:
include:
- 随机对照试验
- 系统综述
exclude:
- 病例报告
- 信件
- 社论
population:
include_keywords:
- 成年人
- 老年人
exclude_keywords:
- 儿科
- 儿童
intervention:
required:
- 药物治疗
- 用药
language:
allowed: [英语]
year_range:
min: 2010
max: 2024
confidence_threshold: 0.75
输出文件
| 文件 | 描述 |
|---|
| screenedincluded.csv | 通过所有标准的记录 |
| screenedexcluded.csv |
未通过一个或多个标准的记录 |
| conflicts.csv | 需要审查的低置信度决策 |
| prisma_data.json | PRISMA流程图计数 |
| screening_log.json | 包含理由的完整决策轨迹 |
PRISMA工作流程支持
生成PRISMA 2020流程图的结构化数据:
json
{
identification: {
database_results: 1250,
register_results: 45,
other_sources: 12
},
screening: {
records_screened: 1307,
records_excluded: 1150,
fulltextassessed: 157,
fulltextexcluded: 89
},
included: {
qualitative_synthesis: 68,
quantitative_synthesis: 42
}
}
配置
环境变量
text
export SCREENING_THRESHOLD=0.75 # 默认置信度阈值
export BATCH_SIZE=100 # 每批记录数
export MAX_WORKERS=4 # 并行处理工作线程数
命令行选项
| 选项 | 描述 | 默认值 |
|---|
| --input | 输入文件路径 | 必需 |
| --criteria |
标准YAML路径 | 必需 |
| --output | 输出目录 | ./output |
| --format | 输出格式:csv/excel/json | csv |
| --threshold | 置信度阈值 | 0.75 |
| --prisma | 生成PRISMA数据 | False |
| --conflict-only | 仅导出冲突记录 | False |
| --batch-size | 处理批次大小 | 100 |
决策算法
- 1. 关键词匹配:对标题/摘要进行精确和模糊关键词匹配
- 纳入评分:每个匹配的纳入标准获得分数
- 排除检查:检测到排除标准时立即排除
- 置信度计算:基于关键词存在性和清晰度的加权分数
- 冲突标记:置信度低于阈值的记录标记为需要人工审查
局限性
- - 非最终决策:工具提供建议;纳入需要人工审查
- 语言依赖:针对英文摘要优化
- 结构化摘要:在结构化摘要(背景/方法/结果/结论)上表现更好
- 领域特定:标准必须针对研究问题定制
参考资料
- - references/criteriatemplate.yaml - 完整标准配置示例
- references/prisma2020checklist.pdf - PRISMA 2020报告指南
- references/samplereferences.csv - 示例输入格式
版本
版本:1.0.0
最后更新:2026-02-05
分类:研究工具 - 需要人工验证
风险评估
| 风险指标 | 评估 | 级别 |
|---|
| 代码执行 | 本地执行Python/R脚本 | 中 |
| 网络访问 |
无外部API调用 | 低 |
| 文件系统访问 | 读取输入文件,写入输出文件 | 中 |
| 指令篡改 | 标准提示指南 | 低 |
| 数据暴露 | 输出文件保存到工作区 | 低 |
##