Intelligent Triage and Symptom Analysis
Version: 1.1.0
Category: Healthcare / Medical
Billing: SkillPay (1 token per call, ~0.001 USDT)
Free Trial: 10 free calls per user
Demo Mode: ✅ Available (no API key required)
AI-powered medical triage assistance for healthcare providers, telemedicine platforms, and patients. Provides accurate preliminary symptom assessment and urgency recommendations.
Features
- Comprehensive Symptom Coverage - 650+ symptoms across 11 body systems
- Standardized Triage - 5-level classification (Resuscitation to Non-emergency)
- Red Flag Detection - ≥95% accuracy for life-threatening conditions
- NLP Analysis - Natural language symptom extraction
- Differential Diagnosis - ML-assisted condition ranking
- SkillPay Billing - 1 token per analysis (~0.001 USDT)
- Free Trial - 10 free calls for every new user
- Demo Mode - Try without API key, returns simulated triage data
- Symptom History - Track patient symptom history over time
- Multi-language Support - Chinese and English output
Demo Mode
Try the skill without any API key:
python scripts/triage.py --demo --symptoms "胸痛、呼吸困难"
Demo mode returns realistic simulated triage assessments to demonstrate the output format.
Free Trial
Each user gets 10 free calls before billing begins. During the trial:
- No payment required
- Full feature access
- Trial status returned in API response
{
"success": True,
"trial_mode": True, # Currently in free trial
"trial_remaining": 8, # 8 free calls left
"balance": None, # No balance needed in trial
"analysis": {...}
}
After 10 free calls, normal billing applies.
Quick Start
Demo Mode (No API Key):
python scripts/triage.py --demo --symptoms "胸痛、呼吸困难、持续30分钟"
Analyze symptoms:
from scripts.triage import analyze_symptoms
import os
# Set environment variables
os.environ["SKILLPAY_API_KEY"] = "your-api-key"
os.environ["SKILLPAY_SKILL_ID"] = "your-skill-id"
# Analyze patient symptoms
result = analyze_symptoms(
symptoms="胸痛,呼吸困难,持续30分钟",
age=65,
gender="male",
vital_signs={"bp": "160/95", "hr": 110, "temp": 37.2},
user_id="user_123"
)
# Check result
if result["success"]:
print("分诊等级:", result["analysis"]["triage"]["level"])
print("紧急程度:", result["analysis"]["triage"]["urgency"])
print("建议措施:", result["analysis"]["recommendations"])
else:
print("错误:", result["error"])
if "paymentUrl" in result:
print("充值链接:", result["paymentUrl"])
View Symptom History:
python scripts/triage.py --history --user-id "user_123"
With Vital Signs:
python scripts/triage.py --symptoms "胸痛" --age 65 --vital-signs '{"bp":"160/95","hr":110}' --user-id "user_123"
Language Selection:
# Chinese output (default)
python scripts/triage.py --symptoms "头痛、发热" --age 35 --language zh --user-id "user_123"
# English output
python scripts/triage.py --symptoms "headache, fever" --age 35 --language en --user-id "user_123"
Environment Variables
This skill requires the following environment variables:
Required Variables (After Trial)
| Variable | Description | Required | Example |
|---|---|---|---|
SKILLPAY_API_KEY | Your SkillPay API key for billing | After trial | skp_abc123... |
SKILLPAY_SKILL_ID | Your Skill ID from SkillPay dashboard | After trial | skill_def456... |
Optional Variables
| Variable | Description | Default |
|---|---|---|
TRIAGE_DATA_RETENTION_DAYS | Days to retain triage history | 90 |
ENABLE_SYMPTOM_HISTORY | Enable symptom history tracking | true |
See .env.example for a complete list of environment variables.
Configuration
The skill uses SkillPay billing integration:
- Provider: skillpay.me
- Pricing: 1 token per call (~0.001 USDT)
- Chain: BNB Chain
- Free Trial: 10 calls per user
- Demo Mode: Available without API key
- API Key: Set via
SKILLPAY_API_KEYenvironment variable - Skill ID: Set via
SKILLPAY_SKILL_IDenvironment variable - Minimum deposit: 8 USDT
Triage Levels
| Level | Name | Response Time | Description | Examples |
|---|---|---|---|---|
| 1 | Resuscitation | Immediate | Life-threatening conditions requiring immediate intervention | Cardiac arrest, severe trauma, respiratory failure |
| 2 | Emergent | <15 min | High-risk conditions requiring rapid evaluation | Chest pain, severe bleeding, altered mental status |
| 3 | Urgent | <30 min | Serious conditions requiring timely medical attention | Abdominal pain, high fever, moderate trauma |
| 4 | Semi-Urgent | <60 min | Less acute conditions needing evaluation within hours | Minor injuries, chronic symptoms, stable conditions |
| 5 | Non-urgent | >60 min | Minor conditions that can wait days to weeks | Follow-up, prescription refill, administrative requests |
Risk Stratification Factors
- Demographic Risk: Age, gender, medical history
- Vital Signs Abnormalities: Critical parameter thresholds
- Comorbidity Impact: How existing conditions affect urgency
- Medication Interactions: Potential drug-related complications
- Social Determinants: Access to care, support systems
- Time Sensitivity: Progression risk without treatment
Supported Body Systems & Symptoms
1. Cardiovascular Symptoms
Chest pain, palpitations, shortness of breath, edema, hypertension, syncope
2. Respiratory Symptoms
Cough, wheezing, difficulty breathing, chest congestion, hemoptysis, dyspnea
3. Gastrointestinal Symptoms
Abdominal pain, nausea, vomiting, diarrhea, bleeding, jaundice, constipation
4. Neurological Symptoms
Headache, dizziness, confusion, weakness, sensory changes, seizures, altered consciousness
5. Musculoskeletal Symptoms
Joint pain, muscle pain, back pain, injuries, fractures, limited mobility
6. Dermatological Symptoms
Rashes, lesions, swelling, itching, bruising, wounds, burns
7. Genitourinary Symptoms
Dysuria, frequency, hematuria, flank pain, menstrual abnormalities, discharge
8. Endocrine Symptoms
Polyuria, polydipsia, weight changes, temperature intolerance, hormonal changes
9. Hematological Symptoms
Bleeding, bruising, fatigue, pallor, lymphadenopathy
10. Immunological Symptoms
Fever, recurrent infections, allergic reactions, autoimmune symptoms
11. Psychiatric Symptoms
Anxiety, depression, suicidal ideation, hallucinations, behavioral changes
Symptom History
The skill can track patient symptom history for longitudinal care:
# Symptom history is automatically saved for each analysis
# To retrieve history:
from scripts.triage import SymptomHistoryManager
history_manager = SymptomHistoryManager("user_123")
history = history_manager.load_history()
recent_symptoms = history_manager.get_recent_symptoms(days=30)
Safety and Quality
Clinical Safety Mechanisms
- Red Flag Overrides: Forced escalation when critical symptoms present
- Uncertainty Handling: Conservative approach when diagnosis unclear
- Multiple Model Validation: Cross-checking recommendations across algorithms
- Human-in-the-Loop: Provider review requirements for high-stakes decisions
- Continuous Monitoring: Post-assessment outcome tracking
Disclaimer
This tool is for preliminary assessment only and does not replace professional medical diagnosis. Always consult qualified healthcare providers for medical decisions.
System Limitations:
- Not a Diagnostic Tool: Provides triage and assessment, not definitive diagnoses
- Requires Clinical Judgment: Intended to support, not replace, clinical decision-making
- Dependent on Input Quality: Accuracy depends on quality and completeness of information
- Age-Specific Accuracy: Variable performance across different age groups
- Rare Conditions: Limited accuracy for very rare or novel conditions
References
- Triage methodology: references/triage-systems.md
- Billing API: references/skillpay-billing.md
- Disease database: references/disease-database.md
- Clinical specifications: references/clinical-specs.md
Changelog
v1.1.0
- Added demo mode (no API key required)
- Added symptom history tracking
- Added multi-language support (zh/en)
- Unified environment variable naming to
SKILLPAY_API_KEYandSKILLPAY_SKILL_ID - Fixed version inconsistency
v1.0.3
- Initial stable release
- SkillPay billing integration
- Free trial support