# Tool-Guide: Claude Code

> Alles über Claude Code — Installation, Skills, MCP-Server, .env-Dateien und Best Practices.

- URL: https://thevibe-coding.de/kurs/tool-claude-code
- Typ: kurs | Veroeffentlicht: 2026-02-24 | Aktualisiert: 2026-07-17
- Autor: VIBE CODING | Site: VIBE CODING — thevibe-coding.de

---

# Tool-Guide: Claude Code

Claude Code ist der offizielle CLI-Agent von Anthropic. Kein Editor. Kein GUI. Ein Terminal. Ein Agent. Maximale Kontrolle.

Wenn Vibe Coding ein Handwerk ist, dann ist Claude Code das Profi-Werkzeug. Es ist nicht das einfachste Tool — aber es ist das mächtigste. Hier lernst du alles, was du wissen musst.

Für weitere Informationen schau auch in unsere [Tools-Übersicht](/tools).

---

## Was ist Claude Code?

Claude Code ist ein **agentic coding tool**, das direkt in deinem Terminal läuft. Es ist kein Chatbot mit Code-Highlighting. Es ist ein Agent, der:

- Dein **gesamtes Projekt** versteht (liest Dateien, analysiert Struktur)
- **Dateien erstellen, bearbeiten und löschen** kann
- **Terminal-Befehle ausführen** kann (git, npm, pip, etc.)
- **MCP-Server** anbinden kann (Exa, Datenbanken, APIs)
- **Skills** nutzen kann (wiederverwendbare Anweisungen)
- **Sich selbst korrigiert**, wenn etwas schiefgeht

Der fundamentale Unterschied zu ChatGPT oder Claude im Browser: Claude Code **sieht und verändert dein Dateisystem**. Es antwortet nicht nur — es handelt.

---

## Installation

### Voraussetzungen
- **Node.js** installiert (18 oder neuer, am besten eine aktuelle LTS-Version)
- **Terminal** (bash, zsh, PowerShell)
- **Anthropic-Account** mit Claude Pro oder API-Zugang

### Installation
```bash
npm install -g @anthropic-ai/claude-code
```

### Erster Start
```bash
# In dein Projektverzeichnis navigieren:
cd dein-projekt

# Claude Code starten:
claude
```

Beim ersten Start authentifizierst du dich mit deinem Anthropic-Account. Danach läuft alles lokal — dein Code verlässt nie deinen Rechner (nur die Prompts gehen an die API).

---

## Grundlegende Nutzung

### Einen Prompt schreiben
Einfach tippen und Enter drücken:
```
Erstelle eine Python-Datei, die "Hello World" ausgibt
```

Claude Code wird:
1. Den Prompt analysieren
2. Eine Datei erstellen
3. Dir zeigen, was es getan hat
4. Auf deine Bestätigung warten

### Dateien referenzieren
Du musst Claude Code nicht sagen, welche Dateien es lesen soll — es scannt dein Projekt automatisch. Aber du kannst spezifisch sein:
```
Schau dir die Datei src/bot.py an und füge Error-Handling hinzu
```

### Multi-Step-Aufgaben
Claude Code kann komplexe Aufgaben in Schritte zerlegen:
```
Erstelle einen Telegram-Bot, der jeden Tag um 9:00 einen zufälligen
Witz postet. Nutze python-telegram-bot, speichere den Token in
einer .env-Datei, und erstelle eine requirements.txt.
```

Claude Code wird nacheinander: Dateien erstellen, Abhängigkeiten definieren, Code schreiben, testen und korrigieren.

---

## Das Skills-System

Skills sind das Killer-Feature von Claude Code. Sie machen den Unterschied zwischen "AI ausprobieren" und "AI professionell nutzen".

Ein Skill ist eine wiederverwendbare Anweisung, die Claude **selbstständig** anwendet, sobald eine Aufgabe dazu passt. Du rufst ihn nicht auf — Claude erkennt anhand der `description`, wann er gebraucht wird, und lädt ihn erst dann in den Kontext (Lazy Loading, bläht deine Sessions nicht auf).

### Skill erstellen
Ein Skill ist ein Ordner mit einer `SKILL.md` — projektweit unter `.claude/skills/`, global unter `~/.claude/skills/`:

```markdown
# .claude/skills/telegram-post/SKILL.md
---
name: telegram-post
description: Erstellt einen Telegram-Post nach den Kanal-Regeln. Verwenden, wenn ein Post für den Telegram-Kanal geschrieben werden soll.
---

Regeln:
- Maximal 300 Wörter
- Deutscher Text mit korrekten Umlauten (ä, ö, ü, ß)
- Hook im ersten Satz
- Keine Bullet-Point-Listen im Fließtext
- Kein Marketing-Sprech
- Abschluss mit Handlungsaufforderung oder provokanter These

Format:
- Emoji + Überschrift (eine Zeile)
- Leerzeile
- 3-5 Absätze Fließtext
- Leerzeile
- Hashtags (3-5)
```

Das YAML-Frontmatter mit `name` und `description` ist Pflicht — die `description` entscheidet, wann Claude den Skill zieht. Schreibst du danach "Erstelle einen Post über Claude Code", wendet Claude den Skill automatisch an. Praktischer Nebeneffekt: Skills sind ein offener Anthropic-Standard — dieselben Ordner funktionieren auch in Cursor, Codex und anderen Tools.

### Skill-Bibliothek aufbauen
Empfohlene Skills für Vibe Coder:

| Skill | Zweck |
|-------|-------|
| `research` | Thema recherchieren (mit Exa) |
| `telegram-post` | Kanal-Post erstellen |
| `summarize` | Artikel zusammenfassen |
| `translate` | Content übersetzen |
| `review` | Code überprüfen |
| `debug` | Fehler diagnostizieren |

### Und Slash-Commands?
Neben Skills gibt es weiterhin **Slash-Commands**: Markdown-Dateien in `.claude/commands/<name>.md`, die du **selbst** per `/<name>` aufrufst (mit `$ARGUMENTS` als Platzhalter). Der Merksatz: Command = du rufst auf, Skill = Claude wendet selbst an, wenn es passt. Und per `/plugin` installierst du Plugins aus Marketplaces, die Skills, Commands und MCP-Server gebündelt mitbringen.

Mehr über Skills: [FAQ: Prompting und Skills](/kurs/faq-prompting)

---

## MCP-Server einrichten

MCP (Model Context Protocol) erweitert Claude Code um externe Fähigkeiten. Der wichtigste MCP-Server für Vibe Coder: **Exa** (AI-Websuche).

### Exa-MCP konfigurieren

**1. Server per Befehl hinzufügen**

Der einfachste Weg ist der eingebaute Befehl:
```bash
claude mcp add exa -e EXA_API_KEY=dein-exa-api-key -- npx -y exa-mcp-server
```

**2. Oder: Konfigurationsdatei anlegen**

Alternativ editierst du die Projekt-Konfiguration von Hand. Sie liegt in `.mcp.json` **im Projekt-Root** (nicht im `.claude/`-Ordner) und wird so von allen im Team genutzt:
```json
{
  "mcpServers": {
    "exa": {
      "command": "npx",
      "args": ["-y", "exa-mcp-server"],
      "env": {
        "EXA_API_KEY": "dein-exa-api-key"
      }
    }
  }
}
```

**3. Claude Code neu starten**
```bash
# Beenden:
exit

# Neu starten:
claude
```

**4. Testen**
```
Recherchiere die neuesten Entwicklungen bei AI-Coding-Tools
```

Wenn Exa korrekt eingebunden ist, wird Claude Code jetzt **live im Internet suchen** und aktuelle Ergebnisse einbeziehen.

### Weitere MCP-Server
- **Filesystem** — Zugriff auf Dateien außerhalb des Projektordners
- **GitHub** — Pull Requests, Issues direkt verwalten
- **Datenbanken** — PostgreSQL, SQLite direkt abfragen
- **Eigene Server** — Du kannst eigene MCP-Server bauen

Mehr zu MCP in unserem [Glossar](/glossar).

---

## Arbeiten mit .env-Dateien

`.env`-Dateien speichern sensible Daten (Tokens, API-Keys) getrennt vom Code.

### .env erstellen
```bash
# .env
TELEGRAM_BOT_TOKEN=7123456789:AAH1bGciOiJIUzI1NiJ
CHANNEL_ID=-100123456789
EXA_API_KEY=exa-abc123
```

### In Python nutzen
```python
from dotenv import load_dotenv
import os

load_dotenv()

token = os.environ.get("TELEGRAM_BOT_TOKEN")
channel = os.environ.get("CHANNEL_ID")
```

### Sicherheit
**Immer** in `.gitignore` eintragen:
```
# .gitignore
.env
.env.local
.env.production
```

Claude Code versteht `.env`-Dateien automatisch. Wenn du sagst "Nutze den Token aus der .env-Datei", weiß es, was zu tun ist.

---

## Best Practices

### 1. Spezifisch sein
```
# Schlecht:
Mach den Code besser

# Gut:
Füge Error-Handling zu der Funktion send_telegram_post() in src/bot.py hinzu.
Fange Netzwerkfehler ab und logge sie mit dem logging-Modul.
```

### 2. Kontext geben
```
# Schlecht:
Erstelle einen Bot

# Gut:
Erstelle einen Telegram-Bot in Python, der:
- Jeden Tag um 9:00 und 18:00 einen Post sendet
- Posts aus einer queue.json liest
- Den Token aus der .env-Datei lädt
- Fehler in eine Log-Datei schreibt
```

### 3. Kleine Schritte
Nicht: "Baue mir eine komplette Content-Pipeline mit Recherche, Generierung, Queue, Scheduling und Monitoring."

Sondern:
1. "Erstelle die Grundstruktur für einen Telegram-Bot."
2. "Füge eine Queue hinzu."
3. "Füge Scheduling hinzu."
4. "Füge Monitoring hinzu."

### 4. Bestätigungen nutzen
Claude Code fragt vor Dateiänderungen um Erlaubnis. Lies, was es tun will, **bevor** du bestätigst. Das ist dein Quality Gate.

### 5. Git nutzen
```bash
# Vor jeder größeren Änderung:
git commit -am "Checkpoint vor Umbau"
```

Wenn Claude Code etwas kaputt macht: `git checkout .` und neu anfangen.

---

## Keyboard Shortcuts

| Shortcut | Funktion |
|----------|----------|
| `Tab` | Autocomplete |
| `Ctrl+C` | Aktuelle Aktion abbrechen |
| `Ctrl+D` / `exit` | Claude Code beenden |
| `↑` / `↓` | Durch Prompt-History navigieren |
| `/` | Slash-Command-Auswahl öffnen |

---

## Wann Claude Code vs. andere Tools?

| Situation | Empfehlung |
|-----------|------------|
| Terminal-Power-User | **Claude Code** |
| Visuelles Arbeiten bevorzugt | Cursor |
| Open-Source wichtig | Codex CLI |
| Parallele Agenten mit GUI gewünscht | Antigravity |
| Komplexe Multi-File-Projekte | **Claude Code** |
| Schnelle Einzel-Datei-Änderungen | Cursor |
| Budget $0 | Codex CLI |
| Maximale Kontrolle | **Claude Code** |

Claude Code ist nicht für jeden. Aber für jeden, der Vibe Coding ernst nimmt, ist es das Werkzeug der Wahl.

---

## Weiterführend

- [FAQ: Prompting und Skills](/kurs/faq-prompting) — Skills meistern
- [Tool-Guide: Cursor](/kurs/tool-cursor) — Die visuelle Alternative
- [Tool-Guide: Codex CLI](/kurs/tool-codex) — Die Open-Source-Alternative
- [Troubleshooting](/kurs/troubleshooting) — Wenn etwas nicht funktioniert
