New:Socket for Asana Is Now Available.Learn more
Get Started

@shadowob/shared

Package Overview
Dependencies
Maintainers
1
Versions
86
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@shadowob/shared - npm Package Compare versions

Comparing version
1.1.68
to
1.1.69
+923
dist/chunk-6CPRNAO7.js
// src/desktop-ipc/protocol.ts
import { z as z3 } from "zod";
// src/desktop-ipc/rpc.ts
import { z } from "zod";
function ipcProcedure(definition = {
input: ipcVoidInputSchema,
output: ipcVoidOutputSchema
}) {
return definition;
}
function defineIPCService(service) {
return service;
}
function defineIPCProtocol(protocol) {
return protocol;
}
function ipcProcedureChannel(serviceName, methodName, procedure) {
return procedure?.channel ?? `desktop-rpc:${serviceName}.${methodName}`;
}
function parseIPCProcedureInput(procedure, input) {
return procedure.input.parse(input);
}
function parseIPCProcedureOutput(procedure, output) {
return procedure.output.parse(output);
}
var ipcVoidInputSchema = z.void();
var ipcVoidOutputSchema = z.void();
// src/desktop-ipc/schema.ts
import { z as z2 } from "zod";
var ipcObjectSchema = z2.preprocess(
(value) => value && typeof value === "object" && !Array.isArray(value) ? value : {},
z2.object({}).passthrough()
);
var optionalStringSchema = z2.string().optional();
var optionalBooleanSchema = z2.boolean().optional();
var optionalTrimmedStringSchema = z2.string().trim().transform((value) => value || void 0).optional();
function requiredTrimmedStringSchema(field) {
return z2.string({ required_error: `Missing ${field}`, invalid_type_error: `Missing ${field}` }).trim().min(1, `Missing ${field}`);
}
var connectorStartSettingsSchema = ipcObjectSchema.pipe(
z2.object({
connectorApiKey: optionalStringSchema,
connectorComputerId: optionalStringSchema,
connectorAutoStart: optionalBooleanSchema,
connectorWorkDir: optionalStringSchema,
httpProxy: optionalStringSchema,
httpsProxy: optionalStringSchema,
serverBaseUrl: optionalStringSchema
})
);
var forceOptionsSchema = ipcObjectSchema.pipe(
z2.object({
force: optionalBooleanSchema
})
);
var desktopWindowFullscreenInputSchema = z2.boolean();
var desktopWindowChromeStateSchema = z2.object({
fullscreen: z2.boolean(),
maximized: z2.boolean()
});
var runtimeIdInputSchema = ipcObjectSchema.pipe(
z2.object({
runtimeId: requiredTrimmedStringSchema("runtime id")
})
);
var createConnectorBuddySchema = ipcObjectSchema.pipe(
z2.object({
runtimeId: requiredTrimmedStringSchema("runtime id"),
name: requiredTrimmedStringSchema("Buddy name"),
username: requiredTrimmedStringSchema("Buddy username"),
description: optionalTrimmedStringSchema,
avatarUrl: optionalTrimmedStringSchema.nullable().optional().transform((value) => value ?? null)
})
);
var connectorConnectionEnabledSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
enabled: z2.boolean().catch(false)
})
);
var connectorDeleteSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
deleteCloudBuddy: optionalBooleanSchema
})
);
var connectorWorkDirSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
workDir: optionalStringSchema
})
);
var desktopPetAssetSpriteSchema = z2.object({
src: z2.string(),
frame: z2.object({
width: z2.number(),
height: z2.number(),
count: z2.number(),
fps: z2.number()
}).optional(),
atlas: z2.object({
columns: z2.number(),
rows: z2.number(),
row: z2.number()
}).optional(),
loop: z2.boolean().optional()
}).passthrough();
var desktopPetAssetPackSchema = z2.object({
id: z2.string(),
version: z2.string().optional(),
spriteVersionNumber: z2.union([z2.literal(1), z2.literal(2)]).default(1),
displayName: z2.record(z2.string()),
description: z2.union([z2.record(z2.string()), z2.string()]).optional(),
spritesheetPath: z2.string(),
sprites: z2.record(desktopPetAssetSpriteSchema),
importedAt: z2.string(),
source: z2.enum(["local", "marketplace"]),
sourcePath: z2.string(),
marketplaceProductId: z2.string().optional(),
marketplaceEntitlementId: z2.string().optional(),
marketplacePaidFileId: z2.string().optional()
}).passthrough();
var desktopShortcutSettingsSchema = z2.object({
openCommunity: z2.string(),
togglePet: z2.string(),
petVoice: z2.string(),
petChat: z2.string(),
showNotifications: z2.string()
});
var desktopSettingsPatchSchema = ipcObjectSchema.pipe(
z2.object({
serverBaseUrl: z2.string().optional(),
httpProxy: z2.string().optional(),
httpsProxy: z2.string().optional(),
connectorApiKey: z2.string().optional(),
connectorComputerId: z2.string().optional(),
connectorAutoStart: z2.boolean().optional(),
connectorWorkDir: z2.string().optional(),
connectorBuddyWorkDirs: z2.record(z2.string()).optional(),
connectorDeletedConnectionIds: z2.array(z2.string()).optional(),
connectorRuntimeNotifications: z2.record(z2.boolean()).optional(),
ttsProvider: z2.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]).optional(),
asrProvider: z2.enum(["sherpa-local", "web-speech"]).optional(),
trayVisible: z2.boolean().optional(),
desktopPetVisible: z2.boolean().optional(),
desktopPetPacks: z2.array(z2.record(z2.unknown())).optional(),
desktopPetActivePackId: z2.string().optional(),
shortcuts: desktopShortcutSettingsSchema.partial().optional()
})
);
var optionalPathInputSchema = ipcObjectSchema.pipe(
z2.object({
path: optionalStringSchema
})
);
var petMarketplaceImportSchema = ipcObjectSchema.pipe(
z2.object({
entitlementId: optionalStringSchema,
fileId: requiredTrimmedStringSchema("paid file id"),
productId: optionalStringSchema
})
);
var petArchiveImportSchema = ipcObjectSchema.pipe(
z2.object({
name: z2.unknown().optional(),
data: z2.unknown().optional()
})
);
var packIdInputSchema = ipcObjectSchema.pipe(
z2.object({
packId: z2.string().optional().default("")
})
);
var startAgentSchema = z2.object({
name: z2.string().min(1).max(120),
scriptPath: z2.string().min(1),
args: z2.array(z2.string()).optional()
});
var agentProcessIdSchema = z2.string().min(1);
var desktopNotificationSchema = z2.object({
title: z2.string().min(1).max(200),
body: z2.string().max(2e3),
channelId: z2.string().optional(),
messageId: z2.string().optional(),
routePath: z2.string().optional(),
target: z2.enum(["community", "pet"]).optional()
});
var badgeCountSchema = z2.number().int().min(0).max(9999).catch(0);
var notificationModeSchema = z2.string().max(80);
var updateSettingsSchema = z2.object({
autoCheckOnLaunch: z2.boolean().optional(),
channel: z2.enum(["production", "beta"]).optional()
});
var downloadUpdateUrlSchema = z2.string().url();
var openAtLoginSchema = z2.boolean();
var voiceModelInstallSchema = ipcObjectSchema.pipe(
z2.object({
provider: z2.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]).optional()
})
);
var asrAcceptSchema = z2.object({
samples: z2.instanceof(ArrayBuffer),
sampleRate: z2.number().positive()
});
var speechTextSchema = z2.string().max(8e3);
var rendererLogSchema = z2.object({
scope: z2.string(),
payload: z2.unknown().optional()
}).passthrough();
var externalUrlSchema = z2.string();
var clipboardTextSchema = z2.string();
var readerOpenSchema = ipcObjectSchema.pipe(
z2.object({
url: z2.string().optional(),
title: z2.string().optional(),
useDefaultApp: z2.boolean().optional(),
attachmentId: z2.string().optional()
})
);
var readerIdInputSchema = ipcObjectSchema.pipe(
z2.object({
id: z2.string().optional().default("")
})
);
var selectDirectorySchema = ipcObjectSchema.pipe(
z2.object({
defaultPath: z2.string().optional()
})
);
var communityAuthSnapshotReasonSchema = z2.enum([
"startup",
"storage",
"sync",
"login",
"refresh",
"logout",
"settings",
"revoked"
]);
var communityAuthSnapshotSchema = ipcObjectSchema.pipe(
z2.object({
accessToken: z2.string().optional(),
refreshToken: z2.string().optional(),
reason: communityAuthSnapshotReasonSchema.optional().default("sync"),
sourceUrl: z2.string().optional()
})
);
var communityFetchJsonSchema = z2.object({
path: z2.string().min(1),
method: z2.string().optional(),
body: z2.unknown().optional(),
headers: z2.record(z2.string()).optional(),
optional: z2.boolean().optional()
});
var modelProxyStreamSchema = z2.object({
requestId: z2.string().min(1),
body: z2.record(z2.unknown())
});
function optionalStringValueFromPathInput(value, key) {
if (typeof value === "string") return value;
const parsed = ipcObjectSchema.pipe(z2.object({ [key]: z2.string().optional() })).parse(value);
return parsed[key];
}
var showCommunityInputSchema = z2.unknown().transform((value) => optionalStringValueFromPathInput(value, "path"));
var openCommunityLoginInputSchema = z2.unknown().transform(
(value) => optionalStringValueFromPathInput(value, "redirect") ?? "/discover"
);
var showSettingsInputSchema = z2.unknown().transform((value) => optionalStringValueFromPathInput(value, "tab"));
var petPanelModeSchema = z2.enum(["compact", "expanded"]);
var petWindowDragStartSchema = ipcObjectSchema.pipe(
z2.object({
pointerId: z2.number().optional(),
screenX: z2.number().optional(),
screenY: z2.number().optional()
})
);
var petWindowDragMoveSchema = ipcObjectSchema.pipe(
z2.object({
x: z2.number().optional(),
y: z2.number().optional(),
pointerId: z2.number().optional(),
screenX: z2.number().optional(),
screenY: z2.number().optional()
})
);
var petWindowPointerIdSchema = z2.number().optional();
var petWindowMouseInteractiveSchema = z2.boolean();
var petCursorPositionSchema = z2.object({
x: z2.number(),
y: z2.number()
});
var desktopIpcInvokeSchemas = {
"desktop:getSettings": void 0,
"desktop:setSettings": desktopSettingsPatchSchema,
"desktop:showNotification": desktopNotificationSchema,
"desktop:setBadgeCount": badgeCountSchema,
"desktop:setNotificationMode": notificationModeSchema,
"desktop:minimizeToTray": void 0,
"desktop:restoreTray": void 0,
"desktop:window:chrome-state": void 0,
"desktop:window:set-full-screen": desktopWindowFullscreenInputSchema,
"desktop:openExternal": externalUrlSchema,
"desktop:clipboard:writeText": clipboardTextSchema,
"desktop:openReader": readerOpenSchema,
"desktop:reader:getState": void 0,
"desktop:reader:activate": readerIdInputSchema,
"desktop:reader:close": readerIdInputSchema,
"desktop:reader:openDefault": readerIdInputSchema,
"desktop:selectDirectory": selectDirectorySchema,
"desktop:quit": void 0,
"desktop:getCommunityAuthToken": void 0,
"desktop:getCommunityAuthTokens": void 0,
"desktop:community:fetchJson": communityFetchJsonSchema,
"desktop:diagnostics:getSnapshot": void 0,
"desktop:diagnostics:exportLogs": void 0,
"desktop:showMainWindow": void 0,
"desktop:showCommunity": showCommunityInputSchema,
"desktop:openCommunityLogin": openCommunityLoginInputSchema,
"desktop:showCreateBuddy": void 0,
"desktop:showContextMenu": void 0,
"desktop:showSettings": showSettingsInputSchema,
"desktop:pet:show": void 0,
"desktop:pet:hide": void 0,
"desktop:pet:cursor-position": void 0,
"desktop:pet:panel-mode": petPanelModeSchema,
"desktop:pet:begin-window-drag": petWindowDragStartSchema,
"desktop:pet:move-window": petWindowDragMoveSchema,
"desktop:pet:end-window-drag": petWindowPointerIdSchema,
"desktop:pet:mouse-interactive": petWindowMouseInteractiveSchema,
"desktop:pet:modelProxyStream": modelProxyStreamSchema,
"desktop:pet:speak": speechTextSchema,
"desktop:pet:cancelSpeech": void 0,
"desktop:pet:voiceEngineStatus": void 0,
"desktop:pet:prewarmVoice": void 0,
"desktop:pet:installVoiceModel": voiceModelInstallSchema,
"desktop:pet:asrStart": void 0,
"desktop:pet:asrAccept": asrAcceptSchema,
"desktop:pet:asrStop": void 0,
"desktop:startAgent": startAgentSchema,
"desktop:stopAgent": agentProcessIdSchema,
"desktop:getAgentStatus": agentProcessIdSchema,
"desktop:listAgents": void 0,
"desktop:getVersion": void 0,
"desktop:checkForUpdate": void 0,
"desktop:getUpdateState": void 0,
"desktop:getUpdateSettings": void 0,
"desktop:setUpdateSettings": updateSettingsSchema,
"desktop:downloadUpdate": downloadUpdateUrlSchema,
"desktop:setOpenAtLogin": openAtLoginSchema,
"desktop:getOpenAtLogin": void 0,
"desktop:quitAndRestart": void 0,
"desktop:petAssets:importDirectory": optionalPathInputSchema,
"desktop:petAssets:importMarketplace": petMarketplaceImportSchema,
"desktop:petAssets:importArchiveBuffer": petArchiveImportSchema,
"desktop:petAssets:setActive": packIdInputSchema,
"desktop:petAssets:remove": packIdInputSchema,
"desktop:connector:getStatus": void 0,
"desktop:connector:start": connectorStartSettingsSchema,
"desktop:connector:stop": void 0,
"desktop:connector:scan": void 0,
"desktop:connector:scanRuntimes": forceOptionsSchema,
"desktop:connector:scanRuntimeSessions": forceOptionsSchema,
"desktop:connector:installRuntime": runtimeIdInputSchema,
"desktop:connector:createBuddy": createConnectorBuddySchema,
"desktop:connector:getConnections": void 0,
"desktop:connector:setConnectionEnabled": connectorConnectionEnabledSchema,
"desktop:connector:deleteConnection": connectorDeleteSchema,
"desktop:connector:setConnectionWorkDir": connectorWorkDirSchema,
"desktop:shortcuts:reload": void 0,
"desktop:shortcuts:suspend": void 0,
"desktop:shortcuts:resume": void 0
};
// src/desktop-ipc/protocol.ts
var desktopPlatformSchema = z3.enum([
"aix",
"android",
"darwin",
"freebsd",
"haiku",
"linux",
"openbsd",
"sunos",
"win32",
"cygwin",
"netbsd"
]);
var desktopRuntimeSettingsSnapshotSchema = z3.object({
serverBaseUrl: z3.string(),
httpProxy: z3.string(),
httpsProxy: z3.string(),
connectorApiKey: z3.string(),
connectorComputerId: z3.string(),
connectorAutoStart: z3.boolean(),
connectorWorkDir: z3.string(),
connectorBuddyWorkDirs: z3.record(z3.string()),
connectorRuntimeNotifications: z3.record(z3.boolean()),
ttsProvider: z3.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]),
asrProvider: z3.enum(["sherpa-local", "web-speech"]),
shortcuts: z3.object({
openCommunity: z3.string(),
togglePet: z3.string(),
petVoice: z3.string(),
petChat: z3.string(),
showNotifications: z3.string()
}),
trayVisible: z3.boolean(),
desktopPetVisible: z3.boolean(),
desktopPetActivePackId: z3.string(),
desktopPetPacks: z3.array(z3.unknown())
});
var readerResourceSnapshotSchema = z3.object({
id: z3.string(),
title: z3.string(),
sourceUrl: z3.string(),
displayAddress: z3.string(),
contentType: z3.string(),
fileName: z3.string(),
assetUrl: z3.string(),
createdAt: z3.number()
});
var readerStateSnapshotSchema = z3.object({
activeId: z3.string().nullable(),
tabs: z3.array(readerResourceSnapshotSchema)
});
var desktopUpdateChannelSchema = z3.enum(["production", "beta"]);
var desktopUpdateInfoSchema = z3.object({
hasUpdate: z3.boolean(),
version: z3.string(),
downloadUrl: z3.string(),
releaseNotes: z3.string(),
channel: desktopUpdateChannelSchema
});
var desktopUpdateStateSchema = z3.object({
status: z3.enum(["idle", "checking", "update-available", "up-to-date", "error"]),
checkedAt: z3.number().nullable(),
info: desktopUpdateInfoSchema.nullable(),
error: z3.string().nullable(),
channel: desktopUpdateChannelSchema
});
var desktopUpdateSettingsSchema = z3.object({
autoCheckOnLaunch: z3.boolean(),
channel: desktopUpdateChannelSchema
});
var desktopDiagnosticsSnapshotSchema = z3.object({
appName: z3.string(),
version: z3.string(),
platform: desktopPlatformSchema,
arch: z3.string(),
pid: z3.number(),
electron: z3.string(),
node: z3.string(),
buildId: z3.string(),
logFilePath: z3.string(),
logFileExists: z3.boolean(),
connector: z3.object({
serverBaseUrl: z3.string(),
cliPath: z3.string().nullable(),
cliBundled: z3.boolean(),
nodeBinary: z3.string(),
state: z3.unknown()
})
});
var desktopLogExportResultSchema = z3.object({
filePath: z3.string().nullable()
});
var voiceProviderStatusSchema = z3.object({
installed: z3.boolean(),
runtimeInstalled: z3.boolean().optional(),
modelInstalled: z3.boolean().optional(),
name: z3.string(),
sourceUrl: z3.string()
});
var voiceEngineStatusSchema = z3.object({
engine: z3.string(),
asrProvider: z3.enum(["sherpa-local", "web-speech"]),
ttsProvider: z3.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]),
nativeAddonAvailable: z3.boolean(),
modelRoot: z3.string(),
asr: voiceProviderStatusSchema,
tts: voiceProviderStatusSchema,
ttsProviders: z3.object({
system: voiceProviderStatusSchema,
"moss-tts-nano": voiceProviderStatusSchema,
"sherpa-local": voiceProviderStatusSchema,
voxcpm2: voiceProviderStatusSchema
})
});
var authTokensSchema = z3.object({
accessToken: z3.string(),
refreshToken: z3.string()
});
var agentStartResultSchema = z3.object({
id: z3.string(),
pid: z3.number().optional()
});
var agentStatusSchema = z3.object({
running: z3.boolean(),
name: z3.string().optional(),
pid: z3.number().optional(),
uptime: z3.number().optional()
});
var agentListSchema = z3.array(
z3.object({
id: z3.string(),
name: z3.string(),
pid: z3.number().optional(),
running: z3.boolean(),
uptime: z3.number()
})
);
var connectorScanOutputSchema = z3.object({
output: z3.string()
});
var petPanelModeResultSchema = z3.object({
stageOffsetY: z3.number()
});
var modelProxyStreamResultSchema = z3.object({
text: z3.string()
});
var okResultSchema = z3.object({
ok: z3.boolean()
});
var textResultSchema = z3.object({
text: z3.string()
});
var unknownResultSchema = z3.unknown();
var booleanResultSchema = z3.boolean();
var stringResultSchema = z3.string();
var nullableStringResultSchema = z3.string().nullable();
var legacyProcedure = (channel, input, output) => ipcProcedure({
channel,
input,
output
});
var legacyVoidProcedure = (channel) => legacyProcedure(channel, ipcVoidInputSchema, ipcVoidOutputSchema);
var desktopIpcProtocol = defineIPCProtocol({
app: defineIPCService({
getVersion: legacyProcedure("desktop:getVersion", ipcVoidInputSchema, stringResultSchema),
setOpenAtLogin: legacyProcedure(
"desktop:setOpenAtLogin",
openAtLoginSchema,
ipcVoidOutputSchema
),
getOpenAtLogin: legacyProcedure(
"desktop:getOpenAtLogin",
ipcVoidInputSchema,
booleanResultSchema
),
quitAndRestart: legacyProcedure(
"desktop:quitAndRestart",
ipcVoidInputSchema,
booleanResultSchema
)
}),
window: defineIPCService({
minimizeToTray: legacyVoidProcedure("desktop:minimizeToTray"),
restoreTray: legacyVoidProcedure("desktop:restoreTray"),
getChromeState: legacyProcedure(
"desktop:window:chrome-state",
ipcVoidInputSchema,
desktopWindowChromeStateSchema
),
setFullScreen: legacyProcedure(
"desktop:window:set-full-screen",
desktopWindowFullscreenInputSchema,
desktopWindowChromeStateSchema
),
openExternal: legacyProcedure("desktop:openExternal", externalUrlSchema, booleanResultSchema),
writeClipboardText: legacyProcedure(
"desktop:clipboard:writeText",
clipboardTextSchema,
booleanResultSchema
),
selectDirectory: legacyProcedure(
"desktop:selectDirectory",
selectDirectorySchema,
nullableStringResultSchema
),
quit: legacyVoidProcedure("desktop:quit"),
showMainWindow: legacyVoidProcedure("desktop:showMainWindow"),
showCommunity: legacyProcedure(
"desktop:showCommunity",
showCommunityInputSchema,
ipcVoidOutputSchema
),
openCommunityLogin: legacyProcedure(
"desktop:openCommunityLogin",
openCommunityLoginInputSchema,
booleanResultSchema
),
showCreateBuddy: legacyVoidProcedure("desktop:showCreateBuddy"),
showContextMenu: legacyVoidProcedure("desktop:showContextMenu"),
showSettings: legacyProcedure(
"desktop:showSettings",
showSettingsInputSchema,
ipcVoidOutputSchema
)
}),
settings: defineIPCService({
get: legacyProcedure(
"desktop:getSettings",
ipcVoidInputSchema,
desktopRuntimeSettingsSnapshotSchema
),
set: legacyProcedure(
"desktop:setSettings",
desktopSettingsPatchSchema,
desktopRuntimeSettingsSnapshotSchema
)
}),
notifications: defineIPCService({
show: legacyProcedure(
"desktop:showNotification",
desktopNotificationSchema,
ipcVoidOutputSchema
),
setBadgeCount: legacyProcedure("desktop:setBadgeCount", badgeCountSchema, ipcVoidOutputSchema),
setMode: legacyProcedure(
"desktop:setNotificationMode",
notificationModeSchema,
ipcVoidOutputSchema
)
}),
reader: defineIPCService({
open: legacyProcedure("desktop:openReader", readerOpenSchema, booleanResultSchema),
getState: legacyProcedure(
"desktop:reader:getState",
ipcVoidInputSchema,
readerStateSnapshotSchema
),
activate: legacyProcedure(
"desktop:reader:activate",
readerIdInputSchema,
readerStateSnapshotSchema
),
close: legacyProcedure("desktop:reader:close", readerIdInputSchema, readerStateSnapshotSchema),
openDefault: legacyProcedure(
"desktop:reader:openDefault",
readerIdInputSchema,
booleanResultSchema
)
}),
community: defineIPCService({
getAuthToken: legacyProcedure(
"desktop:getCommunityAuthToken",
ipcVoidInputSchema,
stringResultSchema
),
getAuthTokens: legacyProcedure(
"desktop:getCommunityAuthTokens",
ipcVoidInputSchema,
authTokensSchema
),
fetchJson: legacyProcedure(
"desktop:community:fetchJson",
communityFetchJsonSchema,
unknownResultSchema
)
}),
diagnostics: defineIPCService({
getSnapshot: ipcProcedure({
input: ipcVoidInputSchema,
output: desktopDiagnosticsSnapshotSchema
}),
exportLogs: ipcProcedure({
input: ipcVoidInputSchema,
output: desktopLogExportResultSchema
})
}),
petWindow: defineIPCService({
show: legacyVoidProcedure("desktop:pet:show"),
hide: legacyVoidProcedure("desktop:pet:hide"),
getCursorPosition: legacyProcedure(
"desktop:pet:cursor-position",
ipcVoidInputSchema,
petCursorPositionSchema
),
setPanelMode: legacyProcedure(
"desktop:pet:panel-mode",
petPanelModeSchema,
petPanelModeResultSchema
),
beginWindowDrag: legacyProcedure(
"desktop:pet:begin-window-drag",
petWindowDragStartSchema,
ipcVoidOutputSchema
),
moveWindow: legacyProcedure(
"desktop:pet:move-window",
petWindowDragMoveSchema,
ipcVoidOutputSchema
),
endWindowDrag: legacyProcedure(
"desktop:pet:end-window-drag",
petWindowPointerIdSchema,
ipcVoidOutputSchema
),
setMouseInteractive: legacyProcedure(
"desktop:pet:mouse-interactive",
petWindowMouseInteractiveSchema,
ipcVoidOutputSchema
)
}),
petModel: defineIPCService({
modelProxyStream: legacyProcedure(
"desktop:pet:modelProxyStream",
modelProxyStreamSchema,
modelProxyStreamResultSchema
)
}),
petVoice: defineIPCService({
speak: legacyProcedure("desktop:pet:speak", speechTextSchema, booleanResultSchema),
cancelSpeech: legacyVoidProcedure("desktop:pet:cancelSpeech"),
voiceEngineStatus: legacyProcedure(
"desktop:pet:voiceEngineStatus",
ipcVoidInputSchema,
voiceEngineStatusSchema
),
prewarmVoice: legacyProcedure(
"desktop:pet:prewarmVoice",
ipcVoidInputSchema,
booleanResultSchema
),
installVoiceModel: legacyProcedure(
"desktop:pet:installVoiceModel",
voiceModelInstallSchema,
voiceEngineStatusSchema
),
asrStart: legacyProcedure("desktop:pet:asrStart", ipcVoidInputSchema, okResultSchema),
asrAccept: legacyProcedure("desktop:pet:asrAccept", asrAcceptSchema, okResultSchema),
asrStop: legacyProcedure("desktop:pet:asrStop", ipcVoidInputSchema, textResultSchema)
}),
agents: defineIPCService({
start: legacyProcedure("desktop:startAgent", startAgentSchema, agentStartResultSchema),
stop: legacyProcedure("desktop:stopAgent", agentProcessIdSchema, ipcVoidOutputSchema),
getStatus: legacyProcedure("desktop:getAgentStatus", agentProcessIdSchema, agentStatusSchema),
list: legacyProcedure("desktop:listAgents", ipcVoidInputSchema, agentListSchema)
}),
updates: defineIPCService({
check: legacyProcedure("desktop:checkForUpdate", ipcVoidInputSchema, desktopUpdateInfoSchema),
getState: legacyProcedure(
"desktop:getUpdateState",
ipcVoidInputSchema,
desktopUpdateStateSchema
),
getSettings: legacyProcedure(
"desktop:getUpdateSettings",
ipcVoidInputSchema,
desktopUpdateSettingsSchema
),
setSettings: legacyProcedure(
"desktop:setUpdateSettings",
updateSettingsSchema,
desktopUpdateSettingsSchema
),
download: legacyProcedure(
"desktop:downloadUpdate",
downloadUpdateUrlSchema,
booleanResultSchema
)
}),
petAssets: defineIPCService({
importDirectory: legacyProcedure(
"desktop:petAssets:importDirectory",
optionalPathInputSchema,
unknownResultSchema
),
importMarketplace: legacyProcedure(
"desktop:petAssets:importMarketplace",
petMarketplaceImportSchema,
unknownResultSchema
),
importArchiveBuffer: legacyProcedure(
"desktop:petAssets:importArchiveBuffer",
petArchiveImportSchema,
unknownResultSchema
),
setActive: legacyProcedure(
"desktop:petAssets:setActive",
packIdInputSchema,
unknownResultSchema
),
remove: legacyProcedure("desktop:petAssets:remove", packIdInputSchema, unknownResultSchema)
}),
connector: defineIPCService({
getStatus: legacyProcedure(
"desktop:connector:getStatus",
ipcVoidInputSchema,
unknownResultSchema
),
start: legacyProcedure(
"desktop:connector:start",
connectorStartSettingsSchema,
unknownResultSchema
),
stop: legacyProcedure("desktop:connector:stop", ipcVoidInputSchema, unknownResultSchema),
scan: legacyProcedure("desktop:connector:scan", ipcVoidInputSchema, connectorScanOutputSchema),
scanRuntimes: legacyProcedure(
"desktop:connector:scanRuntimes",
forceOptionsSchema,
unknownResultSchema
),
scanRuntimeSessions: legacyProcedure(
"desktop:connector:scanRuntimeSessions",
forceOptionsSchema,
unknownResultSchema
),
installRuntime: legacyProcedure(
"desktop:connector:installRuntime",
runtimeIdInputSchema,
unknownResultSchema
),
createBuddy: legacyProcedure(
"desktop:connector:createBuddy",
createConnectorBuddySchema,
unknownResultSchema
),
getConnections: legacyProcedure(
"desktop:connector:getConnections",
ipcVoidInputSchema,
unknownResultSchema
),
setConnectionEnabled: legacyProcedure(
"desktop:connector:setConnectionEnabled",
connectorConnectionEnabledSchema,
unknownResultSchema
),
deleteConnection: legacyProcedure(
"desktop:connector:deleteConnection",
connectorDeleteSchema,
unknownResultSchema
),
setConnectionWorkDir: legacyProcedure(
"desktop:connector:setConnectionWorkDir",
connectorWorkDirSchema,
unknownResultSchema
),
getClipperStatus: legacyProcedure(
"desktop:connector:getClipperStatus",
ipcVoidInputSchema,
unknownResultSchema
),
startClipper: legacyProcedure(
"desktop:connector:startClipper",
ipcVoidInputSchema,
unknownResultSchema
),
stopClipper: legacyProcedure(
"desktop:connector:stopClipper",
ipcVoidInputSchema,
unknownResultSchema
),
syncClipperCommunitySession: legacyProcedure(
"desktop:connector:syncClipperCommunitySession",
forceOptionsSchema,
unknownResultSchema
)
}),
shortcuts: defineIPCService({
reload: legacyProcedure("desktop:shortcuts:reload", ipcVoidInputSchema, unknownResultSchema),
suspend: legacyProcedure("desktop:shortcuts:suspend", ipcVoidInputSchema, unknownResultSchema),
resume: legacyProcedure("desktop:shortcuts:resume", ipcVoidInputSchema, unknownResultSchema)
})
});
export {
ipcProcedure,
defineIPCService,
defineIPCProtocol,
ipcProcedureChannel,
parseIPCProcedureInput,
parseIPCProcedureOutput,
ipcVoidInputSchema,
ipcVoidOutputSchema,
connectorStartSettingsSchema,
forceOptionsSchema,
desktopWindowFullscreenInputSchema,
desktopWindowChromeStateSchema,
runtimeIdInputSchema,
createConnectorBuddySchema,
connectorConnectionEnabledSchema,
connectorDeleteSchema,
connectorWorkDirSchema,
desktopSettingsPatchSchema,
optionalPathInputSchema,
petMarketplaceImportSchema,
petArchiveImportSchema,
packIdInputSchema,
startAgentSchema,
agentProcessIdSchema,
desktopNotificationSchema,
badgeCountSchema,
notificationModeSchema,
updateSettingsSchema,
downloadUpdateUrlSchema,
openAtLoginSchema,
voiceModelInstallSchema,
asrAcceptSchema,
speechTextSchema,
rendererLogSchema,
externalUrlSchema,
clipboardTextSchema,
readerOpenSchema,
readerIdInputSchema,
selectDirectorySchema,
communityAuthSnapshotSchema,
communityFetchJsonSchema,
modelProxyStreamSchema,
showCommunityInputSchema,
openCommunityLoginInputSchema,
showSettingsInputSchema,
petPanelModeSchema,
petWindowDragStartSchema,
petWindowDragMoveSchema,
petWindowPointerIdSchema,
petWindowMouseInteractiveSchema,
petCursorPositionSchema,
desktopIpcInvokeSchemas,
desktopIpcProtocol
};
+24
-0

@@ -224,2 +224,3 @@ "use strict";

asrProvider: import_zod2.z.enum(["sherpa-local", "web-speech"]).optional(),
trayVisible: import_zod2.z.boolean().optional(),
desktopPetVisible: import_zod2.z.boolean().optional(),

@@ -379,2 +380,3 @@ desktopPetPacks: import_zod2.z.array(import_zod2.z.record(import_zod2.z.unknown())).optional(),

"desktop:minimizeToTray": void 0,
"desktop:restoreTray": void 0,
"desktop:window:chrome-state": void 0,

@@ -487,2 +489,3 @@ "desktop:window:set-full-screen": desktopWindowFullscreenInputSchema,

}),
trayVisible: import_zod3.z.boolean(),
desktopPetVisible: import_zod3.z.boolean(),

@@ -638,2 +641,3 @@ desktopPetActivePackId: import_zod3.z.string(),

minimizeToTray: legacyVoidProcedure("desktop:minimizeToTray"),
restoreTray: legacyVoidProcedure("desktop:restoreTray"),
getChromeState: legacyProcedure(

@@ -918,2 +922,22 @@ "desktop:window:chrome-state",

unknownResultSchema
),
getClipperStatus: legacyProcedure(
"desktop:connector:getClipperStatus",
ipcVoidInputSchema,
unknownResultSchema
),
startClipper: legacyProcedure(
"desktop:connector:startClipper",
ipcVoidInputSchema,
unknownResultSchema
),
stopClipper: legacyProcedure(
"desktop:connector:stopClipper",
ipcVoidInputSchema,
unknownResultSchema
),
syncClipperCommunitySession: legacyProcedure(
"desktop:connector:syncClipperCommunitySession",
forceOptionsSchema,
unknownResultSchema
)

@@ -920,0 +944,0 @@ }),

+1
-1

@@ -55,3 +55,3 @@ import {

voiceModelInstallSchema
} from "../chunk-NWO4VES5.js";
} from "../chunk-6CPRNAO7.js";
export {

@@ -58,0 +58,0 @@ agentProcessIdSchema,

@@ -60,3 +60,3 @@ import {

voiceModelInstallSchema
} from "./chunk-NWO4VES5.js";
} from "./chunk-6CPRNAO7.js";
import {

@@ -63,0 +63,0 @@ DEFAULT_HOMEPLAY_CATALOG,

{
"name": "@shadowob/shared",
"version": "1.1.68",
"version": "1.1.69",
"type": "module",

@@ -5,0 +5,0 @@ "main": "./dist/index.js",

// src/desktop-ipc/protocol.ts
import { z as z3 } from "zod";
// src/desktop-ipc/rpc.ts
import { z } from "zod";
function ipcProcedure(definition = {
input: ipcVoidInputSchema,
output: ipcVoidOutputSchema
}) {
return definition;
}
function defineIPCService(service) {
return service;
}
function defineIPCProtocol(protocol) {
return protocol;
}
function ipcProcedureChannel(serviceName, methodName, procedure) {
return procedure?.channel ?? `desktop-rpc:${serviceName}.${methodName}`;
}
function parseIPCProcedureInput(procedure, input) {
return procedure.input.parse(input);
}
function parseIPCProcedureOutput(procedure, output) {
return procedure.output.parse(output);
}
var ipcVoidInputSchema = z.void();
var ipcVoidOutputSchema = z.void();
// src/desktop-ipc/schema.ts
import { z as z2 } from "zod";
var ipcObjectSchema = z2.preprocess(
(value) => value && typeof value === "object" && !Array.isArray(value) ? value : {},
z2.object({}).passthrough()
);
var optionalStringSchema = z2.string().optional();
var optionalBooleanSchema = z2.boolean().optional();
var optionalTrimmedStringSchema = z2.string().trim().transform((value) => value || void 0).optional();
function requiredTrimmedStringSchema(field) {
return z2.string({ required_error: `Missing ${field}`, invalid_type_error: `Missing ${field}` }).trim().min(1, `Missing ${field}`);
}
var connectorStartSettingsSchema = ipcObjectSchema.pipe(
z2.object({
connectorApiKey: optionalStringSchema,
connectorComputerId: optionalStringSchema,
connectorAutoStart: optionalBooleanSchema,
connectorWorkDir: optionalStringSchema,
httpProxy: optionalStringSchema,
httpsProxy: optionalStringSchema,
serverBaseUrl: optionalStringSchema
})
);
var forceOptionsSchema = ipcObjectSchema.pipe(
z2.object({
force: optionalBooleanSchema
})
);
var desktopWindowFullscreenInputSchema = z2.boolean();
var desktopWindowChromeStateSchema = z2.object({
fullscreen: z2.boolean(),
maximized: z2.boolean()
});
var runtimeIdInputSchema = ipcObjectSchema.pipe(
z2.object({
runtimeId: requiredTrimmedStringSchema("runtime id")
})
);
var createConnectorBuddySchema = ipcObjectSchema.pipe(
z2.object({
runtimeId: requiredTrimmedStringSchema("runtime id"),
name: requiredTrimmedStringSchema("Buddy name"),
username: requiredTrimmedStringSchema("Buddy username"),
description: optionalTrimmedStringSchema,
avatarUrl: optionalTrimmedStringSchema.nullable().optional().transform((value) => value ?? null)
})
);
var connectorConnectionEnabledSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
enabled: z2.boolean().catch(false)
})
);
var connectorDeleteSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
deleteCloudBuddy: optionalBooleanSchema
})
);
var connectorWorkDirSchema = ipcObjectSchema.pipe(
z2.object({
agentId: requiredTrimmedStringSchema("Buddy id"),
workDir: optionalStringSchema
})
);
var desktopPetAssetSpriteSchema = z2.object({
src: z2.string(),
frame: z2.object({
width: z2.number(),
height: z2.number(),
count: z2.number(),
fps: z2.number()
}).optional(),
atlas: z2.object({
columns: z2.number(),
rows: z2.number(),
row: z2.number()
}).optional(),
loop: z2.boolean().optional()
}).passthrough();
var desktopPetAssetPackSchema = z2.object({
id: z2.string(),
version: z2.string().optional(),
spriteVersionNumber: z2.union([z2.literal(1), z2.literal(2)]).default(1),
displayName: z2.record(z2.string()),
description: z2.union([z2.record(z2.string()), z2.string()]).optional(),
spritesheetPath: z2.string(),
sprites: z2.record(desktopPetAssetSpriteSchema),
importedAt: z2.string(),
source: z2.enum(["local", "marketplace"]),
sourcePath: z2.string(),
marketplaceProductId: z2.string().optional(),
marketplaceEntitlementId: z2.string().optional(),
marketplacePaidFileId: z2.string().optional()
}).passthrough();
var desktopShortcutSettingsSchema = z2.object({
openCommunity: z2.string(),
togglePet: z2.string(),
petVoice: z2.string(),
petChat: z2.string(),
showNotifications: z2.string()
});
var desktopSettingsPatchSchema = ipcObjectSchema.pipe(
z2.object({
serverBaseUrl: z2.string().optional(),
httpProxy: z2.string().optional(),
httpsProxy: z2.string().optional(),
connectorApiKey: z2.string().optional(),
connectorComputerId: z2.string().optional(),
connectorAutoStart: z2.boolean().optional(),
connectorWorkDir: z2.string().optional(),
connectorBuddyWorkDirs: z2.record(z2.string()).optional(),
connectorDeletedConnectionIds: z2.array(z2.string()).optional(),
connectorRuntimeNotifications: z2.record(z2.boolean()).optional(),
ttsProvider: z2.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]).optional(),
asrProvider: z2.enum(["sherpa-local", "web-speech"]).optional(),
desktopPetVisible: z2.boolean().optional(),
desktopPetPacks: z2.array(z2.record(z2.unknown())).optional(),
desktopPetActivePackId: z2.string().optional(),
shortcuts: desktopShortcutSettingsSchema.partial().optional()
})
);
var optionalPathInputSchema = ipcObjectSchema.pipe(
z2.object({
path: optionalStringSchema
})
);
var petMarketplaceImportSchema = ipcObjectSchema.pipe(
z2.object({
entitlementId: optionalStringSchema,
fileId: requiredTrimmedStringSchema("paid file id"),
productId: optionalStringSchema
})
);
var petArchiveImportSchema = ipcObjectSchema.pipe(
z2.object({
name: z2.unknown().optional(),
data: z2.unknown().optional()
})
);
var packIdInputSchema = ipcObjectSchema.pipe(
z2.object({
packId: z2.string().optional().default("")
})
);
var startAgentSchema = z2.object({
name: z2.string().min(1).max(120),
scriptPath: z2.string().min(1),
args: z2.array(z2.string()).optional()
});
var agentProcessIdSchema = z2.string().min(1);
var desktopNotificationSchema = z2.object({
title: z2.string().min(1).max(200),
body: z2.string().max(2e3),
channelId: z2.string().optional(),
messageId: z2.string().optional(),
routePath: z2.string().optional(),
target: z2.enum(["community", "pet"]).optional()
});
var badgeCountSchema = z2.number().int().min(0).max(9999).catch(0);
var notificationModeSchema = z2.string().max(80);
var updateSettingsSchema = z2.object({
autoCheckOnLaunch: z2.boolean().optional(),
channel: z2.enum(["production", "beta"]).optional()
});
var downloadUpdateUrlSchema = z2.string().url();
var openAtLoginSchema = z2.boolean();
var voiceModelInstallSchema = ipcObjectSchema.pipe(
z2.object({
provider: z2.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]).optional()
})
);
var asrAcceptSchema = z2.object({
samples: z2.instanceof(ArrayBuffer),
sampleRate: z2.number().positive()
});
var speechTextSchema = z2.string().max(8e3);
var rendererLogSchema = z2.object({
scope: z2.string(),
payload: z2.unknown().optional()
}).passthrough();
var externalUrlSchema = z2.string();
var clipboardTextSchema = z2.string();
var readerOpenSchema = ipcObjectSchema.pipe(
z2.object({
url: z2.string().optional(),
title: z2.string().optional(),
useDefaultApp: z2.boolean().optional(),
attachmentId: z2.string().optional()
})
);
var readerIdInputSchema = ipcObjectSchema.pipe(
z2.object({
id: z2.string().optional().default("")
})
);
var selectDirectorySchema = ipcObjectSchema.pipe(
z2.object({
defaultPath: z2.string().optional()
})
);
var communityAuthSnapshotReasonSchema = z2.enum([
"startup",
"storage",
"sync",
"login",
"refresh",
"logout",
"settings",
"revoked"
]);
var communityAuthSnapshotSchema = ipcObjectSchema.pipe(
z2.object({
accessToken: z2.string().optional(),
refreshToken: z2.string().optional(),
reason: communityAuthSnapshotReasonSchema.optional().default("sync"),
sourceUrl: z2.string().optional()
})
);
var communityFetchJsonSchema = z2.object({
path: z2.string().min(1),
method: z2.string().optional(),
body: z2.unknown().optional(),
headers: z2.record(z2.string()).optional(),
optional: z2.boolean().optional()
});
var modelProxyStreamSchema = z2.object({
requestId: z2.string().min(1),
body: z2.record(z2.unknown())
});
function optionalStringValueFromPathInput(value, key) {
if (typeof value === "string") return value;
const parsed = ipcObjectSchema.pipe(z2.object({ [key]: z2.string().optional() })).parse(value);
return parsed[key];
}
var showCommunityInputSchema = z2.unknown().transform((value) => optionalStringValueFromPathInput(value, "path"));
var openCommunityLoginInputSchema = z2.unknown().transform(
(value) => optionalStringValueFromPathInput(value, "redirect") ?? "/discover"
);
var showSettingsInputSchema = z2.unknown().transform((value) => optionalStringValueFromPathInput(value, "tab"));
var petPanelModeSchema = z2.enum(["compact", "expanded"]);
var petWindowDragStartSchema = ipcObjectSchema.pipe(
z2.object({
pointerId: z2.number().optional(),
screenX: z2.number().optional(),
screenY: z2.number().optional()
})
);
var petWindowDragMoveSchema = ipcObjectSchema.pipe(
z2.object({
x: z2.number().optional(),
y: z2.number().optional(),
pointerId: z2.number().optional(),
screenX: z2.number().optional(),
screenY: z2.number().optional()
})
);
var petWindowPointerIdSchema = z2.number().optional();
var petWindowMouseInteractiveSchema = z2.boolean();
var petCursorPositionSchema = z2.object({
x: z2.number(),
y: z2.number()
});
var desktopIpcInvokeSchemas = {
"desktop:getSettings": void 0,
"desktop:setSettings": desktopSettingsPatchSchema,
"desktop:showNotification": desktopNotificationSchema,
"desktop:setBadgeCount": badgeCountSchema,
"desktop:setNotificationMode": notificationModeSchema,
"desktop:minimizeToTray": void 0,
"desktop:window:chrome-state": void 0,
"desktop:window:set-full-screen": desktopWindowFullscreenInputSchema,
"desktop:openExternal": externalUrlSchema,
"desktop:clipboard:writeText": clipboardTextSchema,
"desktop:openReader": readerOpenSchema,
"desktop:reader:getState": void 0,
"desktop:reader:activate": readerIdInputSchema,
"desktop:reader:close": readerIdInputSchema,
"desktop:reader:openDefault": readerIdInputSchema,
"desktop:selectDirectory": selectDirectorySchema,
"desktop:quit": void 0,
"desktop:getCommunityAuthToken": void 0,
"desktop:getCommunityAuthTokens": void 0,
"desktop:community:fetchJson": communityFetchJsonSchema,
"desktop:diagnostics:getSnapshot": void 0,
"desktop:diagnostics:exportLogs": void 0,
"desktop:showMainWindow": void 0,
"desktop:showCommunity": showCommunityInputSchema,
"desktop:openCommunityLogin": openCommunityLoginInputSchema,
"desktop:showCreateBuddy": void 0,
"desktop:showContextMenu": void 0,
"desktop:showSettings": showSettingsInputSchema,
"desktop:pet:show": void 0,
"desktop:pet:hide": void 0,
"desktop:pet:cursor-position": void 0,
"desktop:pet:panel-mode": petPanelModeSchema,
"desktop:pet:begin-window-drag": petWindowDragStartSchema,
"desktop:pet:move-window": petWindowDragMoveSchema,
"desktop:pet:end-window-drag": petWindowPointerIdSchema,
"desktop:pet:mouse-interactive": petWindowMouseInteractiveSchema,
"desktop:pet:modelProxyStream": modelProxyStreamSchema,
"desktop:pet:speak": speechTextSchema,
"desktop:pet:cancelSpeech": void 0,
"desktop:pet:voiceEngineStatus": void 0,
"desktop:pet:prewarmVoice": void 0,
"desktop:pet:installVoiceModel": voiceModelInstallSchema,
"desktop:pet:asrStart": void 0,
"desktop:pet:asrAccept": asrAcceptSchema,
"desktop:pet:asrStop": void 0,
"desktop:startAgent": startAgentSchema,
"desktop:stopAgent": agentProcessIdSchema,
"desktop:getAgentStatus": agentProcessIdSchema,
"desktop:listAgents": void 0,
"desktop:getVersion": void 0,
"desktop:checkForUpdate": void 0,
"desktop:getUpdateState": void 0,
"desktop:getUpdateSettings": void 0,
"desktop:setUpdateSettings": updateSettingsSchema,
"desktop:downloadUpdate": downloadUpdateUrlSchema,
"desktop:setOpenAtLogin": openAtLoginSchema,
"desktop:getOpenAtLogin": void 0,
"desktop:quitAndRestart": void 0,
"desktop:petAssets:importDirectory": optionalPathInputSchema,
"desktop:petAssets:importMarketplace": petMarketplaceImportSchema,
"desktop:petAssets:importArchiveBuffer": petArchiveImportSchema,
"desktop:petAssets:setActive": packIdInputSchema,
"desktop:petAssets:remove": packIdInputSchema,
"desktop:connector:getStatus": void 0,
"desktop:connector:start": connectorStartSettingsSchema,
"desktop:connector:stop": void 0,
"desktop:connector:scan": void 0,
"desktop:connector:scanRuntimes": forceOptionsSchema,
"desktop:connector:scanRuntimeSessions": forceOptionsSchema,
"desktop:connector:installRuntime": runtimeIdInputSchema,
"desktop:connector:createBuddy": createConnectorBuddySchema,
"desktop:connector:getConnections": void 0,
"desktop:connector:setConnectionEnabled": connectorConnectionEnabledSchema,
"desktop:connector:deleteConnection": connectorDeleteSchema,
"desktop:connector:setConnectionWorkDir": connectorWorkDirSchema,
"desktop:shortcuts:reload": void 0,
"desktop:shortcuts:suspend": void 0,
"desktop:shortcuts:resume": void 0
};
// src/desktop-ipc/protocol.ts
var desktopPlatformSchema = z3.enum([
"aix",
"android",
"darwin",
"freebsd",
"haiku",
"linux",
"openbsd",
"sunos",
"win32",
"cygwin",
"netbsd"
]);
var desktopRuntimeSettingsSnapshotSchema = z3.object({
serverBaseUrl: z3.string(),
httpProxy: z3.string(),
httpsProxy: z3.string(),
connectorApiKey: z3.string(),
connectorComputerId: z3.string(),
connectorAutoStart: z3.boolean(),
connectorWorkDir: z3.string(),
connectorBuddyWorkDirs: z3.record(z3.string()),
connectorRuntimeNotifications: z3.record(z3.boolean()),
ttsProvider: z3.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]),
asrProvider: z3.enum(["sherpa-local", "web-speech"]),
shortcuts: z3.object({
openCommunity: z3.string(),
togglePet: z3.string(),
petVoice: z3.string(),
petChat: z3.string(),
showNotifications: z3.string()
}),
desktopPetVisible: z3.boolean(),
desktopPetActivePackId: z3.string(),
desktopPetPacks: z3.array(z3.unknown())
});
var readerResourceSnapshotSchema = z3.object({
id: z3.string(),
title: z3.string(),
sourceUrl: z3.string(),
displayAddress: z3.string(),
contentType: z3.string(),
fileName: z3.string(),
assetUrl: z3.string(),
createdAt: z3.number()
});
var readerStateSnapshotSchema = z3.object({
activeId: z3.string().nullable(),
tabs: z3.array(readerResourceSnapshotSchema)
});
var desktopUpdateChannelSchema = z3.enum(["production", "beta"]);
var desktopUpdateInfoSchema = z3.object({
hasUpdate: z3.boolean(),
version: z3.string(),
downloadUrl: z3.string(),
releaseNotes: z3.string(),
channel: desktopUpdateChannelSchema
});
var desktopUpdateStateSchema = z3.object({
status: z3.enum(["idle", "checking", "update-available", "up-to-date", "error"]),
checkedAt: z3.number().nullable(),
info: desktopUpdateInfoSchema.nullable(),
error: z3.string().nullable(),
channel: desktopUpdateChannelSchema
});
var desktopUpdateSettingsSchema = z3.object({
autoCheckOnLaunch: z3.boolean(),
channel: desktopUpdateChannelSchema
});
var desktopDiagnosticsSnapshotSchema = z3.object({
appName: z3.string(),
version: z3.string(),
platform: desktopPlatformSchema,
arch: z3.string(),
pid: z3.number(),
electron: z3.string(),
node: z3.string(),
buildId: z3.string(),
logFilePath: z3.string(),
logFileExists: z3.boolean(),
connector: z3.object({
serverBaseUrl: z3.string(),
cliPath: z3.string().nullable(),
cliBundled: z3.boolean(),
nodeBinary: z3.string(),
state: z3.unknown()
})
});
var desktopLogExportResultSchema = z3.object({
filePath: z3.string().nullable()
});
var voiceProviderStatusSchema = z3.object({
installed: z3.boolean(),
runtimeInstalled: z3.boolean().optional(),
modelInstalled: z3.boolean().optional(),
name: z3.string(),
sourceUrl: z3.string()
});
var voiceEngineStatusSchema = z3.object({
engine: z3.string(),
asrProvider: z3.enum(["sherpa-local", "web-speech"]),
ttsProvider: z3.enum(["system", "moss-tts-nano", "sherpa-local", "voxcpm2"]),
nativeAddonAvailable: z3.boolean(),
modelRoot: z3.string(),
asr: voiceProviderStatusSchema,
tts: voiceProviderStatusSchema,
ttsProviders: z3.object({
system: voiceProviderStatusSchema,
"moss-tts-nano": voiceProviderStatusSchema,
"sherpa-local": voiceProviderStatusSchema,
voxcpm2: voiceProviderStatusSchema
})
});
var authTokensSchema = z3.object({
accessToken: z3.string(),
refreshToken: z3.string()
});
var agentStartResultSchema = z3.object({
id: z3.string(),
pid: z3.number().optional()
});
var agentStatusSchema = z3.object({
running: z3.boolean(),
name: z3.string().optional(),
pid: z3.number().optional(),
uptime: z3.number().optional()
});
var agentListSchema = z3.array(
z3.object({
id: z3.string(),
name: z3.string(),
pid: z3.number().optional(),
running: z3.boolean(),
uptime: z3.number()
})
);
var connectorScanOutputSchema = z3.object({
output: z3.string()
});
var petPanelModeResultSchema = z3.object({
stageOffsetY: z3.number()
});
var modelProxyStreamResultSchema = z3.object({
text: z3.string()
});
var okResultSchema = z3.object({
ok: z3.boolean()
});
var textResultSchema = z3.object({
text: z3.string()
});
var unknownResultSchema = z3.unknown();
var booleanResultSchema = z3.boolean();
var stringResultSchema = z3.string();
var nullableStringResultSchema = z3.string().nullable();
var legacyProcedure = (channel, input, output) => ipcProcedure({
channel,
input,
output
});
var legacyVoidProcedure = (channel) => legacyProcedure(channel, ipcVoidInputSchema, ipcVoidOutputSchema);
var desktopIpcProtocol = defineIPCProtocol({
app: defineIPCService({
getVersion: legacyProcedure("desktop:getVersion", ipcVoidInputSchema, stringResultSchema),
setOpenAtLogin: legacyProcedure(
"desktop:setOpenAtLogin",
openAtLoginSchema,
ipcVoidOutputSchema
),
getOpenAtLogin: legacyProcedure(
"desktop:getOpenAtLogin",
ipcVoidInputSchema,
booleanResultSchema
),
quitAndRestart: legacyProcedure(
"desktop:quitAndRestart",
ipcVoidInputSchema,
booleanResultSchema
)
}),
window: defineIPCService({
minimizeToTray: legacyVoidProcedure("desktop:minimizeToTray"),
getChromeState: legacyProcedure(
"desktop:window:chrome-state",
ipcVoidInputSchema,
desktopWindowChromeStateSchema
),
setFullScreen: legacyProcedure(
"desktop:window:set-full-screen",
desktopWindowFullscreenInputSchema,
desktopWindowChromeStateSchema
),
openExternal: legacyProcedure("desktop:openExternal", externalUrlSchema, booleanResultSchema),
writeClipboardText: legacyProcedure(
"desktop:clipboard:writeText",
clipboardTextSchema,
booleanResultSchema
),
selectDirectory: legacyProcedure(
"desktop:selectDirectory",
selectDirectorySchema,
nullableStringResultSchema
),
quit: legacyVoidProcedure("desktop:quit"),
showMainWindow: legacyVoidProcedure("desktop:showMainWindow"),
showCommunity: legacyProcedure(
"desktop:showCommunity",
showCommunityInputSchema,
ipcVoidOutputSchema
),
openCommunityLogin: legacyProcedure(
"desktop:openCommunityLogin",
openCommunityLoginInputSchema,
booleanResultSchema
),
showCreateBuddy: legacyVoidProcedure("desktop:showCreateBuddy"),
showContextMenu: legacyVoidProcedure("desktop:showContextMenu"),
showSettings: legacyProcedure(
"desktop:showSettings",
showSettingsInputSchema,
ipcVoidOutputSchema
)
}),
settings: defineIPCService({
get: legacyProcedure(
"desktop:getSettings",
ipcVoidInputSchema,
desktopRuntimeSettingsSnapshotSchema
),
set: legacyProcedure(
"desktop:setSettings",
desktopSettingsPatchSchema,
desktopRuntimeSettingsSnapshotSchema
)
}),
notifications: defineIPCService({
show: legacyProcedure(
"desktop:showNotification",
desktopNotificationSchema,
ipcVoidOutputSchema
),
setBadgeCount: legacyProcedure("desktop:setBadgeCount", badgeCountSchema, ipcVoidOutputSchema),
setMode: legacyProcedure(
"desktop:setNotificationMode",
notificationModeSchema,
ipcVoidOutputSchema
)
}),
reader: defineIPCService({
open: legacyProcedure("desktop:openReader", readerOpenSchema, booleanResultSchema),
getState: legacyProcedure(
"desktop:reader:getState",
ipcVoidInputSchema,
readerStateSnapshotSchema
),
activate: legacyProcedure(
"desktop:reader:activate",
readerIdInputSchema,
readerStateSnapshotSchema
),
close: legacyProcedure("desktop:reader:close", readerIdInputSchema, readerStateSnapshotSchema),
openDefault: legacyProcedure(
"desktop:reader:openDefault",
readerIdInputSchema,
booleanResultSchema
)
}),
community: defineIPCService({
getAuthToken: legacyProcedure(
"desktop:getCommunityAuthToken",
ipcVoidInputSchema,
stringResultSchema
),
getAuthTokens: legacyProcedure(
"desktop:getCommunityAuthTokens",
ipcVoidInputSchema,
authTokensSchema
),
fetchJson: legacyProcedure(
"desktop:community:fetchJson",
communityFetchJsonSchema,
unknownResultSchema
)
}),
diagnostics: defineIPCService({
getSnapshot: ipcProcedure({
input: ipcVoidInputSchema,
output: desktopDiagnosticsSnapshotSchema
}),
exportLogs: ipcProcedure({
input: ipcVoidInputSchema,
output: desktopLogExportResultSchema
})
}),
petWindow: defineIPCService({
show: legacyVoidProcedure("desktop:pet:show"),
hide: legacyVoidProcedure("desktop:pet:hide"),
getCursorPosition: legacyProcedure(
"desktop:pet:cursor-position",
ipcVoidInputSchema,
petCursorPositionSchema
),
setPanelMode: legacyProcedure(
"desktop:pet:panel-mode",
petPanelModeSchema,
petPanelModeResultSchema
),
beginWindowDrag: legacyProcedure(
"desktop:pet:begin-window-drag",
petWindowDragStartSchema,
ipcVoidOutputSchema
),
moveWindow: legacyProcedure(
"desktop:pet:move-window",
petWindowDragMoveSchema,
ipcVoidOutputSchema
),
endWindowDrag: legacyProcedure(
"desktop:pet:end-window-drag",
petWindowPointerIdSchema,
ipcVoidOutputSchema
),
setMouseInteractive: legacyProcedure(
"desktop:pet:mouse-interactive",
petWindowMouseInteractiveSchema,
ipcVoidOutputSchema
)
}),
petModel: defineIPCService({
modelProxyStream: legacyProcedure(
"desktop:pet:modelProxyStream",
modelProxyStreamSchema,
modelProxyStreamResultSchema
)
}),
petVoice: defineIPCService({
speak: legacyProcedure("desktop:pet:speak", speechTextSchema, booleanResultSchema),
cancelSpeech: legacyVoidProcedure("desktop:pet:cancelSpeech"),
voiceEngineStatus: legacyProcedure(
"desktop:pet:voiceEngineStatus",
ipcVoidInputSchema,
voiceEngineStatusSchema
),
prewarmVoice: legacyProcedure(
"desktop:pet:prewarmVoice",
ipcVoidInputSchema,
booleanResultSchema
),
installVoiceModel: legacyProcedure(
"desktop:pet:installVoiceModel",
voiceModelInstallSchema,
voiceEngineStatusSchema
),
asrStart: legacyProcedure("desktop:pet:asrStart", ipcVoidInputSchema, okResultSchema),
asrAccept: legacyProcedure("desktop:pet:asrAccept", asrAcceptSchema, okResultSchema),
asrStop: legacyProcedure("desktop:pet:asrStop", ipcVoidInputSchema, textResultSchema)
}),
agents: defineIPCService({
start: legacyProcedure("desktop:startAgent", startAgentSchema, agentStartResultSchema),
stop: legacyProcedure("desktop:stopAgent", agentProcessIdSchema, ipcVoidOutputSchema),
getStatus: legacyProcedure("desktop:getAgentStatus", agentProcessIdSchema, agentStatusSchema),
list: legacyProcedure("desktop:listAgents", ipcVoidInputSchema, agentListSchema)
}),
updates: defineIPCService({
check: legacyProcedure("desktop:checkForUpdate", ipcVoidInputSchema, desktopUpdateInfoSchema),
getState: legacyProcedure(
"desktop:getUpdateState",
ipcVoidInputSchema,
desktopUpdateStateSchema
),
getSettings: legacyProcedure(
"desktop:getUpdateSettings",
ipcVoidInputSchema,
desktopUpdateSettingsSchema
),
setSettings: legacyProcedure(
"desktop:setUpdateSettings",
updateSettingsSchema,
desktopUpdateSettingsSchema
),
download: legacyProcedure(
"desktop:downloadUpdate",
downloadUpdateUrlSchema,
booleanResultSchema
)
}),
petAssets: defineIPCService({
importDirectory: legacyProcedure(
"desktop:petAssets:importDirectory",
optionalPathInputSchema,
unknownResultSchema
),
importMarketplace: legacyProcedure(
"desktop:petAssets:importMarketplace",
petMarketplaceImportSchema,
unknownResultSchema
),
importArchiveBuffer: legacyProcedure(
"desktop:petAssets:importArchiveBuffer",
petArchiveImportSchema,
unknownResultSchema
),
setActive: legacyProcedure(
"desktop:petAssets:setActive",
packIdInputSchema,
unknownResultSchema
),
remove: legacyProcedure("desktop:petAssets:remove", packIdInputSchema, unknownResultSchema)
}),
connector: defineIPCService({
getStatus: legacyProcedure(
"desktop:connector:getStatus",
ipcVoidInputSchema,
unknownResultSchema
),
start: legacyProcedure(
"desktop:connector:start",
connectorStartSettingsSchema,
unknownResultSchema
),
stop: legacyProcedure("desktop:connector:stop", ipcVoidInputSchema, unknownResultSchema),
scan: legacyProcedure("desktop:connector:scan", ipcVoidInputSchema, connectorScanOutputSchema),
scanRuntimes: legacyProcedure(
"desktop:connector:scanRuntimes",
forceOptionsSchema,
unknownResultSchema
),
scanRuntimeSessions: legacyProcedure(
"desktop:connector:scanRuntimeSessions",
forceOptionsSchema,
unknownResultSchema
),
installRuntime: legacyProcedure(
"desktop:connector:installRuntime",
runtimeIdInputSchema,
unknownResultSchema
),
createBuddy: legacyProcedure(
"desktop:connector:createBuddy",
createConnectorBuddySchema,
unknownResultSchema
),
getConnections: legacyProcedure(
"desktop:connector:getConnections",
ipcVoidInputSchema,
unknownResultSchema
),
setConnectionEnabled: legacyProcedure(
"desktop:connector:setConnectionEnabled",
connectorConnectionEnabledSchema,
unknownResultSchema
),
deleteConnection: legacyProcedure(
"desktop:connector:deleteConnection",
connectorDeleteSchema,
unknownResultSchema
),
setConnectionWorkDir: legacyProcedure(
"desktop:connector:setConnectionWorkDir",
connectorWorkDirSchema,
unknownResultSchema
)
}),
shortcuts: defineIPCService({
reload: legacyProcedure("desktop:shortcuts:reload", ipcVoidInputSchema, unknownResultSchema),
suspend: legacyProcedure("desktop:shortcuts:suspend", ipcVoidInputSchema, unknownResultSchema),
resume: legacyProcedure("desktop:shortcuts:resume", ipcVoidInputSchema, unknownResultSchema)
})
});
export {
ipcProcedure,
defineIPCService,
defineIPCProtocol,
ipcProcedureChannel,
parseIPCProcedureInput,
parseIPCProcedureOutput,
ipcVoidInputSchema,
ipcVoidOutputSchema,
connectorStartSettingsSchema,
forceOptionsSchema,
desktopWindowFullscreenInputSchema,
desktopWindowChromeStateSchema,
runtimeIdInputSchema,
createConnectorBuddySchema,
connectorConnectionEnabledSchema,
connectorDeleteSchema,
connectorWorkDirSchema,
desktopSettingsPatchSchema,
optionalPathInputSchema,
petMarketplaceImportSchema,
petArchiveImportSchema,
packIdInputSchema,
startAgentSchema,
agentProcessIdSchema,
desktopNotificationSchema,
badgeCountSchema,
notificationModeSchema,
updateSettingsSchema,
downloadUpdateUrlSchema,
openAtLoginSchema,
voiceModelInstallSchema,
asrAcceptSchema,
speechTextSchema,
rendererLogSchema,
externalUrlSchema,
clipboardTextSchema,
readerOpenSchema,
readerIdInputSchema,
selectDirectorySchema,
communityAuthSnapshotSchema,
communityFetchJsonSchema,
modelProxyStreamSchema,
showCommunityInputSchema,
openCommunityLoginInputSchema,
showSettingsInputSchema,
petPanelModeSchema,
petWindowDragStartSchema,
petWindowDragMoveSchema,
petWindowPointerIdSchema,
petWindowMouseInteractiveSchema,
petCursorPositionSchema,
desktopIpcInvokeSchemas,
desktopIpcProtocol
};

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display