Bỏ qua điều hướng

Công khaiTutorial

Bắt đầu với AgentKit cho Claude Code: cài đặt và các lệnh đầu tiên

AgentKit (trước đây là ClaudeKit) giúp Claude Code làm việc theo quy trình động não, lập kế hoạch, triển khai, test. Cách cài, chỉnh CLAUDE.md và quy tắc, các lệnh cốt lõi và thói quen nên có cho người mới.

26 phút đọc · v1.0.0 · Cập nhật 18/04/2026

EN · Getting started with AgentKit for Claude Code: setup and first commands · Đọc bản tiếng Anh

Bản tương tác

Bài có kèm một trang tương tác: sơ đồ, tình huống và session minh hoạ. Link mở được tạo mới mỗi lần bấm.

Tóm tắt nhanh: AgentKit (trước đây là ClaudeKit) là bộ skill, hook, agent và quy tắc bạn cài vào dự án để Claude Code làm việc theo quy trình động não, lập kế hoạch, triển khai và test (brainstorm, plan, cook, test). Bạn cài CLI ak một lần, chạy ak onboard để cài kit vào dự án, chỉnh CLAUDE.md, rồi bắt đầu với vài lệnh như /ak-brainstorm, /ak-plan, /ak-cook. Thói quen quan trọng nhất: giữ cửa sổ ngữ cảnh gọn và luôn cho Claude cách tự kiểm kết quả.

Công khai: mình là maintainer của AgentKit và có quan hệ affiliate: link AgentKit trong bài là link affiliate, mua qua link này bạn được giảm 30%.

Ghi chú: bản beta hiện tại của AgentKit (từ 3.0.0-beta.35, 21/10/2026) đã đổi format tên skill từ ak:<tên> sang ak-<tên>, nên lệnh trong bài đã cập nhật theo tên mới: Claude Code gõ /ak-plan, Codex gõ $ak-plan. Nếu bạn còn dùng bản cũ hơn, đổi ak- thành ak: là ra lệnh tương ứng.

Bài này dành cho người mới dùng Claude Code, kể cả bạn không chuyên code mà đang vibe coding. Mình giải thích Claude Code làm việc ra sao và AgentKit thêm gì vào đó, rồi đi qua cách cài, các lệnh đầu tiên, vài tình huống thực tế và những thói quen giúp agent không quên chỉ dẫn.

Claude Code là gì

Claude Code là công cụ coding agent của Anthropic. Khác một chatbot hỏi đáp, nó tự đọc file, chạy lệnh, sửa code và tự xử lý vấn đề trong khi bạn quan sát hoặc đi làm việc khác.

Khác gì so với cách dùng AI quen thuộc

AI kiểu cũClaude Code
Bạn viết code, AI xem lạiBạn mô tả ý tưởng, AI triển khai
Chép dán từng đoạnAI tự đọc và sửa file trực tiếp
Phải hướng dẫn từng bướcAI tự khám phá, lập kế hoạch, thực hiện
Không dùng được công cụTruy cập đầy đủ: bash, git, hệ thống file

Context window: tài nguyên quan trọng nhất

Claude Code có một context window (cửa sổ ngữ cảnh) chứa toàn bộ cuộc trò chuyện: tin nhắn, file đã đọc, kết quả lệnh. Ngữ cảnh càng đầy, Claude làm việc càng kém. Đây là giới hạn quan trọng nhất bạn cần quản lý.

Khi ngữ cảnh đầy, bạn sẽ thấy các dấu hiệu:

  • Claude "quên" chỉ dẫn, không làm theo điều bạn đã nói trước đó.
  • Claude lặp lại việc, làm lại thứ đã xong.
  • Claude bỏ qua CLAUDE.md và các quy tắc đã định nghĩa.

Cách xử lý: chạy /clear thường xuyên giữa các việc không liên quan.

AgentKit là gì

AgentKit là bộ quy trình làm việc đóng gói sẵn cho Claude Code, gồm hai bộ kit:

  • Engineer Kit: quy trình phát triển phần mềm. Bài này tập trung vào bộ này.
  • Marketing Kit: quy trình nội dung và marketing, lúc viết bài vẫn đang được làm.

AgentKit là sản phẩm trả phí. Mình là một trong các maintainer, nên bạn cân nhắc lời khen của mình với điều đó trong đầu. Lý do mình giới thiệu: nó giúp bạn khỏi phải tự đi gom và thử hàng loạt cấu hình, quy trình rải rác trên mạng. Thông tin và giá có ở link trong dòng công khai phía trên.

Engineer Kit (claudekit-engineer) biến Claude Code từ trợ lý AI thành một cộng sự phát triển. Nó không phải ứng dụng độc lập mà là thư mục .claude/ bạn đặt vào dự án, gồm bốn phần:

Thành phầnVai trò
SkillsLệnh Claude gọi được, ví dụ /ak-cook, /ak-fix, /ak-brainstorm
HooksScript tự chạy khi có sự kiện
AgentsVai trò subagent: planner, researcher, tester
Rules (quy tắc)Chỉ dẫn được giữ qua mọi phiên

Triết lý: YAGNI, KISS, DRY

  • YAGNI (You Aren't Gonna Need It, tạm dịch: rồi bạn sẽ không cần đâu): không viết tính năng chưa cần.
  • KISS (Keep It Simple, giữ cho đơn giản): chọn giải pháp đơn giản nhất.
  • DRY (Don't Repeat Yourself, đừng lặp lại chính mình): chỉ trừu tượng hoá khi đã thấy mẫu lặp lại.

Cài đặt

Phần này đi qua ba bước: cài CLI, chỉnh CLAUDE.md, rồi chọn mức giải thích phù hợp với bạn.

Bước 1: Cài CLI và khởi tạo dự án

Cài CLI ak trước, một lần cho cả máy. Trên macOS và Linux:

bash
curl -fsSL https://agentkit.best/install.sh | sh

Trên Windows (PowerShell):

powershell
irm https://agentkit.best/install.ps1 | iex

Sau đó chạy ak onboard để CLI dẫn bạn qua từng bước. Nếu muốn chỉ định rõ, lệnh tương đương cho Claude Code là:

bash
ak kit init engineer --target claude-code --channel stable

Nếu máy bạn còn bản ClaudeKit cũ (cài qua npm install -g claudekit-cli, lệnh ck), chạy ak migrate --from=ck để chuyển cấu hình sang AgentKit thay vì cài chồng.

Các lựa chọn dưới đây lấy theo trình cài lúc bài viết lần đầu. Bản ak có thể gộp hoặc đổi tên vài câu hỏi, nên bạn xem ak kit init --help trên máy mình:

Lựa chọnCác phương án
Tình trạng dự ánDự án mới: tạo thư mục mới từ đầu. Dự án có sẵn: đặt vào repo đang có.
Phạm vi cấu hình (chỉ với dự án có sẵn)Local: riêng dự án này, trong ./.claude/. Global: dùng chung cho mọi dự án, trong ~/.claude/ (Windows: %USERPROFILE%\.claude\).
Mức tự độngInteractive: CLI hỏi từng lựa chọn, nên dùng nếu bạn mới bắt đầu. Auto: bỏ qua câu hỏi và tự cài skill.
Kênh phát hànhStable: ổn định, ít lỗi, là mặc định. Beta: tính năng mới nhất.
Bản cài đang có (nâng cao, chỉ với dự án có sẵn)Giữ bản cũ: gộp theo từng câu hỏi, an toàn. Cài lại từ đầu: xoá file của kit trong .claude/ rồi thay mới.

Nếu thư mục .claude/ đã tồn tại, hãy sao lưu hoặc tự gộp file trước khi cài kit vào dự án.

Sau khi cài, dự án có cấu trúc gần như sau (tên vài file có thể khác giữa các bản):

text
project/
├── CLAUDE.md               # mẫu, chỉnh lại sau
├── AGENTS.md               # định nghĩa agent
├── .gitignore
├── .repomixignore          # mẫu bỏ qua cho Repomix
├── release-manifest.json   # manifest phiên bản kit
├── plans/                  # thư mục chứa kế hoạch
├── .opencode/              # tương thích OpenCode
└── .claude/                # cấu hình của kit
    ├── .ck.json            # metadata của kit
    ├── settings.json       # cài đặt Claude Code
    ├── metadata.json       # mẫu xoá file
    ├── statusline.cjs      # cấu hình thanh trạng thái
    ├── .env.example        # mẫu biến môi trường
    ├── .mcp.json.example   # mẫu cấu hình MCP
    ├── agents/             # định nghĩa subagent
    ├── hooks/              # script chạy theo sự kiện
    ├── rules/              # quy tắc quy trình
    ├── skills/             # các lệnh /ak-...
    ├── scripts/            # script tiện ích
    ├── schemas/            # JSON schema
    ├── output-styles/      # định dạng phản hồi
    └── session-state/      # theo dõi phiên

Trên Windows, cấu trúc giống hệt, chỉ khác dấu phân cách đường dẫn là \.

Bước 2: Chỉnh CLAUDE.md

Trình cài tự tạo file mẫu CLAUDE.md nếu dự án chưa có. Sau đó bạn chỉnh thêm theo dự án bằng một trong ba cách:

  • Sửa trực tiếp file mẫu, thêm lệnh build, phong cách code, quy ước.
  • Chạy /init trong Claude Code để sinh lại từ codebase. Nếu CLAUDE.md đã có, /init chỉ gợi ý cải thiện, không ghi đè.
  • Nhờ một LLM (large language model, mô hình ngôn ngữ lớn) viết theo quy tắc 200 dòng.

Một file CLAUDE.md mẫu:

markdown
# Project Name

## Build Commands
- `npm install`: install dependencies
- `npm run dev`: start dev server
- `npm test`: run tests

## Code Style
- Use ES modules (import/export)
- Prefer async/await over callbacks
- TypeScript strict mode

Giữ file dưới 200 dòng, theo khuyến nghị của Anthropic. File dài tốn ngữ cảnh và khiến Claude dễ bỏ sót quy tắc, tức là mức tuân thủ chỉ dẫn kém đi. Chỉ ghi những gì quan trọng: lệnh build, chuẩn code, quy ước chính. Nếu chỉ dẫn phình ra, tách bớt sang @import hoặc sang file trong .claude/rules/.

Bước 3: Chọn mức giải thích (tuỳ chọn)

Trong một phiên Claude Code, chạy /ak-coding-level không kèm tham số để mở menu chọn mức, hoặc đặt thẳng một mức:

text
# Mở menu chọn mức (0 đến 5)
/ak-coding-level

# Hoặc đặt mức cụ thể, ví dụ chế độ Junior
/ak-coding-level 1
MứcTênCách trả lời
0ELI5Giải thích như nói với người không biết code
1JuniorGiải thích vì sao, như người hướng dẫn
2Mid-levelMẫu thiết kế, tư duy hệ thống
3SeniorĐánh đổi, quyết định kiến trúc
4Tech LeadRủi ro và tác động tới kinh doanh
5God ModeKhông cầm tay chỉ việc (mặc định, cho người từ 15 năm kinh nghiệm)

God Mode, mức mặc định, giả định bạn là chuyên gia: đã biết câu trả lời, chỉ cần người kiểm lại, ý kiến thứ hai hoặc gõ nhanh hộ. Claude đóng vai người khuếch đại tốc độ chứ không phải thầy giáo.

Ở God Mode, Claude sẽỞ God Mode, Claude sẽ không
Ưu tiên code, ít văn xuôiGiải thích khái niệm, mẫu thiết kế hay cú pháp
Đưa code dùng được cho production ngayMở đầu kiểu Here's how..., Let me explain...
Dùng mẫu nâng cao mà không giải thíchThêm chú thích trong code nếu bạn không yêu cầu
Phản biện cách làm nếu thấy lỗi nghiêm trọngThêm "Key Takeaways", tóm tắt, bước tiếp theo
Chỉ cảnh báo vấn đề nghiêm trọng (bảo mật, mất dữ liệu)Hỏi lại khi chỉ có chút mơ hồ
Viết ngắn, chữ nào cũng có lý doĐối xử như bạn cần cầm tay chỉ việc

Nếu bạn mới học Claude Code, đặt mức 1 hoặc 2 để có giải thích. God Mode tối ưu tốc độ nhưng giả định bạn tự gỡ lỗi được khi Claude sai.

Claude Code cũng có tính năng riêng là Output styles: chạy /config, chọn "Output style" rồi chọn trong menu. Đây là tính năng độc lập của Claude Code, chỉ tình cờ có vài tên giống các mức của kit. Hai cơ chế khác nhau:

  • /ak-coding-level ghi vào .ck.json, rồi chỉ dẫn được chèn qua hook SessionStart mỗi lần mở phiên.
  • Output styles đổi thẳng lời nhắc hệ thống (system prompt), lưu outputStyle trong .claude/settings.local.json và có hiệu lực từ phiên kế tiếp để giữ prompt cache ổn định.

Chỉ dùng một trong hai, đừng bật cả hai cùng lúc để chỉ dẫn khỏi chồng chéo.

Quy tắc riêng trong .claude/rules/

Phần này nói về cơ chế của chính Claude Code, áp dụng cả khi bạn không dùng AgentKit. Với dự án lớn, hãy chia chỉ dẫn thành nhiều file nhỏ trong .claude/rules/ thay vì nhét hết vào một CLAUDE.md. Quy tắc có thể giới hạn theo đường dẫn file qua YAML frontmatter, chỉ nạp vào ngữ cảnh khi Claude đụng tới file khớp mẫu, nhờ vậy tiết kiệm chỗ.

Sơ đồ hai cột: bên trái là ngữ cảnh model đọc, nối vào nhau, gồm CLAUDE.md, CLAUDE.local.md, rules không có paths và MEMORY.md nạp lúc mở phiên, còn rules có paths chỉ nạp khi đụng file khớp mẫu; bên phải là chuỗi settings từ ~/.claude/settings.json tới .claude/settings.local.json, ghi đè theo từng khoá
Quy tắc là chỉ dẫn được nối vào ngữ cảnh, còn settings là cấu hình Claude Code ép buộc và ghi đè theo khoá; việc phải xảy ra mọi lần thì dùng hook hoặc permission.

Cấu trúc thư mục .claude/

Quy tắc chỉ là một phần, .claude/ còn chứa nhiều loại cấu hình khác. Có hai phạm vi: dự án (commit qua git, dùng chung với cả đội) và toàn cục (riêng máy bạn, không bao giờ commit).

Phạm vi dự án:

text
./CLAUDE.md              # project instructions (hoặc ./.claude/CLAUDE.md)
./CLAUDE.local.md        # personal, gitignored
./.mcp.json              # MCP servers (team-shared)
./.worktreeinclude       # copy gitignored files vào worktree mới (optional)
./.claude/
├── settings.json        # permissions, hooks, model
├── settings.local.json  # personal, auto-gitignored
├── rules/*.md           # topic rules (path-scopable)
├── skills/<name>/       # /skill-name + bundles
├── commands/*.md        # /command (legacy, prefer skills)
├── agents/*.md          # subagents
├── agent-memory/        # project subagent memory (memory: project)
└── output-styles/*.md   # system-prompt styles

Phạm vi toàn cục:

text
~/.claude.json           # app state, personal MCP, UI prefs
~/.claude/
├── CLAUDE.md            # global instructions
├── settings.json        # default settings
├── keybindings.json     # custom shortcuts
├── rules/*.md           # user-level rules
├── skills/              # personal skills
├── commands/            # personal commands
├── agents/              # personal subagents
├── agent-memory/        # subagent memory (memory: user)
├── output-styles/       # personal styles
├── plugins/             # installed plugins (auto-managed)
└── projects/<project>/memory/   # auto-memory (Claude tự ghi)

Trên Windows, các đường dẫn giống hệt nhưng dùng \. Thư mục toàn cục nằm ở %USERPROFILE%\.claude\ cùng file %USERPROFILE%\.claude.json.

Giới hạn quy tắc theo đường dẫn

Thêm YAML frontmatter với trường paths vào đầu file quy tắc để giới hạn phạm vi. Claude chỉ nạp quy tắc khi đang làm với file khớp mẫu glob, nên ngữ cảnh không bị phình mà vẫn giữ được chỉ dẫn riêng cho từng mảng (xác thực, database, giao diện, test).

markdown
---
paths:
  - "src/api/**/*.ts"
  - "src/server/**/*.ts"
---

# API Development Rules
- All endpoints must validate input via Zod
- Use standard error response format
- Include OpenAPI docs comments

Quy tắc không có trường paths luôn được nạp từ đầu phiên. Có paths thì chỉ kích hoạt khi Claude đọc file khớp mẫu.

Quy tắc là chỉ dẫn, không phải ràng buộc cứng

Quy tắc (và CLAUDE.md) là chỉ dẫn Claude đọc, không phải cấu hình Claude Code bắt buộc thi hành. Claude có thể không làm theo nếu chỉ dẫn mâu thuẫn hoặc mơ hồ. Muốn hành vi chắc chắn xảy ra, hãy dùng:

  • Hooks (trong settings.json): script chạy trước hoặc sau mỗi lần gọi công cụ.
  • Permissions: cho phép hoặc chặn từng công cụ, từng lệnh.

CLAUDE.md và settings gộp theo hai cách khác nhau

CLAUDE.md và quy tắcsettings.json
Nối vào ngữ cảnh: cả bản toàn cục, dự án và cá nhân đều được đọcGhi đè theo từng khoá: dự án đè toàn cục, cá nhân đè dự án
Khi mâu thuẫn: không có quy tắc file nào thắng, model đọc cả hai; hãy sửa để chỉ còn một chỉ dẫnMảng (permissions.allow) được gộp; giá trị đơn (model) lấy bản cụ thể nhất

Hai điểm liên quan:

  • Commands và skills giờ là một cơ chế. Quy trình mới nên viết dạng skills/<name>/SKILL.md, gói kèm file hỗ trợ (checklist, script, tài liệu tham chiếu). Nếu skill và command trùng tên, skill thắng.
  • Auto-memory. Claude tự ghi chú vào ~/.claude/projects/<project>/memory/MEMORY.md. Theo tài liệu Anthropic lúc viết bài, mỗi phiên chỉ nạp 200 dòng đầu hoặc 25KB đầu của file này; các file theo chủ đề được nạp khi cần. Bật tắt bằng /memory hoặc cài đặt autoMemoryEnabled.

CLAUDE.md khác .claude/rules/ ở đâu

CLAUDE.md.claude/rules/*.md
Chỉ dẫn chung cho toàn dự ánChỉ dẫn chia theo chủ đề hoặc đường dẫn
Luôn nạp từ đầu phiênKhông có paths: nạp từ đầu phiên. Có paths: nạp khi đụng file khớp mẫu
Mục tiêu: dưới 200 dòngMỗi file một chủ đề (code-style.md, testing.md)
Lệnh build, quy ước tổng quanQuy tắc theo mảng: API (giao diện lập trình ứng dụng), frontend, bảo mật, database
Một file duy nhấtNhiều file, quét cả thư mục con

Khi mở phiên, Claude đọc các file memory rồi nối tất cả vào ngữ cảnh chứ không ghi đè lẫn nhau. Khi CLAUDE.md sắp chạm 200 dòng, hãy tách sang .claude/rules/ theo chủ đề (ví dụ api-design.md, testing.md, security.md). Đặt tên file mô tả rõ nội dung để cả đội lẫn Claude tìm nhanh bằng Grep.

Nên và không nên khi viết quy tắc

Nên:

  • Chia quy tắc theo mảng hoặc mối quan tâm (i18n-rules.md, testing-rules.md).
  • Viết ngắn, dạng gạch đầu dòng hoặc checklist để Claude đọc nhanh.
  • Đặt tên kebab-case, mô tả rõ (api-error-handling.md).
  • Kèm ví dụ đúng và sai.
  • Ghi đường dẫn chính xác khi quy tắc áp cho một thư mục cụ thể.

Không nên:

  • Viết quy tắc dài dòng như tài liệu.
  • Lặp nội dung giữa CLAUDE.md và rules/.
  • Tạo quy tắc cho thứ chỉ dùng một lần (YAGNI).

Năm file quy tắc mẫu

Ứng dụng đa ngôn ngữ (i18n)

markdown
# i18n Rules

## Scope
Apply to all user-facing text in src/components/ and src/pages/.

## Rules
- Mọi user-visible string PHẢI dùng `t('key')` từ `useTranslation()`
- Translation keys tại `src/i18n/{locale}/{namespace}.json`
- Support locales: vi (default), en, zh, ja
- Key naming: `section.component.element`
- KHÔNG i18n: code snippets, entity IDs, technical identifiers

## Khi thêm text mới
1. Thêm key vào `src/i18n/vi/{ns}.json` trước
2. Copy key sang 3 locales còn lại với placeholder
3. Cập nhật `src/i18n/index.ts` nếu tạo namespace mới

Xử lý lỗi API

Ép mẫu discriminated union cho phản hồi API, file api-error-handling.md:

markdown
# API Error Handling

## Pattern
Mọi API call phải wrap trong try/catch, return discriminated union:
{ok: true, data} | {ok: false, error}

## Error Types (src/types/errors.ts)
- NetworkError, ValidationError, AuthError, ServerError

## UI Display
- Toast cho transient errors (NetworkError)
- Inline form errors cho ValidationError
- Redirect to /login cho AuthError

Migration cơ sở dữ liệu an toàn

Tránh thay đổi phá vỡ khi migrate database, file db-migration.md:

markdown
# Database Migration Rules
- NEVER drop columns trong migration: mark deprecated trước, drop ở release sau
- Mọi migration phải có `up()` VÀ `down()`, rollback-safe
- Index concurrent (Postgres: `CONCURRENTLY`) cho tables > 10k rows
- Test migration trên copy of prod data trước khi merge

Chuẩn test

Mục tiêu độ phủ và quy ước test, file testing-rules.md:

markdown
# Testing Rules

## Coverage
- Unit tests cho business logic: > 80%
- Integration tests cho API endpoints
- E2E tests cho critical user flows (login, checkout)

## Conventions
- Test files: `*.test.ts` cạnh source file
- Arrange/Act/Assert pattern
- Dùng factories thay vì fixtures hardcode
- Mock external services, KHÔNG mock internal modules

Nền bảo mật

Quy tắc bảo mật cơ bản cho mọi dự án, file security-rules.md. CORS (Cross-Origin Resource Sharing) là cơ chế trình duyệt quyết định trang web nào được gọi API của bạn:

markdown
# Security Rules
- NEVER log secrets, tokens, passwords
- Input validation: Zod schema at API boundary
- SQL: prepared statements only, no string concat
- Auth middleware check trên mọi protected route
- CORS whitelist từ env, không wildcard
- Dependencies: audit weekly với `npm audit`

Cơ chế nạp file nâng cao

Khi dự án lớn hoặc bạn muốn dùng chung quy tắc giữa nhiều repo, Claude Code có bốn cơ chế mở rộng ngữ cảnh.

Cơ chếDùng khiCách bật
@importTách nội dung dài ra file riêng mà CLAUDE.md vẫn gọnViết @đường/dẫn.md trong CLAUDE.md, lồng tối đa 5 tầng
--add-dirMonorepo, hoặc cần đọc thư mục ngoài dự án như ../sharedCờ --add-dir, lệnh /add-dir hoặc additionalDirectories trong settings.json
CLAUDE.local.mdGhi chú cá nhân không commit: URL sandbox, tài khoản testTạo file cạnh CLAUDE.md và thêm vào .gitignore
SymlinkDùng chung một bộ quy tắc cho nhiều dự ánln -s thư mục hoặc file quy tắc vào .claude/rules/

@import: nhúng file khác vào CLAUDE.md

Trong CLAUDE.md, viết @docs/coding-standards.md hoặc @~/.claude/my-prefs.md để nhúng nội dung file đó vào đúng vị trí. Đường dẫn tương đối hay tuyệt đối đều được. Theo tài liệu Anthropic lúc viết bài, nhúng lồng nhau tối đa 5 tầng. Cách này giúp tách nội dung dài ra file riêng mà CLAUDE.md vẫn gọn.

markdown
@docs/coding-standards.md
@~/.claude/rules/security.md
@.claude/rules/testing.md

--add-dir: mở thêm thư mục trong cùng phiên

Thông thường Claude Code chỉ đọc file trong thư mục bạn khởi chạy. Cờ --add-dir cho phép mở thêm thư mục khác vào cùng phiên, tiện khi làm monorepo hoặc cần tham chiếu ../shared, ../design-system nằm ngoài dự án hiện tại. Ba cách sau tương đương nhau: cờ --add-dir khi chạy lệnh, lệnh /add-dir ngay trong phiên, hoặc khai báo additionalDirectories trong settings.json.

bash
# Cờ khi khởi chạy
claude --add-dir ../shared --add-dir ../design-system

# Hoặc lệnh trong phiên
/add-dir ../shared

Lưu ý: mặc định Claude không nạp CLAUDE.md hay CLAUDE.local.md từ các thư mục thêm qua --add-dir, để giữ tương thích ngược với dự án cũ. Muốn Claude áp dụng memory từ những thư mục đó, bật biến môi trường trước khi chạy:

bash
export CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1
claude --add-dir ../shared

Sau khi bật, mọi CLAUDE.md hoặc CLAUDE.local.md trong thư mục được thêm sẽ được nạp cùng dự án chính, giúp Claude hiểu quy ước riêng của từng vùng làm việc trong cùng một phiên. Theo tài liệu Anthropic, tính năng này có từ Claude Code 2.1.20 và phải tự bật vì lý do tương thích ngược.

CLAUDE.local.md: ghi chú cá nhân, không commit

File này dành cho sở thích riêng của bạn trong dự án: URL sandbox, tài khoản test, lệnh gỡ lỗi cá nhân. Thêm CLAUDE.local.md vào .gitignore để không lẫn vào commit. Claude nạp file này cùng CLAUDE.md nhưng nó chỉ có trên máy bạn, người khác trong đội không thấy.

Thư mục .claude/rules/ hỗ trợ symlink. Bạn giữ bộ quy tắc chuẩn của đội ở một chỗ rồi link vào từng dự án; khi cập nhật, mọi dự án nhận cùng lúc. Claude tự phát hiện symlink vòng và bỏ qua, không bị kẹt.

bash
ln -s ~/shared-claude-rules .claude/rules/shared
ln -s ~/company-standards/security.md .claude/rules/security.md

Bảy lệnh cốt lõi cho người mới

Bảy lệnh dưới đây đủ cho tuần đầu. Mỗi lệnh kèm một prompt mẫu bạn chép về chạy thử được.

/ak-brainstorm

Khám phá các phương án trước khi quyết. Kết quả: phân tích đánh đổi, ưu nhược điểm, đề xuất.

text
/ak-brainstorm How should we implement real-time notifications? WebSockets vs SSE vs polling?

/ak-plan

Lập kế hoạch chi tiết cho tính năng phức tạp: nghiên cứu, kế hoạch, danh sách file, tiêu chí hoàn thành.

text
/ak-plan Implement user authentication with OAuth2 (Google, GitHub)

/ak-cook

Lệnh chính để triển khai, đi qua tám bước: nghiên cứu, rà soát, lập kế hoạch, rà soát, triển khai, rà soát, test, hoàn tất.

text
/ak-cook Add a logout button to the navbar

Hai cờ hay dùng: --fast bỏ bước nghiên cứu, --auto bỏ mọi chốt rà soát.

/ak-fix

Quy trình bảy bước (đánh số 0 đến 6): chọn chế độ, dò code, chẩn đoán, đánh giá độ phức tạp, sửa, kiểm chứng, hoàn tất.

text
/ak-fix Users can't login after session timeout - seeing "Invalid token" error

/ak-ask

Hỏi câu hỏi kỹ thuật, như có một kỹ sư lâu năm ngồi cạnh.

text
/ak-ask How does our authentication middleware handle token refresh?

/ak-test

Chạy test, hỗ trợ nhiều trình chạy test.

text
/ak-test src/auth/   # test một thư mục cụ thể

/ak-watzup

Xem lại thay đổi trong phiên: file đã sửa, phân tích git diff, đánh giá tác động.

text
/ak-watzup

Tình huống thực tế

Năm tình huống dưới đây ghép các lệnh trên thành quy trình hoàn chỉnh, từ việc dễ cho người mới tới việc cần hiểu codebase hơn.

Làm tính năng mới (người mới)

Thêm trang cài đặt người dùng với nút bật chế độ tối và tuỳ chọn thông báo:

text
/ak-brainstorm User settings page: dark mode + notifications. Should we store in localStorage or backend? Component structure?
# → Output: plans/reports/brainstorm-260414-user-settings.md

/ak-plan Implement per brainstorm report at plans/reports/brainstorm-260414-user-settings.md
# → Creates implementation plan with phases

/ak-cook plans/260414-xxxx-user-settings/plan.md
# Execute: implement → review → test → done

/ak-git cm
# Commit with message

Kết quả: tính năng có kế hoạch đàng hoàng, code được rà soát, có test và đã commit.

Sửa lỗi nhanh (người mới)

Form đăng ký không hiện thông báo lỗi khi email sai:

text
/ak-fix Email validation in signup form doesn't show error message.
File: src/components/SignupForm.tsx
Expected: "Invalid email" appears below input
Actual: No message, just red border

/ak-test src/components/SignupForm.test.tsx

Kết quả: lỗi được sửa kèm test hồi quy. Quy trình tự động: dò, chẩn đoán, sửa, test, kiểm chứng.

Làm quen codebase mới (trung bình)

Bạn vừa vào đội mới, cần hiểu codebase nhanh trước khi đóng góp:

text
/ak-scout src/
# Explore structure

/ak-ask How does the authentication flow work?
/ak-ask Explain src/services/auth/token-handler.ts
/ak-ask What patterns does this codebase follow?

Kết quả: bạn nắm được kiến trúc và các luồng chính nhanh hơn nhiều so với tự đọc tài liệu.

Refactor an toàn (trung bình)

Một module cũ khoảng 500 dòng cần dọn lại, nhưng bạn sợ làm hỏng chức năng đang chạy:

text
/ak-ask Analyze src/legacy/user-manager.js
What are the hidden dependencies? Side effects?

/ak-plan Refactor user-manager.js into smaller modules.
Must maintain all existing behavior. Write tests first.
# → Creates implementation plan with phases

/ak-cook <plan-path>
# Execute: implement → review → test → done

/ak-code-review
# Verify no regressions

Kết quả: code chia module, có test và giữ được hành vi cũ, nên bạn tự tin hơn khi refactor. Muốn chặt hơn ở bước lập kế hoạch, xem bài khi nào bật --deep và --tdd cho /ak-plan.

Dựng giao diện từ Figma (trung bình)

Người quản lý sản phẩm gửi bản mockup Figma, bạn cần dựng giao diện sát thiết kế, kèm hiệu ứng chuyển động:

text
/ak-frontend-design [paste Figma URL hoặc screenshot]
# Auto-activates /ak-ui-ux-pro-max (design intelligence)
# Claude generates với đúng spacing, colors, animations

/ak-ui-styling Add dark mode support cho component vừa tạo
/ak-test src/components/NewFeature.test.tsx

Kết quả: giao diện bám sát thiết kế, co giãn theo màn hình, có chế độ tối. Bạn vẫn nên nhờ người thiết kế duyệt lại trước khi phát hành.

Thói quen nên có

Bốn thói quen này giúp Claude làm đúng ngay từ lần đầu và bớt phải sửa đi sửa lại.

Cho Claude cách tự kiểm kết quả

Đây là mẹo đáng giá nhất. So sánh hai cách giao việc:

text
# Chưa tốt
implement email validation

# Tốt
write validateEmail function. Test cases: user@example.com → true
Run tests after implementing.

Đi theo thứ tự động não, lập kế hoạch, triển khai

text
/ak-brainstorm [explore options]
/ak-plan [detail implementation]
/ak-cook [implement + test]
/ak-git cm [commit]

/ak-cook đã bao gồm bước test. Chỉ dùng /ak-test [path] riêng khi cần test một thư mục cụ thể.

Dùng thẳng /ak-plan, bỏ qua brainstorm, khi:

  • Đã biết rõ cách làm (sửa một lỗi cụ thể, thêm endpoint theo đặc tả).
  • Việc đơn giản, không cần khám phá phương án khác.
  • Đã có thiết kế hoặc đặc tả từ Figma hay tài liệu yêu cầu sản phẩm (PRD).

Chạy /ak-brainstorm trước khi chưa biết cách nào tốt nhất, cần phân tích đánh đổi (ví dụ WebSockets hay SSE), hoặc tính năng mới chưa có tiền lệ.

Với tính năng nặng về giao diện, thêm một bước mockup để duyệt trước:

text
/ak-brainstorm → /ak-plan → /ak-frontend-design (mockup) → Review → /ak-cook

Mockup HTML với dữ liệu giả làm nhanh hơn triển khai thật, giúp bắt lỗi thiết kế sớm và tránh làm lại.

Đưa ngữ cảnh cụ thể

text
# Chưa tốt
add tests for auth

# Tốt
write tests for src/auth/token-refresh.ts:
- successful refresh with valid token
- failure when token expired > 7 days
- concurrent refresh requests

Dọn ngữ cảnh thường xuyên

Chạy /clear khi:

  • Chuyển sang một việc hoàn toàn khác.
  • Claude sai quá 2 lần ở cùng một vấn đề.
  • Claude bắt đầu "quên" chỉ dẫn.

Những thói quen nên tránh

Thói quenChuyện gì xảy raCách sửa
Một phiên ôm đủ thứLàm nhiều việc không liên quan trong một phiên, ví dụ Fix login, rồi Add dark mode, rồi Optimize images, rồi quay lại login. Ngữ cảnh đầy rác, Claude rối.Chạy /clear giữa các việc không liên quan
Sửa đi sửa lại cùng một lỗiClaude sai, bạn sửa, vẫn sai, bạn sửa tiếp. Ngữ cảnh đầy những cách làm đã thất bại.Sau 2 lần sửa không được, chạy /clear và viết prompt tốt hơn
Bỏ lập kế hoạch vì việc "đơn giản""Việc này đơn giản, khỏi plan", ba tiếng sau vẫn đang gỡ trường hợp biên.Dùng /ak-plan --fast để lập kế hoạch nhẹ
Tin mà không kiểmClaude báo Done!, bạn đưa lên production, rồi mọi thứ hỏng.Chạy /ak-test, tự test tay, rà soát code rồi mới phát hành
Prompt quá mơ hồmake it better, fix the bug, add auth không đủ ngữ cảnh để Claude làm đúng.Nêu rõ triệu chứng, vị trí và hành vi mong muốn

Các mẫu quy trình thường gặp

Bốn mẫu dưới đây theo độ lớn của việc, kèm lộ trình học lệnh theo thời gian.

Sửa nhanh (dưới 5 phút)

text
/ak-cook --fast Fix typo
/ak-git cm "fix: typo"

Tính năng thông thường

text
/ak-brainstorm
/ak-plan → /ak-cook
/ak-git cm

Việc phức tạp, kéo dài nhiều ngày

text
Day 1:  /ak-brainstorm → /ak-plan
Day 2+: /ak-cook [Phase N]
        /clear between phases

Điều tra lỗi

text
/ak-debug [symptom + logs]
# Phân tích root cause → fix thủ công hoặc /ak-fix

Học lệnh theo giai đoạn

  • Tuần đầu (người mới): /ak-brainstorm, /ak-plan, /ak-cook, /ak-fix, /ak-ask, /ak-test, /ak-git.
  • Tuần 2 đến 4 (trung bình): /ak-scout, /ak-code-review, /ak-debug, /ak-ship, /ak-watzup, /ak-frontend-design, /ak-ui-styling.
  • Từ tháng thứ hai (nâng cao): /ak-team, /ak-autoresearch, /ak-predict, /ak-security, /ak-loop, /ak-scenario, /ak-xia, /ak-bootstrap. Ngoài ra còn nhiều skill khác.

Bảng tra nhanh

Tình huốngLệnh
Khám phá phương án/ak-brainstorm [question]
Lập kế hoạch tính năng/ak-plan [description]
Triển khai tính năng/ak-cook [description]
Sửa nhỏ, nhanh/ak-cook --fast [fix]
Sửa lỗi/ak-fix [symptom]
Hỏi kỹ thuật/ak-ask [question]
Chạy test/ak-test [path]
Khám phá codebase/ak-scout [path]
Rà soát code/ak-code-review [path|--pr N]
Xem lại thay đổi/ak-watzup
Commit/ak-git cm "message"
Quy trình phát hành đầy đủ/ak-ship
Dọn ngữ cảnh/clear
Bật chế độ cho người mới/ak-coding-level 1

Bảng này chỉ gồm các lệnh thường dùng. Cú pháp chi tiết và ví dụ cho mọi lệnh có ở vividkit.dev/guides/commands.

Lệnh trong bài dùng tên skill dạng /ak-<tên> của bản beta AgentKit hiện tại (từ 3.0.0-beta.35). Nếu máy bạn còn bản AgentKit cũ hơn với lệnh /ak:, hoặc bản ClaudeKit cũ với lệnh /ck:, tên lệnh tương ứng một đối một; bạn đối chiếu với danh sách lệnh của bản đang cài.

Đi tiếp

Khi đã quen bốn lệnh /ak-brainstorm, /ak-plan, /ak-cook, /ak-test, bạn đọc tiếp bài khi nào bật --deep và --tdd cho /ak-plan cho các đợt refactor lớn. Sau đó, hướng dẫn ak-preview cho thấy cách biến kế hoạch, kiến trúc thành sơ đồ. Nếu muốn dùng thử, bạn xem thông tin tại AgentKit (link affiliate).

Dùng bài này trong agent của bạn

Lấy API key

Chép đoạn dưới, dán vào Claude Code, Codex hay agent bạn đang dùng. Agent đọc bài rồi đối chiếu với repo đang mở.

Dán vào agent
Đọc bài "Bắt đầu với AgentKit cho Claude Code: cài đặt và các lệnh đầu tiên" trên modernEngineer rồi áp dụng vào repo này.
1. Gọi tool content_get của MCP server modernengineer với locale "vi", slug "claudekit-beginners-guide". Nếu chưa nối MCP hoặc bị từ chối quyền, đọc thẳng trang https://modernengineer.dev/vi/library/claudekit-beginners-guide.
2. Tóm tắt các bước chính của bài, chỉ ra bước nào áp dụng được cho repo này.
3. Đề xuất thay đổi cụ thể và hỏi tôi trước khi sửa file.
Nối MCP cho Claude Code (một lần)
terminal
claude mcp add --transport http modernengineer \
  https://api.modernengineer.dev/mcp \
  --header "Authorization: Bearer <API key>"
Cách nối Codex, Cursor và client khác

Bài mở cho mọi người: chưa nối MCP thì agent vẫn đọc được thẳng từ link bài.

Phiên bản
v1.0.0
Cập nhật
18/04/2026
Giấy phép
Bảo lưu mọi quyền
Slug
claudekit-beginners-guide