OpenSpace medical-soap-note-creation
Transform unstructured clinical encounters into comprehensive SOAP notes with ICD codes and care plans
install
source · Clone the upstream repo
git clone https://github.com/HKUDS/OpenSpace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/HKUDS/OpenSpace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/gdpval_bench/skills/medical-soap-note-creation" ~/.claude/skills/hkuds-openspace-medical-soap-note-creation && rm -rf "$T"
manifest:
gdpval_bench/skills/medical-soap-note-creation/SKILL.mdsource content
Medical SOAP Note Creation
This skill provides a systematic approach to converting unstructured clinical encounter summaries into professional, comprehensive SOAP notes ready for electronic health record documentation.
Overview
SOAP notes organize clinical information into four standard sections:
- Subjective: Patient's reported symptoms and history
- Objective: Measurable clinical findings and data
- Assessment: Clinical diagnosis and reasoning
- Plan: Treatment strategy and follow-up
Step-by-Step Instructions
Step 1: Extract Key Information
Review the clinical encounter summary and identify:
- Patient demographics (age, sex, relevant history)
- Chief complaint and history of present illness
- Review of systems findings
- Physical examination results
- Diagnostic test results (labs, imaging)
- Current medications and allergies
- Past medical/surgical history
Step 2: Structure the SOAP Note
Organize information into the four SOAP sections:
Subjective (S):
- Chief complaint in patient's own words
- History of present illness (onset, duration, severity, aggravating/relieving factors)
- Review of systems (pertinent positives and negatives)
- Relevant past medical, family, and social history
Objective (O):
- Vital signs
- Physical examination findings by system
- Laboratory and imaging results
- Current medication list
Assessment (A):
- Primary diagnosis with ICD-10 code(s)
- Differential diagnoses if applicable
- Clinical reasoning connecting findings to diagnosis
Plan (P):
- Medications (new prescriptions, changes, discontinuations)
- Treatments and procedures
- Patient education provided
- Follow-up arrangements
- Return precautions
Step 3: Write the Complete Note
Compose the full SOAP note in a single
write_file operation to ensure completeness and efficiency:
from write_file import write_file soap_note = """SOAP NOTE Date: [Encounter Date] Patient: [Patient Name/ID] SUBJECTIVE: [Patient's reported symptoms and history in organized paragraphs] OBJECTIVE: [Clinical findings and data in organized sections] ASSESSMENT: [Diagnosis with clinical reasoning and ICD codes] PLAN: [Specific, actionable treatment steps and follow-up] """ write_file(path="soap_note.txt", content=soap_note)
Step 4: Quality Checklist
Before finalizing, verify:
- All four SOAP components present and clearly labeled
- ICD-10 codes included for all diagnoses
- Plan contains specific, actionable items with timelines
- Follow-up instructions are clear and specific
- Return precautions included
- Note is comprehensive (typically 3000-10000 characters for complex cases)
Best Practices
- Be Specific: Use quantifiable measurements and precise clinical terminology
- Include ICD Codes: Always pair diagnoses with appropriate ICD-10 codes
- Actionable Plans: Ensure each plan item has clear next steps, dosages, and timelines
- Single Operation: Write the complete note in one
operation for efficiency and consistencywrite_file - Professional Tone: Use clinical language appropriate for medical records
- Patient-Centered: Include patient education and shared decision-making when applicable
Example Structure
SOAP NOTE Date: 2024-01-15 Patient: [Name], [Age], [Sex] SUBJECTIVE: CC: [Chief complaint] HPI: [History of present illness using OLDCARTS or similar framework - onset, location, duration, characteristics, aggravating/relieving factors, timing, severity] ROS: [Review of systems - pertinent positives and negatives by system] PMH: [Past medical history] PSH: [Past surgical history] Medications: [Current medications with dosages] Allergies: [Known allergies and reactions] FH: [Family history] SH: [Social history] OBJECTIVE: VS: T [temp], BP [blood pressure], HR [heart rate], RR [respiratory rate], SpO2 [oxygen saturation], Wt [weight] General: [Appearance, distress level] HEENT: [Head, eyes, ears, nose, throat findings] CV: [Cardiovascular examination] Resp: [Respiratory examination] Abd: [Abdominal examination] MSK: [Musculoskeletal examination] Neuro: [Neurological examination] Skin: [Dermatological findings] Labs: [Relevant laboratory results with values and reference ranges] Imaging: [Imaging study results] ASSESSMENT: 1. [Primary diagnosis] - ICD-10: [code] [Brief clinical reasoning supporting diagnosis] 2. [Secondary diagnosis if applicable] - ICD-10: [code] [Brief clinical reasoning] PLAN: 1. Medications: - [Medication name] [dosage] [route] [frequency] for [duration] 2. Treatments: - [Specific treatment or procedure] 3. Patient Education: - [Education topics discussed] 4. Follow-up: - Return to clinic in [timeframe] for [purpose] - [Any scheduled tests or appointments] 5. Return Precautions: - Return immediately if [warning symptoms]
Common ICD-10 Code Categories
- Respiratory: J00-J99 (e.g., J06.9 acute upper respiratory infection)
- Digestive: K00-K95 (e.g., K21.0 GERD with esophagitis)
- Musculoskeletal: M00-M99 (e.g., M54.5 low back pain)
- Cardiovascular: I00-I99 (e.g., I10 essential hypertension)
- Endocrine: E00-E89 (e.g., E11.9 type 2 diabetes mellitus)
- Infectious: A00-B99 (e.g., J02.9 acute pharyngitis)
Notes on Efficiency
Writing the complete SOAP note in a single
write_file operation offers several advantages:
- Reduces iteration overhead
- Ensures consistency across all sections
- Prevents partial or incomplete documentation
- Maintains coherent clinical reasoning throughout
- Faster completion time for clinical documentation tasks