@hanzo/bot 2026.3.11 → 2026.3.13
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/{accounts-cApXM7Ij.js → accounts-BfUDrXkg.js} +17 -17
- package/dist/{accounts-7zwrtsCi.js → accounts-CU6IpCdO.js} +2 -2
- package/dist/{accounts-BEs2omoE.js → accounts-CvwEUGLi.js} +2 -2
- package/dist/{active-listener-DR8OFowd.js → active-listener-BrRv4Xwc.js} +2 -2
- package/dist/{api-key-rotation-RknBrUrn.js → api-key-rotation-GaH2pQmb.js} +2 -2
- package/dist/{audio-preflight-Chfaq_QP.js → audio-preflight-ClPkYtiy.js} +32 -32
- package/dist/{audio-preflight-D2ryNxLv.js → audio-preflight-hEJ-K1Ib.js} +4 -4
- package/dist/{audio-transcription-runner-BI-TLd1r.js → audio-transcription-runner-CqUAFMxM.js} +1 -1
- package/dist/{audio-transcription-runner-BvSPpIzU.js → audio-transcription-runner-DcmYYRTV.js} +12 -12
- package/dist/{audit-membership-runtime-CVVxrZ7j.js → audit-membership-runtime-BJ149bTU.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +51 -51
- package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
- package/dist/bundled/command-logger/handler.js +2 -2
- package/dist/bundled/session-memory/handler.js +51 -51
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-activity-CALqzTg5.js → channel-activity-BtB_KYWB.js} +3 -3
- package/dist/{chrome-CFVzlBUF.js → chrome-CiH9yYg6.js} +18 -18
- package/dist/{chrome-DWoTm_BG.js → chrome-jdOx2dAl.js} +8 -8
- package/dist/{cloud-connect-bZKXaJWj.js → cloud-connect-yv8A2P84.js} +1 -1
- package/dist/{commands-registry-DD9ywdfc.js → commands-registry-CYzULUtG.js} +4 -4
- package/dist/{deliver-B2IvdEAO.js → deliver-CQ6QaVna.js} +21 -21
- package/dist/{deliver-BrVS3qD4.js → deliver-DpRQLcxS.js} +1 -1
- package/dist/{deliver-runtime-y426rL_k.js → deliver-runtime-9qy2zTFN.js} +3 -3
- package/dist/deliver-runtime-AIl3Ydhb.js +36 -0
- package/dist/deps-send-discord.runtime-BCKKTBVj.js +26 -0
- package/dist/deps-send-imessage.runtime-CrYNg1e_.js +25 -0
- package/dist/deps-send-signal.runtime-rttQOioa.js +24 -0
- package/dist/deps-send-slack.runtime-BsCUhMAR.js +22 -0
- package/dist/deps-send-telegram.runtime-sOFkXXMD.js +27 -0
- package/dist/deps-send-whatsapp.runtime-B4PrMybd.js +60 -0
- package/dist/{deps-send-whatsapp.runtime-CUDRJQI6.js → deps-send-whatsapp.runtime-CZEk5mx7.js} +7 -7
- package/dist/{diagnostic-pXxnbxER.js → diagnostic-Dt3OGXoB.js} +2 -2
- package/dist/entry.js +1 -1
- package/dist/{errors-CHd6Q-vF.js → errors-DDrhcWHi.js} +1 -1
- package/dist/extensionAPI.js +6 -6
- package/dist/{fetch-DZVswJ-3.js → fetch-C7bGdK_0.js} +5 -5
- package/dist/{fetch-guard-EqKIhwBB.js → fetch-guard-Danf_0St.js} +2 -2
- package/dist/{frontmatter-B6XNqDx2.js → frontmatter-BFHzrAY7.js} +3 -3
- package/dist/{fs-safe-ClYE3-y0.js → fs-safe-Cou1ijNV.js} +4 -4
- package/dist/{github-copilot-token-BDioPmd6.js → github-copilot-token-D13V9YBz.js} +7 -7
- package/dist/{image-BgWMM5C3.js → image-Cw0N8PLF.js} +6 -6
- package/dist/{image-D99xLnGA.js → image-YeyG7rr8.js} +1 -1
- package/dist/{image-ops-DGh7juCd.js → image-ops-C23SGeMe.js} +2 -2
- package/dist/image-runtime-BTWt5pDL.js +29 -0
- package/dist/{image-runtime-BHiX93k-.js → image-runtime-DZ9BSPkK.js} +3 -3
- package/dist/{ir-BUxTWPJl.js → ir-CeK8iZwE.js} +8 -8
- package/dist/{legacy-names-DZdACm3t.js → legacy-names-Bkl4tjN-.js} +1 -1
- package/dist/llm-slug-generator.js +51 -51
- package/dist/{local-launch-DO77bp0N.js → local-launch-CUwfR4xk.js} +29 -9
- package/dist/{logger-LCC1m_20.js → logger-D4RcXHR-.js} +7 -7
- package/dist/{login-BPpT7LmW.js → login-CHghmysG.js} +5 -5
- package/dist/{login-qr-ROsDrMTV.js → login-qr-CNFNhTf4.js} +10 -10
- package/dist/{manager-DcZ7mOtr.js → manager-DD6mzJNU.js} +13 -13
- package/dist/manager-runtime-Daqs8hiB.js +18 -0
- package/dist/{model-selection-DX7XfNlF.js → model-selection-CLGE3YIs.js} +43 -43
- package/dist/{outbound-attachment-CC04mCS8.js → outbound-attachment-gUN8NzLf.js} +2 -2
- package/dist/{outbound-CQ5XVDFO.js → outbound-qbvc4GA6.js} +6 -6
- package/dist/{path-alias-guards-IQC4IpGS.js → path-alias-guards-BzNEeFKJ.js} +1 -1
- package/dist/{paths-GZsDv0mI.js → paths-0WxUzzEz.js} +4 -4
- package/dist/{paths-Cvc9EM8Y.js → paths-C6TxBCvO.js} +5 -5
- package/dist/{pi-embedded-bHDdzvEW.js → pi-embedded-DF0t5HJD.js} +159 -159
- package/dist/{pi-embedded-DoF5GLjn.js → pi-embedded-bklbT-yp.js} +24 -24
- package/dist/{pi-embedded-helpers-CVj2Bw45.js → pi-embedded-helpers-BT9OkmaI.js} +52 -52
- package/dist/{pi-embedded-helpers-DkZKaPa4.js → pi-embedded-helpers-CSHUPpwW.js} +3 -3
- package/dist/pi-model-discovery-runtime-C9astVbX.js +11 -0
- package/dist/{pi-model-discovery-BYBYqQ0u.js → pi-model-discovery-vsJpfYA9.js} +7 -7
- package/dist/{pi-tools.before-tool-call.runtime-BiTed3Jt.js → pi-tools.before-tool-call.runtime-D-Vj4eZ7.js} +9 -9
- package/dist/plugin-sdk/discord.js +6 -6
- package/dist/plugin-sdk/mattermost.js +3 -3
- package/dist/{plugins-DB-tbkgl.js → plugins-BZY4UQdP.js} +13 -13
- package/dist/{proxy-env-CiOhiqru.js → proxy-env-BgSzvACM.js} +1 -1
- package/dist/{proxy-fetch-lxJGuoUa.js → proxy-fetch-ChfJDZwG.js} +1 -1
- package/dist/{pw-ai-Mq6HuD9y.js → pw-ai-C99W41P5.js} +1 -1
- package/dist/{pw-ai-WtE5uJRQ.js → pw-ai-CaeuHJYc.js} +14 -14
- package/dist/{qmd-manager-Bcw2cb8D.js → qmd-manager-IaHGjYlf.js} +10 -10
- package/dist/{query-expansion-D9bYNybh.js → query-expansion-CzkZbxDS.js} +6 -6
- package/dist/{redact-DqlKR0-n.js → redact-DGz6yigq.js} +1 -1
- package/dist/{run-main-BDJMRMI4.js → run-main-BmfZLBd9.js} +2 -2
- package/dist/{run-with-concurrency-B8f7bYi3.js → run-with-concurrency-Ccm0w34R.js} +4 -4
- package/dist/runtime-whatsapp-login.runtime-BQjNpkbA.js +13 -0
- package/dist/runtime-whatsapp-outbound.runtime-GVjcQLWE.js +22 -0
- package/dist/{send-CkPIBk6V.js → send-BRWGalFX.js} +8 -8
- package/dist/{send-BftnuVa7.js → send-CYoz4Xjy.js} +7 -7
- package/dist/{send-D9k6sRe5.js → send-Cpd5Q5mD.js} +6 -6
- package/dist/{send-yLSU7X_F.js → send-Dsz28eiu.js} +28 -28
- package/dist/{send-pIawmzTN.js → send-tBfK5Za7.js} +5 -5
- package/dist/{session-CgL23zvS.js → session-Dn8bzB0l.js} +8 -8
- package/dist/{skill-commands-Cnz3QjWm.js → skill-commands-LO2hG7Hm.js} +9 -9
- package/dist/{skills-BhLAW7lA.js → skills-mpCKgKof.js} +22 -22
- package/dist/slash-commands.runtime-Qho-6_Lc.js +16 -0
- package/dist/{slash-dispatch.runtime-BI4kyhSk.js → slash-dispatch.runtime-CLPlz-lX.js} +6 -6
- package/dist/slash-dispatch.runtime-CkR-TldC.js +56 -0
- package/dist/slash-skill-commands.runtime-DmrTozXn.js +20 -0
- package/dist/{store-EDjci9yP.js → store-DbpT7v8D.js} +2 -2
- package/dist/subagent-registry-runtime-DWAZpHqO.js +56 -0
- package/dist/{subagent-registry-runtime-nzkRCNeS.js → subagent-registry-runtime-TuyVULIb.js} +6 -6
- package/dist/{subsystem-CdFYjh2k.js → subsystem-W834z9Wa.js} +14 -14
- package/dist/{tables-tp9Zl0hI.js → tables-BpeU6RzS.js} +1 -1
- package/dist/{target-errors-3YX3buv4.js → target-errors-Dcsvl3HX.js} +2 -2
- package/dist/{thinking-BaTRgLOg.js → thinking-DzbkyD99.js} +7 -7
- package/dist/{tokens-mtgzW7UN.js → tokens-Cyi-NbsV.js} +1 -1
- package/dist/{tool-images-C3-c00jy.js → tool-images-DktJ_8C5.js} +2 -2
- package/dist/{web-BOPbMZux.js → web-BByXTa4p.js} +55 -55
- package/dist/{web-72kt7sM1.js → web-Ci3EFOGu.js} +6 -6
- package/dist/{whatsapp-actions-BQWT_h74.js → whatsapp-actions-BK9m2IVX.js} +21 -21
- package/dist/{workspace-DKhOowSl.js → workspace-BhNk7PBH.js} +20 -20
- package/extensions/acpx/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/ci-fix-loop/package.json +1 -1
- package/extensions/continuous-learning/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/diffs/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/flow/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +10 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +10 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +10 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/self-improvement/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +10 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +10 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +10 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +10 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/deliver-runtime-DY7UPWdO.js +0 -36
- package/dist/deps-send-discord.runtime-B_MPWdLu.js +0 -26
- package/dist/deps-send-imessage.runtime-BqgAHmfA.js +0 -25
- package/dist/deps-send-signal.runtime-B4CYnceH.js +0 -24
- package/dist/deps-send-slack.runtime-dtkYbGcS.js +0 -22
- package/dist/deps-send-telegram.runtime-C5f1UIXW.js +0 -27
- package/dist/deps-send-whatsapp.runtime-D6XwcPPI.js +0 -60
- package/dist/image-runtime-v_h0aTZD.js +0 -29
- package/dist/manager-runtime-D_u9rPEs.js +0 -18
- package/dist/pi-model-discovery-runtime-ZDLroaI6.js +0 -11
- package/dist/runtime-whatsapp-login.runtime-A_4Z63o5.js +0 -13
- package/dist/runtime-whatsapp-outbound.runtime-QGzX864p.js +0 -22
- package/dist/slash-commands.runtime-BD-KtYmG.js +0 -16
- package/dist/slash-dispatch.runtime-Dzq3WGxH.js +0 -56
- package/dist/slash-skill-commands.runtime-EpYM7zik.js +0 -20
- package/dist/subagent-registry-runtime-DwTeW5f1.js +0 -56
|
@@ -1,68 +1,68 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { _ as toAgentModelListLike, a as resolveAgentDir, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentConfig, l as resolveDefaultAgentId, n as hasConfiguredModelFallbacks, p as resolveSessionAgentIds, r as listAgentIds, s as resolveAgentSkillsFilter, t as runTasksWithConcurrency, u as resolveEffectiveModelFallbacks } from "./run-with-concurrency-
|
|
3
|
-
import { a as resolveGatewayPort, c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix, n as STATE_DIR, r as resolveConfigPath } from "./paths-
|
|
4
|
-
import { C as normalizeLogLevel, E as consumeRootOptionToken, T as FLAG_TERMINATOR, _ as isRich, a as clearActiveProgressLine, c as danger, f as setVerbose, g as colorize, h as warn, i as defaultRuntime, o as registerActiveProgressLine, p as shouldLogVerbose, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger, u as logVerbose, v as theme, w as resolvePreferredOpenClawTmpDir, y as getChildLogger } from "./subsystem-
|
|
5
|
-
import { $ as parseAgentSessionKey, A as normalizeWindowsPathForComparison, B as resolveAgentIdFromSessionKey, G as normalizeAccountId$2, H as sanitizeAgentId, I as classifySessionKeyShape, J as deriveSessionChatType, K as normalizeOptionalAccountId, L as isValidAgentId, M as DEFAULT_MAIN_KEY, N as buildAgentMainSessionKey, P as buildAgentPeerSessionKey, Q as isSubagentSessionKey, R as normalizeAgentId, U as scopedHeartbeatWakeOptions, V as resolveThreadSessionKeys, W as DEFAULT_ACCOUNT_ID, X as isAcpSessionKey, Y as getSubagentDepth, Z as isCronSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as openBoundaryFile, et as resolveThreadParentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, j as DEFAULT_AGENT_ID, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, q as isBlockedObjectKey, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFileSync, z as normalizeMainKey } from "./workspace-
|
|
6
|
-
import { C as sleep$1, D as isPlainObject, E as truncateUtf16Safe, S as shortenHomePath, a as CONFIG_DIR, d as formatTerminalLink, f as isRecord$1, h as normalizeE164, i as logWarn, l as ensureDir$3, n as logError, r as logInfo, s as clampInt, t as logDebug, u as escapeRegExp, w as sliceUtf16Safe, x as shortenHomeInString, y as resolveUserPath } from "./logger-
|
|
7
|
-
import { $n as isDangerousHostEnvVarName, $t as setActivePluginRegistry, A as getCustomProviderApiKey, An as extractShellWrapperInlineCommand, At as isAvatarHttpUrl, B as markAuthProfileFailure, Bn as isSafeExecutableValue, Bt as resolveEffectiveEnableState, C as OLLAMA_NATIVE_BASE_URL, Cn as buildEnforcedShellCommand, Cr as DEFAULT_CONTEXT_TOKENS, D as buildStreamErrorAssistantMessage, Dn as matchAllowlist, E as buildAssistantMessageWithZeroUsage, En as DEFAULT_SAFE_BINS, Fn as splitShellArgs, Ft as discoverOpenClawPlugins, G as resolveSecretRefValues, Gt as listChatChannels, H as resolveProfilesUnavailableReason, Hn as resolveDiscordPreviewStreamMode, I as resolveAuthProfileOrder, In as SAFE_BIN_PROFILES, It as isPathInside, J as isRecord$2, Jn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Jt as normalizeChatChannelId, K as describeUnknownError$1, Kt as normalizeAnyChannelId, L as clearExpiredCooldowns, Ln as normalizeSafeBinProfileFixtures, Lt as safeStatSync, M as resolveApiKeyForProvider, Mn as isShellWrapperExecutable, Mt as isSupportedLocalAvatarExtension, N as resolveEnvApiKey, Nn as unwrapKnownDispatchWrapperInvocation, Nt as validateJsonSchemaValue, O as buildUsageWithNoCost, On as resolveAllowlistCandidatePath, Ot as AVATAR_MAX_BYTES, P as resolveModelAuthMode, Pn as unwrapKnownShellMultiplexerInvocation, Pt as loadPluginManifestRegistry, Q as readConfigFileSnapshot, Qn as resolveShellEnvFallbackTimeoutMs, Qt as requireActivePluginRegistry, R as getSoonestCooldownExpiry, Rn as resolveSafeBinProfiles, Rt as applyTestPluginDefaults, S as retryAsync, Sn as analyzeShellCommand, Sr as splitTrailingAuthProfile, T as buildAssistantMessage, Tn as splitCommandChain, Tr as DEFAULT_PROVIDER, U as resolveApiKeyForProfile, Un as resolveSlackNativeStreaming, Ut as CHAT_CHANNEL_ORDER, V as markAuthProfileUsed, Vn as mapStreamingModeToSlackLegacyDraftStreamMode, Vt as resolveMemorySlotDecision, W as resolveSecretRefValue, Wn as resolveSlackStreamingMode, Wt as getChatChannelMeta, Xn as VERSION, Xt as getActivePluginRegistryKey, Y as parseDotPath, Yn as resolveAgentMaxConcurrent, Yt as getActivePluginRegistry, Z as loadConfig, Zn as getShellPathFromLoginShell, _n as getTrustedSafeBinDirs, _r as coerceSecretRef, a as isCliProvider, an as listPluginCommands, ar as ensureAuthProfileStore, at as resolveTelegramCustomCommands, bn as normalizeTrustedSafeBinDirs, c as normalizeProviderId, cn as resolveContextEngine, cr as withFileLock, d as resolveDefaultModelForAgent, dn as setConfigOverride, dt as normalizeScpRemoteHost, en as createPluginRegistry, er as isTruthyEnvValue, et as resolveConfigSnapshotHash, f as resolveModelRefFromString, fn as unsetConfigOverride, fr as formatCliCommand, ft as parseNonNegativeByteSize, gn as unsetConfigValueAtPath, gr as normalizeSecretInput, h as resolveThinkingDefault, hn as setConfigValueAtPath, ht as parseDurationMs, i as findNormalizedProviderValue, in as getPluginCommandSpecs, ir as markAuthProfileGood, it as normalizeTelegramCommandName, j as requireApiKey, jn as isDispatchWrapperExecutable, jt as isPathWithinRoot, k as getApiKeyForModel, kn as resolveCommandResolutionFromArgv, kt as isAvatarDataUrl, ln as getConfigOverrides, lt as resolveIMessageAttachmentRoots, m as resolveSubagentSpawnModelSelection, mn as parseConfigPath, mr as resolveAuthProfileDisplayLabel, n as buildConfiguredAllowlistKeys, nn as clearPluginCommands, nr as dedupeProfileIds, nt as validateConfigObjectWithPlugins, o as modelKey, on as matchPluginCommand, or as resolveAuthStorePathForDisplay, p as resolveReasoningDefault, pn as getConfigValueAtPath, pr as resolveCliName, pt as secretRefKey, q as isNonEmptyString, qt as normalizeChannelId$1, r as buildModelAliasIndex, rn as executePluginCommand, rr as listProfilesForProvider, rt as TELEGRAM_COMMAND_NAME_PATTERN, s as normalizeModelRef$2, sn as registerContextEngine, sr as resolveOpenClawAgentDir, st as isInboundPathAllowed, t as buildAllowedModelSet, tn as normalizePluginHttpPath, tr as resolveOwnerDisplaySetting, tt as writeConfigFile, u as resolveConfiguredModelRef, un as resetConfigOverrides, ut as resolveIMessageRemoteAttachmentRoots, vn as isTrustedSafeBinPath, vr as hasConfiguredSecretInput, w as createOllamaStreamFn, wn as isWindowsPlatform, wr as DEFAULT_MODEL, x as resolveRetryConfig, xn as validateSafeBinArgv, xr as resolveSecretInputRef, yn as listWritableExplicitTrustedSafeBinDirs, yr as normalizeResolvedSecretInputString, z as isProfileInCooldown, zn as applyMergePatch, zt as normalizePluginsConfig } from "./model-selection-
|
|
8
|
-
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-
|
|
9
|
-
import { c as parseBooleanValue$1, n as MANIFEST_KEY, r as createInternalHookEvent, s as triggerInternalHook } from "./legacy-names-
|
|
10
|
-
import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-
|
|
11
|
-
import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-
|
|
12
|
-
import { a as logWebSelfId, g as resolveAccountEntry, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-
|
|
13
|
-
import { C as createDiscordActionGate, E as normalizeDiscordToken, S as inspectDiscordAccount, T as resolveDiscordAccount, _ as resolveSlackAccount, a as normalizeWhatsAppTarget, b as resolveSlackBotToken, c as listEnabledTelegramAccounts, d as resolveTelegramPollActionGateState, f as resolveTelegramToken, g as inspectSlackAccount, h as listAcpBindings, i as isWhatsAppGroupJid, l as listTelegramAccountIds, m as listBindings, n as listChannelPlugins, o as inspectTelegramAccount, p as buildChannelAccountBindings, r as normalizeChannelId$2, s as createTelegramActionGate, t as getChannelPlugin, u as resolveTelegramAccount, v as resolveSlackReplyToMode, w as listEnabledDiscordAccounts, x as normalizeChatType, y as resolveSlackAppToken } from "./plugins-
|
|
14
|
-
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-
|
|
15
|
-
import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-
|
|
2
|
+
import { _ as toAgentModelListLike, a as resolveAgentDir, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentConfig, l as resolveDefaultAgentId, n as hasConfiguredModelFallbacks, p as resolveSessionAgentIds, r as listAgentIds, s as resolveAgentSkillsFilter, t as runTasksWithConcurrency, u as resolveEffectiveModelFallbacks } from "./run-with-concurrency-Ccm0w34R.js";
|
|
3
|
+
import { a as resolveGatewayPort, c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix, n as STATE_DIR, r as resolveConfigPath } from "./paths-C6TxBCvO.js";
|
|
4
|
+
import { C as normalizeLogLevel, E as consumeRootOptionToken, T as FLAG_TERMINATOR, _ as isRich, a as clearActiveProgressLine, c as danger, f as setVerbose, g as colorize, h as warn, i as defaultRuntime, o as registerActiveProgressLine, p as shouldLogVerbose, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger, u as logVerbose, v as theme, w as resolvePreferredOpenClawTmpDir, y as getChildLogger } from "./subsystem-W834z9Wa.js";
|
|
5
|
+
import { $ as parseAgentSessionKey, A as normalizeWindowsPathForComparison, B as resolveAgentIdFromSessionKey, G as normalizeAccountId$2, H as sanitizeAgentId, I as classifySessionKeyShape, J as deriveSessionChatType, K as normalizeOptionalAccountId, L as isValidAgentId, M as DEFAULT_MAIN_KEY, N as buildAgentMainSessionKey, P as buildAgentPeerSessionKey, Q as isSubagentSessionKey, R as normalizeAgentId, U as scopedHeartbeatWakeOptions, V as resolveThreadSessionKeys, W as DEFAULT_ACCOUNT_ID, X as isAcpSessionKey, Y as getSubagentDepth, Z as isCronSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, b as openBoundaryFile, et as resolveThreadParentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, j as DEFAULT_AGENT_ID, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, q as isBlockedObjectKey, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFileSync, z as normalizeMainKey } from "./workspace-BhNk7PBH.js";
|
|
6
|
+
import { C as sleep$1, D as isPlainObject, E as truncateUtf16Safe, S as shortenHomePath, a as CONFIG_DIR, d as formatTerminalLink, f as isRecord$1, h as normalizeE164, i as logWarn, l as ensureDir$3, n as logError, r as logInfo, s as clampInt, t as logDebug, u as escapeRegExp, w as sliceUtf16Safe, x as shortenHomeInString, y as resolveUserPath } from "./logger-D4RcXHR-.js";
|
|
7
|
+
import { $n as isDangerousHostEnvVarName, $t as setActivePluginRegistry, A as getCustomProviderApiKey, An as extractShellWrapperInlineCommand, At as isAvatarHttpUrl, B as markAuthProfileFailure, Bn as isSafeExecutableValue, Bt as resolveEffectiveEnableState, C as OLLAMA_NATIVE_BASE_URL, Cn as buildEnforcedShellCommand, Cr as DEFAULT_CONTEXT_TOKENS, D as buildStreamErrorAssistantMessage, Dn as matchAllowlist, E as buildAssistantMessageWithZeroUsage, En as DEFAULT_SAFE_BINS, Fn as splitShellArgs, Ft as discoverOpenClawPlugins, G as resolveSecretRefValues, Gt as listChatChannels, H as resolveProfilesUnavailableReason, Hn as resolveDiscordPreviewStreamMode, I as resolveAuthProfileOrder, In as SAFE_BIN_PROFILES, It as isPathInside, J as isRecord$2, Jn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Jt as normalizeChatChannelId, K as describeUnknownError$1, Kt as normalizeAnyChannelId, L as clearExpiredCooldowns, Ln as normalizeSafeBinProfileFixtures, Lt as safeStatSync, M as resolveApiKeyForProvider, Mn as isShellWrapperExecutable, Mt as isSupportedLocalAvatarExtension, N as resolveEnvApiKey, Nn as unwrapKnownDispatchWrapperInvocation, Nt as validateJsonSchemaValue, O as buildUsageWithNoCost, On as resolveAllowlistCandidatePath, Ot as AVATAR_MAX_BYTES, P as resolveModelAuthMode, Pn as unwrapKnownShellMultiplexerInvocation, Pt as loadPluginManifestRegistry, Q as readConfigFileSnapshot, Qn as resolveShellEnvFallbackTimeoutMs, Qt as requireActivePluginRegistry, R as getSoonestCooldownExpiry, Rn as resolveSafeBinProfiles, Rt as applyTestPluginDefaults, S as retryAsync, Sn as analyzeShellCommand, Sr as splitTrailingAuthProfile, T as buildAssistantMessage, Tn as splitCommandChain, Tr as DEFAULT_PROVIDER, U as resolveApiKeyForProfile, Un as resolveSlackNativeStreaming, Ut as CHAT_CHANNEL_ORDER, V as markAuthProfileUsed, Vn as mapStreamingModeToSlackLegacyDraftStreamMode, Vt as resolveMemorySlotDecision, W as resolveSecretRefValue, Wn as resolveSlackStreamingMode, Wt as getChatChannelMeta, Xn as VERSION, Xt as getActivePluginRegistryKey, Y as parseDotPath, Yn as resolveAgentMaxConcurrent, Yt as getActivePluginRegistry, Z as loadConfig, Zn as getShellPathFromLoginShell, _n as getTrustedSafeBinDirs, _r as coerceSecretRef, a as isCliProvider, an as listPluginCommands, ar as ensureAuthProfileStore, at as resolveTelegramCustomCommands, bn as normalizeTrustedSafeBinDirs, c as normalizeProviderId, cn as resolveContextEngine, cr as withFileLock, d as resolveDefaultModelForAgent, dn as setConfigOverride, dt as normalizeScpRemoteHost, en as createPluginRegistry, er as isTruthyEnvValue, et as resolveConfigSnapshotHash, f as resolveModelRefFromString, fn as unsetConfigOverride, fr as formatCliCommand, ft as parseNonNegativeByteSize, gn as unsetConfigValueAtPath, gr as normalizeSecretInput, h as resolveThinkingDefault, hn as setConfigValueAtPath, ht as parseDurationMs, i as findNormalizedProviderValue, in as getPluginCommandSpecs, ir as markAuthProfileGood, it as normalizeTelegramCommandName, j as requireApiKey, jn as isDispatchWrapperExecutable, jt as isPathWithinRoot, k as getApiKeyForModel, kn as resolveCommandResolutionFromArgv, kt as isAvatarDataUrl, ln as getConfigOverrides, lt as resolveIMessageAttachmentRoots, m as resolveSubagentSpawnModelSelection, mn as parseConfigPath, mr as resolveAuthProfileDisplayLabel, n as buildConfiguredAllowlistKeys, nn as clearPluginCommands, nr as dedupeProfileIds, nt as validateConfigObjectWithPlugins, o as modelKey, on as matchPluginCommand, or as resolveAuthStorePathForDisplay, p as resolveReasoningDefault, pn as getConfigValueAtPath, pr as resolveCliName, pt as secretRefKey, q as isNonEmptyString, qt as normalizeChannelId$1, r as buildModelAliasIndex, rn as executePluginCommand, rr as listProfilesForProvider, rt as TELEGRAM_COMMAND_NAME_PATTERN, s as normalizeModelRef$2, sn as registerContextEngine, sr as resolveOpenClawAgentDir, st as isInboundPathAllowed, t as buildAllowedModelSet, tn as normalizePluginHttpPath, tr as resolveOwnerDisplaySetting, tt as writeConfigFile, u as resolveConfiguredModelRef, un as resetConfigOverrides, ut as resolveIMessageRemoteAttachmentRoots, vn as isTrustedSafeBinPath, vr as hasConfiguredSecretInput, w as createOllamaStreamFn, wn as isWindowsPlatform, wr as DEFAULT_MODEL, x as resolveRetryConfig, xn as validateSafeBinArgv, xr as resolveSecretInputRef, yn as listWritableExplicitTrustedSafeBinDirs, yr as normalizeResolvedSecretInputString, z as isProfileInCooldown, zn as applyMergePatch, zt as normalizePluginsConfig } from "./model-selection-CLGE3YIs.js";
|
|
8
|
+
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-D13V9YBz.js";
|
|
9
|
+
import { c as parseBooleanValue$1, n as MANIFEST_KEY, r as createInternalHookEvent, s as triggerInternalHook } from "./legacy-names-Bkl4tjN-.js";
|
|
10
|
+
import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-DzbkyD99.js";
|
|
11
|
+
import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-Cyi-NbsV.js";
|
|
12
|
+
import { a as logWebSelfId, g as resolveAccountEntry, i as getWebAuthAgeMs, m as webAuthExists, n as resolveWhatsAppAccount, o as logoutWeb, t as hasAnyWhatsAppAuth, u as readWebSelfId } from "./accounts-BfUDrXkg.js";
|
|
13
|
+
import { C as createDiscordActionGate, E as normalizeDiscordToken, S as inspectDiscordAccount, T as resolveDiscordAccount, _ as resolveSlackAccount, a as normalizeWhatsAppTarget, b as resolveSlackBotToken, c as listEnabledTelegramAccounts, d as resolveTelegramPollActionGateState, f as resolveTelegramToken, g as inspectSlackAccount, h as listAcpBindings, i as isWhatsAppGroupJid, l as listTelegramAccountIds, m as listBindings, n as listChannelPlugins, o as inspectTelegramAccount, p as buildChannelAccountBindings, r as normalizeChannelId$2, s as createTelegramActionGate, t as getChannelPlugin, u as resolveTelegramAccount, v as resolveSlackReplyToMode, w as listEnabledDiscordAccounts, x as normalizeChatType, y as resolveSlackAppToken } from "./plugins-BZY4UQdP.js";
|
|
14
|
+
import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-Cpd5Q5mD.js";
|
|
15
|
+
import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-BRWGalFX.js";
|
|
16
16
|
import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-CXrBi7Jq.js";
|
|
17
|
-
import { A as joinPresentTextSegments, C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-
|
|
18
|
-
import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-
|
|
19
|
-
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-
|
|
17
|
+
import { A as joinPresentTextSegments, C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-CQ6QaVna.js";
|
|
18
|
+
import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-Dt3OGXoB.js";
|
|
19
|
+
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-CU6IpCdO.js";
|
|
20
20
|
import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-BiE9e9-P.js";
|
|
21
|
-
import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-
|
|
22
|
-
import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-
|
|
23
|
-
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-
|
|
24
|
-
import { $ as deliveryContextKey, $t as matchesAnyGlobPattern, A as isRawApiErrorPayload, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCloudCodeAssistFormatError, Ct as setSessionRuntimeModel, D as isFailoverErrorMessage, Dt as resolveMainSessionKey, E as isFailoverAssistantError, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateSessionStore, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageDimensionError, Mt as resolveSessionLockMaxHoldFromTimeout, N as parseImageSizeError, Nt as createBrowserRouteContext, O as isLikelyContextOverflowError, Ot as deriveSessionMetaPatch, P as sanitizeUserFacingText, Pt as registerBrowserRoutes, Q as deliveryContextFromSession, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isBillingAssistantError, St as resolveFreshSessionTotalTokens, T as isContextOverflowError, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as isCacheEnabled, Xt as normalizeToolName, Y as updateSessionStoreEntry, Yt as expandToolGroups, Z as resolveCacheTtlMs$1, Zt as resolveToolProfilePolicy, _ as formatAssistantErrorText, _t as resolveSessionResetPolicy, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as capArrayByJsonBytes, b as getApiErrorPayloadFingerprint, bt as DEFAULT_RESET_TRIGGERS, c as extractToolCallsFromAssistant, ct as parseInlineDirectives$1, d as downgradeOpenAIFunctionCallReasoningPairs, dt as hasInterSessionUserProvenance, en as buildBootstrapContextFiles, et as mergeDeliveryContext, f as downgradeOpenAIReasoningBlocks, ft as normalizeInputProvenance, g as classifyFailoverReasonFromHttpStatus, gt as resolveChannelResetConfig, h as classifyFailoverReason, ht as evaluateSessionFreshness, in as resolveBootstrapTotalMaxChars, it as archiveSessionTranscripts, j as isTransientHttpError, jt as acquireSessionWriteLock, k as isRateLimitAssistantError, kt as resolveConversationLabel, l as extractToolResultId, lt as INPUT_PROVENANCE_KIND_VALUES, m as BILLING_ERROR_USER_MESSAGE, mt as resolveSessionKey, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeSessionDeliveryFields, o as normalizeTextForComparison, ot as countToolResults, p as isGoogleModelApi, pt as jsonUtf8Bytes, q as updateLastRoute, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeAccountId$3, s as sanitizeSessionMessagesImages, st as extractToolCallNames, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as normalizeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as applyInputProvenanceToUserMessage, v as formatBillingErrorMessage, vt as resolveSessionResetType, w as isCompactionFailureError, wt as canonicalizeMainSessionAlias, x as isAuthAssistantError, xt as mergeSessionEntry, y as formatRawAssistantErrorForUi, yt as resolveThreadFlag, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-
|
|
25
|
-
import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-
|
|
26
|
-
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-
|
|
27
|
-
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-
|
|
28
|
-
import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-
|
|
29
|
-
import { i as formatUncaughtError, o as readErrorName, r as formatErrorMessage } from "./errors-
|
|
30
|
-
import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-
|
|
31
|
-
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-
|
|
32
|
-
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-
|
|
21
|
+
import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-C23SGeMe.js";
|
|
22
|
+
import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-Dsz28eiu.js";
|
|
23
|
+
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-vsJpfYA9.js";
|
|
24
|
+
import { $ as deliveryContextKey, $t as matchesAnyGlobPattern, A as isRawApiErrorPayload, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCloudCodeAssistFormatError, Ct as setSessionRuntimeModel, D as isFailoverErrorMessage, Dt as resolveMainSessionKey, E as isFailoverAssistantError, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateSessionStore, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageDimensionError, Mt as resolveSessionLockMaxHoldFromTimeout, N as parseImageSizeError, Nt as createBrowserRouteContext, O as isLikelyContextOverflowError, Ot as deriveSessionMetaPatch, P as sanitizeUserFacingText, Pt as registerBrowserRoutes, Q as deliveryContextFromSession, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isBillingAssistantError, St as resolveFreshSessionTotalTokens, T as isContextOverflowError, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as isCacheEnabled, Xt as normalizeToolName, Y as updateSessionStoreEntry, Yt as expandToolGroups, Z as resolveCacheTtlMs$1, Zt as resolveToolProfilePolicy, _ as formatAssistantErrorText, _t as resolveSessionResetPolicy, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as capArrayByJsonBytes, b as getApiErrorPayloadFingerprint, bt as DEFAULT_RESET_TRIGGERS, c as extractToolCallsFromAssistant, ct as parseInlineDirectives$1, d as downgradeOpenAIFunctionCallReasoningPairs, dt as hasInterSessionUserProvenance, en as buildBootstrapContextFiles, et as mergeDeliveryContext, f as downgradeOpenAIReasoningBlocks, ft as normalizeInputProvenance, g as classifyFailoverReasonFromHttpStatus, gt as resolveChannelResetConfig, h as classifyFailoverReason, ht as evaluateSessionFreshness, in as resolveBootstrapTotalMaxChars, it as archiveSessionTranscripts, j as isTransientHttpError, jt as acquireSessionWriteLock, k as isRateLimitAssistantError, kt as resolveConversationLabel, l as extractToolResultId, lt as INPUT_PROVENANCE_KIND_VALUES, m as BILLING_ERROR_USER_MESSAGE, mt as resolveSessionKey, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeSessionDeliveryFields, o as normalizeTextForComparison, ot as countToolResults, p as isGoogleModelApi, pt as jsonUtf8Bytes, q as updateLastRoute, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeAccountId$3, s as sanitizeSessionMessagesImages, st as extractToolCallNames, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as normalizeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as applyInputProvenanceToUserMessage, v as formatBillingErrorMessage, vt as resolveSessionResetType, w as isCompactionFailureError, wt as canonicalizeMainSessionAlias, x as isAuthAssistantError, xt as mergeSessionEntry, y as formatRawAssistantErrorForUi, yt as resolveThreadFlag, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-BT9OkmaI.js";
|
|
25
|
+
import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-CiH9yYg6.js";
|
|
26
|
+
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-mpCKgKof.js";
|
|
27
|
+
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-BzNEeFKJ.js";
|
|
28
|
+
import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-DGz6yigq.js";
|
|
29
|
+
import { i as formatUncaughtError, o as readErrorName, r as formatErrorMessage } from "./errors-DDrhcWHi.js";
|
|
30
|
+
import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-Cou1ijNV.js";
|
|
31
|
+
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-BgSzvACM.js";
|
|
32
|
+
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-DbpT7v8D.js";
|
|
33
33
|
import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-D7-rxoSr.js";
|
|
34
|
-
import { t as resolveIMessageAccount } from "./accounts-
|
|
35
|
-
import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-
|
|
34
|
+
import { t as resolveIMessageAccount } from "./accounts-CvwEUGLi.js";
|
|
35
|
+
import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-0WxUzzEz.js";
|
|
36
36
|
import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-uYL2gEou.js";
|
|
37
|
-
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-
|
|
38
|
-
import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureOpenClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-
|
|
39
|
-
import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-
|
|
40
|
-
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-
|
|
37
|
+
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-DktJ_8C5.js";
|
|
38
|
+
import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureOpenClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-Cw0N8PLF.js";
|
|
39
|
+
import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-DcmYYRTV.js";
|
|
40
|
+
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-C7bGdK_0.js";
|
|
41
41
|
import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-Wgx3OXYj.js";
|
|
42
|
-
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
43
|
-
import { t as makeProxyFetch } from "./proxy-fetch-
|
|
44
|
-
import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-
|
|
45
|
-
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-
|
|
46
|
-
import { _ as isRestartEnabled, a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, g as isNativeCommandsExplicitlyDisabled, h as isCommandFlagEnabled, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs, v as resolveNativeCommandsEnabled, y as resolveNativeSkillsEnabled } from "./commands-registry-
|
|
47
|
-
import { a as getRemoteSkillEligibility, c as pruneExpiredPending, i as resolveSkillCommandInvocation, l as resolvePairingPaths, n as listSkillCommandsForAgents, o as ensureSkillsWatcher, r as listSkillCommandsForWorkspace, s as getSkillsSnapshotVersion, t as listReservedChatSlashCommandNames } from "./skill-commands-
|
|
42
|
+
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-Danf_0St.js";
|
|
43
|
+
import { t as makeProxyFetch } from "./proxy-fetch-ChfJDZwG.js";
|
|
44
|
+
import { _ as isSafeFenceBreak, a as loadWebMedia, c as chunkByNewline, d as chunkMarkdownTextWithMode, f as chunkText, g as findFenceSpanAt, h as resolveTextChunkLimit, i as getDefaultLocalRoots, m as resolveChunkMode, o as loadWebMediaRaw, p as chunkTextWithMode, s as resolveMarkdownTableMode, u as chunkMarkdownText, v as parseFenceSpans } from "./ir-CeK8iZwE.js";
|
|
45
|
+
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-Dcsvl3HX.js";
|
|
46
|
+
import { _ as isRestartEnabled, a as listChatCommandsForConfig, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, g as isNativeCommandsExplicitlyDisabled, h as isCommandFlagEnabled, i as listChatCommands, l as normalizeCommandBody, m as shouldHandleTextCommands, n as findCommandByNativeName, o as listNativeCommandSpecs, p as serializeCommandArgs, r as isCommandEnabled, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs, v as resolveNativeCommandsEnabled, y as resolveNativeSkillsEnabled } from "./commands-registry-CYzULUtG.js";
|
|
47
|
+
import { a as getRemoteSkillEligibility, c as pruneExpiredPending, i as resolveSkillCommandInvocation, l as resolvePairingPaths, n as listSkillCommandsForAgents, o as ensureSkillsWatcher, r as listSkillCommandsForWorkspace, s as getSkillsSnapshotVersion, t as listReservedChatSlashCommandNames } from "./skill-commands-LO2hG7Hm.js";
|
|
48
48
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BfuG8uZ8.js";
|
|
49
49
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-CmCpeg5n.js";
|
|
50
|
-
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-
|
|
50
|
+
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-BtB_KYWB.js";
|
|
51
51
|
import { t as buildOutboundMediaLoadOptions } from "./load-options-BFUunM8u.js";
|
|
52
52
|
import { n as normalizePollInput, r as resolvePollMaxSelections } from "./polls-C_BruSkP.js";
|
|
53
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
54
|
-
import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-
|
|
55
|
-
import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-
|
|
56
|
-
import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-
|
|
57
|
-
import { n as resolveMemorySearchConfig } from "./manager-
|
|
58
|
-
import { m as normalizeExtraMemoryPaths, n as isQueryStopWordToken, p as listMemoryFiles, t as extractKeywords } from "./query-expansion-
|
|
53
|
+
import { t as convertMarkdownTables } from "./tables-BpeU6RzS.js";
|
|
54
|
+
import { a as signalCheck, i as resolveSignalRpcContext, n as sendReadReceiptSignal, o as signalRpcRequest, r as sendTypingSignal, s as streamSignalEvents, t as sendMessageSignal } from "./send-tBfK5Za7.js";
|
|
55
|
+
import { a as isAllowedIMessageSender, i as formatIMessageChatTarget, n as createIMessageRpcClient, o as normalizeIMessageHandle, r as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, s as parseIMessageTarget, t as sendMessageIMessage } from "./send-CYoz4Xjy.js";
|
|
56
|
+
import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-BrRv4Xwc.js";
|
|
57
|
+
import { n as resolveMemorySearchConfig } from "./manager-DD6mzJNU.js";
|
|
58
|
+
import { m as normalizeExtraMemoryPaths, n as isQueryStopWordToken, p as listMemoryFiles, t as extractKeywords } from "./query-expansion-CzkZbxDS.js";
|
|
59
59
|
import { createRequire } from "node:module";
|
|
60
|
-
import * as fs$
|
|
60
|
+
import * as fs$1 from "node:fs/promises";
|
|
61
61
|
import fs, { appendFile, mkdir } from "node:fs/promises";
|
|
62
62
|
import os, { homedir } from "node:os";
|
|
63
63
|
import * as path$1 from "node:path";
|
|
64
64
|
import path, { isAbsolute } from "node:path";
|
|
65
|
-
import
|
|
65
|
+
import syncFs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
66
66
|
import JSON5 from "json5";
|
|
67
67
|
import { inspect, isDeepStrictEqual, promisify } from "node:util";
|
|
68
68
|
import { execFile, execFileSync, spawn, spawnSync } from "node:child_process";
|
|
@@ -3516,7 +3516,7 @@ async function resolveOpenClawDocsPath(params) {
|
|
|
3516
3516
|
const workspaceDir = params.workspaceDir?.trim();
|
|
3517
3517
|
if (workspaceDir) {
|
|
3518
3518
|
const workspaceDocs = path.join(workspaceDir, "docs");
|
|
3519
|
-
if (
|
|
3519
|
+
if (syncFs.existsSync(workspaceDocs)) return workspaceDocs;
|
|
3520
3520
|
}
|
|
3521
3521
|
const packageRoot = await resolveOpenClawPackageRoot({
|
|
3522
3522
|
cwd: params.cwd,
|
|
@@ -3525,7 +3525,7 @@ async function resolveOpenClawDocsPath(params) {
|
|
|
3525
3525
|
});
|
|
3526
3526
|
if (!packageRoot) return null;
|
|
3527
3527
|
const packageDocs = path.join(packageRoot, "docs");
|
|
3528
|
-
return
|
|
3528
|
+
return syncFs.existsSync(packageDocs) ? packageDocs : null;
|
|
3529
3529
|
}
|
|
3530
3530
|
|
|
3531
3531
|
//#endregion
|
|
@@ -6682,7 +6682,7 @@ function resolveDefaultIdentityPath() {
|
|
|
6682
6682
|
return path.join(resolveStateDir(), "identity", "device.json");
|
|
6683
6683
|
}
|
|
6684
6684
|
function ensureDir$2(filePath) {
|
|
6685
|
-
|
|
6685
|
+
syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
6686
6686
|
}
|
|
6687
6687
|
const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
|
|
6688
6688
|
function base64UrlEncode(buf) {
|
|
@@ -6718,8 +6718,8 @@ function generateIdentity() {
|
|
|
6718
6718
|
}
|
|
6719
6719
|
function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
6720
6720
|
try {
|
|
6721
|
-
if (
|
|
6722
|
-
const raw =
|
|
6721
|
+
if (syncFs.existsSync(filePath)) {
|
|
6722
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
6723
6723
|
const parsed = JSON.parse(raw);
|
|
6724
6724
|
if (parsed?.version === 1 && typeof parsed.deviceId === "string" && typeof parsed.publicKeyPem === "string" && typeof parsed.privateKeyPem === "string") {
|
|
6725
6725
|
const derivedId = fingerprintPublicKey(parsed.publicKeyPem);
|
|
@@ -6728,9 +6728,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
|
6728
6728
|
...parsed,
|
|
6729
6729
|
deviceId: derivedId
|
|
6730
6730
|
};
|
|
6731
|
-
|
|
6731
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
|
|
6732
6732
|
try {
|
|
6733
|
-
|
|
6733
|
+
syncFs.chmodSync(filePath, 384);
|
|
6734
6734
|
} catch {}
|
|
6735
6735
|
return {
|
|
6736
6736
|
deviceId: derivedId,
|
|
@@ -6755,9 +6755,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
|
|
|
6755
6755
|
privateKeyPem: identity.privateKeyPem,
|
|
6756
6756
|
createdAtMs: Date.now()
|
|
6757
6757
|
};
|
|
6758
|
-
|
|
6758
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
|
|
6759
6759
|
try {
|
|
6760
|
-
|
|
6760
|
+
syncFs.chmodSync(filePath, 384);
|
|
6761
6761
|
} catch {}
|
|
6762
6762
|
return identity;
|
|
6763
6763
|
}
|
|
@@ -6949,8 +6949,8 @@ function resolveDeviceAuthPath(env = process.env) {
|
|
|
6949
6949
|
}
|
|
6950
6950
|
function readStore(filePath) {
|
|
6951
6951
|
try {
|
|
6952
|
-
if (!
|
|
6953
|
-
const raw =
|
|
6952
|
+
if (!syncFs.existsSync(filePath)) return null;
|
|
6953
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
6954
6954
|
const parsed = JSON.parse(raw);
|
|
6955
6955
|
if (parsed?.version !== 1 || typeof parsed.deviceId !== "string") return null;
|
|
6956
6956
|
if (!parsed.tokens || typeof parsed.tokens !== "object") return null;
|
|
@@ -6960,10 +6960,10 @@ function readStore(filePath) {
|
|
|
6960
6960
|
}
|
|
6961
6961
|
}
|
|
6962
6962
|
function writeStore(filePath, store) {
|
|
6963
|
-
|
|
6964
|
-
|
|
6963
|
+
syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
|
|
6964
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
|
|
6965
6965
|
try {
|
|
6966
|
-
|
|
6966
|
+
syncFs.chmodSync(filePath, 384);
|
|
6967
6967
|
} catch {}
|
|
6968
6968
|
}
|
|
6969
6969
|
function loadDeviceAuthToken(params) {
|
|
@@ -10165,7 +10165,7 @@ function normalizeReplyPayload(payload, opts = {}) {
|
|
|
10165
10165
|
//#region src/auto-reply/reply/route-reply.ts
|
|
10166
10166
|
let deliverRuntimePromise$2 = null;
|
|
10167
10167
|
function loadDeliverRuntime$2() {
|
|
10168
|
-
deliverRuntimePromise$2 ??= import("./deliver-runtime-
|
|
10168
|
+
deliverRuntimePromise$2 ??= import("./deliver-runtime-AIl3Ydhb.js");
|
|
10169
10169
|
return deliverRuntimePromise$2;
|
|
10170
10170
|
}
|
|
10171
10171
|
/**
|
|
@@ -10855,7 +10855,7 @@ function normalizeSessionKey$1(value) {
|
|
|
10855
10855
|
}
|
|
10856
10856
|
function readSessionStore(storePath) {
|
|
10857
10857
|
try {
|
|
10858
|
-
const raw =
|
|
10858
|
+
const raw = syncFs.readFileSync(storePath, "utf-8");
|
|
10859
10859
|
const parsed = JSON5.parse(raw);
|
|
10860
10860
|
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
|
|
10861
10861
|
} catch {}
|
|
@@ -11454,7 +11454,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
|
|
|
11454
11454
|
const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
|
|
11455
11455
|
let subagentRegistryRuntimePromise = null;
|
|
11456
11456
|
function loadSubagentRegistryRuntime() {
|
|
11457
|
-
subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-
|
|
11457
|
+
subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DWAZpHqO.js");
|
|
11458
11458
|
return subagentRegistryRuntimePromise;
|
|
11459
11459
|
}
|
|
11460
11460
|
const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
|
|
@@ -14973,7 +14973,7 @@ async function runWithConcurrency(tasks, limit) {
|
|
|
14973
14973
|
//#region src/media-understanding/echo-transcript.ts
|
|
14974
14974
|
let deliverRuntimePromise$1 = null;
|
|
14975
14975
|
function loadDeliverRuntime$1() {
|
|
14976
|
-
deliverRuntimePromise$1 ??= import("./deliver-runtime-
|
|
14976
|
+
deliverRuntimePromise$1 ??= import("./deliver-runtime-AIl3Ydhb.js");
|
|
14977
14977
|
return deliverRuntimePromise$1;
|
|
14978
14978
|
}
|
|
14979
14979
|
const DEFAULT_ECHO_TRANSCRIPT_FORMAT = "📝 \"{transcript}\"";
|
|
@@ -19655,7 +19655,7 @@ function mergeLegacyAgent(current, legacy) {
|
|
|
19655
19655
|
}
|
|
19656
19656
|
function ensureDir$1(filePath) {
|
|
19657
19657
|
const dir = path.dirname(filePath);
|
|
19658
|
-
|
|
19658
|
+
syncFs.mkdirSync(dir, { recursive: true });
|
|
19659
19659
|
}
|
|
19660
19660
|
function coerceAllowlistEntries(allowlist) {
|
|
19661
19661
|
if (!Array.isArray(allowlist) || allowlist.length === 0) return Array.isArray(allowlist) ? allowlist : void 0;
|
|
@@ -19725,11 +19725,11 @@ function generateToken() {
|
|
|
19725
19725
|
function loadExecApprovals() {
|
|
19726
19726
|
const filePath = resolveExecApprovalsPath();
|
|
19727
19727
|
try {
|
|
19728
|
-
if (!
|
|
19728
|
+
if (!syncFs.existsSync(filePath)) return normalizeExecApprovals({
|
|
19729
19729
|
version: 1,
|
|
19730
19730
|
agents: {}
|
|
19731
19731
|
});
|
|
19732
|
-
const raw =
|
|
19732
|
+
const raw = syncFs.readFileSync(filePath, "utf8");
|
|
19733
19733
|
const parsed = JSON.parse(raw);
|
|
19734
19734
|
if (parsed?.version !== 1) return normalizeExecApprovals({
|
|
19735
19735
|
version: 1,
|
|
@@ -19746,9 +19746,9 @@ function loadExecApprovals() {
|
|
|
19746
19746
|
function saveExecApprovals(file) {
|
|
19747
19747
|
const filePath = resolveExecApprovalsPath();
|
|
19748
19748
|
ensureDir$1(filePath);
|
|
19749
|
-
|
|
19749
|
+
syncFs.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
|
|
19750
19750
|
try {
|
|
19751
|
-
|
|
19751
|
+
syncFs.chmodSync(filePath, 384);
|
|
19752
19752
|
} catch {}
|
|
19753
19753
|
}
|
|
19754
19754
|
function ensureExecApprovals() {
|
|
@@ -20245,18 +20245,18 @@ function drainSystemEventEntries(sessionKey) {
|
|
|
20245
20245
|
function resolvePowerShellPath() {
|
|
20246
20246
|
const programFiles = process.env.ProgramFiles || process.env.PROGRAMFILES || "C:\\Program Files";
|
|
20247
20247
|
const pwsh7 = path.join(programFiles, "PowerShell", "7", "pwsh.exe");
|
|
20248
|
-
if (
|
|
20248
|
+
if (syncFs.existsSync(pwsh7)) return pwsh7;
|
|
20249
20249
|
const programW6432 = process.env.ProgramW6432;
|
|
20250
20250
|
if (programW6432 && programW6432 !== programFiles) {
|
|
20251
20251
|
const pwsh7Alt = path.join(programW6432, "PowerShell", "7", "pwsh.exe");
|
|
20252
|
-
if (
|
|
20252
|
+
if (syncFs.existsSync(pwsh7Alt)) return pwsh7Alt;
|
|
20253
20253
|
}
|
|
20254
20254
|
const pwshInPath = resolveShellFromPath("pwsh");
|
|
20255
20255
|
if (pwshInPath) return pwshInPath;
|
|
20256
20256
|
const systemRoot = process.env.SystemRoot || process.env.WINDIR;
|
|
20257
20257
|
if (systemRoot) {
|
|
20258
20258
|
const candidate = path.join(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
|
|
20259
|
-
if (
|
|
20259
|
+
if (syncFs.existsSync(candidate)) return candidate;
|
|
20260
20260
|
}
|
|
20261
20261
|
return "powershell.exe";
|
|
20262
20262
|
}
|
|
@@ -20294,7 +20294,7 @@ function resolveShellFromPath(name) {
|
|
|
20294
20294
|
for (const entry of entries) {
|
|
20295
20295
|
const candidate = path.join(entry, name);
|
|
20296
20296
|
try {
|
|
20297
|
-
|
|
20297
|
+
syncFs.accessSync(candidate, syncFs.constants.X_OK);
|
|
20298
20298
|
return candidate;
|
|
20299
20299
|
} catch {}
|
|
20300
20300
|
}
|
|
@@ -23769,7 +23769,7 @@ function ensureContextWindowCacheLoaded() {
|
|
|
23769
23769
|
await ensureOpenClawModelsJson(cfg);
|
|
23770
23770
|
} catch {}
|
|
23771
23771
|
try {
|
|
23772
|
-
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-
|
|
23772
|
+
const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-vsJpfYA9.js").then((n) => n.r);
|
|
23773
23773
|
const agentDir = resolveOpenClawAgentDir();
|
|
23774
23774
|
const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
|
|
23775
23775
|
applyDiscoveredContextWindows({
|
|
@@ -23925,7 +23925,7 @@ function walkUpFrom(startDir, opts, resolveAtDir) {
|
|
|
23925
23925
|
function hasGitMarker(repoRoot) {
|
|
23926
23926
|
const gitPath = path.join(repoRoot, ".git");
|
|
23927
23927
|
try {
|
|
23928
|
-
const stat =
|
|
23928
|
+
const stat = syncFs.statSync(gitPath);
|
|
23929
23929
|
return stat.isDirectory() || stat.isFile();
|
|
23930
23930
|
} catch {
|
|
23931
23931
|
return false;
|
|
@@ -23937,10 +23937,10 @@ function findGitRoot(startDir, opts = {}) {
|
|
|
23937
23937
|
function resolveGitDirFromMarker(repoRoot) {
|
|
23938
23938
|
const gitPath = path.join(repoRoot, ".git");
|
|
23939
23939
|
try {
|
|
23940
|
-
const stat =
|
|
23940
|
+
const stat = syncFs.statSync(gitPath);
|
|
23941
23941
|
if (stat.isDirectory()) return gitPath;
|
|
23942
23942
|
if (!stat.isFile()) return null;
|
|
23943
|
-
const match =
|
|
23943
|
+
const match = syncFs.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
|
|
23944
23944
|
if (!match?.[1]) return null;
|
|
23945
23945
|
return path.resolve(repoRoot, match[1].trim());
|
|
23946
23946
|
} catch {
|
|
@@ -24007,7 +24007,7 @@ const resolveCommitHash = (options = {}) => {
|
|
|
24007
24007
|
cachedCommit = null;
|
|
24008
24008
|
return cachedCommit;
|
|
24009
24009
|
}
|
|
24010
|
-
const head =
|
|
24010
|
+
const head = syncFs.readFileSync(headPath, "utf-8").trim();
|
|
24011
24011
|
if (!head) {
|
|
24012
24012
|
cachedCommit = null;
|
|
24013
24013
|
return cachedCommit;
|
|
@@ -24015,7 +24015,7 @@ const resolveCommitHash = (options = {}) => {
|
|
|
24015
24015
|
if (head.startsWith("ref:")) {
|
|
24016
24016
|
const ref = head.replace(/^ref:\s*/i, "").trim();
|
|
24017
24017
|
const refPath = path.resolve(path.dirname(headPath), ref);
|
|
24018
|
-
cachedCommit = formatCommit(
|
|
24018
|
+
cachedCommit = formatCommit(syncFs.readFileSync(refPath, "utf-8").trim());
|
|
24019
24019
|
return cachedCommit;
|
|
24020
24020
|
}
|
|
24021
24021
|
cachedCommit = formatCommit(head);
|
|
@@ -24275,17 +24275,17 @@ const readUsageFromSessionLog = (sessionId, sessionEntry, agentId, sessionKey, s
|
|
|
24275
24275
|
} catch {
|
|
24276
24276
|
return;
|
|
24277
24277
|
}
|
|
24278
|
-
if (!
|
|
24278
|
+
if (!syncFs.existsSync(logPath)) return;
|
|
24279
24279
|
try {
|
|
24280
24280
|
const TAIL_BYTES = 8192;
|
|
24281
|
-
const stat =
|
|
24281
|
+
const stat = syncFs.statSync(logPath);
|
|
24282
24282
|
const offset = Math.max(0, stat.size - TAIL_BYTES);
|
|
24283
24283
|
const buf = Buffer.alloc(Math.min(TAIL_BYTES, stat.size));
|
|
24284
|
-
const fd =
|
|
24284
|
+
const fd = syncFs.openSync(logPath, "r");
|
|
24285
24285
|
try {
|
|
24286
|
-
|
|
24286
|
+
syncFs.readSync(fd, buf, 0, buf.length, offset);
|
|
24287
24287
|
} finally {
|
|
24288
|
-
|
|
24288
|
+
syncFs.closeSync(fd);
|
|
24289
24289
|
}
|
|
24290
24290
|
const tail = buf.toString("utf-8");
|
|
24291
24291
|
const lines = (offset > 0 ? tail.slice(tail.indexOf("\n") + 1) : tail).split(/\n+/);
|
|
@@ -25917,7 +25917,7 @@ function resolveRepoRoot(params) {
|
|
|
25917
25917
|
const configured = params.config?.agents?.defaults?.repoRoot?.trim();
|
|
25918
25918
|
if (configured) try {
|
|
25919
25919
|
const resolved = path.resolve(configured);
|
|
25920
|
-
if (
|
|
25920
|
+
if (syncFs.statSync(resolved).isDirectory()) return resolved;
|
|
25921
25921
|
} catch {}
|
|
25922
25922
|
const candidates = [params.workspaceDir, params.cwd].map((value) => value?.trim()).filter(Boolean);
|
|
25923
25923
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -26715,7 +26715,7 @@ async function buildContextReply(params) {
|
|
|
26715
26715
|
//#region src/auto-reply/reply/commands-export-session.ts
|
|
26716
26716
|
const EXPORT_HTML_DIR = path.join(path.dirname(fileURLToPath(import.meta.url)), "export-html");
|
|
26717
26717
|
function loadTemplate(fileName) {
|
|
26718
|
-
return
|
|
26718
|
+
return syncFs.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
|
|
26719
26719
|
}
|
|
26720
26720
|
function generateHtml(sessionData) {
|
|
26721
26721
|
const template = loadTemplate("template.html");
|
|
@@ -26789,7 +26789,7 @@ async function buildExportSessionReply(params) {
|
|
|
26789
26789
|
} catch (err) {
|
|
26790
26790
|
return { text: `❌ Failed to resolve session file: ${err instanceof Error ? err.message : String(err)}` };
|
|
26791
26791
|
}
|
|
26792
|
-
if (!
|
|
26792
|
+
if (!syncFs.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
|
|
26793
26793
|
const sessionManager = SessionManager.open(sessionFile);
|
|
26794
26794
|
const entries = sessionManager.getEntries();
|
|
26795
26795
|
const header = sessionManager.getHeader();
|
|
@@ -26810,8 +26810,8 @@ async function buildExportSessionReply(params) {
|
|
|
26810
26810
|
const defaultFileName = `openclaw-session-${entry.sessionId.slice(0, 8)}-${timestamp}.html`;
|
|
26811
26811
|
const outputPath = args.outputPath ? path.resolve(args.outputPath.startsWith("~") ? args.outputPath.replace("~", process.env.HOME ?? "") : args.outputPath) : path.join(params.workspaceDir, defaultFileName);
|
|
26812
26812
|
const outputDir = path.dirname(outputPath);
|
|
26813
|
-
if (!
|
|
26814
|
-
|
|
26813
|
+
if (!syncFs.existsSync(outputDir)) syncFs.mkdirSync(outputDir, { recursive: true });
|
|
26814
|
+
syncFs.writeFileSync(outputPath, html, "utf-8");
|
|
26815
26815
|
const relativePath = path.relative(params.workspaceDir, outputPath);
|
|
26816
26816
|
return { text: [
|
|
26817
26817
|
"✅ Session exported!",
|
|
@@ -26958,8 +26958,8 @@ function resolveZaiApiKey() {
|
|
|
26958
26958
|
}
|
|
26959
26959
|
try {
|
|
26960
26960
|
const authPath = path.join(resolveRequiredHomeDir(process.env, os.homedir), ".pi", "agent", "auth.json");
|
|
26961
|
-
if (!
|
|
26962
|
-
const data = JSON.parse(
|
|
26961
|
+
if (!syncFs.existsSync(authPath)) return;
|
|
26962
|
+
const data = JSON.parse(syncFs.readFileSync(authPath, "utf-8"));
|
|
26963
26963
|
return data["z-ai"]?.access || data.zai?.access;
|
|
26964
26964
|
} catch {
|
|
26965
26965
|
return;
|
|
@@ -28751,7 +28751,7 @@ function shouldPersistAnyBindingState() {
|
|
|
28751
28751
|
}
|
|
28752
28752
|
function shouldPersistBindingMutations() {
|
|
28753
28753
|
if (shouldPersistAnyBindingState()) return true;
|
|
28754
|
-
return
|
|
28754
|
+
return syncFs.existsSync(resolveThreadBindingsPath());
|
|
28755
28755
|
}
|
|
28756
28756
|
function saveBindingsToDisk(params = {}) {
|
|
28757
28757
|
if (!params.force && !shouldPersistAnyBindingState()) return;
|
|
@@ -30219,7 +30219,7 @@ const applyCostTotal = (totals, costTotal) => {
|
|
|
30219
30219
|
totals.totalCost += costTotal;
|
|
30220
30220
|
};
|
|
30221
30221
|
async function* readJsonlRecords(filePath) {
|
|
30222
|
-
const fileStream =
|
|
30222
|
+
const fileStream = syncFs.createReadStream(filePath, { encoding: "utf-8" });
|
|
30223
30223
|
const rl = readline.createInterface({
|
|
30224
30224
|
input: fileStream,
|
|
30225
30225
|
crlfDelay: Infinity
|
|
@@ -30291,10 +30291,10 @@ async function loadCostUsageSummary(params) {
|
|
|
30291
30291
|
const dailyMap = /* @__PURE__ */ new Map();
|
|
30292
30292
|
const totals = emptyTotals();
|
|
30293
30293
|
const sessionsDir = resolveSessionTranscriptsDirForAgent(params?.agentId);
|
|
30294
|
-
const entries = await
|
|
30294
|
+
const entries = await syncFs.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
|
|
30295
30295
|
const files = (await Promise.all(entries.filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map(async (entry) => {
|
|
30296
30296
|
const filePath = path.join(sessionsDir, entry.name);
|
|
30297
|
-
const stats = await
|
|
30297
|
+
const stats = await syncFs.promises.stat(filePath).catch(() => null);
|
|
30298
30298
|
if (!stats) return null;
|
|
30299
30299
|
if (stats.mtimeMs < sinceTime) return null;
|
|
30300
30300
|
return filePath;
|
|
@@ -30327,7 +30327,7 @@ async function loadCostUsageSummary(params) {
|
|
|
30327
30327
|
}
|
|
30328
30328
|
async function loadSessionCostSummary(params) {
|
|
30329
30329
|
const sessionFile = params.sessionFile ?? (params.sessionId ? resolveSessionFilePath(params.sessionId, params.sessionEntry, { agentId: params.agentId }) : void 0);
|
|
30330
|
-
if (!sessionFile || !
|
|
30330
|
+
if (!sessionFile || !syncFs.existsSync(sessionFile)) return null;
|
|
30331
30331
|
const totals = emptyTotals();
|
|
30332
30332
|
let firstActivity;
|
|
30333
30333
|
let lastActivity;
|
|
@@ -30609,7 +30609,7 @@ function summarizeLifecycleForLog(record, defaults) {
|
|
|
30609
30609
|
function loadBindingsFromDisk(accountId) {
|
|
30610
30610
|
const filePath = resolveBindingsPath(accountId);
|
|
30611
30611
|
try {
|
|
30612
|
-
const raw =
|
|
30612
|
+
const raw = syncFs.readFileSync(filePath, "utf-8");
|
|
30613
30613
|
const parsed = JSON.parse(raw);
|
|
30614
30614
|
if (parsed?.version !== STORE_VERSION$1 || !Array.isArray(parsed.bindings)) return [];
|
|
30615
30615
|
const bindings = [];
|
|
@@ -33472,7 +33472,7 @@ async function createModelSelectionState(params) {
|
|
|
33472
33472
|
}
|
|
33473
33473
|
}
|
|
33474
33474
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
33475
|
-
const { ensureAuthProfileStore } = await import("./model-selection-
|
|
33475
|
+
const { ensureAuthProfileStore } = await import("./model-selection-CLGE3YIs.js").then((n) => n.F);
|
|
33476
33476
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
33477
33477
|
const providerKey = normalizeProviderId(provider);
|
|
33478
33478
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -37206,7 +37206,7 @@ function asBoolean(value) {
|
|
|
37206
37206
|
}
|
|
37207
37207
|
function resolveTempPathParts(opts) {
|
|
37208
37208
|
const tmpDir = opts.tmpDir ?? resolvePreferredOpenClawTmpDir();
|
|
37209
|
-
if (!opts.tmpDir)
|
|
37209
|
+
if (!opts.tmpDir) syncFs.mkdirSync(tmpDir, {
|
|
37210
37210
|
recursive: true,
|
|
37211
37211
|
mode: 448
|
|
37212
37212
|
});
|
|
@@ -37292,7 +37292,7 @@ async function writeUrlToFile(filePath, url, opts) {
|
|
|
37292
37292
|
if (typeof contentLength === "number" && Number.isFinite(contentLength) && contentLength > MAX_CAMERA_URL_DOWNLOAD_BYTES) throw new Error(`writeUrlToFile: content-length ${contentLength} exceeds max ${MAX_CAMERA_URL_DOWNLOAD_BYTES}`);
|
|
37293
37293
|
const body = res.body;
|
|
37294
37294
|
if (!body) throw new Error(`failed to download ${url}: empty response body`);
|
|
37295
|
-
const fileHandle = await fs$
|
|
37295
|
+
const fileHandle = await fs$1.open(filePath, "w");
|
|
37296
37296
|
let thrown;
|
|
37297
37297
|
try {
|
|
37298
37298
|
const reader = body.getReader();
|
|
@@ -37310,7 +37310,7 @@ async function writeUrlToFile(filePath, url, opts) {
|
|
|
37310
37310
|
await fileHandle.close();
|
|
37311
37311
|
}
|
|
37312
37312
|
if (thrown) {
|
|
37313
|
-
await fs$
|
|
37313
|
+
await fs$1.unlink(filePath).catch(() => {});
|
|
37314
37314
|
throw thrown;
|
|
37315
37315
|
}
|
|
37316
37316
|
} finally {
|
|
@@ -37323,7 +37323,7 @@ async function writeUrlToFile(filePath, url, opts) {
|
|
|
37323
37323
|
}
|
|
37324
37324
|
async function writeBase64ToFile(filePath, base64) {
|
|
37325
37325
|
const buf = Buffer.from(base64, "base64");
|
|
37326
|
-
await fs$
|
|
37326
|
+
await fs$1.writeFile(filePath, buf);
|
|
37327
37327
|
return {
|
|
37328
37328
|
path: filePath,
|
|
37329
37329
|
bytes: buf.length
|
|
@@ -40427,9 +40427,9 @@ function loadExternalCatalogEntries(options) {
|
|
|
40427
40427
|
const entries = [];
|
|
40428
40428
|
for (const rawPath of paths) {
|
|
40429
40429
|
const resolved = resolveUserPath(rawPath);
|
|
40430
|
-
if (!
|
|
40430
|
+
if (!syncFs.existsSync(resolved)) continue;
|
|
40431
40431
|
try {
|
|
40432
|
-
const payload = JSON.parse(
|
|
40432
|
+
const payload = JSON.parse(syncFs.readFileSync(resolved, "utf-8"));
|
|
40433
40433
|
entries.push(...parseCatalogEntries(payload));
|
|
40434
40434
|
} catch {}
|
|
40435
40435
|
}
|
|
@@ -44254,7 +44254,7 @@ function listExistingAgentIdsFromDisk() {
|
|
|
44254
44254
|
const root = resolveStateDir();
|
|
44255
44255
|
const agentsDir = path.join(root, "agents");
|
|
44256
44256
|
try {
|
|
44257
|
-
return
|
|
44257
|
+
return syncFs.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
|
|
44258
44258
|
} catch {
|
|
44259
44259
|
return [];
|
|
44260
44260
|
}
|
|
@@ -50734,7 +50734,7 @@ async function runAgentTurnWithFallback(params) {
|
|
|
50734
50734
|
if (corruptedSessionId) {
|
|
50735
50735
|
const transcriptPath = resolveSessionTranscriptPath(corruptedSessionId);
|
|
50736
50736
|
try {
|
|
50737
|
-
|
|
50737
|
+
syncFs.unlinkSync(transcriptPath);
|
|
50738
50738
|
} catch {}
|
|
50739
50739
|
}
|
|
50740
50740
|
delete params.activeSessionStore[sessionKey];
|
|
@@ -51555,7 +51555,7 @@ async function readSessionLogSnapshot(params) {
|
|
|
51555
51555
|
if (!logPath) return {};
|
|
51556
51556
|
const snapshot = {};
|
|
51557
51557
|
if (params.includeByteSize) try {
|
|
51558
|
-
const stat = await
|
|
51558
|
+
const stat = await syncFs.promises.stat(logPath);
|
|
51559
51559
|
const size = Math.floor(stat.size);
|
|
51560
51560
|
snapshot.byteSize = Number.isFinite(size) && size >= 0 ? size : void 0;
|
|
51561
51561
|
} catch {
|
|
@@ -51569,7 +51569,7 @@ async function readSessionLogSnapshot(params) {
|
|
|
51569
51569
|
return snapshot;
|
|
51570
51570
|
}
|
|
51571
51571
|
async function readLastNonzeroUsageFromSessionLog(logPath) {
|
|
51572
|
-
const handle = await
|
|
51572
|
+
const handle = await syncFs.promises.open(logPath, "r");
|
|
51573
51573
|
try {
|
|
51574
51574
|
let position = (await handle.stat()).size;
|
|
51575
51575
|
let leadingPartial = "";
|
|
@@ -52273,9 +52273,9 @@ async function readPostCompactionContext(workspaceDir, cfg, nowMs) {
|
|
|
52273
52273
|
if (!opened.ok) return null;
|
|
52274
52274
|
const content = (() => {
|
|
52275
52275
|
try {
|
|
52276
|
-
return
|
|
52276
|
+
return syncFs.readFileSync(opened.fd, "utf-8");
|
|
52277
52277
|
} finally {
|
|
52278
|
-
|
|
52278
|
+
syncFs.closeSync(opened.fd);
|
|
52279
52279
|
}
|
|
52280
52280
|
})();
|
|
52281
52281
|
let sections = extractSections(content, ["Session Startup", "Red Lines"]);
|
|
@@ -52499,7 +52499,7 @@ async function runReplyAgent(params) {
|
|
|
52499
52499
|
if (resolved) transcriptCandidates.add(resolved);
|
|
52500
52500
|
transcriptCandidates.add(resolveSessionTranscriptPath(prevSessionId, agentId));
|
|
52501
52501
|
for (const candidate of transcriptCandidates) try {
|
|
52502
|
-
|
|
52502
|
+
syncFs.unlinkSync(candidate);
|
|
52503
52503
|
} catch {}
|
|
52504
52504
|
}
|
|
52505
52505
|
return true;
|
|
@@ -53447,7 +53447,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
|
|
|
53447
53447
|
const log$10 = createSubsystemLogger("session-maintenance-warning");
|
|
53448
53448
|
let deliverRuntimePromise = null;
|
|
53449
53449
|
function loadDeliverRuntime() {
|
|
53450
|
-
deliverRuntimePromise ??= import("./deliver-runtime-
|
|
53450
|
+
deliverRuntimePromise ??= import("./deliver-runtime-AIl3Ydhb.js");
|
|
53451
53451
|
return deliverRuntimePromise;
|
|
53452
53452
|
}
|
|
53453
53453
|
function shouldSendWarning() {
|
|
@@ -53633,7 +53633,7 @@ function forkSessionFromParent(params) {
|
|
|
53633
53633
|
agentId: params.agentId,
|
|
53634
53634
|
sessionsDir: params.sessionsDir
|
|
53635
53635
|
});
|
|
53636
|
-
if (!parentSessionFile || !
|
|
53636
|
+
if (!parentSessionFile || !syncFs.existsSync(parentSessionFile)) return null;
|
|
53637
53637
|
try {
|
|
53638
53638
|
const manager = SessionManager.open(parentSessionFile);
|
|
53639
53639
|
const leafId = manager.getLeafId();
|
|
@@ -53657,7 +53657,7 @@ function forkSessionFromParent(params) {
|
|
|
53657
53657
|
cwd: manager.getCwd(),
|
|
53658
53658
|
parentSession: parentSessionFile
|
|
53659
53659
|
};
|
|
53660
|
-
|
|
53660
|
+
syncFs.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
|
|
53661
53661
|
return {
|
|
53662
53662
|
sessionId,
|
|
53663
53663
|
sessionFile
|
|
@@ -58544,7 +58544,7 @@ const VISION_PROVIDERS = [
|
|
|
58544
58544
|
];
|
|
58545
58545
|
let imageRuntimePromise = null;
|
|
58546
58546
|
function loadImageRuntime() {
|
|
58547
|
-
imageRuntimePromise ??= import("./image-runtime-
|
|
58547
|
+
imageRuntimePromise ??= import("./image-runtime-BTWt5pDL.js");
|
|
58548
58548
|
return imageRuntimePromise;
|
|
58549
58549
|
}
|
|
58550
58550
|
/**
|
|
@@ -61386,7 +61386,7 @@ function identityHasValues(identity) {
|
|
|
61386
61386
|
}
|
|
61387
61387
|
function loadIdentityFromFile(identityPath) {
|
|
61388
61388
|
try {
|
|
61389
|
-
const parsed = parseIdentityMarkdown(
|
|
61389
|
+
const parsed = parseIdentityMarkdown(syncFs.readFileSync(identityPath, "utf-8"));
|
|
61390
61390
|
if (!identityHasValues(parsed)) return null;
|
|
61391
61391
|
return parsed;
|
|
61392
61392
|
} catch {
|
|
@@ -61410,7 +61410,7 @@ function resolveAvatarSource(cfg, agentId) {
|
|
|
61410
61410
|
}
|
|
61411
61411
|
function resolveExistingPath(value) {
|
|
61412
61412
|
try {
|
|
61413
|
-
return
|
|
61413
|
+
return syncFs.realpathSync(value);
|
|
61414
61414
|
} catch {
|
|
61415
61415
|
return path.resolve(value);
|
|
61416
61416
|
}
|
|
@@ -61428,7 +61428,7 @@ function resolveLocalAvatarPath(params) {
|
|
|
61428
61428
|
reason: "unsupported_extension"
|
|
61429
61429
|
};
|
|
61430
61430
|
try {
|
|
61431
|
-
const stat =
|
|
61431
|
+
const stat = syncFs.statSync(realPath);
|
|
61432
61432
|
if (!stat.isFile()) return {
|
|
61433
61433
|
ok: false,
|
|
61434
61434
|
reason: "missing"
|
|
@@ -62748,7 +62748,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
|
|
|
62748
62748
|
hasTypedText
|
|
62749
62749
|
};
|
|
62750
62750
|
try {
|
|
62751
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
62751
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-ClPkYtiy.js");
|
|
62752
62752
|
if (params.abortSignal?.aborted) return {
|
|
62753
62753
|
hasAudioAttachment,
|
|
62754
62754
|
hasTypedText
|
|
@@ -68410,27 +68410,27 @@ let slackSenderRuntimePromise = null;
|
|
|
68410
68410
|
let signalSenderRuntimePromise = null;
|
|
68411
68411
|
let imessageSenderRuntimePromise = null;
|
|
68412
68412
|
function loadWhatsAppSenderRuntime() {
|
|
68413
|
-
whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-
|
|
68413
|
+
whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-B4PrMybd.js");
|
|
68414
68414
|
return whatsappSenderRuntimePromise;
|
|
68415
68415
|
}
|
|
68416
68416
|
function loadTelegramSenderRuntime() {
|
|
68417
|
-
telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-
|
|
68417
|
+
telegramSenderRuntimePromise ??= import("./deps-send-telegram.runtime-sOFkXXMD.js");
|
|
68418
68418
|
return telegramSenderRuntimePromise;
|
|
68419
68419
|
}
|
|
68420
68420
|
function loadDiscordSenderRuntime() {
|
|
68421
|
-
discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-
|
|
68421
|
+
discordSenderRuntimePromise ??= import("./deps-send-discord.runtime-BCKKTBVj.js");
|
|
68422
68422
|
return discordSenderRuntimePromise;
|
|
68423
68423
|
}
|
|
68424
68424
|
function loadSlackSenderRuntime() {
|
|
68425
|
-
slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-
|
|
68425
|
+
slackSenderRuntimePromise ??= import("./deps-send-slack.runtime-BsCUhMAR.js");
|
|
68426
68426
|
return slackSenderRuntimePromise;
|
|
68427
68427
|
}
|
|
68428
68428
|
function loadSignalSenderRuntime() {
|
|
68429
|
-
signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-
|
|
68429
|
+
signalSenderRuntimePromise ??= import("./deps-send-signal.runtime-rttQOioa.js");
|
|
68430
68430
|
return signalSenderRuntimePromise;
|
|
68431
68431
|
}
|
|
68432
68432
|
function loadIMessageSenderRuntime() {
|
|
68433
|
-
imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-
|
|
68433
|
+
imessageSenderRuntimePromise ??= import("./deps-send-imessage.runtime-CrYNg1e_.js");
|
|
68434
68434
|
return imessageSenderRuntimePromise;
|
|
68435
68435
|
}
|
|
68436
68436
|
function createDefaultDeps() {
|
|
@@ -74601,7 +74601,7 @@ async function monitorIMessageProvider(opts = {}) {
|
|
|
74601
74601
|
function readFileIfExists(filePath) {
|
|
74602
74602
|
if (!filePath) return;
|
|
74603
74603
|
try {
|
|
74604
|
-
return
|
|
74604
|
+
return syncFs.readFileSync(filePath, "utf-8").trim();
|
|
74605
74605
|
} catch {
|
|
74606
74606
|
return;
|
|
74607
74607
|
}
|
|
@@ -75231,7 +75231,7 @@ async function downloadLineMedia(messageId, channelAccessToken, maxBytes = 10 *
|
|
|
75231
75231
|
prefix: "line-media",
|
|
75232
75232
|
extension: getExtensionForContentType(contentType)
|
|
75233
75233
|
});
|
|
75234
|
-
await
|
|
75234
|
+
await syncFs.promises.writeFile(filePath, buffer);
|
|
75235
75235
|
logVerbose(`line: downloaded media ${messageId} to ${filePath} (${buffer.length} bytes)`);
|
|
75236
75236
|
return {
|
|
75237
75237
|
path: filePath,
|
|
@@ -81293,15 +81293,15 @@ let slashCommandsRuntimePromise = null;
|
|
|
81293
81293
|
let slashDispatchRuntimePromise = null;
|
|
81294
81294
|
let slashSkillCommandsRuntimePromise = null;
|
|
81295
81295
|
function loadSlashCommandsRuntime() {
|
|
81296
|
-
slashCommandsRuntimePromise ??= import("./slash-commands.runtime-
|
|
81296
|
+
slashCommandsRuntimePromise ??= import("./slash-commands.runtime-Qho-6_Lc.js");
|
|
81297
81297
|
return slashCommandsRuntimePromise;
|
|
81298
81298
|
}
|
|
81299
81299
|
function loadSlashDispatchRuntime() {
|
|
81300
|
-
slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-
|
|
81300
|
+
slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-CkR-TldC.js");
|
|
81301
81301
|
return slashDispatchRuntimePromise;
|
|
81302
81302
|
}
|
|
81303
81303
|
function loadSlashSkillCommandsRuntime() {
|
|
81304
|
-
slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-
|
|
81304
|
+
slashSkillCommandsRuntimePromise ??= import("./slash-skill-commands.runtime-DmrTozXn.js");
|
|
81305
81305
|
return slashSkillCommandsRuntimePromise;
|
|
81306
81306
|
}
|
|
81307
81307
|
const slackExternalArgMenuStore = createSlackExternalArgMenuStore();
|
|
@@ -82291,7 +82291,7 @@ function collectTelegramUnmentionedGroupIds(groups) {
|
|
|
82291
82291
|
}
|
|
82292
82292
|
let auditMembershipRuntimePromise = null;
|
|
82293
82293
|
function loadAuditMembershipRuntime() {
|
|
82294
|
-
auditMembershipRuntimePromise ??= import("./audit-membership-runtime-
|
|
82294
|
+
auditMembershipRuntimePromise ??= import("./audit-membership-runtime-BJ149bTU.js");
|
|
82295
82295
|
return auditMembershipRuntimePromise;
|
|
82296
82296
|
}
|
|
82297
82297
|
async function auditTelegramGroupMembership(params) {
|
|
@@ -84751,7 +84751,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
|
|
|
84751
84751
|
const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
|
|
84752
84752
|
let preflightTranscript;
|
|
84753
84753
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
|
|
84754
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
84754
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-ClPkYtiy.js");
|
|
84755
84755
|
preflightTranscript = await transcribeFirstAudio({
|
|
84756
84756
|
ctx: {
|
|
84757
84757
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -87670,7 +87670,7 @@ function createWhatsAppLoginTool() {
|
|
|
87670
87670
|
force: Type.Optional(Type.Boolean())
|
|
87671
87671
|
}),
|
|
87672
87672
|
execute: async (_toolCallId, args) => {
|
|
87673
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
87673
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CNFNhTf4.js");
|
|
87674
87674
|
if ((args?.action ?? "start") === "wait") {
|
|
87675
87675
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
87676
87676
|
return {
|
|
@@ -87745,23 +87745,23 @@ let webOutboundPromise = null;
|
|
|
87745
87745
|
let webLoginPromise = null;
|
|
87746
87746
|
let whatsappActionsPromise = null;
|
|
87747
87747
|
function loadWebOutbound() {
|
|
87748
|
-
webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-
|
|
87748
|
+
webOutboundPromise ??= import("./runtime-whatsapp-outbound.runtime-GVjcQLWE.js");
|
|
87749
87749
|
return webOutboundPromise;
|
|
87750
87750
|
}
|
|
87751
87751
|
function loadWebLogin() {
|
|
87752
|
-
webLoginPromise ??= import("./runtime-whatsapp-login.runtime-
|
|
87752
|
+
webLoginPromise ??= import("./runtime-whatsapp-login.runtime-BQjNpkbA.js");
|
|
87753
87753
|
return webLoginPromise;
|
|
87754
87754
|
}
|
|
87755
87755
|
function loadWebLoginQr() {
|
|
87756
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
87756
|
+
webLoginQrPromise ??= import("./login-qr-CNFNhTf4.js");
|
|
87757
87757
|
return webLoginQrPromise;
|
|
87758
87758
|
}
|
|
87759
87759
|
function loadWebChannel() {
|
|
87760
|
-
webChannelPromise ??= import("./web-
|
|
87760
|
+
webChannelPromise ??= import("./web-BByXTa4p.js");
|
|
87761
87761
|
return webChannelPromise;
|
|
87762
87762
|
}
|
|
87763
87763
|
function loadWhatsAppActions() {
|
|
87764
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
87764
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-BK9m2IVX.js");
|
|
87765
87765
|
return whatsappActionsPromise;
|
|
87766
87766
|
}
|
|
87767
87767
|
function createRuntimeWhatsApp() {
|
|
@@ -88202,7 +88202,7 @@ const log$6 = createSubsystemLogger("memory");
|
|
|
88202
88202
|
const QMD_MANAGER_CACHE = /* @__PURE__ */ new Map();
|
|
88203
88203
|
let managerRuntimePromise = null;
|
|
88204
88204
|
function loadManagerRuntime() {
|
|
88205
|
-
managerRuntimePromise ??= import("./manager-runtime-
|
|
88205
|
+
managerRuntimePromise ??= import("./manager-runtime-Daqs8hiB.js");
|
|
88206
88206
|
return managerRuntimePromise;
|
|
88207
88207
|
}
|
|
88208
88208
|
async function getMemorySearchManager(params) {
|
|
@@ -88216,7 +88216,7 @@ async function getMemorySearchManager(params) {
|
|
|
88216
88216
|
if (cached) return { manager: cached };
|
|
88217
88217
|
}
|
|
88218
88218
|
try {
|
|
88219
|
-
const { QmdMemoryManager } = await import("./qmd-manager-
|
|
88219
|
+
const { QmdMemoryManager } = await import("./qmd-manager-IaHGjYlf.js");
|
|
88220
88220
|
const primary = await QmdMemoryManager.create({
|
|
88221
88221
|
cfg: params.cfg,
|
|
88222
88222
|
agentId: params.agentId,
|
|
@@ -88790,7 +88790,7 @@ async function withMemoryManagerForAgent(params) {
|
|
|
88790
88790
|
}
|
|
88791
88791
|
async function checkReadableFile(pathname) {
|
|
88792
88792
|
try {
|
|
88793
|
-
await fs.access(pathname,
|
|
88793
|
+
await fs.access(pathname, syncFs.constants.R_OK);
|
|
88794
88794
|
return { exists: true };
|
|
88795
88795
|
} catch (err) {
|
|
88796
88796
|
const code = err.code;
|
|
@@ -88849,7 +88849,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
|
|
|
88849
88849
|
}
|
|
88850
88850
|
let dirReadable = null;
|
|
88851
88851
|
try {
|
|
88852
|
-
await fs.access(memoryDir,
|
|
88852
|
+
await fs.access(memoryDir, syncFs.constants.R_OK);
|
|
88853
88853
|
dirReadable = true;
|
|
88854
88854
|
} catch (err) {
|
|
88855
88855
|
const code = err.code;
|
|
@@ -89311,7 +89311,7 @@ const resolvePluginSdkAliasFile = (params) => {
|
|
|
89311
89311
|
const srcCandidate = path.join(cursor, "src", "plugin-sdk", params.srcFile);
|
|
89312
89312
|
const distCandidate = path.join(cursor, "dist", "plugin-sdk", params.distFile);
|
|
89313
89313
|
const orderedCandidates = isDistRuntime ? [distCandidate, srcCandidate] : isTest ? [distCandidate, srcCandidate] : [distCandidate];
|
|
89314
|
-
for (const candidate of orderedCandidates) if (
|
|
89314
|
+
for (const candidate of orderedCandidates) if (syncFs.existsSync(candidate)) return candidate;
|
|
89315
89315
|
const parent = path.dirname(cursor);
|
|
89316
89316
|
if (parent === cursor) break;
|
|
89317
89317
|
cursor = parent;
|
|
@@ -89919,7 +89919,7 @@ function loadBotPlugins(options = {}) {
|
|
|
89919
89919
|
continue;
|
|
89920
89920
|
}
|
|
89921
89921
|
const safeSource = opened.path;
|
|
89922
|
-
|
|
89922
|
+
syncFs.closeSync(opened.fd);
|
|
89923
89923
|
let mod = null;
|
|
89924
89924
|
try {
|
|
89925
89925
|
mod = getJiti()(safeSource);
|
|
@@ -90038,7 +90038,7 @@ function loadBotPlugins(options = {}) {
|
|
|
90038
90038
|
}
|
|
90039
90039
|
function safeRealpathOrResolve(value) {
|
|
90040
90040
|
try {
|
|
90041
|
-
return
|
|
90041
|
+
return syncFs.realpathSync(value);
|
|
90042
90042
|
} catch {
|
|
90043
90043
|
return path.resolve(value);
|
|
90044
90044
|
}
|
|
@@ -90477,9 +90477,9 @@ function resolvePatchFileOps(options) {
|
|
|
90477
90477
|
});
|
|
90478
90478
|
assertBoundaryRead(opened, filePath);
|
|
90479
90479
|
try {
|
|
90480
|
-
return
|
|
90480
|
+
return syncFs.readFileSync(opened.fd, "utf8");
|
|
90481
90481
|
} finally {
|
|
90482
|
-
|
|
90482
|
+
syncFs.closeSync(opened.fd);
|
|
90483
90483
|
}
|
|
90484
90484
|
},
|
|
90485
90485
|
writeFile: async (filePath, content) => {
|
|
@@ -90758,7 +90758,7 @@ const LOOP_WARNING_BUCKET_SIZE = 10;
|
|
|
90758
90758
|
const MAX_LOOP_WARNING_KEYS = 256;
|
|
90759
90759
|
let beforeToolCallRuntimePromise = null;
|
|
90760
90760
|
function loadBeforeToolCallRuntime() {
|
|
90761
|
-
beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-
|
|
90761
|
+
beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-D-Vj4eZ7.js");
|
|
90762
90762
|
return beforeToolCallRuntimePromise;
|
|
90763
90763
|
}
|
|
90764
90764
|
function buildAdjustedParamsKey(params) {
|
|
@@ -93561,9 +93561,9 @@ async function readWorkspaceContextForSummary() {
|
|
|
93561
93561
|
if (!opened.ok) return "";
|
|
93562
93562
|
const content = (() => {
|
|
93563
93563
|
try {
|
|
93564
|
-
return
|
|
93564
|
+
return syncFs.readFileSync(opened.fd, "utf-8");
|
|
93565
93565
|
} finally {
|
|
93566
|
-
|
|
93566
|
+
syncFs.closeSync(opened.fd);
|
|
93567
93567
|
}
|
|
93568
93568
|
})();
|
|
93569
93569
|
let sections = extractSections(content, ["Session Startup", "Red Lines"]);
|
|
@@ -94993,7 +94993,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
94993
94993
|
if (!apiKeyInfo.apiKey) {
|
|
94994
94994
|
if (apiKeyInfo.mode !== "aws-sdk") throw new Error(`No API key resolved for provider "${model.provider}" (auth mode: ${apiKeyInfo.mode}).`);
|
|
94995
94995
|
} else if (model.provider === "github-copilot") {
|
|
94996
|
-
const { resolveCopilotApiToken } = await import("./github-copilot-token-
|
|
94996
|
+
const { resolveCopilotApiToken } = await import("./github-copilot-token-D13V9YBz.js").then((n) => n.n);
|
|
94997
94997
|
const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
|
|
94998
94998
|
authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
|
|
94999
94999
|
} else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
|
|
@@ -97534,11 +97534,11 @@ function appendRawStream(payload) {
|
|
|
97534
97534
|
if (!rawStreamReady) {
|
|
97535
97535
|
rawStreamReady = true;
|
|
97536
97536
|
try {
|
|
97537
|
-
|
|
97537
|
+
syncFs.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
|
|
97538
97538
|
} catch {}
|
|
97539
97539
|
}
|
|
97540
97540
|
try {
|
|
97541
|
-
|
|
97541
|
+
syncFs.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
|
|
97542
97542
|
} catch {}
|
|
97543
97543
|
}
|
|
97544
97544
|
|
|
@@ -101255,7 +101255,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
101255
101255
|
await copilotTokenState.refreshInFlight;
|
|
101256
101256
|
return;
|
|
101257
101257
|
}
|
|
101258
|
-
const { resolveCopilotApiToken } = await import("./github-copilot-token-
|
|
101258
|
+
const { resolveCopilotApiToken } = await import("./github-copilot-token-D13V9YBz.js").then((n) => n.n);
|
|
101259
101259
|
copilotTokenState.refreshInFlight = (async () => {
|
|
101260
101260
|
const githubToken = copilotTokenState.githubToken.trim();
|
|
101261
101261
|
if (!githubToken) throw new Error("Copilot refresh requires a GitHub token.");
|
|
@@ -101347,7 +101347,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
101347
101347
|
return;
|
|
101348
101348
|
}
|
|
101349
101349
|
if (model.provider === "github-copilot") {
|
|
101350
|
-
const { resolveCopilotApiToken } = await import("./github-copilot-token-
|
|
101350
|
+
const { resolveCopilotApiToken } = await import("./github-copilot-token-D13V9YBz.js").then((n) => n.n);
|
|
101351
101351
|
const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
|
|
101352
101352
|
authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
|
|
101353
101353
|
if (copilotTokenState) {
|