@symerian/symi 3.0.20 → 3.0.21
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/{audio-preflight-BaCdNfrk.js → audio-preflight-D7BVT-ls.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{chrome-UfmVM0xR.js → chrome-B5CO2vB5.js} +7 -7
- package/dist/{deliver-BqXdac6W.js → deliver-CrwjsDwv.js} +1 -1
- package/dist/extensionAPI.js +7 -7
- package/dist/{image-DIWsXYcW.js → image-Csu7WcLW.js} +1 -1
- package/dist/{manager-DW3SxcPr.js → manager-BkkVjTO8.js} +1 -1
- package/dist/{pi-embedded-BNch0U5F.js → pi-embedded-Dhp64z5l.js} +16 -16
- package/dist/{pi-embedded-helpers-IkHl02JF.js → pi-embedded-helpers-840E4hop.js} +4 -4
- package/dist/{pw-ai-nMkA-oDJ.js → pw-ai-CBgJf_RR.js} +1 -1
- package/dist/{runner-DNEC58JI.js → runner-BbFKo1ne.js} +1 -1
- package/dist/{synthesis-BWAr0sZ9.js → synthesis-DoEM0E8_.js} +7 -7
- package/dist/{web-7a-m_UxL.js → web-BYXJn-Ps.js} +7 -7
- package/package.json +1 -1
- package/extensions/imessage/index.ts +0 -17
- package/extensions/imessage/node_modules/.bin/symi +0 -21
- package/extensions/imessage/package.json +0 -15
- package/extensions/imessage/src/channel.outbound.test.ts +0 -66
- package/extensions/imessage/src/channel.ts +0 -298
- package/extensions/imessage/src/runtime.ts +0 -14
- package/extensions/imessage/symi.plugin.json +0 -9
- package/extensions/line/index.ts +0 -19
- package/extensions/line/node_modules/.bin/symi +0 -21
- package/extensions/line/package.json +0 -30
- package/extensions/line/src/card-command.ts +0 -344
- package/extensions/line/src/channel.logout.test.ts +0 -133
- package/extensions/line/src/channel.sendPayload.test.ts +0 -312
- package/extensions/line/src/channel.startup.test.ts +0 -133
- package/extensions/line/src/channel.ts +0 -801
- package/extensions/line/src/runtime.ts +0 -14
- package/extensions/line/symi.plugin.json +0 -9
- package/extensions/signal/index.ts +0 -17
- package/extensions/signal/node_modules/.bin/symi +0 -21
- package/extensions/signal/package.json +0 -15
- package/extensions/signal/src/channel.ts +0 -302
- package/extensions/signal/src/runtime.ts +0 -14
- package/extensions/signal/symi.plugin.json +0 -9
- package/extensions/telegram/index.ts +0 -17
- package/extensions/telegram/node_modules/.bin/symi +0 -21
- package/extensions/telegram/package.json +0 -15
- package/extensions/telegram/src/channel.test.ts +0 -125
- package/extensions/telegram/src/channel.ts +0 -560
- package/extensions/telegram/src/runtime.ts +0 -14
- package/extensions/telegram/symi.plugin.json +0 -9
- package/extensions/whatsapp/index.ts +0 -17
- package/extensions/whatsapp/node_modules/.bin/symi +0 -21
- package/extensions/whatsapp/package.json +0 -15
- package/extensions/whatsapp/src/channel.ts +0 -465
- package/extensions/whatsapp/src/resolve-target.test.ts +0 -170
- package/extensions/whatsapp/src/runtime.ts +0 -14
- package/extensions/whatsapp/symi.plugin.json +0 -9
|
@@ -12,20 +12,20 @@ import "./thinking-BPC3suuL.js";
|
|
|
12
12
|
import "./image-ops-BLN6SguT.js";
|
|
13
13
|
import "./pi-model-discovery-DZrt2PIy.js";
|
|
14
14
|
import "./message-channel-BGdf4mO-.js";
|
|
15
|
-
import "./pi-embedded-helpers-
|
|
15
|
+
import "./pi-embedded-helpers-840E4hop.js";
|
|
16
16
|
import "./config-CM7_yRfD.js";
|
|
17
17
|
import "./manifest-registry-B4bkFgdZ.js";
|
|
18
|
-
import "./chrome-
|
|
18
|
+
import "./chrome-B5CO2vB5.js";
|
|
19
19
|
import "./skills-BipI9f8B.js";
|
|
20
20
|
import "./redact-Bcq1snj9.js";
|
|
21
21
|
import "./errors-C2nBLmDT.js";
|
|
22
22
|
import "./ssrf-CQMi5Tnq.js";
|
|
23
23
|
import "./paths-CM0XImQQ.js";
|
|
24
24
|
import "./tool-images-CEdNTYf6.js";
|
|
25
|
-
import "./image-
|
|
25
|
+
import "./image-Csu7WcLW.js";
|
|
26
26
|
import "./gemini-auth-DlLAjm-e.js";
|
|
27
27
|
import "./local-roots-DOhdoDO9.js";
|
|
28
|
-
import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-
|
|
28
|
+
import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-BbFKo1ne.js";
|
|
29
29
|
|
|
30
30
|
//#region src/media-understanding/audio-preflight.ts
|
|
31
31
|
/**
|
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
5135c092b47945bf66642428479b96c975f2d1257f84de9ecab217995ff2ed5a
|
|
@@ -10,7 +10,7 @@ import fs$1 from "node:fs/promises";
|
|
|
10
10
|
import { execFileSync, spawn } from "node:child_process";
|
|
11
11
|
import net from "node:net";
|
|
12
12
|
import { createServer } from "node:http";
|
|
13
|
-
import WebSocket, { WebSocketServer } from "ws";
|
|
13
|
+
import WebSocket$1, { WebSocketServer } from "ws";
|
|
14
14
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
15
15
|
|
|
16
16
|
//#region src/browser/constants.ts
|
|
@@ -178,7 +178,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
178
178
|
let nextExtensionId = 1;
|
|
179
179
|
const sendToExtension = async (payload) => {
|
|
180
180
|
const ws = extensionWs;
|
|
181
|
-
if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
|
|
181
|
+
if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
|
|
182
182
|
ws.send(JSON.stringify(payload));
|
|
183
183
|
return await new Promise((resolve, reject) => {
|
|
184
184
|
const timer = setTimeout(() => {
|
|
@@ -195,12 +195,12 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
195
195
|
const broadcastToCdpClients = (evt) => {
|
|
196
196
|
const msg = JSON.stringify(evt);
|
|
197
197
|
for (const ws of cdpClients) {
|
|
198
|
-
if (ws.readyState !== WebSocket.OPEN) continue;
|
|
198
|
+
if (ws.readyState !== WebSocket$1.OPEN) continue;
|
|
199
199
|
ws.send(msg);
|
|
200
200
|
}
|
|
201
201
|
};
|
|
202
202
|
const sendResponseToCdp = (ws, res) => {
|
|
203
|
-
if (ws.readyState !== WebSocket.OPEN) return;
|
|
203
|
+
if (ws.readyState !== WebSocket$1.OPEN) return;
|
|
204
204
|
ws.send(JSON.stringify(res));
|
|
205
205
|
};
|
|
206
206
|
const ensureTargetEventsForClient = (ws, mode) => {
|
|
@@ -425,7 +425,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
425
425
|
wssExtension.on("connection", (ws) => {
|
|
426
426
|
extensionWs = ws;
|
|
427
427
|
const ping = setInterval(() => {
|
|
428
|
-
if (ws.readyState !== WebSocket.OPEN) return;
|
|
428
|
+
if (ws.readyState !== WebSocket$1.OPEN) return;
|
|
429
429
|
ws.send(JSON.stringify({ method: "ping" }));
|
|
430
430
|
}, 5e3);
|
|
431
431
|
ws.on("message", (data) => {
|
|
@@ -743,7 +743,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
|
|
|
743
743
|
}
|
|
744
744
|
async function withCdpSocket(wsUrl, fn, opts) {
|
|
745
745
|
const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
|
|
746
|
-
const ws = new WebSocket(wsUrl, {
|
|
746
|
+
const ws = new WebSocket$1(wsUrl, {
|
|
747
747
|
handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
|
|
748
748
|
...Object.keys(headers).length ? { headers } : {}
|
|
749
749
|
});
|
|
@@ -1637,7 +1637,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
|
|
|
1637
1637
|
async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
|
|
1638
1638
|
return await new Promise((resolve) => {
|
|
1639
1639
|
const headers = getHeadersWithAuth(wsUrl);
|
|
1640
|
-
const ws = new WebSocket(wsUrl, {
|
|
1640
|
+
const ws = new WebSocket$1(wsUrl, {
|
|
1641
1641
|
handshakeTimeout: timeoutMs,
|
|
1642
1642
|
...Object.keys(headers).length ? { headers } : {}
|
|
1643
1643
|
});
|
|
@@ -7,7 +7,7 @@ import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-DuaBc9
|
|
|
7
7
|
import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DKxtNfL9.js";
|
|
8
8
|
import { C as resolveSignalAccount } from "./thinking-BPC3suuL.js";
|
|
9
9
|
import { x as mediaKindFromMime } from "./image-ops-BLN6SguT.js";
|
|
10
|
-
import { Dt as saveMediaBuffer, L as appendAssistantMessageToSessionTranscript, R as resolveMirroredTranscriptText } from "./pi-embedded-helpers-
|
|
10
|
+
import { Dt as saveMediaBuffer, L as appendAssistantMessageToSessionTranscript, R as resolveMirroredTranscriptText } from "./pi-embedded-helpers-840E4hop.js";
|
|
11
11
|
import { n as loadConfig } from "./config-CM7_yRfD.js";
|
|
12
12
|
import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-BF8FTuAr.js";
|
|
13
13
|
import { n as resolveMarkdownTableMode } from "./markdown-tables-C4FB_lUY.js";
|
package/dist/extensionAPI.js
CHANGED
|
@@ -7,30 +7,30 @@ import { a as resolveAgentIdentity } from "./reply-prefix-GXv1Iroa.js";
|
|
|
7
7
|
import "./github-copilot-token-BbsJ0Qbo.js";
|
|
8
8
|
import "./env-Dubyv93k.js";
|
|
9
9
|
import "./tokens-DuaBc9v7.js";
|
|
10
|
-
import { M as resolveAgentTimeoutMs, m as runEmbeddedPiAgent } from "./pi-embedded-
|
|
10
|
+
import { M as resolveAgentTimeoutMs, m as runEmbeddedPiAgent } from "./pi-embedded-Dhp64z5l.js";
|
|
11
11
|
import "./accounts-Cwv1OPM9.js";
|
|
12
12
|
import "./plugins-DKxtNfL9.js";
|
|
13
13
|
import "./bindings-Dzv5Zjq5.js";
|
|
14
14
|
import "./replies-4QMRftPk.js";
|
|
15
|
-
import "./deliver-
|
|
15
|
+
import "./deliver-CrwjsDwv.js";
|
|
16
16
|
import "./diagnostic-N2nzKeLM.js";
|
|
17
17
|
import "./diagnostic-session-state-DmrztgHU.js";
|
|
18
18
|
import "./thinking-BPC3suuL.js";
|
|
19
19
|
import "./image-ops-BLN6SguT.js";
|
|
20
20
|
import "./pi-model-discovery-DZrt2PIy.js";
|
|
21
21
|
import "./message-channel-BGdf4mO-.js";
|
|
22
|
-
import { B as loadSessionStore, U as saveSessionStore } from "./pi-embedded-helpers-
|
|
22
|
+
import { B as loadSessionStore, U as saveSessionStore } from "./pi-embedded-helpers-840E4hop.js";
|
|
23
23
|
import "./config-CM7_yRfD.js";
|
|
24
24
|
import "./manifest-registry-B4bkFgdZ.js";
|
|
25
|
-
import "./chrome-
|
|
25
|
+
import "./chrome-B5CO2vB5.js";
|
|
26
26
|
import "./skills-BipI9f8B.js";
|
|
27
27
|
import "./redact-Bcq1snj9.js";
|
|
28
28
|
import "./errors-C2nBLmDT.js";
|
|
29
29
|
import "./ssrf-CQMi5Tnq.js";
|
|
30
30
|
import { n as resolveSessionFilePath, s as resolveStorePath } from "./paths-CM0XImQQ.js";
|
|
31
31
|
import "./tool-images-CEdNTYf6.js";
|
|
32
|
-
import "./image-
|
|
33
|
-
import "./manager-
|
|
32
|
+
import "./image-Csu7WcLW.js";
|
|
33
|
+
import "./manager-BkkVjTO8.js";
|
|
34
34
|
import "./gemini-auth-DlLAjm-e.js";
|
|
35
35
|
import "./sqlite-CYC5VeY8.js";
|
|
36
36
|
import "./target-errors-DiPTkfjX.js";
|
|
@@ -41,7 +41,7 @@ import "./ir-C-HBRBUO.js";
|
|
|
41
41
|
import "./render-2Ztmr_V0.js";
|
|
42
42
|
import "./commands-registry-B3FzaXuK.js";
|
|
43
43
|
import "./skill-commands-_oLVTcAO.js";
|
|
44
|
-
import "./runner-
|
|
44
|
+
import "./runner-BbFKo1ne.js";
|
|
45
45
|
import "./active-listener-BvGU_5O3.js";
|
|
46
46
|
import "./resolve-route-Bfw6KMf-.js";
|
|
47
47
|
import "./pi-auth-json-BGgztpkV.js";
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { E as isRecord, F as shortenHomeInString } from "./registry-CD0UNMSJ.js";
|
|
3
3
|
import { C as requireApiKey, W as resolveSymiAgentDir, Y as normalizeSecretInput, _ as resolveImplicitCopilotProvider, g as resolveImplicitBedrockProvider, h as normalizeProviders, v as resolveImplicitProviders, x as getApiKeyForModel } from "./model-selection-DKlWqTkR.js";
|
|
4
4
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DZrt2PIy.js";
|
|
5
|
-
import { M as sanitizeUserFacingText } from "./pi-embedded-helpers-
|
|
5
|
+
import { M as sanitizeUserFacingText } from "./pi-embedded-helpers-840E4hop.js";
|
|
6
6
|
import { n as loadConfig } from "./config-CM7_yRfD.js";
|
|
7
7
|
import { n as redactToolDetail } from "./redact-Bcq1snj9.js";
|
|
8
8
|
import path from "node:path";
|
|
@@ -4045,7 +4045,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
4045
4045
|
* to bypass the min-interval guard (CLI use).
|
|
4046
4046
|
*/
|
|
4047
4047
|
async runL3CycleIfDue(params) {
|
|
4048
|
-
const [{ runL3Cycle, runL3CycleIfDue }, { createSynthesizer }] = await Promise.all([import("./consolidate-DGRcfY_m.js"), import("./synthesis-
|
|
4048
|
+
const [{ runL3Cycle, runL3CycleIfDue }, { createSynthesizer }] = await Promise.all([import("./consolidate-DGRcfY_m.js"), import("./synthesis-DoEM0E8_.js")]);
|
|
4049
4049
|
const synthesize = createSynthesizer({
|
|
4050
4050
|
cfg: this.cfg,
|
|
4051
4051
|
agentId: this.agentId,
|
|
@@ -13,17 +13,17 @@ import { t as normalizeChatType } from "./chat-type-BKe459rw.js";
|
|
|
13
13
|
import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExists, r as getWebAuthAgeMs, t as resolveWhatsAppAccount } from "./accounts-Cwv1OPM9.js";
|
|
14
14
|
import { a as normalizeWhatsAppTarget, c as listTelegramAccountIds, d as resolveSlackAccount, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackBotToken, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAppToken, r as normalizeChannelId$1, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken } from "./plugins-DKxtNfL9.js";
|
|
15
15
|
import { a as sendMessageSlack, c as parseSlackBlocksInput, d as parseSlackTarget, f as resolveSlackChannelId, i as resolveSlackThreadTs, l as validateSlackBlocksArray, n as deliverReplies$3, o as createSlackWebClient, s as resolveSlackWebClientOptions, t as createSlackReplyDeliveryPlan, u as buildSlackBlocksFallbackText } from "./replies-4QMRftPk.js";
|
|
16
|
-
import { S as initializeGlobalHookRunner, _ as MEDIA_TOKEN_RE, a as sendReadReceiptSignal, b as resolveFetch, c as signalCheck, d as resolveOutboundAttachmentFromUrl, f as buildTargetResolverSignature, g as parseReplyDirectives, h as throwIfAborted, i as sendMessageSignal, l as signalRpcRequest, m as normalizeTargetForProvider, o as sendTypingSignal, p as normalizeChannelTargetInput, r as normalizeReplyPayloadsForDelivery, s as resolveSignalRpcContext, t as deliverOutboundPayloads, u as streamSignalEvents, v as splitMediaFromOutput, x as getGlobalHookRunner, y as parseInlineDirectives$1 } from "./deliver-
|
|
16
|
+
import { S as initializeGlobalHookRunner, _ as MEDIA_TOKEN_RE, a as sendReadReceiptSignal, b as resolveFetch, c as signalCheck, d as resolveOutboundAttachmentFromUrl, f as buildTargetResolverSignature, g as parseReplyDirectives, h as throwIfAborted, i as sendMessageSignal, l as signalRpcRequest, m as normalizeTargetForProvider, o as sendTypingSignal, p as normalizeChannelTargetInput, r as normalizeReplyPayloadsForDelivery, s as resolveSignalRpcContext, t as deliverOutboundPayloads, u as streamSignalEvents, v as splitMediaFromOutput, x as getGlobalHookRunner, y as parseInlineDirectives$1 } from "./deliver-CrwjsDwv.js";
|
|
17
17
|
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, o as logMessageQueued, p as isDiagnosticsEnabled, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-N2nzKeLM.js";
|
|
18
18
|
import { r as getDiagnosticSessionState } from "./diagnostic-session-state-DmrztgHU.js";
|
|
19
19
|
import { C as resolveSignalAccount, S as listEnabledSignalAccounts, _ as resolveIMessageAccount, a as normalizeReasoningLevel, b as normalizeStringEntries, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeAtHashSlug, x as normalizeStringEntriesLower, y as normalizeHyphenSlug } from "./thinking-BPC3suuL.js";
|
|
20
20
|
import { d as detectMime, f as extensionForMime, g as isGifMedia, i as getImageMetadata, m as imageMimeFromFormat, p as getFileExtension, s as resizeToJpeg, v as normalizeMimeType$1, x as mediaKindFromMime, y as MAX_IMAGE_BYTES } from "./image-ops-BLN6SguT.js";
|
|
21
21
|
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DZrt2PIy.js";
|
|
22
22
|
import { a as listDeliverableMessageChannels, c as GATEWAY_CLIENT_IDS, i as isMarkdownCapableMessageChannel, l as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as normalizeMessageChannel, r as isInternalMessageChannel, s as resolveGatewayMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_NAMES } from "./message-channel-BGdf4mO-.js";
|
|
23
|
-
import { $ as normalizeSessionDeliveryFields, A as parseImageDimensionError, At as getBridgeAuthForPort, B as loadSessionStore, Bt as resolveToolProfilePolicy, C as isFailoverAssistantError, Ct as registerBrowserRoutes, D as isRawApiErrorPayload, Dt as saveMediaBuffer, E as isRateLimitAssistantError, Et as getMediaDir, F as resolveSandboxRuntimeStatus, Ft as collectExplicitAllowlist, G as updateSessionStore, Gt as ensureSessionHeader, H as recordSessionMetaFromInbound, Ht as compileGlobPatterns, I as extractDeliveryInfo, It as expandPolicyWithPluginGroups, J as resolveCacheTtlMs$1, Jt as sanitizeGoogleTurnOrdering, K as updateSessionStoreEntry, Kt as resolveBootstrapMaxChars, L as appendAssistantMessageToSessionTranscript, Lt as expandToolGroups, M as sanitizeUserFacingText, Mt as resolveBrowserControlAuth, N as ensureSandboxWorkspaceForSession, Nt as applyOwnerOnlyToolPolicy, O as isTimeoutErrorMessage, Ot as DEFAULT_UPLOAD_DIR, P as resolveSandboxContext, Pt as buildPluginToolGroups, Q as normalizeDeliveryContext, Rt as mergeAlsoAllowPolicy, S as isContextOverflowError, St as createBrowserRouteContext, T as isLikelyContextOverflowError, Tt as resolveProfile, Ut as matchesAnyGlobPattern, V as readSessionUpdatedAt, Vt as stripPluginOnlyAllowlist, W as updateLastRoute, Wt as buildBootstrapContextFiles, X as deliveryContextKey, Y as deliveryContextFromSession, Z as mergeDeliveryContext, _ as getApiErrorPayloadFingerprint, _t as resolveMainSessionKey, a as normalizeTextForComparison, at as applyInputProvenanceToUserMessage, b as isCloudCodeAssistFormatError, bt as acquireSessionWriteLock, c as extractToolResultId, ct as resolveSessionKey, d as isGoogleModelApi, dt as resolveSessionResetPolicy, et as archiveSessionTranscripts, f as BILLING_ERROR_USER_MESSAGE, ft as resolveSessionResetType, g as formatRawAssistantErrorForUi, gt as canonicalizeMainSessionAlias, h as formatBillingErrorMessage, ht as resolveFreshSessionTotalTokens, i as isMessagingToolDuplicateNormalized, it as INPUT_PROVENANCE_KIND_VALUES, j as parseImageSizeError, jt as ensureBrowserControlAuth, k as isTransientHttpError, kt as resolveExistingPathsWithinRoot, l as downgradeOpenAIReasoningBlocks, lt as evaluateSessionFreshness, m as formatAssistantErrorText, mt as DEFAULT_RESET_TRIGGERS, n as validateGeminiTurns, nt as countToolResults, o as sanitizeSessionMessagesImages, ot as hasInterSessionUserProvenance, p as classifyFailoverReason, pt as resolveThreadFlag, q as isCacheEnabled, qt as resolveBootstrapTotalMaxChars, r as pickFallbackThinkingLevel, rt as extractToolCallNames, s as extractToolCallsFromAssistant, st as normalizeInputProvenance, t as validateAnthropicTurns, tt as capArrayByJsonBytes, u as isAntigravityClaude, ut as resolveChannelResetConfig, v as isAuthAssistantError, vt as deriveSessionMetaPatch, w as isFailoverErrorMessage, wt as resolveBrowserConfig, x as isCompactionFailureError, xt as resolveSessionLockMaxHoldFromTimeout, y as isBillingAssistantError, yt as resolveGroupSessionKey, z as resolveAndPersistSessionFile, zt as normalizeToolName } from "./pi-embedded-helpers-
|
|
23
|
+
import { $ as normalizeSessionDeliveryFields, A as parseImageDimensionError, At as getBridgeAuthForPort, B as loadSessionStore, Bt as resolveToolProfilePolicy, C as isFailoverAssistantError, Ct as registerBrowserRoutes, D as isRawApiErrorPayload, Dt as saveMediaBuffer, E as isRateLimitAssistantError, Et as getMediaDir, F as resolveSandboxRuntimeStatus, Ft as collectExplicitAllowlist, G as updateSessionStore, Gt as ensureSessionHeader, H as recordSessionMetaFromInbound, Ht as compileGlobPatterns, I as extractDeliveryInfo, It as expandPolicyWithPluginGroups, J as resolveCacheTtlMs$1, Jt as sanitizeGoogleTurnOrdering, K as updateSessionStoreEntry, Kt as resolveBootstrapMaxChars, L as appendAssistantMessageToSessionTranscript, Lt as expandToolGroups, M as sanitizeUserFacingText, Mt as resolveBrowserControlAuth, N as ensureSandboxWorkspaceForSession, Nt as applyOwnerOnlyToolPolicy, O as isTimeoutErrorMessage, Ot as DEFAULT_UPLOAD_DIR, P as resolveSandboxContext, Pt as buildPluginToolGroups, Q as normalizeDeliveryContext, Rt as mergeAlsoAllowPolicy, S as isContextOverflowError, St as createBrowserRouteContext, T as isLikelyContextOverflowError, Tt as resolveProfile, Ut as matchesAnyGlobPattern, V as readSessionUpdatedAt, Vt as stripPluginOnlyAllowlist, W as updateLastRoute, Wt as buildBootstrapContextFiles, X as deliveryContextKey, Y as deliveryContextFromSession, Z as mergeDeliveryContext, _ as getApiErrorPayloadFingerprint, _t as resolveMainSessionKey, a as normalizeTextForComparison, at as applyInputProvenanceToUserMessage, b as isCloudCodeAssistFormatError, bt as acquireSessionWriteLock, c as extractToolResultId, ct as resolveSessionKey, d as isGoogleModelApi, dt as resolveSessionResetPolicy, et as archiveSessionTranscripts, f as BILLING_ERROR_USER_MESSAGE, ft as resolveSessionResetType, g as formatRawAssistantErrorForUi, gt as canonicalizeMainSessionAlias, h as formatBillingErrorMessage, ht as resolveFreshSessionTotalTokens, i as isMessagingToolDuplicateNormalized, it as INPUT_PROVENANCE_KIND_VALUES, j as parseImageSizeError, jt as ensureBrowserControlAuth, k as isTransientHttpError, kt as resolveExistingPathsWithinRoot, l as downgradeOpenAIReasoningBlocks, lt as evaluateSessionFreshness, m as formatAssistantErrorText, mt as DEFAULT_RESET_TRIGGERS, n as validateGeminiTurns, nt as countToolResults, o as sanitizeSessionMessagesImages, ot as hasInterSessionUserProvenance, p as classifyFailoverReason, pt as resolveThreadFlag, q as isCacheEnabled, qt as resolveBootstrapTotalMaxChars, r as pickFallbackThinkingLevel, rt as extractToolCallNames, s as extractToolCallsFromAssistant, st as normalizeInputProvenance, t as validateAnthropicTurns, tt as capArrayByJsonBytes, u as isAntigravityClaude, ut as resolveChannelResetConfig, v as isAuthAssistantError, vt as deriveSessionMetaPatch, w as isFailoverErrorMessage, wt as resolveBrowserConfig, x as isCompactionFailureError, xt as resolveSessionLockMaxHoldFromTimeout, y as isBillingAssistantError, yt as resolveGroupSessionKey, z as resolveAndPersistSessionFile, zt as normalizeToolName } from "./pi-embedded-helpers-840E4hop.js";
|
|
24
24
|
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-CM7_yRfD.js";
|
|
25
25
|
import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverSymiPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-B4bkFgdZ.js";
|
|
26
|
-
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-
|
|
26
|
+
import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-B5CO2vB5.js";
|
|
27
27
|
import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, h as parseFrontmatterBlock, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-BipI9f8B.js";
|
|
28
28
|
import { t as redactSensitiveText } from "./redact-Bcq1snj9.js";
|
|
29
29
|
import { n as formatErrorMessage, r as formatUncaughtError, t as extractErrorCode } from "./errors-C2nBLmDT.js";
|
|
@@ -32,8 +32,8 @@ import { n as resolveConversationLabel } from "./conversation-label-WOU117K9.js"
|
|
|
32
32
|
import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-CM0XImQQ.js";
|
|
33
33
|
import { t as emitSessionTranscriptUpdate } from "./transcript-events-BBh3Gsrx.js";
|
|
34
34
|
import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-CEdNTYf6.js";
|
|
35
|
-
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-
|
|
36
|
-
import { a as resolveOllamaBaseUrl, i as probeOllamaEmbeddingModels, n as resolveRetryConfig, o as resolveMemorySearchConfig, r as retryAsync } from "./manager-
|
|
35
|
+
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-Csu7WcLW.js";
|
|
36
|
+
import { a as resolveOllamaBaseUrl, i as probeOllamaEmbeddingModels, n as resolveRetryConfig, o as resolveMemorySearchConfig, r as retryAsync } from "./manager-BkkVjTO8.js";
|
|
37
37
|
import { c as normalizeExtraMemoryPaths, f as runTasksWithConcurrency, s as listMemoryFiles } from "./internal-n_TWOMto.js";
|
|
38
38
|
import { a as createActionGate, c as jsonResult, d as readStringArrayParam, f as readStringOrNumberParam, l as readNumberParam, n as missingTargetError, o as imageResult, p as readStringParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readReactionParams } from "./target-errors-DiPTkfjX.js";
|
|
39
39
|
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-BF8FTuAr.js";
|
|
@@ -45,7 +45,7 @@ import { t as renderMarkdownWithMarkers } from "./render-2Ztmr_V0.js";
|
|
|
45
45
|
import { a as listChatCommandsForConfig, c as normalizeCommandBody, d as shouldHandleTextCommands, f as isCommandFlagEnabled, g as resolveNativeSkillsEnabled, h as resolveNativeCommandsEnabled, i as listChatCommands, l as parseCommandArgs, m as isRestartEnabled, o as listNativeCommandSpecs, p as isNativeCommandsExplicitlyDisabled, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgMenu } from "./commands-registry-B3FzaXuK.js";
|
|
46
46
|
import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile$1, 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-_oLVTcAO.js";
|
|
47
47
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-D8AKttSx.js";
|
|
48
|
-
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-
|
|
48
|
+
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-BbFKo1ne.js";
|
|
49
49
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-BEwD1hbR.js";
|
|
50
50
|
import { a as normalizePollInput, i as convertMarkdownTables, t as getActiveWebListener } from "./active-listener-BvGU_5O3.js";
|
|
51
51
|
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Bfw6KMf-.js";
|
|
@@ -70,7 +70,7 @@ import AjvPkg from "ajv";
|
|
|
70
70
|
import process$1 from "node:process";
|
|
71
71
|
import * as net$1 from "node:net";
|
|
72
72
|
import { createServer } from "node:http";
|
|
73
|
-
import { WebSocket
|
|
73
|
+
import { WebSocket } from "ws";
|
|
74
74
|
import { Buffer as Buffer$1 } from "node:buffer";
|
|
75
75
|
import { createJiti } from "jiti";
|
|
76
76
|
import { Type } from "@sinclair/typebox";
|
|
@@ -3657,7 +3657,7 @@ async function getMemorySearchManager(params) {
|
|
|
3657
3657
|
const wrapper = new FallbackMemoryManager({
|
|
3658
3658
|
primary,
|
|
3659
3659
|
fallbackFactory: async () => {
|
|
3660
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
3660
|
+
const { MemoryIndexManager } = await import("./manager-BkkVjTO8.js").then((n) => n.t);
|
|
3661
3661
|
return await MemoryIndexManager.get(params);
|
|
3662
3662
|
}
|
|
3663
3663
|
}, () => QMD_MANAGER_CACHE.delete(cacheKey));
|
|
@@ -3670,7 +3670,7 @@ async function getMemorySearchManager(params) {
|
|
|
3670
3670
|
}
|
|
3671
3671
|
}
|
|
3672
3672
|
try {
|
|
3673
|
-
const { MemoryIndexManager } = await import("./manager-
|
|
3673
|
+
const { MemoryIndexManager } = await import("./manager-BkkVjTO8.js").then((n) => n.t);
|
|
3674
3674
|
return { manager: await MemoryIndexManager.get(params) };
|
|
3675
3675
|
} catch (err) {
|
|
3676
3676
|
return {
|
|
@@ -6063,7 +6063,7 @@ var GatewayClient = class {
|
|
|
6063
6063
|
if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
|
|
6064
6064
|
});
|
|
6065
6065
|
}
|
|
6066
|
-
this.ws = new WebSocket
|
|
6066
|
+
this.ws = new WebSocket(url, wsOptions);
|
|
6067
6067
|
this.ws.on("open", () => {
|
|
6068
6068
|
if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
|
|
6069
6069
|
const tlsError = this.validateTlsFingerprint();
|
|
@@ -6282,7 +6282,7 @@ var GatewayClient = class {
|
|
|
6282
6282
|
return null;
|
|
6283
6283
|
}
|
|
6284
6284
|
async request(method, params, opts) {
|
|
6285
|
-
if (!this.ws || this.ws.readyState !== WebSocket
|
|
6285
|
+
if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
|
|
6286
6286
|
const id = randomUUID();
|
|
6287
6287
|
const frame = {
|
|
6288
6288
|
type: "req",
|
|
@@ -7509,7 +7509,7 @@ async function routeReply(params) {
|
|
|
7509
7509
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
7510
7510
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
7511
7511
|
try {
|
|
7512
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
7512
|
+
const { deliverOutboundPayloads } = await import("./deliver-CrwjsDwv.js").then((n) => n.n);
|
|
7513
7513
|
return {
|
|
7514
7514
|
ok: true,
|
|
7515
7515
|
messageId: (await deliverOutboundPayloads({
|
|
@@ -39158,7 +39158,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
39158
39158
|
return;
|
|
39159
39159
|
}
|
|
39160
39160
|
try {
|
|
39161
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
39161
|
+
const { deliverOutboundPayloads } = await import("./deliver-CrwjsDwv.js").then((n) => n.n);
|
|
39162
39162
|
await deliverOutboundPayloads({
|
|
39163
39163
|
cfg: params.cfg,
|
|
39164
39164
|
channel,
|
|
@@ -53019,7 +53019,7 @@ async function describeStickerImage(params) {
|
|
|
53019
53019
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
53020
53020
|
try {
|
|
53021
53021
|
const buffer = await fs$1.readFile(imagePath);
|
|
53022
|
-
const { describeImageWithModel } = await import("./image-
|
|
53022
|
+
const { describeImageWithModel } = await import("./image-Csu7WcLW.js").then((n) => n.n);
|
|
53023
53023
|
return (await describeImageWithModel({
|
|
53024
53024
|
buffer,
|
|
53025
53025
|
fileName: "sticker.webp",
|
|
@@ -64494,7 +64494,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
|
|
|
64494
64494
|
const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
|
|
64495
64495
|
let preflightTranscript;
|
|
64496
64496
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
|
|
64497
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
64497
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-D7BVT-ls.js");
|
|
64498
64498
|
preflightTranscript = await transcribeFirstAudio({
|
|
64499
64499
|
ctx: {
|
|
64500
64500
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -66651,7 +66651,7 @@ function loadWebLoginQr() {
|
|
|
66651
66651
|
return webLoginQrPromise;
|
|
66652
66652
|
}
|
|
66653
66653
|
function loadWebChannel() {
|
|
66654
|
-
webChannelPromise ??= import("./web-
|
|
66654
|
+
webChannelPromise ??= import("./web-BYXJn-Ps.js");
|
|
66655
66655
|
return webChannelPromise;
|
|
66656
66656
|
}
|
|
66657
66657
|
function loadWhatsAppActions() {
|
|
@@ -11,7 +11,7 @@ import { d as getChannelDock, o as normalizeThinkLevel, y as normalizeHyphenSlug
|
|
|
11
11
|
import { c as SafeOpenError, d as detectMime, f as extensionForMime, i as getImageMetadata, l as openFileWithinRoot, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-BLN6SguT.js";
|
|
12
12
|
import { a as listDeliverableMessageChannels, o as normalizeMessageChannel } from "./message-channel-BGdf4mO-.js";
|
|
13
13
|
import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-CM7_yRfD.js";
|
|
14
|
-
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-
|
|
14
|
+
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-B5CO2vB5.js";
|
|
15
15
|
import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-BipI9f8B.js";
|
|
16
16
|
import { n as formatErrorMessage, t as extractErrorCode } from "./errors-C2nBLmDT.js";
|
|
17
17
|
import { t as SsrFBlockedError } from "./ssrf-CQMi5Tnq.js";
|
|
@@ -937,7 +937,7 @@ function isModuleNotFoundError(err) {
|
|
|
937
937
|
}
|
|
938
938
|
async function loadPwAiModule(mode) {
|
|
939
939
|
try {
|
|
940
|
-
return await import("./pw-ai-
|
|
940
|
+
return await import("./pw-ai-CBgJf_RR.js");
|
|
941
941
|
} catch (err) {
|
|
942
942
|
if (mode === "soft") return null;
|
|
943
943
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -3534,11 +3534,11 @@ function createProfileContext(opts, profile) {
|
|
|
3534
3534
|
const userDataDir = resolveSymiUserDataDir(profile.name);
|
|
3535
3535
|
const profileState = getProfileState();
|
|
3536
3536
|
if (await isHttpReachable(300) && !profileState.running) try {
|
|
3537
|
-
await (await import("./pw-ai-
|
|
3537
|
+
await (await import("./pw-ai-CBgJf_RR.js")).closePlaywrightBrowserConnection();
|
|
3538
3538
|
} catch {}
|
|
3539
3539
|
if (profileState.running) await stopRunningBrowser();
|
|
3540
3540
|
try {
|
|
3541
|
-
await (await import("./pw-ai-
|
|
3541
|
+
await (await import("./pw-ai-CBgJf_RR.js")).closePlaywrightBrowserConnection();
|
|
3542
3542
|
} catch {}
|
|
3543
3543
|
if (!fs.existsSync(userDataDir)) return {
|
|
3544
3544
|
moved: false,
|
|
@@ -7,7 +7,7 @@ import "./github-copilot-token-BbsJ0Qbo.js";
|
|
|
7
7
|
import { r as formatCliCommand } from "./env-Dubyv93k.js";
|
|
8
8
|
import "./config-CM7_yRfD.js";
|
|
9
9
|
import "./manifest-registry-B4bkFgdZ.js";
|
|
10
|
-
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-
|
|
10
|
+
import { _ as fetchJson, b as withCdpSocket, d as normalizeCdpWsUrl, g as appendCdpPath, h as withBrowserNavigationPolicy, m as assertBrowserNavigationAllowed, t as getChromeWebSocketUrl, u as formatAriaSnapshot, y as getHeadersWithAuth } from "./chrome-B5CO2vB5.js";
|
|
11
11
|
import "./redact-Bcq1snj9.js";
|
|
12
12
|
import { n as formatErrorMessage } from "./errors-C2nBLmDT.js";
|
|
13
13
|
import "./ssrf-CQMi5Tnq.js";
|
|
@@ -4,7 +4,7 @@ import { C as requireApiKey, W as resolveSymiAgentDir, m as normalizeGoogleModel
|
|
|
4
4
|
import { t as normalizeChatType } from "./chat-type-BKe459rw.js";
|
|
5
5
|
import { _ as kindFromMime, d as detectMime, h as isAudioFileName, p as getFileExtension } from "./image-ops-BLN6SguT.js";
|
|
6
6
|
import { d as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, f as isInboundPathAllowed, m as resolveIMessageAttachmentRoots, n as loadConfig, p as mergeInboundPathRoots } from "./config-CM7_yRfD.js";
|
|
7
|
-
import { S as ensureSymiModelsJson, t as describeImageWithModel } from "./image-
|
|
7
|
+
import { S as ensureSymiModelsJson, t as describeImageWithModel } from "./image-Csu7WcLW.js";
|
|
8
8
|
import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation, t as parseGeminiAuth } from "./gemini-auth-DlLAjm-e.js";
|
|
9
9
|
import { n as fetchWithTimeout } from "./fetch-timeout-BVa_Fx_T.js";
|
|
10
10
|
import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, r as MediaFetchError } from "./local-roots-DOhdoDO9.js";
|
|
@@ -7,30 +7,30 @@ import "./reply-prefix-GXv1Iroa.js";
|
|
|
7
7
|
import "./github-copilot-token-BbsJ0Qbo.js";
|
|
8
8
|
import "./env-Dubyv93k.js";
|
|
9
9
|
import "./tokens-DuaBc9v7.js";
|
|
10
|
-
import { p as runAgentTurn } from "./pi-embedded-
|
|
10
|
+
import { p as runAgentTurn } from "./pi-embedded-Dhp64z5l.js";
|
|
11
11
|
import "./accounts-Cwv1OPM9.js";
|
|
12
12
|
import "./plugins-DKxtNfL9.js";
|
|
13
13
|
import "./bindings-Dzv5Zjq5.js";
|
|
14
14
|
import "./replies-4QMRftPk.js";
|
|
15
|
-
import "./deliver-
|
|
15
|
+
import "./deliver-CrwjsDwv.js";
|
|
16
16
|
import "./diagnostic-N2nzKeLM.js";
|
|
17
17
|
import "./diagnostic-session-state-DmrztgHU.js";
|
|
18
18
|
import "./thinking-BPC3suuL.js";
|
|
19
19
|
import "./image-ops-BLN6SguT.js";
|
|
20
20
|
import "./pi-model-discovery-DZrt2PIy.js";
|
|
21
21
|
import "./message-channel-BGdf4mO-.js";
|
|
22
|
-
import "./pi-embedded-helpers-
|
|
22
|
+
import "./pi-embedded-helpers-840E4hop.js";
|
|
23
23
|
import "./config-CM7_yRfD.js";
|
|
24
24
|
import "./manifest-registry-B4bkFgdZ.js";
|
|
25
|
-
import "./chrome-
|
|
25
|
+
import "./chrome-B5CO2vB5.js";
|
|
26
26
|
import "./skills-BipI9f8B.js";
|
|
27
27
|
import "./redact-Bcq1snj9.js";
|
|
28
28
|
import "./errors-C2nBLmDT.js";
|
|
29
29
|
import "./ssrf-CQMi5Tnq.js";
|
|
30
30
|
import "./paths-CM0XImQQ.js";
|
|
31
31
|
import "./tool-images-CEdNTYf6.js";
|
|
32
|
-
import "./image-
|
|
33
|
-
import "./manager-
|
|
32
|
+
import "./image-Csu7WcLW.js";
|
|
33
|
+
import "./manager-BkkVjTO8.js";
|
|
34
34
|
import "./gemini-auth-DlLAjm-e.js";
|
|
35
35
|
import "./sqlite-CYC5VeY8.js";
|
|
36
36
|
import "./target-errors-DiPTkfjX.js";
|
|
@@ -41,7 +41,7 @@ import "./ir-C-HBRBUO.js";
|
|
|
41
41
|
import "./render-2Ztmr_V0.js";
|
|
42
42
|
import "./commands-registry-B3FzaXuK.js";
|
|
43
43
|
import "./skill-commands-_oLVTcAO.js";
|
|
44
|
-
import "./runner-
|
|
44
|
+
import "./runner-BbFKo1ne.js";
|
|
45
45
|
import "./active-listener-BvGU_5O3.js";
|
|
46
46
|
import "./resolve-route-Bfw6KMf-.js";
|
|
47
47
|
import "./pi-auth-json-BGgztpkV.js";
|
|
@@ -8,30 +8,30 @@ import { c as resolveIdentityNamePrefix, l as resolveMessagePrefix, t as createR
|
|
|
8
8
|
import "./github-copilot-token-BbsJ0Qbo.js";
|
|
9
9
|
import { r as formatCliCommand } from "./env-Dubyv93k.js";
|
|
10
10
|
import "./tokens-DuaBc9v7.js";
|
|
11
|
-
import { A as normalizeMentionText, C as createInboundDebouncer, D as hasControlCommand, E as resolveEnvelopeFormatOptions, O as shouldComputeCommandAuthorized, S as parseActivationCommand, T as formatInboundEnvelope, _ as formatDurationPrecise, a as DEFAULT_GROUP_HISTORY_LIMIT, b as enqueueSystemEvent, c as recordChannelActivity, f as createDedupeCache, g as toLocationContext, h as formatLocationText, i as sleepWithAbort, k as buildMentionRegexes, l as shouldAckReactionForWhatsApp, n as buildPairingReply, o as buildHistoryContextFromEntries, r as computeBackoff, s as recordPendingHistoryEntryIfEnabled, t as resolveMentionGating, u as dispatchReplyWithBufferedBlockDispatcher, v as readChannelAllowFromStore, w as resolveInboundDebounceMs, x as normalizeGroupActivation, y as upsertChannelPairingRequest } from "./pi-embedded-
|
|
11
|
+
import { A as normalizeMentionText, C as createInboundDebouncer, D as hasControlCommand, E as resolveEnvelopeFormatOptions, O as shouldComputeCommandAuthorized, S as parseActivationCommand, T as formatInboundEnvelope, _ as formatDurationPrecise, a as DEFAULT_GROUP_HISTORY_LIMIT, b as enqueueSystemEvent, c as recordChannelActivity, f as createDedupeCache, g as toLocationContext, h as formatLocationText, i as sleepWithAbort, k as buildMentionRegexes, l as shouldAckReactionForWhatsApp, n as buildPairingReply, o as buildHistoryContextFromEntries, r as computeBackoff, s as recordPendingHistoryEntryIfEnabled, t as resolveMentionGating, u as dispatchReplyWithBufferedBlockDispatcher, v as readChannelAllowFromStore, w as resolveInboundDebounceMs, x as normalizeGroupActivation, y as upsertChannelPairingRequest } from "./pi-embedded-Dhp64z5l.js";
|
|
12
12
|
import { i as logWebSelfId, l as readWebSelfId, n as WA_WEB_AUTH_DIR, p as webAuthExists, r as getWebAuthAgeMs, s as pickWebChannel, t as resolveWhatsAppAccount } from "./accounts-Cwv1OPM9.js";
|
|
13
13
|
import "./plugins-DKxtNfL9.js";
|
|
14
14
|
import "./bindings-Dzv5Zjq5.js";
|
|
15
15
|
import "./replies-4QMRftPk.js";
|
|
16
|
-
import "./deliver-
|
|
16
|
+
import "./deliver-CrwjsDwv.js";
|
|
17
17
|
import "./diagnostic-N2nzKeLM.js";
|
|
18
18
|
import "./diagnostic-session-state-DmrztgHU.js";
|
|
19
19
|
import { h as resolveChannelGroupRequireMention, m as resolveChannelGroupPolicy } from "./thinking-BPC3suuL.js";
|
|
20
20
|
import "./image-ops-BLN6SguT.js";
|
|
21
21
|
import "./pi-model-discovery-DZrt2PIy.js";
|
|
22
22
|
import "./message-channel-BGdf4mO-.js";
|
|
23
|
-
import { B as loadSessionStore, Dt as saveMediaBuffer, H as recordSessionMetaFromInbound, V as readSessionUpdatedAt, W as updateLastRoute, yt as resolveGroupSessionKey } from "./pi-embedded-helpers-
|
|
23
|
+
import { B as loadSessionStore, Dt as saveMediaBuffer, H as recordSessionMetaFromInbound, V as readSessionUpdatedAt, W as updateLastRoute, yt as resolveGroupSessionKey } from "./pi-embedded-helpers-840E4hop.js";
|
|
24
24
|
import { n as loadConfig } from "./config-CM7_yRfD.js";
|
|
25
25
|
import "./manifest-registry-B4bkFgdZ.js";
|
|
26
|
-
import "./chrome-
|
|
26
|
+
import "./chrome-B5CO2vB5.js";
|
|
27
27
|
import "./skills-BipI9f8B.js";
|
|
28
28
|
import "./redact-Bcq1snj9.js";
|
|
29
29
|
import "./errors-C2nBLmDT.js";
|
|
30
30
|
import "./ssrf-CQMi5Tnq.js";
|
|
31
31
|
import { s as resolveStorePath } from "./paths-CM0XImQQ.js";
|
|
32
32
|
import "./tool-images-CEdNTYf6.js";
|
|
33
|
-
import "./image-
|
|
34
|
-
import "./manager-
|
|
33
|
+
import "./image-Csu7WcLW.js";
|
|
34
|
+
import "./manager-BkkVjTO8.js";
|
|
35
35
|
import "./gemini-auth-DlLAjm-e.js";
|
|
36
36
|
import "./sqlite-CYC5VeY8.js";
|
|
37
37
|
import "./target-errors-DiPTkfjX.js";
|
|
@@ -43,7 +43,7 @@ import "./render-2Ztmr_V0.js";
|
|
|
43
43
|
import "./commands-registry-B3FzaXuK.js";
|
|
44
44
|
import "./skill-commands-_oLVTcAO.js";
|
|
45
45
|
import { t as finalizeInboundContext } from "./inbound-context-D8AKttSx.js";
|
|
46
|
-
import { p as registerUnhandledRejectionHandler } from "./runner-
|
|
46
|
+
import { p as registerUnhandledRejectionHandler } from "./runner-BbFKo1ne.js";
|
|
47
47
|
import { i as convertMarkdownTables, r as setActiveWebListener } from "./active-listener-BvGU_5O3.js";
|
|
48
48
|
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Bfw6KMf-.js";
|
|
49
49
|
import "./pi-auth-json-BGgztpkV.js";
|
package/package.json
CHANGED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { SymiPluginApi } from "symi/plugin-sdk";
|
|
2
|
-
import { emptyPluginConfigSchema } from "symi/plugin-sdk";
|
|
3
|
-
import { imessagePlugin } from "./src/channel.js";
|
|
4
|
-
import { setIMessageRuntime } from "./src/runtime.js";
|
|
5
|
-
|
|
6
|
-
const plugin = {
|
|
7
|
-
id: "imessage",
|
|
8
|
-
name: "iMessage",
|
|
9
|
-
description: "iMessage channel plugin",
|
|
10
|
-
configSchema: emptyPluginConfigSchema(),
|
|
11
|
-
register(api: SymiPluginApi) {
|
|
12
|
-
setIMessageRuntime(api.runtime);
|
|
13
|
-
api.registerChannel({ plugin: imessagePlugin });
|
|
14
|
-
},
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export default plugin;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
-
|
|
4
|
-
case `uname` in
|
|
5
|
-
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
-
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
-
basedir=`cygpath -w "$basedir"`
|
|
8
|
-
fi
|
|
9
|
-
;;
|
|
10
|
-
esac
|
|
11
|
-
|
|
12
|
-
if [ -z "$NODE_PATH" ]; then
|
|
13
|
-
export NODE_PATH="/home/symi/projects/symi/node_modules:/home/symi/projects/node_modules:/home/symi/node_modules:/home/node_modules:/node_modules:/home/symi/projects/symi/node_modules/.pnpm/node_modules"
|
|
14
|
-
else
|
|
15
|
-
export NODE_PATH="/home/symi/projects/symi/node_modules:/home/symi/projects/node_modules:/home/symi/node_modules:/home/node_modules:/node_modules:/home/symi/projects/symi/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
-
fi
|
|
17
|
-
if [ -x "$basedir/node" ]; then
|
|
18
|
-
exec "$basedir/node" "$basedir/../@symerian/symi/symi.mjs" "$@"
|
|
19
|
-
else
|
|
20
|
-
exec node "$basedir/../@symerian/symi/symi.mjs" "$@"
|
|
21
|
-
fi
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@symi/imessage",
|
|
3
|
-
"version": "3.0.9",
|
|
4
|
-
"private": true,
|
|
5
|
-
"description": "Symi iMessage channel plugin",
|
|
6
|
-
"type": "module",
|
|
7
|
-
"devDependencies": {
|
|
8
|
-
"@symerian/symi": "workspace:*"
|
|
9
|
-
},
|
|
10
|
-
"symi": {
|
|
11
|
-
"extensions": [
|
|
12
|
-
"./index.ts"
|
|
13
|
-
]
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it, vi } from "vitest";
|
|
2
|
-
import { imessagePlugin } from "./channel.js";
|
|
3
|
-
|
|
4
|
-
describe("imessagePlugin outbound", () => {
|
|
5
|
-
const cfg = {
|
|
6
|
-
channels: {
|
|
7
|
-
imessage: {
|
|
8
|
-
mediaMaxMb: 3,
|
|
9
|
-
},
|
|
10
|
-
},
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
it("forwards replyToId on direct sendText adapter path", async () => {
|
|
14
|
-
const sendIMessage = vi.fn().mockResolvedValue({ messageId: "m-text" });
|
|
15
|
-
const sendText = imessagePlugin.outbound?.sendText;
|
|
16
|
-
expect(sendText).toBeDefined();
|
|
17
|
-
|
|
18
|
-
const result = await sendText!({
|
|
19
|
-
cfg,
|
|
20
|
-
to: "chat_id:12",
|
|
21
|
-
text: "hello",
|
|
22
|
-
accountId: "default",
|
|
23
|
-
replyToId: "reply-1",
|
|
24
|
-
deps: { sendIMessage },
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
expect(sendIMessage).toHaveBeenCalledWith(
|
|
28
|
-
"chat_id:12",
|
|
29
|
-
"hello",
|
|
30
|
-
expect.objectContaining({
|
|
31
|
-
accountId: "default",
|
|
32
|
-
replyToId: "reply-1",
|
|
33
|
-
maxBytes: 3 * 1024 * 1024,
|
|
34
|
-
}),
|
|
35
|
-
);
|
|
36
|
-
expect(result).toEqual({ channel: "imessage", messageId: "m-text" });
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
it("forwards replyToId on direct sendMedia adapter path", async () => {
|
|
40
|
-
const sendIMessage = vi.fn().mockResolvedValue({ messageId: "m-media" });
|
|
41
|
-
const sendMedia = imessagePlugin.outbound?.sendMedia;
|
|
42
|
-
expect(sendMedia).toBeDefined();
|
|
43
|
-
|
|
44
|
-
const result = await sendMedia!({
|
|
45
|
-
cfg,
|
|
46
|
-
to: "chat_id:77",
|
|
47
|
-
text: "caption",
|
|
48
|
-
mediaUrl: "https://example.com/pic.png",
|
|
49
|
-
accountId: "acct-1",
|
|
50
|
-
replyToId: "reply-2",
|
|
51
|
-
deps: { sendIMessage },
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
expect(sendIMessage).toHaveBeenCalledWith(
|
|
55
|
-
"chat_id:77",
|
|
56
|
-
"caption",
|
|
57
|
-
expect.objectContaining({
|
|
58
|
-
mediaUrl: "https://example.com/pic.png",
|
|
59
|
-
accountId: "acct-1",
|
|
60
|
-
replyToId: "reply-2",
|
|
61
|
-
maxBytes: 3 * 1024 * 1024,
|
|
62
|
-
}),
|
|
63
|
-
);
|
|
64
|
-
expect(result).toEqual({ channel: "imessage", messageId: "m-media" });
|
|
65
|
-
});
|
|
66
|
-
});
|