# Claude Code, Codex va Cursor uchun 2026-yildagi yagona ko‘rsatmalar fayli

> 2026-yilda Claude Code, Codex va Cursor uchun yagona manba: Claude Code AGENTS.md faylini o‘zi qachon o‘qishi, @AGENTS.md faylini CLAUDE.md ichiga import qilish, ramziy havola va /init.

Source: https://ailoot.ai/blog/uz/agents-md-claude-md-one-instruction-file/
Canonical: https://ailoot.ai/blog/uz/agents-md-claude-md-one-instruction-file/
Language: uz
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-004
Revision: sha256-6eef7c1947d3345c556c9ad28261383bfb0c38962d00fce876b09212e58a8dbe


Xizmat haqida ma’lumot olish uchun [Ailoot hujjatlari](https://ailoot.ai/docs/)ga qarang.

## Claude Code, Codex va Cursordan birgalikda foydalansangiz, nima o‘zgaradi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

2026-yilda odatiy vibe-coder sozlamasi bitta vositadan emas, balki 3–5 ta vositadan iborat. Asosiy vosita sifatida Claude Code, uzoq avtonom vazifalar uchun Codex, IDEda tezkor tahrirlar uchun Cursor. Har birining o‘z ko‘rsatmalar fayli bor: `CLAUDE.md`, `AGENTS.md`, `.cursorrules`. Ularni qo‘lda sinxronlab tursangiz, bir satrni besh joyda tahrirlaysiz, Cursor’ni yangilashni unutasiz, bir haftadan keyin esa Claude va Codex ayni bir so‘rovga turlicha natija beradi.

</div>

Ta’riflangan misolda Claude Code asosiy vosita, Codex va Cursor esa muayyan vazifalar uchun ishlatiladi. Mening `CLAUDE.md` faylimda taxminan 250 qator ko‘rsatma bor: nimani va qaysi tartibda o‘qish, nimaga tegmaslik, deploy uchun qaysi buyruqlardan foydalanish va commitlarni qanday formatlash. Loyihada Codex CLI’ni ilk bor sinab ko‘rganimda, u qoidalarni bilmasdi: `git push --force`ni ishga tushirdi, `.env`ni kavladi va fayllar nomini beparvolik bilan o‘zgartirdi.

Avval `CLAUDE.md` faylini qo‘lda `AGENTS.md` fayliga nusxaladim. Ikki haftadan keyin loyihada bir xil ko‘rsatmaning to‘rtta nusxasi borligini bildim: `CLAUDE.md`, `AGENTS.md`, `.cursorrules` va `.windsurf/rules/` ichida. Ularning barchasi biroz farq qilardi. Bu Claude yoki Cursor muammosi emas; bir nechta haqiqat manbaiga ega har qanday tizimdagi asosiy tuzoq shu. Bu muammoni [ko‘p agentli ish bo‘yicha qo‘llanmada](https://ailoot.ai/blog/uz/claude-code-codex-together/) batafsilroq muhokama qilaman.

2026-yil iyunida Anthropic’ning Claude Code xotirasi haqidagi hujjatlari bitta yechimni taklif qildi: umumiy fayl va import. 2026-yil sentabridan boshlab, loyihada `CLAUDE.md` bo‘lmasa, Claude Code `AGENTS.md`ni o‘zi o‘qiydi; Claude’ga xos qoidalaringiz bo‘lsa, import kerak. Quyida bitta `AGENTS.md` qachon yetarli bo‘lishi, importni qanday sozlash va umumiy qoidalarni Claude’ga xos qoidalardan qanday ajratishni tushuntiraman.

## Claude Code AGENTS.md faylini o‘zi o‘qiydimi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Ha, 2026-yil 18-sentabrda chiqarilgan 2.1.277-versiyasidan boshlab, lekin faqat ishchi katalogda yoki uning yuqori kataloglarida `CLAUDE.md`, `.claude/CLAUDE.md` yoki `CLAUDE.local.md` bo‘lmasa. Agar `CLAUDE.md` mavjud bo‘lsa, Claude Code sukut bo‘yicha faqat shu faylni o‘qiydi, `AGENTS.md` esa `CLAUDE.md` ichidagi `@AGENTS.md` satri yoki ramziy havola orqali kiritiladi. Bu xatti-harakat `/config`dagi Project instructions bo‘limida o‘zgaradi. Sentabrgacha Claude Code `AGENTS.md`ni umuman o‘qimasdi va import qilish yagona usul edi.

</div>

2026-yil sentabrgacha javob “yo‘q” edi. AGENTS.md’ni qo‘llab-quvvatlashni so‘ragan \#6235-muammo 2025-yil avgustidan beri ochiq turgan va 2026-yil 17-avgustda yopilgan. Xotira hujjatlari shu vaqt davomida bitta yechimni ko‘rsatgan: `CLAUDE.md` yarating va unga `AGENTS.md`ni import sifatida kiriting. 2.1.277-versiyasidan boshlab hujjatlarda boshqacha deyiladi:

<figure>
<blockquote>
<p>Claude Code `AGENTS.md`ni loyiha ko‘rsatmalari sifatida o‘qiy oladi, shu bois boshqa agentlar uchun allaqachon sozlangan repozitoriy `CLAUDE.md`, importsiz yoki konfiguratsiyasiz ishlaydi.</p>
</blockquote>
<figcaption>— Anthropic, https://code.claude.com/docs/en/memory#agents-md</figcaption>
</figure>

Claude Code aynan nimani o‘qishi loyihadagi fayllarga bog‘liq:

| Loyihadagi fayllar | Claude Code nimalarni o‘qiydi |
|----|----|
| `AGENTS.md`, ishchi katalogda yoki uning yuqorisida `CLAUDE.md` yoxud `CLAUDE.local.md` yo‘q | `AGENTS.md` |
| `AGENTS.md` va ishchi katalogda yoki uning yuqorisida `CLAUDE.md` (yoki `CLAUDE.local.md`) mavjud | Faqat `CLAUDE.md` |
| `CLAUDE.md`da `@AGENTS.md` satri bor | `CLAUDE.md` va import orqali uning ichidagi `AGENTS.md` |

Bu tekshiruvda ishchi katalogdagi va uning yuqorisidagi `CLAUDE.md`, `.claude/CLAUDE.md` hamda `CLAUDE.local.md` hisobga olinadi. Shaxsiy `~/.claude/CLAUDE.md`, korporativ boshqariladigan fayl va `.claude/rules/` ichidagi qoidalar hisobga olinmaydi: ular `AGENTS.md` bilan birga yuklanadi.

`CLAUDE.md` bo‘lmasa, Claude Code ishga tushganda ishchi katalog va uning yuqorisidagi barcha `AGENTS.md` hamda `.claude/AGENTS.md` fayllarini o‘qiydi; quyi katalogdagi `AGENTS.md`ni esa shu katalogdagi faylni ochganda aniqlaydi. `AGENTS.md` ichidagi `@path` importlari ham ishlaydi. Claude Code `AGENTS.local.md`, `AGENTS.override.md` yoki `.agents/` katalogi tarkibini o‘qimaydi.

Nozik jihati: shaxsiy `CLAUDE.local.md` ham hisobga olinadi. Unga saqlanmagan qoidalaringizni yozing, shunda Claude Code `AGENTS.md`ni jimgina o‘qimay qo‘yadi. Quyidagi sozlama bu muammoni hal qiladi.

Xatti-harakat `/config`dagi Project instructions bo‘limida o‘zgaradi:

| Sozlama | Claude Code nimalarni o‘qiydi |
|----|----|
| `claude-md-or-agents-md` (sukut bo‘yicha) | `CLAUDE.md` yoki u ham, `CLAUDE.local.md` ham bo‘lmasa, `AGENTS.md` |
| `claude-md-and-agents-md` | Ikkala faylni: har bir katalogda avval `CLAUDE.md`, keyin `AGENTS.md` |
| `claude-md` | Faqat `CLAUDE.md` |
| `managed-only` | Faqat korporativ boshqariladigan `CLAUDE.md` va avtomatik xotira |

`CLAUDE.local.md`ni saqlab, `AGENTS.md`ni ham o‘qitmoqchi bo‘lsangiz, `claude-md-and-agents-md`ni belgilang. Fayllar takroran o‘qilmaydi: `AGENTS.md` `@AGENTS.md` satri yoki ramziy havola orqali allaqachon kiritilgan bo‘lsa, Claude Code sozlamadan qat’i nazar, uni ikkinchi marta yuklamaydi.

Fayl olingan-olinmaganini `/memory` buyrug‘i bilan tekshirishingiz mumkin: 2.1.280-versiyasidan boshlab ro‘yxatda `AGENTS.md` yo‘li ko‘rinadi. 2.1.277 dan oldingi versiyalarda va o‘rnatilgan `agents-md` plagini o‘chirilgan seanslarda Claude Code faqat `CLAUDE.md`ni o‘qiydi, `/config`da esa Project instructions bandi bo‘lmaydi. 2.1.281 dan oldingi versiyalarda Amazon Bedrock orqali ishlaydigan seanslar va telemetriyasi o‘chirilgan seanslar ham xuddi shunday ishlagan. Eski versiyadan yangilangandan keyingi ilk seansda `AGENTS.md` ham aniqlanmasligi mumkin; keyingi seansdan boshlab ishlaydi.

Bitta faylli sozlama uchun bu nimani anglatadi? Agar Claude’ga xos qoidalaringiz bo‘lmasa, `CLAUDE.md`ni ishlatmasangiz ham bo‘ladi: `AGENTS.md`ning o‘zi yetarli, Claude Code, Codex va Cursor uni o‘qiydi. Agar bunday qoidalaringiz bo‘lsa (xavfli kataloglar uchun plan mode, skills, hooks), `CLAUDE.md` kerak bo‘ladi va Claude Code `AGENTS.md`ni o‘zi o‘qimay qo‘yadi. Bunday holda `CLAUDE.md` ichiga `@AGENTS.md` satri bilan `AGENTS.md`ni kiriting; bu usul sentabrgacha qanday ishlagan bo‘lsa, shunday ishlaydi. Eski Claude Code versiyalarida ham qo‘l keladi. Buni quyida batafsil tushuntiraman.

## @AGENTS.md faylini CLAUDE.md ichiga qanday import qilish mumkin?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Loyihada `CLAUDE.md` bo‘lsa, import kerak: u mavjud bo‘lganda Claude Code sukut bo‘yicha `AGENTS.md`ni o‘zi o‘qimaydi. Sozlash uchun `CLAUDE.md` faylining yuqori qismiga `@AGENTS.md` satrini yozing. Claude Code seansni boshlaganda `AGENTS.md` tarkibini shu satr o‘rniga joylashtiradi va hosil bo‘lgan matnni yagona fayldek o‘qiydi. Importdan keyin faqat Claude’ga tegishli qoidalar yozilgan “Claude Code” bo‘limini qo‘shishingiz mumkin. Importlar nisbiy va mutlaq yo‘llar bilan ishlaydi va to‘rt darajagacha ichma-ich bo‘lishi mumkin.

</div>

Rasmiy hujjatlardagi minimal ishlaydigan misol:

```markdown
@AGENTS.md

## Claude Code

Use plan mode for changes under `src/billing/`.
```

Nima sodir bo‘ladi? Birinchi satr, `@AGENTS.md`, import direktivasi. Claude Code seans boshida `CLAUDE.md`ni tahlil qilganda bu importni topib, uning o‘rniga `AGENTS.md`ning butun tarkibini joylashtiradi. Keyin `## Claude Code` sarlavhasi keladi: u oddiy markdown, lekin “Claude’ga xos qo‘shimchalar” bo‘limi vazifasini bajaradi. Undagi qoida faqat Claude Code uchun: billing katalogidagi o‘zgarishlarda plan mode’dan foydalanish. Codex CLI yoki Cursor bu faylni ochmaydi; ular oddiy `AGENTS.md`dan foydalanadi.

Importlar qanday ishlashi haqidagi hujjatlardan iqtibos:

<figure>
<blockquote>
<p>CLAUDE.md fayllari qo‘shimcha fayllarni <code>@path/to/import</code> sintaksisi bilan import qilishi mumkin. Import qilingan fayllar kengaytirilib, ularni ko‘rsatuvchi CLAUDE.md bilan birga seans boshlanganda kontekstga yuklanadi.</p>
</blockquote>
<figcaption>— Anthropic, https://code.claude.com/docs/en/memory</figcaption>
</figure>

Amaliy jihatdan bir nechta tafsilot:

- **Nisbiy va mutlaq yo‘llar.** `@AGENTS.md` importni o‘z ichiga olgan faylga nisbatan olinadi. `@/Users/me/shared/rules.md` yoki `@~/.claude/personal.md` mutlaq yo‘llardir. Men repoga kiritishni istamagan shaxsiy afzalliklarim uchun `@~/.claude/personal.md`dan foydalanaman.
- **To‘rt bosqichli chuqurlik.** `AGENTS.md` `@docs/coding-style.md`ni import qilishi, `coding-style.md` esa yana boshqa faylni import qilishi mumkin; jami to‘rt bosqichgacha. Bu har qanday haqiqiy tuzilma uchun yetarli.
- **Backtick ichida import ishlamaydi.** Matnda `` `@README` `` deb yozilsa, bu import emas, nom tilga olinadi xolos. Bu importlar qanday ishlashini o‘quvchilarga tushuntirganda foydali.
- **Loyiha tashqarisidagi fayllar uchun ruxsat.** Import ishchi katalogdan tashqaridagi faylga, masalan `@~/.claude/personal.md`ga ishora qilsa, Claude Code birinchi marta shu fayllarni ko‘rsatuvchi dialog chiqaradi. Rad etsangiz, tashqi importlar o‘chiriladi va dialog boshqa ko‘rsatilmaydi. Loyiha ildizidagi `@AGENTS.md` dialog chiqarmaydi. Bu aloqasi bo‘lmagan faylni tasodifan kontekstga yuklashdan himoya qiladi.

Ta’riflangan loyihada shu sozlamaga o‘tganimdan so‘ng, `CLAUDE.md` 250 qatordan 60 qatorga qisqardi: `@AGENTS.md` va faqat Claude Code’ga tegishli besh-yetti qoida (xavfli kataloglar uchun plan mode, admin hududida nimaga tegmaslik va commitlarni qanday ifodalash). Umumiy qoidalarning barchasi Codex va Cursor o‘qiydigan `AGENTS.md`da turadi.

## Qachon ramziy havolani, qachon importni tanlash kerak?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Anthropic ikkita usulni taklif qiladi: `@AGENTS.md` orqali import yoki ramziy havola — `ln -s AGENTS.md CLAUDE.md`. Ramziy havola sodda: bu shunchaki taxallus, fayllarni o‘zgartirish shart emas. Ammo uning uchta kamchiligi bor: Windows’da administrator huquqi kerak, `CLAUDE.md`ga Claude’ga xos qoidalarni qo‘sha olmaysiz, Git esa ba’zan diffda ramziy havolani keraksiz fayldek ko‘rsatadi. Import universal usul. Agar Claude’ga xos qoidalaringiz bo‘lmasa, 2.1.277-versiyasidan boshlab ikkalasi ham kerak emas: Claude Code `AGENTS.md`ni o‘zi o‘qiydi.

</div>

Hujjatlarda ramziy havola varianti quyidagicha ko‘rsatilgan:

```bash
ln -s AGENTS.md CLAUDE.md
```

Undan so‘ng Windows haqida ochiq ogohlantirish beriladi:

<figure>
<blockquote>
<p>Agar siz yoki repozitoriyni klonlaydigan boshqa birov Windows’da ishlasa, `@AGENTS.md` importidan foydalaning. U yerda ramziy havola yaratish uchun administrator huquqi yoki Developer Mode kerak; `core.symlinks` yoqilmagan Git esa commit qilingan havolani oddiy matn fayli sifatida oladi, natijada o‘sha nusxada ko‘rsatmalar o‘rniga bir satrli `CLAUDE.md` qoladi.</p>
</blockquote>
<figcaption>— Anthropic, https://code.claude.com/docs/en/memory</figcaption>
</figure>

Taqqoslash jadvali:

| Mezon | `@AGENTS.md` importi | `ln -s` ramziy havolasi |
|----|----|----|
| **Windows’da administrator huquqisiz ishlaydi** | ha | yo‘q (Developer Mode kerak) |
| **Faqat Claude uchun qoidalar qo‘shish mumkin** | ha, importdan keyin | yo‘q, fayl aynan bir xil |
| **Git’da oddiy markdown sifatida ko‘rinadi** | ha | havola sifatida (`core.symlinks`ga bog‘liq) |
| **Bir nechta faylni import qila oladi** | ha, to‘rt bosqichgacha | yo‘q, bittaga-bitta |
| **Claude Code’da keshlash/yaroqsiz deb belgilash** | `CLAUDE.md` uchun odatiy | ishlaydi, lekin ramziy havolalarning meta muammolari bor |
| **Sukut bo‘yicha tanlov** | hammaga mos | faqat platformalararo foydalanish muhim bo‘lmasa |

Ta’riflangan loyihada importlardan foydalanaman. Sabablari:

1.  **Jamoa aralash.** Men Mac’dan foydalanaman; misoldagi jamoa Windows va Mac foydalanuvchilariga taxminan teng bo‘lingan. Repoda ramziy havola bo‘lsa, Developer Mode’siz Windows foydalanuvchilarida u bitta `AGENTS.md` satridan iborat oddiy matn fayli sifatida olinadi. Bu g‘alati xatolarga olib keladi: ba’zan qoidalar ishlaydi, ba’zan yo‘q, sababi esa tushunarsiz.
2.  **Claude’ga xos qoidalar kerak.** `@AGENTS.md`dan keyin `CLAUDE.md` faylimda “Claude Code” bo‘limi bor: arxitektura vazifalarida `--effort high`dan foydalanish, `git push`dan oldin `npm run build`ni ishga tushirish va `/api/v1/deploy`ni qo‘lda chaqirmaslik. Codex bu buyruqlarni tushunmaydi.
3.  **Nosozlikni aniqlash osonroq.** Nimadir noto‘g‘ri bo‘lsa, `CLAUDE.md`ni ochib import va o‘zim kiritgan o‘zgartirishlarni ko‘raman. Ramziy havolada “bu yerda qo‘shilgan” degan belgi yo‘q. Claude Code sozlamalaridagi nosozliklarni aniqlash haqida [xavfsiz rejim qo‘llanmasidan](https://ailoot.ai/blog/uz/claude-code-safe-mode-recovery/) o‘qing.

Agar Claude’ga xos qoidalaringiz bo‘lmasa, 2.1.277-versiyasidan boshlab ramziy havola kerak emas: `CLAUDE.md`ni o‘chiring, Claude Code `AGENTS.md`ni o‘zi o‘qiydi. Jamoada kimdir 2.1.277 dan eski versiyadan foydalanib, yangilana olmasa, ramziy havolani saqlang. Claude’ga xos qoidalaringiz bo‘lsa, o‘nta holatdan to‘qqiztasida import qulayroq.

## Codex, Cursor, Copilot, Windsurf va Gemini CLI nimalarni o‘qiydi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Har bir vosita o‘z faylini, ba’zan bir nechta faylni o‘qiydi. Claude Code `CLAUDE.md`ni o‘qiydi, 2026-yil sentabridan boshlab esa loyihada `CLAUDE.md` bo‘lmasa, `AGENTS.md`ni ham o‘qiydi. Codex CLI `AGENTS.md` va `AGENTS.override.md`ni o‘qiydi. Cursor eski `.cursorrules` formatini yoki yangi `.cursor/rules/*.mdc`ni o‘qiydi; 2026-yil yozidan beri `AGENTS.md`ni ham o‘qiydi. Copilot `.github/copilot-instructions.md` yoki `.github/instructions/*.instructions.md`ni o‘qiydi. Windsurf eski `.windsurfrules` yoki yangi `.windsurf/rules/`ni o‘qiydi. Gemini CLI `GEMINI.md`ni o‘qiydi. Aider va Cline `AGENTS.md`ni allaqachon qo‘llab-quvvatlaydi.

</div>

Yettita asosiy vosita xaritasi (har bir vositaning rasmiy hujjatlari asosida):

| Vosita | Asosiy ko‘rsatmalar fayli | Muqobillar | AGENTS.md o‘qiladimi? |
|----|----|----|----|
| **Claude Code** | `CLAUDE.md` | `~/.claude/CLAUDE.md`, `./.claude/CLAUDE.md`, boshqariladigan siyosat | ha, loyihada `CLAUDE.md` bo‘lmasa (2.1.277 dan boshlab), aks holda import orqali |
| **Codex CLI** (OpenAI) | `AGENTS.md` | `AGENTS.override.md` | ha (bevosita) |
| **Cursor** | `.cursor/rules/*.mdc` | `.cursorrules` (eskirgan) | ha |
| **GitHub Copilot** | `.github/copilot-instructions.md` | `.github/instructions/*.instructions.md` | kengaytmalar orqali |
| **Windsurf** | `.windsurf/rules/` | `.windsurfrules` (eskirgan) | ha |
| **Gemini CLI** | `GEMINI.md` | \- | yo‘q |
| **Aider, Cline, opencode** | `AGENTS.md` | \- | ha (bevosita) |

Bundan qanday xulosa chiqadi? Repozitoriyda `AGENTS.md` bo‘lsa (Claude’ga xos qoidalar kerak bo‘lganda importli `CLAUDE.md` bilan birga), yettita vositaning beshtasi yangilangan ko‘rsatmalarni avtomatik oladi. O‘z fayllari mavjud Cursor va Windsurf’ni hozirgidek qoldirish mumkin (`AGENTS.md`ni ular ham o‘qiydi), yoki ularga `@AGENTS.md` importini qo‘shish mumkin, ammo sintaksislari farq qiladi va har doim ham qo‘llab-quvvatlanmaydi.

Yangi loyiha uchun eng sodda strategiya:

1.  **Barcha umumiy qoidalarni `AGENTS.md`ga joylashtiring** — qoidalarning 95 foizi shu yerda bo‘ladi.
2.  **Faqat Claude uchun qoidalar kerak bo‘lsa, `CLAUDE.md` yarating:** birinchi satrga `@AGENTS.md` yozing, keyin Claude’ga xos qoidalar bo‘limini qo‘shing. Bunday qoidalar bo‘lmasa, `CLAUDE.md` kerak emas; Claude Code 2.1.277-versiyasidan beri `AGENTS.md`ni o‘zi o‘qiydi.
3.  **Cursor’ga xos kamdan-kam qoidalar uchun `.cursor/rules/`ni saqlang** (`@Codebase` va `@Docs` buyruqlari).
4.  **Windsurf’da ham shunday qiling:** eski `.windsurfrules`ni unuting; uning sintaksisi uchun andozalar kerak bo‘lgandagina yangi `.windsurf/rules/`dan foydalaning.

Bu yondashuv 20% mehnat bilan foydaning 80%ini beradi. “Antigravity”dagi aralash jamoalarni tartibga solayotganimda, ikkitadan ortiq haqiqat manbaini (umumiy va faqat Claude uchun) yuritish qiyinlashishini tajribamda ko‘rdim. Jamoada kimdir `.cursorrules`ga qoida qo‘shib, `AGENTS.md`ni unutsa, bir haftadan keyin Cursor va Codex bir-biriga zid javob beradi.

## Claude Code’dagi /init mavjud AGENTS.md faylini qanday oladi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

`/init` repodagi mavjud ma’lumotlardan `CLAUDE.md` tuzib, qo‘lda bajariladigan 20–30 daqiqalik ishni tejaydi. Sukut bo‘yicha Cursor qoidalarini (`.cursor/rules/`, `.cursorrules`) va Copilot qoidalarini (`.github/copilot-instructions.md`) oladi; `CLAUDE_CODE_NEW_INIT=1` rejimida esa `AGENTS.md`, `.windsurfrules` va `.clinerules`ni o‘qiydi. Shu rejim interaktiv, bir necha bosqichli jarayonni ham boshlaydi: savollar beradi, subagent orqali kodni o‘rganadi va yozishdan oldin reja taklif qiladi. 2026-yil sentabridan boshlab `AGENTS.md`li loyihada `/init`ning bir kamchiligi bor: yangi `CLAUDE.md` `AGENTS.md`ni bevosita o‘qishni o‘chiradi va qoidalar ikki faylda qoladi.

</div>

Anthropic hujjatlarida `/init` quyidagicha ta’riflangan:

<figure>
<blockquote>
<p><code>/init</code> ishga tushganda boshqa vositalarning ko‘rsatmalar fayllarini o‘qib, tegishli qismlarini yaratilayotgan <code>CLAUDE.md</code>ga ko‘chiradi: Cursor qoidalari `.cursor/rules/` yoki `.cursorrules`dan, Copilot qoidalari `.github/copilot-instructions.md`dan; `CLAUDE_CODE_NEW_INIT=1` bo‘lsa, qo‘shimcha ravishda `AGENTS.md`, `.devin/rules/`, `.windsurf/rules/` yoki `.windsurfrules`, shuningdek `.clinerules`dan.</p>
</blockquote>
<figcaption>— Anthropic, https://code.claude.com/docs/en/memory</figcaption>
</figure>

Amalda bu nimani anglatadi? Men ta’riflagan repoda Cursor’ni sinab ko‘rgan paytimdan qolgan `.cursorrules` (taxminan 80 qator) va qo‘lda tuzilgan `AGENTS.md` (120 qator) bor edi. `claude /init`ni ishga tushirganimda, buyruq ikkala faylni olib, o‘xshash qoidalarni birlashtirdi va bir daqiqada tartibli `CLAUDE.md` tuzdi. Keyin uni tekshirib, ozgina tahrir qildim: eskirgan bandlarni olib tashlab, sarlavhali tuzilma qo‘shdim. Bu noldan qayta yozishdan tezroq bo‘ldi.

`/init` `AGENTS.md`ni ham o‘qiydigan interaktiv rejimni yoqish uchun muhit o‘zgaruvchisidan foydalaniladi:

```bash
CLAUDE_CODE_NEW_INIT=1 claude
```

`/init` ishga tushgach, Claude bir qator aniqlashtiruvchi savollar beradi: qaysi artefaktlarni sozlash (`CLAUDE.md`, skills, hooks), loyihada qaysi texnologiyalar to‘plami bor va testlar uchun qaysi buyruqlardan foydalanish. Keyin subagent kod bazasini `package.json`, `README.md` va konfiguratsiya fayllarini o‘qib o‘rganadi hamda yetishmayotgan qismlarni to‘ldiradi. Yakunda saqlashdan oldin tahrirlashingiz mumkin bo‘lgan taklifni ko‘rsatadi. Loyiha boshida Claude Code’ni sozlash haqida [alohida qo‘llanmaga](https://ailoot.ai/blog/uz/spec-kit-claude-code-spec-driven-development/) qarang.

Endi kamchiligi haqida. Loyihada faol `AGENTS.md` bo‘lsa, `/init` uning yonida qoidalaridan nusxa olingan `CLAUDE.md` yaratadi. Shundan boshlab Claude Code sukut bo‘yicha faqat `CLAUDE.md`ni o‘qiydi, demak yana ikkita haqiqat manbai paydo bo‘ladi: siz `AGENTS.md`ni yangilaysiz, Claude esa eski nusxadan foydalanishda davom etadi. `/import` buyrug‘i ham shunga o‘xshash ish qiladi: `AGENTS.md`ning bir martalik nusxasini `CLAUDE.md` oxiriga qo‘shadi. Bitta manbani saqlash uchun `/init`dan keyin `CLAUDE.md`ning birinchi satriga `@AGENTS.md` importini qo‘ying va `AGENTS.md`dagi qoidalarni takrorlaydigan hamma narsani `CLAUDE.md`dan olib tashlang.

`/init` yangi loyiha yoki Cursor yoxud Copilot’dan ko‘chirayotgan loyiha uchun to‘g‘ri boshlang‘ich nuqta. Internetdan “eng yaxshi CLAUDE.md andozasi”ni qidirish shart emas — Anthropic repodagi mavjud ma’lumotlarni allaqachon hisobga oladi. Loyihada faol `AGENTS.md` bo‘lsa va Claude’ga xos qoidalar bo‘lmasa, `/init` kerak emas: Claude Code `AGENTS.md`ni o‘zi o‘qiydi.

## Umumiy va Claude’ga xos ko‘rsatmalarni qanday ajratish kerak?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Har qanday AI agent tushunadigan qoidalarni `AGENTS.md`ga yozing: nimaga tegmaslik, branch’larni qanday nomlash, `.env`da maxfiy ma’lumot borligi va testlar uchun qaysi buyruqlardan foydalanish. Claude Code’ga xos qoidalarni `CLAUDE.md`ga (importdan keyin) yozing: plan mode, skills, hooks, skill havolalari va versiyaga qarab model nomlari. Farqi oddiy: qoida “Claude bajarishi kerak” deb boshlansa, u `CLAUDE.md`ga tegishli. “Vosita bajarishi kerak” deb boshlansa, `AGENTS.md`ga tegishli.

</div>

Men ularni shu tamoyil asosida ajrataman. `AGENTS.md`ga kiritiladigan umumiy qoidalar:

- **Kodda nimaga tegmaslik.** `.env`, `node_modules`, `prisma/migrations` kataloglari (faqat `prisma migrate` orqali), `.next/`, `.git/`.
- **Narsalarni nomlash.** Branch’lar: `feat/`, `fix/`, `chore/`. Commitlar: qisqa tavsif bilan `feat:`, `fix:`, `docs:` prefikslari. Komponent fayllari `kebab-case` formatida.
- **Test/lint buyruqlari.** `npm run build`, `npm run lint`, `npm test`. `git push`dan oldin ishga tushiriladigan buyruq.
- **Arxitektura tamoyillari.** `src/lib/` va `src/components/` ichiga nimalar kirishi, biznes mantiqi qayerda bo‘lishi va interfeys qayerda joylashishi.
- **Xavfsizlik.** Maxfiy ma’lumotlarni hech qachon commit qilmang. Ishlab turgan ma’lumotlar bazasiga faqat `prod-psql` orqali kiring. Ishlab turgan tizimga SSH orqali faqat `prod` taxallusi bilan kiring, `root@IP` bilan emas.

Claude’ga xos, `CLAUDE.md`ga (`@AGENTS.md`dan keyin) kiritiladigan qoidalar:

- **Plan mode.** Xavfli kataloglardagi o‘zgarishlar uchun (masalan, `src/billing/`) `plan mode`dan foydalaning.
- **Sa’y-harakat darajasi.** Arxitektura vazifalarida `--effort high`, odatiy ishda esa `medium`dan foydalaning.
- **Skills.** Turli vaziyatlarda qaysi AI agentlar va ko‘nikmalarni ishga tushirish. Masalan: “qo‘llanma ustida ishlaganda `build-masterskaya-guide` skill’ini ishga tushiring.”
- **Claude xotirasi.** Avtomatik xotiraga va `CLAUDE.local.md`ga nimalarni yozish. Claude xotirasi haqida batafsil ma’lumot uchun [Memory va CLAUDE.md bo‘yicha qo‘llanmaga](https://ailoot.ai/blog/uz/claude-memory-claude-md-auto-memory/) qarang.
- **Hooks.** Agar `.claude/settings.json`da hooks sozlangan bo‘lsa, `CLAUDE.md`da ularning nima qilishini tushuntiring (Codex va Cursor ular haqida bilmaydi va bilishi shart ham emas).
- **Skills va buyruqlar.** Men tez-tez ishlatadigan slash-buyruqlar ro‘yxati (`/init`, `/cd`, `/memory`, `/plan`).

Chegara doim ham aniq emas. Masalan, “`main`ga `git push --force`ni hech qachon ishga tushirmang” — aniq umumiy qoida, shuning uchun `AGENTS.md`ga yoziladi. Ammo “issiq branch’ga `git push` qilganda avval plan mode’dan foydalaning” qoidasi Claude Code’ga xos, shu bois `CLAUDE.md`ga tegishli. Sinov savoli: “Ertaga Claude Code’ni olib tashlab, faqat Codexni qoldirsam, bu qoida baribir amal qiladimi?” Ha bo‘lsa, `AGENTS.md`ga yozing. Yo‘q bo‘lsa, `CLAUDE.md`ga yozing.

## AGENTS.md ichiga, CLAUDE.md yoki .claude/rules ichiga nimalar kiradi?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Katta loyihada bitta `AGENTS.md` yetarli emas — u haddan tashqari kattalashadi va har bir agent kontekstiga keraksiz ma’lumotlar kirib ketadi. Yechim — mavzular bo‘yicha alohida fayllar va yo‘lga qarab faollashadigan YAML frontmatter `paths:` maydoniga ega `.claude/rules/` katalogi. Masalan, API qoidasi Claude `src/api/`da ishlagandagina qo‘llanadi. Bu kontekst oynasi joyini ancha tejaydi. Cursor uchun muqobili `.cursor/rules/`, Windsurf uchun esa `.windsurf/rules/`.

</div>

Qoidalar 200 qatordan oshsa, ularni bo‘lish vaqti keldi. Anthropic hujjatlari har bir faylni 200 qator atrofida saqlashni tavsiya qiladi, chunki uzun `CLAUDE.md` fayllarida Claude qoidalarga tobora kamroq amal qila boshlaydi: ularni o‘qiyotgandek ko‘rinadi, ammo kamroq bajaradi.

Katta loyiha uchun men foydalanadigan tuzilma:

```
my-project/
├── AGENTS.md                    # 100-150 lines, shared
├── CLAUDE.md                    # 30-50 lines: @AGENTS.md + Claude-only
└── .claude/
    ├── CLAUDE.md                # alternative to root file, same file
    └── rules/
        ├── api.md               # with paths: ['src/api/**']
        ├── components.md        # with paths: ['src/components/**']
        ├── testing.md           # without paths, always active
        └── security.md          # without paths, always active
```

`.claude/rules/` ichidagi har bir faylda frontmatter bo‘lishi mumkin:

```markdown
---
paths:
  - "src/api/**/*.ts"
---

# API rules
- Every endpoint validates input with zod
- Errors use the standard `{error, code}` format
- OpenAPI comments are required
```

Claude bu qoidalarni faqat shu namunaga mos fayllar bilan ishlaganda yuklaydi. Agar `src/components/Button.tsx`ni o‘zgartirsa, API qoidalari kontekstga qo‘shilmaydi. Shu tariqa kontekst oynasi faqat kerakli ma’lumotlarga sarflanadi. Loyiha faqat `AGENTS.md`ni o‘z ichiga olsa ham `.claude/rules/` katalogi ishlaydi: qoidalar uning yonida yuklanadi va `AGENTS.md`ni bevosita o‘qishni o‘chirmaydi.

Cursor va Windsurf ham `.cursor/rules/` va `.windsurf/rules/` kataloglari orqali shu yondashuvni qo‘llaydi. AGENTS.md standarti bu kataloglarga havola qilishi mumkin, ammo vositalararo sintaksis hali to‘liq barqaror emas. Umumiy qoidalarni `AGENTS.md`da saqlab, yo‘lga bog‘langan qoidalarni `.claude/rules/` va `.cursor/rules/` ichida takrorlash xavfsizroq — bular asosiy qoidalar emas, kamdan-kam maxsus holatlardir.

CLAUDE.md uchun foydali joylashuvlar (eng keng qamrovlidan eng toriga qarab):

| Daraja | Joylashuv | Maqsad |
|----|----|----|
| **Boshqariladigan siyosat** | `/Library/Application Support/ClaudeCode/CLAUDE.md` (Mac), `/etc/claude-code/CLAUDE.md` (Linux) | Korporativ qoidalar, IT/DevOps |
| **Foydalanuvchi** | `~/.claude/CLAUDE.md` | Barcha loyihalar uchun shaxsiy afzalliklar |
| **Loyiha** | `./CLAUDE.md` yoki `./.claude/CLAUDE.md` | Loyiha jamoasi qoidalari |
| **Mahalliy** | `./CLAUDE.local.md` (`.gitignore` ichida) | Muayyan loyiha uchun shaxsiy afzalliklar |

Masalan, `~/.claude/CLAUDE.md`da ikkita qoida bo‘lishi mumkin: “foydalanuvchi afzal ko‘rgan tilda javob bering” va “Ailoot’ni aynan shu tarzda yozing.” Bu qoidalar har bir loyihaga taalluqli, shuning uchun ularni har bir repoda takrorlash shart emas.

Bu to‘rt darajadan faqat loyiha darajasidagi `CLAUDE.md` va `CLAUDE.local.md` `AGENTS.md`ni bevosita o‘qishni o‘chiradi. Shaxsiy `~/.claude/CLAUDE.md` va boshqariladigan siyosat xalaqit qilmaydi; Claude Code ularni `AGENTS.md` bilan birga o‘qiydi.

## Loyihangizdagi AGENTS.md eskirib qolgan bo‘lsa, nima qilish kerak?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

Agar `AGENTS.md` 2025-yilda Codex yoki Aider uchun tuzilgan va shundan beri tahrirlanmagan bo‘lsa, loyihani Claude Code’da oching va Claude’dan faylni tahrirlashni so‘rang. AGENTS.md doimiy ravishda yangilanib turadigan hujjat; Linux Foundation spetsifikatsiyasi ham yangilanadi. Uni dolzarb saqlashning asosiy qoidasi: har bir qoida “Claude/Codex’ga qayta-qayta aytishdan charchaganim nima?” degan savolga javob berishi kerak. Javob bermasa, arxivlang.

</div>

Ta’riflangan loyihada menda 2025-yil mayidan qolgan `AGENTS.md` bor edi — 180 qator, ko‘pi eskirgan (o‘zgargan Anthropic API endpointlari haqida yozilgan; endi mavjud bo‘lmagan `claude --tools` sintaksisidagi misollar; eskirgan tuzilishga ega `~/.claude/projects/` haqidagi qoidalar).

Uni yangilashda foydalangan rejam:

1.  **`claude` bilan plan mode’da ko‘rib chiqing.** Repoda `claude --safe-mode`ni ishga tushiraman va shunday so‘rayman: “`AGENTS.md`ni qayta o‘qib, eskirgan yoki takrorlangan bandlar ro‘yxatini taklif qil. Tahrir qilma; faqat ro‘yxatni ber.” Ikki daqiqada ko‘rib chiqish uchun 23 banddan iborat ro‘yxat oldim.
2.  **Ochiq-oydin eskirgan bandlarni olib tashlang.** 23 banddan 9 tasi aniq eskirgan — buyruq sintaksisi, endpointlar va flag nomlari. U satrlarni o‘chirdim.
3.  **Takrorlarni birlashtiring.** Yana 6 band turli so‘zlar bilan bir narsani takrorlagan (“majburan yuborma”, “`--force`ni hech qachon ishlatma”, “`git push -f`dan qoch”). Ularni bitta satrga birlashtirdim.
4.  **Yangi bandlar qo‘shing.** O‘tgan oy davomida Claude/Codex muntazam xato qilayotganini kuzatgan holatlarimni “har bir xato namunasi uchun bitta satr” qoidasiga rioya qilib qo‘shdim. Natijada 8 ta yangi band chiqdi.
5.  **Yakuniy ko‘rib chiqish uchun subagent ishga tushiring.** “Qarama-qarshiliklar, noaniqliklar va takrorlarni top” degan ko‘rsatma bilan Claude’dan tekshiruv so‘radim. U aniqroq yozish mumkin bo‘lgan uchta jumlani topdi. Ularni tuzatdim.

Bir soatdan keyin `AGENTS.md` 110 qator bo‘ldi, yangilandi va har bir satrini o‘zim bilardim. Undan 30 qatorli `CLAUDE.md` tuzish oson bo‘ldi. Shundan keyin Codex testlarga sezilarli darajada e’tiborliroq bo‘ldi — menimcha, uning “g‘alati” qarorlarining ayrimlari u halol ravishda amal qilib kelgan eskirgan ko‘rsatmalardan kelib chiqqan.

Doimiy yangilanib turadigan `AGENTS.md`ning asosiy tamoyillari:

- **Har bir qoida takrorlanadigan xatoga javob beradi.** Oy davomida biror qoida xayolimga kelmagan bo‘lsa, uni saqlab qolishdan foyda yo‘q.
- **Nazariya emas, buyruq tarzida yozing.** “Ikki bo‘sh joydan foydalaning” — qoida. “Kod uslubi chiroyli bo‘lsin” — qoida emas.
- **Aniqlik umumiy gaplardan ustun.** “`git push`dan oldin `npm run build`ni ishga tushiring” — qoida. “O‘zgarishlarni sinang” — qoida emas.

## Bu sozlamada nimalar mutlaqo ISHLAMAYDI?

<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway">

Asosiy xulosa

`@AGENTS.md`ni import qilish turli vositalarni yagona tizimdek ishlashga majbur qilmaydi. Har birining o‘ziga xos jihatlari bor: Codex CLI `.claude/rules/` yoki hooks’ni bilmaydi. Cursor’da matn kiritishni tugallaydigan o‘z avto-to‘ldirish mexanizmi bor; u matnni tugatayotganda CLAUDE.md’ni o‘qimaydi. Copilot `.github/copilot-instructions.md`ga amal qiladi; faqat AGENTS.md’dagi qoidalar unga yetarli emas. Bu “bitta fayl = bitta xulq” degani emas, balki “asosiy qoidalar uchun bitta manba, so‘ng har bir vositaning o‘z qo‘shimchalari” degani.

</div>

Bu sozlama bilan olti oy ishlash davomida qiyinchilik bilan o‘rgangan bir nechta narsam:

**1. Cursor’ning avto-to‘ldirishi AGENTS.md’dan foydalanmaydi.** Cursor tahrirlagichda satrni tugallashni taklif qilganda, `AGENTS.md`ni real vaqtda o‘qimaydi — alohida tezkor mexanizm ishlaydi. AGENTS.md’dagi qoidalar faqat Cursor ichida chat orqali so‘rov yuborganingizda ahamiyatga ega. Demak, AGENTS.md’ga “`var` ishlatma, `const`dan foydalan” deb yozish avto-to‘ldirishga ta’sir qilmaydi; buni ESLint yoki TypeScript konfiguratsiyasi orqali sozlash kerak.

**2. AGENTS.md’dagi Claude Code hooks Codex’da ishlamaydi.** `.claude/settings.json`da muayyan amalni to‘sish uchun PreToolUse hook sozlangan bo‘lsa, bu ma’lumot faqat Claude uchun foydali. Codex hooks haqida bilmaydi; uning nazarida “vosita o‘zi qaror qiladi.” `AGENTS.md`ga “X’ni qilma”, importdan keyin `CLAUDE.md`ga esa “X’ni jismonan to‘sadigan hook bor” deb yozish ma’qul.

**3. Copilot va `.github/copilot-instructions.md`.** GitHub Copilot o‘z faylini o‘qiydi, AGENTS.md’ni esa hanuz yaxshi o‘qimaydi. Jamoangiz Copilot’dan faol foydalansa, qoidalarning qisqaroq nusxasi bilan alohida `.github/copilot-instructions.md` qo‘shing yoki AGENTS.md’ni tushunadigan [Copilot kengaytmalaridan](https://github.com/marketplace?type=apps&category=copilot-extensions) foydalaning. Bu tez o‘zgarib bormoqda, shuning uchun uch-olti oydan keyin vaziyat boshqacha bo‘lishi mumkin.

**4. Git ramziy havolani CLAUDE.md o‘zgarishi sifatida kuzatmaydi.** `ln -s AGENTS.md CLAUDE.md`ni ishga tushirib, bir haftadan keyin `AGENTS.md`ni yangilasangiz, Git faqat `AGENTS.md` uchun diff ko‘rsatadi. Bu odatiy hol, ammo pull requestni ko‘rayotgan hamkasbingiz `CLAUDE.md` ham (ramziy havola orqali) yangilanganini sezmasligi mumkin. Yechim: pull request tavsifida “`AGENTS.md` yangilandi; Claude Code ramziy havola orqali ayni faylni ko‘radi” deb aniq yozing.

**5. Chuqur importlarni tuzatishda nosozlikni aniqlash qiyin.** Agar `AGENTS.md` `@docs/coding-style.md`ni, u esa `@docs/typescript.md`ni import qilsa va qoidalar o‘zaro zid kelsa, nosozlikni aniqlash qiyin. Men importlarni bir darajada (`CLAUDE.md` → `AGENTS.md`) saqlab, chuqurroq ichma-ich joylashtirmayman. Anthropic qaysi fayllar yuklanganini log qiladigan `InstructionsLoaded` hook’ini taqdim etadi — qatlamli sozlamalarni tuzatishda foydali. Eslatma: hook import yoki ramziy havola orqali kiritilgan `AGENTS.md` uchun ishlaydi, lekin Claude Code o‘zi o‘qigan `AGENTS.md` uchun ishlamaydi.

<div class="section" role="doc-bibliography" aria-label="Manbalar">

### Manbalar

- [Claude Code Memory hujjatlari — AGENTS.md bo‘limi](https://code.claude.com/docs/en/memory#agents-md) — Claude Code `AGENTS.md`ni o‘zi qachon o‘qishi, Project instructions sozlamalari, importlar, ramziy havolalar va `/init` xatti-harakati haqida.
- [Claude Code Memory hujjatlari — qo‘shimcha fayllarni import qilish](https://code.claude.com/docs/en/memory#import-additional-files) — `@path/to/file` sintaksisi, to‘rt bosqichli chuqurlik, nisbiy va mutlaq yo‘llar.
- [agents.md — Linux Foundation standarti](https://agents.md/) — rasmiy AGENTS.md standarti va uni qo‘llab-quvvatlovchi vositalar ro‘yxati.
- [Cursor Rules hujjatlari](https://docs.cursor.com/context/rules-for-ai) — Cursor nimalarni o‘qishi (`.cursor/rules/*.mdc`, AGENTS.md).
- [GitHub Copilot uchun maxsus ko‘rsatmalar](https://docs.github.com/en/copilot/customizing-copilot/adding-custom-instructions-for-github-copilot) — `.github/copilot-instructions.md` formati.
- [Linux Foundation’dagi AGENTS.md spetsifikatsiyasi](https://aaif.io/projects/agents-md/) — doimiy yangilanadigan spetsifikatsiya.

</div>

Bir oqshomda sozlanadigan vibe-coding to‘plami: **AI klon + Ikkinchi miya + kontekst muhandisligi**. 



[Ailoot](https://ailoot.ai/) bilan tanishing.

## Ko‘p beriladigan savollar

### Qachon symlink o‘rniga import ishlataman?

Claude uchun alohida qo‘shimchalar kerak bo‘lsa yoki hamkasblar Windows ishlatsa, `CLAUDE.md` ichida `@AGENTS.md` ishlating. Symlink ikkala nomni bir mazmunga bog‘laydi, alohida Claude bo‘limini saqlamaydi.

### Umumiy ko‘rsatmalar yuklanganini qanday tekshiraman?

`/memory` ni ochib, ko‘rsatma fayllari ro‘yxatini tekshiring. Sozlamangizda `CLAUDE.md` yoki `CLAUDE.local.md` AGENTS.md bevosita yuklanishini to‘ssa, import qo‘shing yoki ikkalasini yuklaydigan rejimni tanlang. Keyin yangi seans boshlang.


## Ailoot · Kompaniya va uning loyihalar portfeli

Ailoot to‘plangan faoliyat tajribasi, keng mijozlar bazasi, barqaror xizmat va doimiy KPI nazoratiga tayanadi.

Kompaniya va uning loyihalar portfeli: millionlab mijozlar; oylik sotuvlar hajmi milliardlarda.

Ailoot bu faoliyat tajribasini mijozlar mahsulotlari, agentlar, ilovalar va avtomatlashtirishlarda AI imkoniyatlariga API orqali kirishni ta’minlashda qo‘llaydi.
