SessionStart hooks run before plugins are fully loaded, causing startup hook error

Resolved 💬 3 comments Opened Jan 20, 2026 by cmg0g0 Closed Jan 24, 2026

Description

SessionStart hooks are checked and executed before plugins with those hooks are fully loaded, resulting in a "startup hook error" message at session start.

Steps to Reproduce

  1. Install the superpowers@claude-plugins-official plugin (which has a SessionStart hook)
  2. Start a new Claude Code session
  3. Observe "SessionStart:startup hook error" message

Expected Behavior

SessionStart hooks should execute successfully when plugins defining them are enabled.

Actual Behavior

The SessionStart hook check runs before plugins are loaded:

11:36:38 [DEBUG] Registered 0 hooks from 3 plugins
11:36:41 [DEBUG] Matched 0 unique hooks for query "startup" (0 before deduplication)
...
11:37:22 [DEBUG] Loaded hooks from superpowers plugin  <- ~40 seconds AFTER startup check

Environment

  • Claude Code version: 2.1.12
  • OS: Windows 11
  • Plugins with SessionStart hooks: superpowers@claude-plugins-official

Suggested Fix

Ensure all enabled plugins are fully loaded (including their hooks) before executing SessionStart hook checks.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗