CLAUDE.md və kontekst mühəndisliyi
CLAUDE.md — hər sessiyanın əvvəlində avtomatik yüklənən təlimat faylıdır. Ora yazdığınız hər şey hər sorğuda kontekstə düşür, yəni token xərcidir. Ona görə oraya nə qoyulduğu qədər, nə qoyulmadığı da vacibdir.
Fayl bir neçə səviyyədə ola bilər və hamısı birləşdirilir (geniş → dar sırası ilə):
- Təşkilat səviyyəsi — IT tərəfindən idarə olunan siyasət faylı.
- İstifadəçi səviyyəsi —
~/.claude/CLAUDE.md, bütün layihələr üçün şəxsi tərcihlər. - Layihə səviyyəsi —
./CLAUDE.mdvə ya./.claude/CLAUDE.md, komanda ilə paylaşılır (git-ə düşür). - Lokal —
./CLAUDE.local.md, şəxsi layihə qeydləri,.gitignore-a əlavə edilir.
| CLAUDE.md-ə YAZ | CLAUDE.md-ə YAZMA |
|---|---|
| Build və test əmrləri (dəqiq, modul səviyyəsində) | Qovluq strukturunun siyahısı — agent onu özü görür |
| Konvensiyalar: adlandırma, paket strukturu, DI qaydası | Dependency siyahısı — `libs.versions.toml`-da var |
| Tələlər: "bu modulda X işləmir, çünki..." | Ümumi Kotlin/Android dərsi |
| Qadağalar: "bu qovluğa toxunma", "bu kitabxananı işlətmə" | Çoxaddımlı prosedurlar — onların yeri skill-dir |
| Arxitektura qərarları və səbəbləri | Git tarixçəsindən çıxarıla bilən məlumat |
Hədəf: 200 sətirdən az. Uzun fayl həm çox kontekst yeyir, həm də əməletmə keyfiyyətini aşağı salır — model uzun siyahıda konkret qaydanı itirir. Fayl böyüyürsə, hissələri .claude/rules/ altına ayırın: orada paths: frontmatter ilə qayda yalnız uyğun fayllarla işləyəndə yüklənir.
# CLAUDE.md — MyApp (Android)
## Build
- Module compile: `./gradlew :feature:orders:compileDebugKotlin`
- Unit tests: `./gradlew :feature:orders:testDebugUnitTest`
- A full build takes 6-8 minutes — run the command for the module you changed.
## Architecture
- MVVM + Clean: `data/` → `domain/` → `ui/`. `ui/` never depends on
`data/` directly.
- DI: Hilt. Every new ViewModel is `@HiltViewModel`.
- UI state: a separate `XxxUiState` data class per screen.
## Conventions
- All user-facing text lives in `strings.xml` — hardcoded strings are rejected.
- New screens are always Compose. Do not add new XML layouts.
## Do not touch
- The `legacy/` folder — it has its own migration plan.
- `libs.versions.toml` — do not change versions without asking.Real Android CLAUDE.md nümunəsi: qısa, konkret, yoxlanıla bilən qaydalar. Hər sətir bir sual verir ki, agent onu təkrar soruşmasın.
📚 Mənbələr və sənədlər
- CLAUDE.md və yaddaşrəsmicode.claude.com
Fayl yerləri, yüklənmə sırası, `.claude/rules/` və `paths:` frontmatter.
- Böyük repo-lar və monoreporəsmicode.claude.com