Skip to content

fix(plugins): remove workspace:* from extension dependencies#11454

Closed
AnonO6 wants to merge 2 commits intoopenclaw:mainfrom
AnonO6:fix/remove-workspace-star-from-deps
Closed

fix(plugins): remove workspace:* from extension dependencies#11454
AnonO6 wants to merge 2 commits intoopenclaw:mainfrom
AnonO6:fix/remove-workspace-star-from-deps

Conversation

@AnonO6
Copy link
Copy Markdown
Contributor

@AnonO6 AnonO6 commented Feb 7, 2026

Summary

Fixes #10941, Fixes #11245

Four extensions had "openclaw": "workspace:*" in dependencies (not just devDependencies). When plugins are installed outside the pnpm workspace (e.g., openclaw plugins install ./extensions/feishu), npm cannot resolve the workspace: protocol and fails with EUNSUPPORTEDPROTOCOL.

lobster-biscuit

Repro Steps

  1. openclaw plugins install ./extensions/zalo (or nostr, msteams, zalouser)
  2. Plugin is copied to ~/.openclaw/extensions/
  3. npm install --omit=dev runs in the plugin dir
  4. Fails: Error: Unsupported URL Type "workspace:": workspace:*

Root Cause

These 4 extensions had "openclaw": "workspace:*" in dependencies:

  • extensions/zalo/package.json
  • extensions/zalouser/package.json
  • extensions/nostr/package.json
  • extensions/msteams/package.json

The workspace:* protocol is a pnpm workspace feature. When the plugin is copied outside the workspace for installation, npm doesn't understand workspace:* and errors out. Per CLAUDE.md: "Avoid workspace:* in dependencies (npm install breaks); put openclaw in devDependencies or peerDependencies instead (runtime resolves openclaw/plugin-sdk via jiti alias)."

Most other extensions (telegram, discord, slack, matrix, etc.) already follow this pattern correctly — only these 4 had the bug.

Behavior Changes

  • Removed "openclaw": "workspace:*" from dependencies in 4 extensions
  • The devDependencies entry remains (for workspace-local development)
  • Runtime plugin-sdk resolution is unaffected (uses jiti alias)
  • No functional changes to plugin behavior

Codebase and GitHub Search

Tests

  • pnpm build
  • pnpm check
  • No runtime test changes needed (this is a packaging/metadata fix)

Sign-Off

  • AI-assisted: Yes (Cursor + Claude). All changes reviewed and understood.
  • Degree of testing: Build + lint verified; packaging fix (no runtime logic changed)
  • Models used: Claude claude-4.6-opus
  • Submitter effort: Issue triage, codebase-wide search, pattern verification

Made with Cursor

Greptile Overview

Greptile Summary

This PR updates four extension package.json files (msteams, nostr, zalo, zalouser) to remove "openclaw": "workspace:*" from dependencies while keeping it in devDependencies.

This aligns these extensions with the existing plugin packaging pattern in the repo: extensions are installed outside the pnpm workspace (via openclaw plugins install ...) and therefore must not rely on the pnpm-only workspace: protocol at runtime install time. Keeping openclaw only as a dev dependency preserves local workspace development while allowing npm install --omit=dev to succeed when extensions are copied to ~/.openclaw/extensions/.

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk.
  • Changes are limited to removing a pnpm-only workspace:* dependency specifier from runtime dependencies in four extensions; this directly fixes npm install --omit=dev outside the workspace and does not affect runtime code paths. The remaining devDependencies entry preserves local development behavior.
  • No files require special attention

(4/5) You can add custom instructions or style guidelines for the agent here!

Context used:

  • Context from dashboard - CLAUDE.md (source)
  • Context from dashboard - AGENTS.md (source)

…w#10941, openclaw#11245)

Four extensions had "openclaw": "workspace:*" in dependencies (not
just devDependencies). When plugins are installed outside the pnpm
workspace (e.g., via `openclaw plugins install ./extensions/feishu`),
npm cannot resolve the workspace: protocol and fails with
EUNSUPPORTEDPROTOCOL.

Remove openclaw from dependencies in:
- extensions/zalo/package.json
- extensions/zalouser/package.json
- extensions/nostr/package.json
- extensions/msteams/package.json

The openclaw reference remains in devDependencies (for workspace-local
development) and runtime resolution works via the jiti alias, per
CLAUDE.md guidance.

Closes openclaw#10941
Closes openclaw#11245

Co-authored-by: Cursor <cursoragent@cursor.com>
@openclaw-barnacle openclaw-barnacle Bot added channel: msteams Channel integration: msteams channel: nostr Channel integration: nostr channel: zalo Channel integration: zalo channel: zalouser Channel integration: zalouser labels Feb 7, 2026
Co-authored-by: Cursor <cursoragent@cursor.com>
bob10042 pushed a commit to bob10042/openclaw that referenced this pull request Feb 14, 2026
…-plugin

feat: Add frontend-design plugin to marketplace
@openclaw-barnacle
Copy link
Copy Markdown

This pull request has been automatically marked as stale due to inactivity.
Please add updates or it will be closed.

@openclaw-barnacle openclaw-barnacle Bot added the stale Marked as stale due to inactivity label Feb 21, 2026
@openclaw-barnacle openclaw-barnacle Bot removed the stale Marked as stale due to inactivity label Feb 24, 2026
@steipete
Copy link
Copy Markdown
Contributor

Closing as AI-assisted stale-fix triage.

Linked issue #10941 ("[Bug]: Local plugin(飞书 feishu) installation fails due to unhandled workspace: protocol in package.json") is currently CLOSED and was closed on 2026-02-13T03:28:14Z with state reason NOT_PLANNED.
Given that issue state, this fix PR is no longer needed in the active queue and is being closed as stale.

If the underlying bug is still reproducible on current main, please reopen this PR (or open a new focused fix PR) and reference both #10941 and #11454 for fast re-triage.

@steipete
Copy link
Copy Markdown
Contributor

Closed after AI-assisted stale-fix triage (closed issue duplicate/stale fix).

@steipete steipete closed this Feb 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

channel: msteams Channel integration: msteams channel: nostr Channel integration: nostr channel: zalo Channel integration: zalo channel: zalouser Channel integration: zalouser

Projects

None yet

2 participants