ralph-loop plugin: Windows compatibility issue - stop-hook.sh cannot execute

Resolved 💬 9 comments Opened Jan 10, 2026 by bkerf Closed Feb 28, 2026

Bug Description

The ralph-loop plugin fails on Windows because its stop hook is a bash script (.sh) that cannot execute natively on Windows.

Environment

  • OS: Windows 10/11
  • Claude Code Version: Latest
  • Plugin: ralph-loop@claude-plugins-official

Problem

When a Claude Code session ends, the plugin's Stop hook is triggered automatically:

File: plugins/cache/claude-plugins-official/ralph-loop/.../hooks/hooks.json

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "${CLAUDE_PLUGIN_ROOT}/hooks/stop-hook.sh"
          }
        ]
      }
    ]
  }
}

Since stop-hook.sh is a bash script, it cannot run on Windows without Git Bash, WSL, or similar tools installed. This causes errors or unexpected behavior when the session ends.

Expected Behavior

Official plugins should support cross-platform execution by:

  1. Providing both .sh (Unix) and .ps1/.bat (Windows) versions of hooks
  2. Or using a cross-platform scripting solution (e.g., Node.js scripts)

Suggested Fix

Add Windows-compatible hook scripts alongside the existing bash scripts:

  • stop-hook.sh → for macOS/Linux
  • stop-hook.ps1 or stop-hook.bat → for Windows

The hooks.json should conditionally use the appropriate script based on the platform.

Workaround

Users can disable the plugin in settings.json:

"ralph-loop@claude-plugins-official": false

Additional Context

This affects all Windows users who enable the ralph-loop plugin. The plugin is listed as an official Anthropic plugin, so cross-platform support should be expected.

View original on GitHub ↗

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