Es gibt viele Artikel zur Verwendung von Claude Code, aber die meisten enden bei „Installation und erste Antwort“. Die eigentlichen Schwierigkeiten beginnen danach — dieselben Erklärungen müssen ständig wiederholt werden, Bestätigungsdialoge erscheinen zu häufig, und mitten in der Arbeit schließt sich das 5-Stunden-Nutzungsfenster. Dieser Artikel beginnt dort, wo Einsteigerartikel enden, und behandelt diese drei Probleme nacheinander.
Lassen Sie uns eine Voraussetzung klären. Claude Code ist kein Tool zum Einfügen von Code in ein Chatfenster, sondern ein Agent, der über das Terminal im Repository dauerhaft präsent ist. Er liest und ändert Dateien, führt Tests aus und erstellt sogar Commits. Deshalb besteht der erste Schritt nicht darin, die Bedienung auswendig zu lernen, sondern die Projektregeln zu übergeben.
Die ersten drei Schritte — Ausführen, /init, konkrete Anfragen
Direkt nach der Installation sind nur diese drei Dinge lohnenswert. Wenn Sie insbesondere den zweiten Schritt /init überspringen, müssen Sie in jeder folgenden Sitzung dieselben Erklärungen wiederholen.
# 1. 프로젝트 디렉터리에서 실행한다 (이게 전제 조건입니다)
cd ~/work/my-app
claude
# 2. 첫 명령은 /init — 저장소를 읽고 CLAUDE.md를 만들어 줍니다
> /init
# 3. 이후엔 한국어로 그냥 부탁하면 됩니다. 파일 경로를 붙일수록 정확해집니다
> src/api/user.ts의 검증 로직을 zod로 바꾸고 테스트도 같이 고쳐줘/init liest das Repository und erstellt CLAUDE.md. Der erzeugte Inhalt ist ein Entwurf; übernehmen Sie ihn nicht unverändert, sondern überarbeiten Sie ihn unbedingt von Hand. Der nächste Abschnitt behandelt diesen Inhalt.
CLAUDE.md — Einmal schreiben, was Sie jedes Mal erklärt haben
CLAUDE.md ist eine Markdown-Datei im Projektstamm und wird in jeder Sitzung automatisch gelesen. Darin sollte nur stehen, was „auch durch Lesen des Codes nicht erkennbar ist“.
# CLAUDE.md — 프로젝트 루트에 두고 git에 커밋합니다
## 명령어
- 테스트: npm test (파일 하나만: npm test -- path/to/file)
- 타입 검사: npx tsc --noEmit
- 린트: npm run lint
## 규칙
- 날짜는 date-fns만 사용. moment 금지.
- API 핸들러는 app/api/**/route.ts에만 둔다.
- 커밋 메시지는 한국어, prefix는 feat / fix / docs.
## 건드리면 안 되는 곳
- db/migrations/ — 생성물. 직접 수정 금지.Ebenso klar ist, was nicht hineingehört. Verzeichnisstrukturen und Funktionsbeschreibungen ergeben sich aus dem Lesen des Codes und sind daher überflüssig. CLAUDE.md wird jeder Anfrage beigefügt und verbraucht umso mehr Tokens, je länger es ist — kurz halten, nur Regeln. Wenn Sie die Datei in git committen, gelten dieselben Regeln für das gesamte Team.
Berechtigungen — Bestätigungsdialoge reduzieren, aber nicht alle deaktivieren
Bei jeder Änderung einer Datei oder Ausführung eines Befehls erscheint ein Bestätigungsdialog. Da er eine Sicherheitsvorkehrung ist, ist es in der Praxis sinnvoll, nicht alles zu deaktivieren, sondern nur Lese- und Prüfaktionen zu erlauben. Wählen Sie während der Sitzung „Immer zulassen“, damit die Auswahl gespeichert wird, und tragen Sie sie in .claude/settings.json ein, um sie auf Projektebene festzulegen.
Es gibt auch ein Flag, das alle Bestätigungen überspringt; dadurch werden jedoch sogar Löschen und Remote-Push ohne Bestätigung möglich. Verwenden Sie es nur in Containern oder temporären Arbeitsbäumen, die Sie bei Beschädigung verwerfen können. Die Entscheidungshilfe finden Sie unter Wann verwendet man --dangerously-skip-permissions?.
Benutzerdefinierte Befehle — Nicht jedes Mal dieselbe Bitte tippen
Aufgaben, um die Sie jedes Mal fast auf dieselbe Weise bitten, etwa Reviews, Prüfungen vor einem Release oder das Aufräumen von Commit-Nachrichten, können als Befehle gespeichert werden. Legen Sie dazu einfach eine Markdown-Datei unter .claude/commands/ ab.
# .claude/commands/review.md — 파일만 두면 /review로 쓸 수 있습니다
지정된 파일을 리뷰하고 다음 세 가지만 지적하세요.
1. 실제로 실패하는 조건이 있는 버그 (재현 방법 포함)
2. 기존 유틸리티로 대체 가능한 중복
3. 테스트가 없는 분기
스타일 취향은 지적하지 마세요.Dadurch wird über /review src/api/user.ts ein Review aus derselben Perspektive ausgeführt. Wenn Sie die Datei in git committen, teilt das Team sie, und die Review-Kriterien selbst können im Repository gespeichert werden. Die Form in der Praxis verwendeter Befehle ist unter Claude Code workflows ausführlicher auf Englisch beschrieben.
So arbeiten Sie weiter, wenn das Nutzungsfenster geschlossen ist
Das Abonnementkontingent wird über ein rollierendes 5-Stunden-Fenster verwaltet und läuft ausgerechnet am Nachmittag aus, wenn die Arbeit ansteht. Ein Wechsel auf einen höheren Tarif öffnet es nicht sofort. Praktisch gibt es drei Möglichkeiten.
| Option | Geeignete Situation |
|---|---|
| Warten, bis sich das Fenster öffnet | Keine Deadline; einige Stunden Aufschub möglich |
| Auf einen höheren Tarif wechseln | Passiert jeden Tag. Das Limit reicht dauerhaft nicht aus |
| Nur diese Aufgabe auf einen API-Schlüssel umstellen | Heute fertig werden müssen; Limit nur einige Male pro Monat erreicht |
Die dritte Option funktioniert, ohne das Abonnement zu kündigen. Nur solange die beiden folgenden Zeilen gesetzt sind, wird nutzungsabhängig abgerechnet; wenn Sie die Variablen löschen, kehren Sie zum Abonnement zurück. Wenn Sie noch keinen Schlüssel haben, beginnen Sie damit, einen Claude-API-Schlüssel zu erhalten.
# 사용량 창이 닫혀도 작업을 이어가는 두 줄.
# 이 변수가 설정된 동안에만 종량제로 청구되고, 지우면 구독으로 돌아갑니다.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-...
# 클로드 코드의 기본 모델과 opus 별칭은 최신 Opus를, sonnet 별칭은 Sonnet 5.5를
# 가리킵니다. Kunavo가 제공하지 않는 모델(Sonnet 5.5, 아직 들어오지 않은 새 Opus)을
# 요청해 404가 나지 않도록 모델을 고정합니다. sonnet을 고정하지 않으면 /model sonnet,
# opusplan의 실행 단계, model: sonnet으로 지정한 서브에이전트가 404를 받습니다.
# opus 별칭에 고정한 Opus 5.5는 Claude Code v2.1.280 이상이 필요합니다
# (이전 버전이면 먼저 claude update).
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-5-5
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5
# 보조 작업을 가장 싼 모델로 넘기는 한 줄 (매 세션 효과가 있습니다)
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5Die Tarife werden direkt aus dem Katalog gelesen: Claude Sonnet 5 kostet pro 1M Tokens $1.40 / $7.00, Claude Haiku 4.5 kostet $0.70 / $3.50. Der Betrag wird vom Prepaid-Guthaben abgezogen, daher gibt es in Monaten ohne Nutzung keine Abrechnung. Die Berechnung des Break-even-Punkts und die Frage, ob Abonnement oder nutzungsabhängige Abrechnung günstiger ist, finden Sie unter Claude-Code-Preise; Lösungen für blockierte Zahlungen mit koreanischen Karten unter Claude-API-Preise und -Zahlung; die Struktur des Nutzungsfensters selbst unter Claude-Pro-Limit.
Anfragen, die Ergebnisse verbessern, und solche, die sie verschlechtern
Zum Schluss der Bereich, in dem sich der Unterschied bei der Verwendung am stärksten zeigt. Wenn Sie Dateipfade angeben, benötigt die Suche weniger Tokens und die Ergebnisse werden schneller und präziser — „Repariere die Validierungslogik“ statt „Ändere die Validierungslogik von src/api/user.ts in zod“.
Werfen Sie außerdem keine großen Aufgaben auf einmal hinein. Teilen Sie sie in Änderung → Test → nächste Änderung auf, damit bei einem Fehler ein klarer Ausgangspunkt zum Zurückkehren vorhanden ist. Die Unterscheidung bei Fehlern wird unter Claude-Code-Fehlerübersicht erklärt.
Wenn Sie einen Coding-Agenten von OpenAI auf dieselbe Weise verwenden möchten, beschreibt Verwendung von Codex, wie Sie die Codex CLI mit einem API-Schlüssel ohne ChatGPT-Tarif ausführen.
Häufig gestellte Fragen
Was sollte man bei der Verwendung von Claude Code zuerst tun?
Führen Sie im Projektverzeichnis claude aus und anschließend einmal /init. /init liest das Repository und erstellt CLAUDE.md. Diese Datei enthält die Vorgehensweise zum Ausführen von Tests, Projektregeln und Pfade, die nicht verändert werden dürfen, und wird danach automatisch in jeder Sitzung gelesen. Wenn Sie diesen Schritt überspringen, müssen Sie dieselben Erklärungen jedes Mal wiederholen.
Was sollte in CLAUDE.md stehen?
Nur Dinge, die Sie jedes Mal erklären müssten. Drei Punkte genügen: Befehle für Tests und Typprüfungen, projektspezifische Regeln (diese Bibliothek verwenden, keine Logik in dieser Schicht) und Pfade zu generierten Dateien, die nicht geändert werden dürfen. Verzichten Sie dagegen auf Verzeichnisstrukturen oder Funktionsbeschreibungen, die sich aus dem Lesen des Codes ergeben. CLAUDE.md wird jeder Anfrage beigefügt; je länger die Datei ist, desto höher sind nur die Kosten, ohne dass die Genauigkeit steigt.
Was tun, wenn das 5-Stunden-Nutzungslimit erreicht ist?
Es gibt drei Möglichkeiten: warten, bis sich das Fenster wieder öffnet, auf einen höheren Tarif wechseln oder nur diese Aufgabe an einen API-Schlüssel übergeben. Für die dritte Option genügen die beiden Zeilen ANTHROPIC_BASE_URL und ANTHROPIC_AUTH_TOKEN; Sie müssen Ihr Abonnement nicht kündigen. Nur solange die Variablen gesetzt sind, wird nutzungsabhängig abgerechnet; wenn Sie sie löschen, kehren Sie zum ursprünglichen Zustand zurück. Ein Tarif-Upgrade öffnet das Fenster nicht sofort, daher ist die dritte Option an einem Tag mit Frist am schnellsten.
Kann ich die Bestätigungsdialoge reduzieren, die bei jeder Ausführung fragen?
Ja. Wählen Sie während der Sitzung „Immer zulassen“, damit die Auswahl gespeichert wird, oder tragen Sie sie in .claude/settings.json ein, um sie auf Projektebene festzulegen. Wenn Sie nur Lese- und Prüfaktionen wie npm test oder git status erlauben, sinkt die Zahl der Bestätigungen deutlich. Es gibt auch ein Flag, das alle Bestätigungen überspringt, aber dadurch werden auch Löschen und Push ohne Bestätigung möglich. Verwenden Sie es daher nur in Containern, die Sie notfalls verwerfen können.
Wie erstellt man benutzerdefinierte Befehle?
Legen Sie einfach eine Markdown-Datei unter .claude/commands/ ab. Mit review.md können Sie den Befehl über /review aufrufen. Der Inhalt kann ein natürlicher Prompt sein. Wenn Sie die Datei in git committen, verwendet das gesamte Team denselben Befehl; so können Sie Aufgaben wie Review-Richtlinien oder Release-Prüfungen im Repository hinterlegen.
Was ist der sicherste Trick für bessere Ergebnisse?
Geben Sie konkrete Dateipfade an. „Repariere die Validierungslogik“ ist weniger schnell und präzise als „Ersetze die Validierungslogik in src/api/user.ts durch zod“, weil die Suche weniger Tokens benötigt. Ein weiterer Punkt: Werfen Sie große Aufgaben nicht auf einmal hinein — teilen Sie sie in Änderung → Test → nächste Änderung auf, damit bei einem Fehler ein klarer Ausgangspunkt zum Zurückkehren vorhanden ist.