# Coding agent nạp AGENTS.md và CLAUDE.md thế nào: năm cái bẫy

[DevelopEd](https://homus.dev/speakers/developed) · [DevelopEd](https://homus.dev/orgs/developed)

> Claude Code, Codex, Cursor, OpenCode, Antigravity tìm và nạp AGENTS.md, CLAUDE.md ra sao, năm cái bẫy khiến rules bị bỏ qua, và một cây repo chạy với cả năm tool.

Topics: Coding Agents, Context Engineering, Dev Tools

Canonical: https://homus.dev/talks/how-ai-agents-load-your-rules-explained

## 1. AGENTS.md và CLAUDE.md có thể loại nhau

Bạn thả một file `AGENTS.md` vào một project đã có sẵn `CLAUDE.md`. Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), mặc định Claude Code sẽ bỏ qua hoàn toàn file `AGENTS.md` đó. Mở cùng thư mục ấy trong OpenCode thì tài liệu của OpenCode nói điều ngược lại xảy ra (video đăng ngày 31/10/2026): file khớp đầu tiên trong mỗi nhóm sẽ thắng, nên `AGENTS.md` được dùng còn `CLAUDE.md` bị bỏ qua.

Theo DevelopEd (video đăng ngày 31/10/2026), người ta viết một file rules và mặc định rằng coding agent của mình sẽ đọc nó, vì người ta coi `AGENTS.md` như một chuẩn chung cho mọi tool. Thế nhưng khi đọc tài liệu chính thức của Claude Code, Codex, Cursor, OpenCode và Antigravity, có năm cái bẫy, nằm ở năm chỗ: precedence (thứ tự ưu tiên), location (vị trí), format (định dạng), size limits (giới hạn kích thước) và prompt delivery (cách đưa vào prompt). Theo video đăng ngày 31/10/2026, cả năm bẫy đều có thể khiến rules của bạn không được đọc hoặc bị lờ đi.

DevelopEd đề nghị cùng dựng một cây project từ trang trắng, cho thấy mỗi tool nạp rules ra sao và rules của bạn nên nằm ở đâu (video đăng ngày 31/10/2026).

![Năm tool Claude Code, Codex, Cursor, OpenCode, Antigravity ở hàng trên, năm từ khoá precedence, location, format, size limits, prompt delivery ở hàng dưới, phía dưới là thư mục my-app với CLAUDE.md và AGENTS.md](https://homus.dev/photos/O_fgXbFAaVw-0043.jpg)

Hàng trên là năm tool, hàng dưới là năm chữ precedence, location, format, size limits, prompt delivery; phía dưới là thư mục `my-app/` với `CLAUDE.md` rõ nét và `AGENTS.md` mờ đi (video đăng ngày 31/10/2026).

## 2. Claude Code: AGENTS.md là phương án dự phòng

Bắt đầu ở root của cây project, với `CLAUDE.md` và `AGENTS.md` nằm cạnh nhau. Trang tài liệu về memory của Claude Code, theo video đăng ngày 31/10/2026, ghi rằng mặc định Claude Code chỉ đọc `AGENTS.md` khi không có `CLAUDE.md` nào trong thư mục làm việc hoặc ở các thư mục phía trên nó.

![Trích tài liệu code.claude.com/docs/en/memory: By default, Claude reads AGENTS.md only when you have no CLAUDE.md in your working directory or above it](https://homus.dev/photos/O_fgXbFAaVw-0103.jpg)

Câu trích từ trang memory của Claude Code: "By default, Claude reads AGENTS.md only when you have no CLAUDE.md in your working directory or above it", với các cụm "By default" và "only when you have no CLAUDE.md" được gạch đỏ (video đăng ngày 31/10/2026).

Hệ quả theo DevelopEd (video đăng ngày 31/10/2026): kể cả khi thư mục làm việc của bạn chỉ có `AGENTS.md`, một `CLAUDE.md` nằm ở cấp cao hơn sẽ chặn cơ chế dự phòng mặc định này.

Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), bạn có thể đổi mặc định đó bằng setting project instructions của Claude Code, qua `/config` hoặc `settings.json`, để nó nạp cả `CLAUDE.md` lẫn `AGENTS.md`. Khi đó, trong mỗi thư mục, `CLAUDE.md` được nạp trước, `AGENTS.md` được nạp sau. Trên giấy thì vấn đề đã được giải quyết, cho tới khi bạn đọc bảng so sánh ngay bên dưới trong tài liệu.

## 3. Hook InstructionsLoaded và lối đi qua import hoặc symlink

Bảng so sánh đó, theo tài liệu của Claude Code mà video đăng ngày 31/10/2026 dẫn ra, cho biết: khi `AGENTS.md` được nạp qua setting kia, các hook `InstructionsLoaded` không chạy cho nó, dù chúng vẫn chạy cho `CLAUDE.md`. Vì vậy, theo DevelopEd (video đăng ngày 31/10/2026), việc không thấy sự kiện `InstructionsLoaded` không chứng minh được rằng `AGENTS.md` chưa được nạp. Tài liệu còn ghi rằng setting này không xuất hiện trong một số session.

![Bảng từ tài liệu Claude Code: hàng InstructionsLoaded hooks, cột CLAUDE.md ghi Fire, cột AGENTS.md read through the setting ghi Don't fire](https://homus.dev/photos/O_fgXbFAaVw-0143.jpg)

Bảng trong trang memory của Claude Code: với `CLAUDE.md`, hook `InstructionsLoaded` "Fire"; với `AGENTS.md` đọc qua setting thì "Don't fire. They fire as usual for an AGENTS.md that a CLAUDE.md imports or symlinks to" (video đăng ngày 31/10/2026).

May mắn là, theo tài liệu của Claude Code (video đăng ngày 31/10/2026), chính bảng đó chỉ ra một lối sạch hơn: khi `CLAUDE.md` import hoặc symlink tới `AGENTS.md`, cả hai đều được nạp và hook `InstructionsLoaded` chạy như bình thường. Trong hình minh hoạ của video, `CLAUDE.md` có dòng đầu là `@AGENTS.md`, một mũi tên chỉ sang `AGENTS.md`, hai file được đánh số 1 và 2.

## 4. Codex: AGENTS.override.md che AGENTS.md

Giờ mở thư mục root đó trong Codex. Theo tài liệu của Codex (video đăng ngày 31/10/2026), Codex tìm `AGENTS.override.md` trước, rồi mới tới `AGENTS.md`, và nạp tối đa một file cho mỗi thư mục. Thả `AGENTS.override.md` vào là Codex bỏ qua `AGENTS.md` nằm ngay bên cạnh.

![Thư mục my-app với CLAUDE.md, AGENTS.md bị gạch và mờ, và AGENTS.override.md; nhãn codex phía trên](https://homus.dev/photos/O_fgXbFAaVw-0243.jpg)

Minh hoạ "Launch Codex from the repository": trong `my-app/`, `AGENTS.md` bị gạch đỏ và mờ đi, còn `AGENTS.override.md` (ghi "# Local override", "- run tests with --ci") được giữ lại (video đăng ngày 31/10/2026).

Theo DevelopEd (video đăng ngày 31/10/2026), sửa xong thư mục root thì mới chỉ giải quyết phần trên cùng của repository. Khi bạn đặt rules bên trong một subfolder cho một service cụ thể, các tool chia rẽ nhau ở chỗ chúng đi theo hướng nào trên cây thư mục và nạp những file đó vào lúc nào.

## 5. Rules trong subfolder: Codex đi xuống từ root

DevelopEd thêm vào cây một thư mục `services`, bên trong có subfolder `payments` chứa một file `AGENTS.md`. Theo tài liệu của Codex (video đăng ngày 31/10/2026), khi bạn khởi động Codex từ root của repository, nó đi xuống từ root rồi dừng tìm kiếm khi tới thư mục hiện tại của bạn. Vì bạn bắt đầu ở root, Codex dựng chuỗi file của nó một lần và dừng trước khi tới `payments`.

Muốn file trong `payments` nằm trong chuỗi mà Codex nạp lúc khởi động, theo video đăng ngày 31/10/2026, tài liệu của Codex chỉ cách khởi động Codex với thư mục làm việc là chính subfolder `payments`, đặt các override gần với phần việc chuyên biệt.

Theo tài liệu của Codex mà video đăng ngày 31/10/2026 trình bày: chạy từ root thì chuỗi dừng ở root, không tới `payments`; chạy từ `payments` thì file của `payments` nằm trong chuỗi lúc khởi động.

## 6. Claude Code và Antigravity nạp subfolder khi chạm vào file

Claude Code xử lý subfolder `payments` theo cách khác. Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), các file `CLAUDE.md` ở thư mục cha được nạp lúc khởi động, còn `CLAUDE.md` và `CLAUDE.local.md` trong các subdirectory bên dưới thư mục làm việc thì phải chờ.

Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), chạy lệnh `/context` ngay sau khi khởi động ở root, danh sách Memory files sẽ cho thấy những gì đã nạp lúc khởi động. File nào không có trong danh sách đó thì không hiện diện lúc khởi động, nên file của `payments` chưa xuất hiện.

![Trích tài liệu Claude Code về CLAUDE.md và CLAUDE.local.md trong subdirectory, nạp khi Claude đọc, ghi hoặc sửa file trong subdirectory đó](https://homus.dev/photos/O_fgXbFAaVw-0343.jpg)

Đoạn tài liệu của Claude Code được trích: Claude phát hiện `CLAUDE.md` và `CLAUDE.local.md` trong subdirectory, "Instead of loading them at launch" thì nạp từng file khi Claude đọc, ghi hoặc sửa một file khác trong subdirectory đó, kể cả xem file bằng lệnh Bash "counts as a read" như `cat` hay `head` trên một file (video đăng ngày 31/10/2026).

Thay vào đó, theo tài liệu của Claude Code (video đăng ngày 31/10/2026), Claude Code nạp `CLAUDE.md` của một subdirectory khi Claude đọc, ghi hoặc sửa một file trong subdirectory đó, kể cả khi xem file bằng `cat` hay `head` trong Bash.

Tài liệu của Antigravity mô tả một điểm kích hoạt tương tự (video đăng ngày 31/10/2026). Khi Antigravity đọc hoặc sửa một file, nó đi ngược lên cây từ thư mục của file đó tới root của workspace, nạp `AGENTS.md` ở mỗi cấp. Theo video đăng ngày 31/10/2026, chừng nào một session chưa chạm vào `payments`, rules trong subfolder đó vẫn chưa được nạp.

Thay vì rải file khắp hàng chục thư mục code, theo DevelopEd (video đăng ngày 31/10/2026), các tool này cũng có một thư mục rules riêng ở đầu project. Và đó là chỗ cái bẫy thứ ba xuất hiện: thả một file markdown thường vào thư mục rules khiến nó bị bỏ qua.

## 7. Cursor: .cursor/rules cần đuôi .mdc

DevelopEd thêm thư mục `.cursor/rules` vào cây và thả `api-guidelines.md` vào đó. Theo video đăng ngày 31/10/2026, trong tài liệu chính thức của Cursor, đúng tên file này xuất hiện trong cây ví dụ, được đánh dấu là bị bỏ qua vì sai đuôi file.

Theo tài liệu của Cursor (video đăng ngày 31/10/2026), hệ thống rules của Cursor yêu cầu project rules trong thư mục đó dùng đuôi `.mdc`, với front matter khai báo `description`, `globs` và `alwaysApply`. Nếu bạn thích markdown thường, không front matter, thì tài liệu của Cursor bảo bạn dùng `AGENTS.md` ở root của project hoặc trong các subdirectory.

![Thư mục .cursor/rules chứa file api-guidelines.mdc với dòng front matter mở và hai rule validate request bodies, return typed errors](https://homus.dev/photos/O_fgXbFAaVw-0443.jpg)

Minh hoạ trong video đăng ngày 31/10/2026: file trong `.cursor/rules/` đổi thành `api-guidelines.mdc`, mở đầu bằng `---` của front matter, phần thân có hai rule "validate request bodies" và "return typed errors".

## 8. Antigravity: .agents/rules phải phẳng

Tiếp theo, DevelopEd thêm thư mục `.agents/rules` cho Antigravity. Theo tài liệu của Antigravity (video đăng ngày 31/10/2026), file `.md` thường chạy được ở đó nếu nằm ở cấp trên cùng, ví dụ `typescript.md`.

Nhưng nếu bạn dọn các rules vào một subfolder lồng bên trong, ví dụ `frontend` với `react.md` bên trong `.agents/rules`, thì theo tài liệu của Antigravity (video đăng ngày 31/10/2026), bộ quét phẳng của Antigravity bỏ qua chúng. Tài liệu ghi rằng Antigravity chỉ quét các file `.md` con trực tiếp trong `.agents/rules` và bỏ qua file trong subdirectory lồng nhau, trừ khi bạn đăng ký chúng trong `rules.json`.

![Trích tài liệu Antigravity mục Flat directory scanning](https://homus.dev/photos/O_fgXbFAaVw-0523.jpg)

Đoạn "Flat directory scanning" từ antigravity.google/docs/rules được trích trong video đăng ngày 31/10/2026: Antigravity quét các file `.md` con trực tiếp trong `.agents/rules/` (như `.agents/rules/typescript.md`), bỏ qua `.agents/rules/frontend/react.md` trừ khi đăng ký trong `.agents/rules.json`.

## 9. Codex: tên file ngoài danh sách bị bỏ qua

Theo tài liệu của Codex (video đăng ngày 31/10/2026), Codex cũng khắt khe y như vậy khi team bạn giữ rules trong một file đặt tên riêng như `TEAM_GUIDE.md` hay `.agents.md`. Mặc định, tài liệu của Codex ghi rằng các tên file ngoài `AGENTS.override.md` và `AGENTS.md` bị bỏ qua. Muốn dùng chúng, bạn phải liệt kê những tên đó trong setting fallback filenames ở `config.toml`, không gõ sai, rồi khởi động lại Codex. Trang tài liệu của Codex gọi setting này là `project_doc_fallback_filenames` (đọc ngày 01/11/2026).

Theo tài liệu của Codex (video đăng ngày 31/10/2026; trang tài liệu đọc ngày 01/11/2026): trong mỗi thư mục, Codex xét `AGENTS.override.md`, rồi `AGENTS.md`, rồi các tên trong danh sách fallback, và lấy tối đa một file.

Theo DevelopEd (video đăng ngày 31/10/2026), kể cả khi tên file và thư mục đã đúng, một header hỏng hay một giới hạn byte vẫn có thể thay đổi những gì được nạp. DevelopEd thêm vào cây một thư mục `.claude/rules`, với một rule chỉ dành cho các file thanh toán của bạn.

## 10. Claude Code: rule có paths và cái bẫy YAML hỏng

Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), một rule không có trường `paths` trong YAML front matter được nạp vô điều kiện lúc khởi động, với cùng mức ưu tiên như `.claude/CLAUDE.md`. Thêm trường `paths` vào thì Claude giữ rule đó lại cho tới khi nó dùng Read, Write, Edit, hoặc một lệnh Bash `cat` hay `head` trên một file khớp.

![File .claude/rules/payments.md với front matter paths services/payments/**/*.ts và hai rule](https://homus.dev/photos/O_fgXbFAaVw-0643.jpg)

Rule mẫu `.claude/rules/payments.md` trong video đăng ngày 31/10/2026: front matter có `paths:` với mẫu `"services/payments/**/*.ts`, phần thân ghi "amounts are integer cents" và "refunds need a reason"; dòng mẫu này thiếu dấu ngoặc kép đóng, và một ô đỏ được đặt ngay sau nó.

Nội dung rule này ở cuối video đăng ngày 31/10/2026, khi dòng `paths` đã có đủ hai dấu ngoặc kép:

```
---
paths:
- "services/payments/**/*.ts"
---
- amounts are integer cents
- refunds need a reason
```

Theo DevelopEd (video đăng ngày 31/10/2026), tài liệu của Claude Code có một cái bẫy lặng lẽ với các YAML header này. Nếu một rule có paths mà khối YAML bị hỏng, Claude Code không từ chối file. Thay vào đó, nó nạp rule lúc khởi động như thể rule không có trường `paths`. Một lỗi cú pháp trong front matter biến một path rule hẹp thành một instruction toàn cục cho mỗi session.

## 11. Codex: giới hạn byte của instructions

Giờ xem chuyện gì xảy ra khi file lớn dần. Theo tài liệu của Codex (video đăng ngày 31/10/2026), Codex bỏ qua file rỗng và ngừng thêm instructions khi kích thước chạm giới hạn max bytes trong `config.toml`. Giới hạn đó mặc định là 32 kilobyte, nhưng bạn có thể nâng nó trong `config.toml`, ví dụ lên 65.536 byte.

![Bốn ô AGENTS.md xếp chồng trong một khung, ô trên cùng mờ và bị gạch đỏ, nhãn project_doc_max_bytes](https://homus.dev/photos/O_fgXbFAaVw-0703.jpg)

Minh hoạ trong video đăng ngày 31/10/2026: bốn ô `AGENTS.md` xếp chồng trong một khung có nhãn `project_doc_max_bytes`, ô trên cùng mờ đi và bị một vạch đỏ cắt ngang.

Với instructions bị cắt, theo video đăng ngày 31/10/2026, phần troubleshooting trong tài liệu của Codex đưa ra hai cách sửa: nâng giới hạn đó, hoặc chia các file lớn ra các thư mục lồng nhau.

## 12. Claude Code: 200 dòng, 25KB và 4MB

Theo tài liệu của Claude Code (video đăng ngày 31/10/2026), Claude Code chia luật về kích thước giữa hai tính năng. Với auto memory trong `MEMORY.md`, tài liệu ghi một ngưỡng cứng: chỉ nạp 200 dòng đầu hoặc 25 kilobyte đầu, tuỳ cái nào tới trước, lúc bắt đầu một cuộc hội thoại. Với `CLAUDE.md`, theo DevelopEd (video đăng ngày 31/10/2026), một file tới 4 megabyte vẫn được nạp đầy đủ.

Dù vậy, theo tài liệu của Claude Code (video đăng ngày 31/10/2026), mục tiêu đặt ra là dưới 200 dòng cho mỗi `CLAUDE.md`, kèm cảnh báo rằng file dài hơn tốn nhiều context hơn và làm giảm adherence (mức độ tuân theo).

![Trích tài liệu Claude Code: Size, target under 200 lines per CLAUDE.md file](https://homus.dev/photos/O_fgXbFAaVw-0743.jpg)

Đoạn tài liệu của Claude Code được trích trong video đăng ngày 31/10/2026: "Size: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence", kèm gợi ý chuyển instructions chỉ liên quan tới một phần codebase sang path-scoped rules và dùng imports.

## 13. Bẫy thứ năm: CLAUDE.md đến dưới dạng user message

Theo DevelopEd (video đăng ngày 31/10/2026), lời cảnh báo trong tài liệu của Claude Code, rằng file dài làm giảm adherence, chỉ thẳng tới cái bẫy thứ năm. Kể cả khi file của bạn nằm đúng thư mục, đúng đuôi file, dưới giới hạn kích thước và đã được nạp vào session, model vẫn có thể lờ đi những gì bạn viết.

Theo DevelopEd (video đăng ngày 31/10/2026), developer thường đối xử với `CLAUDE.md` như thể nó được hàn thẳng vào system prompt lõi của model. Tài liệu troubleshooting của Claude Code giải thích harness đưa nó vào ra sao (video đăng ngày 31/10/2026): nội dung `CLAUDE.md` đến dưới dạng một user message sau system prompt, chứ không phải là một phần của chính system prompt.

![Một khung lớn ghi User message chứa ô CLAUDE.md với hai dòng use pnpm, not npm và 2-space indent](https://homus.dev/photos/O_fgXbFAaVw-0843.jpg)

Minh hoạ "Claude reads the file and tries" trong video đăng ngày 31/10/2026: ô `CLAUDE.md` ("use pnpm, not npm", "2-space indent") nằm bên trong một khung có nhãn User message.

Vì nó đến dưới dạng user message, theo tài liệu của Claude Code (video đăng ngày 31/10/2026), Claude coi các file `CLAUDE.md` là context, không phải cấu hình bắt buộc. Claude đọc file và cố làm theo, nhưng tài liệu ghi rằng không có gì bảo đảm tuân thủ chặt chẽ, đặc biệt khi instructions mơ hồ hoặc mâu thuẫn với nhau.

Theo DevelopEd (video đăng ngày 31/10/2026), khi bạn viết một dòng markdown bảo agent đừng chạy một lệnh phá huỷ hay đừng đụng vào production, bạn đang đưa cho model một mẩu context lịch sự.

## 14. Luật không được phá: tool permissions và PreToolUse hook

Với một rule không được phép phá, theo tài liệu của Claude Code (video đăng ngày 31/10/2026), tài liệu bảo bạn dùng tool permissions hoặc một PreToolUse hook, chặn hành động ngay trong harness trước khi tool chạy. Trong video, một bảng trích từ trang memory của Claude Code ghi: chặn tool, lệnh hoặc đường dẫn file cụ thể thì cấu hình trong managed settings, ở `permissions.deny`.

Theo tài liệu của Claude Code mà video đăng ngày 31/10/2026 dẫn: markdown là context không bảo đảm tuân thủ, còn tool permissions hay PreToolUse hook chặn hành động trước khi tool chạy.

## 15. Một cây repo chạy được với cả năm tool

Lùi lại nhìn toàn cây repository, DevelopEd trả lời câu hỏi đặt ra từ đầu: file của bạn nên nằm ở đâu khi các tool dùng những luật tìm file mâu thuẫn nhau?

Theo DevelopEd (video đăng ngày 31/10/2026), ở root của project, đặt instructions dùng chung vào `AGENTS.md`, và đừng thêm `AGENTS.override.md` trừ khi bạn muốn Codex bỏ qua `AGENTS.md` ở đó.

Theo DevelopEd (video đăng ngày 31/10/2026), ngay bên cạnh ở root, đặt một file `CLAUDE.md` import hoặc symlink tới `AGENTS.md`. Với cặp file ở root này, luật file khớp đầu tiên của OpenCode đọc `AGENTS.md`, còn Codex, Cursor và Antigravity đọc trực tiếp `AGENTS.md`. Trong khi đó Claude Code tìm thấy `CLAUDE.md`, kéo `AGENTS.md` vào qua import hoặc symlink, và hook `InstructionsLoaded` chạy như bình thường.

Theo DevelopEd (video đăng ngày 31/10/2026), giữ file root đó dưới mục tiêu 200 dòng của Claude Code, điều này cũng giữ nó nằm gọn trong mức trần mặc định 32KB của Codex.

Theo DevelopEd (video đăng ngày 31/10/2026), đẩy rules của từng subsystem xuống các subfolder nơi code đó sống, ví dụ `payments`. Claude Code và Antigravity nạp những file sâu hơn này theo nhu cầu, khi chúng đọc hoặc sửa một file trong thư mục đó. Codex chỉ đưa `AGENTS.md` của subfolder vào chuỗi khởi động khi bạn khởi động Codex bên trong subfolder đó.

![Cây services/payments với AGENTS.md, CLAUDE.md và charge.ts có nhãn Read; bên dưới là TEAM_GUIDE.md và .agents.md](https://homus.dev/photos/O_fgXbFAaVw-1023.jpg)

Cây đầy đủ ở cuối video đăng ngày 31/10/2026: trong `services/payments/` có `AGENTS.md` ("idempotent charges", "log refunds"), `CLAUDE.md` ("never log card data", "use cents") và `charge.ts` gắn nhãn Read; phía dưới là `TEAM_GUIDE.md` và `.agents.md`.

Theo DevelopEd (video đăng ngày 31/10/2026), với các thư mục rules riêng của từng tool: cho Cursor file `.mdc` có front matter trong `.cursor/rules`, giữ `.agents/rules` của Antigravity phẳng hoặc đã đăng ký trong `rules.json`, và giữ các khối YAML `paths` hợp lệ trong `.claude/rules`.

Cuối cùng, theo DevelopEd (video đăng ngày 31/10/2026), lấy những rule không được phá, như các lệnh shell bị chặn hay các thư mục cấm đụng vào, chuyển chúng ra khỏi markdown, sang tool permissions hoặc PreToolUse hook. Như vậy các file markdown của bạn tập trung vào context dựa trên code, thứ hợp với vị trí của một user message.

## Nguồn và liên kết

- Tên gốc: How AI Agents Load Your Rules, Explained
- Sự kiện: [YouTube](https://homus.dev/events/youtube)
- Video gốc: [https://www.youtube.com/watch?v=O_fgXbFAaVw](https://www.youtube.com/watch?v=O_fgXbFAaVw)

- Kênh YouTube DevelopEd (DevelopEd): [youtube.com/channel/UCBDkGPMMp6XQ1hkfQqlGj6w](https://www.youtube.com/channel/UCBDkGPMMp6XQ1hkfQqlGj6w)

- Tài liệu Claude Code về memory, CLAUDE.md, AGENTS.md, `.claude/rules` và hook InstructionsLoaded (đọc ngày 01/11/2026): [code.claude.com/docs/en/memory](https://code.claude.com/docs/en/memory)

- Tài liệu Codex về AGENTS.md, AGENTS.override.md, `project_doc_fallback_filenames` và `project_doc_max_bytes` (đọc ngày 01/11/2026): [learn.chatgpt.com/docs/agent-configuration/agents-md](https://learn.chatgpt.com/docs/agent-configuration/agents-md)

- Tài liệu Cursor về rules và đuôi `.mdc` (đọc ngày 01/11/2026): [cursor.com/docs/rules](https://cursor.com/docs/rules)

- Tài liệu Antigravity về rules và flat directory scanning (đọc ngày 01/11/2026): [antigravity.google/docs/rules](https://antigravity.google/docs/rules)

- Tài liệu OpenCode về rules, luật file khớp đầu tiên giữa AGENTS.md và CLAUDE.md (đọc ngày 01/11/2026): [opencode.ai/docs/rules](https://opencode.ai/docs/rules/)

Nguồn: https://homus.dev/talks/how-ai-agents-load-your-rules-explained · cập nhật 2026-11-01
