# Troubleshooting PM Skills Plugin Installation Issues on Windows: A Complete Guide

> Fix PM Skills plugin installation failures on Windows. Learn how to resolve the Claude Cowork VM service not running issue with a simple PowerShell script for automatic restarts.

- Repository: [Pawel Huryn/pm-skills](https://github.com/phuryn/pm-skills)
- Tags: how-to-guide
- Published: 2026-07-05

---

**The most common cause of PM Skills plugin failures on Windows is the Claude Cowork VM service not running, which can be fixed by deploying a PowerShell scheduled task that automatically restarts the `CoworkVMService` every minute.**

Troubleshooting PM Skills plugin installation issues on Windows requires understanding how the **Claude Cowork VM** interacts with the plugin marketplace. The `phuryn/pm-skills` repository provides a collection of AI-driven product management plugins, but Windows users frequently encounter service startup failures that prevent slash commands from loading. This guide walks through the architecture, common failure points, and the specific PowerShell automation that resolves approximately 90% of Windows-related installation problems.

## Understanding the Installation Architecture

The PM Skills plugin system follows a four-stage initialization process. Each stage depends on the previous one, with the VM layer being the most frequent point of failure on Windows systems.

### Step 1: Marketplace Registration

Claude Code first reads the marketplace configuration from [`pm-skills/marketplace.json`](https://github.com/phuryn/pm-skills/blob/main/pm-skills/marketplace.json) in the repository root. This file maps available plugins to their source locations and tells Claude which skills belong to the PM Skills ecosystem.

### Step 2: Plugin Installation

Each plugin resides in its own directory (e.g., `pm-toolkit/`, `pm-product-strategy/`). During installation, Claude pulls the plugin's [`manifest.json`](https://github.com/phuryn/pm-skills/blob/main/manifest.json) and registers the associated slash commands and skills. You can install via the CLI using `claude plugin install pm-toolkit@pm-skills` or through the Claude Cowork UI.

### Step 3: VM Initialization

The critical step for Windows users involves the **CoworkVMService**. This lightweight virtual machine runs the plugin code in an isolated environment. If `CoworkVMService` fails to start or crashes, all PM Skills commands become unavailable even though the plugins appear installed.

### Step 4: Command Execution

Once the VM is healthy, slash commands like `/review-resume` route requests to the VM, which loads the relevant skill files (`*.md`) and returns structured responses.

## Common Windows-Specific Installation Failures

Windows environments present unique challenges for the Claude Cowork VM. Below are the three most frequent symptoms and their root causes:

- **"Plugin not found" errors after UI installation**: The `CoworkVMService` is stopped or paused. The plugins are installed, but the VM cannot load them.
- **VM crashes on startup**: Corrupt VM state or stale cache files in the `~/.claude/cowork` directory prevent the service from initializing.
- **CLI commands return "plugin not installed"**: The marketplace was added via `claude plugin marketplace add phuryn/pm-skills`, but individual plugin installation (`claude plugin install ...`) was skipped for specific tools.

## Step-by-Step Windows Fix

The repository includes a PowerShell-based monitor that resolves the majority of Windows service failures. Follow these steps to deploy the fix and verify your installation.

### Deploying the Automated Monitor

Open PowerShell with Administrator rights and execute the following script to create a scheduled task that checks the `CoworkVMService` every 60 seconds:

```powershell
$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-WindowStyle Hidden -Command `"if ((Get-Service CoworkVMService).Status -ne 'Running') { Start-Service CoworkVMService }`""
$trigger = New-ScheduledTaskTrigger -RepetitionInterval (New-TimeSpan -Minutes 1) -Once -At (Get-Date)
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
Register-ScheduledTask -TaskName "CoworkVMServiceMonitor" `
  -Action $action `
  -Trigger $trigger `
  -Settings $settings `
  -RunLevel Highest `
  -User "SYSTEM"

```

This automation, referenced in the repository's [`README.md`](https://github.com/phuryn/pm-skills/blob/main/README.md), ensures the VM service recovers automatically from crashes or shutdowns without manual intervention.

### Verifying Service Status

Confirm the service is running by executing:

```powershell
Get-Service CoworkVMService

```

The `Status` field should display `Running`. If it shows `Stopped` or `Paused`, the monitor script will restart it within one minute, or you can start it manually via `services.msc` by locating the **Claude** service and clicking **Start**.

### Manual Recovery Options

If the service fails to start repeatedly:

1. Stop Claude Code completely.
2. Delete the VM state directory at `~/.claude/cowork` to clear corrupt images.
3. Re-add the marketplace: `claude plugin marketplace add phuryn/pm-skills`.
4. Reinstall your specific plugins.

## Reinstalling Plugins After Recovery

Once the VM service is stable, reinstall the PM Skills plugins to ensure proper registration:

```bash
claude plugin marketplace add phuryn/pm-skills
claude plugin install pm-toolkit@pm-skills
claude plugin install pm-product-strategy@pm-skills

```

After installation, verify functionality by running `/review-resume` in the Claude UI or asking Claude to describe what the `review-resume` skill does.

## Summary

- **The root cause** of most Windows installation issues is the `CoworkVMService` failing to start or crashing.
- **The solution** involves deploying the PowerShell scheduled task from the `phuryn/pm-skills` README to monitor and restart the service automatically.
- **Key files** to reference include [`README.md`](https://github.com/phuryn/pm-skills/blob/main/README.md) for installation instructions and individual plugin directories like [`pm-toolkit/README.md`](https://github.com/phuryn/pm-skills/blob/main/pm-toolkit/README.md) for skill-specific documentation.
- **Verification** requires checking service status with `Get-Service CoworkVMService` and reinstalling plugins via the CLI or UI.

## Frequently Asked Questions

### Why do PM Skills plugins work on macOS but fail on Windows?

The Claude Cowork VM uses different service management mechanisms across operating systems. On Windows, the `CoworkVMService` requires explicit Windows Service configuration and is more prone to permission issues or startup conflicts with antivirus software, whereas macOS handles the VM lifecycle more transparently.

### How do I know if the VM is running correctly?

Run the PowerShell command `Get-Service CoworkVMService` and check that the `Status` property returns `Running`. Additionally, if slash commands like `/review-resume` appear in the command palette and execute without "VM not available" errors, the service is healthy.

### Can I run the PM Skills plugins without the Claude Cowork VM?

No. According to the architecture in `phuryn/pm-skills`, all skills execute inside the `CoworkVMService` environment. The VM loads the skill files (`*.md`) and processes the AI-driven logic. Without the VM, the plugins cannot function regardless of whether they are installed.

### What should I do if the PowerShell monitor doesn't fix the issue?

If the scheduled task fails to keep the service running, manually delete the `~/.claude/cowork` directory to remove potentially corrupt VM images, then restart Claude Code. If problems persist, check the [`CLAUDE.md`](https://github.com/phuryn/pm-skills/blob/main/CLAUDE.md) file in the repository for agent-specific troubleshooting guidance or reinstall the marketplace from scratch using the CLI commands.