Các bài trong khoáBảng tóm tắt

25 bài

Bảng tóm tắt CCDV-F

Tóm tắt cả chứng chỉ Claude Certified Developer Foundations trên một trang, gồm cấu trúc đề, cách đề ra câu hỏi, và bảng chọn nhanh cho tám domain.

  • 17 phút đọc
  • Đối chiếu docs 02/11/2026
  • 6 nguồn

Trang này gom ý chính của 25 bài vào một chỗ để bạn ôn trước khi thi. Mỗi ý chỉ nói ngắn; muốn hiểu vì sao thì mở bài tương ứng (số bài ghi trong ngoặc).

Đề thi gồm những gì

MụcChi tiết
Số câu53, một đáp án hoặc nhiều đáp án (câu nào cũng ghi rõ chọn mấy)
Thời gian120 phút
Cấu trúcMỗi câu là một tình huống riêng, không chia theo kịch bản
Điểm đậu720 trên thang 100–1.000
Lệ phí, hiệu lực$125; chứng chỉ có hiệu lực 12 tháng
Kết quảĐạt hay không, điểm quy đổi, và tỉ lệ đúng theo từng domain
DomainTỉ trọngSố bài
1. Agents and Workflows14,7%3
2. Applications and Integration33,1%6
3. Claude Code3,1%1
4. Eval, Testing, and Debugging2,6%1
5. Model Selection and Optimization16,8%4
6. Prompt and Context Engineering11,0%3
7. Security and Safety8,1%4
8. Tools and MCPs10,6%3

Domain 2 chiếm một phần ba đề. Domain 3 và 4 rất nhỏ trên giấy, nhưng kiến thức Claude Code và gỡ lỗi xuất hiện rải rác ở các domain khác.

Đề nghĩ thế nào

Ba câu hỏi mẫu Anthropic công bố và các câu luyện thi cho thấy vài quy tắc lặp lại:

  • Tất định thắng lời dặn. Đề ghi "tuyệt đối", "trong bất kỳ trường hợp nào", "tất định" thì chọn code chạy ngoài model: hook, bộ lọc đầu ra, schema chặt. Thêm câu vào system prompt không phải là cơ chế thực thi (7.2, 7.3, 8.1).
  • Quan sát trước, sửa sau. Đầu ra lạ, từ chối sai, chi phí tăng: bước đầu là đọc trace hay đo theo tính năng, không phải đổi model hay cắt đều (4.1, 5.4).
  • Ràng buộc bắt buộc thắng mong muốn. Hợp đồng bắt dùng Bedrock, chính sách bắt dữ liệu ở trong hạ tầng của mình: làm đúng từ đầu, không "ship trước rồi tính" (2.1, 7.2).
  • Chọn bộ đủ mảnh. Review đòi cả cấu hình, xử lý lỗi và test; đầu ra cần schema, prompt và bước kiểm; dự toán cần đủ token vào, ra, giá và cache (2.4, 5.4, 6.3).
  • Lỗi là một nhánh có xử lý. Thử lại có giới hạn, sửa tại chỗ, dự phòng; không thử lại mãi, không tắt bước kiểm, không đẩy đầu ra hỏng xuống hệ thống sau (4.1, 6.3).
  • Chữa đúng gốc. Tăng context window, tăng temperature hay đổi model lớn hơn không chữa được thông tin bị chìm, prompt injection hay lỗi dựng yêu cầu (5.1, 6.1, 7.1).
  • Dùng thứ có sẵn và chuẩn. SDK chính thức, Batch API, tool có sẵn, MCP server và skill để dùng lại, thay vì tự viết lại hay chép mã cho từng đội (2.3, 5.2, 8.3).
  • Cấu hình là code. Prompt, CLAUDE.md, settings.json, model ID, phiên bản plugin đều vào version control và qua review (2.6).
  • Loại đáp án cực đoan. Tắt hết hook, bỏ hẳn tool, khởi động lại agent liên tục, giữ model cũ mãi, gọi người trực cho mọi lỗi.

Domain 1: Agents and Workflows

  • Code quyết định bước tiếp theo là workflow, model quyết định là agent. Chọn bậc thấp nhất đủ dùng; đường chuẩn làm workflow, chỉ gọi agent ở điểm cần phán đoán (1.1).
  • Manager/supervisor = orchestrator giao việc cho subagent; mỗi subagent context riêng, tool riêng. Tầng quản lý phải có ngân sách, kiểm schema, hợp đồng bàn giao (1.1).
  • Chỉ chia nhiều agent khi cần bảo vệ context, chạy song song hay chuyên môn hoá; nhiều agent tốn gấp 3–10 lần token (1.1).
  • Client SDK: tự viết vòng lặp. Agent SDK: vòng lặp, tool, quyền, hook có sẵn. Managed Agents: Anthropic chạy vòng lặp, tool chạy trong sandbox của Anthropic hoặc tự host (1.2).
  • Năm mẫu workflow; quy trình có đường quay lại thì mẫu đồ thị; việc dài thì lưu checkpoint; framework giúp nhanh nhưng che prompt thật (1.3).
Tình huốngChọn
Đội đã chọn Agent SDKĐể SDK lo vòng lặp, gọi tool, lịch sử (1.2)
Tuỳ chỉnh cũ ghi đè mặc định của SDKXét từng cái theo lý do ban đầu và khả năng hiện tại của SDK (1.2)
Việc 30–60 phút cần chạy tiếp khi bị ngắtCheckpoint: lưu trạng thái, nạp lại (1.3)
Phải chặn một hành động chắc chắnHook, không phải prompt (1.2)
  1. Các bước biết trước, không đổi?Workflow
  2. Đường chính biết trước, vài chỗ cần phán đoán?Workflow, gọi agent ở điểm quyết định
  3. Ticket nhiều vấn đề con, agent rối?Orchestrator và subagent chuyên trách
  4. Còn lạiViệc mở, không đoán được số bước: agent có giới hạn

Domain 2: Applications and Integration

  • Bước đầu là diễn giải mục tiêu nghiệp vụ thành yêu cầu chức năng và hạ tầng đo được; yêu cầu hạ tầng loại bớt lựa chọn trước (2.1).
  • Ship xong là vận hành và bảo trì. Model đi qua Active, Legacy, Deprecated, Retired; báo trước ít nhất 60 ngày. Đổi model hay tham số: kiểm mức dùng, regression test, đổi từng đợt, kiểm hệ thống phía sau (2.2).
  • Messages API không giữ trạng thái; người dùng chờ thì stream; không ai chờ thì Batch API (giảm 50%, tối đa 24 giờ); dùng tool thì gửi lại khối thinking nguyên vẹn (2.3).
  • Service async thì dùng async client; SDK tự thử lại 2 lần, timeout 10 phút; test ba tầng; CI giữ đủ cổng chất lượng; refactor từng bước nhỏ (2.4).
  • Mỗi giao diện gửi kèm thứ khác nhau: Agent SDK mặc định chỉ có system prompt tối thiểu. Nội dung bên thứ ba vào tool_result; schema cho phép "không rõ"; phiên có luật hết hạn và đặt lại (2.5).
  • CLAUDE.md theo tầng; .claude/settings.json commit, settings.local.json không; model ID là bản ghim, alias thì đổi; prompt có nguồn duy nhất và review; plugin phụ thuộc có dải phiên bản (2.6).
Tình huốngChọn
10.000 tài liệu qua đêm, chi phí là chínhMessage Batches API (2.3)
Hiện chữ dần cho người đang chờStreaming (2.3)
Hợp đồng bắt đi qua BedrockGọi qua Bedrock từ đầu, logic không phụ thuộc nhà cung cấp (2.1)
Không ai cần đổi nhà cung cấpTích hợp thẳng qua SDK của Claude (2.1)
Tham số bị bỏ, ý nghĩa thay thế hơi khácRegression test trước, đổi từng đợt (2.2)
Pull request thiếu cấu hình, xử lý lỗi, testYêu cầu sửa đủ cả ba (2.4)
Phân loại và soạn trả lờiHai lần gọi riêng (2.5)
Plugin cập nhật làm hỏngTheo dõi và ghim phiên bản plugin (2.6)
  1. Người dùng đang chờ?Messages API, streaming
  2. Khối lượng lớn, không gấp?Batch API, nếu nền tảng có
  3. Hợp đồng hay chính sách bắt một nền tảng?Gọi qua nền tảng đó, kiểm tính năng có và không có
  4. Còn lạiĐổi model: hướng dẫn chuyển đổi, regression test, bật dần có đường lùi

Domain 3: Claude Code

  • Rule, skill (command đã gộp vào skill), subagent, auto memory: mỗi thứ một việc, đều là ngữ cảnh chứ không phải luật bắt buộc (3.1).
  • Khởi tạo repo bằng /init, commit CLAUDE.md và .claude/settings.json cấp dự án (3.1).
  • Phiên: --continue, --resume, /resume, /clear, /compact (3.1).
  • Trong CI: claude -p, quyền khai sẵn, --output-format json hoặc stream-json; --bare cho script (3.1).
Chế độ quyềnChạy không hỏi
defaultChỉ đọc (3.1)
acceptEditsĐọc, sửa file, lệnh file thông dụng (3.1)
planĐọc và lập kế hoạch (3.1)
autoMọi thứ, có model phân loại kiểm từng hành động (3.1)
dontAskChỉ thứ đã cho phép trước (3.1)
  1. Quy ước cả đội cần trong mọi phiên?CLAUDE.md ở gốc repo
  2. Quyền, model mặc định, hook cho cả đội?.claude/settings.json cấp dự án
  3. Quy trình gõ lại nhiều lần?Skill
  4. Còn lạiChạy trong pipeline: claude -p, quyền trong settings, đầu ra JSON

Domain 4: Eval, Testing, and Debugging

  • 400 và 413 thì sửa yêu cầu; 429, 5xx, 529 thì chờ thử lại; 504 thì chuyển streaming hay Batch (4.1).
  • 429 có nhiều loại: giới hạn tốc độ (có retry-after), giới hạn tăng tốc, chạm mức chi tiêu tháng (không retry-after, thử lại vô ích). Hạn mức tự đặt trả 400 (4.1).
  • Đầu ra sai mà API trả 200: đọc trace, gọi đúng tên kiểu hỏng (format drift, mất ngữ cảnh, injection, lẫn phiên) rồi mới sửa (4.1).
  • Chia mức độ lỗi theo ảnh hưởng và khả năng tự phục hồi để chọn gọi người trực hay ghi log (4.1).
  1. Có mã lỗi HTTP?Lớp tích hợp
  2. stop_reason là max_tokens?Tăng max_tokens, đầu ra bị cắt
  3. Trace cho thấy đầu vào sai hay lẫn dữ liệu?Code dựng messages
  4. Còn lạiĐầu vào đúng mà đầu ra sai: prompt, ngữ cảnh, schema

Domain 5: Model Selection and Optimization

  • Model sinh từng token bằng cách lấy mẫu: đầu ra khác nhau giữa các lần và có thể trôi chảy mà sai. Context window là bộ nhớ làm việc; temperature không mở rộng nó (5.1).
  • Effort (low tới max) chỉnh độ sâu suy luận; fast mode tăng tới 2,5 lần tốc độ sinh, giá cao hơn; ví dụ mẫu 3–5 cái, đa dạng, bọc thẻ (5.1).
  • Claude API là REST ở api.anthropic.com; dùng SDK chính thức; streaming là SSE, kết nối bền hai chiều thì WebSocket (5.2).
  • Chọn model theo cả chất lượng, độ trễ, chi phí, cần mục tiêu trước; thử chỉnh effort trước khi đổi model (5.3).
  • Đầu ra đắt gấp 5 lần đầu vào; cache phần tĩnh lặp lại; gắn nhãn tính năng cho usage (5.4).
ModelGiá vào / ra mỗi triệu tokenHợp với
Fable 5.1$10 / $50Suy luận khó, agent rất dài (5.3)
Opus 5.5$4 / $20Agent lập trình, việc tri thức phức tạp (5.3)
Sonnet 5.5$2 / $10Việc hằng ngày, nhanh và giỏi (5.3)
Haiku 5.5từ $0,10 / $0,50Khối lượng lớn, độ trễ thấp (5.3)
Hệ sốẢnh hưởng
Batch API−50% (5.4)
Ghi cache 5 phút / 1 giờ×1,25 / ×2 giá đầu vào (5.4)
Đọc cache×0,1; Opus 5.5, Sonnet 5.5 ×0,05; Fable 5.1 ×0,025 (5.4)
inference_geo: "us"×1,1 (5.4)
  1. Đội chưa có mục tiêu chất lượng, độ trễ, chi phí?Hỏi mục tiêu trước
  2. Việc đơn giản, khối lượng lớn, cần nhanh rẻ?Model nhỏ, nhanh
  3. Model mới đổi định dạng đầu ra?Sửa prompt, chạy lại eval, feature flag theo luồng
  4. Còn lạiChi phí tăng không rõ vì đâu: đo token theo tính năng trước

Domain 6: Prompt and Context Engineering

  • Prompt engineering nắn từng prompt; context engineering quản lý những gì đi vào context qua các lượt (6.1).
  • Context càng dài càng kém (context rot). Kết quả tool cũ thì cắt tỉa (context editing), hội thoại dài thì compaction, việc tìm tòi thì subagent (6.1).
  • Chỉ dẫn rõ, có lý do, có bước đánh số; hành vi và định dạng trong system prompt; prefill đã bị bỏ, dùng structured outputs; sửa prompt từng thay đổi một, đo bằng eval (6.2).
  • Structured outputs hay strict tool use để đúng schema, nhưng vẫn kiểm stop_reason, schema, luật nghiệp vụ; đọc phòng thủ; không tin câu trả lời chỉ vì nó tự tin (6.3).
Tình huốngChọn
Kết quả tool cũ hết giá trị lấp đầy contextCắt tỉa kết quả tool (6.1)
Model bám chi tiết cũ không còn liên quanCompaction (6.1)
Bước sau không được thấy lịch sửCô lập ngữ cảnh bằng subagent (6.1)
Chỉ dẫn rải giữa system và userGom về system prompt (6.2)
Có vài ví dụ gắn nhãn, trường hợp khóFew-shot trong prompt (6.2)
System prompt dài, mâu thuẫn, lỗi thờiRà soát rồi viết lại (6.2)
JSON thỉnh thoảng hỏngKiểm theo schema, thử lại hoặc dự phòng (6.3)
  1. Thông tin quan trọng bị chìm dù context còn chỗ?Cắt tỉa hoặc compaction, giữ trạng thái việc đang làm
  2. Đầu ra phải đúng schema?Structured outputs, rồi kiểm trước khi chuyển đi
  3. Câu trả lời tự tin đi thẳng vào hệ thống khác?Đòi trích dẫn, cho phép "không biết", để code tính số
  4. Còn lạiPrompt kém ở một nhóm đầu vào: sửa nhắm vào nhóm đó, đo lại bằng eval

Domain 7: Security and Safety

  • Mối đe doạ riêng: prompt injection, jailbreak, rò rỉ dữ liệu, đầu ra không an toàn. Nội dung bên thứ ba vào tool_result, mã hoá JSON, chính sách trong system prompt; quyền tối thiểu (7.1).
  • Lọc hoặc che dữ liệu nhạy cảm ngay tại ranh giới ứng dụng, trước khi gửi cho Claude (7.1).
  • Guardrail nhiều lớp; chính sách tuyệt đối cần lớp tất định; chính sách nơi lưu dữ liệu thắng mong muốn ship nhanh (7.2).
  • Hook PreToolUse chặn được (thoát mã 2 hoặc deny), PostToolUse thì tool đã chạy; nhắm hẹp bằng matcher và if, chỉ cho hành động rủi ro (7.3).
  • Khoá gắn danh tính, service account cho việc chung, WIF bỏ khoá tĩnh; 401 là khoá sai hay hết hạn, 403 là thiếu quyền; mỗi môi trường một khoá, lưu trong secrets manager (7.4).
Tình huốngChọn
Trang web có chữ ẩn ra lệnh cho modelCoi là không tin cậy, tách khỏi chỉ dẫn, guardrail hay hook chặn hành động nhạy cảm (7.1)
Văn bản người dùng có thể chứa số tài khoản, mật khẩuXác định ranh giới, lọc hay che tại ranh giới (7.1)
Chính sách nội dung "không bao giờ" bị vi phạmLọc đầu ra tất định (7.2)
Agent đã chạy truy vấn phá huỷHook chặn hoặc đòi duyệt trước khi chạy (7.3)
Hook chạy cho mọi hành động, agent chậmChỉ gắn hook cho hành động rủi ro cao (7.3)
Khoá API dùng chung ba môi trườngMỗi môi trường một khoá (7.4)
  1. Người dùng là kẻ tấn công?Sàng lọc đầu vào, xử lý người cố tình lặp lại
  2. Kẻ tấn công nằm trong nội dung Claude đọc?tool_result, mã hoá JSON, sàng lọc kết quả tool
  3. Chính sách tuyệt đối?Lớp tất định: lọc đầu ra, hook, luật quyền
  4. Còn lạiNghi khoá bị lộ: tắt ngay, tạo khoá mới, xem mức dùng theo khoá

Domain 8: Tools and MCPs

  • Tool client thì bạn chạy và giữ vòng lặp; tool máy chủ thì Anthropic chạy, có thể dừng ở pause_turn (8.1).
  • Mô tả chi tiết là yếu tố quan trọng nhất của tool; schema chặt với strict: true; kiểm tham số trước khi chạy và trả is_error có hướng dẫn sửa; bộ tool gọn, có tiền tố (8.1).
  • MCP: host tạo client, mỗi client nối một server; tool do model điều khiển, resource do ứng dụng, prompt do người dùng; lỗi chạy tool trả isError: true (8.2).
  • Server cục bộ thì stdio và giữ stdout sạch; dùng chung thì Streamable HTTP, triển khai nơi mọi ứng dụng truy cập được (8.2).
  • Có sẵn thì dùng tool có sẵn; kiến thức và quy trình thì skill (nạp dần); kết nối hệ thống ngoài cho nhiều ứng dụng thì MCP; hai thứ thường đi cùng (8.3).
Tình huốngChọn
Agent gọi tool với tham số ngoài schemaGiữ schema chặt, kiểm trước khi chạy, trả lỗi có cấu trúc (8.1)
Bỏ mô tả tool vì tên đã rõKhông: model dựa vào mô tả để chọn tool (8.1)
Quá nhiều tool chồng nhauGộp, bỏ tool thừa, làm rõ mô tả (8.1)
MCP server cho Claude Code chạy cục bộstdio (8.2)
Dịch vụ nội bộ cần dùng lại ở nhiều ứng dụngMCP server (8.2)
Skill có chỉ dẫn và script cho cả độiThư mục skill mà Claude Code nhận ra (8.3)
  1. Anthropic đã có tool làm được?Dùng tool có sẵn, mở rộng nếu thiếu chút ít
  2. Kết nối hệ thống ngoài cho nhiều ứng dụng?MCP server
  3. Kiến thức, quy trình, tài liệu tham khảo?Skill
  4. Còn lạiChỉ một ứng dụng cần, nghiệp vụ riêng: tool tự viết

Tên trong đề và tên hiện nay

Đề thi được soạn từ 07/2026, và docs đã đổi ở vài chỗ so với đề hoặc so với cách làm cũ hay gặp trong tài liệu ôn. Bài học viết theo docs hiện tại, kèm một câu cho biết đề chấm thế nào.

Trong đề hoặc cách cũHiện nayBài
Chỉnh temperature để đầu ra ổn địnhAPI 2026-10-21 bỏ temperature, top_p, top_k (lỗi 400); model từ 4.7 chỉ nhận mặc định. Dựa vào kiểm đầu ra và thử lại5.1
Extended thinkingModel Claude 5 dùng adaptive thinking bật sẵn, chỉnh độ sâu bằng effort; ngân sách budget_tokens chỉ còn ở model cũ5.1
Manager/supervisorDocs gọi là orchestrator-workers, orchestrator và subagent1.1
Framework Strands, LangGraph, PydanticAIDocs Anthropic chỉ nhắc Claude Agent SDK, Strands, Rivet, Vellum, và khuyên bắt đầu bằng gọi API trực tiếp1.3
BYOC (tự host trong cloud của mình)Docs không dùng chữ này; gần nhất là sandbox tự host của Managed Agents7.2
Ép gọi tool bằng tool_choice any hay toolLỗi 400 trên Opus 5.5, Sonnet 5.5, Fable 5.1; dùng auto với strict tool use5.3, 8.1
Prefill phần đầu câu trả lời để ép định dạngBị từ chối từ các model 4.6; dùng structured outputs6.2
Header x-api-keyHeader chính là Authorization: Bearer; x-api-key vẫn được nhận2.4, 5.2
Custom slash commandĐã gộp vào skill; .claude/commands/ vẫn chạy3.1
Transport SSE của MCPBị bỏ dần; dùng Streamable HTTP8.2

Nguồn

  1. Exam Guide CCDV-F v1.0(mở tab mới)
  2. Models overview (Claude API Docs)(mở tab mới)
  3. Pricing (Claude API Docs)(mở tab mới)
  4. Migrating to API version 2026-10-21 (Claude API Docs)(mở tab mới)
  5. Mitigate jailbreaks and prompt injections (Claude API Docs)(mở tab mới)
  6. Extend Claude Code - features overview (Claude Code Docs)(mở tab mới)

Nắm rồi thì thử sức với đề

Xem khoá luyện thi
Bảng tóm tắt CCDV-F · Anthropic Exam Pro