#!/bin/bash set -euo pipefail REPO="/mnt/projekte/claude-workflow" echo "=== Claude-Workflow Bootstrap ===" # Skills (als Verzeichnis-Symlinks: ~/.claude/skills/ → repo/skills//) mkdir -p ~/.claude/skills for d in "$REPO/skills/"/*/; do name=$(basename "$d") ln -sf "$d" ~/.claude/skills/"$name" done echo "✓ Skills verlinkt" # Agents mkdir -p ~/.claude/agents for f in "$REPO/agents/"*.md; do ln -sf "$f" ~/.claude/agents/ done echo "✓ Agents verlinkt" # Dotfiles ln -sf "$REPO/dotfiles/CLAUDE.md" ~/.claude/CLAUDE.md ln -sf "$REPO/dotfiles/settings.json" ~/.claude/settings.json ln -sf "$REPO/dotfiles/statusline-command.sh" ~/.claude/statusline-command.sh echo "✓ Dotfiles verlinkt" # Hooks ausführbar machen chmod +x "$REPO/hooks/"*.sh echo "✓ Hooks ausführbar" echo "" echo "=== Voraussetzungen prüfen ===" # --- jq --- if command -v jq &>/dev/null; then echo "✓ jq $(jq --version)" else echo " jq fehlt – installiere via apt..." sudo apt-get install -y jq echo "✓ jq installiert" fi # --- ruff --- if command -v ruff &>/dev/null; then echo "✓ ruff $(ruff --version)" else echo " ruff fehlt – installiere via pipx..." if ! command -v pipx &>/dev/null; then sudo apt-get install -y pipx pipx ensurepath fi pipx install ruff echo "✓ ruff installiert" fi # --- secret-tool + Gitea-Token --- if ! command -v secret-tool &>/dev/null; then echo " secret-tool fehlt – installiere libsecret-tools..." sudo apt-get install -y libsecret-tools echo "✓ secret-tool installiert" else echo "✓ secret-tool vorhanden" fi echo " Gitea-Token prüfen..." if secret-tool lookup user claude-code token gitea &>/dev/null; then echo "✓ Gitea-Token vorhanden" else echo "" echo " Gitea-Token für claude-code nicht gefunden." read -r -p " Gitea-Token eingeben (https://gitea.troeger-net.org): " GITEA_TOKEN if [[ -n "${GITEA_TOKEN// /}" ]]; then echo -n "$GITEA_TOKEN" | secret-tool store \ --label="Gitea claude-code token" \ user claude-code token gitea echo "✓ Gitea-Token gespeichert" else echo "⚠ Kein Token eingegeben – übersprungen" fi fi echo "" echo "✓ Bootstrap abgeschlossen"