diff --git a/CLAUDE.md b/CLAUDE.md
index ea11209..915cd35 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -146,3 +146,51 @@ RULES:
- ""
- ""
- "Fuer Unterverzeichnisse relative Pfade anpassen, z.B. ../favicon.svg"
+
+# ───────────────────────────────────────────────────────────────────
+# STAGING-UMGEBUNG
+# ───────────────────────────────────────────────────────────────────
+
+STAGING:
+ url: https://staging.aegis-sight.de
+ server: 46.225.225.49 (gleicher Host wie Live)
+ container: aegis-website-staging-nginx (eigener Docker-Container)
+ pfad: /opt/v2-Docker/aegis-website-staging/html
+ branch: develop
+ netzwerk_ip: 172.18.0.7 (im v2_internal_net)
+ zugriff: Magic-Link-Login an info@aegis-sight.de (Cookie 30 Tage)
+
+ besonderheit_lagen_daten:
+ erklaerung: |
+ Die Live-Lagen-Daten (/lagen/*/data/*.json) werden vom sync-lagebild.py
+ erzeugt und nicht ins Repo committed. Im Staging-Container ist das
+ Live-/lagen/-Verzeichnis read-only gemountet, damit die Karten-Vorschau
+ auch im Staging mit echten Daten funktioniert.
+ mount_im_compose: /opt/v2-Docker/aegis-website/html/lagen:/usr/share/nginx/html/lagen:ro
+
+ auth_service:
+ pfad: /opt/v2-Docker/aegis-staging-auth
+ service: aegis-staging-auth.service
+ port: 127.0.0.1:8095
+ cookie_domain: staging.aegis-sight.de
+ cookie_name: aegis_staging_auth
+
+WORKFLOW_STAGING_TO_LIVE:
+ 1_aenderung_in_develop: |
+ cd /opt/v2-Docker/aegis-website-staging/html
+ git checkout develop
+ # Aenderung machen
+ git add . && git commit -m ...
+ git push origin develop
+ 2_staging_aktualisieren_manuell: |
+ ssh claude-dev@46.225.225.49 'cd /opt/v2-Docker/aegis-website-staging/html && git pull'
+ # Kein Container-Reload noetig (statische Files)
+ 3_in_browser_pruefen: https://staging.aegis-sight.de
+ 4_promote_zu_live: |
+ # Auf Gitea: Pull Request develop -> main, dann mergen
+ # Danach auf Live-Server pullen:
+ ssh claude-dev@46.225.225.49 'cd /opt/v2-Docker/aegis-website/html && git pull'
+
+STAGING_OFFEN_TODO:
+ - Auto-Deploy: Webhook-Listener bei Push auf develop
+ - Promote-UI: Ein-Klick-Button statt manuellem PR + Pull