# Global Claude Code Instructions ## 🚹 PFLICHT-CHECKLISTE BEI TASK-ABSCHLUSS 🚹 **DIESE CHECKLISTE IST NICHT OPTIONAL. SIE MUSS BEI JEDER ABGESCHLOSSENEN AUFGABE DURCHGEFÜHRT WERDEN.** **BEVOR du dem User sagst, dass du fertig bist, gehe diese Liste durch:** ### Bei JEDER Dokumentationsarbeit (README, Config-Docs, etc.): - [ ] **Verifikation durchgefĂŒhrt?** - Vergleichstabelle: Quelle ↔ Dokumentation erstellt - ALLE Abschnitte geprĂŒft (nicht nur die offensichtlichen) - Finale Checkliste mit Zeilennummern erstellt - BestĂ€tigung: "X/X Abschnitte vollstĂ€ndig dokumentiert" - [ ] **Infrastructure-Repo aktualisiert?** - Wenn Kunde erkannt (`~/Nextcloud/[kunde]/`): - `infrastructure/hosts/[host].md` aktualisiert? - `infrastructure/dependencies.md` aktualisiert? - Änderungen committet und gepusht? ### Bei JEDEM Task-Abschluss: - [ ] **Alle Änderungen committet und gepusht?** - Aktuelles Repo - Infrastructure-Repo (falls relevant) - [ ] **Settings-Sync geprĂŒft?** ```bash cd ~/dotfiles/claude_settings && git fetch origin && git status ``` ### ⚠ WICHTIG **Du darfst NICHT:** - Sagen "Erledigt" ohne diese Checkliste durchzugehen - Den User fragen ob er die Checkliste will - sie ist PFLICHT - Schritte ĂŒberspringen weil sie "offensichtlich nicht nötig" sind - Warten bis der User dich an fehlende Schritte erinnert **Der User verlĂ€sst sich darauf, dass du diese Anweisungen IMMER befolgst.** --- ## ⚠ MANDATORY: Settings-Synchronisierung **Repository:** `git@gitea.egonetix.de:root/claude_settings.git` (Port 222) **Lokaler Pfad:** `~/dotfiles/claude_settings` ### Bei jedem Session-Start prĂŒfen ```bash cd ~/dotfiles/claude_settings && git fetch origin && git status ``` Falls Änderungen vorhanden: ```bash git pull origin main ``` ### Nach Änderungen an Settings pushen Wenn du Änderungen an folgenden Dateien vornimmst, MUSST du diese committen und pushen: - `settings.json` - Globale Einstellungen - `CLAUDE.md` - Diese Instruktionen - `agents/*.md` - Benutzerdefinierte Agenten - `rules/*.md` - Modulare Regeln - `statusline-command.sh` - Statuszeilen-Script ```bash cd ~/dotfiles/claude_settings git add -A git commit -m "Beschreibung der Änderung" git push origin main ``` --- ## Copilot Instructions Skill Maintain living documentation for every coding project via `copilot-instructions.md` in the project root. --- ## Mandatory Workflow ### Step 1: Determine Project Type Check for existing project indicators: - Git repository (`.git/` directory) - `copilot-instructions.md` file - `PROJECT_OVERVIEW.md` file **If ANY exist** → Ongoing Project: Follow full documentation workflow. **If NONE exist** → Ask the user: > "This looks like a new workspace. Should I treat this as a one-time task, or set it up as an ongoing project with documentation and git?" If user wants an ongoing project: 1. Initialize git repo if missing (`git init`) 2. Create `copilot-instructions.md` with initial structure 3. Optionally create `PROJECT_OVERVIEW.md` for complex systems ### Step 2: For Ongoing Projects 1. Read existing `copilot-instructions.md` and `PROJECT_OVERVIEW.md` to understand the system 2. Scan the codebase/system to gather context and minimize follow-up questions 3. Update documentation if the current work affects architecture, patterns, entities, or conventions 4. **Commit all changes to git immediately after completion** --- ## Document Structure ### copilot-instructions.md (Development Guidelines) Procedural knowledge for working on the project — patterns, conventions, pitfalls, workflows. ```markdown # Project Name - Copilot Instructions ## ⚠ MANDATORY RULES - NON-NEGOTIABLE [Project-specific rules, commit conventions, critical warnings] ## Architecture Overview [High-level system description, key integrations, tech stack] ## File Structure [Directory tree with annotations] ## [Domain-Specific Sections] [Devices, APIs, services, databases - whatever is relevant] - Working code examples with explanations - Configuration snippets that actually work - Debug commands ## Patterns & Conventions [Reusable patterns, naming conventions, code examples] ## Development Workflow [How to test, deploy, access systems] ## Pitfalls to Avoid [Gotchas, inverted logic, non-obvious behaviors, troubleshooting] ``` ### PROJECT_OVERVIEW.md (System Reference) Factual inventory of what exists — devices, integrations, entities, IPs. Use for complex systems with many components. ```markdown # Project Overview ## System Information [Version, host, IP, access details] ## Network Architecture [Diagram or list of hosts/devices] ## Installed Components [Add-ons, plugins, integrations with purpose] ## Entity/Device Inventory [Tables of devices, entity IDs, purposes] ## Quick Reference [Common commands, URLs, access methods] ``` **When to create PROJECT_OVERVIEW.md:** - Systems with many devices/entities (IoT, home automation) - Infrastructure projects with multiple hosts - Projects where entity/device inventory changes frequently --- ## Content Guidelines **Include:** - Working code/config snippets (tested and verified) - Actual entity names, IPs, paths (not placeholders) - Debug commands and troubleshooting tables - Lessons learned from debugging sessions - Non-obvious behavior ("contact sensor: on=OPEN, off=CLOSED") - Git commit references for significant changes **Exclude:** - Secrets, tokens, passwords (reference `secrets.yaml` or `.env` instead) - Obvious boilerplate explanations - Duplicate information **Language:** Match the user's language. Mixed language is acceptable when technical terms are clearer in English. --- ## Git Commit Convention After every change: ```bash cd /path/to/project git add -A git commit -m "Descriptive message in user's language" git push origin main # or appropriate branch ``` Commit messages should describe what changed, not just "updated docs". --- ## Referencing Git Commits For significant development work, reference the relevant commit(s) in the documentation: ```markdown ## Tasmota SML Integration **Implemented:** 2025-01-21 | Commits: `a3f2b1c`, `e7d4a9f` [Documentation of the feature...] ``` **When to add commit references:** - New features or integrations - Major refactors - Complex bug fixes that required multiple attempts - Configuration changes that took significant debugging **Format options:** - Single commit: `Commit: a3f2b1c` - Multiple commits: `Commits: a3f2b1c, e7d4a9f, b2c3d4e` - Commit range: `Commits: a3f2b1c..e7d4a9f` Get the short hash after committing: ```bash git log -1 --format="%h" # Most recent commit git log -3 --format="%h %s" # Last 3 with messages ``` --- ## When to Update copilot-instructions.md **Update when:** - Adding new integrations, devices, or services - Discovering non-obvious behavior or gotchas - Establishing new patterns or conventions - Fixing bugs that reveal important system behavior - Changing architecture or file structure **Don't update for:** - Minor code changes that don't affect understanding - Temporary debugging that will be removed --- ## New Project Onboarding When a user requests to set up a new ongoing project: 1. **Connect and explore** the system to understand what exists 2. **Scan broadly** — gather device lists, integrations, file structures, configurations 3. **Create documentation** based on findings: - `copilot-instructions.md` for development guidelines and patterns - `PROJECT_OVERVIEW.md` for system inventory (if complex) 4. **Initialize git** if not present 5. **Commit initial documentation** This upfront investment minimizes questions in future sessions and enables faster, more informed development. --- ## Infrastruktur-Dokumentationssystem ### Ziel und Vision Die detaillierte Infrastruktur-Dokumentation dient einem grĂ¶ĂŸeren Ziel: **Phase 1: Dokumentation (aktuell)** - VollstĂ€ndige Erfassung aller Hosts, Dienste, AbhĂ€ngigkeiten - Maschinenlesbare Struktur (Markdown mit konsistenten Tabellen) - AbhĂ€ngigkeitsgraphen in Mermaid **Phase 2: Zabbix-Integration** - AbhĂ€ngigkeiten aus `dependencies.md` → Zabbix Host Dependencies - Wiederkehrende Probleme → Zabbix Trigger + Actions - Host-Dokumentation → Zabbix Host Inventory - Impact-Analysen → Zabbix Service Monitoring **Phase 3: Self-Healing durch KI** - KI analysiert Zabbix-Alerts + Dokumentation - Automatische Diagnose basierend auf dokumentierten AbhĂ€ngigkeiten - Automatische Remediation fĂŒr bekannte Probleme - Lernschleife: Neue Probleme → Dokumentation → Zabbix → KI **Konsequenzen fĂŒr die Dokumentation:** - **VollstĂ€ndigkeit ist kritisch** - fehlende AbhĂ€ngigkeiten = blinde Flecken fĂŒr KI - **Konsistente Struktur** - ermöglicht maschinelles Parsing - **Wiederkehrende Probleme dokumentieren** - werden zu automatisierbaren Fixes - **Impact bei Ausfall** - definiert PrioritĂ€ten fĂŒr automatische Reaktionen ### Organisation pro Kunde Gitea-Struktur: ``` ├── Vinos/ ← Organisation fĂŒr Kunde "vinos" │ ├── infrastructure.git ← Landkarte fĂŒr vinos │ ├── zabbix.git ← System-Repo │ └── [weitere].git ← Dienst-/System-Repos │ └── Egonetix/ ← Organisation fĂŒr Kunde "egonetix" ├── infrastructure.git ← Landkarte fĂŒr egonetix └── [weitere].git ``` Lokale Struktur: ``` ~/Nextcloud/ ├── vinos/ ← Kunde vinos │ ├── infrastructure/ ← Landkarte (dependencies.md, hosts/) │ ├── zabbix/ ← System-Repo │ └── [weitere]/ ← Dienst-/System-Repos │ └── egonetix/ ← Kunde egonetix ├── infrastructure/ └── [weitere]/ ``` ### Repo-Typen | Repo-Typ | Gitea-Ort | Inhalt | |----------|-----------|--------| | **Infrastructure** | `[Kunde]/infrastructure.git` | Landkarte, AbhĂ€ngigkeiten, Host-Übersichten | | **System-Repo** | `[Kunde]/[system].git` | README, Konfig-Dateien, Troubleshooting | | **Dienst-Repo** | `[Kunde]/[dienst].git` | docker-compose.yml, Code, Workflows | ### Automatische Erkennung (Hook-gesteuert) Der Session-Start Hook erkennt Kunden-Verzeichnisse unter `~/Nextcloud/[kunde]/`. **Wenn du `` in der Hook-Ausgabe siehst:** 1. **Frage den User:** > "Ich habe erkannt, dass fĂŒr dieses Repo noch Setup erforderlich ist. Soll ich das automatisch durchfĂŒhren?" 2. **Bei Zustimmung - fĂŒhre alle fehlenden Schritte aus:** ```bash # Git initialisieren (falls nicht vorhanden) git init git branch -M main # Template aus infrastructure/_templates/ kopieren ``` 3. **Repo auf Gitea erstellen (API):** ```bash curl -X POST -H "Authorization: token $GITEA_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name":"repo-name","description":"..."}' \ https://gitea.egonetix.de/api/v1/orgs/[Kunde]/repos ``` 4. **Remote hinzufĂŒgen und pushen:** ```bash git remote add origin ssh://git@gitea.egonetix.de:222/[Kunde]/[repo-name].git git push -u origin main ``` ### Gitea Remote-Konfiguration **URL-Format:** ``` ssh://git@gitea.egonetix.de:222/[Kunde]/[repo-name].git ``` **Beispiele:** | Kunde | Repo | Remote URL | |-------|------|------------| | Vinos | infrastructure | `ssh://git@gitea.egonetix.de:222/Vinos/infrastructure.git` | | Vinos | zabbix | `ssh://git@gitea.egonetix.de:222/Vinos/zabbix.git` | | Egonetix | infrastructure | `ssh://git@gitea.egonetix.de:222/Egonetix/infrastructure.git` | ### Gitea Tooling **Token-Speicherort (NICHT im Git-Sync!):** ``` ~/.config/gitea/token ``` **VerfĂŒgbare Tools:** | Tool | Befehl | Anwendung | |------|--------|-----------| | tea CLI | `~/bin/tea` | VollstĂ€ndige Gitea-Interaktion | | curl + API | `curl -H "Authorization: token $(cat ~/.config/gitea/token)"` | Einfache API-Aufrufe | **tea CLI Beispiele:** ```bash # Repos auflisten ~/bin/tea repos list # Neues persönliches Repo erstellen ~/bin/tea repos create --name mein-repo --description "Beschreibung" # Neues Repo in Organisation erstellen ~/bin/tea repos create --owner Vinos --name repo-name # Issues auflisten ~/bin/tea issues list # PR erstellen ~/bin/tea pr create --title "Feature X" --description "..." ``` **curl API Beispiele:** ```bash # Persönliches Repo erstellen curl -X POST -H "Authorization: token $(cat ~/.config/gitea/token)" \ -H "Content-Type: application/json" \ -d '{"name":"repo-name","description":"...","private":false}' \ https://gitea.egonetix.de/api/v1/user/repos # Repo in Organisation erstellen curl -X POST -H "Authorization: token $(cat ~/.config/gitea/token)" \ -H "Content-Type: application/json" \ -d '{"name":"repo-name","description":"..."}' \ https://gitea.egonetix.de/api/v1/orgs/[Org]/repos ``` **Wichtig:** Der Token wird LOKAL gespeichert und NICHT nach `~/dotfiles/claude_settings` synchronisiert. ### Workflow: Neues System-/Dienst-Repo anlegen ```bash cd ~/Nextcloud/[kunde] git init [repo-name] cd [repo-name] # Template aus ../infrastructure/_templates/ kopieren # Repo auf Gitea erstellen # git remote add origin ... # git push -u origin main ``` ### Dokumentations-Verifikation (PFLICHT) **Bei jeder Dokumentationsarbeit MUSS eine zweistufige Verifikation durchgefĂŒhrt werden:** - Neue Dokumentation erstellen - Bestehende Dokumentation umstrukturieren - Inhalte aus anderen Quellen ĂŒbernehmen - Dokumentation aufteilen oder zusammenfĂŒhren #### Schritt 1: Erstvergleich Nach Abschluss der Dokumentationsarbeit, erstelle eine Vergleichstabelle: ```markdown | Abschnitt (Original) | Neue Datei | Status | |---------------------|------------|--------| | [Abschnitt 1] | [datei.md:zeilen] | ✅/❌ | | [Abschnitt 2] | [datei.md:zeilen] | ✅/❌ | ... ``` - Liste JEDEN Abschnitt der Quelldokumentation auf - PrĂŒfe ob er in der neuen Struktur vorhanden ist - Markiere fehlende Abschnitte mit ❌ #### Schritt 2: Fehlende Inhalte ergĂ€nzen - ErgĂ€nze alle mit ❌ markierten Abschnitte - Committe die Änderungen #### Schritt 3: Erneute Verifikation (PFLICHT) **Nach dem ErgĂ€nzen MUSS eine erneute, vollstĂ€ndige PrĂŒfung erfolgen:** 1. Lies alle neuen Dateien nochmals 2. Erstelle eine finale Checkliste mit Zeilennummern: ```markdown | # | Abschnitt | Datei:Zeilen | Status | |---|-----------|--------------|--------| | 1 | [Name] | README.md:15-18 | ✅ | | 2 | [Name] | hosts.md:5-8 | ✅ | ... ``` 3. BestĂ€tige: **"X/X Abschnitte vollstĂ€ndig dokumentiert. Keine Inhalte wurden vergessen."** **Dieser Prozess ist nicht optional.** Dokumentationsverlust durch unvollstĂ€ndige Arbeit ist inakzeptabel. ### Rolling Documentation: Opportunistisches Host-Scanning **Prinzip:** Wenn du wĂ€hrend deiner Arbeit Zugriff auf einen Host bekommst, fĂŒhre einen VOLLSTÄNDIGEN Scan durch - nicht nur fĂŒr die aktuelle Aufgabe. #### Auslöser - SSH-Zugriff auf einen Host - Web-UI Zugriff (pfsense, NPM, etc.) - API-Zugriff #### Workflow bei Host-Zugriff 1. **PrĂŒfe:** Existiert `infrastructure/hosts/[hostname].md`? 2. **Falls nein oder unvollstĂ€ndig:** VollstĂ€ndigen Scan durchfĂŒhren 3. **Dann erst:** UrsprĂŒngliche Aufgabe erledigen #### Scan-Checkliste nach Host-Typ **Netzwerk-GerĂ€te (pfsense, Router):** - [ ] Interfaces (Name, IP, Netz) - [ ] ALLE Firewall-Regeln (nicht nur relevante!) - [ ] ALLE Aliases - [ ] NAT-Regeln (Port-Forwards, Outbound) - [ ] DHCP/DNS-Konfiguration - [ ] System-Version - [ ] **ABHÄNGIGKEITEN:** Welche Hosts/Dienste hĂ€ngen von diesem GerĂ€t ab? **Linux-Server:** - [ ] OS/Version - [ ] Interfaces und IPs - [ ] Laufende Dienste - [ ] Docker-Container - [ ] Offene Ports - [ ] Wichtige Configs - [ ] **ABHÄNGIGKEITEN:** Welche anderen Hosts braucht dieser Server? Wer braucht ihn? **Windows-Server:** - [ ] OS/Version - [ ] Interfaces und IPs - [ ] Dienste und geplante Tasks - [ ] Installierte Rollen - [ ] **ABHÄNGIGKEITEN:** Verbindungen zu anderen Systemen #### PFLICHT: AbhĂ€ngigkeiten dokumentieren **Bei JEDEM Host-Scan mĂŒssen die AbhĂ€ngigkeiten erfasst werden:** | Frage | Dokumentieren in | |-------|------------------| | Welche Hosts/Dienste braucht dieser Host? | `hosts/[host].md` → Abschnitt "AbhĂ€ngigkeiten" | | Welche Hosts/Dienste hĂ€ngen von diesem Host ab? | `hosts/[host].md` → Abschnitt "AbhĂ€ngig von diesem Host" | | Gibt es AbhĂ€ngigkeitsketten? | `dependencies.md` → Mermaid-Diagramm | **Ziel:** Anhand der Dokumentation muss erkennbar sein: - Was passiert wenn Host X ausfĂ€llt? - Welche Dienste sind von Änderungen an Host X betroffen? - Welche Hosts mĂŒssen vor Host X gestartet werden? **Beispiel AbhĂ€ngigkeits-Dokumentation:** ```markdown ## AbhĂ€ngigkeiten Dieser Host benötigt: - **srv-docker02** (10.10.10.81) - n8n Backend - **srv-nu-dc01** (10.10.10.111) - DNS-Auflösung ## AbhĂ€ngig von diesem Host Folgende Dienste/Hosts sind von diesem Host abhĂ€ngig: - **flow.wvits.de** - Webhook-Zugang fĂ€llt aus wenn dieser Host down ist - **n8n.vinos.de** - Interner Zugang ĂŒber diesen NPM ## Impact bei Ausfall | Ausfall-Szenario | Betroffene Dienste | |------------------|-------------------| | Komplett-Ausfall | flow.wvits.de, n8n.vinos.de, ... | | Nur Port 443 | HTTPS-Zugriff auf alle proxied Dienste | ``` **dependencies.md aktualisieren:** Nach jedem Host-Scan prĂŒfen ob `infrastructure/dependencies.md` aktualisiert werden muss: - Neue AbhĂ€ngigkeitskette entdeckt? → Mermaid-Diagramm ergĂ€nzen - Impact-Analyse hinzufĂŒgen - Repo-Links aktualisieren #### Beispiel **Aufgabe:** Firewall-Regel fĂŒr srv-revproxy01 prĂŒfen | Falsch | Richtig | |--------|---------| | Nur die eine Regel prĂŒfen | Erst: Existiert hosts/gw-nu-dmz02.md? | | Session beenden | Nein → VollstĂ€ndigen Scan aller Regeln, Aliases, Interfaces | | | Host-Datei erstellen | | | Dann: UrsprĂŒngliche Aufgabe | #### Rekursive Host-Entdeckung (WICHTIG!) **Wenn du bei einem Scan Referenzen zu anderen Hosts siehst, gehe AUTOMATISCH weiter:** Entdeckungsquellen: - Firewall-Regeln (Ziel-IPs, Aliases) - NAT-Regeln (Forward-Ziele) - DNS-EintrĂ€ge - Docker-Compose (externe Hosts) - Konfigurationsdateien - Log-EintrĂ€ge - Netzwerk-Verbindungen **Workflow:** ``` Host A scannen ↓ Entdecke Referenz zu Host B (z.B. in Firewall-Regel) ↓ Kann ich Host B erreichen? ├─ JA → Host B scannen (rekursiv) └─ NEIN → Host B in Entdeckungsliste aufnehmen ``` **Entdeckungsliste fĂŒhren:** Wenn ein Host nicht gescannt werden kann (kein Zugriff, keine Credentials, etc.): ```markdown ## Entdeckte aber nicht gescannte Hosts | Host | IP | Entdeckt in | Grund fĂŒr fehlenden Scan | |------|----|-------------|-------------------------| | srv-xyz01 | 10.10.10.99 | gw-nu-dmz02 Firewall-Regel | Kein SSH-Zugriff | | db-server | 10.10.20.5 | docker-compose.yml | Credentials unbekannt | ``` **Der User muss dich NICHT auf jeden Host einzeln hinweisen!** Du sollst selbststĂ€ndig: 1. Referenzen zu anderen Hosts erkennen 2. Versuchen diese zu scannen 3. Falls nicht möglich: Dokumentieren was du entdeckt hast 4. Beim nĂ€chsten Mal nachfragen ob Zugriff jetzt möglich ist #### Effizienz Nutze parallele Agenten fĂŒr umfangreiche Scans und rekursive Entdeckung. #### Ausnahmen - Zeitkritische NotfĂ€lle (erst fixen, dann dokumentieren) - Explizite User-Anweisung nur aktuelle Aufgabe zu erledigen - User sagt explizit "nicht weiter scannen" ### Skills-Referenz | Skill | Zweck | |-------|-------| | `/troubleshoot-host` | Strukturierter Troubleshooting-Workflow | | `/session-end` | Session beenden, Commits erstellen | | `/new-project` | Neues Projekt anlegen | | `/delegate-remote` | Tasks an Remote-Server delegieren (CRA) | --- ## Claude Remote Agent (CRA) - Verteilte Task-AusfĂŒhrung **Repository:** `~/Nextcloud/egonetix/claude-remote-agent` **CLI-Tool:** `cra` **Zweck:** Delegiert Aufgaben an Remote-Server, die Claude Code CLI autonom ausfĂŒhren - auch wenn der Laptop offline ist. ### Architektur ``` Laptop (Coordinator) ──SSH + JSON-RPC 2.0──> Server (claude-agent) ``` - **Coordinator:** Verwaltet Server, erstellt Tasks, sammelt Ergebnisse - **Agent:** EmpfĂ€ngt Tasks, fĂŒhrt Claude Code CLI autonom aus, speichert Ergebnisse lokal - **Persistenz:** SQLite auf beiden Seiten, Tasks ĂŒberleben VerbindungsabbrĂŒche ### Wann CRA vorschlagen **Du SOLLST dem User CRA aktiv vorschlagen, wenn:** | Szenario | Beispiel | |----------|---------| | **Lang laufende Tasks** | Codebase-Analyse, Refactorings, Log-Analyse | | **Server-Wartung** | Updates, Cleanup, Security-Audits | | **Multi-Server-Operationen** | Gleiche Aufgabe auf mehreren Servern parallel | | **Offline-Delegation** | User will Laptop zuklappen, Tasks sollen weiterlaufen | | **UnabhĂ€ngige Teilaufgaben** | Aufgabe lĂ€sst sich in parallele Sub-Tasks aufteilen | > "Diese Aufgabe eignet sich gut fĂŒr CRA - soll ich sie an einen Remote-Server delegieren?" ### Kommando-Referenz ```bash # Server verwalten cra servers add [--user USER] [--port PORT] [--key PATH] [--tag TAG] cra servers list [--all] cra servers remove [--yes] cra servers status [name] # Tasks cra submit "" [--priority N] [--model MODEL] [--max-turns N] cra status [task_id] cra cancel # Ergebnisse cra collect [server] [--task ID] [--since ISO-DATETIME] [--output FILE] # Config synchronisieren cra sync-config [server] [--no-claude-md] [--no-settings] ``` ### MCP-Server Integration Wenn der CRA MCP-Server konfiguriert ist, stehen CRA-Funktionen als native Tools zur VerfĂŒgung (`cra_submit`, `cra_status`, `cra_collect`, `cra_servers_list`, `cra_server_status`, `cra_sync_config`). PrĂŒfe ob MCP-Tools verfĂŒgbar sind, bevor du auf CLI-Befehle zurĂŒckfĂ€llst. ### Wichtige Hinweise - **Autonome AusfĂŒhrung:** Server brauchen `~/.claude/settings.json` mit Tool-Permissions - **Config-Sync:** Nach CLAUDE.md/settings.json Änderungen → `cra sync-config` - **Retry:** Fehlgeschlagene Tasks werden automatisch wiederholt (max 3x)