Tinklaraštis

Vienas instrukcijų failas Claude Code, Codex ir Cursor 2026 m.

Markdown

Vienas Claude Code, Codex ir Cursor informacijos šaltinis 2026 m.: kada Claude Code pats skaito AGENTS.md, kaip importuoti @AGENTS.md į CLAUDE.md, naudoti simbolinę nuorodą ir /init.

Skaityti visą straipsnį

Informacijos apie paslaugą rasite Ailoot dokumentacijoje.

Kas pasikeičia, kai kartu naudojate Claude Code, Codex ir Cursor?

Svarbiausia mintis

2026 m. tipinio vibe coderio sąranką sudaro ne vienas, o 3–5 įrankiai. Claude Code naudojamas kaip pagrindinis įrankis, Codex – ilgoms autonominėms užduotims, Cursor – greitiems pakeitimams IDE. Kiekvienas turi savo instrukcijų failą: CLAUDE.md, AGENTS.md, .cursorrules. Jei juos sinchronizuojate rankiniu būdu, tą pačią eilutę redaguojate penkiose vietose, pamirštate atnaujinti Cursor, o po savaitės Claude ir Codex į tą pačią užklausą pateikia skirtingus atsakymus.

Aprašytame pavyzdyje Claude Code yra pagrindinis įrankis, o Codex ir Cursor naudojami konkrečioms užduotims. Mano CLAUDE.md yra apie 250 eilučių instrukcijų: ką ir kokia tvarka skaityti, ko negalima liesti, kokias komandas naudoti diegimui ir kokių laikytis įrašų formato taisyklių. Kai pirmą kartą projekte išbandžiau Codex CLI, jis nežinojo jokių taisyklių: paleido git push --force, knaisiojosi po .env ir neatsargiai pervadino failus.

Iš pradžių CLAUDE.md ranka nukopijavau į AGENTS.md. Po dviejų savaičių pastebėjau, kad projekte jau buvo keturios tų pačių instrukcijų versijos: CLAUDE.md, AGENTS.md, .cursorrules ir .windsurf/rules/. Visos šiek tiek skyrėsi. Tai ne Claude ar Cursor problema, o įprasti spąstai sistemose, kuriose yra keli pagrindiniai informacijos šaltiniai. Apie šią problemą plačiau rašau daugelio agentų darbo vadove.

2026 m. birželį Anthropic Claude Code atminties dokumentacijoje pateikė vieną atsakymą: bendras failas ir jo importas. Nuo 2026 m. rugsėjo Claude Code pats skaito AGENTS.md, jei projekte nėra CLAUDE.md; importo reikia, kai turite būtent Claude skirtų taisyklių. Toliau paaiškinu, kada pakanka vieno AGENTS.md, kaip nustatyti importą ir kaip atskirti bendras taisykles nuo skirtų tik Claude.

Ar Claude Code pats skaito AGENTS.md?

Svarbiausia mintis

Taip, pradedant versija 2.1.277, išleista 2026 m. rugsėjo 18 d., tačiau tik jei darbiniame kataloge arba aukščiau nėra CLAUDE.md, .claude/CLAUDE.md ar CLAUDE.local.md. Jei CLAUDE.md yra, Claude Code pagal numatytuosius nustatymus skaito tik šį failą, o AGENTS.md įtraukiamas eilute @AGENTS.md faile CLAUDE.md arba simboline nuoroda. Elgsena keičiama skiltyje Project instructions, esančioje /config. Iki rugsėjo Claude Code apskritai neskaitė AGENTS.md, tad vienintelis būdas jį įtraukti buvo importuoti.

Iki 2026 m. rugsėjo atsakymas buvo „ne“. Issue #6235, kuriame prašyta palaikyti AGENTS.md, buvo atviras nuo 2025 m. rugpjūčio ir uždarytas 2026 m. rugpjūčio 17 d. Visą tą laiką atminties dokumentacijoje buvo nurodomas vienas sprendimas: sukurti CLAUDE.md ir importuoti į jį AGENTS.md. Pradedant versija 2.1.277, dokumentacijoje rašoma kitaip:

Claude Code gali skaityti AGENTS.md kaip projekto instrukcijas, todėl kitų agentų naudojimui jau paruošta saugykla veikia ir be CLAUDE.md, importo ar konfigūracijos.

— Anthropic, https://code.claude.com/docs/en/memory#agents-md

Kuriuos failus Claude Code perskaitys, priklauso nuo to, kokie failai yra projekte:

Projekto failaiKą skaito Claude Code
AGENTS.md, kai darbiniame kataloge arba aukščiau nėra CLAUDE.md ar CLAUDE.local.mdAGENTS.md
Darbiniame kataloge arba aukščiau yra AGENTS.md ir CLAUDE.md (arba CLAUDE.local.md)Tik CLAUDE.md
CLAUDE.md su eilute @AGENTS.mdCLAUDE.md ir per importą į jį įtrauktą AGENTS.md

Šiai patikrai svarbūs CLAUDE.md, .claude/CLAUDE.md ir CLAUDE.local.md darbiniame kataloge bei visuose aukščiau esančiuose kataloguose. Asmeninis ~/.claude/CLAUDE.md, įmonės valdomas failas ir taisyklės iš .claude/rules/ neįskaičiuojami: jie įkeliami kartu su AGENTS.md.

Jei nėra CLAUDE.md, Claude Code paleidimo metu skaito visus darbiniame kataloge ir aukščiau esančius AGENTS.md bei .claude/AGENTS.md failus, o atidarius failą pakatalogyje – ir jame esantį AGENTS.md. @path importai AGENTS.md faile taip pat veikia. Claude Code neskaito AGENTS.local.md, AGENTS.override.md ar .agents/ katalogo turinio.

Štai keblumas: asmeninis CLAUDE.local.md taip pat įskaičiuojamas. Sukurkite jį savo neįrašytoms taisyklėms laikyti, ir Claude Code tyliai nustos skaityti AGENTS.md. Toliau aprašytas nustatymas tai išsprendžia.

Elgseną galima keisti skiltyje Project instructions, esančioje /config:

NustatymasKą skaito Claude Code
claude-md-or-agents-md (numatytasis)CLAUDE.md, o jei jo ir CLAUDE.local.md nėra – AGENTS.md
claude-md-and-agents-mdAbu failus: kiekviename kataloge pirmiausia CLAUDE.md, tada AGENTS.md
claude-mdTik CLAUDE.md
managed-onlyTik įmonės valdomą CLAUDE.md ir automatinę atmintį

Jei norite išsaugoti CLAUDE.local.md ir kartu naudoti AGENTS.md, pasirinkite claude-md-and-agents-md. Failas nebus perskaitytas du kartus: jei AGENTS.md jau įtrauktas eilute @AGENTS.md arba simboline nuoroda, Claude Code jo neįkelia dar kartą, nepaisant pasirinkto nustatymo.

Ar failas buvo aptiktas, galite patikrinti komanda /memory: pradedant versija 2.1.280, sąraše rodoma AGENTS.md failo vieta. Versijose iki 2.1.277 ir seansuose, kuriuose išjungtas integruotasis agents-md papildinys, Claude Code skaito tik CLAUDE.md, o /config nėra elemento Project instructions. Iki versijos 2.1.281 seansai per Amazon Bedrock ir seansai su išjungta telemetrija veikė taip pat. Pirmajame seanse po atnaujinimo iš senesnės versijos AGENTS.md taip pat gali būti neaptiktas; nuo kito seanso jis veikia.

Ką tai reiškia, jei norite naudoti vieną failą? Jei neturite tik Claude skirtų taisyklių, galite apsieiti be CLAUDE.md: pakanka AGENTS.md, kurį skaitys Claude Code, Codex ir Cursor. Jei tokių taisyklių turite (planavimo režimas rizikingiems katalogams, įgūdžiai, kabliai), jums reikia CLAUDE.md, ir Claude Code nustos pats skaityti AGENTS.md. Tuomet įtraukite AGENTS.md į CLAUDE.md eilute @AGENTS.md; tokia sąranka veikia kaip iki rugsėjo. Ji tinka ir senesnėms Claude Code versijoms. Toliau tai išsamiai paaiškinu.

Kaip importuoti @AGENTS.md į CLAUDE.md?

Svarbiausia mintis

Importo reikia, kai projekte yra CLAUDE.md: jei šis failas yra, Claude Code pagal numatytuosius nustatymus pats neskaito AGENTS.md. Norėdami tai nustatyti, įrašykite eilutę @AGENTS.md į CLAUDE.md failo pradžią. Pradėdamas seansą Claude Code vietoje šios eilutės įterpia AGENTS.md turinį ir skaito rezultatą kaip vieną tekstą. Po importo galite pridėti skiltį „Claude Code“ su tik Claude taikomomis taisyklėmis. Importai veikia su santykiniais ir absoliučiaisiais keliais, juos galima įdėti vieną į kitą iki keturių lygių gyliu.

Minimalus veikiantis pavyzdys iš oficialios dokumentacijos:

@AGENTS.md

## Claude Code

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

Štai kas vyksta. Pirma eilutė @AGENTS.md yra importo direktyva. Pradėdamas seansą Claude Code analizuoja CLAUDE.md, aptinka importą ir jo vietoje įterpia visą AGENTS.md turinį. Toliau pateikta antraštė ## Claude Code yra tiesiog Markdown, tačiau ji žymi skiltį „papildomos taisyklės tik Claude“. Po ja pateikta taisyklė taikoma tik Claude Code: naudoti planavimo režimą keičiant failus atsiskaitymų kataloge. Codex CLI ar Cursor šio failo neatidaro; jie naudoja paprastą AGENTS.md.

Citata iš dokumentacijos apie importų veikimą:

CLAUDE.md failai gali importuoti papildomus failus naudodami sintaksę @path/to/import. Importuoti failai išplečiami ir įkeliami į kontekstą seanso pradžioje kartu su juos nurodančiu CLAUDE.md.

— Anthropic, https://code.claude.com/docs/en/memory

Keletas praktinių detalių:

  • Santykiniai ir absoliutieji keliai. @AGENTS.md kelias skaičiuojamas nuo failo, kuriame yra importas. @/Users/me/shared/rules.md arba @~/.claude/personal.md yra absoliutieji keliai. Asmeninėms nuostatoms, kurių nenoriu įrašyti į saugyklą, naudoju @~/.claude/personal.md.
  • Keturių lygių gylis. AGENTS.md gali importuoti @docs/coding-style.md, o coding-style.md – dar vieną failą, ir taip iki keturių lygių. To pakanka bet kokiai realiai struktūrai.
  • Atgalinės kabutės blokuoja importą. Jei tekste parašyta `@README`, tai tik paminėtas pavadinimas, o ne importas. Tai naudinga aiškinant skaitytojams, kaip veikia importai, netyčia jų nesukeliant.
  • Už projekto ribų esančių failų patvirtinimas. Jei importas nurodo į vietą už darbinio katalogo ribų, pavyzdžiui, @~/.claude/personal.md, Claude Code pirmą kartą parodo dialogą su tų failų sąrašu. Jei atsisakote, išoriniai importai lieka išjungti, o dialogas daugiau nerodomas. @AGENTS.md projekto šaknyje dialogo nesukelia. Taip apsisaugoma nuo netyčinio nesusijusio failo įkėlimo į kontekstą.

Aprašytame projekte perėjus prie šios sąrankos, mano CLAUDE.md sutrumpėjo nuo 250 iki 60 eilučių: liko @AGENTS.md ir penkios–septynios tik Claude Code taikomos taisyklės (planavimo režimas rizikingiems katalogams, ko neliesti administravimo srityje ir kaip formuluoti įrašus). Visa bendra informacija yra AGENTS.md, kurį skaito Codex ir Cursor.

Kada rinktis simbolinę nuorodą, o kada – importą?

Svarbiausia mintis

Anthropic siūlo du būdus: importą per @AGENTS.md arba simbolinę nuorodą ln -s AGENTS.md CLAUDE.md. Simbolinė nuoroda paprastesnė – tai tik slapyvardis, nereikalaujantis keisti failų. Tačiau ji turi tris trūkumus: „Windows“ reikia administratoriaus teisių, į CLAUDE.md negalima įtraukti tik Claude skirtų taisyklių, o Git kartais rodo simbolinę nuorodą kaip šiukšlę pakeitimų skirtume. Importas yra universalus būdas. Jei neturite tik Claude skirtų taisyklių, nuo versijos 2.1.277 nereikia nė vieno iš jų: Claude Code pats skaitys AGENTS.md.

Dokumentacijoje simbolinės nuorodos pasirinkimas pateiktas taip:

ln -s AGENTS.md CLAUDE.md

Iškart pateikiamas atviras įspėjimas dėl „Windows“:

Jei jūs ar kiti saugyklą klonuojantys žmonės naudoja „Windows“, rinkitės importą @AGENTS.md. Simbolinei nuorodai sukurti reikia administratoriaus teisių arba Developer Mode, o jei Git išjungta core.symlinks parinktis, įrašyta nuoroda iškeliama kaip paprastas tekstinis failas: vietoj instrukcijų tame egzemplioriuje lieka vienos eilutės CLAUDE.md.

— Anthropic, https://code.claude.com/docs/en/memory

Palyginimo lentelė:

Kriterijus@AGENTS.md importasSimbolinė nuoroda ln -s
Veikia „Windows“ be administratoriaus teisiųtaipne (reikia Developer Mode)
Galima pridėti tik Claude taikomas taisyklestaip, po importone, failas identiškas
Git rodoma kaip įprastas Markdowntaipkaip nuoroda (priklauso nuo core.symlinks)
Galima importuoti kelis failustaip, iki keturių lygiųne, tik vienas su vienu
Spartinančioji atmintinė / negaliojančių duomenų apdorojimas Claude Codestandartinis CLAUDE.md veikimasveikia, tačiau simbolinės nuorodos turi metaduomenų keblumų
Numatytasis pasirinkimastinka visiemstik jei nesvarbus naudojimas įvairiose platformose

Aprašytame projekte naudoju importus. Priežastys:

  1. Komanda dirba mišrioje aplinkoje. Aš naudoju „Mac“, o pavyzdyje komanda maždaug po lygiai pasidalijusi tarp „Windows“ ir „Mac“. Jei saugykloje atsiranda simbolinė nuoroda, „Windows“ naudotojai be Developer Mode ją išsiregistruos kaip paprastą tekstinį failą, kurio vienintelė eilutė – AGENTS.md. Dėl to kyla keistų klaidų: kartais taisyklės veikia, kartais ne, ir neaišku kodėl.
  2. Noriu tik Claude taikomų taisyklių. Po @AGENTS.md mano CLAUDE.md yra skiltis „Claude Code“ su taisyklėmis: architektūros užduotims naudoti --effort high, prieš git push paleisti npm run build ir ranka nekviesti /api/v1/deploy. Codex šių komandų nesupranta.
  3. Lengviau derinti. Kai kas nors nepavyksta, atidarau CLAUDE.md ir matau importą bei savo pakeitimus. Simbolinė nuoroda nepaaiškina, kas čia pridėta. Daugiau apie Claude Code nustatymų derinimą skaitykite saugaus režimo vadove.

Jei neturite tik Claude skirtų taisyklių, nuo versijos 2.1.277 simbolinės nuorodos nebereikia: ištrinkite CLAUDE.md, ir Claude Code pats skaitys AGENTS.md. Simbolinę nuorodą palikite tik tuo atveju, jei komandoje yra žmogus, naudojantis senesnę nei 2.1.277 versiją ir negalintis atsinaujinti. Jei turite tik Claude skirtų taisyklių, dešimčia atvejų iš dešimties patogesnis importas.

Ką skaito Codex, Cursor, Copilot, Windsurf ir Gemini CLI?

Svarbiausia mintis

Kiekvienas įrankis skaito savo failą, kartais – daugiau nei vieną. Claude Code skaito CLAUDE.md, o nuo 2026 m. rugsėjo taip pat skaito AGENTS.md, jei projekte nėra CLAUDE.md. Codex CLI skaito AGENTS.md ir AGENTS.override.md. Cursor skaito senesnio formato .cursorrules arba naujesnius .cursor/rules/*.mdc, o nuo 2026 m. vasaros taip pat skaito AGENTS.md. Copilot skaito .github/copilot-instructions.md arba .github/instructions/*.instructions.md. Windsurf skaito senesnį .windsurfrules arba naujesnį .windsurf/rules/. Gemini CLI skaito GEMINI.md. Aider ir Cline jau palaiko AGENTS.md.

Septynių pagrindinių įrankių apžvalga (remiantis oficialia kiekvieno įrankio dokumentacija):

ĮrankisPagrindinis instrukcijų failasAlternatyvosSkaito AGENTS.md?
Claude CodeCLAUDE.md~/.claude/CLAUDE.md, ./.claude/CLAUDE.md, valdoma politikataip, jei projekte nėra CLAUDE.md (nuo 2.1.277), kitu atveju per importą
Codex CLI (OpenAI)AGENTS.mdAGENTS.override.mdtaip (tiesiogiai)
Cursor.cursor/rules/*.mdc.cursorrules (nebenaudojamas)taip
GitHub Copilot.github/copilot-instructions.md.github/instructions/*.instructions.mdper plėtinius
Windsurf.windsurf/rules/.windsurfrules (nebenaudojamas)taip
Gemini CLIGEMINI.md-ne
Aider, Cline, opencodeAGENTS.md-taip (tiesiogiai)

Ką tai reiškia? Jei saugykloje yra AGENTS.md (ir CLAUDE.md su importu, kai reikia Claude skirtų taisyklių), penki iš septynių įrankių automatiškai gauna atnaujintas instrukcijas. Cursor ir Windsurf, turintys savus failus, gali likti kaip yra (AGENTS.md taip pat skaitomas) arba į juos galima pridėti @AGENTS.md importą, tačiau jų sintaksė skiriasi ir palaikoma ne visada.

Paprasčiausia naujo projekto strategija:

  1. Visas bendras taisykles sudėkite į AGENTS.md – ten priklauso 95 % taisyklių.
  2. Sukurkite CLAUDE.md, jei reikia tik Claude skirtų taisyklių: pirmoje eilutėje įrašykite @AGENTS.md, tada pridėkite skiltį su tik Claude taikomomis taisyklėmis. Jei tokių taisyklių nėra, CLAUDE.md nereikalingas; nuo versijos 2.1.277 Claude Code pats skaito AGENTS.md.
  3. Cursor palikite .cursor/rules/ retais atvejais, kai reikia ko nors būtent Cursor (jo komandų @Codebase ir @Docs).
  4. Su Windsurf elkitės taip pat: atsisakykite seno .windsurfrules; naują .windsurf/rules/ naudokite tik tada, kai reikia jo sintaksės šablonų.

Taip 20 % darbo įdėję gausite 80 % naudos. Mano patirtis rodo, kad dirbant su mišriomis komandomis „Antigravity“ projekte tampa sunku prižiūrėti daugiau nei du informacijos šaltinius (bendrą ir tik Claude skirtą). Jei kas nors komandoje įtraukia taisyklę į .cursorrules ir pamiršta AGENTS.md, po savaitės Cursor ir Codex pateiks skirtingus atsakymus.

Kaip Claude Code /init aptinka esamą AGENTS.md?

Svarbiausia mintis

/init pagal tai, kas jau yra saugykloje, sukuria CLAUDE.md ir sutaupo 20–30 minučių rankinio darbo. Pagal numatytuosius nustatymus jis aptinka Cursor taisykles (.cursor/rules/, .cursorrules) ir Copilot taisykles (.github/copilot-instructions.md), o AGENTS.md, .windsurfrules ir .clinerules skaito veikiant CLAUDE_CODE_NEW_INIT=1 režimui. Šis režimas paleidžia interaktyvią kelių etapų eigą: pateikia klausimus, pasitelkęs pagalbinį agentą išnagrinėja kodą ir prieš rašydamas pasiūlo planą. Nuo 2026 m. rugsėjo /init turi trūkumą projektuose su AGENTS.md: naujas CLAUDE.md išjungia tiesioginį AGENTS.md skaitymą, todėl taisyklės atsiduria dviejuose failuose.

Anthropic savo dokumentacijoje /init apibūdina taip:

Paleidus /init nuskaitomi kitų įrankių instrukcijų failai, o svarbios dalys perkeliamos į sugeneruotą CLAUDE.md: Cursor taisyklės iš .cursor/rules/ arba .cursorrules, Copilot taisyklės iš .github/copilot-instructions.md, o nustačius CLAUDE_CODE_NEW_INIT=1 – taip pat AGENTS.md, .devin/rules/, .windsurf/rules/ arba .windsurfrules ir .clinerules.

— Anthropic, https://code.claude.com/docs/en/memory

Ką tai reiškia praktiškai? Aprašytoje saugykloje buvo .cursorrules iš mano bandymų naudoti Cursor (apie 80 eilučių) ir rankomis surinktas 120 eilučių AGENTS.md. Paleidus claude /init, komanda paėmė abu failus, pašalino panašias taisykles ir per minutę surinko tvarkingą CLAUDE.md. Po to jį patikrinau ir šiek tiek paredagavau – pašalinau pasenusius punktus ir pridėjau antraščių struktūrą. Tai buvo greičiau nei rašyti iš naujo.

Interaktyvus režimas, kai /init taip pat skaito AGENTS.md, įjungiamas aplinkos kintamuoju:

CLAUDE_CODE_NEW_INIT=1 claude

Paleidus /init, Claude užduoda kelis patikslinamuosius klausimus: kokius artefaktus sukonfigūruoti (CLAUDE.md, įgūdžius, kablius), kokį technologijų rinkinį naudoja projektas ir kokias komandas naudoti testams. Tada pagalbinis agentas išnagrinėja kodų bazę – perskaito package.json, README.md ir konfigūracijos failus – bei papildo trūkstamas vietas. Pabaigoje pateikiamas pasiūlymas, kurį galite redaguoti prieš įrašydami. Daugiau apie Claude Code konfigūravimą pradedant projektą skaitykite atskirame vadove.

Dabar apie trūkumą. Jei projekte jau aktyviai naudojamas AGENTS.md, /init šalia jo sukurs CLAUDE.md su taisyklių kopija. Nuo tada Claude Code pagal numatytuosius nustatymus skaitys tik CLAUDE.md, tad vėl atsiras du informacijos šaltiniai: atnaujinsite AGENTS.md, o Claude toliau dirbs pagal seną kopiją. Komanda /import daro kažką panašaus: vieną kartą nukopijuoja AGENTS.md turinį į CLAUDE.md. Kad išlaikytumėte vieną šaltinį, po /init pirmoje CLAUDE.md eilutėje įrašykite importą @AGENTS.md ir pašalinkite viską, kas CLAUDE.md dubliuoja AGENTS.md turinį.

/init yra tinkamas pradinis žingsnis kuriant naują projektą arba pereinant nuo Cursor ar Copilot. Nereikia internete ieškoti „geriausio CLAUDE.md šablono“ – Anthropic jau atsižvelgia į tai, kas yra saugykloje. Jei projekte jau naudojamas AGENTS.md ir nėra tik Claude skirtų taisyklių, /init nereikalingas: Claude Code pats skaitys AGENTS.md.

Kaip atskirti bendras ir tik Claude skirtas instrukcijas?

Svarbiausia mintis

Į AGENTS.md įrašykite taisykles, kurias supranta bet kuris DI agentas: ko neliesti, kaip pavadinti šakas, kad .env yra paslaptis ir kokias komandas naudoti testams. Į CLAUDE.md (po importo) dėkite tik Claude Code skirtas taisykles: planavimo režimą, įgūdžius, kablius, nuorodas į įgūdžius ir modelių pavadinimus pagal versiją. Skirtumas paprastas: jei taisyklė prasideda „Claude turėtų“, ji priklauso CLAUDE.md. Jei prasideda „įrankis turėtų“, ji priklauso AGENTS.md.

Taisykles skirstau pagal šį principą. Bendros taisyklės, kurios tinka AGENTS.md:

  • Ko negalima liesti kode. .env, node_modules, prisma/migrations katalogai (tik per prisma migrate), .next/, .git/.
  • Kaip pavadinti dalykus. Šakos: feat/, fix/, chore/. Įrašai: priešdėliai feat:, fix:, docs: ir trumpas aprašas. Komponentų failai – kebab-case.
  • Testų / lint komandos. npm run build, npm run lint, npm test. Kurią komandą paleisti prieš git push.
  • Architektūros principai. Kas dedama į src/lib/, kas į src/components/, kur laikoma verslo logika ir kur – naudotojo sąsaja.
  • Saugumas. Niekada neįrašyti paslapčių į saugyklą. Prie gamybinės duomenų bazės jungtis tik per prod-psql. Prie gamybinės aplinkos per SSH jungtis tik per slapyvardį prod, o ne root@IP.

Tik Claude skirtos taisyklės, kurios priklauso CLAUDE.md (po @AGENTS.md):

  • Planavimo režimas. Naudoti plan mode keičiant rizikingų katalogų failus (pavyzdžiui, src/billing/).
  • Pastangų lygis. Architektūros užduotims naudoti --effort high, įprastiems darbams – medium.
  • Įgūdžiai. Nurodyti, kuriomis aplinkybėmis paleisti atitinkamus DI agentus ir įgūdžius. Pavyzdžiui: „dirbant su vadovu, paleisti build-masterskaya-guide įgūdį“.
  • Claude atmintis. Ką įrašyti į automatinę atmintį, o ką – į CLAUDE.local.md. Daugiau apie Claude atmintį skaitykite atminties ir CLAUDE.md vadove.
  • Kablai. Jei .claude/settings.json sukonfigūruoti kabliai, CLAUDE.md aprašykite, ką jie daro (Codex ir Cursor apie juos nežino ir neturi žinoti).
  • Įgūdžiai ir komandos. Dažnai naudojamų pasvirųjų brūkšnių komandų sąrašas (/init, /cd, /memory, /plan).

Riba ne visada aiški. Pavyzdžiui, „niekada nevykdyti git push --force į main“ akivaizdžiai yra bendra taisyklė, tad ji priklauso AGENTS.md. O „prieš vykdant git push į greitąją šaką, pirmiausia naudoti planavimo režimą“ skirta Claude Code, todėl priklauso CLAUDE.md. Pasitikrinkite: „Jei rytoj atsisakyčiau Claude Code ir palikčiau tik Codex, ar ši taisyklė vis dar galiotų?“ Jei taip, dėkite ją į AGENTS.md. Jei ne, dėkite į CLAUDE.md.

Kas priklauso AGENTS.md, o kas – CLAUDE.md arba .claude/rules?

Svarbiausia mintis

Dideliame projekte vieno AGENTS.md nepakanka – jis tampa pernelyg didelis ir kiekvienas agentas į savo kontekstą įtraukia nereikalingą medžiagą. Sprendimas – katalogas .claude/rules/ su atskirais failais pagal temas ir YAML antraštės paths: laukais, apibrėžiančiais keliais grindžiamus aktyviklius. Pavyzdžiui, API taisyklė taikoma tik tada, kai Claude dirba su src/api/. Taip sutaupoma daug konteksto lango vietos. Cursor analogas yra .cursor/rules/, o Windsurf – .windsurf/rules/.

Jei taisyklės peržengia 200 eilučių, metas jas skaidyti. Anthropic dokumentacijoje rekomenduojama siekti, kad viename faile būtų apie 200 eilučių, nes ilguose CLAUDE.md failuose Claude ima prasčiau laikytis instrukcijų: atrodo, kad jas perskaito, bet rečiau vykdo.

Man pasiteisinusi didelio projekto struktūra:

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

Kiekvieno .claude/rules/ failo pradžioje gali būti tokia antraštė:

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

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

Claude šias taisykles įkelia tik tada, kai dirba su failais, atitinkančiais šį šabloną. Jei jis keičia src/components/Button.tsx, API taisyklės į kontekstą neįtraukiamos. Taip konteksto lango vieta naudojama tik tam, kas aktualu. Katalogas .claude/rules/ veikia ir be CLAUDE.md: jei projekte yra tik AGENTS.md, jo taisyklės įkeliamos kartu ir tiesioginis AGENTS.md skaitymas neišjungiamas.

Cursor ir Windsurf taiko panašų principą per .cursor/rules/ ir .windsurf/rules/ katalogus. AGENTS.md standartas gali nurodyti šiuos katalogus, tačiau įvairiems įrankiams skirtų sintaksių palaikymas dar nėra visiškai nusistovėjęs. Saugiau bendras taisykles laikyti AGENTS.md, o konkrečiam keliui taikomas taisykles kopijuoti į .claude/rules/ ir .cursor/rules/ – tokie reti konkretūs atvejai, o ne didžioji taisyklių dalis.

Naudingos CLAUDE.md vietos (nuo plačiausiai iki siauriausiai taikomų):

LygisVietaPaskirtis
Valdoma politika/Library/Application Support/ClaudeCode/CLAUDE.md („Mac“), /etc/claude-code/CLAUDE.md („Linux“)Įmonės taisyklės, IT / DevOps
Naudotojo~/.claude/CLAUDE.mdAsmeninės nuostatos visuose projektuose
Projekto./CLAUDE.md arba ./.claude/CLAUDE.mdProjekto komandos taisyklės
Vietinis./CLAUDE.local.md (.gitignore faile)Asmeninės nuostatos konkrečiam projektui

Pavyzdžiui, ~/.claude/CLAUDE.md galėtų būti dvi taisyklės: „atsakyti naudotojo pageidaujama kalba“ ir „rašyti Ailoot tiksliai taip“. Jos taikomos kiekvienam projektui, tad nereikia jų kartoti kiekvienoje saugykloje.

Iš šių keturių lygių tik projekto lygmens CLAUDE.md ir CLAUDE.local.md išjungia tiesioginį AGENTS.md skaitymą. Asmeninis ~/.claude/CLAUDE.md ir valdoma politika netrukdo: Claude Code juos skaito kartu su AGENTS.md.

Ką daryti, jei AGENTS.md projekte jau pasenęs?

Svarbiausia mintis

Jei AGENTS.md buvo surinktas 2025 m. Codex ar Aider ir nuo tada neredaguotas, atidarykite projektą Claude Code ir paprašykite Claude paredaguoti failą. AGENTS.md yra gyvas dokumentas; „Linux Foundation“ specifikacija atnaujinama. Pagrindinė taisyklė, padedanti jį atnaujinti: kiekviena taisyklė turi atsakyti į klausimą „Ką pavargau kartoti Claude / Codex?“ Jei neatsako, archyvuokite ją.

Aprašytame projekte turėjau 2025 m. gegužės AGENTS.md – 180 eilučių, daugelis jų pasenusios (jame buvo minimos nuo tada pasikeitusios Anthropic API galinės stotys, nebeegzistuojanti claude --tools sintaksė ir pasenusios struktūros ~/.claude/projects/ taisyklės).

Naudotas atnaujinimo planas:

  1. Peržiūrėkite jį su claude planavimo režimu. Atidarau saugyklą, paleidžiu claude --safe-mode ir prašau: „Perskaityk AGENTS.md iš naujo ir pasiūlyk pasenusių ar pasikartojančių punktų sąrašą. Jo neredaguok; tik išvardyk juos.“ Per dvi minutes gavau 23 peržiūrėtinų punktų sąrašą.
  2. Pašalinkite akivaizdžiai pasenusius punktus. Iš 23 punktų 9 buvo aiškiai pasenę – komandų sintaksė, galinės stotys ir parinkčių pavadinimai. Ištryniau tas eilutes.
  3. Sujunkite pasikartojimus. Dar 6 punktai skirtingais žodžiais kartojo tą patį („nepriverstinai siųsti“, „niekada nenaudoti --force“, „vengti git push -f“). Sujungiau juos į vieną eilutę.
  4. Pridėkite naujų punktų. Įrašiau dalykus, kuriuos per pastarąjį mėnesį pastebėjau Claude / Codex nuolat darant klaidingai, laikydamasis taisyklės „po vieną eilutę kiekvienam klaidų šablonui“. Taip atsirado 8 nauji punktai.
  5. Paprašykite pagalbinio agento galutinės peržiūros. Paprašiau Claude peržiūros „rasti prieštaravimų, dviprasmybių ir pasikartojimų“. Ji aptiko tris formuluotes, kurias buvo galima patikslinti. Jas pataisiau.

Po valandos AGENTS.md buvo 110 eilučių ilgio ir atnaujintas, o aš žinojau kiekvieną jo eilutę. Iš jo buvo lengva parengti 30 eilučių CLAUDE.md. Po to Codex taip pat akivaizdžiai atidžiau vykdė testus – įtariu, kad kai kurie jo „keisti“ sprendimai kilo iš pasenusių instrukcijų, kurių jis sąžiningai laikėsi.

Pagrindiniai gyvo AGENTS.md principai:

  • Kiekviena taisyklė atsako į pasikartojančią klaidą. Jei per mėnesį nė karto neprireikė apie ją pagalvoti, nėra prasmės jos laikyti.
  • Taisykles rašykite kaip nurodymus, o ne teoriją. „Naudokite du tarpus“ yra taisyklė. „Kodo stilius turi būti tvarkingas“ – ne.
  • Konkretumas svarbiau už bendrybes. „Prieš git push paleiskite npm run build“ yra taisyklė. „Išbandykite pakeitimus“ – ne.

Kas tikrai NEVEIKIA naudojant šią sąranką?

Svarbiausia mintis

Importas @AGENTS.md nesuvienodina skirtingų įrankių elgsenos. Kiekvienas turi savų ypatybių: Codex CLI nežino apie .claude/rules/ ar kablius. Cursor automatinio užbaigimo funkcija turi atskirą mechanizmą, kuris pildydamas tekstą neskaito CLAUDE.md. Copilot laikosi .github/copilot-instructions.md, o vien AGENTS.md taisyklių jam nepakanka. Tai ne „vienas failas = viena elgsena“, o „vienas bazinių taisyklių šaltinis ir kiekvieno įrankio papildomos taisyklės“.

Keletas dalykų, kuriuos išmokau nelengvu būdu per šešis mėnesius dirbdamas su šia sąranka:

1. Cursor automatinio užbaigimo funkcija nenaudoja AGENTS.md. Siūlydamas užbaigti eilutę redaktoriuje Cursor realiu laiku neskaito AGENTS.md – tuo rūpinasi atskiras greitasis mechanizmas. AGENTS.md taisyklės svarbios tik pateikus užklausą Cursor pokalbyje. Vadinasi, įrašius į AGENTS.md „nenaudok var, naudok const“, automatinis užbaigimas nepasikeis; tai reikia sukonfigūruoti per ESLint arba TypeScript konfigūraciją.

2. Claude Code kabliai faile AGENTS.md Codex neveikia. Jei .claude/settings.json sukonfigūruotas PreToolUse kablys, blokuojantis tam tikrą veiksmą, ši informacija naudinga tik Claude. Codex nežino apie kablius; jam atrodo, kad „įrankis sprendžia pats“. Tikslinga į AGENTS.md įrašyti „nedaryk X“, o į CLAUDE.md po importo – „yra kablys, fiziškai blokuojantis X“.

3. Copilot ir .github/copilot-instructions.md. GitHub Copilot skaito savo failą ir vis dar ne itin gerai skaito AGENTS.md. Jei jūsų komanda aktyviai naudoja Copilot, pridėkite atskirą .github/copilot-instructions.md su sutrumpinta taisyklių versija arba naudokite Copilot Extensions, palaikančius AGENTS.md. Tai sparčiai keičiasi, tad po trijų–šešių mėnesių situacija gali būti kitokia.

4. Git simbolinės nuorodos pakeitimo kaip CLAUDE.md nerodo. Jei paleidžiate ln -s AGENTS.md CLAUDE.md, o po savaitės atnaujinate AGENTS.md, Git pakeitimus parodys tik faile AGENTS.md. Tai normalu, tačiau kolega, peržiūrintis PR, gali nesuprasti, kad CLAUDE.md taip pat atnaujintas per simbolinę nuorodą. Sprendimas: PR apraše aiškiai parašykite „atnaujintas AGENTS.md; Claude Code mato tą patį failą per simbolinę nuorodą“.

5. Gilius importus sunku derinti. Jei AGENTS.md importuoja @docs/coding-style.md, kuris importuoja @docs/typescript.md, o kuri nors taisyklė prieštarauja kitai, derinti sunku. Importus apriboju vienu lygiu (CLAUDE.md → AGENTS.md) ir nebeįterpiu papildomų. Anthropic pateikia kablį InstructionsLoaded, kuris registruoja, kokie failai įkelti – naudinga derinant sluoksniuotą sąranką. Pastaba: kablys suveikia, kai AGENTS.md įtraukiamas per importą arba simbolinę nuorodą, bet ne tada, kai Claude Code pats jį perskaito.

Šaltiniai

Visa vibe coding sąranka vienam vakarui: DI klonas + Antrosios smegenys + konteksto inžinerija.

Susipažinkite su Ailoot.

Išsamiau

Klausimai ir atsakymai

Kada vietoj simbolinės nuorodos naudoti importą?

CLAUDE.md naudokite @AGENTS.md, kai reikia Claude skirtų papildymų ar komandos nariai naudoja Windows. Simbolinė nuoroda abu vardus susieja su tuo pačiu turiniu, todėl negali turėti atskiro vien Claude skyriaus.

Kaip patikrinti, kad bendros instrukcijos įkeltos?

Paleiskite /memory ir patikrinkite išvardytus instrukcijų failus. Jei CLAUDE.md ar CLAUDE.local.md jūsų konfigūracijoje slopina tiesioginį AGENTS.md įkėlimą, pridėkite importą arba pasirinkite abu įkeliantį nustatymą, tada pradėkite naują sesiją.

Visi straipsniai