5 Prompt-Techniken fuer bessere Ergebnisse mit Claude Code [Mit Beispielen]
Verbessern Sie die Ausgabequalitaet von Claude Code drastisch mit diesen 5 bewaehrten Prompt-Techniken. Mit Before/After-Beispielen und praktischen Code-Snippets zum sofortigen Einsatz.
Einleitung
Die Qualitaet der Ausgabe von Claude Code haengt direkt davon ab, wie Sie Ihre Prompts formulieren. Mit der richtigen Technik kann dieselbe Aufgabe von “unbrauchbarem Code” zu “produktionsreifem Code” werden.
In diesem Artikel stellen wir fuenf praktische Prompt-Techniken mit Before/After-Beispielen vor, die Sie sofort anwenden koennen. Wenn Sie Claude Code noch nicht kennen, lesen Sie zuerst den Einstiegsguide.
1. Liefern Sie spezifischen Kontext
Die wirkungsvollste Technik ist, den Hintergrund und Zweck Ihrer Aufgabe klar zu kommunizieren. Claude Code kann Ihre Projektdateien lesen, aber nicht Ihre Gedanken. Sagen Sie nicht nur was Sie wollen, sondern auch warum — und die Genauigkeit der Ausgabe verbessert sich drastisch.
Before (schwacher Prompt):
Erstelle eine Login-Funktion
After (starker Prompt):
Fuege eine E-Mail/Passwort-Authentifizierung zu diesem Next.js 14 App Router Projekt hinzu.
API-Routen existieren bereits in src/app/api/, und die Benutzertabelle ist
ueber Prisma + PostgreSQL definiert. Verwende NextAuth.js v5 als Auth-Bibliothek.
Before (schwacher Prompt):
Behebe den Bug
After (starker Prompt):
Behebe den Bug in src/components/UserList.tsx, wo setState nach dem
Unmounten der Komponente beim Abrufen der Benutzerliste in useEffect
aufgerufen wird. Fuege Cleanup-Logik mit AbortController hinzu.
2. Teilen Sie Aufgaben in Schritte auf
Wenn Sie Claude Code eine riesige Aufgabe auf einmal geben, kann es den Ueberblick verlieren. Teilen Sie komplexe Arbeit bewusst in Phasen auf und bestaetigen Sie den Abschluss jedes Schritts, bevor Sie weitermachen.
Before (schwacher Prompt):
Baue ein komplettes Produktmanagement-System. Ich brauche Listing, Detail, Erstellen,
Bearbeiten, Loeschen, Bild-Upload, Kategorieverwaltung, Lagerverwaltung und Suchfilter.
After (starker Prompt):
Wir bauen das Produktmanagement schrittweise auf. Fuer Schritt 1
erstelle die Produkt-CRUD-API:
- POST /api/products (Erstellen)
- GET /api/products (Liste mit Pagination)
- GET /api/products/:id (Detail)
- PUT /api/products/:id (Aktualisieren)
- DELETE /api/products/:id (Loeschen)
Verwende zod fuer die Validierung und den bestehenden Prisma-Client in src/lib/db.ts.
Before (schwacher Prompt):
Schreibe alle Tests
After (starker Prompt):
Schreibe Unit-Tests fuer src/utils/calculatePrice.ts.
Beginne mit den Happy-Path-Faellen und decke ab:
- Berechnung des Grundpreises
- Rabattsaetze (10%, 20%, 50%)
- Bruttoberechnung (Steuersatz 10%)
Verwende Vitest und folge den bestehenden Mustern im tests/-Verzeichnis.
3. Geben Sie das erwartete Ausgabeformat an
Die explizite Angabe von Programmiersprache, Framework, Coding-Style und anderen Formaterwartungen reduziert Nacharbeit erheblich. Seien Sie besonders klar bei TypeScript-Typdefinitionen und Error-Handling-Mustern.
Before (schwacher Prompt):
Erstelle einen API-Client
After (starker Prompt):
Erstelle eine Client-Klasse fuer eine externe Zahlungs-API in src/lib/api-client.ts.
Anforderungen:
- TypeScript-Typdefinitionen kompatibel mit strict mode
- Fetch-basiert (kein axios)
- Benutzerdefinierte Fehlerklasse (PaymentApiError) fuer Error-Handling
- Retry-Logik (max. 3 Versuche, exponential backoff)
- Generische Response-Typen
- JSDoc-Kommentare fuer alle public-Methoden
Before (schwacher Prompt):
Erstelle eine React-Komponente
After (starker Prompt):
Erstelle eine wiederverwendbare Tabellenkomponente in src/components/DataTable.tsx.
- Client-Komponente ("use client"), kein React Server Component
- Props mit Generics fuer Spaltendefinitionen typisiert
- Sortier- und Paginierungsunterstuetzung
- Styling mit Tailwind CSS, passend zu den Design-Tokens in src/components/Button.tsx
- Barrierefreiheit: WAI-ARIA table-Rollen korrekt gesetzt
4. Referenzieren Sie die bestehende Codebasis
Eine der groessten Staerken von Claude Code ist das Verstaendnis Ihres gesamten Projekts. Nutzen Sie dies maximal aus, indem Sie explizit anweisen, bestehendem Code zu folgen. Konkrete Dateipfade machen dies noch effektiver.
Before (schwacher Prompt):
Fuege einen neuen API-Endpoint hinzu
After (starker Prompt):
Erstelle nach dem gleichen Muster wie src/app/api/users/route.ts
einen Bestellverwaltungs-API-Endpoint in src/app/api/orders/route.ts.
Uebernimm von der bestehenden Users-API:
- Zod-Schema-Validierung
- Try-catch Error-Handling-Muster
- NextResponse-Rueckgabestil
- Prisma-Query-Ansatz
Before (schwacher Prompt):
Baue eine Einstellungsseite
After (starker Prompt):
Erstelle src/app/dashboard/settings/page.tsx mit
src/app/dashboard/profile/page.tsx als Referenz.
Behalte die gleiche Layout-Struktur bei (DashboardLayout-Komponente, Breadcrumb,
PageHeader-Verwendung) und fuege Formulare fuer Benachrichtigungs- und
Sicherheitseinstellungen hinzu.
Verwende react-hook-form + zod fuer die Formularverwaltung, wie auf der Profilseite.
5. Iterieren Sie mit einer Feedback-Schleife
Erwarten Sie keine Perfektion beim ersten Versuch. Nutzen Sie die Konversation mit Claude Code, um die Qualitaet schrittweise zu verbessern. Behandeln Sie die erste Ausgabe als Grundlage und geben Sie spezifisches, umsetzbares Feedback.
Before (schwacher Prompt):
Das stimmt nicht, mach es nochmal
After (starker Prompt):
Danke. Zwei Aenderungen bitte:
1. In der handleSubmit-Funktion zwischen Netzwerkfehlern und
Validierungsfehlern unterscheiden, wenn Meldungen angezeigt werden
2. Den einfachen Spinner im Ladezustand durch das Skeleton-UI
aus src/components/Skeleton.tsx ersetzen
Before (schwacher Prompt):
Mach es besser
After (starker Prompt):
Ich moechte Performance-Verbesserungen. Konkret:
1. React.memo auf das Produktlisten-Rendering anwenden, um unnoetige Re-Renders zu vermeiden
2. Debounce (300ms) zum Sucheingabefeld hinzufuegen
3. Lazy Loading fuer Bilder implementieren
Bitte fuege an jeder Aenderungsstelle Kommentare hinzu, damit ich die
Auswirkungen auf den Lighthouse-Score bewerten kann.
Fazit
Fassen wir die fuenf Techniken zusammen:
- Spezifischen Kontext liefern, damit Claude Code Ihre Absicht praezise versteht
- Aufgaben in Schritte aufteilen, um den Umfang jeder Interaktion handhabbar zu halten
- Ausgabeformat spezifizieren, um Nacharbeit zu minimieren
- Bestehenden Code referenzieren, um Projektkonsistenz zu wahren
- Mit Feedback iterieren, um die Qualitaet schrittweise zu steigern
Jede Technik ist fuer sich effektiv, aber sie entfalten ihre volle Wirkung in Kombination. Projektregeln in einer CLAUDE.md-Datei festzuhalten reduziert den Kontext, den Sie in jeden Prompt einbauen muessen, und steigert die Effizienz weiter.
Fuer fortgeschrittene Nutzung lesen Sie unsere Produktivitaetstipps fuer Claude Code.
Fuer grundlegende Prompt-Engineering-Konzepte empfehlen wir auch den offiziellen Prompt-Engineering-Guide von Anthropic.