claude-code-notifier
cách hoạt động hướng dẫn câu hỏi thường gặp
◐Tiếng Việt
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
Bắt đầu
Tất cả hướng dẫn

Thông báo tích hợp sẵn của Claude Code: terminal bell và preferredNotifChannel

Cập nhật ngày 31 tháng 10 năm 2026 · 6 phút đọc
trong trang này 01Cách khắc phục nhanh 02Tất cả giá trị của preferredNotifChannel 03Khi nào thông báo tích hợp sẵn được kích hoạt 04Theo từng terminal 05Qua SSH và trong tmux 06Kết hợp alert tích hợp sẵn với hook 07Giới hạn của các tùy chọn tích hợp sẵn 08Claude Code Notifier nằm ở đâu trong bức tranh này 09Câu hỏi thường gặp

Claude Code có sẵn tính năng thông báo: khi Claude làm xong hoặc đang chờ ở một permission prompt mà có vẻ bạn không ở đó, nó sẽ báo cho bạn qua terminal. Setting preferredNotifChannel quyết định cách báo. Giá trị mặc định "auto" gửi desktop notification trong iTerm2, Ghostty và Kitty, còn ở hầu hết các terminal khác thì không làm gì. Đặt thành "terminal_bell" để phát ký tự bell ở mọi terminal, qua /config (tại đó nó có tên Local notifications) hoặc trong ~/.claude/settings.json.

01Cách khắc phục nhanh

Nếu bạn không nghe thấy gì khi Claude làm xong, hãy thêm đoạn này vào ~/.claude/settings.json:

{
  "preferredNotifChannel": "terminal_bell"
}

Sau đó đảm bảo terminal của bạn có phản ứng với bell: phát âm thanh, nảy biểu tượng trên Dock, nháy tab hoặc hiện thông báo. Thiết lập này nằm trong terminal, không phải trong Claude Code. Trên Mac, Windows và Linux, hầu hết terminal đều có mục "bell" hoặc "alert" trong phần cài đặt.

02Tất cả giá trị của preferredNotifChannel

Giá trịClaude Code làm gì
"auto" (mặc định)Desktop notification trong iTerm2, Ghostty và Kitty. Trong Apple Terminal, chỉ phát ký tự bell khi audible bell của profile đó đang tắt. Ở nơi khác thì không làm gì
"terminal_bell"Phát ký tự bell ở mọi terminal
"iterm2"Gửi desktop notification của iTerm2
"iterm2_with_bell"Desktop notification của iTerm2 kèm bell
"kitty"Gửi desktop notification của Kitty
"ghostty"Gửi desktop notification của Ghostty
"notifications_disabled"Không gửi gì

Setting này có thể đặt trong bất kỳ file settings nào: user (~/.claude/settings.json), project (.claude/settings.json) hoặc local (.claude/settings.local.json). Các phiên bản cũ lưu nó trong ~/.claude.json, và Claude Code vẫn đọc giá trị còn sót lại ở đó.

03Khi nào thông báo tích hợp sẵn được kích hoạt

Theo tài liệu của Anthropic, cảnh báo tích hợp sẵn có cùng thời điểm kích hoạt với hook Notification. Trong một phiên terminal:

  • Permission prompt: sau khi prompt đã chờ khoảng sáu giây mà không có phím nào được bấm. Mỗi lần bạn bấm phím, thời gian chờ được tính lại.
  • Làm xong: khoảng 60 giây sau khi Claude dừng, và chỉ khi từ lúc đó bạn chưa gõ gì và không còn background agent nào đang chạy.

Vì vậy cảnh báo "làm xong" tích hợp sẵn được cố ý thiết kế không tức thì. Nó nhằm báo cho bạn khi bạn đã rời đi, chứ không phải ping bạn khi bạn đang theo dõi. Nếu muốn được báo ngay khi một lượt kết thúc, hãy dùng hook Stop (xem hướng dẫn về Stop hook).

04Theo từng terminal

iTerm2 (macOS)

iTerm2 nhận desktop notification theo mặc định, nhưng iTerm2 chỉ hiển thị sau khi bạn cho phép:

  1. Mở Settings > Profiles > Terminal.
  2. Chọn Notification Center Alerts.
  3. Bấm Filter Alerts và bật Send escape sequence-generated alerts.

Đồng thời kiểm tra xem iTerm2 đã được phép hiển thị thông báo trong System Settings > Notifications chưa.

Apple Terminal (macOS)

Apple Terminal không nhận desktop notification. Với "auto", Claude Code chỉ gửi bell im lặng khi thấy Audible bell đang tắt trong profile của cửa sổ phía trước. Khi đó bell hiện thành cửa sổ nháy sáng, hoặc biểu tượng nảy trên Dock khi Terminal chạy nền, nếu tùy chọn Visual bell hoặc nảy Dock của profile đang bật.

Lưu ý một chi tiết. Nếu bạn đã chấp nhận prompt thiết lập terminal ở lần chạy đầu của Claude Code, nó đã chạy /terminal-setup, lệnh này tắt audible bell trong profile Apple Terminal của bạn. Để nghe được âm thanh, hãy đặt "terminal_bell" và bật lại Audible bell trong Settings > Profiles > Advanced.

Ghostty và Kitty (macOS và Linux)

Cả hai đều nhận desktop notification mà không cần thiết lập, và đều chuyển tiếp nó tới trung tâm thông báo của hệ điều hành.

Các terminal khác

Windows Terminal, GNOME Terminal, Konsole, Alacritty, WezTerm, Warp và terminal trong IDE mặc định không nhận được gì. Hãy đặt "terminal_bell" rồi bật xử lý bell của chính terminal đó, hoặc dùng hook. Terminal trong IDE có những điểm riêng, được trình bày trong hướng dẫn cho VS Code, Cursor và JetBrains.

05Qua SSH và trong tmux

Thông báo desktop là một escape sequence do terminal trên máy của bạn diễn giải, nên nó vẫn đến được với bạn kể cả khi Claude Code chạy trên server từ xa qua SSH. Ghostty và Kitty chuyển tiếp nó mà không cần cấu hình thêm. iTerm2 cần các thiết lập alert ở trên.

Trong tmux, sequence này bị nuốt mất trừ khi bạn cho phép passthrough. Thêm đoạn sau vào ~/.tmux.conf rồi chạy tmux source-file ~/.tmux.conf:

set -g allow-passthrough on

Session bị detach là chuyện khác: nếu không có terminal nào được attach thì chẳng có gì hiển thị được alert. Xem hướng dẫn tmux và thông báo qua SSH.

06Kết hợp alert tích hợp sẵn với hook

Hook Notification chạy song song với alert tích hợp sẵn, không thay thế nó. Tài liệu của Anthropic nói rõ hook vẫn chạy ngay cả khi đặt "notifications_disabled": thiết lập này chỉ thay đổi cách Claude Code báo cho bạn, chứ không quyết định hook có chạy hay không. Nhờ vậy bạn có thể chia rõ ràng:

  • Giữ "auto" hoặc "terminal_bell" để nhận alert khi ngồi tại bàn.
  • Thêm hook cho mọi thứ khác, như âm thanh hệ thống, thông báo desktop trong terminal vốn không có, hoặc push về điện thoại với ntfy.
  • Nếu hook đã hiển thị thông báo desktop, hãy đặt "notifications_disabled" để tránh thấy hai thông báo.

Ví dụ, đoạn sau phát một âm thanh trên macOS mỗi khi Claude cần bạn chú ý, trong bất kỳ terminal nào:

{
  "hooks": {
    "Notification": [
      {
        "hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" }]
      }
    ]
  }
}

Phiên bản tương đương cho Linux và Windows có trong hướng dẫn Linux và hướng dẫn Windows.

07Giới hạn của các tùy chọn tích hợp sẵn

  • Chỉ ở trên máy tính. Bell hay thông báo đến từ terminal trên màn hình của bạn. Đi xuống bếp là bạn bỏ lỡ.
  • Phụ thuộc vào terminal. Nhiều terminal phổ biến không nhận được gì cho đến khi bạn đổi thiết lập.
  • Bạn không thể trả lời nó. Nó chỉ báo Claude đang chờ; bạn vẫn phải quay lại bàn phím.

Remote Control của Anthropic, cùng với ứng dụng di động Claude, là cách chính thức để nhận push trên điện thoại. Bài so sánh đặt nó cạnh các lựa chọn khác.

08Claude Code Notifier nằm ở đâu trong bức tranh này

Nếu bạn làm việc tại bàn, alert tích hợp sẵn cộng với "terminal_bell" có thể là đủ. Claude Code Notifier dành cho lúc bạn không ngồi tại bàn. Công cụ dòng lệnh của nó, ccn, chạy như một hook của Claude Code, nên hoạt động trong mọi terminal trên Mac, Windows và Linux, dù có thiết lập bell hay không. Riêng nó đã hiển thị thông báo desktop khi Claude làm xong, cần cấp quyền hoặc đặt câu hỏi. Khi đã ghép nối điện thoại, bạn có thể cho phép hoặc từ chối quyền, trả lời câu hỏi của Claude và gửi chỉ dẫn tiếp theo ngay từ điện thoại; còn nếu bạn vừa gõ phím trong 30 giây gần nhất thì sẽ không có gì chờ trên điện thoại cả. Xem trang ccn.

09Câu hỏi thường gặp

Làm sao để tắt thông báo của Claude Code?

Đặt "preferredNotifChannel": "notifications_disabled", hoặc chọn nó trong mục Local notifications ở /config. Các hook Notification bạn đã thiết lập vẫn chạy.

Vì sao iTerm2 không hiển thị thông báo của Claude Code?

iTerm2 cần tích chọn Notification Center Alerts và bật Send escape sequence-generated alerts trong Profiles > Terminal > Filter Alerts, đồng thời cấp quyền thông báo trong cài đặt macOS. Nếu dùng trong tmux, hãy đặt thêm allow-passthrough on.

Vì sao Apple Terminal không có bell?

Phần thiết lập terminal của Claude Code tắt audible bell của Apple Terminal. Hãy đặt "terminal_bell" và bật lại Audible bell trong tab Advanced của profile.

Terminal bell có hoạt động trong VS Code không?

Mặc định thì không. Hãy đặt "terminal_bell" và kiểm tra thiết lập terminal bell của VS Code, hoặc dùng hook. Hướng dẫn cho IDE có chi tiết.

Claude Code Notifier Nhận push trên điện thoại khi Claude Code chạy xong hoặc cần bạn, rồi duyệt, từ chối hoặc trả lời ngay tại đó. Công cụ dòng lệnh ccn miễn phí trên Mac, Windows và Linux.
Tải cho iOS Tải cho Android Cài đặt ccn

Hướng dẫn liên quan

  • Thông báo Claude Code trong terminal của VS Code, Cursor và JetBrainsVì sao terminal trong IDE im lặng khi Claude Code làm xong, và cách nhận alert trong VS Code, Cursor và JetBrains bằng một thiết lập hoặc một hook.
  • Claude Code trong tmux hoặc screen: nhận thông báo từ phiên đã detachNhận thông báo khi Claude Code trong tmux hoặc screen làm xong hoặc cần bạn: allow-passthrough, cảnh báo bell, đặt tên phiên, và push về điện thoại khi đã detach.
  • Notification hook của Claude Code: khi nào kích hoạt và cách dùngKhi nào Notification hook của Claude Code kích hoạt, permission_prompt và idle_prompt nghĩa là gì, input nó nhận được, và vì sao nó chờ một lúc mới kích hoạt.
  • So sánh mọi cách nhận thông báo từ Claude CodeSo sánh thông báo có sẵn, hook tự viết, ntfy và webhook chat, Remote Control của Anthropic cùng các ứng dụng notifier: mỗi cách làm được gì và không làm được gì.
claude-code-notifier

Claude Code Notifier là ứng dụng độc lập của bên thứ ba. Ứng dụng không liên kết với, không được chứng thực hay tài trợ bởi Anthropic, PBC. "Claude" và "Claude Code" là nhãn hiệu của Anthropic, PBC.

ứng dụng Ứng dụng iOS Ứng dụng Android ccn cho macOS, Windows & Linux Tất cả hướng dẫn
pháp lý Chính sách quyền riêng tư Điều khoản dịch vụ Ngôn ngữ khác © 2026 touchtap. Bảo lưu mọi quyền. TouchTap Ltd được đăng ký tại Anh và xứ Wales, số công ty 13942589.