📖 Nội dung bài học
Video
File CLAUDE.md
Một trong những tính năng hữu ích nhất của Claude Code là file CLAUDE.md. Nó cung cấp cho Claude Code bộ nhớ dài hạn (persistent memory) về dự án của bạn.
Vấn đề mà nó giải quyết
Khi bạn mở Claude Code mà không có file CLAUDE.md, nó sẽ bắt đầu mới hoàn toàn mỗi lần. Nó phải tự khám phá lại codebase, tìm hiểu xem cần những dependency nào và hiểu những tính năng nào đã được triển khai. Đôi khi nó đưa ra các giả định sai, khiến việc điều hướng Claude đi đúng hướng trở nên khó khăn hơn.
CLAUDE.md giải quyết vấn đề này. Đây là một file Markdown bạn thêm vào thư mục gốc của dự án, và Claude Code sẽ tự động đọc nó mỗi khi bạn bắt đầu một phiên làm việc. Hãy coi nó như một kịch bản hướng dẫn (onboarding script) cho codebase của bạn. Nội dung của file CLAUDE.md sẽ được nối thêm vào prompt của bạn.
Một ví dụ
Dưới đây là nội dung của một file CLAUDE.md điển hình:
This is a Next.js 15 app using the App Router, Tailwind, and Drizzle ORM.
- Dev server: `pnpm dev`
- Run tests: `pnpm test`
- Lint: `pnpm lint`
- Use 2-space indentation
- Prefer named exports
- All API routes go in app/api/
- Use server actions instead of API routes where possible
Rất đơn giản. Bây giờ nếu bạn yêu cầu Claude Code tạo một React component, nó đã biết là phải dùng Tailwind để tạo kiểu (styling) và tuân thủ các quy ước viết code của bạn.

CLAUDE.md dành cho đội ngũ
Bạn có thể (và nên) commit file CLAUDE.md vào hệ thống quản lý phiên bản (version control) để cả team cùng hưởng lợi. Thực tế có một hệ thống phân cấp các file bộ nhớ tùy thuộc vào đối tượng sử dụng:
-
CLAUDE.md cấp dự án (Project-level): nằm ở thư mục gốc của dự án. Được chia sẻ với cả team.
-
CLAUDE.md cấp người dùng (User-level): nằm trong thư mục cấu hình của bạn. File này chỉ dành riêng cho bạn và áp dụng trên tất cả các dự án. Hãy đặt các sở thích cá nhân của bạn ở đây.
Mẹo
Lưu các chỉnh sửa vào bộ nhớ. Nếu bạn thấy mình phải sửa lỗi cho Claude lặp đi lặp lại — ví dụ như nhắc nó luôn dùng server actions thay vì API routes — hãy yêu cầu Claude lưu quy tắc đó vào bộ nhớ một cách rõ ràng. Lần tới khi bạn mở dự án, nó sẽ tự biết.

Tham chiếu tài liệu dự án. Nếu bạn có tài liệu trong dự án mà muốn Claude tham chiếu đến, hãy sử dụng ký hiệu @ kèm theo đường dẫn file:
## README.md
Please read if you need more info: @README.md
Bắt đầu mà không cần file này. Chúng tôi khuyên bạn nên bắt đầu dự án mà không có file CLAUDE.md để thấy được những điểm nào bạn thường xuyên phải điều chỉnh mô hình. Điều này giúp file CLAUDE.md của bạn gọn nhẹ và chỉ tập trung vào những thông tin thực sự cần thiết. Khi bạn đã sẵn sàng, hãy chạy lệnh /init để Claude tự tạo một file cho bạn.
Tổng kết
Sự khác biệt giữa một phiên làm việc Claude Code gây ức chế và một phiên hiệu quả thường nằm ở ngữ cảnh (context) — và file CLAUDE.md chính là cách bạn cung cấp ngữ cảnh đó. Hãy bắt đầu với tech stack, các tùy chọn cá nhân và các câu lệnh của bạn, sau đó bồi đắp dần trong quá trình làm việc.
🎬 Bản ghi video
Source video:
O0FGCxkHM-U
📜 Mở rộng bản ghi (đã chỉnh sửa + dịch AI)
Giới thiệu về CLAUDE.md
Một trong những thành phần hữu ích nhất của Claude chính là tệp CLAUDE.md. Tệp này cung cấp cho Claude khả năng ghi nhớ duy trì về dự án của bạn. Khi bạn bắt đầu một phiên làm việc với Claude mà không có tệp CLAUDE.md, mô hình sẽ phải bắt đầu lại từ đầu mọi lúc. Nó phải tự khám phá lại codebase, tìm hiểu các dependency cần thiết và xác định các tính năng đã được triển khai. Đôi khi, Claude phải đưa ra các giả định, điều này khiến chúng ta khó điều hướng mô hình đi đúng hướng mong muốn.
Đó là lý do CLAUDE.md ra đời. Đây là một tệp Markdown mà bạn thêm vào thư mục gốc của dự án và Claude sẽ tự động đọc nó mỗi khi bạn bắt đầu một phiên làm việc. Nó đóng vai trò như một tài liệu hướng dẫn (onboarding script) cho codebase của bạn. Nói một cách đơn giản, nội dung của tệp CLAUDE.md sẽ được đính kèm vào chính prompt của bạn.
Bắt đầu với lệnh /init
Bạn có thể chạy lệnh /init để Claude tự động tạo tệp CLAUDE.md dựa trên codebase hiện tại. Hãy xem xét ví dụ về một ứng dụng Next.js 15 sử dụng App Router, Tailwind CSS và Drizzle ORM. Tệp này có thể bao gồm:
- Lệnh (Commands): Chạy dev server, chạy test, lint.
- Phong cách lập trình (Code Style): Sử dụng thụt lề 2 khoảng trắng, ưu tiên named exports.
- Kiến trúc (Architecture): Tất cả các API route nằm trong
app/api, ưu tiên sử dụng Server Actions thay vì API route nếu có thể.
Mọi thứ rất trực quan. Giờ đây, nếu tôi yêu cầu Claude tạo một React component, nó đã biết cách áp dụng style bằng Tailwind hoặc bất kỳ CSS framework nào tôi đang dùng. Claude sẽ hoàn thành công việc tốt hơn ngay từ đầu thay vì phải mất thời gian tìm hiểu thủ công cấu trúc mọi thứ.
Phân cấp các tệp bộ nhớ
Bạn có thể chia sẻ tệp này lên hệ thống quản lý phiên bản (version control) để cả nhóm cùng sử dụng. Tuy nhiên, thực tế có một cấu trúc phân cấp cho các tệp bộ nhớ tùy thuộc vào đối tượng sử dụng:
- Cấp độ Dự án (Project Level): Tệp
CLAUDE.mdnằm ở thư mục gốc của dự án. - Cấp độ Người dùng (User Level): Tệp
CLAUDE.mdnằm trong thư mục cấu hình cá nhân của bạn. Tệp này chỉ dành riêng cho bạn và áp dụng trên tất cả các dự án. Bạn nên đưa các sở thích cá nhân vào đây, ví dụ như cách bạn muốn viết chú thích (comment) trong mã nguồn.
Mẹo quản lý ngữ cảnh hiệu quả
Để tận dụng tối đa bộ nhớ của Claude, hãy áp dụng ba mẹo sau:
- Lưu trữ tường minh (Explicit Saving): Nếu bạn phải điều chỉnh Claude để thực hiện một việc gì đó—chẳng hạn như luôn sử dụng Server Actions thay vì API route—hãy yêu cầu Claude lưu trực tiếp điều này vào bộ nhớ. Điều này đảm bảo rằng khi bạn quay lại dự án, Claude sẽ luôn ghi nhớ quy tắc đó.
- Tham chiếu tài liệu: Nếu bạn có các tài liệu trong dự án muốn Claude tham khảo, chỉ cần sử dụng ký hiệu
@kèm theo đường dẫn tệp. - Tinh chỉnh dần dần (Iterative Refinement): Chúng tôi khuyên bạn nên bắt đầu dự án mà chưa cần tệp
CLAUDE.md. Điều này giúp bạn nhận ra những điểm nào mình thường xuyên phải uốn nắn mô hình. Thói quen này giúp tệpCLAUDE.mdluôn gọn nhẹ, chỉ chứa những thông tin thực sự cần thiết để Claude làm việc hiệu quả.
Kết luận
Sự khác biệt giữa một phiên làm việc với AI gây ức chế và một phiên làm việc năng suất nằm ở ngữ cảnh (context). Tệp CLAUDE.md chính là cách bạn cung cấp ngữ cảnh đó. Hãy bắt đầu với tech stack, các tùy chỉnh ưu tiên, các câu lệnh của bạn và tiếp tục bồi đắp từ đó trong quá trình làm việc.
🔁 Bài học liên quan
- Bài tiếp: Subagents
- Bài trước: Code review
- Cùng section: Subagents · Skills · MCP
- Thuộc lộ trình: Path C
- Docs tham khảo: Glossary · Skills atlas · By use-case
📚 Nguồn & ghi nhận
- Bài học gốc Anthropic Academy: https://anthropic.skilljar.com/claude-code-101/469795
- © 2025 Anthropic. Chỉ dùng cho mục đích giáo dục, fair-use.
- Crawl: 2026-04-23 · Chuẩn hoá: 2026-05-01