@openclaw/feishu 2026.6.6-beta.1 → 2026.6.6

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.
package/dist/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { r as listEnabledFeishuAccounts } from "./accounts-Cfzht2Hc.js";
2
- import { a as setFeishuNamedAccountEnabled, i as feishuSetupAdapter, n as feishuSetupWizard, r as runFeishuLogin, t as feishuPlugin } from "./channel-C12YJWma.js";
2
+ import { a as setFeishuNamedAccountEnabled, i as feishuSetupAdapter, n as feishuSetupWizard, r as runFeishuLogin, t as feishuPlugin } from "./channel-BYCCZN1h.js";
3
3
  import { a as parseFeishuTargetId, i as parseFeishuDirectConversationId, n as buildFeishuModelOverrideParentCandidates, r as parseFeishuConversationId, t as buildFeishuConversationId } from "./conversation-id-DuL575sn.js";
4
4
  import { t as getFeishuRuntime } from "./runtime-C5JxBWZp.js";
5
5
  import { r as createFeishuClient } from "./client-BhMNZBJD.js";
@@ -1735,7 +1735,7 @@ const meta = {
1735
1735
  order: 70,
1736
1736
  preferSessionLookupForAnnounceTarget: true
1737
1737
  };
1738
- const loadFeishuChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-0ZIJU_gd.js"), "feishuChannelRuntime");
1738
+ const loadFeishuChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-DACJbxhN.js"), "feishuChannelRuntime");
1739
1739
  function toFeishuMessageSendResult(result, kind) {
1740
1740
  const receipt = result.receipt ?? createFeishuSendReceipt({
1741
1741
  messageId: result.messageId,
@@ -2551,7 +2551,7 @@ const feishuPlugin = createChatChannelPlugin({
2551
2551
  })
2552
2552
  }),
2553
2553
  gateway: { startAccount: async (ctx) => {
2554
- const { monitorFeishuProvider } = await import("./monitor-CGEk-il1.js");
2554
+ const { monitorFeishuProvider } = await import("./monitor-D6ePNz_R.js");
2555
2555
  const account = resolveFeishuRuntimeAccount({
2556
2556
  cfg: ctx.cfg,
2557
2557
  accountId: ctx.accountId
@@ -1,2 +1,2 @@
1
- import { t as feishuPlugin } from "./channel-C12YJWma.js";
1
+ import { t as feishuPlugin } from "./channel-BYCCZN1h.js";
2
2
  export { feishuPlugin };
@@ -1,5 +1,5 @@
1
1
  import { o as resolveFeishuAccount, s as resolveFeishuRuntimeAccount, v as parseFeishuCommentTarget } from "./accounts-Cfzht2Hc.js";
2
- import { h as listFeishuDirectoryPeers, m as listFeishuDirectoryGroups, o as buildFeishuPresentationCardElements } from "./channel-C12YJWma.js";
2
+ import { h as listFeishuDirectoryPeers, m as listFeishuDirectoryGroups, o as buildFeishuPresentationCardElements } from "./channel-BYCCZN1h.js";
3
3
  import { r as createFeishuClient } from "./client-BhMNZBJD.js";
4
4
  import { c as getChatInfo, l as getChatMembers, r as cleanupAmbientCommentTypingReaction, t as deliverCommentThreadText, u as getFeishuMemberInfo } from "./drive-8o3Omlnd.js";
5
5
  import { chunkTextForOutbound } from "./runtime-api.js";
@@ -3,7 +3,7 @@ import { l as fetchBotIdentityForMonitor } from "./monitor.state-r4OLFBfg.js";
3
3
  //#region extensions/feishu/src/monitor.ts
4
4
  let monitorAccountRuntimePromise;
5
5
  async function loadMonitorAccountRuntime() {
6
- monitorAccountRuntimePromise ??= import("./monitor.account-DinhHyuc.js");
6
+ monitorAccountRuntimePromise ??= import("./monitor.account-Cl-QnhPV.js");
7
7
  return await monitorAccountRuntimePromise;
8
8
  }
9
9
  async function monitorFeishuProvider(opts = {}) {
@@ -1,6 +1,6 @@
1
1
  import { _ as normalizeCommentFileType, c as encodeQuery, d as isRecord$1, f as normalizeString, g as buildFeishuCommentTarget, h as requestFeishuApi, l as extractReplyText, m as readString, p as parseCommentContentElements, s as resolveFeishuRuntimeAccount } from "./accounts-Cfzht2Hc.js";
2
2
  import { i as resolveReceiveIdType } from "./targets-BUjQ1TcA.js";
3
- import { c as normalizeFeishuAllowEntry, d as resolveFeishuGroupConversationIngressAccess, f as resolveFeishuGroupSenderActivationIngressAccess, l as resolveFeishuDmIngressAccess, p as resolveFeishuReplyPolicy, s as hasExplicitFeishuGroupConfig, u as resolveFeishuGroupConfig } from "./channel-C12YJWma.js";
3
+ import { c as normalizeFeishuAllowEntry, d as resolveFeishuGroupConversationIngressAccess, f as resolveFeishuGroupSenderActivationIngressAccess, l as resolveFeishuDmIngressAccess, p as resolveFeishuReplyPolicy, s as hasExplicitFeishuGroupConfig, u as resolveFeishuGroupConfig } from "./channel-BYCCZN1h.js";
4
4
  import { c as decodeFeishuCardAction, o as buildFeishuCardActionTextFallback, s as createFeishuCardInteractionEnvelope } from "./send-result-DSsIa4-p.js";
5
5
  import { t as buildFeishuConversationId } from "./conversation-id-DuL575sn.js";
6
6
  import { t as getFeishuRuntime } from "./runtime-C5JxBWZp.js";
@@ -2309,7 +2309,11 @@ async function handleFeishuMessage(params) {
2309
2309
  const feishuTo = isGroup ? `chat:${ctx.chatId}` : `user:${ctx.senderOpenId}`;
2310
2310
  const peerId = isGroup ? groupSession?.peerId ?? ctx.chatId : ctx.senderOpenId;
2311
2311
  const parentPeer = isGroup ? groupSession?.parentPeer ?? null : null;
2312
- const replyInThread = isGroup ? groupSession?.replyInThread ?? false : false;
2312
+ const directThreadReply = !isGroup && Boolean(ctx.threadId?.trim());
2313
+ const defaultReplyTargetMessageId = ctx.replyTargetMessageId ?? (ctx.suppressReplyTarget ? void 0 : ctx.messageId);
2314
+ const directThreadRootId = directThreadReply ? ctx.rootId?.trim() || void 0 : void 0;
2315
+ const directThreadReplyTargetMessageId = directThreadReply ? directThreadRootId ?? defaultReplyTargetMessageId : void 0;
2316
+ const replyInThread = isGroup ? groupSession?.replyInThread ?? false : directThreadReply;
2313
2317
  const feishuAcpConversationSupported = !isGroup || groupSession?.groupSessionScope === "group_topic" || groupSession?.groupSessionScope === "group_topic_sender";
2314
2318
  if (isGroup && groupSession) log(`feishu[${account.accountId}]: group session scope=${groupSession.groupSessionScope}, peer=${peerId}`);
2315
2319
  let route = core.channel.routing.resolveAgentRoute({
@@ -2390,13 +2394,14 @@ async function handleFeishuMessage(params) {
2390
2394
  bindingResolution: configuredBinding
2391
2395
  });
2392
2396
  if (!ensured.ok) {
2393
- const replyTargetMessageId = isGroup && (groupSession?.groupSessionScope === "group_topic" || groupSession?.groupSessionScope === "group_topic_sender") ? ctx.rootId ?? ctx.messageId : ctx.messageId;
2397
+ const acpTopicReply = isGroup && (groupSession?.groupSessionScope === "group_topic" || groupSession?.groupSessionScope === "group_topic_sender");
2398
+ const replyTargetMessageId = directThreadReply ? directThreadReplyTargetMessageId : acpTopicReply ? ctx.rootId ?? ctx.messageId : ctx.messageId;
2394
2399
  await sendMessageFeishu({
2395
2400
  cfg: effectiveCfg,
2396
2401
  to: `chat:${ctx.chatId}`,
2397
2402
  text: `⚠️ Failed to initialize the configured ACP session for this Feishu conversation: ${ensured.error}`,
2398
2403
  replyToMessageId: replyTargetMessageId,
2399
- replyInThread: isGroup ? groupSession?.replyInThread ?? false : false,
2404
+ replyInThread,
2400
2405
  accountId: account.accountId
2401
2406
  }).catch((err) => {
2402
2407
  log(`feishu[${account.accountId}]: failed to send ACP init error reply: ${String(err)}`);
@@ -2701,8 +2706,9 @@ async function handleFeishuMessage(params) {
2701
2706
  };
2702
2707
  const isTopicSession = isGroup && (groupSession?.groupSessionScope === "group_topic" || groupSession?.groupSessionScope === "group_topic_sender");
2703
2708
  const configReplyInThread = isGroup && (groupConfig?.replyInThread ?? feishuCfg?.replyInThread ?? "disabled") === "enabled";
2704
- const replyTargetMessageId = isTopicSession || configReplyInThread ? ctx.rootId ?? ctx.replyTargetMessageId ?? (ctx.suppressReplyTarget ? void 0 : ctx.messageId) : ctx.replyTargetMessageId ?? (ctx.suppressReplyTarget ? void 0 : ctx.messageId);
2705
- const threadReply = isGroup ? groupSession?.threadReply ?? false : false;
2709
+ const topicReplyTargetMessageId = ctx.rootId ?? defaultReplyTargetMessageId;
2710
+ const replyTargetMessageId = directThreadReply ? directThreadReplyTargetMessageId : isTopicSession || configReplyInThread ? topicReplyTargetMessageId : defaultReplyTargetMessageId;
2711
+ const threadReply = isGroup ? groupSession?.threadReply ?? false : directThreadReply;
2706
2712
  const lastRouteThreadId = isGroup && (isTopicSession || configReplyInThread || threadReply) ? replyTargetMessageId : void 0;
2707
2713
  const pinnedMainDmOwner = !isGroup ? resolvePinnedMainDmOwnerFromAllowlist({
2708
2714
  dmScope: cfg.session?.dmScope,
@@ -2772,7 +2778,7 @@ async function handleFeishuMessage(params) {
2772
2778
  chatId: ctx.chatId,
2773
2779
  allowReasoningPreview,
2774
2780
  replyToMessageId: replyTargetMessageId,
2775
- skipReplyToInMessages: !isGroup,
2781
+ skipReplyToInMessages: !isGroup && !directThreadReply,
2776
2782
  replyInThread,
2777
2783
  rootId: ctx.rootId,
2778
2784
  threadReply,
@@ -2913,7 +2919,7 @@ async function handleFeishuMessage(params) {
2913
2919
  chatId: ctx.chatId,
2914
2920
  allowReasoningPreview,
2915
2921
  replyToMessageId: replyTargetMessageId,
2916
- skipReplyToInMessages: !isGroup,
2922
+ skipReplyToInMessages: !isGroup && !directThreadReply,
2917
2923
  replyInThread,
2918
2924
  rootId: ctx.rootId,
2919
2925
  threadReply,
package/dist/setup-api.js CHANGED
@@ -1,2 +1,2 @@
1
- import { i as feishuSetupAdapter, n as feishuSetupWizard, t as feishuPlugin } from "./channel-C12YJWma.js";
1
+ import { i as feishuSetupAdapter, n as feishuSetupWizard, t as feishuPlugin } from "./channel-BYCCZN1h.js";
2
2
  export { feishuPlugin, feishuSetupAdapter, feishuSetupWizard };
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@openclaw/feishu",
3
- "version": "2026.6.6-beta.1",
3
+ "version": "2026.6.6",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@openclaw/feishu",
9
- "version": "2026.6.6-beta.1",
9
+ "version": "2026.6.6",
10
10
  "dependencies": {
11
11
  "@larksuiteoapi/node-sdk": "1.66.0",
12
12
  "typebox": "1.1.39",
13
13
  "zod": "4.4.3"
14
14
  },
15
15
  "peerDependencies": {
16
- "openclaw": ">=2026.6.6-beta.1"
16
+ "openclaw": ">=2026.6.6"
17
17
  },
18
18
  "peerDependenciesMeta": {
19
19
  "openclaw": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/feishu",
3
- "version": "2026.6.6-beta.1",
3
+ "version": "2026.6.6",
4
4
  "description": "OpenClaw Feishu/Lark channel plugin for chats and workplace tools (community maintained by @m1heng).",
5
5
  "repository": {
6
6
  "type": "git",
@@ -13,7 +13,7 @@
13
13
  "zod": "4.4.3"
14
14
  },
15
15
  "peerDependencies": {
16
- "openclaw": ">=2026.6.6-beta.1"
16
+ "openclaw": ">=2026.6.6"
17
17
  },
18
18
  "peerDependenciesMeta": {
19
19
  "openclaw": {
@@ -47,10 +47,10 @@
47
47
  "minHostVersion": ">=2026.5.29"
48
48
  },
49
49
  "compat": {
50
- "pluginApi": ">=2026.6.6-beta.1"
50
+ "pluginApi": ">=2026.6.6"
51
51
  },
52
52
  "build": {
53
- "openclawVersion": "2026.6.6-beta.1"
53
+ "openclawVersion": "2026.6.6"
54
54
  },
55
55
  "release": {
56
56
  "publishToClawHub": true,