EN
Claude Code từ mã nguồn — Bìa sách

Cách Anthropic xây dựng AI coding agent được sử dụng rộng rãi nhất

Khi Claude Code được phát hành trên npm, source maps cũng đi kèm theo. Chúng tôi đã đọc từng tập tin. Cuốn sách này đúc kết kiến trúc, các quyết định thiết kế và các mẫu thiết kế có thể ứng dụng thành 18 chương mà bạn có thể học hỏi và áp dụng vào cấu trúc hệ thống của riêng mình.

Bắt đầu đọc

Bạn sẽ học được gì

Agent Loop

Cách một async generator điều khiển toàn bộ hệ thống — phát trực tuyến đầu ra của model, thực thi công cụ, phục hồi sau lỗi và nén ngữ cảnh qua 4 lớp.

Thực thi công cụ ở quy mô lớn

Một pipeline 14 bước từ yêu cầu model đến kết quả công cụ. Phân giải quyền, speculative execution, và phân lô đồng thời dựa trên phân loại an toàn.

Điều phối đa tác nhân (Multi-agent orchestration)

Cách các sub-agent chia sẻ prompt cache prefixes để giảm 95% chi phí. Fork Agents, coordinator mode, các nhóm swarm với giao tiếp thông qua mailbox.

Bộ nhớ không cần cơ sở dữ liệu

Bộ nhớ dựa trên tệp với hệ thống LLM-powered recall. Bốn loại bộ nhớ, cảnh báo độ trễ (staleness), và một Sonnet side-query đánh bại tìm kiếm thông qua embedding.

Kỹ thuật hiệu suất

Khởi động trong 240ms thông qua parallel I/O. Slot reservation giúp tiết kiệm ngữ cảnh trong 99% yêu cầu. Bitmap pre-filters dùng cho tìm kiếm mờ. Mỗi mili-giây đều được tính toán.

Khả năng mở rộng và bảo mật

Hai giai đoạn tải kỹ năng (tải siêu dữ liệu khi khởi động, tải nội dung theo yêu cầu). 27 lifecycle hooks cùng các bản chụp cấu hình được đóng băng ngay lúc khởi động để ngăn chặn injection.

Khám phá kiến trúc

Sáu thành phần trừu tượng cốt lõi hỗ trợ Claude Code. Kéo các node để sắp xếp lại, di chuột để xem chi tiết, nhấp để đọc chương.

Dành cho ai

Kỹ sư xây dựng các hệ thống agentic. Mỗi chương kết thúc bằng mục "Apply This" — 5 mẫu thiết kế có thể ứng dụng cùng với lời khuyên thích ứng cụ thể. Học hỏi kiến trúc, bỏ qua những sai lầm.

Các nhà lãnh đạo kỹ thuật đang đánh giá các kiến trúc. Theo dõi câu chuyện mà không cần đọc từng khối mã. Hiểu rõ tại sao các quyết định được đưa ra chứ không chỉ là điều gì đã được xây dựng.

Bất kỳ ai tò mò về cách các công cụ AI hoạt động trong thực tế. Claude Code được hàng trăm ngàn nhà phát triển sử dụng. Đây là cách nó hoạt động ở bên trong.

Mục lục

Cuốn sách này được tạo ra như thế nào

Mã nguồn được trích xuất từ source maps của npm — các tập tin .js.map đi kèm với Claude Code chứa một trường sourcesContent bao gồm toàn bộ TypeScript gốc ban đầu. Gần hai ngàn tập tin cấu thành toàn bộ kiến trúc.

36 AI agents đã phân tích và viết toàn bộ cuốn sách trong bốn giai đoạn:

Khám phá 6 agent chạy song song đọc từng tập tin trong cây mã nguồn
Phân tích 12 agent viết 494KB tài liệu kỹ thuật thô
Viết sách 15 agent viết lại mọi thứ từ đầu thành các chương theo trình tự
Đánh giá & Chỉnh sửa 3 người đánh giá đưa ra 900 dòng phản hồi; 3 agent khác áp dụng toàn bộ sửa đổi

Toàn bộ quy trình — từ lúc trích xuất đến cuốn sách hoàn chỉnh cuối cùng — mất khoảng 6 giờ. Một đợt rà soát cuối cùng đảm bảo không còn mã nguồn nguyên bản nào sót lại — mọi đoạn mã đều được viết lại dưới dạng mã giả (pseudocode) với các tên biến khác đi.

10 mẫu thiết kế làm nên hệ thống

Nếu bạn không nhớ gì khác, thì đây là những lựa chọn thiết kế cốt lõi trong Claude Code.

1
AsyncGenerator vận hành Agent Loop — phát ra (yields) các Message, dùng kiểu trả về Terminal, xử lý tự nhiên backpressure và huỷ bỏ (cancellation)
2
Speculative tool execution — chạy sớm các công cụ chỉ đọc trong khi model đang streaming, ngay cả trước khi phản hồi hoàn tất
3
Phân lô an toàn đồng thời (Concurrent-safe batching) — phân nhóm công cụ theo độ an toàn, đọc song song, và ghi tuần tự
4
Fork agents để chia sẻ bộ nhớ đệm — các tiến trình con (children) chia sẻ các prompt prefix khớp từng byte, tiết kiệm ~95% input tokens
5
Nén ngữ cảnh 4 lớp — snip, microcompact, collapse, autocompact — mỗi lớp nhẹ hơn lớp trước đó
6
Bộ nhớ dựa trên tệp tích hợp LLM-powered recall — Sonnet side-query chọn lọc những đoạn nhớ liên quan, chứ không chỉ so khớp từ khóa
7
Tải công cụ hai giai đoạn — chỉ tải frontmatter khi khởi động, tải đầy đủ nội dung khi được gọi
8
Sticky latches giữ ổn định cache — một khi beta header được gửi đi, sẽ không bị huỷ bỏ (unset) giữa chừng của phiên làm việc
9
Slot reservation — giới hạn đầu ra mặc định 8K, mở rộng lên 64K khi đạt ngưỡng (tiết kiệm ngữ cảnh trong 99% yêu cầu)
10
Hook config snapshot — đóng băng lúc khởi động để ngăn chặn các cuộc tấn công injection lúc runtime

Hoàn toàn vì mục đích giáo dục. Cuốn sách này không chứa mã nguồn gốc từ Claude Code — mọi khối mã đều là mã giả nguyên gốc (pseudocode) được viết nhằm minh họa cho các mẫu thiết kế. Mục tiêu là giúp các kỹ sư hiểu về cách những AI agents ở cấp độ production được xây dựng, không phải để sao chép phần mềm độc quyền. Bìa sách "NO'REILLY" chỉ là tài liệu chế (meme) với mục đích vui vẻ và trực quan — không có liên kết nào đến O'Reilly Media.