diff --git a/mac-worker/profiles/angehoerigengespraech.yaml b/mac-worker/profiles/angehoerigengespraech.yaml new file mode 100644 index 0000000..79d4686 --- /dev/null +++ b/mac-worker/profiles/angehoerigengespraech.yaml @@ -0,0 +1,62 @@ +name: angehoerigengespraech +display_name: Angehörigengespräch +language: de + +summary_prompt: | + Du bist Pflege-Assistent. Strukturiere das Angehörigengespräch als JSON: + + - "resident": Bewohner/in + - "relative": Angehörige/r + - "relationship": Beziehung (z. B. "Tochter", "Ehemann") + - "channel": "persönlich" / "telefonisch" / "videocall" + - "summary": Gesprächs-Zusammenfassung in 2-4 Sätzen + - "topics": besprochene Themen (Liste) + - "wishes": Wünsche / Anliegen (Liste) + - "complaints": Beschwerden / Kritik (Liste) + - "agreements": Vereinbarungen (Liste) + - "next_contact": geplanter Folgekontakt oder leer + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein Angehörigengesprächs-Protokoll als JSON mit: + - "title", "date", "resident", "relative", "relationship" + - "channel", "documented_by" + - "summary" + - "topics" (Liste), "wishes" (Liste), "complaints" (Liste) + - "agreements" (Liste), "next_contact" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Angehörigengespräch + meta: + - { key: date, label: "Datum" } + - { key: resident, label: "Bewohner/in" } + - { key: relative, label: "Angehörige/r" } + - { key: relationship, label: "Beziehung" } + - { key: channel, label: "Kontaktart" } + - { key: documented_by, label: "Dokumentiert von" } + - { key: next_contact, label: "Folgekontakt" } + sections: + - { key: summary, label: "Gesprächsverlauf", type: text } + - { key: topics, label: "Themen", type: list } + - { key: wishes, label: "Wünsche", type: list } + - { key: complaints, label: "Beschwerden", type: list } + - { key: agreements, label: "Vereinbarungen", type: list } diff --git a/mac-worker/profiles/biografie.yaml b/mac-worker/profiles/biografie.yaml new file mode 100644 index 0000000..8c6c434 --- /dev/null +++ b/mac-worker/profiles/biografie.yaml @@ -0,0 +1,68 @@ +name: biografie +display_name: Biografie-Erfassung +language: de + +summary_prompt: | + Du bist Assistent für Biografie-Arbeit in der Pflege. Strukturiere als JSON: + + - "resident": Bewohner/in + - "birth_date": Geburtsdatum (YYYY-MM-DD) oder leer + - "birth_place": Geburtsort oder leer + - "life_story": Lebenslauf in 4-8 Sätzen (Kindheit, Beruf, Familie, prägende Ereignisse) + - "profession": Beruf(e) (Liste) + - "family": Familienangaben (kurz) + - "preferences": {"food": [], "music": [], "hobbies": [], "tv_books": []} + - "dislikes": Abneigungen / Tabuthemen (Liste) + - "daily_routine": Wünsche zur Tagesstruktur (Liste) + - "important_persons": wichtige Bezugspersonen (Liste {"name","relationship"}) + - "religion": Konfession / Spiritualität oder leer + + Wichtig: Nur erfassen was tatsächlich genannt wurde, nichts erfinden. + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle eine formelle Biografie-Erfassung als JSON mit: + - "title", "date", "resident", "birth_date", "birth_place" + - "documented_by", "source" (z. B. "Bewohner", "Tochter", etc.) + - "life_story" + - "profession", "family", "religion" + - "preferences" (dict), "dislikes" (Liste) + - "daily_routine" (Liste) + - "important_persons" (Liste {"name","relationship"}) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Biografie-Erfassung + meta: + - { key: date, label: "Datum (Doku)" } + - { key: resident, label: "Bewohner/in" } + - { key: birth_date, label: "Geburtsdatum" } + - { key: birth_place, label: "Geburtsort" } + - { key: source, label: "Quelle" } + - { key: documented_by, label: "Dokumentiert von" } + - { key: religion, label: "Konfession" } + sections: + - { key: life_story, label: "Lebenslauf", type: text } + - { key: profession, label: "Beruf", type: list } + - { key: family, label: "Familie", type: text } + - { key: preferences, label: "Vorlieben", type: text } + - { key: dislikes, label: "Abneigungen", type: list } + - { key: daily_routine, label: "Tagesstruktur-Wünsche", type: list } + - { key: important_persons, label: "Bezugspersonen", type: tasks } diff --git a/mac-worker/profiles/brainstorm.yaml b/mac-worker/profiles/brainstorm.yaml new file mode 100644 index 0000000..7599650 --- /dev/null +++ b/mac-worker/profiles/brainstorm.yaml @@ -0,0 +1,56 @@ +name: brainstorm +display_name: Brainstorming +language: de + +summary_prompt: | + Du bist Moderationsassistent. Strukturiere die Brainstorming-Session als JSON: + + - "topic": Thema der Session + - "participants": Teilnehmer (Liste, wenn aus Stimmen unterscheidbar) + - "summary": kurzer Überblick + - "ideas": alle genannten Ideen (Liste, je ein Satz) + - "prioritized": priorisierte / favorisierte Ideen (Liste) + - "decisions": getroffene Entscheidungen (Liste) + - "tasks": Liste {"owner", "task"} + - "open_questions": offene Fragen (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein Brainstorming-Protokoll als JSON mit: + - "title", "date", "topic", "participants" + - "summary", "ideas", "prioritized", "decisions" + - "tasks": Liste {"owner", "task"} + - "open_questions" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Brainstorming + meta: + - { key: date, label: "Datum" } + - { key: topic, label: "Thema" } + sections: + - { key: participants, label: "Teilnehmer", type: list } + - { key: summary, label: "Überblick", type: text } + - { key: ideas, label: "Alle Ideen", type: list } + - { key: prioritized, label: "Favorisiert", type: list } + - { key: decisions, label: "Entscheidungen", type: list } + - { key: tasks, label: "Aufgaben", type: tasks } + - { key: open_questions, label: "Offene Fragen", type: list } diff --git a/mac-worker/profiles/incident-report.yaml b/mac-worker/profiles/incident-report.yaml new file mode 100644 index 0000000..04012f8 --- /dev/null +++ b/mac-worker/profiles/incident-report.yaml @@ -0,0 +1,60 @@ +name: incident-report +display_name: Störungsmeldung / Incident +language: de + +summary_prompt: | + Du bist IT-Incident-Assistent. Strukturiere den Bericht als JSON: + + - "severity": "P1" / "P2" / "P3" / "P4" (P1 = kritisch) + - "summary": einzeiliger Kurztext (Was ist passiert?) + - "affected_systems": betroffene Systeme / Services (Liste) + - "affected_users": betroffene User / Anzahl, oder leer + - "started_at": Beginn (Uhrzeit/Datum) falls bekannt + - "ended_at": Ende (Uhrzeit/Datum) falls bekannt + - "symptom": konkrete Symptome (Liste) + - "root_cause": Ursache (kurz) + - "fix": Fix / Workaround (kurz) + - "prevention": Präventionsmaßnahmen (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle einen formellen Störungsbericht als JSON mit: + - "title", "date", "severity" + - "summary", "affected_systems", "affected_users" + - "started_at", "ended_at" + - "symptom" (Liste), "root_cause", "fix", "prevention" (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Störungsbericht + meta: + - { key: date, label: "Datum" } + - { key: severity, label: "Schweregrad" } + - { key: started_at, label: "Beginn" } + - { key: ended_at, label: "Ende" } + - { key: affected_users, label: "Betroffene User" } + sections: + - { key: summary, label: "Kurzbeschreibung", type: text } + - { key: affected_systems, label: "Betroffene Systeme", type: list } + - { key: symptom, label: "Symptome", type: list } + - { key: root_cause, label: "Ursache", type: text } + - { key: fix, label: "Fix / Workaround", type: text } + - { key: prevention, label: "Prävention", type: list } diff --git a/mac-worker/profiles/interview.yaml b/mac-worker/profiles/interview.yaml new file mode 100644 index 0000000..711d2da --- /dev/null +++ b/mac-worker/profiles/interview.yaml @@ -0,0 +1,60 @@ +name: interview +display_name: Bewerbergespräch +language: de + +summary_prompt: | + Du bist HR-Assistent. Analysiere das Bewerbergespräch und liefere ein JSON mit: + + - "candidate": Name des Bewerbers/der Bewerberin + - "position": ausgeschriebene Stelle + - "summary": Gesamteindruck in 3-5 Sätzen + - "qualifications": Qualifikationen / Erfahrungen (Liste) + - "strengths": Stärken (Liste) + - "weaknesses": Schwächen / Lücken (Liste) + - "salary_expectation": Gehaltsvorstellung oder leer + - "availability": frühestes Eintrittsdatum oder leer + - "recommendation": "ja" / "nein" / "zweite Runde" / "unklar" + - "next_steps": Liste + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein formelles Bewerbergespräch-Protokoll als JSON mit: + - "title", "date", "candidate", "position", "interviewers" (Liste) + - "summary", "qualifications", "strengths", "weaknesses" + - "salary_expectation", "availability", "recommendation", "next_steps" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Bewerbergespräch + meta: + - { key: date, label: "Datum" } + - { key: candidate, label: "Bewerber/in" } + - { key: position, label: "Position" } + sections: + - { key: interviewers, label: "Anwesende", type: list } + - { key: summary, label: "Gesamteindruck", type: text } + - { key: qualifications, label: "Qualifikationen", type: list } + - { key: strengths, label: "Stärken", type: list } + - { key: weaknesses, label: "Schwächen / Lücken", type: list } + - { key: salary_expectation, label: "Gehaltsvorstellung", type: text } + - { key: availability, label: "Verfügbarkeit", type: text } + - { key: recommendation, label: "Empfehlung", type: text } + - { key: next_steps, label: "Nächste Schritte", type: list } diff --git a/mac-worker/profiles/memo.yaml b/mac-worker/profiles/memo.yaml new file mode 100644 index 0000000..d11e50b --- /dev/null +++ b/mac-worker/profiles/memo.yaml @@ -0,0 +1,48 @@ +name: memo +display_name: Sprachnotiz / Memo +language: de + +summary_prompt: | + Du bist ein Assistent für kurze Sprachnotizen. Strukturiere die Notiz als JSON: + + - "subject": Kurzer Betreff (max. 8 Worte) + - "recipient": Empfänger / Adressat oder leer + - "summary": Kerninhalt in 2-4 Sätzen + - "key_points": Wichtigste Stichpunkte (Liste) + - "next_steps": Nächste Schritte (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Notiz: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle aus den Daten eine formatierte Sprachnotiz als JSON mit: + - "title", "date" (YYYY-MM-DD oder leer), "subject", "recipient" + - "summary", "key_points" (Liste), "next_steps" (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Notiz: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Sprachnotiz + meta: + - { key: date, label: "Datum" } + - { key: subject, label: "Betreff" } + - { key: recipient, label: "Empfänger" } + sections: + - { key: summary, label: "Inhalt", type: text } + - { key: key_points, label: "Stichpunkte", type: list } + - { key: next_steps, label: "Nächste Schritte",type: list } diff --git a/mac-worker/profiles/one-on-one.yaml b/mac-worker/profiles/one-on-one.yaml new file mode 100644 index 0000000..5fa49eb --- /dev/null +++ b/mac-worker/profiles/one-on-one.yaml @@ -0,0 +1,58 @@ +name: one-on-one +display_name: Mitarbeitergespräch (1:1) +language: de + +summary_prompt: | + Du bist ein präziser Assistent für 1:1-Gespräche. Strukturiere das Gespräch als JSON: + + - "employee": Mitarbeiter/in + - "manager": Vorgesetzte/r oder leer + - "summary": Zusammenfassung in 3-5 Sätzen + - "topics": Liste der besprochenen Themen + - "agreements": Liste konkreter Vereinbarungen + - "blockers": Hindernisse / Probleme (Liste) + - "development_goals": Entwicklungsziele (Liste) + - "tasks": Liste {"owner", "task"} + - "next_meeting": Folgetermin oder leer + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein 1:1-Protokoll als JSON mit: + - "title", "date", "employee", "manager" + - "summary", "topics", "agreements", "blockers", "development_goals" + - "tasks": Liste {"owner", "task"} + - "next_meeting" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Mitarbeitergespräch + meta: + - { key: date, label: "Datum" } + - { key: employee, label: "Mitarbeiter/in" } + - { key: manager, label: "Vorgesetzte/r" } + sections: + - { key: summary, label: "Zusammenfassung", type: text } + - { key: topics, label: "Themen", type: list } + - { key: agreements, label: "Vereinbarungen", type: list } + - { key: blockers, label: "Blocker / Probleme", type: list } + - { key: development_goals, label: "Entwicklungsziele", type: list } + - { key: tasks, label: "Aufgaben", type: tasks } + - { key: next_meeting, label: "Folgetermin", type: text } diff --git a/mac-worker/profiles/pflegedoku.yaml b/mac-worker/profiles/pflegedoku.yaml new file mode 100644 index 0000000..a6ac7ab --- /dev/null +++ b/mac-worker/profiles/pflegedoku.yaml @@ -0,0 +1,64 @@ +name: pflegedoku +display_name: Pflegedokumentation (Bewohner) +language: de + +summary_prompt: | + Du bist Pflegedokumentations-Assistent. Strukturiere die Tagesdoku als JSON: + + - "resident": Bewohner/in + - "shift": Schicht (Früh/Spät/Nacht) oder leer + - "vital_signs": {"rr","puls","temp","bz","sao2"} — nur befüllen wenn genannt + - "mobility": Mobilität / Lagerung (kurz) + - "nutrition": Nahrung / Trinken (Beobachtungen) + - "elimination": Ausscheidungen (kurz) + - "mood": Stimmung / Verhalten + - "interventions": durchgeführte pflegerische Maßnahmen (Liste) + - "observations": Auffälligkeiten / Beobachtungen (Liste) + - "doctor_orders": ärztliche Anordnungen (Liste) + - "follow_up": Folgeaufgaben (Liste) + + Wichtig: Verwende ausschließlich genannte Werte, erfinde keine Vitalwerte. + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle eine formelle Pflegedokumentation als JSON mit: + - "title", "date", "resident", "shift", "documented_by" + - "vital_signs" (dict), "mobility", "nutrition", "elimination", "mood" + - "interventions" (Liste), "observations" (Liste), "doctor_orders" (Liste) + - "follow_up" (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Pflegedokumentation + meta: + - { key: date, label: "Datum" } + - { key: resident, label: "Bewohner/in" } + - { key: shift, label: "Schicht" } + - { key: documented_by, label: "Dokumentiert von" } + sections: + - { key: vital_signs, label: "Vitalwerte", type: text } + - { key: mobility, label: "Mobilität / Lagerung", type: text } + - { key: nutrition, label: "Nahrung / Trinken", type: text } + - { key: elimination, label: "Ausscheidungen", type: text } + - { key: mood, label: "Stimmung", type: text } + - { key: interventions, label: "Pflegerische Maßnahmen", type: list } + - { key: observations, label: "Beobachtungen", type: list } + - { key: doctor_orders, label: "Ärztliche Anordnungen", type: list } + - { key: follow_up, label: "Folgeaufgaben", type: list } diff --git a/mac-worker/profiles/phone-call.yaml b/mac-worker/profiles/phone-call.yaml new file mode 100644 index 0000000..1a713f2 --- /dev/null +++ b/mac-worker/profiles/phone-call.yaml @@ -0,0 +1,57 @@ +name: phone-call +display_name: Telefonnotiz +language: de + +summary_prompt: | + Du bist ein präziser Assistent für Telefonnotizen. Analysiere das Gespräch + und liefere ein JSON-Objekt mit: + + - "caller": Anrufer (Name oder "n/a") + - "company": Firma des Anrufers oder leer + - "datetime": Datum/Uhrzeit falls aus dem Transkript ableitbar, sonst leer + - "topic": Anliegen in einem Satz + - "summary": Gesprächs-Zusammenfassung in 2-4 Sätzen + - "agreement": Was wurde vereinbart + - "tasks": Liste von Aufgaben (jeweils {"owner", "task"}) + - "callback": Wiedervorlage / Rückruftermin oder leer + + Antworte AUSSCHLIESSLICH mit JSON, kein Markdown-Codeblock. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle aus den folgenden Daten eine formelle Telefonnotiz als JSON mit: + + - "title", "date" (YYYY-MM-DD), "caller", "company", "topic" + - "summary", "agreement" + - "tasks": Liste von {"owner", "task"} + - "callback" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Telefonnotiz + meta: + - { key: date, label: "Datum" } + - { key: caller, label: "Anrufer" } + - { key: company, label: "Firma" } + - { key: topic, label: "Anliegen" } + sections: + - { key: summary, label: "Gesprächsverlauf", type: text } + - { key: agreement, label: "Vereinbarung", type: text } + - { key: tasks, label: "Aufgaben", type: tasks } + - { key: callback, label: "Wiedervorlage", type: text } diff --git a/mac-worker/profiles/postmortem.yaml b/mac-worker/profiles/postmortem.yaml new file mode 100644 index 0000000..2a771f2 --- /dev/null +++ b/mac-worker/profiles/postmortem.yaml @@ -0,0 +1,57 @@ +name: postmortem +display_name: Postmortem / Outage-Analyse +language: de + +summary_prompt: | + Du bist Engineering-Assistent für Postmortems. Strukturiere die Analyse als JSON: + + - "incident_title": kurzer Vorfall-Titel + - "impact": geschäftliche Auswirkung (1-2 Sätze) + - "duration": Dauer (z. B. "2h 15min") oder leer + - "timeline": Zeitstrahl (Liste von {"time", "speaker": "system" oder Person, "text": "Ereignis"}) + - "root_cause": Root-Cause (kurz) + - "what_went_well": positive Aspekte (Liste) + - "what_went_wrong": negative Aspekte (Liste) + - "action_items": Liste {"owner", "task"} + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle einen formellen Postmortem-Report als JSON mit: + - "title", "date", "incident_title", "impact", "duration" + - "timeline" (Liste {"time","speaker","text"} — max. 30 Einträge) + - "root_cause" + - "what_went_well" (Liste), "what_went_wrong" (Liste) + - "action_items" (Liste {"owner","task"}) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Postmortem + meta: + - { key: date, label: "Datum" } + - { key: incident_title, label: "Vorfall" } + - { key: duration, label: "Dauer" } + sections: + - { key: impact, label: "Auswirkung", type: text } + - { key: timeline, label: "Zeitstrahl", type: transcript } + - { key: root_cause, label: "Root-Cause", type: text } + - { key: what_went_well, label: "Was lief gut", type: list } + - { key: what_went_wrong, label: "Was lief schlecht", type: list } + - { key: action_items, label: "Action-Items", type: tasks } diff --git a/mac-worker/profiles/sales-call.yaml b/mac-worker/profiles/sales-call.yaml new file mode 100644 index 0000000..6d65908 --- /dev/null +++ b/mac-worker/profiles/sales-call.yaml @@ -0,0 +1,62 @@ +name: sales-call +display_name: Vertriebsgespräch +language: de + +summary_prompt: | + Du bist Sales-Assistent. Strukturiere das Vertriebsgespräch als JSON: + + - "customer": Kundenname / Firma + - "contact": Ansprechpartner + - "decider": Entscheider/in (falls bekannt) + - "summary": Gesprächs-Zusammenfassung in 3-5 Sätzen + - "needs": festgestellte Bedarfe (Liste) + - "budget": Budget-Rahmen oder leer + - "timeline": gewünschter Zeitrahmen oder leer + - "competitors": genannte Wettbewerber (Liste) + - "objections": Einwände / Vorbehalte (Liste) + - "next_step": konkreter nächster Schritt (Angebot, Termin, etc.) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein Vertriebs-Protokoll als JSON mit: + - "title", "date", "customer", "contact", "decider", "salesperson" + - "summary" + - "needs" (Liste), "budget", "timeline" + - "competitors" (Liste), "objections" (Liste) + - "next_step" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Vertriebsgespräch + meta: + - { key: date, label: "Datum" } + - { key: customer, label: "Kunde" } + - { key: contact, label: "Ansprechpartner" } + - { key: decider, label: "Entscheider" } + - { key: salesperson, label: "Vertrieb" } + - { key: budget, label: "Budget" } + - { key: timeline, label: "Timeline" } + sections: + - { key: summary, label: "Zusammenfassung", type: text } + - { key: needs, label: "Bedarfe", type: list } + - { key: competitors, label: "Wettbewerber", type: list } + - { key: objections, label: "Einwände", type: list } + - { key: next_step, label: "Nächster Schritt", type: text } diff --git a/mac-worker/profiles/schichtuebergabe.yaml b/mac-worker/profiles/schichtuebergabe.yaml new file mode 100644 index 0000000..a0143e6 --- /dev/null +++ b/mac-worker/profiles/schichtuebergabe.yaml @@ -0,0 +1,57 @@ +name: schichtuebergabe +display_name: Schichtübergabe (Pflege) +language: de + +summary_prompt: | + Du bist Pflegedokumentations-Assistent. Strukturiere die Schichtübergabe als JSON: + + - "shift": "Frühdienst" / "Spätdienst" / "Nachtdienst" + - "ward": Wohnbereich / Station oder leer + - "summary": kurzer Gesamtüberblick (2-4 Sätze) + - "residents": Liste pro Bewohner: {"name", "status", "notes"} + - "incidents": besondere Vorkommnisse / Vorfälle (Liste) + - "open_tasks": offene Aufgaben für die nächste Schicht (Liste) + - "communications": Anrufe / Angehörige / Arzt-Kontakte (Liste) + + Wichtig: Verwende ausschließlich die im Diktat genannten Namen, erfinde keine. + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein formelles Schichtübergabe-Protokoll als JSON mit: + - "title", "date", "shift", "ward", "handed_over_by", "received_by" + - "summary" + - "residents" (Liste {"name","status","notes"}) + - "incidents" (Liste), "open_tasks" (Liste), "communications" (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Schichtübergabe + meta: + - { key: date, label: "Datum" } + - { key: shift, label: "Schicht" } + - { key: ward, label: "Wohnbereich" } + - { key: handed_over_by, label: "Übergeben von" } + - { key: received_by, label: "Übernommen von" } + sections: + - { key: summary, label: "Gesamtüberblick", type: text } + - { key: residents, label: "Bewohner", type: tasks } + - { key: incidents, label: "Besondere Vorkommnisse", type: list } + - { key: open_tasks, label: "Offene Aufgaben", type: list } + - { key: communications, label: "Kommunikation / Kontakte", type: list } diff --git a/mac-worker/profiles/service-ticket.yaml b/mac-worker/profiles/service-ticket.yaml new file mode 100644 index 0000000..1e72f27 --- /dev/null +++ b/mac-worker/profiles/service-ticket.yaml @@ -0,0 +1,61 @@ +name: service-ticket +display_name: Service-Einsatz / Ticket +language: de + +summary_prompt: | + Du bist Assistent für IT-Service-Dokumentation. Strukturiere den Einsatz als JSON: + + - "customer": Kundenname / Firma + - "contact": Ansprechpartner vor Ort oder leer + - "system": betroffenes System / Gerät + - "problem": Problem-Beschreibung in 1-2 Sätzen + - "actions": durchgeführte Arbeiten (Liste) + - "materials": eingesetztes Material / Ersatzteile (Liste) + - "remaining": verbleibende offene Punkte (Liste) + - "resolution": "gelöst" / "teilweise" / "offen" + - "duration_hours": Aufwand in Stunden (Zahl) oder leer + - "next_steps": Folgetermin / nächste Schritte oder leer + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle einen formellen Service-Einsatzbericht als JSON mit: + - "title", "date", "customer", "contact", "system", "technician" + - "problem", "actions" (Liste), "materials" (Liste) + - "remaining" (Liste), "resolution", "duration_hours" + - "next_steps" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Service-Einsatz + meta: + - { key: date, label: "Datum" } + - { key: customer, label: "Kunde" } + - { key: contact, label: "Ansprechpartner" } + - { key: system, label: "System" } + - { key: technician, label: "Techniker" } + - { key: duration_hours, label: "Aufwand (Std)" } + - { key: resolution, label: "Status" } + sections: + - { key: problem, label: "Problem", type: text } + - { key: actions, label: "Durchgeführte Arbeiten", type: list } + - { key: materials, label: "Material / Ersatzteile", type: list } + - { key: remaining, label: "Offene Punkte", type: list } + - { key: next_steps, label: "Nächste Schritte", type: text } diff --git a/mac-worker/profiles/site-survey.yaml b/mac-worker/profiles/site-survey.yaml new file mode 100644 index 0000000..78ef0b1 --- /dev/null +++ b/mac-worker/profiles/site-survey.yaml @@ -0,0 +1,65 @@ +name: site-survey +display_name: IT-Bestandsaufnahme +language: de + +summary_prompt: | + Du bist Assistent für IT-Site-Surveys. Strukturiere die Bestandsaufnahme als JSON: + + - "customer": Kundenname + - "location": Standort / Adresse + - "summary": Gesamteindruck in 2-4 Sätzen + - "hardware": Liste der erfassten Hardware (z. B. "Server Dell R740", "Switch HP 2530-24") + - "software": Liste eingesetzter Software / Versionen + - "licenses": vorhandene Lizenzen (Liste) + - "network": Netzwerk-Topologie / Auffälligkeiten (kurz) + - "backup_status": Backup-Lage (kurz) + - "risks": identifizierte Risiken (Liste) + - "recommendations": Empfehlungen (Liste) + - "estimated_effort": geschätzter Aufwand für Umsetzung oder leer + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Transkript: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle einen formellen Site-Survey-Report als JSON mit: + - "title", "date", "customer", "location", "surveyor" + - "summary" + - "hardware", "software", "licenses" (Listen) + - "network", "backup_status" + - "risks" (Liste), "recommendations" (Liste) + - "estimated_effort" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Transkript: + """ + {transcript} + """ + +docx: + title_field: title + default_title: IT-Bestandsaufnahme + meta: + - { key: date, label: "Datum" } + - { key: customer, label: "Kunde" } + - { key: location, label: "Standort" } + - { key: surveyor, label: "Aufgenommen von" } + sections: + - { key: summary, label: "Gesamteindruck", type: text } + - { key: hardware, label: "Hardware", type: list } + - { key: software, label: "Software", type: list } + - { key: licenses, label: "Lizenzen", type: list } + - { key: network, label: "Netzwerk", type: text } + - { key: backup_status, label: "Backup", type: text } + - { key: risks, label: "Risiken", type: list } + - { key: recommendations, label: "Empfehlungen", type: list } + - { key: estimated_effort, label: "Geschätzter Aufwand", type: text } diff --git a/mac-worker/profiles/sturzbericht.yaml b/mac-worker/profiles/sturzbericht.yaml new file mode 100644 index 0000000..e607acb --- /dev/null +++ b/mac-worker/profiles/sturzbericht.yaml @@ -0,0 +1,65 @@ +name: sturzbericht +display_name: Sturz- / Vorfallbericht +language: de + +summary_prompt: | + Du bist Assistent für Vorfallberichte in der Pflege. Strukturiere als JSON: + + - "resident": Bewohner/in + - "incident_type": "Sturz" / "Verletzung" / "Sonstiges" + - "datetime": Zeitpunkt (Datum/Uhrzeit) falls genannt + - "location": Ort (z. B. "Bad", "Flur", "Bewohnerzimmer 12") + - "witness": Beobachter/in oder leer + - "course": Hergang in 2-4 Sätzen + - "injuries": festgestellte Verletzungen (Liste, oder "keine") + - "immediate_actions": Sofortmaßnahmen (Liste) + - "doctor_informed": "ja" / "nein" — wenn ja: wann/wer + - "family_informed": "ja" / "nein" — wenn ja: wann/wer + - "follow_up": Folgeaufgaben / Beobachtungsplan (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle einen formellen Sturz-/Vorfallbericht als JSON mit: + - "title", "date", "resident", "incident_type", "datetime", "location" + - "witness", "documented_by" + - "course" + - "injuries" (Liste), "immediate_actions" (Liste) + - "doctor_informed", "family_informed" + - "follow_up" (Liste) + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Sturzbericht + meta: + - { key: date, label: "Datum (Doku)" } + - { key: resident, label: "Bewohner/in" } + - { key: incident_type, label: "Art des Vorfalls" } + - { key: datetime, label: "Zeitpunkt Vorfall" } + - { key: location, label: "Ort" } + - { key: witness, label: "Beobachter/in" } + - { key: documented_by, label: "Dokumentiert von" } + - { key: doctor_informed, label: "Arzt informiert" } + - { key: family_informed, label: "Angehörige informiert" } + sections: + - { key: course, label: "Hergang", type: text } + - { key: injuries, label: "Verletzungen", type: list } + - { key: immediate_actions, label: "Sofortmaßnahmen", type: list } + - { key: follow_up, label: "Folgeaufgaben", type: list } diff --git a/mac-worker/profiles/visite.yaml b/mac-worker/profiles/visite.yaml new file mode 100644 index 0000000..c2dad4e --- /dev/null +++ b/mac-worker/profiles/visite.yaml @@ -0,0 +1,61 @@ +name: visite +display_name: Arztvisite +language: de + +summary_prompt: | + Du bist medizinischer Dokumentationsassistent. Strukturiere die Visite als JSON: + + - "resident": Bewohner/Patient + - "doctor": Arzt/Ärztin + - "speciality": Fachrichtung oder leer + - "summary": Visiten-Zusammenfassung in 2-4 Sätzen + - "findings": Befunde / aktuelle Beobachtungen (Liste) + - "diagnoses": Diagnosen (Liste — bevorzugt im Klartext, keine ICD-Codes erfinden) + - "orders": ärztliche Anordnungen (Liste) + - "medication_changes": Medikamentenänderungen (Liste {"action": "neu/ab/dosis", "drug", "dose"}) + - "next_visit": Folgevisite oder leer + + Wichtig: Medikamenten-Namen genau wie diktiert übernehmen, nichts erraten. + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + + Diktat: + """ + {transcript} + """ + +protocol_prompt: | + Erstelle ein Visiten-Protokoll als JSON mit: + - "title", "date", "resident", "doctor", "speciality", "documented_by" + - "summary" + - "findings" (Liste), "diagnoses" (Liste), "orders" (Liste) + - "medication_changes" (Liste {"action","drug","dose"}) + - "next_visit" + + Antworte AUSSCHLIESSLICH mit JSON. + + Titel: {title} + Bestehende Zusammenfassung: {summary_json} + + Diktat: + """ + {transcript} + """ + +docx: + title_field: title + default_title: Visiten-Protokoll + meta: + - { key: date, label: "Datum" } + - { key: resident, label: "Bewohner/Patient" } + - { key: doctor, label: "Arzt/Ärztin" } + - { key: speciality, label: "Fachrichtung" } + - { key: documented_by, label: "Dokumentiert von" } + - { key: next_visit, label: "Folgevisite" } + sections: + - { key: summary, label: "Zusammenfassung", type: text } + - { key: findings, label: "Befunde", type: list } + - { key: diagnoses, label: "Diagnosen", type: list } + - { key: orders, label: "Ärztliche Anordnungen", type: list } + - { key: medication_changes, label: "Medikamenten-Änderungen", type: tasks }