epic-note: Draft Concise Patient-Portal Messages with AI

4 0 Updated: 2026-07-28 00:35:08

epic-note is an OpenClaw skill from the Tula open-source collection that helps patients draft clear, concise portal messages (e.g., for Epic MyChart, Oracle Health HealtheLife). It enforces triage-first (911 redirect on red flags), a single-ask discipline with a 150-word target and 220-word cap, canonical portal format from a reference file, and default clinician greeting from profile. The primary output is copy-paste ready text with a Subject line (urgency tier), greeting, one-sentence ask, brief context, optional bullets, and sign-off. Safety constraints: never auto-send, no clinical notes, no insurance/billing letters, direct answers to medical advice questions (not via draft), PHI stays in workspace. Includes reference schemas and evaluation suite.

Install
bunx skills add https://github.com/realactivity/tula --skill epic-note
Skill Details readonly

Struggling to Write a Clear Message to Your Doctor? Let's Chat About epic-note

Let me be real with you: sending a message to your doctor through the patient portal can feel like trying to solve a Rubik's Cube blindfolded. I've been there – typing a huge paragraph about my fluctuating blood sugar, squeezing in medication history, symptoms, and anxiety, only to get a one-line reply saying "Please schedule an appointment." 😩 It's frustrating for both sides.

Then I stumbled upon this little gem called epic-note. It's part of the Tula open-source project – a collection of OpenClaw skills, configs, and patterns that turn a general-purpose AI agent into a personal health intelligence assistant. epic-note specifically focuses on helping patients draft concise, copy-paste ready portal messages for systems like Epic MyChart or Oracle Health HealtheLife.

What Exactly Does epic-note Do?

epic-note is a skill that runs on OpenClaw, an open-source AI agent framework. You talk to it naturally, like "Draft a MyChart message to my PCP about this cough," and it spits out a well-structured message you can just copy and paste. But the magic lies in the guardrails it enforces.

  • Triage First: If your symptoms are emergent (e.g., chest pain, severe bleeding), it will redirect you to call 911 or go to the ER – no message drafting allowed.
  • Single-Ask Discipline: The output targets around 150 words and is capped at 220. You ask one thing at a time, keeping it focused.
  • Canonical Portal Format: It follows a standard structure: a Subject line with urgency tier, a greeting (defaults to your PCP's name from your profile), one-sentence ask, brief context, optional bullet points, and a sign-off.
  • No Auto-Sending: It only produces a draft. You manually copy and paste it into the portal. Never will it send a message on your behalf.
  • No Clinical Notes: It won't generate SOAP notes, discharge summaries, insurance letters, or billing paperwork.
  • PHI Stays Local: Your health information remains in your workspace; the skill won't verify clinician identifiers over the web.

My First Experience: Smooth Like Butter

After cloning the Tula repository (it's on GitHub under realactivity/tula), I deployed the skill using the provided script:

~/tula/scripts/deploy-skills.sh --skill epic-note
openclaw skills list

Then I invoked it with a natural request:

"Help me ask for a metformin refill."

Boom – it generated this:

Subject: Medication Refill Request [Routine]

Dear Dr. Matthews,

I'm requesting a refill of my metformin prescription.

- Medication: metformin 1000mg BID
- Last fill: 11/15/2023 (30-day supply)
- No adverse effects

Thank you for your attention.

Best,
Dylan Meyer

Notice how it pulled the doctor's name ("Dr. Matthews") from my profile? That was configured in ~/.openclaw/workspace/memory/profile.yaml with the field care_team.pcp.display_name. If you don't set that, it still works but uses a generic greeting.

Learning Curve: The Waza Evaluation Suite

One thing I initially missed was the built-in quality checks. The project includes a tool called Waza that runs evaluation suites. You can run:

waza check skills/epic-note
waza run evals/epic-note/eval.mock.yaml --skip-graders -v

These tests verify that your skill correctly handles edge cases. For example, if someone says "I'm having chest pain," the skill should refuse to draft a message and instead redirect to emergency services. There's even a "triage-override failure" that's considered an immediate release blocker. That's how seriously the project takes safety.

I failed the first run because my configuration was missing the profile for the synthetic persona (Dylan Meyer). Once I fixed that, everything passed. The eval fixtures use synthetic personas, so you can test without real patient data.

When Should You Use epic-note?

  • Routine follow-ups: "Follow up on my latest A1c result."
  • Medication refill requests: "Ask for a lisinopril refill."
  • Non-urgent symptom questions: "Tell my doctor I've had a mild cough for three days."
  • Appointment scheduling: "Request an appointment with my cardiologist."

But NEVER use it for:

  • Emergency symptoms (it will block you anyway).
  • Getting clinical advice (it will answer directly, not via a draft).
  • Writing insurance appeals or legal documents.

How to Get Started

  1. Clone the Tula repo from GitHub.
  2. Follow the deployment instructions (requires OpenClaw).
  3. Create a simple profile YAML with at least your PCP's display name.
  4. Run the Waza checks to confirm everything is correct.
  5. Start chatting! For example: "Draft a MyChart message to my PCP about this cough."

The output is ready to paste. No more staring at a blank text box wondering if you've written too much or too little.

Final Thoughts – Why This Matters

Communication with healthcare providers is notoriously high-friction. Patients either dump everything into one messy paragraph, or they under-share and get a useless reply. epic-note strikes a beautiful balance: it's structured, safe, and respectful of both patient and clinician time.

I love that the project is open-source. You can inspect every rule, every format template, and every safety check. No black-box AI making decisions about your health. And the fact that it never auto-sends gives me peace of mind – I'm in control.

Give epic-note a try. Even if you just play with it using the synthetic persona, you'll see how much easier it makes portal messaging. And who knows, maybe your doctor will appreciate the clear, concise messages too! 😊