2
0

feat(i2s-problem-statement): extract from monolith

Step 5 of i2s-skill-split refactor. Second atomic sub-skill.

Contents:
- SKILL.md: 5 numbered phases (load context, 7 TAs, consistency,
  3 variants, export). description with explicit HMW/Problem-Statement
  triggers, anti-triggers naming klarheit-mit-idea2self (router),
  i2s-discovery, i2s-persona. Precondition check formalized.
- workflows/problem-statement.md: full workflow (git mv from monolith,
  rename detection preserved, required_reading paths updated to local
  curated refs).
- references/kommunikationsregeln.md: curated (PS-specific dialog
  heuristics: loesung-vs-problem, "alle als zielgruppe", widerspruch
  zu idee).
- references/problem-statement-format.md: curated extract from
  plugin-shared/export-formate.md, problem_statement_format block.
  Includes versions header rules and a filled example.
- references/artefakt-pipeline.md: curated (pipeline position +
  rueckwaerts-updates rules for PS -> ## Idee back-propagation).

Tools: Read, Write, Edit, Glob, Grep, AskUserQuestion, TodoRead,
TodoWrite. (No WebFetch/WebSearch — recherche lives in i2s-recherche.)
This commit is contained in:
Philipp Sieder
2026-05-19 01:16:01 +02:00
parent c56093405f
commit 6067d2ba0e
5 changed files with 293 additions and 0 deletions
+123
View File
@@ -0,0 +1,123 @@
---
name: i2s-problem-statement
description: "Idea2Self Problem-Statement-Workflow. Formuliert das HMW-Statement (How Might We) ueber 7 gefuehrte Teilaspekte (WAS / WER / WARUM / WO / WANN / BISHERIGE ANSAETZE / WIE) und erzeugt 3 Varianten (wortgetreu / geschaerft / zugespitzt) zur Auswahl. Loest aus bei 'Problem-Statement erstellen', 'HMW formulieren', 'Wie koennen wir', 'Problem formulieren', 'Problem fuer meine Idee schaerfen', 'PS erstellen'. NICHT aktivieren bei: 'Idea2Self starten' (Router), 'Persona erstellen' (i2s-persona), 'vage Idee strukturieren' ohne bestehende ## Idee Sektion (dafuer i2s-discovery zuerst). Vorbedingung: idea2self-Datei mit ausgefuellter ## Idee Sektion. Output: ## Problem-Statement Sektion in derselben Datei. Sprache: Deutsch."
allowed-tools: Read Write Edit Glob Grep AskUserQuestion TodoRead TodoWrite
---
# i2s-problem-statement — Problem-Statement (HMW)
Schritt 2 im Idea2Self-Prozess. Formuliert aus der vagen `## Idee` ein scharfes Problem-Statement im **How Might We**-Format. Erzeugt 3 Varianten zur Auswahl und schreibt die finale Version in die idea2self-Datei.
## Essential Principles
1. **Aus Sicht der Zielgruppe, nicht der Loesung.** Problem-Statement beschreibt das Beduerfnis, nicht den geplanten Ansatz. "Wie koennen wir [Kontext] fuer [Zielgruppe] neu gestalten, damit [Beduerfnis] befriedigt wird — unter Beruecksichtigung von [Einschraenkungen]."
2. **7 Teilaspekte sind Pflicht, aber Tiefe ist adaptiv.** Pro Teilaspekt 1 Leitfrage + max 1 Vertiefung. Wenn Nutzer schon klar geantwortet hat -> weiter. Wenn vage -> Vertiefung.
3. **Drei Varianten, dann eine.** Wortgetreu / geschaerft / zugespitzt sind Sparring-Tool, nicht Output. Der Nutzer waehlt, kombiniert, der Skill iteriert max. 1× nach.
4. **Konsistenz gegen ## Idee.** Wenn Problem-Statement der Idee widerspricht (andere Zielgruppe / anderes Problem): explizit benennen, Update auf `## Idee` vorschlagen (Changelog-Eintrag).
5. **"Alle als Zielgruppe" ist nicht akzeptabel.** Im PS-Workflow muss die Zielgruppe konkreter werden als in `## Idee`. Wenn Nutzer ausweicht: Sub-Frage "Wer hat das Problem am DRINGENDSTEN?" einsetzen.
## When to Use
- `## Idee` existiert in der idea2self-Datei, `## Problem-Statement` fehlt oder soll iteriert werden.
- Aus Router-Hand-off (Pfad 2) oder direkter Trigger ("Problem-Statement erstellen", "HMW").
- Iteration nach Recherche: Nutzer hat neue Daten und will PS v0.2 schreiben.
## When NOT to Use
- `## Idee` fehlt oder ist nur eine Ueberschrift -> erst `i2s-discovery`.
- Nutzer will direkt zur Persona -> `i2s-persona` (PS bleibt erstmal vage).
- Nutzer will den Loesungs-Ansatz schaerfen -> `i2s-prototyp-konzept` oder `i2s-experiment-card`.
## Precondition Check
**Vor Phase 1:**
1. idea2self-Datei laden (Pfad aus Nutzer-Prompt oder Standardort).
2. Auf `^## Idee` matchen + Sektion-Inhalt > 50 Zeichen.
3. Fehlt -> abbrechen mit Hinweis: "`## Idee` fehlt in `<datei>`. Trigger zuerst `i2s-discovery`."
## Phases
### Phase 1 — Kontext laden + Voranalyse
**Entry:** Vorbedingung erfuellt.
**Aktionen:**
1. Aus `## Idee` extrahieren: Kern, Zielgruppen-Vermutung, Problem-Vermutung, Kontext, Einschraenkungen.
2. Nutzer Voranalyse zeigen: "Aus deiner Idee lese ich: Problem = [X], Zielgruppe = [Y], Kontext = [Z]. Ich gehe jetzt 7 Teilaspekte mit dir durch. [1] von 7."
3. Wenn `## Problem-Statement` bereits existiert: Aenderungsmodus aktivieren — nur abweichende Aspekte durchgehen, Status mit Checkmarks zeigen.
**Exit:** Nutzer hat Voranalyse bestaetigt oder korrigiert.
### Phase 2 — 7 Teilaspekte (gefuehrte Fragen)
**Entry:** Phase 1 abgeschlossen.
**Aktionen:**
1. Pro Teilaspekt (siehe `workflows/problem-statement.md` Schritt 2): 1 Leitfrage stellen.
2. Bei vager Antwort: 1 Vertiefungs-Frage.
3. Anti-Pattern-Detection (Loesung statt Problem, Zielgruppe "alle", zu abstrakt, Beduerfnis unklar) — bei Match: Korrektur-Frage.
4. Antworten als `_(Vorschlag)_` oder `_(Annahme)_` markieren, je nach Quelle.
**Exit:** Alle 7 TAs sind beruehrt (mit Antwort, "Ich weiss nicht", oder explizitem Ueberspringen).
### Phase 3 — Konsistenzpruefung
**Entry:** 7 TAs durch.
**Aktionen:**
1. Intern pruefen: Passt Zielgruppe zum Problem? Ist Beduerfnis aus Zielgruppen-Perspektive? Widerspricht etwas der `## Idee`?
2. Bei Inkonsistenz: explizit benennen, Anpassung vorschlagen.
3. Bei Inkonsistenz zu `## Idee`: Rueckwaerts-Update anbieten (siehe `references/artefakt-pipeline.md`).
**Exit:** Keine offenen Konsistenz-Konflikte, oder offene Konflikte sind als `## Offene Punkte` in der Datei vermerkt.
### Phase 4 — Drei Varianten erzeugen
**Entry:** Phase 3 abgeschlossen.
**Aktionen:**
1. Variante A (wortgetreu): nah an Nutzer-Formulierungen, minimal verdichtet.
2. Variante B (geschaerft): sprachlich praeziser, KI-Ergaenzungen als `_(Vorschlag)_`.
3. Variante C (zugespitzt): schaerfster Fokus, Mentor-Ziele Loesbarkeit / Wichtigkeit / Erreichbarkeit.
4. Drei Varianten zeigen, Nutzer waehlt oder kombiniert.
5. Max. 1 Iteration nach Auswahl.
**Exit:** Eine finale PS-Variante ist gewaehlt.
### Phase 5 — Export
**Entry:** Phase 4 abgeschlossen.
**Aktionen:**
1. `## Problem-Statement` Sektion in idea2self-Datei schreiben (Schema: `references/problem-statement-format.md`).
2. Versions-Header (V1 fuer erste Erstellung, sonst V[prev+1]).
3. Changelog-Eintrag: `[Datum] PS V<n> formuliert / iteriert.`
4. Hand-off: "Dein Problem-Statement ist in der Datei. Naechster Schritt: Persona. Trigger: 'Persona erstellen' fuer `i2s-persona`. Oder 'Weiter'."
**Exit:** Datei aktualisiert, Hand-off ausgesprochen.
## Quick Reference
Kommunikation: `references/kommunikationsregeln.md`.
Pipeline + Rueckwaerts-Update-Regeln: `references/artefakt-pipeline.md`.
Format-Schema: `references/problem-statement-format.md`.
Workflow-Detail (alle 5 Schritte, alle 7 TAs, alle Anti-Patterns): `workflows/problem-statement.md`.
## Reference Index
| File | Purpose |
|------|---------|
| `workflows/problem-statement.md` | Vollstaendiger 5-Schritt-Ablauf mit den 7 Teilaspekten + Anti-Patterns |
| `references/kommunikationsregeln.md` | Tonalitaet, Marker, Steuerbefehle (curated) |
| `references/problem-statement-format.md` | Markdown-Schema fuer `## Problem-Statement` (HMW-Satz + 6 Sub-Sektionen) |
| `references/artefakt-pipeline.md` | Pipeline-Position + Rueckwaerts-Update-Regeln (curated) |
## Success Criteria
- [ ] Alle 7 Teilaspekte sind bearbeitet oder bewusst markiert.
- [ ] HMW-Satz ist formuliert (`Wie koennen wir [Kontext] fuer [Zielgruppe]...`).
- [ ] Zielgruppe ist konkreter als in `## Idee`.
- [ ] Problem ist aus Zielgruppen-Sicht formuliert, nicht aus Loesungs-Sicht.
- [ ] Scope-Ausschluss ist explizit benannt (in `## Idee` oder `## Problem-Statement`).
- [ ] idea2self-Datei enthaelt `## Problem-Statement` mit Versions-Header + Changelog-Eintrag.
- [ ] Hand-off zu `i2s-persona` ist ausgesprochen.