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 Claude Code trong terminal của VS Code, Cursor và JetBrains

Cập nhật ngày 31 tháng 10 năm 2026 · 7 phút đọc
trong trang này 01Vì sao IDE im lặng 02Cách 1: terminal bell 03Cách 2: một Notification hook 04Cửa sổ remote: SSH, WSL, dev container và JetBrains Remote Development 05Dùng terminal bên ngoài với /ide 06Một vài điều khác nên biết 07Claude Code Notifier nằm ở đâu trong bức tranh này 08Câu hỏi thường gặp

Terminal trong IDE như VS Code, Cursor và JetBrains mặc định không nhận thông báo desktop từ Claude Code, vì Claude Code chỉ gửi thông báo này tới iTerm2, Ghostty và Kitty. Để nhận alert, bạn có thể đặt "preferredNotifChannel": "terminal_bell" và để IDE xử lý bell, hoặc thêm một hook Notification vào ~/.claude/settings.json để hiển thị thông báo desktop hay gửi push. Hook chạy được cả trong terminal tích hợp lẫn trong chat panel của extension VS Code, vì cả hai đều đọc cùng một file settings.

01Vì sao IDE im lặng

Alert tích hợp sẵn của Claude Code phụ thuộc vào terminal mà nó chạy. Với thiết lập mặc định, nó chỉ hiện thông báo desktop trong iTerm2, Ghostty và Kitty, và tài liệu về terminal của Anthropic nêu rõ terminal tích hợp của VS Code là một trong những terminal không nhận được gì. Terminal của JetBrains cũng tương tự. Hướng dẫn terminal bell giải thích mọi giá trị của preferredNotifChannel.

Có hai cách chạy Claude Code trong VS Code và Cursor, và sự khác biệt này rất quan trọng:

Chat panel của extensionclaude trong terminal tích hợp
Thứ được chạyBản Claude Code đi kèm extensionBản CLI độc lập bạn đã cài
Settings~/.claude/settings.json~/.claude/settings.json (cùng một file)
HookCó chạyCó chạy
Thông báo desktop tích hợp sẵnKhông có tài liệuMặc định không có
Cài đặt terminal bellKhông áp dụngHoạt động nếu IDE xử lý bell

Các IDE của JetBrains (IntelliJ IDEA, PyCharm, WebStorm, GoLand, Android Studio và các IDE khác) hoạt động giống cột bên phải: plugin Claude Code chạy claude trong terminal tích hợp của IDE và kết nối với nó.

02Cách 1: terminal bell

Nếu claude chạy trong terminal tích hợp, hãy thêm đoạn này vào ~/.claude/settings.json:

{
  "preferredNotifChannel": "terminal_bell"
}

Khi đó Claude Code sẽ phát ký tự bell mỗi khi cần bạn. Chuyện gì xảy ra tiếp theo là do IDE quyết định. VS Code và Cursor xử lý terminal bell qua cài đặt accessibility signal; hãy tìm "terminal bell" trong Settings để chọn âm thanh. Với IDE của JetBrains, hãy xem phần cài đặt terminal tương ứng với phiên bản IDE của bạn. Tiếng bell rất dễ bị bỏ lỡ khi bạn không đeo tai nghe hoặc IDE đang chạy nền, nên đa số mọi người chuyển sang cách 2.

03Cách 2: một Notification hook

Hook chạy một lệnh do bạn chọn và hoạt động trong mọi IDE, cả trong terminal lẫn panel chat của VS Code. Hook dưới đây hiển thị thông báo desktop trên macOS:

{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"
          }
        ]
      }
    ]
  }
}

Trên Linux hãy dùng notify-send 'Claude Code' 'Claude Code needs your attention', còn trên Windows thì dùng một lệnh PowerShell; hướng dẫn cho Linux và hướng dẫn cho Windows có các phiên bản đã được kiểm thử. Nếu osascript không hiện gì trên macOS, hãy mở System Settings > Notifications và cho phép thông báo từ Script Editor, vì đó là app gửi thông báo của osascript.

Trong extension VS Code, bạn có thể xem lại các hook mà không cần mở file: mở mục Customize và chọn Hooks để xem các hook đã được nạp trong phiên, nhóm theo event (Claude Code v2.1.269 trở lên).

Nếu muốn được báo ngay khi Claude làm xong, chứ không phải khi nó đang chờ, hãy thêm cả hook Stop. Hướng dẫn nhận thông báo khi Claude làm xong có ví dụ kết hợp cả hai.

Thời điểm kích hoạt khác nhau trong extension VS Code

Trong terminal, thông báo permission_prompt sẽ chờ đến khi prompt không có phím nào được gõ trong khoảng sáu giây, và mỗi lần bạn gõ phím là nó bị lùi lại. Trong extension VS Code (và Claude Desktop), tài liệu của Anthropic cho biết thông báo kích hoạt khoảng sáu giây sau khi Claude hỏi, không bị lùi lại khi bạn gõ, và sẽ không kích hoạt nếu bạn trả lời sớm hơn. Nếu thấy phiền khi đang làm việc trong panel, hãy đặt biến môi trường CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS=1 để tắt nó ở đó. Hướng dẫn về Notification hook liệt kê mọi loại thông báo và thời điểm chúng kích hoạt.

04Cửa sổ remote: SSH, WSL, dev container và JetBrains Remote Development

Đây là chỗ thông báo trong IDE hay gặp trục trặc nhất. Khi cửa sổ VS Code hoặc Cursor kết nối tới một SSH host, WSL hay dev container, Claude Code sẽ chạy trên hệ thống đó và đọc ~/.claude/settings.json ở đó, chứ không phải trên laptop của bạn. Hook của bạn cũng chạy ở đó. Khi ấy các lệnh desktop như osascript hay notify-send không có desktop nào để hiển thị và thất bại mà không báo lỗi.

JetBrains Remote Development cũng tương tự: plugin Claude Code phải được cài trên remote host, và Claude Code chạy ở đó.

Thay vào đó, có thể dùng:

  • WSL trên Windows: hook có thể gọi powershell.exe qua cơ chế interop của Windows, miễn là nó nằm trong PATH bên trong WSL.
  • SSH host và container: gửi cảnh báo qua mạng tới một dịch vụ có thể báo cho bạn, chẳng hạn ntfy hoặc webhook Telegram, Slack hay Discord. Hướng dẫn SSH trình bày các lựa chọn.

05Dùng terminal bên ngoài với /ide

Nếu muốn có thông báo desktop tích hợp sẵn, hãy chạy Claude Code trong iTerm2, Ghostty hoặc Kitty rồi kết nối nó với IDE bằng lệnh /ide. Bạn vẫn xem diff và chia sẻ vùng chọn qua IDE được, còn cảnh báo sẽ đến từ terminal bên ngoài. Với iTerm2, bạn cần bật cài đặt alert của nó trước, như mô tả trong hướng dẫn terminal bell.

06Một vài điều khác nên biết

  • Shift+Enter: trong VS Code và Cursor, hãy chạy /terminal-setup một lần để Shift+Enter chèn dòng mới. Terminal của JetBrains không hỗ trợ tổ hợp này; hãy dùng Ctrl+J, hoặc gõ \ rồi Enter.
  • Remote Control: bạn có thể khởi động Remote Control của Anthropic từ extension VS Code bằng /remote-control để theo dõi phiên trên app di động Claude. Tính năng này có yêu cầu riêng về gói dịch vụ và đăng nhập; xem bài so sánh.
  • Nhiều cửa sổ: nếu bạn chạy Claude Code trong nhiều cửa sổ IDE, hãy đưa tên thư mục dự án vào cảnh báo để biết cửa sổ nào đang cần bạn. Input của hook có chứa cwd. Xem chạy nhiều phiên.

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

Một hook Notification dùng công cụ thông báo của hệ điều hành là giải pháp tốt và miễn phí nếu bạn đang ngồi trước IDE. Nhưng nó không giúp gì khi bạn rời màn hình, và cũng không cho phép bạn trả lời.

ccn của Claude Code Notifier cũng là một hook, nên nó hoạt động trong terminal của IDE giống như mọi terminal khác, trên Mac, Windows và Linux. Khi cài riêng, nó hiển thị thông báo desktop lúc 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 một lần, cho phép trong cả phiên hoặc từ chối yêu cầu cấp quyền, chọn câu trả lời cho câu hỏi của Claude, và gửi chỉ dẫn tiếp theo ngay từ điện thoại. Nếu bạn vừa gõ phím trong 30 giây gần nhất, terminal sẽ hỏi như bình thường và không có gì phải chờ trên điện thoại. Push đến điện thoại đi qua relay chứ không qua desktop cục bộ, nên nếu bạn cài ccn trên máy remote mà cửa sổ IDE đang kết nối, điện thoại vẫn nhận được thông báo. Claude Code Notifier là sản phẩm độc lập, không do Anthropic phát triển. Xem trang ccn và cách ghép nối điện thoại.

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

Vì sao Claude Code không gửi thông báo cho tôi trong VS Code?

Terminal tích hợp của VS Code không nhận được thông báo desktop tích hợp sẵn của Claude Code. Hãy đặt "preferredNotifChannel": "terminal_bell" hoặc thêm một hook Notification vào ~/.claude/settings.json, rồi bắt đầu một phiên mới.

Hook có hoạt động trong extension Claude Code cho VS Code không?

Có. Claude Code kích hoạt cùng các hook event trong extension IDE như trong terminal, và extension với CLI dùng chung ~/.claude/settings.json. Mục Customize của extension cho phép xem và chỉnh sửa các hook.

Cách này có dùng được trong Cursor không?

Có. Cursor cài được cùng extension Claude Code, và claude chạy trong terminal tích hợp của nó giống như trong VS Code. Mọi điều ở trên đều áp dụng.

Hook của tôi chạy được trên máy local nhưng không chạy trong cửa sổ Remote SSH. Tại sao?

Trong cửa sổ remote, Claude Code và các hook của nó chạy trên máy remote, vốn không có desktop. Hãy sửa ~/.claude/settings.json trên máy đó và dùng push qua mạng như ntfy thay cho lệnh thông báo desktop.

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 tích hợp sẵn của Claude Code: terminal bell và preferredNotifChannelCách hoạt động của cảnh báo tích hợp sẵn trong Claude Code, ý nghĩa từng giá trị preferredNotifChannel, và cách thiết lập cho iTerm2, Apple Terminal, Kitty, Ghostty và tmux.
  • Cách nhận thông báo khi Claude Code chạy xongDùng Stop hook cho trạng thái "đã xong" và Notification hook cho "cần bạn nhập". Cấu hình copy-paste cho Mac, Windows và Linux, kèm cảnh báo trên điện thoại.
  • 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.
  • Thông báo từ Claude Code trên server từ xa qua SSHChạy Claude Code trên VPS hoặc server từ xa qua SSH mà vẫn nhận được thông báo: dùng terminal escape sequence truyền qua SSH, hoặc push lên điện thoại bằng ccn.
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.