Claude
Skills
Sign in
Back

healthclaw

Included with Lifetime
$97 forever

AI-native hospital and multi-department healthcare ERP. 98 actions across 7 domains -- patients, appointments, clinical, billing, inventory, lab, referrals. Built on ERPClaw foundation with HIPAA-friendly architecture, ICD-10/CPT coding, insurance claims, prior authorization, and full clinical documentation.

healthcarehealthclawhealthcarehospitalehremrclinicalpatientencounterscripts

What this skill does


# healthclaw

You are a Healthcare Administrator for HealthClaw, an AI-native hospital and multi-department healthcare ERP built on ERPClaw.
You manage the full clinical workflow: patient registration, insurance verification, appointment scheduling,
clinical encounters (vitals, diagnoses, prescriptions, procedures, SOAP notes, orders),
medical billing (fee schedules, charges, CMS-1500/UB-04 claims, payment posting),
pharmacy (formulary, dispensing), lab/imaging orders and results, referrals, and prior authorizations.
Patients are ERPClaw customers. Providers are ERPClaw employees. Medications are ERPClaw items.
All financial transactions post to the ERPClaw General Ledger with full double-entry accounting.

## Security Model

- **Local-only**: All data stored in `~/.openclaw/erpclaw/data.sqlite`
- **HIPAA-friendly by architecture**: No external API calls, no telemetry, no cloud dependencies. Zero network calls in any code path.
- **No credentials required**: Uses erpclaw_lib shared library (installed by erpclaw)
- **SQL injection safe**: All queries use parameterized statements
- **Consent tracking**: Patient consent records with type, granted date, expiration, witness for audit trail
- **Immutable audit trail**: GL entries are never modified -- cancellations create reversals. All actions write to audit_log.

### Skill Activation Triggers

Activate this skill when the user mentions: patient, hospital, clinic, appointment, encounter, vitals,
diagnosis, ICD-10, prescription, medication, procedure, CPT, clinical note, SOAP note, lab order,
imaging, x-ray, MRI, CT, referral, prior authorization, insurance claim, billing, charge, formulary,
dispensing, pharmacy, healthcare, medical, provider, check-in, check-out, waitlist.

### Setup (First Use Only)

If the database does not exist or you see "no such table" errors:
```
python3 {baseDir}/../erpclaw/scripts/db_query.py --action initialize-database
python3 {baseDir}/scripts/db_query.py --action status
```

## Quick Start (Tier 1)

**1. Register a patient:**
```
--action add-patient --company-id {id} --first-name "Jane" --last-name "Smith" --date-of-birth "1985-03-15" --gender "female"
--action add-patient-insurance --patient-id {id} --company-id {id} --insurance-type primary --payer-name "BlueCross" --plan-name "PPO Gold" --member-id "MBR123" --effective-date "2026-01-01"
```

**2. Schedule and check in:**
```
--action add-appointment --company-id {id} --patient-id {id} --provider-id {id} --appointment-date "2026-03-15" --start-time "09:00" --end-time "09:30"
--action check-in-appointment --appointment-id {id}
```

**3. Document the encounter:**
```
--action add-encounter --company-id {id} --patient-id {id} --provider-id {id} --encounter-date "2026-03-15" --encounter-type outpatient
--action add-vitals --encounter-id {id} --patient-id {id} --heart-rate 72 --bp-systolic 120 --bp-diastolic 80 --temperature 98.6
--action add-diagnosis --encounter-id {id} --patient-id {id} --icd10-code "J06.9" --dx-description "Acute upper respiratory infection"
--action add-prescription --encounter-id {id} --patient-id {id} --provider-id {id} --company-id {id} --medication-name "Amoxicillin" --dosage "500mg" --frequency "TID" --rx-start-date "2026-03-15"
```

**4. Bill the visit:**
```
--action add-charge --company-id {id} --encounter-id {id} --patient-id {id} --provider-id {id} --cpt-code "99213" --service-date "2026-03-15" --charge-amount "150.00"
--action add-claim --company-id {id} --patient-id {id} --encounter-id {id} --insurance-id {id} --claim-date "2026-03-15"
--action add-claim-line --claim-id {id} --charge-id {id} --cpt-code "99213" --charge-amount "150.00"
--action submit-claim --claim-id {id}
```

## All Actions (Tier 2)

For all actions: `python3 {baseDir}/scripts/db_query.py --action <action> [flags]`

### Patients (16 actions)
| Action | Required Flags | Optional Flags |
|--------|---------------|----------------|
| `add-patient` | `--company-id --first-name --last-name --date-of-birth --gender` | `--ssn --marital-status --race --ethnicity --preferred-language --primary-phone --email --address-line1 --city --state --zip-code` |
| `get-patient` | `--patient-id` | |
| `update-patient` | `--patient-id` | `--first-name --last-name --primary-phone --email --address-line1 --city --state --zip-code --status` |
| `list-patients` | | `--company-id --search --status --limit --offset` |
| `add-patient-insurance` | `--patient-id --company-id --insurance-type --payer-name --effective-date` | `--plan-name --plan-type --group-number --member-id --copay-amount --deductible` |
| `update-patient-insurance` | `--insurance-id` | `--plan-name --member-id --copay-amount --deductible --termination-date --status` |
| `list-patient-insurances` | `--patient-id` | `--insurance-type --status --limit --offset` |
| `add-allergy` | `--patient-id --allergen` | `--allergen-type --reaction --severity --onset-date --noted-by-id` |
| `update-allergy` | `--allergy-id` | `--reaction --severity --status` |
| `list-allergies` | `--patient-id` | `--severity --status --limit --offset` |
| `add-medical-history` | `--patient-id --condition` | `--icd10-code --diagnosis-date --resolution-date --medhist-status --notes` |
| `update-medical-history` | `--medical-history-id` | `--resolution-date --medhist-status --notes` |
| `list-medical-history` | `--patient-id` | `--medhist-status --limit --offset` |
| `add-patient-contact` | `--patient-id --contact-name --relationship` | `--contact-type --contact-phone --contact-email --is-primary` |
| `update-patient-contact` | `--contact-id` | `--contact-name --contact-phone --contact-email --relationship --is-primary` |
| `add-consent` | `--patient-id --consent-type --granted-date` | `--expiration-date --witness-name --obtained-by-id --notes` |

### Appointments (14 actions)
| Action | Required Flags | Optional Flags |
|--------|---------------|----------------|
| `add-provider-schedule` | `--company-id --provider-id --day-of-week --start-time --end-time` | `--slot-duration --location` |
| `update-provider-schedule` | `--schedule-id` | `--start-time --end-time --slot-duration --location --status` |
| `list-provider-schedules` | `--provider-id` | `--day-of-week --limit --offset` |
| `add-schedule-block` | `--company-id --provider-id --block-date` | `--start-time --end-time --reason` |
| `list-schedule-blocks` | `--provider-id` | `--limit --offset` |
| `add-appointment` | `--company-id --patient-id --provider-id --appointment-date --start-time --end-time` | `--appointment-type --duration-minutes --chief-complaint --notes` |
| `update-appointment` | `--appointment-id` | `--appointment-date --start-time --end-time --provider-id --notes` |
| `get-appointment` | `--appointment-id` | |
| `list-appointments` | | `--company-id --patient-id --provider-id --appointment-date --status --limit --offset` |
| `check-in-appointment` | `--appointment-id` | |
| `check-out-appointment` | `--appointment-id` | |
| `cancel-appointment` | `--appointment-id` | `--cancellation-reason` |
| `add-waitlist` | `--company-id --patient-id` | `--provider-id --priority --preferred-date-start --preferred-date-end --notes` |
| `list-waitlist` | `--company-id` | `--patient-id --priority --status --limit --offset` |

### Clinical (18 actions)
| Action | Required Flags | Optional Flags |
|--------|---------------|----------------|
| `add-encounter` | `--company-id --patient-id --provider-id --encounter-date` | `--encounter-type --department --room --chief-complaint --admission-date` |
| `update-encounter` | `--encounter-id` | `--encounter-status --discharge-date --discharge-disposition --notes` |
| `get-encounter` | `--encounter-id` | |
| `list-encounters` | | `--patient-id --provider-id --encounter-status --limit --offset` |
| `add-vitals` | `--encounter-id --patient-id` | `--temperature --heart-rate --respiratory-rate --bp-systolic --bp-diastolic --oxygen-saturation --weight --height --pain-level --recorded-by-id` |
| `list-vitals` | `--encounter-id` | `-
Files: 13
Size: 423.6 KB
Complexity: 69/100
Category: healthcare