Immutable. This exact content is served forever at /api/v1/blob/35def6ee83c159b9.
---
name: medizin-daten
version: 0.1.0
type: assist
author: ellmos-ai
created: 2026-06-22
updated: 2026-06-22
description: >
Lokale, private Erfassung medizinischer Daten: Diagnosen, Symptomverläufe
und Untersuchungspläne. Kein BACH-Origin — Eigenentwurf mit eigenem
SQLite-Store. Strikt lokal, keine Cloud-Übertragung.
standalone: true
anthropic_compatible: true
bach_compatible: false
bach_origin: false
category: assist
tags:
- medizin
- diagnose
- symptome
- gesundheit
- privat
- lokal
language: de
status: active
dependencies:
tools: []
services: []
protocols: []
python: []
provenance:
origin: eigenentwurf
origin_path: ""
origin_version: ""
origin_repo: ""
origin_license: MIT
last_sync_from_origin: ""
notes: >
Kein BACH-Origin. Skill vollständig neu konzipiert. Kein bestehendes
Implementierungs-Vorbild im Ökosystem gefunden.
---
## Zweck
Medizinische Eigendaten sicher und lokal erfassen: Diagnosen (ICD-10-Code
optional), Symptomverläufe mit Datumsreihen und Untersuchungspläne. Alle
Daten bleiben ausschließlich lokal in `medizin-daten/store.db`.
Der Skill ersetzt keine ärztliche Beratung und trifft keine medizinischen
Aussagen — er ist ein strukturiertes Notizbuch für persönliche Gesundheitsdaten.
---
## Trigger
| Phrase | Aktion |
|---|---|
| „Diagnose erfassen" | Neue Diagnose anlegen |
| „Diagnose [Name] hinzufügen" | Benannte Diagnose anlegen |
| „Symptomverlauf" | Symptome für heute erfassen |
| „Symptom [Name] erfassen" | Einzelnes Symptom eintragen |
| „Untersuchungsplan" | Nächste Termine/Untersuchungen anzeigen |
| „Termin hinzufügen" | Untersuchungstermin eintragen |
| „Zeig meine Diagnosen" | Diagnosenliste ausgeben |
---
## Workflow
1. **Modus erkennen**: Diagnose / Symptom / Untersuchungsplan
2. **Eingabe strukturieren**: Datum, Bezeichnung, Notizen, optionaler ICD-10-Code
3. **Speichern**: In `store.db` (lokal, kein Netzwerkzugriff)
4. **Ausgeben**: Lesbare Zusammenfassung für LLM-Kontext
---
## CLI-Einstieg
```bash
# Diagnose anlegen
python medizin_daten_core.py add-diagnosis "Hypertonie" [--icd I10] [--note "Anmerkung"]
# Diagnosen auflisten
python medizin_daten_core.py diagnoses
# Symptom erfassen
python medizin_daten_core.py add-symptom "Kopfschmerzen" [--severity 7] [--date 2026-06-22] [--note "..."]
# Symptomverlauf für eine Bezeichnung
python medizin_daten_core.py symptom-history "Kopfschmerzen" [--limit 30]
# Untersuchung planen
python medizin_daten_core.py add-exam "Blutbild" [--date 2026-07-01] [--note "nüchtern"]
# Anstehende Untersuchungen
python medizin_daten_core.py exams [--upcoming]
# Alternativer Store (z.B. für Tests)
python medizin_daten_core.py --store /tmp/med_test.db diagnoses --dry-run
```
---
## Store
| Eigenschaft | Wert |
|---|---|
| Typ | SQLite |
| Pfad (Standard) | `skills/assist/medizin-daten/store.db` |
| Override | `--store <pfad>` oder Env `MEDIZIN_STORE` |
| Tabellen | `diagnoses`, `symptoms`, `examination_plans` |
### Schema
```sql
CREATE TABLE IF NOT EXISTS diagnoses (
id TEXT PRIMARY KEY, -- UUID (kurz: 8 Hex)
name TEXT NOT NULL, -- Bezeichnung (z.B. "Hypertonie")
icd_code TEXT, -- ICD-10-Code optional (z.B. "I10")
onset_date TEXT, -- Beginn (ISO-8601, optional)
status TEXT DEFAULT 'aktiv', -- aktiv | remission | abgeschlossen
note TEXT, -- Freitext-Notiz
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: Zuordnung
name TEXT NOT NULL, -- Bezeichnung (z.B. "Kopfschmerzen")
severity INTEGER, -- 1–10 Skala (optional)
recorded_at TEXT NOT NULL, -- ISO-8601 Zeitstempel
note TEXT
);
CREATE TABLE IF NOT EXISTS examination_plans (
id TEXT PRIMARY KEY,
diagnosis_id TEXT REFERENCES diagnoses(id), -- optional: Zuordnung
exam_name TEXT NOT NULL, -- Untersuchungsbezeichnung
planned_date TEXT, -- Geplantes Datum (ISO-8601)
done_date TEXT, -- Durchgeführt am (NULL = ausstehend)
note TEXT,
created_at TEXT NOT NULL
);
```
---
## Haltung
- Keine medizinischen Empfehlungen, keine Diagnosestellung durch den Skill.
- ICD-10-Codes werden als Freitext gespeichert — keine Validierung gegen eine externe Datenbank.
- Severity-Skala 1–10 ist nutzer-subjektiv.
- Fehlende Werte (Datum, Schweregrad) sind immer erlaubt — das Notizbuch-Prinzip gilt.
---
## Datenschutz (Privacy-Gate)
> **WARNUNG: Medizinische Daten sind besonders schützenswert.**
- `store.db` enthält höchst sensible Gesundheitsdaten — **niemals in Git committen**.
- **Kein Netzwerkzugriff** — alle Operationen laufen vollständig lokal.
- **Keine Weitergabe** an externe Dienste, keine Sync mit Cloud-Backends.
- Backup-Empfehlung: Verschlüsseltes lokales Backup (z.B. `age`/`gpg`).
- Der Skill prüft beim Start, ob `store.db` außerhalb des lokalen Dateisystems liegt,
und gibt eine Warnung aus wenn der Pfad in einem Sync-Ordner (OneDrive etc.) liegt.
- `~/.gitignore_global` oder lokales `.gitignore` sollte `store.db` ausschließen.
---
## Verwandte Ressourcen
- Skill `assist/gesundheit` — allgemeine Gesundheitsassistenz (nicht medizinische Daten)
- MediPlaner (`tools/module-installer` → `mediplaner`) — Medikamenten-Verwaltung (separates Programm)
---
## Changelog
| Version | Datum | Änderung |
|---|---|---|
| 0.1.0 | 2026-06-22 | Erstanlage — Eigenentwurf, Privacy-Gate, 3-Tabellen-Schema |