openclaw - 💡(How to fix) Fix Windows: plugin skill publish fails with EPERM symlink; use junction fallback [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#78468Fetched 2026-05-07 03:36:35
View on GitHub
Comments
1
Participants
2
Timeline
1
Reactions
2
Author
Timeline (top)
commented ×1

On Windows, OpenClaw repeatedly fails to publish plugin skills because directory symlink creation uses fs.symlinkSync(..., dir), which requires elevated symlink permissions in many setups. This produces continuous EPERM warnings and contributes to noisy startup/runtime behavior.

Error Message

  • Repeated warnings like:
    • [skills] failed to create plugin skill symlink ... Error: EPERM: operation not permitted, symlink ...
  • Seen for bundled and installed plugins (e.g. browser-automation, tavily, acp-router).
  • In the same run, event loop liveness/polling diagnostics become noisy (event_loop_delay, polling stall detected).

Root Cause

Summary

On Windows, OpenClaw repeatedly fails to publish plugin skills because directory symlink creation uses fs.symlinkSync(..., dir), which requires elevated symlink permissions in many setups. This produces continuous EPERM warnings and contributes to noisy startup/runtime behavior.

RAW_BUFFERClick to expand / collapse

Summary

On Windows, OpenClaw repeatedly fails to publish plugin skills because directory symlink creation uses fs.symlinkSync(..., dir), which requires elevated symlink permissions in many setups. This produces continuous EPERM warnings and contributes to noisy startup/runtime behavior.

Observed behavior

  • Repeated warnings like:
    • [skills] failed to create plugin skill symlink ... Error: EPERM: operation not permitted, symlink ...
  • Seen for bundled and installed plugins (e.g. browser-automation, tavily, acp-router).
  • In the same run, event loop liveness/polling diagnostics become noisy (event_loop_delay, polling stall detected).

Expected behavior

Plugin skill publishing should work on standard Windows setups without requiring admin symlink privileges, or degrade gracefully with minimal log spam.

Root-cause analysis

  • Current publish path uses:
    • src/agents/skills/plugin-skills.ts
    • fs.symlinkSync(target, linkPath, dir)
  • On Windows, directory symlink type dir often fails with EPERM unless Developer Mode/admin privilege is enabled.
  • Other tests/code paths in repo already account for Windows directory links via process.platform === win32 ? junction : dir, suggesting a mismatch in handling strategy.

Proposed fix

  1. In src/agents/skills/plugin-skills.ts, use platform-aware type:
    • process.platform === win32 ? junction : dir
  2. Add/adjust tests in src/agents/skills/plugin-skills.test.ts to assert Windows-compatible behavior.
  3. Optionally reduce repeated warning spam if publish fails persistently (rate-limit or once-per-target during a run).

Reproduction (Windows)

  1. Run OpenClaw on Windows in a non-elevated terminal (without Developer Mode symlink privilege).
  2. Ensure at least one plugin skill dir is active (bundled plugins are enough).
  3. Start gateway and observe repeated [skills] failed to create plugin skill symlink ... EPERM warnings.

Notes

There are concurrent Telegram network timeouts in the same logs, but this issue focuses only on the deterministic Windows skill-link publishing failure.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Plugin skill publishing should work on standard Windows setups without requiring admin symlink privileges, or degrade gracefully with minimal log spam.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING