root 92b276a422 Host-Setup: Automatische Git-Init und Template-Kopie
- Hook erkennt jetzt auch fehlendes Git-Repository
- Meldet beide Anforderungen (Git + Template) zusammen
- CLAUDE.md erweitert um vollständigen Setup-Workflow
- Initial Commit nach Setup wird automatisch vorgeschlagen

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 11:30:18 +01:00
2026-01-26 09:46:26 +01:00
2026-01-26 10:27:29 +01:00

Claude Code Settings

Zentrale Konfiguration für Claude Code, synchronisiert über alle Geräte.

Setup auf neuem Gerät

Basis-Setup (alle Geräte)

# 1. Repository klonen
git clone ssh://git@gitea.egonetix.de:222/root/claude_settings.git ~/dotfiles/claude_settings

# 2. Symlinks erstellen
mkdir -p ~/.claude/agents ~/.claude/rules
ln -sf ~/dotfiles/claude_settings/settings.json ~/.claude/settings.json
ln -sf ~/dotfiles/claude_settings/CLAUDE.md ~/.claude/CLAUDE.md
ln -sf ~/dotfiles/claude_settings/statusline-command.sh ~/.claude/statusline-command.sh
ln -sf ~/dotfiles/claude_settings/hooks ~/.claude/hooks
ln -sf ~/dotfiles/claude_settings/plans ~/.claude/plans
ln -sf ~/dotfiles/claude_settings/agents/* ~/.claude/agents/
ln -sf ~/dotfiles/claude_settings/rules/* ~/.claude/rules/ 2>/dev/null || true

Optional: Nextcloud-Sync (nur auf Geräten mit Nextcloud)

Falls Nextcloud auf dem Gerät läuft und die Settings auch dort sichtbar sein sollen:

# Prüfen ob Nextcloud existiert
if [ -d ~/Nextcloud/entwicklung ]; then
    mkdir -p ~/Nextcloud/entwicklung/claude_settings
    ln -sf ~/dotfiles/claude_settings/settings.json ~/Nextcloud/entwicklung/claude_settings/settings.json
    ln -sf ~/dotfiles/claude_settings/CLAUDE.md ~/Nextcloud/entwicklung/claude_settings/CLAUDE.md
    ln -sf ~/dotfiles/claude_settings/statusline-command.sh ~/Nextcloud/entwicklung/claude_settings/statusline-command.sh
    ln -sf ~/dotfiles/claude_settings/hooks ~/Nextcloud/entwicklung/claude_settings/hooks
    ln -sf ~/dotfiles/claude_settings/plans ~/Nextcloud/entwicklung/claude_settings/plans
    ln -sf ~/dotfiles/claude_settings/agents ~/Nextcloud/entwicklung/claude_settings/agents
    ln -sf ~/dotfiles/claude_settings/rules ~/Nextcloud/entwicklung/claude_settings/rules
    ln -sf ~/dotfiles/claude_settings/README.md ~/Nextcloud/entwicklung/claude_settings/README.md
    echo "✓ Nextcloud-Symlinks erstellt"
else
    echo "Nextcloud nicht gefunden - übersprungen"
fi

Hinweis: Nextcloud ist optional. Das Git-Repo ist die "Source of Truth". Die Nextcloud-Symlinks dienen nur dazu, die Dateien auch in der Nextcloud-Oberfläche sichtbar zu machen.

Inhalt

Datei/Ordner Zweck
settings.json Globale Einstellungen (Model, Plugins, StatusLine, Hooks)
CLAUDE.md Globale Instruktionen für Claude
statusline-command.sh Custom StatusLine Script
hooks/ Session-Hooks (automatische Skripte)
plans/ Implementierungspläne (geräteübergreifend)
agents/ Benutzerdefinierte Agenten
rules/ Modulare Regeln

Hooks

SessionStart Hook

Der session-start.sh Hook wird bei jedem Start einer Claude Code Session ausgeführt und prüft automatisch auf Updates im Repository.

Was er tut:

  • Führt git fetch aus
  • Vergleicht lokalen Stand mit Remote
  • Zeigt Warnung wenn neue Commits verfügbar sind

Beispiel-Ausgabe bei Updates:

⚠ Claude Settings: 3 neue Commits verfügbar!
  → cd ~/dotfiles/claude_settings && git pull

Eigene Hooks hinzufügen

  1. Script in hooks/ erstellen
  2. Ausführbar machen: chmod +x hooks/mein-hook.sh
  3. In settings.json registrieren:
{
  "hooks": {
    "SessionStart": [...],
    "PreToolUse": [...],
    "PostToolUse": [...]
  }
}

Wichtig: Keine CRLF-Zeilenumbrüche verwenden (nur LF).

Workflow

Bei Session-Start:

  • Hook prüft automatisch auf Updates
  • Bei Warnung: cd ~/dotfiles/claude_settings && git pull

Nach Änderungen:

cd ~/dotfiles/claude_settings
git add -A && git commit -m "Beschreibung" && git push

Dateien die NICHT synchronisiert werden

Diese Dateien sind in .gitignore und bleiben lokal:

  • .credentials.json - OAuth-Token
  • *.local.json - Lokale Overrides
  • cache/, debug/, history.jsonl - Session-Daten
Description
No description provided
Readme 512 KiB
Languages
Shell 100%