Tour

Claude Code — die Tour

Was es ist · wie man es bedient · wo alles liegt

Inhalt

Grundlagen

Was Claude Code ist — und was es kann

Claude Code ist ein agentischer Coding-Assistent im Terminal — er versteht euer Projekt und handelt darin, statt nur zu antworten.

  1. Liest euren Code (Dateien, Grep, Projektbaum) — deterministisch, kein Vektor-Index.
  2. Schreibt Dateien, erstellt Diffs, legt Tests an.
  3. Führt Befehle aus (Build, Test, Git) — nach eurer Freigabe.
  4. Ruft Werkzeuge & Subagenten auf (MCP, Skills, Hooks — Modul 2/8).
Der Unterschied zum Chat: Claude Code arbeitet in eurer Umgebung — mit euren Rechten und Werkzeugen. Deshalb sind Freigaben und Grenzen zentral (Block 2 & 3).

Die Konsole — so sieht ein Lauf aus

claude startet eine interaktive Session; ihr tippt Prompts, Claude Code schlägt Aktionen vor und fragt vor Eingriffen nach.

$ claude
> add a failing test for cancelling an already-cancelled booking
   I'll create BookingCancelTest and run it…
   Allow Edit to BookingCancelTest.java?  [y] yes  [n] no  [a] always
   opus-4.8 · ~/seminar-api · main · 24% context
Interaktiv ist der Default. Für Skripte/CI: claude -p "…" (--print) — einmalige Ausgabe, keine Session.
checked am 2026-07-25 gegen claude --help

Wo Claude Code läuft

Dasselbe Werkzeug, vier Oberflächen — die Arbeitsweise bleibt gleich, nur die Bedienung sieht anders aus.

Terminal (CLI)

Der Referenzfall: claude im Projektverzeichnis. Alles, was dieser Kurs zeigt, gilt hier zuerst.

IDE-Erweiterung

VS Code und JetBrains: Diffs inline, Auswahl als Kontext. Verbinden mit /ide.

Desktop-App

Eigenes Fenster, mehrere Sessions parallel — gut für längere Läufe nebeneinander.

Browser

Sessions über claude.ai, ohne lokale Installation.

Der Kurs arbeitet durchgehend im Terminal: dort ist am besten sichtbar, was passiert — welche Datei gelesen, welcher Befehl ausgeführt, welche Freigabe erteilt wird.
checked am 2026-07-25 gegen code.claude.com/docs/platforms

Die Statusleiste konfigurieren

Die Statusleiste unten läuft ein eigenes Skript und zeigt, was ihr wollt — Modell, Verzeichnis, Git-Branch, Context-Auslastung, Kosten.

  1. Am einfachsten: /statusline mit einer Beschreibung — Claude Code erzeugt das Skript und trägt es in die Settings ein.
  2. Manuell: ein statusLine-Feld in ~/.claude/settings.json, type: "command", das ein Skript aufruft.
  3. Das Skript bekommt Session-Daten als JSON auf stdin und druckt die Zeile.
// ~/.claude/settings.json
"statusLine": {
  "type": "command",
  "command": "~/.claude/statusline.sh"
}

# oder per Assistent:
/statusline show model and context %
checked am 2026-07-25 gegen code.claude.com/docs/statusline

Bedienung

Slash-Commands — die Meta-Befehle

Mit / steuert ihr die Session selbst (nicht die Aufgabe): Kontext, Modell, Konfiguration, Status.

/helpHilfe & alle Befehle/clearneue Session, Kontext leeren
/compactKontext zusammenfassen/modelModell wechseln
/configEinstellungen (alias /settings)/permissionsFreigabe-Regeln setzen
/mcpMCP-Server verwalten/statusSession-Status
/memoryCLAUDE.md bearbeiten/usageKosten (alias /cost)
/initCLAUDE.md anlegen/doctorInstallations-Check
/contextKontext-Auslastung als Raster/rewindCode & Verlauf zurücksetzen
checked am 2026-07-25 gegen code.claude.com/docs/commands

Die vier, die ihr täglich braucht

Wenige Befehle tragen den Alltag — vor allem die für die Kontext-Hygiene.

  1. /clear — frische Session, wenn ihr die Aufgabe wechselt. Neu anfangen ist ein Werkzeug, kein Scheitern.
  2. /compact — lange Session verdichten, ohne alles zu verlieren. Gegen „Context Rot" (Modul 3).
  3. /model — Modell für die Aufgabe wählen (schnell vs. gründlich).
  4. /permissions — Freigabe-Regeln setzen, statt jede Aktion einzeln zu bestätigen (Modul 4: Approval Fatigue).
Session fortsetzen ohne alles neu zu tippen: claude -c (--continue) oder claude -r (--resume).
checked am 2026-07-25 gegen claude --help

Die Eingabezeile kann mehr als Text

Vier Zeichen am Zeilenanfang und drei Tasten decken die tägliche Bedienung ab — das spart mehr Zeit als jede Einstellung.

/Befehle & Skills (Auswahlliste)Escunterbrechen (Arbeit bleibt erhalten)
@Datei nennen, mit Pfad-VervollständigungEsc Escbei leerer Zeile: Rückspul-Menü
!Shell-Modus: Befehl ausführen, Ausgabe fließt einShift+TabFreigabe-Modus durchschalten
?Kürzel-Hilfe ein-/ausblendenCtrl+OTranskript: Werkzeug-Aufrufe im Detail
Mehrzeilig tippen: \ + Enter (überall) oder Ctrl+J. Bild aus der Zwischenablage: Ctrl+V (unter WSL Alt+V).
checked am 2026-07-25 gegen code.claude.com/docs/interactive-mode

Wenn es in die falsche Richtung läuft

Ein Agent, der falsch abbiegt, ist normal — entscheidend ist, wie schnell ihr anhaltet und wie sauber ihr zurückkommt.

  1. Anhalten: Esc stoppt mitten im Zug. Die bisherige Arbeit bleibt, ihr könnt sofort nachsteuern.
  2. Zurückspulen: /rewind (oder Esc Esc) setzt auf einen früheren Punkt zurück — wahlweise Verlauf, Dateien oder beides.
  3. Neu ansetzen: /clear, wenn die Richtung ganz falsch war. Das ist billiger als Nachbessern.
  4. Das eigentliche Netz bleibt Git: häufig committen, dann ist jeder Fehlversuch ein git diff entfernt.
Früh unterbrechen ist keine Ungeduld, sondern Kostenkontrolle: jeder falsche Schritt liegt danach im Kontext und beeinflusst alles Weitere.
Kein Ersatz für Versionskontrolle: Rückspulen hilft in der Session, nicht über Tage.
checked am 2026-07-25 gegen code.claude.com/docs/checkpointing

Der Aufruf — CLI & Flags

Vor der Session steht der Kommandozeilen-Aufruf: ein paar Flags decken fast alles ab.

  1. claude — interaktive Session; -p/--print — einmalige Ausgabe (Skript/CI).
  2. -c/--continue, -r/--resume — letzte bzw. gewählte Session fortsetzen.
  3. --model, --add-dir, --permission-mode, --agent.
  4. Unterbefehle: claude mcp, plugin, agents, doctor, update.
# Session starten / fortsetzen
claude
claude -c  # letzte fortsetzen

# nicht-interaktiv (Skript)
claude -p "summarize the diff"

# Werkzeuge verwalten
claude mcp list · claude doctor
checked am 2026-07-25 gegen claude --help

Agents-Ansicht — wer läuft gerade wo

Claude Code kann Arbeit an Subagenten und Hintergrund-Agenten auslagern — zwei Befehle zeigen, was gerade läuft.

  1. /tasks — laufende Hintergrundarbeit inklusive Subagenten in der aktuellen Session.
  2. /agents — Subagenten anlegen/verwalten (Konfiguration).
  3. claude agents — Hintergrund-Agenten über Sessions hinweg verwalten.
  4. Starten: claude --bg (--background) legt eine Session als Hintergrund-Agent an.
Ein Subagent arbeitet in eigenem Kontext und meldet nur das Ergebnis zurück — gut gegen volllaufende Fenster. Konzept & Bau: Modul 8.
checked am 2026-07-25 gegen claude --help + docs

Modell, Kontext & Kosten

Das Modell wechseln

Pro Aufgabe das passende Modell — schnell & günstig oder gründlich & teurer.

  1. In der Session: /model öffnet den Picker. Beim Start: claude --model <name>.
  2. Die Familien: Opus (gründlich), Sonnet (Balance), Haiku (schnell/günstig), Fable.
  3. Faustregel: mechanische Kleinaufgabe — schnelles Modell; schwierige Analyse/Architektur — gründliches.
  4. Zweite Stellschraube: /effort setzt, wie gründlich das Modell nachdenkt (low bis max) — unabhängig vom Modell.
  5. Aktuelle Generationen & Spezifikationen: Modul 1.
# in der Session
/model # Picker öffnen und wählen

# beim Start
claude --model sonnet
Modellwahl ist eine Kosten-/Qualitäts-Abwägung — nicht immer das größte Modell. Die Familien & Zahlen im Detail: Modul 1.
checked am 2026-07-25 gegen claude --help + platform.claude.com

Kontext & Token im Blick

Das Kontextfenster ist ein Budget — Auslastung und Kosten immer im Blick behalten.

  1. /context — zeigt als farbiges Raster, was das Fenster gerade füllt (System, Regeln, Werkzeuge, Verlauf).
  2. /status — Session-Status (Modell, Verzeichnis, Kontext) auf einen Blick.
  3. /usage (alias /cost) — Verbrauch und Kosten der Session.
  4. Die Context-% in der Statusleiste — dauerhaft sichtbar (siehe Statusleisten-Folie).
  5. Läuft es voll: /compact (verdichten) oder /clear (neu) — gegen „Context Rot".
/context # was füllt das Fenster?
/status  # Modell, Verzeichnis
/usage   # Kosten & Verbrauch

# Statusleiste, dauerhaft:
opus-4.8 · main · 24% context
# voll? -> /compact oder /clear
Ein volles Fenster ist ein Qualitätsproblem, nicht nur ein Kostenproblem (Modul 3) — deshalb früh verdichten.
checked am 2026-07-25 gegen code.claude.com/docs/commands

Warum die Session trotzdem bezahlbar bleibt

Claude Code schickt bei jedem Turn die ganze Historie erneut — verarbeitet und verrechnet wird trotzdem nur, was sich seither geändert hat: Prompt-Caching.

  1. Das Modell hat kein Gedächtnis zwischen Anfragen. Jede Anfrage enthält System-Prompt, Projektkontext und den ganzen Verlauf.
  2. Der unveränderte Anfang dieser Anfrage wird aus dem Cache gelesen — deutlich schneller und rund 90 % günstiger als frischer Input.
  3. Deshalb ist ein Modellwechsel mitten in der Arbeit teuer: der ganze Verlauf wird einmal neu verarbeitet.
  4. Faustregel: Modell am Anfang wählen, /compact an der Aufgabengrenze — nicht mittendrin.
# jede Anfrage, von oben nach unten
System-Prompt + Tools  selten neu
CLAUDE.md + Regeln    je Session
Verlauf bisher        wächst
--------------------------------
neuer Prompt          nur das ist neu
Warum das technisch funktioniert: Grundbegriffe (Prefill & KV-Cache). Was den Cache im Alltag zerreißt und wie lange er hält: Modul 3.
checked am 2026-07-25 gegen code.claude.com/docs/prompt-caching

Sicherheit

Permission-Modi & Plan Mode

Bevor Claude Code etwas Riskantes tut, fragt es — wie streng, steuert der Permission-Modus.

  1. Modi (--permission-mode): manual, acceptEdits, auto, plan, bypassPermissions, dontAsk.
  2. Plan Mode (/plan): erst denken und planen, kein Code — Freigabe, dann Umsetzung.
  3. Regeln mit /permissions setzen, statt jede Aktion einzeln zu bestätigen.
bypassPermissions / --dangerously-skip-permissions nur in isolierten Sandboxes — nie auf einem Rechner mit euren Credentials (Block 3, Modul 9).
checked am 2026-07-25 gegen claude --help

Permissions in der Config — erlauben & verbieten

Die Modi sind das Wie; die konkreten Regeln stehen als allow/deny in der settings.json — pro Werkzeug, mit Mustern.

  1. Regelform Tool(Muster) — z. B. Read(**), Bash(git *), Bash(*DROP DATABASE*).
  2. Sicher arbeiten: Lesen, Schreiben, Bauen/Testen erlauben — das ist reversibel.
  3. Verbieten, was nicht rückholbar ist: Datei-Löschen, Force-Push, DB-Drop, Massen-Löschen, Exfiltration (curl zu Fremd-Diensten).
  4. deny sticht allow — der Zaun schützt selbst im freien Modus.
"permissions": {
  "allow": [ "Read(**)", "Write(**)", "Bash(git *)", "Bash(mvn test*)" ],
  "deny": [
    "Bash(rm -rf /)", # Datei-Löschen
    "Bash(git push --force *)", # Historie
    "Bash(*DROP DATABASE*)", # DB
    "Bash(aws rds delete-db-instance*)",
    "Bash(*pastebin*)" # Exfiltration
  ]
}
Regeln setzt ihr per /permissions oder direkt in der Datei. Der volle Zaun: Modul 8, Wirkungsradius: Modul 9 (Blast Radius).
checked am 2026-07-25 gegen cgsit-finance

Permission-Hook: Regeln in Code

Wo ein Muster nicht reicht, entscheidet ein PreToolUse-Hook in Code — vor dem Tool-Call, mit Blick auf den ganzen Kontext.

  1. Liste vs. Hook: allow/deny matcht Muster; ein PreToolUse-Hook sieht den vollen Tool-Input und entscheidet mit Logik.
  2. Für Kontextabhängiges:docker compose down -v nur gegen Prod blocken", „Edits außerhalb des Scopes verbieten".
  3. exit 2 blockt den Call; die stderr-Meldung wird dem Modell als Begründung gezeigt.
// settings.json
"PreToolUse": [{ "matcher": "Bash",
  "hooks": [{ "type": "command",
    "command": "…/block-prod-compose-down.py" }] }]

# Hook: exit 2 blockt den Call,
# stderr = Begründung fürs Modell
Fail-closed denken: ein durchlassender (fail-open) Permission-Hook ist eine Lücke — harte Grenzen zusätzlich in die deny-Liste. Voller Bau & Beispiele: Modul 8.
checked am 2026-07-25 gegen cgsit-finance + code.claude.com

Sicherheit: Credentials bleiben beim User

Claude Code läuft als ihr auf eurer Maschine — mit euren Rechten und Zugängen. Genau deshalb gilt eine klare Trennung.

  1. Credentials liegen im User-Home: SSH-Keys (~/.ssh), Cloud-Tokens (~/.aws), Umgebungsvariablen — nie im Repo, nie eingecheckt.
  2. Der Agent kann darauf zugreifen wie ihr — darum der deny-Zaun gegen gefährliche/exfiltrierende Befehle (Modul 8).
  3. Secrets gehören nicht in Prompts — alles im Kontext fährt bei jedem Schritt mit.
Keine Passwörter, Keys oder Tokens in Prompts, committete Dateien oder CLAUDE.md. Zugänge über Umgebungsvariablen / Secret-Store.
checked am 2026-07-25 gegen cgsit-finance

Projekt & Dateien

Git — was gehört ignoriert

Was persönlich, lokal oder geheim ist, gehört in .gitignore — nicht ins Repo.

  1. Persönliche Claude-Config: .claude/settings.local.json (die Team-settings.json wird dagegen eingecheckt).
  2. Secrets & Credentials: .env, *.pem, Token-Dateien.
  3. Lokale/Build-Artefakte: target/, node_modules/, Logs.
# .gitignore
.claude/settings.local.json
.env
*.pem
target/
node_modules/
Faustregel: Prozess einchecken, Zustand/Geheimnis nicht. Team-Config ja, persönliche Config und Secrets nein. Vertiefung: Modul 7/10.

Die Claude-Dateistruktur im Projekt

Zwei Orte, an denen Claude Code im Projekt nachschaut — hier gelistet, vertieft in Modul 2 und 7.

  1. CLAUDE.md — Dauerwissen, fährt bei jedem Aufruf mit (Modul 7).
  2. .mcp.json — MCP-Server des Projekts (Modul 8b).
  3. .claude/ — die Konfiguration: Team- und persönliche Settings + die Primitive.
projekt/
  CLAUDE.md # Dauerwissen
  .mcp.json # MCP-Server
  .claude/
    settings.json # Team (eingecheckt)
    settings.local.json # persönlich
    rules/  skills/  commands/  agents/
checked am 2026-07-25 gegen cgsit-finance

Übliche .claude-Unterordner — und flexibel

Die Unterordner sind Konvention, kein Zwang: Claude Code lädt, was da ist — nicht alles muss existieren.

rules/

Wissen, das per Datei-Muster nur bei Bedarf lädt

skills/

abrufbare Verfahren (je SKILL.md)

commands/

mit Skills verschmolzen — erzeugen /name

agents/

Subagenten-Definitionen

hooks / scripts

deterministische Automatik, referenziert aus settings.json

settings(.local).json

Team- bzw. persönliche Konfiguration

Was jeder Ordner tut, ist Modul 2 (Baukasten) und Modul 8. Hier zählt: die Struktur ist offen — ihr legt an, was ihr braucht.
checked am 2026-07-25 gegen cgsit-finance + docs

Glossar Glossar

Claude Code Agentischer Coding-Assistent im Terminal, der ein Projekt liest, Dateien schreibt, Befehle ausführt und Werkzeuge/Subagenten aufruft.
Slash-Command In der Session mit / eingegebener Meta-Befehl, der die Session steuert (z. B. /clear, /compact, /model).
Permission-Modus Legt fest, wie streng Claude Code vor Aktionen nachfragt (u. a. manual, acceptEdits, plan, bypassPermissions).
Plan Mode Modus, in dem Claude Code erst plant statt Code zu schreiben (/plan); erst nach Freigabe folgt die Umsetzung.
Statusleiste (Status Line) Konfigurierbare Zeile unten (statusLine in den Settings), die per Skript Modell, Verzeichnis, Git-Branch, Context-Auslastung u. a. zeigt.
Prompt-Caching Wiederverwendung des bereits verarbeiteten Anfangs einer Anfrage: der unveränderte Teil wird aus dem Cache gelesen statt neu berechnet — schneller und rund 90 % günstiger als frischer Input.

© 2026 CGS IT Solutions GmbH

Alle Rechte vorbehalten

Diese Schulungsunterlagen sind urheberrechtlich geschützt. Vervielfältigung, Weitergabe oder kommerzielle Nutzung — auch in Auszügen — nur mit ausdrücklicher schriftlicher Genehmigung der CGS IT Solutions GmbH.

cgsit-claude-training · Claude Code — die Tour · v0.5.4