Files
Projektwissen/AGENTS.md
T
DanielandClaude Opus 5.5 55c024dbc9 Prozessmodelle versioniert unter prozesse/<name>/ ablegen
Jedes Modell bekommt einen eigenen Ordner mit Steckbrief (README.md,
Status Entwurf|abgenommen), der maßgeblichen Arbeitsschritt-.md und der
daraus erzeugten .bpmn (ADR 0003).

- scripts/pruefe_prozesse.py prüft Ordnername, Dateien, Status und ob
  jede .bpmn byte-gleich mit der Umwandlung ihrer .md ist; --erzeugen
  erzeugt alle .bpmn neu. md_to_bpmn.py arbeitet deterministisch.
- tests/test_pruefe_prozesse.py: Bestandsprüfung plus 11 Fälle für die
  Prüflogik; pytest.ini sammelt .agents/skills und tests.
- Die in Anleitung.md genannten, nie committeten Beispiele liegen jetzt
  unter .agents/skills/sn-bpmn/beispiele/ und werden mitgeprüft.
- Skill sn-bpmn: Entwürfe nach entwuerfe/, neuer Schritt 5 „Ablegen“.
- Vorlage docs/vorlagen/prozess_readme.md, Doku und Fallstricke ergänzt.
- Tests: python -m pytest -q -> 44 bestanden.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 13:02:48 +02:00

5.8 KiB
Raw Blame History

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 in workspace.toml stehen – derzeit gibt es keine.
  • Die Arbeitsweise (Skripte, Skills, Git-Regeln) stammt aus AG_QGIS/Projektwissen, siehe docs/entscheidungen/0001-uebernahme-aus-ag-qgis.md.

Zuerst lesen – nur was die Aufgabe braucht

  1. docs/status/STATUS.md – aktueller Stand, offene Baustellen, wer woran arbeitet.
  2. docs/wissen/fallstricke.md – bekannte Stolperfallen (BPMN-Layout, PICTURE-Import, Werkzeuge).
  3. Für Modellierungsaufgaben: .agents/skills/sn-bpmn/SKILL.md und die dort genannten Dateien.
  4. 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.json sperrt git push, git merge, git rebase, git tag technisch.
  • Hauptbranch ist main. Nie direkt auf main committen: eigener Branch feature/<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.py ohne 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 skip stillgelegt 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-.md und BPMN-Dateien.
  • Prozessmodelle liegen in prozesse/<name>/ (ADR 0003, Regeln in prozesse/README.md). Die .md ist maßgeblich, die .bpmn wird nie von Hand bearbeitet, sondern mit python scripts/pruefe_prozesse.py --erzeugen neu erzeugt. Den Status abgenommen setzt 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 pytest ohne Issue-Absprache und Eintrag in fallstricke.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)

  1. python scripts/hallo.py – Stand holen.
  2. 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.
  3. Branch feature/<issue-nr>-<kurzname> bzw. bugfix/<issue-nr>-<kurzname> von main.
  4. In kleinen Schritten umsetzen; nur betroffene Dateien und Abschnitte lesen.
  5. python -m pytest -q (enthält pruefe_prozesse.py) und python scripts/pruefe_umlaute.py. Erzeugte BPMN-Dateien zusätzlich in PICTURE importieren und das Ergebnis im PR nennen.
  6. Pull-Request-Text nach docs/vorlagen/pull_request.md vorbereiten, inklusive Übergabenotiz (Skill sn-uebergabe). Push und Pull Request macht der Mensch.
  7. Neue Erkenntnisse in docs/wissen/ oder docs/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 .bpmn neu erzeugen: python scripts/pruefe_prozesse.py [--erzeugen]
  • Workspace einrichten oder aktualisieren: python scripts/setup_workspace.py (mit --pull fü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.