@visorcraft/idlehands 4.4.0 → 4.4.1

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.
Files changed (127) hide show
  1. package/dist/{agent-via-gateway-CPvgY5VA.js → agent-via-gateway-6jGL9ZRb.js} +1 -1
  2. package/dist/{agent-via-gateway-DvLTdMBj.js → agent-via-gateway-B7VYaDwI.js} +1 -1
  3. package/dist/{agent-via-gateway-OzQZlQpB.js → agent-via-gateway-D6SBbSiq.js} +7 -7
  4. package/dist/{agent-via-gateway-CTti0dK7.js → agent-via-gateway-hbF-h9TM.js} +2 -2
  5. package/dist/{agents-BEuHL8Zr.js → agents-BVYgk2uc.js} +4 -4
  6. package/dist/{agents.config-BDQ4Bu0B.js → agents.config-CKj37-g5.js} +1 -1
  7. package/dist/{agents.config-BjMP6yqX.js → agents.config-CcZ8kSaj.js} +1 -1
  8. package/dist/{anton-Dwp3KlQs.js → anton-B4KXAf54.js} +1 -1
  9. package/dist/{anton-C8SARtai.js → anton-BNzNY6Vh.js} +1 -1
  10. package/dist/{anton-F-OwKPyb.js → anton-C8M2UhOH.js} +1 -1
  11. package/dist/{anton-DCJl8crN.js → anton-DnEx8ryb.js} +1 -1
  12. package/dist/{audio-preflight-Dl_bdO0l.js → audio-preflight-CdQj55ox.js} +4 -4
  13. package/dist/{auth-choice-BHISFUGz.js → auth-choice-BAioGgge.js} +1 -1
  14. package/dist/{auth-choice-Dam79K-y.js → auth-choice-CWa45O0-.js} +1 -1
  15. package/dist/{banner-ascZEgmt.js → banner-BxyoIRj1.js} +1 -1
  16. package/dist/build-info.json +3 -3
  17. package/dist/bundled/boot-md/handler.js +2 -2
  18. package/dist/bundled/session-memory/handler.js +2 -2
  19. package/dist/{channel-options-CAfv1NVr.js → channel-options-Bo-oY1lo.js} +1 -1
  20. package/dist/{channel-options-BdjtX9_O.js → channel-options-D4Abu9ss.js} +1 -1
  21. package/dist/{channel-web-B23k1s4A.js → channel-web-CUcTJTDU.js} +2 -2
  22. package/dist/{channel-web-BZe8v7Di.js → channel-web-aUJWpYzV.js} +2 -2
  23. package/dist/{channels-cli-v8qMY1yM.js → channels-cli-B3mz1uK6.js} +7 -7
  24. package/dist/{channels-cli-Bfz9P0IR.js → channels-cli-CxSH3i2W.js} +7 -7
  25. package/dist/{chrome-Bip_1c2e.js → chrome-CfoCzQ7O.js} +9 -9
  26. package/dist/{cli-DyId4irC.js → cli-Bv7W1rAQ.js} +2 -2
  27. package/dist/{cli-HkluaDt1.js → cli-Lk-tSEzq.js} +2 -2
  28. package/dist/{command-registry-Bs5y1F2v.js → command-registry-Ct2rGje_.js} +10 -10
  29. package/dist/{completion-cli-BmHAqqY4.js → completion-cli-BVkper4z.js} +2 -2
  30. package/dist/{completion-cli-CGXtQf6t.js → completion-cli-D1Y9BqD8.js} +1 -1
  31. package/dist/{config-cli-CEehCZa0.js → config-cli-Cunf6ZG_.js} +1 -1
  32. package/dist/{config-cli-BdJDJv0a.js → config-cli-DhIGl8u2.js} +1 -1
  33. package/dist/{configure-C5087mSP.js → configure-BMuZGX8O.js} +3 -3
  34. package/dist/{configure-C44gmCt3.js → configure-CjZDdguE.js} +3 -3
  35. package/dist/{deliver-CO1v69YA.js → deliver-Dsgo26ZO.js} +1 -1
  36. package/dist/{deps-CchkM1ea.js → deps-B7PzlVAo.js} +1 -1
  37. package/dist/{deps-CfQJK6WP.js → deps-Bq61L28a.js} +1 -1
  38. package/dist/{deps-SgroTRjf.js → deps-BrSKLsz0.js} +1 -1
  39. package/dist/{deps-UTcCCmJ6.js → deps-DvFgwh2J.js} +1 -1
  40. package/dist/{doctor-completion-Cgl5S3K0.js → doctor-completion-CYeuHpzs.js} +1 -1
  41. package/dist/{doctor-completion-DsaJMlSu.js → doctor-completion-_mAeHEgR.js} +1 -1
  42. package/dist/{emergency-stop-B2KUQyt8.js → emergency-stop-CksdLPai.js} +7 -7
  43. package/dist/{emergency-stop-BCRW03p2.js → emergency-stop-Cl_1fWgA.js} +2 -2
  44. package/dist/{emergency-stop-DjURYr3Z.js → emergency-stop-DkALIxNO.js} +2 -2
  45. package/dist/{emergency-stop-CjVqAFw-.js → emergency-stop-Sq-9tUol.js} +2 -2
  46. package/dist/entry.js +1 -1
  47. package/dist/extensionAPI.js +7 -7
  48. package/dist/{gateway-cli-Cx3sGYvO.js → gateway-cli-BACWzti6.js} +9 -9
  49. package/dist/{gateway-cli-BmwR5tHy.js → gateway-cli-C-tj9UP3.js} +9 -9
  50. package/dist/{health-F0lUmHT3.js → health-BV8l2AT8.js} +1 -1
  51. package/dist/{health-DXbufVL-.js → health-CErhWLEK.js} +1 -1
  52. package/dist/{hooks-cli-6t3DpWin.js → hooks-cli-BHve1IFH.js} +3 -3
  53. package/dist/{hooks-cli-CsWYWkar.js → hooks-cli-CdUSadGW.js} +3 -3
  54. package/dist/{image-Cu288YpA.js → image-JsjsSvBI.js} +1 -1
  55. package/dist/index.js +7 -7
  56. package/dist/llm-slug-generator.js +2 -2
  57. package/dist/{models-awPyoUpk.js → models-CbuRFugK.js} +2 -2
  58. package/dist/{models-cli-CsA9GN5G.js → models-cli-BXFbPL8U.js} +3 -3
  59. package/dist/{models-cli-D_PfTekq.js → models-cli-DzuBGnWF.js} +4 -4
  60. package/dist/{npm-resolution-BKPKKKLt.js → npm-resolution-BJWOQq_k.js} +1 -1
  61. package/dist/{npm-resolution-BpQ2o-Eh.js → npm-resolution-BO02ImLM.js} +1 -1
  62. package/dist/{onboard-BiT3YReS.js → onboard-BafFvA78.js} +2 -2
  63. package/dist/{onboard-C9KRYbrH.js → onboard-DFxvWMZm.js} +2 -2
  64. package/dist/{onboard-channels-C6b-o1TK.js → onboard-channels-52aYyjLX.js} +1 -1
  65. package/dist/{onboard-channels-_XLjSBKm.js → onboard-channels-Dy6UoU78.js} +1 -1
  66. package/dist/{onboarding-BfAhtIYl.js → onboarding-BK5EH5Rn.js} +3 -3
  67. package/dist/{onboarding-By12Oyni.js → onboarding-CqPkGVMr.js} +3 -3
  68. package/dist/{onboarding.finalize-yL217Gdr.js → onboarding.finalize-B58yHwhW.js} +6 -6
  69. package/dist/{onboarding.finalize-CAgcobAs.js → onboarding.finalize-BMRt8s2a.js} +7 -7
  70. package/dist/{pi-embedded-BfPWx2YM.js → pi-embedded-DQpyqnA8.js} +47 -32
  71. package/dist/{pi-embedded-tWfE4dVB.js → pi-embedded-Dn4hfyZ7.js} +32 -17
  72. package/dist/{pi-embedded-helpers-Ts8Hdurw.js → pi-embedded-helpers-i5nHSWCq.js} +4 -4
  73. package/dist/{plugin-registry-7DC8-ZZJ.js → plugin-registry-BIerZvsa.js} +1 -1
  74. package/dist/{plugin-registry-ZgC7HA0z.js → plugin-registry-C_B5M53b.js} +1 -1
  75. package/dist/plugin-sdk/{agent-via-gateway-C9v2r0O2.js → agent-via-gateway-VUne26H_.js} +2 -2
  76. package/dist/plugin-sdk/{anton-7I_gkw4v.js → anton-Dc7P4F4R.js} +1 -1
  77. package/dist/plugin-sdk/{channel-web-B7qyJbrs.js → channel-web-ineTToqd.js} +2 -2
  78. package/dist/plugin-sdk/{deps-Gj9jRY77.js → deps-D39VXTRX.js} +1 -1
  79. package/dist/plugin-sdk/{emergency-stop-B7_VgSkO.js → emergency-stop-CY_hnUVd.js} +2 -2
  80. package/dist/plugin-sdk/index.js +3 -3
  81. package/dist/plugin-sdk/{reply-nvcQV3Q_.js → reply-RRDB8Hr7.js} +32 -17
  82. package/dist/plugin-sdk/{web-BzOC1x6m.js → web-Bxlapohg.js} +3 -3
  83. package/dist/{plugins-cli-kePQvJ9L.js → plugins-cli-BM3apx3Z.js} +3 -3
  84. package/dist/{plugins-cli-DACLE21S.js → plugins-cli-CD34Zewk.js} +3 -3
  85. package/dist/{program-context-j94K3IXR.js → program-context-Bl64JzxU.js} +18 -18
  86. package/dist/{program-VV9u5uPU.js → program-hlrBo5Ce.js} +8 -8
  87. package/dist/{prompt-select-styled-BH51ROGD.js → prompt-select-styled-BAYe1OqG.js} +4 -4
  88. package/dist/{prompt-select-styled-BSqCn36X.js → prompt-select-styled-f40iKGOp.js} +4 -4
  89. package/dist/{provider-auth-helpers-BAB3PaaB.js → provider-auth-helpers-51CT-Q-Q.js} +1 -1
  90. package/dist/{provider-auth-helpers-DMSF8Mhq.js → provider-auth-helpers-BIbY8IHT.js} +1 -1
  91. package/dist/{push-apns-Cou7KeCj.js → push-apns-DGYpjf9d.js} +1 -1
  92. package/dist/{push-apns-CGUwMKT-.js → push-apns-fdjNrWTc.js} +1 -1
  93. package/dist/{pw-ai-YklTVbF6.js → pw-ai-CX1qce0j.js} +1 -1
  94. package/dist/{register.agent-ColbJEk3.js → register.agent-DM9zMka2.js} +8 -8
  95. package/dist/{register.agent-YCGBKv-d.js → register.agent-QXLalAr7.js} +9 -9
  96. package/dist/{register.configure-CfUo6nvs.js → register.configure-C6yu81ji.js} +8 -8
  97. package/dist/{register.configure-C5g7670Q.js → register.configure-DYbl1myH.js} +8 -8
  98. package/dist/{register.maintenance-CBNoQia-.js → register.maintenance-B5s6APwg.js} +9 -9
  99. package/dist/{register.maintenance-53FGiO0K.js → register.maintenance-BmKpPkIS.js} +8 -8
  100. package/dist/{register.message-CaFp4DAP.js → register.message-DVc5XVAt.js} +3 -3
  101. package/dist/{register.message-0nKlUSrH.js → register.message-DonrN0cy.js} +3 -3
  102. package/dist/{register.onboard-B9IJ3wUe.js → register.onboard-BE31mSHh.js} +2 -2
  103. package/dist/{register.onboard-B3NgvEwe.js → register.onboard-lHuw_CER.js} +2 -2
  104. package/dist/{register.orchestrator-anton-Cxnh52UP.js → register.orchestrator-anton-CVNuKUWS.js} +2 -2
  105. package/dist/{register.orchestrator-anton-HIi6nBvo.js → register.orchestrator-anton-Dgbr0yM1.js} +2 -2
  106. package/dist/{register.setup-y7C2w79N.js → register.setup-BudIJsJc.js} +2 -2
  107. package/dist/{register.setup-DyxAeyO2.js → register.setup-DNlkNa0X.js} +2 -2
  108. package/dist/{register.status-health-sessions-5wREP3Tq.js → register.status-health-sessions-DuMxtV8K.js} +4 -4
  109. package/dist/{register.status-health-sessions-DbzCxLhd.js → register.status-health-sessions-nhSLVQw7.js} +4 -4
  110. package/dist/{register.subclis-BEDdoF6M.js → register.subclis-Bnq9Bi9p.js} +9 -9
  111. package/dist/{reply-vDM22Gez.js → reply-DUE8raq5.js} +32 -17
  112. package/dist/{run-main-BKjpcqq8.js → run-main-D7FJSKGA.js} +15 -15
  113. package/dist/{runner-upvvkv9R.js → runner-DG_xf5vi.js} +1 -1
  114. package/dist/{server-node-events-CraqSZJR.js → server-node-events-CLq5E5Db.js} +3 -3
  115. package/dist/{server-node-events-B7IQ1nzZ.js → server-node-events-DhFplzWZ.js} +3 -3
  116. package/dist/{status-ZUnD4Pgf.js → status-CsNXMHzO.js} +2 -2
  117. package/dist/{status-D9fTji6b.js → status-CyzO0TGy.js} +2 -2
  118. package/dist/{subagent-registry-l7V3IoLe.js → subagent-registry-DW1LK5cG.js} +32 -17
  119. package/dist/{update-cli-D02DhEE9.js → update-cli-CtsLbpQq.js} +9 -9
  120. package/dist/{update-cli-CMn89gww.js → update-cli-DEMtHXm1.js} +8 -8
  121. package/dist/{update-runner-C44em-38.js → update-runner-DpD5VBHi.js} +1 -1
  122. package/dist/{update-runner-BSsZSlwa.js → update-runner-ybEXKv6M.js} +1 -1
  123. package/dist/{web-CiVRDtta.js → web-C-13ua3w.js} +3 -3
  124. package/dist/{web-bCfwH31U.js → web-CI1Ye0j8.js} +3 -3
  125. package/dist/{web-Dkl33QN0.js → web-Da5eWC4p.js} +3 -3
  126. package/dist/{web-DLIXLq_L.js → web-SvfucU2_.js} +8 -8
  127. package/package.json +1 -1
@@ -22,7 +22,7 @@ import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, n as getWebAuthA
22
22
  import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-p_pDuU90.js";
23
23
  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-Cro3WBC4.js";
24
24
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-BvP4jdcV.js";
25
- import { C as initializeGlobalHookRunner, S as getGlobalHookRunner, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-CO1v69YA.js";
25
+ import { C as initializeGlobalHookRunner, S as getGlobalHookRunner, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-Dsgo26ZO.js";
26
26
  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-jHCdo9Am.js";
27
27
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Bx2Le86J.js";
28
28
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BRVjft5i.js";
@@ -30,8 +30,8 @@ import { $ as readJsonFileWithFallback, A as extractTelegramLocation, B as norma
30
30
  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-BDG-MYYV.js";
31
31
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BwF_em5R.js";
32
32
  import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-DqqfOIdx.js";
33
- import { $ as stripPluginOnlyAllowlist, A as isTimeoutErrorMessage, B as resolveBrowserConfig, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as ensureSandboxWorkspaceForSession, G as resolveGatewayCredentialsFromConfig, H as getBridgeAuthForPort, I as resolveSandboxContext, J as applyOwnerOnlyToolPolicy, K as trimToUndefined$1, L as resolveSandboxRuntimeStatus, M as parseImageDimensionError, N as parseImageSizeError, O as isRateLimitAssistantError, P as sanitizeUserFacingText, Q as mergeAlsoAllowPolicy, R as createBrowserRouteContext, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, U as ensureBrowserControlAuth, V as resolveProfile, W as resolveBrowserControlAuth, X as collectExplicitAllowlist, Y as buildPluginToolGroups, Z as expandPolicyWithPluginGroups, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, at as buildBootstrapContextFiles, b as isAuthPermanentErrorMessage, c as extractToolCallsFromAssistant, ct as resolveBootstrapTotalMaxChars, d as downgradeOpenAIReasoningBlocks, et as expandToolGroups, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, it as matchesAnyGlobPattern, j as isTransientHttpError, k as isRawApiErrorPayload, l as extractToolResultId, lt as sanitizeGoogleTurnOrdering, m as classifyFailoverReason, n as validateGeminiTurns, nt as resolveToolProfilePolicy, o as normalizeTextForComparison, ot as ensureSessionHeader, p as BILLING_ERROR_USER_MESSAGE, q as resolveSandboxConfigForAgent, r as pickFallbackThinkingLevel, rt as compileGlobPatterns, s as sanitizeSessionMessagesImages, st as resolveBootstrapMaxChars, t as validateAnthropicTurns, tt as normalizeToolName, u as sanitizeToolCallIdsForCloudCodeAssist, v as getApiErrorPayloadFingerprint, w as isContextOverflowError, x as isBillingAssistantError, y as isAuthAssistantError, z as registerBrowserRoutes } from "./pi-embedded-helpers-Ts8Hdurw.js";
34
- import { C as ensureChromeExtensionRelayServer, F as isSecureWebSocketUrl, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as rawDataToString, k as resolveExistingPathsWithinRoot, s as resolveLsofCommandSync } from "./chrome-Bip_1c2e.js";
33
+ import { $ as stripPluginOnlyAllowlist, A as isTimeoutErrorMessage, B as resolveBrowserConfig, C as isCompactionFailureError, D as isLikelyContextOverflowError, E as isFailoverErrorMessage, F as ensureSandboxWorkspaceForSession, G as resolveGatewayCredentialsFromConfig, H as getBridgeAuthForPort, I as resolveSandboxContext, J as applyOwnerOnlyToolPolicy, K as trimToUndefined$1, L as resolveSandboxRuntimeStatus, M as parseImageDimensionError, N as parseImageSizeError, O as isRateLimitAssistantError, P as sanitizeUserFacingText, Q as mergeAlsoAllowPolicy, R as createBrowserRouteContext, S as isCloudCodeAssistFormatError, T as isFailoverAssistantError, U as ensureBrowserControlAuth, V as resolveProfile, W as resolveBrowserControlAuth, X as collectExplicitAllowlist, Y as buildPluginToolGroups, Z as expandPolicyWithPluginGroups, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, at as buildBootstrapContextFiles, b as isAuthPermanentErrorMessage, c as extractToolCallsFromAssistant, ct as resolveBootstrapTotalMaxChars, d as downgradeOpenAIReasoningBlocks, et as expandToolGroups, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, it as matchesAnyGlobPattern, j as isTransientHttpError, k as isRawApiErrorPayload, l as extractToolResultId, lt as sanitizeGoogleTurnOrdering, m as classifyFailoverReason, n as validateGeminiTurns, nt as resolveToolProfilePolicy, o as normalizeTextForComparison, ot as ensureSessionHeader, p as BILLING_ERROR_USER_MESSAGE, q as resolveSandboxConfigForAgent, r as pickFallbackThinkingLevel, rt as compileGlobPatterns, s as sanitizeSessionMessagesImages, st as resolveBootstrapMaxChars, t as validateAnthropicTurns, tt as normalizeToolName, u as sanitizeToolCallIdsForCloudCodeAssist, v as getApiErrorPayloadFingerprint, w as isContextOverflowError, x as isBillingAssistantError, y as isAuthAssistantError, z as registerBrowserRoutes } from "./pi-embedded-helpers-i5nHSWCq.js";
34
+ import { C as ensureChromeExtensionRelayServer, F as isSecureWebSocketUrl, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as rawDataToString, k as resolveExistingPathsWithinRoot, s as resolveLsofCommandSync } from "./chrome-CfoCzQ7O.js";
35
35
  import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-DappnhDp.js";
36
36
  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-BRqZp2IE.js";
37
37
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-CGbCFqW8.js";
@@ -46,7 +46,7 @@ import { a as resolveSessionFilePathOptions, i as resolveSessionFilePath, l as r
46
46
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-BaUINxJH.js";
47
47
  import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CpZSs-zE.js";
48
48
  import { a as normalizeReasoningLevel, c as normalizeVerboseLevel, i as normalizeElevatedLevel, l as resolveResponseUsageMode, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-BFsWfunr.js";
49
- import { C as extractTextFromChatContent, S as isInsideCode, _ 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, w as ensureIdleHandsModelsJson, x as findCodeRegions, y as resolveToolDisplay } from "./image-Cu288YpA.js";
49
+ import { C as extractTextFromChatContent, S as isInsideCode, _ 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, w as ensureIdleHandsModelsJson, x as findCodeRegions, y as resolveToolDisplay } from "./image-JsjsSvBI.js";
50
50
  import { n as resolveMemorySearchConfig } from "./manager-B9Q7jxHQ.js";
51
51
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-B7YMixjc.js";
52
52
  import { t as fetchWithSsrFGuard } from "./fetch-guard-BdCPmLBP.js";
@@ -60,7 +60,7 @@ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-BwkcXPZC.js";
60
60
  import { _ as isNativeCommandsExplicitlyDisabled, a as listChatCommands, b as resolveNativeSkillsEnabled, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody, v as isRestartEnabled, y as resolveNativeCommandsEnabled } from "./commands-registry-DBT-IMwk.js";
61
61
  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-rG2AXHaN.js";
62
62
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DZmR6jxY.js";
63
- import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$2, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-upvvkv9R.js";
63
+ import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$2, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-DG_xf5vi.js";
64
64
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-ChVgjTkv.js";
65
65
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-DTHhQmHb.js";
66
66
  import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-C3LJmSjf.js";
@@ -72,7 +72,7 @@ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-rou
72
72
  import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-BnWIC6Jc.js";
73
73
  import { t as makeProxyFetch } from "./proxy-CNZpb4NE.js";
74
74
  import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-B7WhS1HA.js";
75
- import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-CchkM1ea.js";
75
+ import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-B7PzlVAo.js";
76
76
  import { createRequire } from "node:module";
77
77
  import * as path$1 from "node:path";
78
78
  import path, { isAbsolute } from "node:path";
@@ -91,7 +91,7 @@ import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, Setting
91
91
  import { EdgeTTS } from "node-edge-tts";
92
92
  import { createServer } from "node:http";
93
93
  import { ProxyAgent, fetch as fetch$1 } from "undici";
94
- import WebSocket, { WebSocket as WebSocket$1 } from "ws";
94
+ import WebSocket$1, { WebSocket } from "ws";
95
95
  import { Buffer as Buffer$1 } from "node:buffer";
96
96
  import { createJiti } from "jiti";
97
97
  import { Type } from "@sinclair/typebox";
@@ -6372,7 +6372,7 @@ var GatewayClient = class {
6372
6372
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
6373
6373
  });
6374
6374
  }
6375
- this.ws = new WebSocket$1(url, wsOptions);
6375
+ this.ws = new WebSocket(url, wsOptions);
6376
6376
  this.ws.on("open", () => {
6377
6377
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
6378
6378
  const tlsError = this.validateTlsFingerprint();
@@ -6568,7 +6568,7 @@ var GatewayClient = class {
6568
6568
  const connectChallengeTimeoutMs = typeof rawConnectDelayMs === "number" && Number.isFinite(rawConnectDelayMs) ? Math.max(250, Math.min(1e4, rawConnectDelayMs)) : 2e3;
6569
6569
  if (this.connectTimer) clearTimeout(this.connectTimer);
6570
6570
  this.connectTimer = setTimeout(() => {
6571
- if (this.connectSent || this.ws?.readyState !== WebSocket$1.OPEN) return;
6571
+ if (this.connectSent || this.ws?.readyState !== WebSocket.OPEN) return;
6572
6572
  this.opts.onConnectError?.(/* @__PURE__ */ new Error("gateway connect challenge timeout"));
6573
6573
  this.ws?.close(1008, "connect challenge timeout");
6574
6574
  }, connectChallengeTimeoutMs);
@@ -6610,7 +6610,7 @@ var GatewayClient = class {
6610
6610
  return null;
6611
6611
  }
6612
6612
  async request(method, params, opts) {
6613
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
6613
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
6614
6614
  const id = randomUUID();
6615
6615
  const frame = {
6616
6616
  type: "req",
@@ -7934,7 +7934,7 @@ async function routeReply(params) {
7934
7934
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
7935
7935
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
7936
7936
  try {
7937
- const { deliverOutboundPayloads } = await import("./deliver-CO1v69YA.js").then((n) => n.n);
7937
+ const { deliverOutboundPayloads } = await import("./deliver-Dsgo26ZO.js").then((n) => n.n);
7938
7938
  const outboundSession = buildOutboundSessionContext({
7939
7939
  cfg,
7940
7940
  agentId: resolvedAgentId,
@@ -23059,7 +23059,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23059
23059
  };
23060
23060
  const arg = body.slice(6).trim();
23061
23061
  if (arg === "status" || arg === "") {
23062
- const { antonStatus } = await import("./anton-DCJl8crN.js");
23062
+ const { antonStatus } = await import("./anton-DnEx8ryb.js");
23063
23063
  const lines = [];
23064
23064
  await antonStatus({
23065
23065
  log: (msg) => lines.push(msg),
@@ -23075,7 +23075,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23075
23075
  return { shouldContinue: false };
23076
23076
  }
23077
23077
  if (arg === "stop") {
23078
- const { antonStop } = await import("./anton-DCJl8crN.js");
23078
+ const { antonStop } = await import("./anton-DnEx8ryb.js");
23079
23079
  const lines = [];
23080
23080
  await antonStop({
23081
23081
  log: (msg) => lines.push(msg),
@@ -23113,8 +23113,8 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23113
23113
  await sendProgress(replyCtx, text);
23114
23114
  return { shouldContinue: false };
23115
23115
  }
23116
- const { runAnton, formatProgressMessage } = await import("./anton-DCJl8crN.js");
23117
- const { createDefaultDeps } = await import("./deps-CchkM1ea.js").then((n) => n.n);
23116
+ const { runAnton, formatProgressMessage } = await import("./anton-DnEx8ryb.js");
23117
+ const { createDefaultDeps } = await import("./deps-B7PzlVAo.js").then((n) => n.n);
23118
23118
  const { createNonExitingRuntime } = await import("./runtime-8mi3mpYB.js").then((n) => n.r);
23119
23119
  const runtime = createNonExitingRuntime();
23120
23120
  const deps = createDefaultDeps();
@@ -47426,7 +47426,7 @@ async function deliverSessionMaintenanceWarning(params) {
47426
47426
  return;
47427
47427
  }
47428
47428
  try {
47429
- const { deliverOutboundPayloads } = await import("./deliver-CO1v69YA.js").then((n) => n.n);
47429
+ const { deliverOutboundPayloads } = await import("./deliver-Dsgo26ZO.js").then((n) => n.n);
47430
47430
  const outboundSession = buildOutboundSessionContext({
47431
47431
  cfg: params.cfg,
47432
47432
  sessionKey: params.sessionKey
@@ -51862,7 +51862,7 @@ async function describeStickerImage(params) {
51862
51862
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
51863
51863
  try {
51864
51864
  const buffer = await fs.readFile(imagePath);
51865
- const { describeImageWithModel } = await import("./image-Cu288YpA.js").then((n) => n.n);
51865
+ const { describeImageWithModel } = await import("./image-JsjsSvBI.js").then((n) => n.n);
51866
51866
  return (await describeImageWithModel({
51867
51867
  buffer,
51868
51868
  fileName: "sticker.webp",
@@ -54790,7 +54790,7 @@ async function preflightDiscordMessage(params) {
54790
54790
  let preflightTranscript;
54791
54791
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
54792
54792
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
54793
- const { transcribeFirstAudio } = await import("./audio-preflight-Dl_bdO0l.js");
54793
+ const { transcribeFirstAudio } = await import("./audio-preflight-CdQj55ox.js");
54794
54794
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
54795
54795
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
54796
54796
  ctx: {
@@ -57271,7 +57271,7 @@ function createDiscordMessageHandler(params) {
57271
57271
  try {
57272
57272
  const messageText = resolveDiscordMessageText(data.message)?.trim();
57273
57273
  if (messageText) {
57274
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B2KUQyt8.js");
57274
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CksdLPai.js");
57275
57275
  if (isAbortRequestText(messageText)) {
57276
57276
  const { resolveAgentRoute } = await import("./resolve-route-BI3VjtwE.js").then((n) => n.r);
57277
57277
  const channelId = resolveDiscordMessageChannelId({
@@ -62717,7 +62717,7 @@ function createDiscordGatewayPlugin(params) {
62717
62717
  return super.registerClient(client);
62718
62718
  }
62719
62719
  createWebSocket(url) {
62720
- return new WebSocket(url, { agent: wsAgent });
62720
+ return new WebSocket$1(url, { agent: wsAgent });
62721
62721
  }
62722
62722
  }
62723
62723
  return new ProxyGatewayPlugin();
@@ -64769,7 +64769,7 @@ async function monitorIMessageProvider(opts = {}) {
64769
64769
  }
64770
64770
  const msgText = (message.text ?? "").trim();
64771
64771
  if (msgText) {
64772
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B2KUQyt8.js");
64772
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CksdLPai.js");
64773
64773
  if (isAbortRequestText(msgText)) {
64774
64774
  const { resolveAgentRoute } = await import("./resolve-route-BI3VjtwE.js").then((n) => n.r);
64775
64775
  const route = resolveAgentRoute({
@@ -67380,7 +67380,7 @@ function createSignalEventHandler(deps) {
67380
67380
  const senderName = envelope.sourceName ?? senderDisplay;
67381
67381
  const messageId = typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0;
67382
67382
  if (bodyText) {
67383
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B2KUQyt8.js");
67383
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CksdLPai.js");
67384
67384
  if (isAbortRequestText(bodyText)) {
67385
67385
  const { resolveAgentRoute } = await import("./resolve-route-BI3VjtwE.js").then((n) => n.r);
67386
67386
  const route = resolveAgentRoute({
@@ -70762,7 +70762,7 @@ function createSlackMessageHandler(params) {
70762
70762
  if (ctx.markMessageSeen(message.channel, message.ts)) return;
70763
70763
  const rawText = (message.text ?? "").trim();
70764
70764
  if (rawText) {
70765
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B2KUQyt8.js");
70765
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CksdLPai.js");
70766
70766
  if (isAbortRequestText(rawText)) {
70767
70767
  const { resolveAgentRoute } = await import("./resolve-route-BI3VjtwE.js").then((n) => n.r);
70768
70768
  const route = resolveAgentRoute({
@@ -72956,7 +72956,7 @@ const registerTelegramHandlers = ({ cfg, accountId, bot, opts, runtime, mediaMax
72956
72956
  const { ctx, msg, chatId, resolvedThreadId, storeAllowFrom, sendOversizeWarning, oversizeLogMessage } = params;
72957
72957
  const text = typeof msg.text === "string" ? msg.text : void 0;
72958
72958
  if (text) {
72959
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B2KUQyt8.js");
72959
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CksdLPai.js");
72960
72960
  if (isAbortRequestText(text)) {
72961
72961
  const senderId = msg.from?.id ? String(msg.from.id) : "";
72962
72962
  if (!senderId || !allowFrom?.length || allowFrom.includes(senderId)) {
@@ -73843,7 +73843,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
73843
73843
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
73844
73844
  let preflightTranscript;
73845
73845
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
73846
- const { transcribeFirstAudio } = await import("./audio-preflight-Dl_bdO0l.js");
73846
+ const { transcribeFirstAudio } = await import("./audio-preflight-CdQj55ox.js");
73847
73847
  preflightTranscript = await transcribeFirstAudio({
73848
73848
  ctx: {
73849
73849
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -76441,7 +76441,7 @@ function loadWebLoginQr() {
76441
76441
  return webLoginQrPromise;
76442
76442
  }
76443
76443
  function loadWebChannel() {
76444
- webChannelPromise ??= import("./web-DLIXLq_L.js");
76444
+ webChannelPromise ??= import("./web-SvfucU2_.js");
76445
76445
  return webChannelPromise;
76446
76446
  }
76447
76447
  function loadWhatsAppActions() {
@@ -83425,6 +83425,20 @@ function resolveSilentReplyFallbackText(params) {
83425
83425
  if (!fallback) return params.text;
83426
83426
  return fallback;
83427
83427
  }
83428
+ function hasAssistantToolCallBlock(message) {
83429
+ const content = message.content;
83430
+ if (!Array.isArray(content)) return false;
83431
+ return content.some((block) => {
83432
+ if (!block || typeof block !== "object") return false;
83433
+ const type = block.type;
83434
+ return type === "toolCall" || type === "tool_call";
83435
+ });
83436
+ }
83437
+ function isAssistantToolPlanningMessage(message) {
83438
+ const stopReason = message.stopReason;
83439
+ if (stopReason === "toolUse" || stopReason === "tool_use") return true;
83440
+ return hasAssistantToolCallBlock(message);
83441
+ }
83428
83442
  function handleMessageStart(ctx, evt) {
83429
83443
  if (evt.message?.role !== "assistant") return;
83430
83444
  ctx.resetAssistantMessageState(ctx.state.assistantTexts.length);
@@ -83578,6 +83592,7 @@ function handleMessageEnd(ctx, evt) {
83578
83592
  }),
83579
83593
  messagingToolSentTexts: ctx.state.messagingToolSentTexts
83580
83594
  });
83595
+ const suppressToolPlanningOutput = isAssistantToolPlanningMessage(assistantMessage);
83581
83596
  const rawThinking = ctx.state.includeReasoning || ctx.state.streamReasoning ? extractAssistantThinking(assistantMessage) || extractThinkingFromTaggedText(rawText) : "";
83582
83597
  const formattedReasoning = rawThinking ? formatReasoningMessage(rawThinking) : "";
83583
83598
  const trimmedText = text.trim();
@@ -83595,7 +83610,7 @@ function handleMessageEnd(ctx, evt) {
83595
83610
  hasMedia = Boolean(mediaUrls && mediaUrls.length > 0);
83596
83611
  }
83597
83612
  }
83598
- if (!ctx.state.emittedAssistantUpdate && (cleanedText || hasMedia)) {
83613
+ if (!ctx.state.emittedAssistantUpdate && !suppressToolPlanningOutput && (cleanedText || hasMedia)) {
83599
83614
  emitAgentEvent({
83600
83615
  runId: ctx.params.runId,
83601
83616
  stream: "assistant",
@@ -83618,12 +83633,12 @@ function handleMessageEnd(ctx, evt) {
83618
83633
  const addedDuringMessage = ctx.state.assistantTexts.length > ctx.state.assistantTextBaseline;
83619
83634
  const chunkerHasBuffered = ctx.blockChunker?.hasBuffered() ?? false;
83620
83635
  ctx.finalizeAssistantTexts({
83621
- text,
83636
+ text: suppressToolPlanningOutput ? "" : text,
83622
83637
  addedDuringMessage,
83623
83638
  chunkerHasBuffered
83624
83639
  });
83625
83640
  const onBlockReply = ctx.params.onBlockReply;
83626
- const shouldEmitReasoning = Boolean(ctx.state.includeReasoning && formattedReasoning && onBlockReply && formattedReasoning !== ctx.state.lastReasoningSent);
83641
+ const shouldEmitReasoning = Boolean(!suppressToolPlanningOutput && ctx.state.includeReasoning && formattedReasoning && onBlockReply && formattedReasoning !== ctx.state.lastReasoningSent);
83627
83642
  const shouldEmitReasoningBeforeAnswer = shouldEmitReasoning && ctx.state.blockReplyBreak === "message_end" && !addedDuringMessage;
83628
83643
  const maybeEmitReasoning = () => {
83629
83644
  if (!shouldEmitReasoning || !formattedReasoning) return;
@@ -83634,7 +83649,7 @@ function handleMessageEnd(ctx, evt) {
83634
83649
  });
83635
83650
  };
83636
83651
  if (shouldEmitReasoningBeforeAnswer) maybeEmitReasoning();
83637
- if ((ctx.state.blockReplyBreak === "message_end" || (ctx.blockChunker ? ctx.blockChunker.hasBuffered() : ctx.state.blockBuffer.length > 0)) && text && onBlockReply) {
83652
+ if ((ctx.state.blockReplyBreak === "message_end" || (ctx.blockChunker ? ctx.blockChunker.hasBuffered() : ctx.state.blockBuffer.length > 0)) && !suppressToolPlanningOutput && text && onBlockReply) {
83638
83653
  if (ctx.blockChunker?.hasBuffered()) {
83639
83654
  ctx.blockChunker.drain({
83640
83655
  force: true,
@@ -83659,8 +83674,8 @@ function handleMessageEnd(ctx, evt) {
83659
83674
  }
83660
83675
  }
83661
83676
  if (!shouldEmitReasoningBeforeAnswer) maybeEmitReasoning();
83662
- if (ctx.state.streamReasoning && rawThinking) ctx.emitReasoningStream(rawThinking);
83663
- if (ctx.state.blockReplyBreak === "text_end" && onBlockReply) {
83677
+ if (!suppressToolPlanningOutput && ctx.state.streamReasoning && rawThinking) ctx.emitReasoningStream(rawThinking);
83678
+ if (!suppressToolPlanningOutput && ctx.state.blockReplyBreak === "text_end" && onBlockReply) {
83664
83679
  const tailResult = ctx.consumeReplyDirectives("", { final: true });
83665
83680
  if (tailResult) {
83666
83681
  const { text: cleanedText, mediaUrls, audioAsVoice, replyToId, replyToTag, replyToCurrent } = tailResult;
@@ -75,7 +75,7 @@ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-rou
75
75
  import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-jilCMH1M.js";
76
76
  import { t as makeProxyFetch } from "./proxy-CRB9oCP5.js";
77
77
  import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-uBXwI7WM.js";
78
- import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-UTcCCmJ6.js";
78
+ import { r as createOutboundSendDepsFromCliSource, t as createDefaultDeps } from "./deps-DvFgwh2J.js";
79
79
  import { createRequire } from "node:module";
80
80
  import * as fs$1 from "node:fs/promises";
81
81
  import fs from "node:fs/promises";
@@ -23062,7 +23062,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23062
23062
  };
23063
23063
  const arg = body.slice(6).trim();
23064
23064
  if (arg === "status" || arg === "") {
23065
- const { antonStatus } = await import("./anton-C8SARtai.js");
23065
+ const { antonStatus } = await import("./anton-BNzNY6Vh.js");
23066
23066
  const lines = [];
23067
23067
  await antonStatus({
23068
23068
  log: (msg) => lines.push(msg),
@@ -23078,7 +23078,7 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23078
23078
  return { shouldContinue: false };
23079
23079
  }
23080
23080
  if (arg === "stop") {
23081
- const { antonStop } = await import("./anton-C8SARtai.js");
23081
+ const { antonStop } = await import("./anton-BNzNY6Vh.js");
23082
23082
  const lines = [];
23083
23083
  await antonStop({
23084
23084
  log: (msg) => lines.push(msg),
@@ -23116,8 +23116,8 @@ const handleAntonCommand = async (params, _allowTextCommands) => {
23116
23116
  await sendProgress(replyCtx, text);
23117
23117
  return { shouldContinue: false };
23118
23118
  }
23119
- const { runAnton, formatProgressMessage } = await import("./anton-C8SARtai.js");
23120
- const { createDefaultDeps } = await import("./deps-UTcCCmJ6.js").then((n) => n.n);
23119
+ const { runAnton, formatProgressMessage } = await import("./anton-BNzNY6Vh.js");
23120
+ const { createDefaultDeps } = await import("./deps-DvFgwh2J.js").then((n) => n.n);
23121
23121
  const { createNonExitingRuntime } = await import("./runtime-8mi3mpYB.js").then((n) => n.r);
23122
23122
  const runtime = createNonExitingRuntime();
23123
23123
  const deps = createDefaultDeps();
@@ -57274,7 +57274,7 @@ function createDiscordMessageHandler(params) {
57274
57274
  try {
57275
57275
  const messageText = resolveDiscordMessageText(data.message)?.trim();
57276
57276
  if (messageText) {
57277
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CjVqAFw-.js");
57277
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-Sq-9tUol.js");
57278
57278
  if (isAbortRequestText(messageText)) {
57279
57279
  const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
57280
57280
  const channelId = resolveDiscordMessageChannelId({
@@ -64772,7 +64772,7 @@ async function monitorIMessageProvider(opts = {}) {
64772
64772
  }
64773
64773
  const msgText = (message.text ?? "").trim();
64774
64774
  if (msgText) {
64775
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CjVqAFw-.js");
64775
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-Sq-9tUol.js");
64776
64776
  if (isAbortRequestText(msgText)) {
64777
64777
  const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
64778
64778
  const route = resolveAgentRoute({
@@ -67383,7 +67383,7 @@ function createSignalEventHandler(deps) {
67383
67383
  const senderName = envelope.sourceName ?? senderDisplay;
67384
67384
  const messageId = typeof envelope.timestamp === "number" ? String(envelope.timestamp) : void 0;
67385
67385
  if (bodyText) {
67386
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CjVqAFw-.js");
67386
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-Sq-9tUol.js");
67387
67387
  if (isAbortRequestText(bodyText)) {
67388
67388
  const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
67389
67389
  const route = resolveAgentRoute({
@@ -70765,7 +70765,7 @@ function createSlackMessageHandler(params) {
70765
70765
  if (ctx.markMessageSeen(message.channel, message.ts)) return;
70766
70766
  const rawText = (message.text ?? "").trim();
70767
70767
  if (rawText) {
70768
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CjVqAFw-.js");
70768
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-Sq-9tUol.js");
70769
70769
  if (isAbortRequestText(rawText)) {
70770
70770
  const { resolveAgentRoute } = await import("./resolve-route-DuttYY7A.js").then((n) => n.r);
70771
70771
  const route = resolveAgentRoute({
@@ -72959,7 +72959,7 @@ const registerTelegramHandlers = ({ cfg, accountId, bot, opts, runtime, mediaMax
72959
72959
  const { ctx, msg, chatId, resolvedThreadId, storeAllowFrom, sendOversizeWarning, oversizeLogMessage } = params;
72960
72960
  const text = typeof msg.text === "string" ? msg.text : void 0;
72961
72961
  if (text) {
72962
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CjVqAFw-.js");
72962
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-Sq-9tUol.js");
72963
72963
  if (isAbortRequestText(text)) {
72964
72964
  const senderId = msg.from?.id ? String(msg.from.id) : "";
72965
72965
  if (!senderId || !allowFrom?.length || allowFrom.includes(senderId)) {
@@ -76444,7 +76444,7 @@ function loadWebLoginQr() {
76444
76444
  return webLoginQrPromise;
76445
76445
  }
76446
76446
  function loadWebChannel() {
76447
- webChannelPromise ??= import("./web-Dkl33QN0.js");
76447
+ webChannelPromise ??= import("./web-Da5eWC4p.js");
76448
76448
  return webChannelPromise;
76449
76449
  }
76450
76450
  function loadWhatsAppActions() {
@@ -83428,6 +83428,20 @@ function resolveSilentReplyFallbackText(params) {
83428
83428
  if (!fallback) return params.text;
83429
83429
  return fallback;
83430
83430
  }
83431
+ function hasAssistantToolCallBlock(message) {
83432
+ const content = message.content;
83433
+ if (!Array.isArray(content)) return false;
83434
+ return content.some((block) => {
83435
+ if (!block || typeof block !== "object") return false;
83436
+ const type = block.type;
83437
+ return type === "toolCall" || type === "tool_call";
83438
+ });
83439
+ }
83440
+ function isAssistantToolPlanningMessage(message) {
83441
+ const stopReason = message.stopReason;
83442
+ if (stopReason === "toolUse" || stopReason === "tool_use") return true;
83443
+ return hasAssistantToolCallBlock(message);
83444
+ }
83431
83445
  function handleMessageStart(ctx, evt) {
83432
83446
  if (evt.message?.role !== "assistant") return;
83433
83447
  ctx.resetAssistantMessageState(ctx.state.assistantTexts.length);
@@ -83581,6 +83595,7 @@ function handleMessageEnd(ctx, evt) {
83581
83595
  }),
83582
83596
  messagingToolSentTexts: ctx.state.messagingToolSentTexts
83583
83597
  });
83598
+ const suppressToolPlanningOutput = isAssistantToolPlanningMessage(assistantMessage);
83584
83599
  const rawThinking = ctx.state.includeReasoning || ctx.state.streamReasoning ? extractAssistantThinking(assistantMessage) || extractThinkingFromTaggedText(rawText) : "";
83585
83600
  const formattedReasoning = rawThinking ? formatReasoningMessage(rawThinking) : "";
83586
83601
  const trimmedText = text.trim();
@@ -83598,7 +83613,7 @@ function handleMessageEnd(ctx, evt) {
83598
83613
  hasMedia = Boolean(mediaUrls && mediaUrls.length > 0);
83599
83614
  }
83600
83615
  }
83601
- if (!ctx.state.emittedAssistantUpdate && (cleanedText || hasMedia)) {
83616
+ if (!ctx.state.emittedAssistantUpdate && !suppressToolPlanningOutput && (cleanedText || hasMedia)) {
83602
83617
  emitAgentEvent({
83603
83618
  runId: ctx.params.runId,
83604
83619
  stream: "assistant",
@@ -83621,12 +83636,12 @@ function handleMessageEnd(ctx, evt) {
83621
83636
  const addedDuringMessage = ctx.state.assistantTexts.length > ctx.state.assistantTextBaseline;
83622
83637
  const chunkerHasBuffered = ctx.blockChunker?.hasBuffered() ?? false;
83623
83638
  ctx.finalizeAssistantTexts({
83624
- text,
83639
+ text: suppressToolPlanningOutput ? "" : text,
83625
83640
  addedDuringMessage,
83626
83641
  chunkerHasBuffered
83627
83642
  });
83628
83643
  const onBlockReply = ctx.params.onBlockReply;
83629
- const shouldEmitReasoning = Boolean(ctx.state.includeReasoning && formattedReasoning && onBlockReply && formattedReasoning !== ctx.state.lastReasoningSent);
83644
+ const shouldEmitReasoning = Boolean(!suppressToolPlanningOutput && ctx.state.includeReasoning && formattedReasoning && onBlockReply && formattedReasoning !== ctx.state.lastReasoningSent);
83630
83645
  const shouldEmitReasoningBeforeAnswer = shouldEmitReasoning && ctx.state.blockReplyBreak === "message_end" && !addedDuringMessage;
83631
83646
  const maybeEmitReasoning = () => {
83632
83647
  if (!shouldEmitReasoning || !formattedReasoning) return;
@@ -83637,7 +83652,7 @@ function handleMessageEnd(ctx, evt) {
83637
83652
  });
83638
83653
  };
83639
83654
  if (shouldEmitReasoningBeforeAnswer) maybeEmitReasoning();
83640
- if ((ctx.state.blockReplyBreak === "message_end" || (ctx.blockChunker ? ctx.blockChunker.hasBuffered() : ctx.state.blockBuffer.length > 0)) && text && onBlockReply) {
83655
+ if ((ctx.state.blockReplyBreak === "message_end" || (ctx.blockChunker ? ctx.blockChunker.hasBuffered() : ctx.state.blockBuffer.length > 0)) && !suppressToolPlanningOutput && text && onBlockReply) {
83641
83656
  if (ctx.blockChunker?.hasBuffered()) {
83642
83657
  ctx.blockChunker.drain({
83643
83658
  force: true,
@@ -83662,8 +83677,8 @@ function handleMessageEnd(ctx, evt) {
83662
83677
  }
83663
83678
  }
83664
83679
  if (!shouldEmitReasoningBeforeAnswer) maybeEmitReasoning();
83665
- if (ctx.state.streamReasoning && rawThinking) ctx.emitReasoningStream(rawThinking);
83666
- if (ctx.state.blockReplyBreak === "text_end" && onBlockReply) {
83680
+ if (!suppressToolPlanningOutput && ctx.state.streamReasoning && rawThinking) ctx.emitReasoningStream(rawThinking);
83681
+ if (!suppressToolPlanningOutput && ctx.state.blockReplyBreak === "text_end" && onBlockReply) {
83667
83682
  const tailResult = ctx.consumeReplyDirectives("", { final: true });
83668
83683
  if (tailResult) {
83669
83684
  const { text: cleanedText, mediaUrls, audioAsVoice, replyToId, replyToTag, replyToCurrent } = tailResult;
@@ -9,7 +9,7 @@ import { t as formatCliCommand } from "./command-format-BAxx4PW5.js";
9
9
  import { n as parseBooleanValue } from "./env-BpvqFD5n.js";
10
10
  import { t as generateSecureToken } from "./secure-random-BvP4jdcV.js";
11
11
  import { i as getImageMetadata, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-BDG-MYYV.js";
12
- import { B as DEFAULT_BROWSER_EVALUATE_ENABLED, C as ensureChromeExtensionRelayServer, D as DEFAULT_TRACE_DIR, E as DEFAULT_DOWNLOAD_DIR, H as DEFAULT_IDLEHANDS_BROWSER_ENABLED, I as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, L as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, N as normalizeBrowserFormField, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, U as DEFAULT_IDLEHANDS_BROWSER_PROFILE_NAME, V as DEFAULT_IDLEHANDS_BROWSER_COLOR, _ as withBrowserNavigationPolicy, a as resolveIdleHandsUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchIdleHandsChrome, j as resolveWritablePathWithinRoot, k as resolveExistingPathsWithinRoot, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopIdleHandsChrome, p as snapshotAria, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME } from "./chrome-Bip_1c2e.js";
12
+ import { B as DEFAULT_BROWSER_EVALUATE_ENABLED, C as ensureChromeExtensionRelayServer, D as DEFAULT_TRACE_DIR, E as DEFAULT_DOWNLOAD_DIR, H as DEFAULT_IDLEHANDS_BROWSER_ENABLED, I as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, L as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, N as normalizeBrowserFormField, O as DEFAULT_UPLOAD_DIR, P as isLoopbackHost, R as DEFAULT_AI_SNAPSHOT_MAX_CHARS, U as DEFAULT_IDLEHANDS_BROWSER_PROFILE_NAME, V as DEFAULT_IDLEHANDS_BROWSER_COLOR, _ as withBrowserNavigationPolicy, a as resolveIdleHandsUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchIdleHandsChrome, j as resolveWritablePathWithinRoot, k as resolveExistingPathsWithinRoot, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopIdleHandsChrome, p as snapshotAria, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME } from "./chrome-CfoCzQ7O.js";
13
13
  import { t as SsrFBlockedError } from "./ssrf-DappnhDp.js";
14
14
  import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-BRqZp2IE.js";
15
15
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-CGbCFqW8.js";
@@ -1181,7 +1181,7 @@ function isModuleNotFoundError(err) {
1181
1181
  }
1182
1182
  async function loadPwAiModule(mode) {
1183
1183
  try {
1184
- return await import("./pw-ai-YklTVbF6.js");
1184
+ return await import("./pw-ai-CX1qce0j.js");
1185
1185
  } catch (err) {
1186
1186
  if (mode === "soft") return null;
1187
1187
  if (isModuleNotFoundError(err)) return null;
@@ -3716,11 +3716,11 @@ function createProfileContext(opts, profile) {
3716
3716
  const userDataDir = resolveIdleHandsUserDataDir(profile.name);
3717
3717
  const profileState = getProfileState();
3718
3718
  if (await isHttpReachable(300) && !profileState.running) try {
3719
- await (await import("./pw-ai-YklTVbF6.js")).closePlaywrightBrowserConnection();
3719
+ await (await import("./pw-ai-CX1qce0j.js")).closePlaywrightBrowserConnection();
3720
3720
  } catch {}
3721
3721
  if (profileState.running) await stopRunningBrowser();
3722
3722
  try {
3723
- await (await import("./pw-ai-YklTVbF6.js")).closePlaywrightBrowserConnection();
3723
+ await (await import("./pw-ai-CX1qce0j.js")).closePlaywrightBrowserConnection();
3724
3724
  } catch {}
3725
3725
  if (!syncFs.existsSync(userDataDir)) return {
3726
3726
  moved: false,
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { E as getActivePluginRegistry, s as createSubsystemLogger } from "./entry.js";
3
3
  import { j as loadConfig } from "./auth-profiles-02PVCKaE.js";
4
4
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-mLXQGQde.js";
5
- import { _ as loadIdleHandsPlugins } from "./subagent-registry-l7V3IoLe.js";
5
+ import { _ as loadIdleHandsPlugins } from "./subagent-registry-DW1LK5cG.js";
6
6
 
7
7
  //#region src/cli/plugin-registry.ts
8
8
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { ht as loadIdleHandsPlugins } from "./reply-vDM22Gez.js";
2
+ import { ht as loadIdleHandsPlugins } from "./reply-DUE8raq5.js";
3
3
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-RA0zXRpu.js";
4
4
  import { b as getActivePluginRegistry, t as createSubsystemLogger } from "./subsystem-CGZX2PBV.js";
5
5
  import { It as loadConfig } from "./model-selection-BzMkl275.js";
@@ -1,6 +1,6 @@
1
1
  import { s as normalizeAgentId } from "./session-key-47BV2tLd.js";
2
2
  import "./accounts-BLYMokxV.js";
3
- import { F as callGateway, I as randomIdempotencyKey, d as agentCommand, f as resolveSessionKeyForRequest, p as withProgress } from "./reply-nvcQV3Q_.js";
3
+ import { F as callGateway, I as randomIdempotencyKey, d as agentCommand, f as resolveSessionKeyForRequest, p as withProgress } from "./reply-RRDB8Hr7.js";
4
4
  import "./paths-CtGV5i8O.js";
5
5
  import "./github-copilot-token-CY2euW0d.js";
6
6
  import { r as loadConfig } from "./config-04otsq-i.js";
@@ -63,7 +63,7 @@ import "./send-CKQ89Lq9.js";
63
63
  import "./proxy-C4ewPdlN.js";
64
64
  import "./resolve-route-BZABUE4J.js";
65
65
  import "./replies-DXdzWcMN.js";
66
- import "./deps-Gj9jRY77.js";
66
+ import "./deps-D39VXTRX.js";
67
67
  import "./outbound-attachment-BisU5Vji.js";
68
68
 
69
69
  //#region src/commands/agent-via-gateway.ts
@@ -545,7 +545,7 @@ async function loadAntonConfig() {
545
545
  }
546
546
  }
547
547
  async function runAgentTask(args) {
548
- const { agentCliCommand } = await import("./agent-via-gateway-C9v2r0O2.js");
548
+ const { agentCliCommand } = await import("./agent-via-gateway-VUne26H_.js");
549
549
  const extraSystemPrompt = args.workspaceDir ? `Your working directory is: ${args.workspaceDir}\nAll file paths are relative to this directory. Use this as your cwd for all operations.` : void 0;
550
550
  const result = await agentCliCommand({
551
551
  message: args.message,
@@ -1,6 +1,6 @@
1
1
  import { a as buildGroupHistoryKey, f as DEFAULT_ACCOUNT_ID, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-47BV2tLd.js";
2
2
  import { i as resolveWhatsAppAccount } from "./accounts-BLYMokxV.js";
3
- import { A as formatDurationPrecise, Ct as formatInboundEnvelope, Gt as resolveOpenProviderRuntimeGroupPolicy, Lt as resolveDmGroupAccessWithCommandGate, Mt as buildPairingReply, Pt as readStoreAllowFromForDmPolicy, Rt as resolveDmGroupAccessWithLists, Tt as resolveEnvelopeFormatOptions, Wt as resolveDefaultGroupPolicy, X as shouldAckReactionForWhatsApp, Z as resolveMentionGating, _ as resolveInboundDebounceMs, ct as recordPendingHistoryEntryIfEnabled, g as createInboundDebouncer, i as parseActivationCommand, j as enqueueSystemEvent, l as computeBackoff, lt as buildMentionRegexes, m as dispatchReplyWithBufferedBlockDispatcher, nt as buildHistoryContextFromEntries, qt as warnMissingProviderGroupPolicyFallbackOnce, r as normalizeGroupActivation, t as getReplyFromConfig, tt as DEFAULT_GROUP_HISTORY_LIMIT, u as sleepWithAbort, ut as normalizeMentionText, v as hasControlCommand, y as shouldComputeCommandAuthorized, yt as createDedupeCache } from "./reply-nvcQV3Q_.js";
3
+ import { A as formatDurationPrecise, Ct as formatInboundEnvelope, Gt as resolveOpenProviderRuntimeGroupPolicy, Lt as resolveDmGroupAccessWithCommandGate, Mt as buildPairingReply, Pt as readStoreAllowFromForDmPolicy, Rt as resolveDmGroupAccessWithLists, Tt as resolveEnvelopeFormatOptions, Wt as resolveDefaultGroupPolicy, X as shouldAckReactionForWhatsApp, Z as resolveMentionGating, _ as resolveInboundDebounceMs, ct as recordPendingHistoryEntryIfEnabled, g as createInboundDebouncer, i as parseActivationCommand, j as enqueueSystemEvent, l as computeBackoff, lt as buildMentionRegexes, m as dispatchReplyWithBufferedBlockDispatcher, nt as buildHistoryContextFromEntries, qt as warnMissingProviderGroupPolicyFallbackOnce, r as normalizeGroupActivation, t as getReplyFromConfig, tt as DEFAULT_GROUP_HISTORY_LIMIT, u as sleepWithAbort, ut as normalizeMentionText, v as hasControlCommand, y as shouldComputeCommandAuthorized, yt as createDedupeCache } from "./reply-RRDB8Hr7.js";
4
4
  import { r as loadConfig } from "./config-04otsq-i.js";
5
5
  import { A as shouldLogVerbose, D as logVerbose, I as getChildLogger, d as normalizeE164, l as isSelfChatMode, m as resolveJidToE164, n as clamp, u as jidToE164, x as toWhatsappJid, y as sleep } from "./utils-Dyj2wV4e.js";
6
6
  import { l as normalizeChatChannelId, t as createSubsystemLogger } from "./subsystem-DWPzKeZ0.js";
@@ -878,7 +878,7 @@ async function monitorWebInbox(options) {
878
878
  };
879
879
  const stopText = (inboundMessage.body ?? "").trim();
880
880
  if (stopText) {
881
- const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-B7_VgSkO.js");
881
+ const { isAbortRequestText, emergencyStop, resolveSessionForEmergencyStop } = await import("./emergency-stop-CY_hnUVd.js");
882
882
  if (isAbortRequestText(stopText)) {
883
883
  const { loadConfig: loadCfg } = await import("./config-04otsq-i.js").then((n) => n.t);
884
884
  const { resolveAgentRoute } = await import("./resolve-route-BZABUE4J.js").then((n) => n.r);
@@ -18,7 +18,7 @@ var deps_exports = /* @__PURE__ */ __exportAll({ createDefaultDeps: () => create
18
18
  function createDefaultDeps() {
19
19
  return {
20
20
  sendMessageWhatsApp: async (...args) => {
21
- const { sendMessageWhatsApp } = await import("./web-BzOC1x6m.js");
21
+ const { sendMessageWhatsApp } = await import("./web-Bxlapohg.js");
22
22
  return await sendMessageWhatsApp(...args);
23
23
  },
24
24
  sendMessageTelegram: async (...args) => {
@@ -1,5 +1,5 @@
1
1
  import "./accounts-BLYMokxV.js";
2
- import { S as stopSubagentsForRequester, b as formatAbortReplyText, n as abortEmbeddedPiRun, w as clearSessionQueues, x as isAbortRequestText } from "./reply-nvcQV3Q_.js";
2
+ import { S as stopSubagentsForRequester, b as formatAbortReplyText, n as abortEmbeddedPiRun, w as clearSessionQueues, x as isAbortRequestText } from "./reply-RRDB8Hr7.js";
3
3
  import "./paths-CtGV5i8O.js";
4
4
  import "./github-copilot-token-CY2euW0d.js";
5
5
  import "./config-04otsq-i.js";
@@ -61,7 +61,7 @@ import "./send-CKQ89Lq9.js";
61
61
  import "./proxy-C4ewPdlN.js";
62
62
  import "./resolve-route-BZABUE4J.js";
63
63
  import "./replies-DXdzWcMN.js";
64
- import "./deps-Gj9jRY77.js";
64
+ import "./deps-D39VXTRX.js";
65
65
  import "./outbound-attachment-BisU5Vji.js";
66
66
 
67
67
  //#region src/auto-reply/reply/emergency-stop.ts