- Bộ sưu tập 50 mẹo thực chiến dành cho các nhà phát triển đã dùng Claude Code, được tổng hợp dựa trên tài liệu chính thức của Anthropic, nhà phát triển Boris Cherny, kinh nghiệm từ cộng đồng và 1 năm sử dụng hằng ngày
- Bao quát từ các phím tắt vận hành phiên như alias
cc, tiền tố !, tua lại bằng Esc cho đến subagent, đội agent và làm việc song song bằng worktree
- Bao gồm cả phương pháp luận có cấu trúc để duy trì chất lượng và tính nhất quán như cách viết CLAUDE.md, hệ thống Hooks, quản lý cửa sổ ngữ cảnh
- Đưa ra nhiều mẫu quy trình làm việc khác nhau như tận dụng công cụ CLI, chọn máy chủ MCP, xử lý hàng loạt
- Khuyến nghị áp dụng dần từng bước: không cần dùng cả 50 mục, hãy bắt đầu từ điều khiến bạn bất tiện nhất
1. Thiết lập alias cc
- Thêm
alias cc='claude --dangerously-skip-permissions' vào ~/.zshrc (hoặc ~/.bashrc) để có thể khởi động phiên Claude Code chỉ bằng cách nhập cc
- Đây là cấu hình bỏ qua mọi lời nhắc quyền hạn, và tên flag được cố ý đặt theo hướng đáng sợ
- Chỉ nên dùng sau khi bạn đã hiểu hoàn toàn Claude Code có thể làm gì với codebase
2. Chạy lệnh bash nội tuyến bằng tiền tố !
- Nhập
!git status hoặc !npm test để thực thi lệnh ngay lập tức, đồng thời lệnh và đầu ra sẽ được giữ trong ngữ cảnh
- Claude có thể xem kết quả và thực hiện bước tiếp theo — nhanh hơn so với việc yêu cầu Claude chạy lệnh
3. Dùng Esc để dừng, Esc+Esc để tua lại
- Esc dừng Claude giữa chừng nhưng không làm mất ngữ cảnh — có thể đổi hướng ngay lập tức
- Esc+Esc (hoặc /rewind) mở menu cuộn hiển thị mọi checkpoint mà Claude đã tạo, cho phép khôi phục mã, hội thoại hoặc cả hai
- Có 4 tùy chọn khôi phục: mã và hội thoại, chỉ hội thoại, chỉ mã, tóm tắt sau checkpoint
- Bạn có thể thử cả những cách tiếp cận chỉ có 40% chắc chắn — nếu thất bại thì tua lại với thiệt hại bằng không
- Tuy nhiên, checkpoint chỉ theo dõi chỉnh sửa tệp; các thay đổi từ lệnh bash (migration, thao tác DB) sẽ không được ghi lại
- Dùng
claude --continue để tiếp tục cuộc trò chuyện gần nhất, hoặc claude --resume để mở bộ chọn phiên
4. Cung cấp cho Claude cách tự kiểm chứng
- Đưa lệnh test, kiểm tra linter, đầu ra kỳ vọng vào prompt để tạo vòng phản hồi giúp Claude tự phát hiện lỗi
- Ví dụ: "Refactor auth middleware sang JWT. Sau khi thay đổi, chạy bộ test hiện có, sửa toàn bộ lỗi thất bại rồi mới hoàn tất"
- Theo Boris Cherny, chỉ riêng việc này đã giúp cải thiện chất lượng 2~3 lần
- Với thay đổi UI, hãy thiết lập máy chủ Playwright MCP để Claude có thể mở trình duyệt, tương tác với trang và xác minh UI hoạt động như mong đợi — bắt được những vấn đề mà unit test bỏ sót
5. Cài plugin code intelligence theo từng ngôn ngữ
- Plugin LSP cung cấp chẩn đoán tự động sau khi chỉnh sửa tệp (lỗi kiểu, import không dùng, thiếu kiểu trả về, v.v.) — là plugin có tác động lớn nhất trong số các plugin có thể cài riêng lẻ
- Ví dụ lệnh cài đặt:
/plugin install typescript-lsp@claude-plugins-official
/plugin install pyright-lsp@claude-plugins-official
/plugin install rust-analyzer-lsp@claude-plugins-official
/plugin install gopls-lsp@claude-plugins-official
- Plugin cho C#, Java, Kotlin, Swift, PHP, Lua, C/C++ cũng có trong tab Discover của
/plugin
- Cần cài sẵn binary language server tương ứng trong hệ thống (nếu chưa có, plugin sẽ thông báo)
6. Dùng gh CLI và học cách dùng mọi công cụ CLI
- Dùng gh CLI để xử lý PR, issue và comment mà không cần máy chủ MCP riêng — công cụ CLI hiệu quả hơn về ngữ cảnh so với máy chủ MCP (không cần nạp schema công cụ vào cửa sổ ngữ cảnh)
- Điều này cũng áp dụng tương tự với các công cụ CLI tiêu chuẩn như jq, curl
- Với công cụ Claude chưa biết, nó có thể đọc đầu ra
--help, nắm cú pháp rồi tự chạy lệnh — ví dụ: "Học bằng sentry-cli --help, rồi tìm lỗi gần nhất trên production"
- Ngay cả các công cụ CLI nội bộ ngách cũng dùng được
7. Thêm "ultrathink" cho suy luận phức tạp
- Từ khóa "ultrathink" đặt effort ở mức cao và kích hoạt suy luận thích ứng trong Opus 4.6
- Phù hợp với các tình huống Claude cần suy nghĩ kỹ trước khi hành động, như quyết định kiến trúc, debug khó, suy luận nhiều bước
- Cũng có thể đặt mặc định bằng
/effort — với tác vụ đơn giản thì giữ effort thấp để nhanh và rẻ hơn
- Không cần tiêu tốn thinking token cho việc đổi tên biến — hãy điều chỉnh effort theo đúng bài toán
8. Mở rộng kiến thức theo nhu cầu bằng skill
- Skill là các tệp Markdown mở rộng tri thức của Claude; khác với CLAUDE.md, chúng chỉ được nạp ở những tác vụ liên quan, giúp ngữ cảnh gọn nhẹ hơn
- Có thể tạo trong
.claude/skills/ hoặc cài các skill dựng sẵn do plugin đóng gói (duyệt trong /plugin)
- Phù hợp với tri thức miền chuyên biệt mà Claude thỉnh thoảng cần nhưng không phải lúc nào cũng cần, như quy tắc API, quy trình triển khai, mẫu coding
9. Điều khiển Claude Code từ điện thoại
- Khởi động phiên bằng
claude remote-control rồi kết nối từ claude.ai/code hoặc ứng dụng Claude trên iOS/Android
- Phiên vẫn chạy trên máy cục bộ; điện thoại hoặc trình duyệt chỉ là điểm truy cập — có thể gửi tin nhắn, phê duyệt gọi công cụ và theo dõi tiến độ
- Nếu dùng alias
cc ở mẹo #1 thì không cần phê duyệt riêng, giúp điều khiển từ xa mượt hơn nữa — bắt đầu tác vụ rồi rời đi, chỉ kiểm tra khi Claude hoàn tất hoặc gặp tình huống ngoài dự kiến
10. Mở rộng cửa sổ ngữ cảnh lên 1M token
- Cả Sonnet 4.6 và Opus 4.6 đều hỗ trợ cửa sổ ngữ cảnh 1M token
- Trong các gói Max, Team và Enterprise, Opus sẽ tự động được nâng cấp lên ngữ cảnh 1M
- Có thể chuyển model trong phiên bằng
/model opus[1m] hoặc /model sonnet[1m]
- Nếu lo ngại chất lượng với ngữ cảnh lớn, hãy thử tăng dần từ 500k để kiểm tra
- Dùng
CLAUDE_CODE_AUTO_COMPACT_WINDOW và CLAUDE_AUTOCOMPACT_PCT_OVERRIDE để điều khiển thời điểm kích hoạt compact
11. Dùng Plan Mode khi chưa chắc cách tiếp cận
- Plan Mode phù hợp với thay đổi nhiều tệp, mã chưa quen, quyết định kiến trúc — đầu tư vài phút trước có thể tránh việc Claude đi sai hướng trong 20 phút
- Hãy bỏ qua với các tác vụ nhỏ và phạm vi rõ ràng — nếu có thể mô tả diff bằng một câu, cứ thực hiện ngay
- Có thể chuyển giữa các chế độ quyền Normal, Auto-Accept, Plan bằng Shift+Tab (không cần rời cuộc trò chuyện)
12. Chạy /clear giữa các công việc không liên quan
- Một prompt sắc gọn trong phiên sạch sẽ tốt hơn một phiên 3 tiếng lộn xộn — nếu là tác vụ khác, hãy bắt đầu bằng
/clear
- Cảm giác như đang bỏ đi tiến độ, nhưng ngữ cảnh tích lũy có thể chôn lấp chỉ thị hiện tại, gây cảm giác mất trắng 30 phút
- 5 giây để dùng
/clear và viết prompt mở đầu tập trung sẽ hiệu quả hơn nhiều
13. Đừng diễn giải bug, hãy dán dữ liệu thô
- Nếu mô tả bug bằng lời, Claude sẽ rơi vào quy trình chậm: đoán, sửa rồi lặp lại
- Hãy dán nguyên log lỗi, đầu ra CI, thread Slack rồi nói "fix"; Claude có thể đọc log hệ thống phân tán và lần ra điểm gây lỗi
- Cách diễn giải của con người là một lớp trừu tượng bổ sung làm mất đi chi tiết mà Claude cần để tìm đúng nguyên nhân gốc rễ
- Điều này cũng áp dụng với CI — nói "Go fix the failing CI tests" rồi dán đầu ra CI, hoặc đưa URL/số PR kèm yêu cầu sửa các check thất bại
- Cũng có thể pipe trực tiếp đầu ra terminal:
cat error.log | claude "explain this error and suggest a fix"
npm test 2>&1 | claude "fix the failing tests"
14. Câu hỏi phụ nhanh với /btw
/btw mở một lớp phủ không được đưa vào lịch sử hội thoại, cho phép đặt câu hỏi nhanh
- Dùng để làm rõ về phiên hiện tại: "Vì sao bạn chọn cách tiếp cận này?" hoặc "Trade-off so với các lựa chọn khác là gì?"
- Câu trả lời hiển thị trong một lớp phủ có thể đóng lại, giữ ngữ cảnh chính gọn nhẹ
15. Chạy các nhánh song song được cô lập bằng --worktree
claude --worktree feature-auth tạo bản sao công việc cô lập và một nhánh mới — Claude tự động xử lý thiết lập và dọn dẹp git worktree
- Được đội ngũ Claude Code đánh giá là một trong những đòn bẩy năng suất lớn nhất
- Có thể spin up 3–5 worktree để chạy song song các phiên Claude độc lập (thường dùng 2–3)
- Mỗi worktree có phiên, nhánh và trạng thái hệ thống tệp riêng
- Giới hạn của worktree cục bộ là tài nguyên máy — nhiều dev server, bản build và phiên Claude sẽ cạnh tranh CPU
- Builder.io giải quyết tải máy bằng cách đặt mỗi agent trong container đám mây riêng biệt
16. Lưu tạm prompt bằng Ctrl+S
- Khi đang viết một prompt dài mà cần câu trả lời nhanh trước, nhấn Ctrl+S để stash bản nháp
- Sau khi gửi câu hỏi nhanh, prompt đã stash sẽ được tự động khôi phục
17. Chuyển tác vụ dài sang nền bằng Ctrl+B
- Khi Claude khởi chạy một lệnh bash mất nhiều thời gian (test suite, build, migration), nhấn Ctrl+B để chuyển sang chạy nền
- Claude vẫn tiếp tục làm việc và người dùng vẫn có thể trò chuyện — khi tiến trình hoàn tất sẽ hiển thị kết quả
18. Thêm status line trực tiếp
- Status line là một shell script chạy sau mỗi lượt Claude, hiển thị thư mục hiện tại, nhánh git và mức sử dụng context được mã màu ở cuối terminal
- Có thể thiết lập nhanh bằng lệnh
/statusline — nó sẽ hỏi muốn hiển thị gì rồi tự tạo script
19. Giữ context chính sạch bằng sub-agent
- Nếu nói "Hãy dùng sub-agent để tìm hiểu cách payment flow xử lý các giao dịch thất bại", một instance Claude riêng sẽ đọc file, phân tích trong cửa sổ context độc lập rồi báo lại bản tóm tắt ngắn gọn
- Việc điều tra sâu có thể ngốn một nửa cửa sổ context, nên dùng sub-agent để tách chi phí đó khỏi phiên chính
- Các loại tích hợp sẵn: Explore (Haiku, tìm file nhanh), Plan (phân tích chỉ đọc)
20. Đội agent để điều phối nhiều phiên
- Tính năng thử nghiệm nhưng mạnh mẽ — thêm
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS vào cấu hình hoặc biến môi trường để bật
- Ra lệnh: "Tạo một đội agent gồm 3 thành viên để refactor song song các module này"
- Team leader phân chia công việc cho các thành viên, mỗi người có cửa sổ context riêng và danh sách tác vụ dùng chung, đồng thời có thể nhắn tin trực tiếp cho nhau
- Khuyến nghị bắt đầu với 3–5 thành viên, 5–6 tác vụ cho mỗi thành viên
- Tránh giao các tác vụ sửa cùng một file vì vấn đề ghi đè — nên bắt đầu bằng tác vụ nghiên cứu và review rồi mới mở rộng sang triển khai song song
21. Thêm chỉ dẫn giữ lại thông tin khi compact
- Khi compact context (tự động hoặc bằng
/compact), có thể chỉ định nội dung cần giữ lại: /compact focus on the API changes and the list of modified files
- Cũng có thể thêm chỉ dẫn thường trực vào CLAUDE.md: "Khi compact, hãy giữ lại toàn bộ danh sách file đã sửa và trạng thái test hiện tại"
22. Chạy kiểm tra lặp lại với /loop
/loop 5m check if the deploy succeeded and report back sẽ lên lịch prompt lặp lại ở chế độ nền
- Khoảng thời gian là tùy chọn (mặc định 10 phút), hỗ trợ đơn vị s, m, h, d
- Cũng có thể lặp các lệnh khác như
/loop 20m /review-pr 1234
- Tác vụ có phạm vi theo phiên và hết hạn sau 3 ngày — các loop bị quên sẽ không chạy mãi mãi
- Hữu ích cho theo dõi deploy, giám sát pipeline CI và polling dịch vụ bên ngoài
23. Viết prompt giàu ngữ cảnh bằng voice dictation
/voice bật push-to-talk, nhấn giữ phím Space và nói để nội dung được chuyển lời nói thành văn bản theo thời gian thực rồi chèn vào prompt
- Có thể trộn giọng nói và gõ phím trong cùng một tin nhắn
- Prompt bằng giọng nói tự nhiên chứa nhiều ngữ cảnh hơn so với gõ — có thể giải thích bối cảnh, ràng buộc và mong muốn mà không tốn công gõ
- Cần tài khoản Claude.ai (không phải API key)
- Trong
~/.claude/keybindings.json, có thể gán lại phím push-to-talk thành meta+k chẳng hạn để bỏ qua bước làm nóng hold-detection
24. Nếu sửa 2 lần cùng một vấn đề mà vẫn chưa xong, hãy bắt đầu lại
- Nếu sa vào rabbit hole sửa đi sửa lại mà vấn đề vẫn chưa được giải quyết, context sẽ đầy những cách tiếp cận thất bại, gây ảnh hưởng xấu cho lần thử tiếp theo
- Dùng
/clear rồi khởi động lại với prompt mở đầu tốt hơn dựa trên những gì đã học được
- Một prompt sắc bén trong phiên sạch gần như luôn tốt hơn một phiên dài đang mắc kẹt trong ngõ cụt chồng chất
25. Chỉ rõ cho Claude biết chính xác file cần xem
- Tham chiếu trực tiếp file bằng tiền tố @, như
@src/auth/middleware.ts has the session handling
- Tiền tố @ sẽ tự động được hiểu là đường dẫn file, giúp Claude xác định đúng vị trí ngay lập tức
- Claude cũng có thể tự grep/tìm kiếm, nhưng quá trình thu hẹp ứng viên và xác định đúng file sẽ tốn token và context — chỉ định file ngay từ đầu sẽ bỏ qua toàn bộ quá trình đó
26. Khám phá code lạ bằng prompt mơ hồ
- "Bạn sẽ cải thiện gì trong file này?" là một prompt khám phá rất tốt — không phải prompt nào cũng cần cụ thể
- Khi cần góc nhìn mới cho code hiện có, câu hỏi mơ hồ cho Claude không gian để phát hiện điều bất ngờ
- Hữu ích khi onboarding vào repo chưa quen — Claude có thể chỉ ra pattern, điểm thiếu nhất quán và cơ hội cải thiện mà người đọc lần đầu dễ bỏ lỡ
27. Chỉnh sửa kế hoạch bằng Ctrl+G
- Khi Claude đưa ra kế hoạch, có thể nhấn Ctrl+G để mở trực tiếp trong trình soạn thảo văn bản và chỉnh sửa
- Có thể thêm ràng buộc, bỏ bước hoặc thay đổi cách tiếp cận trước khi Claude viết dù chỉ một dòng code
- Khi kế hoạch nhìn chung là đúng nhưng chỉ muốn sửa vài bước, bạn không cần giải thích lại toàn bộ
28. Chạy /init rồi cắt kết quả xuống còn một nửa
- CLAUDE.md là file markdown ở thư mục gốc dự án, cung cấp chỉ dẫn lâu dài cho Claude như lệnh build, tiêu chuẩn code, quyết định kiến trúc và quy ước repo
- Claude đọc nó khi bắt đầu mỗi phiên
/init tạo bản nháp ban đầu dựa trên cấu trúc dự án — tự nhận diện lệnh build, script test và layout thư mục
- Kết quả có xu hướng phình to — hãy xóa mọi dòng mà bạn không thể giải thích lý do tồn tại, rồi bổ sung phần còn thiếu
29. Phép thử litmus cho mọi dòng trong CLAUDE.md
- Với mỗi dòng trong CLAUDE.md, hãy tự hỏi: "Nếu không có dòng này thì Claude có mắc lỗi không?"
- Những chỉ dẫn mà Claude vốn đã làm đúng chỉ là nhiễu — dòng không cần thiết sẽ làm loãng các dòng quan trọng
- Có giới hạn khoảng 150–200 chỉ dẫn trước khi mức độ tuân thủ giảm xuống, trong khi system prompt đã chiếm khoảng 50 chỉ dẫn
30. Sau khi Claude mắc lỗi, nói: "Hãy cập nhật CLAUDE.md để lỗi này không lặp lại"
- Khi Claude mắc lỗi, hãy nói: "update the CLAUDE.md file so this doesn't happen again"
- Claude sẽ tự viết quy tắc cho chính mình và tự động tuân theo từ các phiên sau
- Theo thời gian, CLAUDE.md sẽ phát triển thành một tài liệu sống được định hình bởi các lỗi thực tế
- Để tránh phình to vô hạn, dùng
@imports (mẹo #32) để tham chiếu các file riêng như @docs/solutions.md — giữ CLAUDE.md gọn nhẹ và để Claude đọc chi tiết khi cần
31. Áp dụng quy tắc có điều kiện với .claude/rules/
- Đặt các tệp Markdown trong
.claude/rules/ để sắp xếp chỉ dẫn theo từng chủ đề — mặc định mọi tệp quy tắc sẽ được tải khi bắt đầu phiên
- Có thể kích hoạt có điều kiện để chỉ tải với các mẫu tệp cụ thể bằng frontmatter
paths:
- Ví dụ: nếu đặt
paths: ["**/*.ts"] thì Claude chỉ tải các quy tắc TypeScript khi đọc tệp .ts
- Giữ tệp CLAUDE.md chính gọn nhẹ — Claude sẽ không đọc các quy tắc cho ngôn ngữ mà hiện tại nó không làm việc
32. Giữ CLAUDE.md gọn nhẹ bằng @imports
- Tham chiếu tài liệu như
@docs/git-instructions.md — cũng có thể dùng @README.md, @package.json, @~/.claude/my-project-instructions.md
- Claude sẽ chỉ đọc tệp khi cần — đóng vai trò “thêm ngữ cảnh nếu cần” mà không làm CLAUDE.md, vốn được tải ở mọi phiên, trở nên cồng kềnh
33. Thiết lập danh sách cho phép lệnh an toàn bằng /permissions
- Đừng bấm xác nhận cho
npm run lint đến hàng trăm lần — dùng /permissions để đưa các lệnh đáng tin cậy vào danh sách cho phép
- Các lệnh không có trong danh sách vẫn sẽ hiện prompt
34. Cho phép Claude làm việc tự do hơn bằng /sandbox
- Bật cơ chế cô lập ở cấp hệ điều hành bằng
/sandbox — việc ghi bị giới hạn trong thư mục dự án, các yêu cầu mạng chỉ được phép tới những domain đã phê duyệt
- Trên macOS dùng Seatbelt, trên Linux dùng bubblewrap, và các giới hạn được áp dụng cho mọi tiến trình con mà Claude tạo ra
- Ở chế độ auto-allow, các lệnh trong sandbox sẽ chạy không cần prompt quyền hạn — mức tự chủ gần như hoàn toàn nhưng vẫn có rào chắn an toàn
- Với công việc không giám sát (migration chạy qua đêm, refactor thử nghiệm), chạy Claude trong container Docker để có cô lập hoàn toàn và dễ rollback
35. Tạo sub-agent tùy chỉnh cho các tác vụ lặp lại
- Khác với sub-agent tạo tức thời ở mẹo #19, sub-agent tùy chỉnh được cấu hình sẵn và lưu trong
.claude/agents/
- Ví dụ: agent security reviewer dùng Opus + công cụ chỉ đọc, hoặc agent tìm kiếm nhanh bằng Haiku
- Dùng
/agents để duyệt và tạo
- Có thể đặt
isolation: worktree để cấu hình agent với hệ thống tệp độc lập
36. Chọn MCP server phù hợp với stack của bạn
- Các MCP server tốt để bắt đầu: Playwright (kiểm thử trình duyệt và xác minh UI), PostgreSQL/MySQL (truy vấn schema trực tiếp), Slack (bug report và ngữ cảnh thread), Figma (quy trình thiết kế → code)
- Claude Code hỗ trợ dynamic tool loading — Claude chỉ tải định nghĩa server khi cần
37. Thiết lập kiểu đầu ra
- Chọn kiểu ưa thích trong
/config — các tùy chọn tích hợp sẵn: Explanatory (chi tiết, từng bước), Concise (ngắn gọn, tập trung hành động), Technical (chính xác, phù hợp thuật ngữ chuyên môn)
- Bạn cũng có thể tạo tệp kiểu đầu ra tùy chỉnh trong
~/.claude/output-styles/
38. CLAUDE.md là gợi ý, Hooks là yêu cầu bắt buộc
- CLAUDE.md mang tính khuyến nghị — Claude tuân theo khoảng 80%
- Hooks mang tính quyết định — được thực thi 100%
- Những gì nhất định phải chạy mỗi lần, không có ngoại lệ (formatting, linting, kiểm tra bảo mật) thì hãy thiết lập bằng Hook
- Nếu chỉ là hướng dẫn để Claude cân nhắc, CLAUDE.md là đủ
39. Tự động format bằng PostToolUse Hook
- Thêm PostToolUse Hook vào
.claude/settings.json để trình format tự chạy mỗi khi Claude chỉnh sửa tệp
- Đăng ký
npx prettier --write "$CLAUDE_FILE_PATH" 2>/dev/null || true cho matcher Edit|Write
- Dùng
|| true để lỗi Hook không chặn Claude
- Có thể nối thêm
npx eslint --fix như một mục Hook thứ hai
- Nếu editor đang mở cùng tệp đó, nên tắt format-on-save — đã có báo cáo rằng thao tác lưu của editor có thể làm mất hiệu lực prompt cache, còn Hook sẽ lo phần formatting
40. Chặn lệnh phá hoại bằng PreToolUse Hook
- Chặn các mẫu như
rm -rf, drop table, truncate bằng PreToolUse Hook — Claude sẽ không thể thử chạy chúng
- Hook được kích hoạt trước khi Claude chạy công cụ, nên chặn trước các lệnh phá hoại
- Có thể thêm vào
.claude/settings.json, cấu hình tương tác bằng /hooks, hoặc bảo Claude: “hãy thêm PreToolUse Hook chặn các lệnh rm -rf, drop table, truncate”
41. Dùng Hook để giữ lại ngữ cảnh quan trọng khi compact
- Trong các phiên dài, khi compact ngữ cảnh, Claude có thể mất ngữ cảnh về phần đang làm
- Notification Hook với matcher
compact sẽ tự động bơm lại ngữ cảnh cốt lõi mỗi khi compact được kích hoạt
- Hãy bảo Claude: “hãy thiết lập Notification Hook để sau khi compact sẽ nhắc lại tác vụ hiện tại, các tệp đã sửa và các ràng buộc”
- Những mục phù hợp để bơm lại: mô tả tác vụ hiện tại, danh sách tệp đã sửa, các ràng buộc cứng (“đừng sửa các tệp migration”)
- Hữu ích nhất trong các phiên kéo dài nhiều giờ, khi Claude đang đào rất sâu vào một tính năng và không được phép mất ngữ cảnh
42. Auth, thanh toán và thay đổi dữ liệu luôn phải được rà soát thủ công
- Luồng xác thực, logic thanh toán, thay đổi dữ liệu, thao tác DB mang tính phá hoại — dù phần còn lại của mã có tốt đến đâu thì con người vẫn phải rà soát
- Scope xác thực sai, webhook thanh toán cấu hình sai, hoặc migration âm thầm xóa cột sẽ khiến bạn mất người dùng, chi phí và niềm tin
- Không có mức độ kiểm thử tự động nào có thể bắt được hết các vấn đề kiểu này
43. Thử cách tiếp cận khác bằng /branch mà không mất hướng đi hiện tại
- Dùng
/branch (hoặc /fork) để tạo bản sao cuộc hội thoại từ điểm hiện tại
- Hãy thử refactor rủi ro trong nhánh — thành công thì giữ, thất bại thì cuộc hội thoại gốc vẫn an toàn
- Khác với rewind (mẹo #3): cả hai hướng đều cùng tồn tại
44. Khi đặc tả tính năng chưa đầy đủ, hãy yêu cầu Claude phỏng vấn bạn
- Khi bạn biết mình muốn làm gì nhưng còn thiếu mọi chi tiết cần thiết để Claude làm tốt, hãy để Claude đặt câu hỏi
- “Tôi muốn xây dựng [mô tả ngắn]. Hãy dùng công cụ AskUserQuestion để phỏng vấn tôi chi tiết. Hỏi về triển khai kỹ thuật, edge case, mối lo ngại và trade-off. Đừng hỏi những câu hiển nhiên. Hãy phỏng vấn cho đến khi bao quát hết mọi thứ rồi viết một đặc tả hoàn chỉnh vào SPEC.md”
- Sau khi hoàn tất đặc tả, hãy bắt đầu triển khai trong một phiên mới với ngữ cảnh sạch và đặc tả đầy đủ
45. Một Claude viết, một Claude khác review
- Để Claude thứ nhất triển khai tính năng, rồi Claude thứ hai review như một staff engineer trong ngữ cảnh mới
- Người review không có kiến thức sẵn về các lối tắt đã dùng khi triển khai, nên sẽ thách thức mọi phần
- Ý tưởng tương tự cũng áp dụng cho TDD: phiên A viết test, phiên B viết mã để pass test
46. Review PR theo kiểu tương tác
- Thay vì yêu cầu review PR kiểu one-shot (dù tất nhiên vẫn làm được), hãy mở PR trong phiên và trao đổi qua lại
- “Hãy giải thích thay đổi nào trong PR này rủi ro nhất”
- “Nếu phần này chạy đồng thời thì điều gì sẽ hỏng?”
- “Cách xử lý lỗi này có nhất quán với phần còn lại của codebase không?”
- Review tương tác bắt được nhiều vấn đề hơn — vì bạn có thể đào sâu vào những khu vực quan trọng
- Review one-shot có xu hướng bắt các lỗi vặt về style và dễ bỏ lỡ vấn đề kiến trúc
47. Đặt tên và màu cho phiên
- Dùng
/rename auth-refactor để hiển thị nhãn trên thanh prompt
- Dùng
/color red hoặc /color blue để đặt màu thanh prompt
- Các màu khả dụng: red, blue, green, yellow, purple, orange, pink, cyan
- Khi chạy song song 2–3 phiên, chỉ cần dành 5 giây để đặt tên và tô màu là đủ tránh gõ nhầm vào terminal sai
48. Phát âm thanh khi Claude hoàn tất
- Dùng Stop Hook để phát âm thanh hệ thống khi Claude hoàn tất phản hồi
- Bắt đầu tác vụ rồi chuyển sang làm việc khác, sau đó được báo bằng tiếng ping khi xong
- Ví dụ: đăng ký
/usr/bin/afplay /System/Library/Sounds/Glass.aiff làm Stop Hook trong .claude/settings.json
49. Mở rộng tác vụ hàng loạt bằng claude -p
- Dùng chế độ không tương tác để lặp qua danh sách tệp và xử lý — giới hạn phạm vi thao tác Claude được phép làm trên mỗi tệp bằng
--allowedTools
- Chạy song song bằng
& để đạt thông lượng tối đa:
for file in $(cat files-to-migrate.txt); do claude -p "Migrate $file from class components to hooks" --allowedTools "Edit,Bash(git commit *)" & done; wait
- Phù hợp cho chuyển đổi định dạng tệp, cập nhật import trên toàn bộ codebase, và các đợt migration lặp lại mà mỗi tệp đều độc lập
50. Tùy biến động từ spinner (cho vui)
- Khi Claude đang suy nghĩ, hiển thị các động từ spinner như "Flibbertigibbeting...", "Flummoxing..." trong terminal
- Có thể thay bằng cụm từ bạn muốn — hãy yêu cầu Claude:
- "Replace my spinner verbs in user settings with these: Hallucinating responsibly, Pretending to think, Confidently guessing, Blaming the context window"
- Không cần tự cung cấp danh sách — chỉ cần nêu không khí mong muốn như "Replace my spinner verbs with Harry Potter spells", Claude sẽ tự tạo danh sách
- Một kiểu tùy biến nhỏ giúp thời gian chờ trở nên thú vị hơn
1 bình luận
Ngay từ mục 1 đã thấy rất thú vị rồi