@lawpath-tech/openclaw 2026.2.21-4 → 2026.2.21-5
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/{agents-BtqLW18n.js → agents-CuMsK_DS.js} +4 -4
- package/dist/{agents.config-B-tuPgrg.js → agents.config-BXoIfujZ.js} +1 -1
- package/dist/{agents.config-ICVDwC0C.js → agents.config-e_xeppAS.js} +1 -1
- package/dist/{auth-choice-6iuXqwcN.js → auth-choice-B45xiAZ_.js} +1 -1
- package/dist/{auth-choice-BjZRva43.js → auth-choice-Cds0pSuL.js} +1 -1
- package/dist/{banner-B3WC17dn.js → banner-BrBNvO5B.js} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +1 -1
- package/dist/bundled/session-memory/handler.js +1 -1
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-G8V1c6AS.js → channel-options-HIUzORO6.js} +1 -1
- package/dist/{channel-options-BDj65ZyO.js → channel-options-K4gVRVl0.js} +1 -1
- package/dist/{channel-web-B_ZYKCEQ.js → channel-web-BhQMRa2x.js} +1 -1
- package/dist/{channels-cli-raxsTCN2.js → channels-cli-RbZdgktP.js} +4 -4
- package/dist/{channels-cli-DqFbn6qS.js → channels-cli-SwsUfdhN.js} +4 -4
- package/dist/{cli-CR9BTL9c.js → cli-DCtguEMl.js} +1 -1
- package/dist/{cli-E0T5u43Z.js → cli-DZR34VYb.js} +1 -1
- package/dist/{command-registry-BmpWsMTW.js → command-registry-CuwwryVI.js} +9 -9
- package/dist/{completion-cli-ilRVVz-z.js → completion-cli-CHvR27lh.js} +2 -2
- package/dist/{completion-cli-S4G6qt8g.js → completion-cli-Cq8iP9Aw.js} +1 -1
- package/dist/{config-cli-WbPlELKk.js → config-cli-BwShV3v6.js} +1 -1
- package/dist/{config-cli-Cko5ncf5.js → config-cli-Ci5S1iD4.js} +1 -1
- package/dist/{configure-BBkx0Gee.js → configure-DPlBhyXy.js} +3 -3
- package/dist/{configure-B-GCDUGh.js → configure-D_1pz9E3.js} +3 -3
- package/dist/{doctor-completion-7mRw3cHh.js → doctor-completion-BJIw8vai.js} +1 -1
- package/dist/{doctor-completion-CJKoQcYI.js → doctor-completion-BfrgA2mV.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/extensionAPI.js +1 -1
- package/dist/{gateway-cli-AhPjzNqQ.js → gateway-cli-BeBfQrbx.js} +8 -8
- package/dist/{gateway-cli-CmSTW0ue.js → gateway-cli-yqwgOF3f.js} +8 -8
- package/dist/{health-ADwLM-Or.js → health-BTIp89si.js} +1 -1
- package/dist/{health-fiXB0fGK.js → health-CKF0OJ25.js} +1 -1
- package/dist/{hooks-cli-DRoJbg8P.js → hooks-cli-BKn8RjUM.js} +2 -2
- package/dist/{hooks-cli-XfbsybsC.js → hooks-cli-Cjs7SuB4.js} +2 -2
- package/dist/index.js +6 -6
- package/dist/llm-slug-generator.js +1 -1
- package/dist/{models-2tG63q_V.js → models-C08NQUuO.js} +2 -2
- package/dist/{models-cli-CR_SMGJ0.js → models-cli-COXYLQjz.js} +2 -2
- package/dist/{models-cli-BWxHuaVU.js → models-cli-uJJpIivJ.js} +3 -3
- package/dist/{onboard-a3lJkMHB.js → onboard-CnHHrRkg.js} +2 -2
- package/dist/{onboard-DBSlZhzk.js → onboard-D9sqU2kW.js} +2 -2
- package/dist/{onboard-channels-B8j2CJsJ.js → onboard-channels-DFdGULvK.js} +1 -1
- package/dist/{onboard-channels-BUE80D3V.js → onboard-channels-FyoGJoRI.js} +1 -1
- package/dist/{onboarding-BPiYCwYW.js → onboarding-BMdfhdc1.js} +3 -3
- package/dist/{onboarding-vEEafQpu.js → onboarding-ys5PK2iC.js} +3 -3
- package/dist/{onboarding.finalize-ASGzuJ_m.js → onboarding.finalize-Czj9rIDx.js} +6 -6
- package/dist/{onboarding.finalize-C7185nuS.js → onboarding.finalize-DGwRmQPQ.js} +5 -5
- package/dist/{pi-embedded-BfX7An0n.js → pi-embedded-BFfZiGJD.js} +38 -5
- package/dist/{pi-embedded-DtVM2K0j.js → pi-embedded-CQ9C6y-Z.js} +38 -5
- package/dist/{plugin-registry-DAvWT8O2.js → plugin-registry-Bm3oXtZ_.js} +1 -1
- package/dist/{plugin-registry-CDCLBIsW.js → plugin-registry-CbLd0SuX.js} +1 -1
- package/dist/plugin-sdk/{channel-web-D7oXjz9F.js → channel-web-BijwJ-sy.js} +1 -1
- package/dist/plugin-sdk/index.js +2 -2
- package/dist/plugin-sdk/{reply-CcZVzbxJ.js → reply-7CRdEEVf.js} +38 -5
- package/dist/plugin-sdk/{web-DKcOGlkN.js → web-DbfteoVI.js} +2 -2
- package/dist/{plugins-cli-BUojFAGL.js → plugins-cli-CuZ9yeLM.js} +2 -2
- package/dist/{plugins-cli-ekc2VJ2E.js → plugins-cli-D9kYnV70.js} +2 -2
- package/dist/{program-C6lY3-78.js → program-DnLmcYvI.js} +7 -7
- package/dist/{program-context-Cf4DLb4D.js → program-context-BFlDtZ7u.js} +17 -17
- package/dist/{prompt-select-styled-DZrDBBvM.js → prompt-select-styled-ByfdmSdC.js} +4 -4
- package/dist/{prompt-select-styled-BB0toldS.js → prompt-select-styled-vecx8TWe.js} +4 -4
- package/dist/{provider-auth-helpers-DzLX-hrT.js → provider-auth-helpers-CDiCEf5I.js} +1 -1
- package/dist/{provider-auth-helpers-BmRtSzv1.js → provider-auth-helpers-D5aiUDUx.js} +1 -1
- package/dist/{push-apns-BoavuUl1.js → push-apns-CIFN_ehC.js} +1 -1
- package/dist/{push-apns-DRicQb8n.js → push-apns-DnQI6P_1.js} +1 -1
- package/dist/{register.agent-BmmgT0mN.js → register.agent-BAb4XSav.js} +5 -5
- package/dist/{register.agent-Ddx0H8cv.js → register.agent-m9s6Wdxg.js} +6 -6
- package/dist/{register.configure-DJnHqk6O.js → register.configure-CH9nyxsf.js} +6 -6
- package/dist/{register.configure-CQU6KgeW.js → register.configure-lUHQYgJj.js} +6 -6
- package/dist/{register.maintenance-Cqc5yCQG.js → register.maintenance-BZ5w5uEj.js} +7 -7
- package/dist/{register.maintenance-BV1xriuR.js → register.maintenance-D6b4iNV5.js} +8 -8
- package/dist/{register.message-Ihec9Qhj.js → register.message-BNwoWgh6.js} +2 -2
- package/dist/{register.message-CNpNd0Ap.js → register.message-DrqsD-cs.js} +2 -2
- package/dist/{register.onboard-CL9W60Ru.js → register.onboard-BJC-pkiP.js} +4 -4
- package/dist/{register.onboard-DIwP9ira.js → register.onboard-CWGIbeMt.js} +4 -4
- package/dist/{register.setup-CsdexgyX.js → register.setup-B2Q7oNUf.js} +4 -4
- package/dist/{register.setup-2GCiWxqM.js → register.setup-Cyy-u_LT.js} +4 -4
- package/dist/{register.status-health-sessions-GhqBz76y.js → register.status-health-sessions-CbFmRZ23.js} +3 -3
- package/dist/{register.status-health-sessions-CZoLCevz.js → register.status-health-sessions-XToqPPob.js} +3 -3
- package/dist/{register.subclis-B4o6BJ2N.js → register.subclis-kiCDYnvk.js} +9 -9
- package/dist/{reply-CebOfFpO.js → reply-BLgYvx8K.js} +38 -5
- package/dist/{run-main-Dhw3C-_j.js → run-main-ClQN17NG.js} +14 -14
- package/dist/{server-node-events-Cd_Um0Ih.js → server-node-events-CtGYZ4NX.js} +2 -2
- package/dist/{server-node-events-Cx6vpHYY.js → server-node-events-D8mdarwc.js} +2 -2
- package/dist/{session-dirs-D1JZtaFB.js → session-dirs-CLp_APkW.js} +1 -1
- package/dist/{session-dirs-BksC_ZJx.js → session-dirs-qa1wz8KY.js} +1 -1
- package/dist/{status-vxjEMgge.js → status-B0DTmnlx.js} +1 -1
- package/dist/{status-BcZRY3RM.js → status-BpU9At8G.js} +1 -1
- package/dist/{status-CadxgcYe.js → status-CUi6ZcuM.js} +2 -2
- package/dist/{status-UO6LTko9.js → status-DlprmiLH.js} +2 -2
- package/dist/{subagent-registry-DxAANdOO.js → subagent-registry-DoLtM6tb.js} +38 -5
- package/dist/{update-cli-CqsOKfGt.js → update-cli-DDK1P0nj.js} +7 -7
- package/dist/{update-cli-CidTQDU8.js → update-cli-eHwjFIY5.js} +8 -8
- package/dist/{web-CxJJ94q0.js → web-BNiJyHah.js} +1 -1
- package/dist/{web-BBMLIpu1.js → web-DPUOYear.js} +1 -1
- package/dist/{web-IvoqYVGl.js → web-gOkp0QXS.js} +1 -1
- package/dist/{web-IgO1--qh.js → web-w_Wqd8mO.js} +2 -2
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./paths-B4BZAPZh.js";
|
|
2
2
|
import { B as theme, S as shortenHomePath, t as CONFIG_DIR, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import "./reply-
|
|
4
|
+
import "./reply-BLgYvx8K.js";
|
|
5
5
|
import "./registry-Dygi7Azw.js";
|
|
6
6
|
import { f as defaultRuntime } from "./subsystem-8bY95KEB.js";
|
|
7
7
|
import "./exec-BmMB8-Xs.js";
|
|
@@ -108,7 +108,7 @@ import { a as installPackageDir, i as withTempDir, n as installFromNpmSpecArchiv
|
|
|
108
108
|
import { t as renderTable } from "./table-i7J9YlN5.js";
|
|
109
109
|
import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-DpGqXq9W.js";
|
|
110
110
|
import { t as buildWorkspaceHookStatus } from "./hooks-status-DZI7Fkka.js";
|
|
111
|
-
import { t as buildPluginStatusReport } from "./status-
|
|
111
|
+
import { t as buildPluginStatusReport } from "./status-BpU9At8G.js";
|
|
112
112
|
import fs from "node:fs";
|
|
113
113
|
import path from "node:path";
|
|
114
114
|
import fs$1 from "node:fs/promises";
|
|
@@ -15,7 +15,7 @@ import "./client-DrK7aLru.js";
|
|
|
15
15
|
import "./call-mR3kLwRx.js";
|
|
16
16
|
import "./message-channel-CVHJDItx.js";
|
|
17
17
|
import "./pairing-token-Byh6drgn.js";
|
|
18
|
-
import "./subagent-registry-
|
|
18
|
+
import "./subagent-registry-DoLtM6tb.js";
|
|
19
19
|
import "./sessions-CPk6B4FT.js";
|
|
20
20
|
import "./tokens-ANnYrShl.js";
|
|
21
21
|
import "./plugins-Dhh2a3qc.js";
|
|
@@ -104,7 +104,7 @@ import { a as installPackageDir, i as withTempDir, n as installFromNpmSpecArchiv
|
|
|
104
104
|
import { t as renderTable } from "./table-C9BoE_4p.js";
|
|
105
105
|
import { a as parseFrontmatter, t as loadWorkspaceHookEntries } from "./workspace-DWI9N-Ks.js";
|
|
106
106
|
import { t as buildWorkspaceHookStatus } from "./hooks-status-CNo1bkDq.js";
|
|
107
|
-
import { t as buildPluginStatusReport } from "./status-
|
|
107
|
+
import { t as buildPluginStatusReport } from "./status-B0DTmnlx.js";
|
|
108
108
|
import path from "node:path";
|
|
109
109
|
import fs from "node:fs";
|
|
110
110
|
import fs$1 from "node:fs/promises";
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import "./paths-B4BZAPZh.js";
|
|
3
3
|
import { B as theme, P as setVerbose, T as toWhatsappJid, l as escapeRegExp, m as normalizeE164, n as assertWebChannel, z as isRich } from "./utils-BlC2Fskb.js";
|
|
4
4
|
import "./thinking-EAliFiVK.js";
|
|
5
|
-
import { Vt as createDefaultDeps, t as getReplyFromConfig, wt as resolveCommitHash } from "./reply-
|
|
5
|
+
import { Vt as createDefaultDeps, t as getReplyFromConfig, wt as resolveCommitHash } from "./reply-BLgYvx8K.js";
|
|
6
6
|
import "./registry-Dygi7Azw.js";
|
|
7
7
|
import { f as defaultRuntime, r as enableConsoleCapture, u as visibleWidth } from "./subsystem-8bY95KEB.js";
|
|
8
8
|
import { n as runExec, t as runCommandWithTimeout } from "./exec-BmMB8-Xs.js";
|
|
@@ -103,7 +103,7 @@ import "./control-service-FOBhD0N3.js";
|
|
|
103
103
|
import "./stagger-B6VQyn1F.js";
|
|
104
104
|
import "./channel-selection-C27fdBDC.js";
|
|
105
105
|
import "./pi-tools.policy-B3nJHwWp.js";
|
|
106
|
-
import { r as waitForever, t as monitorWebChannel } from "./channel-web-
|
|
106
|
+
import { r as waitForever, t as monitorWebChannel } from "./channel-web-BhQMRa2x.js";
|
|
107
107
|
import "./outbound-DDOgGWA0.js";
|
|
108
108
|
import "./session-Bx9d5CDa.js";
|
|
109
109
|
import "./login-CLJDOcdf.js";
|
|
@@ -112,10 +112,10 @@ import { t as ensureOpenClawCliOnPath } from "./path-env-Cd727z3O.js";
|
|
|
112
112
|
import { t as assertSupportedRuntime } from "./runtime-guard-BYGIYhEa.js";
|
|
113
113
|
import "./ports-Bha3elHt.js";
|
|
114
114
|
import { a as hasFlag, i as getVerboseFlag, n as getCommandPath, o as hasHelpOrVersion, s as hasRootVersionAlias } from "./argv-iDNY1AU9.js";
|
|
115
|
-
import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-
|
|
115
|
+
import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-BFlDtZ7u.js";
|
|
116
116
|
import "./catalog-C7TxlaHu.js";
|
|
117
|
-
import "./plugin-registry-
|
|
118
|
-
import { n as resolveCliChannelOptions } from "./channel-options-
|
|
117
|
+
import "./plugin-registry-CbLd0SuX.js";
|
|
118
|
+
import { n as resolveCliChannelOptions } from "./channel-options-K4gVRVl0.js";
|
|
119
119
|
import process$1 from "node:process";
|
|
120
120
|
import { fileURLToPath } from "node:url";
|
|
121
121
|
import { Command } from "commander";
|
|
@@ -515,7 +515,7 @@ function registerPreActionHooks(program, programVersion) {
|
|
|
515
515
|
commandPath
|
|
516
516
|
});
|
|
517
517
|
if (PLUGIN_REQUIRED_COMMANDS.has(commandPath[0])) {
|
|
518
|
-
const { ensurePluginRegistryLoaded } = await import("./plugin-registry-
|
|
518
|
+
const { ensurePluginRegistryLoaded } = await import("./plugin-registry-CbLd0SuX.js").then((n) => n.n);
|
|
519
519
|
ensurePluginRegistryLoaded();
|
|
520
520
|
}
|
|
521
521
|
});
|
|
@@ -4,7 +4,7 @@ import { c as resolveDefaultAgentId, r as resolveAgentDir, s as resolveAgentWork
|
|
|
4
4
|
import "./subsystem-BF9jT_Nw.js";
|
|
5
5
|
import "./workspace-D-fnhRGM.js";
|
|
6
6
|
import "./tokens-B-c56SkM.js";
|
|
7
|
-
import { t as runEmbeddedPiAgent } from "./pi-embedded-
|
|
7
|
+
import { t as runEmbeddedPiAgent } from "./pi-embedded-BFfZiGJD.js";
|
|
8
8
|
import "./plugins-BfEZesgD.js";
|
|
9
9
|
import "./accounts-C8m4ADkw.js";
|
|
10
10
|
import "./boolean-B8-BqKGQ.js";
|
|
@@ -7,7 +7,7 @@ import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-BnX14koJ.j
|
|
|
7
7
|
import { i as resolveForwardCompatModel, r as ANTIGRAVITY_OPUS_46_FORWARD_COMPAT_CANDIDATES } from "./model-ChKLb_d2.js";
|
|
8
8
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Do3xMEtM.js";
|
|
9
9
|
import { C as parseDurationMs, i as loadConfig } from "./config-D-Tvm4yj.js";
|
|
10
|
-
import { en as loadProviderUsageSummary, gn as formatRemainingShort, hn as buildAuthHealthSummary, mn as DEFAULT_OAUTH_WARN_MS, mt as describeFailoverError, nn as formatUsageWindowSummary, pn as maskApiKey, rn as resolveUsageProviderId, s as runEmbeddedPiAgent } from "./subagent-registry-
|
|
10
|
+
import { en as loadProviderUsageSummary, gn as formatRemainingShort, hn as buildAuthHealthSummary, mn as DEFAULT_OAUTH_WARN_MS, mt as describeFailoverError, nn as formatUsageWindowSummary, pn as maskApiKey, rn as resolveUsageProviderId, s as runEmbeddedPiAgent } from "./subagent-registry-DoLtM6tb.js";
|
|
11
11
|
import { i as resolveSessionTranscriptPath, s as resolveSessionTranscriptsDirForAgent } from "./paths-DNdWAq7b.js";
|
|
12
12
|
import { t as ensureOpenClawModelsJson } from "./models-config-Cn16PIi1.js";
|
|
13
13
|
import { n as loadModelCatalog } from "./model-catalog-BArXr_C_.js";
|
|
@@ -21,7 +21,7 @@ import { n as redactSecrets } from "./format-B0yJsjEo.js";
|
|
|
21
21
|
import { a as isLocalBaseUrl, c as normalizeAlias, d as resolveModelTarget, f as updateConfig, i as formatTokenK, l as resolveKnownAgentId, n as ensureFlagCompatibility, o as loadValidConfigOrThrow, r as formatMs, s as mergePrimaryFallbackConfig, t as applyDefaultModelPrimaryUpdate, u as resolveModelKeysFromEntries } from "./shared-CoT9ivCt.js";
|
|
22
22
|
import { d as applyAuthProfileConfig, n as validateAnthropicSetupToken } from "./auth-token-ED-ILVvP.js";
|
|
23
23
|
import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
|
|
24
|
-
import { a as createVpsAwareOAuthHandlers, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-
|
|
24
|
+
import { a as createVpsAwareOAuthHandlers, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-CDiCEf5I.js";
|
|
25
25
|
import path from "node:path";
|
|
26
26
|
import fs from "node:fs/promises";
|
|
27
27
|
import { complete, getEnvApiKey, getModel } from "@mariozechner/pi-ai";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as CONFIG_PATH } from "./paths-B4BZAPZh.js";
|
|
2
2
|
import { B as theme, R as colorize, S as shortenHomePath, z as isRich$1 } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import { Ct as resolveUsageProviderId, Jt as describeFailoverError, St as formatUsageWindowSummary, bt as loadProviderUsageSummary, dr as maskApiKey, fr as DEFAULT_OAUTH_WARN_MS, l as runEmbeddedPiAgent, mr as formatRemainingShort, pr as buildAuthHealthSummary } from "./reply-
|
|
4
|
+
import { Ct as resolveUsageProviderId, Jt as describeFailoverError, St as formatUsageWindowSummary, bt as loadProviderUsageSummary, dr as maskApiKey, fr as DEFAULT_OAUTH_WARN_MS, l as runEmbeddedPiAgent, mr as formatRemainingShort, pr as buildAuthHealthSummary } from "./reply-BLgYvx8K.js";
|
|
5
5
|
import "./registry-Dygi7Azw.js";
|
|
6
6
|
import { f as defaultRuntime } from "./subsystem-8bY95KEB.js";
|
|
7
7
|
import "./exec-BmMB8-Xs.js";
|
|
@@ -110,7 +110,7 @@ import { n as redactSecrets } from "./format-DNqZrSx7.js";
|
|
|
110
110
|
import { a as isLocalBaseUrl, c as normalizeAlias, d as resolveModelTarget, f as updateConfig, i as formatTokenK, l as resolveKnownAgentId, n as ensureFlagCompatibility, o as loadValidConfigOrThrow, r as formatMs, s as mergePrimaryFallbackConfig, t as applyDefaultModelPrimaryUpdate, u as resolveModelKeysFromEntries } from "./shared-CeEsUjjY.js";
|
|
111
111
|
import { d as applyAuthProfileConfig, n as validateAnthropicSetupToken } from "./auth-token-DtCLmYKX.js";
|
|
112
112
|
import { n as logConfigUpdated } from "./logging-DNqMaj3H.js";
|
|
113
|
-
import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-
|
|
113
|
+
import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-D5aiUDUx.js";
|
|
114
114
|
import { t as ensurePiAuthJsonFromAuthProfiles } from "./system-cli-B1UbaLLO.js";
|
|
115
115
|
import path from "node:path";
|
|
116
116
|
import fs from "node:fs/promises";
|
|
@@ -14,7 +14,7 @@ import "./client-DrK7aLru.js";
|
|
|
14
14
|
import "./call-mR3kLwRx.js";
|
|
15
15
|
import "./message-channel-CVHJDItx.js";
|
|
16
16
|
import "./pairing-token-Byh6drgn.js";
|
|
17
|
-
import "./subagent-registry-
|
|
17
|
+
import "./subagent-registry-DoLtM6tb.js";
|
|
18
18
|
import "./sessions-CPk6B4FT.js";
|
|
19
19
|
import "./tokens-ANnYrShl.js";
|
|
20
20
|
import "./plugins-Dhh2a3qc.js";
|
|
@@ -104,8 +104,8 @@ import "./table-C9BoE_4p.js";
|
|
|
104
104
|
import "./shared-CoT9ivCt.js";
|
|
105
105
|
import "./auth-token-ED-ILVvP.js";
|
|
106
106
|
import "./logging-PVQxLC6I.js";
|
|
107
|
-
import { c as githubCopilotLoginCommand } from "./provider-auth-helpers-
|
|
108
|
-
import { C as modelsAliasesListCommand, S as modelsAliasesAddCommand, _ as modelsAuthOrderSetCommand, a as modelsStatusCommand, b as modelsAuthPasteTokenCommand, c as modelsImageFallbacksClearCommand, d as modelsFallbacksAddCommand, f as modelsFallbacksClearCommand, g as modelsAuthOrderGetCommand, h as modelsAuthOrderClearCommand, i as modelsScanCommand, l as modelsImageFallbacksListCommand, m as modelsFallbacksRemoveCommand, n as modelsSetImageCommand, o as modelsListCommand, p as modelsFallbacksListCommand, r as modelsSetCommand, s as modelsImageFallbacksAddCommand, u as modelsImageFallbacksRemoveCommand, v as modelsAuthAddCommand, w as modelsAliasesRemoveCommand, x as modelsAuthSetupTokenCommand, y as modelsAuthLoginCommand } from "./models-
|
|
107
|
+
import { c as githubCopilotLoginCommand } from "./provider-auth-helpers-CDiCEf5I.js";
|
|
108
|
+
import { C as modelsAliasesListCommand, S as modelsAliasesAddCommand, _ as modelsAuthOrderSetCommand, a as modelsStatusCommand, b as modelsAuthPasteTokenCommand, c as modelsImageFallbacksClearCommand, d as modelsFallbacksAddCommand, f as modelsFallbacksClearCommand, g as modelsAuthOrderGetCommand, h as modelsAuthOrderClearCommand, i as modelsScanCommand, l as modelsImageFallbacksListCommand, m as modelsFallbacksRemoveCommand, n as modelsSetImageCommand, o as modelsListCommand, p as modelsFallbacksListCommand, r as modelsSetCommand, s as modelsImageFallbacksAddCommand, u as modelsImageFallbacksRemoveCommand, v as modelsAuthAddCommand, w as modelsAliasesRemoveCommand, x as modelsAuthSetupTokenCommand, y as modelsAuthLoginCommand } from "./models-C08NQUuO.js";
|
|
109
109
|
|
|
110
110
|
//#region src/cli/models-cli.ts
|
|
111
111
|
function runModelsCommand(action) {
|
|
@@ -11,8 +11,8 @@ import { t as createClackPrompter } from "./clack-prompter-Cpl8cd_B.js";
|
|
|
11
11
|
import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-D5lkiu2O.js";
|
|
12
12
|
import { r as isSystemdUserServiceAvailable } from "./systemd-Dq5fANx0.js";
|
|
13
13
|
import { t as resolveGatewayService } from "./service-CJGWS46r.js";
|
|
14
|
-
import { r as healthCommand } from "./health-
|
|
15
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
14
|
+
import { r as healthCommand } from "./health-BTIp89si.js";
|
|
15
|
+
import { t as runOnboardingWizard } from "./onboarding-BMdfhdc1.js";
|
|
16
16
|
import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, E as applyTogetherConfig, I as applyLitellmConfig, M as applyXiaomiConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, X as setAnthropicApiKey, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, f as applyHuggingfaceConfig, ft as setXiaomiApiKey, g as applyMoonshotConfig, it as setOpencodeZenApiKey, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, pt as setZaiApiKey, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, ut as setVercelAiGatewayApiKey, w as applySyntheticConfig } from "./auth-token-DtCLmYKX.js";
|
|
17
17
|
import { n as logConfigUpdated } from "./logging-DNqMaj3H.js";
|
|
18
18
|
import { n as isDeprecatedAuthChoice, r as normalizeLegacyOnboardAuthChoice } from "./auth-choice-legacy-aJ8D6F_s.js";
|
|
@@ -9,8 +9,8 @@ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGate
|
|
|
9
9
|
import { t as assertSupportedRuntime } from "./runtime-guard-Cs_ClFhP.js";
|
|
10
10
|
import { r as isSystemdUserServiceAvailable } from "./systemd-BrybH4HV.js";
|
|
11
11
|
import { t as resolveGatewayService } from "./service-DcFI40_W.js";
|
|
12
|
-
import { r as healthCommand } from "./health-
|
|
13
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
12
|
+
import { r as healthCommand } from "./health-CKF0OJ25.js";
|
|
13
|
+
import { t as runOnboardingWizard } from "./onboarding-ys5PK2iC.js";
|
|
14
14
|
import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, E as applyTogetherConfig, I as applyLitellmConfig, M as applyXiaomiConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, X as setAnthropicApiKey, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, f as applyHuggingfaceConfig, ft as setXiaomiApiKey, g as applyMoonshotConfig, it as setOpencodeZenApiKey, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, pt as setZaiApiKey, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, ut as setVercelAiGatewayApiKey, w as applySyntheticConfig } from "./auth-token-ED-ILVvP.js";
|
|
15
15
|
import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
|
|
16
16
|
import { n as isDeprecatedAuthChoice, r as normalizeLegacyOnboardAuthChoice } from "./auth-choice-legacy-DxCamFcQ.js";
|
|
@@ -3,7 +3,7 @@ import { E as formatChannelSelectionLine, O as listChatChannels, T as formatChan
|
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-D3syQOZg.js";
|
|
4
4
|
import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DjZ7Z1hW.js";
|
|
5
5
|
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DhajVyRS.js";
|
|
6
|
-
import { g as loadOpenClawPlugins, h as createPluginLoaderLogger } from "./subagent-registry-
|
|
6
|
+
import { g as loadOpenClawPlugins, h as createPluginLoaderLogger } from "./subagent-registry-DoLtM6tb.js";
|
|
7
7
|
import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-Dhh2a3qc.js";
|
|
8
8
|
import { t as formatDocsLink } from "./links-CW8Bx7rK.js";
|
|
9
9
|
import { r as listChannelPluginCatalogEntries } from "./catalog-Da8o-cxw.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { gt as loadOpenClawPlugins, ht as createPluginLoaderLogger } from "./reply-
|
|
2
|
+
import { gt as loadOpenClawPlugins, ht as createPluginLoaderLogger } from "./reply-BLgYvx8K.js";
|
|
3
3
|
import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DCt45XZa.js";
|
|
4
4
|
import { a as formatChannelSelectionLine, i as formatChannelPrimerLine, s as listChatChannels } from "./registry-Dygi7Azw.js";
|
|
5
5
|
import { t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
|
|
@@ -225,7 +225,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
225
225
|
const { ensureAuthProfileStore } = await import("./model-selection-LsyfCl3e.js").then((n) => n.dt);
|
|
226
226
|
const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-Cn6U3t8O.js").then((n) => n.t);
|
|
227
227
|
const { promptCustomApiConfig } = await import("./onboard-custom-BxSvKcCx.js").then((n) => n.r);
|
|
228
|
-
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-
|
|
228
|
+
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-B45xiAZ_.js").then((n) => n.t);
|
|
229
229
|
const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-7lns6xv3.js").then((n) => n.i);
|
|
230
230
|
const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
|
|
231
231
|
const authChoiceFromPrompt = opts.authChoice === void 0;
|
|
@@ -278,7 +278,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
278
278
|
if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
|
|
279
279
|
else {
|
|
280
280
|
const { listChannelPlugins } = await import("./plugins-C-_54oRw.js").then((n) => n.i);
|
|
281
|
-
const { setupChannels } = await import("./onboard-channels-
|
|
281
|
+
const { setupChannels } = await import("./onboard-channels-FyoGJoRI.js").then((n) => n.n);
|
|
282
282
|
const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
|
|
283
283
|
nextConfig = await setupChannels(nextConfig, runtime, prompter, {
|
|
284
284
|
allowSignalInstall: true,
|
|
@@ -304,7 +304,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
304
304
|
mode
|
|
305
305
|
});
|
|
306
306
|
await writeConfigFile(nextConfig);
|
|
307
|
-
const { finalizeOnboardingWizard } = await import("./onboarding.finalize-
|
|
307
|
+
const { finalizeOnboardingWizard } = await import("./onboarding.finalize-DGwRmQPQ.js");
|
|
308
308
|
const { launchedTui } = await finalizeOnboardingWizard({
|
|
309
309
|
flow,
|
|
310
310
|
opts,
|
|
@@ -223,7 +223,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
223
223
|
const { ensureAuthProfileStore } = await import("./auth-profiles-C7RTY9Sv.js").then((n) => n.t);
|
|
224
224
|
const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-DF6R_pgV.js").then((n) => n.t);
|
|
225
225
|
const { promptCustomApiConfig } = await import("./onboard-custom-zhlfzOTA.js").then((n) => n.r);
|
|
226
|
-
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-
|
|
226
|
+
const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-Cds0pSuL.js").then((n) => n.t);
|
|
227
227
|
const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-CpR4F3Tp.js").then((n) => n.i);
|
|
228
228
|
const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
|
|
229
229
|
const authChoiceFromPrompt = opts.authChoice === void 0;
|
|
@@ -276,7 +276,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
276
276
|
if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
|
|
277
277
|
else {
|
|
278
278
|
const { listChannelPlugins } = await import("./plugins-Dhh2a3qc.js").then((n) => n.i);
|
|
279
|
-
const { setupChannels } = await import("./onboard-channels-
|
|
279
|
+
const { setupChannels } = await import("./onboard-channels-DFdGULvK.js").then((n) => n.n);
|
|
280
280
|
const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
|
|
281
281
|
nextConfig = await setupChannels(nextConfig, runtime, prompter, {
|
|
282
282
|
allowSignalInstall: true,
|
|
@@ -302,7 +302,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
|
|
|
302
302
|
mode
|
|
303
303
|
});
|
|
304
304
|
await writeConfigFile(nextConfig);
|
|
305
|
-
const { finalizeOnboardingWizard } = await import("./onboarding.finalize-
|
|
305
|
+
const { finalizeOnboardingWizard } = await import("./onboarding.finalize-Czj9rIDx.js");
|
|
306
306
|
const { launchedTui } = await finalizeOnboardingWizard({
|
|
307
307
|
flow,
|
|
308
308
|
opts,
|
|
@@ -14,7 +14,7 @@ import "./client-DrK7aLru.js";
|
|
|
14
14
|
import "./call-mR3kLwRx.js";
|
|
15
15
|
import "./message-channel-CVHJDItx.js";
|
|
16
16
|
import "./pairing-token-Byh6drgn.js";
|
|
17
|
-
import "./subagent-registry-
|
|
17
|
+
import "./subagent-registry-DoLtM6tb.js";
|
|
18
18
|
import "./sessions-CPk6B4FT.js";
|
|
19
19
|
import "./tokens-ANnYrShl.js";
|
|
20
20
|
import "./plugins-Dhh2a3qc.js";
|
|
@@ -99,18 +99,18 @@ import "./prompt-style-DwCXob2h.js";
|
|
|
99
99
|
import "./pairing-labels-D5pZ7KsY.js";
|
|
100
100
|
import "./pi-tools.policy-C4HlSnsO.js";
|
|
101
101
|
import "./note-DDecZomM.js";
|
|
102
|
-
import "./register.subclis-
|
|
103
|
-
import "./command-registry-
|
|
102
|
+
import "./register.subclis-kiCDYnvk.js";
|
|
103
|
+
import "./command-registry-CuwwryVI.js";
|
|
104
104
|
import "./program-context-5q-A0wbP.js";
|
|
105
|
-
import { r as installCompletion } from "./completion-cli-
|
|
105
|
+
import { r as installCompletion } from "./completion-cli-CHvR27lh.js";
|
|
106
106
|
import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DAGH3gDr.js";
|
|
107
107
|
import "./runtime-guard-Cs_ClFhP.js";
|
|
108
108
|
import { r as isSystemdUserServiceAvailable } from "./systemd-BrybH4HV.js";
|
|
109
109
|
import { t as resolveGatewayService } from "./service-DcFI40_W.js";
|
|
110
|
-
import { r as healthCommand } from "./health-
|
|
110
|
+
import { r as healthCommand } from "./health-CKF0OJ25.js";
|
|
111
111
|
import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BC2GSxMJ.js";
|
|
112
112
|
import { t as formatHealthCheckFailure } from "./health-format-DkjSgkDx.js";
|
|
113
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
113
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BJIw8vai.js";
|
|
114
114
|
import { t as runTui } from "./tui-BE7l4bos.js";
|
|
115
115
|
import os from "node:os";
|
|
116
116
|
import path from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./paths-B4BZAPZh.js";
|
|
2
2
|
import { h as pathExists, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import "./reply-
|
|
4
|
+
import "./reply-BLgYvx8K.js";
|
|
5
5
|
import "./registry-Dygi7Azw.js";
|
|
6
6
|
import { p as restoreTerminalState } from "./subsystem-8bY95KEB.js";
|
|
7
7
|
import "./exec-BmMB8-Xs.js";
|
|
@@ -103,16 +103,16 @@ import "./stagger-B6VQyn1F.js";
|
|
|
103
103
|
import "./channel-selection-C27fdBDC.js";
|
|
104
104
|
import "./pi-tools.policy-B3nJHwWp.js";
|
|
105
105
|
import "./runtime-guard-BYGIYhEa.js";
|
|
106
|
-
import "./program-context-
|
|
106
|
+
import "./program-context-BFlDtZ7u.js";
|
|
107
107
|
import "./note-DRZSQe0n.js";
|
|
108
|
-
import { r as installCompletion } from "./completion-cli-
|
|
108
|
+
import { r as installCompletion } from "./completion-cli-Cq8iP9Aw.js";
|
|
109
109
|
import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-D5lkiu2O.js";
|
|
110
110
|
import { r as isSystemdUserServiceAvailable } from "./systemd-Dq5fANx0.js";
|
|
111
111
|
import { t as resolveGatewayService } from "./service-CJGWS46r.js";
|
|
112
|
-
import { r as healthCommand } from "./health-
|
|
112
|
+
import { r as healthCommand } from "./health-BTIp89si.js";
|
|
113
113
|
import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CjH2ywP0.js";
|
|
114
114
|
import { t as formatHealthCheckFailure } from "./health-format-D6i_RyWd.js";
|
|
115
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
115
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BfrgA2mV.js";
|
|
116
116
|
import { t as runTui } from "./tui-CtmZFfLN.js";
|
|
117
117
|
import os from "node:os";
|
|
118
118
|
import path from "node:path";
|
|
@@ -51481,7 +51481,7 @@ function isVoiceChannelType(type) {
|
|
|
51481
51481
|
function createDefaultDeps() {
|
|
51482
51482
|
return {
|
|
51483
51483
|
sendMessageWhatsApp: async (...args) => {
|
|
51484
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
51484
|
+
const { sendMessageWhatsApp } = await import("./web-DPUOYear.js");
|
|
51485
51485
|
return await sendMessageWhatsApp(...args);
|
|
51486
51486
|
},
|
|
51487
51487
|
sendMessageTelegram: async (...args) => {
|
|
@@ -60272,7 +60272,10 @@ function registerSlackMessageEvents(params) {
|
|
|
60272
60272
|
ctx.app.event("app_mention", async ({ event, body }) => {
|
|
60273
60273
|
try {
|
|
60274
60274
|
if (ctx.shouldDropMismatchedSlackEvent(body)) return;
|
|
60275
|
-
|
|
60275
|
+
const mention = event;
|
|
60276
|
+
const channelType = mention.channel_type;
|
|
60277
|
+
if (channelType === "im" || channelType === "mpim") return;
|
|
60278
|
+
await handleSlackMessage(mention, {
|
|
60276
60279
|
source: "app_mention",
|
|
60277
60280
|
wasMentioned: true
|
|
60278
60281
|
});
|
|
@@ -61808,6 +61811,11 @@ function createSlackThreadTsResolver(params) {
|
|
|
61808
61811
|
|
|
61809
61812
|
//#endregion
|
|
61810
61813
|
//#region src/slack/monitor/message-handler.ts
|
|
61814
|
+
const APP_MENTION_RETRY_TTL_MS = 6e4;
|
|
61815
|
+
function buildSeenMessageKey(channelId, ts) {
|
|
61816
|
+
if (!channelId || !ts) return null;
|
|
61817
|
+
return `${channelId}:${ts}`;
|
|
61818
|
+
}
|
|
61811
61819
|
function createSlackMessageHandler(params) {
|
|
61812
61820
|
const { ctx, account } = params;
|
|
61813
61821
|
const debounceMs = resolveInboundDebounceMs({
|
|
@@ -61815,6 +61823,21 @@ function createSlackMessageHandler(params) {
|
|
|
61815
61823
|
channel: "slack"
|
|
61816
61824
|
});
|
|
61817
61825
|
const threadTsResolver = createSlackThreadTsResolver({ client: ctx.app.client });
|
|
61826
|
+
const appMentionRetryKeys = /* @__PURE__ */ new Map();
|
|
61827
|
+
const pruneAppMentionRetryKeys = (now) => {
|
|
61828
|
+
for (const [key, expiresAt] of appMentionRetryKeys) if (expiresAt <= now) appMentionRetryKeys.delete(key);
|
|
61829
|
+
};
|
|
61830
|
+
const rememberAppMentionRetryKey = (key) => {
|
|
61831
|
+
const now = Date.now();
|
|
61832
|
+
pruneAppMentionRetryKeys(now);
|
|
61833
|
+
appMentionRetryKeys.set(key, now + APP_MENTION_RETRY_TTL_MS);
|
|
61834
|
+
};
|
|
61835
|
+
const consumeAppMentionRetryKey = (key) => {
|
|
61836
|
+
pruneAppMentionRetryKeys(Date.now());
|
|
61837
|
+
if (!appMentionRetryKeys.has(key)) return false;
|
|
61838
|
+
appMentionRetryKeys.delete(key);
|
|
61839
|
+
return true;
|
|
61840
|
+
};
|
|
61818
61841
|
const debouncer = createInboundDebouncer({
|
|
61819
61842
|
debounceMs,
|
|
61820
61843
|
buildKey: (entry) => {
|
|
@@ -61847,7 +61870,14 @@ function createSlackMessageHandler(params) {
|
|
|
61847
61870
|
wasMentioned: combinedMentioned || last.opts.wasMentioned
|
|
61848
61871
|
}
|
|
61849
61872
|
});
|
|
61850
|
-
|
|
61873
|
+
const seenMessageKey = buildSeenMessageKey(last.message.channel, last.message.ts);
|
|
61874
|
+
if (!prepared) {
|
|
61875
|
+
const hasMessageSource = entries.some((entry) => entry.opts.source === "message");
|
|
61876
|
+
const hasAppMentionSource = entries.some((entry) => entry.opts.source === "app_mention");
|
|
61877
|
+
if (seenMessageKey && hasMessageSource && !hasAppMentionSource) rememberAppMentionRetryKey(seenMessageKey);
|
|
61878
|
+
return;
|
|
61879
|
+
}
|
|
61880
|
+
if (seenMessageKey) appMentionRetryKeys.delete(seenMessageKey);
|
|
61851
61881
|
if (entries.length > 1) {
|
|
61852
61882
|
const ids = entries.map((entry) => entry.message.ts).filter(Boolean);
|
|
61853
61883
|
if (ids.length > 0) {
|
|
@@ -61865,7 +61895,10 @@ function createSlackMessageHandler(params) {
|
|
|
61865
61895
|
return async (message, opts) => {
|
|
61866
61896
|
if (opts.source === "message" && message.type !== "message") return;
|
|
61867
61897
|
if (opts.source === "message" && message.subtype && message.subtype !== "file_share" && message.subtype !== "bot_message") return;
|
|
61868
|
-
|
|
61898
|
+
const seenMessageKey = buildSeenMessageKey(message.channel, message.ts);
|
|
61899
|
+
if (seenMessageKey && ctx.markMessageSeen(message.channel, message.ts)) {
|
|
61900
|
+
if (opts.source !== "app_mention" || !consumeAppMentionRetryKey(seenMessageKey)) return;
|
|
61901
|
+
}
|
|
61869
61902
|
const resolvedMessage = await threadTsResolver.resolve({
|
|
61870
61903
|
message,
|
|
61871
61904
|
source: opts.source
|
|
@@ -66769,7 +66802,7 @@ function loadWebLoginQr() {
|
|
|
66769
66802
|
return webLoginQrPromise;
|
|
66770
66803
|
}
|
|
66771
66804
|
function loadWebChannel() {
|
|
66772
|
-
webChannelPromise ??= import("./web-
|
|
66805
|
+
webChannelPromise ??= import("./web-DPUOYear.js");
|
|
66773
66806
|
return webChannelPromise;
|
|
66774
66807
|
}
|
|
66775
66808
|
function loadWhatsAppActions() {
|
|
@@ -51479,7 +51479,7 @@ function isVoiceChannelType(type) {
|
|
|
51479
51479
|
function createDefaultDeps() {
|
|
51480
51480
|
return {
|
|
51481
51481
|
sendMessageWhatsApp: async (...args) => {
|
|
51482
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
51482
|
+
const { sendMessageWhatsApp } = await import("./web-gOkp0QXS.js");
|
|
51483
51483
|
return await sendMessageWhatsApp(...args);
|
|
51484
51484
|
},
|
|
51485
51485
|
sendMessageTelegram: async (...args) => {
|
|
@@ -60270,7 +60270,10 @@ function registerSlackMessageEvents(params) {
|
|
|
60270
60270
|
ctx.app.event("app_mention", async ({ event, body }) => {
|
|
60271
60271
|
try {
|
|
60272
60272
|
if (ctx.shouldDropMismatchedSlackEvent(body)) return;
|
|
60273
|
-
|
|
60273
|
+
const mention = event;
|
|
60274
|
+
const channelType = mention.channel_type;
|
|
60275
|
+
if (channelType === "im" || channelType === "mpim") return;
|
|
60276
|
+
await handleSlackMessage(mention, {
|
|
60274
60277
|
source: "app_mention",
|
|
60275
60278
|
wasMentioned: true
|
|
60276
60279
|
});
|
|
@@ -61806,6 +61809,11 @@ function createSlackThreadTsResolver(params) {
|
|
|
61806
61809
|
|
|
61807
61810
|
//#endregion
|
|
61808
61811
|
//#region src/slack/monitor/message-handler.ts
|
|
61812
|
+
const APP_MENTION_RETRY_TTL_MS = 6e4;
|
|
61813
|
+
function buildSeenMessageKey(channelId, ts) {
|
|
61814
|
+
if (!channelId || !ts) return null;
|
|
61815
|
+
return `${channelId}:${ts}`;
|
|
61816
|
+
}
|
|
61809
61817
|
function createSlackMessageHandler(params) {
|
|
61810
61818
|
const { ctx, account } = params;
|
|
61811
61819
|
const debounceMs = resolveInboundDebounceMs({
|
|
@@ -61813,6 +61821,21 @@ function createSlackMessageHandler(params) {
|
|
|
61813
61821
|
channel: "slack"
|
|
61814
61822
|
});
|
|
61815
61823
|
const threadTsResolver = createSlackThreadTsResolver({ client: ctx.app.client });
|
|
61824
|
+
const appMentionRetryKeys = /* @__PURE__ */ new Map();
|
|
61825
|
+
const pruneAppMentionRetryKeys = (now) => {
|
|
61826
|
+
for (const [key, expiresAt] of appMentionRetryKeys) if (expiresAt <= now) appMentionRetryKeys.delete(key);
|
|
61827
|
+
};
|
|
61828
|
+
const rememberAppMentionRetryKey = (key) => {
|
|
61829
|
+
const now = Date.now();
|
|
61830
|
+
pruneAppMentionRetryKeys(now);
|
|
61831
|
+
appMentionRetryKeys.set(key, now + APP_MENTION_RETRY_TTL_MS);
|
|
61832
|
+
};
|
|
61833
|
+
const consumeAppMentionRetryKey = (key) => {
|
|
61834
|
+
pruneAppMentionRetryKeys(Date.now());
|
|
61835
|
+
if (!appMentionRetryKeys.has(key)) return false;
|
|
61836
|
+
appMentionRetryKeys.delete(key);
|
|
61837
|
+
return true;
|
|
61838
|
+
};
|
|
61816
61839
|
const debouncer = createInboundDebouncer({
|
|
61817
61840
|
debounceMs,
|
|
61818
61841
|
buildKey: (entry) => {
|
|
@@ -61845,7 +61868,14 @@ function createSlackMessageHandler(params) {
|
|
|
61845
61868
|
wasMentioned: combinedMentioned || last.opts.wasMentioned
|
|
61846
61869
|
}
|
|
61847
61870
|
});
|
|
61848
|
-
|
|
61871
|
+
const seenMessageKey = buildSeenMessageKey(last.message.channel, last.message.ts);
|
|
61872
|
+
if (!prepared) {
|
|
61873
|
+
const hasMessageSource = entries.some((entry) => entry.opts.source === "message");
|
|
61874
|
+
const hasAppMentionSource = entries.some((entry) => entry.opts.source === "app_mention");
|
|
61875
|
+
if (seenMessageKey && hasMessageSource && !hasAppMentionSource) rememberAppMentionRetryKey(seenMessageKey);
|
|
61876
|
+
return;
|
|
61877
|
+
}
|
|
61878
|
+
if (seenMessageKey) appMentionRetryKeys.delete(seenMessageKey);
|
|
61849
61879
|
if (entries.length > 1) {
|
|
61850
61880
|
const ids = entries.map((entry) => entry.message.ts).filter(Boolean);
|
|
61851
61881
|
if (ids.length > 0) {
|
|
@@ -61863,7 +61893,10 @@ function createSlackMessageHandler(params) {
|
|
|
61863
61893
|
return async (message, opts) => {
|
|
61864
61894
|
if (opts.source === "message" && message.type !== "message") return;
|
|
61865
61895
|
if (opts.source === "message" && message.subtype && message.subtype !== "file_share" && message.subtype !== "bot_message") return;
|
|
61866
|
-
|
|
61896
|
+
const seenMessageKey = buildSeenMessageKey(message.channel, message.ts);
|
|
61897
|
+
if (seenMessageKey && ctx.markMessageSeen(message.channel, message.ts)) {
|
|
61898
|
+
if (opts.source !== "app_mention" || !consumeAppMentionRetryKey(seenMessageKey)) return;
|
|
61899
|
+
}
|
|
61867
61900
|
const resolvedMessage = await threadTsResolver.resolve({
|
|
61868
61901
|
message,
|
|
61869
61902
|
source: opts.source
|
|
@@ -66767,7 +66800,7 @@ function loadWebLoginQr() {
|
|
|
66767
66800
|
return webLoginQrPromise;
|
|
66768
66801
|
}
|
|
66769
66802
|
function loadWebChannel() {
|
|
66770
|
-
webChannelPromise ??= import("./web-
|
|
66803
|
+
webChannelPromise ??= import("./web-gOkp0QXS.js");
|
|
66771
66804
|
return webChannelPromise;
|
|
66772
66805
|
}
|
|
66773
66806
|
function loadWhatsAppActions() {
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { M as getActivePluginRegistry, o as createSubsystemLogger } from "./entry.js";
|
|
3
3
|
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DhajVyRS.js";
|
|
4
4
|
import { i as loadConfig } from "./config-D-Tvm4yj.js";
|
|
5
|
-
import { g as loadOpenClawPlugins } from "./subagent-registry-
|
|
5
|
+
import { g as loadOpenClawPlugins } from "./subagent-registry-DoLtM6tb.js";
|
|
6
6
|
|
|
7
7
|
//#region src/cli/plugin-registry.ts
|
|
8
8
|
var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { gt as loadOpenClawPlugins } from "./reply-
|
|
2
|
+
import { gt as loadOpenClawPlugins } from "./reply-BLgYvx8K.js";
|
|
3
3
|
import { d as getActivePluginRegistry } from "./registry-Dygi7Azw.js";
|
|
4
4
|
import { t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
|
|
5
5
|
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CU-9CR31.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-C_0eELjb.js";
|
|
2
2
|
import { f as readWebSelfId, o as getWebAuthAgeMs, r as resolveWhatsAppAccount } from "./accounts-fnLsjAOi.js";
|
|
3
|
-
import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-
|
|
3
|
+
import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-7CRdEEVf.js";
|
|
4
4
|
import { A as normalizeE164, B as toWhatsappJid, K as logVerbose, N as resolveJidToE164, O as isSelfChatMode, R as sleep, Y as shouldLogVerbose, k as jidToE164, s as normalizeChatChannelId, tt as getChildLogger, x as clamp } from "./registry-DL-33c9X.js";
|
|
5
5
|
import { n as loadConfig } from "./config-BT7sZurc.js";
|
|
6
6
|
import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-C9WnrKN8.js";
|
package/dist/plugin-sdk/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-C_0eELjb.js";
|
|
2
2
|
import { _ as createAccountListHelpers, i as resolveWhatsAppAuthDir, n as resolveDefaultWhatsAppAccountId, r as resolveWhatsAppAccount, t as listWhatsAppAccountIds } from "./accounts-fnLsjAOi.js";
|
|
3
|
-
import { $ as clearHistoryEntriesIfEnabled, A as resolveDiscordUserAllowlist, B as logTypingFailure, C as stripMarkdown, Ct as unbindThreadBindingsBySessionKey, D as resolveSlackUserAllowlist, Dt as BLUEBUBBLES_ACTION_NAMES, Et as BLUEBUBBLES_ACTIONS, F as stringEnum, G as resolveMentionGating, H as removeAckReactionAfterReply, I as recordInboundSession, J as summarizeMapping, K as resolveMentionGatingWithBypass, L as resolveControlCommandGate, M as collectDiscordAuditChannelIds, N as formatDocsLink, O as resolveSlackChannelAllowlist, Ot as BLUEBUBBLES_GROUP_ACTIONS, P as optionalStringEnum, Q as clearHistoryEntries, R as logAckFailure, S as processLineMessage, St as listThreadBindingsBySessionKey, T as attachFooterText, Tt as resolveAllowlistMatchSimple, U as shouldAckReaction, V as createTypingCallbacks, W as shouldAckReactionForWhatsApp, Y as DEFAULT_GROUP_HISTORY_LIMIT, Z as buildPendingHistoryContextFromMap, _t as listDevicePairing, a as normalizeAccountId$1, at as isWSLEnv, bt as registerPluginHttpRoute, ct as DEFAULT_WEBHOOK_MAX_BODY_BYTES, dt as isRequestBodyLimitError, et as recordPendingHistoryEntry, ft as readJsonBodyWithLimit, gt as approveDevicePairing, ht as createDedupeCache, i as listLineAccountIds, it as isWSL2Sync, j as resolveDiscordChannelAllowlist, k as detectBinary, kt as CHANNEL_MESSAGE_ACTION_NAMES, lt as RequestBodyLimitError, mt as requestBodyErrorToText, o as resolveDefaultLineAccountId, ot as isWSLSync, pt as readRequestBodyWithLimit, q as mergeAllowlist, s as resolveLineAccount, st as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, tt as recordPendingHistoryEntryIfEnabled, ut as installRequestBodyLimitGuard, vt as rejectDevicePairing, w as createReceiptCard, wt as formatAllowlistMatchMeta, x as hasMarkdownToConvert, xt as autoBindSpawnedDiscordSubagent, yt as extractToolSend, z as logInboundDrop } from "./reply-
|
|
3
|
+
import { $ as clearHistoryEntriesIfEnabled, A as resolveDiscordUserAllowlist, B as logTypingFailure, C as stripMarkdown, Ct as unbindThreadBindingsBySessionKey, D as resolveSlackUserAllowlist, Dt as BLUEBUBBLES_ACTION_NAMES, Et as BLUEBUBBLES_ACTIONS, F as stringEnum, G as resolveMentionGating, H as removeAckReactionAfterReply, I as recordInboundSession, J as summarizeMapping, K as resolveMentionGatingWithBypass, L as resolveControlCommandGate, M as collectDiscordAuditChannelIds, N as formatDocsLink, O as resolveSlackChannelAllowlist, Ot as BLUEBUBBLES_GROUP_ACTIONS, P as optionalStringEnum, Q as clearHistoryEntries, R as logAckFailure, S as processLineMessage, St as listThreadBindingsBySessionKey, T as attachFooterText, Tt as resolveAllowlistMatchSimple, U as shouldAckReaction, V as createTypingCallbacks, W as shouldAckReactionForWhatsApp, Y as DEFAULT_GROUP_HISTORY_LIMIT, Z as buildPendingHistoryContextFromMap, _t as listDevicePairing, a as normalizeAccountId$1, at as isWSLEnv, bt as registerPluginHttpRoute, ct as DEFAULT_WEBHOOK_MAX_BODY_BYTES, dt as isRequestBodyLimitError, et as recordPendingHistoryEntry, ft as readJsonBodyWithLimit, gt as approveDevicePairing, ht as createDedupeCache, i as listLineAccountIds, it as isWSL2Sync, j as resolveDiscordChannelAllowlist, k as detectBinary, kt as CHANNEL_MESSAGE_ACTION_NAMES, lt as RequestBodyLimitError, mt as requestBodyErrorToText, o as resolveDefaultLineAccountId, ot as isWSLSync, pt as readRequestBodyWithLimit, q as mergeAllowlist, s as resolveLineAccount, st as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, tt as recordPendingHistoryEntryIfEnabled, ut as installRequestBodyLimitGuard, vt as rejectDevicePairing, w as createReceiptCard, wt as formatAllowlistMatchMeta, x as hasMarkdownToConvert, xt as autoBindSpawnedDiscordSubagent, yt as extractToolSend, z as logInboundDrop } from "./reply-7CRdEEVf.js";
|
|
4
4
|
import "./paths-DVWx7USN.js";
|
|
5
5
|
import "./github-copilot-token-Cg0YPPSu.js";
|
|
6
6
|
import { D as resolveSlackAccount, E as resolveDefaultSlackAccountId, F as resolveDiscordAccount, M as listDiscordAccountIds, O as resolveSlackReplyToMode, P as resolveDefaultDiscordAccountId, S as resolveTelegramAccount, T as listSlackAccountIds, _ as normalizeWhatsAppTarget, a as listDiscordDirectoryPeersFromConfig, b as listTelegramAccountIds, c as listTelegramDirectoryGroupsFromConfig, d as listWhatsAppDirectoryPeersFromConfig, f as looksLikeSlackTargetId, g as isWhatsAppGroupJid, i as listDiscordDirectoryGroupsFromConfig, l as listTelegramDirectoryPeersFromConfig, o as listSlackDirectoryGroupsFromConfig, p as normalizeSlackMessagingTarget, s as listSlackDirectoryPeersFromConfig, u as listWhatsAppDirectoryGroupsFromConfig, w as listEnabledSlackAccounts, x as resolveDefaultTelegramAccountId } from "./plugins-a8_TtkpO.js";
|
|
@@ -47,7 +47,7 @@ import "./paths-BNQjLbn7.js";
|
|
|
47
47
|
import { h as onDiagnosticEvent, m as isDiagnosticsEnabled, p as emitDiagnosticEvent } from "./diagnostic-Up1aMyxZ.js";
|
|
48
48
|
import { n as extractOriginalFilename } from "./store-CLotPIp_.js";
|
|
49
49
|
import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-EACA6DIF.js";
|
|
50
|
-
import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-
|
|
50
|
+
import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-BijwJ-sy.js";
|
|
51
51
|
import "./image-DN02b1Un.js";
|
|
52
52
|
import "./pi-model-discovery-LbcEa65a.js";
|
|
53
53
|
import "./api-key-rotation-DVRFDYWE.js";
|