PostToolUse hooks never fire in VSCode extension (Windows 11, v2.1.49)
Resolved 💬 4 comments Opened Feb 19, 2026 by TanakaSeiji Closed Mar 20, 2026
Summary
PostToolUse hooks configured in settings.local.json never fire when using the VSCode extension on Windows 11.
The same configuration works correctly in the terminal CLI.
Related to #26962 (macOS + CLI), but this is a separate VSCode-extension-specific issue on Windows.
Environment
- Claude Code version: 2.1.49
- OS: Windows 11 Home 10.0.26200
- Shell: bash (MINGW64 / Git Bash)
- Interface: VSCode Extension (not CLI)
Configuration (settings.local.json)
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write|Bash",
"hooks": [
{
"type": "command",
"command": "bash ./scripts/timeline_buffer_append.sh",
"timeout": 10
}
]
}
]
}
}
Reproduction Steps
- Add PostToolUse hook to
settings.local.json(project-level) - Open Claude Code in VSCode extension on Windows 11
- Ask Claude to edit or create a file (triggers Edit/Write/Bash tools)
- Observe: hook command never executes (output file remains empty)
Expected Behavior
bash ./scripts/timeline_buffer_append.sh executes after each Edit/Write/Bash tool call.
Actual Behavior
Hook never fires. Confirmed via: hook writes to .claude/timeline_buffer.jsonl, but the file remains empty throughout the VSCode extension session.
Contrast: CLI works correctly
Running the same Claude Code session via terminal CLI (MINGW64 bash):
- PostToolUse hook fires correctly on Edit, Write, and Bash tool calls
.claude/timeline_buffer.jsonlgets populated as expected
Hooks that DO work in VSCode extension
SessionStart(startup matcher) ✅PreToolUse(Edit|Write matcher) ✅PostToolUse❌ (never fires)
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗