- input/ ist lokal und nicht versioniert (.gitignore); scripts/einlesen.py legt ihn bei Bedarf an. - scripts/einlesen.py ordnet jede Datei ein: abgelehnt (kein .md, nicht UTF-8, leer, Unterordner), neu, geändert, eingelesen. Für neue und geänderte Dateien: Prozessname, Ordnernamen-Vorschlag, ob schon eine Arbeitsschritt-.md, und ähnliche Prozesse aus prozesse/ und entwuerfe/. „vermerk“ schreibt nach Erfolg eine erste Zeile <!-- eingelesen: <Zeitstempel> | neu|aktualisiert | <Ziel> | inhalt: <sha> -->; die Prüfsumme erkennt spätere Änderungen. Zeilenenden bleiben erhalten. - Skill sn-einlesen: Übersicht, Bestandsvergleich, Entscheidung des Nutzers, neue Prozesse durch sn-bpmn, Vermerk nur bei Erfolg. - docs/leitfaden/07_prozesse_einlesen.md: Ablauf für neue Nutzer. - AGENTS.md, README, Leitfaden 03, Skill sn-bpmn, Fallstricke, STATUS. - Tests: python -m pytest -q -> 79 bestanden (18 neu in tests/test_einlesen.py). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
150 lines
7.7 KiB
Markdown
150 lines
7.7 KiB
Markdown
# Prozesse einlesen: vom Eingangsordner zum BPMN-Diagramm
|
||
|
||
Für Kolleginnen und Kollegen, die eine Prozessbeschreibung in ein BPMN-Modell für PICTURE überführen wollen.
|
||
Git- oder Programmierkenntnisse braucht es dafür nicht. Stand 23.09.2026.
|
||
|
||
**Kurz:** Beschreibung als `.md`-Datei in den Ordner `input/` legen, Claude Code starten, „Lies den Ordner input
|
||
ein“ sagen, die Rückfragen beantworten, den Entwurf prüfen und freigeben. Fertig ist eine `.bpmn`-Datei für PICTURE.
|
||
|
||
```mermaid
|
||
flowchart TD
|
||
A["Beschreibung als .md<br/>nach input/ legen"] --> B["Claude Code: „Lies input ein“"]
|
||
B --> C{"Dateityp .md<br/>und UTF-8?"}
|
||
C -->|nein| X["abgelehnt – Datei bleibt liegen,<br/>Grund wird genannt"]
|
||
C -->|ja| D{"schon eingelesen<br/>und unverändert?"}
|
||
D -->|ja| Y["übersprungen"]
|
||
D -->|nein| E{"gibt es den Prozess<br/>schon?"}
|
||
E -->|nein| F["neuer Prozess:<br/>Entwurf in entwuerfe/"]
|
||
E -->|ja| G{"deine Entscheidung"}
|
||
G -->|aktualisieren| H["vorhandenen Prozess<br/>ergänzen"]
|
||
G -->|eigener Prozess| F
|
||
G -->|überspringen| Z["kein Vermerk,<br/>kommt beim nächsten Mal wieder"]
|
||
F --> I["Entwurf prüfen,<br/>Vorschau ansehen"]
|
||
H --> I
|
||
I -->|"„passt so“"| J["BPMN erzeugen"]
|
||
J --> K["Vermerk mit Datum/Uhrzeit<br/>oben in der .md"]
|
||
```
|
||
|
||
## 1. Einmalig: Einrichtung
|
||
|
||
Wer schon mit Claude Code im Ordner `AG_Prozesse` arbeitet, kann diesen Abschnitt überspringen. Sonst:
|
||
[`04_werkzeuge_einrichten.md`](04_werkzeuge_einrichten.md) Abschnitte 2 und 3 (Git, Python, Projektwissen holen,
|
||
Claude Code). Danach gibt es den Ordner `AG_Prozesse`; `input/` darin entsteht beim ersten Einlesen von selbst.
|
||
|
||
`input/` wird **nicht** mit Git geteilt. Was dort liegt, sieht nur, wer an deinem Rechner arbeitet.
|
||
|
||
## 2. Die Datei vorbereiten
|
||
|
||
**Vorerst werden nur `.md`-Dateien angenommen** (Markdown, also reiner Text). Word-, PDF- oder `.txt`-Dateien
|
||
werden abgelehnt und bleiben unverändert liegen.
|
||
|
||
So wird aus einer Word- oder PDF-Beschreibung eine `.md`-Datei:
|
||
|
||
1. In VS Code (oder dem Windows-Editor) eine neue Datei anlegen.
|
||
2. Den Text der Beschreibung hineinkopieren. Überschriften dürfen mit `# ` beginnen, Aufzählungen mit `- `.
|
||
Die erste Überschrift oder eine Zeile `Prozess: <Name>` wird als Prozessname verwendet.
|
||
3. Speichern unter `AG_Prozesse\input\<kurzer-name>.md`, **Codierung UTF-8** (VS Code speichert so; im Windows-Editor
|
||
unter „Speichern unter“ → Codierung „UTF-8“ wählen). Sonst werden Umlaute nicht gelesen und die Datei abgelehnt.
|
||
|
||
Vorher prüfen und entfernen: **Namen von Personen, Aktenzeichen, Verfahrensdaten.** Zuständigkeiten als Funktion
|
||
schreiben („Sachbearbeitung“, „Teamleitung“). Der Inhalt wird zur Verarbeitung an den KI-Anbieter übertragen.
|
||
|
||
Wer die Syntax schon kennt, kann direkt eine Arbeitsschritt-`.md` schreiben
|
||
(`.agents/skills/sn-bpmn/Anleitung.md`). Sie wird dann nur geprüft und nicht neu formuliert.
|
||
|
||
## 3. Einlesen starten
|
||
|
||
Im Ordner `AG_Prozesse` Claude Code starten (Terminal: `claude`, oder VS Code mit der Erweiterung) und schreiben:
|
||
|
||
> *Lies den Ordner input ein.*
|
||
|
||
(oder den Befehl `/sn-einlesen` wählen). Der Agent zeigt zuerst eine Übersicht, zum Beispiel:
|
||
|
||
```
|
||
[neu] input/antragspruefung.md: „Antragsprüfung im Sachgebiet“ (Rohtext)
|
||
ähnlich (0.44): Entwurf (lokal) entwuerfe/antrag-pruefen.md – „Antrag prüfen“
|
||
[abgelehnt] input/vorlage.docx: Dateityp .docx – vorerst nur .md
|
||
[eingelesen] input/wegebau.md: am 2026-09-20 10:12:03 +0200 (neu -> entwuerfe/wegebau-abnehmen.md)
|
||
```
|
||
|
||
Dieselbe Übersicht bekommst du ohne Agent mit `python scripts/einlesen.py`.
|
||
|
||
## 4. Entscheiden: Gibt es den Prozess schon?
|
||
|
||
Für jede neue Datei sucht der Agent im Bestand – versionierte Prozesse unter `prozesse/` und deine lokalen Entwürfe
|
||
unter `entwuerfe/` – und sagt, ob und warum ein vorhandener Prozess passt. Gibt es einen, fragt er dich:
|
||
|
||
| Wenn du wählst … | … passiert |
|
||
|---|---|
|
||
| **Vorhandenen Prozess aktualisieren** | Der vorhandene Entwurf bzw. Prozess wird um die neuen Inhalte ergänzt. Bei Prozessen unter `prozesse/` geht das über ein Issue und einen Pull Request (Abschnitt 7). |
|
||
| **Als neuen Prozess anlegen** | Es entsteht ein eigener Entwurf mit anderem Namen. |
|
||
| **Datei überspringen** | Nichts passiert. Die Datei erscheint beim nächsten Einlesen wieder. |
|
||
| **Einlesen beenden** | Der Agent hört auf; die übrigen Dateien bleiben unberührt. |
|
||
|
||
Gibt es keinen passenden Prozess, legt der Agent einen neuen Entwurf an und schlägt einen Namen vor. Du kannst
|
||
ihn ändern.
|
||
|
||
## 5. Entwurf prüfen und freigeben
|
||
|
||
Der Agent schreibt den Entwurf nach `entwuerfe/<name>.md` und nennt die Stellen, an denen er etwas **annehmen**
|
||
musste (Schrittgrenzen, Verzweigungen, Zuständigkeiten). Genau dort lohnt der fachliche Blick.
|
||
|
||
- Als Diagramm ansehen: `python scripts/vorschau.py entwuerfe/<name>.md` – öffnet den Browser, offline.
|
||
- Änderungen direkt in `entwuerfe/<name>.md` machen oder dem Agenten sagen, was anders sein soll.
|
||
- Wenn es passt: *„passt so, wandle um“*. **Vorher wandelt der Agent nicht um.**
|
||
|
||
Danach liegt `entwuerfe/<name>.bpmn` bereit für den Import in PICTURE.
|
||
|
||
## 6. Der Vermerk
|
||
|
||
Nach erfolgreichem Einlesen steht in der ersten Zeile deiner Datei in `input/` ein Vermerk, zum Beispiel:
|
||
|
||
```
|
||
<!-- eingelesen: 2026-09-23 14:05:12 +0200 | neu | entwuerfe/antrag-pruefen.md | inhalt: 3f2a9c1e0b7d -->
|
||
```
|
||
|
||
Datum und Uhrzeit, Ergebnis (`neu` oder `aktualisiert`) und wo das Ergebnis liegt. In der Markdown-Vorschau ist die
|
||
Zeile unsichtbar, im Editor sichtbar. Bitte nicht von Hand ändern.
|
||
|
||
- **Unveränderte Dateien mit Vermerk** werden beim nächsten Einlesen übersprungen.
|
||
- **Änderst du die Datei danach**, erkennt das der Agent (Prüfsumme) und bietet sie als „geändert“ erneut an.
|
||
Der neue Vermerk kommt obenauf, der alte bleibt als Verlauf stehen.
|
||
- **Kein Vermerk** bei Überspringen, Abbruch oder wenn der Entwurf nicht freigegeben wurde.
|
||
|
||
## 7. Für alle sichtbar ablegen (optional)
|
||
|
||
Entwürfe liegen nur auf deinem Rechner. Soll das Modell für die Gruppe verfügbar sein, legt der Agent es auf
|
||
Wunsch unter `prozesse/<name>/` ab – mit Steckbrief und Status `Entwurf` (Regeln: `prozesse/README.md`). Das ist
|
||
eine Änderung am gemeinsamen Repository:
|
||
|
||
1. Der Agent bereitet einen Issue-Text vor; **du** legst das Issue in Gitea an und nennst ihm die Nummer.
|
||
2. Der Agent legt den Ordner auf einem eigenen Branch an und bereitet Commit und Pull-Request-Text vor.
|
||
3. **Du** pushst und stellst den Pull Request; eine Kollegin oder ein Kollege prüft.
|
||
|
||
## 8. Häufige Fragen
|
||
|
||
**Meine Word-Datei wird abgelehnt.** Vorerst nur `.md`, siehe Abschnitt 2.
|
||
|
||
**„keine UTF-8-Datei“.** Die Datei in VS Code öffnen, unten rechts auf die Codierung klicken → „Mit Codierung
|
||
speichern“ → UTF-8.
|
||
|
||
**Die Datei wird immer wieder als neu angezeigt.** Sie wurde übersprungen oder nicht freigegeben – dann gibt es
|
||
keinen Vermerk. Einlesen erneut starten und abschließen, oder die Datei aus `input/` entfernen, wenn sie nicht
|
||
mehr gebraucht wird.
|
||
|
||
**Der Agent hält zwei Prozesse für gleich, die es nicht sind.** Die Ähnlichkeit ist nur ein Hinweis. „Als neuen
|
||
Prozess anlegen“ wählen und einen unterscheidbaren Namen vergeben.
|
||
|
||
**Ich möchte eine Datei noch einmal komplett neu einlesen.** Die Vermerkzeilen oben löschen; dann gilt sie wieder
|
||
als neu.
|
||
|
||
**Kann ich mehrere Dateien auf einmal einlesen?** Ja, sie liegen alle in `input/`. Der Agent bearbeitet sie
|
||
nacheinander und fragt bei jeder einzeln.
|
||
|
||
## Siehe auch
|
||
|
||
- Skill `sn-einlesen` (`.agents/skills/sn-einlesen/SKILL.md`) – was der Agent genau tut
|
||
- Skill `sn-bpmn` und `.agents/skills/sn-bpmn/Anleitung.md` – Entwurf und Syntax
|
||
- [`03_arbeitsweise.md`](03_arbeitsweise.md) – Arbeitsweise insgesamt
|
||
- `prozesse/README.md` – versionierte Ablage
|