Các phương pháp hay nhất với Claude Code: Từ 'có thể sử dụng' đến 'thực sự hữu ích'

@PandaTalk8
TIẾNG TRUNG4 tháng trước · 23 thg 3, 2026
503K
1.6K
368
42
3.6K

TL;DR

Hướng dẫn toàn diện để làm chủ Claude Code, bao gồm các tính năng thiết yếu như cấu hình CLAUDE.md, Chế độ Lập kế hoạch (Plan Mode) cho kiến trúc và quản lý ngữ cảnh hiệu quả nhằm tối đa hóa năng suất AI.

Tôi đã dùng Claude Code hơn nửa năm, và tôi vấp phải nhiều cạm bẫy hơn cả số dòng code tôi viết ra.

Ban đầu, tôi nghĩ Claude Code chỉ là một "Copilot cao cấp hơn"—gõ lệnh trong terminal, nó viết code, xong việc. Sau đó, tôi nhận ra rằng giới hạn của công cụ này cao hơn nhiều so với tôi tưởng tượng, nhưng chỉ khi bạn biết cách sử dụng nó.

Bài viết này kết hợp tài liệu chính thức và kinh nghiệm thực tế để tổng hợp những mẹo sử dụng quan trọng nhất mà tôi cho là đúng. Một số là bài học xương máu, số khác là những tính năng ẩn mà tôi chỉ khám phá ra khi đọc tài liệu.

1. CLAUDE.MD: Tính năng bị đánh giá thấp nhất

Nếu bạn chỉ nhớ một điều từ bài viết này, hãy nhớ điều này: Hãy viết CLAUDE.md thật tốt.

CLAUDE.md là tệp hướng dẫn mà Claude Code tự động đọc khi bắt đầu mỗi cuộc trò chuyện. Nó giống như một tài liệu onboarding bạn viết cho một đồng nghiệp mới—bất cứ điều gì bạn muốn họ biết, bạn viết vào đó.

Nhiều người không viết CLAUDE.md hoặc chỉ viết vài dòng. Kết quả là phải giải thích cấu trúc dự án, tiêu chuẩn code và lựa chọn tech stack từ đầu trong mỗi cuộc trò chuyện. Giống như việc giới thiệu lại công ty cho đồng nghiệp của bạn mỗi sáng vậy.

Một CLAUDE.md tốt nên bao gồm:

markdown
1# Tên Dự án
2
3## Lệnh Build và Test
4- Cài đặt dependencies: npm install
5- Chạy test: npm test
6- Test đơn lẻ: npm test -- --grep "tên test"
7- Format code: npm run format
8
9## Tiêu chuẩn Code
10- Python: Sử dụng ruff để format, độ rộng dòng 88
11- Testing: Sử dụng pytest, một tệp test cho mỗi service
12- API Routes: Sử dụng tên tệp số nhiều: users.py, orders.py
13- Commit messages: Tiếng Anh, định dạng: type(scope): description
14
15## Quyết định Kiến trúc
16- Chọn Tailwind thay vì CSS Modules vì team đã chuẩn hóa trên nó
17- Kiểm tra quyền người dùng được thực hiện trong middleware; không lặp lại trong mọi route
18- Redis cache key prefix: app:v1:
19
20## Cạm bẫy Thường gặp
21- Giới hạn kết nối DB pool là 20; không mở kết nối mới trong vòng lặp
22- Không mock database; lần trước mock pass nhưng production migration thất bại

Nguyên tắc chính:

Đầu tiên, viết những thứ Claude không thể suy luận từ code. "Tại sao" của một dự án quan trọng hơn "cái gì." Bạn không cần giải thích cách sử dụng React, nhưng bạn cần nói với nó "chúng tôi chọn Tailwind vì team đã chuẩn hóa trên nó."

Thứ hai, giữ dưới 200 dòng. Tài liệu chính thức đề cập rõ ràng rằng nếu CLAUDE.md quá dài, Claude có thể bỏ qua các quy tắc. Sử dụng tiêu đề markdown và danh sách để dễ quét.

Thứ ba, không đưa nội dung thay đổi thường xuyên. Tài liệu API chi tiết hoặc mô tả từng tệp không thuộc về CLAUDE.md. Chỉ cung cấp các liên kết.

Bốn Cấp độ của CLAUDE.md

Claude Code hỗ trợ bốn cấp độ CLAUDE.md, được sắp xếp theo thứ tự ưu tiên từ cao nhất đến thấp nhất:

Mr Panda - inline image

Trong CLAUDE.md toàn cục của tôi, tôi thường viết:

text
1- Tôi là một kỹ sư full-stack; không cần giải thích quá kỹ các khái niệm cơ bản
2- Giữ câu trả lời ngắn gọn; bỏ qua những lời xã giao không cần thiết
3- Đừng tóm tắt những gì bạn đã làm sau khi thay đổi code; tôi sẽ kiểm tra diff
4- Ưu tiên các giải pháp đơn giản; tránh over-engineering

Bốn dòng này có thể giúp bạn tiết kiệm hàng trăm lần sửa lỗi lặp đi lặp lại.

Nâng cao: Sắp xếp quy tắc với .claude/rules/

Khi dự án phát triển, một tệp CLAUDE.md sẽ không chứa hết mọi thứ. Giải pháp chính thức thanh lịch hơn: Chia quy tắc vào thư mục .claude/rules/.

text
1.claude/rules/
2├── testing.md # Tiêu chuẩn testing
3├── api-style.md # Phong cách viết API
4└── frontend.md # Quy ước frontend

Thậm chí mạnh mẽ hơn, bạn có thể sử dụng YAML frontmatter để giới hạn quy tắc cho các tệp cụ thể:

text
1---
2paths: ["src/api/**/*.ts", "src/routes/**/*.ts"]
3---
4
5Các route API phải bao gồm xác thực đầu vào và xử lý lỗi.
6Tất cả các endpoint mới đều yêu cầu integration tests trong tests/api/.

Bằng cách này, quy tắc chỉ được tải khi Claude truy cập các tệp phù hợp, tiết kiệm không gian context.

2. Chất lượng Prompt Quyết định Chất lượng Đầu ra

Điều này nghe có vẻ sáo rỗng, nhưng tôi đã thấy quá nhiều người sử dụng Claude Code như thế này:

"Hãy giúp tôi viết tính năng đăng nhập"

Sau đó họ lo lắng về một đống code được tạo ra—đây không phải điều tôi muốn.

Một hướng dẫn tốt nên chứa ba yếu tố: Mục tiêu, Ràng buộc và Ngữ cảnh.

Hướng dẫn Tồi vs Hướng dẫn Tốt

Tồi: "Thêm tính năng tìm kiếm vào danh sách người dùng"

Tốt: "Thêm một ô tìm kiếm phía trên bảng trong @src/pages/UserList.tsx. Tìm kiếm nên sử dụng backend API /api/users?search=xxx, không lọc phía frontend. Sử dụng debounce 300ms, và giữ phong cách nhất quán với component Filter hiện tại."

Sự khác biệt? Hướng dẫn tốt làm giảm sự mơ hồ. Claude Code không phải đoán xem bạn muốn tìm kiếm frontend hay backend, thời gian debounce hay tiêu chuẩn styling.

Mẹo Prompting Được Khuyến nghị Chính thức

1. Sử dụng @ để tham chiếu các tệp cụ thể

Claude Code hỗ trợ sử dụng @filepath để kéo nội dung tệp trực tiếp vào context. Thay vì nói "đoạn code liên quan đến auth," viết @src/auth/login.ts chính xác hơn nhiều. Bạn thậm chí có thể chỉ định phạm vi dòng: @src/auth/login.ts#5-30.

2. Dán ảnh chụp màn hình và hình ảnh

Sử dụng Ctrl+V để dán ảnh trực tiếp. Khi debug các vấn đề UI, một ảnh chụp màn hình "nó trông như thế nào" so với "tôi muốn nó như thế nào" hiệu quả hơn gấp mười lần so với mô tả bằng văn bản.

3. Cung cấp tiêu chí xác thực

Đừng chỉ nói "giúp tôi sửa lỗi này," hãy nói:

"Sửa lỗi xác thực lại thất bại sau khi hết hạn đăng nhập. Sau khi sửa, nhấp vào bất kỳ nút nào sau khi token hết hạn sẽ tự động chuyển hướng đến trang đăng nhập. Các test case nằm trong @tests/auth.test.ts; chạy chúng để xác nhận chúng pass sau khi sửa."

Cung cấp cho Claude một tiêu chuẩn tự kiểm tra—test case, ảnh chụp màn hình, đầu ra mong đợi—để nó có thể tự kiểm tra chất lượng công việc và giảm bớt việc qua lại.

4. Nói rõ KHÔNG nên làm gì

Claude Code đôi khi có thể quá nhiệt tình—bạn yêu cầu nó sửa một lỗi, và nó refactor luôn code xung quanh. Nói rõ ràng "chỉ thay đổi hàm này, không động vào code khác" giúp tiết kiệm rất nhiều rắc rối.

Khi nào hướng dẫn mơ hồ hữu ích

Không phải mọi tình huống đều cần độ chính xác. Hướng dẫn mơ hồ thực sự tốt hơn cho các tác vụ khám phá:

  • "Có thể cải thiện điều gì trong tệp này?"
  • "Giúp tôi hiểu kiến trúc của module này"
  • "Có vấn đề tiềm ẩn nào với code này không?"

Nhưng một khi bạn đến giai đoạn triển khai, hãy chuyển lại chế độ chính xác.

3. PLAN MODE: Suy nghĩ Rõ ràng Trước khi Hành động

Claude Code có Plan Mode, mà tôi cho là workflow bị đánh giá thấp nhất.

Cách vào Plan Mode

Ba cách:

text
1# Bắt đầu trực tiếp trong plan mode
2claude --permission-mode plan
3
4# Chuyển đổi trong cuộc trò chuyện (nhấn Shift+Tab hai lần)
5Shift+Tab Shift+Tab
6
7# Nói trong prompt
8"Chưa thay đổi code, hãy giúp tôi lập kế hoạch"

Trong Plan Mode, Claude Code chỉ có thể đọc tệp và tìm kiếm code; nó không thể thực hiện bất kỳ sửa đổi nào. Nó khám phá codebase, phân tích yêu cầu của bạn và cung cấp một kế hoạch triển khai chi tiết.

Cách sử dụng Plan Mode đúng cách

Thao tác chính: Nhấn Ctrl+G để mở và chỉnh sửa kế hoạch trong editor của bạn.

Điều này có nghĩa là bạn có thể:

  1. Để Claude tạo một kế hoạch ban đầu
  2. Ctrl+G để mở kế hoạch, xóa các phần bạn không đồng ý và thêm ý tưởng của riêng bạn
  3. Chuyển lại chế độ bình thường (Shift+Tab) và để Claude thực thi theo kế hoạch đã sửa đổi

Thay đổi một kế hoạch chỉ mất một câu; thay đổi code đã viết mất gấp mười lần thời gian.

Workflow được khuyến nghị cho các tác vụ phức tạp

Quy trình tiêu chuẩn chính thức gồm bốn bước: Khám phá → Lập kế hoạch → Triển khai → Xác minh.

text
11. Vào Plan Mode
22. Yêu cầu Claude đọc code liên quan: "Đọc code trong src/auth/ để hiểu logic session"
33. Yêu cầu một kế hoạch: "Phát triển kế hoạch migration OAuth2"
44. Ctrl+G để xem xét và chỉnh sửa kế hoạch
55. Chuyển lại chế độ bình thường
66. "Triển khai theo kế hoạch, chạy test sau khi viết"
77. Yêu cầu Claude tự kiểm tra theo yêu cầu

Khi nào bạn không cần Plan Mode

  • Thay đổi tên biến
  • Sửa lỗi chính tả rõ ràng
  • Thêm một dòng log đơn lẻ

Tiêu chí rất đơn giản: Nếu chỉ có một cách để triển khai tác vụ, hãy làm trực tiếp. Nếu có nhiều lựa chọn, hãy lập kế hoạch trước.

4. SUB-AGENTS: Sức mạnh Đa nhiệm của Claude Code

Sub-agents là một cơ chế mạnh mẽ—Claude Code có thể khởi chạy các tiến trình AI độc lập để xử lý các tác vụ song song. Mỗi sub-agent có cửa sổ context riêng và không làm lộn xộn cuộc trò chuyện chính của bạn.

Các Loại Sub-agent Tích hợp sẵn

Giá trị lớn nhất của Sub-agents: Cách ly Context

Khi bạn yêu cầu Claude chạy test, phân tích log hoặc tìm kiếm nhiều tệp, các thao tác này tạo ra đầu ra khổng lồ lấp đầy cửa sổ context của bạn. Sử dụng sub-agents cho các tác vụ này; đầu ra ở lại trong context của sub-agent và chỉ có bản tóm tắt được trả về cho bạn.

Ví dụ:

"Sử dụng sub-agent để chạy tất cả test và liệt kê các trường hợp thất bại"

"Sử dụng sub-agent để tìm kiếm tất cả các tệp sử dụng API đã lỗi thời"

Chạy trong nền: Ctrl+B

Nhấn Ctrl+B để đặt sub-agent vào nền. Bạn có thể tiếp tục trò chuyện với Claude về những thứ khác và bạn sẽ được thông báo khi tác vụ nền hoàn thành.

Phù hợp cho:

  • Chạy bộ test (thường mất vài phút)
  • Tìm kiếm code quy mô lớn
  • Code review không khẩn cấp

Sub-agents Tùy chỉnh

Bạn có thể tạo các agent tùy chỉnh trong thư mục .claude/agents/:

text
1---
2name: code-reviewer
3description: Chuyên gia code review. Được kích hoạt tự động sau khi thay đổi code.
4tools: Read, Grep, Glob, Bash
5model: sonnet
6---
7
8Bạn là một senior code reviewer. Kiểm tra các khía cạnh sau:
9- Sự rõ ràng và dễ đọc của code
10- Tính đầy đủ của xử lý lỗi
11- Tiết lộ thông tin nhạy cảm
12- Xác thực đầu vào
13- Cạm bẫy hiệu suất

Sau đó gọi nó trong cuộc trò chuyện bằng @"code-reviewer (agent)".

5. Quản lý Context: Yếu tố Quan trọng Nhưng Bị Bỏ Qua Nhất

Mặc dù cửa sổ context của Claude Code lớn (lên đến 1M token), nhưng nó không phải là vô hạn và quản lý context trực tiếp quyết định chất lượng đầu ra.

Có gì trong context?

  • Lịch sử cuộc trò chuyện của bạn
  • Tất cả nội dung tệp mà Claude đã đọc
  • Đầu ra thực thi lệnh
  • Tệp CLAUDE.md (được tải mỗi lần)
  • Tệp Memory (200 dòng đầu tiên)
  • Định nghĩa công cụ Skill và MCP đã tải

Năm Chiến lược Thực tế

1. /clear: Xóa khi hoàn thành một tác vụ

Đừng sửa lỗi, thêm tính năng và refactor tất cả trong cùng một cuộc trò chuyện. /clear làm trống context nhưng giữ CLAUDE.md, hoạt động như một lần khởi động lại miễn phí.

2. /compact: Nén context thủ công

Khi cuộc trò chuyện dài, sử dụng /compact để Claude tự động tóm tắt và nén đoạn hội thoại trước đó. Một cách tốt hơn là thêm trọng tâm vào việc nén:

/compact focus on API changes and test results

Bằng cách này, Claude ưu tiên giữ lại nội dung bạn quan tâm trong quá trình nén.

3. /context: Xem thứ gì đang ngốn context của bạn

Gõ /context để xem mức sử dụng hiện tại—tệp nào chiếm bao nhiêu token và không gian định nghĩa công cụ MCP chiếm bao nhiêu. Tôi thường thấy các máy chủ MCP vô dụng chiếm không gian lớn.

4. Sử dụng Sub-agents để cách ly nhiễu

Chạy test và phân tích log tạo ra nhiều đầu ra. Hãy để sub-agents làm việc đó để giữ context cuộc trò chuyện chính sạch sẽ.

5. Viết hướng dẫn giữ lại nén trong CLAUDE.md

Bạn có thể nói với Claude những gì phải được giữ lại trong quá trình nén:

text
1# Hướng dẫn Nén
2Khi nén context, luôn giữ lại:
3- Danh sách đầy đủ các tệp đã sửa đổi
4- Lệnh test và kết quả
5- Các quyết định kiến trúc chính

Memory vs CLAUDE.md

Mr Panda - inline image

Memory dùng để: Sở thích của bạn ("người này thích câu trả lời ngắn gọn"), quy ước dự án ("deployment có bước đặc biệt"), quyết định lịch sử ("lần trước chúng tôi chọn phương án A vì X").

Memory KHÔNG dùng để: Chi tiết code, lịch sử Git, trạng thái tạm thời—những thứ này được truy xuất chính xác hơn từ code và Git.

Sử dụng lệnh /memory để xem và quản lý tất cả Memory đã tải.

6. Quản lý Quyền: Cân bằng Bảo mật và Hiệu quả

Claude Code cung cấp năm chế độ quyền, được chuyển đổi qua Shift+Tab trong cuộc trò chuyện:

Mr Panda - inline image

Cấu hình Quy tắc Quyền

Trong .claude/settings.json, bạn có thể kiểm soát chi tiết quyền cho từng công cụ:

text
1{
2 "permissions": {
3 "allow": [
4 "Bash(npm run *)",
5 "Bash(git commit *)",
6 "Edit(src/**/*.ts)",
7 "Read(*.md)"
8 ],
9 "deny": [
10 "Bash(rm -rf *)",
11 "Edit(.env)"
12 ]
13 }
14}

Thứ tự ưu tiên quy tắc: deny → ask → allow (deny có ưu tiên cao nhất).

Điều này có nghĩa là bạn có thể mạnh dạn cho phép các lệnh phổ biến trong khi sử dụng deny để bảo vệ các tệp nhạy cảm. Ví dụ: tệp .env không bao giờ được chỉnh sửa.

Hệ thống Phân cấp Tệp Cài đặt

Tương tự như CLAUDE.md, cài đặt có nhiều cấp độ:

text
1Chính sách Tổ chức (Ưu tiên Cao nhất)
2
3Đối số CLI
4
5.claude/settings.local.json (Cục bộ, không commit vào Git)
6
7.claude/settings.json (Cấp dự án, chia sẻ với team)
8
9~/.claude/settings.json (Toàn cục, cá nhân)
10
11Giá trị Mặc định (Ưu tiên Thấp nhất)

Lời khuyên của tôi: Đặt quy tắc chia sẻ team trong .claude/settings.json, sở thích cá nhân trong ~/.claude/settings.json và cấu hình nhạy cảm trong .claude/settings.local.json (nhớ thêm vào .gitignore).

7. HOOKS: Biến Quy tắc Thành Luật Sắt

Hướng dẫn trong CLAUDE.md là "gợi ý"—Claude tuân theo chúng hầu hết thời gian nhưng đôi khi quên. Hooks là "luật sắt"—chúng thực thi bất kể điều gì.

Hooks là các lệnh shell tự động được kích hoạt bởi các sự kiện vòng đời cụ thể, được cấu hình trong settings.json.

Các Loại Sự kiện Chính

Mr Panda - inline image

Ví dụ Thực tế

Tự động format—Chạy Prettier sau mỗi lần chỉnh sửa:

text
1{
2 "hooks": {
3 "PostToolUse": [{
4 "matcher": "Edit|Write",
5 "hooks": [{
6 "type": "command",
7 "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
8 }]
9 }]
10 }
11}

Bảo vệ tệp quan trọng—Ngăn sửa đổi cấu hình production:

text
1{
2 "hooks": {
3 "PreToolUse": [{
4 "matcher": "Edit|Write",
5 "hooks": [{
6 "type": "command",
7 "command": ".claude/hooks/protect-files.sh"
8 }]
9 }]
10 }
11}

Một lệnh hook trả về mã thoát 0 có nghĩa là được phép; mã thoát 2 có nghĩa là bị chặn. Điều này có nghĩa là bạn có thể viết bất kỳ logic phức tạp nào.

Tiêm lại thông tin chính sau khi nén context:

text
1{
2 "hooks": {
3 "SessionStart": [{
4 "matcher": "compact",
5 "hooks": [{
6 "type": "command",
7 "command": "echo 'Sử dụng Bun, không phải npm. Chạy bun test trước khi commit.'"
8 }]
9 }]
10 }
11}

Điều này giải quyết một vấn đề phổ biến: khi một cuộc trò chuyện dài bị nén, các hướng dẫn quan trọng đã đề cập trước đó có thể bị mất. Hooks có thể tự động tiêm lại chúng sau mỗi lần nén.

Bốn Loại Hooks

8. GIT WORKFLOW: Tận dụng WORKTREE

Claude Code có thể thực thi các lệnh Git, đây là con dao hai lưỡi. Nhưng công cụ chính thức cung cấp một mạng lưới an toàn tuyệt vời: Worktree.

Git Worktree: Không gian làm việc Cách ly

text
1# Bắt đầu Claude trong một worktree cách ly
2claude --worktree feature-auth
3claude --worktree bugfix-123
4
5# Tự động tạo tên
6claude --worktree

Worktree tạo một bản sao nhánh Git độc lập trong .claude/worktrees/. Bất cứ điều gì Claude làm bên trong sẽ không ảnh hưởng đến nhánh chính của bạn. Khi thoát:

  • Nếu không có thay đổi → Tự động dọn dẹp
  • Nếu có thay đổi → Nhắc bạn giữ lại hoặc xóa

Điều này đặc biệt hữu ích cho các tác vụ khám phá. Không chắc chắn liệu một kế hoạch refactoring có hiệu quả không? Hãy thử trong worktree; nếu thất bại, vứt bỏ nó mà không có rủi ro.

Một số Luật Sắt Git

1. Không bao giờ để Claude Code tự động push

Nó có thể commit, nhưng hành động push nên được bạn xác nhận. Một khi đã push lên remote, chi phí rollback tăng lên đáng kể.

2. Commit thường xuyên

Commit sau khi hoàn thành một tính năng nhỏ. Sử dụng /rewind để quay lại bất kỳ checkpoint nào, miễn là bạn có bản ghi commit.

3. Cẩn thận với các thao tác phá hủy

Nếu Claude Code muốn thực thi git reset --hard, git push --force hoặc rm -rf, hãy suy nghĩ kỹ hậu quả trước khi chấp thuận. Các thao tác này không thể hoàn tác. Bạn cũng có thể từ chối các lệnh này trong quy tắc quyền.

4. Khôi phục context từ một PR

Điều này tự động tải các thay đổi và thảo luận của PR làm context, hoàn hảo cho code review hoặc tiếp tục công việc của người khác.

text
1claude --from-pr 123

9. Phím tắt và Tham chiếu Lệnh

Tôi sử dụng các phím tắt này hàng ngày; tôi rất khuyên bạn nên ghi nhớ chúng:

Phím tắt Phổ biến Nhất

Mr Panda - inline image

Lệnh Slash Phổ biến Nhất

text
1/compact [focus] # Nén context, có thể chỉ định trọng tâm
2/clear # Xóa cuộc trò chuyện, bắt đầu lại
3/context # Xem mức sử dụng context
4/memory # Xem và quản lý Memory
5/rewind # Quay lại checkpoint
6/resume [name] # Tiếp tục cuộc trò chuyện trước đó
7/model # Chuyển đổi model
8/effort [level] # Đặt độ sâu suy luận: low/medium/high/max
9/init # Tự động tạo CLAUDE.md
10/mcp # Quản lý máy chủ MCP
11/permissions # Xem quy tắc quyền
12/cost # Xem mức tiêu thụ token

/init đặc biệt hữu ích cho các dự án mới—nó tự động phân tích codebase của bạn và giúp tạo bản nháp CLAUDE.md. Mặc dù thường cần điều chỉnh thủ công, nhưng nó nhanh hơn nhiều so với bắt đầu từ đầu.

10. EXTENDED THINKING: Để Claude Suy nghĩ Sâu hơn

Đối với các vấn đề phức tạp, bạn có thể bật chế độ Extended Thinking, cho phép Claude dành nhiều thời gian hơn để suy luận trước khi trả lời.

Cách sử dụng

text
1# Phím tắt bật/tắt
2Option+T (Mac) / Alt+T (Windows/Linux)
3
4# Hoặc qua lệnh
5/effort high # Suy luận sâu hơn
6/effort max # Độ sâu suy luận tối đa
7/effort low # Tác vụ đơn giản, tiết kiệm token

Khi nào sử dụng

  • Quyết định kiến trúc phức tạp
  • Debug khó (nhiều nguyên nhân có thể cần loại trừ)
  • Thiết kế refactoring nhiều bước
  • Cân nhắc ưu nhược điểm của nhiều giải pháp

Khi nào bạn không cần nó

  • Thay đổi code đơn giản
  • Formatting, đổi tên
  • Sửa lỗi đã rõ ràng

Mẹo chuyên nghiệp: Viết "ultrathink" trong prompt có thể buộc độ sâu suy luận cao nhất mà không cần điều chỉnh thủ công cài đặt effort.

11. MCP SERVER: Kết nối Claude với Thế giới Bên ngoài

MCP (Model Context Protocol) cho phép Claude Code giao tiếp với các công cụ bên ngoài—GitHub, database, Slack, Notion, v.v.

Thêm nhanh

text
1claude mcp add github -- npx @anthropic-ai/mcp-server-github
2claude mcp add postgres -- npx @anthropic-ai/mcp-server-postgres postgresql://localhost:5432/mydb

Tệp Cấu hình

MCP được cấu hình trong .mcp.json:

text
1{
2 "mcpServers": {
3 "github": {
4 "type": "stdio",
5 "command": "npx",
6 "args": ["@modelcontextprotocol/server-github"],
7 "env": {
8 "GITHUB_TOKEN": "$GITHUB_TOKEN"
9 }
10 }
11 }
12}

Lưu ý Chi phí Context

Mỗi máy chủ MCP tiêu thụ thêm 100-500+ token cho định nghĩa công cụ. Sử dụng lệnh /mcp để kiểm tra chi phí của từng máy chủ và tắt những máy chủ không sử dụng.

Kinh nghiệm của tôi: Đừng tham lam. 2-3 máy chủ MCP thường dùng là đủ. Cài đặt quá nhiều sẽ ngốn không gian context với định nghĩa công cụ, điều này có thể làm giảm chất lượng phân tích code.

12. Tích hợp IDE: Không Chỉ Là Terminal

VS Code

Sau khi cài đặt extension Claude Code, bạn có thể sử dụng Claude trực tiếp trong VS Code mà không cần chuyển sang terminal.

Các tính năng hữu ích:

  • Xem diff song song: Các thay đổi của Claude được hiển thị dưới dạng diff, rõ ràng trong nháy mắt
  • Option+K / Alt+K: Nhanh chóng chèn @references đến tệp hiện tại
  • Đa tab trò chuyện: Mở nhiều cuộc trò chuyện độc lập trong các tab khác nhau
  • Cmd+Shift+Esc: Nhanh chóng mở một tab trò chuyện mới

JetBrains

IntelliJ, PyCharm, WebStorm và các IDE JetBrains khác cũng có plugin Claude Code. Chỉ cần tìm kiếm "Claude Code" trong Plugins marketplace để cài đặt.

13. Review Code: Tin tưởng Nhưng Hãy Kiểm tra

Chất lượng code của Claude Code nhìn chung tốt, nhưng bạn không nên tin tưởng mù quáng.

Các Vấn đề Thường gặp

1. Over-engineering

Bạn yêu cầu một hàm tiện ích đơn giản, và nó đưa cho bạn một lớp trừu tượng đầy đủ với generics, interfaces và factory patterns. Dùng dao mổ trâu để giết gà.

Giải pháp: Viết "ưu tiên các giải pháp đơn giản" trong CLAUDE.md hoặc nói rõ ràng "không cần abstraction" trong hướng dẫn.

2. API Ảo

Đôi khi nó sử dụng các API không tồn tại hoặc cú pháp lỗi thời, đặc biệt là đối với các phiên bản mới của các thư viện niche.

Giải pháp: Chạy test. Đây là lý do tại sao hướng dẫn nên bao gồm các tiêu chuẩn xác thực.

3. Mở rộng Phạm vi

Bạn yêu cầu nó thay đổi một hàm, và nó refactor toàn bộ tệp.

Giải pháp: Nói rõ ràng "chỉ thay đổi X, không động vào code khác." Hoặc sử dụng lệnh /freeze để giới hạn phạm vi chỉnh sửa vào các thư mục cụ thể.

Chế độ Writer/Reviewer

Một chế độ nâng cao được khuyến nghị chính thức: Sử dụng hai phiên độc lập để đóng vai "Writer" và "Reviewer."

Hai phiên có context độc lập; Reviewer không bị ảnh hưởng bởi logic của Writer và có thể tìm ra những điểm mù.

text
1Phiên A (Writer): "Triển khai middleware giới hạn tốc độ API"
2Phiên B (Reviewer): "Review triển khai giới hạn tốc độ trong @src/middleware/rateLimiter.ts,
3 tập trung vào edge cases, race conditions và tính nhất quán"
4Phiên A: "Sửa phản hồi review: [Dán đầu ra của B]"

14. Những Điều KHÔNG Nên Làm với Claude Code

Đã nói nhiều về "nên làm gì," hãy nói về "không nên làm gì."

1. Đừng để nó làm những việc bạn hoàn toàn không hiểu

Nếu bạn không biết gì về Kubernetes, đừng để Claude Code viết cấu hình deployment để bạn sử dụng trực tiếp. Bạn không thể review những gì bạn không hiểu.

2. Đừng sử dụng nó trong môi trường không có version control

Không có Git đồng nghĩa với không có khả năng rollback. Các thay đổi của Claude Code có thể ghi đè lên tệp của bạn; sử dụng nó mà không có version control giống như đi dây thừng mà không có lưới bảo vệ.

3. Đừng giao một tác vụ khổng lồ cùng một lúc

"Migrate toàn bộ dự án từ JavaScript sang TypeScript"

Hướng dẫn này cho Claude Code toàn quyền hành động, khiến kết quả không thể kiểm soát. Chia nhỏ thành các bước và xác nhận từng bước trước khi chuyển sang bước tiếp theo.

4. Đừng mong đợi sự hoàn hảo ngay lần đầu tiên

Lặp lại là điều bình thường. Sử dụng /rewind để quay lại và sử dụng phản hồi chính xác để mô tả "có gì sai."

Tổng kết

Triết lý cốt lõi của việc sử dụng Claude Code rất đơn giản:

Nó là một cộng tác viên cực kỳ có năng lực, nhưng không phải là chế độ lái tự động. Vô lăng luôn nằm trong tay bạn.

Sắp xếp theo mức độ quan trọng, lời khuyên của tôi là:

  1. Viết CLAUDE.md tốt — Đầu tư một lần, hưởng lợi trong mọi cuộc trò chuyện
  2. Đưa ra hướng dẫn chính xác — Mục tiêu + Ràng buộc + Tiêu chuẩn xác thực
  3. Sử dụng Chế độ Lập kế hoạch — Lên kế hoạch trước, hành động sau cho các tác vụ phức tạp
  4. Quản lý ngữ cảnh — /clear, /compact, Sub-agents
  5. Kiểm soát quyền hạn — Từ chối các thao tác nguy hiểm, cho phép các lệnh thông thường
  6. Commit thường xuyên — Giữ khả năng quay lại

Làm được những điều này, Claude Code có thể nhân hiệu suất của bạn lên nhiều lần. Không làm được, nó sẽ chỉ giúp bạn tạo ra hỗn loạn nhanh hơn.

Giá trị của một công cụ luôn phụ thuộc vào người sử dụng nó.

Trên đây là sự kết hợp giữa tài liệu chính thức của Claude Code và kinh nghiệm thực tế. Nếu bạn có những phương pháp hay hơn, hãy chia sẻ nhé.

Lưu một chạm

Đọc sâu bài viết viral bằng AI trong YouMind

Lưu nguồn, đặt câu hỏi tập trung, tóm tắt lập luận và biến một bài viết viral thành các ghi chú có thể tái sử dụng trong một không gian làm việc AI duy nhất.

Khám phá YouMind
Dành cho nhà sáng tạo

Biến Markdown của bạn thành bài viết 𝕏 gọn gàng

Khi bạn đăng bài viết dài của riêng mình, việc định dạng hình ảnh, bảng và khối mã cho 𝕏 rất mệt mỏi. YouMind biến cả bản nháp Markdown thành một bài viết 𝕏 gọn gàng, sẵn sàng để đăng.

Thử Markdown sang 𝕏

Thêm pattern để giải mã

Bài viết viral gần đây

Khám phá thêm bài viết viral