Xây dựng Thanh Trạng thái Tùy chỉnh cho Claude Code

Tôi dành phần lớn thời gian trong ngày với Claude Code. Nó đóng vai trò như một lập trình viên và người kiểm duyệt của tôi.

Sau vài ngày, tôi nhận thấy một vấn đề. Tôi không biết mình đã sử dụng bao nhiêu token. Tôi không biết chi phí của phiên làm việc. Tôi không biết còn lại bao nhiêu ngữ cảnh (context).

Tôi không muốn phải chạy một câu lệnh để kiểm tra những thông tin này. Tôi muốn thấy chúng trong thời gian thực. Tôi muốn chỉ cần liếc nhìn vào terminal là biết được trạng thái của mình.

Vì vậy, tôi đã xây dựng một thanh trạng thái tùy chỉnh.

Tôi tập trung vào ba điều chính:

  • Chi phí phiên làm việc: Claude Opus không hề miễn phí. Việc theo dõi chi phí trực tiếp giúp tôi quyết định khi nào nên kết thúc một tác vụ.
  • Cửa sổ ngữ cảnh (Context Window): Tôi muốn thấy phần trăm ngữ cảnh còn lại. Điều này giúp tôi quyết định khi nào nên bắt đầu một phiên làm việc mới.
  • Thông tin dự án: Tôi cần thấy thư mục hiện tại, nhánh git và mô hình (model) tôi đang sử dụng.

API của thanh trạng thái rất đơn giản. Bạn chỉ cần trỏ Claude Code đến một shell script. Công cụ sẽ gửi một tài liệu JSON đến script của bạn thông qua stdin. Script của bạn sẽ in kết quả ra stdout.

Nó không sử dụng SDK hay framework nào cả. Nó chỉ sử dụng stdin và stdout. Nó chạy cục bộ và không tốn chi phí.

Cách thiết lập:

  1. Tạo một script tại ~/.claude/statusline.sh.
  2. Sử dụng jq để phân tích dữ liệu JSON.
  3. Định dạng đầu ra để hiển thị đường dẫn, nhánh, mô hình, token và chi phí của bạn.
  4. Thêm script vào tệp ~/.claude/settings.json của bạn.

Bạn có thể đặt khoảng thời gian làm mới là 1 giây. Điều này mang lại cho bạn một bảng điều khiển (dashboard) theo thời gian thực.

Nếu bạn không muốn viết mã, Claude Code có một phím tắt. Hãy chạy: /statusline show me model, branch, token counts, context percentage, and cost

Lệnh này sẽ tự động tạo ra một dòng cho bạn.

Tùy chỉnh các công cụ của bạn bằng các shell script đơn giản sẽ thay đổi cách bạn làm việc. Bạn sẽ ngừng chờ đợi các tính năng mới và bắt đầu tự xây dựng các quy trình tự động hóa cho riêng mình.

Nguồn: https://dev.to/ndrone/building-a-custom-status-line-for-claude-code-5822

Cộng đồng học tập tùy chọn: https://t.me/GyaanSetuAi