Skip to main content

visit-prep-pack-pdf

Build the downloadable visit-prep pack PDF for the day's clinic — cover with practitioner + date + roster, then one full pre-visit-summary page per patient. Renders via the inline HTML template + Playwright.

Aller à l'installation

Informations de source

Dépôt
aiappsgbb/kratos-agent
Dernière activité de la source
9 juin 2026 à 09:24
Langue détectée de SKILL.md
anglais
Étoiles
23
Forks
21

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
3 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
visit-prep-pack-pdf
description
Build the downloadable visit-prep pack PDF for the day's clinic — cover with practitioner + date + roster, then one full pre-visit-summary page per patient. Renders via the inline HTML template + Playwright.
enabled
true
## Instructions Use this skill when Dr. Solomon asks for "the pack", "the PDF", "print my prep", or any variation. This is the **deliverable** the persona exists to produce. ### Workflow 1. **Gather the data** by chaining other skills first: - The roster: `daily-schedule` flow against `PRA-9001` for the requested date (default to today, 2026-06-02) - Per-patient context: for each booked patient, in parallel: - `epic_get_patient` - `epic_list_conditions` - `epic_list_medications` (status: active) - `epic_list_allergies` - `epic_list_observations` (limit: 10 recent) - The current `epic_get_encounter` for the day's appointment (for `reason_text` if present) 2. **Render** by invoking `scripts/render_visit_prep.py` via `code_interpreter`. Pass the data as JSON: ```bash python /app/use-cases/clinician-visit-prep/skills/visit-prep-pack-pdf/scripts/render_visit_prep.py \ --practitioner-name "Dr. Aniyah Solomon" \ --practitioner-specialty "Internal Medicine, Adult Primary Care" \ --clinic-date 2026-06-02 \ --patients-json '<JSON array of patient records>' \ --out /tmp/visit-prep-2026-06-02.pdf ``` 3. **Confirm in chat**: "Visit-prep pack saved to `/tmp/visit-prep-<YYYY-MM-DD>.pdf` — N pages: cover + one per patient. Allergies in red, out-of-range labs flagged." Reference the path so **file-sharing** picks it up. ### Patients-JSON shape The script expects: ```json [ { "patient": { "id": "PAT-100001", "mrn": "MRN-100001", "first_name": "Eleanor", "last_name": "Hsu", "date_of_birth": "1948-03-12", "sex": "F", "insurer": "...", "address_city": "Boston", "address_state": "MA" }, "encounter": { "id": "ENC-200003", "start": "2026-06-02T10:00:00Z", "type": "Office Visit", "reason_text": "Follow-up: BP not at goal", "duration_minutes": 30 }, "conditions": [{ "code": "I10", "display": "Essential hypertension", "onset": "2014", "status": "active" }], "medications": [{ "name": "Lisinopril 20 mg PO daily", "indication": "Hypertension", "since": "2014" }], "allergies": [{ "substance": "Penicillin", "severity": "moderate", "reaction": "rash" }], "observations": [{ "code": "BP", "value": "148/92", "unit": "mmHg", "effective_at": "2026-04-15", "interpretation": "above goal" }], "focus_notes": ["BP control — 148/92 above target", "LDL above post-MI goal"] }, ... ] ``` `focus_notes` is your suggested-focus bullet list — synthesise these from the data + the **clinical-guidelines-reference** skill. ### Assets - `assets/visit-prep-pack.html` — the Jinja-style HTML template (no Jinja, just `{{PLACEHOLDER}}` string substitution). Clinical white-and-teal theme; cover page; one page per patient. ### Constraints - One page per patient (use `page-break-before` CSS); cover stays on page 1. - Render severe (🔴) allergies above the problem list. Moderate (⚠️) inline. - File size budget < 2 MB. Don't embed images other than the Olympus mark in the template. - **Do not include real PHI** — fixture data only. - The "Suggested focus" bullets should reference guideline section numbers when relevant (e.g. *"LDL 82 — above §3.1 target <70 post-MI"*). ### When NOT to use - Single-patient brief — use **pre-visit-summary** and answer inline. - Roster only (no per-patient depth) — use **daily-schedule** and answer inline. <!-- skill-files --> ## Available Files This skill directory contains the following files you can read with `read_file` using their absolute paths (prefix `/app/use-cases/clinician-visit-prep/skills/visit-prep-pack-pdf/`): - `assets/visit-prep-pack.html` - `scripts/render_visit_prep.py`
Voir sur GitHub