CLAUDE.md Amalan Terbaik: Konfigurasikan Kod Claude untuk Sebarang Projek
CLAUDE.md ialah konfigurasi tunggal yang paling berkesan untuk Kod Claude. Yang ditulis dengan baik menukarkan bantuan AI generik kepada kepakaran khusus projek.
CLAUDE.md adalah file markdown di akar proyek Anda. Claude Code membacanya di awal setiap sesi sebelum kau mengetik apapun. Sebuah CLAUDE yang baik. Mud transforms generic AI menjadi alat yang memahami konvensi proyek Anda, tumpukan teknologi, dan garis merah.
Apa yang harus Anda masukkan dalam CLAUDE.md?
Fokus pada informasi bahwa seorang pengembang cerdas bergabung dengan tim Anda akan membutuhkan pada hari pertama. tech stack, perintah, konvensi, dan hal-hal yang harus dihindari.
Templat Minimal CLAUDE.md
# Project Context
Next.js 14 app with TypeScript, Tailwind CSS, and Prisma.
Database: PostgreSQL. Auth: NextAuth.js.
## Commands
- `npm run dev` — start dev server (port 3000)
- `npm run test` — run Jest tests
- `npm run lint` — run ESLint
- `npm run db:migrate` — run Prisma migrations
## Architecture
- Server components by default, client components in /components/client/
- API routes in /app/api/ with Zod validation
- Database queries in /lib/db/ (never in components)
## Conventions
- TypeScript strict mode, never use `any`
- Tailwind for styling, no CSS modules
- Conventional commits: feat:, fix:, chore:
## Do NOT
- Modify files in /legacy/ or /vendor/
- Change auth configuration without explicit approval
- Add new dependencies without asking firstApakah kesilapan CLAUDE.md yang paling biasa?
| Kesilapan | Mengapa ia menyakitkan | Betulkan |
|---|---|---|
| Ada terlalu panjang (500+ baris) | Limbah membuang-buang konteks jendela pada setiap sesi | Tetap di bawah 200 baris, link ke doc untuk rincian |
| Terlalu samar-tulis kode bersih") | Tidak memberikan bimbingan yang dapat dijalankan | " Gunakan komponen server secara default " |
| Perintah yang hilang | Coba tebak cara lari/uji/bangun | Daftarkan setiap skrip npm yang relevan |
| Tidak ada pembatasan | Claude mungkin memodifikasi file sensitif | Tambah bahagian "JANGAN" yang jelas |
| Pendua README | README adalah untuk manusia, CLAUDE.md adalah untuk AI | Fokus pada konvensyen dan peraturan, bukan penerangan projek |
Bagaimanakah anda menstruktur CLAUDE.md untuk projek besar?
Untuk pangkalan kod yang besar, gunakan sintaks @import untuk memisahkan konfigurasi merentas direktori. Kod Claude mengikuti import dan membina gambaran lengkap.
# Root CLAUDE.md
## Global conventions
- TypeScript strict, no `any`
- All API routes validate input with Zod
@import packages/api/CLAUDE.md
@import packages/web/CLAUDE.md
@import packages/shared/CLAUDE.mdSetiap sub-CLAUDE.md mengandungi peraturan khusus untuk pakej tersebut. Ini memastikan fail root pendek sambil memberikan konteks mendalam Kod Claude tentang setiap kawasan pangkalan kod.
Bagaimanakah anda menjana CLAUDE.md secara automatik?
Kode Claude dapat menghasilkan CLAUDE starting. md dengan menganalisis proyek Anda:
# Auto-generate CLAUDE.md
claude /init
# This creates a CLAUDE.md based on:
# - package.json scripts
# - Project structure
# - Existing config files
# - Git history patternsBagaimana dengan hierarki memori CLAUDE.md?
Kode Claude dibaca CLAUDE.md file dari lokasi ganda, dalam urutan prioritas:
- +Project root CLAUDE.md (semua orang di tim berbagi ini)
- +Berkas subdirektori CLAUDE.md (via @import)
- +~/.claude/CLAUDE.md (keutamaan global pribadi anda)
- +Memori Otomatis (MERORY.md, dikelola oleh perintah /memory)
Tetapan peringkat projek mengatasi tetapan peribadi. Ini bermakna konvensyen pasukan sentiasa memenangi pilihan individu.