Inclusion Criteria Gen
by @aipoch-ai
Generate and optimize clinical trial subject inclusion/exclusion criteria to balance scientific rigor with recruitment feasibility. Trigger when users need t...
clawhub install inclusion-criteria-genπ About This Skill
name: inclusion-criteria-gen description: 'Generate and optimize clinical trial subject inclusion/exclusion criteria to balance
scientific rigor with recruitment feasibility. Trigger when users need to design
eligibility criteria for new trials, optimize existing criteria for better enrollment,
analyze competitor trial eligibility patterns, or assess recruitment barriers.
Use cases: Protocol design, eligibility optimization, recruitment strategy,
competitive eligibility analysis, feasibility assessment.
' version: 1.0.0 category: Pharma tags:
Inclusion Criteria Generator
Generate and optimize clinical trial subject inclusion/exclusion criteria to balance scientific rigor with recruitment feasibility.
Use Cases
Usage
CLI Usage
# Generate criteria from study design
python scripts/main.py generate \
--indication "Type 2 Diabetes" \
--phase "Phase 2" \
--population "adults" \
--duration "24 weeks" \
--output criteria.jsonOptimize existing criteria
python scripts/main.py optimize \
--input current_criteria.json \
--enrollment-target 200 \
--current-enrollment 120 \
--output optimized_criteria.jsonAnalyze criteria complexity
python scripts/main.py analyze \
--input criteria.json \
--output analysis_report.jsonCompare with competitor trials
python scripts/main.py benchmark \
--input criteria.json \
--condition "Type 2 Diabetes" \
--output benchmark_report.json
Python API
from scripts.main import CriteriaGenerator, CriteriaOptimizerGenerate new criteria
generator = CriteriaGenerator()
criteria = generator.generate(
indication="Type 2 Diabetes",
phase="Phase 2",
population="adults",
study_duration="24 weeks",
endpoints=["HbA1c reduction", "weight change"]
)Optimize existing criteria
optimizer = CriteriaOptimizer()
optimized = optimizer.optimize(
criteria=existing_criteria,
enrollment_target=200,
current_enrollment=120,
retention_rate=0.85
)Analyze criteria complexity
analysis = optimizer.analyze_complexity(criteria)
Input Format
Study Design Parameters
{
"indication": "Type 2 Diabetes Mellitus",
"phase": "Phase 2",
"population": "adults",
"age_range": {"min": 18, "max": 75},
"study_duration": "24 weeks",
"treatment_type": "oral",
"primary_endpoints": ["HbA1c change from baseline"],
"safety_considerations": ["cardiovascular risk"],
"concomitant_meds_allowed": ["metformin"]
}
Existing Criteria Format
{
"inclusion_criteria": [
{
"id": "I1",
"criterion": "Age 18-75 years",
"rationale": "Adult population per regulatory guidance",
"category": "demographics"
}
],
"exclusion_criteria": [
{
"id": "E1",
"criterion": "HbA1c < 7.0% or > 11.0%",
"rationale": "Ensure measurable treatment effect",
"category": "disease_severity"
}
]
}
Output Format
Generated/Optimized Criteria
{
"inclusion_criteria": [
{
"id": "I1",
"criterion": "Age 18-75 years, inclusive",
"category": "demographics",
"rationale": "Adult population; upper limit for safety",
"priority": "required",
"impact": "low"
}
],
"exclusion_criteria": [
{
"id": "E1",
"criterion": "HbA1c < 7.5% or > 10.5% at screening",
"category": "disease_severity",
"rationale": "Optimal range for detecting treatment effect",
"priority": "required",
"impact": "medium",
"flexibility": "widen by 0.5% if enrollment slow"
}
],
"optimization_notes": [
"Widened HbA1c range from 7.0-11.0% to 7.5-10.5% based on feasibility data"
],
"recruitment_metrics": {
"estimated_screen_success_rate": 0.35,
"estimated_enrollment_rate": 0.65,
"key_barriers": ["HbA1c upper limit", "concomitant medication restrictions"]
}
}
Criteria Categories
| Category | Description | Examples | |----------|-------------|----------| | demographics | Age, sex, race, ethnicity | Age 18-75, women of childbearing potential | | disease_severity | Disease stage, severity markers | HbA1c range, tumor stage, NYHA class | | medical_history | Prior conditions, comorbidities | No cardiovascular events within 6 months | | concomitant_meds | Allowed/prohibited medications | Stable metformin dose allowed | | laboratory | Lab value requirements | eGFR > 30 mL/min, normal liver function | | lifestyle | Diet, exercise, habits | Non-smoker, willing to maintain diet | | compliance | Ability to participate | Able to provide informed consent | | safety | Risk minimization criteria | No history of severe hypoglycemia |
Optimization Strategies
Common Modifications
| Issue | Strategy | Example | |-------|----------|---------| | Narrow age range | Widen limits | 18-70 β 18-75 years | | Restrictive lab values | Adjust thresholds | eGFR > 60 β eGFR > 30 mL/min | | Comorbidity exclusions | Add time limits | Exclude "current" vs "history of" | | Medication washouts | Shorten periods | 4 weeks β 2 weeks | | Geographic barriers | Add telemedicine | Include remote visits option |
Retention Considerations
Technical Details
References
references/criteria_templates.json - Templates by therapeutic areareferences/optimization_guidelines.md - Best practices for criteria optimizationreferences/common_pitfalls.md - Frequent eligibility design mistakesreferences/regulatory_guidance.md - FDA/EMA guidance on eligibility criteriareferences/feasibility_data.json - Screen failure rates by criterion typeRisk Assessment
| Risk Indicator | Assessment | Level | |----------------|------------|-------| | Code Execution | Python scripts with tools | High | | Network Access | External API calls | High | | File System Access | Read/write data | Medium | | Instruction Tampering | Standard prompt guidelines | Low | | Data Exposure | Data handled securely | Medium |
Security Checklist
Prerequisites
# Python dependencies
pip install -r requirements.txt
Evaluation Criteria
Success Metrics
Test Cases
1. Basic Functionality: Standard input β Expected output 2. Edge Case: Invalid input β Graceful error handling 3. Performance: Large dataset β Acceptable processing timeLifecycle Status
Parameters
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| --indication | str | Required | Therapeutic indication |
| --phase | str | Required | |
| --population | str | "adults" | Target population |
| --duration | str | "" | Study duration |
| --output | str | Required | Output file path |
| --age-min | int | 18 | Minimum age |
| --age-max | int | 75 | Maximum age |
| --input | str | Required | Input criteria JSON file |
| --enrollment-target | int | Required | Target enrollment |
| --current-enrollment | int | Required | Current enrollment |
| --output | str | Required | Output file path |
| --input | str | Required | Input criteria JSON file |
| --output | str | Required | Output file path |
| --input | str | Required | Input criteria JSON file |
| --condition | str | Required | Medical condition |
| --output | str | Required | Output file path |
β‘ When to Use
π‘ Examples
CLI Usage
# Generate criteria from study design
python scripts/main.py generate \
--indication "Type 2 Diabetes" \
--phase "Phase 2" \
--population "adults" \
--duration "24 weeks" \
--output criteria.jsonOptimize existing criteria
python scripts/main.py optimize \
--input current_criteria.json \
--enrollment-target 200 \
--current-enrollment 120 \
--output optimized_criteria.jsonAnalyze criteria complexity
python scripts/main.py analyze \
--input criteria.json \
--output analysis_report.jsonCompare with competitor trials
python scripts/main.py benchmark \
--input criteria.json \
--condition "Type 2 Diabetes" \
--output benchmark_report.json
Python API
from scripts.main import CriteriaGenerator, CriteriaOptimizerGenerate new criteria
generator = CriteriaGenerator()
criteria = generator.generate(
indication="Type 2 Diabetes",
phase="Phase 2",
population="adults",
study_duration="24 weeks",
endpoints=["HbA1c reduction", "weight change"]
)Optimize existing criteria
optimizer = CriteriaOptimizer()
optimized = optimizer.optimize(
criteria=existing_criteria,
enrollment_target=200,
current_enrollment=120,
retention_rate=0.85
)Analyze criteria complexity
analysis = optimizer.analyze_complexity(criteria)
βοΈ Configuration
# Python dependencies
pip install -r requirements.txt