@openclaw/signal 2026.11.1 → 2026.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/.setup/{accounts-BZXLLXyZ.mjs → accounts-B0Pba1-q.mjs} +4 -3
  2. package/dist/.setup/api-CJBtD3lT.mjs +16 -0
  3. package/dist/.setup/{api-COBPAXbQ.mjs → api-CbN3mye4.mjs} +11 -11
  4. package/dist/.setup/{approval-auth-BC9o4yna.mjs → approval-auth-DhUKkSkA.mjs} +7 -5
  5. package/dist/.setup/{approval-handler.runtime-Dzb_QGFk.mjs → approval-handler.runtime-CsEcBZoc.mjs} +7 -6
  6. package/dist/.setup/{approval-reactions-Drpy356L.mjs → approval-reactions-JsqCEOHK.mjs} +9 -7
  7. package/dist/.setup/{channel-Cd52DrmN.mjs → channel-CM-rLLPN.mjs} +166 -36
  8. package/dist/.setup/{client-CRClyTxP.mjs → client-Duwqbgqi.mjs} +12 -6
  9. package/dist/.setup/{client-adapter-CNEkF_Ej.mjs → client-adapter-Chnbch_z.mjs} +3 -2
  10. package/dist/.setup/{config-schema-WrMl4uyV.mjs → config-schema-DvxZ18SD.mjs} +6 -4
  11. package/dist/.setup/{doctor-contract-api-BXWnMqDt.mjs → doctor-contract-api-BIdVW0PF.mjs} +19 -11
  12. package/dist/.setup/{identity-DzXre34N.mjs → identity-B3JyPqGO.mjs} +4 -2
  13. package/dist/.setup/{install-signal-cli-BjCk7EXq.mjs → install-signal-cli-hYVLYGXe.mjs} +2 -1
  14. package/dist/.setup/{legacy-transport-UHhcutJ4.mjs → legacy-transport-QIpaMNST.mjs} +2 -1
  15. package/dist/.setup/{monitor-C1qvr_Kl.mjs → monitor-C6u1JV2C.mjs} +55 -31
  16. package/dist/.setup/{normalize-B_3XS5ez.mjs → normalize-D7kSomXt.mjs} +2 -1
  17. package/dist/.setup/{probe-BYl1haPH.mjs → probe-D_93QCe0.mjs} +5 -4
  18. package/dist/.setup/{reaction-runtime-api-D7bhF81u.mjs → reaction-runtime-api-mdO4k0yv.mjs} +6 -5
  19. package/dist/.setup/{reaction-targets-Bg9NSMJF.mjs → reaction-targets-BgPLDHBf.mjs} +7 -5
  20. package/dist/.setup/{rpc-context-DmtN26AB.mjs → rpc-context-BAXcX7dI.mjs} +2 -1
  21. package/dist/.setup/{runtime-B_1v-nzc.mjs → runtime-8sxUF217.mjs} +2 -1
  22. package/dist/.setup/{send-BZd_WrI_.mjs → send-CM7-016e.mjs} +9 -8
  23. package/dist/.setup/{setup-surface-D5p9z7MO.mjs → setup-surface-DvKLwYrl.mjs} +5 -4
  24. package/dist/.setup/{transport-detection-oXau8_7D.mjs → transport-detection-CmlgOybe.mjs} +5 -4
  25. package/dist/.setup/{transport-policy-BvaaxIjp.mjs → transport-policy-B6C_LogW.mjs} +3 -2
  26. package/dist/.setup/transport-probes.runtime-D-xIMRcn.mjs +2 -0
  27. package/dist/.setup/{transport-url-BptucYNV.mjs → transport-url-CAC0JcuI.mjs} +4 -2
  28. package/dist/api.js +11 -11
  29. package/dist/channel-config-api.js +2 -1
  30. package/dist/channel-entry.js +2 -1
  31. package/dist/channel-plugin-api.js +2 -1
  32. package/dist/contract-api.js +3 -3
  33. package/dist/doctor-contract-api.js +2 -1
  34. package/dist/index.js +2 -1
  35. package/dist/reaction-runtime-api.js +2 -1
  36. package/dist/runtime-api.js +2 -1
  37. package/dist/secret-contract-api.js +2 -1
  38. package/dist/setup-entry.js +3 -2
  39. package/package.json +4 -4
  40. package/dist/.setup/api-Bw9wRi7s.mjs +0 -15
  41. package/dist/.setup/transport-probes.runtime-Ca_Rb1P2.mjs +0 -1
  42. package/dist/.source-module-urls/6644c27f416c8952f1e739724ebf62751ac9fafc7ee3c001a25ab5884899ae60.json +0 -1
@@ -1,10 +1,10 @@
1
- import { a as normalizeSignalTransportUrl, r as buildSignalTransportHttpUrl, s as resolveSignalAccountKey, t as assertSignalSocketTransport } from "./transport-url-BptucYNV.mjs";
2
- import { a as isSignalManagedNativeConnectionUrlForBind, c as resolveLocalSignalTransportPort, i as assignSignalManagedNativePort, o as isValidSignalManagedNativePort, r as allocateSignalManagedNativePort } from "./transport-policy-BvaaxIjp.mjs";
3
- import { n as hasLegacySignalTransportFields, t as LEGACY_SIGNAL_TRANSPORT_FIELDS } from "./legacy-transport-UHhcutJ4.mjs";
1
+ import { a as normalizeSignalTransportUrl, r as buildSignalTransportHttpUrl, s as resolveSignalAccountKey, t as assertSignalSocketTransport } from "./transport-url-CAC0JcuI.mjs";
2
+ import { a as isSignalManagedNativeConnectionUrlForBind, c as resolveLocalSignalTransportPort, i as assignSignalManagedNativePort, o as isValidSignalManagedNativePort, r as allocateSignalManagedNativePort } from "./transport-policy-B6C_LogW.mjs";
3
+ import { n as hasLegacySignalTransportFields, t as LEGACY_SIGNAL_TRANSPORT_FIELDS } from "./legacy-transport-QIpaMNST.mjs";
4
4
  import "node:module";
5
5
  import { isRecord, normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
7
- // \0rolldown/runtime.js
7
+ //#region \0rolldown/runtime.js
8
8
  var __defProp = Object.defineProperty;
9
9
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
10
10
  var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -29,7 +29,8 @@ var __copyProps = (to, from, except, desc) => {
29
29
  return to;
30
30
  };
31
31
  var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
32
- // extensions/signal/src/config-compat.ts
32
+ //#endregion
33
+ //#region extensions/signal/src/config-compat.ts
33
34
  const PENDING_LEGACY_TRANSPORT_WARNING = "- channels.signal: legacy auto transport is ambiguous while its endpoint is unavailable; bring the endpoint online and rerun openclaw doctor --fix, or replace the retired fields with an explicit account-owned transport in openclaw.json.";
34
35
  const PENDING_LEGACY_INVALID_URL_WARNING = "- channels.signal: legacy httpUrl is invalid; keep the current config, correct httpUrl, then run openclaw doctor --fix.";
35
36
  const PENDING_LEGACY_INVALID_HOST_WARNING = "- channels.signal: legacy httpHost is invalid; keep the current config, correct httpHost, then run openclaw doctor --fix.";
@@ -383,7 +384,8 @@ function migrateLegacySignalTransportConfigSync(cfg) {
383
384
  });
384
385
  }));
385
386
  }
386
- // packages/normalization-core/src/record-coerce.ts
387
+ //#endregion
388
+ //#region packages/normalization-core/src/record-coerce.ts
387
389
  /** Type guard for non-array object records at browser-safe boundaries. */
388
390
  function isRecord$1(value) {
389
391
  return value !== null && typeof value === "object" && !Array.isArray(value);
@@ -392,7 +394,8 @@ function isRecord$1(value) {
392
394
  function asNullableRecord(value) {
393
395
  return isRecord$1(value) ? value : null;
394
396
  }
395
- // src/config/channel-config-normalization.ts
397
+ //#endregion
398
+ //#region src/config/channel-config-normalization.ts
396
399
  /** Applies one channel-specific doctor migration to every object-shaped account. */
397
400
  function normalizeChannelAccounts(params) {
398
401
  const rawAccounts = asNullableRecord(params.entry.accounts);
@@ -468,7 +471,8 @@ function normalizeChannelConfigEntries(params) {
468
471
  changes
469
472
  };
470
473
  }
471
- // src/plugin-sdk/legacy-webhook-listener-migration.ts
474
+ //#endregion
475
+ //#region src/plugin-sdk/legacy-webhook-listener-migration.ts
472
476
  /** Preserve explicitly configured webhook listeners while moving ingress onto Gateway routes. */
473
477
  function createLegacyWebhookListenerDoctorContract(params) {
474
478
  const portKey = params.portKey ?? "webhookPort";
@@ -538,11 +542,13 @@ function createLegacyWebhookListenerDoctorContract(params) {
538
542
  }
539
543
  };
540
544
  }
541
- // \0openclaw:bundled-sdk:openclaw/plugin-sdk/runtime-doctor-migrations
545
+ //#endregion
546
+ //#region \0openclaw:bundled-sdk:openclaw/plugin-sdk/runtime-doctor-migrations
542
547
  var runtime_doctor_migrations_exports = /* @__PURE__ */ __exportAll({ createLegacyWebhookListenerDoctorContract: () => createLegacyWebhookListenerDoctorContract });
543
548
  import * as import_openclaw_plugin_sdk_runtime_doctor_migrations from "openclaw/plugin-sdk/runtime-doctor-migrations";
544
549
  __reExport(runtime_doctor_migrations_exports, import_openclaw_plugin_sdk_runtime_doctor_migrations);
545
- // extensions/signal/src/account-key-repair.ts
550
+ //#endregion
551
+ //#region extensions/signal/src/account-key-repair.ts
546
552
  function repairSignalAccountKeys({ cfg }) {
547
553
  const signal = cfg.channels?.signal;
548
554
  const accounts = signal?.accounts;
@@ -586,7 +592,8 @@ function repairSignalAccountKeys({ cfg }) {
586
592
  warnings
587
593
  };
588
594
  }
589
- // extensions/signal/config-doctor-api.ts
595
+ //#endregion
596
+ //#region extensions/signal/config-doctor-api.ts
590
597
  const streamingAliasMigration = (0, runtime_doctor_migrations_exports.defineChannelAliasMigration)({
591
598
  channelId: "signal",
592
599
  streaming: {
@@ -626,4 +633,5 @@ function normalizeCompatibilityConfig({ cfg }) {
626
633
  ...transport.warnings?.length ? { warnings: transport.warnings } : {}
627
634
  };
628
635
  }
636
+ //#endregion
629
637
  export { migrateLegacySignalTransportConfig as a, clearLegacySignalTransportFieldsForAccount as i, normalizeCompatibilityConfig as n, __exportAll as o, repairSignalAccountKeys as r, legacyConfigRules as t };
@@ -1,7 +1,7 @@
1
1
  import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
2
2
  import { normalizeE164 } from "openclaw/plugin-sdk/text-utility-runtime";
3
3
  import { resolveAllowlistMatchByCandidates } from "openclaw/plugin-sdk/allow-from";
4
- // extensions/signal/src/uuid.ts
4
+ //#region extensions/signal/src/uuid.ts
5
5
  const UUID_HYPHENATED_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
6
6
  const UUID_COMPACT_RE = /^[0-9a-f]{32}$/i;
7
7
  function looksLikeUuid(value) {
@@ -10,7 +10,8 @@ function looksLikeUuid(value) {
10
10
  if (!/^[0-9a-f]+$/i.test(compact)) return false;
11
11
  return /[a-f]/i.test(compact);
12
12
  }
13
- // extensions/signal/src/identity.ts
13
+ //#endregion
14
+ //#region extensions/signal/src/identity.ts
14
15
  function stripSignalPrefix(value) {
15
16
  return value.replace(/^signal:/i, "").trim();
16
17
  }
@@ -92,4 +93,5 @@ function isSignalSenderAllowed(sender, allowFrom) {
92
93
  }]
93
94
  }).allowed;
94
95
  }
96
+ //#endregion
95
97
  export { normalizeSignalAllowRecipient as a, resolveSignalSender as c, isSignalSenderAllowed as i, looksLikeUuid as l, formatSignalSenderDisplay as n, resolveSignalPeerId as o, formatSignalSenderId as r, resolveSignalRecipient as s, formatSignalPairingIdLine as t };
@@ -10,7 +10,7 @@ import { readProviderJsonObjectResponse } from "openclaw/plugin-sdk/provider-htt
10
10
  import { runPluginCommandWithTimeout } from "openclaw/plugin-sdk/run-command";
11
11
  import { fetchWithSsrFGuard } from "openclaw/plugin-sdk/ssrf-runtime";
12
12
  import { withTempDownloadPath } from "openclaw/plugin-sdk/temp-path";
13
- // extensions/signal/src/install-signal-cli.ts
13
+ //#region extensions/signal/src/install-signal-cli.ts
14
14
  const MAX_SIGNAL_CLI_ARCHIVE_BYTES = 268435456;
15
15
  const MAX_SIGNAL_CLI_EXTRACTED_BYTES = 402653184;
16
16
  const SIGNAL_CLI_DOWNLOAD_TIMEOUT_MS = 3e5;
@@ -232,4 +232,5 @@ async function installSignalCli(runtime) {
232
232
  if (process.platform === "linux" && process.arch === "x64") return installSignalCliFromRelease(runtime);
233
233
  return installSignalCliViaBrew(runtime);
234
234
  }
235
+ //#endregion
235
236
  export { installSignalCliFromRelease as i, extractSignalCliArchive as n, installSignalCli as r, downloadToFile as t };
@@ -1,5 +1,5 @@
1
1
  import { isRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
2
- // extensions/signal/src/legacy-transport.ts
2
+ //#region extensions/signal/src/legacy-transport.ts
3
3
  const LEGACY_SIGNAL_TRANSPORT_FIELDS = [
4
4
  "configPath",
5
5
  "httpUrl",
@@ -14,4 +14,5 @@ const LEGACY_SIGNAL_TRANSPORT_FIELDS = [
14
14
  function hasLegacySignalTransportFields(value) {
15
15
  return isRecord(value) && LEGACY_SIGNAL_TRANSPORT_FIELDS.some((field) => Object.hasOwn(value, field));
16
16
  }
17
+ //#endregion
17
18
  export { hasLegacySignalTransportFields as n, LEGACY_SIGNAL_TRANSPORT_FIELDS as t };
@@ -1,16 +1,16 @@
1
- import { o as __exportAll } from "./doctor-contract-api-BXWnMqDt.mjs";
2
- import { i as normalizeSignalTransportHost } from "./transport-url-BptucYNV.mjs";
3
- import { i as resolveSignalAccount, o as resolveSignalReplyToMode } from "./accounts-BZXLLXyZ.mjs";
4
- import { n as normalizeSignalMessagingTarget } from "./normalize-B_3XS5ez.mjs";
5
- import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "./identity-DzXre34N.mjs";
6
- import { _ as resolveSignalReactionLevel, m as materializeSignalPresentationFallback, p as registerSignalReplyContext, v as formatSignalMediaText, x as isSignalNativeApprovalHandlerConfigured } from "./channel-Cd52DrmN.mjs";
7
- import { a as prepareSignalSocketPath, t as SignalSseRejectionError } from "./client-CRClyTxP.mjs";
8
- import { n as signalRpcRequest, r as streamSignalEvents, t as signalCheck } from "./client-adapter-CNEkF_Ej.mjs";
9
- import { n as sendReactionSignal } from "./reaction-runtime-api-D7bhF81u.mjs";
10
- import { n as getSignalRuntime, t as getOptionalSignalRuntime } from "./runtime-B_1v-nzc.mjs";
11
- import { i as maybeResolveSignalApprovalReaction, s as resolveSignalApprovalConversationKey, t as addSignalApprovalReactionHintToStructuredPayload } from "./approval-reactions-Drpy356L.mjs";
12
- import { n as registerSignalReactionTargetsForDeliveredPayload, r as maybeResolveSignalQuestionReaction } from "./reaction-targets-Bg9NSMJF.mjs";
13
- import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./send-BZd_WrI_.mjs";
1
+ import { o as __exportAll } from "./doctor-contract-api-BIdVW0PF.mjs";
2
+ import { i as normalizeSignalTransportHost } from "./transport-url-CAC0JcuI.mjs";
3
+ import { i as resolveSignalAccount, o as resolveSignalReplyToMode } from "./accounts-B0Pba1-q.mjs";
4
+ import { n as normalizeSignalMessagingTarget } from "./normalize-D7kSomXt.mjs";
5
+ import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "./identity-B3JyPqGO.mjs";
6
+ import { _ as materializeSignalPresentationFallback, a as formatSignalDaemonDroppedEnvNotice, b as resolveSignalReactionLevel, g as registerSignalReplyContext, i as buildSignalDaemonEnv, o as listSignalDaemonDroppedEnvHints, w as isSignalNativeApprovalHandlerConfigured, x as formatSignalMediaText } from "./channel-CM-rLLPN.mjs";
7
+ import { a as prepareSignalSocketPath, t as SignalSseRejectionError } from "./client-Duwqbgqi.mjs";
8
+ import { n as signalRpcRequest, r as streamSignalEvents, t as signalCheck } from "./client-adapter-Chnbch_z.mjs";
9
+ import { n as sendReactionSignal } from "./reaction-runtime-api-mdO4k0yv.mjs";
10
+ import { n as getSignalRuntime, t as getOptionalSignalRuntime } from "./runtime-8sxUF217.mjs";
11
+ import { i as maybeResolveSignalApprovalReaction, s as resolveSignalApprovalConversationKey, t as addSignalApprovalReactionHintToStructuredPayload } from "./approval-reactions-JsqCEOHK.mjs";
12
+ import { n as registerSignalReactionTargetsForDeliveredPayload, r as maybeResolveSignalQuestionReaction } from "./reaction-targets-BgPLDHBf.mjs";
13
+ import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./send-CM7-016e.mjs";
14
14
  import { bindIngressLifecycleToReplyOptions, createChannelIngressError, createChannelIngressMonitor, createChannelMessageReplyPipeline, resolveChannelStreamingBlockEnabled } from "openclaw/plugin-sdk/channel-outbound";
15
15
  import { createChannelPairingChallengeIssuer } from "openclaw/plugin-sdk/channel-pairing";
16
16
  import { resolveAgentRoute, resolveInboundLastRouteSessionKey } from "openclaw/plugin-sdk/routing";
@@ -28,7 +28,7 @@ import { registerChannelRuntimeContext } from "openclaw/plugin-sdk/channel-runti
28
28
  import { deliverTextOrMediaReply, resolveSendableOutboundReplyParts } from "openclaw/plugin-sdk/reply-payload";
29
29
  import { chunkTextWithMode, createReplyReferencePlanner, resolveChunkMode, resolveTextChunkLimit } from "openclaw/plugin-sdk/reply-runtime";
30
30
  import { captureRuntimeConfigAsyncReader, createRuntimeConfigReader } from "openclaw/plugin-sdk/runtime-config-snapshot";
31
- import { computeBackoff, createNonExitingRuntime, danger, logVerbose, shouldLogVerbose, sleepWithAbort } from "openclaw/plugin-sdk/runtime-env";
31
+ import { computeBackoff, createNonExitingRuntime, createSubsystemLogger, danger, logVerbose, shouldLogVerbose, sleepWithAbort } from "openclaw/plugin-sdk/runtime-env";
32
32
  import { resolveAllowlistProviderRuntimeGroupPolicy, resolveDefaultGroupPolicy, warnMissingProviderGroupPolicyFallbackOnce } from "openclaw/plugin-sdk/runtime-group-policy";
33
33
  import { waitForTransportReady } from "openclaw/plugin-sdk/transport-ready-runtime";
34
34
  import { createInterface } from "node:readline";
@@ -46,8 +46,16 @@ import { listChatCommands, maybeResolveTextAlias, normalizeCommandBody } from "o
46
46
  import { isAbortRequestText } from "openclaw/plugin-sdk/command-primitives-runtime";
47
47
  import { resolveChannelContextVisibilityMode } from "openclaw/plugin-sdk/context-visibility-runtime";
48
48
  import { channelBlockedPatch, channelReadyPatch } from "openclaw/plugin-sdk/gateway-runtime";
49
- // extensions/signal/src/daemon.ts
49
+ //#region extensions/signal/src/daemon.ts
50
50
  const SIGNAL_DAEMON_STOP_KILL_TIMEOUT_MS = 1500;
51
+ let droppedEnvNoticeEmitted = false;
52
+ function warnSignalDaemonDroppedEnvOnce() {
53
+ if (droppedEnvNoticeEmitted) return;
54
+ const names = listSignalDaemonDroppedEnvHints();
55
+ if (names.length === 0) return;
56
+ droppedEnvNoticeEmitted = true;
57
+ createSubsystemLogger("signal/daemon").warn(formatSignalDaemonDroppedEnvNotice(names));
58
+ }
51
59
  function formatSignalDaemonExit(exit) {
52
60
  return `signal daemon exited (source=${exit.source} code=${exit.code ?? "null"} signal=${exit.signal ?? "null"})`;
53
61
  }
@@ -140,11 +148,15 @@ function buildDaemonArgs(opts) {
140
148
  }
141
149
  function spawnSignalDaemon(opts) {
142
150
  const args = buildDaemonArgs(opts);
143
- const child = spawnOomScoreAdjusted(opts.cliPath, args, { stdio: [
144
- "ignore",
145
- "pipe",
146
- "pipe"
147
- ] });
151
+ warnSignalDaemonDroppedEnvOnce();
152
+ const child = spawnOomScoreAdjusted(opts.cliPath, args, {
153
+ env: buildSignalDaemonEnv(),
154
+ stdio: [
155
+ "ignore",
156
+ "pipe",
157
+ "pipe"
158
+ ]
159
+ });
148
160
  const log = opts.runtime?.log ?? (() => {});
149
161
  const error = opts.runtime?.error ?? (() => {});
150
162
  let exited = false;
@@ -222,7 +234,8 @@ function spawnSignalDaemon(opts) {
222
234
  }
223
235
  };
224
236
  }
225
- // extensions/signal/src/daemon-lifecycle.ts
237
+ //#endregion
238
+ //#region extensions/signal/src/daemon-lifecycle.ts
226
239
  function createSignalDaemonLifecycle(params) {
227
240
  let daemonHandle = null;
228
241
  let daemonStopPromise;
@@ -250,7 +263,8 @@ function createSignalDaemonLifecycle(params) {
250
263
  abortSignal
251
264
  };
252
265
  }
253
- // extensions/signal/src/native-reply.ts
266
+ //#endregion
267
+ //#region extensions/signal/src/native-reply.ts
254
268
  function resolveSignalNativeReplyId(params) {
255
269
  if (params.payload.replyToCurrent === false) return;
256
270
  const payloadReplyToId = normalizeOptionalString(params.payload.replyToId);
@@ -288,7 +302,8 @@ function createSignalNativeReplyIdPlan(params) {
288
302
  }
289
303
  };
290
304
  }
291
- // extensions/signal/src/monitor/access-policy.ts
305
+ //#endregion
306
+ //#region extensions/signal/src/monitor/access-policy.ts
292
307
  const SIGNAL_UUID_KIND = "plugin:signal-uuid";
293
308
  const SIGNAL_GROUP_KIND = "plugin:signal-group";
294
309
  function strippedSignalEntry(entry) {
@@ -416,7 +431,8 @@ async function handleSignalDirectMessageAccess(params) {
416
431
  });
417
432
  return false;
418
433
  }
419
- // extensions/signal/src/monitor/event-handler.control-lane.ts
434
+ //#endregion
435
+ //#region extensions/signal/src/monitor/event-handler.control-lane.ts
420
436
  const SIGNAL_ACTIVE_RUN_CONTROL_COMMAND_KEYS = /* @__PURE__ */ new Set([
421
437
  "approve",
422
438
  "commands",
@@ -497,7 +513,8 @@ function createSignalPendingInboundRegistry(accountId) {
497
513
  cancelPendingOnAbort
498
514
  };
499
515
  }
500
- // extensions/signal/src/monitor/inbound-context.ts
516
+ //#endregion
517
+ //#region extensions/signal/src/monitor/inbound-context.ts
501
518
  function resolveSignalQuoteContext(params) {
502
519
  const contextVisibilityMode = resolveChannelContextVisibilityMode({
503
520
  cfg: params.cfg,
@@ -528,7 +545,8 @@ function resolveSignalQuoteContext(params) {
528
545
  visibleQuoteSender: visibleQuote?.sender
529
546
  };
530
547
  }
531
- // extensions/signal/src/monitor/mentions.ts
548
+ //#endregion
549
+ //#region extensions/signal/src/monitor/mentions.ts
532
550
  const OBJECT_REPLACEMENT = "";
533
551
  function isValidMention(mention) {
534
552
  if (!mention) return false;
@@ -585,7 +603,8 @@ function renderSignalMentions(message, mentions) {
585
603
  }
586
604
  return normalized;
587
605
  }
588
- // extensions/signal/src/monitor/reactions.ts
606
+ //#endregion
607
+ //#region extensions/signal/src/monitor/reactions.ts
589
608
  function resolveSignalStatusReactionTimestamp(params) {
590
609
  if (typeof params.timestamp === "number") return Number.isFinite(params.timestamp) && params.timestamp > 0 ? params.timestamp : null;
591
610
  const parsed = Number(params.messageId);
@@ -642,7 +661,8 @@ function buildSignalReactionSystemEventText(params) {
642
661
  const withTarget = params.targetLabel ? `${base} from ${params.targetLabel}` : base;
643
662
  return params.groupLabel ? `${withTarget} in ${params.groupLabel}` : withTarget;
644
663
  }
645
- // extensions/signal/src/monitor/event-handler.ts
664
+ //#endregion
665
+ //#region extensions/signal/src/monitor/event-handler.ts
646
666
  function resolveSignalInboundRoute(params) {
647
667
  return resolveAgentRoute({
648
668
  cfg: params.cfg,
@@ -1517,7 +1537,8 @@ function createSignalEventHandler(deps) {
1517
1537
  if (turnAdoptionLifecycle) return { kind: "deferred" };
1518
1538
  };
1519
1539
  }
1520
- // extensions/signal/src/signal-ingress.ts
1540
+ //#endregion
1541
+ //#region extensions/signal/src/signal-ingress.ts
1521
1542
  const SIGNAL_INGRESS_DRAIN_INTERVAL_MS = 1e3;
1522
1543
  const SignalIngressPermanentError = createChannelIngressError("SignalIngressPermanentError", { withReason: true });
1523
1544
  function parseReceivePayload(event) {
@@ -1614,7 +1635,8 @@ async function startSignalIngressMonitor(params) {
1614
1635
  waitForIdle: monitor.waitForIdle
1615
1636
  };
1616
1637
  }
1617
- // extensions/signal/src/sse-reconnect.ts
1638
+ //#endregion
1639
+ //#region extensions/signal/src/sse-reconnect.ts
1618
1640
  const DEFAULT_RECONNECT_POLICY = {
1619
1641
  initialMs: 1e3,
1620
1642
  maxMs: 1e4,
@@ -1689,7 +1711,8 @@ async function runSignalSseLoop({ baseUrl, account, abortSignal, runtime, onEven
1689
1711
  }
1690
1712
  }
1691
1713
  }
1692
- // extensions/signal/src/monitor.ts
1714
+ //#endregion
1715
+ //#region extensions/signal/src/monitor.ts
1693
1716
  var monitor_exports = /* @__PURE__ */ __exportAll({
1694
1717
  deliverReplies: () => deliverReplies,
1695
1718
  monitorSignalProvider: () => monitorSignalProvider
@@ -1996,4 +2019,5 @@ async function monitorSignalProvider(opts = {}) {
1996
2019
  opts.abortSignal?.removeEventListener("abort", onAbort);
1997
2020
  }
1998
2021
  }
2022
+ //#endregion
1999
2023
  export { monitor_exports as n, monitorSignalProvider as t };
@@ -1,5 +1,5 @@
1
1
  import { normalizeLowercaseStringOrEmpty, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
2
- // extensions/signal/src/normalize.ts
2
+ //#region extensions/signal/src/normalize.ts
3
3
  function normalizeSignalReactionRecipient(raw) {
4
4
  const withoutSignal = raw.trim().replace(/^signal:/i, "").trim();
5
5
  return /^uuid:/i.test(withoutSignal) ? withoutSignal.slice(5).trim() : withoutSignal;
@@ -35,4 +35,5 @@ function looksLikeSignalTargetId(raw, normalized) {
35
35
  }
36
36
  return false;
37
37
  }
38
+ //#endregion
38
39
  export { normalizeSignalMessagingTarget as n, normalizeSignalReactionRecipient as r, looksLikeSignalTargetId as t };
@@ -1,10 +1,10 @@
1
- import { o as __exportAll } from "./doctor-contract-api-BXWnMqDt.mjs";
2
- import { n as signalRpcRequest, t as signalCheck } from "./client-adapter-CNEkF_Ej.mjs";
3
- import { t as detectSignalTransport } from "./transport-detection-oXau8_7D.mjs";
1
+ import { o as __exportAll } from "./doctor-contract-api-BIdVW0PF.mjs";
2
+ import { n as signalRpcRequest, t as signalCheck } from "./client-adapter-Chnbch_z.mjs";
3
+ import { t as detectSignalTransport } from "./transport-detection-CmlgOybe.mjs";
4
4
  import { normalizeOptionalString, normalizeTrimmedStringList } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { runChannelProbe } from "openclaw/plugin-sdk/text-utility-runtime";
6
6
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
7
- // extensions/signal/src/probe.ts
7
+ //#region extensions/signal/src/probe.ts
8
8
  var probe_exports = /* @__PURE__ */ __exportAll({
9
9
  probeSignal: () => probeSignal,
10
10
  probeSignalAccount: () => probeSignalAccount
@@ -77,4 +77,5 @@ async function resolveProbeTransportKind(baseUrl, timeoutMs, options) {
77
77
  })).kind;
78
78
  return "external-native";
79
79
  }
80
+ //#endregion
80
81
  export { probe_exports as n, probeSignal as t };
@@ -1,9 +1,9 @@
1
- import { i as resolveSignalAccount } from "./accounts-BZXLLXyZ.mjs";
2
- import { r as normalizeSignalReactionRecipient } from "./normalize-B_3XS5ez.mjs";
3
- import { n as signalRpcRequest } from "./client-adapter-CNEkF_Ej.mjs";
4
- import { t as resolveSignalRpcContext } from "./rpc-context-DmtN26AB.mjs";
1
+ import { i as resolveSignalAccount } from "./accounts-B0Pba1-q.mjs";
2
+ import { r as normalizeSignalReactionRecipient } from "./normalize-D7kSomXt.mjs";
3
+ import { n as signalRpcRequest } from "./client-adapter-Chnbch_z.mjs";
4
+ import { t as resolveSignalRpcContext } from "./rpc-context-BAXcX7dI.mjs";
5
5
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
6
- // extensions/signal/src/send-reactions.ts
6
+ //#region extensions/signal/src/send-reactions.ts
7
7
  async function sendReactionSignalCore(params) {
8
8
  const cfg = requireRuntimeConfig(params.opts.cfg, "Signal reactions");
9
9
  const accountInfo = resolveSignalAccount({
@@ -61,4 +61,5 @@ async function removeReactionSignal(recipient, targetTimestamp, emoji, opts) {
61
61
  opts
62
62
  });
63
63
  }
64
+ //#endregion
64
65
  export { sendReactionSignal as n, removeReactionSignal as t };
@@ -1,9 +1,9 @@
1
- import { o as __exportAll } from "./doctor-contract-api-BXWnMqDt.mjs";
2
- import { i as resolveSignalDeliveredConversationKey } from "./approval-auth-BC9o4yna.mjs";
3
- import { c as resolveSignalApprovalTargetAuthorKeys, o as registerSignalApprovalReactionTargetForDeliveredPayload } from "./approval-reactions-Drpy356L.mjs";
1
+ import { o as __exportAll } from "./doctor-contract-api-BIdVW0PF.mjs";
2
+ import { i as resolveSignalDeliveredConversationKey } from "./approval-auth-DhUKkSkA.mjs";
3
+ import { c as resolveSignalApprovalTargetAuthorKeys, o as registerSignalApprovalReactionTargetForDeliveredPayload } from "./approval-reactions-JsqCEOHK.mjs";
4
4
  import { createQuestionReactionTargetStore, questionGatewayRuntime } from "openclaw/plugin-sdk/question-gateway-runtime";
5
5
  import { normalizeAccountId } from "openclaw/plugin-sdk/routing";
6
- // extensions/signal/src/question-reactions.ts
6
+ //#region extensions/signal/src/question-reactions.ts
7
7
  function buildKey(identity) {
8
8
  const values = [
9
9
  identity.accountId,
@@ -61,10 +61,12 @@ async function maybeResolveSignalQuestionReaction(params) {
61
61
  logDebug: params.logDebug
62
62
  });
63
63
  }
64
- // extensions/signal/src/reaction-targets.ts
64
+ //#endregion
65
+ //#region extensions/signal/src/reaction-targets.ts
65
66
  var reaction_targets_exports = /* @__PURE__ */ __exportAll({ registerSignalReactionTargetsForDeliveredPayload: () => registerSignalReactionTargetsForDeliveredPayload });
66
67
  async function registerSignalReactionTargetsForDeliveredPayload(params) {
67
68
  registerSignalQuestionReactionTargetForDeliveredPayload(params);
68
69
  await registerSignalApprovalReactionTargetForDeliveredPayload(params);
69
70
  }
71
+ //#endregion
70
72
  export { registerSignalReactionTargetsForDeliveredPayload as n, maybeResolveSignalQuestionReaction as r, reaction_targets_exports as t };
@@ -1,4 +1,4 @@
1
- // extensions/signal/src/rpc-context.ts
1
+ //#region extensions/signal/src/rpc-context.ts
2
2
  function resolveSignalRpcContext(opts, accountInfo) {
3
3
  const baseUrlOverride = opts.baseUrl?.trim();
4
4
  const accountOverride = opts.account?.trim();
@@ -9,4 +9,5 @@ function resolveSignalRpcContext(opts, accountInfo) {
9
9
  account: accountOverride || accountInfo.config.account?.trim() || void 0
10
10
  };
11
11
  }
12
+ //#endregion
12
13
  export { resolveSignalRpcContext as t };
@@ -1,7 +1,8 @@
1
1
  import { createPluginRuntimeStore } from "openclaw/plugin-sdk/runtime-store";
2
- // extensions/signal/src/runtime.ts
2
+ //#region extensions/signal/src/runtime.ts
3
3
  const { setRuntime: setSignalRuntime, getRuntime: getSignalRuntime, tryGetRuntime: getOptionalSignalRuntime } = createPluginRuntimeStore({
4
4
  pluginId: "signal",
5
5
  errorMessage: "Signal runtime not initialized"
6
6
  });
7
+ //#endregion
7
8
  export { getSignalRuntime as n, setSignalRuntime as r, getOptionalSignalRuntime as t };
@@ -1,16 +1,16 @@
1
- import { o as __exportAll } from "./doctor-contract-api-BXWnMqDt.mjs";
2
- import { i as resolveSignalAccount } from "./accounts-BZXLLXyZ.mjs";
3
- import { n as normalizeSignalMessagingTarget } from "./normalize-B_3XS5ez.mjs";
4
- import { p as registerSignalReplyContext, y as markdownToSignalText } from "./channel-Cd52DrmN.mjs";
5
- import { o as isSignalQuoteMetadataRejection } from "./client-CRClyTxP.mjs";
6
- import { n as signalRpcRequest } from "./client-adapter-CNEkF_Ej.mjs";
7
- import { t as resolveSignalRpcContext } from "./rpc-context-DmtN26AB.mjs";
1
+ import { o as __exportAll } from "./doctor-contract-api-BIdVW0PF.mjs";
2
+ import { i as resolveSignalAccount } from "./accounts-B0Pba1-q.mjs";
3
+ import { n as normalizeSignalMessagingTarget } from "./normalize-D7kSomXt.mjs";
4
+ import { S as markdownToSignalText, g as registerSignalReplyContext } from "./channel-CM-rLLPN.mjs";
5
+ import { o as isSignalQuoteMetadataRejection } from "./client-Duwqbgqi.mjs";
6
+ import { n as signalRpcRequest } from "./client-adapter-Chnbch_z.mjs";
7
+ import { t as resolveSignalRpcContext } from "./rpc-context-BAXcX7dI.mjs";
8
8
  import { createMessageReceiptFromOutboundResults } from "openclaw/plugin-sdk/channel-outbound";
9
9
  import { resolveMarkdownTableMode } from "openclaw/plugin-sdk/markdown-table-runtime";
10
10
  import { asPositiveSafeInteger, normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
11
11
  import { kindFromMime, resolveOutboundAttachmentFromUrl } from "openclaw/plugin-sdk/media-runtime";
12
12
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
13
- // extensions/signal/src/send.ts
13
+ //#region extensions/signal/src/send.ts
14
14
  var send_exports = /* @__PURE__ */ __exportAll({
15
15
  sendMessageSignal: () => sendMessageSignal,
16
16
  sendReadReceiptSignal: () => sendReadReceiptSignal,
@@ -239,4 +239,5 @@ async function sendReadReceiptSignal(to, targetTimestamp, opts) {
239
239
  });
240
240
  return true;
241
241
  }
242
+ //#endregion
242
243
  export { send_exports as i, sendReadReceiptSignal as n, sendTypingSignal as r, sendMessageSignal as t };
@@ -1,9 +1,9 @@
1
- import { i as resolveSignalAccount, n as listSignalAccountIds } from "./accounts-BZXLLXyZ.mjs";
2
- import { c as signalNumberTextInput, i as createSignalCliPathTextInput, o as signalCompletionNote, s as signalDmPolicy } from "./channel-Cd52DrmN.mjs";
3
- import { r as installSignalCli } from "./install-signal-cli-BjCk7EXq.mjs";
1
+ import { i as resolveSignalAccount, n as listSignalAccountIds } from "./accounts-B0Pba1-q.mjs";
2
+ import { d as signalNumberTextInput, l as signalCompletionNote, s as createSignalCliPathTextInput, u as signalDmPolicy } from "./channel-CM-rLLPN.mjs";
3
+ import { r as installSignalCli } from "./install-signal-cli-hYVLYGXe.mjs";
4
4
  import { createDetectedBinaryStatus, createSetupTranslator, setSetupChannelEnabled } from "openclaw/plugin-sdk/setup";
5
5
  import { detectBinary } from "openclaw/plugin-sdk/setup-tools";
6
- // extensions/signal/src/setup-surface.ts
6
+ //#region extensions/signal/src/setup-surface.ts
7
7
  const t = createSetupTranslator();
8
8
  const channel = "signal";
9
9
  const configuredLabel = t("wizard.channels.statusConfigured");
@@ -87,4 +87,5 @@ const signalSetupWizard = {
87
87
  dmPolicy: signalDmPolicy,
88
88
  disable: (cfg) => setSetupChannelEnabled(cfg, channel, false)
89
89
  };
90
+ //#endregion
90
91
  export { signalSetupWizard };
@@ -1,12 +1,12 @@
1
- import { o as __exportAll } from "./doctor-contract-api-BXWnMqDt.mjs";
2
- import { a as normalizeSignalTransportUrl } from "./transport-url-BptucYNV.mjs";
3
- // extensions/signal/src/transport-detection.ts
1
+ import { o as __exportAll } from "./doctor-contract-api-BIdVW0PF.mjs";
2
+ import { a as normalizeSignalTransportUrl } from "./transport-url-CAC0JcuI.mjs";
3
+ //#region extensions/signal/src/transport-detection.ts
4
4
  var transport_detection_exports = /* @__PURE__ */ __exportAll({ detectSignalTransport: () => detectSignalTransport });
5
5
  const DEFAULT_PROBE_TIMEOUT_MS = 1e4;
6
6
  async function detectSignalTransport(params) {
7
7
  const url = normalizeSignalTransportUrl(params.url);
8
8
  const timeoutMs = params.timeoutMs ?? DEFAULT_PROBE_TIMEOUT_MS;
9
- const probes = params.probeNative && params.probeContainer ? void 0 : await import("./transport-probes.runtime-Ca_Rb1P2.mjs");
9
+ const probes = params.probeNative && params.probeContainer ? void 0 : await import("./transport-probes.runtime-D-xIMRcn.mjs");
10
10
  const probeNative = params.probeNative ?? probes?.nativeCheck;
11
11
  const probeContainer = params.probeContainer ?? probes?.containerCheck;
12
12
  if (!probeNative || !probeContainer) throw new Error("Signal transport checks are unavailable");
@@ -21,4 +21,5 @@ async function detectSignalTransport(params) {
21
21
  };
22
22
  throw new Error(`Signal transport not reachable at ${url}`);
23
23
  }
24
+ //#endregion
24
25
  export { transport_detection_exports as n, detectSignalTransport as t };
@@ -1,5 +1,5 @@
1
- import { a as normalizeSignalTransportUrl } from "./transport-url-BptucYNV.mjs";
2
- // extensions/signal/src/transport-policy.ts
1
+ import { a as normalizeSignalTransportUrl } from "./transport-url-CAC0JcuI.mjs";
2
+ //#region extensions/signal/src/transport-policy.ts
3
3
  const DEFAULT_SIGNAL_MANAGED_NATIVE_PORT = 8080;
4
4
  const DEFAULT_SIGNAL_MANAGED_NATIVE_HOST = "127.0.0.1";
5
5
  const SIGNAL_LOOPBACK_HOST_ALIASES = /* @__PURE__ */ new Set([
@@ -82,4 +82,5 @@ function assignSignalManagedNativePort(transport, httpPort) {
82
82
  httpPort
83
83
  };
84
84
  }
85
+ //#endregion
85
86
  export { isSignalManagedNativeConnectionUrlForBind as a, resolveLocalSignalTransportPort as c, assignSignalManagedNativePort as i, DEFAULT_SIGNAL_MANAGED_NATIVE_PORT as n, isValidSignalManagedNativePort as o, allocateSignalManagedNativePort as r, reserveSignalTransportPorts as s, DEFAULT_SIGNAL_MANAGED_NATIVE_HOST as t };
@@ -0,0 +1,2 @@
1
+ import { n as signalCheck, s as containerCheck } from "./client-Duwqbgqi.mjs";
2
+ export { containerCheck, signalCheck as nativeCheck };
@@ -2,7 +2,7 @@ import { pathToFileURL } from "node:url";
2
2
  import { normalizeAccountId, resolveAccountKey } from "openclaw/plugin-sdk/account-resolution";
3
3
  import { isIP } from "node:net";
4
4
  import path from "node:path";
5
- // extensions/signal/src/account-selection.ts
5
+ //#region extensions/signal/src/account-selection.ts
6
6
  function resolveSignalAccountKey(accounts, accountId) {
7
7
  return resolveAccountKey(accounts, normalizeAccountId(accountId), void 0, void 0, { channelId: "signal" });
8
8
  }
@@ -10,7 +10,8 @@ function resolveSignalAccountEntry(accounts, accountId) {
10
10
  const key = resolveSignalAccountKey(accounts, accountId);
11
11
  return key === void 0 ? void 0 : accounts?.[key];
12
12
  }
13
- // extensions/signal/src/transport-url.ts
13
+ //#endregion
14
+ //#region extensions/signal/src/transport-url.ts
14
15
  function normalizeSignalTransportUrl(value) {
15
16
  const trimmed = value.trim();
16
17
  if (!trimmed) throw new Error("Signal transport URL is required");
@@ -50,4 +51,5 @@ function assertSignalSocketTransport(transport) {
50
51
  function buildSignalSocketUrl(socketPath) {
51
52
  return `unix://${pathToFileURL(socketPath).pathname}`;
52
53
  }
54
+ //#endregion
53
55
  export { normalizeSignalTransportUrl as a, normalizeSignalTransportHost as i, buildSignalSocketUrl as n, resolveSignalAccountEntry as o, buildSignalTransportHttpUrl as r, resolveSignalAccountKey as s, assertSignalSocketTransport as t };
package/dist/api.js CHANGED
@@ -1,12 +1,12 @@
1
- import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./.setup/accounts-BZXLLXyZ.mjs";
2
- import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "./.setup/normalize-B_3XS5ez.mjs";
3
- import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "./.setup/identity-DzXre34N.mjs";
4
- import { _ as resolveSignalReactionLevel, a as normalizeSignalAccountInput, b as markdownToSignalTextChunks, d as probeSignalTransport, f as writeSignalAccountTransport, g as signalMessageActions, h as resolveSignalOutboundTarget, t as signalPlugin, u as prepareSignalManagedNativeTransport, y as markdownToSignalText } from "./.setup/channel-Cd52DrmN.mjs";
5
- import { n as sendReactionSignal, t as removeReactionSignal } from "./.setup/reaction-runtime-api-D7bhF81u.mjs";
6
- import { t as detectSignalTransport } from "./.setup/transport-detection-oXau8_7D.mjs";
7
- import { t as signalSetupPlugin } from "./.setup/api-Bw9wRi7s.mjs";
8
- import { r as installSignalCli } from "./.setup/install-signal-cli-BjCk7EXq.mjs";
9
- import { t as monitorSignalProvider } from "./.setup/monitor-C1qvr_Kl.mjs";
10
- import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./.setup/send-BZd_WrI_.mjs";
11
- import { t as probeSignal } from "./.setup/probe-BYl1haPH.mjs";
1
+ import { i as resolveSignalAccount, n as listSignalAccountIds, r as resolveDefaultSignalAccountId, t as listEnabledSignalAccounts } from "./.setup/accounts-B0Pba1-q.mjs";
2
+ import { n as normalizeSignalMessagingTarget, t as looksLikeSignalTargetId } from "./.setup/normalize-D7kSomXt.mjs";
3
+ import { a as normalizeSignalAllowRecipient, c as resolveSignalSender, i as isSignalSenderAllowed, l as looksLikeUuid, n as formatSignalSenderDisplay, o as resolveSignalPeerId, r as formatSignalSenderId, s as resolveSignalRecipient, t as formatSignalPairingIdLine } from "./.setup/identity-B3JyPqGO.mjs";
4
+ import { C as markdownToSignalTextChunks, S as markdownToSignalText, b as resolveSignalReactionLevel, c as normalizeSignalAccountInput, h as writeSignalAccountTransport, m as probeSignalTransport, p as prepareSignalManagedNativeTransport, t as signalPlugin, v as resolveSignalOutboundTarget, y as signalMessageActions } from "./.setup/channel-CM-rLLPN.mjs";
5
+ import { n as sendReactionSignal, t as removeReactionSignal } from "./.setup/reaction-runtime-api-mdO4k0yv.mjs";
6
+ import { t as detectSignalTransport } from "./.setup/transport-detection-CmlgOybe.mjs";
7
+ import { t as signalSetupPlugin } from "./.setup/api-CJBtD3lT.mjs";
8
+ import { r as installSignalCli } from "./.setup/install-signal-cli-hYVLYGXe.mjs";
9
+ import { t as monitorSignalProvider } from "./.setup/monitor-C6u1JV2C.mjs";
10
+ import { n as sendReadReceiptSignal, r as sendTypingSignal, t as sendMessageSignal } from "./.setup/send-CM7-016e.mjs";
11
+ import { t as probeSignal } from "./.setup/probe-D_93QCe0.mjs";
12
12
  export { detectSignalTransport, formatSignalPairingIdLine, formatSignalSenderDisplay, formatSignalSenderId, installSignalCli, isSignalSenderAllowed, listEnabledSignalAccounts, listSignalAccountIds, looksLikeSignalTargetId, looksLikeUuid, markdownToSignalText, markdownToSignalTextChunks, monitorSignalProvider, normalizeSignalAccountInput, normalizeSignalAllowRecipient, normalizeSignalMessagingTarget, prepareSignalManagedNativeTransport, probeSignal, probeSignalTransport, removeReactionSignal, resolveDefaultSignalAccountId, resolveSignalAccount, resolveSignalOutboundTarget, resolveSignalPeerId, resolveSignalReactionLevel, resolveSignalRecipient, resolveSignalSender, sendMessageSignal, sendReactionSignal, sendReadReceiptSignal, sendTypingSignal, signalMessageActions, signalPlugin, signalSetupPlugin, writeSignalAccountTransport };
@@ -1 +1,2 @@
1
- export { t as SignalChannelConfigSchema } from "./.setup/config-schema-WrMl4uyV.mjs";
1
+ import { t as SignalChannelConfigSchema } from "./.setup/config-schema-DvxZ18SD.mjs";
2
+ export { SignalChannelConfigSchema };
@@ -1,5 +1,5 @@
1
1
  import { defineBundledChannelEntry } from "openclaw/plugin-sdk/channel-entry-contract";
2
- // extensions/signal/channel-entry.ts
2
+ //#region extensions/signal/channel-entry.ts
3
3
  var channel_entry_default = defineBundledChannelEntry({
4
4
  id: "signal",
5
5
  name: "Signal",
@@ -14,4 +14,5 @@ var channel_entry_default = defineBundledChannelEntry({
14
14
  exportName: "setSignalRuntime"
15
15
  }
16
16
  });
17
+ //#endregion
17
18
  export { channel_entry_default as default };
@@ -1 +1,2 @@
1
- export { t as signalPlugin } from "./.setup/channel-Cd52DrmN.mjs";
1
+ import { t as signalPlugin } from "./.setup/channel-CM-rLLPN.mjs";
2
+ export { signalPlugin };