C-Stone Coding Setup
Vollständige Dokumentation der Entwicklungsumgebung — Stand 18. August 2026
Unternehmer-zentriertes Multi-Tier Setup · Markus Kruse (C-Stone Development Solutions) · Alle Systeme DSGVO-konform auf EU-Servern · AWS Bedrock Frankfurt + Hetzner Deutschland
Tier 0
Lokal · on-prem EU
NucBox EVO-X2 · llama.cpp llama-server (kein Ollama) · via LiteLLM :4444 + SSH-Tunnel · llama-swap :9090 lädt on-demand
  • 001 Qwen3-Coder-Next 80B-A3B ★
  • 002 Qwen3.8-27B Q6 (Vision, no-think)
  • 003 Mistral Small 4 · 004 Gemma 4 26B
  • 006 Muse Glimmer 30B (Vision) ★
€0 (nur Strom) · echte Daten OK
Tier 1
DEV · Max Subscription
Claude Code über Max-OAuth · NUR Fake-Daten
  • 101 Sonnet 4.6 ↵ · 102 Sonnet 5.0 · 103 Opus 4.8 · 104 Haiku 4.5
  • 105/106 DeepSeek V4 Flash/Pro (Fallback)
  • 107 GPT-5.5 (OpenAI API)
  • 108-112 NVIDIA NIM (DeepSeek ★, Nemotron 120B/49B, GLM-5.2, MiniMax M3)
Sub-Flat · nur Fake-Daten
Tier 2
PROD · AWS Bedrock Frankfurt
eu-central-1 (DSGVO) · echte/personenbezogene Daten erlaubt
  • 201 Sonnet 4.6 (komplex)
  • 202 Haiku 4.5 (schnell, günstig)
  • 203 Qwen3 235B (Boilerplate)
  • 204 DeepSeek V4 Flash · hostyourai.com EU (Anthropic-API)
Pay-per-use · DSGVO-konform

Aktive Projekte

🧭
AI Executive Navigator
KI-gestützter Chief-of-Staff als SaaS
React FastAPI Dev
👥
C-Stone CRM
Custom CRM mit SeaTable Integration
React Node.js Dev
Royal Rangers Camp Manager
Lagerverwaltung ~1.216 Teilnehmer
React 18 FastAPI Live
📱
Post Generator
Eingestellt (13.08.) — nie deployed, gelöscht
Eingestellt
🔍
C-Stone KI-Check
12-Min KI-Potenzial-Assessment · Lead Magnet
Vanilla JS n8n Live
🌐
AVGS Homepage
SEO + KI-Chatbot für AVGS Coaching Celle
HTML5 n8n Ready
🏢
C-Stone Homepages
Eingestellt (13.08.) — nie deployed, gelöscht
Eingestellt
📊
Excel Analyser
KI-gestützte FTE-Konsolidierung aus Excel
Python Claude AI DSGVO
📦
Base Project
Template für neue Projekte (+ DSGVO-Gitignore, Fake-Data-Pattern)
Template Clowdex
🏗️
BHW Schwesig
Tischlerei-Website · statisches HTML
Live HTML/CSS
📊
Presentation Maker
KI-Präsentationsgenerator · FastAPI + Bedrock
FastAPI React Live
📈
Coding Dashboard
Token/Kosten-Visualisierung aus Session-Logs
Python HTML
🛡️
Security Setup
Sicherheits-Dokumentation + Audit-Checklisten
Doku Checklisten
CHM Celebrate Hope
Fundraising für ugandisches Kaffeeprojekt
Konzept Fundraising
🗂️
AI Office Manager
KI-Postfach & Office-Assistent · os.c-stone-nx.com
FastAPI React Live
📝
Bewerbungsmanager
KI-Bewerbungsmanager · bewerbungsmanager.c-stone-dev.com
Claude AI Live
🏡
Traumhaussuche
KI-Immobiliensuche mit automatisiertem Matching
Python Claude AI Dev
📊
C-Stone Business Analyser
KI-Business-Reports auf Beratungsniveau · analyser.c-stone-dev.com
FastAPI Claude AI Live
🖥️
C-Stone NX RMM
Remote-Monitoring & -Management für Kunden-IT · rmm.c-stone-nx.com
FastAPI React Live
🎓
C-Stone Academy
KI-Kurs-Website · c-stone-academy.com
HTML/CSS Live
🧾
Invoice Check
KI-Rechnungs-Filter per IMAP + PDF-Scan · lokal (Evo-X2)
Python GDPR
🌐
c-stone.info
Dachmarken-Verteilerseite · 3 Kompetenzbereiche
Static HTML Live
🪨
C-Stone Präsentationen
Self-contained HTML-Slide-Decks im Homepage-Design
Static HTML Live
🗺️
AIM Go-Live Concept
Fusionsplan 3 Gesellschaften · 185 Aufgaben / 24 Workstreams
Markdown/CSV Konzept
📄
Dokumenten-Analyzer
Lokale PDF/DOC/XLS-Analyse via NucBox-LLM (Port 4444)
Python GDPR
🔒
GDPR Data Cleaner
PII-Anonymisierung · Presidio + Ollama · NucBox
Presidio Live · lokal
📋
Lead Manager
dasprogramm.io · Kanban · BHW Schwesig
FastAPI React Live
🎓
AZAV Karrierecoaching
Session-Doku · HTML+DOCX · lokal (DSGVO)
Lokal DSGVO
📢
C-Stone Marketing
Google/Meta Ads-Optimierung · Bedrock-Analyse · Setup-Phase
Python Bedrock Setup
🤝
Zentiq NX CRM
KI-CRM SaaS · Eingestellt 07/2026
Eingestellt
Zuletzt aktualisiert: 18. August 2026 · Erstellt von Claude Code (Sonnet 5)
Tier-Modell
Drei Stufen — von lokaler Offline-Entwicklung bis zur vollautonomen Cloud-KI
Die Tier-Wahl bestimmt Modell, Kosten und Datenschutz. Auswahl via cld (claude-start.sh). Tier 1 (DEV): automatischer Fallback DeepSeek V4 bei Pro-Contingent-Erschöpfung.
Übersicht
TierUmgebungcld-OptionProviderKosten
Tier 0a Lokal Mac (Offline) VS Code direkt Ollama lokal €0
Tier 0 EVO-X2 / NucBox (on-prem) 001-004, 006 llama-server (NucBox) via LiteLLM :4444 €0 (Strom)
Tier 1 DEV (Max Sub · Fake-Daten) 101 ↵ (Default) Max OAuth → Fallback DeepSeek ~$20/Monat
Tier 1 · NVIDIA DEV · Cloud GPU (Fake-Daten) 107-112 OpenAI GPT-5.5 / NVIDIA NIM (nvapi-Key) Token-Kontingent
Tier 2 PROD (Bedrock, echte Daten) 201-203 AWS Bedrock Frankfurt (eu-central-1) ~$3/$15 pro 1M
Tier 0a — Lokal Mac (Offline)

VS Code + Continue.dev + Ollama. Kein Internet benötigt. 100% privat.

ModellGrößeEinsatz
qwen3-coder:30b18 GBCode, Chat, Apply
deepseek-coder-v2:16b8.9 GBCode, Chat, Apply
gemma4:12b7.6 GBChat, Zusammenfassungen
devstral:24b14 GBCode-Generierung
qwen2.5-coder:14b9 GBTab-Autocomplete
Tier 0 — GMKTEC EVO-X2 / NucBox (on-prem, „AI Lab")

NucBox EVO-X2 als lokaler LLM-Host · Zugriff via cld → 001-004, 006. Bei Fremdnetz automatisch Jump über Hetzner (Reverse-Tunnel :2223, s. Lokales Setup). On-prem EU → GDPR-gleichgestellt mit Bedrock. Seit 18.08.: alle lokalen Modelle laufen über einen Endpunkt llama-swap :9090 (ein SSH-Tunnel statt einer pro Modell). llama-swap lädt/swappt on-demand GTT-sicher via Groups: primary (Coder/Qwen3.8/Mistral/Muse — genau ein Hauptmodell resident, swap) + companion (Gemma-Safety-Klassifikator, persistent → koexistiert mit jedem Hauptmodell). Ersetzt das frühere Default-Duo + systemd-Conflicts=. claude-start.sh = ein local-Block (620→410 Zeilen); qwen38(002)/mistral(003) weiter über grammar-fix-proxy (Tool-Schema-Patch) → :9090. Denselben :9090-Endpunkt nutzen Open WebUI (mobil via WireGuard-VPN) und der local-vision-Skill. Seit 15.08.: DeepSeek V4 lokal entfernt (GPU-Crash ab ~40k ctx), Option 002 = Qwen3.8-27B Q6 (no-think, Vision). voice-qwen.service läuft separat (nicht Teil von llama-swap).

cldModellPortEinsatz
001 ★Qwen3-Coder-Next 80B-A3Bllama-swap :9090Schwere Code-Tasks · Group primary (ctx 180k)
002Qwen3.8-27B Q6llama-swap :9090 (via grammar-fix-proxy)Reasoning + Vision (no-think, ctx 64k, ~16 Tok/s, ~26 GB) · ersetzt DeepSeek V4 lokal (15.08.)
003Mistral Small 4 119B-A6Bllama-swap :9090 (via grammar-fix-proxy)Coaching / Text · Group primary (verdrängt anderes Hauptmodell, ctx 131k)
004Gemma 4 26B MoEllama-swap :9090Group companion (persistent) · Safety-Klassifikator, koexistiert mit jedem Hauptmodell
006 ★Muse Glimmer 30Bllama-swap :9090131k Kontext, Vision+Speculative Decoding · Group primary
Tier 1 — DEV (Max Subscription OAuth)

Läuft direkt via Claude Max Subscription (OAuth) — kein Proxy. Der DEV-Modus unsetet alle ANTHROPIC_* und beendet einen etwaigen LiteLLM auf :4445. Codes: 101 Sonnet 4.6 ↵ · 102-104 Sonnet 5.0/Opus 4.8/Haiku 4.5 (--model $DEV_MODEL) · 105/106 DeepSeek-Fallback · 107 GPT-5.5 · 108-112 NVIDIA NIM. Fallback DeepSeek via settings.json fallbackModel. Nur Fake-Daten!

cld → Enter (Default = 101) — DEV · Claude Max OAuth
unset ANTHROPIC_* · Fallback: DeepSeek V4 (settings.json)
Tier 2 — PROD (AWS Bedrock)

Claude über AWS Bedrock Frankfurt (eu-central-1). Drei Modell-Optionen im cld-Menü. DSGVO-konform, volle Tool-Nutzung (SSH, Playwright).

cld-OptionModellProviderEinsatz
201Claude Sonnet 4.6Bedrock (eu.anthropic.claude-sonnet-4-6)Standard, komplexe Tasks
202Claude Haiku 4.5Bedrock (eu.anthropic.claude-haiku-4-5)Schnell, günstig
203Qwen3 235BBedrock via LiteLLM (:4444)Boilerplate, günstig
204DeepSeek V4 Flashhostyourai.com (EU, Anthropic-API · deepseek-ai/DeepSeek-V4-Flash)Coding · EU-Hosting, AVV nach Art. 28 nötig
Wichtig: CLAUDE_CODE_USE_BEDROCK=1 muss über claude-start.sh gesetzt werden, nicht in settings.json — sonst überschreibt es ANTHROPIC_BASE_URL (LiteLLM-Konflikt).
NVIDIA NIM — Cloud GPU-Modelle

NVIDIA NIM API via config-nvidia.yaml · Optionen 108-112 in claude-start.sh · nvapi-Key erforderlich

⚠️ deepseek-ai/deepseek-v4-flash ist bei NVIDIA seit 2026-08-07 EOL (HTTP 410 Gone) — bestätigt im Fix-Kommentar von config-museglimmer.yaml. config-nvidia.yaml selbst zeigt (Stand dieser Doku) noch nicht korrigiert auf dieses Modell: Option 108 und der 110-Alias (GLM-5.2, der als Platzhalter auf DeepSeek-Flash zeigt) sind damit vermutlich funktionsunfähig. Ungeprüft, ob korrigiert — vor Nutzung curl-Test gegen 108, sonst 109 Nemotron-120B nehmen (bestätigt funktionsfähig).
cld-OptionModellEinsatz
108DeepSeek V4 FlashCoding, schnell · ⚠️ Backend evtl. EOL (410), prüfen
109 ★Nemotron-120BReasoning / große Aufgaben — verifiziert funktionsfähig
110GLM-5.2ZhipuAI-Endpoint timeoutet auf NIM · Alias-Platzhalter zeigt auf DeepSeek-Flash (⚠️ evtl. EOL, s.o.)
111MiniMax-M3Multimodal
112Nemotron-49BBalanced Performance
Lokales Setup
macOS Entwicklungsumgebung · VS Code · Ollama · Docker Desktop
🖥️ System
Betriebssystem
macOS (Darwin 24.6.0)
Shell
zsh
Datei-Sync
Nextcloud Desktop Client
Sync-Ordner
C-Stone Cloud / Claude Code
🧠 NucBox EVO-X2 (lokaler LLM-Server / „AI Lab")

GMKTEC NucBox EVO-X2 als on-prem GPU-Host für die lokalen Tier-0-Modelle (Qwen3-Coder, Qwen3.8, Mistral, Gemma, Muse — via llama-swap :9090) und das PII-Tooling (GDPR Data Cleaner). On-prem EU → datenschutzrechtlich mit Bedrock gleichgestellt, kein Netztransfer.

User / IP (LAN) c-stone-ai-lab@192.168.50.124
llama-server :9090 (ein Endpunkt, alle Modelle on-demand) · SSH-Tunnel :9090 + :8082 (grammar-fix-Ziel)

🌉 Zugang über Hetzner-Jump (neu 05.08.2026)

Steht die NucBox in einem Fremdnetz (kein direkter Route zum LAN, Port 22 tot), läuft der Zugriff über einen Reverse-Tunnel, den die Box zum Hetzner-Server offen hält. SSH-Alias in ~/.ssh/config:

Host nucbox
  User c-stone-ai-lab
  ProxyCommand ssh -W 127.0.0.1:2223 root@n8n.c-stone-dev.com
  ConnectTimeout 8

Ablauf: Mac → SSH auf Hetzner (n8n.c-stone-dev.com) → Hetzner leitet auf 127.0.0.1:2223 (Reverse-Tunnel-Endpunkt der Box) → NucBox-SSH. claude-start.sh testet beim Start erst direkt 192.168.50.124 (4 s); scheitert das, fällt es automatisch auf den Alias nucbox (Jump via Hetzner, 8 s) zurück und setzt NUCBOX_IP=nucbox — alle nachfolgenden -L-Tunnel (llama-swap :9090, SearXNG :8080, grammar-fix-Ziel :8082 …) laufen dann über den Jump.

⚙️ VS Code Extensions
ExtensionFunktionTier
Continue.dev Chat, Code-Vervollständigung, Tab-Autocomplete — verbindet Ollama + Bedrock Tier 0+1
Cline (saoudrizwan) Autonomer KI-Agent in VS Code, Tool-Nutzung Tier 1+2
GitHub Copilot Chat GitHub-integrierter KI-Assistent Optional
🔧 Installierte Tools

Entwicklung

  • Python 3 (inkl. venv)
  • Node.js + npm
  • Git
  • Docker Desktop
  • Playwright Python (Chromium)

KI & Automatisierung

  • Ollama (lokale Modelle)
  • Claude Code CLI
  • AWS CLI (Bedrock-Zugriff)
  • SSH-Schlüssel (Hetzner)
  • Nextcloud Desktop Client
📁 Verzeichnisstruktur (Claude Code Zentrale)
~/C-Stone Cloud/Claude Code/
├── projekte/          ← Alle aktiven Projekte
│   ├── AI-Executive-Navigator/
│   ├── C-Stone-CRM/
│   ├── Royal-Rangers-Camp-Manager/
│   ├── dasprogramm-lead-manager/
│   ├── AZAV-Karrierecoaching/ (lokal, kein Sync)
│   ├── C-Stone-KI-Check/
│   ├── AVGS-Homepage/
│   └── Base Project/
├── vorlagen/          ← Wiederverwendbare Templates
├── dokumentation/     ← Systemdokumente
└── .claude/            ← Claude Code + Clowdex Config
🔄 Continue.dev Konfiguration

Verwaltet alle Modelle (lokal + Cloud) zentral in ~/.continue/config.yaml

Tab-Autocomplete
qwen2.5-coder:14b (Ollama)
Global Context
c-stone_global_template.md
local-ai-context.md
development-rules.md
Cloud Infrastruktur
DSGVO-konform · 100% EU-Server · AWS Bedrock Frankfurt + Hetzner Deutschland

Systemarchitektur

Lokal
💻 Entwickler-Mac
VS Code · Claude Code
Ollama · Docker Desktop
Playwright (Chromium)
Hetzner Storage
☁️ Nextcloud
nx97828.your-storageshare.de
Hetzner Deutschland
Sync via Desktop Client
Hetzner Cloud Server (178.105.81.60)
🐳 Docker Host
Container
n8n (Workflow-Engine)
n8n.c-stone-dev.com
Container
Traefik + Caddy
SSL + Routing
Container
AI Navigator
navigator.c-stone-dev.com
Container
Royal Rangers
camp.c-stone-dev.com
Container
🦊 Forgejo GIT
git.c-stone-dev.com · 17 Repos
Container
Lead Manager
leads.c-stone-dev.com
AWS Bedrock (eu-central-1)
🤖 KI-Modelle
Claude Sonnet 4.6
Claude Haiku 4.5
Qwen3 235B
Devstral 123B
DeepSeek V3 (Stockholm)
Datenmanagement (EU)
📊 SeaTable
self-hosted · EU-Server
CRM-Daten, Leads
API Token-Zugriff
+
Version Control
🦊 C-Stone GIT (Forgejo)
git.c-stone-dev.com
Self-hosted · Hetzner
17 Repos · SSH-Auth · Backup tägl.
+
Datenbank
🐘 PostgreSQL
Im Docker (je Projekt)
Redis (Caching)
Alembic Migrations
🔧 n8n Workflow-Engine
URL n8n.c-stone-dev.com
SSH root@n8n.c-stone-dev.com
Server IP 178.105.81.60

  • Docker Container: n8n_n8n_1
  • Gateway IP: 172.18.0.1
  • File Access: /home/node/.n8n-files/
  • Verbindung zu SeaTable über Flask-Service
🔒 Datenschutz & Compliance
  • 100% DSGVO-konform
  • AWS Bedrock Frankfurt (EU)
  • Hetzner Deutschland
  • Keine Datenweitergabe an US-Server
  • Nextcloud self-hosted (EU)
  • SeaTable EU-hosted
🐍 Flask Microservice Pattern

Für deprecated/problematische APIs: Python Flask Service als Wrapper zwischen n8n und externen APIs

n8n WorkflowHTTP Request NodeFlask Service (Port 5xxx)Externe API (SeaTable, LinkedIn, ...)

Services laufen als Systemd-Services mit Auto-Restart · Zugriff von n8n über Gateway IP 172.18.0.1

🐳 DEV/PROD Docker Pattern

Jedes Projekt hat zwei Docker-Compose-Dateien — eine für lokale Entwicklung, eine für Produktion auf dem Hetzner-Server.

DEV — docker-compose.yml

  • Ports direkt exponiert (8000, 3000, 5432)
  • Hot Reload (--reload / Vite Dev Server)
  • Volume-Mount für Live-Code-Änderungen
  • Lokale PostgreSQL/Redis ohne Netzwerk-Isolation

PROD — docker-compose.prod.yml

  • Caddy/Traefik Reverse Proxy (SSL)
  • Keine Ports nach außen exponiert
  • Health Checks · Auto-Restart
  • Isolierte Docker-Netzwerke

Deploy via deploy.sh (rsync → docker build --no-cache → Container-Neustart) · Planungs-Gate vor PROD-Änderungen beachten

Clowdex System
Workflow-System für Claude Code · 1.792 Skills in 32 Kategorien
Clowdex ist ein umfassendes Workflow-System für Claude Code mit strukturiertem Memory, Wissensdatenbank und vorgefertigten Skills. Installiert als globales Setup unter .claude/.claude/ mit Symlink auf .claude/skills/.
📋 Workflow-Befehle
/start
Arbeitstag beginnen, Kontext laden
/sync
Kontext auffrischen (nach 3-4h)
/end-day
Arbeitstag ordentlich beenden
/flush
Kontext leeren bei Überlastung
/audit
Qualitätskontrolle nach Abschluss
/unstick
Wenn Claude feststeckt
/retro
Sprint-Retrospektive
/system-audit
Tiefenprüfung der Infrastruktur
📚 Skill-Kategorien (32 Kategorien, 1792 Skills)
agriculture ai-automation construction consulting content customer-success cybersecurity data design development devops education finance healthcare hr legal marketing operations product real-estate sales security support ...
🧠 Memory-System — Clowdex (projekt-lokal)

Dateien

  • memory.md → Aktiver Kontext (zuerst lesen)
  • knowledge-base.md → Systemregeln
  • Task Board.md → Aufgaben
  • Scratchpad.md → Schnellnotizen

Session-Verhalten

  • ✓ Automatischer /start bei neuer Session
  • ✓ Memory bleibt über Sessions erhalten
  • ✓ Knowledge Base wird bei Regeln angewandt
  • ✓ Glob-Check: find statt */SKILL.md

Liegt unter .claude/.claude/ im jeweiligen Projekt-Ordner, wird per /start//sync//end-day-Skills gepflegt, syncet über Nextcloud mit.

🧠 Memory-System — Claude Code Auto-Memory (nativ, global)

Zusätzlich zu Clowdex führt Claude Code selbst ein zweites, unabhängiges Gedächtnis — nicht projekt-lokal, sondern an den Ordnerpfad des Arbeitsverzeichnisses gebunden. Claude legt es selbstständig an und pflegt es, ohne dass ein Skill es aufruft.

Ort & Struktur

  • ~/.claude/projects/<pfad-hash>/memory/
  • MEMORY.md → Index, immer geladen
  • Eine Datei pro Thema, name:/description:/type:-Frontmatter
  • 4 Typen: user / feedback / project / reference

Verhalten

  • ✓ Claude schreibt/liest selbstständig, kein Skill-Aufruf nötig
  • ✓ Läuft parallel zu Clowdex, nicht als Ersatz gedacht
  • ✓ Punktuelle Momentaufnahmen — Datei-Alter wird beim Lesen markiert
  • ✓ Stand 12.08.: 24 Dateien, aktivste Themen NucBox/LLM & Setup-Doku

Beide Systeme sind derzeit parallel aktiv und überschneiden sich inhaltlich teilweise (z. B. NucBox-Setup, NVIDIA-Modelle) — bislang keine Abstimmung, welches System führend ist. Offen zu klären mit Markus.

🎯 Clowdex Skills-Browser
32 Kategorien · 1792 Skills · Kategorie anklicken für Detail-Liste
agriculture (45)
Betriebsplanung, Anbaumanagement
ai-automation (65)
KI-Implementierung, Prompt Engineering
construction (42)
Projektkalkulation, Arbeitssicherheit
consulting (54)
Strategie, Marktanalyse
content (88)
Texterstellung, Blog, Landingpages
customer-success (48)
Onboarding, Retention
cybersecurity (54)
Pen-Tests, Security-Architektur
data (57)
Analyse, Visualisierung, BI
design (54)
Markenidentität, UX/UI
development (78)
Code-Qualität, Testing, CI/CD
ecommerce (54)
Shop, Conversion-Optimierung
education (51)
Kurse, Workshops
email (51)
Kampagnen, Automatisierung
energy (45)
Energiemanagement, Nachhaltigkeit
finance (60)
Modellierung, Budgetierung
fitness-wellness (45)
Coaching, Operations
food-beverage (42)
Gastronomie, Lebensmittel
healthcare (48)
Patientenkommunikation
hr (57)
Recruiting, Performance
legal (54)
Verträge, Compliance
marketing (76)
Kampagnen, Zielgruppen
media (45)
Publishing, Redaktion
nonprofit (48)
Fundraising, Förderanträge
operations (60)
Prozesse, Projektplanung
product (63)
Produktstrategie, Roadmaps
productivity (57)
Zeitmanagement, Entscheidungen
real-estate (45)
Immobilien, Marktanalyse
sales (66)
Vertrieb, Pipeline
seo (57)
Keyword-Recherche, On-Page
social-media (69)
Plattform-Inhalte
startup (60)
Businessplan, Fundraising
travel (54)
Reiseplanung, Hotellerie
Erste Schritte
cld-Menü → Modell wählen → Projekt wählen → Claude Code startet
Jede Session beginnt mit cld (Alias für ~/claude-start.sh). Das Skript fragt Modell, startet ggf. LiteLLM (nur Qwen3), dann Projekt-Auswahl, dann Claude Code. Default (Enter) = DEV Stack — Max Subscription (OAuth), kein Proxy.
Start mit cld — Der genaue Ablauf
1. Terminalcld eingeben
Alias in ~/.zshrc: alias cld='~/cstone-secrets/bin/with-secrets.sh shared ~/claude-start.sh' (Vault-Wrapper: injiziert Shared-Secrets nur in den Kindprozess)
2. Modell wählen — 3-stelliger Code nach Tier (Enter = 101 = DEV Sonnet 4.6). Volle Liste s. Menü-Tabelle unten.
Tier 0 · 001-004, 006 Lokal (EVO-X2/NucBox, via llama-swap :9090): Qwen3-Coder ★, Qwen3.8, Mistral, Gemma, Muse Glimmer ★
Tier 1 · 101-104 DEV Max OAuth: Sonnet 4.6 ↵ / Sonnet 5.0 / Opus 4.8 / Haiku 4.5
Tier 1 · 105-112 DEV: DeepSeek-Fallback · GPT-5.5 · NVIDIA NIM (Cloud, Fake-Daten)
Tier 2 · 201-203 PROD Bedrock eu-central-1: Sonnet 4.6 / Haiku 4.5 / Qwen3 235B
3. LiteLLM-Start (LOCAL/NVIDIA/GPT5): Proxy auf Port 4444, Health-Check
4. Projekt wählen — 0 = Allgemein · 1 = Neues Projekt (startet /project-start-Wizard) · 2-N = Projekt aus Ordnerliste
Findet automatisch alle Unterordner in $PROJEKTE/
5. claude startetcd <projekt> && claude ${CLAUDE_ARGS[@]}
Env gesetzt (ANTHROPIC_BASE_URL, BEDROCK-Flags — je nach Modell-Wahl)
6. /start wird automatisch ausgeführt (CLAUDE.md-Regel) → Clowdex initialisiert
7. Arbeiten → Tasks erledigen
8. /end-day → Kontext sichern, Session beenden
Vollständiges Start-Menü (claude-start.sh · 3 Tiers)
CodeModellBackend / PortEnv / Commit-Tag
── Tier 0: Lokal (EVO-X2 / NucBox, on-prem EU) — via LiteLLM :4444 ──
001 ★Qwen3-Coder-Next 80B-A3B (MoE)NucBox llama-swap :9090BASE_URL=localhost:4444 · config-local.yaml · [local-qwen]
002Qwen3.8-27B Q6 (~26 GB, no-think, Vision)NucBox :9090 (grammar-fix-proxy)LiteLLM :4444 · [local-qwen38]
003Mistral Small 4 119B-A6BNucBox :9090 (grammar-fix-proxy)LiteLLM :4444 · [local-mistral]
004Gemma 4 26B MoE (QAT)NucBox llama-swap :9090LiteLLM :4444 · [local-gemma]
006 ★Muse Glimmer 30B (Vision+Speculative)NucBox llama-swap :9090LiteLLM :4444 · [local-museglimmer]
── Tier 1: DEV — Max Subscription (nur Fake-Daten!) ──
101 ↵Claude Sonnet 4.6 (Standard, Default)Max OAuthANTHROPIC_* unset · [dev-s46]
102 / 103 / 104Sonnet 5.0 / Opus 4.8 / Haiku 4.5Max OAuth--model $DEV_MODEL (claude-sonnet-5 / claude-opus-4-8 / claude-haiku-4-5)
105 / 106DeepSeek V4 Flash / Pro (Fallback)Max OAuth · settings.json[dev-dsf] / [dev-dsp]
107ChatGPT GPT-5.5OpenAI API · LiteLLM :4444[dev-gpt5]
108DeepSeek V4 Flash (Coding)NVIDIA NIM (Cloud)Fake-Daten · [dev-nim-ds] · ⚠️ Backend evtl. EOL seit 07.08. (410), prüfen
109 ★Nemotron 120BNVIDIA NIM (Cloud)Fake-Daten · [dev-nim-n120] — verifiziert funktionsfähig
110-112GLM-5.2 / MiniMax M3 / Nemotron 49BNVIDIA NIM (Cloud)Fake-Daten · [dev-nim-*]
── Tier 2: PROD — AWS Bedrock Frankfurt (eu-central-1) ──
201Sonnet 4.6 (komplex)Bedrock · eu.anthropic.claude-sonnet-4-6CLAUDE_CODE_USE_BEDROCK=1 · [prod-s46]
202Haiku 4.5 (schnell, günstig)Bedrock · eu.anthropic.claude-haiku-4-5CLAUDE_CODE_USE_BEDROCK=1 · [prod-h45]
203Qwen3 235B (günstig)Bedrock · qwen.qwen3-235bbedrock/converse · [prod-qwen]
204DeepSeek V4 Flash (Coding)hostyourai.com · EU · deepseek-ai/DeepSeek-V4-FlashAnthropic-API direkt · [prod-hyai-dsf] · AVV Art. 28 nötig
Vault-Env immer gesetzt: CSTONE_VAULT_DIR, SOPS_AGE_KEY_FILE, PATH-Prefix — keine Secret-Werte in die Session. Tier 0 & Tier 1 zeigen „NUR Fake-Daten"-Warnung. Nur Tier 2 PROD (201-203) und die lokale Tier-0-Lane (on-prem, kein Netztransfer) dürfen echte/personenbezogene Daten verarbeiten.
Tier 0a — Lokal Mac (Offline)

VS Code + Continue.dev + Ollama.
Kein Internet nötig.
100% privat, €0.
Nicht über cld.
Modelle: qwen3-coder:30b,
deepseek-coder-v2:16b, gemma4:12b

Tier 1 — DEV (cld 101-106)

Max Subscription (OAuth).
Kein Proxy — direkte Verbindung.
101 Sonnet 4.6 (↵) · 103 Opus 4.8.
Fallback: DeepSeek (settings.json).
Nur für Fake-/DEV-Daten!
cld → Enter (Default = 101)

Tier 2 — PROD (cld 201-203)

AWS Bedrock Frankfurt.
201: Sonnet 4.6 (Standard).
202: Haiku 4.5 (schnell).
203: Qwen3 235B (Bedrock).
GDPR-konform · echte Daten erlaubt.
cld → Option 201-203

Grundregeln
  • Apps laufen in der Cloud — NIE lokal starten (außer DEV Stack)
  • Planungs-Gate — vor Edit/Write in Produktiv-Projekten Token setzen
  • DSGVO — keine personenbezogenen Daten über GitHub (US-Server)
  • Git commit — nach jeder inhaltlichen Änderung
  • Context-Hygiene — /flush bei Überlast, neue Session bei Messages > 50%
🛡️ Absicherung & Health des Startpunkts (claude-start.sh)
Tear-Test
Prüft beim Start die AI-Lab-Erreichbarkeit — direkt (192.168.50.124), sonst Jump über den persistenten Hetzner-Reverse-Tunnel (hetzner-tunnel.service, systemd, Restart=always). Fremdnetz-tauglich.
LiteLLM-Health
Bei LOCAL/NVIDIA/GPT5-Lanes: Proxy auf Port 4444, Health-Check vor Claude-Start; Host an 127.0.0.1 gebunden (kein LAN-Zugriff, CSA-08).
DSGVO-Guard
PreToolUse-Hook dsgvo-guard (fail-closed): blockt im DEV-Modus jeden Pfad-Zugriff mit „DSGVO" im Namen; erlaubt nur bei CLAUDE_CODE_USE_BEDROCK=1 (PROD eu-central-1).
Secret-Vault (Modus A)
Nur CSTONE_VAULT_DIR + PATH gesetzt — keine Secret-Werte in der Session. secrets-guard.sh blockt sops -d/env-Dumps/echo $SECRET.
Lane-Trennung
Tier 0 (lokal, on-prem) + Tier 2 (PROD Bedrock) dürfen echte Daten; Tier 1 DEV nur Fake-Daten. Auto-Mode-Klassifikator lokal auf Gemma :8085 (eigener Slot, kein Freeze).
Restart-Sicherung
Lokale LLM-Dienste als systemd-Units (reboot-fest); Cloud-Apps laufen als Docker mit restart: unless-stopped (Projekt-Steckbriefe Punkt 5 zeigen Ausnahmen).
🧭

AI Executive Navigator Produktiv

Mandantenfähiges White-Label-SaaS als KI-Chief-of-Staff für Führungskräfte

Live URL https://navigator.c-stone-dev.com
Server root@n8n.c-stone-dev.com · /root/navigator/
Git git.c-stone-dev.com/cstone-mkr/ai-executive-navigator

📋 Steckbrief — 7 Punkte
1 · Beschreibung
KI-Chief-of-Staff: E-Mail-Triage, Kalender (CalDAV), Aufgaben (Eisenhower), Early-Bird-Briefing, Meeting-Research, Doku-Analyse.
2 · Features
E-Mail-Triage & Entwürfe · Kalender-Management · Aufgaben · Briefing · Meeting-Research · Microsoft OAuth · MCP-Adapter · n8n-Worker.
3 · Architektur
React+TS+Vite+Tailwind · FastAPI · PostgreSQL 16 + SeaTable · Redis 7 · n8n · Claude via AWS Bedrock eu-central-1 · Docker Compose.
4 · DSGVO
Bedrock eu-central-1 fest, EU-Hosting, DB/Redis ohne Host-Port, AES-256 + TLS, Audit-Log & Löschkonzept, ENCRYPTION_KEY.
5 · Health / Restart
Ja/health-Endpoint · restart: unless-stopped alle 4 Services · healthcheck für postgres/redis/backend (Frontend ohne) · Named Volumes vorhanden.
6 · Security
Keine Host-Ports im prod-Compose exponiert · Secrets via .env (kein Vault) · Auth: Microsoft OAuth + JWT · CORS eng auf Prod-Domain.
7 · Status
Produktiv (.claude/production-Marker). C-Stone NX-Design (Spatial-UI-Glass, dark) auf ui/-Frontend live (17.08.2026). Offen: README noch „In Entwicklung“ (veraltet), GitHub-PAT widerrufen, Secrets in Vault.
🗒️ Offene ToDos
  • ☐ README-Status „In Entwicklung“ → „Produktiv“ korrigieren
  • ☐ Frontend-Prod-Routing prüfen
  • ☐ Secrets in sops/age-Vault migrieren
👥

C-Stone CRM Produktiv · Beta

Eigenentwickeltes DSGVO-CRM (ersetzt Zentiq) für Leads, Kontakte, Deals, Angebote/Rechnungen, Dokumente

Server root@n8n.c-stone-dev.com · /root/crm/
Git git.c-stone-dev.com/cstone-mkr/c-stone-crm
Domain crm.c-stone-dev.com (aus env)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Volles CRM mit KI-Inbox & Deal-Scoring; Codebase unter cstone-core-link/.
2 · Features
JWT-Auth + RBAC (bcrypt) · Lead-/Kontakt-/Firmen-Mgmt · Sales-Pipeline & Scoring · Angebote/Rechnungen · Nextcloud-Doku (WebDAV) · KI-Microservice (Extraktion/Scoring/Draft) · Kalender.
3 · Architektur
React+Vite (nginx) · Node.js-Backend (Port 3000) · PostgreSQL 16 · KI-Microservice cstone-ai via LiteLLM (Haiku/Sonnet) · Nextcloud · n8n-Netz.
4 · DSGVO
EU-Hosting, LLM über internen LiteLLM-Proxy, DB ohne Host-Port, DSGVO-Einwilligungen im Datenmodell, Nextcloud (EU). LLM-Region hängt am LiteLLM-Routing.
5 · Health / Restart
restart: unless-stopped alle 4 Services · healthcheck für database+cstone-ai · Named Volumes generisch (kein Projekt-Präfix) · kein /health.
6 · Security
⚠️ Host-Ports exponiert: backend 3000 + frontend 8090 auf 0.0.0.0 · DB/Cache nicht exponiert (ok) · Auth JWT+bcrypt · Secrets .env.
7 · Status
Produktiv-Marker gesetzt, Reifegrad Dev/Beta. Offen: Ports hinter Reverse-Proxy, Volume-Naming mit Präfix, PDF-Generierung geplant. Frontend-Port 2026-08-11: 8080→8090 (SearXNG-Tunnel-Konflikt).
🗒️ Offene ToDos
  • ☐ Ports 3000/8090 hinter Reverse-Proxy legen
  • ☐ Volume-Naming mit Projekt-Präfix
  • ☐ PDF-Generierung umsetzen (geplant)

Royal Rangers Camp Manager Produktiv

DSGVO-konforme Lagerverwaltung für ~1.216 Teilnehmer · Royal Rangers Nord

Live URL https://camp.c-stone-dev.com
Server root@n8n.c-stone-dev.com · /root/royal-rangers/
Git git.c-stone-dev.com/cstone-mkr/royal-rangers-camp-manager

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Stammdaten, Medikamente, Ernährung, T-Shirts, Check-in/out, Berichte für ~1.216–1.300 Teilnehmer/Lager.
2 · Features
Teilnehmer-/Stammdaten · Medikamente & Ernährung · T-Shirt-Größen · Quick-Checkin · Auto-Checkout-Cron (23:59) · Fernet-Feldverschlüsselung · Excel/PDF-Berichte · Rate-Limiting.
3 · Architektur
FastAPI + SQLAlchemy · PostgreSQL 15 · Redis 7 (JWT-Blacklist) · React 18+TS+Vite+Tailwind (nginx) · Prod via Caddy (TLS) auf camp.c-stone-dev.com.
4 · DSGVO
EU-Hetzner, FIELD_ENCRYPTION_KEY (Fernet), Redis requirepass, DB/Redis ohne Host-Port (prod), CORS eng, TLS via Caddy, DSGVO-Retention.
5 · Health / Restart
Ja/health · restart: unless-stopped alle · healthchecks prod vollständig (pg/redis/backend/frontend). ⚠️ Redis prod ohne Volume (JWT-Blacklist flüchtig bei Recreate).
6 · Security
Prod: keine Host-Ports (nur Caddy) · JWT (Access+Refresh) + Rate-Limit · Default-Admin-PW im README dokumentiert → rotieren.
7 · Status
Produktiv (Marker gesetzt), aktive Wartung. Offen: Redis-Persistenz prod, Default-Admin-PW rotieren.
🗒️ Offene ToDos
  • ☐ Redis-Persistenz (Named Volume) in prod
  • ☐ Default-Admin-Passwort rotieren
  • ☐ Domain-Bezeichnung README vs. Compose vereinheitlichen
📱

CStone Post Generator Eingestellt

Social-Media-Post-Automatisierung · Projekt eingestellt (13.08.2026), nie deployed


📋 Steckbrief — 7 Punkte
1 · Beschreibung
Ehemaliges MVP für automatisierte Social-Media-Content-Generierung; nie über den lokalen Entwurf hinausgekommen.
2 · Features
Web-Formular · Multi-Platform-Prompt-Templates · Claude-Generierung · SeaTable-Speicherung · E-Mail-Freigabe — alles nur als Konzept/MVP, nicht fertiggestellt.
3 · Architektur
Geplant: Web-Form → n8n → Claude → SeaTable → Social-APIs. Nie deployed — kein Hetzner-Container, kein Forgejo-Repo existierte.
4 · DSGVO
Eingestellt — keine aktive Datenverarbeitung.
5 · Health / Restart
N/A — nie deployed.
6 · Security
N/A.
7 · Status
Eingestellt (13.08.2026). Lokaler Ordner gelöscht (Rechercheergebnis: kein Hetzner-Deployment, kein Forgejo-Repo vorhanden — nichts weiter zu bereinigen).
🗒️ Offene ToDos
— keine offenen Punkte
🔍

C-Stone KI-Check Produktiv

Interaktives 12-Min-Assessment · KI-Potenzial-Check · Lead-Magnet auf www.c-stone-coaching.de

Integration www.c-stone-coaching.de

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Misst KI-Optimierungspotenzial (0–1.000) und Compliance-Risiko (0–500), qualifiziert Leads in 4 Quadranten, versendet Empfehlungen + 90-Tage-KI-Fahrplan.
2 · Features
HTML-Assessment-Modal · 2-Achsen-Scoring · Lead-Qualifizierung · E-Mail-Versand · SeaTable/Zoho-CRM · 90-Tage-Fahrplan-PDF · Impressum/Datenschutz.
3 · Architektur
Frontend Vanilla HTML5/CSS3/JS · Backend n8n-Workflow (Hetzner) → SeaTable (Mainz) → SMTP (Hetzner) → AWS Bedrock Frankfurt. Kein Docker.
4 · DSGVO
100% EU-Server (Hetzner DE, Bedrock eu-central-1, SeaTable DE), HTTPS/TLS 1.3, AES-256, AVVs laut README vorhanden.
5 · Health / Restart
Kein eigenes Monitoring · Betrieb über n8n-Server (dessen Restart-Policy greift) · statisches Frontend hat keinen Prozess.
6 · Security
Keine eigenen Ports · Secrets in n8n-Credentials + SMTP · keine Endnutzer-Auth (öffentlich) · Risiko: offener Formular-Endpoint (Spam).
7 · Status
Produktiv (Lead-Magnet). Offen: n8n-Workflow-Import/Go-Live-Verifikation, Backend-Feinschliff.
🗒️ Offene ToDos
  • ☐ n8n-Workflow-Import / Go-Live-Verifikation
  • ☐ Backend-Feinschliff
🌐

AVGS Homepage Live · near-live

SEO-Landing-Page mit KI-Chatbot für AVGS-gefördertes Karrierecoaching (Celle)

Backend n8n.c-stone-dev.com + SeaTable
Deploy Apache-Webspace · FTPS

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Single-Page mit Lead-Qualifizierung per Claude-Chatbot (Hot/Warm/Cold).
2 · Features
Single-Page HTML · Kontaktformular + n8n-Webhook · KI-Chatbot (Bedrock Claude) · Cookie-Banner · Datenschutz/Impressum · GF-Interview-Training-Seite.
3 · Architektur
Statisches HTML/CSS/Vanilla-JS + PHP-Proxy (chatbot-proxy.php) · Apache (.htaccess) · FTPS-Deploy · Logik via n8n + SeaTable.
4 · DSGVO
⚠️ Google Fonts per <link> (US) → abmahnbar; nicht self-hosted. Cookie-Banner + Datenschutz vorhanden. AI-Calls Bedrock eu-central-1, Formulardaten SeaTable/n8n (EU).
5 · Health / Restart
N/A (statisch, Hosting-Uptime) · n8n-Workflows müssen manuell aktiviert werden · keine Container.
6 · Security
.htaccess: HTTPS-Redirect, X-Frame-Options, X-Content-Type, Referrer-Policy · HSTS auskommentiert · Formular ohne sichtbaren CSRF/Spam-Schutz.
7 · Status
Produktiv / near-live (Deploy „erledigt“ 22.05.). Offen: Google Fonts self-hosten, n8n-Workflows aktivieren, HSTS scharf schalten.
🗒️ Offene ToDos
  • ☐ Google Fonts self-hosten
  • ☐ n8n-Workflows aktivieren
  • ☐ HSTS scharf schalten
🏢

C-Stone Homepages Eingestellt

Arbeitssammlung C-Stone-Corporate-Landingpages · Projekt eingestellt (13.08.2026), nie deployed


📋 Steckbrief — 7 Punkte
1 · Beschreibung
Ehemalige Arbeitssammlung mehrerer konkurrierender Einzel-HTML-Varianten; nie auf finale Live-Datei zusammengeführt.
2 · Features
index-Varianten (KI-für-Führungskräfte, Executive-Navigator, Compliance, Kontakt, AVGS) — Konzept, nie live gegangen.
3 · Architektur
Statisches HTML, self-contained · eigenes Forgejo-Repo (2 Commits, gelöscht).
4 · DSGVO
Eingestellt — keine aktive Datenverarbeitung.
5 · Health / Restart
N/A — nie deployed. Rechercheergebnis vor Löschung: kein Hetzner-Container, kein Volume, kein Caddy/Traefik-Eintrag.
6 · Security
N/A.
7 · Status
Eingestellt (13.08.2026). Lokaler Ordner + Forgejo-Repo markus/c-stone-homepages gelöscht (API-Delete verifiziert, HTTP 204/404).
🗒️ Offene ToDos
— keine offenen Punkte
📊

Excel Analyser — FTE Konsolidierung Script · Produktiv

KI-gestützte semantische Zusammenführung von FTE-Daten aus mehreren Excel-Sheets

Script /projekte/Excel-Analyser/fte_konsolidierung.py

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Standalone-Script: matcht Quell-→Ziel-Aufgaben trotz abweichender Formulierung, gebaut für AIM Asset Operations Reorg (Juni 2026).
2 · Features
Liest Individual-Ebene · Claude-Matching · schreibt Manager/Other-FTE · markiert unsichere Zuordnungen gelb (<75%) · Soll/Ist-Summenprüfung · JSON-Mapping-Log.
3 · Architektur
Einzel-Script (openpyxl + anthropic + boto3) · kein Docker/Server/DB/Frontend · Claude via AWS Bedrock eu-central-1 · lokaler CLI-Lauf.
4 · DSGVO
Verarbeitung ausschließlich Bedrock Frankfurt, keine Daten verlassen EU; FTE-Zahlen ohne Personenbezug. N/A für DB-Ports/TLS.
5 · Health / Restart
N/A (kein Dienst/Container) · Ausgaben fte_mapping_log.json + Output-Excel.
6 · Security
Keine Ports/Services · keine App-Secrets (leere .env.example) · AWS-Zugang über bestehendes Profil · minimale Angriffsfläche.
7 · Status
Produktiv genutzt (Marker, real eingesetzt 15.06.). On-Demand-Tool; pro neuer Datei COL_MAP/SOURCES im Script anpassen.
🗒️ Offene ToDos
  • ☐ Bedienhinweis: pro neuer Datei COL_MAP/SOURCES im Script anpassen (kein Bug)
🗂️

AI Office Manager Produktiv

KI-Postfach & Office-Assistent · E-Mail (IMAP), Kalender (CalDAV), Aufgaben-Automatisierung

Live URL https://os.c-stone-nx.com
Deploy /opt/ai-office-manager · n8n_default-Netz

📋 Steckbrief — 7 Punkte
1 · Beschreibung
E-Mail-Verwaltung + bidirektionale CalDAV-Sync mit C-Stone-CRM, KI via Bedrock.
2 · Features
E-Mail (Fernet-verschlüsselte IMAP/SMTP-Creds) · CalDAV-Kalender-Sync · CRM-Integration · KI (Bedrock Haiku 4.5) · JWT-Auth mit Password-Reset · React-Frontend.
3 · Architektur
FastAPI · PostgreSQL 16 · Redis 7 · React/nginx · Bedrock eu-central-1 · Docker (rsync + build) · Domain os.c-stone-nx.com.
4 · DSGVO
Bedrock eu-central-1, CORS fest auf eigene Domain, Credentials per Fernet (ENCRYPTION_KEY). Hinweis: Images von ghcr.io (US) — ohne Personenbezug, aber gegen „kein GitHub“-Regel.
5 · Health / Restart
restart: unless-stopped alle 4 Services · healthchecks für alle (via override) · Named Volumes vorhanden.
6 · Security
Keine DB/Cache-Ports exponiert · JWT (HS256) · DB-Default changeme, AWS-Keys als Env statt Vault.
7 · Status
Produktiv (LIVE, Commits bis 09.08.). Offen: kein .claude/production-Marker (Plan-Gate inaktiv), leere README, ghcr→EU migrieren.
🗒️ Offene ToDos
  • ☐ .claude/production-Marker setzen
  • ☐ README füllen
  • ☐ ghcr.io → EU-Registry migrieren
  • ☐ DB-Default changeme ersetzen
  • ☐ AWS-Keys in Vault
📝

Bewerbungsmanager Produktiv

KI-Bewerbungs- & CV-Tool · Unterlagen, Tracking, KI-Anschreiben

Live URL https://bewerbungsmanager.c-stone-dev.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
CV-Verwaltung + Stellen erfassen, KI-generierte Anschreiben, PDF-Export.
2 · Features
JWT-Auth · CV-Upload & -Parsing (PDF/DOCX) · Stellenverwaltung · KI-Anschreiben (Bedrock) · PDF-Rendering (WeasyPrint + Jinja2) · Celery/Redis async.
3 · Architektur
FastAPI (SQLAlchemy 2 async, Alembic) · PostgreSQL 16 · Redis 7 · Celery · Nginx-static Frontend · Traefik v3 + Let's-Encrypt · Deploy bewerbungsmanager.c-stone-dev.com.
4 · DSGVO
⚠️ AI-Calls Bedrock eu-central-1 (konform), aber verarbeitet reale Bewerber-PII (Lebensläufe). CI nutzt(e) GitHub Actions/ghcr → Konflikt zur Forgejo-only-Regel, migrieren.
5 · Health / Restart
restart: unless-stopped alle · healthcheck nur postgres · Named Volumes ohne Projekt-Präfix (weicht von Regel ab).
6 · Security
Keine DB/Redis-Ports exponiert (nur Traefik 80/443) · JWT + bcrypt · Traefik-Dashboard BasicAuth · Docker-Socket ro + Live-Bind nur in Dev-Variante · Secrets .env.
7 · Status
Produktiv (Phasen 1–8, E2E via Playwright bestanden). Offen: Monitoring/Logging, CV-Template-Editor, GitHub→Forgejo-CI-Migration, Secrets in Vault.
🗒️ Offene ToDos
  • ☐ Monitoring/Logging ergänzen
  • ☐ CV-Template-Editor
  • ☐ Bewerbungshistorie/Versionierung
  • ☐ GitHub-Actions-CI → Forgejo migrieren
  • ☐ Secrets in Vault
  • ☐ Volume-Naming mit Präfix
📊

C-Stone Business Analyser Produktiv

KI-Business-Reports auf Beratungsniveau · Markt-, Wettbewerbs-, Produktanalyse

Live URL https://analyser.c-stone-dev.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Consulting-Grade Reports (McKinsey/BCG-Stil, Pyramid Principle/MECE) auf Knopfdruck.
2 · Features
Markt-/Wettbewerbs-/Produktanalyse · Report-Generator als Background-Task · Polling + Status-Chips + Viewer · Browser-Notifications · JWT-Login.
3 · Architektur
FastAPI · React/MUI · PostgreSQL 16 · Claude Sonnet via AWS Bedrock eu-central-1 · Docker Compose · externes n8n_default-Netz · analyser.c-stone-dev.com.
4 · DSGVO
Bedrock eu-central-1, Hetzner/EU, keine exponierten DB-Ports (DB nur netzintern). TLS extern terminiert (keine Traefik-Labels im Compose).
5 · Health / Restart
Kein Monitoring · restart: always alle · healthcheck nur db (pg_isready), backend/frontend ohne · Named Volume vorhanden.
6 · Security
Keine Host-Ports exponiert · JWT/bcrypt · AWS-Keys im Klartext-Env statt Vault.
7 · Status
Produktiv (Marker, deployt). Offen: echter Scraper statt Simulation, HTML/PDF-Export, Tests, Secrets in Vault.
🗒️ Offene ToDos
  • ☐ Echten Web-Scraper statt Simulation
  • ☐ HTML-/PDF-Export
  • ☐ Tests
  • ☐ AWS-Keys aus Klartext-Env in Vault
🔬

C-Stone Research Live

Kundenforschungs-Tool im McKinsey/BCG-Stil mit automatischen Rollen-/Handlungsempfehlungen

Domain research.c-stone-dev.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
KI-getriebene Forschung mit Claude; strukturierte Ergebnisse + Rollenvorschläge.
2 · Features
KI-Forschung · BCG/McKinsey-Ergebnisse · automatische Rollenvorschläge · Handlungsempfehlungen · DSGVO-Toggle (aktuell beide = Sonnet 5) · Token-/Kosten-Tracking (/api/usage + Kosten-Seite).
3 · Architektur
FastAPI · PostgreSQL 16 · Redis 7 · React 19+Vite+Tailwind 4 · AWS Bedrock (Sonnet 5, Quelle eu-central-1, Fallback eu-north-1) · Docker · Traefik/TLS · research.c-stone-dev.com.
4 · DSGVO
Bedrock EU-Inferenz (eu-central-1 Quelle, bewiesen via claude-start.sh), Hetzner/EU, keine exponierten DB/Cache-Ports, TLS via Traefik, CORS eng.
5 · Health / Restart
restart: unless-stopped alle · healthcheck pg+redis + depends_on: service_healthy · Named Volumes mit name: vorhanden.
6 · Security
Keine Host-Ports exponiert · Default-Secrets changeme als Compose-Fallback · Auth aktuell deaktiviert (MVP).
7 · Status
Live (Stand 10.08., end-to-end in UI bestätigt auf research.c-stone-nx.com). Modell real = eu.anthropic.claude-sonnet-4-6 (Sonnet 5 = AccessDenied, IAM-User ohne Model-Access). 5 Root-Cause-Fixes: lifespan/DB-Tabellen, Modell-Switch, top_p raus, boto read_timeout 600s, nginx /api 600s. Offen: Sonnet 5 in Bedrock-Console freischalten → Rückwechsel + Preise 2/10; Auth aktivieren (deferred), SearXNG-Web-Recherche (deferred).
🗒️ Offene ToDos
  • ☐ AWS-Creds + Bedrock-Model-Access (sonnet-5, eu-central-1), dann Deploy
  • ☐ Repo auf Forgejo anlegen + Push
  • ☐ Auth aktivieren (MVP-Login aus)
  • ☐ Default-Secrets changeme ersetzen
🖥️

C-Stone NX RMM Produktiv

Remote-Monitoring & -Management für Kunden-IT · Geräte, Drucker (SNMP), Fernwartung, Ticketing

Live URL https://rmm.c-stone-nx.com
Fernwartung https://mesh.c-stone-nx.com (MeshCentral)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Mandantenfähiges RMM-Dashboard mit Agents (osquery, SNMP) und MeshCentral-Fernzugriff.
2 · Features
Geräte-/Netzwerk-Monitoring · Drucker-Toner (SNMP) · AlertRules · Multi-Tenant (MS-Graph pro Mandant) · MeshCentral-Remote · Agents Win/Linux/macOS.
3 · Architektur
FastAPI (asyncpg) · PostgreSQL 16 · Redis 7 · Frontend (C-Stone-NX Design System) · MeshCentral-Container · Deploy /root · rmm.c-stone-nx.com.
4 · DSGVO
⚠️ EU-Hosting (Hetzner), aber .env-Secrets und Graph-API-Zugriff auf Mandanten-Daten; keine explizite Bedrock/Regionsangabe, kein dokumentierter DSGVO-Vermerk.
5 · Health / Restart
Monitoring ist der App-Zweck · restart: always statt unless-stopped alle 5 · healthcheck pg/redis/backend, nicht frontend/mesh · Named Volumes vorhanden.
6 · Security
Keine DB/Cache-Ports exponiert · JWT · DB-Default-Creds rmm_user/rmm_pass · Deploy nach /root · MeshCentral ohne Healthcheck.
7 · Status
Produktiv (aktiv entwickelt, Phasen 2+3 deployed). Offen: unless-stopped, DB-Creds härten, kein Marker, leere README.
🗒️ Offene ToDos
  • ☐ restart: always → unless-stopped
  • ☐ DB-Default-Creds (rmm_user/rmm_pass) härten
  • ☐ .claude/production-Marker setzen
  • ☐ README füllen
  • ☐ Healthcheck für Frontend + MeshCentral
🎓

C-Stone Academy Produktiv

Academy-Website · KI-Kurse, Kurs- & Inhouse-Anfragen · Designquelle für c-stone.info

Live URL https://c-stone-academy.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Statische Marketing-/Landingpage der C-Stone Academy (Präsenzseminare Celle) mit Kurs-Detailseiten und Anfrageformularen.
2 · Features
Landingpage + 5 Kurs-Detailseiten · Termine · Kurs-/Inhouse-Anfrageformulare (POST an n8n-Webhook) · autom. Eingangsbestätigung · Rechtsseiten.
3 · Architektur
Reines statisches HTML/CSS/JS (kein Build/Backend im Repo) · Formular-Backend via n8n · Mailversand SPF/Reply-To-sicher · kein Docker · Caddy-Hosting.
4 · DSGVO
⚠️ Formulare erfassen Kontaktdaten, Verarbeitung über eigenes n8n (EU/Hetzner) → konform; eigene Datenschutz/Impressum-Seiten. Kein Cloud-Drittdienst.
5 · Health / Restart
N/A (statisch) · keine Container · Betrieb über Hetzner (Caddy).
6 · Security
Keine App-Ports/Secrets im Repo · kein Auth (öffentlich) · Risiko: n8n-Webhook offen (Spam/Missbrauch, keine sichtbare Rate-Limit/Captcha).
7 · Status
Produktiv / launch-nah (Feinschliff bis 26.07.). Offen: Content-Feinschliff; SPF war Thema (gelöst).
🗒️ Offene ToDos
  • ☐ Content-Feinschliff (SPF-Thema gelöst)
📋

dasprogramm.io Lead Manager Produktiv

Kanban-Lead-Dashboard für BHW Schwesig · dasprogramm.io API-Integration + Recharts

Live URL https://leads.c-stone-dev.com
Server root@n8n.c-stone-dev.com · /root/dasprogramm-lead-manager
Git git.c-stone-dev.com/cstone-mkr/dasprogramm-lead-manager

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Nimmt Leads per Webhook entgegen, legt Aufgaben/Projekte an, automatisiert dasprogramm.io per Playwright.
2 · Features
Webhook-Intake · Lead→Aufgabe/Projekt (Fälligkeit/Owner) · selbstheilender Konvertierungs-Flow (Retry + QC) · Browser-Automation · LLM-Anreicherung (Bedrock Haiku) · 4 Recharts-Charts.
3 · Architektur
FastAPI (Python 3.12) · PostgreSQL 16 · React/Vite/Tailwind · Playwright im Backend · Caddy (n8n_default) · leads.c-stone-dev.com.
4 · DSGVO
EU-Hosting, DB nicht exponiert (BSI-Regel), LLM über Bedrock eu-central-1 für PROD; Kunden-/Lead-Daten nur lokal/EU.
5 · Health / Restart
Kein Monitoring · keine restart-Policy bei irgendeinem Service (Regel verletzt) · kein healthcheck · Named Volume vorhanden · manueller docker network connect nach Neustart nötig.
6 · Security
Keine DB-Ports exponiert · JWT (7-Tage) · DB-Default postgres/postgres, dasprogramm-Login im Klartext in .env.
7 · Status
Produktiv / LIVE (BHW, alle 5 Phasen). Offen: restart-Policy + Healthchecks ergänzen, manueller Netz-Reconnect, projectManagerId-API-Bug (Playwright-Workaround).
🗒️ Offene ToDos
  • ☐ restart-Policy + Healthchecks ergänzen (Regel-Verstoß)
  • ☐ Manuellen docker-network-Reconnect automatisieren
  • ☐ projectManagerId-API-Bug (Playwright-Workaround bleibt)
  • ☐ .claude/production-Marker
🏡

Traumhaussuche In Entwicklung

KI-gestützte Immobiliensuche Celle mit automatisiertem Matching und Benachrichtigungen

Bindung 127.0.0.1:8006 (nur localhost)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Web-Agent, der täglich 4 Immobilienportale für Celle scrapt und Treffer in Dashboard + per E-Mail zeigt.
2 · Features
Playwright-Scraping (ImmoScout24, Immowelt, Kleinanzeigen, immo.de) · Kriterien Grundstück/Bungalow Kauf+Miete Celle · APScheduler-Cron (06:00) · Dashboard mit Login · SMTP-Tagesbericht.
3 · Architektur
Single-Container FastAPI (Python 3.12) + Playwright-Chromium + React (Vite) · Ergebnisse als JSON (data/results.json, keine DB) · Port nur an 127.0.0.1.
4 · DSGVO
Nur öffentliche Immobiliendaten, keine personenbezogenen Daten (N/A für PII).
5 · Health / Restart
restart: unless-stopped (1 Service) · kein healthcheck · Bind-Mount ./data (keine DB — unkritisch).
6 · Security
Port nur an 127.0.0.1 (nicht öffentlich) · Auth Admin-User/PW + JWT · Secrets .env · HTML-Escaping gescrapter Felder gegen Injection (behoben).
7 · Status
Dev / persönliches Tool (Cron + Security-Fixes bis 06.08.). Offen: Healthcheck, Deployment-Domain, kein Marker.
🗒️ Offene ToDos
  • ☐ Healthcheck ergänzen
  • ☐ Deployment-Domain klären
  • ☐ .claude/production-Marker
🧾

C-Stone Invoice Check Dev · lokal

KI-Rechnungs-Filter per IMAP · PDF-Scan, MwSt-Erkennung, Ablage nach Jahr/MwSt, Excel-Export

Host NucBox Evo-X2 (on-prem)
Docker-Ports 8005 / 5178 / 5438 / 6384

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Erkennt Rechnungen per IMAP, scannt PDFs, bestimmt MwSt-Art, legt lokal ab inkl. Excel-Doku.
2 · Features
IMAP-Filter (Strato+Gmail) · PDF-Extraktion (PyMuPDF: Betrag/Nr./Aussteller) · Steuer-Erkennung · Jahres-/MwSt-Ordnerablage · Excel-Export · Scan-Guard.
3 · Architektur
FastAPI (Python 3.12) · React 18/TS/Vite/Tailwind (nginx) · PostgreSQL 16 · Alembic · Docker · lokal (kein Cloud-Deploy).
4 · DSGVO
Alle Daten lokal auf Evo-X2, keine Cloud-Verarbeitung, PyMuPDF vollständig lokal; DB nur Docker-intern (kein 5432-Mapping).
5 · Health / Restart
Kein Monitoring · restart: unless-stopped nur Frontend — backend + db OHNE (Reboot-Risiko) · kein healthcheck · Named Volumes (postgres-data + invoice-storage).
6 · Security
Backend an 127.0.0.1:8005 (nicht öffentlich) · Frontend 5178 auf 0.0.0.0 · DB kein Port-Mapping · PG-Creds postgres/postgres hardcodiert.
7 · Status
Dev / lauffähig · lokal (kein Marker). Offen: IMAP mit echten Creds live testen, backend/db restart-Policy + DB-PW härten.
🗒️ Offene ToDos
  • ☐ backend + db restart-Policy ergänzen (Reboot-Risiko)
  • ☐ DB-Passwort postgres/postgres härten
  • ☐ IMAP mit echten Credentials live testen
📄

Dokumenten-Analyzer Dev · lokal

Lokale Dokumenten-Analyse (PDF/DOC/XLS) mit template-basierter Extraktion · Output Excel/PDF/Word

LLM NucBox Qwen3 · LiteLLM :4444
Git git.c-stone-dev.com (Forgejo)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Extrahiert template-basiert strukturierte Daten aus beliebigen Dokumenten mit lokalem NucBox-LLM.
2 · Features
Multi-Format-Parsing (Docling/PyMuPDF, python-docx, pandas) · template-basierte Extraktion (UI Builder) · LLM→JSON · Validierung (Summen/VAT) · Multi-Format-Export · Batch-Modus.
3 · Architektur
Python-CLI (pydantic, reportlab) + React 19/Vite/TS/Tailwind 4 (Dev-Port 5181) · LLM lokal über localhost:4444/v1 (Qwen3) · kein docker-compose.
4 · DSGVO
Bewusst lokale Verarbeitung, „Daten verlassen das Haus nie“; lokaler LLM statt Cloud. .claudeignore sperrt output/archive/failed/json.
5 · Health / Restart
Kein Monitoring · keine restart-Policy (kein Docker) · kein healthcheck.
6 · Security
Nur lokale Ports (4444 LLM, 5181 Frontend), nichts öffentlich · .env nur LLM-Parameter, keine echten Secrets · keine Auth (Single-User).
7 · Status
Dev (Phase-1-Setup fertig). Offen: pip install, Docling-OCR-Test, NucBox-LLM-Test, E2E, Docker-Deploy, Git-Push (Permission-Blocker).
🗒️ Offene ToDos
  • ☐ pip install -r requirements.txt
  • ☐ Docling-OCR-Test (echte Dokumente)
  • ☐ NucBox-LLM-Test (Port 4444)
  • ☐ E2E (PDF/DOC/XLS → JSON → Export)
  • ☐ Docker-Setup fürs Deployment
  • ☐ Git-Push (Permission-Blocker)
🔒

GDPR Data Cleaner Produktiv · lokal

PII-Pseudonymisierung von Kundendokumenten · Inbox → anonymisierte Ausgabe (Markdown + HTML)

Host NucBox Evo-X2 (c-stone-ai-lab@192.168.50.124)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Zweistufige lokale Pipeline zur DSGVO-konformen Pseudonymisierung (PDF/XLSX/DOCX) für die DEV-Lane — keine Daten verlassen das lokale Netz.
2 · Features
Docling-Konvertierung · Presidio PII-Erkennung (DE-Regex: IBAN/Steuer-ID/PLZ/Tel + NER via lokalem LLM, Fallback spaCy) · Anonymizer (Platzhalter) · verschlüsselte Mapping-Tabelle · inbox→out-Workflow.
3 · Architektur
Python-Pipeline (docling, presidio 2.2, langextract, cryptography) · LIVE auf NucBox EVO-X2 · systemd oneshot + Timer (60s, Persistent) · kein Docker.
4 · DSGVO
Vollständig lokal (kein Netzverlassen), lokales LLM statt Cloud, Pseudonymisierung nach Art. 4 Nr. 5; Mapping verschlüsselt und in DSGVO-Sperrzone.
5 · Health / Restart
Kein aktives Monitoring · systemd-Timer 60s + Persistent=true (verpasste Läufe nachgeholt) · degradiert still auf Regex/spaCy wenn LLM weg (kein harter Ausfall) · Fehler → failed/.
6 · Security
Keine exponierten Ports (rein lokal) · Mapping-Verschlüsselung (key in Sperrzone) · keine externen API-Calls · läuft als lokaler User.
7 · Status
Produktiv / LIVE auf NucBox. Offen: LangExtract-Timeout-Bug (presidio #1942, Workaround), Modell-/IP-/Scheduler-Divergenz memory vs. Repo verifizieren.
🗒️ Offene ToDos
  • ☐ LangExtract-Timeout-Bug (presidio #1942) Workaround/Monkeypatch
  • ☐ Modell-/IP-/Scheduler-Divergenz memory vs. Repo verifizieren
🎓

AZAV Karrierecoaching Lokal · DSGVO

Session-Dokumentation für AZAV-Mandanten · KI-gestützte Sitzungsvorbereitung · lokal gespeichert

Speicher clients/ (lokal, kein Sync)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Strukturierte Content-Sammlung für AVGS/AZAV-Karrierecoaching (Mandant Käuflin): Session-Unterlagen, Vorlagen, Methoden — kein Software-Projekt.
2 · Features
Wiederverwendbare Session-Vorlagen (_vorlagen/) · Coaching-Methoden (SWOT/Ikigai) · clientspezifische Sessions (clients/, gitignored) · C-Level-Interview-Training · PDF/DOCX-Handouts.
3 · Architektur
Kein Stack/Deployment — Datei-/Ordnerstruktur (Markdown, HTML, PDF) · eigenes Git-Repo · lokal/Nextcloud, kein Server. KI via Bedrock eu-central-1.
4 · DSGVO
⚠️ Explizit DSGVO-relevant (Mandanten-PII). Umsetzung: clients/ nur lokal/Nextcloud, gitignored; nur Initialen/Kürzel; nie Mandantennamen in Commits/GitHub.
5 · Health / Restart
N/A (kein laufender Dienst).
6 · Security
Keine Ports/Secrets/Auth · Risiko rein datenschutzrechtlich (versehentliches Committen von clients/) — durch .gitignore mitigiert.
7 · Status
Produktiv / laufend als Arbeitsprojekt (Start 14.07., zuletzt Session 09). Kein Code-Backlog.
🗒️ Offene ToDos
  • ☐ Laufende Session-Vorbereitung (kein Code-Backlog)
🏗️

BHW Schwesig Homepage Live

Firmen-Website für Bauhandwerk Schwesig GmbH (Tischlerei) · LIVE www.bhw-schwesig.de

Live URL www.bhw-schwesig.de
Deploy FTPS-Webspace · Galerie unter /galerie/
Vault bhw-schwesig (age)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Single-Page-Firmen-Website mit Leistungen, Galerie, Karriere und Kontaktformular.
2 · Features
Hero + Über uns + 5 Leistungen · Foto-Galerie-Slideshow (Projekt-Tabs) · Firmen-Video · Karriere/Stellen · Cookie-Banner · Datenschutz/Impressum · n8n-Kontaktformular.
3 · Architektur
Statisches HTML/CSS (inline) + Vanilla-JS · Deploy per FTPS (nur / schreibbar) · self-hosted Fonts (Hauptseite) · kein Framework/Backend. Seit 16.08.: eigenes Forgejo-Repo c-stone-bhw-schwesig-homepage, lokale Struktur bereinigt (Rohfoto-Dump + Alt-Entwürfe git-historisiert statt lose im Ordner).
4 · DSGVO
⚠️ Hauptseite self-hosted Fonts (DSGVO ok), aber datenschutz.html+impressum.html laden noch Google Fonts → Rest-Risiko. Cookie-Banner vorhanden, Formular via n8n (EU).
5 · Health / Restart
N/A (statisch, Fremd-Webspace-Uptime) · keine Container.
6 · Security
❌ SSL-Zertifikat abgelaufen (dringend erneuern) · ❌ FTP-Passwort am 14.08. per lftp-pwd geleakt → rotieren · FTPS-Deploy (verschlüsselt) · Formular → n8n-Webhook · Cache-Control gesetzt. 16.08.: Legacy-zp-server/-Backend mit hartcodiertem API-Key (gitleaks-Fund beim Repo-Setup) aus Git ausgeschlossen — Key-Rotation-Status noch zu klären, nur gitignored bisher.
7 · Status
Produktiv / LIVE, alle 5 Phasen. Umbau 14.08.: Karriere/Kontakt als eigene Unterseiten, Galerie-Dualfilter (Gewerk + Projekt-Sprung), Hero = reales Foto, SEO/GEO nachgeschärft. 16.08.: Mobile-Nav-Fixes (Hamburger-Menü, Button-Größe/Höhe, Hero-Bild-Überlappung behoben) auf index/karriere/kontakt.html. Incident 16.08.: live index.html war vor Session-Start auf alte Vorumbau-Version zurückgefallen (Quelle: falscher lokaler Ordner) — aus Upload Homepage aktuell/ wiederhergestellt + deployed. Offen: FTP-PW rotieren, SSL-Cert erneuern (dringend), danach Sitemap in Search Console.
🗒️ Offene ToDos
  • ☐ FTP-Passwort rotieren (14.08. geleakt) → Vault bhw-schwesig updaten
  • ☐ SSL-Zertifikat erneuern (DRINGEND — abgelaufen)
  • ☐ Google Fonts auf datenschutz.html + impressum.html lokalisieren
  • ☐ Sitemap in Google Search Console einreichen
  • ☐ FTZ-Bildauswahl kuratieren
🌐

c-stone.info Live

Dachmarken-Verteilerseite · leitet Besucher in 3 Kompetenzbereiche (Development, Academy, AVGS)

Domain c-stone.info

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Zentrale Marken-Homepage; alte helle Design-Variante entfernt (11.08.), nur noch die Navy-Version live.
2 · Features
Ein Design (Navy) · Hero mit Portrait + Glass-Cards + 7 KI-Bildhinweise · 3 Kompetenzkarten · Legal-Seiten · robots.txt/sitemap.xml/llms.txt · OG-Image.
3 · Architektur
Statisches HTML, self-contained (Inline-CSS/JS) · eigenes Git-Repo (aktiv, Fixes 11.08.) · .htaccess (www→non-www 301, HTTPS) · Deploy via Strato WebFTP.
4 · DSGVO
Alle live Seiten hosten Inter self-hosted, kein Google-Fonts-Request mehr (alte Variante mit Google-Fonts-CDN gelöscht, 11.08.). Cal.com entfernt. Kontakt über c-stone-dev.com-Formular (EU).
5 · Health / Restart
N/A (statisch) · keine Container.
6 · Security
.htaccess erzwingt HTTPS + www-Redirect · tote Links vor Deploy bereinigt · TLS-Status live unbekannt.
7 · Status
Live (index.html, Navy-Design, deployed + verifiziert 11.08.). Offen: echte Ziel-URLs/Fotos, Vita-Zahlen prüfen.
🗒️ Offene ToDos
  • ☐ Echte Ziel-URLs + Karriere-Fotos ergänzen
  • ☐ Vita-Zahlen final prüfen
🪨

C-Stone Präsentationen Statisch · Live

Self-contained HTML-Slide-Decks im Navy/Gold-Design von c-stone.info

Live URL https://presentation.c-stone.info
Deploy /root/presentation/index.html → Caddy (n8n-caddy-1), Mount /srv/presentation

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Sammlung von HTML-Präsentationen (16:9) im 1:1-Design der C-Stone-Homepage. Erstes Deck: Firmenpräsentation (9 Folien).
2 · Features
Pfeiltasten-/Dot-Navigation · self-hosted Inter-Font + Bilder als Base64 inline (ein File pro Deck) · @media print für PDF-Export · Logo freigestellt (Weiß→transparent).
3 · Architektur
Kein Framework, kein Server, kein Docker-Service — ein self-contained HTML-File pro Deck. Deploy-Ziel presentation.c-stone.info per DNS-A-Record direkt auf Hetzner (178.105.81.60), ausgeliefert über bestehenden Caddy-Reverse-Proxy (/root/n8n/docker-compose.yml, Mount /root/presentation:/srv/presentation).
4 · DSGVO
Nur öffentliche Marketinginhalte (Homepage-Content), keine Kunden-/Lead-Daten. Font self-hosted (kein Google-Fonts-CDN-Call).
5 · Health / Restart
Kein eigener Container — läuft im bestehenden n8n-caddy-1 (restart: always). Statische Datei, kein Health-Endpoint nötig.
6 · Security
Keine Ports/Secrets/DB — reine statische Auslieferung. HTTPS automatisch via Caddy/Let's-Encrypt.
7 · Status
Live (17.08.2026). Lokales Repo committed, noch kein Forgejo-Remote (auf Wunsch einzurichten). Offen: Markus-Freigabe des Firmenpräsentation-Inhalts.
🗒️ Offene ToDos
  • ☐ Markus: Firmenpräsentation final freigeben
  • ☐ Optional: Forgejo-Remote einrichten
📑

C-Stone Presentation Maker Live

KI-Präsentationsgenerator (FastAPI + React + Bedrock) mit PPTX-Export via Nextcloud-Template

Domain presentation-maker.c-stone-nx.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Generiert KI-Slides und exportiert als PPTX mit Corporate-Template + C-Stone-Logo.
2 · Features
KI-Slide-Generierung (Bedrock Sonnet/Opus/Haiku) · PPTX-Export mit Template+Logo · Nextcloud-Fileablage · API-Backend (von localStorage migriert) · Upload (max 50 MB).
3 · Architektur
React (nginx) · FastAPI (Port 8000) · PostgreSQL 16 · Redis 7 · AWS Bedrock eu-central-1 · Nextcloud · Caddy (n8n-caddy-1, HTTPS/letsencrypt + HSTS) · geteiltes Netz n8n_default · presentation-maker.c-stone-nx.com.
4 · DSGVO
Bedrock eu-central-1 explizit Pflicht (nie US), TLS via Caddy/letsencrypt + HSTS (1 J.), DB/Redis ohne Host-Port, Nextcloud EU-Storage, .env nur auf EU-Server (Hetzner).
5 · Health / Restart
restart: unless-stopped alle 4 · ❌ keine healthcheck-Blöcke · Named Volumes (presentation-maker-pgdata+uploads), Redis ohne Volume.
6 · Security
Keine Host-Ports (nur via Caddy) · JWT HS256 · Selbstregistrierung zu (ALLOW_REGISTRATION=false → 403) · Rate-Limit 5/min auf /token+/register · HSTS aktiv · nginx proxyt auf eindeutigen presentation-maker-backend (Namenskollision im shared Netz vermieden) · .env Klartext auf Server.
7 · Status
Live (Stand 18.08.2026) auf presentation-maker.c-stone-nx.com — Register/Login/PPT-Upload end-to-end verifiziert. Prod-DB frisch/leer. Offen: Mandanten+Vorlagen in Prod anlegen, Bedrock-Generierung end-to-end testen, healthchecks, dediziertes Nextcloud-App-Passwort in Vault.
🗒️ Offene ToDos
  • ☐ Prod: Mandanten + Vorlagen anlegen, Bedrock-Generierung end-to-end testen
  • ☐ Dediziertes Nextcloud-App-Passwort in Vault (statt Admin-Cred in .env)
  • ☐ Healthchecks ergänzen
  • ☐ README füllen · Redis-Persistenz klären
📈

C-Stone Coding Dashboard Script · intern

Token/Kosten-Visualisierung aus Session-Logs (Claude Code, Cline)

Befehl python3 generate.py

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Statisches Dashboard, das Token-Verbrauch und Kosten aus lokalen Session-Logs visualisiert.
2 · Features
Kosten heute/Monat/gesamt · Token nach Modell · Kosten nach Projekt · Tages-/Monatstrend-Charts · AWS-Bedrock-Kosten-CSV · Audit-Tier-Charts.
3 · Architektur
Python-Generator (generate.py) erzeugt data.json · statisches index.html via python3 -m http.server 8765 · kein Backend/Docker.
4 · DSGVO
Rein interne Tooling-Metriken (eigene Token-/Kostendaten), kein Kunden-/Personenbezug.
5 · Health / Restart
Kein Monitoring · keine restart-Policy (kein Docker) · kein healthcheck.
6 · Security
Lokaler HTTP-Server (8765), nicht öffentlich · .env mit Hetzner-Robot-Creds · main per Pre-Push-Hook geschützt (Feature-Branch + PR).
7 · Status
Dev / intern-produktiv, aktiv gepflegt (Commit 08.08.). Keine echten Blocker.
🗒️ Offene ToDos
  • ☐ Keine echten Blocker (laufende Datenquellen-Erweiterung)
🧠

C-Stone Memory Dev · Live

Deterministischer Lifecycle-/Kurationsprozess für den Mem0-Memory-Store

Skill-Ziel ~/.claude/skills/memory-curator · Wrapper: NucBox :8000

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Dedup, Zeitbezug-Flags, Claude-Klassifikation, menschliches Approval-Gate, auditiertes Apply. Prinzip: Skripte lesen/schreiben, LLM urteilt, Mensch gibt frei.
2 · Features
memory-curator-Skill global installiert · /curate Command · /end-day Step 6b gepatcht · /memories/search Semantic-Search-Endpoint · 20 Infra-Facts ingested.
3 · Architektur
Mem0/Qdrant auf NucBox 192.168.50.124:8000 (live) · Embedder: nomic-embed-text 768d · LLM: qwen2.5:7b · Collection: cstone_memory · user_id: markus · Forgejo: git.c-stone-dev.com/markus/c-stone-memory.
4 · DSGVO
Vollständig lokal/on-prem (NucBox LAN) · kein US-Endpoint · Klassifikation via AWS Bedrock eu-central-1.
5 · Health / Restart
restart: unless-stopped auf allen Containern (qdrant, mem0-stack-mem0-1). GET /health → {"status":"ok"}.
6 · Security
Qdrant Port 6333 nur Docker-intern (nicht auf Host) · Human-Approval-Gate für destruktive Aktionen · memory-lint PreToolUse Hook aktiv.
7 · Status
Dev · Live (Stand 10.08.). 20 Memories, erster /curate DEV grün (0 Duplikate, 4 annotate). Offen: Ollama-LAN-Bind absichern (optional).
🗒️ Offene ToDos
  • ☐ Ollama-LAN-Bind absichern (Firewall auf 172.18.0.1, optional)
🗺️

AIM Go-Live Concept Konzept / Doku

Projektplan für die Zusammenführung dreier Gesellschaften bis Jahresende · 185 Aufgaben / 24 Workstreams

Ziel output/projektplan.csv (+ xlsx)

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Reines Planungs-/Dokumentprojekt (kein SaaS-Scaffold) zur Restrukturierung/Fusion.
2 · Features
CSV-Aufgabenplan (185 Aufgaben) · Workstreams (Legal, Finance, Ops, HR, IT, Compliance, Data Services, FRM, Versicherungen, Verträge/Leasing u.a.) · analyse-vorgehen.md · xlsx mit Autofilter.
3 · Architektur
N/A — reines Planungs-/Analyseprojekt, keine docker-compose, kein Deployment. Analyse via Claude (PROD-Bedrock).
4 · DSGVO
⚠️ Quelldokumente vertraulich/personenbezogen; Analyse (Aufgabe 2) nur im PROD-Bedrock-Modus (eu-central-1); Quelldokumente per .gitignore ausgeschlossen.
5 · Health / Restart
N/A (Doku) · kein Backup-Mechanismus außer Dateiablage.
6 · Security
N/A — keine Ports/Container; Schutz über DSGVO-Modus-Gate + gitignore der Quelldokumente.
7 · Status
Konzept / Planung. Offen: Quelldokumente ablegen, in PROD-Bedrock analysieren, Phase 3 (Priorisierung/Owner/Deadlines).
🗒️ Offene ToDos
  • ☐ Quelldokumente ablegen
  • ☐ Analyse in PROD-Bedrock durchführen
  • ☐ Phase 3: Priorisierung / Owner / Deadlines

CHM Celebrate Hope Konzept

Fundraising-/Impact-Konzept für Kaffeeprojekt in Uganda (Hope Coffee Uganda)


📋 Steckbrief — 7 Punkte
1 · Beschreibung
Spender-/Investoren-Präsentation für Celebrate Hope Ministries — kein klassisches Website-Produkt.
2 · Features
Konzept-HTML · große Donation-/Investment-Präsentation (~10 MB) · Impact-Konzept DE/EN (DOCX) · Justification-/Performance-Dokumente · Bild-Assets.
3 · Architektur
Statische Standalone-HTML-Präsentation (alles inline) + Office-Dokumente · kein Backend/Framework/docker · Deployment: keines/lokal.
4 · DSGVO
Nur System-Font Georgia, keine externen Google Fonts, keine Formulare/Cookies, kein Tracking — reines Präsentationsdokument.
5 · Health / Restart
N/A (kein Dienst/Container).
6 · Security
N/A — keine Formulare/Server/TLS-Bezug.
7 · Status
Konzept (Fundraising-Unterlage, Juni 2026). Offen: bei Web-Veröffentlichung Hosting/Domain/DSGVO-Formularprüfung.
🗒️ Offene ToDos
  • ☐ Bei Web-Veröffentlichung: Hosting/Domain/DSGVO-Formularprüfung
🛡️

C-Stone Security Setup Doku

Sicherheits-Dokumentation + Audit-Checklisten


📋 Steckbrief — 7 Punkte
1 · Beschreibung
Sicherheits-Dokumentations- und Audit-Projekt für ganzheitliche C-Stone-Security.
2 · Features
Struktur /audit, /checklists, /docs · Einstieg audit/initial-audit.md · Standards DSGVO, OWASP Top 10 · Tools gitleaks, pip-audit, pre-commit.
3 · Architektur
N/A — Doku-/Checklisten-Repository, keine docker-compose.
4 · DSGVO
DSGVO ist selbst Scope-Bereich (Datenspeicherung/-flüsse dokumentiert), keine eigene Datenverarbeitung.
5 · Health / Restart
N/A (Doku).
6 · Security
N/A — behandelt Security als Inhalt, betreibt selbst keine Services.
7 · Status
Doku / Konzept. Ordner checklists/, docs/ beim Listing teils leer.
🗒️ Offene ToDos
  • ☐ checklists/ und docs/ befüllen (aktuell leer)
📦

Base Project Template

Vorlage für neue Projekte mit voreingerichtetem Clowdex-Setup und C-Stone-Standards


📋 Steckbrief — 7 Punkte
1 · Beschreibung
Projekt-Grundgerüst/Template, per /project-start Schritt 3 (cp -r) Startpunkt für JEDES neue Projekt. Am 13.08.2026 additiv um den bis dahin ungenutzten _TEMPLATE-Inhalt angereichert.
2 · Features
Clowdex CLAUDE.md · .claude/memory.md-Grundstruktur · knowledge-base.md-Grundregeln · Task Board.md-Vorlage · .gitignore mit DSGVO-Sperrzone-Block · .env.example mit Secret-Vault-Verweis · generate-fake-data.py/seed-db.py (DEV-Fake-Data-Pattern) · fake-data/.
3 · Architektur
N/A (keine docker-compose, kein Stack).
4 · DSGVO
.gitignore blockt DSGVO-Sperrzone/data-real/kundendaten explizit, .env.example verweist auf with-secrets.sh/Vault statt Klartext-Secrets.
5 · Health / Restart
N/A.
6 · Security
N/A — keine Ports/Secrets/Services.
7 · Status
Template. Bei neuen Projekten kopieren, umbenennen, in /projekte/ ablegen. project-start.md Schritt 5 wurde 13.08. angepasst, damit es die mitkopierten .gitignore/.env.example nicht mehr mit einer älteren Variante überschreibt.
🗒️ Offene ToDos
— keine offenen Punkte
🧩

_TEMPLATE Eingestellt

Ordner am 13.08.2026 gelöscht — Inhalt vollständig additiv in Base Project gemergt


📋 Steckbrief — 7 Punkte
1 · Beschreibung
War ein zweites, ungenutztes Template-Scaffold neben Base Project (DSGVO-Gitignore, Fake-Data-Pattern). Kein Skript referenzierte es.
2 · Features
— entfällt, siehe Base Project.
3 · Architektur
N/A.
4 · DSGVO
Eingestellt.
5 · Health / Restart
N/A.
6 · Security
N/A.
7 · Status
Eingestellt (13.08.2026). Inhalt (.gitignore, .env.example, generate-fake-data.py, seed-db.py, fake-data/) 1:1 nach Base Project übernommen, Ordner danach gelöscht (Commit 65b787c). Via Git-Historie (f24c935/d78d2ac) wiederherstellbar.
🗒️ Offene ToDos
— keine offenen Punkte
📘

C-Stone Coding Setup (diese Doku) Doku

Die Setup-Dokumentation selbst — Single-File-HTML-Doku des Coding-Setups

Datei projekte/C-Stone-Coding-Setup/C-Stone-Coding-Setup.html

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Große Single-File-HTML-Doku (~390 KB) des Claude-Code-/Coding-Setups inkl. verschlüsseltem Credential-Payload.
2 · Features
HTML-Dokumentationsseite · datierte Backups (.bak) · verschlüsselter CRED_DATA-Block (AES-256-GCM/PBKDF2) · Nav über alle Projekte + Infrastruktur.
3 · Architektur
N/A — statische HTML-Datei, kein Stack/Container.
4 · DSGVO
Interne Doku, keine Personendatenverarbeitung. Master-Passwort nicht in der Datei; nur lokal (Nextcloud-Sync), nie in Git.
5 · Health / Restart
N/A (Doku) · manuelle datierte .bak-Backups vor jedem größeren Update.
6 · Security
N/A — keine Services/Ports · Klartext-Credentials nie unverschlüsselt in der HTML.
7 · Status
Doku (laufend gepflegt, Update 10.08.2026). Wird künftig automatisch per /end-day aktualisiert.
🗒️ Offene ToDos
— keine offenen Punkte
📢

C-Stone Marketing Live · Google-Pipeline (Meta offen)

Ads-Optimierungs-Agent für Google Ads + Instagram/Meta Ads · analysiert, schlägt vor (PROPOSE-Modus)

Google Cloud Projekt c-stone-marketing (Nr. 812606117044)
Git git.c-stone-dev.com/markus/c-stone-marketing
Server /root/c-stone-marketing/ · Cron 06:30 · Report-Mail an info@c-stone-dev.com

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Analysiert Kampagnen-Metriken auf Google Ads und Instagram/Meta Ads (regionale Placements + Geo-Targeting) und schlägt Optimierungen vor — keine automatischen Änderungen ohne Freigabe.
2 · Features
google_ads_client.py (GAQL, Manager-Skip) · analyzer.py (Bedrock Sonnet 4.5, plattform-agnostisch) · main.py (Orchestrierung) · creative_generator.py (RSA-Anzeigentexte für 5 Academy-Kurse, Zeichenlimits geprüft) · meta_ads_client.py (geplant) · Markdown-Reports unter proposals/ · Modus PROPOSE.
3 · Architektur
Python (google-ads + boto3) · AWS Bedrock eu-central-1 (Sonnet 4.5) · Cron auf Hetzner täglich 06:30 → Report → Mail via msmtp. Deploy unter /root/c-stone-marketing/ (src + venv + .env).
4 · DSGVO
Nur aggregierte Ad-Metriken (keine PII) · Analyse ausschließlich Bedrock eu-central-1 · Secrets nur im Vault + root-only .env(600) auf Server, nie im Klartext/Chat.
5 · Health / Restart
Live: Cron 30 6 * * *run.sh (kein Docker). Log: /root/c-stone-marketing/cron.log. End-to-End auf Server verifiziert (Report + Mail zugestellt 12.08.).
6 · Security
Lokal: alle Tokens via with-secrets.sh c-stone-marketing (Modus A). Server: root-only .env(chmod 600) mit 7 Whitelist-Keys, befüllt via scripts/deploy_env.shkein Master-age-Key auf Server (Blast-Radius klein).
7 · Status
Google-Pipeline PROD-LIVE, 2 KI-Search-Kampagnen live (17.08.2026). Basic Access aktiv, täglicher autonomer Report+Mail läuft. Fehlender Conversion-Tag auf AVGS-Landingpage gefunden + gefixt + deployt. AVGS-Kampagne (PMax) pausiert (Markus ausgebucht). 2 neue Search-Kampagnen „KI im Arbeitsalltag" + „KI führen" live (je 5€/Tag, eigene Landingpages). Modus weiterhin PROPOSE — Autonomiegrad-Entscheidung nach ein paar Tagen Laufzeit. Offen: KI-Workflows-Kampagne (wartet auf Landingpage); Meta blockiert (Dev-Konto-Verify hakt bei Markus) → danach App/ads_read-Token → meta_ads_client.py.
🗒️ Offene ToDos
  • ☑ Google Ads Basic Access + End-to-End-Report (live)
  • ☑ Cron-Deployment Hetzner + Mail-Zustellung (msmtp)
  • ☑ RSA-Creative-Generator (5 Academy-Kurse)
  • ☑ 2 KI-Search-Kampagnen (Arbeitsalltag + führen) via API angelegt + live
  • ☑ Conversion-Tag-Fix AVGS-Landingpage (deployt via STRATO)
  • ☐ KI-Workflows-Kampagne anlegen (wartet auf Landingpage von Markus)
  • ☐ Meta: Dev-Konto-Verify (Markus, „Rechner nicht bekannt") → App + System-User-Token → meta_ads_client.py
🤝

Zentiq NX CRM Eingestellt

KI-CRM SaaS · Projekt eingestellt (07/2026) · ersetzt durch C-Stone CRM

Git git.c-stone-dev.com/cstone-mkr/zentiq-nx-crm

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Ehemaliges KI-CRM-SaaS; Entwicklung eingestellt, offene Backend-Fixes hinfällig.
2 · Features
FastAPI + React + PostgreSQL/pgvector + Claude (Bedrock) — nicht weitergeführt.
3 · Architektur
FastAPI · React · PostgreSQL + pgvector · Claude AI (Bedrock) · Hetzner (Docker). Gestartet 10.07.2026.
4 · DSGVO
Eingestellt — keine aktive Datenverarbeitung.
5 · Health / Restart
N/A — Server-Infra am 13.08.2026 vollständig abgeräumt (5 Container + Netz + 3 Volumes inkl. CRM-DB + Images entfernt; Freigabe Markus). Compose-Datei bleibt unter /root/zentiq-nx-crm/ als Referenz.
6 · Security
N/A.
7 · Status
Eingestellt (07/2026), ersetzt durch C-Stone CRM.
🗒️ Offene ToDos
— keine offenen Punkte
🎙️

Voice-Agent-CStone Dev

Self-hosted Voice Agent · SIP + WebRTC · LiveKit + faster-whisper + Piper · NucBox

Git git.c-stone-dev.com/markus/voice-agent-cstone (ausstehend)
NucBox 192.168.50.124 · ~/voice-agent-cstone/

📋 Steckbrief — 7 Punkte
1 · Beschreibung
Self-hosted Voice Agent für Telefon (SIP) + Browser (WebRTC). Vollständig lokal auf NucBox EVO-X2 — kein US-Dienst berührt Audio.
2 · Features
VAD (Silero) → STT (faster-whisper large-v3-turbo, CPU) → LLM (Mistral Small 4, Port 8083, 8ms TTFT) → TTS (Piper de_DE-thorsten, Port 9001). LiveKit Agents 1.6.10. Geplant: SIP-Trunk (sipgate), WireGuard-Tunnel → Hetzner.
3 · Architektur
livekit-server (Docker :7880) · whisper_server.py (FastAPI :9000, CPU/int8) · piper_server.py (FastAPI :9001) · agent worker (livekit-agents 1.x, :8081). Alle lokal auf NucBox, kein Hetzner-Deploy (Phase 1).
4 · DSGVO
Sprachaufnahmen = biometrische Daten (Art. 9). Vollständig lokal (NucBox), kein US-Dienst. SIP-Trunk: nur Anbieter mit AVV (DE). recordings/transcripts via .gitignore gesperrt.
5 · Health / Restart
⚠️ DEV: livekit per docker compose (restart:unless-stopped), whisper/piper/agent via nohup (kein Auto-Restart). Systemd-Services stehen auf Todo-Liste.
6 · Security
DEV-Keys: devkey/secret (6-Byte JWT → Warnung im Log, für DEV ok). Prod: Keys in Vault, ≥32-Byte Secret. SIP Phase 3: IP-Allowlist + SIP-Digest-Auth + SRTP.
7 · Status
Dev — Phase 1 fast abgeschlossen (Stand 13.08.2026). Alle Services live (LK:7880, STT:9000, TTS:9001, Agent registriert). Offen: Browser WebRTC Test, Forgejo-Push, systemd Services. Phase 2: WireGuard+Caddy+TURN (Hetzner). Phase 3: SIP-Trunk (sipgate).
🗒️ Offene ToDos
  • Forgejo-Repo voice-agent-cstone anlegen + git push
  • Browser WebRTC Test (LiveKit Playground lokal)
  • systemd Services für whisper_server, piper_server, agent (NucBox)
  • Vault-Stand prüfen: Secrets 08-10→08-11 evtl. verloren
  • Phase 2: WireGuard NucBox↔Hetzner + Caddy TURN
  • Phase 3: sipgate SIP-Trunk + AVV
⚡ Deploy-Optimierung
Root-Cause-Analyse und durchgeführte Maßnahmen — Stand 08. Juli 2026
Hinweis (05.08.2026): Die unten dokumentierte CI/CD-Pipeline entstand vor der GitHub-Ablösung (07/2026). Git-Hosting läuft inzwischen vollständig über Forgejo (EU). Verbleibende GitHub-/ghcr.io-Abhängigkeiten sind auf EU-konforme Alternativen zu prüfen (offener Punkt).
Problem: Während eines Deploys waren alle anderen Apps auf dem Server nicht erreichbar.
Ursache (belegt): RAM-Starvation durch On-Server-Build — nicht Caddy.
Ergebnis: 222 MB → 5.3 GB verfügbarer RAM. OOM-Risiko eliminiert. CI/CD verlagert Builds vom Server.

🔍 Diagnose — Server-Zustand vor Optimierung
MetrikVorherNachher
Server-TypCPX22 2 CPU · 4 GB RAMCPX32 4 CPU · 8 GB RAM
RAM belegt3.5 / 3.7 GiB (95%)2.3 / 7.6 GiB (30%)
RAM available222 MiB5.3 GiB
Swap0 B2 GiB (0 B aktiv)
OOM-Kills (24h)2 (OpenWebUI python3)0
Memory LimitsKeine (28 Container unbegrenzt)Alle Container limitiert
Plattenbelegung61 GB / 75 GB (85%)25 GB / 75 GB (35%)
OpenWebUI649 MB RAM (nicht mehr genutzt)Entfernt
Laufende Container2827

1️⃣ Swap aktivieren
2 GB Swap-Datei als Puffer gegen temporäre RAM-Spitzen bei Builds. Ohne Swap musste der Kernel bei Speicherdruck sofort Prozesse killen (OOM-Killer). Swap federt kurze Spitzen ab.
Befehl fallocate -l 2G /swapfile → mkswap → swapon → /etc/fstab
Status: Aktiv Aktuell 0 B von 2 GB belegt — reine Reserve.
2️⃣ OpenWebUI entfernt
OpenWebUI (ghcr.io/open-webui/open-webui:main) war der größte RAM-Fresser mit 649 MB. Wird nicht mehr aktiv genutzt — Container gestoppt, Image gelöscht. Keine Abhängigkeiten von anderen Projekten.
Frei gegeben: 649 MB RAM
3️⃣ Memory Limits gesetzt
Problem: Kein Container hatte Memory-Limits. Litellm (623 MB) und OpenWebUI (649 MB) konnten unbegrenzt wachsen und andere Container verdrängen. Bei Build-Spitzen wurde der größte Container (zufällig) vom OOM-Killer getötet — nicht der Build-Prozess.
ContainerLimitReservationTatsächlicher Verbrauch
litellm768 MB384 MB576 MB
n8n512 MB256 MB130 MB
Backend-Container (je)256 MB128 MB50-112 MB
PostgreSQL-Container (je)512 MB256 MB15-110 MB
Redis / Frontend— (minimal)<15 MB
Limits via docker update --memory <limit> --memory-swap <limit> --memory-reservation <reserv> <container>
Dauerhaft in docker-compose: deploy: resources: limits: memory: 256M in jeden Service.
4️⃣ Build Cache geleert
Der Docker Build Cache hatte 36.87 GB belegt, davon 21.78 GB reclaimable. Durch regelmäßiges docker build --no-cache bei Deploys alterte der Cache schnell.
Befehl docker builder prune -a -f
Frei gegeben: 22 GB Platte Plattennutzung von 85% auf 35% reduziert.
5️⃣ Server-Upgrade CPX22 → CPX32
Hetzner Cloud Server n8n-server (ID: 129204915) von CPX22 auf CPX32 geändert. Upgrade via Hetzner API mit change_server_type Action durchgeführt. Automatischer Stop → Typ-Wechsel → Start.
RessourceCPX22 (Alt)CPX32 (Neu)Delta
CPU Kerne24+2
RAM4 GB8 GB+4 GB
Festplatte75 GB75 GB
Kosten~5 €/Monat~8 €/Monat+3 €/Monat
Aktiv seit 08.07.2026 Downtime ca. 2 Minuten. Alle Container nach Start automatisch hoch via restart: unless-stopped.
6️⃣ CI/CD Pipeline (GitHub Actions + ghcr.io)
Problem: docker compose up -d --build auf dem Server baute Images lokal. Der Build-Prozess saturierte CPU/RAM/IO → OOM-Killer tötete benachbarte Container während des Builds.

Lösung: Build in GitHub Actions, Pull auf Server
Git Push on main

GitHub Actions Workflow
├─ docker build → ghcr.io/cstone-mkr/*:latest
├─ docker push (Registry)
└─ SSH: docker compose pull + up -d --no-deps

Server: Nur Pull + Restart, kein Build mehr

ProjektGitHub RepoWorkflowImages (ghcr.io)
AI-Office-Manager cstone-mkr/c-stone-ai-office-manager .github/workflows/deploy.yml c-stone-ai-office-manager-{backend,frontend}
Bewerbungsmanager cstone-mkr/c-stone-bewerbungsmanager .github/workflows/deploy.yml c-stone-bewerbungsmanager-backend
Royal Rangers cstone-mkr/royal-rangers-camp-manager .github/workflows/deploy.yml royal-rangers-camp-manager-{backend,frontend}
Noch zu tun: AI-Executive-Navigator, C-Stone Business Analyser, C-Stone-CRM, C-Stone-Presentation-Maker fehlen in CI/CD.
7️⃣ Deploy-Scripts umgestellt
Alle deploy.sh Scripts von --build auf pull + up -d --no-deps umgestellt. Caddy reload bleibt erhalten (kein Restart).
ProjektAlte ZeileNeue Zeile
AI-Office-Manager docker compose up -d --build docker compose pull && docker compose up -d --no-deps
Bewerbungsmanager docker compose up -d --build docker compose pull && docker compose up -d --no-deps backend
Royal Rangers docker build --no-cache ... && docker run ... Via CI/CD: docker pull ghcr.io/... && docker tag && docker run
docker-compose.yml: image:-Tag ergänzt für ghcr.io — Build-orphan-fähig: solange image: existiert, fällt compose bei fehlendem Build-Kontext auf Pull zurück.
🔑 Hetzner Cloud API Token SENSITIV — NIE TEILEN
API Token mit Read & Write-Rechten für Hetzner Cloud Console. Zugriff auf Server n8n-server (ID: 129204915). Verwendet für Server-Upgrade CPX22 → CPX32 per curl-API.
API Token VIgXOaAZkzrB09pDTHZC38Qsfw1bZeBzrMIhqrmAHSPwP6Qokqcw39Ty2OtL0S82
⚠️ API-Request-URL: https://api.hetzner.cloud/v1/servers
⚠️ Dieser Token gewährt vollen API-Zugriff (Read/Write) auf alle Ressourcen des Hetzner-Projekts.
⚠️ Gespeichert als GitHub Secret SSH_PRIVATE_KEY ist der SSH-Deploy-Key, nicht dieser API-Token.

📊 Zusammenfassung
#MaßnahmeStatusWirkung
1Swap 2 GBAktivOOM-Puffer bei RAM-Spitzen
2OpenWebUI entferntErledigt-649 MB RAM
3Memory LimitsAktivKein Container killt Nachbarn
4Build Cache geleertErledigt+22 GB Platte
5Server CPX22 → CPX32Aktiv+4 GB RAM + 2 CPU
6CI/CD GitHub Actions3/7 ProjekteBuild verlagert → kein Server-Load
7Deploy-Scripts umgestellt3/3Pull statt Build auf Server
📝 Nächste Schritte
  • Offen CI/CD für AI-Executive-Navigator, C-Stone Business Analyser, C-Stone-CRM, C-Stone-Presentation-Maker
  • Offen Memory Limits dauerhaft in docker-compose.yml verankern (deploy.resources.limits)
  • Offen rr-camp-frontend "unhealthy" untersuchen (bereits vor Optimierung)
  • Offen Caddy-cron für automatischen Cert-Renewal prüfen (Caddy macht das selbst via ACME)
Stand: 08. Juli 2026 · alle Maßnahmen durchgeführt und verifiziert
Komponenten-Lexikon
Jede Komponente im Setup — was sie ist, was sie tut, welche Schnittstellen sie nutzt
⚙️
Visual Studio Code (VS Code)
Haupt-Code-Editor für lokale Entwicklung
Editor
Was ist es?

Microsofts quelloffener Code-Editor. Läuft lokal auf dem Mac. Basis für alle KI-Erweiterungen (Continue, Cline). Der zentrale Arbeitsplatz für Code schreiben, testen und debuggen.

Was macht es?
  • Code schreiben & bearbeiten
  • Integriertes Terminal
  • Git-Integration (Diff, Commit)
  • Erweiterungen (Continue, Cline)
  • Debugging (Breakpoints, Inspector)
  • Multi-Root Workspaces
Schnittstellen
Continue.devExtension API
ClineExtension API
DateisystemLesen/Schreiben
GitSCM Provider
INNextcloud Syncvia Dateisystem
🔄
Continue.dev
KI-Assistent-Extension für VS Code — verbindet lokale und Cloud-Modelle
Tier 0+1
Was ist es?

Open-Source VS Code Extension, die als einheitliche Oberfläche für verschiedene KI-Modelle dient. Konfiguriert in ~/.continue/config.yaml. Verbindet Ollama (lokal) und AWS Bedrock (Cloud) gleichzeitig.

Was macht es?
  • Chat mit KI direkt im Editor
  • Tab-Autocomplete (qwen2.5-coder:14b)
  • Code-Edit & Apply (inline)
  • Modell-Wechsel per Klick
  • Globale Context-Dateien einlesen
  • Prompt-Caching (Bedrock)
Schnittstellen
OUTOllama APIlocalhost:11434
OUTAWS Bedrockeu-central-1
INVS Code Extension APIEditor-Kontext
INconfig.yamlModell-Konfiguration
INContext-Dateienc-stone_global_template.md
🤖
Cline
Autonomer KI-Agent als VS Code Extension
Tier 1+2
Was ist es?

VS Code Extension (saoudrizwan.claude-dev), die einen vollständig autonomen KI-Agenten im Editor bereitstellt. Kann Dateien lesen/schreiben, Terminal-Befehle ausführen und Browser öffnen — alles mit Bestätigung.

Was macht es?
  • Multi-Step-Aufgaben autonom
  • Dateien lesen, schreiben, erstellen
  • Terminal-Befehle ausführen
  • Browser-Automatisierung
  • MCP-Server einbinden
  • Codebase durchsuchen & verstehen
Schnittstellen
OUTAWS Bedrock / AnthropicClaude API
VS Code DateisystemLesen & Schreiben
OUTTerminal (Shell)Befehle ausführen
MCP ServerTool-Erweiterungen
💻
Claude Code CLI
Vollautonomer KI-Agent im Terminal — Tier 2
Tier 2
Was ist es?

Anthropics offizielles Terminal-Tool. Läuft im zsh-Terminal, nutzt Claude Sonnet 4.6 via AWS Bedrock. Hat Zugriff auf das gesamte Dateisystem, Terminal, SSH und MCP-Tools. Das mächtigste Tier des Setups — verwaltet auch den Hetzner-Server direkt.

Was macht es?
  • Vollständige Projekte entwickeln
  • SSH auf Hetzner-Server
  • Docker-Container verwalten
  • Playwright-Browser steuern
  • Git-Commits & Deployments
  • Clowdex-Skills ausführen
  • Autonome Multi-Step-Workflows
Schnittstellen
OUTAWS BedrockClaude Sonnet 4.6
Dateisystem (Mac)Lesen & Schreiben
OUTSSH → HetznerServer-Verwaltung
OUTDocker DesktopContainer-Management
MCP PlaywrightBrowser-Steuerung
INClowdexSkills & Memory
🦙
Ollama
Lokale KI-Modelle — komplett offline, kostenlos
Tier 0 · Lokal
Was ist es?

Tool zum lokalen Betreiben von Open-Source-KI-Modellen. Läuft als Dienst im Hintergrund auf dem Mac, stellt eine REST-API bereit. Keine Internetverbindung nötig, keine Cloud-Kosten, vollständige Datenprivatsphäre.

Installierte Modelle
  • devstral:24b (14 GB) — Code
  • qwen3-coder:30b (18 GB) — Code
  • qwen2.5-coder:14b (9 GB) — Autocomplete
  • deepseek-coder-v2:16b (8.9 GB)
  • gemma4:12b (7.6 GB) — Chat
Schnittstellen
INContinue.devHTTP localhost:11434
INClineHTTP localhost:11434
INDirekte REST-CallsOpenAI-kompatible API
INMac DateisystemModell-Storage
☁️
AWS Bedrock (eu-central-1)
Verwalteter KI-API-Dienst von Amazon — Frankfurt, DSGVO-konform
Tier 1+2 · Cloud
Was ist es?

Amazon Web Services-Dienst, der den API-Zugriff auf verschiedene große KI-Modelle bereitstellt. Genutzte Region: Frankfurt (eu-central-1) für DSGVO-Konformität. Alle KI-Anfragen laufen über Bedrock — sowohl Claude Code als auch Continue.dev.

Verfügbare Modelle
  • Claude Sonnet 4.6 (Haupt-Modell)
  • Claude Haiku 4.5 (schnell/günstig)
  • Qwen3 235B (Alibaba)
  • Devstral 123B (Mistral)
  • DeepSeek V3 (Stockholm)
Schnittstellen
INClaude Code CLICLAUDE_CODE_USE_BEDROCK=1
INContinue.devprovider: bedrock
INn8n (Hetzner)HTTP API-Calls
INFlask ServicesPython SDK (boto3)
OUTAWS IAMKey/Secret Authentifizierung
🧠
Clowdex
Workflow- und Memory-System für Claude Code — 1.792 vorgefertigte Skills
Tier 2 · System
Was ist es?

Erweiterungsschicht für Claude Code: strukturiertes Memory (was wurde wann entschieden), eine Wissensdatenbank mit gelernten Regeln, und 1.792 vorgefertigte Skills in 32 Kategorien. Installiert global unter .claude/.claude/, Skills verlinkt via Symlink.

Was macht es?
  • Session-Memory über Neustarts
  • Knowledge Base (Regeln & Patterns)
  • Workflow-Befehle (/start, /sync ...)
  • 1792 fertige Skills laden
  • Projektkontext speichern
  • Task Board verwalten
Schnittstellen
INClaude Code CLICLAUDE.md lädt Kontext
Dateisystemmemory.md, knowledge-base.md
OUTSkills-Symlink.claude/skills/ → .claude/.claude/skills/
Alle ProjekteGemeinsame Knowledge Base
🖥️
Hetzner Cloud Server
Virtueller Server in Deutschland — Hosting für alle Live-Apps
Infra · EU
Was ist es?

Gemieteter virtueller Server bei Hetzner in Deutschland (IP: 178.105.81.60). Darauf laufen alle produktiven Apps als Docker-Container. Claude Code verwaltet diesen Server direkt per SSH — kein manuelles Eingreifen nötig.

Laufende Dienste
  • n8n (Workflow-Automation)
  • Traefik (SSL + Routing)
  • AI Executive Navigator
  • Royal Rangers Camp Manager
  • PostgreSQL (je Projekt)
  • Redis (Caching)
  • Flask Microservices
Schnittstellen
INClaude Code CLISSH root@178.105.81.60
INrsync / scpDatei-Deployment
OUTInternet (HTTPS)*.c-stone-dev.com
OUTAWS BedrockKI-API-Calls (n8n)
OUTSeaTable APIDatenbankzugriff
🐳
Docker (Desktop + Server)
Container-Technologie — isolierte Laufzeitumgebungen für alle Apps
Infra · Container
Was ist es?

Technologie, die Anwendungen als isolierte "Container" verpackt. Lokal läuft Docker Desktop (Mac) für Entwicklung und Tests. Auf dem Hetzner-Server läuft Docker als Produktionsumgebung für alle Live-Apps. Gesteuert über docker-compose.yml.

Was macht es?
  • Apps in Containern isolieren
  • Datenbanken (PostgreSQL, Redis)
  • Einheitliche Umgebungen
  • Automatischer Neustart
  • Netzwerk-Isolation
  • Volume-Persistenz
Schnittstellen
INClaude Code CLIdocker compose Befehle
INdocker-compose.ymlKonfigurationsdatei
OUTHetzner Linux HostContainer laufen hier
OUTTraefikLabels steuern Routing
Docker NetworkGateway 172.18.0.1
🔀
Traefik
Reverse Proxy — leitet HTTPS-Anfragen zu den richtigen Containern weiter
Infra · Proxy
Was ist es?

Moderner Reverse-Proxy-Server, der als "Türsteher" vor allen Apps sitzt. Empfängt HTTPS-Anfragen von außen und leitet sie an den richtigen Docker-Container weiter. Übernimmt automatisch SSL-Zertifikate (Let's Encrypt).

Was macht es?
  • HTTPS-Terminierung (SSL)
  • Automatische Zertifikate
  • Domain → Container Routing
  • Load Balancing
  • Health Checks
Schnittstellen
INInternet (Port 80/443)*.c-stone-dev.com
OUTDocker ContainerHTTP intern weiterleiten
OUTLet's EncryptSSL-Zertifikate
INDocker LabelsRouting-Konfiguration
☁️
Nextcloud
Selbst-gehosteter Cloud-Speicher — synchronisiert Projekte zwischen Mac und Server
Infra · Sync
Was ist es?

Datenspeicher-Dienst auf Hetzner-Infrastruktur (nx97828.your-storageshare.de). Der Nextcloud Desktop Client synchronisiert automatisch den lokalen Ordner C-Stone Cloud/Claude Code/ mit dem Server — ohne US-Cloud-Zwischenschritt.

Was macht es?
  • Automatische Datei-Synchronisation
  • Backup aller Projektdateien
  • Multi-Gerät-Zugriff
  • Versionierung von Dateien
  • .nextcloudignore verhindert Sync von node_modules
Schnittstellen
Mac DateisystemDesktop Client sync
Hetzner StorageWebDAV / HTTPS
IN.nextcloudignoreAusschluss-Regeln
🐙
GitHub
Versionsverwaltung und Code-Hosting für alle Projekte
Infra · VCS
Was ist es?

Plattform zur Versionsverwaltung mit Git. Jedes Projekt hat ein eigenes Repository. Claude Code arbeitet direkt mit Git — Commits, Branches, Diffs. SSH-Key-Authentifizierung (kein Passwort).

Was macht es?
  • Code-Versionshistorie
  • Branch-basierte Entwicklung
  • Code-Backup (extern)
  • CI/CD Pipelines (teilweise)
  • Deployment-Trigger
Schnittstellen
Claude Code CLIgit Befehle / gh CLI
VS CodeSCM Extension
OUTHetzner Servergit clone / pull
OUTSSH-KeyAuthentifizierung
n8n
Workflow-Automatisierungs-Engine — verbindet alle Dienste ohne manuellen Code
Tool · Automation
Was ist es?

Self-hosted Workflow-Tool (wie Zapier, aber auf eigenem Server). Läuft im Docker-Container n8n_n8n_1 auf dem Hetzner-Server. Verbindet KI-Modelle, Formulare, E-Mail, SeaTable und Social-Media-APIs in visuellen Workflows.

Was macht es?
  • Webhook-Empfang (Formulare)
  • KI-Anfragen zu AWS Bedrock
  • Daten in SeaTable speichern
  • E-Mails versenden
  • Social Media Posts verteilen
  • Lead-Qualifizierung automatisieren
Schnittstellen
INWebhooks (HTTPS)von Formularen/Apps
OUTAWS BedrockHTTP Request Node
OUTFlask ServicesGateway 172.18.0.1
OUTSeaTable APIDatenspeicherung
OUTSMTP (Hetzner)E-Mail-Versand
INClaude Code CLISSH-Verwaltung
🐍
Python / Flask Microservices
Brücken zwischen n8n und externen/deprecated APIs
Tool · Backend
Was ist es?

Kleine Python-Webserver (Flask), die als Adapter zwischen n8n und problematischen APIs laufen. Pattern entstand, weil der native n8n SeaTable-Node veraltet ist und 404-Fehler wirft. Laufen als systemd-Services mit automatischem Neustart auf dem Hetzner-Server.

Was macht es?
  • SeaTable-Zugriff (seatable-api SDK)
  • HTTP-Endpoints für n8n
  • API-Fehler abfangen & loggen
  • Format-Konvertierung
  • Detailliertes Debugging-Logging
Schnittstellen
INn8n HTTP Request Node172.18.0.1:5xxx
OUTSeaTable APIseatable-api Python SDK
OUTSocial Media APIsLinkedIn, Facebook, Instagram
INsystemdAuto-Restart, Service-Management
📊
SeaTable
EU-gehostete Datenbank / CRM-Backend — Alternative zu Airtable
Tool · Daten · EU
Was ist es?

Tabellenbasiertes Datenbank-Tool (ähnlich Airtable), self-hosted auf EU-Servern. Dient als CRM-Backend, Lead-Speicher und strukturiertes Datenlager. Zugriff nur über Python Flask Service — der native n8n-Node ist veraltet.

Was macht es?
  • Lead-Daten speichern
  • CRM-Funktionen (Anfragen)
  • Strukturierte Tabellendaten
  • REST-API-Zugriff
Schnittstellen
INFlask Microserviceseatable-api Python SDK
INn8nüber Flask Service (nicht direkt)
OUTEU-HostingMainz / Nürnberg (DSGVO)
🎭
Playwright
Browser-Automatisierung — Claude Code steuert einen echten Browser
Tool · Browser
Was ist es?

Microsoft-Tool zur Browser-Automatisierung. Python-Paket lokal installiert mit Chromium. Eingebunden als MCP-Server in Claude Code — damit kann Claude Code einen Browser direkt steuern: Seiten öffnen, Formulare ausfüllen, Screenshots machen, Daten extrahieren.

Was macht es?
  • Webseiten öffnen & navigieren
  • Formulare ausfüllen & absenden
  • Screenshots erstellen
  • Web Scraping (Daten extrahieren)
  • Login-Prozesse automatisieren
  • UI-Tests durchführen
Schnittstellen
INClaude Code (MCP)mcp__playwright__* Tools
INPython Scriptssync_playwright API
OUTChromium Browserheadless / headed
OUTBeliebige WebsitesHTTP/HTTPS
🐘
PostgreSQL + Redis
Datenbank (PostgreSQL) und Zwischenspeicher (Redis) für die Apps
Tool · Datenbank
Was ist es?

PostgreSQL ist die relationale Hauptdatenbank — jedes Projekt bekommt eine eigene Instanz im Docker. Redis ist ein schneller Zwischenspeicher für Session-Tokens und temporäre Daten. Beide laufen als Docker-Container, verwaltet per Alembic (Datenbank-Migrationen).

Was macht es?
  • Daten dauerhaft speichern (PostgreSQL)
  • Benutzer, Projekte, Einträge
  • Token-Blacklist (Redis)
  • Session-Caching (Redis)
  • Alembic: Schema-Migrationen
Schnittstellen
INFastAPI BackendSQLAlchemy ORM
INAlembicSchema-Migrationen
INClaude Code CLIdirekte psql-Befehle via Docker
INDocker ComposeContainer-Management
Zuletzt aktualisiert: 01. Juli 2026 · Erstellt von Claude Code (Sonnet 4.6)
⚡ Token-Optimierung
Vier komplementäre Strategien zur Reduktion des Token-Verbrauchs
Kombinierter Effekt: ~65-75% weniger Output-Tokens, ~22% weniger Gesamt-Tokens, ~54% weniger Code-Zeilen (gemessen auf echten FastAPI + React Tickets, n=4).
🗣️ Caveman — Kommunikationsstil

Die globalen Claude-Regeln in ~/.claude/CLAUDE.md erzwingen extrem verdichtete Antworten: Keine Präambel, Telegrammstil (Fragmente), max 3 Sätze Prosa, keine Selbst-Erklärung. Geschätzte Reduktion: ~65-75% Output-Tokens.

Datei ~/.claude/CLAUDE.md — Sektion „Kommunikationsstil (Caveman, strikt)"
🪄 Ponytail — Code-Minimalismus

Plugin DietrichGebert/ponytail (v4.8.1) — Standard ultra. Erzwingt YAGNI, Stdlib zuerst, keine ungefragten Abstraktionen, kürzeste Lösung. Gemessene Einsparung: −54% LOC, −22% Tokens, −20% Kosten, −27% Zeit.

Siehe Plugins-Sektion.

📖 Read-Optimierung
  • Dateien > 100 Zeilen: offset+limit statt komplett lesen
  • Gezielte grep-Suche statt Datei-Scan
  • RAG (rag_query) statt Web-Suche für Projektwissen
  • Thema erledigt → neue Session (Messages > 50% = neue Session)
🧹 Session-Hygiene
BefehlWannEffekt
/flush~30+ Tool-Calls oder QualitätsabfallContext komprimieren, Speicher sichern
/syncalle 3-4hMemory + Knowledge Base auffrischen
/end-dayArbeitstag EndeLearnings sichern, Audit, nächst. Tag prep
💰 token-cost.py — Kosten-Hook

Stop-Hook in ~/.claude/settings.json. Zeigt nach jeder Antwort Token-Verbrauch und geschätzte Kosten. Erzeugt Kostenbewusstsein.

ModellInput/MOutput/MEinsatz
Sonnet 4.6$3.00$15.00Komplexe Tasks
Haiku 4.5$0.25$1.25Schnelle Tasks
Qwen3 235B~$0.80~$2.40Boilerplate
DEV Stack€0€0Fake-Daten
Zuletzt aktualisiert: 01. Juli 2026
⚙️ Config-Dateien
Aktuelle Konfigurationen der Entwicklungsumgebung — Stand 01. Juli 2026

Die folgenden Konfigurationsdateien definieren das komplette Setup. Klicke zum Aufklappen.

~/.claude/settings.json (global)
{
  "env": {
    "AWS_REGION": "eu-central-1"
  },
  "permissions": {
    "allow": [
      "Bash(python3 -c ' *)",
      "Bash(python3)",
      "Bash(git *)",
      "Bash(git commit *)",
      "Bash(git push *)"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Write|Edit",
        "hooks": [
          {
            "type": "command",
            "command": "bash '/Users/cstone/.claude/hooks/guard-planning-gate.sh'",
            "timeout": 5000,
            "statusMessage": "Prüfe Planungs-Gate..."
          }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "python3 ~/.claude/hooks/token-cost.py",
            "timeout": 10
          }
        ]
      }
    ]
  },
  "extraKnownMarketplaces": {
    "ponytail": {
      "source": {
        "source": "github",
        "repo": "DietrichGebert/ponytail"
      }
    }
  },
  "skipWorkflowUsageWarning": true,
  "theme": "dark",
  "enabledPlugins": {
    "ponytail@ponytail": true
  },
  "model": "claude-sonnet-4-6"
}
Projekt .claude/settings.json
{
    "autoUpdatesChannel": "latest",
    "theme": "dark",
    "permissions": {
        "allow": [
            "Read(*)",
            "Write(*)",
            "Edit(*)",
            "Grep(*)",
            "Glob(*)"
        ]
    },
    "env": {
        "AWS_REGION": "eu-central-1"
    },
    "hooks": {
        "SessionStart": [
            {
                "hooks": [
                    {
                        "type": "command",
                        "command": "~/.claude/startup-check.sh",
                        "timeout": 10,
                        "statusMessage": "Pr\u00fcfe Entwicklungsumgebung..."
                    }
                ]
            }
        ]
    }
}
~/.claude/hooks/guard-planning-gate.sh
#!/bin/bash
# preToolCall-Hook: blockiert Edit/Write in Produktiv-Projekten ohne Freigabe
# Aktiv wenn .claude/production im Projekt existiert

TOOL="$CLAUDE_TOOL_NAME"
[ "$TOOL" != "Edit" ] && [ "$TOOL" != "Write" ] && exit 0

# Projekt-Root finden
PROJECT="$PWD"
while [ ! -f "$PROJECT/.claude/production" ] && [ "$PROJECT" != "/" ]; do
  PROJECT=$(dirname "$PROJECT")
done
[ ! -f "$PROJECT/.claude/production" ] && exit 0

# Gate-Verzeichnis ist immer erlaubt
echo "$CLAUDE_TOOL_INPUT" | grep -q 'plan-gate' && exit 0

# Freigabe-Token prüfen
APPROVED="$PROJECT/.claude/plan-gate/approved"
if [ -f "$APPROVED" ]; then
  NOW=$(date +%s)
  OK=$(( $(cat "$APPROVED") + 1800 ))  # 30 Min gültig
  [ "$NOW" -lt "$OK" ] && exit 0
  rm -f "$APPROVED"
fi

cat <<'MSG'
╔════════════════════════════════════════════╗
║  PRODUKTIV-SYSTEM: Code-Änderung gesperrt  ║
╠════════════════════════════════════════════╣
║  .claude/production erkannt.               ║
║  Änderungen nur mit genehmigtem Plan.      ║
║                                            ║
║  1. Plan präsentieren (WAS/WO/WARUM/       ║
║     RISIKO/SEITENEFFEKTE)                  ║
║  2. Genehmigung abwarten                   ║
║  3. Nach "Ja" setzt Claude das Token       ║
║                                            ║
║  Emergency: echo $(date +%s) >             ║
║    .claude/plan-gate/approved              ║
╚════════════════════════════════════════════╝
MSG
exit 1
~/.claude/hooks/token-cost.py
#!/usr/bin/env python3
"""
Zeigt Token-Verbrauch und geschätzte Kosten der aktuellen Session nach jeder Antwort.
AWS Bedrock Preise für eu.anthropic.claude-sonnet-4-6 (eu-central-1, per 1M Tokens):
  - Input:              $3.00
  - Cache write:        $3.75
  - Cache read:         $0.30
  - Output:            $15.00
"""

import json
import os
import sys
import glob

def find_current_transcript(session_id):
    base = os.path.expanduser("~/.claude/projects")
    pattern = os.path.join(base, "**", f"{session_id}.jsonl")
    files = glob.glob(pattern, recursive=True)
    return files[0] if files else None

def aggregate_tokens(transcript_path):
    totals = {
        "input": 0,
        "cache_write": 0,
        "cache_read": 0,
        "output": 0,
    }
    try:
        with open(transcript_path, "r", encoding="utf-8") as f:
            for line in f:
                line = line.strip()
                if not line:
                    continue
                try:
                    entry = json.loads(line)
                except json.JSONDecodeError:
                    continue
                usage = (entry.get("message") or {}).get("usage")
                if not usage:
                    continue
                totals["input"] += usage.get("input_tokens", 0)
                totals["cache_write"] += usage.get("cache_creation_input_tokens", 0)
                totals["cache_read"] += usage.get("cache_read_input_tokens", 0)
                totals["output"] += usage.get("output_tokens", 0)
    except FileNotFoundError:
        pass
    return totals

def calculate_cost(totals):
    # Bedrock Frankfurt Preise (USD per 1M tokens)
    INPUT_PRICE  = 3.00
    CACHE_WRITE  = 3.75
    CACHE_READ   = 0.30
    OUTPUT_PRICE = 15.00

    cost = (
        totals["input"]      / 1_000_000 * INPUT_PRICE +
        totals["cache_write"]/ 1_000_000 * CACHE_WRITE +
        totals["cache_read"] / 1_000_000 * CACHE_READ  +
        totals["output"]     / 1_000_000 * OUTPUT_PRICE
    )
    return cost

def format_k(n):
    if n >= 1000:
        return f"{n/1000:.1f}k"
    return str(n)

def main():
    try:
        data = json.load(sys.stdin)
    except Exception:
        data = {}

    session_id = data.get("session_id", "")
    transcript = find_current_transcript(session_id) if session_id else None

    if not transcript:
        return

    totals = aggregate_tokens(transcript)
    total_tokens = sum(totals.values())
    if total_tokens == 0:
        return

    cost = calculate_cost(totals)

    lines = [
        f"┄ Tokens: {format_k(totals['input'])} in · {format_k(totals['output'])} out · {format_k(totals['cache_read'])} cache-hit · {format_k(totals['cache_write'])} cache-write",
        f"┄ Session-Kosten (est.): ${cost:.4f} USD"
    ]

    print(json.dumps({
        "systemMessage": "\n".join(lines)
    }))

if __name__ == "__main__":
    main()
~/.claude/CLAUDE.md (global — Caveman + DSGVO)
## Kommunikationsstil (Caveman, strikt)
- Null Präambel, null Höflichkeit, null Meta-Kommentar
- Frage nie wiederholen, Aufgabe nie zusammenfassen
- Antwort startet mit Ergebnis: Code/Befehl in Zeile 1
- Telegrammstil, max 3 Sätze Prosa
- Keine Selbst-Erklärung außer gefragt
- Ausnahmen: Sicherheit, DSGVO, irreversible Aktionen

## Arbeitsregeln
- DB: erst SELECT auf Schema, dann Code
- Git: nach jeder Änderung committen

## Context-Optimierung
- Read-Optimierung: Files > 100 Zeilen mit offset+limit
- Session-Hygiene: neue Session bei Messages > 50%

## DSGVO-REGEL (Nicht verhandelbar)
GitHub NIEMALS für: Kundennamen, E-Mails, Personenbezug.
Nur technische Inhalte. US-Server (Microsoft).

## PLANUNGS-GATE
Vor Edit/Write in Produktiv-Projekten: Plan präsentieren,
Genehmigung abwarten, Token setzen.
.claude/CLAUDE.md (Projekt — Clowdex + Cloud-Regeln)
# Globale Richtlinien für Claude Code
@context/c-stone.md

## Clowdex Integration
- /start bei Session-Beginn (automatisch)
- Memory: .claude/.claude/memory.md
- Knowledge Base: .claude/.claude/knowledge-base.md

## Startroutine
- Python, Docker, Git, Playwright verf.
- Apps laufen in der Cloud (Hetzner)
- NIEMALS lokal starten

## Cloud-Services
- Claude: AWS Bedrock Frankfurt (eu-central-1)
- n8n: n8n.c-stone-dev.com (Hetzner)
- Nextcloud: nx97828.your-storageshare.de

## Autonomie & Proaktivität
- Selbstständig arbeiten, kein manuelles Eingreifen
- Minimaler Aufwand für Nutzer
- Bestmögliche Lösung, nicht angenehmste

## n8n Patterns
- Expressions: {{ $('Node').item.json.path }}
- Flask Microservice Pattern für deprecated APIs
- SeaTable: Flask + SDK statt native n8n Node
Zuletzt aktualisiert: 01. Juli 2026
RAG Pipeline
Lokales, DSGVO-konformes Wissenssystem für Claude Code — Stand Juli 2026
Vollständig lokal · DSGVO-konform · 12.525 Chunks aus 1.835+ Dateien · MacBook Air M4 + nomic-embed-text + TurboVec + MarkItDown
📄 Dokument einpflegen

Datei in ~/cstone-rag/inbox/ legen — automatische Konvertierung (PDF, DOCX, PPTX, XLSX, TXT, MD, HTML, CSV).

🔍 Wissen abfragen

rag_query MCP Tool für semantische Suche, skill_search für Clowdex-Skill-Suche.

⚙️ Läuft automatisch

LaunchAgent startet nach jedem Login. Kein manueller Start nötig.

System-Status
LaunchAgent — überwacht inbox/
MCP Server (cstone-rag) — global verfügbar
TurboVec Index — ~/cstone-rag/index.tvim
Ollama — nomic-embed-text + qwen3-coder:30b
Unterstützte Formate
PDF DOCX PPTX XLSX TXT MD HTML CSV
Pipeline: Datei → Antwort
1) inbox/ — neue Datei landet hier
2) MarkItDown — konvertiert in Markdown
3) Chunking — 512 Tokens, 128 Overlap
4) Embedding — nomic-embed-text via Ollama
5) TurboVec Index — FAISS-ähnlich, persistiert auf Disk
6) rag_query MCP — Claude Code fragt den Index
Zuletzt aktualisiert: 01. Juli 2026
Claude Code Plugins
Installierte Marketplace-Plugins — erweitern Claude Code mit vorgefertigten Verhaltensregeln
Plugins werden über /plugin marketplace add aus GitHub-Repositories installiert. Sie injizieren Regeln und Skills automatisch in jede Session.
🪄 Ponytail Plugin · Code-Qualität Aktiv

„He says nothing. He writes one line. It works.“
Erzwingt minimalen, pragmatischen Code — kein Over-Engineering. Standard-Modus: ultra.

Quelle
DietrichGebert/ponytail
Install
/plugin install ponytail@ponytail
Standard-Modus
ultra
Version
4.8.1

Die 7-Stufen-Leiter (vor jedem Code)

  1. Muss das überhaupt existieren? → nein: weglassen (YAGNI)
  2. Gibt es das schon in der Codebase? → wiederverwenden
  3. Kann die Stdlib es? → nutzen
  4. Kann die Plattform (Browser/OS) es? → nutzen
  5. Gibt es eine installierte Dependency? → nutzen
  6. Geht es in einer Zeile? → eine Zeile
  7. Sonst: das absolute Minimum

Messbarer Effekt (Benchmark)

MetrikEinsparung
Code-Zeilen (LOC)−54%
Token-Verbrauch−22%
Kosten−20%
Zeit−27%
🎛️ Commands
/ponytail lite
Sanfte Hinweise
/ponytail full
Standard
/ponytail ultra
Maximal kompakt
/ponytail off
Deaktivieren
/ponytail-review
Diff prüfen
/ponytail-audit
Repo prüfen
/ponytail-debt
Vereinfachungs-Tracker
/ponytail-gain
Impact-Scoreboard
🤖 Subagents (Clowdex, read-only) — .claude/.claude/agents/
AgentZweck
compassScope-Wächter — erkennt Drift vom ursprünglichen Ziel
decoderFehler-Interpreter — Stacktraces → Copy-Paste-Fix
historianCode-History — „warum so geschrieben?" via git blame/log
ledgerTech-Debt-Tracker — gerankte Inventur (Aufwand/Impact)
mirrorDenk-Partner — sokratisch, deckt Annahmen auf
pathfinderRoot-Cause / First-Principles-Unblocking
scoutCodebase-Guide — mappt Architektur/Patterns
scribeDoku-Autor — PR/Commit/Changelog aus Diffs
sentinelSelbstlernendes Quality-Gate (/audit + Stop-Kette) — schreibt knowledge-base.md
Eigene Gedächtnis-Ordner: agent-memory/{ledger,scout,sentinel}. Zusätzlich Built-in-Harness-Agents (Explore, Plan, general-purpose …).
🎯 Skills

Global — Design-Suite

banner-design · brand · design (Sammelskill) · design-system · slides · ui-styling · ui-ux-pro-max (67 Styles/161 Paletten/21 Stacks) · caveman-Familie (Symlinks)

Projekt — 31 Branchen-Skills

agriculture, ai-automation, construction, consulting, content, cybersecurity, data, ecommerce, education, finance, healthcare, hr, legal, marketing, real-estate, sales, seo, startup … (INDEX.md)
Slash-Commands: 28 global (Clowdex-Rituale + cstone-audit, cstone-dev-loop), 22 gespiegelt im Projekt (command-index.md).
Zuletzt aktualisiert: 05. August 2026
🔄 C-Stone Loop
Autonomer Claude Code Iterations-Loop — Task → Code → Test → Wiederholen
Der C-Stone Loop (v2) automatisiert den Entwicklungszyklus: Claude bekommt einen Task, schreibt Code, Tests laufen, bei Fehlern iteriert er — bis Tests grün sind oder Limits erreicht. Gestartet mit /cstone-dev-loop "Task" [test-command].
Ablauf (ein Durchlauf)
1. Claude erhält Task-Prompt
2. Claude schreibt/editiert Code (max Turns limitiert)
3. Tests laufen im Wrapper (schont Claude-Turns)
Grün → Stop, fertig
Rot → nächste Iteration mit Fehlerkontext
4. Commit-Hash prüfen: Fortschritt? Sonst Abbruch
5. Budget-Prüfung: nächstes Iter oder Stop
Konfiguration
MAX_ITER = 8 (max Durchläufe)
MAX_TURNS = 6 (Turns pro Iteration)
MAX_BUDGET = $1.50/Iteration
TOTAL_BUDGET = $10.00
CLAUDE_TIMEOUT = 300s
TEST_TIMEOUT = 120s
Start / Nutzung
/cstone-dev-loop — installiert & startet Loop
kopiert dev-loop.sh + pre-push Hook + settings.json
cstone-dev-loop (Skill) — Command-Template
Prüft Branch (nicht main/prod)
claude -c — Kontext-Transfer ab Iteration 2
letzter Test-Fehler wird als Kontext übergeben
Kontext-Transfer-Mechanismus

Ab dem 2. Durchlauf nutzt der Loop claude -c (continue previous session). Der Prompt enthält den letzten Test-Output (tail -60). Claude analysiert die Fehler gezielt, statt den Task von Grund auf neu zu bearbeiten. Spart Turns und Budget.

Abbruchgründe
  • Tests grün — erfolgreich, Review nötig
  • MAX_ITER — ohne grüne Tests, manueller Eingriff
  • Kein Fortschritt — kein Commit, kein Diff
  • Budget erschöpft — $10.00 Gesamtlimit
  • Claude-Fehler — Exit-Code ≠ 0
Nach Loop-Ende
1. Logs prüfen: ls .dev-loop-logs/
2. Review: claude --permission-mode plan
3. PR erstellen, reviewen, mergen
4. Branch löschen, neue Session starten
Sicherheit
  • pre-push Hook blockiert Push auf main/prod
  • Deny-Regeln in Claude Code gegen main/prod
  • Loop läuft nicht auf main/prod (Preflight)
  • ✓ Nur erlaubte Tools: git-Befehle (kein SSH/DB-Zugriff)
  • ✓ Logs in .dev-loop-logs/ (in .gitignore)
Zuletzt aktualisiert: 01. Juli 2026
🔧 MCP Tools & CLI
Model Context Protocol Server und Kommandozeilen-Tools des Setups
MCP Server (aktiv)
ServerAufgabeTools
playwright gesperrtBrowser-Automatisierungnavigate, click, type, screenshot, evaluate
Gesperrt per CLAUDE.md — nur CLI: python3 -m playwright
cstone-ragWissensabfragerag_query, rag_add, rag_list, skill_search
sequential-thinkingStrukturierte Problemanalysesequentialthinking
searxng DEV-LaneWeb-Suchesearxng_web_search, searxng_search_suggestions, web_url_read
mcp-searxng@1.11.1 · SSH-Tunnel :8080 → localhost · für DEV-Lane (Qwen3/EVO-X2)
claude-in-chromeBrowser-Automatisierung (Chrome)navigate, click, read_page, tabs, javascript_tool
Interagiert mit bestehendem Chrome · Site-Permissions erforderlich
codegraph opt-inCode-Graph-Index (Repo-lokal)graph traversal, code navigation
Local scope in ~/.claude.json — kein .mcp.json im Repo, kein globales Install
CLI Tools
ToolVersionEinsatz
gh2.95.0GitHub CLI (lokal noch installiert · Git-Hosting auf Forgejo migriert)
gitleakslatestSecret-Scanning vor Commits
pip-auditlatestDependency-Sicherheitsprüfung
pre-commitlatestGit-Hook-Framework
codegraph1.4.1Code-Graph MCP Server — npm i -g @colbymchenry/codegraph
Zuletzt aktualisiert: 23. Juli 2026
Projektablaufplan
7-Phasen-Protokoll für strukturierte Projektarbeit — Scope → Architektur → Entwicklung → QA → Security → Deployment → Doku
1 📋 Scope & Anforderung

Eintrittskriterium: Kunde oder eigener Bedarf identifiziert. Werkzeuge: RAG-Abfrage (rag_query) ähnlicher Projekte, Task Board, ggf. Gamma/Canva für Präsentation. Austrittskriterium: Ein-Satz-Scope und Zielplattform definiert.

2 🏗️ Architektur

Eintrittskriterium: Scope klar. Werkzeuge: Claude Code (Plan-Modus), ggf. Klassendiagramm im Prompt. Entscheidungen: Tech-Stack, DSGVO-Prüfung (Bedrock/Europe), DB-Schema, Deployment-Ziel (lokal/Hetzner/Serverlos). Austrittskriterium: Stack-Entscheidung gefallen, RAG auf ähnliche Projekte durchgeführt.

3 💻 Entwicklung

Eintrittskriterium: Architektur steht. Werkzeuge: Claude Code, dev-loop bei Bedarf. Methode: Plan-Gate für Produktion, Ponytail-Code-Stil, Git-Commit nach jeder Änderung. Austrittskriterium: Implementierung vollständig.

4 🔍 Qualitätssicherung

Eintrittskriterium: Implementierung steht. Werkzeuge: Playwright für Browser-Tests, manuelle Tests, verify-Skill. Austrittskriterium: Kern-Flow getestet, keine Regressions-Bugs.

5 🛡️ Security

Eintrittskriterium: QA bestanden. Prüfungen: Secrets aus .env/gitignore? Rate-Limiting gesetzt? Input-Validierung serverseitig? CORS konfiguriert? Austrittskriterium: Security-Checkliste abgehakt.

6 🚀 Deployment

Eintrittskriterium: Sicherheit geprüft. Werkzeuge: rsync/scp auf Hetzner, Docker Compose, n8n, Caddy/Traefik. Austrittskriterium: Live-URL erreichbar, System neustartfest.

7 📝 Dokumentation & Memory

Eintrittskriterium: Deployment abgeschlossen. Werkzeuge: /end-day, memory.md aktualisieren, knowledge-base erweitern. Austrittskriterium: Projekt in memory.md eingetragen, Credentials in verschlüsseltem HTML.

Zuletzt aktualisiert: 01. Juli 2026
🛡️ Sicherheits-Architektur
Wie das Setup abgesichert ist — technische Durchsetzung statt Wohlverhalten · Stand 10. August 2026
Die Absicherung ruht auf zwei Säulen: technische Durchsetzung (PreToolUse-Hooks, die Aktionen vor Ausführung blocken — fail-closed) und organisatorische Regeln (verbindliche Vorgaben in vier CLAUDE.md-Ebenen + Knowledge Base). Ein blockierter Hook lässt sich nicht durch einen geschickten Prompt umgehen.
6 Durchsetzungsschichten
  1. Prozess-EnvAWS_REGION=eu-central-1 hart gesetzt, KI bleibt in der EU
  2. PreToolUse-Hooks — GDPR-Guard, Secrets-Guard, Destructive-Guard, Planning-Gate
  3. .claudeignore — Sperrzone doppelt abgesichert
  4. Betriebsmodus-SchalterCLAUDE_CODE_USE_BEDROCK=1 trennt DEV/PROD
  5. Git-Ziel Forgejo/EU — kein US-Drittlandtransfer
  6. Secret Vault — sops+age, Secrets nie in der Session
Aktive Guards (global)
guard-planning-gate.sh — Write/Edit in Prod-Projekten nur mit Freigabe-Token
secrets-guard.sh — blockt Vault-Entschlüsselung & Env-Dumps
destructive-guard.sh — blockt rm -rf, force-push, DROP/TRUNCATE …
GDPR-Guard — blockt GDPR-benannte Pfade im DEV-Modus (fail-closed)
pdf-local-to-text.sh — PDF→Text-Sidecar nur in lokaler LLM-Lane
token-cost.py — Kosten-/Modus-Log nach jeder Antwort (Stop)
⚠️ Offener Handlungsbedarf (Audit 05.08.2026)
BefundOrtPriorität
Klartext-GitHub-Token in Config (Vault- & Forgejo-only-Regel verletzt)~/.claude/settings.local.json (gh-Allow-Regeln)Kritisch — rotieren + entfernen
Keine restart: unless-stopped-Policyforgejo-git, dasprogramm-lead-managerHoch — Reboot-Risiko
Bug: new-secret.sh shared zeigt auf nicht existente global.enc.env~/cstone-secrets/bin/Mittel
Kein origin-Remote (nur lokal, ungesichert)Invoice Check, c-stone.infoMittel
Verwaiste Projekt-Hooks (nicht registriert)guard-bash, completeness-gate, backup-before-write …Niedrig — aktivieren o. entfernen
488 allow-Regeln, 0 deny/asksettings.local.jsonNiedrig — Deny-Regeln erwägen
DB-Port-Exposure sauber (kein Host-Mapping für 5432/6379). Pre-Commit-Hook (gitleaks + .env-Block + Port-Kollisions-Check) aktiv im Haupt-Repo.
Zuletzt aktualisiert: 05. August 2026
🌿 Forgejo Git (self-hosted, EU)
Eigener Git-Server auf Hetzner — GitHub vollständig abgelöst · Stand 10. August 2026
GitHub wird nicht mehr genutzt. Alle Commits & Pushes gehen an self-hosted Forgejo auf Hetzner (Deutschland/EU). Grund: GitHub läuft auf US-Servern (Microsoft) → Drittlandtransfer nach Art. 44 ff. GDPR. Forgejo vermeidet das vollständig.
Web https://git.c-stone-dev.com
Haupt-Remote origin → https://git.c-stone-dev.com/markus/c-stone-git.git
SSH Port 2222

Container-Setup
Images
forgejo:10 + postgres:16
Netz
forgejo-net (intern)
Host-Port
nur 2222:22 (SSH)
DB-Port
kein Mapping (nur Docker-intern)
TLS
Let's Encrypt via Caddy
Härtung
Registration=off, Install-Lock, Mailer=off
Betrieb & Backup
  • 17 Repos migriert (16 von GitHub + AZAV-Coaching)
  • ✓ GitHub-Org cstone-mkr leer/entkoppelt
  • ✓ Backup täglich 03:00 (forgejo dump, 14-Tage-Rotation)
  • ✓ Kein github.com-Remote in Haupt-Repo oder Projekten
  • restart:-Policy fehlt — nachzutragen
  • ⚠ Volumes generisch benannt (kein name:-Präfix)
GDPR-Prüfpflicht vor Git-Aktionen

Kein Personenbezug in Commit-Messages, Issues oder PR-Titeln: keine Kunden-/Firmennamen von Endkunden, keine E-Mail/Telefon/Adressen realer Personen, keine Inhalte aus Kundengesprächen, keine SeaTable-CRM-Daten. Bei Treffer greift der GDPR-CHECK-Block mit anonymisierten Alternativen. (Forgejo liegt zwar in der EU — Klartext-Secrets gehören trotzdem nie ins Git, dafür ist der Vault da.)

Zuletzt aktualisiert: 05. August 2026
🔑 Secret Vault (sops + age)
Verschlüsselter Tresor — Secrets kommen nie in Claudes Session (Modus A) · Stand 10. August 2026
Alle Secrets liegen in ~/cstone-secrets/ als sops+age-verschlüsselte .enc.env-Dateien. Werte kommen zur Laufzeit nur in den einzelnen Kindprozess, nie in Claudes Umgebung, stdout oder Chat.
Aufbau
Pro Projekt: <projekt>/secrets.enc.env
Shared: shared/secrets.enc.env (AWS, LiteLLM, Nextcloud, OpenAI, NVIDIA)
Register (nur Namen): ~/cstone-secrets/README.md
Regeln: .sops.yaml (matcht *.enc/.dec.env)
Private Key: ~/.config/sops/age/keys.txt (chmod 600)
Backup Key: Nextcloud Private/credentials/
Nutzung (Modus A)
with-secrets.sh <projekt> <cmd>
lädt shared+Projekt nur in den Kindprozess
new-secret.sh <projekt> <VAR>
erzeugt Zufallswert (openssl) direkt im Tresor
Code referenziert nur process.env.NAME / os.environ[...]
Gesperrt (Hook): sops -d, exec-env, env-Dump, echo $SECRET*, cat keys.txt
⚠ Bekannter Bug

new-secret.sh shared … schreibt nach shared/global.enc.env — diese Datei existiert nicht (real: shared/secrets.enc.env). Der Datei-Check schlägt fehl → shared-Secrets-Erzeugung ist funktionsunfähig. Skript/Doku angleichen oder Datei umbenennen.

Zuletzt aktualisiert: 05. August 2026
⛓️ Hooks & Guards
Zwei parallele Hook-Systeme: global (Security/GDPR/Kosten) + Projekt-Clowdex (Backup/Logging/Quality) · Stand 10. August 2026
Global — ~/.claude/hooks/ (in settings.json registriert, aktiv)
HookTriggerZweck
guard-planning-gate.shPreToolUse Write|EditBlockt Änderungen in Prod-Projekten (.claude/production) ohne gültiges Freigabe-Token (30 Min)
secrets-guard.shPreToolUse BashBlockt Vault-Entschlüsselung & Env-Dumps; erlaubt with-/new-secret
destructive-guard.shPreToolUse BashBlockt rm -rf /, force-push, reset --hard, DROP/TRUNCATE/DELETE WHERE 1=, mkfs; loggt
GDPR-Guard upd 05.08.PreToolUse Read|Edit|Write|Glob|Grep|Notebook|BashBlockt GDPR-benannte Tokens in Tool-Inputs im DEV-Modus (case-insensitive, fail-closed). Durchlass bei PROD-Bedrock (CLAUDE_CODE_USE_BEDROCK=1) oder lokaler NucBox-Lane (:4444 / qwen3-coder-next-local). Heute erweitert: greift jetzt auch bei zusammengesetzten Wort-Tokens (z.B. GDPR-Konformität), nicht mehr nur bei Pfad-Tokens mit / oder Dateiendung; freistehendes Wort bleibt frei. Vorversion: guard.prev.bak
pdf-local-to-text.shPreToolUse ReadErzeugt PDF→Text-Sidecar in lokaler LLM-Lane (Bedrock liest PDF nativ)
token-cost.pyStopZeigt Token-Verbrauch + Bedrock-Kosten, loggt PROD/DEV-Modus
Projekt-Clowdex — .claude/.claude/hooks/
HookTriggerZweck
guard-bash.shPreToolUse BashCommand-Safety (Hard/Soft/Log), strukturiertes JSON
backup-before-write.shPreToolUse Write/Edit (async)Timestamped Backups, 7-Tage-Retention
completeness-gate.shPreToolUse Write/EditValidiert Content-Vollständigkeit
log-changes.sh / log-failures.shPostToolUse / -FailureAudit-Trail + Fehler-Kategorisierung
pre-compact-handoff.shPreCompact autoBlockt Auto-Kompaktierung, setzt STATUS.md-Marker
session-reset.sh / post-compact-resume.shSessionStartGate-Cleanup / Kontext-Wiederherstellung nach Compact
log-stop-verdict.sh / status-snapshot-gate.shStopQuality-Verdict (JSONL) + Snapshot-Prüfung; Quality-Gate ab ≥2 Blocks
⚠ Hinweis: Ein Teil dieser Projekt-Hooks ist aktuell nicht in einer settings.json registriert (verwaist) — entweder aktivieren oder als Legacy entfernen.
Zuletzt aktualisiert: 05. August 2026
⚖️ GDPR-Konformität
Wie Datenschutz technisch und organisatorisch sichergestellt wird (GDPR = europ. Datenschutz-Grundverordnung) · Stand 10. August 2026
Kernaussage: Die GDPR-Konformität ist nicht nur dokumentiert, sondern im Tool-Layer technisch erzwungen — Hooks blocken verbotene Zugriffe fail-closed, bevor sie ausgeführt werden. Komplette Infrastruktur auf EU-Servern (AWS Frankfurt + Hetzner Deutschland + Nextcloud EU).
1 · KI-Region-Enforcement (DEV/PROD-Trennung)

Regel: Produktive KI-Calls nur über AWS Bedrock EU — erlaubt eu-central-1 (Frankfurt), eu-north-1 (Stockholm); verboten us-east-1/us-west-2 & jede Nicht-EU-Region; keine direkten Calls an api.anthropic.com. Durchsetzung: AWS_REGION=eu-central-1 hart in settings.json — prozessweit vererbt, zur Laufzeit nicht umbiegbar. DEV = Claude.ai/MAX-OAuth, kein Bedrock, ausschließlich Fake-Daten; PROD = CLAUDE_CODE_USE_BEDROCK=1, echte Daten erlaubt. Dieser Schalter ist der einzige, der PROD (und den Zugriff auf geschützte Bereiche) freigibt.

2 · GDPR-Namensregel-Hook (fail-closed)

Regel: Im DEV-Modus dürfen alle Ordner/Dateien mit „GDPR"/„DSGVO" im Namen (case-insensitive) weder geöffnet, gelesen, editiert noch per Bash angefasst werden. Durchlass nur bei: PROD-Bedrock (CLAUDE_CODE_USE_BEDROCK=1) oder lokaler NucBox-Lane (ANTHROPIC_BASE_URL :4444 bzw. qwen3-coder-next-local — on-prem EU, gleichgestellt mit Bedrock). Durchsetzung: PreToolUse-Guard über 7 Tool-Typen (Read/Edit/Write/Glob/Grep/Notebook/Bash), prüft die Tool-Inputs auf Token, bricht bei Treffer im DEV-Modus mit Exit-Code ab. Anpassung 05.08.2026: Match von reinen Pfad-Tokens (mit / oder Dateiendung) auf alle zusammengesetzten Wort-Tokens erweitert (z.B. GDPR-Konformität wird jetzt geblockt); freistehendes Einzelwort mit Leerzeichen bleibt erlaubt. Vorversion gesichert als guard.prev.bak. Live verifiziert: Der Guard blockte während dieser Analyse mehrfach eigene Schreibzugriffe — Beweis, dass er greift.

3 · Sperrzone (.claudeignore + Namensregel)

Der Sperrzonen-Ordner wird im DEV-Modus nie gelesen/beschrieben — doppelt geschützt: (a) .claudeignore schließt den Pfad aus, (b) der Namensregel-Hook fängt jeden Tool-Zugriff zusätzlich ab. Zugriff nur im PROD-Bedrock-Modus (von Markus explizit freigegeben).

4 · Git nur Forgejo/EU (kein GitHub)

GitHub = US-Server → Drittlandtransfer nach Art. 44 ff. GDPR. Alles auf Forgejo (Hetzner/EU). Aktive Prüfpflicht vor jeder Git-Aktion: kein Personenbezug in Commits/Issues/PRs; bei Treffer GDPR-CHECK-Block mit anonymisierten Alternativen. Details siehe Forgejo-Sektion.

5 · Secret-Handling

Keine Klartext-Secrets in CLAUDE.md, Prompts oder Kontext. Vault sops+age, Modus A (Secrets nie in Session). Keine PII/Passwörter/Secrets in Logs. Durchsetzung: secrets-guard.sh. Details siehe Secret-Vault-Sektion.

6 · Infrastruktur-Standort (alles EU)

KI: AWS Bedrock Frankfurt. Compute/Automation: Hetzner Deutschland (178.105.81.60). Speicher: Nextcloud EU. Git: Forgejo (Hetzner). Lokale LLM-Alternative: NucBox EVO-X2 / llama.cpp on-prem (kein Netztransfer). Klientendaten ausschließlich EU-Server.

7 · Datenminimierung, Fake-Daten, TLS, Verschlüsselung at rest

DEV arbeitet ausschließlich mit Fake-Daten. Personenbezogene Daten verschlüsselt at rest; TLS/HTTPS überall; Passwörter nur bcrypt/argon2; Broken-Access-Control-Prüfung bei jedem Datenzugriff; CORS restriktiv (nie * mit Credentials); Security-Header (CSP, X-Frame-Options, X-Content-Type-Options); keine Stack-Traces an den Client; Container ohne root, nur nötige Ports; DB-Ports (5432/6379/…) nie auf Host exponiert (BSI 2026-07-01).

Zuletzt aktualisiert: 05. August 2026
🔐 Zugangsdaten & API Keys
AES-256-GCM verschlüsselt · nur nach Passwort-Eingabe sichtbar · niemals in Git
🔒
Zugangsdaten gesperrt
Die Credentials sind lokal mit AES-256-GCM verschlüsselt.
Schlüssel wird aus deinem Passwort abgeleitet (PBKDF2, 310.000 Runden).
🛡️ AES-256-GCM · PBKDF2-SHA256 · 310.000 Iterationen
Die Entschlüsselung findet vollständig lokal im Browser statt. Kein Server-Kontakt.