Viết Một File Ngữ Cảnh (AGENTS.md)
Việc có đòn bẩy cao nhất mà bạn có thể làm là viết một file ngữ cảnh (context file) mà AI tự động đọc. Các công cụ khác nhau tìm các tên khác nhau — AGENTS.md, CLAUDE.md, .cursorrules, hoặc .github/copilot-instructions.md — nhưng ý tưởng thì giống hệt nhau: một tài liệu sống nói cho AI biết dự án của bạn hoạt động ra sao và bạn muốn nó hành xử thế nào.
Không có nó, AI sẽ phải đoán. Có nó, AI sẽ ngừng định dạng lại mã của bạn, ngừng bịa ra các thư viện bạn không dùng, và ngừng giải thích lại những quyết định bạn đã đưa ra. Hãy nghĩ về nó như tài liệu hướng dẫn nhập môn cho một đồng đội mới xuất sắc nhưng mất trí nhớ hoàn toàn giữa các phiên làm việc — mọi thứ họ cần để làm việc hiệu quả phải nằm ở đâu đó mà họ sẽ đọc mỗi lần.
Một file khởi đầu thực tế:
# Project: Invoice Manager
## What this is
A small web app for freelancers to create and track invoices.
## Tech stack
- TypeScript + React (Vite)
- Tailwind for styling
- SQLite via Prisma
- Vitest for tests
## Commands
- Install: `npm install`
- Run dev server: `npm run dev`
- Run tests: `npm test`
- Lint: `npm run lint`
## Conventions
- Use functional components and hooks; no class components.
- Keep components small; one component per file.
- Write a test for every new function in `src/lib`.
- Never edit files in `src/generated/` — they are auto-generated.
## Don'ts
- Don't add new dependencies without flagging it first.
- Don't commit secrets; use environment variables.
Giữ nó ngắn gọn và luôn cập nhật. Một file ngữ cảnh phình to đến cả ngàn dòng sẽ không còn được đọc kỹ nữa — dù là bởi bạn hay mô hình — vì vậy hãy cắt tỉa nó tích cực như cách bạn thêm vào nó. Khi AI liên tục đưa ra cùng một giả định sai, đó là tín hiệu để bạn thêm một dòng; khi một quy tắc không còn khớp với thực tế, hãy xóa nó trước khi nó bắt đầu chủ động đánh lừa .
Có vài khuôn mẫu phân biệt một file ngữ cảnh có tác dụng với một file bị bỏ qua:
- Cụ thể và rõ ràng. "Dùng quy ước của chúng ta" là vô dụng. "Dùng
zodđể xác thực (validation); chúng ta không dùngyup" là một quy tắc mà AI thực sự có thể tuân theo. - Nói rõ những điều không nên làm cũng to như những điều nên làm. Các mô hình rất hăng hái muốn giúp đỡ, nghĩa là chúng sẽ vui vẻ thêm một (thư viện phụ thuộc) hoặc viết lại một file cấu hình trừ khi bạn bảo chúng đừng làm vậy.
- Chỉ đến các ví dụ. "Khớp với phong cách của
src/features/invoices" cho AI một mô hình cụ thể để sao chép thay vì một chỉ dẫn mơ hồ phải tự diễn giải.
Hãy coi file ngữ cảnh như một bản ghi của mọi bài học mà lẽ ra bạn phải lặp lại. Đó là khoản đầu tư rẻ nhất, bền vững nhất trong toàn bộ chương này.