Hãy thành thật một chút. Bạn đang làm việc với một AI assistant — có thể là ChatGPT, GitHub Copilot, hay Claude trên web — và mỗi ngày bạn lặp lại một quy trình quen thuộc đến mức nhàm chán:
Tại sao học khoá này?
- Mở chat tab mới, copy một đoạn code vào, giải thích context từ đầu
- Nhận câu trả lời, copy ngược lại vào IDE, sửa tay những chỗ không khớp
- Hỏi thêm câu tiếp theo, lại phải nhắc lại "project này dùng pnpm nhé, không phải npm"
- Đóng tab, mở session mới hôm sau — và mọi thứ biến mất, bắt đầu từ đầu
Đây không phải vấn đề của riêng bạn. Đây là cách phần lớn developer đang dùng AI: như một search engine thông minh hơn, không phải như một công cụ lập trình thực sự.
Vấn đề là gì? Bạn đang thiếu persistent context — khả năng để AI thực sự hiểu project của bạn, nhớ các quyết định đã thống nhất, và làm việc trực tiếp trên codebase thay vì qua copy-paste. Bạn cũng thiếu agentic loop — thay vì AI chỉ trả lời câu hỏi, nó có thể tự chạy lệnh, đọc file, test code, sửa lỗi, và commit — tất cả mà không cần bạn ngồi canh từng bước.
Claude Code ra đời để giải quyết đúng hai vấn đề này. Nó không phải là một chat interface. Nó là một agentic coding tool chạy trong terminal, có thể đọc toàn bộ codebase, chạy bash, gọi tool, và làm việc liên tục trên nhiều file. Anthropic đã dùng nó nội bộ và khi cho nhân viên dùng thử lần đầu, "daily actives went straight up for three days."
Khoá học này sẽ đưa bạn từ "copy-paste qua chat tab" đến "làm việc cùng Claude như một senior dev luôn hiểu project của bạn." Từ "punch cards" đến "prompts" — theo nghĩa thực sự của cụm từ đó.
Bạn sẽ học được gì?
Sau khi hoàn thành khoá học, bạn sẽ có thể:
Về tư duy
- Giải thích agentic loop hoạt động thế nào — tại sao Claude Code có thể "tự làm" thay vì chỉ "tự trả lời"
- Áp dụng EPCC mindset (Explore → Plan → Code → Commit) thay vì nhảy thẳng vào code như phản xạ tự nhiên
- Phân biệt responsible vibe coding với vibe coding liều lĩnh — biết khi nào giao quyền cho Claude, khi nào phải giữ quyền điều hướng
Về kỹ năng
- Cài đặt và cấu hình Claude Code trên mọi môi trường (terminal, VS Code, JetBrains, Desktop, Web)
- Viết prompt hiệu quả: cụ thể, tiết kiệm context, và ra kết quả đúng ngay lần đầu
- Dùng Plan Mode để align với Claude trước khi code — tránh phần lớn các lần phải rollback
- Quản lý context window chủ động:
/context,/compact,/clear— không để auto-compact tự kích hoạt
Về mở rộng
- Tạo và duy trì file CLAUDE.md — để Claude nhớ project conventions qua mọi session
- Cấu hình subagent để xử lý task song song mà không phình context
- Build và dùng skill (slash command) cho workflow lặp lại (commit, review, format report)
- Kết nối MCP server để Claude làm việc được với tools bên ngoài (Linear, Slack, GitHub)
- Tự động hoá bằng hook — những thứ phải xảy ra mỗi lần, không cần nhắc
Lộ trình 11 bài học
┌─────────────────────────────────────────────────────────────┐
│ MODULE 1: NỀN TẢNG │
│ ├── Bài 2.1: Cách Claude Code hoạt động │
│ │ (Agentic loop, tools, permissions) │
│ ├── Bài 2.2: Cài đặt Claude Code │
│ │ (Terminal, VS Code, Desktop, Web) │
│ └── Bài 2.3: Prompt đầu tiên │
│ (Permission modes, Plan Mode, Dark mode) │
├─────────────────────────────────────────────────────────────┤
│ MODULE 2: WORKFLOW CHUYÊN NGHIỆP │
│ ├── Bài 2.4: Explore → Plan → Code → Commit │
│ │ (EPCC workflow — bài quan trọng nhất) │
│ ├── Bài 2.5: Quản lý Context │
│ │ (/compact, /clear, 5 chiến thuật) │
│ └── Bài 2.6: Code review và Git workflow │
│ (Subagent reviewer, GitHub Actions) │
├─────────────────────────────────────────────────────────────┤
│ MODULE 3: PERSISTENT CONTEXT & EXTENSION │
│ ├── Bài 2.7: File CLAUDE.md │
│ │ (Hierarchy 3 cấp, /init, @ syntax) │
│ └── Bài 2.8: Subagents │
│ (Forked context, parallel tasks, COBOL demo) │
├─────────────────────────────────────────────────────────────┤
│ MODULE 4: HỆ SINH THÁI MỞ RỘNG │
│ ├── Bài 2.9: Skills & Slash commands │
│ │ (SKILL.md, scope, on-demand loading) │
│ ├── Bài 2.10: MCP — Model Context Protocol │
│ │ (HTTP vs stdio, context cost, claude mcp add) │
│ └── Bài 2.11: Hooks │
│ (Lifecycle events, exit codes, determinism) │
├─────────────────────────────────────────────────────────────┤
│ FINAL │
│ └── Bài 2.12: Quiz tổng hợp │
│ (15-20 câu bao phủ toàn bộ khoá học) │
└─────────────────────────────────────────────────────────────┘
Tổng thời gian ước tính: ~5-7 giờ đọc + 3-5 giờ thực hành = 8-12 giờ.
Cách học hiệu quả
Quy tắc 70/20/10 áp dụng cho khoá này
- 70% thực hành — Mỗi bài đều có bài tập. Đừng chỉ đọc. Mở terminal, gõ lệnh, thấy kết quả thực. Kiến thức Claude Code chỉ "ngấm" khi bạn tự tay làm ít nhất 1 task thực trong từng bài.
- 20% học từ người khác — Đọc case studies trong từng bài theo góc độ role của bạn (backend, DevOps, designer, indie hacker). Những người này đã đi qua những sai lầm để bạn không phải lặp lại.
- 10% lý thuyết — Phần khái niệm (agentic loop, context window, MCP protocol) là nền tảng cần thiết, nhưng không phải mục tiêu cuối. Hiểu đủ để áp dụng, không cần thuộc lòng.
3 nhóm reader — 3 path tiếp cận
Nếu bạn là developer mới với agentic coding:
Đọc tuần tự từ Bài 2.1. Đừng bỏ qua Bài 2.1 và 2.2 dù chúng trông có vẻ "cơ bản" — agentic loop và permission model là mental model bạn sẽ dùng trong mọi bài sau. Dành thêm thời gian ở Bài 2.4 (EPCC workflow) — đây là bài quan trọng nhất, đọc ít nhất 2 lần.
Nếu bạn đã dùng Cursor, GitHub Copilot, hoặc Codeium:
Bạn đã quen với AI-assisted coding. Điểm khác biệt của Claude Code nằm ở khả năng agentic và persistent context — bắt đầu từ Bài 2.1 để hiểu paradigm shift, sau đó jump thẳng vào Bài 2.4 (EPCC) và 2.5 (context management). Bài 2.7 (CLAUDE.md) và 2.8 (subagents) là những gì bạn chưa có ở tools cũ.
Nếu bạn là engineering lead muốn deploy Claude Code cho toàn team:
Focus vào: Bài 2.4 (workflow chuẩn), 2.7 (CLAUDE.md cho team), 2.8 (subagents để scale), 2.11 (hooks cho enforcement). Đọc Bài 2.10 (MCP) nếu team dùng tools nội bộ. Bài 2.9 (skills) sẽ giúp bạn chuẩn hoá quy trình team-wide. Quiz 2.12 dùng được để test onboarding.
Những gì bạn cần chuẩn bị
Bắt buộc
- Terminal — bất kỳ terminal nào: iTerm2, Apple Terminal, Windows Terminal, tmux, hoặc terminal tích hợp trong IDE. Claude Code chạy ở đây.
- Node.js (phiên bản 18 trở lên) — cần để cài Claude Code qua npm. Kiểm tra:
node --version. - Tài khoản Claude với gói Pro, Max, hoặc API key — Claude Code cần API access. Gói Free không hỗ trợ. Ước tính chi phí thực tế: ~$20-50/tháng với heavy use, hoặc dùng Claude Max (unlimited).
Nên có
- Git đã cài và biết dùng cơ bản (commit, push, branch) — nhiều workflow trong khoá dùng git.
- IDE quen thuộc (VS Code, JetBrains, Neovim) — không bắt buộc nhưng terminal trong IDE cho trải nghiệm tốt hơn khi xem edits.
- Một project nhỏ để thực hành — codebase thực của bạn (~100-1000 file) là sân tập tốt nhất. Có thể là side project, work project không nhạy cảm, hoặc một open-source repo bạn contribute.
Không cần
- Background về AI hay machine learning — bạn không cần hiểu neural network hay transformer. Claude Code là công cụ, không phải môn học AI.
- Kinh nghiệm prompt engineering — khoá này dạy cách viết prompt cho Claude Code từ đầu, phù hợp với dev mindset.
- Kinh nghiệm với ChatGPT hay AI tools khác — có thì tốt, không có cũng không sao.
Triết lý xuyên suốt khoá học
Có 3 nguyên tắc sẽ lặp lại trong từng bài học. Ghi nhớ từ đầu sẽ giúp bạn tiếp thu nhanh hơn nhiều.
1. "Don't write code yet"
Don't use Claude Code to write code first. Use it to ask questions about the codebase.
Phản xạ của hầu hết developer khi mở Claude Code lần đầu là gõ ngay "implement feature X" và nhấn Enter. Đây là sai lầm phổ biến nhất. Claude Code hoạt động tốt nhất khi bạn cho nó explore trước, code sau. Hỏi về architecture, tìm patterns, hiểu conventions — rồi mới bắt đầu viết. Bài 2.4 sẽ đi sâu vào điều này.
2. "Be Claude's PM"
Ask not what Claude can do for you, but what you can do for Claude.
Bạn không phải là người gõ code nữa. Bạn là Product Manager của Claude — người chỉ định yêu cầu rõ ràng, review output, đưa ra feedback, quyết định direction. Claude là senior dev làm việc cực nhanh nhưng cần bạn chỉ đạo. Nếu bạn mơ hồ, Claude sẽ đoán — và đoán không phải lúc nào cũng đúng.
3. "If it should always happen, hook it"
If something needs to happen every time without fail, don't put it in a prompt. Put it in a hook.
Đây là nguyên tắc phân biệt bốn công cụ mở rộng của Claude Code:
- CLAUDE.md — những gì Claude phải biết mọi lúc (project conventions, build commands)
- Skill — những quy trình lặp lại theo yêu cầu (commit message format, PR checklist)
- Hook — những hành động phải xảy ra tự động, không cần nhắc (chạy lint trước commit, gửi Slack notification khi xong)
- Prompt — những gì chỉ cần một lần, không lặp lại
Khi bạn nhầm tool cho đúng ngữ cảnh, workflow sẽ giòn. Khi bạn dùng đúng tool, workflow chạy như máy.
Sai lầm người mới thường gặp
Nhìn lại kinh nghiệm của nhiều developer lần đầu dùng Claude Code, có 3 sai lầm lặp đi lặp lại đặc biệt tốn thời gian:
Sai lầm 1: Nhảy thẳng vào code, bỏ qua Plan Mode
Bạn mô tả feature, Claude bắt đầu code ngay, 20 phút sau bạn nhận ra Claude đang đi theo hướng hoàn toàn khác với bạn nghĩ. Phải rollback, giải thích lại từ đầu.
Cách tránh: Bắt đầu mỗi task phức tạp bằng Shift+Tab để vào Plan Mode. Đọc plan của Claude, align trước khi cho phép code. Mất thêm 3 phút ở đây tiết kiệm 30 phút sửa sau.
Sai lầm 2: Không quản lý context, để auto-compact tự kích hoạt
Session dài 3-4 tiếng, context window đầy 80%, Claude tự compact — và bắt đầu "quên" chi tiết quan trọng bạn đã nói từ đầu. Kết quả là code bị lệch spec mà bạn không hiểu tại sao.
Cách tránh: Cứ 30-45 phút gõ /context, chủ động quyết định /compact (còn dở task) hay /clear (đổi task). Đừng để hệ thống tự quyết định thay bạn.
Sai lầm 3: Chưa setup CLAUDE.md, mỗi session phải brief lại từ đầu
"Project này dùng pnpm". "Test command là pnpm test --run". "Dùng named export". Bạn lặp đi lặp lại những câu này mỗi session mới vì Claude không có bộ nhớ giữa các session.
Cách tránh: Sau 3 lần nhắc cùng một thứ cho Claude, đó là tín hiệu nên đẩy thứ đó vào CLAUDE.md. Một lần setup, mọi session sau Claude tự nhớ. Bài 2.7 hướng dẫn chi tiết.
Bạn sẵn sàng chưa?
Trước khi bắt đầu Bài 2.1, hãy dành 5 phút viết ra 3 thứ này:
- Project nào bạn sẽ dùng để thực hành trong khoá học? Không cần project lớn hay hoàn hảo. Một repo bạn đang làm, có vài trăm file, bạn hiểu domain — thế là đủ. Ghi tên repo và path xuống.
- Pain point lớn nhất với workflow coding hiện tại của bạn là gì? Copy-paste mệt mỏi? Phải giải thích context lặp lại? Mất focus khi chuyển qua chat tab? Không có reviewers sẵn sàng? Ghi cụ thể một câu.
- Bạn muốn hoàn thành khoá học vào ngày nào? Không cần áp lực, nhưng có deadline — dù mềm — giúp bạn không để khoá học "đọc mãi không xong". Với tổng 8-12 giờ, đặt target 2-3 tuần là hợp lý nếu bạn dành 1-2 tiếng mỗi tuần.
Giữ 3 thứ này. Chúng sẽ là "sân tập" và kim chỉ nam xuyên suốt khoá học.
Bắt đầu nào
Bài 2.1 sẽ trả lời câu hỏi mà nhiều người dùng Claude Code nhiều tuần nhưng vẫn mơ hồ: Claude Code thực ra hoạt động thế nào?
Không phải "nó dùng AI" hay "nó đọc code của bạn" — mà là: agentic loop là gì, Claude dùng tools thế nào, permission model hoạt động ra sao, và tại sao cùng một prompt cho kết quả khác nhau tùy cách bạn setup. Hiểu phần này giúp bạn debug khi Claude làm sai, và biết cách setup để Claude làm đúng ngay từ đầu.
Khoá học "Claude Code 101" — bản tiếng Việt v1.0 Bản quyền 2026 Anthropic. Mọi quyền được bảo lưu.