fix: add install block with defaultChoice 'local' for acpx plugin#32971
fix: add install block with defaultChoice 'local' for acpx plugin#32971antek-eth wants to merge 2 commits intoopenclaw:mainfrom
Conversation
The @openclaw/acpx scoped package is not published to npm, causing `openclaw update` to fail with E404 when attempting to download it. This adds an `openclaw.install` block (matching the pattern used by googlechat, mattermost, line, and tlon plugins) with `defaultChoice: "local"` so the bundled extension is used instead of attempting an npm registry fetch. Fixes openclaw#32967
Greptile SummaryThis PR adds a missing The One minor observation: unlike Confidence Score: 5/5
Last reviewed commit: 08970eb |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 08970eb2cf
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ], | ||
| "install": { | ||
| "npmSpec": "@openclaw/acpx", | ||
| "localPath": "extensions/acpx", |
There was a problem hiding this comment.
Preserve derived bundled path instead of fixed localPath
Using a fixed localPath here overrides the catalog’s dynamic fallback (path.relative(workspaceDir, packageDir)) and can make local ACPX installs undiscoverable when the agent workspace is not the OpenClaw package root. In onboarding, resolveLocalPath() only checks process.cwd() and workspaceDir, so extensions/acpx often resolves to a non-existent path in global installs or custom workspaces; that removes the intended local install path and pushes users back to npm for this plugin.
Useful? React with 👍 / 👎.
Summary
openclaw.installblock toextensions/acpx/package.jsonwithdefaultChoice: "local"openclaw updatefrom attempting to download@openclaw/acpxfrom npm, where the scoped package does not exist (only the unscopedacpxis published)Problem
openclaw updatefails with:The unscoped
acpxpackage (v0.1.15) exists on npm, but the scoped@openclaw/acpxdoes not. The acpx extension'spackage.jsonwas missing theopenclaw.installblock, soresolveInstallInfo()had nolocalPathto fall back on, defaulting to"npm".Fix
"openclaw": { "extensions": [ "./index.ts" - ] + ], + "install": { + "npmSpec": "@openclaw/acpx", + "localPath": "extensions/acpx", + "defaultChoice": "local" + } }Test plan
openclaw update— acpx plugin should no longer produce E404openclaw plugins list— acpx should show as available from bundled pathopenclaw doctor— no acpx-related warningsFixes #32967