CLAUDE CODE THAM KHẢO NHANH
Lệnh CLI, workflow, MCP, hook, cấu hình
Bắt Đầu
Cài Đặt & Khởi Chạy
npm install -g @anthropic-ai/claude-code
claude # bắt đầu phiên tương tác
claude --version # kiểm tra phiên bản
claude update # cập nhật lên mới nhất
Xác Thực
claude login # xác thực qua trình duyệt OAuth
export ANTHROPIC_API_KEY="sk-ant-..."
claude logout # xóa phiên đăng nhập
Slash Commands
Lệnh Phiên Làm Việc
| /help | Hiển thị các lệnh có sẵn |
| /clear | Xóa lịch sử hội thoại |
| /compact | Nén ngữ cảnh để tiết kiệm token |
| /cost | Xem mức sử dụng token và chi phí |
| /status | Xem thông tin phiên và model |
| /new | Bắt đầu hội thoại mới |
| /config | Mở hoặc xem cấu hình |
| /doctor | Chẩn đoán sự cố cấu hình |
| /init | Tạo CLAUDE.md cho dự án |
| /login | Xác thực với Anthropic |
| /logout | Xóa xác thực |
Lệnh Workflow
| /bug | Báo cáo lỗi |
| /review | Yêu cầu code review |
| /pr | Tạo hoặc cập nhật pull request |
| /commit | Commit các thay đổi đã staged kèm message |
Phím Tắt
| Ctrl+C | Hủy generation hiện tại |
| Ctrl+D | Thoát Claude Code (EOF) |
| Escape | Hủy input/chỉnh sửa hiện tại |
| Tab | Tự động hoàn thành đường dẫn và lệnh |
| Up/Down | Điều hướng lịch sử input |
CLI Flags
Flag Thường Dùng
| -p, --print | Chế độ không tương tác (headless) |
| --model | Đặt model: opus, sonnet, haiku |
| --output-format | Đầu ra dạng text, json, stream-json |
| --allowedTools | Giới hạn tool: Edit,Read,Bash |
| --max-turns N | Giới hạn số lượt hội thoại |
| --debug | Bật debug logging |
| -n, --name | Đặt tên phiên làm việc |
Headless / Scripting
claude -p "explain this error" < log.txt
claude -p "list todos" --output-format json
echo "fix typos" | claude -p
File Cấu Hình
Phân Cấp CLAUDE.md
| ./CLAUDE.md | Hướng dẫn cấp dự án (được commit vào repo) |
| ./.claude/settings.json | Cài đặt dự án (quyền, hook) |
| ~/.claude/CLAUDE.md | Hướng dẫn toàn cục người dùng (tất cả dự án) |
| ~/.claude/settings.json | Cài đặt toàn cục người dùng |
| ~/.claude/projects/*/CLAUDE.md | Hướng dẫn người dùng theo dự án (không trong repo) |
Biến Môi Trường
| ANTHROPIC_API_KEY | API key để xác thực trực tiếp |
| CLAUDE_MODEL | Ghi đè model mặc định |
| CLAUDE_CONFIG_DIR | Đường dẫn thư mục cấu hình tùy chỉnh |
Quyền
settings.json
{
"permissions": {
"allow": ["Read", "Glob", "Grep"],
"deny": ["Bash(rm *)"]
}
}
Chế Độ Quyền
| default | Hỏi trước khi dùng tool rủi ro |
| --dangerously-skip-permissions | Cho phép tất cả tool (chỉ dùng CI/script) |
| --allowedTools | Flag CLI để giới hạn bộ tool |
MCP Servers
MCP Server Là Gì?
Model Context Protocol server mở rộng Claude Code với tool tùy chỉnh — database, API, dịch vụ. Quản lý qua CLI hoặc `.mcp.json`.
Quản Lý CLI
claude mcp add server-name -- cmd arg1 arg2
claude mcp list
claude mcp remove server-name
Cấu Hình .mcp.json
{
"mcpServers": {
"my-db": {
"command": "python",
"args": ["-m", "mcp_server_db"],
"env": { "DB_URL": "${DATABASE_URL}" }
}
}
}
Phạm Vi
| .mcp.json | MCP server cấp dự án |
| ~/.claude/mcp.json | MCP server toàn cục người dùng |
| claude mcp add -s user | Thêm vào phạm vi người dùng |
| claude mcp add -s project | Thêm vào phạm vi dự án |
Hooks
Sự Kiện Hook
| PreToolUse | Chạy trước khi tool được thực thi |
| PostToolUse | Chạy sau khi tool hoàn thành |
| Notification | Chạy khi Claude gửi thông báo |
| Stop | Chạy khi Claude hoàn thành response |
Ví Dụ settings.json
{
"hooks": {
"PreToolUse": [{
"matcher": "Bash",
"hooks": [{
"type": "command",
"command": "check-command.sh $INPUT"
}]
}]
}
}
Hành Vi Hook
| exit 0 | Cho phép tool tiếp tục |
| exit 2 | Chặn tool không cho chạy |
| stdout | JSON phản hồi cho Claude |
SDK & Tự Động Hóa
Scripting Headless
# Prompt đơn, nhận đầu ra JSON
claude -p "summarize main.py" \
--output-format json
# Pipe input
git diff | claude -p "review this diff"
CI / GitHub Actions
- uses: anthropics/claude-code-action@v1
with:
claude_args: >
--max-turns 5
--model claude-sonnet-4-6
Mẹo
Dùng `--max-turns` để giới hạn chi phí trong automation. Dùng `--output-format json` để phân tích kết quả theo chương trình. Kết hợp với `--allowedTools` để đảm bảo an toàn.
Models
Chọn Model
claude --model opus # mạnh nhất
claude --model sonnet # cân bằng (mặc định)
claude --model haiku # nhanh nhất, rẻ nhất
Phím Tắt Model
| opus | Claude Opus — khả năng cao nhất |
| sonnet | Claude Sonnet — mặc định, cân bằng |
| haiku | Claude Haiku — nhanh và tiết kiệm |
| --model full-name | vd: claude-sonnet-4-6 |
Best Practices
Viết CLAUDE.md
Đặt quy ước dự án, tech stack, lệnh build, và hướng dẫn test vào CLAUDE.md. Giữ ngắn gọn — Claude đọc mỗi phiên. Dùng `/init` để tạo khung.
Quản Lý Chi Phí
| /cost | Kiểm tra mức sử dụng token đang chạy |
| /compact | Nén ngữ cảnh khi quá lớn |
| --max-turns | Giới hạn lượt trong automation |
| sonnet / haiku | Dùng model rẻ hơn cho tác vụ đơn giản |
Đặt Prompt Hiệu Quả
| Cụ thể | "Fix the null check in auth.ts:42" > "fix bug" |
| Cung cấp ngữ cảnh | Tham chiếu file, hàm, thông báo lỗi |
| Dùng @file | Tham chiếu file trực tiếp: @src/main.ts |
| Dùng ảnh | Kéo thả screenshot để cung cấp ngữ cảnh |
| Lặp lại | Tiếp tục để tinh chỉnh; dùng /clear để reset |