Files
claude-workflow/skills/ship/SKILL.md
T
martinandClaude Sonnet 4.6 0bd3e9b738 ship: neuer Skill für finales Commit → PR → Merge → Cleanup
Explizit vom User aufzurufen wenn ein Feature abgeschlossen ist.
Ersetzt den manuellen Workflow: commit, push, PR erstellen, approve,
mergen, checkout main, Branches aufräumen.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 14:25:33 +02:00

2.1 KiB

description, context
description context
Finales Commit → Push → PR erstellen → Mergen → Aufräumen. Explizit vom User aufzurufen wenn ein Feature abgeschlossen ist. fork

/ship — Commit, PR, Merge, Cleanup

Führe diese Schritte der Reihe nach aus. Bei jedem Fehler: Abbruch mit klarer Fehlermeldung.

Schritt 1: Commit

Prüfe ob es uncommittete Änderungen gibt:

git status
git diff --stat

Falls ja: Erstelle einen Commit. Leite den Commit-Titel aus den geänderten Dateien und git diff --stat ab. Nutze das HEREDOC-Format:

git add -p   ← nur wenn sinnvoll, sonst: git add <spezifische Dateien>
git commit -m "..."

Falls nichts zu committen: weiter mit Schritt 2.

Schritt 2: Push

git push

Falls der Branch noch kein Remote-Tracking hat:

git push -u origin <branch>

Schritt 3: PR erstellen

Ermittle Branch-Namen und Commits seit main:

git branch --show-current
git log --oneline origin/main..HEAD

Erstelle den PR via mcp__gitea__pull_request_write (method: create):

  • owner: aus git remote URL ermitteln
  • repo: aus git remote URL ermitteln
  • head: aktueller Branch
  • base: main
  • title: Erster Commit-Titel des Branches
  • body: Alle Commits als Aufzählung + Akzeptanzkriterien als Checkboxen (was wurde geändert, wie verifiziert)

Merke dir den PR-Index aus der Antwort.

Schritt 4: PR freigeben (Approve)

Genehmige den PR via mcp__gitea__pull_request_review_write (method: create_review):

  • review_type: APPROVED
  • body: "Automatisch freigegeben via /ship"

Schritt 5: PR mergen

Merge via mcp__gitea__pull_request_write (method: merge):

  • merge_style: merge
  • delete_branch: true ← löscht Remote-Branch automatisch

Schritt 6: Checkout main + Pull

git checkout main
git pull

Schritt 7: Lokale Branches aufräumen

git branch -d <feature-branch>
git remote prune origin

Falls git branch -d scheitert (Branch nicht vollständig gemergt laut git): trotzdem löschen mit -D, da wir wissen dass der PR gemergt wurde.

Abschluss

Gib aus:

  • PR-URL
  • Welche Branches gelöscht wurden
  • Aktueller Stand von git log --oneline -3