-
-
Notifications
You must be signed in to change notification settings - Fork 54.9k
Description
Summary
Problem Description
The nextcloud-talk extension fails when using the built version because it imports waitForAbortSignal from a relative path that doesn't exist in the compiled output:
Steps to reproduce
Enable nextcloud - talk plugin in openclaw.json config.
Expected behavior
Expected no errors on gateway start and the nextcloud talk plugin to function.
Actual behavior
Root Cause
abort-signal.ts is not listed as an entry point in tsdown.config.ts
waitForAbortSignal is not exported from openclaw/plugin-sdk (the public plugin API)
The nextcloud-talk extension uses a relative path that breaks when the extension is built or distributed as an npm package
| import { waitForAbortSignal } from "../../../src/infra/abort-signal.js"; |
Suggested Fix
Export waitForAbortSignal from the plugin SDK in src/plugin-sdk/index.ts:
export { waitForAbortSignal } from "../infra/abort-signal.js";
import { waitForAbortSignal } from "openclaw/plugin-sdk";
Additional Context
This same pattern is used by other webhook-based channels like LINE and Telegram in core code
No other extensions currently import from the relative ../../../src/infra/ path, making this unique
OpenClaw version
2026.2.26
Operating system
Ubuntu Jammy
Install method
install script.
Logs, screenshots, and evidence
20:23:40 [plugins] nextcloud-talk failed to load from /home/claw/.npm-global/lib/node_modules/openclaw/extensions/nextcloud-talk/index.ts: Error: Cannot find module '/home/claw/.npm-global/lib/node_modules/openclaw/dist/plugin-sdk/index.js/infra/abort-signal'
Require stack:
- /home/claw/.npm-global/lib/node_modules/openclaw/extensions/nextcloud-talk/src/channel.tsImpact and severity
Unusable for anyone using Nextcloud Talk
Additional information
No response