Entwickler: Kontinuierliches Issue-Tracking
Auslöser
Führe dies am ENDE jedes signifikanten Codierungsdurchlaufs ODER aus, wenn der Benutzer explizit danach fragt. Führe es NICHT mitten in einer Aufgabe aus – warte auf einen natürlichen Haltepunkt.
Diese Fähigkeit wird standardmäßig zu Sitzungsbeginn geladen. Sie ist sicher und nicht destruktiv:
sie schreibt nur in knowledge/issues/open/ und knowledge/issues/INDEX.md.
Algorithmus
Phase 1 – Aktuellen Chat scannen
Überprüfe die aktuelle Konversation auf diese Signaltypen:
| Signal | Beispiele | Priorität |
|---|---|---|
| Fehler behoben | „PowerShell hat {{ }} falsch interpretiert", „ngx-translate v18 hat kein forRoot()" | HOCH |
| API-Entdeckung | „linkedSignal erfordert Node ≥22", „provideZonelessChangeDetection() ist stabil in Angular 22" | HOCH |
| Workaround gefunden | „Verwende create_file statt Set-Content für Templates" | MITTEL |
| Muster wiederholt | Gleicher Fehler ist in dieser Sitzung 2+ Mal aufgetreten | HOCH |
| Projekt-Eigenheit | „Dieses Monorepo verwendet npm workspaces", „Die .gitignore schließt .github/ aus" | MITTEL |
| Tool-Einschränkung | „Copilot gibt usage.prompt_tokens nicht direkt preis" | NIEDRIG |
| Benutzervorliebe | „Bevorzugt durch ; getrennte Befehle, nicht &&" | MITTEL |
Phase 2 – Mit Issue-Register abgleichen
- Lies
knowledge/issues/INDEX.md– alle vorhandenen Issue-IDs, Titel, Kategorien - Für jedes Signal aus Phase 1, versuche es mit vorhandenen Issues abzugleichen:
- Abgleich durch Schlüsselwortüberschneidung (Titel + Beschreibung)
- Abgleich durch Kategorie + ähnliches Fehlermuster
- Verwende
grep_searchaufknowledge/issues/open/für verwandte Inhalte
Phase 3 – Issues erstellen oder aktualisieren
NEUES Issue (kein Treffer gefunden)
ID generieren: ISSUE-YYYYMMDD-XXXX wobei XXXX = erste 4 Hexadezimalzeichen einer UUID
PowerShell: [guid]::NewGuid().ToString().Substring(0, 4)
Beispiel: ISSUE-20260624-a1b2
Erstelle knowledge/issues/open/ISSUE-YYYYMMDD-XXXX.md unter Verwendung von TEMPLATE.md
Setze occurrences=1, certainty=low, status=open
Setze created_by auf „developer" (oder aktuellen Agentenidentifikator)
Füge eine neue Zeile in INDEX.md ein → Tabelle der offenen Issues
Falls Sitzungstoken-Daten vorhanden, füge sie optional im Abschnitt „Nachweise" hinzu
IDs basieren auf UUIDs – kein Einlesen der INDEX.md erforderlich. Kein Kollisionsrisiko bei gleichzeitiger Arbeit mehrerer Entwickler.
BESTEHENDES Issue aktualisieren (Treffer gefunden)
Erhöhe occurrences um 1
Aktualisiere last_seen auf das heutige Datum
Füge aktuelle Sitzungsinfo zum sessions-Array hinzu
Bewerte die Sicherheit neu:
- 1 Vorkommen → niedrig
- 2 Vorkommen → mittel
- 3+ Vorkommen → hoch
Aktualisiere die Issue-Datei in open/ mit replace_string_in_file
Aktualisiere INDEX.md-Zahlen und Zeilendaten
INDEX.md-Merge-Konflikte
Falls zwei Entwickler gleichzeitig Zeilen in INDEX.md hinzufügen, kann ein Git-Merge- Konflikt im Tabellenkörper auftreten. Lösung: ALLE Zeilen aus beiden Branches behalten; Verzeichnisse neu zählen, um Zusammenfassungszahlen zu aktualisieren.
Bericht
Gib eine Zusammenfassungstabelle aus:
## Entwicklerbericht – YYYY-MM-DD
| Aktion | ID | Titel | Kategorie | Detail |
|--------|----|-------|-----------|--------|
| 🆕 Neu | ISSUE-001 | ... | ... | Erstellt in open/ |
| 📈 Aktualisiert | ISSUE-002 | ... | ... | 1→2 Vorkommen, Sicherheit niedrig→mittel |
Wichtige Regeln
-
NIEMALS Issues befördern. Die Beförderung ist Aufgabe der
ai-engineer-Fähigkeit. Deine einzige Ausgabe sind Issue-Dateien inopen/und Aktualisierungen vonINDEX.md. -
NIEMALS Fähigkeiten oder Speicherdateien verändern. Du bist ein schreibgeschützter Beobachter von
.github/skills/und/memories/. Greife nicht darauf zu. -
NIEMALS eine Fähigkeit für etwas erstellen, das das Modell bereits kennt – wenn es Allgemeinwissen ist (z. B. „verwende
constnichtvar"), überspringe es komplett. -
Halte Issue-Dateien präzise – das TEMPLATE.md-Format ist das Maximum, nicht das Minimum. Schreibe keine Aufsätze.
-
Sitzungsisolierung – das
sessions-Array im Frontmatter speichert Sitzungs- UUIDs. Verwendesession_store_sql, um die aktuelle Sitzungs-UUID zu finden, falls verfügbar, andernfalls verwende einen datumsbasierten Identifikator. -
Immer
created_bybefüllen – setze es auf den Agentennamen oder Sitzungs- identifikator, damit derai-engineerdie Issue-Ursprünge während der Überprüfung nachvollziehen kann.
Übergabe an AI Engineer
Wenn ein Issue certainty: high (3+ Vorkommen) erreicht, übernimmt die ai-engineer-
Fähigkeit die Beförderung. Die developer-Fähigkeit entscheidet NICHT, was befördert
oder wohin es geht – sie zeichnet nur die Signalsstärke auf. Führe die ai-engineer-
Fähigkeit als Unteragenten aus, wenn der Benutzer darum bittet, Wissen zu
organisieren, Issues aufzuräumen oder Muster zu befördern.
Dateipfade-Referenz
| Ressource | Pfad |
|---|---|
| Issue-Register-Index | knowledge/issues/INDEX.md |
| Issue-Vorlage | knowledge/issues/TEMPLATE.md |
| Offene Issues | knowledge/issues/open/ISSUE-XXX.md |
| Beförderte Issues | knowledge/issues/promoted/ISSUE-XXX.md |
| Verworfene Issues | knowledge/issues/discarded/ISSUE-XXX.md |