[BUG] Notification hook does not fire in VSCode extension
Resolved 💬 30 comments Opened Nov 7, 2025 by yoshiki0630 Closed Feb 6, 2026
💡 Likely answer: A maintainer (blois, collaborator)
responded on this thread — see the highlighted reply below.
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The Notification hook does not fire in the VSCode extension version of Claude Code.
Actual Behavior
- Permission dialog is displayed as expected
- However, the Notification hook does not fire
- No log file is created by the hook command
- PreToolUse and Stop hooks work correctly
What Should Happen?
Expected Behavior
According to the documentation (https://code.claude.com/docs/ja/hooks#notification), the Notification hook should fire in the following cases:
- When Claude Code requests permission to use a tool
- When the prompt input has been idle for at least 60 seconds
Error Messages/Logs
None
Steps to Reproduce
Steps to Reproduce
- Configure a Notification hook in settings.json with a command that logs to a file
- Reload VSCode window
- Configure permissions.ask to require confirmation for specific tools (e.g., Bash)
- Execute a tool that triggers the permission dialog
Claude Model
Sonnet (default)
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.35 (Claude Code)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
Windows Terminal
Additional Information
- When the permission dialog was displayed, the Notification hook did not execute
- The log file specified in the command was never created
- Other hooks (PreToolUse, Stop) work as expected
- Workaround: Using PreToolUse hook with matcher "Write|Edit|Bash|NotebookEdit" to achieve similar functionality
- Unclear if this issue exists in the CLI version
- This may be specific to the VSCode extension
30 Comments
I'm in the same situation and struggling as well. I'll include some information.
MacOS
VSCode Version: 1.105.0
Claude Code Extention Version: 2.0.35
settings.json
Logs
For privacy, the commands have been removed, but in reality the command contents are written.
<img width="1573" height="412" alt="Image" src="https://github.com/user-attachments/assets/a1dd12c9-774f-4cbb-b37f-232356aeb1f1" />
In my case, it seems to have been resolved by updating VSCode to 1.105.1 and restarting.
I’d like to monitor it a bit longer.
Confirming this on Win11 as well.
The Claude CLI does trigger the Notification hook, but the Claude Code extension does not.
OS Name Microsoft Windows 11 Pro
Version 10.0.26100 Build 26100
VSCode Version: 1.105.0
Claude Code Extension Version: 2.0.35
Unfortunately updating to VSCode 1.105.1 and restarting ( VSCode, and the system ) did not resolve the problem.
Thank you all for reporting this issue.
I also tested it with VSCode 1.105.1 in my environment, but the Notification hook did not work.
It also doesn't work for me. Please, someone fix this.
i was very sad to learn about this bug. losing a lot of efficiency by having to watch Claude in case it asks me for something OR have it sit idle for some time because I'm doing something else and didn't notice
me too!!!
This is affecting me as well
It would be great if this were fixed; it would also be great if there were an option to allow the VSCode extension to use VSCode's native notifications for Claude Code notifications.
I have an alternative solution : Is Use Terminal !
Open Claude Code -> click 。。。 -> Configure Editor -> input:Use Terminal -> choose:Use Terminal<img width="665" height="287" alt="Image" src="https://github.com/user-attachments/assets/712291ce-c595-4941-9754-6a549cb71390" />
<img width="615" height="508" alt="Image" src="https://github.com/user-attachments/assets/6ad0a113-71e6-4b3a-ac5d-6feda55a6f98" />
<img width="1438" height="532" alt="Image" src="https://github.com/user-attachments/assets/36fe17cc-28c5-47a8-97ff-ecf68dddd894" />
<img width="1524" height="886" alt="Image" src="https://github.com/user-attachments/assets/2a001b90-8456-4a29-979f-c543b22d6d0f" />
@cookiejoo This is not a solution. It's a workaround and a poor one.
The VS Code extension can do things the terminal doesn't, that's why we use it.
I know, bro! It's just that when you need a hook to solve some indispensable problems, it's a choice you have to make. Hope the official will respond!
Not working for me, please fix this ASAP
This is an important issue affect user productivity. Can this be prioritized?
need this looked at as soon as possible please
I found today that this issue has been resolved. Please help verify it and also report back if it's still not fixed.
for me only AskUserQuestion would trigger the notification hook, any other permission asking to run Bash or read file would not trigger notification still
@cookiejoo I'm seeing the same behavior.
It doesn't seem to work in my environment either.
same here. 10 weeks old, no one cares?
I'm experiencing the same issue. I analyzed the VSCode extension source code and found the root cause.
Environment
| Item | Value |
|------|-------|
| Host OS | Ubuntu Server (Linux 6.5.0-45-generic) |
| Claude Code CLI | 2.1.19 |
| Claude Code VSCode Extension | 2.1.19 |
| VSCode | 1.108.2 |
| Connection Method | VSCode Remote SSH from Mac/Windows |
Setup Details
Hook Behavior in My Environment
I have configured hooks for all available events:
| Hook | Terminal CLI | VSCode Extension |
|------|--------------|------------------|
| PreToolUse | Works | Works |
| PostToolUse | Works | Works |
| UserPromptSubmit | Works | Works |
| Stop | Works | Works |
| SubagentStop | Works | Works |
| SessionStart | Works | Works |
| SessionEnd | Works | Works |
| PreCompact | Works | Works |
| Notification | Works | Does NOT fire |
| PermissionRequest | Works | Does NOT fire |
---
Root Cause
Missing Subtype Handlers in
processControlRequest()The
processControlRequest()method only handles 3 subtypes:Subtype Support Matrix
| Subtype | Handler Method | Status |
|---------|---------------|--------|
|
can_use_tool| canUseTool() | Implemented ||
hook_callback| handleHookCallbacks() | Implemented ||
mcp_message| MCP handler | Implemented ||
Notification| - | Not implemented ||
PermissionRequest| - | Not implemented |Why PreToolUse/PostToolUse Work
These hooks are sent as
hook_callbacksubtype and processed byhandleHookCallbacks():Why Notification/PermissionRequest Don't Work
These are sent as separate subtypes (
Notification,PermissionRequest) but there's no handler for them inprocessControlRequest(). They fall through to the finalthrow Error()statement.Processing Flow Comparison
Regarding Recent Reports
@easonfg reported on 1/17 that "only AskUserQuestion triggers the notification hook". This suggests AskUserQuestion may use a different code path. Further investigation may be needed to understand this partial behavior.
---
Suggested Fix
Adding handlers for
NotificationandPermissionRequestsubtypes inprocessControlRequest()should resolve this issue:Analyzed File
~/.vscode-server/extensions/anthropic.claude-code-2.1.19-linux-x64/extension.jsPlease fix this ASAP. Still not fixed on Claude Code VSCode Extension 2.1.22, VSCode 1.108.2
Same issue here, it's been a while...
Has this been fixed?
PermissionRequest hooks are now supported in the IDE:
Thanks @blois ! Can confirm it works for me!
Going to close this issue out- PermissionRequest notifications should be working and right now we do not have plans to support the Notification hook from the IDE- the semantics of this hook are fairly tied to the TUI.
@blois It's still not firing. My notification script hasn't fired when I got this. It's the Permission hook that's not working.
<img width="2074" height="422" alt="Image" src="https://github.com/user-attachments/assets/05f25a10-3661-4cd5-9cae-d9ea7879bfd9" />
@ivanjuras an additional fix should be arriving shortly.
Hi, thanks for your actions. Is it planned to have native windows notification via VSCode extension when Opus needs our input or has finished working ?
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.