initial: claude code workflow bundle (plan-start, status, handoff, adr)

This commit is contained in:
Kristian
2026-04-17 07:28:49 +02:00
commit 20a0ab38f2
16 changed files with 978 additions and 0 deletions
+97
View File
@@ -0,0 +1,97 @@
---
name: plan-start
description: Legt in einem neuen oder leeren Projektordner die standardisierte Dokumentations- und Wegweiser-Struktur an (CLAUDE.md, docs/ mit 00-overview, 10-plan, 20-architecture, 90-status, 30-decisions/, 40-workflows/, sessions/). Nutzt die Templates unter templates/ dieses Skills. Soll nur auf explizite Nutzeranforderung laufen, nie autonom.
disable-model-invocation: true
argument-hint: "<kurzer projekttitel oder eine zeile zur idee>"
allowed-tools:
- Read
- Write
- Edit
- Bash
---
# plan-start — Projekt-Scaffolding
## Wann der Skill läuft
Ausschließlich auf expliziten Aufruf, in einem **neuen oder noch leeren
Projektordner**. Der Skill legt eine Grundstruktur an und darf vorhandene
Dateien nicht überschreiben.
## Was der Skill tut
1. Prüft den aktuellen Arbeitsordner. Wenn dort bereits `CLAUDE.md` oder
`docs/` existiert → **abbrechen** und dem Nutzer melden: „Hier liegt schon
ein initialisiertes Projekt. `plan-start` ist idempotent nicht — du willst
vermutlich `status` oder direkt in `docs/` editieren."
2. Stellt dem Nutzer vor dem Schreiben **kurz und konkret** diese Fragen
(eine nach der anderen, nicht als Sammel-Liste):
- **Projektname** (wird als Titel in CLAUDE.md und Headings verwendet)
- **Ein-Satz-Zweck** („Wofür ist das Projekt da?")
- **Aktuelle Phase** (Planung / Build / Wartung — Default: Planung)
- **Stack in Stichworten** (z. B. „Python + FastAPI + PocketBase",
„NixOS + Caddy + Docker Compose" — darf auch leer sein, wenn noch unklar)
3. Legt folgende Struktur an — relativ zum aktuellen Arbeitsordner:
```
./CLAUDE.md
./.claude/skills/.gitkeep
./docs/00-overview.md
./docs/10-plan.md
./docs/20-architecture.md
./docs/90-status.md
./docs/30-decisions/README.md
./docs/40-workflows/README.md
./docs/sessions/README.md
```
4. Befüllt jede Datei aus dem passenden Template unter
`./templates/` dieses Skills. Platzhalter werden wie folgt ersetzt:
| Platzhalter | Quelle |
|---|---|
| `{{PROJECT_NAME}}` | aus Frage 1 |
| `{{PROJECT_PURPOSE}}` | aus Frage 2 |
| `{{PROJECT_PHASE}}` | aus Frage 3 |
| `{{PROJECT_STACK}}` | aus Frage 4, leer → `TBD` |
| `{{TODAY_ISO}}` | heutiges Datum als `YYYY-MM-DD` via `date +%F` |
| `{{USER_NAME}}` | optional: `git config user.name`, sonst leer |
5. Erzeugt `.claude/skills/.gitkeep` als leere Datei, damit das
projektspezifische Skill-Verzeichnis unter Versionskontrolle bleibt, auch
solange es leer ist.
6. Gibt am Ende eine **kurze Bestandsaufnahme** in 35 Zeilen aus: was wurde
angelegt, was als Nächstes sinnvoll ist (Empfehlung: `docs/00-overview.md`
und `docs/10-plan.md` durchgehen und konkretisieren, dann `handoff`).
## Harte Regeln
- **Nie** Dateien überschreiben. Wenn auch nur eine der Zieldateien existiert:
komplett abbrechen und den Nutzer informieren.
- **Nie** in ein nicht-leeres Git-Repo schreiben, ohne vorher zu warnen. Ein
Repo mit einer `.git/`, aber ohne `CLAUDE.md` und ohne `docs/` ist in Ordnung
— das heißt der Nutzer hat bereits `git init` gemacht, das ist der Normalfall.
- **Nie** `git commit` selbstständig ausführen. Der Nutzer entscheidet, was
committet wird.
## Tonfall in den erzeugten Templates
- Prosa auf Deutsch, kurz, konkret.
- Code, Pfade, Kommandos auf Englisch.
- Platzhalter-Abschnitte sind mit `TBD` oder einem sichtbaren HTML-Kommentar
`<!-- TODO: ... -->` markiert, damit der Nutzer sofort sieht, was noch gefüllt
werden muss.
## Templates
Siehe `./templates/` im Skill-Ordner:
- `CLAUDE.md.tmpl`
- `00-overview.md.tmpl`
- `10-plan.md.tmpl`
- `20-architecture.md.tmpl`
- `90-status.md.tmpl`
- `30-decisions.README.md.tmpl`
- `40-workflows.README.md.tmpl`
- `sessions.README.md.tmpl`