Skip to content
Bùi Thúc Đồng Notebook · since 2009
§ 03 · TUTORIAL INTERMEDIATE ~7 MIN UPDATED 2026-07-18

/compact, /clear và /rewind: quản lý context window trong Claude Code đúng cách

Ba lệnh dọn context nghe giống nhau nhưng chi phí và trường hợp dùng khác hẳn nhau. Hiểu cái gì sống sót qua compaction, khi nào rewind rẻ hơn, và vì sao sửa CLAUDE.md giữa phiên không có tác dụng.

Phiên Claude Code càng dài, context window càng đầy: mỗi file Claude đọc, mỗi tool result, mỗi lượt hỏi đáp đều cộng dồn. Đến một lúc bạn phải dọn — và Claude Code cho ba lệnh nghe na ná nhau: /compact, /clear, /rewind. Dùng sai lệnh không gây lỗi gì, chỉ âm thầm tốn token và mất thông tin không đáng mất.

Ba lệnh, ba việc khác nhau

LệnhLàm gìLịch sử hội thoạiPrompt cache
/compactThay lịch sử bằng bản tóm tắt có cấu trúcNén lại, giữ ý chínhRebuild (phần conversation)
/clearXóa sạch, bắt đầu hội thoại mớiMất hếtRebuild từ project context
/rewindCắt về một lượt cũ hơnGiữ nguyên đến điểm cắtHit lại cache cũ — rẻ nhất

/compact — nén để đi tiếp

/compact gửi một request tóm tắt toàn bộ hội thoại, rồi thay lịch sử bằng bản tóm tắt đó. Những gì tự động load lại sau compact: system prompt, CLAUDE.md, auto memory, MCP tools. Ngoại lệ đáng nhớ: danh mục skill không load lại — chỉ những skill bạn đã thực sự gọi mới được giữ trong bản tóm tắt.

Về chi phí, phần “đắt” của compact không phải chỗ bạn nghĩ. Request tóm tắt dùng chung prefix với hội thoại của bạn nên đọc thẳng từ cache — phần lớn thời gian đi vào việc sinh bản tóm tắt. Lượt sau compact chỉ rebuild cache cho bản tóm tắt ngắn, nên cũng không phải phần chậm.

Khi nào dùng: ở điểm nghỉ tự nhiên giữa hai task, khi phần context cũ thực sự không cần nữa. Chủ động /compact lúc đó tốt hơn là để auto-compact tự kích hoạt giữa chừng một task — thời điểm tệ nhất để mất chi tiết.

/clear — trang giấy trắng

/clear bỏ toàn bộ hội thoại và bắt đầu lại. Project context (CLAUDE.md, memory, rules) được đọc lại từ đĩa. Dùng khi chuyển hẳn sang việc không liên quan — mang theo context cũ chỉ tốn chỗ và gây nhiễu.

Chi tiết ăn theo đáng giá: CLAUDE.md chỉ được đọc một lần lúc mở phiên. Bạn sửa nó giữa phiên thì Claude vẫn làm việc với bản cũ — nội dung mới chỉ load sau /clear, /compact hoặc restart. Nếu vừa thêm quy tắc mới vào CLAUDE.md và muốn nó có hiệu lực ngay, /clear là cách nhanh nhất.

/rewind — quay lại nhánh đúng, gần như miễn phí

/rewind cắt hội thoại về một lượt trước đó. Điểm hay nằm ở cache: phần lịch sử còn lại chính là nội dung mà cache đã được build từ đó, và mọi lượt sau này đều đọc xuyên qua prefix đó nên entry vẫn ấm. Request kế tiếp hit thẳng vào cache cũ — không như /compact phải build prefix mới.

Khi nào dùng: bạn đã đi một nhánh sai — thử một hướng fix không ăn thua, hay để Claude lan man sang việc phụ — và muốn quay lại điểm rẽ. /rewind còn khôi phục được cả file checkpoint kèm theo lượt đó.

Đừng nhầm với /recap

/recap sinh bản tóm tắt để hiển thị cho bạn đọc trong terminal — nó append vào cuối như output của lệnh, không thay lịch sử. Muốn nắm lại mạch việc sau khi rời máy thì dùng /recap; muốn giải phóng context thì mới /compact.

Quy tắc chọn nhanh

  1. Nhánh sai, muốn quay lại/rewind. Giữ cache, giữ ngữ cảnh trước điểm rẽ.
  2. Xong task, sang task liên quan/compact tại điểm nghỉ. Đừng đợi auto-compact.
  3. Sang việc không liên quan / vừa sửa CLAUDE.md/clear.
  4. Chỉ muốn xem tóm tắt/recap.

Nguồn tham khảo

Đối chiếu docs lần cuối ngày 14/07/2026. Bài liên quan: prompt caching trong Claude Code.