技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
patient-demographics-summary【数据与研究】Retrieves and formats a complete patient demographic summary from FHIR Patient, RelatedPerson, and Coverage resources. Use when user asks to "pull demographics", "get patient info", "show patient details", "who is this patient", "patient summary", "emergency contacts", "insurance info", or needs a quick overview of non-clinical patient data. Do NOT u…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Pull structured demographic data from FHIR Patient, RelatedPerson, and Coverage resources. Format into a consolidated summary including identifiers, contact information, emergency contacts, insurance, preferred language, communication preferences, and advance directive status. Flag missing critical data elements that may affect care delivery.
| Resource | Purpose | Key Fields |
|---|---|---|
| Patient | Core demographics | name, birthDate, gender, address, telecom, communication, identifier, extension |
| RelatedPerson | Emergency contacts, guarantors | name, telecom, relationship, period |
| Coverage | Insurance information | status, type, subscriberId, payor, period, class |
Tool: fhir_read
resourceType: "Patient"
id: "[patient-id]"
Extract the following fields:
identifier where type.coding.code = "MR"), SSN (last 4 only), driver's licensename array -- use name.use = "official" as primary; note maiden names (use = "maiden")birthDate (calculate age)gender (administrative gender)extension where URL = http://hl7.org/fhir/us/core/StructureDefinition/us-core-race and http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicityaddress array -- identify use = "home" vs "work" vs "temp"telecom array -- phone (system = "phone"), email (system = "email"), faxcommunication array where preferred = truemaritalStatusdeceasedBoolean or deceasedDateTimemanagingOrganizationTool: fhir_search
resourceType: "RelatedPerson"
queryParams: "patient=[patient-id]"
For each RelatedPerson:
relationship.coding.code), phone, emailperiod to confirm the relationship is current (no end date or end > today)Tool: fhir_search
resourceType: "Coverage"
queryParams: "patient=[patient-id]&status=active"
For each active Coverage:
class where type.coding.code = "plan"class where type.coding.code = "group"subscriberIdpayor referenceperiodorder field: 1 = primary, 2 = secondary)Tool: fhir_search
resourceType: "Consent"
queryParams: "patient=[patient-id]&category=http://terminology.hl7.org/CodeSystem/consentcategorycodes|acd"
If no results, also search:
Tool: fhir_search
resourceType: "DocumentReference"
queryParams: "patient=[patient-id]&type=http://loinc.org|64298-3"
LOINC 64298-3 = Power of attorney / Advance directive
Scan the collected data and flag any of the following as missing:
AllergyIntolerance search returns zero results -- this indicates allergies have not been reviewed, not that there are none)Present the summary in this structure:
PATIENT DEMOGRAPHICS
====================
Name: [official name]
MRN: [identifier]
DOB: [birthDate] (Age: [calculated])
Gender: [gender]
Race/Ethnicity: [from extensions]
Preferred Language: [language]
Marital Status: [status]
CONTACT INFORMATION
===================
Home Phone: [telecom]
Mobile Phone: [telecom]
Email: [telecom]
Home Address: [address]
EMERGENCY CONTACTS
==================
1. [name] - [relationship] - [phone]
2. [name] - [relationship] - [phone]
INSURANCE COVERAGE
==================
Primary: [plan name] - ID: [subscriberId] - Group: [group]
Secondary: [plan name] - ID: [subscriberId] - Group: [group]
ADVANCE DIRECTIVES
==================
Status: [On file / Not on file]
MISSING DATA FLAGS
==================
- [list of flagged items]
User says: "Pull up demographics for patient 12345"
Actions:
fhir_read Patient/12345 -- returns full Patient resource with name, DOB, address, telecom, US Core race/ethnicity extensionsfhir_search RelatedPerson?patient=12345 -- returns 2 entries: spouse (emergency contact), adult child (next of kin)fhir_search Coverage?patient=12345&status=active -- returns 1 active Coverage: Blue Cross PPO, primaryfhir_search Consent?patient=12345&category=... -- returns 1 advance directiveResult:
PATIENT DEMOGRAPHICS
====================
Name: Maria Garcia
MRN: MRN-12345
DOB: 1958-03-15 (Age: 67)
Gender: Female
Race/Ethnicity: Hispanic or Latino / White
Preferred Language: Spanish
Marital Status: Married
CONTACT INFORMATION
===================
Home Phone: (555) 234-5678
Mobile Phone: (555) 876-5432
Email: mgarcia@email.com
Home Address: 456 Oak Ave, Austin, TX 78701
EMERGENCY CONTACTS
==================
1. Roberto Garcia - Spouse - (555) 234-5679
2. Ana Garcia-Lopez - Daughter - (555) 345-6789
INSURANCE COVERAGE
==================
Primary: Blue Cross Blue Shield PPO - ID: BCB998877 - Group: GRP-4421
ADVANCE DIRECTIVES
==================
Status: On file (dated 2022-06-10)
MISSING DATA FLAGS
==================
- No secondary insurance on file
User says: "Who is patient abc-789? Get me their info."
Actions:
fhir_read Patient/abc-789 -- returns minimal Patient resource: name and DOB only, no telecom, no extensionsfhir_search RelatedPerson?patient=abc-789 -- returns 0 entriesfhir_search Coverage?patient=abc-789&status=active -- returns 0 entriesfhir_search Consent?patient=abc-789&category=... -- returns 0 entriesResult:
PATIENT DEMOGRAPHICS
====================
Name: James Wilson
MRN: Not recorded
DOB: 1990-11-22 (Age: 35)
Gender: Male
Race/Ethnicity: Not documented
Preferred Language: Not specified
Marital Status: Unknown
CONTACT INFORMATION
===================
No contact information on file
EMERGENCY CONTACTS
==================
None documented
INSURANCE COVERAGE
==================
No active coverage found
ADVANCE DIRECTIVES
==================
Status: Not on file
MISSING DATA FLAGS [CRITICAL]
==============================
- No phone number or email
- No home address
- No emergency contact
- No active insurance coverage
- No preferred language
- Race/ethnicity not documented
- No advance directive on file
- Allergy documentation status unknown
Tool: fhir_search
resourceType: "Patient"
queryParams: "family=[lastname]&given=[firstname]&birthdate=[YYYY-MM-DD]"
Patient.contact array for embedded contact entries:
Patient.contact[].relationship
Patient.contact[].name
Patient.contact[].telecom
Patient.contact array instead of RelatedPerson resources.class array may use different type codes depending on the payer. Check for type.coding.code values: "plan", "group", "subplan", "subgroup", "rxbin", "rxpcn".payor referenced Organization resource. Follow the reference with fhir_read on the Organization.clinical-summary-generator -- for clinical data beyond demographicsinsurance-coverage-summary -- for deeper insurance analysis including coordination of benefitsallergy-adverse-reaction-summary -- when allergy documentation flag is raised