Giải pháp giảm dung lượng phiên làm việc Claude Code với Session Distiller

06 tháng 4, 2026·5 phút đọc

Phiên làm việc dài 4 giờ trên Claude Code có thể chứa đến 70MB dữ liệu, trong đó chủ yếu là các kết quả công cụ và ảnh chụp màn hình thừa thãi. Session Distiller được phát triển để giảm dung lượng tập tin phiên xuống còn 10% mà vẫn giữ nguyên nội dung hội thoại, giúp AI hoạt động hiệu quả và không bị 'quên' thông tin gần đây.

Giải pháp giảm dung lượng phiên làm việc Claude Code với Session Distiller

Giải pháp giảm dung lượng phiên làm việc Claude Code với Session Distiller

Trong quá trình làm việc với Claude Code, một phiên làm việc kéo dài 4 giờ có thể tạo ra file dữ liệu lên đến 70MB. Nhưng trải nghiệm thực tế cho thấy chỉ có khoảng 7% dữ liệu trong đó là hội thoại thực tế, còn lại hầu hết là các output của công cụ, ảnh chụp màn hình mã hóa base64 hay các log build cũ kỹ. Điều này gây tốn bộ nhớ ngữ cảnh khi Claude phải tải lại phiên làm việc, dẫn đến việc quên nhanh các nội dung vừa trao đổi.

Để giải quyết vấn đề này, một công cụ có tên Session Distiller đã được ra đời, cho phép "chưng cất" dữ liệu phiên làm việc, loại bỏ các phần thừa không cần thiết nhưng vẫn giữ nguyên toàn bộ văn bản hội thoại.

Cấu trúc dữ liệu lớn trong phiên làm việc Claude Code

Phân tích file JSONL phiên làm việc 73MB cho thấy:

  • Văn bản hội thoại thực tế khoảng 4MB
  • Kết quả đọc file (Read) chiếm gần 28MB
  • Kết quả Bash (log build, test) khoảng 9MB
  • Ảnh chụp màn hình base64 chiếm đến 22MB
  • Dữ liệu chỉnh sửa (Edit/Write) khoảng 6MB
  • Phần metadata khác 4MB

Điều này đồng nghĩa hơn 90% dữ liệu thực chất không cần thiết để tái hiện hội thoại, vì các file vẫn còn trên đĩa, ảnh cũ không còn sử dụng, log cũng không quan trọng.

Session Distiller hoạt động ra sao?

Session Distiller đọc file phiên làm việc JSONL, giữ nguyên từng từ trong hội thoại và áp dụng các quy tắc xử lý riêng biệt theo loại công cụ:

Loại công cụDữ liệu giữ lạiLý do
ReadKhông giữ gì cảFile vẫn còn trên đĩa, Claude có thể đọc lại khi cần
Bash5 dòng đầu + 5 dòng cuốiCần biết câu lệnh và kết quả thành công hay không, không cần toàn bộ log dài dòng
Edit, WriteĐường dẫn file + 200 ký tự xem trước/sauNhớ được phần đã thay đổi
AgentGiới hạn 2000 ký tựGiữ những báo cáo quan trọng, loại bỏ log không cần thiết

Điểm khác biệt lớn là không dùng tóm tắt AI, chỉ dựa vào quy tắc lọc tách chiết định trước. Điều này giúp tránh mất thông tin quan trọng do tóm tắt sai, và không tốn token gọi LLM.

Kết quả điển hình là giảm dung lượng phiên từ 70MB xuống còn 7MB, tiết kiệm đến 90% bộ nhớ ngữ cảnh cho Claude. Phiên gốc vẫn được sao lưu trước khi thay đổi, đảm bảo an toàn dữ liệu.

Thách thức về xử lý nhiều lời gọi công cụ song song

Claude Code thường thực hiện nhiều lời gọi công cụ trong một tin nhắn trợ lý. Trong kho dữ liệu, các kết quả công cụ tham chiếu bằng tool_use_id, không theo thứ tự xuất hiện. Nếu chỉ theo biến toàn cục cho công cụ gần nhất, sẽ bị nhầm lẫn khi song song nhiều công cụ hoạt động.

Giải pháp là tạo bản đồ toolIdMap ánh xạ tool_use_id sang tên công cụ tương ứng. Nhờ đó, khi gặp một kết quả công cụ, có thể tra chính xác loại công cụ để áp dụng quy tắc lọc phù hợp.

Một lỗi nhỏ nhưng nếu bỏ sót sẽ gây mất dữ liệu mà không biết.

Công cụ loại bỏ ảnh (Image Trimmer)

Một vấn đề thường gặp khác là tiêu thụ nhiều dung lượng bởi ảnh chụp màn hình base64 cồng kềnh, khiến Claude báo lỗi "hình ảnh vượt kích thước giới hạn".

Công cụ Image Trimmer riêng biệt được xây dựng nhằm chặn mọi khối ảnh trong phiên làm việc JSONL, thay thế bằng dòng [image redacted]. Công cụ này chạy nhanh, dễ dùng và được tích hợp như một skill trong Claude Code với lệnh /trim-images.

Hướng dẫn sử dụng

  • Từ dashboard Claude Code Organizer có nút Distill, bấm vào để nén phiên làm việc ngay trên GUI.

  • Từ dòng lệnh:

    npx @mcpware/claude-code-organizer --distill path/to/session.jsonl
    node src/trim-images.mjs path/to/session.jsonl  # Chỉ loại bỏ ảnh
    

Công cụ hiển thị thống kê trước và sau khi nén, đồng thời sao lưu phiên gốc trong thư mục riêng biệt kèm file index minh bạch.

Hiệu năng và ưu điểm

  • Thời gian nén dưới 2 giây trên file 70MB.
  • Không gọi LLM, mạng hay thư viện phụ thuộc, hoàn toàn xử lý JSON thuần túy.
  • Giúp giảm token đầu vào khoảng 90%, từ 15-20 triệu token công cụ rút xuống chỉ còn 1-2 triệu token hội thoại.
  • Giúp Claude ghi nhớ hiệu quả, phiên làm việc mượt mà không "quên" chi tiết quan trọng giữa chừng.

Kết luận

Session Distiller là công cụ quan trọng cho người dùng Claude Code có phiên làm việc phức tạp, dung lượng lớn. Việc nén phiên làm việc giúp tăng hiệu quả AI, giảm bộ nhớ cần thiết, đồng thời giữ nguyên nội dung hội thoại gốc.

Nếu bạn thường xuyên gặp cảnh báo hoặc bị giới hạn do file phiên làm việc khổng lồ, công cụ này chắc chắn đáng để thử nghiệm.


Nguồn và mã nguồn mở: Claude Code Organizer trên GitHub

Claude Code OrganizerClaude Code Organizer

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗