@symerian/symi 2.6.12 → 2.6.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/{agents-Cz2na8n6.js → agents-CrSpoNsS.js} +4 -4
- package/dist/{agents.config-BeOO73lT.js → agents.config-B3GILTs5.js} +1 -1
- package/dist/{agents.config-BoP9QtHX.js → agents.config-Co1CO8fA.js} +1 -1
- package/dist/{audio-preflight-DHTaS5U1.js → audio-preflight-BVaaZWkg.js} +4 -4
- package/dist/{auth-choice-DTe3UF8T.js → auth-choice-BBmXnDnK.js} +1 -1
- package/dist/{auth-choice-D-czhFdL.js → auth-choice-BHWxDJh7.js} +1 -1
- package/dist/{banner-CSZ39UAE.js → banner-RLiOIu-3.js} +1 -1
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +6 -6
- package/dist/bundled/session-memory/handler.js +6 -6
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-FlKM6QP8.js → channel-options-BCK41AON.js} +1 -1
- package/dist/{channel-options-CySdnaWJ.js → channel-options-PDf46S-K.js} +1 -1
- package/dist/{channel-web-BEFE-0qE.js → channel-web-C3XZ7c2q.js} +1 -1
- package/dist/{channels-cli-D6zAPAP3.js → channels-cli-723vy6L6.js} +4 -4
- package/dist/{channels-cli-RkhiaITs.js → channels-cli-CUWuD7qf.js} +4 -4
- package/dist/{chrome-DYZwl5Gv.js → chrome-DkaXoP36.js} +7 -7
- package/dist/{cli-v8nSF61Z.js → cli-CAzmrOs0.js} +1 -1
- package/dist/{cli-Bjw4Mr_t.js → cli-DYdRSi_j.js} +1 -1
- package/dist/{command-registry-CojVJ8At.js → command-registry-B2aO0Q7_.js} +9 -9
- package/dist/{completion-cli-rD9RSIqQ.js → completion-cli-BKm12loU.js} +1 -1
- package/dist/{completion-cli-D3N7Bpqe.js → completion-cli-BsKD_vBb.js} +2 -2
- package/dist/{config-cli-CCG1Hizl.js → config-cli-Bynmd81Q.js} +1 -1
- package/dist/{config-cli-DFYbGvDQ.js → config-cli-D47lU7kU.js} +1 -1
- package/dist/{configure-DdWNM_S-.js → configure-B3vS2Iz5.js} +3 -3
- package/dist/{configure-v2ocSUJ3.js → configure-Df6GmKAR.js} +3 -3
- package/dist/{deliver-dODxSv3b.js → deliver-C46-vyqg.js} +1 -1
- package/dist/{doctor-completion-F_AI3hun.js → doctor-completion-DyiRkYT4.js} +1 -1
- package/dist/{doctor-completion-vTHV1Opp.js → doctor-completion-SEerte2S.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/extensionAPI.js +1 -1
- package/dist/{gateway-cli-Di1ExMCg.js → gateway-cli-PjmG0pFo.js} +9 -9
- package/dist/{gateway-cli-DLaTC2ps.js → gateway-cli-k19iT2vJ.js} +9 -9
- package/dist/{glass-ui-ws-CbaWZjN3.js → glass-ui-ws-D0Yv090T.js} +7 -7
- package/dist/{glass-ui-ws-Bfn56Lok.js → glass-ui-ws-iCEtluQU.js} +7 -7
- package/dist/{health-DbJOe12X.js → health-B32Q-KYM.js} +1 -1
- package/dist/{health-CqQIZeIm.js → health-CXjAtn1-.js} +1 -1
- package/dist/{hooks-cli-D60an6P1.js → hooks-cli-DA6zOGNz.js} +2 -2
- package/dist/{hooks-cli-B9pOqbW_.js → hooks-cli-DfRmFenH.js} +2 -2
- package/dist/{image-CXu8W39c.js → image-CuzFLQWC.js} +1 -1
- package/dist/index.js +6 -6
- package/dist/llm-slug-generator.js +6 -6
- package/dist/{models-cli-4EwiSo4p.js → models-cli-BgCUViRO.js} +2 -2
- package/dist/{models-cli-Du60Ivll.js → models-cli-CbJUD_L1.js} +3 -3
- package/dist/{models-hMbDU9ot.js → models-zowe4LXa.js} +2 -2
- package/dist/{onboard-5yW9nvG6.js → onboard-CYvIpUXQ.js} +2 -2
- package/dist/{onboard-DJqYAPxi.js → onboard-DsKgcThj.js} +2 -2
- package/dist/{onboard-channels-B39Hvc_L.js → onboard-channels-DLiV4Y0t.js} +1 -1
- package/dist/{onboard-channels-BSzHnDcL.js → onboard-channels-DxCGWgB0.js} +1 -1
- package/dist/{onboarding-D7Y_e4zX.js → onboarding-BA5v1JEG.js} +3 -3
- package/dist/{onboarding-C7g_ZvRW.js → onboarding-DioGtMFo.js} +3 -3
- package/dist/{onboarding.finalize-C3rqwVvV.js → onboarding.finalize-CAbRXb0h.js} +5 -5
- package/dist/{onboarding.finalize-OYNmD4ly.js → onboarding.finalize-DMXCA49f.js} +6 -6
- package/dist/{pi-embedded-Bp_9g-wj.js → pi-embedded-CFFnZEcA.js} +13 -13
- package/dist/{pi-embedded-helpers-pubKo8HQ.js → pi-embedded-helpers-CfqDGQ9J.js} +4 -4
- package/dist/{plugin-registry-CUjBEHAz.js → plugin-registry-Bt5YCgFq.js} +1 -1
- package/dist/{plugin-registry-C4lpIiGz.js → plugin-registry-HFOrv3KN.js} +1 -1
- package/dist/plugin-sdk/{channel-web-CQNBQiKF.js → channel-web-C2w1HotM.js} +1 -1
- package/dist/plugin-sdk/index.js +2 -2
- package/dist/plugin-sdk/{reply-S1JHdV1Y.js → reply-D5CxbzCs.js} +13 -13
- package/dist/plugin-sdk/{web-GZFVijBY.js → web-ClsKdqx-.js} +2 -2
- package/dist/{plugins-cli-NpSGD1FH.js → plugins-cli-C7xTf9NV.js} +2 -2
- package/dist/{plugins-cli-1pbqkgc2.js → plugins-cli-CXz_UApK.js} +2 -2
- package/dist/{program-CvHqOriK.js → program-8hWr4qGZ.js} +7 -7
- package/dist/{program-context-gkaZBN4U.js → program-context-BBtSJunF.js} +17 -17
- package/dist/{prompt-select-styled-We9EmwdJ.js → prompt-select-styled-CwfroEHp.js} +4 -4
- package/dist/{prompt-select-styled-DNaDChFa.js → prompt-select-styled-DUXeA9Zp.js} +4 -4
- package/dist/{provider-auth-helpers-aA2Nm1dz.js → provider-auth-helpers-Dc7jBEOA.js} +1 -1
- package/dist/{provider-auth-helpers-BD1qo8xm.js → provider-auth-helpers-DhLHWjNU.js} +1 -1
- package/dist/{push-apns-DseyExUl.js → push-apns-CVZe5WVN.js} +1 -1
- package/dist/{push-apns-Cp9F-674.js → push-apns-CflJh75N.js} +1 -1
- package/dist/{pw-ai-B5asscAD.js → pw-ai-m0mj2KWK.js} +1 -1
- package/dist/{register.agent-BQ2_6Nm3.js → register.agent-BnuJQ5lg.js} +6 -6
- package/dist/{register.agent-CBYb5PmK.js → register.agent-DV7IR1rI.js} +5 -5
- package/dist/{register.configure-o-37DMn9.js → register.configure-BhncI0ij.js} +6 -6
- package/dist/{register.configure-CjLPSjMa.js → register.configure-DaIrJXWo.js} +6 -6
- package/dist/{register.maintenance-B119maJ4.js → register.maintenance-BO1XWhVb.js} +7 -7
- package/dist/{register.maintenance-B5VGGPfr.js → register.maintenance-DK_p-7so.js} +8 -8
- package/dist/{register.message-Dqit98AR.js → register.message-B194ue2R.js} +2 -2
- package/dist/{register.message-C0vKP2cl.js → register.message-B4CGCAn_.js} +2 -2
- package/dist/{register.onboard-BHj8YY-f.js → register.onboard-DidMCka8.js} +4 -4
- package/dist/{register.onboard-DfCy6ZXS.js → register.onboard-Dt53qGB5.js} +4 -4
- package/dist/{register.setup-BO4Kdk1x.js → register.setup-CLV1kk2-.js} +4 -4
- package/dist/{register.setup-CUK-FwzD.js → register.setup-DgUxMRZR.js} +4 -4
- package/dist/{register.status-health-sessions-BIXO_68y.js → register.status-health-sessions-CB10JLY6.js} +3 -3
- package/dist/{register.status-health-sessions-CvcX-h97.js → register.status-health-sessions-TvGuwVoR.js} +3 -3
- package/dist/{register.subclis-B0T9tMmL.js → register.subclis-elNdyQio.js} +9 -9
- package/dist/{reply-DPaH7oQp.js → reply-DUZvOCsG.js} +13 -13
- package/dist/{run-main-DLFhMwmE.js → run-main-gBPGqO8r.js} +14 -14
- package/dist/{runner-WAG0M5s9.js → runner-CU9l0uJh.js} +1 -1
- package/dist/{server-methods-DMIR4YTm.js → server-methods-BG0N79yY.js} +7 -7
- package/dist/{server-methods-CCAxdyvF.js → server-methods-dgW-8gC7.js} +7 -7
- package/dist/{server-node-events-BvOiDPkg.js → server-node-events-B_hsQw_N.js} +2 -2
- package/dist/{server-node-events-BQ7wsfbY.js → server-node-events-ZtQKBPo3.js} +2 -2
- package/dist/{status-gpmp_Ca5.js → status-BqhJ-HsW.js} +1 -1
- package/dist/{status-BPGU6b1g.js → status-Cd9-xWsZ.js} +2 -2
- package/dist/{status-D4RE4eR4.js → status-D-IvYfjk.js} +2 -2
- package/dist/{status-CpCo3PvK.js → status-D4Lr90yH.js} +1 -1
- package/dist/{subagent-registry-CzBf7A_o.js → subagent-registry-J2pIBQF7.js} +13 -13
- package/dist/{unified-runner-CnKhgGr-.js → unified-runner-oH9Pt-cO.js} +27 -27
- package/dist/{update-cli-16QmlAYc.js → update-cli-B7TLu25J.js} +8 -8
- package/dist/{update-cli-B8lzwxOj.js → update-cli-D8nA6U7C.js} +7 -7
- package/dist/{update-runner-CEjq0Uxs.js → update-runner-D8AFB8Oi.js} +1 -1
- package/dist/{update-runner-DLCpL3Pj.js → update-runner-DvZOsoQs.js} +1 -1
- package/dist/{web-CQ7OlTVM.js → web-0xZpP0WA.js} +6 -6
- package/dist/{web-BiZqjSRz.js → web-CAy-xQv2.js} +1 -1
- package/dist/{web-BPQuKyCM.js → web-DDiOPIdv.js} +2 -2
- package/dist/{web-D7tHOzz3.js → web-mQInjWbW.js} +1 -1
- package/package.json +1 -1
|
@@ -12,7 +12,7 @@ import { f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, i as isGatewayMessa
|
|
|
12
12
|
import { c as writeJsonAtomic, o as createAsyncLock, s as readJsonFile } from "./pairing-token-Byh6drgn.js";
|
|
13
13
|
import { s as pickPrimaryLanIPv4 } from "./net-DZ5Ayk-W.js";
|
|
14
14
|
import { i as normalizeInputProvenance } from "./input-provenance-D0lNkCf6.js";
|
|
15
|
-
import { $n as resolveTtsAutoMode, B as dispatchInboundMessage, C as resolveAgentDeliveryPlan, Cn as enqueueSystemEvent, Cr as onAgentEvent, D as createOutboundSendDeps, Dt as normalizeCronJobPatch, Et as normalizeCronJobCreate, G as BARE_SESSION_RESET_PROMPT, Gn as stopSubagentsForRequester, Gt as persistBrowserProxyFiles, In as resolveAgentTimeoutMs, Jn as resolveUserTimezone, Qn as resolveTtsApiKey, Sn as parseVerboseOverride, V as createReplyDispatcher, Vn as formatZonedTimestamp, Wn as isAbortTrigger, Wt as applyBrowserProxyPaths, Xn as isTtsEnabled, Y as abortEmbeddedPiRun, Yn as getTtsProvider, Z as waitForEmbeddedPiRunEnd, Zn as isTtsProviderConfigured, Zt as scheduleGatewaySigusr1Restart, a as listSubagentRunsForRequester, ar as textToSpeech, bn as applyModelOverrideToSessionEntry, c as clearSessionQueues, ct as resolveOutboundSessionRoute, dt as resolveOutboundTarget, en as unbindThreadBindingsBySessionKey, er as resolveTtsConfig, hn as resolveSendPolicy, i as listDescendantRunsForRequester, ir as setTtsProvider, m as loadSymiPlugins, mn as normalizeSendPolicy, nr as resolveTtsProviderOrder, or as OPENAI_TTS_MODELS, rn as loadProviderUsageSummary, rr as setTtsEnabled, sr as OPENAI_TTS_VOICES, st as ensureOutboundSessionEntry, tn as normalizeGroupActivation, tr as resolveTtsPrefsPath, w as resolveAgentOutboundTarget, wn as isSystemEventContextChanged, wr as registerAgentRunContext, wt as writeRestartSentinel, x as agentCommand, xn as applyVerboseOverride, yt as formatDoctorNonInteractiveHint } from "./subagent-registry-
|
|
15
|
+
import { $n as resolveTtsAutoMode, B as dispatchInboundMessage, C as resolveAgentDeliveryPlan, Cn as enqueueSystemEvent, Cr as onAgentEvent, D as createOutboundSendDeps, Dt as normalizeCronJobPatch, Et as normalizeCronJobCreate, G as BARE_SESSION_RESET_PROMPT, Gn as stopSubagentsForRequester, Gt as persistBrowserProxyFiles, In as resolveAgentTimeoutMs, Jn as resolveUserTimezone, Qn as resolveTtsApiKey, Sn as parseVerboseOverride, V as createReplyDispatcher, Vn as formatZonedTimestamp, Wn as isAbortTrigger, Wt as applyBrowserProxyPaths, Xn as isTtsEnabled, Y as abortEmbeddedPiRun, Yn as getTtsProvider, Z as waitForEmbeddedPiRunEnd, Zn as isTtsProviderConfigured, Zt as scheduleGatewaySigusr1Restart, a as listSubagentRunsForRequester, ar as textToSpeech, bn as applyModelOverrideToSessionEntry, c as clearSessionQueues, ct as resolveOutboundSessionRoute, dt as resolveOutboundTarget, en as unbindThreadBindingsBySessionKey, er as resolveTtsConfig, hn as resolveSendPolicy, i as listDescendantRunsForRequester, ir as setTtsProvider, m as loadSymiPlugins, mn as normalizeSendPolicy, nr as resolveTtsProviderOrder, or as OPENAI_TTS_MODELS, rn as loadProviderUsageSummary, rr as setTtsEnabled, sr as OPENAI_TTS_VOICES, st as ensureOutboundSessionEntry, tn as normalizeGroupActivation, tr as resolveTtsPrefsPath, w as resolveAgentOutboundTarget, wn as isSystemEventContextChanged, wr as registerAgentRunContext, wt as writeRestartSentinel, x as agentCommand, xn as applyVerboseOverride, yt as formatDoctorNonInteractiveHint } from "./subagent-registry-J2pIBQF7.js";
|
|
16
16
|
import { F as resolveMainSessionKey, I as resolveMainSessionKeyFromConfig, J as normalizeSessionDeliveryFields, N as resolveAgentMainSessionKey, P as resolveExplicitAgentSessionKey, R as snapshotSessionOrigin, S as stripEnvelopeFromMessages, _ as capArrayByJsonBytes, d as updateSessionStore, g as archiveSessionTranscripts, h as archiveFileOnDisk, o as loadSessionStore, t as extractDeliveryInfo, v as readSessionMessages, x as resolveSessionTranscriptCandidates, y as readSessionPreviewItemsFromTranscript } from "./sessions-CJXnZVjR.js";
|
|
17
17
|
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-CwSlLxM8.js";
|
|
18
18
|
import { n as createBrowserRouteDispatcher } from "./with-timeout-Di0nddLY.js";
|
|
@@ -37,14 +37,14 @@ import { t as WizardCancelledError } from "./prompts-m1IJwIAx.js";
|
|
|
37
37
|
import { t as resolveChannelDefaultAccountId } from "./helpers-cLP5YLeQ.js";
|
|
38
38
|
import { t as buildChannelAccountSnapshot } from "./status-BUedPCLb.js";
|
|
39
39
|
import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-Byo5jCLN.js";
|
|
40
|
-
import { r as getStatusSummary } from "./status-
|
|
41
|
-
import { c as setHeartbeatsEnabled } from "./health-
|
|
40
|
+
import { r as getStatusSummary } from "./status-D-IvYfjk.js";
|
|
41
|
+
import { c as setHeartbeatsEnabled } from "./health-CXjAtn1-.js";
|
|
42
42
|
import { m as normalizeUpdateChannel } from "./update-check-ZdimP1aU.js";
|
|
43
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-
|
|
44
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
43
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-CVZe5WVN.js";
|
|
44
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-Co1CO8fA.js";
|
|
45
45
|
import { t as resolveSystemRunCommand } from "./system-run-command-ByVa3txU.js";
|
|
46
46
|
import { t as installSkill } from "./skills-install-1ZdwGTnh.js";
|
|
47
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
47
|
+
import { t as runGatewayUpdate } from "./update-runner-D8AFB8Oi.js";
|
|
48
48
|
import { spawnSync } from "node:child_process";
|
|
49
49
|
import * as os$1 from "node:os";
|
|
50
50
|
import os from "node:os";
|
|
@@ -6851,7 +6851,7 @@ const nodeHandlers = {
|
|
|
6851
6851
|
const p = params;
|
|
6852
6852
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
6853
6853
|
await respondUnavailableOnThrow(respond, async () => {
|
|
6854
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
6854
|
+
const { handleNodeEvent } = await import("./server-node-events-B_hsQw_N.js");
|
|
6855
6855
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
6856
6856
|
await handleNodeEvent({
|
|
6857
6857
|
deps: context.deps,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { g as resolveStateDir, t as CONFIG_PATH } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { D as isPlainObject, U as getResolvedLoggerSettings, r as clamp, y as resolveUserPath } from "./utils-B-0b9bGM.js";
|
|
3
3
|
import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-EAliFiVK.js";
|
|
4
|
-
import { $n as OPENAI_TTS_MODELS, Bn as registerAgentRunContext, Bt as abortEmbeddedPiRun, C as ensureOutboundSessionEntry, Et as agentCommand, Ft as normalizeSendPolicy, G as normalizeCronJobPatch, Gn as resolveTtsApiKey, H as writeRestartSentinel, Hn as getTtsProvider, Ht as waitForEmbeddedPiRunEnd, It as resolveSendPolicy, Jn as resolveTtsPrefsPath, Kn as resolveTtsAutoMode, L as formatDoctorNonInteractiveHint, Mn as listSubagentRunsForRequester, Mt as resolveOutboundTarget, N as scheduleGatewaySigusr1Restart, Ot as resolveAgentDeliveryPlan, Pr as resolveAgentTimeoutMs, Qn as textToSpeech, Rt as createOutboundSendDeps, Sr as isSystemEventContextChanged, Tn as stopSubagentsForRequester, Un as isTtsEnabled, Vn as resolveUserTimezone, W as normalizeCronJobCreate, Wn as isTtsProviderConfigured, Xn as setTtsEnabled, Yn as resolveTtsProviderOrder, Zn as setTtsProvider, _ as loadCombinedSessionStoreForGateway, at as persistBrowserProxyFiles, b as resolveGatewaySessionStoreTarget, br as parseVerboseOverride, c as clearSessionQueues, er as OPENAI_TTS_VOICES, ft as loadSymiPlugins, g as listSessionsFromStore, gt as loadProviderUsageSummary, h as listAgentsForGateway, in as unbindThreadBindingsBySessionKey, it as applyBrowserProxyPaths, jn as listDescendantRunsForRequester, kt as resolveAgentOutboundTarget, mn as createReplyDispatcher, mt as normalizeGroupActivation, n as BARE_SESSION_RESET_PROMPT, p as canonicalizeSpawnedByForAgent, pn as dispatchInboundMessage, qn as resolveTtsConfig, v as loadSessionEntry, vr as applyModelOverrideToSessionEntry, w as resolveOutboundSessionRoute, wn as isAbortTrigger, x as resolveSessionModelRef, xn as formatZonedTimestamp, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys, yr as applyVerboseOverride, zn as onAgentEvent } from "./reply-
|
|
4
|
+
import { $n as OPENAI_TTS_MODELS, Bn as registerAgentRunContext, Bt as abortEmbeddedPiRun, C as ensureOutboundSessionEntry, Et as agentCommand, Ft as normalizeSendPolicy, G as normalizeCronJobPatch, Gn as resolveTtsApiKey, H as writeRestartSentinel, Hn as getTtsProvider, Ht as waitForEmbeddedPiRunEnd, It as resolveSendPolicy, Jn as resolveTtsPrefsPath, Kn as resolveTtsAutoMode, L as formatDoctorNonInteractiveHint, Mn as listSubagentRunsForRequester, Mt as resolveOutboundTarget, N as scheduleGatewaySigusr1Restart, Ot as resolveAgentDeliveryPlan, Pr as resolveAgentTimeoutMs, Qn as textToSpeech, Rt as createOutboundSendDeps, Sr as isSystemEventContextChanged, Tn as stopSubagentsForRequester, Un as isTtsEnabled, Vn as resolveUserTimezone, W as normalizeCronJobCreate, Wn as isTtsProviderConfigured, Xn as setTtsEnabled, Yn as resolveTtsProviderOrder, Zn as setTtsProvider, _ as loadCombinedSessionStoreForGateway, at as persistBrowserProxyFiles, b as resolveGatewaySessionStoreTarget, br as parseVerboseOverride, c as clearSessionQueues, er as OPENAI_TTS_VOICES, ft as loadSymiPlugins, g as listSessionsFromStore, gt as loadProviderUsageSummary, h as listAgentsForGateway, in as unbindThreadBindingsBySessionKey, it as applyBrowserProxyPaths, jn as listDescendantRunsForRequester, kt as resolveAgentOutboundTarget, mn as createReplyDispatcher, mt as normalizeGroupActivation, n as BARE_SESSION_RESET_PROMPT, p as canonicalizeSpawnedByForAgent, pn as dispatchInboundMessage, qn as resolveTtsConfig, v as loadSessionEntry, vr as applyModelOverrideToSessionEntry, w as resolveOutboundSessionRoute, wn as isAbortTrigger, x as resolveSessionModelRef, xn as formatZonedTimestamp, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys, yr as applyVerboseOverride, zn as onAgentEvent } from "./reply-DUZvOCsG.js";
|
|
5
5
|
import { S as parseAgentSessionKey, l as resolveAgentIdFromSessionKey, m as DEFAULT_ACCOUNT_ID, o as classifySessionKeyShape, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as isSubagentSessionKey } from "./session-key-DCt45XZa.js";
|
|
6
6
|
import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
|
|
7
7
|
import { C as createInternalHookEvent, T as triggerInternalHook, d as getActivePluginRegistry, r as DEFAULT_CHAT_CHANNEL, t as CHANNEL_IDS } from "./registry-Cja8eT7G.js";
|
|
@@ -39,14 +39,14 @@ import { t as WizardCancelledError } from "./prompts-Xu2Sveka.js";
|
|
|
39
39
|
import { t as resolveChannelDefaultAccountId } from "./helpers-BcGbMZD1.js";
|
|
40
40
|
import { t as buildChannelAccountSnapshot } from "./status-BrV-afZE.js";
|
|
41
41
|
import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-CrITRV6w.js";
|
|
42
|
-
import { n as getStatusSummary } from "./status-
|
|
43
|
-
import { s as setHeartbeatsEnabled } from "./health-
|
|
42
|
+
import { n as getStatusSummary } from "./status-Cd9-xWsZ.js";
|
|
43
|
+
import { s as setHeartbeatsEnabled } from "./health-B32Q-KYM.js";
|
|
44
44
|
import { m as normalizeUpdateChannel } from "./update-check-CtckACbb.js";
|
|
45
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-
|
|
46
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
45
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-CflJh75N.js";
|
|
46
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-B3GILTs5.js";
|
|
47
47
|
import { t as resolveSystemRunCommand } from "./system-run-command-ByVa3txU.js";
|
|
48
48
|
import { t as installSkill } from "./skills-install-D67isO1L.js";
|
|
49
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
49
|
+
import { t as runGatewayUpdate } from "./update-runner-DvZOsoQs.js";
|
|
50
50
|
import * as fs$2 from "node:fs";
|
|
51
51
|
import fs from "node:fs";
|
|
52
52
|
import * as os$1 from "node:os";
|
|
@@ -6853,7 +6853,7 @@ const nodeHandlers = {
|
|
|
6853
6853
|
const p = params;
|
|
6854
6854
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
6855
6855
|
await respondUnavailableOnThrow(respond, async () => {
|
|
6856
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
6856
|
+
const { handleNodeEvent } = await import("./server-node-events-ZtQKBPo3.js");
|
|
6857
6857
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
6858
6858
|
await handleNodeEvent({
|
|
6859
6859
|
deps: context.deps,
|
|
@@ -14,7 +14,7 @@ import "./client-DMBZpU6X.js";
|
|
|
14
14
|
import "./call-BcE47FtD.js";
|
|
15
15
|
import "./message-channel-C9dERklz.js";
|
|
16
16
|
import "./pairing-token-Byh6drgn.js";
|
|
17
|
-
import { Cn as enqueueSystemEvent, T as createOutboundSendDeps, dn as requestHeartbeatNow, dt as resolveOutboundTarget, x as agentCommand } from "./subagent-registry-
|
|
17
|
+
import { Cn as enqueueSystemEvent, T as createOutboundSendDeps, dn as requestHeartbeatNow, dt as resolveOutboundTarget, x as agentCommand } from "./subagent-registry-J2pIBQF7.js";
|
|
18
18
|
import { d as updateSessionStore } from "./sessions-CJXnZVjR.js";
|
|
19
19
|
import "./tokens-Csntmwwn.js";
|
|
20
20
|
import { r as normalizeChannelId } from "./plugins-CwSlLxM8.js";
|
|
@@ -98,7 +98,7 @@ import "./onboard-helpers-_pit1NZW.js";
|
|
|
98
98
|
import "./prompt-style-DwCXob2h.js";
|
|
99
99
|
import "./pairing-labels-D1HDboV2.js";
|
|
100
100
|
import "./pi-tools.policy-De00gPXt.js";
|
|
101
|
-
import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-
|
|
101
|
+
import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-CVZe5WVN.js";
|
|
102
102
|
import { randomUUID } from "node:crypto";
|
|
103
103
|
|
|
104
104
|
//#region src/gateway/server-node-events.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./paths-Cqn-zk3M.js";
|
|
2
2
|
import "./utils-B-0b9bGM.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import { Et as agentCommand, Mt as resolveOutboundTarget, Pt as createOutboundSendDeps, b as resolveGatewaySessionStoreTarget, st as requestHeartbeatNow, v as loadSessionEntry, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys } from "./reply-
|
|
4
|
+
import { Et as agentCommand, Mt as resolveOutboundTarget, Pt as createOutboundSendDeps, b as resolveGatewaySessionStoreTarget, st as requestHeartbeatNow, v as loadSessionEntry, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys } from "./reply-DUZvOCsG.js";
|
|
5
5
|
import { c as normalizeMainKey } from "./session-key-DCt45XZa.js";
|
|
6
6
|
import "./registry-Cja8eT7G.js";
|
|
7
7
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
@@ -102,7 +102,7 @@ import "./pi-tools.policy-CIDBbw6x.js";
|
|
|
102
102
|
import "./control-service-Bz7rxLWq.js";
|
|
103
103
|
import "./stagger-BUClb97_.js";
|
|
104
104
|
import "./channel-selection-DuWs0Aak.js";
|
|
105
|
-
import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-
|
|
105
|
+
import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-CflJh75N.js";
|
|
106
106
|
import { randomUUID } from "node:crypto";
|
|
107
107
|
|
|
108
108
|
//#region src/gateway/server-node-events.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-
|
|
1
|
+
import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-DUZvOCsG.js";
|
|
2
2
|
import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
3
3
|
import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
|
|
4
4
|
import { i as loadConfig } from "./config-CHwyw6l5.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme, k as info, z as isRich } from "./utils-B-0b9bGM.js";
|
|
3
|
-
import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-
|
|
3
|
+
import { B as summarizeRestartSentinel, Jt as sha256HexPrefix, _t as formatUsageReportLines, a as buildChannelSummary, gt as loadProviderUsageSummary, h as listAgentsForGateway, m as classifySessionKey, o as buildChannelAccountSnapshot, pr as lookupContextTokens, s as formatChannelAllowFrom, wr as peekSystemEvents, x as resolveSessionModelRef, z as readRestartSentinel } from "./reply-DUZvOCsG.js";
|
|
4
4
|
import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
|
|
5
5
|
import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
|
|
6
6
|
import { n as runExec } from "./exec-CWkblSrI.js";
|
|
@@ -28,7 +28,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-CR9445g5.j
|
|
|
28
28
|
import { t as readLastGatewayErrorLine } from "./diagnostics-BAMlsVVX.js";
|
|
29
29
|
import { t as renderTable } from "./table-BTgkRafz.js";
|
|
30
30
|
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-CrITRV6w.js";
|
|
31
|
-
import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-
|
|
31
|
+
import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-B32Q-KYM.js";
|
|
32
32
|
import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-CtckACbb.js";
|
|
33
33
|
import { t as resolveNodeService } from "./node-service-Cxz4e-Qd.js";
|
|
34
34
|
import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-yQZNwAF2.js";
|
|
@@ -9,7 +9,7 @@ import { c as resolveAgentWorkspaceDir } from "./agent-scope-D-jRCY0d.js";
|
|
|
9
9
|
import { t as buildWorkspaceSkillStatus } from "./skills-status-DKXJ-tbi.js";
|
|
10
10
|
import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-DHBLS1Hl.js";
|
|
11
11
|
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BcE47FtD.js";
|
|
12
|
-
import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-
|
|
12
|
+
import { En as peekSystemEvents, St as summarizeRestartSentinel, cn as buildChannelAccountSnapshot, in as formatUsageReportLines, ln as formatChannelAllowFrom, nt as sha256HexPrefix, rn as loadProviderUsageSummary, sn as buildChannelSummary, xt as readRestartSentinel } from "./subagent-registry-J2pIBQF7.js";
|
|
13
13
|
import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-CJXnZVjR.js";
|
|
14
14
|
import { n as listChannelPlugins } from "./plugins-CwSlLxM8.js";
|
|
15
15
|
import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-CbbvYNVw.js";
|
|
@@ -29,7 +29,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-hFVEC3wO.j
|
|
|
29
29
|
import { t as readLastGatewayErrorLine } from "./diagnostics-CS1ov_hH.js";
|
|
30
30
|
import { t as renderTable } from "./table-D01d2GuY.js";
|
|
31
31
|
import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-Byo5jCLN.js";
|
|
32
|
-
import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-
|
|
32
|
+
import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CXjAtn1-.js";
|
|
33
33
|
import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-ZdimP1aU.js";
|
|
34
34
|
import { t as resolveNodeService } from "./node-service-fcZExd22.js";
|
|
35
35
|
import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-DVLB9DNB.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { o as createSubsystemLogger } from "./entry.js";
|
|
2
2
|
import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
|
|
3
3
|
import { i as loadConfig } from "./config-DHBLS1Hl.js";
|
|
4
|
-
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-
|
|
4
|
+
import { m as loadSymiPlugins, p as createPluginLoaderLogger } from "./subagent-registry-J2pIBQF7.js";
|
|
5
5
|
|
|
6
6
|
//#region src/plugins/status.ts
|
|
7
7
|
const log = createSubsystemLogger("plugins");
|
|
@@ -35616,15 +35616,15 @@ function validateShellCommand(command) {
|
|
|
35616
35616
|
//#endregion
|
|
35617
35617
|
//#region src/agents/pi-tools.validate-wrapper.ts
|
|
35618
35618
|
const log$1 = createSubsystemLogger("agents/tool-validate");
|
|
35619
|
-
/**
|
|
35620
|
-
|
|
35621
|
-
|
|
35622
|
-
|
|
35623
|
-
|
|
35624
|
-
|
|
35625
|
-
|
|
35626
|
-
|
|
35627
|
-
|
|
35619
|
+
/**
|
|
35620
|
+
* Throw a tool validation error. pi-agent-core catches thrown errors in
|
|
35621
|
+
* execute(), formats them as { content: [{ type: "text", text: e.message }] }
|
|
35622
|
+
* with isError: true on the tool_execution_end event. This ensures:
|
|
35623
|
+
* 1. The model sees the helpful error message (e.message)
|
|
35624
|
+
* 2. The circuit breaker counts it as a tool failure (isError: true)
|
|
35625
|
+
*/
|
|
35626
|
+
function throwToolError(message) {
|
|
35627
|
+
throw new Error(message);
|
|
35628
35628
|
}
|
|
35629
35629
|
const EXEC_TOOL_NAMES = new Set(["exec", "bash"]);
|
|
35630
35630
|
const GEMMA_MODEL_ID = "gemma";
|
|
@@ -35729,7 +35729,7 @@ function wrapToolWithArgValidation(tool) {
|
|
|
35729
35729
|
const missingFields = originalRequired.filter((field) => params[field] === void 0 || params[field] === null);
|
|
35730
35730
|
if (missingFields.length > 0) {
|
|
35731
35731
|
log$1.warn(`[validate] ${toolName} missing required fields: ${missingFields.join(", ")}`);
|
|
35732
|
-
|
|
35732
|
+
throwToolError(`Missing required argument${missingFields.length > 1 ? "s" : ""}: ${missingFields.join(", ")}. Please try again with all required arguments.\nExample: ${usageExample}`);
|
|
35733
35733
|
}
|
|
35734
35734
|
const { cleaned, changed } = sanitizeParams(params);
|
|
35735
35735
|
if (changed) log$1.debug(`[validate] sanitized args for ${toolName}: ${Object.keys(params).filter((k) => cleaned[k] !== params[k]).join(",")}`);
|
|
@@ -35743,7 +35743,7 @@ function wrapToolWithArgValidation(tool) {
|
|
|
35743
35743
|
const result = validateShellCommand(command);
|
|
35744
35744
|
if (!result.valid) {
|
|
35745
35745
|
log$1.warn(`[validate] exec command rejected: reason=${result.reason} raw=${command.slice(0, 100)}`);
|
|
35746
|
-
|
|
35746
|
+
throwToolError(`${result.reason}. The command appears to contain model control tokens. Please provide a clean shell command without any <|, |>, or XML-like tags. Only valid shell syntax is accepted.`);
|
|
35747
35747
|
}
|
|
35748
35748
|
if (result.cleaned !== command) {
|
|
35749
35749
|
log$1.debug(`[validate] exec command cleaned: raw=${command.slice(0, 80)} → cleaned=${result.cleaned.slice(0, 80)}`);
|
|
@@ -53079,7 +53079,7 @@ function isVoiceChannelType(type) {
|
|
|
53079
53079
|
function createDefaultDeps() {
|
|
53080
53080
|
return {
|
|
53081
53081
|
sendMessageWhatsApp: async (...args) => {
|
|
53082
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53082
|
+
const { sendMessageWhatsApp } = await import("./web-CAy-xQv2.js");
|
|
53083
53083
|
return await sendMessageWhatsApp(...args);
|
|
53084
53084
|
},
|
|
53085
53085
|
sendMessageTelegram: async (...args) => {
|
|
@@ -68393,7 +68393,7 @@ function loadWebLoginQr() {
|
|
|
68393
68393
|
return webLoginQrPromise;
|
|
68394
68394
|
}
|
|
68395
68395
|
function loadWebChannel() {
|
|
68396
|
-
webChannelPromise ??= import("./web-
|
|
68396
|
+
webChannelPromise ??= import("./web-CAy-xQv2.js");
|
|
68397
68397
|
return webChannelPromise;
|
|
68398
68398
|
}
|
|
68399
68399
|
function loadWhatsAppActions() {
|
|
@@ -10,10 +10,10 @@ import { $ as resolveSymiAgentDir, B as resolveApiKeyForProvider, C as normalize
|
|
|
10
10
|
import { n as formatCliCommand, r as resolveCliName, t as isTruthyEnvValue } from "./env-BDXYbTKj.js";
|
|
11
11
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-cCYzSU9h.js";
|
|
12
12
|
import { t as parseBooleanValue$1 } from "./boolean-CE7i9tBR.js";
|
|
13
|
-
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-
|
|
13
|
+
import { $ as normalizeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, G as updateLastRoute, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as isCacheEnabled, Jt as ensureSessionHeader, K as updateSessionStore, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as mergeDeliveryContext, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as deliveryContextFromSession, Xt as resolveBootstrapTotalMaxChars, Y as resolveCacheTtlMs$1, Yt as resolveBootstrapMaxChars, Z as deliveryContextKey, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as resolveFreshSessionTotalTokens, a as isMessagingToolDuplicateNormalized, at as extractToolCallNames, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as hasInterSessionUserProvenance, d as isAntigravityClaude, dt as evaluateSessionFreshness, et as normalizeSessionDeliveryFields, f as isGoogleModelApi, ft as resolveChannelResetConfig, g as formatBillingErrorMessage, gt as DEFAULT_RESET_TRIGGERS, h as formatAssistantErrorText, ht as resolveThreadFlag, it as countToolResults, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as normalizeInputProvenance, m as classifyFailoverReason, mt as resolveSessionResetType, n as validateGeminiTurns, nt as archiveSessionTranscripts, o as normalizeTextForComparison, ot as INPUT_PROVENANCE_KIND_VALUES, p as BILLING_ERROR_USER_MESSAGE, pt as resolveSessionResetPolicy, q as updateSessionStoreEntry, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as capArrayByJsonBytes, s as sanitizeSessionMessagesImages, st as applyInputProvenanceToUserMessage, t as validateAnthropicTurns, tt as normalizeAccountId$3, u as downgradeOpenAIReasoningBlocks, ut as resolveSessionKey, v as getApiErrorPayloadFingerprint, vt as canonicalizeMainSessionAlias, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-CfqDGQ9J.js";
|
|
14
14
|
import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-5SdHIcHU.js";
|
|
15
15
|
import { a as applyTestPluginDefaults, c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, i as safeStatSync, n as discoverSymiPlugins, o as normalizePluginsConfig, r as isPathInside, s as resolveEnableState, t as loadPluginManifestRegistry, u as isPathInsideWithRealpath } from "./manifest-registry-yb7sAlu4.js";
|
|
16
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
16
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-DkaXoP36.js";
|
|
17
17
|
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-Bs0AW1g3.js";
|
|
18
18
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-XIsvXeC-.js";
|
|
19
19
|
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-C7CauEK8.js";
|
|
@@ -31,10 +31,10 @@ import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i
|
|
|
31
31
|
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, 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 resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-CvhXrdgS.js";
|
|
32
32
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-BBh3Gsrx.js";
|
|
33
33
|
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-SqqWIT22.js";
|
|
34
|
-
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-
|
|
34
|
+
import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-C46-vyqg.js";
|
|
35
35
|
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-rPhsBoZz.js";
|
|
36
36
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Zw87xFym.js";
|
|
37
|
-
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-
|
|
37
|
+
import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-CuzFLQWC.js";
|
|
38
38
|
import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-Bux9Y_xD.js";
|
|
39
39
|
import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-DYj_o4_F.js";
|
|
40
40
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Bv5YDJc8.js";
|
|
@@ -49,7 +49,7 @@ import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-DL3f
|
|
|
49
49
|
import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-DhZz0Ybs.js";
|
|
50
50
|
import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-CTiz95Vb.js";
|
|
51
51
|
import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-Bfc7Uz0o.js";
|
|
52
|
-
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-
|
|
52
|
+
import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as registerUnhandledRejectionHandler } from "./runner-CU9l0uJh.js";
|
|
53
53
|
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-DcVwOafC.js";
|
|
54
54
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DSDTl6Kj.js";
|
|
55
55
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-Bso4i15F.js";
|
|
@@ -80,7 +80,7 @@ import AjvPkg from "ajv";
|
|
|
80
80
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
81
81
|
import { createServer } from "node:http";
|
|
82
82
|
import { ProxyAgent, fetch as fetch$1 } from "undici";
|
|
83
|
-
import WebSocket, { WebSocket
|
|
83
|
+
import WebSocket$1, { WebSocket } from "ws";
|
|
84
84
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
85
85
|
import { EdgeTTS } from "node-edge-tts";
|
|
86
86
|
import { createJiti } from "jiti";
|
|
@@ -8636,7 +8636,7 @@ var GatewayClient = class {
|
|
|
8636
8636
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
8637
8637
|
});
|
|
8638
8638
|
}
|
|
8639
|
-
this.ws = new WebSocket
|
|
8639
|
+
this.ws = new WebSocket(url, wsOptions);
|
|
8640
8640
|
this.ws.on("open", () => {
|
|
8641
8641
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
8642
8642
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -8855,7 +8855,7 @@ var GatewayClient = class {
|
|
|
8855
8855
|
return null;
|
|
8856
8856
|
}
|
|
8857
8857
|
async request(method, params, opts) {
|
|
8858
|
-
if (!this.ws || this.ws.readyState !== WebSocket
|
|
8858
|
+
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
8859
8859
|
const id = randomUUID();
|
|
8860
8860
|
const frame = {
|
|
8861
8861
|
type: "req",
|
|
@@ -10121,7 +10121,7 @@ async function routeReply(params) {
|
|
|
10121
10121
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
10122
10122
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
10123
10123
|
try {
|
|
10124
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
10124
|
+
const { deliverOutboundPayloads } = await import("./deliver-C46-vyqg.js").then((n) => n.n);
|
|
10125
10125
|
return {
|
|
10126
10126
|
ok: true,
|
|
10127
10127
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -43560,7 +43560,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
43560
43560
|
return;
|
|
43561
43561
|
}
|
|
43562
43562
|
try {
|
|
43563
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
43563
|
+
const { deliverOutboundPayloads } = await import("./deliver-C46-vyqg.js").then((n) => n.n);
|
|
43564
43564
|
await deliverOutboundPayloads({
|
|
43565
43565
|
cfg: params.cfg,
|
|
43566
43566
|
channel,
|
|
@@ -47006,7 +47006,7 @@ async function describeStickerImage(params) {
|
|
|
47006
47006
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47007
47007
|
try {
|
|
47008
47008
|
const buffer = await fs$1.readFile(imagePath);
|
|
47009
|
-
const { describeImageWithModel } = await import("./image-
|
|
47009
|
+
const { describeImageWithModel } = await import("./image-CuzFLQWC.js").then((n) => n.n);
|
|
47010
47010
|
return (await describeImageWithModel({
|
|
47011
47011
|
buffer,
|
|
47012
47012
|
fileName: "sticker.webp",
|
|
@@ -49668,7 +49668,7 @@ async function preflightDiscordMessage(params) {
|
|
|
49668
49668
|
let preflightTranscript;
|
|
49669
49669
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
49670
49670
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
49671
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
49671
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BVaaZWkg.js");
|
|
49672
49672
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
49673
49673
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
49674
49674
|
ctx: {
|
|
@@ -53674,7 +53674,7 @@ function isVoiceChannelType(type) {
|
|
|
53674
53674
|
function createDefaultDeps() {
|
|
53675
53675
|
return {
|
|
53676
53676
|
sendMessageWhatsApp: async (...args) => {
|
|
53677
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53677
|
+
const { sendMessageWhatsApp } = await import("./web-0xZpP0WA.js");
|
|
53678
53678
|
return await sendMessageWhatsApp(...args);
|
|
53679
53679
|
},
|
|
53680
53680
|
sendMessageTelegram: async (...args) => {
|
|
@@ -56579,7 +56579,7 @@ function createDiscordGatewayPlugin(params) {
|
|
|
56579
56579
|
super(options);
|
|
56580
56580
|
}
|
|
56581
56581
|
createWebSocket(url) {
|
|
56582
|
-
return new WebSocket(url, { agent });
|
|
56582
|
+
return new WebSocket$1(url, { agent });
|
|
56583
56583
|
}
|
|
56584
56584
|
}
|
|
56585
56585
|
return new ProxyGatewayPlugin();
|
|
@@ -66797,7 +66797,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
66797
66797
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
66798
66798
|
let preflightTranscript;
|
|
66799
66799
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
66800
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
66800
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BVaaZWkg.js");
|
|
66801
66801
|
preflightTranscript = await transcribeFirstAudio({
|
|
66802
66802
|
ctx: {
|
|
66803
66803
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -68954,7 +68954,7 @@ function loadWebLoginQr() {
|
|
|
68954
68954
|
return webLoginQrPromise;
|
|
68955
68955
|
}
|
|
68956
68956
|
function loadWebChannel() {
|
|
68957
|
-
webChannelPromise ??= import("./web-
|
|
68957
|
+
webChannelPromise ??= import("./web-0xZpP0WA.js");
|
|
68958
68958
|
return webChannelPromise;
|
|
68959
68959
|
}
|
|
68960
68960
|
function loadWhatsAppActions() {
|
|
@@ -75534,15 +75534,15 @@ function validateShellCommand(command) {
|
|
|
75534
75534
|
//#endregion
|
|
75535
75535
|
//#region src/agents/pi-tools.validate-wrapper.ts
|
|
75536
75536
|
const log = createSubsystemLogger("agents/tool-validate");
|
|
75537
|
-
/**
|
|
75538
|
-
|
|
75539
|
-
|
|
75540
|
-
|
|
75541
|
-
|
|
75542
|
-
|
|
75543
|
-
|
|
75544
|
-
|
|
75545
|
-
|
|
75537
|
+
/**
|
|
75538
|
+
* Throw a tool validation error. pi-agent-core catches thrown errors in
|
|
75539
|
+
* execute(), formats them as { content: [{ type: "text", text: e.message }] }
|
|
75540
|
+
* with isError: true on the tool_execution_end event. This ensures:
|
|
75541
|
+
* 1. The model sees the helpful error message (e.message)
|
|
75542
|
+
* 2. The circuit breaker counts it as a tool failure (isError: true)
|
|
75543
|
+
*/
|
|
75544
|
+
function throwToolError(message) {
|
|
75545
|
+
throw new Error(message);
|
|
75546
75546
|
}
|
|
75547
75547
|
const EXEC_TOOL_NAMES = new Set(["exec", "bash"]);
|
|
75548
75548
|
const GEMMA_MODEL_ID = "gemma";
|
|
@@ -75647,7 +75647,7 @@ function wrapToolWithArgValidation(tool) {
|
|
|
75647
75647
|
const missingFields = originalRequired.filter((field) => params[field] === void 0 || params[field] === null);
|
|
75648
75648
|
if (missingFields.length > 0) {
|
|
75649
75649
|
log.warn(`[validate] ${toolName} missing required fields: ${missingFields.join(", ")}`);
|
|
75650
|
-
|
|
75650
|
+
throwToolError(`Missing required argument${missingFields.length > 1 ? "s" : ""}: ${missingFields.join(", ")}. Please try again with all required arguments.\nExample: ${usageExample}`);
|
|
75651
75651
|
}
|
|
75652
75652
|
const { cleaned, changed } = sanitizeParams(params);
|
|
75653
75653
|
if (changed) log.debug(`[validate] sanitized args for ${toolName}: ${Object.keys(params).filter((k) => cleaned[k] !== params[k]).join(",")}`);
|
|
@@ -75661,7 +75661,7 @@ function wrapToolWithArgValidation(tool) {
|
|
|
75661
75661
|
const result = validateShellCommand(command);
|
|
75662
75662
|
if (!result.valid) {
|
|
75663
75663
|
log.warn(`[validate] exec command rejected: reason=${result.reason} raw=${command.slice(0, 100)}`);
|
|
75664
|
-
|
|
75664
|
+
throwToolError(`${result.reason}. The command appears to contain model control tokens. Please provide a clean shell command without any <|, |>, or XML-like tags. Only valid shell syntax is accepted.`);
|
|
75665
75665
|
}
|
|
75666
75666
|
if (result.cleaned !== command) {
|
|
75667
75667
|
log.debug(`[validate] exec command cleaned: raw=${command.slice(0, 80)} → cleaned=${result.cleaned.slice(0, 80)}`);
|
|
@@ -16,7 +16,7 @@ import "./client-DMBZpU6X.js";
|
|
|
16
16
|
import "./call-BcE47FtD.js";
|
|
17
17
|
import "./message-channel-C9dERklz.js";
|
|
18
18
|
import "./pairing-token-Byh6drgn.js";
|
|
19
|
-
import { Ct as trimLogTail } from "./subagent-registry-
|
|
19
|
+
import { Ct as trimLogTail } from "./subagent-registry-J2pIBQF7.js";
|
|
20
20
|
import "./sessions-CJXnZVjR.js";
|
|
21
21
|
import "./tokens-Csntmwwn.js";
|
|
22
22
|
import "./plugins-CwSlLxM8.js";
|
|
@@ -111,10 +111,10 @@ import "./npm-registry-spec-DkaZNHAW.js";
|
|
|
111
111
|
import "./skill-scanner-BGWOBqLY.js";
|
|
112
112
|
import "./installs-CgQpVncj.js";
|
|
113
113
|
import "./channels-status-issues-c7qZbYG5.js";
|
|
114
|
-
import "./register.subclis-
|
|
115
|
-
import "./command-registry-
|
|
114
|
+
import "./register.subclis-elNdyQio.js";
|
|
115
|
+
import "./command-registry-B2aO0Q7_.js";
|
|
116
116
|
import "./program-context-CqzR_m-7.js";
|
|
117
|
-
import { r as installCompletion } from "./completion-cli-
|
|
117
|
+
import { r as installCompletion } from "./completion-cli-BsKD_vBb.js";
|
|
118
118
|
import "./daemon-runtime-CfRwa6qh.js";
|
|
119
119
|
import { r as parseSemver } from "./runtime-guard-D7waq_Ho.js";
|
|
120
120
|
import "./systemd-DlMdyFDY.js";
|
|
@@ -124,19 +124,19 @@ import "./systemd-hints-sQipWGd1.js";
|
|
|
124
124
|
import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-wWnBIQtk.js";
|
|
125
125
|
import "./diagnostics-CS1ov_hH.js";
|
|
126
126
|
import { t as renderTable } from "./table-D01d2GuY.js";
|
|
127
|
-
import "./health-
|
|
127
|
+
import "./health-CXjAtn1-.js";
|
|
128
128
|
import "./control-ui-assets-BseSWee1.js";
|
|
129
129
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-ZdimP1aU.js";
|
|
130
130
|
import "./dm-policy-shared-DJ-61hCT.js";
|
|
131
131
|
import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-DbmZz0Aq.js";
|
|
132
|
-
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-
|
|
132
|
+
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-D8AFB8Oi.js";
|
|
133
133
|
import "./logging-BGewRZy0.js";
|
|
134
134
|
import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-DEMKx4eC.js";
|
|
135
135
|
import "./doctor-config-flow-CA3eiKhd.js";
|
|
136
136
|
import "./systemd-linger-DA_LW52P.js";
|
|
137
137
|
import "./health-format-CzgUHmmX.js";
|
|
138
|
-
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-
|
|
139
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
138
|
+
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-CwfroEHp.js";
|
|
139
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DyiRkYT4.js";
|
|
140
140
|
import { spawn, spawnSync } from "node:child_process";
|
|
141
141
|
import os from "node:os";
|
|
142
142
|
import path from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
|
|
2
2
|
import { B as theme, h as pathExists } from "./utils-B-0b9bGM.js";
|
|
3
3
|
import "./thinking-EAliFiVK.js";
|
|
4
|
-
import { V as trimLogTail } from "./reply-
|
|
4
|
+
import { V as trimLogTail } from "./reply-DUZvOCsG.js";
|
|
5
5
|
import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
|
|
6
6
|
import "./registry-Cja8eT7G.js";
|
|
7
7
|
import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
|
|
@@ -106,7 +106,7 @@ import "./stagger-BUClb97_.js";
|
|
|
106
106
|
import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-C8_BLnaW.js";
|
|
107
107
|
import "./channel-selection-DuWs0Aak.js";
|
|
108
108
|
import { r as parseSemver } from "./runtime-guard-B37eizu-.js";
|
|
109
|
-
import "./program-context-
|
|
109
|
+
import "./program-context-BBtSJunF.js";
|
|
110
110
|
import "./catalog-RiADx7MA.js";
|
|
111
111
|
import "./skills-status-CURJKnyY.js";
|
|
112
112
|
import { n as inheritOptionFromParent } from "./command-options-BtDai3oC.js";
|
|
@@ -117,7 +117,7 @@ import "./npm-registry-spec-C2JDdSZS.js";
|
|
|
117
117
|
import "./skill-scanner-CLs8u6vQ.js";
|
|
118
118
|
import "./installs-C1Cebk97.js";
|
|
119
119
|
import "./channels-status-issues-B_kBkl_u.js";
|
|
120
|
-
import { r as installCompletion } from "./completion-cli-
|
|
120
|
+
import { r as installCompletion } from "./completion-cli-BKm12loU.js";
|
|
121
121
|
import "./daemon-runtime-2mwX-jqj.js";
|
|
122
122
|
import "./systemd-riq8uNJQ.js";
|
|
123
123
|
import { t as resolveGatewayService } from "./service-Cl74hx8J.js";
|
|
@@ -126,19 +126,19 @@ import "./systemd-hints-BR6gChwm.js";
|
|
|
126
126
|
import { i as runDaemonInstall, r as runDaemonRestart } from "./daemon-cli-DscwlsKW.js";
|
|
127
127
|
import "./diagnostics-BAMlsVVX.js";
|
|
128
128
|
import { t as renderTable } from "./table-BTgkRafz.js";
|
|
129
|
-
import "./health-
|
|
129
|
+
import "./health-B32Q-KYM.js";
|
|
130
130
|
import "./control-ui-assets-Z947tKLt.js";
|
|
131
131
|
import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, m as normalizeUpdateChannel, n as compareSemverStrings, r as fetchNpmTagVersion, s as DEFAULT_GIT_CHANNEL, t as checkUpdateStatus, u as channelToNpmTag } from "./update-check-CtckACbb.js";
|
|
132
132
|
import "./dm-policy-shared-Bh3TbexU.js";
|
|
133
133
|
import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-DtwCUTf-.js";
|
|
134
|
-
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-
|
|
134
|
+
import { a as globalInstallArgs, c as readPackageVersion, i as detectGlobalInstallManagerForRoot, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as readPackageName, t as runGatewayUpdate } from "./update-runner-DvZOsoQs.js";
|
|
135
135
|
import "./logging-BzzwiKjv.js";
|
|
136
136
|
import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-rw7wJwHd.js";
|
|
137
137
|
import "./doctor-config-flow-QnaBd8kL.js";
|
|
138
138
|
import "./systemd-linger-aQ75ZlXY.js";
|
|
139
139
|
import "./health-format-DSwnXZPU.js";
|
|
140
|
-
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-
|
|
141
|
-
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
140
|
+
import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-DUXeA9Zp.js";
|
|
141
|
+
import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-SEerte2S.js";
|
|
142
142
|
import os from "node:os";
|
|
143
143
|
import path from "node:path";
|
|
144
144
|
import fs from "node:fs/promises";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { nt as pathExists } from "./entry.js";
|
|
2
2
|
import { t as runCommandWithTimeout } from "./exec-CBKBIMpA.js";
|
|
3
|
-
import { Ct as trimLogTail } from "./subagent-registry-
|
|
3
|
+
import { Ct as trimLogTail } from "./subagent-registry-J2pIBQF7.js";
|
|
4
4
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BseSWee1.js";
|
|
5
5
|
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-ZdimP1aU.js";
|
|
6
6
|
import os from "node:os";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h as pathExists } from "./utils-B-0b9bGM.js";
|
|
2
|
-
import { V as trimLogTail } from "./reply-
|
|
2
|
+
import { V as trimLogTail } from "./reply-DUZvOCsG.js";
|
|
3
3
|
import { t as runCommandWithTimeout } from "./exec-CWkblSrI.js";
|
|
4
4
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-Z947tKLt.js";
|
|
5
5
|
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-CtckACbb.js";
|