- werkzeuge/vorschau/vorschau.html: Anzeige per Drag & Drop oder Dateiauswahl, Zoom, Einpassen, Fehlermeldungen; funktioniert ohne Python direkt aus dem Dateisystem. - scripts/vorschau.py: erzeugt aus .bpmn oder Arbeitsschritt-.md eine in sich geschlossene Seite und öffnet sie; --stdin als Filter, etwa für einen Gitea-Renderer. Diagramm wird mit maskiertem '<' eingebettet, die Bibliothek unverändert und nur auf <script/</script geprüft. - bpmn-js 18.29.1 (navigated viewer + CSS + LICENSE) lokal eingebettet, npm-Integrität geprüft; lädt nichts aus dem Netz. Wasserzeichen bleibt laut Lizenzauflage sichtbar. - tests/test_vorschau.py: 11 Tests; Skill sn-bpmn, Anleitung, AGENTS.md, README, Leitfäden, Fallstricke und STATUS ergänzt. - Tests: python -m pytest -q -> 55 bestanden. Darstellung mit Edge headless geprüft (beide Beispiele, leere Seite, kaputte Datei). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6.0 KiB
6.0 KiB
Projektwissen AG_Prozesse – Anweisungen für KI-Agenten und Mitwirkende
Kanonische, werkzeugneutrale Anweisungsdatei. Claude Code liest sie über CLAUDE.md.
Sie bleibt bewusst kurz: Details liegen in docs/ und werden nur bei Bedarf gelesen.
Worum es geht
- Arbeitsgruppe der sächsischen Flurbereinigungsbehörden („LNO Sachsen") zur Modellierung von Verwaltungsprozessen in BPMN 2.0. Zielwerkzeug für den Import ist PICTURE.
- Kernwerkzeug ist der Skill
sn-bpmn: Prozessbeschreibung (Rohtext, Stichpunkte, Word/PDF) → strukturierte Arbeitsschritt-.md→ BPMN-2.0-Datei (.agents/skills/sn-bpmn/md_to_bpmn.py). - Dieser Ordner ist der Klon des Repositories
AG_Prozesse/Projektwissen. Weitere Repositories der Gruppe würden als eigenständige Git-Klone in Unterordnern liegen und inworkspace.tomlstehen – derzeit gibt es keine. - Die Arbeitsweise (Skripte, Skills, Git-Regeln) stammt aus
AG_QGIS/Projektwissen, siehedocs/entscheidungen/0001-uebernahme-aus-ag-qgis.md.
Zuerst lesen – nur was die Aufgabe braucht
docs/status/STATUS.md– aktueller Stand, offene Baustellen, wer woran arbeitet.docs/wissen/fallstricke.md– bekannte Stolperfallen (BPMN-Layout, PICTURE-Import, Werkzeuge).- Für Modellierungsaufgaben:
.agents/skills/sn-bpmn/SKILL.mdund die dort genannten Dateien. - Fachbegriffe:
docs/wissen/glossar.md. Übersicht aller Dokumente:docs/README.md.
Harte Regeln
Git und Server – der Mensch drückt ab
- Nie pushen, mergen, taggen oder etwas auf Gitea verändern. Agenten bereiten vor, eine Person sendet ab.
.claude/settings.jsonsperrtgit push,git merge,git rebase,git tagtechnisch. - Hauptbranch ist
main. Nie direkt aufmaincommitten: eigener Branchfeature/<nr>-<kurzname>bzw.bugfix/<nr>-<kurzname>, dann Pull Request. Vollständig:docs/leitfaden/05_git_arbeitsweise.md. - Sitzungsbeginn:
python scripts/hallo.py(bzw./hallo), bevor irgendetwas geändert wird.
Tests
- Vor jedem Commit:
python -m pytest -q– alle Tests grün. - Neues Verhalten von
md_to_bpmn.pyohne Test wird nicht gemergt. Bei einer Fehlerbehebung zuerst der Test, der den Fehler zeigt. - Jeder neue oder geänderte Test bekommt einen deutschen Docstring, erste Zeile in der Form
"""Prüft, dass …""". - Tests werden nicht gelöscht, nicht mit
skipstillgelegt und nicht in ihrer Erwartung angepasst, um grün zu werden – außer das Verhalten wurde bewusst geändert und der Pull Request begründet es.
Inhalte
- Keine personenbezogenen Daten, keine Zugangsdaten, keine internen Originalunterlagen im Repository, in der Doku
oder in Prompts. Quelldokumente (Word/PDF) bleiben lokal unter
referenz/(nicht versioniert); ins Repository kommen nur die daraus abgeleiteten, bereinigten Arbeitsschritt-.mdund BPMN-Dateien. - Prozessmodelle liegen in
prozesse/<name>/(ADR 0003, Regeln inprozesse/README.md). Die.mdist maßgeblich, die.bpmnwird nie von Hand bearbeitet, sondern mitpython scripts/pruefe_prozesse.py --erzeugenneu erzeugt. Den Statusabgenommensetzt der Agent nie von sich aus. - Rollen und Verantwortliche in Prozessmodellen als Funktion benennen („Sachbearbeitung Flurbereinigung"), nie als Person.
- Keine Python-Abhängigkeiten außer der Standardbibliothek und
pytestohne Issue-Absprache und Eintrag infallstricke.md. Einzige eingebettete Fremdbibliothek ist bpmn-js unterwerkzeuge/vorschau/bpmn-js/– nicht von Hand ändern, Aktualisierung nachwerkzeuge/vorschau/README.md. - Kein Umbau „nebenbei". Strukturänderungen nur über eigenes Issue.
Allgemein
- Sprache: Doku, Kommentare, Docstrings, Commit-Nachrichten, Issues und PRs auf Deutsch, mit echten Umlauten
(Prüfung:
python scripts/pruefe_umlaute.py). Bezeichner nach dem Stil der jeweiligen Datei.
Arbeitsablauf in Kurzform (Details: Skill sn-aufgabe-bearbeiten)
python scripts/hallo.py– Stand holen.- Gitea-Issue lesen (Skill
sn-ticket,python scripts/gitea.py ticket Projektwissen <nr>) oder als Entwurf vorbereiten. Ziel und Abnahmekriterien klären, bevor etwas geändert wird. - Branch
feature/<issue-nr>-<kurzname>bzw.bugfix/<issue-nr>-<kurzname>vonmain. - In kleinen Schritten umsetzen; nur betroffene Dateien und Abschnitte lesen.
python -m pytest -q(enthältpruefe_prozesse.py) undpython scripts/pruefe_umlaute.py. Erzeugte BPMN-Dateien zusätzlich in PICTURE importieren und das Ergebnis im PR nennen.- Pull-Request-Text nach
docs/vorlagen/pull_request.mdvorbereiten, inklusive Übergabenotiz (Skillsn-uebergabe). Push und Pull Request macht der Mensch. - Neue Erkenntnisse in
docs/wissen/oderdocs/entscheidungen/festhalten, nicht nur im lokalen Gedächtnis des Werkzeugs.
Tokensparend arbeiten
- Gezielt
grep, dann nur die nötigen Abschnitte lesen.md_to_bpmn.py(über 1000 Zeilen) nie komplett laden. - Keine Dateien oder Testausgaben in den Chat kopieren; Pfade mit Zeilennummern nennen.
- Am Ende jeder Aufgabe eine Übergabenotiz, damit die nächste Sitzung nicht neu erkunden muss.
- Breite Suchen an einen Unteragenten delegieren, wenn das Werkzeug das kann; Hauptkontext schlank halten.
Befehle
- Sitzungsbeginn:
python scripts/hallo.py(Claude Code:/hallo) - Tickets:
python scripts/gitea.py tickets|python scripts/gitea.py ticket Projektwissen 12|… suche "<text>" - Tests:
python -m pytest -q - Umlaute prüfen:
python scripts/pruefe_umlaute.py - Prozessmodelle prüfen bzw. alle
.bpmnneu erzeugen:python scripts/pruefe_prozesse.py [--erzeugen] - Diagramm im Browser ansehen (offline):
python scripts/vorschau.py <datei.bpmn|datei.md> - Workspace einrichten oder aktualisieren:
python scripts/setup_workspace.py(mit--pullfür fast-forward) - Entwurf umwandeln:
python .agents/skills/sn-bpmn/md_to_bpmn.py entwuerfe/<name>.md entwuerfe/<name>.bpmn
Skills
Liegen in .agents/skills/ (Agent-Skills-Standard) und werden nach .claude/skills/ gespiegelt:
sn-bpmn, sn-aufgabe-bearbeiten, sn-ticket, sn-uebergabe.