[FEATURE] VS Code Extension should support PermissionRequest hooks
Resolved 💬 3 comments Opened Jan 4, 2026 by bachner Closed Jan 8, 2026
Problem
The VS Code extension does not trigger PermissionRequest hooks, while the CLI correctly processes them. This prevents users from implementing custom permission workflows (like TTS notifications for approval requests) when using the VS Code extension.
Current Behavior
- CLI:
PermissionRequesthooks in~/.claude/settings.jsonare correctly triggered and the hook script receives JSON input via stdin - VS Code Extension: The same hooks are silently ignored - no hook execution occurs
Expected Behavior
The VS Code extension should trigger PermissionRequest hooks identically to the CLI, allowing users to:
- Get audio/TTS notifications when approval is needed
- Implement custom logging of permission requests
- Build accessibility tools around permission prompts
Reproduction Steps
- Configure a PermissionRequest hook in
~/.claude/settings.json:
{
"hooks": {
"PermissionRequest": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "$HOME/bin/my-hook.sh"
}
]
}
]
}
}
- Create a simple hook that logs to a file:
#!/bin/bash
echo "$(date): $(cat)" >> /tmp/claude-hook-debug.log
exit 0
- Run a command requiring permission in CLI → Hook fires, log file updated
- Run same command in VS Code extension → Hook does NOT fire, no log entry
Environment
- VS Code Extension
- macOS (also reported on Windows/WSL in related issues)
- Hook works perfectly in CLI
Related Issues
- #15772 - VSCode Extension Ignores All Permission Settings
- #13339 - VS Code Extension Ignores Hook
permissionDecision: "ask" - #12176 - PermissionRequest Hook Race Condition
- #11891 - Missing PermissionRequest hook documentation
Use Case
I have a TTS (text-to-speech) hook that announces permission requests audibly, which is helpful when Claude is working in the background. This works great in the CLI but is completely non-functional in VS Code.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗