@symerian/symi 2.3.0 → 2.3.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.
- package/dist/{agents-B0pTMEwy.js → agents-DzuttgJU.js} +4 -4
- package/dist/{agents.config-_b7ghdyb.js → agents.config-2HlZJsR3.js} +1 -1
- package/dist/{agents.config-CdNbu8M5.js → agents.config-CSucty2T.js} +1 -1
- package/dist/{audio-preflight-BkIfnmpi.js → audio-preflight-BsfqyC31.js} +4 -4
- package/dist/{audio-preflight-CPBOQV4I.js → audio-preflight-C40mKAp7.js} +4 -4
- package/dist/{auth-choice-Bx2Ly3cQ.js → auth-choice-ChrEc3cZ.js} +1 -1
- package/dist/{auth-choice-EFFQA4ii.js → auth-choice-Cve09z1a.js} +1 -1
- package/dist/{banner-B3eic4uq.js → banner-BoLflN_R.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-CiowWU_F.js → channel-options-Dkd1WQZx.js} +1 -1
- package/dist/{channel-options-75aPoFR-.js → channel-options-DqgeO1f6.js} +1 -1
- package/dist/{channel-web-B3e8z6ws.js → channel-web-CJvDQ5Ea.js} +1 -1
- package/dist/{channels-cli-DZM3aIdY.js → channels-cli-D0jjOLRb.js} +4 -4
- package/dist/{channels-cli-BDAVsmSm.js → channels-cli-DtqwJZWy.js} +4 -4
- package/dist/{chrome-D2SKJnR7.js → chrome-CDJYxX5a.js} +7 -7
- package/dist/{chrome-CxSAp8x3.js → chrome-w3SLcQJF.js} +7 -7
- package/dist/{cli-BRwovkQi.js → cli-CEtg8kql.js} +1 -1
- package/dist/{cli-D9SQsNnH.js → cli-CHOmeum9.js} +1 -1
- package/dist/{command-registry-BOI6nYdi.js → command-registry-Ba2z3dYq.js} +9 -9
- package/dist/{completion-cli-NNzoK79d.js → completion-cli-BgX3MWVU.js} +1 -1
- package/dist/{completion-cli-83vpWmfU.js → completion-cli-CD-306wt.js} +2 -2
- package/dist/{config-cli-DEAh6EN8.js → config-cli-Cz87-TYh.js} +1 -1
- package/dist/{config-cli-MLtPektI.js → config-cli-DAbXVRUL.js} +1 -1
- package/dist/{configure-BdfU-OWp.js → configure-0nrthdSf.js} +3 -3
- package/dist/{configure-vl7Z4vWj.js → configure-D45ne4lm.js} +3 -3
- package/dist/{deliver-C-37cZUe.js → deliver-BH0l3UKW.js} +1 -1
- package/dist/{deliver-BA7ZN3iM.js → deliver-BmPK91JP.js} +1 -1
- package/dist/{doctor-completion-Ds-_m1_I.js → doctor-completion-CcDVOtZ5.js} +1 -1
- package/dist/{doctor-completion-OyrrKhcY.js → doctor-completion-CmGtqUHQ.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/extensionAPI.js +6 -6
- package/dist/{gateway-cli-Coue82yW.js → gateway-cli-BVN31fwu.js} +9 -9
- package/dist/{gateway-cli-DfFSqETj.js → gateway-cli-DajX3Pye.js} +9 -9
- package/dist/{glass-ui-ws-D0Y3Ftjr.js → glass-ui-ws-CQG6acJl.js} +7 -7
- package/dist/{glass-ui-ws-Dkh8KQKx.js → glass-ui-ws-Z1IOT6Vc.js} +7 -7
- package/dist/{health-BL_zFcJ8.js → health-D9eQW7fJ.js} +1 -1
- package/dist/{health-B1LT2TG3.js → health-f056vLGT.js} +1 -1
- package/dist/{hooks-cli-CI7p--JB.js → hooks-cli-CW-IRS72.js} +2 -2
- package/dist/{hooks-cli-BoE1T7F1.js → hooks-cli-hJ4euq2R.js} +2 -2
- package/dist/{image-DcpMiprB.js → image-CHzdaNJ4.js} +1 -1
- package/dist/{image-BGmVDkkw.js → image-rZ4x9VS9.js} +1 -1
- package/dist/index.js +6 -6
- package/dist/llm-slug-generator.js +6 -6
- package/dist/{models-cli-B-mDqwNv.js → models-cli-B2ticsCM.js} +2 -2
- package/dist/{models-cli-Dm_3bpun.js → models-cli-D9bG44Ao.js} +3 -3
- package/dist/{models-DSx-ohwA.js → models-nO_t1uzp.js} +2 -2
- package/dist/{onboard-CPRPPhos.js → onboard-BDbpfrZj.js} +2 -2
- package/dist/{onboard-u4HyeN9s.js → onboard-BtZ9WqhJ.js} +2 -2
- package/dist/{onboard-channels-BUz8JSpV.js → onboard-channels-CHE8nfNA.js} +1 -1
- package/dist/{onboard-channels-CixaQo6p.js → onboard-channels-HubyUVjT.js} +1 -1
- package/dist/{onboarding-DVnX6G65.js → onboarding-DtP0sps0.js} +3 -3
- package/dist/{onboarding-HeYKKCUg.js → onboarding-eVb5gvwo.js} +3 -3
- package/dist/{onboarding.finalize-CyfJOd_0.js → onboarding.finalize-CetxPTxL.js} +5 -5
- package/dist/{onboarding.finalize-BJD7ST55.js → onboarding.finalize-D8035U2E.js} +6 -6
- package/dist/{pi-embedded-Du1crlEA.js → pi-embedded-BY-dBus2.js} +216 -171
- package/dist/{pi-embedded-Dbwt0RDE.js → pi-embedded-Dc3muKtS.js} +216 -171
- package/dist/{pi-embedded-helpers-DEEaCvEp.js → pi-embedded-helpers-B2z46qeM.js} +4 -4
- package/dist/{pi-embedded-helpers-B8kqLWns.js → pi-embedded-helpers-lgx_U5KS.js} +4 -4
- package/dist/{plugin-registry-B3_VvP9Z.js → plugin-registry-CuoX8mar.js} +1 -1
- package/dist/{plugin-registry-BHTWmVtf.js → plugin-registry-fxcvycGr.js} +1 -1
- package/dist/plugin-sdk/{channel-web-pXiGDTMm.js → channel-web-CV1KLtZh.js} +1 -1
- package/dist/plugin-sdk/index.js +2 -2
- package/dist/plugin-sdk/{reply-ClH0tnJf.js → reply-C4mijdMZ.js} +202 -157
- package/dist/plugin-sdk/{web-D-2D6z4H.js → web-B17UUsjm.js} +2 -2
- package/dist/{plugins-cli-CiJ3j55S.js → plugins-cli-4OqSGHp-.js} +2 -2
- package/dist/{plugins-cli-Dm1uy7by.js → plugins-cli-BbE_Qnlk.js} +2 -2
- package/dist/{program-CH2ZAXFK.js → program-DkXOdfM2.js} +7 -7
- package/dist/{program-context-BHdXKRCG.js → program-context-0bDxGpMx.js} +17 -17
- package/dist/{prompt-select-styled-D8-TYiCU.js → prompt-select-styled-DJkRn30j.js} +4 -4
- package/dist/{prompt-select-styled-YbkZmrxn.js → prompt-select-styled-_6KbTFXs.js} +4 -4
- package/dist/{provider-auth-helpers-BvwbMhtC.js → provider-auth-helpers-Bnkj4QXS.js} +1 -1
- package/dist/{provider-auth-helpers-BXnJRRuA.js → provider-auth-helpers-BpVAdwK_.js} +1 -1
- package/dist/{push-apns-CtNHq-T0.js → push-apns-C0wMP1XU.js} +1 -1
- package/dist/{push-apns-BKDV4tcx.js → push-apns-EKnCwrqK.js} +1 -1
- package/dist/{pw-ai-1htA-NnS.js → pw-ai-De-KR9_s.js} +1 -1
- package/dist/{pw-ai-DhwRiS06.js → pw-ai-PiQUncix.js} +1 -1
- package/dist/{register.agent-BUq96Y9v.js → register.agent-B0S1CJEx.js} +5 -5
- package/dist/{register.agent-BKI5-fHH.js → register.agent-B48Vf_DK.js} +6 -6
- package/dist/{register.configure-D5lE614j.js → register.configure-Drr3E9OG.js} +6 -6
- package/dist/{register.configure-wxLUAVNm.js → register.configure-Wyv7vb24.js} +6 -6
- package/dist/{register.maintenance-C7McOGSl.js → register.maintenance-Cmf17EW0.js} +7 -7
- package/dist/{register.maintenance-CBkeGPZ5.js → register.maintenance-TgjAQ4E0.js} +8 -8
- package/dist/{register.message-COdTYFse.js → register.message-BcsPnPvW.js} +2 -2
- package/dist/{register.message-CI-7hMop.js → register.message-Dwv2puIB.js} +2 -2
- package/dist/{register.onboard-BB0BR6ER.js → register.onboard-BDGaSyq2.js} +4 -4
- package/dist/{register.onboard-Cvq4D9PO.js → register.onboard-C8w7_w93.js} +4 -4
- package/dist/{register.setup-BFsDqWth.js → register.setup-CMGSNKXS.js} +4 -4
- package/dist/{register.setup-BYdcj7kG.js → register.setup-CiEuZOlI.js} +4 -4
- package/dist/{register.status-health-sessions-Z5xGFCb6.js → register.status-health-sessions-C8p0uINc.js} +3 -3
- package/dist/{register.status-health-sessions-CLTBPceP.js → register.status-health-sessions-zKjmZyOs.js} +3 -3
- package/dist/{register.subclis-DbjFcioS.js → register.subclis-CofZE_pt.js} +9 -9
- package/dist/{reply-Dlka9TPn.js → reply-SBi_U7P7.js} +202 -157
- package/dist/{run-main-CZKS1Km-.js → run-main-BJaDO3WW.js} +14 -14
- package/dist/{runner-B_KP4voe.js → runner-CCSMfQee.js} +1 -1
- package/dist/{runner-BcQ0sF9T.js → runner-DUBExAb5.js} +1 -1
- package/dist/{server-methods-Dl2xnUeP.js → server-methods-Cm6W01ne.js} +7 -7
- package/dist/{server-methods-060ibtki.js → server-methods-CyFB3XQf.js} +7 -7
- package/dist/{server-node-events-BaVEbs-L.js → server-node-events-Bhgt3xLw.js} +2 -2
- package/dist/{server-node-events-CxdmKBmm.js → server-node-events-CX1plxJz.js} +2 -2
- package/dist/{status-B161_hoB.js → status-BBpD_1pG.js} +2 -2
- package/dist/{status-DFFFYwyN.js → status-BdmYV3_x.js} +1 -1
- package/dist/{status-DqWKFOGN.js → status-CwXg8OO1.js} +2 -2
- package/dist/{status-V0eZ4bzN.js → status-U_1mE-yc.js} +1 -1
- package/dist/{subagent-registry-DLH72QgE.js → subagent-registry-Du9P0G2U.js} +202 -157
- package/dist/{update-cli-BHNHad5c.js → update-cli-DJzF_9UX.js} +7 -7
- package/dist/{update-cli-t1GIk6uw.js → update-cli-_45TJ3hZ.js} +8 -8
- package/dist/{update-runner-Ciq1c0YL.js → update-runner-8Ac4bJ1w.js} +1 -1
- package/dist/{update-runner-CDG0-jLB.js → update-runner-BSQFv9b6.js} +1 -1
- package/dist/{web-CWhHll12.js → web-BZSI7b07.js} +2 -2
- package/dist/{web-B_JQgMeX.js → web-BqRsq6mP.js} +6 -6
- package/dist/{web-BkvYOXO1.js → web-C1Zn8_qW.js} +6 -6
- package/dist/{web-FaXjM6fP.js → web-w-vV1rCZ.js} +1 -1
- package/package.json +1 -1
|
@@ -13,7 +13,7 @@ import { t as parseBooleanValue$1 } from "./boolean-B8-BqKGQ.js";
|
|
|
13
13
|
import { n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-UKHV-j0K.js";
|
|
14
14
|
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-CHEOWVc8.js";
|
|
15
15
|
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-DwKJK3sM.js";
|
|
16
|
-
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-
|
|
16
|
+
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-BmPK91JP.js";
|
|
17
17
|
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-C3nsWaw3.js";
|
|
18
18
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Bxo4UHOL.js";
|
|
19
19
|
import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-ChTFYj8Q.js";
|
|
@@ -23,10 +23,10 @@ import { A as normalizeProviderId, C as buildAllowedModelSet, D as isCliProvider
|
|
|
23
23
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-DJqsJ2-r.js";
|
|
24
24
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DaNAekda.js";
|
|
25
25
|
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-DbsRltF2.js";
|
|
26
|
-
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-
|
|
26
|
+
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-B2z46qeM.js";
|
|
27
27
|
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-eEaJddXj.js";
|
|
28
28
|
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-CneMHk0N.js";
|
|
29
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
29
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-w3SLcQJF.js";
|
|
30
30
|
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-o5WVqM4V.js";
|
|
31
31
|
import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-BoQgnc8X.js";
|
|
32
32
|
import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-BTMDZjHT.js";
|
|
@@ -37,7 +37,7 @@ import { t as resolveIMessageAccount } from "./accounts-CJR8j_Kq.js";
|
|
|
37
37
|
import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-Cb87-LzP.js";
|
|
38
38
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-DDYvbmRV.js";
|
|
39
39
|
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-DBCfXdli.js";
|
|
40
|
-
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-
|
|
40
|
+
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-rZ4x9VS9.js";
|
|
41
41
|
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CtL0omgM.js";
|
|
42
42
|
import { i as resolveMemorySearchConfig, n as probeOllamaEmbeddingModels, r as resolveOllamaBaseUrl } from "./manager-BoLr3xR_.js";
|
|
43
43
|
import { d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as runTasksWithConcurrency } from "./sqlite-6H6Zw1cs.js";
|
|
@@ -51,7 +51,7 @@ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-CbFUkv_T.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-VSmULp-g.js";
|
|
52
52
|
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-D610IKhm.js";
|
|
53
53
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-BlHX0H3E.js";
|
|
54
|
-
import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, 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-
|
|
54
|
+
import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, 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-CCSMfQee.js";
|
|
55
55
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-Bso4i15F.js";
|
|
56
56
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-Bup9wS1y.js";
|
|
57
57
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-C9-gaquj.js";
|
|
@@ -81,7 +81,7 @@ import { EdgeTTS } from "node-edge-tts";
|
|
|
81
81
|
import AjvPkg from "ajv";
|
|
82
82
|
import { createServer } from "node:http";
|
|
83
83
|
import { ProxyAgent, fetch as fetch$1 } from "undici";
|
|
84
|
-
import WebSocket, { WebSocket
|
|
84
|
+
import WebSocket$1, { WebSocket } from "ws";
|
|
85
85
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
86
86
|
import { createJiti } from "jiti";
|
|
87
87
|
import { Type } from "@sinclair/typebox";
|
|
@@ -5716,7 +5716,7 @@ var GatewayClient = class {
|
|
|
5716
5716
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
5717
5717
|
});
|
|
5718
5718
|
}
|
|
5719
|
-
this.ws = new WebSocket
|
|
5719
|
+
this.ws = new WebSocket(url, wsOptions);
|
|
5720
5720
|
this.ws.on("open", () => {
|
|
5721
5721
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
5722
5722
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -5935,7 +5935,7 @@ var GatewayClient = class {
|
|
|
5935
5935
|
return null;
|
|
5936
5936
|
}
|
|
5937
5937
|
async request(method, params, opts) {
|
|
5938
|
-
if (!this.ws || this.ws.readyState !== WebSocket
|
|
5938
|
+
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
5939
5939
|
const id = randomUUID();
|
|
5940
5940
|
const frame = {
|
|
5941
5941
|
type: "req",
|
|
@@ -7201,7 +7201,7 @@ async function routeReply(params) {
|
|
|
7201
7201
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
7202
7202
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
7203
7203
|
try {
|
|
7204
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
7204
|
+
const { deliverOutboundPayloads } = await import("./deliver-BmPK91JP.js").then((n) => n.n);
|
|
7205
7205
|
return {
|
|
7206
7206
|
ok: true,
|
|
7207
7207
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -41675,7 +41675,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
41675
41675
|
return;
|
|
41676
41676
|
}
|
|
41677
41677
|
try {
|
|
41678
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
41678
|
+
const { deliverOutboundPayloads } = await import("./deliver-BmPK91JP.js").then((n) => n.n);
|
|
41679
41679
|
await deliverOutboundPayloads({
|
|
41680
41680
|
cfg: params.cfg,
|
|
41681
41681
|
channel,
|
|
@@ -45121,7 +45121,7 @@ async function describeStickerImage(params) {
|
|
|
45121
45121
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
45122
45122
|
try {
|
|
45123
45123
|
const buffer = await fs.readFile(imagePath);
|
|
45124
|
-
const { describeImageWithModel } = await import("./image-
|
|
45124
|
+
const { describeImageWithModel } = await import("./image-rZ4x9VS9.js").then((n) => n.n);
|
|
45125
45125
|
return (await describeImageWithModel({
|
|
45126
45126
|
buffer,
|
|
45127
45127
|
fileName: "sticker.webp",
|
|
@@ -47783,7 +47783,7 @@ async function preflightDiscordMessage(params) {
|
|
|
47783
47783
|
let preflightTranscript;
|
|
47784
47784
|
const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
|
|
47785
47785
|
if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
|
|
47786
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
47786
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BsfqyC31.js");
|
|
47787
47787
|
const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
|
|
47788
47788
|
if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
|
|
47789
47789
|
ctx: {
|
|
@@ -51789,7 +51789,7 @@ function isVoiceChannelType(type) {
|
|
|
51789
51789
|
function createDefaultDeps() {
|
|
51790
51790
|
return {
|
|
51791
51791
|
sendMessageWhatsApp: async (...args) => {
|
|
51792
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
51792
|
+
const { sendMessageWhatsApp } = await import("./web-BqRsq6mP.js");
|
|
51793
51793
|
return await sendMessageWhatsApp(...args);
|
|
51794
51794
|
},
|
|
51795
51795
|
sendMessageTelegram: async (...args) => {
|
|
@@ -54696,7 +54696,7 @@ function createDiscordGatewayPlugin(params) {
|
|
|
54696
54696
|
super(options);
|
|
54697
54697
|
}
|
|
54698
54698
|
createWebSocket(url) {
|
|
54699
|
-
return new WebSocket(url, { agent });
|
|
54699
|
+
return new WebSocket$1(url, { agent });
|
|
54700
54700
|
}
|
|
54701
54701
|
}
|
|
54702
54702
|
return new ProxyGatewayPlugin();
|
|
@@ -64914,7 +64914,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
64914
64914
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
64915
64915
|
let preflightTranscript;
|
|
64916
64916
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
64917
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
64917
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-BsfqyC31.js");
|
|
64918
64918
|
preflightTranscript = await transcribeFirstAudio({
|
|
64919
64919
|
ctx: {
|
|
64920
64920
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -67071,7 +67071,7 @@ function loadWebLoginQr() {
|
|
|
67071
67071
|
return webLoginQrPromise;
|
|
67072
67072
|
}
|
|
67073
67073
|
function loadWebChannel() {
|
|
67074
|
-
webChannelPromise ??= import("./web-
|
|
67074
|
+
webChannelPromise ??= import("./web-BqRsq6mP.js");
|
|
67075
67075
|
return webChannelPromise;
|
|
67076
67076
|
}
|
|
67077
67077
|
function loadWhatsAppActions() {
|
|
@@ -72588,6 +72588,162 @@ async function compactEmbeddedPiSession(params) {
|
|
|
72588
72588
|
return enqueueCommandInLane(sessionLane, () => enqueueGlobal(async () => compactEmbeddedPiSessionDirect(params)));
|
|
72589
72589
|
}
|
|
72590
72590
|
|
|
72591
|
+
//#endregion
|
|
72592
|
+
//#region src/config/model-profiles-builtin.ts
|
|
72593
|
+
/**
|
|
72594
|
+
* Built-in model profiles. Ordered from most-specific to least-specific so
|
|
72595
|
+
* that `resolveModelProfile` can return the first match.
|
|
72596
|
+
*
|
|
72597
|
+
* Order matters: "ollama/" must precede "gemma" because model IDs like
|
|
72598
|
+
* "ollama/gemma4:31b-128k" contain both substrings.
|
|
72599
|
+
*/
|
|
72600
|
+
const BUILTIN_PROFILES = [
|
|
72601
|
+
{
|
|
72602
|
+
match: ["ollama/"],
|
|
72603
|
+
label: "Ollama Local",
|
|
72604
|
+
params: {
|
|
72605
|
+
temperature: 1,
|
|
72606
|
+
top_p: .95,
|
|
72607
|
+
top_k: 64,
|
|
72608
|
+
max_tokens: 4096,
|
|
72609
|
+
stop: ["<end_of_turn>", "<eos>"]
|
|
72610
|
+
},
|
|
72611
|
+
streaming: {
|
|
72612
|
+
deltaThrottleMs: 50,
|
|
72613
|
+
flushOnFinal: true,
|
|
72614
|
+
chunkPattern: "burst"
|
|
72615
|
+
},
|
|
72616
|
+
filters: {
|
|
72617
|
+
stripPatterns: [
|
|
72618
|
+
"<\\|channel>\\w*",
|
|
72619
|
+
"<channel\\|>",
|
|
72620
|
+
"<start_of_turn>(?:model|user)?",
|
|
72621
|
+
"<end_of_turn>"
|
|
72622
|
+
],
|
|
72623
|
+
suppressMonologue: true,
|
|
72624
|
+
hasStructuredThinking: false
|
|
72625
|
+
},
|
|
72626
|
+
promptAdditions: ["You are running locally via Ollama. Do not output raw control tokens or internal monologue. Send brief progress updates on long tasks."],
|
|
72627
|
+
ui: {
|
|
72628
|
+
badge: "Local",
|
|
72629
|
+
watchdogMs: 9e5,
|
|
72630
|
+
armWatchdogOnSend: true
|
|
72631
|
+
}
|
|
72632
|
+
},
|
|
72633
|
+
{
|
|
72634
|
+
match: ["anthropic/", "claude-"],
|
|
72635
|
+
label: "Claude",
|
|
72636
|
+
params: {
|
|
72637
|
+
temperature: 1,
|
|
72638
|
+
top_p: 1,
|
|
72639
|
+
max_tokens: 8192
|
|
72640
|
+
},
|
|
72641
|
+
streaming: {
|
|
72642
|
+
deltaThrottleMs: 150,
|
|
72643
|
+
flushOnFinal: false,
|
|
72644
|
+
chunkPattern: "token"
|
|
72645
|
+
},
|
|
72646
|
+
filters: {
|
|
72647
|
+
stripPatterns: [],
|
|
72648
|
+
suppressMonologue: false,
|
|
72649
|
+
hasStructuredThinking: true
|
|
72650
|
+
},
|
|
72651
|
+
promptAdditions: [],
|
|
72652
|
+
ui: {
|
|
72653
|
+
badge: "API",
|
|
72654
|
+
watchdogMs: 3e5,
|
|
72655
|
+
armWatchdogOnSend: false
|
|
72656
|
+
}
|
|
72657
|
+
},
|
|
72658
|
+
{
|
|
72659
|
+
match: ["gemma", "redsand/"],
|
|
72660
|
+
label: "Gemma 4",
|
|
72661
|
+
params: {
|
|
72662
|
+
temperature: 1,
|
|
72663
|
+
top_p: .95,
|
|
72664
|
+
top_k: 64,
|
|
72665
|
+
max_tokens: 4096,
|
|
72666
|
+
stop: ["<end_of_turn>", "<eos>"]
|
|
72667
|
+
},
|
|
72668
|
+
streaming: {
|
|
72669
|
+
deltaThrottleMs: 50,
|
|
72670
|
+
flushOnFinal: true,
|
|
72671
|
+
chunkPattern: "burst"
|
|
72672
|
+
},
|
|
72673
|
+
filters: {
|
|
72674
|
+
stripPatterns: [
|
|
72675
|
+
"<\\|channel>\\w*",
|
|
72676
|
+
"<channel\\|>",
|
|
72677
|
+
"<start_of_turn>(?:model|user)?",
|
|
72678
|
+
"<end_of_turn>",
|
|
72679
|
+
"<\\|(?:fim_prefix|fim_suffix|fim_middle)\\|>",
|
|
72680
|
+
"^\\s*<bos>\\s*"
|
|
72681
|
+
],
|
|
72682
|
+
suppressMonologue: true,
|
|
72683
|
+
hasStructuredThinking: false
|
|
72684
|
+
},
|
|
72685
|
+
promptAdditions: [
|
|
72686
|
+
"You are running as Gemma 4 via vLLM. Important behavioral rules:",
|
|
72687
|
+
"- Never output raw control tokens, channel tags, or turn markers in your responses.",
|
|
72688
|
+
"- Never display internal status checks, plans, or self-assessments. Your visible output should only be conversational responses and final results.",
|
|
72689
|
+
"- When working on multi-step tasks, send a brief one-line status update every 30-60 seconds so the user knows you are active.",
|
|
72690
|
+
"- Keep planning and reasoning internal. Only speak when you have a result or need user input.",
|
|
72691
|
+
"- Do not use <|channel>thought or similar syntax. If you need to reason, do so silently."
|
|
72692
|
+
],
|
|
72693
|
+
ui: {
|
|
72694
|
+
badge: "CoreWeave",
|
|
72695
|
+
watchdogMs: 6e5,
|
|
72696
|
+
armWatchdogOnSend: true
|
|
72697
|
+
}
|
|
72698
|
+
}
|
|
72699
|
+
];
|
|
72700
|
+
|
|
72701
|
+
//#endregion
|
|
72702
|
+
//#region src/config/resolve-model-profile.ts
|
|
72703
|
+
/** Default profile returned when no match is found. */
|
|
72704
|
+
const FALLBACK_PROFILE = {
|
|
72705
|
+
match: "*",
|
|
72706
|
+
label: "Generic",
|
|
72707
|
+
params: {
|
|
72708
|
+
temperature: 1,
|
|
72709
|
+
max_tokens: 4096
|
|
72710
|
+
},
|
|
72711
|
+
streaming: {
|
|
72712
|
+
deltaThrottleMs: 150,
|
|
72713
|
+
flushOnFinal: true,
|
|
72714
|
+
chunkPattern: "burst"
|
|
72715
|
+
},
|
|
72716
|
+
filters: {
|
|
72717
|
+
stripPatterns: [],
|
|
72718
|
+
suppressMonologue: false,
|
|
72719
|
+
hasStructuredThinking: false
|
|
72720
|
+
},
|
|
72721
|
+
promptAdditions: [],
|
|
72722
|
+
ui: {
|
|
72723
|
+
watchdogMs: 3e5,
|
|
72724
|
+
armWatchdogOnSend: true
|
|
72725
|
+
}
|
|
72726
|
+
};
|
|
72727
|
+
/**
|
|
72728
|
+
* Resolve the active model profile for a given model ID.
|
|
72729
|
+
*
|
|
72730
|
+
* Resolution order:
|
|
72731
|
+
* 1. User-defined profiles (from `models.profiles` in symi.json)
|
|
72732
|
+
* 2. Built-in profiles ({@link BUILTIN_PROFILES})
|
|
72733
|
+
* 3. Fallback "Generic" profile
|
|
72734
|
+
*
|
|
72735
|
+
* Matching is case-insensitive prefix/substring against the model ID.
|
|
72736
|
+
*/
|
|
72737
|
+
function resolveModelProfile(modelId, userProfiles) {
|
|
72738
|
+
const id = modelId.toLowerCase();
|
|
72739
|
+
const allProfiles = [...userProfiles ?? [], ...BUILTIN_PROFILES];
|
|
72740
|
+
for (const profile of allProfiles) {
|
|
72741
|
+
const patterns = Array.isArray(profile.match) ? profile.match : [profile.match];
|
|
72742
|
+
for (const pattern of patterns) if (id.startsWith(pattern.toLowerCase()) || id.includes(pattern.toLowerCase())) return profile;
|
|
72743
|
+
}
|
|
72744
|
+
return FALLBACK_PROFILE;
|
|
72745
|
+
}
|
|
72746
|
+
|
|
72591
72747
|
//#endregion
|
|
72592
72748
|
//#region src/agents/pi-embedded-runner/extra-params.ts
|
|
72593
72749
|
const OPENROUTER_APP_HEADERS = {
|
|
@@ -72607,7 +72763,9 @@ const OPENAI_RESPONSES_PROVIDERS = new Set(["openai"]);
|
|
|
72607
72763
|
function resolveExtraParams(params) {
|
|
72608
72764
|
const modelKey = `${params.provider}/${params.modelId}`;
|
|
72609
72765
|
const modelConfig = params.cfg?.agents?.defaults?.models?.[modelKey];
|
|
72610
|
-
|
|
72766
|
+
if (modelConfig?.params) return { ...modelConfig.params };
|
|
72767
|
+
const profile = resolveModelProfile(modelKey, params.cfg?.models?.profiles);
|
|
72768
|
+
if (profile.params && Object.keys(profile.params).length > 0) return { ...profile.params };
|
|
72611
72769
|
}
|
|
72612
72770
|
/**
|
|
72613
72771
|
* Resolve cacheRetention from extraParams, supporting both new `cacheRetention`
|
|
@@ -72637,6 +72795,7 @@ function createStreamFnWithExtraParams(baseStreamFn, extraParams, provider) {
|
|
|
72637
72795
|
if (typeof extraParams.top_p === "number") streamParams.top_p = extraParams.top_p;
|
|
72638
72796
|
if (typeof extraParams.top_k === "number") streamParams.top_k = extraParams.top_k;
|
|
72639
72797
|
if (typeof extraParams.repeat_penalty === "number") streamParams.repeat_penalty = extraParams.repeat_penalty;
|
|
72798
|
+
if (Array.isArray(extraParams.stop) && extraParams.stop.length > 0) streamParams.stop = extraParams.stop;
|
|
72640
72799
|
if (extraParams.chat_template_kwargs && typeof extraParams.chat_template_kwargs === "object") streamParams.chat_template_kwargs = extraParams.chat_template_kwargs;
|
|
72641
72800
|
const cacheRetention = resolveCacheRetention(extraParams, provider);
|
|
72642
72801
|
if (cacheRetention) streamParams.cacheRetention = cacheRetention;
|
|
@@ -72765,6 +72924,42 @@ function createZaiToolStreamWrapper(baseStreamFn, enabled) {
|
|
|
72765
72924
|
});
|
|
72766
72925
|
};
|
|
72767
72926
|
}
|
|
72927
|
+
const GEMMA_STOP_SEQUENCES = ["<end_of_turn>", "<eos>"];
|
|
72928
|
+
const VLLM_GEMMA_HINTS = ["gemma", "redsand"];
|
|
72929
|
+
function isVllmOrGemmaProvider(provider, modelId, cfg) {
|
|
72930
|
+
const lower = `${provider}/${modelId}`.toLowerCase();
|
|
72931
|
+
if (VLLM_GEMMA_HINTS.some((h) => lower.includes(h))) return true;
|
|
72932
|
+
const baseUrl = ((cfg?.models?.providers?.[provider])?.baseUrl ?? "").toLowerCase();
|
|
72933
|
+
return baseUrl.includes("coreweave") || baseUrl.includes("vllm");
|
|
72934
|
+
}
|
|
72935
|
+
/**
|
|
72936
|
+
* Wrap the stream function to fix vLLM/Gemma compat issues via onPayload:
|
|
72937
|
+
* 1. Replace `max_completion_tokens` with `max_tokens` (vLLM ignores the former)
|
|
72938
|
+
* 2. Inject Gemma stop sequences if none are set
|
|
72939
|
+
* 3. Remove unsupported fields (store, stream_options.include_usage on older vLLM)
|
|
72940
|
+
*/
|
|
72941
|
+
function createVllmCompatWrapper(baseStreamFn, extraParams) {
|
|
72942
|
+
const underlying = baseStreamFn ?? streamSimple;
|
|
72943
|
+
const configuredStop = Array.isArray(extraParams.stop) ? extraParams.stop : GEMMA_STOP_SEQUENCES;
|
|
72944
|
+
return (model, context, options) => {
|
|
72945
|
+
const originalOnPayload = options?.onPayload;
|
|
72946
|
+
return underlying(model, context, {
|
|
72947
|
+
...options,
|
|
72948
|
+
onPayload: (payload) => {
|
|
72949
|
+
if (payload && typeof payload === "object") {
|
|
72950
|
+
const p = payload;
|
|
72951
|
+
if (p.max_completion_tokens && !p.max_tokens) {
|
|
72952
|
+
p.max_tokens = p.max_completion_tokens;
|
|
72953
|
+
delete p.max_completion_tokens;
|
|
72954
|
+
}
|
|
72955
|
+
if (!p.stop && configuredStop.length > 0) p.stop = configuredStop;
|
|
72956
|
+
delete p.store;
|
|
72957
|
+
}
|
|
72958
|
+
originalOnPayload?.(payload);
|
|
72959
|
+
}
|
|
72960
|
+
});
|
|
72961
|
+
};
|
|
72962
|
+
}
|
|
72768
72963
|
/**
|
|
72769
72964
|
* Apply extra params (like temperature) to an agent's streamFn.
|
|
72770
72965
|
* Also adds OpenRouter app attribution headers when using the OpenRouter provider.
|
|
@@ -72799,161 +72994,11 @@ function applyExtraParamsToAgent(agent, cfg, provider, modelId, extraParamsOverr
|
|
|
72799
72994
|
agent.streamFn = createZaiToolStreamWrapper(agent.streamFn, true);
|
|
72800
72995
|
}
|
|
72801
72996
|
}
|
|
72802
|
-
|
|
72803
|
-
}
|
|
72804
|
-
|
|
72805
|
-
//#endregion
|
|
72806
|
-
//#region src/config/model-profiles-builtin.ts
|
|
72807
|
-
/**
|
|
72808
|
-
* Built-in model profiles. Ordered from most-specific to least-specific so
|
|
72809
|
-
* that `resolveModelProfile` can return the first match.
|
|
72810
|
-
*
|
|
72811
|
-
* Order matters: "ollama/" must precede "gemma" because model IDs like
|
|
72812
|
-
* "ollama/gemma4:31b-128k" contain both substrings.
|
|
72813
|
-
*/
|
|
72814
|
-
const BUILTIN_PROFILES = [
|
|
72815
|
-
{
|
|
72816
|
-
match: ["ollama/"],
|
|
72817
|
-
label: "Ollama Local",
|
|
72818
|
-
params: {
|
|
72819
|
-
temperature: 1,
|
|
72820
|
-
top_p: .95,
|
|
72821
|
-
top_k: 64,
|
|
72822
|
-
max_tokens: 4096
|
|
72823
|
-
},
|
|
72824
|
-
streaming: {
|
|
72825
|
-
deltaThrottleMs: 50,
|
|
72826
|
-
flushOnFinal: true,
|
|
72827
|
-
chunkPattern: "burst"
|
|
72828
|
-
},
|
|
72829
|
-
filters: {
|
|
72830
|
-
stripPatterns: [
|
|
72831
|
-
"<\\|channel>\\w*",
|
|
72832
|
-
"<channel\\|>",
|
|
72833
|
-
"<start_of_turn>(?:model|user)?",
|
|
72834
|
-
"<end_of_turn>"
|
|
72835
|
-
],
|
|
72836
|
-
suppressMonologue: true,
|
|
72837
|
-
hasStructuredThinking: false
|
|
72838
|
-
},
|
|
72839
|
-
promptAdditions: ["You are running locally via Ollama. Do not output raw control tokens or internal monologue. Send brief progress updates on long tasks."],
|
|
72840
|
-
ui: {
|
|
72841
|
-
badge: "Local",
|
|
72842
|
-
watchdogMs: 9e5,
|
|
72843
|
-
armWatchdogOnSend: true
|
|
72844
|
-
}
|
|
72845
|
-
},
|
|
72846
|
-
{
|
|
72847
|
-
match: ["anthropic/", "claude-"],
|
|
72848
|
-
label: "Claude",
|
|
72849
|
-
params: {
|
|
72850
|
-
temperature: 1,
|
|
72851
|
-
top_p: 1,
|
|
72852
|
-
max_tokens: 8192
|
|
72853
|
-
},
|
|
72854
|
-
streaming: {
|
|
72855
|
-
deltaThrottleMs: 150,
|
|
72856
|
-
flushOnFinal: false,
|
|
72857
|
-
chunkPattern: "token"
|
|
72858
|
-
},
|
|
72859
|
-
filters: {
|
|
72860
|
-
stripPatterns: [],
|
|
72861
|
-
suppressMonologue: false,
|
|
72862
|
-
hasStructuredThinking: true
|
|
72863
|
-
},
|
|
72864
|
-
promptAdditions: [],
|
|
72865
|
-
ui: {
|
|
72866
|
-
badge: "API",
|
|
72867
|
-
watchdogMs: 3e5,
|
|
72868
|
-
armWatchdogOnSend: false
|
|
72869
|
-
}
|
|
72870
|
-
},
|
|
72871
|
-
{
|
|
72872
|
-
match: ["gemma", "redsand/"],
|
|
72873
|
-
label: "Gemma 4",
|
|
72874
|
-
params: {
|
|
72875
|
-
temperature: 1,
|
|
72876
|
-
top_p: .95,
|
|
72877
|
-
top_k: 64,
|
|
72878
|
-
max_tokens: 8192
|
|
72879
|
-
},
|
|
72880
|
-
streaming: {
|
|
72881
|
-
deltaThrottleMs: 50,
|
|
72882
|
-
flushOnFinal: true,
|
|
72883
|
-
chunkPattern: "burst"
|
|
72884
|
-
},
|
|
72885
|
-
filters: {
|
|
72886
|
-
stripPatterns: [
|
|
72887
|
-
"<\\|channel>\\w*",
|
|
72888
|
-
"<channel\\|>",
|
|
72889
|
-
"<start_of_turn>(?:model|user)?",
|
|
72890
|
-
"<end_of_turn>",
|
|
72891
|
-
"<\\|(?:fim_prefix|fim_suffix|fim_middle)\\|>",
|
|
72892
|
-
"^\\s*<bos>\\s*"
|
|
72893
|
-
],
|
|
72894
|
-
suppressMonologue: true,
|
|
72895
|
-
hasStructuredThinking: false
|
|
72896
|
-
},
|
|
72897
|
-
promptAdditions: [
|
|
72898
|
-
"You are running as Gemma 4 via vLLM. Important behavioral rules:",
|
|
72899
|
-
"- Never output raw control tokens, channel tags, or turn markers in your responses.",
|
|
72900
|
-
"- Never display internal status checks, plans, or self-assessments. Your visible output should only be conversational responses and final results.",
|
|
72901
|
-
"- When working on multi-step tasks, send a brief one-line status update every 30-60 seconds so the user knows you are active.",
|
|
72902
|
-
"- Keep planning and reasoning internal. Only speak when you have a result or need user input.",
|
|
72903
|
-
"- Do not use <|channel>thought or similar syntax. If you need to reason, do so silently."
|
|
72904
|
-
],
|
|
72905
|
-
ui: {
|
|
72906
|
-
badge: "CoreWeave",
|
|
72907
|
-
watchdogMs: 6e5,
|
|
72908
|
-
armWatchdogOnSend: true
|
|
72909
|
-
}
|
|
72910
|
-
}
|
|
72911
|
-
];
|
|
72912
|
-
|
|
72913
|
-
//#endregion
|
|
72914
|
-
//#region src/config/resolve-model-profile.ts
|
|
72915
|
-
/** Default profile returned when no match is found. */
|
|
72916
|
-
const FALLBACK_PROFILE = {
|
|
72917
|
-
match: "*",
|
|
72918
|
-
label: "Generic",
|
|
72919
|
-
params: {
|
|
72920
|
-
temperature: 1,
|
|
72921
|
-
max_tokens: 4096
|
|
72922
|
-
},
|
|
72923
|
-
streaming: {
|
|
72924
|
-
deltaThrottleMs: 150,
|
|
72925
|
-
flushOnFinal: true,
|
|
72926
|
-
chunkPattern: "burst"
|
|
72927
|
-
},
|
|
72928
|
-
filters: {
|
|
72929
|
-
stripPatterns: [],
|
|
72930
|
-
suppressMonologue: false,
|
|
72931
|
-
hasStructuredThinking: false
|
|
72932
|
-
},
|
|
72933
|
-
promptAdditions: [],
|
|
72934
|
-
ui: {
|
|
72935
|
-
watchdogMs: 3e5,
|
|
72936
|
-
armWatchdogOnSend: true
|
|
72997
|
+
if (isVllmOrGemmaProvider(provider, modelId, cfg)) {
|
|
72998
|
+
log$2.debug(`applying vLLM/Gemma compat wrapper for ${provider}/${modelId}`);
|
|
72999
|
+
agent.streamFn = createVllmCompatWrapper(agent.streamFn, merged);
|
|
72937
73000
|
}
|
|
72938
|
-
|
|
72939
|
-
/**
|
|
72940
|
-
* Resolve the active model profile for a given model ID.
|
|
72941
|
-
*
|
|
72942
|
-
* Resolution order:
|
|
72943
|
-
* 1. User-defined profiles (from `models.profiles` in symi.json)
|
|
72944
|
-
* 2. Built-in profiles ({@link BUILTIN_PROFILES})
|
|
72945
|
-
* 3. Fallback "Generic" profile
|
|
72946
|
-
*
|
|
72947
|
-
* Matching is case-insensitive prefix/substring against the model ID.
|
|
72948
|
-
*/
|
|
72949
|
-
function resolveModelProfile(modelId, userProfiles) {
|
|
72950
|
-
const id = modelId.toLowerCase();
|
|
72951
|
-
const allProfiles = [...userProfiles ?? [], ...BUILTIN_PROFILES];
|
|
72952
|
-
for (const profile of allProfiles) {
|
|
72953
|
-
const patterns = Array.isArray(profile.match) ? profile.match : [profile.match];
|
|
72954
|
-
for (const pattern of patterns) if (id.startsWith(pattern.toLowerCase()) || id.includes(pattern.toLowerCase())) return profile;
|
|
72955
|
-
}
|
|
72956
|
-
return FALLBACK_PROFILE;
|
|
73001
|
+
agent.streamFn = createOpenAIResponsesStoreWrapper(agent.streamFn);
|
|
72957
73002
|
}
|
|
72958
73003
|
|
|
72959
73004
|
//#endregion
|
|
@@ -12,7 +12,7 @@ import { c as SafeOpenError, i as getImageMetadata, l as openFileWithinRoot, n a
|
|
|
12
12
|
import { S as isPidAlive, x as resolveProcessScopedMap } from "./model-auth-CwOuTuXl.js";
|
|
13
13
|
import { o as listDeliverableMessageChannels, s as normalizeMessageChannel } from "./message-channel-DbsRltF2.js";
|
|
14
14
|
import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-eEaJddXj.js";
|
|
15
|
-
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
15
|
+
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-w3SLcQJF.js";
|
|
16
16
|
import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-o5WVqM4V.js";
|
|
17
17
|
import { n as formatErrorMessage, t as extractErrorCode } from "./errors-BoQgnc8X.js";
|
|
18
18
|
import { t as SsrFBlockedError } from "./ssrf-BTMDZjHT.js";
|
|
@@ -933,7 +933,7 @@ function isModuleNotFoundError(err) {
|
|
|
933
933
|
}
|
|
934
934
|
async function loadPwAiModule(mode) {
|
|
935
935
|
try {
|
|
936
|
-
return await import("./pw-ai-
|
|
936
|
+
return await import("./pw-ai-PiQUncix.js");
|
|
937
937
|
} catch (err) {
|
|
938
938
|
if (mode === "soft") return null;
|
|
939
939
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -3473,11 +3473,11 @@ function createProfileContext(opts, profile) {
|
|
|
3473
3473
|
const userDataDir = resolveSymiUserDataDir(profile.name);
|
|
3474
3474
|
const profileState = getProfileState();
|
|
3475
3475
|
if (await isHttpReachable(300) && !profileState.running) try {
|
|
3476
|
-
await (await import("./pw-ai-
|
|
3476
|
+
await (await import("./pw-ai-PiQUncix.js")).closePlaywrightBrowserConnection();
|
|
3477
3477
|
} catch {}
|
|
3478
3478
|
if (profileState.running) await stopRunningBrowser();
|
|
3479
3479
|
try {
|
|
3480
|
-
await (await import("./pw-ai-
|
|
3480
|
+
await (await import("./pw-ai-PiQUncix.js")).closePlaywrightBrowserConnection();
|
|
3481
3481
|
} catch {}
|
|
3482
3482
|
if (!fsSync.existsSync(userDataDir)) return {
|
|
3483
3483
|
moved: false,
|
|
@@ -10,7 +10,7 @@ import { t as normalizeChatType } from "./chat-type-DFDuk3FY.js";
|
|
|
10
10
|
import { c as SafeOpenError, i as getImageMetadata, l as openFileWithinRoot, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-ByaQt43P.js";
|
|
11
11
|
import { o as listDeliverableMessageChannels, s as normalizeMessageChannel } from "./message-channel-BQINJQIT.js";
|
|
12
12
|
import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-BmV60pPT.js";
|
|
13
|
-
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
13
|
+
import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-CDJYxX5a.js";
|
|
14
14
|
import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-BNpGMnp-.js";
|
|
15
15
|
import { n as formatErrorMessage, t as extractErrorCode } from "./errors-CPfngF0S.js";
|
|
16
16
|
import { t as SsrFBlockedError } from "./ssrf-CxfFyMRZ.js";
|
|
@@ -931,7 +931,7 @@ function isModuleNotFoundError(err) {
|
|
|
931
931
|
}
|
|
932
932
|
async function loadPwAiModule(mode) {
|
|
933
933
|
try {
|
|
934
|
-
return await import("./pw-ai-
|
|
934
|
+
return await import("./pw-ai-De-KR9_s.js");
|
|
935
935
|
} catch (err) {
|
|
936
936
|
if (mode === "soft") return null;
|
|
937
937
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -3471,11 +3471,11 @@ function createProfileContext(opts, profile) {
|
|
|
3471
3471
|
const userDataDir = resolveSymiUserDataDir(profile.name);
|
|
3472
3472
|
const profileState = getProfileState();
|
|
3473
3473
|
if (await isHttpReachable(300) && !profileState.running) try {
|
|
3474
|
-
await (await import("./pw-ai-
|
|
3474
|
+
await (await import("./pw-ai-De-KR9_s.js")).closePlaywrightBrowserConnection();
|
|
3475
3475
|
} catch {}
|
|
3476
3476
|
if (profileState.running) await stopRunningBrowser();
|
|
3477
3477
|
try {
|
|
3478
|
-
await (await import("./pw-ai-
|
|
3478
|
+
await (await import("./pw-ai-De-KR9_s.js")).closePlaywrightBrowserConnection();
|
|
3479
3479
|
} catch {}
|
|
3480
3480
|
if (!fs.existsSync(userDataDir)) return {
|
|
3481
3481
|
moved: false,
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { M as getActivePluginRegistry, o as createSubsystemLogger } from "./entry.js";
|
|
3
3
|
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-D-jRCY0d.js";
|
|
4
4
|
import { i as loadConfig } from "./config-DHBLS1Hl.js";
|
|
5
|
-
import { y as loadSymiPlugins } from "./subagent-registry-
|
|
5
|
+
import { y as loadSymiPlugins } from "./subagent-registry-Du9P0G2U.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 { _t as loadSymiPlugins } from "./reply-
|
|
2
|
+
import { _t as loadSymiPlugins } from "./reply-SBi_U7P7.js";
|
|
3
3
|
import { d as getActivePluginRegistry } from "./registry-Cja8eT7G.js";
|
|
4
4
|
import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
|
|
5
5
|
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-C_0eELjb.js";
|
|
2
2
|
import { f as readWebSelfId, o as getWebAuthAgeMs, r as resolveWhatsAppAccount } from "./accounts-D9zGZU5t.js";
|
|
3
|
-
import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-
|
|
3
|
+
import { E as enqueueSystemEvent, G as resolveMentionGating, W as shouldAckReactionForWhatsApp, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, _ as resolveEnvelopeFormatOptions, c as computeBackoff, d as formatDurationPrecise, f as dispatchReplyWithBufferedBlockDispatcher, g as formatInboundEnvelope, h as resolveInboundDebounceMs, ht as createDedupeCache, l as sleepWithAbort, m as createInboundDebouncer, n as normalizeGroupActivation, nt as buildMentionRegexes, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as buildPairingReply, v as hasControlCommand, y as shouldComputeCommandAuthorized } from "./reply-C4mijdMZ.js";
|
|
4
4
|
import { A as normalizeE164, B as toWhatsappJid, K as logVerbose, N as resolveJidToE164, O as isSelfChatMode, R as sleep, Y as shouldLogVerbose, k as jidToE164, s as normalizeChatChannelId, tt as getChildLogger, x as clamp } from "./registry--_pGht6S.js";
|
|
5
5
|
import { n as loadConfig } from "./config-DDkdiUOR.js";
|
|
6
6
|
import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
|