---
name: fps-autoprotocol
description: "FPS-AutoProtocol: Fachplanersitzung-/Fachplaner-Jourfix-Protokolle aus Teams-Transkript, Vorlageprotokoll und Projektkontext erstellen; fachlich bereinigt, baumanagement-tauglich, DOCX/PDF-verifiziert."
version: 1.0.0
author: Hermes Agent
license: MIT
metadata:
  hermes:
    tags: [fachplanersitzung, jourfix, autoprotocol, protocol, baumanagement, teams-transcript, docx, pdf, swiss-german]
---

# FPS-AutoProtocol – Fachplanersitzung / Fachplaner-Jourfix-Protokolle

Use this skill whenever the user asks to create, revise, finalise, or verify a **Fachplanersitzung**, **Fachplaner-Jourfix**, **FPS**, or **AutoProtocol** protocol from audio, Teams transcript, meeting notes, a manually prepared protocol, or an existing DOCX/PDF template.

If the user says **"nur transkribieren"** or **"nur Transkript"**, do not create a protocol. Return only the transcript in an easy-to-open document file.

## Goal

Create a professional, construction-management-ready protocol in **Swiss Hochdeutsch** that is:

- faithful to what was actually discussed;
- structured by Fachplaner/Gewerk/Traktandum rather than chronology;
- suitable for sending to planners, Bauherrschaft, PL/TL, Unternehmer, or internal project files;
- clear on decisions, open questions, risks, deadlines, responsibilities, and pendenzen;
- delivered as verified user-facing files when files are requested/implied.

## Source priority

Use sources in this order:

1. **Transcript/audio content = truth source** for what was actually said.
2. **Existing manual protocol / template = structure, participants, wording style, traktanden and formatting reference**, not unquestioned truth.
3. **Project context files** only for name recognition, abbreviations, project-specific terms, and consistency. Do not import unrelated facts unless supported by the meeting.
4. **User instructions in the current chat** override default layout and level of detail.

Never invent names, decisions, dates, deadlines, responsibilities, costs, or technical facts. Use `Unklar`, `Nicht erwähnt`, or `im Transkript nicht eindeutig` when needed.

## Prerequisite context check

Before final protocol generation, look for project context if the project is identifiable:

```text
~/jarvis_memory/work/projects/<project>/project.md
```

Use the smallest relevant context only. Do not dump raw project files into the answer.

## Standard workflow

### 1. Extract sources separately

- Extract Teams transcript / DOCX / MP4 transcript / audio transcription.
- Extract existing hand protocol or PDF/DOCX template separately.
- Preserve enough traceability from transcript: speaker, time, statement, and uncertain sections.
- If audio transcription is required, produce a cleaned transcript artifact when requested or implied.

### 2. Clean the transcript

For a `bereinigtes Transkript`:

- keep chronological speaker/time order;
- remove join/leave chatter, greetings, filler-only reactions, repeated confirmations, and obvious smalltalk;
- keep technical statements, decisions, questions, deadlines, costs, responsibilities, risks, contradictions;
- do not turn it into a summary;
- mark unclear audio/speaker content explicitly.

### 3. Reconcile template against transcript

When a manual protocol/template is provided:

- use it for layout, participant list, agenda/traktanden, and corporate style;
- verify every substantive point against the transcript;
- keep template points only if supported or clearly provided by the user as accepted context;
- add important discussed items missing from the template;
- remove unsupported assumptions, duplicated filler, and non-fachliche details;
- preserve the professional protocol tone, not raw spoken language.

### 4. Cluster by Fachplaner / topic

Do not follow the raw meeting chronology. Bundle repeated mentions into one clean section.

Typical FPS clusters:

- Architektur / Bauleitung / Gesamtkoordination
- Tragwerk / Statik / Engineering
- HLKSE / Elektro / Sanitär / Lüftung / Heizung / MSRL
- Brandschutz / Schallschutz / Bauphysik
- Fassade / Fenster / Dach / Abdichtung
- Werkplanung / Ausführungsplanung / Pläne / Schnittstellen
- Termine / Meilensteine / Planlieferungen
- Kosten / Nachträge / Vergaben / Unternehmer
- Qualität / PQM / Prüfungen / Abnahmen / Revisionsunterlagen
- Sicherheit / Baustellenlogistik / Montage / Gerüst / Kran
- Offene Entscheide / Bauherrschaft / Behörden
- Pendenzen / nächste Sitzung

### 5. Classify every relevant item

Internally classify each extracted item as one or more of:

- Information
- Entscheid
- offene Frage
- Pendenz
- Risiko / Chance
- Terminrelevanz
- Kostenrelevanz
- Qualitätsrelevanz
- Sicherheitsrelevanz
- Schnittstelle / Koordination
- Eskalation / Entscheidungsbedarf

Only put true decisions under `Entscheide`. Discussed options or tendencies go under offene Fragen, Risiken, or Pendenzen.

## Preferred protocol structure

Use a provided project/company template if available. Otherwise use:

```markdown
# Fachplanersitzung / Fachplaner-Jourfix Protokoll – <Projekt>

## 1. Kopfdaten
| Feld | Inhalt |
|---|---|
| Projekt | <Projekt / Unklar> |
| Sitzung | Fachplanersitzung / Fachplaner-Jourfix |
| Datum | <Datum / Unklar> |
| Ort / Medium | <Teams / vor Ort / Unklar> |
| Leitung | <Name / Unklar> |
| Protokoll | <Name / Hermes AutoProtocol> |
| Teilnehmer | <Namen/Firmen / Unklar> |
| Entschuldigt | <falls erwähnt> |
| Protokollbasis | <Audio / Teams-Transkript / Vorlageprotokoll / Projektkontext> |

## 2. Management Summary
- Max. 6–8 fachlich relevante Punkte.
- Fokus: kritische Entscheide, Terminlage, Planlieferungen, Schnittstellen, Risiken, Eskalationsbedarf.

## 3. Ampelstatus
| Bereich | Status | Begründung / Handlungsbedarf |
|---|---|---|
| Gesamtkoordination | Grün/Gelb/Rot/Unklar | ... |
| Termine / Planlieferungen | Grün/Gelb/Rot/Unklar | ... |
| Kosten / Nachträge | Grün/Gelb/Rot/Unklar | ... |
| Qualität / Planungssicherheit | Grün/Gelb/Rot/Unklar | ... |
| Schnittstellen Fachplaner | Grün/Gelb/Rot/Unklar | ... |
| Entscheide / Eskalation | Grün/Gelb/Rot/Unklar | ... |

## 4. Traktanden / Fachthemen
### 4.1 <Fachplaner/Gewerk/Thema>
- Sachstand
- Besprochene Punkte
- Offene Punkte / Schnittstellen
- Nächster Schritt

## 5. Termine / Planlieferungen
| Thema | Termin | Verantwortlich | Bemerkung |
|---|---|---|---|

## 6. Entscheide
| Entscheid | Kontext | Verantwortlich / Folge | Quelle/Sicherheit |
|---|---|---|---|

## 7. Offene Fragen
| Frage | Kontext | Klärung durch | Termin |
|---|---|---|---|

## 8. Risiken / kritische Punkte
| Thema | Risiko | Auswirkung | Massnahme / nächster Schritt |
|---|---|---|---|

## 9. Pendenzenliste
| Nr. | Pendenz | Verantwortlich | Termin | Priorität | Relevanz | Status |
|---|---|---|---|---|---|---|

## 10. Nächste Sitzung / Punkte für nächste Sitzung

## 11. Unklare oder widersprüchliche Punkte
```

## Content rules

1. **Keine Erfindungen.** Names, deadlines, responsibilities, decisions, and numbers only if stated or provided.
2. **Unklar statt raten.** Missing responsibility/date = `Unklar`.
3. **Swiss Hochdeutsch.** Sachlich, knapp, fachlich, OneNote-/DOCX-tauglich. No emojis in the protocol.
4. **No raw smalltalk.** Remove repetitions, filler, jokes, joining issues, and emotional reactions unless technically relevant.
5. **Pendenzen need action verbs.** Use actions like `prüfen`, `klären`, `liefern`, `abstimmen`, `entscheiden`, `nachführen`, `informieren`, `einholen`.
6. **Cluster repeated topics.** One consolidated section per topic, even if discussed multiple times.
7. **Separate evidence levels.** Keep decisions, assumptions, risks, questions, and pendenzen distinct.
8. **No artificial tables.** If no true decisions or risks exist, write `Keine explizit erwähnt` rather than fabricating rows.
9. **Termin-/Kosten-/Qualitätsrelevanz sichtbar machen.** Especially for plan deliveries, Nachträge, Schnittstellen, Abnahmen, Revisionsunterlagen, Behörden, and Bauherrschaft decisions.

## File deliverables

When the user asks for files, or when the workflow implies final deliverables:

1. Create final protocol as `.docx`.
2. Create matching `.pdf` from the final `.docx` using LibreOffice/headless conversion or equivalent.
3. If requested/implied, create `bereinigtes Transkript` as a separate `.docx`/`.pdf` artifact.
4. If an existing corporate/project DOCX template exists, use it as formatting source of truth where possible.
5. Keep internal Markdown only as a drafting/intermediate format unless the user asks for Markdown.

Important client-facing protocol rule: do **not** mention internal source basis such as transcript, Teams transcript, audio/video recording, MP4, Whisper/AutoProtocol, or "Protokollbasis" inside final FPS protocols unless the user explicitly asks for it. Transcripts/video recordings may be archived internally and delivered separately if requested, but should not appear as Beilagen or source notes in the protocol itself.

### Large upload / Teams transcript fallback

If the user says they sent a video/audio file but Hermes shows a size-limit warning or no media file is present, do **not** claim audio transcription. Check whether a Teams transcript DOCX/PDF arrived separately:

- If the transcript is incomplete or has large time gaps, stop and request a Drive/OneDrive link or server path for the recording.
- If the transcript is complete enough for the whole meeting, proceed from it as the truth source, but label all outputs and archive notes as `created from Teams transcript; MP4/audio not available`.
- Preserve the raw Teams transcript artifact and create a corrected transcript with time/speaker traceability.
- See `references/large-upload-teams-transcript-and-erne-ci.md` for the detailed fallback and ERNE-CI verification pattern.

## DOCX/PDF layout requirements

- Use clear headings, compact paragraphs, readable tables.
- Avoid clipped tables, header/footer overlap, orphaned final rows, and cramped pendenzen tables.
- Keep headings with following content where possible (`keep_with_next`, `keep_together`).
- Use generous margins if corporate header/footer or coloured strips are present.
- For ERNE-CI style output, prefer an existing ERNE DOCX as the base and preserve its header/footer assets while replacing body content. For Mönchaltorf/FPS-style ERNE protocols this specifically means the final PDF must show the ERNE logo top-left, the beige/stripe design graphic top-right, and the footer with page numbering + `www.erne.net`; generating a blank DOCX with only text tables is not acceptable.
- Convert or strip Markdown markers (especially `**bold**`) before final DOCX export; raw Markdown syntax must not appear in the PDF.
- Run a final umlaut/Swiss spelling cleanup pass before DOCX/PDF generation, then search exported text for obvious ASCII remnants (`fue`, `ueber`, `waere`, `Loesung`, `Hoermann`, etc.).
- Generate the PDF from the final DOCX, not from an older intermediate file.
- After export, verify rendered PDF pages: first page, long tables, transitions between major sections, footer/header clearance, and last page.
- Specifically check for orphaned major headings near page breaks. Sections such as `Ampelstatus`, `Bauphysik / Schallschutz`, `Risiken und Chancen`, and `Pendenzenliste` should start on a new page when otherwise they would appear shortly before a page break.
- Search exported PDF text for raw Markdown heading markers (`####`, `###`) and fix the converter/source if any remain.

## Project archive / retrieval discipline

When the protocol belongs to a known project, archive final artifacts for later retrieval:

```text
~/jarvis_memory/work/projects/<project>/meetings/YYYY-MM-DD_fachplanersitzung_<nr>/meeting.md
~/jarvis_memory/work/projects/<project>/meetings/YYYY-MM-DD_fachplanersitzung_<nr>/artifacts/
```

`meeting.md` should capture source basis, summary, key pendenzen, and artifact names. Update both the project `meetings/README.md` and the project `project.md` meeting index. If a pending folder for the same meeting exists, remove or mark it superseded after the completed archive is created.

## Verification checklist

Before reporting completion:

- Re-open/read the generated DOCX and confirm key sections exist.
- Check PDF page count and that text is extractable/searchable.
- Search key terms in outputs: project name, `Pendenzen`, `Entscheide`, `Offene Fragen`, next meeting/date if known.
- If a transcript artifact is produced, verify it contains speaker/time/order samples.
- For numeric/technical requirements from weak Teams or Swiss-German transcripts, verify against raw Whisper/Teams lines before finalising; do not silently broaden unclear values into ranges.
- If delegated extraction results arrive late, read the complete subagent summaries, reconcile them into the draft, regenerate DOCX/PDF, re-archive, and re-run textual + visual QA before declaring finality.
- Report only verified artifacts. Do not claim creation if conversion failed.

## Long MP4 transcription + late reconciliation reference

For large MP4 recordings, prefer the robust `faster_whisper` large-v3 batched workflow and late-subagent reconciliation pattern in `references/long-mp4-whisper-and-late-subagent-reconciliation.md`.

## Drive MP4 + Teams transcript workflow

When the user provides the actual meeting recording via Google Drive plus a Teams transcript DOCX/PDF with poor Swiss-German recognition:

- download the MP4 and transcribe audio with Whisper large-v3 / `faster_whisper` when available;
- use the Teams transcript primarily for speaker attribution, sequence, and timestamps, not as the content truth source;
- use Traktandenliste, prior protocol, and project context for structure/style/names only;
- create both a cleaned transcript and the fachlich clustered protocol if requested/implied;
- keep the client-facing protocol free of internal evidence labels (`Whisper`, `Teams-Transkript`, `MP4`, `AutoProtocol`) unless explicitly requested;
- archive final DOCX/PDF plus raw transcription basis in the project vault. If the project uses `documents/source_files` + `document_index.csv` instead of `meetings/`, follow that existing taxonomy and update the CSV index.

See `references/drive-mp4-whisper-teams-speakers-vault-archive.md` for the detailed pattern, including faster-whisper batched transcription, A4/PDF QA, and document-index archive steps.

## Relationship to broader Jourfix skill

This skill is the dedicated workflow for **Fachplanersitzung / Fachplaner-Jourfix / FPS-AutoProtocol**. For broader internal PL/Teamleiter project Jourfix protocols, also consult `pl-project-jourfix-protocols`. If both apply, use this skill for Fachplaner-specific structure and `pl-project-jourfix-protocols` for management-summary, ampel, and pendenzen discipline.
