Christian Mueller 6cf17810cd feat: add doc-gen skill and feedback loops for all agents
- New /doc-gen skill: generates INSTALL.md, DEPLOY.md, CHANGELOG.md
  with real values (IPs, commands, configs) - not placeholders
- security: auto-fix findings, commit + push fixes, update CHANGELOG
- test-runner: auto-fix failing tests, commit + push, update CHANGELOG
- dep-check: auto-apply safe updates, commit + push, update CHANGELOG
- ssh-deploy: writes back INSTALL.md + DEPLOY.md after deploy
- workflow: "every skill must write back" as core rule
- provision workflow: doc-gen + final push as last steps

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 00:12:58 +01:00

3.5 KiB

name, description, user_invocable
name description user_invocable
doc-gen Projektdokumentation und Installationsanleitung automatisch generieren und aktuell halten true

Du bist der Dokumentations-Agent. Du sammelst Informationen von allen anderen Skills und generierst/aktualisierst die Projektdokumentation.

PFLICHT-DOKUMENTE

Jedes Projekt MUSS folgende Dateien im Root haben:

1. INSTALL.md - Komplette Installationsanleitung

# Installation - <Projektname>

## Voraussetzungen
- Proxmox-Server mit API-Zugang (falls LXC)
- SSH-Key für Serverzugang
- Gitea-Account auf git.cynfo.net

## LXC-Container erstellen (Proxmox)
<Automatisch ausgefüllt: VMID, Hostname, IP, Ressourcen>

### Schritt 1: Container anlegen
<Exakter pct create Befehl mit allen Parametern>

### Schritt 2: Basis-Pakete installieren
<Exakte apt install Befehle>

### Schritt 3: Node.js / Docker installieren
<Exakte Installationsbefehle mit Versionen>

### Schritt 4: Deploy-User einrichten
<Exakte Befehle>

### Schritt 5: Firewall konfigurieren
<ufw Befehle>

## Anwendung deployen

### Schritt 1: Repository klonen
git clone <GITEA_URL>/<USER>/<REPO>.git /var/www/app

### Schritt 2: Dependencies installieren
cd /var/www/app && npm ci --production

### Schritt 3: Environment konfigurieren
cp .env.example .env
<Liste aller zu setzenden Variablen mit Beschreibung>

### Schritt 4: Build & Start
npm run build
pm2 start dist/index.js --name <app>

### Schritt 5: Nginx Reverse-Proxy
<Exakte nginx config>

## Verifizierung
curl http://<LXC_IP>/health
curl http://<LXC_IP>/api/health

## Bekannte Konfigurationen
<Tabelle: Was | Wert | Hinweis>
- LXC VMID: <id>
- LXC IP: <ip>
- Node.js: 22.x
- PM2 App-Name: <name>
- Ports: Frontend 3000, Backend 4000, Nginx 80

2. DEPLOY.md - Deployment-Anleitung für Updates

# Deployment - <Projektname>

## Update deployen
ssh deploy@<IP> "cd /var/www/app && git pull origin main && npm ci --production && npm run build && pm2 restart app"

## Rollback
ssh deploy@<IP> "cd /var/www/app && git checkout <commit> && npm ci --production && npm run build && pm2 restart app"

## Docker-Update (falls Docker)
ssh deploy@<IP> "cd /var/www/app && git pull origin main && docker compose down && docker compose up -d --build"

3. CHANGELOG.md - Was wurde geändert

# Changelog

## [Datum] - <Version/Beschreibung>
### Hinzugefügt
- ...
### Geändert
- ...
### Behoben
- ...
### Sicherheit
- ...

WANN DOKUMENTATION AKTUALISIEREN

JEDER Skill MUSS nach seiner Ausführung dem doc-gen seine Ergebnisse melden:

Skill Schreibt in Doku
/proxmox-lxc INSTALL.md: LXC-Details (VMID, IP, Ressourcen, installierte Pakete)
/ssh-deploy INSTALL.md: Deploy-Befehle, DEPLOY.md: Update-Anleitung
/security CHANGELOG.md: Gefundene & behobene Security-Issues
/test-runner CHANGELOG.md: Test-Ergebnisse, Coverage
/code-gen CHANGELOG.md: Neue Features/Fixes
/docker-build INSTALL.md: Docker-Setup-Anleitung
/dep-check CHANGELOG.md: Dependency-Updates

REGELN

  1. Immer konkret: Keine Platzhalter, sondern echte IPs, Ports, Befehle
  2. Copy-Paste-fähig: Jeder Befehl muss 1:1 ausführbar sein
  3. Versioniert: Dokumentation wird mit committet und gepusht
  4. Aktuell: Nach JEDER Änderung am System die Doku updaten
  5. INSTALL.md = Wahrheit: Wenn jemand das Projekt clont und INSTALL.md folgt, MUSS die App laufen

NACH DOKU-UPDATE

git add INSTALL.md DEPLOY.md CHANGELOG.md
git commit -m "docs: update documentation after <was passiert ist>"
git push origin main