[Bug] Plugin cache unknown/ directory created without executable permissions on hook scripts
Bug Description
Title: SessionStart:startup hook error caused by plugin cache unknown/ directory missing executable permissions
Body:
Description
Every session startup shows SessionStart:startup hook error for plugins that define SessionStart hooks (e.g. explanatory-output-style,
learning-output-style).
Root Cause
Claude Code creates an unknown/ version directory under each plugin's cache at startup alongside the hash-versioned directory. The .sh files
in the unknown/ directory are created without executable permissions (-rw-r--r--), while the hash-versioned directory has correct permissions
(-rwxr-xr-x):
-rwxr-xr-x session-start.sh # b10b583de281/ (works)
-rw-r--r-- session-start.sh # unknown/ (fails)
The hook command ${CLAUDE_PLUGIN_ROOT}/hooks-handlers/session-start.sh is invoked directly (not via bash), so missing +x causes execution
failure.
Steps to Reproduce
- Enable explanatory-output-style@claude-plugins-official (or any plugin with SessionStart hooks)
- Start a new Claude…
Note: Content was truncated.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗