𝗦𝘁𝗼𝗽 𝗖𝗹𝗶𝗰𝗸𝗶𝗻𝗴 𝗔𝗽𝗽𝗿𝗼𝘃𝗲: 𝗛𝗼𝘄 𝘁𝗼 𝗖𝘂𝘀𝘁𝗼𝗺𝗶𝘇𝗲 𝗖𝗹𝗮𝘂𝗱𝗲 𝗖𝗼𝗱𝗲 𝗖𝗟𝗜 𝗣𝗲𝗿𝗺𝗶𝘀𝘀𝗶𝗼𝗻𝘀

Tôi đã dành nhiều thời gian để nhấn "Approve" hơn là kiểm tra công việc trong lần đầu thực hiện tác vụ với Claude Code.

Mọi tệp tin được đọc. Mọi trạng thái git. Mọi câu lệnh.

Đến cuối cùng, tôi đã phải nhấn qua bốn mươi thông báo (prompts). Tôi cảm thấy ít tin tưởng vào các thay đổi hơn cả lúc mới bắt đầu. Hệ thống phân quyền đã rèn luyện tôi thói quen phê duyệt qua loa mọi thứ mà không cần đọc qua.

Bạn phải cấu hình quyền hạn để chỉ phê duyệt những gì thực sự quan trọng.

Claude Code không phải là một cửa sổ chat. Nó đọc tệp, ghi tệp và chạy các câu lệnh shell. Cách tiếp cận "phê duyệt mọi thứ" một cách mù quáng là rất nguy hiểm.

Các chế độ (Modes) xác định cách Claude hoạt động khi không có quy tắc cụ thể nào tồn tại.

• default: An toàn cho các dự án mới. Reads: Auto. Edits: Asks. Bash: Asks. • plan: Tốt nhất cho việc review code. Reads: Auto. Edits: Blocked. Bash: Blocked. • acceptEdits: Tốt nhất cho việc lập trình tích cực. Reads: Auto. Edits: Auto. Bash: Asks. • bypassPermissions: Tốt nhất cho CI/CD. Reads: Auto. Edits: Auto. Bash: Auto.

Bạn chuyển đổi các chế độ bằng lệnh /permissions.

Cấu hình tuân theo một hệ thống phân cấp. Phạm vi (scope) cao hơn luôn được ưu tiên.

  1. Enterprise policy
  2. User settings (~/.claude/settings.json)
  3. Project settings (.claude/settings.json)
  4. Project local (.claude/settings.local.json)

Các quy tắc sử dụng định dạng đơn giản: allow, deny, hoặc ask.

Quan trọng: Thứ tự đánh giá là deny, sau đó đến ask, và cuối cùng là allow. Deny luôn luôn thắng.

Nếu bạn muốn vô hiệu hóa hoàn toàn một công cụ, hãy sử dụng tên gốc của nó. Nếu bạn muốn hạn chế một công cụ, hãy sử dụng một quy tắc có phạm vi (scoped rule) với mẫu glob (glob pattern).

Ví dụ cho quá trình phát triển tích cực:

  • Allow: Bash(npm run *), Bash(git status)
  • Deny: Bash(rm -rf *), Bash(curl *)
  • Ask: Bash(git push *)

Bạn cũng có thể bảo vệ dữ liệu nhạy cảm. Hãy sử dụng quy tắc deny cho các tệp như .env để đảm bảo Claude không bao giờ đọc được thông tin xác thực của bạn.

Mẹo chuyên nghiệp cho quy trình làm việc của bạn:

  • Sử dụng /permissions trong CLI để mở giao diện UI tương tác.
  • Thêm quy tắc cho bất kỳ thứ gì bạn phải nhấn phê duyệt quá hai lần.
  • Sử dụng các flag như --permission-mode để thiết lập quy tắc cho một phiên làm việc duy nhất mà không làm thay đổi các tệp tin.
  • Trong CI/CD, hãy sử dụng bypassPermissions với các quy tắc deny nghiêm ngặt để giữ cho môi trường của bạn an toàn.

Ngừng phê duyệt qua loa. Hãy bắt đầu cấu hình.

Source: https://dev.to/kapoormanish/stop-clicking-approve-how-to-customize-claude-code-cli-permissions-pnh

Optional learning community: https://t.me/GyaanSetuAi