Fix: SessionStart hook missing better-sqlite3 in plugin cache (#172)
Hooks run as separate processes from the MCP server and didn't have access to lazy-installed node_modules/. Session DB initialization failed silently on every session start.
Fix
New hooks/ensure-deps.mjs — shared bootstrap module (same pattern as suppress-stderr.mjs). Single source of truth for native dep installation, used by both start.mjs and all 13 session hooks across 5 platforms.
- Fast path:
existsSynccheck (~0.1ms per hook call) - Slow path:
npm install(first run only, ~5-30s)
Platforms covered: Claude Code, Gemini CLI, VS Code Copilot, Cursor, Kiro