Plugin update loses executable permission on .sh hook files
Status Fixed / completed
Maintainer reply None cached
Workaround ✓ Mentioned in description ↑
Activity 4 comments · opened Mar 28, 2026 · closed Apr 18, 2026
claude plugin update downloads plugin files without preserving the executable bit on .sh files. This causes hook execution to fail with:
Stop hook error: Failed with non-blocking status code: /bin/sh: 1:
/home/user/.claude/plugins/marketplaces/.../hooks/stop-hook.sh: Permission denied
Reproduction
- Install a plugin with
.shhook files (e.g.ralph-loopfromclaude-plugins-official) chmod +xthe hook files manually so hooks work- Run
claude plugin update claude-plugins-official@anthropic - Hook files lose
+x→ hooks fail with "Permission denied"
Expected behavior
claude plugin update should either preserve executable permissions on .sh files during download, or automatically chmod +x all .sh files after update.
Workaround
find ~/.claude/plugins/marketplaces -name "*.sh" -exec chmod +x {} \;
Needs to be re-run after every plugin update.
Environment
- Platform: Linux
- Affects all
.shfiles across all marketplace plugins
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗