Claude Code Mẹo và Thủ Thuật Nâng Cao cho Người Dùng Power Users
TL;DR: Claude Code mạnh mẽ hơn rất nhiều so với những gì hầu hết người dùng nhận ra. Hướng dẫn này bao gồm các kỹ thuật nâng cao giúp tăng năng suất của quý vị một cách đáng kể: làm chủ CLAUDE.md, custom slash commands, parallel sub-agents, MCP tool integration, multi-file editing hiệu quả, quản lý context, shell hooks, và các workflow biến Claude Code thành một partner phát triển hoàn toàn tự động.
CLAUDE.md: Hướng dẫn vận hành AI của quý vị
File CLAUDE.md là một điều quan trọng nhất mà quý vị có thể cấu hình trong một dự án Claude Code. Nó được tự động đọc tại đầu mỗi phiên, hoạt động như một system prompt lâu dài cho Claude biết mọi thứ cần thiết về dự án của quý vị, sở thích và quy ước của quý vị — mà không cần quý vị phải giải thích mỗi lần.
Một CLAUDE.md được xây dựng tốt sẽ loại bỏ hàng chục hướng dẫn lặp lại mỗi phiên. Các power users báo cáo rằng nó có thể tăng gấp đôi năng suất bằng cách loại bỏ chi phí thiết lập context. Đây là một cấu trúc đạt tiêu chuẩn sản xuất:
# CLAUDE.md — ProjectName
## Project Overview
Next.js 15 e-commerce platform. TypeScript strict mode.
Prisma ORM with PostgreSQL. Tailwind v4 for styling. Auth.js v5.
## Architecture
- /app — Next.js App Router pages and layouts
- /components — Reusable UI components (shadcn/ui base)
- /lib — Utilities, helpers, type definitions
- /prisma — Schema, migrations, seed data
- /tests — Vitest unit tests, Playwright E2E
## Coding Standards
- Always use TypeScript strict types — no any or implicit any
- Components: functional with explicit return type annotations
- API routes: validate all inputs with Zod before processing
- Always handle errors explicitly — no silent catch blocks
- Write tests for every new function in /lib
## Commands
- pnpm dev — start dev server on port 3000
- pnpm test — run Vitest unit tests
- pnpm db:migrate — run pending Prisma migrations
- pnpm build — production build (must pass before PRs)
## Never Do
- Never use console.log in production code (use /lib/logger)
- Never commit .env files
- Never use Prisma raw queries — use the ORM methods
Phần "Never Do" đặc biệt mạnh mẽ — Claude đọc nó và tự động tránh những pattern đó, thậm chí không cần nhắc nhở rõ ràng. Hãy dành 20–30 phút để xây dựng file này khi quý vị bắt đầu một dự án và cập nhật nó bất cứ khi nào quý vị đưa Claude một sửa chữa nên tồn tại vĩnh viễn. Quý vị cũng có thể tạo các file CLAUDE.md trong các thư mục con cho các cài đặt monorepo, cung cấp context được xác định phạm vi mà không làm rối root file.
Lệnh Slash Tùy Chỉnh
Claude Code hỗ trợ custom slash commands được xác định trong .claude/commands/ trong thư mục home hoặc root dự án của quý vị. Đây là các file Markdown trong đó tên file trở thành tên lệnh — một trong những tính năng power bị sử dụng ít nhất.
Tạo một lệnh tại ~/.claude/commands/review.md:
Review the changes in the current git diff for:
1. Logic errors and edge cases
2. Security vulnerabilities (injection, auth bypass, data exposure)
3. Performance issues (N+1 queries, large allocations)
4. Missing error handling
5. Test coverage gaps
For each issue found:
- File and line number
- Severity: critical/high/medium/low
- Explanation and specific fix with code example
End with verdict: APPROVE, APPROVE WITH MINOR CHANGES, or NEEDS REVISION.
Bây giờ /review chạy một code review kỹ lưỡng trên git diff hiện tại của quý vị trong một lệnh. Xây dựng một thư viện các lệnh cho các workflow thường gặp nhất của quý vị: /deploy-check, /write-tests, /refactor, /security-audit, /document. Mỗi cái trở thành một lối tắt một từ tới một workflow đa bước phức tạp — lợi ích năng suất tăng lên giữa hàng trăm phiên.
Quản lý Context Nâng cao
Context window của Claude Code lấp đầy trong các phiên dài, và quản lý context kém là nguyên nhân chính gây ra hiệu suất suy giảm trong các phiên coding kéo dài. Hiểu cách context hoạt động giữ chất lượng cao ngay cả trong suốt các phiên dài nhiều giờ.
Các Lệnh /clear và /compact
Sử dụng /clear để hoàn toàn đặt lại context khi bắt đầu một tác vụ không liên quan mới. Sử dụng /compact để nén context hiện tại — Claude tóm tắt lịch sử cuộc trò chuyện, bảo toàn thông tin thiết yếu trong khi giải phóng không gian context. Đối với các phiên dài, chạy /compact mỗi 30–45 phút coding tích cực.
Strategic File Reading
Tránh yêu cầu Claude đọc toàn bộ thư mục khi chỉ các file cụ thể có liên quan. Thay vì "xem tất cả file trong /components", hãy nói "đọc /components/auth/LoginForm.tsx và /lib/auth.ts" — điều này sử dụng context ít hơn nhiều so với kết quả hiệu quả tương tự. Claude đọc những gì quý vị chỉ định; các import xung quanh trở thành rõ ràng từ context.
Checkpoint Summaries
Tại các điểm ngắt tự nhiên trong các tác vụ phức tạp, yêu cầu Claude tóm tắt những gì đã được hoàn thành và những gì vẫn còn lại. Tóm tắt này phục vụ như một điểm reset context nhỏ gọn — quý vị có thể bắt đầu một cuộc trò chuyện mới, dán tóm tắt, và tiếp tục liền mạch mà không có chi phí của lịch sử phiên đầy đủ.
Multi-File và Workflow Codebase Lớn
Một trong những điểm mạnh lớn nhất của Claude Code là thực hiện các thay đổi phối hợp trên nhiều file đồng thời — tái cấu trúc một interface được chia sẻ và cập nhật tất cả các implementor của nó, đổi tên một hàm trong toàn bộ codebase, hoặc tái cấu trúc module exports một cách nhất quán trên hàng chục file.
Phương pháp Architecture-First
Đối với các thay đổi lớn, hãy bắt đầu bằng một cuộc trò chuyện kiến trúc trước khi viết bất kỳ code nào. Mô tả mục tiêu, yêu cầu Claude đề xuất cấu trúc file và thiết kế interface, xem xét và tinh chỉnh kế hoạch, rồi nói "thực hiện cái này." Cách tiếp cận hai giai đoạn này (lập kế hoạch sau đó thực hiện) tạo ra kết quả tốt hơn đáng kể so với yêu cầu Claude tìm ra cấu trúc trong khi coding.
Using Git as a Safety Net
Luôn commit trước khi bắt đầu một refactor lớn với hỗ trợ Claude. Một workflow đơn giản: commit trạng thái hoạt động → để Claude thực hiện các thay đổi rộng → chạy test → xem xét diff với git diff → commit nếu tốt hoặc git reset --hard nếu không. Điều này làm cho các thay đổi multi-file an toàn để thử nghiệm một cách tích cực.
Scope-Bounded Instructions
Đối với các codebase lớn, hãy xác định rõ phạm vi hướng dẫn: "Chỉ sửa đổi file trong /lib/auth/ và /app/api/auth/. Không đụng tới /components hoặc /tests cho đến nay." Điều này ngăn Claude thực hiện các thay đổi quá rộng trở nên khó xem xét. Áp dụng các thay đổi theo lớp: logic cốt lõi trước, sau đó UI, rồi các test.
Mô Hình Sub-Agent Song Song
Claude Code có thể tạo ra các parallel sub-agents để làm việc trên các tác vụ độc lập đồng thời — một game-changer cho các dự án phức tạp nơi nhiều workstream có thể tiến hành mà không chặn nhau.
Một trường hợp điển hình: quý vị cần viết unit test cho 10 module. Thay vì làm chúng tuần tự, hãy khởi chạy các parallel agent:
Run these tasks in parallel using sub-agents:
1. Write unit tests for /lib/auth.ts covering all exported functions
2. Write unit tests for /lib/db.ts covering all query functions
3. Write unit tests for /lib/validation.ts covering all validators
4. Write unit tests for /lib/email.ts covering the send functions
Nhiều agent đọc các file khác nhau, viết các file test khác nhau, và báo cáo lại đồng thời. Một tác vụ sẽ mất 40 phút tuần tự hoàn thành trong 10 phút với thực hiện song song. Các trường hợp sử dụng mạnh khác: tạo tài liệu cho nhiều module, kiểm toán bảo mật trên các phần codebase khác nhau, tạo bản dịch, và chạy các tác vụ phân tích độc lập trên các tập dữ liệu lớn.
Tích Hợp Công Cụ MCP
Model Context Protocol (MCP) servers mở rộng đáng kể những gì Claude Code có thể làm bằng cách cấp cho nó quyền truy cập vào các công cụ và nguồn dữ liệu bên ngoài. Với cấu hình thích hợp, Claude Code có thể truy vấn cơ sở dữ liệu, gọi API, quản lý file trên các máy chủ từ xa, tương tác với trình duyệt, và nhiều hơn nữa — tất cả trong một phiên coding duy nhất.
Cấu hình MCP servers trong ~/.claude/settings.json:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/workspace"]
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {"DATABASE_URL": "postgresql://localhost/mydb"}
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {"GITHUB_TOKEN": "ghp_..."}
}
}
}
Với Postgres MCP server được cấu hình, Claude Code có thể trực tiếp truy vấn cơ sở dữ liệu của quý vị để hiểu hình dạng dữ liệu hiện tại, tìm sự không nhất quán, và tạo migration phù hợp với dữ liệu thực tế. Với server GitHub, Claude có thể đọc các issue, kiểm tra CI status, và tạo pull request một cách tự động. Xem hướng dẫn đầy đủ của chúng tôi về MCP Servers Guide để cấu hình chi tiết và các trường hợp sử dụng.
Shell Hooks và Tự Động Hóa
Cài đặt Claude Code hỗ trợ các hook chạy các lệnh shell tại các điểm cụ thể trong vòng đời Claude — trước khi các tool chạy, sau khi tool hoàn thành, tại bắt đầu và kết thúc phiên. Các hook này cho phép tự động hóa mạnh mẽ.
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{"type": "command", "command": "echo 'CMD: $CLAUDE_TOOL_INPUT' >> ~/.claude/log.txt"}]
}],
"PostToolUse": [{
"matcher": "Write",
"hooks": [{"type": "command", "command": "cd $CLAUDE_PROJECT_DIR && npx eslint --fix $CLAUDE_TOOL_OUTPUT_FILE 2>/dev/null || true"}]
}]
}
}
Các trường hợp sử dụng hook trong thế giới thực: tự động chạy linter sau khi Claude chỉnh sửa file, ghi nhật ký tất cả các lệnh bash để kiểm tra, chạy test sau khi viết file để bắt sự hồi quy ngay lập tức, sao lưu file trước khi chỉnh sửa, và gửi thông báo khi các tác vụ tự động dài hoàn thành.
Quy Trình Gỡ Lỗi Nâng Cao
Claude Code xuất sắc trong debugging khi được cung cấp đúng context. Các phương pháp có cấu trúc này liên tục tạo ra giải quyết vấn đề nhanh hơn so với các dump thông báo lỗi chung chung.
The Full Context Dump
Đối với các bug lâu dài, hãy cung cấp cho Claude bức tranh toàn cảnh từ đầu: thông báo lỗi cộng với full stack trace, nội dung file liên quan, ba commit git cuối cùng chạm vào code bị ảnh hưởng, và hành vi dự kiến so với thực tế. Điều này ngăn chặn qua lại và trực tiếp tới giải quyết.
Rubber Duck Debugging
Yêu cầu Claude giải thích code của quý vị trở lại từng dòng, như thể đang dạy một người mới bắt đầu. Kỹ thuật này thường tiết lộ bug nhanh hơn bất kỳ cách nào khác — giải thích của Claude sẽ khác với mô hình tinh thần của quý vị chính xác tại điểm bug.
Binary Search Debugging
Đối với các bug được giới thiệu bởi các thay đổi gần đây: "20 commit cuối cùng chạm vào các file này. Dựa trên bản chất của bug này (auth tokens không lưu trữ sau khi làm mới trang), commit nào có khả năng giới thiệu nó nhất?" Claude có thể thu hẹp tìm kiếm một cách đáng kể bằng cách suy luận về thay đổi nào có thể gây ra hành vi được quan sát.
Câu Hỏi Thường Gặp
Làm cách nào để làm cho Claude Code ghi nhớ sở thích giữa các phiên?
Đặt các sở thích lâu dài trong CLAUDE.md ở root dự án của quý vị, hoặc trong ~/.claude/CLAUDE.md cho các sở thích toàn cầu. Bất kỳ file nào trong các file này được tự động đọc tại bắt đầu phiên.
Làm cách nào để ngăn Claude Code thực hiện những thay đổi không có ý định?
Sử dụng cài đặt quyền trong .claude/settings.json để hạn chế các thư mục Claude có thể viết vào. Luôn làm việc trong một nhánh git sạch sẽ để quý vị có thể xem xét và có chọn lọc revert các thay đổi. Đối với các phiên khám phá, hãy s