Claude Code Cheat Sheet

· 12 min Lesezeit

Wichtige Tipps und Tricks für die Verwendung von Claude Code.

#Claude Code #Cheat Sheet #Tipps #Shortcuts #CLI

Ich habe in den letzten Tagen sowohl viel mit Claude Code als auch mit OpenCode gearbeitet. Beide haben Vor- und Nachteile. Vor allem bei Claude Code haben mir ein paar Sachen gefehlt, die bei OpenCode schöner gelöst waren. Daher hier einmal mein persönliches Claude Code Cheat Sheet mit allen wichtigen Tipps und Tricks.

Disclaimer: Ich schreibe hier für Beispiele häufiger deutsche Prompts oder Inhalte. Das kann man machen, jedoch ist es erwiesen, dass englische Prompts zu einer etwas besseren Qualität führen. Privat prompte ich fast ausschließlich auf Englisch.

Das Hilfe-Menü

Wer es noch nicht wusste: Man kann via Eingabe von ? ein kleines Hilfemenü einblenden lassen mit den wichtigsten Tastenkombinationen. Ich werde im Folgenden einmal kurz auf jeden Shortcut eingehen.

! for bash mode       double tap esc to clear input      ctrl + _ to undo
/ for commands        shift + tab to auto-accept edits   ctrl + z to suspend
@ for file paths      ctrl + o for verbose output        ctrl + v to paste images
& for background      ctrl + t to show todos             alt + p to switch model
                      shift + ⏎ for newline              ctrl + s to stash prompt

Der Bash-Modus

Im Bash-Modus lassen sich beliebige Kommandozeilenaufrufe ausführen, indem man diese einfach mit einem vorangestellten ! aufruft:

! date
  Mi 7. Jan 14:35:42 CET 2026

! git branch
    cc-sonnet
     * main
       omo-minimax

Kommandos ausführen (Commands)

Via / können sogenannte Commands ausgeführt werden. Dies sind vorprogrammierte Routinen wie bspw. /compact zum Zusammenfassen des aktuellen Kontext-Fensters oder /clear um den aktuellen Verlauf zu löschen und einen neuen Chat zu starten. Claude Code liefert von Haus aus einige Commands mit, welche man durch das Drücken von / und dann mit Navigieren der Pfeiltasten erkunden kann.

Neue Commands lassen sich sowohl via Plugins installieren als auch vom Benutzer selber integrieren (zu beidem später mehr).

Dateien direkt referenzieren

Will man Claude Code gezielt Dateien oder Ordner in den Kontext mitgeben, so kann man diese via @ direkt referenzieren. Dies ist hilfreich, wenn man bereits weiß, in welcher Datei oder welchem Ordner jetzt gearbeitet werden muss. Ansonsten versucht Claude Code dies über Tools wie grep, glob usw. selbst herauszufinden.

Einzelne Datei

> Please check my blog post in @src/content/blog/claude-code-cheat-sheet.md for spelling mistakes.

Mehrere Dateien

> Please check my config files for mistakes @tailwind.config.mjs @astro.config.mjs

Ganze Ordner

> Please check all my blog posts in @src/pages/blog/ for mistakes

Hintergrundaufgaben (Background Tasks)

Mit & am Anfang einer Nachricht lässt sich ein Task im Hintergrund starten. Claude Code arbeitet dann eigenständig weiter, während man parallel andere Dinge erledigen kann. Der Status lässt sich jederzeit mit /tasks überprüfen.

& Refactor the authentication module and add unit tests

Tastenkombinationen im Überblick

KombinationFunktion
[ESC] 2xAktuelle Eingabe löschen
[SHIFT] + [TAB]Modus wechseln: Normal -> Auto accept edits -> Plan mode
[SHIFT] + [Enter]Manueller Zeilenumbruch
[CTRL] + OGesamte Ausgabe anzeigen
[CTRL] + TAktuelle To-Do-Liste anzeigen (wenn vorhanden)
[CTRL] + Z”Schlafmodus”, durch fg wieder aufrufbar
[CTRL] + \_Undo - Letzte Änderung rückgängig machen
[CTRL] + VBilder aus der Zwischenablage einfügen
[CTRL] + SPrompt zwischenspeichern (Stash)
[ALT] + PModell wechseln (z.B. Sonnet -> Opus)

Die Status-Line

Die Status-Line (das, was unter der Eingabezeile steht) ist bei Claude Code von Haus aus eher, sagen wir, dezent. Es fehlen Informationen wie der aktuelle Ordner oder auf welchem Git-Branch gearbeitet wird. Das sind Informationen, die nicht fehlen dürfen. Genau für dieses Problem gibt es das /statusline-Command. Mit diesem Command kann man die Status-Line mit Hilfe von natürlicher Sprache anpassen. Ein einfaches Beispiel:

> /statusline show the current folder's name as well as the current git branch

● I'll help you configure the status line to show the current folder name and git branch.

● statusline-setup(Configure statusline display settings)
  ⎿  Done (4 tool uses · 8.6k tokens · 38s)

● Your status line has been successfully configured! It will now display:
  - The current folder name (marco-kretz.de)
  - The current git branch in brackets (e.g., [main])

  The display format will look like: marco-kretz.de [main]

Und das Ergebnis sieht dann so aus. Einfacher geht’s nicht!

Claude Code Status-Line

Hier sind natürlich der Kreativität keine Grenzen gesetzt. Man kann mit Farben arbeiten, mit externen Programmen und vieles mehr. Es gibt zahlreiche GitHub-Repos, die vollständig angepasste Status-Lines vorkonfigurieren.

Die CLAUDE.md Datei

Eine der mächtigsten Funktionen von Claude Code, die viele übersehen: Die CLAUDE.md Datei im Projekt-Root. Diese Datei wird automatisch von Claude Code eingelesen und dient als zentrale Wissensbasis über dein Projekt. Sieh es als eine “README für Claude”.

Neben der projekt-spezifischen CLAUDE.md gibt es auch eine globale Version unter ~/.claude/CLAUDE.md, die für alle Projekte gilt. Perfekt für persönliche Präferenzen wie bevorzugte Sprache, Coding-Style oder allgemeine Anweisungen.

Wofür ist die CLAUDE.md?

Die CLAUDE.md enthält alle projekt-spezifischen Informationen, die Claude kennen sollte:

  • Projekt-Struktur und Architektur
  • Code-Konventionen und Best Practices
  • Tech-Stack und verwendete Libraries
  • Design-Patterns und Coding-Standards
  • Deployment-Prozesse
  • Häufige Tasks und wie sie umgesetzt werden

Der große Vorteil: Man muss diese Infos nicht bei jedem Chat neu erklären. Claude liest die Datei automatisch ein und kennt somit den Projekt-Kontext.

Ein praktisches Beispiel

Für meine Website könnte ich z. B. solch eine CLAUDE.md erstellen:

# AI Agent Guidelines for marco-kretz.de

## Project Overview

**Type**: Personal business card website with blog
**Framework**: Astro 5.x (Static Site Generator)
**Styling**: Tailwind CSS 3.x
**Deployment**: Static hosting via Vercel

### Design Philosophy

- **Theme**: Modern terminal-inspired design
- **Vibe**: "Coder" aesthetic without being too hacky
- **Tone**: Professional, warm, approachable

### Color Palette

```css
Background: #0d1117 (dark terminal)
Border:     #30363d (subtle borders)
Text:       #c9d1d9 (primary text)
Accent:     #d29922 (warm amber)
```

### Things to avoid

- ❌ Don't change the color palette significantly
- ❌ Don't add heavy frameworks without discussion
- ❌ Don't make the design too "hacker-ish"

Jetzt weiß Claude automatisch:

  • Welche Farben verwendet werden sollen
  • Welche Framework-Version im Einsatz ist
  • Was der Design-Stil ist
  • Was vermieden werden soll

Weitere Inhalte für die CLAUDE.md

Je nach Projekt können folgende Abschnitte sinnvoll sein:

Projektstruktur:

## Project Structure

src/
├── components/ # Reusable Astro components
├── content/blog/ # Blog post markdown files
├── layouts/ # Page layouts
└── pages/ # Routes

Coding-Conventions:

## Coding Conventions

- Use TypeScript strict mode
- Prefer Tailwind utilities over custom CSS
- Component names in PascalCase
- Max line length: 100 characters

Commit-Conventions:

## Git Commit Format

feat(scope): Add new feature
fix(scope): Bug fix
docs(scope): Documentation update

Deployment:

## Deployment

- Push to `main` triggers auto-deployment
- Run `npm run build` before pushing
- Check build locally with `npm run preview`

Warum das so hilfreich ist

Ohne CLAUDE.md muss man bei jedem neuen Chat erklären: “Wir nutzen Astro, bitte keine React-Komponenten, achte auf die Farben, halte dich an unsere Commit-Conventions…”

Mit CLAUDE.md kennt Claude das alles bereits. Das spart Zeit und führt zu konsistenteren Ergebnissen. Besonders bei längeren Projekten oder im Team ist das Gold wert.

Tipp: AGENTS.md für Modularität

Für größere Projekte kann man die CLAUDE.md auch modular gestalten. In meinem Projekt referenziere ich eine separate AGENTS.md:

CLAUDE.md:

@AGENTS.md

AGENTS.md:

# AI Agent Guidelines for marco-kretz.de

[Alle detaillierten Informationen hier...]

So bleibt die Struktur sauber und man kann verschiedene Instruktions-Dateien für unterschiedliche Aspekte des Projekts anlegen.

Custom-Commands und Skills

Wie bereits erwähnt, lassen sich in Claude Code eigene Commands definieren. Was viele nicht wissen: Es gibt dabei zwei verschiedene Konzepte - Slash Commands und Agent Skills. Beide haben ihre Berechtigung, aber für völlig unterschiedliche Use-Cases.

Slash Commands vs. Skills

AspektSlash CommandsAgent Skills
AufrufExplizit via /commandClaude erkennt und nutzt bei Bedarf
KomplexitätEinfache PromptsKomplexe Workflows
DateistrukturEine .md-DateiOrdner mit SKILL.md + Dateien
VerwendungWiederkehrende Standard-PromptsKomplexe Multi-Step-Workflows

Slash Commands sind im Grunde gespeicherte Prompts, die man immer wieder verwenden möchte. Man ruft sie explizit auf, indem man /command-name tippt. Perfekt für wiederkehrende Aufgaben wie “Review meinen Code” oder “Schreibe einen Commit”.

Agent Skills hingegen sind komplexere Fähigkeiten, die Claude automatisch erkennt und verwendet, wenn sie zur Aufgabe passen. Sie können mehrere Dateien, Skripte und detaillierte Anleitungen enthalten. Claude entscheidet selbst, wann ein Skill relevant ist.

Eigene Slash Commands erstellen

Slash Commands sind schnell erstellt. Man legt einfach eine Markdown-Datei an - entweder projekt-spezifisch oder global für alle Projekte:

Projekt-Commands (werden via Git geteilt):

.claude/commands/review.md

Globale Commands (nur für dich):

~/.claude/commands/optimize.md

Ein einfaches Beispiel

Erstellen wir einen Command, der Code auf Performance-Probleme überprüft:

---
description: Analysiere Code auf Performance-Probleme
---

Analysiere diesen Code auf Performance-Probleme und schlage Optimierungen vor:

- Identifiziere Bottlenecks
- Schlage algorithmische Verbesserungen vor
- Empfehle Caching-Strategien

Speichern als .claude/commands/optimize.md, fertig! Nun kann man via /optimize jederzeit eine Performance-Analyse starten.

Commands mit Argumenten

Noch mächtiger wird es mit Argumenten. Mit $ARGUMENTS (für alle Argumente) oder $1, $2 usw. (für einzelne) lassen sich dynamische Werte übergeben:

---
argument-hint: [issue-nummer]
description: Behebe ein spezifisches GitHub-Issue
---

Behebe Issue #$ARGUMENTS gemäß unseren Coding-Standards.
Erstelle dabei Tests und aktualisiere die Dokumentation.

Aufruf dann via /fix-issue 123.

Bash-Befehle und Datei-Referenzen

Commands können auch Bash-Befehle ausführen (mit !) oder direkt auf Dateien verweisen (mit @):

---
allowed-tools: Bash(git status:*), Bash(git diff:*)
description: Review aktueller Git-Changes
---

## Aktueller Status

!`git status`

## Diff der Änderungen

!`git diff HEAD`

Bitte reviewe die obigen Änderungen auf Code-Qualität und Best Practices.

Agent Skills erstellen

Skills sind komplexer, aber auch mächtiger. Sie bestehen aus mindestens einem Ordner mit einer SKILL.md-Datei:

.claude/skills/blog-review/
└── SKILL.md

Oder mit zusätzlichen Dateien:

.claude/skills/pdf-processing/
├── SKILL.md
├── FORMS.md
├── REFERENCE.md
└── scripts/
    └── fill_form.py

Ein praktisches Beispiel

Für meinen Blog könnte ich einen Review-Skill erstellen, der automatisch aktiv wird, wenn ich Claude bitte, einen Blogpost zu prüfen:

.claude/skills/blog-review/SKILL.md:

---
name: blog-review
description: "Review blog posts for quality and consistency. Use when reviewing blog content or improving blog posts."
allowed-tools: [Read, Grep]
---

# Blog Post Review

## Standards für marco-kretz.de

- Terminal-inspiriertes Design
- Professioneller, warmer, zugänglicher Ton
- Code-Beispiele mit Syntax-Highlighting
- Frontmatter: title, description, pubDate (Pflicht)

## Review-Checkliste

Beim Review von Blogposts prüfe:

1. **Content-Qualität**
   - Klare, ansprechende Sprache
   - Praktische Code-Beispiele
   - Korrekte Markdown-Syntax

2. **Format**
   - Alle Pflichtfelder im Frontmatter
   - Datei in src/content/blog/
   - Slug passt zum Dateinamen

3. **Style**
   - Terminal-Ästhetik eingehalten
   - Professioneller Ton
   - Keine zu grellen Farben

Jetzt muss ich Claude nicht mehr jedes Mal die Projekt-Standards erklären - der Skill wird automatisch aktiv, sobald ich sage: “Bitte reviewe meinen neuen Blogpost”.

Skills testen und debuggen

Um zu sehen, welche Skills verfügbar sind, kann man Claude einfach fragen:

> What skills are available?

Funktioniert ein Skill nicht wie erwartet, hilft oft ein Blick auf die YAML-Syntax. Häufige Fehler:

  • Leerzeilen vor dem --- am Anfang
  • Tabs statt Spaces in der Indentierung
  • Fehlende oder falsche name und description

Wann nutze ich was?

Slash Commands sind ideal für:

  • Wiederkehrende, explizite Prompts
  • Einfache, einmalige Anweisungen
  • Quick-Templates

Agent Skills sind perfekt für:

  • Komplexe Workflows, die Claude automatisch erkennen soll
  • Team-weite Standards und Guidelines
  • Multi-File-Dokumentation mit Scripts

Für mein Projekt nutze ich Commands für wiederkehrende Tasks wie /commit oder /review-pr, während Skills die projekt-spezifischen Standards und Patterns meiner Astro-Website kodieren.

Schlusswort

Claude Code ist extrem mächtig und sehr stark auf die eigenen Bedürfnisse anpassbar. Ich habe hier längst nicht alle Features angerissen. Es gibt noch einen eingebauten Plugin-Store, Hooks, Agents und mehr. Dazu werde ich aber einen eigenen Post verfassen.

Und jetzt viel Spaß beim Coden :)

Diesen Beitrag teilen: Twitter LinkedIn