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