fix(hookify): `python3` command not found on Windows - hooks fail to execute

Author: MuminurCreated Dec 31, 2025Updated Sep 15, 2026

Bug Description

The Hookify plugin fails on Windows because the hooks.json file uses python3 as the Python interpreter command. On Windows, Python is invoked using python or py, not python3.

Environment

  • OS: Windows 10/11
  • Python Version: 3.13 (installed via official Python installer)
  • Claude Code Version: Latest
  • Plugin: hookify@claude-plugins-official

Error Message

Plugin hook error: 'python3' is not recognized as an internal or external command,
operable program or batch file.

Steps to Reproduce

  1. Install Claude Code on Windows
  2. Install the hookify plugin: /plugin install hookify@claude-plugins-official
  3. Use any command that triggers a hook (e.g., UserPromptSubmit)
  4. Observe the error about python3 not being recognized

Root Cause

In plugins/hookify/hooks/hooks.json, all hook commands use python3:

json
{
  "command": "python3 ${CLAUDE_PLUGIN_ROOT}/hooks/pretooluse.py",
  ...
}

On Windows:

  • python3 → ❌ Command not found
  • python → ✅ Works
  • py → ✅ Works (Python Launcher)

Proposed Solution

Change all instances of python3 to python in plugins/hookify/hooks/hooks.json:

json
"command": "python ${CLAUDE_PLUGIN_ROOT}/hooks/pretooluse.py"

On modern systems:

  • Windows: python invokes Python 3.x
  • macOS/Linux: Most systems have python symlinked to python3

Affected Files

  • plugins/hookify/hooks/hooks.json (4 occurrences of python3)

Related Issues

  • #82 - Bug: Plugin installation fails on Windows (may be related)
  • #78 - ralph-wiggum stop-hook fails with "cat: command not found" on macOS (similar cross-platform issue)

Source: anthropics/claude-plugins-official