@openclaw/feishu 2026.5.18 → 2026.5.19-beta.2
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 +4 -4
- package/dist/{channel-elV7bWCs.js → channel-jWQWT5js.js} +6 -5
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.runtime-B80sZw_-.js → channel.runtime-Dmq7DpnS.js} +2 -2
- package/dist/contract-api.js +2 -2
- package/dist/{monitor-DyoC58EE.js → monitor-CfcgF5DQ.js} +1 -1
- package/dist/{monitor.account-ByWHSzXQ.js → monitor.account-Cg_HyFTF.js} +4 -4
- package/dist/{send-Br5Gy-dU.js → send-DYLn9mIe.js} +1 -1
- package/dist/setup-api.js +1 -1
- package/dist/{subagent-hooks-CdXCmxnp.js → subagent-hooks-DTTHB-s3.js} +1 -1
- package/dist/subagent-hooks-api.js +2 -2
- package/dist/{thread-bindings-D5kDxq_j.js → thread-bindings-MLidevCB.js} +2 -2
- package/package.json +4 -4
package/dist/api.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { a as parseFeishuTargetId, i as parseFeishuDirectConversationId, n as buildFeishuModelOverrideParentCandidates, r as parseFeishuConversationId, t as buildFeishuConversationId } from "./conversation-id-Byq1c20x.js";
|
|
2
|
-
import { n as
|
|
3
|
-
import { n as handleFeishuSubagentEnded, r as handleFeishuSubagentSpawning, t as handleFeishuSubagentDeliveryTarget } from "./subagent-hooks-
|
|
2
|
+
import { n as getFeishuThreadBindingManager, r as testing, t as createFeishuThreadBindingManager } from "./thread-bindings-MLidevCB.js";
|
|
3
|
+
import { n as handleFeishuSubagentEnded, r as handleFeishuSubagentSpawning, t as handleFeishuSubagentDeliveryTarget } from "./subagent-hooks-DTTHB-s3.js";
|
|
4
4
|
import { r as listEnabledFeishuAccounts } from "./accounts-QNGhjZeI.js";
|
|
5
|
-
import { a as setFeishuNamedAccountEnabled, i as feishuSetupAdapter, n as feishuSetupWizard, r as runFeishuLogin, t as feishuPlugin } from "./channel-
|
|
5
|
+
import { a as setFeishuNamedAccountEnabled, i as feishuSetupAdapter, n as feishuSetupWizard, r as runFeishuLogin, t as feishuPlugin } from "./channel-jWQWT5js.js";
|
|
6
6
|
import { t as getFeishuRuntime } from "./runtime-Cc16UY23.js";
|
|
7
7
|
import { a as jsonToolResult, d as registerFeishuChatTools, f as createFeishuToolClient, m as resolveFeishuToolAccount, n as registerFeishuDriveTools, o as toolExecutionErrorResult, p as resolveAnyEnabledFeishuToolsConfig, s as unknownToolActionResult } from "./drive-CzLQuxes.js";
|
|
8
8
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString, readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
@@ -2305,4 +2305,4 @@ function registerFeishuBitableTools(api) {
|
|
|
2305
2305
|
//#region extensions/feishu/api.ts
|
|
2306
2306
|
const feishuSessionBindingAdapterChannels = ["feishu"];
|
|
2307
2307
|
//#endregion
|
|
2308
|
-
export { __testing,
|
|
2308
|
+
export { testing as __testing, testing as feishuThreadBindingTesting, testing, buildFeishuConversationId, buildFeishuModelOverrideParentCandidates, createClackPrompter, createFeishuThreadBindingManager, feishuPlugin, feishuSessionBindingAdapterChannels, feishuSetupAdapter, feishuSetupWizard, getFeishuThreadBindingManager, handleFeishuSubagentDeliveryTarget, handleFeishuSubagentEnded, handleFeishuSubagentSpawning, parseFeishuConversationId, parseFeishuDirectConversationId, parseFeishuTargetId, registerFeishuBitableTools, registerFeishuChatTools, registerFeishuDocTools, registerFeishuDriveTools, registerFeishuPermTools, registerFeishuWikiTools, runFeishuLogin, setFeishuNamedAccountEnabled };
|
|
@@ -755,6 +755,7 @@ const feishuSetupAdapter = {
|
|
|
755
755
|
const t = createSetupTranslator();
|
|
756
756
|
const channel = "feishu";
|
|
757
757
|
const SCAN_TO_CREATE_TP = "ob_cli_app";
|
|
758
|
+
const FEISHU_SETUP_FLOW_KEY = "_flow";
|
|
758
759
|
function normalizeString(value) {
|
|
759
760
|
if (typeof value !== "string") return;
|
|
760
761
|
return value.trim() || void 0;
|
|
@@ -1125,16 +1126,16 @@ const feishuSetupWizard = {
|
|
|
1125
1126
|
prepare: async ({ cfg, credentialValues }) => {
|
|
1126
1127
|
if (isFeishuConfigured(cfg)) return { credentialValues: {
|
|
1127
1128
|
...credentialValues,
|
|
1128
|
-
|
|
1129
|
+
[FEISHU_SETUP_FLOW_KEY]: "edit"
|
|
1129
1130
|
} };
|
|
1130
1131
|
return { credentialValues: {
|
|
1131
1132
|
...credentialValues,
|
|
1132
|
-
|
|
1133
|
+
[FEISHU_SETUP_FLOW_KEY]: "new"
|
|
1133
1134
|
} };
|
|
1134
1135
|
},
|
|
1135
1136
|
credentials: [],
|
|
1136
1137
|
finalize: async ({ cfg, prompter, options, credentialValues }) => {
|
|
1137
|
-
if ((credentialValues
|
|
1138
|
+
if ((credentialValues[FEISHU_SETUP_FLOW_KEY] ?? "new") === "edit") {
|
|
1138
1139
|
const result = await runEditFlow({
|
|
1139
1140
|
cfg,
|
|
1140
1141
|
prompter,
|
|
@@ -1188,7 +1189,7 @@ const meta = {
|
|
|
1188
1189
|
aliases: ["lark"],
|
|
1189
1190
|
order: 70
|
|
1190
1191
|
};
|
|
1191
|
-
const loadFeishuChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-
|
|
1192
|
+
const loadFeishuChannelRuntime = createLazyRuntimeNamedExport(() => import("./channel.runtime-Dmq7DpnS.js"), "feishuChannelRuntime");
|
|
1192
1193
|
function toFeishuMessageSendResult(result, kind) {
|
|
1193
1194
|
const receipt = result.receipt ?? createFeishuSendReceipt({
|
|
1194
1195
|
messageId: result.messageId,
|
|
@@ -2031,7 +2032,7 @@ const feishuPlugin = createChatChannelPlugin({
|
|
|
2031
2032
|
})
|
|
2032
2033
|
}),
|
|
2033
2034
|
gateway: { startAccount: async (ctx) => {
|
|
2034
|
-
const { monitorFeishuProvider } = await import("./monitor-
|
|
2035
|
+
const { monitorFeishuProvider } = await import("./monitor-CfcgF5DQ.js");
|
|
2035
2036
|
const account = resolveFeishuRuntimeAccount({
|
|
2036
2037
|
cfg: ctx.cfg,
|
|
2037
2038
|
accountId: ctx.accountId
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as feishuPlugin } from "./channel-
|
|
1
|
+
import { t as feishuPlugin } from "./channel-jWQWT5js.js";
|
|
2
2
|
export { feishuPlugin };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { o as resolveFeishuAccount, s as resolveFeishuRuntimeAccount, y as parseFeishuCommentTarget } from "./accounts-QNGhjZeI.js";
|
|
2
|
-
import { _ as listFeishuDirectoryPeers, g as listFeishuDirectoryGroups, y as createFeishuCardInteractionEnvelope } from "./channel-
|
|
2
|
+
import { _ as listFeishuDirectoryPeers, g as listFeishuDirectoryGroups, y as createFeishuCardInteractionEnvelope } from "./channel-jWQWT5js.js";
|
|
3
3
|
import { r as createFeishuClient } from "./client-B18oTGHf.js";
|
|
4
4
|
import { c as getChatInfo, l as getChatMembers, r as cleanupAmbientCommentTypingReaction, t as deliverCommentThreadText, u as getFeishuMemberInfo } from "./drive-CzLQuxes.js";
|
|
5
5
|
import { chunkTextForOutbound } from "./runtime-api.js";
|
|
6
|
-
import { a as sendCardFeishu, c as sendStructuredCardFeishu, g as shouldSuppressFeishuTextForVoiceMedia, h as sendMediaFeishu, i as resolveFeishuCardTemplate, n as getMessageFeishu, o as sendMarkdownCardFeishu, s as sendMessageFeishu, t as editMessageFeishu } from "./send-
|
|
6
|
+
import { a as sendCardFeishu, c as sendStructuredCardFeishu, g as shouldSuppressFeishuTextForVoiceMedia, h as sendMediaFeishu, i as resolveFeishuCardTemplate, n as getMessageFeishu, o as sendMarkdownCardFeishu, s as sendMessageFeishu, t as editMessageFeishu } from "./send-DYLn9mIe.js";
|
|
7
7
|
import { t as probeFeishu } from "./probe-DpPNslkb.js";
|
|
8
8
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
9
9
|
import { interactiveReplyToPresentation, normalizeInteractiveReply, normalizeMessagePresentation, renderMessagePresentationFallbackText, resolveInteractiveTextFallback } from "openclaw/plugin-sdk/interactive-runtime";
|
package/dist/contract-api.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { a as parseFeishuTargetId, i as parseFeishuDirectConversationId, r as parseFeishuConversationId, t as buildFeishuConversationId } from "./conversation-id-Byq1c20x.js";
|
|
2
|
-
import {
|
|
2
|
+
import { r as testing, t as createFeishuThreadBindingManager } from "./thread-bindings-MLidevCB.js";
|
|
3
3
|
import { t as messageActionTargetAliases } from "./security-audit-BzTLFO6g.js";
|
|
4
4
|
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-DIpADEx7.js";
|
|
5
5
|
import { t as collectFeishuSecurityAuditFindings } from "./security-audit-shared-B6kEakHj.js";
|
|
6
6
|
//#region extensions/feishu/contract-api.ts
|
|
7
7
|
const feishuSessionBindingAdapterChannels = ["feishu"];
|
|
8
8
|
//#endregion
|
|
9
|
-
export { buildFeishuConversationId, collectFeishuSecurityAuditFindings, collectRuntimeConfigAssignments, createFeishuThreadBindingManager, feishuSessionBindingAdapterChannels,
|
|
9
|
+
export { buildFeishuConversationId, collectFeishuSecurityAuditFindings, collectRuntimeConfigAssignments, createFeishuThreadBindingManager, feishuSessionBindingAdapterChannels, testing as feishuThreadBindingTesting, messageActionTargetAliases, parseFeishuConversationId, parseFeishuDirectConversationId, parseFeishuTargetId, secretTargetRegistryEntries };
|
|
@@ -3,7 +3,7 @@ import { l as fetchBotIdentityForMonitor } from "./monitor.state-D6ByOM5W.js";
|
|
|
3
3
|
//#region extensions/feishu/src/monitor.ts
|
|
4
4
|
let monitorAccountRuntimePromise;
|
|
5
5
|
async function loadMonitorAccountRuntime() {
|
|
6
|
-
monitorAccountRuntimePromise ??= import("./monitor.account-
|
|
6
|
+
monitorAccountRuntimePromise ??= import("./monitor.account-Cg_HyFTF.js");
|
|
7
7
|
return await monitorAccountRuntimePromise;
|
|
8
8
|
}
|
|
9
9
|
async function monitorFeishuProvider(opts = {}) {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { t as buildFeishuConversationId } from "./conversation-id-Byq1c20x.js";
|
|
2
2
|
import { i as resolveReceiveIdType } from "./targets-Bb05cFr4.js";
|
|
3
|
-
import {
|
|
3
|
+
import { t as createFeishuThreadBindingManager } from "./thread-bindings-MLidevCB.js";
|
|
4
4
|
import { _ as buildFeishuCommentTarget, f as isRecord$3, h as readString$2, l as encodeQuery, m as parseCommentContentElements, p as normalizeString, s as resolveFeishuRuntimeAccount, u as extractReplyText, v as normalizeCommentFileType } from "./accounts-QNGhjZeI.js";
|
|
5
|
-
import { b as decodeFeishuCardAction, d as resolveFeishuDmIngressAccess, f as resolveFeishuGroupConfig, h as resolveFeishuReplyPolicy, l as hasExplicitFeishuGroupConfig, m as resolveFeishuGroupSenderActivationIngressAccess, p as resolveFeishuGroupConversationIngressAccess, u as normalizeFeishuAllowEntry, v as buildFeishuCardActionTextFallback, y as createFeishuCardInteractionEnvelope } from "./channel-
|
|
5
|
+
import { b as decodeFeishuCardAction, d as resolveFeishuDmIngressAccess, f as resolveFeishuGroupConfig, h as resolveFeishuReplyPolicy, l as hasExplicitFeishuGroupConfig, m as resolveFeishuGroupSenderActivationIngressAccess, p as resolveFeishuGroupConversationIngressAccess, u as normalizeFeishuAllowEntry, v as buildFeishuCardActionTextFallback, y as createFeishuCardInteractionEnvelope } from "./channel-jWQWT5js.js";
|
|
6
6
|
import { t as getFeishuRuntime } from "./runtime-Cc16UY23.js";
|
|
7
7
|
import { a as getFeishuUserAgent, i as createFeishuWSClient, n as createEventDispatcher, r as createFeishuClient } from "./client-B18oTGHf.js";
|
|
8
8
|
import { c as getChatInfo, i as createCommentTypingReactionLifecycle, t as deliverCommentThreadText } from "./drive-CzLQuxes.js";
|
|
9
9
|
import { buildAgentMediaPayload, createReplyPrefixContext, evaluateSupplementalContextVisibility, loadSessionStore, normalizeAgentId as normalizeAgentId$1, resolveChannelContextVisibilityMode, resolveSessionStoreEntry } from "./runtime-api.js";
|
|
10
|
-
import { _ as normalizeFeishuExternalKey, a as sendCardFeishu, c as sendStructuredCardFeishu, d as isFeishuBroadcastMention, f as isMentionForwardRequest, g as shouldSuppressFeishuTextForVoiceMedia, h as sendMediaFeishu, i as resolveFeishuCardTemplate, l as parsePostContent, m as saveMessageResourceFeishu, n as getMessageFeishu, p as isFeishuGroupChatType, r as listFeishuThreadMessages, s as sendMessageFeishu, u as extractMentionTargets } from "./send-
|
|
10
|
+
import { _ as normalizeFeishuExternalKey, a as sendCardFeishu, c as sendStructuredCardFeishu, d as isFeishuBroadcastMention, f as isMentionForwardRequest, g as shouldSuppressFeishuTextForVoiceMedia, h as sendMediaFeishu, i as resolveFeishuCardTemplate, l as parsePostContent, m as saveMessageResourceFeishu, n as getMessageFeishu, p as isFeishuGroupChatType, r as listFeishuThreadMessages, s as sendMessageFeishu, u as extractMentionTargets } from "./send-DYLn9mIe.js";
|
|
11
11
|
import { i as waitForAbortableDelay, r as raceWithTimeoutAndAbort } from "./probe-DpPNslkb.js";
|
|
12
12
|
import { a as feishuWebhookRateLimiter, c as wsClients, i as botOpenIds, l as fetchBotIdentityForMonitor, n as FEISHU_WEBHOOK_MAX_BODY_BYTES, o as httpServers, r as botNames, s as recordWebhookStatus, t as FEISHU_WEBHOOK_BODY_TIMEOUT_MS } from "./monitor.state-D6ByOM5W.js";
|
|
13
13
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
@@ -1354,7 +1354,7 @@ function createFeishuReplyDispatcher(params) {
|
|
|
1354
1354
|
let streamingCloseErroredForReply = false;
|
|
1355
1355
|
const formatReasoningPrefix = (thinking) => {
|
|
1356
1356
|
if (!thinking) return "";
|
|
1357
|
-
return `> 💭 **Thinking**\n${thinking.replace(/^Reasoning
|
|
1357
|
+
return `> 💭 **Thinking**\n${thinking.replace(/^(?:Reasoning:|Thinking\.{0,3})\s*/u, "").replace(/^_(.*)_$/gm, "$1").split("\n").map((line) => `> ${line}`).join("\n")}`;
|
|
1358
1358
|
};
|
|
1359
1359
|
const buildCombinedStreamText = (thinking, answer) => {
|
|
1360
1360
|
const parts = [];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { i as resolveReceiveIdType, r as normalizeFeishuTarget } from "./targets-Bb05cFr4.js";
|
|
2
2
|
import { c as createFeishuApiError, f as isRecord$2, g as requestFeishuApi, s as resolveFeishuRuntimeAccount } from "./accounts-QNGhjZeI.js";
|
|
3
|
-
import { c as toFeishuSendResult, o as assertFeishuMessageApiSuccess, s as resolveFeishuReceiptKind } from "./channel-
|
|
3
|
+
import { c as toFeishuSendResult, o as assertFeishuMessageApiSuccess, s as resolveFeishuReceiptKind } from "./channel-jWQWT5js.js";
|
|
4
4
|
import { t as getFeishuRuntime } from "./runtime-Cc16UY23.js";
|
|
5
5
|
import { r as createFeishuClient } from "./client-B18oTGHf.js";
|
|
6
6
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
package/dist/setup-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as feishuSetupAdapter, n as feishuSetupWizard, t as feishuPlugin } from "./channel-
|
|
1
|
+
import { i as feishuSetupAdapter, n as feishuSetupWizard, t as feishuPlugin } from "./channel-jWQWT5js.js";
|
|
2
2
|
export { feishuPlugin, feishuSetupAdapter, feishuSetupWizard };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-DUslC3ob.js";
|
|
2
2
|
import { r as parseFeishuConversationId, t as buildFeishuConversationId } from "./conversation-id-Byq1c20x.js";
|
|
3
3
|
import { r as normalizeFeishuTarget } from "./targets-Bb05cFr4.js";
|
|
4
|
-
import {
|
|
4
|
+
import { n as getFeishuThreadBindingManager } from "./thread-bindings-MLidevCB.js";
|
|
5
5
|
import { normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
6
6
|
//#region extensions/feishu/src/subagent-hooks.ts
|
|
7
7
|
var subagent_hooks_exports = /* @__PURE__ */ __exportAll({
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { n as handleFeishuSubagentEnded, r as handleFeishuSubagentSpawning, t as handleFeishuSubagentDeliveryTarget } from "./subagent-hooks-
|
|
1
|
+
import { n as handleFeishuSubagentEnded, r as handleFeishuSubagentSpawning, t as handleFeishuSubagentDeliveryTarget } from "./subagent-hooks-DTTHB-s3.js";
|
|
2
2
|
//#region extensions/feishu/subagent-hooks-api.ts
|
|
3
3
|
let feishuSubagentHooksPromise = null;
|
|
4
4
|
function loadFeishuSubagentHooksModule() {
|
|
5
|
-
feishuSubagentHooksPromise ??= import("./subagent-hooks-
|
|
5
|
+
feishuSubagentHooksPromise ??= import("./subagent-hooks-DTTHB-s3.js").then((n) => n.i);
|
|
6
6
|
return feishuSubagentHooksPromise;
|
|
7
7
|
}
|
|
8
8
|
function registerFeishuSubagentHooks(api) {
|
|
@@ -213,10 +213,10 @@ function createFeishuThreadBindingManager(params) {
|
|
|
213
213
|
function getFeishuThreadBindingManager(accountId) {
|
|
214
214
|
return getState().managersByAccountId.get(normalizeAccountId(accountId)) ?? null;
|
|
215
215
|
}
|
|
216
|
-
const
|
|
216
|
+
const testing = { resetFeishuThreadBindingsForTests() {
|
|
217
217
|
for (const manager of getState().managersByAccountId.values()) manager.stop();
|
|
218
218
|
getState().managersByAccountId.clear();
|
|
219
219
|
getState().bindingsByAccountConversation.clear();
|
|
220
220
|
} };
|
|
221
221
|
//#endregion
|
|
222
|
-
export {
|
|
222
|
+
export { getFeishuThreadBindingManager as n, testing as r, createFeishuThreadBindingManager as t };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/feishu",
|
|
3
|
-
"version": "2026.5.
|
|
3
|
+
"version": "2026.5.19-beta.2",
|
|
4
4
|
"description": "OpenClaw Feishu/Lark channel plugin (community maintained by @m1heng)",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"openclaw": "workspace:*"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"openclaw": ">=2026.5.
|
|
20
|
+
"openclaw": ">=2026.5.19-beta.2"
|
|
21
21
|
},
|
|
22
22
|
"peerDependenciesMeta": {
|
|
23
23
|
"openclaw": {
|
|
@@ -48,10 +48,10 @@
|
|
|
48
48
|
"minHostVersion": ">=2026.4.25"
|
|
49
49
|
},
|
|
50
50
|
"compat": {
|
|
51
|
-
"pluginApi": ">=2026.5.
|
|
51
|
+
"pluginApi": ">=2026.5.19-beta.2"
|
|
52
52
|
},
|
|
53
53
|
"build": {
|
|
54
|
-
"openclawVersion": "2026.5.
|
|
54
|
+
"openclawVersion": "2026.5.19-beta.2"
|
|
55
55
|
},
|
|
56
56
|
"release": {
|
|
57
57
|
"publishToClawHub": true,
|