@openclaw/matrix 2026.6.2-beta.1 → 2026.6.5-beta.1

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 (47) hide show
  1. package/dist/api.js +4 -4
  2. package/dist/{approval-handler.runtime-CzuSSYKB.js → approval-handler.runtime-DBUlR5vu.js} +4 -4
  3. package/dist/{approval-ids-DclE17FF.js → approval-ids-BWuh0wZT.js} +1 -1
  4. package/dist/{approval-reaction-auth-EVeOTYxE.js → approval-reaction-auth-NgDjrK6V.js} +2 -2
  5. package/dist/{channel-8WZPKRKE.js → channel-6UUus7Ba.js} +11 -10
  6. package/dist/channel-plugin-api.js +1 -1
  7. package/dist/{channel.runtime-DI-GooXD.js → channel.runtime-CPXd3XKs.js} +6 -6
  8. package/dist/{cli-DtamlyMf.js → cli-CM0h-B_j.js} +10 -10
  9. package/dist/{cli-metadata-Cf07R_gl.js → cli-metadata-CW6xSM2K.js} +1 -1
  10. package/dist/cli-metadata.js +1 -1
  11. package/dist/{client-BT3pHI8c.js → client-CdP9vWOu.js} +2 -2
  12. package/dist/{client-D8mT5W6r.js → client-DRRL7Zv5.js} +2 -2
  13. package/dist/{client-bootstrap-B0wcXXlD.js → client-bootstrap-D5vrHEms.js} +1 -1
  14. package/dist/{config-schema-BKGAVlax.js → config-schema-CVJYP50t.js} +1 -1
  15. package/dist/contract-api.js +3 -3
  16. package/dist/{create-client-D4x1reLU.js → create-client-B90Sb7LG.js} +2 -2
  17. package/dist/{crypto-runtime-C6v1fiVu.js → crypto-runtime-DWVNNqa3.js} +2 -2
  18. package/dist/{directory-live-D0OsjRmq.js → directory-live-5uWtLQ41.js} +3 -3
  19. package/dist/{draft-stream-B7lCkUfU.js → draft-stream-DZ2X1RHP.js} +1 -1
  20. package/dist/{http-client-KTzUzlpv.js → http-client-nipb5tk1.js} +18 -2
  21. package/dist/index.js +1 -1
  22. package/dist/{logging-6apMqI4e.js → logging-Cm8vxO3E.js} +1 -1
  23. package/dist/{media-text-DxT-tkdx.js → media-text-DVhXN81h.js} +2 -2
  24. package/dist/{messages-CnMMyKaw.js → messages-sk1eTx7H.js} +70 -9
  25. package/dist/{monitor-Y8rwS-7u.js → monitor-DXW0sFfU.js} +423 -91
  26. package/dist/plugin-entry.handlers.runtime.js +1 -1
  27. package/dist/preflight-audio.runtime-BZxxQsxY.js +11 -0
  28. package/dist/probe.runtime-BO0mNIe8.js +3 -0
  29. package/dist/{profile-update-CdrpnVB1.js → profile-update-rzynJvpi.js} +2 -2
  30. package/dist/{reaction-events-BWDww7_l.js → reaction-events-DRKzlo8q.js} +1 -1
  31. package/dist/{recovery-key-store--lhj0He2.js → recovery-key-store-D6RbiZMM.js} +1 -1
  32. package/dist/{resolve-targets-BjEKWSku.js → resolve-targets-CAwsoBQK.js} +1 -1
  33. package/dist/{resolver.runtime-DjAttKeb.js → resolver.runtime-phS2hwm9.js} +1 -1
  34. package/dist/{sdk-BmcTTd2D.js → sdk-BdCZ5WwA.js} +5 -5
  35. package/dist/{send-BAtT4Rtk.js → send-DEgWxp1p.js} +24 -7
  36. package/dist/{setup-bootstrap-D3tm10tD.js → setup-bootstrap-B4xc58Ww.js} +2 -2
  37. package/dist/{setup-core-CHX8Zcxh.js → setup-core-DJosJdWt.js} +1 -1
  38. package/dist/setup-plugin-api.js +3 -3
  39. package/dist/{setup-surface-DwudaOZp.js → setup-surface-CqxGV1WL.js} +4 -4
  40. package/dist/{shared-D5SFm-Dp.js → shared-BbT5LdPp.js} +2 -2
  41. package/dist/{startup-verification-MAPgdkTX.js → startup-verification-D1p_LRmg.js} +1 -1
  42. package/dist/{thread-bindings-xGy-RpZ_.js → thread-bindings-gLQYbsB9.js} +1 -1
  43. package/dist/{tool-actions.runtime-BaWmHE7Q.js → tool-actions.runtime-o06m9bgN.js} +8 -6
  44. package/dist/{verification-DEaJQn5O.js → verification-BiA5IWPK.js} +1 -1
  45. package/npm-shrinkwrap.json +3 -3
  46. package/package.json +4 -4
  47. package/dist/probe.runtime-BRG4lO-g.js +0 -3
@@ -3,7 +3,7 @@ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runti
3
3
  //#region extensions/matrix/src/plugin-entry.runtime.ts
4
4
  let matrixVerificationRuntimePromise;
5
5
  function loadMatrixVerificationRuntime() {
6
- matrixVerificationRuntimePromise ??= import("./verification-DEaJQn5O.js").then((n) => n.y);
6
+ matrixVerificationRuntimePromise ??= import("./verification-BiA5IWPK.js").then((n) => n.y);
7
7
  return matrixVerificationRuntimePromise;
8
8
  }
9
9
  function sendError(respond, err) {
@@ -0,0 +1,11 @@
1
+ import { sendDurableMessageBatch as sendDurableMessageBatch$1 } from "openclaw/plugin-sdk/channel-outbound";
2
+ import { transcribeFirstAudio as transcribeFirstAudio$1 } from "openclaw/plugin-sdk/media-runtime";
3
+ //#region extensions/matrix/src/matrix/monitor/preflight-audio.runtime.ts
4
+ async function transcribeFirstAudio(...args) {
5
+ return await transcribeFirstAudio$1(...args);
6
+ }
7
+ async function sendDurableMessageBatch(...args) {
8
+ return await sendDurableMessageBatch$1(...args);
9
+ }
10
+ //#endregion
11
+ export { sendDurableMessageBatch, transcribeFirstAudio };
@@ -0,0 +1,3 @@
1
+ import { t as createMatrixClient } from "./create-client-B90Sb7LG.js";
2
+ import "./client-DRRL7Zv5.js";
3
+ export { createMatrixClient };
@@ -1,6 +1,6 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
- import { c as resolveMatrixConfigPath, l as updateMatrixAccountConfig, o as syncMatrixOwnProfile } from "./setup-core-CHX8Zcxh.js";
3
- import { n as withResolvedActionClient } from "./client-BT3pHI8c.js";
2
+ import { c as resolveMatrixConfigPath, l as updateMatrixAccountConfig, o as syncMatrixOwnProfile } from "./setup-core-DJosJdWt.js";
3
+ import { n as withResolvedActionClient } from "./client-CdP9vWOu.js";
4
4
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-id";
5
5
  //#region extensions/matrix/src/matrix/actions/profile.ts
6
6
  async function updateMatrixOwnProfile(opts = {}) {
@@ -7,7 +7,7 @@ import { getSessionBindingService } from "openclaw/plugin-sdk/session-binding-ru
7
7
  let approvalReactionAuthPromise;
8
8
  let execApprovalResolverPromise;
9
9
  function loadApprovalReactionAuth() {
10
- approvalReactionAuthPromise ??= import("./approval-reaction-auth-EVeOTYxE.js");
10
+ approvalReactionAuthPromise ??= import("./approval-reaction-auth-NgDjrK6V.js");
11
11
  return approvalReactionAuthPromise;
12
12
  }
13
13
  function loadExecApprovalResolver() {
@@ -1,5 +1,5 @@
1
1
  import { n as formatMatrixErrorReason, t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
2
- import { f as LogService } from "./shared-D5SFm-Dp.js";
2
+ import { f as LogService } from "./shared-BbT5LdPp.js";
3
3
  import { loadJsonFile, saveJsonFile } from "openclaw/plugin-sdk/json-store";
4
4
  import { decodeRecoveryKey } from "matrix-js-sdk/lib/crypto-api/recovery-key.js";
5
5
  //#region extensions/matrix/src/matrix/sdk/idb-persistence-lock.ts
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { n as normalizeMatrixMessagingTarget, t as isMatrixQualifiedUserId } from "./target-ids-B-5aQxwn.js";
3
- import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-D0OsjRmq.js";
3
+ import { n as listMatrixDirectoryGroupsLive, r as listMatrixDirectoryPeersLive } from "./directory-live-5uWtLQ41.js";
4
4
  import { normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  //#region extensions/matrix/src/resolve-targets.ts
6
6
  var resolve_targets_exports = /* @__PURE__ */ __exportAll({ resolveMatrixTargets: () => resolveMatrixTargets });
@@ -1,4 +1,4 @@
1
- import { t as resolveMatrixTargets } from "./resolve-targets-BjEKWSku.js";
1
+ import { t as resolveMatrixTargets } from "./resolve-targets-CAwsoBQK.js";
2
2
  //#region extensions/matrix/src/resolver.runtime.ts
3
3
  const matrixResolverRuntime = { resolveMatrixTargets };
4
4
  //#endregion
@@ -1,13 +1,13 @@
1
1
  import { t as isRecord } from "./record-shared-CvzjvHRn.js";
2
2
  import { n as formatMatrixErrorReason, r as isMatrixNotFoundError, t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
3
3
  import { t as claimCurrentTokenStorageState } from "./storage-DSVcH_zM.js";
4
- import { c as createMatrixStartupAbortError, d as ConsoleLogger, f as LogService, p as noop, u as throwIfMatrixStartupAborted } from "./shared-D5SFm-Dp.js";
5
- import { a as matrixEventToRaw, n as createMatrixGuardedFetch, o as parseMxc, t as MatrixAuthedHttpClient } from "./http-client-KTzUzlpv.js";
4
+ import { c as createMatrixStartupAbortError, d as ConsoleLogger, f as LogService, p as noop, u as throwIfMatrixStartupAborted } from "./shared-BbT5LdPp.js";
5
+ import { a as matrixEventToRaw, n as createMatrixGuardedFetch, o as parseMxc, t as MatrixAuthedHttpClient } from "./http-client-nipb5tk1.js";
6
6
  import { n as resolveMatrixRoomKeyBackupReadinessError } from "./backup-health-Dm_YMVFT.js";
7
- import { createMatrixJsSdkClientLogger } from "./logging-6apMqI4e.js";
7
+ import { createMatrixJsSdkClientLogger } from "./logging-Cm8vxO3E.js";
8
8
  import { t as createAsyncLock } from "./async-lock-BcLS4KOc.js";
9
9
  import { n as isMatrixReadySyncState, r as isMatrixTerminalSyncState } from "./sync-state-CWbp0QSY.js";
10
- import { n as isRepairableSecretStorageAccessError, r as MATRIX_IDB_PERSIST_INTERVAL_MS, t as MatrixRecoveryKeyStore } from "./recovery-key-store--lhj0He2.js";
10
+ import { n as isRepairableSecretStorageAccessError, r as MATRIX_IDB_PERSIST_INTERVAL_MS, t as MatrixRecoveryKeyStore } from "./recovery-key-store-D6RbiZMM.js";
11
11
  import { normalizeNullableString, normalizeStringEntries, uniqueStrings } from "openclaw/plugin-sdk/string-coerce-runtime";
12
12
  import { readFileSync } from "node:fs";
13
13
  import path from "node:path";
@@ -288,7 +288,7 @@ function createMatrixExplicitBootstrapOptions(params) {
288
288
  let loadedMatrixCryptoRuntime = null;
289
289
  let matrixCryptoRuntimePromise = null;
290
290
  async function loadMatrixCryptoRuntime() {
291
- matrixCryptoRuntimePromise ??= import("./crypto-runtime-C6v1fiVu.js").then((runtime) => {
291
+ matrixCryptoRuntimePromise ??= import("./crypto-runtime-DWVNNqa3.js").then((runtime) => {
292
292
  loadedMatrixCryptoRuntime = runtime;
293
293
  return runtime;
294
294
  });
@@ -229,7 +229,7 @@ function buildPollResponseContent(pollEventId, answerIds) {
229
229
  //#region extensions/matrix/src/matrix/send/client.ts
230
230
  let matrixSendClientRuntimePromise = null;
231
231
  async function loadMatrixSendClientRuntime() {
232
- matrixSendClientRuntimePromise ??= import("./client-bootstrap-B0wcXXlD.js").then((n) => n.t);
232
+ matrixSendClientRuntimePromise ??= import("./client-bootstrap-D5vrHEms.js").then((n) => n.t);
233
233
  return await matrixSendClientRuntimePromise;
234
234
  }
235
235
  function resolveMediaMaxBytes(accountId, cfg) {
@@ -642,12 +642,16 @@ function buildReplyRelation(replyToId) {
642
642
  }
643
643
  function buildThreadRelation(threadId, replyToId) {
644
644
  const trimmed = threadId.trim();
645
- return {
645
+ const relation = {
646
646
  rel_type: RelationType.Thread,
647
- event_id: trimmed,
648
- is_falling_back: true,
649
- "m.in_reply_to": { event_id: replyToId?.trim() || trimmed }
647
+ event_id: trimmed
650
648
  };
649
+ const fallbackReplyToId = replyToId?.trim();
650
+ if (fallbackReplyToId) {
651
+ relation.is_falling_back = true;
652
+ relation["m.in_reply_to"] = { event_id: fallbackReplyToId };
653
+ }
654
+ return relation;
651
655
  }
652
656
  function resolveMatrixMsgType(contentType, _fileName) {
653
657
  switch (getCore$2().media.mediaKindFromMime(contentType ?? "")) {
@@ -1194,6 +1198,16 @@ function resolvePreviousEditContent(previousEvent) {
1194
1198
  const newContent = content["m.new_content"];
1195
1199
  return newContent && typeof newContent === "object" ? newContent : content;
1196
1200
  }
1201
+ function resolvePreviousThreadId(previousEvent) {
1202
+ if (!previousEvent || typeof previousEvent !== "object") return;
1203
+ const content = previousEvent.content;
1204
+ if (!content || typeof content !== "object") return;
1205
+ const relation = content["m.relates_to"];
1206
+ if (!relation || typeof relation !== "object") return;
1207
+ const relationRecord = relation;
1208
+ if (relationRecord.rel_type !== RelationType.Thread || typeof relationRecord.event_id !== "string") return;
1209
+ return normalizeThreadId(relationRecord.event_id) ?? void 0;
1210
+ }
1197
1211
  function hasMatrixMentionsMetadata(content) {
1198
1212
  return Boolean(content && Object.hasOwn(content, "m.mentions"));
1199
1213
  }
@@ -1478,16 +1492,19 @@ async function editMessageMatrix(roomId, originalEventId, newText, opts) {
1478
1492
  markdown: convertedText,
1479
1493
  includeMentions: opts.includeMentions
1480
1494
  });
1495
+ const previousEvent = await getPreviousMatrixEvent(client, resolvedRoom, originalEventId);
1481
1496
  const replaceMentions = opts.includeMentions === false ? void 0 : diffMatrixMentions(extractMatrixMentions(newContent), await resolvePreviousEditMentions({
1482
1497
  client,
1483
- content: resolvePreviousEditContent(await getPreviousMatrixEvent(client, resolvedRoom, originalEventId))
1498
+ content: resolvePreviousEditContent(previousEvent)
1484
1499
  }));
1485
1500
  const replaceRelation = {
1486
1501
  rel_type: RelationType.Replace,
1487
1502
  event_id: originalEventId
1488
1503
  };
1489
1504
  const threadId = normalizeThreadId(opts.threadId);
1490
- if (threadId) replaceRelation["m.in_reply_to"] = { event_id: threadId };
1505
+ if (threadId) {
1506
+ if (resolvePreviousThreadId(previousEvent) !== threadId) throw new Error("Matrix edit cannot add or change the original event thread relation.");
1507
+ }
1491
1508
  const content = {
1492
1509
  ...newContent,
1493
1510
  body: `* ${convertedText}`,
@@ -1,7 +1,7 @@
1
1
  import { a as hasExplicitMatrixAccountConfig, c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
- import "./setup-core-CHX8Zcxh.js";
2
+ import "./setup-core-DJosJdWt.js";
3
3
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
4
- import { n as bootstrapMatrixVerification } from "./verification-DEaJQn5O.js";
4
+ import { n as bootstrapMatrixVerification } from "./verification-BiA5IWPK.js";
5
5
  //#region extensions/matrix/src/setup-bootstrap.ts
6
6
  async function maybeBootstrapNewEncryptedMatrixAccount(params) {
7
7
  const accountConfig = resolveMatrixAccountConfig({
@@ -669,7 +669,7 @@ const matrixSetupAdapter = {
669
669
  input
670
670
  }),
671
671
  afterAccountConfigWritten: async ({ previousCfg, cfg, accountId, runtime }) => {
672
- const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-D3tm10tD.js");
672
+ const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-B4xc58Ww.js");
673
673
  await runMatrixSetupBootstrapAfterConfigWrite({
674
674
  previousCfg,
675
675
  cfg,
@@ -1,5 +1,5 @@
1
- import { g as resolveMatrixAccount, n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-CHX8Zcxh.js";
2
- import { r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-BKGAVlax.js";
1
+ import { g as resolveMatrixAccount, n as matrixSetupAdapter, t as createMatrixSetupWizardProxy } from "./setup-core-DJosJdWt.js";
2
+ import { r as matrixConfigAdapter, t as MatrixChannelConfigSchema } from "./config-schema-CVJYP50t.js";
3
3
  import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
4
4
  const matrixSetupPlugin = {
5
5
  id: "matrix",
@@ -13,7 +13,7 @@ const matrixSetupPlugin = {
13
13
  order: 70,
14
14
  quickstartAllowFrom: true
15
15
  },
16
- setupWizard: createMatrixSetupWizardProxy(async () => ({ matrixSetupWizard: (await import("./setup-surface-DwudaOZp.js").then((n) => n.t)).matrixSetupWizard })),
16
+ setupWizard: createMatrixSetupWizardProxy(async () => ({ matrixSetupWizard: (await import("./setup-surface-CqxGV1WL.js").then((n) => n.t)).matrixSetupWizard })),
17
17
  setup: matrixSetupAdapter,
18
18
  capabilities: {
19
19
  chatTypes: [
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
2
  import { n as requiresExplicitMatrixDefaultAccount } from "./account-selection-DEMtY2cn.js";
3
3
  import { c as resolveMatrixAccountConfig, t as resolveMatrixConfigFieldPath } from "./config-paths-ZBCMwSos.js";
4
4
  import { r as resolveMatrixEnvAuthReadiness } from "./env-auth-DIzOApj0.js";
5
- import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, i as moveSingleMatrixAccountConfigToNamedAccount, l as updateMatrixAccountConfig, p as listMatrixAccountIds, r as resolveMatrixSetupDmAllowFrom } from "./setup-core-CHX8Zcxh.js";
5
+ import { g as resolveMatrixAccount, h as resolveDefaultMatrixAccountId, i as moveSingleMatrixAccountConfigToNamedAccount, l as updateMatrixAccountConfig, p as listMatrixAccountIds, r as resolveMatrixSetupDmAllowFrom } from "./setup-core-DJosJdWt.js";
6
6
  import { n as validateMatrixHomeserverUrl, r as isPrivateOrLoopbackHost, t as resolveValidatedMatrixHomeserverUrl } from "./url-validation-GRHde6lq.js";
7
7
  import { n as ensureMatrixSdkInstalled, r as isMatrixSdkAvailable } from "./deps-BVWGd2XS.js";
8
8
  import { normalizeLowercaseStringOrEmpty, normalizeOptionalString, normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -104,7 +104,7 @@ async function promptMatrixAllowFrom(params) {
104
104
  pending.push(part);
105
105
  }
106
106
  if (pending.length > 0) {
107
- const { resolveMatrixTargets } = await import("./resolve-targets-BjEKWSku.js").then((n) => n.n);
107
+ const { resolveMatrixTargets } = await import("./resolve-targets-CAwsoBQK.js").then((n) => n.n);
108
108
  const results = await resolveMatrixTargets({
109
109
  cfg,
110
110
  accountId,
@@ -232,7 +232,7 @@ async function configureMatrixAccessPrompts(params) {
232
232
  resolvedIds.push(cleaned);
233
233
  continue;
234
234
  }
235
- const { listMatrixDirectoryGroupsLive } = await import("./directory-live-D0OsjRmq.js").then((n) => n.t);
235
+ const { listMatrixDirectoryGroupsLive } = await import("./directory-live-5uWtLQ41.js").then((n) => n.t);
236
236
  const matches = await listMatrixDirectoryGroupsLive({
237
237
  cfg: next,
238
238
  accountId: params.accountId,
@@ -507,7 +507,7 @@ const matrixOnboardingAdapter = {
507
507
  });
508
508
  },
509
509
  afterConfigWritten: async ({ previousCfg, cfg, accountId, runtime }) => {
510
- const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-D3tm10tD.js");
510
+ const { runMatrixSetupBootstrapAfterConfigWrite } = await import("./setup-bootstrap-B4xc58Ww.js");
511
511
  await runMatrixSetupBootstrapAfterConfigWrite({
512
512
  previousCfg,
513
513
  cfg,
@@ -22,7 +22,7 @@ let matrixCredentialsWriteRuntimePromise;
22
22
  let matrixSecretInputDepsPromise;
23
23
  const MATRIX_AUTH_REQUEST_RETRY_RE = /\b(fetch failed|econnreset|econnrefused|enotfound|etimedout|ehostunreach|enetunreach|eai_again|und_err_|socket hang up|network|headers timeout|body timeout|connect timeout)\b/i;
24
24
  async function loadMatrixAuthClientDeps() {
25
- matrixAuthClientDepsPromise ??= Promise.all([import("./sdk-BmcTTd2D.js"), import("./logging-6apMqI4e.js")]).then(([sdkModule, loggingModule]) => ({
25
+ matrixAuthClientDepsPromise ??= Promise.all([import("./sdk-BdCZ5WwA.js"), import("./logging-Cm8vxO3E.js")]).then(([sdkModule, loggingModule]) => ({
26
26
  MatrixClient: sdkModule.MatrixClient,
27
27
  ensureMatrixSdkLoggingConfigured: loggingModule.ensureMatrixSdkLoggingConfigured
28
28
  }));
@@ -576,7 +576,7 @@ var shared_exports = /* @__PURE__ */ __exportAll({
576
576
  });
577
577
  let matrixCreateClientDepsPromise;
578
578
  async function loadMatrixCreateClientDeps() {
579
- matrixCreateClientDepsPromise ??= import("./create-client-D4x1reLU.js").then((n) => n.n).then((runtime) => ({ createMatrixClient: runtime.createMatrixClient }));
579
+ matrixCreateClientDepsPromise ??= import("./create-client-B90Sb7LG.js").then((n) => n.n).then((runtime) => ({ createMatrixClient: runtime.createMatrixClient }));
580
580
  return await matrixCreateClientDepsPromise;
581
581
  }
582
582
  const sharedClientStates = /* @__PURE__ */ new Map();
@@ -1,7 +1,7 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
2
  import { t as formatMatrixErrorMessage } from "./errors-C47hvAF8.js";
3
3
  import { o as resolveMatrixStoragePaths, r as recordCurrentStorageMetaDeviceId } from "./storage-DSVcH_zM.js";
4
- import { n as resolveMatrixSqliteStateEnv } from "./thread-bindings-xGy-RpZ_.js";
4
+ import { n as resolveMatrixSqliteStateEnv } from "./thread-bindings-gLQYbsB9.js";
5
5
  import path from "node:path";
6
6
  import { createHash } from "node:crypto";
7
7
  import { timestampMsToIsoString } from "openclaw/plugin-sdk/number-runtime";
@@ -1,7 +1,7 @@
1
1
  import { t as getMatrixRuntime } from "./runtime-6S3DNFNv.js";
2
2
  import { a as listBindingsForAccount, c as resolveBindingKey, f as setMatrixThreadBindingManagerEntry, h as toSessionBindingRecord, l as resolveEffectiveBindingExpiry, m as toMatrixBindingTargetKind, o as removeBindingRecord, r as getMatrixThreadBindingManagerEntry, t as deleteMatrixThreadBindingManagerEntry, u as setBindingRecord } from "./thread-bindings-shared-CKnY4LSd.js";
3
3
  import { a as resolveMatrixStateFilePath, t as claimCurrentTokenStorageState } from "./storage-DSVcH_zM.js";
4
- import { a as sendMessageMatrix } from "./send-BAtT4Rtk.js";
4
+ import { a as sendMessageMatrix } from "./send-DEgWxp1p.js";
5
5
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -1,12 +1,12 @@
1
1
  import { c as resolveMatrixAccountConfig } from "./config-paths-ZBCMwSos.js";
2
- import "./setup-core-CHX8Zcxh.js";
3
- import { E as parsePollStart, T as isPollStartType, b as buildPollResponseContent, i as reactMatrixMessage, u as resolveMatrixRoomId } from "./send-BAtT4Rtk.js";
2
+ import "./setup-core-DJosJdWt.js";
3
+ import { E as parsePollStart, T as isPollStartType, b as buildPollResponseContent, i as reactMatrixMessage, u as resolveMatrixRoomId } from "./send-DEgWxp1p.js";
4
4
  import { i as buildMatrixReactionRelationsPath, o as selectOwnMatrixReactionEventIds, s as summarizeMatrixReactionEvents } from "./reaction-common-DkrQdBSZ.js";
5
- import { n as withResolvedActionClient, r as withResolvedRoomAction } from "./client-BT3pHI8c.js";
6
- import { a as fetchEventSummary, c as resolveMatrixActionLimit, i as sendMatrixMessage, n as editMatrixMessage, o as readPinnedEvents, r as readMatrixMessages, s as EventType, t as deleteMatrixMessage } from "./messages-CnMMyKaw.js";
5
+ import { n as withResolvedActionClient, r as withResolvedRoomAction } from "./client-CdP9vWOu.js";
6
+ import { a as fetchEventSummary, c as resolveMatrixActionLimit, i as sendMatrixMessage, n as editMatrixMessage, o as readPinnedEvents, r as readMatrixMessages, s as EventType, t as deleteMatrixMessage } from "./messages-sk1eTx7H.js";
7
7
  import { a as jsonResult, c as readStringArrayParam, l as readStringParam, o as readPositiveIntegerParam, r as createActionGate, s as readReactionParams } from "./runtime-api-CsBoesCU.js";
8
- import { t as applyMatrixProfileUpdate } from "./profile-update-CdrpnVB1.js";
9
- import { _ as scanMatrixVerificationQr, a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, h as restoreMatrixRoomKeyBackup, i as confirmMatrixVerificationReciprocateQr, l as getMatrixVerificationSas, n as bootstrapMatrixVerification, o as generateMatrixVerificationQr, p as requestMatrixVerification, r as cancelMatrixVerification, s as getMatrixEncryptionStatus, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-DEaJQn5O.js";
8
+ import { t as applyMatrixProfileUpdate } from "./profile-update-rzynJvpi.js";
9
+ import { _ as scanMatrixVerificationQr, a as confirmMatrixVerificationSas, b as verifyMatrixRecoveryKey, c as getMatrixRoomKeyBackupStatus, d as listMatrixVerifications, f as mismatchMatrixVerificationSas, h as restoreMatrixRoomKeyBackup, i as confirmMatrixVerificationReciprocateQr, l as getMatrixVerificationSas, n as bootstrapMatrixVerification, o as generateMatrixVerificationQr, p as requestMatrixVerification, r as cancelMatrixVerification, s as getMatrixEncryptionStatus, t as acceptMatrixVerification, u as getMatrixVerificationStatus, v as startMatrixVerification } from "./verification-BiA5IWPK.js";
10
10
  import { normalizeOptionalLowercaseString, uniqueStrings, uniqueValues } from "openclaw/plugin-sdk/string-coerce-runtime";
11
11
  //#region extensions/matrix/src/matrix/actions/polls.ts
12
12
  function normalizeOptionIndexes(indexes) {
@@ -335,12 +335,14 @@ async function handleMatrixAction(params, cfg, opts = {}) {
335
335
  const limit = readPositiveIntegerParam(params, "limit", { message: "limit must be a positive integer." });
336
336
  const before = readStringParam(params, "before");
337
337
  const after = readStringParam(params, "after");
338
+ const threadId = readStringParam(params, "threadId");
338
339
  return jsonResult({
339
340
  ok: true,
340
341
  ...await readMatrixMessages(roomId, {
341
342
  limit: limit ?? void 0,
342
343
  before: before ?? void 0,
343
344
  after: after ?? void 0,
345
+ threadId: threadId ?? void 0,
344
346
  ...clientOpts
345
347
  })
346
348
  });
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as withStartedActionClient, n as withResolvedActionClient } from "./client-BT3pHI8c.js";
2
+ import { i as withStartedActionClient, n as withResolvedActionClient } from "./client-CdP9vWOu.js";
3
3
  import { n as formatMatrixEncryptionUnavailableError } from "./encryption-guidance-aEUzD940.js";
4
4
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
5
5
  import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@openclaw/matrix",
3
- "version": "2026.6.2-beta.1",
3
+ "version": "2026.6.5-beta.1",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@openclaw/matrix",
9
- "version": "2026.6.2-beta.1",
9
+ "version": "2026.6.5-beta.1",
10
10
  "dependencies": {
11
11
  "@matrix-org/matrix-sdk-crypto-nodejs": "0.6.0",
12
12
  "@matrix-org/matrix-sdk-crypto-wasm": "18.3.0",
@@ -18,7 +18,7 @@
18
18
  "zod": "4.4.3"
19
19
  },
20
20
  "peerDependencies": {
21
- "openclaw": ">=2026.6.2-beta.1"
21
+ "openclaw": ">=2026.6.5-beta.1"
22
22
  },
23
23
  "peerDependenciesMeta": {
24
24
  "openclaw": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/matrix",
3
- "version": "2026.6.2-beta.1",
3
+ "version": "2026.6.5-beta.1",
4
4
  "description": "OpenClaw Matrix channel plugin for rooms and direct messages.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,7 +18,7 @@
18
18
  "zod": "4.4.3"
19
19
  },
20
20
  "peerDependencies": {
21
- "openclaw": ">=2026.6.2-beta.1"
21
+ "openclaw": ">=2026.6.5-beta.1"
22
22
  },
23
23
  "peerDependenciesMeta": {
24
24
  "openclaw": {
@@ -84,10 +84,10 @@
84
84
  "allowInvalidConfigRecovery": true
85
85
  },
86
86
  "compat": {
87
- "pluginApi": ">=2026.6.2-beta.1"
87
+ "pluginApi": ">=2026.6.5-beta.1"
88
88
  },
89
89
  "build": {
90
- "openclawVersion": "2026.6.2-beta.1"
90
+ "openclawVersion": "2026.6.5-beta.1"
91
91
  },
92
92
  "release": {
93
93
  "publishToClawHub": true,
@@ -1,3 +0,0 @@
1
- import { t as createMatrixClient } from "./create-client-D4x1reLU.js";
2
- import "./client-D8mT5W6r.js";
3
- export { createMatrixClient };