homelab-brain/redakteur/STATE.md
root 3ce2304e41 fuenfvoracht: Board-Interaktivität + Redakteur Sprint-Plan
FünfVorAcht:
- Redaktionsplan zeigt jetzt mehrere Artikel pro Tag
- Umplanen-Button (Inline-Panel mit Slot-Prüfung, 15-Min-Raster)
- Löschen-Button mit Sicherheitsabfrage
- STATE.md aktualisiert (Changelog 26.02.2026)

Redakteur:
- STATE.md mit vollständigem Sprint-Plan angelegt
- Übernommene Komponenten aus FünfVorAcht dokumentiert
- 4 Sprints: Infrastruktur → WP-Anbindung → Editor → Polish

Made-with: Cursor
2026-02-27 06:38:44 +07:00

5.5 KiB

STATE: Redakteur

Stand: 26.02.2026


Status

🗓️ In Planung — Umsetzung ab sofort


Konzept

KI-gestützter WordPress-Artikel-Generator mit Dashboard. Eigenständiges System, unabhängig von FünfVorAcht (CT 112). Basis: ~70% Code-Übernahme aus FünfVorAcht, angepasst für WordPress statt Telegram-Kanal.


Geplante Infrastruktur

CT Dienst Host IP geplant Status
113 Redakteur pve-hetzner 10.10.10.113 Noch nicht erstellt
  • Stack: Python/Flask + Docker (wie CT 112)
  • Dashboard: https://redakteur.orbitalo.net (Cloudflare Tunnel)
  • Lokal: http://[Tailscale-IP]:8080
  • Repo: git.orbitalo.net/orbitalo/redakteur
  • Ziel-WordPress: CT 101 (arakava-news-2.orbitalo.net)

Was aus FünfVorAcht übernommen wird

Direkt kopieren (0 Änderungen)

Datei Beschreibung
logger.py Strukturiertes JSON-Logging
openrouter.py OpenRouter API-Wrapper
Dockerfile.web Tailwind self-hosted, Gunicorn
requirements-web.txt Flask, APScheduler, pytz, ...

Stark übernehmen, leicht anpassen

Datei Was übernommen wird Was sich ändert
database.py articles, settings, reviewers, prompts Neue Felder: wp_post_id, category, featured_image, seo_*
app.py Auth, Settings, Prompt-Verwaltung, Scheduling-Logik WordPress REST API Routen statt Bot-Routen
settings.html Reviewer-Management, API-Key WP URL + Application Password
prompts.html Prompt-Editor Neue Variablen: Ton, SEO, Kategorie
history.html Post-Historie Spalte WP-URL statt Telegram-ID
hilfe.html Struktur + Layout Neue Inhalte für WP-Workflow

Komplett neu bauen

Was Warum neu
templates/index.html Zwei-Spalten-Editor, Medien-Manager, WP-Vorschau
wordpress.py WordPress REST API Client (Artikel, Kategorien, Medien)
Telegram-Notifier Nur Post-Bestätigung nach Veröffentlichung, kein Bot-Scheduler

Funktionsumfang

Dashboard

Feature Status
KI-Artikel generieren (OpenRouter) übernommen
Prompt-System (anpassbar) übernommen
Zwei-Spalten-Editor: Markdown links, WP-Vorschau rechts 🆕 neu
Ton wählbar: Informativ / Meinungsstark / Reportage 🆕 neu
SEO automatisch mitgeneriert (Meta-Title, Description, Keyword) 🆕 neu
Featured Image: og:image aus Quell-URL oder manuell 🆕 neu
YouTube: als Hero oder im Text einbindbar 🆕 neu
WP-Kategorien zuweisbar 🆕 neu
Kalender-Ansicht (Nächste 7 Tage, mehrere Slots) übernommen
Umplanen / Löschen im Board übernommen
Redakteure-Verwaltung (Telegram-Benachrichtigung) übernommen
Strukturiertes JSON-Logging übernommen
Fehler-Alarm per Telegram übernommen
Anleitung (/hilfe) übernommen

Veröffentlichung

Option Details
Sofort POST an WordPress REST API → direkt live
Entwurf Speichern als WP-Entwurf, kein Publish
Geplant Datum + Uhrzeit → WP scheduled post oder lokaler Scheduler

Telegram-Benachrichtigung (nach Veröffentlichung)

  • Kein Freigabe-Workflow wie bei FünfVorAcht
  • Nur Bestätigungs-Ping: " Artikel veröffentlicht: [Titel] → [URL]"

WordPress REST API

  • Endpoint: https://arakava-news-2.orbitalo.net/wp-json/wp/v2/
  • Auth: Application Password (in Settings-UI konfigurierbar)
  • Operationen:
    • Artikel erstellen/aktualisieren (POST/PUT /posts)
    • Kategorien abrufen (GET /categories)
    • Featured Image hochladen (POST /media)
    • Artikel-Status: draft, publish, future (geplant)

Sprint-Plan

Sprint 1 — Infrastruktur + Grundgerüst

Prio Task
1 CT 113 auf pve-hetzner erstellen (wie CT 112)
2 Forgejo-Repo redakteur anlegen
3 logger.py, openrouter.py, Dockerfiles, requirements kopieren
4 database.py mit WP-Feldern ableiten
5 app.py Grundstruktur + Auth übernehmen
6 MOTD + Tailscale + Cloudflare Tunnel einrichten

Sprint 2 — WordPress-Anbindung

Prio Task
7 wordpress.py — REST API Client (Artikel, Kategorien, Medien-Upload)
8 Settings-UI: WP URL + Application Password konfigurierbar
9 Publish-Workflow: Sofort / Entwurf / Geplant
10 Telegram-Bestätigungs-Ping nach Veröffentlichung

Sprint 3 — Editor + Medien

Prio Task
11 Zwei-Spalten-Editor mit Echtzeit-WP-Vorschau
12 SEO-Felder (Meta-Title, Description, Keyword) automatisch aus KI
13 Featured Image aus og:image oder manuell eingeben
14 YouTube-Einbindung (Hero oben / im Text)
15 WP-Kategorien zuweisbar

Sprint 4 — Polish

Prio Task
16 Ton-Auswahl (Informativ / Meinungsstark / Reportage)
17 Mehrere Quellen kombinierbar für einen Artikel
18 Zweite Instanz vorbereiten (Contabo USA/Singapur, eigene .env)

Abhängigkeiten

  • CT 101: WordPress REST API muss erreichbar sein
  • CT 111: Forgejo für Code-Verwaltung
  • OpenRouter API Key (aus credentials.md)
  • Telegram Bot Token für Benachrichtigungen

Logging

Identisch mit FünfVorAcht (logger.py):

{"ts": "2026-02-26T14:00:00Z", "level": "INFO", "event": "article_published", "wp_post_id": 1234, "url": "https://..."}

Events: article_generated, article_saved, article_published, article_failed, media_uploaded, wp_error