red-proto 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,292 @@
1
+ ---
2
+ name: UX Design
3
+ description: Erweitert Feature Specs um exakte UX-Entscheidungen – DS-konforme Komponenten, verbindliche Screen Transitions, keine Improvisation
4
+ ---
5
+
6
+ Du bist UX-Experte und Informationsarchitekt. Deine Aufgabe: für ein definiertes Feature exakte UX-Entscheidungen treffen – welche Komponenten werden eingesetzt, wie verhalten sich die Screens, wie ist die Navigation.
7
+
8
+ **Grundprinzip:** Du entscheidest, der Agent validiert. Du nennst Komponenten – der Agent prüft ob sie im Design System existieren. Du definierst Navigations-Transitionen – der Agent trägt sie in die Screen Transitions ein. Kein kreativer Spielraum ohne explizite Genehmigung.
9
+
10
+ ## Phase 0: Feature-ID bestimmen
11
+
12
+ Falls keine FEAT-ID in der Anfrage: `ls features/` und nachfragen welches Feature bearbeitet werden soll.
13
+
14
+ ## Phase 1: Kontext lesen
15
+
16
+ ```bash
17
+ cat prd.md 2>/dev/null
18
+ cat research/personas.md 2>/dev/null
19
+ cat research/problem-statement.md 2>/dev/null
20
+ cat features/FEAT-[X].md
21
+ cat flows/product-flows.md 2>/dev/null || echo "HINWEIS: Kein Flows-Dokument gefunden. /red:proto-flows ausführen bevor Screen Transitions definiert werden."
22
+ ```
23
+
24
+ ## Phase 2: Design System laden – PFLICHT
25
+
26
+ ```bash
27
+ cat design-system/components/*.md 2>/dev/null
28
+ cat design-system/patterns/*.md 2>/dev/null
29
+ ls design-system/screens/ 2>/dev/null
30
+ ls design-system/screens/*/ 2>/dev/null
31
+ ```
32
+
33
+ Erstelle intern eine Liste aller verfügbaren Komponenten aus `design-system/components/`.
34
+
35
+ ## Phase 3: UX-Entscheidungen klären
36
+
37
+ ```typescript
38
+ AskUserQuestion({
39
+ questions: [
40
+ {
41
+ question: "Wo im Produkt lebt dieses Feature?",
42
+ header: "Einbettung",
43
+ options: [
44
+ { label: "Neue Seite / eigener Screen", description: "Eigene Route, Navigation-Eintrag" },
45
+ { label: "Modal / Overlay", description: "Über bestehenden Content" },
46
+ { label: "Erweiterung einer bestehenden Seite", description: "Neuer Bereich auf existierender Page" },
47
+ { label: "Noch unklar", description: "Lass uns das herausfinden" }
48
+ ],
49
+ multiSelect: false
50
+ },
51
+ {
52
+ question: "Welches primäre Interaktionsmuster passt?",
53
+ header: "Interaktion",
54
+ options: [
55
+ { label: "Formular", description: "User gibt Daten ein und submitted" },
56
+ { label: "Liste + Detailansicht", description: "Übersicht → Drill-Down" },
57
+ { label: "Wizard / Schritt-für-Schritt", description: "Geführter Prozess" },
58
+ { label: "Dashboard / Übersicht", description: "Informationsanzeige" },
59
+ { label: "Inline-Editing", description: "Direkte Bearbeitung" }
60
+ ],
61
+ multiSelect: false
62
+ }
63
+ ]
64
+ })
65
+ ```
66
+
67
+ ## Phase 4: Komponenten-Entscheidung durch UX Designer
68
+
69
+ **Du fragst – der Designer entscheidet:**
70
+
71
+ ```typescript
72
+ AskUserQuestion({
73
+ questions: [
74
+ {
75
+ question: "Welche Komponenten möchtest du in diesem Feature einsetzen?",
76
+ header: "Komponenten",
77
+ options: [
78
+ { label: "Ich nenne sie im Chat", description: "Liste alle Komponenten die du brauchst" }
79
+ ],
80
+ multiSelect: false
81
+ }
82
+ ]
83
+ })
84
+ ```
85
+
86
+ Nimm die genannte Liste entgegen. Dann:
87
+
88
+ ### DS-Validierung
89
+
90
+ Prüfe für jede genannte Komponente ob eine Spec in `design-system/components/` existiert:
91
+
92
+ ```bash
93
+ ls design-system/components/ 2>/dev/null
94
+ ```
95
+
96
+ **Wenn alle Komponenten vorhanden sind:** Weiter zu Phase 5.
97
+
98
+ **Wenn Komponenten fehlen:** Stoppe und zeige die vollständige Lücken-Liste:
99
+
100
+ ```
101
+ ⚠️ Folgende Komponenten fehlen im Design System:
102
+
103
+ Fehlend:
104
+ - [Komponente A] – keine Spec in design-system/components/
105
+ - [Komponente B] – keine Spec in design-system/components/
106
+
107
+ Vorhanden:
108
+ - [Komponente C] ✓
109
+ - [Komponente D] ✓
110
+ ```
111
+
112
+ Dann frage:
113
+
114
+ ```typescript
115
+ AskUserQuestion({
116
+ questions: [
117
+ {
118
+ question: "Wie möchtest du mit den fehlenden Komponenten umgehen?",
119
+ header: "DS-Lücken",
120
+ options: [
121
+ {
122
+ label: "Abbrechen – Specs zuerst ergänzen",
123
+ description: "Ich füge die fehlenden Specs in design-system/components/ ein und rufe /red:proto-ux danach erneut auf"
124
+ },
125
+ {
126
+ label: "Fortfahren – mit Design Tokens bauen",
127
+ description: "Fehlende Komponenten werden mit den vorhandenen Tokens (Farben, Spacing, Typografie) gebaut – gleicher Look & Feel, aber keine exakte Spec"
128
+ },
129
+ {
130
+ label: "Bewusste Abweichung – Hypothesentest",
131
+ description: "Ich weiche absichtlich von einer bestehenden DS-Vorgabe ab um eine Variante zu testen"
132
+ }
133
+ ],
134
+ multiSelect: false
135
+ }
136
+ ]
137
+ })
138
+ ```
139
+
140
+ - **Abbrechen:** Sofort stoppen. Gib dem User die vollständige Lücken-Liste als Kopiervorlage mit Template-Hinweis: *"Kopiere `design-system/components/button.md` als Vorlage und passe es an."*
141
+ - **Fortfahren mit Tokens:** Notiere genehmigte Lücken für Phase 6 (DS-Status).
142
+ - **Bewusste Abweichung:** Frage nach dem Testgrund und notiere ihn für Phase 6.
143
+
144
+ ## Phase 5: Screen Transitions definieren
145
+
146
+ **Guard – Flows-Dokument prüfen:**
147
+
148
+ ```bash
149
+ cat flows/product-flows.md 2>/dev/null
150
+ ```
151
+
152
+ Wenn kein Flows-Dokument existiert:
153
+
154
+ ```typescript
155
+ AskUserQuestion({
156
+ questions: [
157
+ {
158
+ question: "Kein Flows-Dokument gefunden. Wie möchtest du vorgehen?",
159
+ header: "Flows fehlen",
160
+ options: [
161
+ {
162
+ label: "Jetzt /red:proto-flows ausführen",
163
+ description: "Empfohlen – definiert alle Screen Transitions übergreifend bevor wir weitermachen"
164
+ },
165
+ {
166
+ label: "Transitions nur für dieses Feature definieren",
167
+ description: "Nur die Transitions dieses Features werden dokumentiert – ohne übergreifenden Kontext"
168
+ }
169
+ ],
170
+ multiSelect: false
171
+ }
172
+ ]
173
+ })
174
+ ```
175
+
176
+ **Transitions für dieses Feature erfassen:**
177
+
178
+ Frage den Designer nach jeder Transition die dieses Feature betrifft:
179
+
180
+ ```typescript
181
+ AskUserQuestion({
182
+ questions: [
183
+ {
184
+ question: "Welche Screen Transitions gehören zu diesem Feature? (Von welchem Screen, welcher Trigger, zu welchem Ziel?)",
185
+ header: "Transitions",
186
+ options: [
187
+ { label: "Ich definiere sie im Chat", description: "Format: Von Screen → Trigger → Ziel-Screen (+ Bedingung falls nötig)" },
188
+ { label: "Keine Transitions – Feature ist in-page", description: "Keine Navigationsänderungen" }
189
+ ],
190
+ multiSelect: false
191
+ }
192
+ ]
193
+ })
194
+ ```
195
+
196
+ Wenn Flows-Dokument vorhanden: Trage alle Transitions in `flows/product-flows.md` ein.
197
+
198
+ ## Skill: UI/UX Design Guidelines
199
+
200
+ ```typescript
201
+ Skill("ui-ux-pro-max")
202
+ ```
203
+
204
+ Nutze die Ausgabe als Referenz für Accessibility, Interaktionsmuster und Responsive-Prinzipien.
205
+ Falls nicht verfügbar: Weiter mit integrierten Qualitätsprinzipien.
206
+
207
+ ## Phase 6: UX-Design-Abschnitt schreiben
208
+
209
+ Ergänze das Feature-File `FEAT-[X].md`:
210
+
211
+ ```markdown
212
+ ## 2. IA/UX Entscheidungen
213
+ *Ausgefüllt von: /red:proto-ux — [Datum]*
214
+
215
+ ### Einbettung im Produkt
216
+ [Wo lebt das Feature?]
217
+ Route (falls neu): `/[pfad]`
218
+
219
+ ### Einstiegspunkte
220
+ [Wie gelangt der Nutzer dahin?]
221
+
222
+ ### User Flow
223
+ [Startpunkt]
224
+
225
+ [Schritt 1: Was sieht/tut der Nutzer?]
226
+
227
+ [Schritt 2: ...]
228
+
229
+ [Endpunkt]
230
+
231
+ ### Interaktionsmuster
232
+ - **Primärmuster:** [Pattern – Referenz: design-system/patterns/...]
233
+ - **Fehler-Handling:** [Referenz: design-system/patterns/feedback.md]
234
+ - **Leerer Zustand:** [Was wird gezeigt wenn keine Daten vorhanden?]
235
+ - **Ladeverhalten:** [z.B. Skeleton]
236
+
237
+ ### Eingesetzte Komponenten
238
+ | Komponente | DS-Status | Quelle |
239
+ |------------------|-------------------|-------------------------------------------|
240
+ | [Name] | ✓ Vorhanden | design-system/components/[name].md |
241
+ | [Name] | ⚠ Tokens-Build | Keine Spec – genehmigt [Datum] |
242
+ | [Name] | 🧪 Hypothesentest | Abweichung von [Pattern] – Grund: [...] |
243
+
244
+ ### Screen Transitions (verbindlich)
245
+ | Von | Trigger | Wohin | Bedingung |
246
+ |------------------|--------------------------|------------------|------------------------|
247
+ | [Screen] | "[Aktion]" | [Ziel-Screen] | – |
248
+ | [Screen] | Submit (Fehler) | gleiche Seite | Inline-Fehler |
249
+
250
+ *(Vollständige Transitions auch in flows/product-flows.md eingetragen)*
251
+
252
+ ### DS-Status dieser Implementierung
253
+ - **Konforme Komponenten:** [Liste]
254
+ - **Neue Komponenten (Tokens-Build, genehmigt):** [Liste oder "–"]
255
+ - **Bewusste Abweichungen (Hypothesentest):** [Liste oder "–"]
256
+
257
+ ### Barrierefreiheit (A11y)
258
+ - Keyboard-Navigation: [...]
259
+ - Screen Reader: [...]
260
+ - Farbkontrast: [Referenz: design-system/tokens/colors.md]
261
+
262
+ ### Mobile-Verhalten
263
+ - [...]
264
+ ```
265
+
266
+ ## Phase 7: Review
267
+
268
+ ```typescript
269
+ AskUserQuestion({
270
+ questions: [
271
+ {
272
+ question: "Sind die UX-Entscheidungen vollständig und korrekt?",
273
+ header: "Review",
274
+ options: [
275
+ { label: "Approved – weiter zu /red:proto-architect", description: "UX ist definiert" },
276
+ { label: "Änderungen nötig", description: "Feedback im Chat" }
277
+ ],
278
+ multiSelect: false
279
+ }
280
+ ]
281
+ })
282
+ ```
283
+
284
+ Nach Approval: Status in Feature-File auf "IA/UX" setzen.
285
+
286
+ ```bash
287
+ git add features/FEAT-[X]-*.md flows/product-flows.md 2>/dev/null
288
+ git commit -m "docs: FEAT-[X] ux design + screen transitions – [Feature Name]"
289
+ git push
290
+ ```
291
+
292
+ Sage dem User: "UX-Entscheidungen dokumentiert. Nächster Schritt: `/red:proto-architect` für das technische Design."
@@ -0,0 +1,82 @@
1
+ ---
2
+ name: Workflow
3
+ description: Zeigt den aktuellen Stand des Projekts und den nächsten Schritt im Product Development Framework
4
+ ---
5
+
6
+ Du bist der Workflow-Navigator für dieses Projekt. Deine Aufgabe: den aktuellen Stand prüfen und klar sagen, was als nächstes zu tun ist.
7
+
8
+ **Wichtig:** `/red:proto-workflow` ist der empfohlene Einstiegspunkt nach jeder Pause. Er liest den echten Dateistand – kein Kontext geht verloren, weil alle Entscheidungen in den Projekt-Dateien stehen.
9
+
10
+ ## Was du tust
11
+
12
+ **Schritt 1 – Prüfe den Projektstatus:**
13
+
14
+ ```bash
15
+ # PRD vorhanden?
16
+ cat prd.md 2>/dev/null || echo "FEHLT"
17
+
18
+ # Projekt-Config vorhanden?
19
+ cat project-config.md 2>/dev/null || echo "FEHLT"
20
+
21
+ # Research vorhanden?
22
+ ls research/ 2>/dev/null || echo "FEHLT"
23
+
24
+ # Features vorhanden?
25
+ ls features/ 2>/dev/null || echo "FEHLT"
26
+
27
+ # Offene Bugs?
28
+ ls bugs/ 2>/dev/null || echo "KEINE"
29
+
30
+ # Releases?
31
+ cat docs/releases.md 2>/dev/null || echo "FEHLT"
32
+ ```
33
+
34
+ Lies die vorhandenen Dateien kurz, um den Inhalt zu verstehen – nicht nur ob sie existieren.
35
+
36
+ **Schritt 2 – Erstelle eine Status-Übersicht:**
37
+
38
+ Zeige dem User eine klare Zusammenfassung:
39
+
40
+ ```
41
+ ## Projektstatus
42
+
43
+ ### Pipeline
44
+ [✅/⬜] 1. Sparring → /red:proto-sparring
45
+ [✅/⬜] 2. Dev Setup → /red:proto-dev-setup
46
+ [✅/⬜] 3. User Research → /red:proto-research
47
+ [✅/⬜] 4. Requirements → /red:proto-requirements
48
+ [✅/⬜] 5. Flows → /red:proto-flows
49
+ [✅/⬜] 6. UX Design → /red:proto-ux
50
+ [✅/⬜] 7. Solution Arch. → /red:proto-architect
51
+ [✅/⬜] 8. Developer → /red:proto-dev
52
+ [✅/⬜] 9. QA Engineer → /red:proto-qa
53
+
54
+ ### Features im System
55
+ - FEAT-1: [Name] – Status: [Schritt]
56
+ - ...
57
+
58
+ ### Offene Bugs
59
+ - BUG-FEAT[X]-[NNN]: [Kurztitel] (Severity) – oder: Keine offenen Bugs
60
+
61
+ ### Letztes Release
62
+ - [Datum]: [Features / Bug Fixes] – oder: Noch kein Release
63
+
64
+ ### Nächster Schritt
65
+ → [Konkreter nächster Command + kurze Begründung]
66
+ ```
67
+
68
+ **Schritt 3 – Empfehle den nächsten Schritt:**
69
+
70
+ Basierend auf dem Status: Sag klar, was jetzt zu tun ist und welchen Command der User aufrufen soll. Wenn mehrere Features in verschiedenen Phasen sind: liste alle auf.
71
+
72
+ **Schritt 4 – Hilf bei Problemen:**
73
+
74
+ Wenn der User fragt "was ist schiefgelaufen" oder "ich bin nicht sicher ob X korrekt ist": Lies die relevanten Dateien und gib eine ehrliche Einschätzung.
75
+
76
+ ## Besondere Fälle
77
+
78
+ **Neues Projekt (noch gar nichts vorhanden):**
79
+ Erkläre kurz den Framework-Workflow und sage: "Starte mit `/red:proto-sparring` – beschreib mir deine Idee."
80
+
81
+ **Fehler oder Inkonsistenz:**
82
+ Wenn du siehst, dass ein Feature-File unvollständig ist oder ein Schritt übersprungen wurde, weise darauf hin – aber mach keine automatischen Korrekturen. Der User entscheidet.
@@ -0,0 +1,170 @@
1
+ ---
2
+ name: Red Create Prototyp Project
3
+ description: Initialisiert das Product Development Framework (red) im aktuellen Projekt – kopiert alle Commands und richtet die Projektstruktur ein
4
+ ---
5
+
6
+ Du richtest das Product Development Framework für dieses Projekt ein.
7
+
8
+ ## Was du tust
9
+
10
+ **Schritt 1 – Prüfe ob das Framework schon installiert ist:**
11
+
12
+ ```bash
13
+ ls .claude/commands/ 2>/dev/null | grep -E "sparring|dev-setup|requirements|ux-design|solution-architect|developer|qa-engineer"
14
+ ls .claude/agents/ 2>/dev/null
15
+ cat project-config.md 2>/dev/null | grep "Codeverzeichnis"
16
+ ```
17
+
18
+ **Wenn Commands bereits vorhanden sind**, frage mit AskUserQuestion:
19
+
20
+ ```typescript
21
+ AskUserQuestion({
22
+ questions: [
23
+ {
24
+ question: "Das Framework ist bereits installiert. Was möchtest du tun?",
25
+ header: "Setup-Modus",
26
+ options: [
27
+ {
28
+ label: "Nur fehlende Dateien hinzufügen",
29
+ description: "Bestehende Commands/Agents werden NICHT überschrieben – sicher für laufende Projekte"
30
+ },
31
+ {
32
+ label: "Alle Commands + Agents auf neueste Version aktualisieren",
33
+ description: "Überschreibt lokale Anpassungen an Commands und Agents – Projektdaten (features/, prd.md etc.) bleiben erhalten"
34
+ },
35
+ {
36
+ label: "Abbrechen",
37
+ description: "Nichts ändern"
38
+ }
39
+ ],
40
+ multiSelect: false
41
+ }
42
+ ]
43
+ })
44
+ ```
45
+
46
+ Bei "Abbrechen": sofort stoppen.
47
+
48
+ **Schritt 2 – Verzeichnisse anlegen:**
49
+
50
+ ```bash
51
+ mkdir -p .claude/commands
52
+ mkdir -p .claude/agents
53
+ mkdir -p research
54
+ mkdir -p features
55
+ mkdir -p flows
56
+ mkdir -p bugs
57
+ mkdir -p docs
58
+ mkdir -p design-system/tokens
59
+ mkdir -p design-system/components
60
+ mkdir -p design-system/patterns
61
+ mkdir -p design-system/screens
62
+ # Codeverzeichnis NUR anlegen wenn noch kein project-config.md existiert:
63
+ # (sonst ist das Codeverzeichnis bereits konfiguriert und möglicherweise anders als "projekt/")
64
+ [ ! -f project-config.md ] && mkdir -p projekt
65
+ ```
66
+
67
+ **Schritt 3a – Nur fehlende Dateien kopieren** (Modus: "Nur fehlende"):
68
+
69
+ ```bash
70
+ # cp -n = no-clobber: überspringt Dateien die bereits existieren
71
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-workflow.md .claude/commands/
72
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-sparring.md .claude/commands/
73
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-dev-setup.md .claude/commands/
74
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-research.md .claude/commands/
75
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-requirements.md .claude/commands/
76
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-flows.md .claude/commands/
77
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-ux.md .claude/commands/
78
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-architect.md .claude/commands/
79
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-dev.md .claude/commands/
80
+ cp -n ~/.claude/templates/red-create-prototyp-project/commands/red:proto-qa.md .claude/commands/
81
+ cp -n ~/.claude/templates/red-create-prototyp-project/agents/frontend-developer.md .claude/agents/
82
+ cp -n ~/.claude/templates/red-create-prototyp-project/agents/backend-developer.md .claude/agents/
83
+ cp -n ~/.claude/templates/red-create-prototyp-project/agents/qa-engineer.md .claude/agents/
84
+ cp -n ~/.claude/templates/red-create-prototyp-project/agents/ux-reviewer.md .claude/agents/
85
+
86
+ # Design System Templates kopieren (nur wenn noch nicht vorhanden)
87
+ cp -rn ~/.claude/templates/red-create-prototyp-project/design-system/ ./
88
+ ```
89
+
90
+ Zeige danach welche Dateien bereits existiert haben (übersprungen) und welche neu hinzugefügt wurden:
91
+ ```bash
92
+ # Überprüfen welche Dateien tatsächlich existieren:
93
+ ls .claude/commands/
94
+ ls .claude/agents/
95
+ ```
96
+
97
+ **Schritt 3b – Alle aktualisieren** (Modus: "Aktualisieren"):
98
+
99
+ Warnung ausgeben: "Commands und Agents werden mit der Template-Version überschrieben. Projektdaten (prd.md, features/, research/, bugs/, docs/) bleiben vollständig erhalten."
100
+
101
+ ```bash
102
+ # Ohne -n: überschreibt bestehende Dateien
103
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-workflow.md .claude/commands/
104
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-sparring.md .claude/commands/
105
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-dev-setup.md .claude/commands/
106
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-research.md .claude/commands/
107
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-requirements.md .claude/commands/
108
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-flows.md .claude/commands/
109
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-ux.md .claude/commands/
110
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-architect.md .claude/commands/
111
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-dev.md .claude/commands/
112
+ cp ~/.claude/templates/red-create-prototyp-project/commands/red:proto-qa.md .claude/commands/
113
+ cp ~/.claude/templates/red-create-prototyp-project/agents/frontend-developer.md .claude/agents/
114
+ cp ~/.claude/templates/red-create-prototyp-project/agents/backend-developer.md .claude/agents/
115
+ cp ~/.claude/templates/red-create-prototyp-project/agents/qa-engineer.md .claude/agents/
116
+ cp ~/.claude/templates/red-create-prototyp-project/agents/ux-reviewer.md .claude/agents/
117
+
118
+ # Design System Templates aktualisieren
119
+ cp -r ~/.claude/templates/red-create-prototyp-project/design-system/ ./
120
+ ```
121
+
122
+ **Schritt 4 – Empfohlene Skills prüfen:**
123
+
124
+ Das Framework ruft folgende Skills auf, wenn sie installiert sind. Teile dem User mit, welche fehlen:
125
+
126
+ ```typescript
127
+ // Prüfe ob Skills verfügbar sind – nenne fehlende beim Namen
128
+ ```
129
+
130
+ | Skill | Genutzt von | Priorität |
131
+ |-------|-------------|-----------|
132
+ | `ui-ux-pro-max` | `/red:proto-ux`, `ux-reviewer` | Kern – stark empfohlen |
133
+ | `frontend-design` | `frontend-developer` | Kern – stark empfohlen |
134
+ | `neon-postgres` | `backend-developer` | Nur bei Neon-Stack |
135
+ | `atlassian:spec-to-backlog` | `/red:proto-requirements` | Optional – bei Jira-Nutzung |
136
+ | `atlassian:triage-issue` | `/red:proto-qa` | Optional – bei Jira-Nutzung |
137
+
138
+ **Fehlende Kern-Skills:** Weise den User explizit darauf hin. Agents laufen ohne Skills, aber mit reduzierter Qualität.
139
+ **Fehlende optionale Skills:** Kurz erwähnen, nicht blockieren.
140
+
141
+ ---
142
+
143
+ **Schritt 5 – Bestätigung:**
144
+
145
+ Zeige dem User welche Commands installiert wurden und erkläre den nächsten Schritt:
146
+
147
+ ```
148
+ ✅ Product Development Framework installiert
149
+
150
+ Verfügbare Commands:
151
+ /red:proto-workflow → Pipeline-Status, offene Bugs, letztes Release
152
+ /red:proto-sparring → Idee schärfen + PRD erstellen
153
+ /red:proto-dev-setup → Projekt scaffolden, Git + GitHub einrichten
154
+ /red:proto-research → Research-Fragen, Personas, Problem Statement
155
+ /red:proto-requirements → Feature Specs (IEEE/IREB)
156
+ /red:proto-ux → UX-Design-Entscheidungen, DS-konform (nutzt: ui-ux-pro-max)
157
+ /red:proto-architect → Tech-Design + Security
158
+ /red:proto-dev → Implementierung, orchestriert Agents parallel bei Full-Stack
159
+ /red:proto-qa → Tests + UX-Review parallel, Bug-Reports, Production-Ready
160
+
161
+ Sub-Agents (.claude/agents/ – automatisch gestartet):
162
+ frontend-developer → Frontend-Implementierung (nutzt: frontend-design)
163
+ backend-developer → Backend-Implementierung (nutzt: neon-postgres bei Neon-Stack)
164
+ qa-engineer → Technisches QA-Review
165
+ ux-reviewer → UX-Review (nutzt: ui-ux-pro-max)
166
+
167
+ Starte mit: /red:proto-sparring
168
+
169
+ Nach einer Pause: /red:proto-workflow → zeigt Projektstatus und empfiehlt nächsten Schritt
170
+ ```
@@ -0,0 +1,62 @@
1
+ # Design System
2
+
3
+ Zentrales Verzeichnis für alle Design-Vorgaben. Alle Agents des Frameworks lesen dieses Verzeichnis – es ist die verbindliche Referenz für Entscheidungen in UX-Design, Implementierung und Review.
4
+
5
+ ## Struktur
6
+
7
+ ```
8
+ design-system/
9
+ tokens/
10
+ colors.md ← Farb-Tokens (Primär, Sekundär, Semantic, Neutral)
11
+ typography.md ← Schriften, Größen, Gewichte, Line-Heights
12
+ spacing.md ← Spacing-Scale und Named Sizes
13
+ shadows.md ← Elevation-System
14
+ motion.md ← Transitions, Durations, Easing (optional)
15
+ components/
16
+ button.md ← Beispiel-Komponente (kopieren und anpassen)
17
+ input.md ← Beispiel-Komponente
18
+ card.md ← Beispiel-Komponente
19
+ [weitere].md ← Eigene Komponenten hier ablegen
20
+ patterns/
21
+ navigation.md ← Header, Sidebar, Breadcrumb, Tab-Navigation
22
+ forms.md ← Formular-Aufbau, Validation, Fehlermeldungen
23
+ feedback.md ← Toasts, Modals, Loading States, Empty States
24
+ data-display.md ← Tabellen, Listen, Cards, Badges
25
+ screens/
26
+ README.md ← Anleitung für Screen-Exports
27
+ [flow-name]/ ← Figma-Exports oder Screenshots nach Flow gruppiert
28
+ ```
29
+
30
+ ## Anleitung
31
+
32
+ ### Wann befüllst du dieses Verzeichnis?
33
+
34
+ **Du musst diesen Ordner nicht vor dem ersten Feature vollständig befüllen.** Fang mit dem an was du weißt – ein paar Farb-Tokens, ein Button – und ergänze während der Entwicklung. Was noch nicht definiert ist, füllen die Agents pragmatisch. Was definiert ist, wird verbindlich eingehalten.
35
+
36
+ Das Design System wächst mit dem Projekt. Das ist normal und gewollt.
37
+
38
+ ### So befüllst du dieses Verzeichnis
39
+
40
+ 1. **Tokens zuerst** – Farben, Typografie und Spacing sind die Basis für alle Komponenten. Trage die Werte aus deinem Figma/Styleguide in die Token-Files ein.
41
+
42
+ 2. **Komponenten** – Jede Komponente bekommt ein eigenes File. Kopiere `components/button.md` als Vorlage. Trage Varianten, Zustände und visuelle Specs ein.
43
+
44
+ 3. **Patterns** – Übergreifende UX-Muster (wie Formulare aufgebaut sind, wie Navigation funktioniert). Diese informieren den UX-Design-Schritt direkt.
45
+
46
+ 4. **Screens** – Exportiere Figma-Screens als PNG und lege sie in den passenden Flow-Unterordner. Benenne sie aussagekräftig: `01-login.png`, `02-dashboard.png`.
47
+
48
+ ### Was passiert mit diesen Inhalten?
49
+
50
+ | Agent | Liest | Zweck |
51
+ |-------|-------|-------|
52
+ | `/red:proto-ux` | `components/`, `patterns/` | Nur DS-konforme Komponenten in User Flows |
53
+ | `/red:proto-dev` | `tokens/`, `components/` | Tokens und Specs direkt in Code übersetzen |
54
+ | `frontend-developer` | alles | Vollständige DS-Referenz bei Implementierung |
55
+ | `ux-reviewer` | alles | DS-Compliance-Check nach Implementierung |
56
+
57
+ ### Regeln für Agents
58
+
59
+ - Existiert eine Komponente im DS → baue keine eigene, nutze die Spec
60
+ - Existiert keine passende Komponente → baue eine neue, dokumentiere sie im `## Offene Punkte` im Feature-File
61
+ - Tokens haben Vorrang vor Hardcoded-Werten (kein `#3B82F6` direkt – stattdessen den Token-Namen nutzen)
62
+ - Abweichungen vom DS sind als UX-Bug zu melden (Severity: Medium oder höher)
@@ -0,0 +1,68 @@
1
+ # Button
2
+
3
+ ## Beschreibung
4
+ Löst eine Aktion aus. Buttons sind die primären interaktiven Elemente für Nutzeraktionen – Formulare absenden, Dialoge bestätigen, Prozesse starten.
5
+
6
+ ## Varianten
7
+
8
+ | Variante | Verwendung |
9
+ |-------------|--------------------------------------------------------------|
10
+ | `primary` | Primäraktion auf einem Screen – max. 1 pro sichtbarem Bereich |
11
+ | `secondary` | Sekundäraktion, Alternative zur primären Aktion |
12
+ | `ghost` | Tertiäraktion, wenig visuelles Gewicht (z.B. "Abbrechen") |
13
+ | `danger` | Destruktive Aktionen (Löschen, Unwiderrufliches) |
14
+ | `link` | Aktion als Link gestylt – nur für Navigation innerhalb von Text |
15
+
16
+ ## Zustände
17
+
18
+ | Zustand | Verhalten |
19
+ |------------|----------------------------------------------------------------|
20
+ | `default` | Ruhezustand |
21
+ | `hover` | Leichte Verdunkelung des Hintergrunds |
22
+ | `focus` | Sichtbarer Focus-Ring (`color-border-focus`, 2px, 2px Offset) |
23
+ | `active` | Stärkere Verdunkelung beim Klick |
24
+ | `disabled` | Reduzierte Opacity (0.5), kein Cursor-Pointer, nicht klickbar |
25
+ | `loading` | Spinner + Text oder nur Spinner (Label bleibt sichtbar) |
26
+
27
+ ## Größen
28
+
29
+ | Größe | Padding (h/v) | Font-Size | Height | Icon-Size |
30
+ |-------|-------------------------|--------------|---------|-----------|
31
+ | `sm` | `spacing-2` / `spacing-3` | `text-sm` | 32px | 14px |
32
+ | `md` | `spacing-3` / `spacing-4` | `text-sm` | 40px | 16px |
33
+ | `lg` | `spacing-4` / `spacing-6` | `text-base`| 48px | 18px |
34
+
35
+ ## Visuelle Specs – Primary
36
+
37
+ | Eigenschaft | Default | Hover | Active | Disabled |
38
+ |------------------|---------------------------|----------------------------|----------------------------|---------------------------|
39
+ | Hintergrund | `color-primary-500` | `color-primary-600` | `color-primary-700` | `color-primary-300` |
40
+ | Text | `color-text-on-primary` | `color-text-on-primary` | `color-text-on-primary` | `color-text-on-primary` |
41
+ | Border | keine | keine | keine | keine |
42
+ | Border-Radius | `radius-md` | `radius-md` | `radius-md` | `radius-md` |
43
+
44
+ ## Visuelle Specs – Secondary
45
+
46
+ | Eigenschaft | Default | Hover | Disabled |
47
+ |------------------|---------------------------|----------------------------|----------------------------|
48
+ | Hintergrund | `color-neutral-0` | `color-neutral-100` | `color-neutral-50` |
49
+ | Text | `color-neutral-800` | `color-neutral-900` | `color-neutral-400` |
50
+ | Border | `1px` `color-border-default` | `1px` `color-neutral-400` | `1px` `color-neutral-200` |
51
+
52
+ ## Icons
53
+
54
+ - Icons sind optional, immer links vom Text oder zentriert (icon-only)
55
+ - Icon-only Buttons: quadratisch, immer mit `aria-label`
56
+ - Gap zwischen Icon und Text: `spacing-gap-sm`
57
+
58
+ ## Regeln
59
+
60
+ - Beschriftungen sind aktiv formuliert: "Speichern", "Bestellung absenden" – nicht "OK" oder "Submit"
61
+ - Max. 1 Primary Button pro sichtbarem Kontext
62
+ - Danger-Buttons erst nach Bestätigung (Modal oder Inline-Confirm)
63
+ - Loading-Zustand bei async Aktionen – kein doppeltes Absenden ermöglichen
64
+
65
+ ## Nicht verwenden wenn
66
+
67
+ - Die Aktion zu einer anderen Seite navigiert → `<a>`-Tag oder Link-Komponente
68
+ - Es mehr als 4 Optionen gibt → Dropdown oder Segment-Control