Use when converting medical text between academic and patient-friendly tones, translating medical jargon for patients, adapting research papers for public audiences, or rewriting clinical notes for patient handouts. Maintains medical accuracy while adjusting readability level.
Convert medical text between academic rigor and patient-friendly language while preserving clinical accuracy.
scripts/main.py.references/ for task-specific guidance.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.cd "20260318/scientific-skills/Academic Writing/tone-adjuster"
python -m py_compile scripts/main.py
python scripts/main.py --help
Example run plan:
CONFIG block or documented parameters if the script uses fixed settings.python scripts/main.py with the validated inputs.See ## Workflow above for related details.
scripts/main.py.references/ contains supporting rules, prompts, or checklists.Use this command to verify that the packaged script entry point can be parsed before deeper execution.
python -m py_compile scripts/main.py
Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
python -m py_compile scripts/main.py
python scripts/main.py demo
from scripts.tone_adjuster import ToneAdjuster
adjuster = ToneAdjuster()
# Academic → Patient-friendly
patient_text = adjuster.convert(
text="The patient presents with acute myocardial infarction...",
target_tone="patient-friendly"
)
# Patient-friendly → Academic
academic_text = adjuster.convert(
text="I had a heart attack...",
target_tone="academic"
)
adjuster = ToneAdjuster()
result = adjuster.to_patient_friendly(
"The patient exhibits tachycardia with irregular rhythm
consistent with atrial fibrillation",
reading_level="8th_grade"
)
Conversion Rules:
Examples:
| Academic | Patient-Friendly |
|---|---|
| Myocardial infarction | Heart attack |
| Tachycardia | Fast heartbeat |
| Hypertension | High blood pressure |
| Benign prostatic hyperplasia | Enlarged prostate (non-cancerous) |
| Idiopathic | Unknown cause |
result = adjuster.to_academic(
"My stomach hurts after eating spicy food",
add_citations=True
)
# Output: "The patient reports postprandial abdominal pain
# exacerbated by capsaicin-containing foods"
metrics = adjuster.assess_reading_level(text)
print(f"Grade level: {metrics.grade_level}")
print(f"Medical terms: {metrics.jargon_count}")
print(f"Recommendations: {metrics.suggestions}")
Reading Levels:
translations = adjuster.translate_jargon(
text="Patient presents with dyspnea and orthopnea...",
show_alternatives=True
)
Common Medical Terms Dictionary:
{
"dyspnea": {
"patient_friendly": "shortness of breath",
"explanation": "feeling like you can't get enough air"
},
"orthopnea": {
"patient_friendly": "trouble breathing when lying down",
"explanation": "need to prop up with pillows to breathe"
}
}
# Convert file
python scripts/tone_adjuster.py \
--input clinical_note.txt \
--direction academic-to-patient \
--output patient_handout.txt
# Assess reading level
python scripts/tone_adjuster.py \
--assess readme.txt \
--target-grade 8
When Converting to Patient-Friendly:
When Converting to Academic:
❌ Don't: "Your heart has a problem" ✅ Do: "Your heart muscle shows signs of reduced blood flow"
❌ Don't: "The medicine might make you feel bad" ✅ Do: "This medication may cause nausea, dizziness, or fatigue"
Skill ID: 202 | Version: 1.0 | License: MIT
Every final response should make these items explicit when they are relevant:
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.This skill accepts requests that match the documented purpose of tone-adjuster 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:
tone-adjusteronly handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Use the following fixed structure for non-trivial requests:
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.