---
name: ellmos-ai/medizin-daten
source: https://app.decimal.ai/s/ellmos-ai-medizin-daten@1/SKILL.md
source_sha256: 5f348f606fb3
---

<img src="banner.png" width="100%" alt="medizin-daten banner">

> **Deutsch** — Offizielle Deutsch-Version / Documento Oficial en Deutsch.


## Übersicht & Zweck

Securely and locally capture personal medical data: diagnoses (ICD-10 code
optional), symptom histories with date series and examination plans. All
data stays exclusively local in `medizin-daten/store.db`.

The skill does not replace medical consultation and makes no medical
statements — it is a structured notebook for personal health data.

---

## Triggers

| Phrase | Action |
|---|---|
| "Record a diagnosis" | Create new diagnosis |
| "Add diagnosis [name]" | Create named diagnosis |
| "Symptom history" | Record today's symptoms |
| "Record symptom [name]" | Log a single symptom |
| "Examination plan" | Show upcoming appointments/examinations |
| "Add appointment" | Enter examination appointment |
| "Show my diagnoses" | Output diagnosis list |

---

## Workflow & Vorgehen

1. **Detect mode**: diagnosis / symptom / examination plan
2. **Structure input**: date, name, notes, optional ICD-10 code
3. **Save**: into `store.db` (local, no network access)
4. **Output**: readable summary for LLM context

---

## CLI Entry Point

```bash
# Create diagnosis (Deutsch)
python medizin_daten_core.py add-diagnosis "Hypertension" [--icd I10] [--note "note"]

# List diagnoses (Deutsch)
python medizin_daten_core.py diagnoses

# Record symptom (Deutsch)
python medizin_daten_core.py add-symptom "Headache" [--severity 7] [--date 2026-06-22] [--note "..."]

# Symptom history for a name (Deutsch)
python medizin_daten_core.py symptom-history "Headache" [--limit 30]

# Plan examination (Deutsch)
python medizin_daten_core.py add-exam "Blood count" [--date 2026-07-01] [--note "fasting"]

# Upcoming examinations (Deutsch)
python medizin_daten_core.py exams [--upcoming]

# Alternative store (e.g. for tests) (Deutsch)
python medizin_daten_core.py --store /tmp/med_test.db diagnoses --dry-run
```

---

## Store

| Property | Value |
|---|---|
| Type | SQLite |
| Path (default) | `skills/assist/medizin-daten/store.db` |
| Override | `--store <path>` or env `MEDIZIN_STORE` |
| Tables | `diagnoses`, `symptoms`, `examination_plans` |

### Schema

```sql
CREATE TABLE IF NOT EXISTS diagnoses (
    id          TEXT PRIMARY KEY,     -- UUID (short: 8 hex)
    name        TEXT NOT NULL,        -- name (e.g. "Hypertension")
    icd_code    TEXT,                 -- ICD-10 code optional (e.g. "I10")
    onset_date  TEXT,                 -- onset (ISO-8601, optional)
    status      TEXT DEFAULT 'aktiv', -- aktiv | remission | abgeschlossen
    note        TEXT,                 -- free-text note
    created_at  TEXT NOT NULL,
    updated_at  TEXT NOT NULL
);

CREATE TABLE IF NOT EXISTS symptoms (
    id           TEXT PRIMARY KEY,
    diagnosis_id TEXT REFERENCES diagnoses(id),  -- optional: assignment
    name         TEXT NOT NULL,       -- name (e.g. "Headache")
    severity     INTEGER,             -- 1–10 scale (optional)
    recorded_at  TEXT NOT NULL,       -- ISO-8601 timestamp
    note         TEXT
);

CREATE TABLE IF NOT EXISTS examination_plans (
    id           TEXT PRIMARY KEY,
    diagnosis_id TEXT REFERENCES diagnoses(id),  -- optional: assignment
    exam_name    TEXT NOT NULL,       -- examination name
    planned_date TEXT,                -- planned date (ISO-8601)
    done_date    TEXT,                -- completed on (NULL = pending)
    note         TEXT,
    created_at   TEXT NOT NULL
);
```

---

## Attitude

- No medical recommendations, no diagnosis by the skill.
- ICD-10 codes are stored as free text — no validation against an external database.
- Severity scale 1–10 is user-subjective.
- Missing values (date, severity) are always allowed — the notebook principle applies.

---

## Privacy (Privacy Gate)

> **WARNING: Medical data is particularly sensitive.**

- `store.db` contains highly sensitive health data — **never commit to Git**.
- **No network access** — all operations run entirely locally.
- **No sharing** with external services, no sync with cloud backends.
- Backup recommendation: encrypted local backup (e.g. `age`/`gpg`).
- The skill checks at startup whether `store.db` is outside the local file system
  and issues a warning if the path is in a sync folder (OneDrive etc.).
- `~/.gitignore_global` or local `.gitignore` should exclude `store.db`.

---

## Related Resources

- Skill `assist/gesundheit` — general health assistance (not medical data)
- MediPlaner (`tools/module-installer` → `mediplaner`) — medication management (separate programme)

---

## Änderungsprotokoll

| Version | Date | Change |
|---|---|---|
| 0.1.0 | 2026-06-22 | Initial creation — custom design, privacy gate, 3-table schema |