Quay lại hướng dẫn
Cách dùng·5 tháng 9, 2026·Cập nhật 3 tháng 10, 2026·Đọc 9 phút

Cách dùng Claude Code — từ điểm mà bài nhập môn kết thúc

Claude Code là agent thường trú trong repository, chạy từ terminal. Điểm gây vướng không phải lần chạy đầu tiên mà là khi bạn phải lặp lại cùng một giải thích, cửa sổ xác nhận xuất hiện quá thường xuyên hoặc cửa sổ sử dụng bị đóng.

Có rất nhiều bài viết về cách sử dụng Claude Code, nhưng phần lớn đều kết thúc ở “cài đặt và nhận phản hồi đầu tiên”. Phần thực sự gây vướng mắc lại đến sau đó — bạn phải lặp lại cùng một lời giải thích mỗi lần, hộp thoại xác nhận xuất hiện quá thường xuyên, và cửa sổ sử dụng 5 giờ đóng lại giữa lúc công việc đang dở. Bài viết này bắt đầu từ nơi các bài nhập môn kết thúc và lần lượt giải quyết ba vấn đề đó.

Hãy thống nhất một tiền đề trước. Claude Code không phải công cụ để dán mã vào cửa sổ chat, mà là một agent thường trú trong repository từ terminal. Nó đọc và sửa tệp, chạy test, thậm chí commit. Vì vậy, việc đầu tiên không phải là học thuộc cách sử dụng, mà là truyền cho nó các quy tắc của dự án.

Ba bước đầu tiên — chạy, /init, yêu cầu cụ thể

Ngay sau khi cài đặt, chỉ ba việc này là đáng làm. Đặc biệt, nếu bỏ qua /init thứ hai, bạn sẽ phải lặp lại cùng một phần giải thích trong mọi phiên sau đó.

# 1. 프로젝트 디렉터리에서 실행한다 (이게 전제 조건입니다)
cd ~/work/my-app
claude

# 2. 첫 명령은 /init — 저장소를 읽고 CLAUDE.md를 만들어 줍니다
> /init

# 3. 이후엔 한국어로 그냥 부탁하면 됩니다. 파일 경로를 붙일수록 정확해집니다
> src/api/user.ts의 검증 로직을 zod로 바꾸고 테스트도 같이 고쳐줘

/init đọc repository và tạo CLAUDE.md. Nội dung được tạo chỉ là bản nháp, vì vậy đừng giữ nguyên mà hãy nhất định chỉnh sửa thủ công. Phần tiếp theo nói về nội dung đó.

CLAUDE.md — viết một lần những điều trước đây phải giải thích mỗi lần

CLAUDE.md là tệp Markdown đặt ở thư mục gốc của dự án và được tự động đọc trong mỗi phiên. Những gì cần viết ở đây chỉ là “những điều không thể biết chỉ bằng cách đọc mã nguồn”.

CLAUDE.md
# CLAUDE.md — 프로젝트 루트에 두고 git에 커밋합니다

## 명령어
- 테스트: npm test (파일 하나만: npm test -- path/to/file)
- 타입 검사: npx tsc --noEmit
- 린트: npm run lint

## 규칙
- 날짜는 date-fns만 사용. moment 금지.
- API 핸들러는 app/api/**/route.ts에만 둔다.
- 커밋 메시지는 한국어, prefix는 feat / fix / docs.

## 건드리면 안 되는 곳
- db/migrations/ — 생성물. 직접 수정 금지.

Ngược lại, những gì không nên viết cũng rất rõ ràng. Cấu trúc thư mục hoặc mô tả hàm sẽ có khi đọc mã nguồn nên không cần thiết. CLAUDE.md được gửi kèm trong mỗi request, vì vậy càng dài càng tốn token — hãy viết ngắn, chỉ gồm các quy tắc. Commit vào git sẽ áp dụng cùng các quy tắc cho toàn bộ nhóm.

Quyền — giảm hộp thoại xác nhận nhưng không tắt toàn bộ

Hộp thoại xác nhận xuất hiện mỗi khi sửa tệp hoặc chạy lệnh. Đây là một cơ chế an toàn, nên thay vì tắt toàn bộ, cách thực tế là chỉ cho phép nhóm lệnh đọc và xác minh. Chọn “Always allow” trong phiên sẽ được ghi nhớ, còn ghi vào .claude/settings.json sẽ cố định ở cấp dự án.

Có cờ bỏ qua mọi xác nhận, nhưng khi đó cả delete và push từ xa đều không cần xác nhận. Chỉ sử dụng nó trong container hoặc cây làm việc dùng một lần có thể bỏ đi nếu hỏng. Tiêu chí được tổng hợp tại khi nào nên dùng --dangerously-skip-permissions.

Lệnh tùy chỉnh — không phải gõ cùng một yêu cầu mỗi lần

Những công việc gần như luôn được yêu cầu theo cùng một cách, chẳng hạn review, kiểm tra trước khi phát hành hoặc sắp xếp thông điệp commit, có thể được tạo thành lệnh. Chỉ cần đặt tệp Markdown trong .claude/commands/.

.claude/commands/review.md
# .claude/commands/review.md — 파일만 두면 /review로 쓸 수 있습니다
지정된 파일을 리뷰하고 다음 세 가지만 지적하세요.

1. 실제로 실패하는 조건이 있는 버그 (재현 방법 포함)
2. 기존 유틸리티로 대체 가능한 중복
3. 테스트가 없는 분기

스타일 취향은 지적하지 마세요.

Khi đó, /review src/api/user.ts sẽ chạy review theo cùng một góc nhìn. Commit vào git sẽ chia sẻ lệnh với cả nhóm, đồng thời cho phép lưu chính tiêu chí review trong repository. Hình thức của các lệnh được dùng trong thực tế được mô tả chi tiết hơn bằng tiếng Anh trong Claude Code workflows.

Cách tiếp tục khi cửa sổ sử dụng đóng lại

Mức sử dụng của gói đăng ký được quản lý theo cửa sổ trượt 5 giờ và thường đóng đúng vào buổi chiều khi công việc đang cao điểm. Nâng cấp gói cao hơn cũng không mở lại ngay lúc đó. Các lựa chọn thực tế là ba phương án.

Lựa chọnTình huống phù hợp
Chờ cửa sổ mở lạiKhông có thời hạn. Có thể trì hoãn vài giờ
Chuyển sang gói cao hơnXảy ra hằng ngày. Hạn mức liên tục không đủ
Chỉ chuyển công việc đó sang API keyPhải hoàn thành hôm nay. Chỉ chạm giới hạn vài lần mỗi tháng

Lựa chọn thứ ba không yêu cầu hủy gói đăng ký. Bạn chỉ bị tính phí theo mức sử dụng trong thời gian hai dòng bên dưới được thiết lập; xóa các biến này sẽ quay lại dùng gói đăng ký. Nếu chưa có khóa, trước tiên hãy lấy khóa API Claude.

~/.zshrc
# 사용량 창이 닫혀도 작업을 이어가는 두 줄.
# 이 변수가 설정된 동안에만 종량제로 청구되고, 지우면 구독으로 돌아갑니다.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-...

# 클로드 코드의 기본 모델과 opus 별칭은 최신 Opus를, sonnet 별칭은 Sonnet 5.5를
# 가리킵니다. Kunavo가 제공하지 않는 모델(Sonnet 5.5, 아직 들어오지 않은 새 Opus)을
# 요청해 404가 나지 않도록 모델을 고정합니다. sonnet을 고정하지 않으면 /model sonnet,
# opusplan의 실행 단계, model: sonnet으로 지정한 서브에이전트가 404를 받습니다.
# opus 별칭에 고정한 Opus 5.5는 Claude Code v2.1.280 이상이 필요합니다
# (이전 버전이면 먼저 claude update).
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-5-5
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5

# 보조 작업을 가장 싼 모델로 넘기는 한 줄 (매 세션 효과가 있습니다)
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5

Mức giá được đọc nguyên trạng từ catalog: Claude Sonnet 5 là $1,40 / $7,00 cho mỗi 1M token, còn Claude Haiku 4.5 là $0,70 / $3,50. Khoản phí được trừ từ số dư trả trước, nên không có phí trong những tháng bạn không sử dụng. Tính điểm hòa vốn để biết gói đăng ký hay trả theo mức sử dụng rẻ hơn tại giá Claude Code; cách xử lý khi thanh toán bằng thẻ Hàn Quốc bị chặn nằm ở giá và thanh toán Claude API; còn cấu trúc của cửa sổ sử dụng được tổng hợp tại giới hạn Claude Pro.

Yêu cầu giúp kết quả tốt hơn và yêu cầu làm kết quả kém hơn

Cuối cùng, đây là phần thể hiện rõ nhất sự khác biệt trong cách sử dụng. Gắn đường dẫn tệp giúp giảm số token dùng cho việc tìm kiếm, nhờ đó kết quả nhanh và chính xác hơn — thay vì “sửa logic xác thực”, hãy nói “chuyển logic xác thực của src/api/user.ts sang zod”.

Và đừng giao một công việc lớn trong một lần. Chia thành thay đổi → test → thay đổi tiếp theo sẽ giúp xác định rõ điểm quay lại khi có lỗi. Cách phân biệt khi xảy ra lỗi được giải thích trong tổng hợp lỗi Claude Code.

Nếu muốn sử dụng agent lập trình phía OpenAI theo cách tương tự, cách sử dụng Codex tổng hợp các bước chạy Codex CLI bằng API key mà không cần gói ChatGPT.

Câu hỏi thường gặp

Điều đầu tiên cần làm khi học cách sử dụng Claude Code là gì?

Sau khi chạy claude trong thư mục dự án, hãy chạy /init một lần. /init đọc repository và tạo CLAUDE.md. Trong tệp này, hãy ghi cách chạy test, các quy tắc của dự án và những đường dẫn không được chạm vào; tệp sẽ được tự động đọc trong mọi phiên sau đó. Nếu bỏ qua bước này, bạn sẽ phải lặp lại cùng một phần giải thích mỗi lần.

Nên viết gì trong CLAUDE.md?

Chỉ viết những điều bạn phải “giải thích mỗi lần”. Ba nhóm là đủ: lệnh test và kiểm tra kiểu, các quy tắc riêng của dự án (dùng thư viện này, không đặt logic trong tầng này), và các đường dẫn đến tệp sinh tự động không được sửa. Ngược lại, đừng viết cấu trúc thư mục hay mô tả hàm mà chỉ cần đọc mã nguồn là biết. CLAUDE.md được gửi kèm trong mỗi request, nên càng dài thì chi phí càng tăng mà độ chính xác không tăng.

Tôi phải làm gì khi chạm giới hạn sử dụng 5 giờ?

Có ba lựa chọn. Chờ đến khi cửa sổ mở lại, nâng cấp gói cao hơn hoặc chỉ chuyển công việc đó sang API key. Lựa chọn thứ ba chỉ cần hai dòng ANTHROPIC_BASE_URL và ANTHROPIC_AUTH_TOKEN, không cần hủy gói đăng ký. Chỉ trong thời gian các biến tồn tại, bạn mới bị tính phí theo mức sử dụng; xóa chúng sẽ quay lại trạng thái ban đầu. Nâng cấp gói cao hơn cũng không mở cửa sổ ngay lập tức, vì vậy vào ngày có hạn chót, lựa chọn thứ ba là nhanh nhất.

Có thể giảm các hộp thoại xác nhận hỏi tôi có muốn chạy mỗi lần không?

Có thể. Chọn “Always allow” trong phiên sẽ được ghi nhớ, còn ghi vào .claude/settings.json sẽ cố định ở cấp dự án. Chỉ cho phép các lệnh đọc và xác minh như npm test hoặc git status sẽ giúp giảm đáng kể số lần xác nhận. Cũng có cờ bỏ qua mọi xác nhận, nhưng khi đó cả delete và push đều không cần xác nhận, vì vậy chỉ dùng trong container có thể bỏ đi.

Tạo lệnh tùy chỉnh như thế nào?

Chỉ cần đặt một tệp Markdown trong .claude/commands/. Nếu đặt review.md, bạn có thể gọi bằng /review. Nội dung chỉ cần là prompt ngôn ngữ tự nhiên. Khi commit vào git, cả nhóm sẽ dùng cùng lệnh, vì vậy bạn có thể lưu trong repository những công việc luôn cần được yêu cầu theo cùng một cách, chẳng hạn tiêu chí review hoặc kiểm tra phát hành.

Mẹo chắc chắn nhất để cải thiện kết quả là gì?

Gắn đường dẫn tệp cụ thể. “Sửa logic xác thực” kém hiệu quả hơn “chuyển logic xác thực trong src/api/user.ts sang zod”, vì cách sau dùng ít token hơn cho việc tìm kiếm nên nhanh và chính xác hơn. Một mẹo khác là không giao một công việc lớn trong một lần — chia thành thay đổi → test → thay đổi tiếp theo sẽ giúp xác định rõ điểm quay lại khi có lỗi.