Claude Code Best Practices

Claude Code Best Practices

Claude Code ist ein leistungsstarker agentischer Coding-Assistent, der automatisch Kontext in Prompts einbezieht. Mit den richtigen Praktiken können Sie seine Effektivität maximieren und produktiver arbeiten.

1. Setup optimieren

CLAUDE.md Dateien erstellen

Die CLAUDE.md Datei ist eine spezielle Datei, die Claude automatisch in den Kontext einbezieht. Sie ist ideal für:

  • Häufige Bash-Befehle dokumentieren
  • Kernkomponenten und Utility-Funktionen beschreiben
  • Code-Style-Richtlinien festlegen
  • Test-Anweisungen definieren
  • Repository-Etikette (Branch-Naming, Merge vs. Rebase)
  • Entwicklungsumgebung Setup-Informationen
  • Projekt-spezifische Besonderheiten und Warnungen

Beispiel einer CLAUDE.md:

# Entwicklungsbefehle

- npm run dev: Startet den Entwicklungsserver
- npm run build: Erstellt Production Build
- npm run test: Führt alle Tests aus

# Code-Style

- ES Module Syntax verwenden (import/export), nicht CommonJS
- Imports destrukturieren: import { foo } from 'bar'
- TypeScript strict mode aktiviert

# Workflow

- Nach Code-Änderungen immer Typechecking durchführen
- Einzelne Tests bevorzugen für bessere Performance

Platzierung von CLAUDE.md Dateien:

  1. Repository Root - Standard-Location (empfohlen)
  2. Übergeordnete Verzeichnisse - Nützlich für Monorepos
  3. Unterverzeichnisse - Bei Bedarf on-demand geladen
  4. Home-Verzeichnis (~/.claude/CLAUDE.md) - Global für alle Sessions

Tool-Berechtigungen konfigurieren

Claude Code ist standardmäßig sicherheitsorientiert und fragt nach Berechtigungen. Optimieren Sie durch:

  1. “Always allow” während Sessions auswählen
  2. /permissions Kommando für Allowlist-Management
  3. Manuelle Bearbeitung von .claude/settings.json
  4. --allowedTools CLI-Flag für session-spezifische Berechtigungen

GitHub CLI installieren

Installieren Sie gh CLI für nahtlose GitHub-Integration:

  • Issues erstellen und verwalten
  • Pull Requests öffnen
  • Kommentare lesen
  • Repository-Interaktionen automatisieren

2. Claude erweiterte Tools geben

Bash-Tools integrieren

Claude erbt Ihre Bash-Umgebung. Für custom Tools:

# Tool-Namen mit Beispielen dokumentieren
my-deploy-script --help

# In CLAUDE.md dokumentieren
# Deployment
- ./scripts/deploy.sh staging: Deploy to staging
- ./scripts/migrate.sh: Run database migrations

MCP (Model Context Protocol) nutzen

Claude Code funktioniert als MCP-Client und kann sich mit Servern verbinden:

  • Projekt-Konfiguration - Nur für aktuelles Verzeichnis
  • Globale Konfiguration - Für alle Projekte
  • .mcp.json Datei - Team-weit verfügbar

Custom Slash Commands

Erstellen Sie wiederverwendbare Workflows in .claude/commands/:

<!-- .claude/commands/fix-issue.md -->

Analysiere und behebe GitHub Issue: $ARGUMENTS

Schritte:

1. `gh issue view` für Issue-Details nutzen
2. Problem verstehen
3. Relevante Dateien suchen
4. Änderungen implementieren
5. Tests schreiben und ausführen
6. Linting und Typechecking sicherstellen
7. Commit erstellen
8. PR öffnen

3. Bewährte Workflows

Erkunden → Planen → Codieren → Committen

Der vielseitigste Workflow:

  1. Exploration: Claude relevante Dateien lesen lassen
  2. Planung: Detaillierten Plan erstellen lassen
    • Verwenden Sie “think”, “think hard”, “think harder”, “ultrathink”
  3. Implementation: Code schreiben lassen
  4. Commit & PR: Änderungen dokumentieren

Test-Driven Development (TDD)

Anthropic’s bevorzugter Workflow:

  1. Tests schreiben basierend auf erwarteten Input/Output-Paaren
  2. Tests ausführen und Fehlschlagen bestätigen
  3. Tests committen wenn zufrieden
  4. Code implementieren der Tests erfolgreich macht
  5. Iterieren bis alle Tests grün sind
  6. Code committen

Visueller Workflow

Für UI-Entwicklung:

  1. Screenshots oder Design-Mocks bereitstellen
  2. Code implementieren lassen
  3. Screenshots der Implementierung nehmen
  4. Iterieren bis Ergebnis mit Mock übereinstimmt

Codebase Q&A

Für Onboarding und Exploration:

- Wie funktioniert das Logging-System?
- Wie erstelle ich einen neuen API-Endpoint?
- Was macht async move { ... } in Zeile 134?
- Welche Edge Cases behandelt CustomerOnboardingFlowImpl?

4. Workflow optimieren

Spezifische Anweisungen geben

❌ Unspezifisch✅ Spezifisch
“Tests für foo.py hinzufügen”“Neuen Testfall für foo.py schreiben, der den Edge Case abdeckt wenn User ausgeloggt ist. Mocks vermeiden”
“Warum hat ExecutionFactory so eine komische API?”“Git-Historie von ExecutionFactory durchsuchen und zusammenfassen wie die API entstanden ist”

Bilder verwenden

Claude arbeitet hervorragend mit visuellen Inputs:

  • Screenshots einfügen (macOS: cmd+ctrl+shift+4)
  • Bilder drag & drop in Prompt-Input
  • Dateipfade für Bilder angeben

Früh und oft korrigieren

Vier Tools für Kurskorrektur:

  1. Plan erstellen lassen vor dem Codieren
  2. Escape drücken um Claude zu unterbrechen
  3. Doppel-Escape um in Historie zurückzuspringen
  4. Änderungen rückgängig machen lassen

Context focused halten

  • /clear verwenden zwischen Tasks
  • Checklists und Scratchpads für komplexe Workflows
  • Irrelevante Konversation vermeiden

5. Headless Mode für Automatisierung

# Issue Triage automatisieren
claude -p "Analysiere neue Issues und vergebe Labels"

# Als Linter verwenden
claude -p "Review Code auf Tippfehler und veraltete Kommentare" --allowedTools Edit

6. Multi-Claude Workflows

Code Review mit mehreren Instanzen

  1. Claude 1: Code schreiben lassen
  2. Claude 2: Code reviewen lassen
  3. Claude 3: Code basierend auf Review überarbeiten

Mehrere Repository-Checkouts

# 3-4 Git-Checkouts in separaten Ordnern
git clone <repo> project-1
git clone <repo> project-2
git clone <repo> project-3

# Claude in jedem Ordner mit verschiedenen Tasks starten

Git Worktrees nutzen

# Worktrees erstellen
git worktree add ../project-feature-a feature-a
git worktree add ../project-feature-b feature-b

# Claude in jedem Worktree starten
cd ../project-feature-a && claude
cd ../project-feature-b && claude

Tipps für Worktrees:

  • Konsistente Namenskonventionen verwenden
  • Ein Terminal-Tab pro Worktree
  • Separate IDE-Fenster für verschiedene Worktrees
  • Nach Abschluss aufräumen: git worktree remove

7. Fortgeschrittene Automatisierung

Fanning Out Pattern

# Große Migrationen oder Analysen
claude -p "migrate foo.py from React to Vue. Return OK if succeeded, FAIL if failed." 
  --allowedTools Edit Bash(git commit:*)

Pipeline Integration

# Claude in bestehende Pipelines integrieren
claude -p "<your prompt>" --json | your_command

Fazit

Claude Code wird durch strategische Konfiguration, klare Kommunikation und durchdachte Workflows am effektivsten. Experimentieren Sie mit verschiedenen Ansätzen und dokumentieren Sie erfolgreiche Patterns in Ihren CLAUDE.md Dateien.

Pro-Tipp: Beginnen Sie mit einfachen Workflows und erweitern Sie graduell zu komplexeren Multi-Claude-Setups, sobald Sie Vertrauen in die Grundfunktionalität gewonnen haben.

Tags: #claude-code#automation#best-practices