بنقرة واحدة
plan-feature
Plan a new feature, add it to the roadmap, and create a specification document
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Plan a new feature, add it to the roadmap, and create a specification document
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Check which feature plans are fully implemented and archive completed ones
Fix a bug from a GitHub Issue using the Red-Green test approach
Implement the next feature from the roadmap or a specific feature by name
Report a bug as a GitHub Issue with description, reproduction steps, and initial analysis
Create E2E tests with screenshots and build step-by-step documentation for the public website
Build and start ReadyStackGo container for manual testing
| name | plan-feature |
| description | Plan a new feature, add it to the roadmap, and create a specification document |
| disable-model-invocation | false |
| argument-hint | <feature description or idea> |
Plane ein neues Feature für ReadyStackGo, ordne es in die Roadmap ein und erstelle eine Planungsdatei.
Feature-Idee: $ARGUMENTS
Dieser Skill führt durch den gesamten Planungsprozess:
gh project item-list 6 --owner Wiesenwischer --format json --limit 50
gh api repos/Wiesenwischer/ReadyStackGo/milestones --jq '.[] | "\(.title) — \(.open_issues) open, \(.closed_issues) closed"'
gh issue list --label epic --state open --json number,title,milestone
CLAUDE.md) für Konventionen.docs/Plans/PLAN-*.md).docs/Reference/Release-History.md) für bereits implementierte Features.$ARGUMENTS leer ist, frage den User welches Feature geplant werden soll.Analysiere das Feature und kläre mit dem User:
Frage den User nach:
Jedes Feature MUSS einem Milestone zugeordnet sein. Ohne Milestone wird kein Issue erstellt.
Prüfe ob ein passender Milestone existiert:
gh api repos/Wiesenwischer/ReadyStackGo/milestones --jq '.[] | "\(.number) | \(.title)"'
Falls kein passender Milestone existiert → neuen erstellen:
gh api repos/Wiesenwischer/ReadyStackGo/milestones \
-f title="<Milestone-Titel>" \
-f description="<Kurzbeschreibung>" \
-f state=open
Milestone-Zuordnung klären:
Jeder Plan MUSS ein zugehöriges GitHub Issue haben. Ein Plan ohne Issue existiert nicht in der Roadmap.
gh issue create \
--title "<Feature-Titel>" \
--label "epic,feature" \
--milestone "<Milestone z.B. v0.58>" \
--body "$(cat <<'EOF'
## Goal
<Kurzbeschreibung>
## Specification
See [PLAN-<name>.md](docs/Plans/PLAN-<name>.md)
## Tasks
- [ ] Feature 1: ...
- [ ] Feature 2: ...
- [ ] Documentation & Website
EOF
)"
# Issue zum Board hinzufügen
gh project item-add 6 --owner Wiesenwischer --url <ISSUE_URL>
# Board Item-ID finden
ITEM_ID=$(gh project item-list 6 --owner Wiesenwischer --format json --limit 200 --jq ".items[] | select(.content.number == <ISSUE_NUMBER>) | .id")
# Status setzen (Backlog oder Todo je nach Priorität)
PROJECT="PVT_kwHOAKdwzc4BR2Bg"
STATUS_FIELD="PVTSSF_lAHOAKdwzc4BR2Bgzg_jRfE"
BACKLOG_ID="56c4cbb9"
TODO_ID="af3283ef"
gh project item-edit --project-id $PROJECT --id "$ITEM_ID" --field-id $STATUS_FIELD --single-select-option-id $BACKLOG_ID
| Status | ID |
|---|---|
| Backlog | 56c4cbb9 |
| Todo | af3283ef |
| In Progress | 9e4cff0c |
| Review | f25a5d7c |
| Done | c631b3e2 |
Nach dem Erstellen MUSS geprüft werden:
epic + featureErstelle eine Specification unter docs/Plans/PLAN-<feature-name>.md.
WICHTIG: Füge am Anfang der Datei einen Kommentar mit der Issue-Nummer ein:
<!-- GitHub Epic: #NNN -->
# Phase: <Phasen-Titel>
<!-- GitHub Epic: #NNN -->
# Phase: <Phasen-Titel>
## Ziel
<Was soll diese Phase erreichen? 2-3 Sätze.>
## Analyse
### Bestehende Architektur
<Welche bestehenden Patterns/Services sind relevant?>
<Welche Dateien werden erweitert vs. neu erstellt?>
### Betroffene Bounded Contexts
- **Domain**: <Entities, Value Objects, Events>
- **Application**: <Commands, Queries, Services>
- **Infrastructure**: <Repositories, External Services>
- **API**: <Endpoints>
- **WebUI (rsgo-generic)**: <Pages, Components>
## AMS UI Counterpart
> RSGO has two UI distributions with different design systems:
> - **rsgo-generic**: React + Tailwind CSS (reference implementation, `packages/ui-generic`)
> - **AMS UI**: ConsistentUI/Lit web components (separate repo `ReadyStackGo.Ams`)
>
> Shared logic lives in `@rsgo/core` (hooks, API calls, state). Pages/layouts must be reimplemented per distribution.
>
> **Sync-Mechanismus**: RSGO PLAN files sind die Source of Truth. Jedes Feature mit AMS-Counterpart bekommt ein entsprechendes PLAN file im AMS Repo (`C:\proj\ReadyStackGo.Ams\docs\Plans\`).
**Benötigt AMS UI eine Entsprechung?**
- [ ] **Ja** — AMS-Counterpart wird als eigenes PLAN file im AMS Repo angelegt
- [ ] **Ja (deferred)** — AMS-Counterpart wird später geplant
- [ ] **Nein** — nur `@rsgo/core` betroffen (Logik/Hooks, kein UI) → keine AMS-Arbeit nötig
- [ ] **Teilweise** — bestehende AMS-Seite muss erweitert werden
## Features / Schritte
Reihenfolge basierend auf Abhängigkeiten:
- [ ] **Feature 1: <Name>** – <Kurzbeschreibung>
- Betroffene Dateien: ...
- Pattern-Vorlage: <Referenz auf bestehende ähnliche Implementierung>
- Abhängig von: -
- [ ] **Feature 2: <Name>** – <Kurzbeschreibung>
- Betroffene Dateien: ...
- Abhängig von: Feature 1
- [ ] **Dokumentation & Website** – Wiki, Public Website (DE/EN), Roadmap
- [ ] **Phase abschließen** – Alle Tests grün, PR gegen main
## Test-Strategie
- **Unit Tests**: <Was wird getestet?>
- **Integration Tests**: <Was wird getestet?>
- **E2E Tests**: <Welche User-Flows werden getestet?>
## Offene Punkte
- [ ] <Frage oder Unklarheit>
## Entscheidungen
| Entscheidung | Optionen | Gewählt | Begründung |
|---|---|---|---|
| <Thema> | A, B, C | - | <Noch offen / Begründung> |
Zeige dem User eine Zusammenfassung:
## Zusammenfassung
**Feature**: <Feature-Beschreibung>
**Milestone**: <z.B. v0.50>
**GitHub Issue**: #NNN
**Planungsdatei**: docs/Plans/PLAN-<name>.md
**Geschätzter Umfang**: <Anzahl Features/Schritte>
### Geänderte/Erstellte Dateien:
- docs/Plans/PLAN-<name>.md (Planungsdatei erstellt)
- GitHub Issue #NNN (Epic erstellt)
- GitHub Project Board (Issue hinzugefügt)
Falls das Feature auf einer bestehenden Spec-Datei in docs/specs/ basiert:
git rm docs/specs/<ordner>/<datei>.md
git add docs/Plans/PLAN-<name>.md
git rm docs/specs/... # falls Spec gelöscht
git commit -m "Plan <Feature-Titel>"
Commit-Regeln (siehe CLAUDE.md):
epic,feature (PFLICHT)docs/Plans/PLAN-*.md) mit <!-- GitHub Epic: #NNN -->C:\proj\ReadyStackGo.Ams\docs\Plans\ erstellt