@openclaw/googlechat 2026.5.10-beta.1 → 2026.5.10-beta.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.
@@ -1,8 +1,8 @@
1
1
  import { safeParseJsonWithSchema, safeParseWithSchema } from "openclaw/plugin-sdk/extension-shared";
2
- import { normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
2
+ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { DEFAULT_ACCOUNT_ID, createAccountListHelpers, normalizeAccountId, resolveAccountEntry, resolveMergedAccountConfig } from "openclaw/plugin-sdk/account-resolution";
4
4
  import { isSecretRef } from "openclaw/plugin-sdk/secret-input";
5
- import { z } from "openclaw/plugin-sdk/zod";
5
+ import { z } from "zod";
6
6
  //#region extensions/googlechat/src/accounts.ts
7
7
  const ENV_SERVICE_ACCOUNT = "GOOGLE_CHAT_SERVICE_ACCOUNT";
8
8
  const ENV_SERVICE_ACCOUNT_FILE = "GOOGLE_CHAT_SERVICE_ACCOUNT_FILE";
@@ -1,7 +1,7 @@
1
- import { i as resolveGoogleChatAccount, t as listEnabledGoogleChatAccounts } from "./accounts-BbM9zX1S.js";
2
- import { P as getGoogleChatRuntime } from "./runtime-api-DMEzhesS.js";
3
- import { c as sendGoogleChatMessage, o as listGoogleChatReactions, r as deleteGoogleChatReaction, t as createGoogleChatReaction, u as uploadGoogleChatAttachment } from "./api-AErsImS_.js";
4
- import { i as resolveGoogleChatOutboundSpace } from "./targets-qggOq6n-.js";
1
+ import { i as resolveGoogleChatAccount, t as listEnabledGoogleChatAccounts } from "./accounts-Dt3H6z0l.js";
2
+ import { P as getGoogleChatRuntime } from "./runtime-api-CAQFEJsQ.js";
3
+ import { c as sendGoogleChatMessage, o as listGoogleChatReactions, r as deleteGoogleChatReaction, t as createGoogleChatReaction, u as uploadGoogleChatAttachment } from "./api-DubPSfme.js";
4
+ import { i as resolveGoogleChatOutboundSpace } from "./targets-C_U5SbnT.js";
5
5
  import { extractToolSend } from "openclaw/plugin-sdk/tool-send";
6
6
  import { createActionGate, jsonResult, readNumberParam, readReactionParams, readStringParam } from "openclaw/plugin-sdk/channel-actions";
7
7
  import { loadOutboundMediaFromUrl } from "openclaw/plugin-sdk/outbound-media";
@@ -1,9 +1,10 @@
1
- import { m as fetchWithSsrFGuard$1 } from "./runtime-api-DMEzhesS.js";
2
- import { normalizeLowercaseStringOrEmpty, resolveUserPath } from "openclaw/plugin-sdk/text-runtime";
1
+ import { m as fetchWithSsrFGuard$1 } from "./runtime-api-CAQFEJsQ.js";
2
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import crypto from "node:crypto";
4
4
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
5
5
  import { buildHostnameAllowlistPolicyFromSuffixAllowlist, fetchWithSsrFGuard } from "openclaw/plugin-sdk/ssrf-runtime";
6
6
  import fs from "node:fs/promises";
7
+ import { resolveUserPath } from "openclaw/plugin-sdk/text-utility-runtime";
7
8
  //#region extensions/googlechat/src/google-auth.runtime.ts
8
9
  const GOOGLE_AUTH_POLICY = buildHostnameAllowlistPolicyFromSuffixAllowlist(["accounts.google.com", "googleapis.com"]);
9
10
  const GOOGLE_AUTH_AUDIT_CONTEXT = "googlechat.auth.google-auth";
package/dist/api.js CHANGED
@@ -1,3 +1,3 @@
1
- import { t as googlechatPlugin } from "./channel-9lvRWX6T.js";
2
- import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-S4ArLnR8.js";
1
+ import { t as googlechatPlugin } from "./channel-DoEjIr9p.js";
2
+ import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-HU4P5FzD.js";
3
3
  export { googlechatPlugin, googlechatSetupAdapter, googlechatSetupWizard };
@@ -1,9 +1,9 @@
1
- import { a as resolveGoogleChatConfigAccessorAccount, i as resolveGoogleChatAccount, n as listGoogleChatAccountIds, r as resolveDefaultGoogleChatAccountId } from "./accounts-BbM9zX1S.js";
2
- import { T as resolveChannelMediaMaxBytes, _ as loadOutboundMediaFromUrl, a as buildChannelConfigSchema, i as PAIRING_APPROVED_MESSAGE, o as chunkTextForOutbound, p as fetchRemoteMedia, r as GoogleChatConfigSchema, t as DEFAULT_ACCOUNT_ID, v as missingTargetError } from "./runtime-api-DMEzhesS.js";
3
- import { i as resolveGoogleChatOutboundSpace, n as isGoogleChatUserTarget, r as normalizeGoogleChatTarget, t as isGoogleChatSpaceTarget } from "./targets-qggOq6n-.js";
1
+ import { a as resolveGoogleChatConfigAccessorAccount, i as resolveGoogleChatAccount, n as listGoogleChatAccountIds, r as resolveDefaultGoogleChatAccountId } from "./accounts-Dt3H6z0l.js";
2
+ import { T as resolveChannelMediaMaxBytes, _ as loadOutboundMediaFromUrl, a as buildChannelConfigSchema, i as PAIRING_APPROVED_MESSAGE, o as chunkTextForOutbound, p as fetchRemoteMedia, r as GoogleChatConfigSchema, t as DEFAULT_ACCOUNT_ID, v as missingTargetError } from "./runtime-api-CAQFEJsQ.js";
3
+ import { i as resolveGoogleChatOutboundSpace, n as isGoogleChatUserTarget, r as normalizeGoogleChatTarget, t as isGoogleChatSpaceTarget } from "./targets-C_U5SbnT.js";
4
4
  import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./doctor-contract-BsERSjSe.js";
5
5
  import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-DLAG2_NI.js";
6
- import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-S4ArLnR8.js";
6
+ import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-HU4P5FzD.js";
7
7
  import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
8
8
  import { formatNormalizedAllowFromEntries } from "openclaw/plugin-sdk/allow-from";
9
9
  import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
@@ -13,7 +13,7 @@ import { createLazyRuntimeNamedExport } from "openclaw/plugin-sdk/lazy-runtime";
13
13
  import { createComputedAccountStatusAdapter, createDefaultChannelRuntimeState } from "openclaw/plugin-sdk/status-helpers";
14
14
  import { extractToolSend } from "openclaw/plugin-sdk/tool-send";
15
15
  import { createResolvedApproverActionAuthAdapter, resolveApprovalApprovers } from "openclaw/plugin-sdk/approval-auth-runtime";
16
- import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
16
+ import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
17
17
  import { createAccountStatusSink, runPassiveAccountLifecycle } from "openclaw/plugin-sdk/channel-lifecycle";
18
18
  import { createMessageReceiptFromOutboundResults, defineChannelMessageAdapter } from "openclaw/plugin-sdk/channel-message";
19
19
  import { composeAccountWarningCollectors, createAllowlistProviderOpenWarningCollector, createDangerousNameMatchingMutableAllowlistWarningCollector, resolveChannelGroupRequireMention } from "openclaw/plugin-sdk/channel-policy";
@@ -54,7 +54,7 @@ function resolveGoogleChatGroupRequireMention(params) {
54
54
  }
55
55
  //#endregion
56
56
  //#region extensions/googlechat/src/channel.adapters.ts
57
- const loadGoogleChatChannelRuntime$2 = createLazyRuntimeNamedExport(() => import("./channel.runtime-CK4QbJkn.js"), "googleChatChannelRuntime");
57
+ const loadGoogleChatChannelRuntime$2 = createLazyRuntimeNamedExport(() => import("./channel.runtime-DMNTL2NR.js"), "googleChatChannelRuntime");
58
58
  function createGoogleChatSendReceipt(params) {
59
59
  const messageId = params.messageId?.trim();
60
60
  return createMessageReceiptFromOutboundResults({
@@ -295,7 +295,7 @@ const collectGoogleChatMutableAllowlistWarnings = createDangerousNameMatchingMut
295
295
  });
296
296
  //#endregion
297
297
  //#region extensions/googlechat/src/gateway.ts
298
- const loadGoogleChatChannelRuntime$1 = createLazyRuntimeNamedExport(() => import("./channel.runtime-CK4QbJkn.js"), "googleChatChannelRuntime");
298
+ const loadGoogleChatChannelRuntime$1 = createLazyRuntimeNamedExport(() => import("./channel.runtime-DMNTL2NR.js"), "googleChatChannelRuntime");
299
299
  async function startGoogleChatGatewayAccount(ctx) {
300
300
  const account = ctx.account;
301
301
  const statusSink = createAccountStatusSink({
@@ -335,7 +335,7 @@ async function startGoogleChatGatewayAccount(ctx) {
335
335
  }
336
336
  //#endregion
337
337
  //#region extensions/googlechat/src/channel.ts
338
- const loadGoogleChatChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-CK4QbJkn.js"), "googleChatChannelRuntime");
338
+ const loadGoogleChatChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-DMNTL2NR.js"), "googleChatChannelRuntime");
339
339
  const meta = {
340
340
  id: "googlechat",
341
341
  label: "Google Chat",
@@ -391,7 +391,7 @@ const googlechatActions = {
391
391
  },
392
392
  extractToolSend: ({ args }) => extractToolSend(args, "sendMessage"),
393
393
  handleAction: async (ctx) => {
394
- const { googlechatMessageActions } = await import("./actions-D-PNwmYx.js");
394
+ const { googlechatMessageActions } = await import("./actions-nBGKFgiH.js");
395
395
  if (!googlechatMessageActions.handleAction) throw new Error("Google Chat actions are not available.");
396
396
  return await googlechatMessageActions.handleAction(ctx);
397
397
  }
@@ -1,4 +1,5 @@
1
- import { a as buildChannelConfigSchema, r as GoogleChatConfigSchema } from "./runtime-api-DMEzhesS.js";
1
+ import { buildChannelConfigSchema } from "openclaw/plugin-sdk/channel-config-primitives";
2
+ import { GoogleChatConfigSchema } from "openclaw/plugin-sdk/bundled-channel-config-schema";
2
3
  //#region extensions/googlechat/src/config-schema.ts
3
4
  const GoogleChatChannelConfigSchema = buildChannelConfigSchema(GoogleChatConfigSchema);
4
5
  //#endregion
@@ -1,2 +1,2 @@
1
- import { t as googlechatPlugin } from "./channel-9lvRWX6T.js";
1
+ import { t as googlechatPlugin } from "./channel-DoEjIr9p.js";
2
2
  export { googlechatPlugin };
@@ -1,6 +1,6 @@
1
- import { E as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, O as resolveInboundRouteEnvelopeBuilderWithRuntime, P as getGoogleChatRuntime, h as isDangerousNameMatchingEnabled, k as resolveWebhookPath, n as GROUP_POLICY_BLOCKED_LABEL, u as createChannelPairingController, w as resolveAllowlistProviderRuntimeGroupPolicy } from "./runtime-api-DMEzhesS.js";
2
- import { c as sendGoogleChatMessage, d as verifyGoogleChatRequest, i as downloadGoogleChatMedia, l as updateGoogleChatMessage, n as deleteGoogleChatMessage, s as probeGoogleChat, u as uploadGoogleChatAttachment } from "./api-AErsImS_.js";
3
- import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/text-runtime";
1
+ import { E as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, O as resolveInboundRouteEnvelopeBuilderWithRuntime, P as getGoogleChatRuntime, h as isDangerousNameMatchingEnabled, k as resolveWebhookPath, n as GROUP_POLICY_BLOCKED_LABEL, u as createChannelPairingController, w as resolveAllowlistProviderRuntimeGroupPolicy } from "./runtime-api-CAQFEJsQ.js";
2
+ import { c as sendGoogleChatMessage, d as verifyGoogleChatRequest, i as downloadGoogleChatMedia, l as updateGoogleChatMessage, n as deleteGoogleChatMessage, s as probeGoogleChat, u as uploadGoogleChatAttachment } from "./api-DubPSfme.js";
3
+ import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
4
4
  import { registerWebhookTargetWithPluginRoute, resolveWebhookTargetWithAuthOrReject, withResolvedWebhookRequestPipeline } from "openclaw/plugin-sdk/webhook-targets";
5
5
  import { createWebhookInFlightLimiter, readJsonWebhookBodyOrReject } from "openclaw/plugin-sdk/webhook-request-guards";
6
6
  import { channelIngressRoutes, createChannelIngressResolver, defineStableChannelIngressIdentity } from "openclaw/plugin-sdk/channel-ingress-runtime";
@@ -16,7 +16,7 @@ import { fetchRemoteMedia, resolveChannelMediaMaxBytes } from "openclaw/plugin-s
16
16
  import { loadOutboundMediaFromUrl as loadOutboundMediaFromUrl$1 } from "openclaw/plugin-sdk/outbound-media";
17
17
  import { resolveInboundMentionDecision } from "openclaw/plugin-sdk/channel-inbound";
18
18
  import { resolveInboundRouteEnvelopeBuilderWithRuntime } from "openclaw/plugin-sdk/inbound-envelope";
19
- import { resolveWebhookPath } from "openclaw/plugin-sdk/webhook-path";
19
+ import { resolveWebhookPath } from "openclaw/plugin-sdk/webhook-ingress";
20
20
  import { registerWebhookTargetWithPluginRoute as registerWebhookTargetWithPluginRoute$1, resolveWebhookTargetWithAuthOrReject as resolveWebhookTargetWithAuthOrReject$1, withResolvedWebhookRequestPipeline as withResolvedWebhookRequestPipeline$1 } from "openclaw/plugin-sdk/webhook-targets";
21
21
  import { createWebhookInFlightLimiter as createWebhookInFlightLimiter$1, readJsonWebhookBodyOrReject as readJsonWebhookBodyOrReject$1 } from "openclaw/plugin-sdk/webhook-request-guards";
22
22
  import { createPluginRuntimeStore } from "openclaw/plugin-sdk/runtime-store";
@@ -1,2 +1,2 @@
1
- import { A as resolveWebhookTargetWithAuthOrReject, C as registerWebhookTargetWithPluginRoute, D as resolveInboundMentionDecision, E as resolveDefaultGroupPolicy, F as setGoogleChatRuntime, M as warnMissingProviderGroupPolicyFallbackOnce, N as withResolvedWebhookRequestPipeline, O as resolveInboundRouteEnvelopeBuilderWithRuntime, S as readStringParam, T as resolveChannelMediaMaxBytes, _ as loadOutboundMediaFromUrl, a as buildChannelConfigSchema, b as readNumberParam, c as createActionGate, d as createWebhookInFlightLimiter, f as extractToolSend, g as jsonResult, h as isDangerousNameMatchingEnabled, i as PAIRING_APPROVED_MESSAGE, j as runPassiveAccountLifecycle, k as resolveWebhookPath, l as createChannelMessageReplyPipeline, m as fetchWithSsrFGuard, n as GROUP_POLICY_BLOCKED_LABEL, o as chunkTextForOutbound, p as fetchRemoteMedia, r as GoogleChatConfigSchema, s as createAccountStatusSink, t as DEFAULT_ACCOUNT_ID, u as createChannelPairingController, v as missingTargetError, w as resolveAllowlistProviderRuntimeGroupPolicy, x as readReactionParams, y as readJsonWebhookBodyOrReject } from "./runtime-api-DMEzhesS.js";
1
+ import { A as resolveWebhookTargetWithAuthOrReject, C as registerWebhookTargetWithPluginRoute, D as resolveInboundMentionDecision, E as resolveDefaultGroupPolicy, F as setGoogleChatRuntime, M as warnMissingProviderGroupPolicyFallbackOnce, N as withResolvedWebhookRequestPipeline, O as resolveInboundRouteEnvelopeBuilderWithRuntime, S as readStringParam, T as resolveChannelMediaMaxBytes, _ as loadOutboundMediaFromUrl, a as buildChannelConfigSchema, b as readNumberParam, c as createActionGate, d as createWebhookInFlightLimiter, f as extractToolSend, g as jsonResult, h as isDangerousNameMatchingEnabled, i as PAIRING_APPROVED_MESSAGE, j as runPassiveAccountLifecycle, k as resolveWebhookPath, l as createChannelMessageReplyPipeline, m as fetchWithSsrFGuard, n as GROUP_POLICY_BLOCKED_LABEL, o as chunkTextForOutbound, p as fetchRemoteMedia, r as GoogleChatConfigSchema, s as createAccountStatusSink, t as DEFAULT_ACCOUNT_ID, u as createChannelPairingController, v as missingTargetError, w as resolveAllowlistProviderRuntimeGroupPolicy, x as readReactionParams, y as readJsonWebhookBodyOrReject } from "./runtime-api-CAQFEJsQ.js";
2
2
  export { DEFAULT_ACCOUNT_ID, GROUP_POLICY_BLOCKED_LABEL, GoogleChatConfigSchema, PAIRING_APPROVED_MESSAGE, buildChannelConfigSchema, chunkTextForOutbound, createAccountStatusSink, createActionGate, createChannelMessageReplyPipeline, createChannelPairingController, createWebhookInFlightLimiter, extractToolSend, fetchRemoteMedia, fetchWithSsrFGuard, isDangerousNameMatchingEnabled, jsonResult, loadOutboundMediaFromUrl, missingTargetError, readJsonWebhookBodyOrReject, readNumberParam, readReactionParams, readStringParam, registerWebhookTargetWithPluginRoute, resolveAllowlistProviderRuntimeGroupPolicy, resolveChannelMediaMaxBytes, resolveDefaultGroupPolicy, resolveInboundMentionDecision, resolveInboundRouteEnvelopeBuilderWithRuntime, resolveWebhookPath, resolveWebhookTargetWithAuthOrReject, runPassiveAccountLifecycle, setGoogleChatRuntime, warnMissingProviderGroupPolicyFallbackOnce, withResolvedWebhookRequestPipeline };
@@ -1,9 +1,9 @@
1
- import { a as resolveGoogleChatConfigAccessorAccount, i as resolveGoogleChatAccount, n as listGoogleChatAccountIds, r as resolveDefaultGoogleChatAccountId } from "./accounts-BbM9zX1S.js";
2
- import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-S4ArLnR8.js";
1
+ import { a as resolveGoogleChatConfigAccessorAccount, i as resolveGoogleChatAccount, n as listGoogleChatAccountIds, r as resolveDefaultGoogleChatAccountId } from "./accounts-Dt3H6z0l.js";
2
+ import { n as googlechatSetupAdapter, t as googlechatSetupWizard } from "./setup-surface-HU4P5FzD.js";
3
3
  import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
4
4
  import { formatNormalizedAllowFromEntries } from "openclaw/plugin-sdk/allow-from";
5
5
  import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
6
- import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
6
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
7
7
  //#region extensions/googlechat/src/channel.setup.ts
8
8
  const formatGoogleChatAllowFromEntry = (entry) => normalizeLowercaseStringOrEmpty(entry.trim().replace(/^(googlechat|google-chat|gchat):/i, "").replace(/^user:/i, "").replace(/^users\//i, ""));
9
9
  const googlechatSetupPlugin = {
@@ -1,5 +1,5 @@
1
- import { i as resolveGoogleChatAccount, r as resolveDefaultGoogleChatAccountId } from "./accounts-BbM9zX1S.js";
2
- import { normalizeOptionalString, normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/text-runtime";
1
+ import { i as resolveGoogleChatAccount, r as resolveDefaultGoogleChatAccountId } from "./accounts-Dt3H6z0l.js";
2
+ import { normalizeOptionalString, normalizeStringifiedOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  import { createPatchedAccountSetupAdapter, createSetupInputPresenceValidator } from "openclaw/plugin-sdk/setup-runtime";
4
4
  import { DEFAULT_ACCOUNT_ID, addWildcardAllowFrom, applySetupAccountConfigPatch, createPromptParsedAllowFromForAccount, createStandardChannelSetupStatus, formatDocsLink, mergeAllowFromEntries, migrateBaseNameToDefaultAccount, splitSetupEntries } from "openclaw/plugin-sdk/setup";
5
5
  const googlechatSetupAdapter = createPatchedAccountSetupAdapter({
@@ -1,5 +1,5 @@
1
- import { a as findGoogleChatDirectMessage } from "./api-AErsImS_.js";
2
- import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
1
+ import { a as findGoogleChatDirectMessage } from "./api-DubPSfme.js";
2
+ import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  //#region extensions/googlechat/src/targets.ts
4
4
  function normalizeGoogleChatTarget(raw) {
5
5
  const trimmed = raw?.trim();
package/dist/test-api.js CHANGED
@@ -1,3 +1,3 @@
1
- import { F as setGoogleChatRuntime } from "./runtime-api-DMEzhesS.js";
2
- import { t as googlechatPlugin } from "./channel-9lvRWX6T.js";
1
+ import { F as setGoogleChatRuntime } from "./runtime-api-CAQFEJsQ.js";
2
+ import { t as googlechatPlugin } from "./channel-DoEjIr9p.js";
3
3
  export { googlechatPlugin, setGoogleChatRuntime };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/googlechat",
3
- "version": "2026.5.10-beta.1",
3
+ "version": "2026.5.10-beta.3",
4
4
  "description": "OpenClaw Google Chat channel plugin",
5
5
  "repository": {
6
6
  "type": "git",
@@ -9,14 +9,15 @@
9
9
  "type": "module",
10
10
  "dependencies": {
11
11
  "gaxios": "7.1.4",
12
- "google-auth-library": "10.6.2"
12
+ "google-auth-library": "10.6.2",
13
+ "zod": "^4.4.3"
13
14
  },
14
15
  "devDependencies": {
15
16
  "@openclaw/plugin-sdk": "workspace:*",
16
17
  "openclaw": "workspace:*"
17
18
  },
18
19
  "peerDependencies": {
19
- "openclaw": ">=2026.5.10-beta.1"
20
+ "openclaw": ">=2026.5.10-beta.3"
20
21
  },
21
22
  "peerDependenciesMeta": {
22
23
  "openclaw": {
@@ -74,10 +75,10 @@
74
75
  "minHostVersion": ">=2026.4.10"
75
76
  },
76
77
  "compat": {
77
- "pluginApi": ">=2026.5.10-beta.1"
78
+ "pluginApi": ">=2026.5.10-beta.3"
78
79
  },
79
80
  "build": {
80
- "openclawVersion": "2026.5.10-beta.1"
81
+ "openclawVersion": "2026.5.10-beta.3"
81
82
  },
82
83
  "release": {
83
84
  "publishToClawHub": true,